MCPcopy Create free account
hub / github.com/compozy/agh / recordRecoveredRun

Method recordRecoveredRun

internal/task/manager.go:1511–1538  ·  view source on GitHub ↗
(
	ctx context.Context,
	taskID string,
	run Run,
	recovery RunBootRecovery,
	actor ActorContext,
	previousStatus RunStatus,
	previousSessionID string,
)

Source from the content-addressed store, hash-verified

1509}
1510
1511func (m *Service) recordRecoveredRun(
1512 ctx context.Context,
1513 taskID string,
1514 run Run,
1515 recovery RunBootRecovery,
1516 actor ActorContext,
1517 previousStatus RunStatus,
1518 previousSessionID string,
1519) (Task, error) {
1520 reconciledTask, err := m.reconcileTaskCascade(ctx, taskID)
1521 if err != nil {
1522 return Task{}, err
1523 }
1524 if err := m.recordTaskEvent(ctx, run.TaskID, run.ID, taskEventRunRecovered, actor, recoveredRunPayload{
1525 Action: recovery.Action,
1526 PreviousStatus: previousStatus,
1527 Status: run.Status,
1528 TaskStatus: reconciledTask.Status,
1529 Reason: recovery.Reason,
1530 SessionID: previousSessionID,
1531 SessionState: recovery.SessionState,
1532 Classification: recovery.Classification,
1533 Detail: recovery.Detail,
1534 }); err != nil {
1535 return Task{}, err
1536 }
1537 return reconciledTask, nil
1538}
1539
1540// GetTask returns one expanded task view after enforcing read authority.
1541func (m *Service) GetTask(ctx context.Context, id string, actor ActorContext) (*View, error) {

Callers 3

recoverRunByRequeueMethod · 0.95
recoverRunByFailureMethod · 0.95

Calls 2

reconcileTaskCascadeMethod · 0.95
recordTaskEventMethod · 0.95

Tested by

no test coverage detected