( ctx context.Context, taskID string, run Run, recovery RunBootRecovery, actor ActorContext, previousStatus RunStatus, previousSessionID string, )
| 1509 | } |
| 1510 | |
| 1511 | func (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. |
| 1541 | func (m *Service) GetTask(ctx context.Context, id string, actor ActorContext) (*View, error) { |
no test coverage detected