MCPcopy Create free account
hub / github.com/astercloud/aster / GetWorkflowHistory

Method GetWorkflowHistory

pkg/workflow/workflow_agent.go:161–188  ·  view source on GitHub ↗

GetWorkflowHistory 获取 workflow 历史

()

Source from the content-addressed store, hash-verified

159
160// GetWorkflowHistory 获取 workflow 历史
161func (wa *WorkflowAgent) GetWorkflowHistory() []WorkflowHistoryItem {
162 wa.mu.RLock()
163 defer wa.mu.RUnlock()
164
165 if wa.workflow == nil || wa.workflow.workflowSession == nil {
166 return []WorkflowHistoryItem{}
167 }
168
169 runs := wa.workflow.workflowSession.History
170 numRuns := min(len(runs), wa.NumHistoryRuns)
171
172 history := make([]WorkflowHistoryItem, numRuns)
173 for i := range numRuns {
174 run := runs[len(runs)-numRuns+i]
175 history[i] = WorkflowHistoryItem{
176 RunID: run.RunID,
177 Input: run.Input,
178 Output: run.Output,
179 Status: string(run.Status),
180 StartTime: run.StartTime,
181 EndTime: run.EndTime,
182 Duration: run.Duration,
183 Metrics: run.Metrics,
184 }
185 }
186
187 return history
188}
189
190// Run 运行 WorkflowAgent
191func (wa *WorkflowAgent) Run(ctx context.Context, input string) (string, error) {

Callers 1

demoWorkflowAgentFunction · 0.95

Calls 1

minFunction · 0.50

Tested by

no test coverage detected