fix(validators): the progress validator knows stopped and blocked
/trekexecute writes run status stopped (dirty-tree stop, entry-condition stop, escalation) and step status blocked (Step 0 sandbox sentinel); the validator rejected the first and warned on the second. Both are real states lib/util/session-orders.mjs already reads (ENDED_BAD), so the validator learns them. The step-status list is exported as PROGRESS_STEP_STATUSES (was an inline literal) so tests check prose against it instead of keeping a copy. docs/HANDOVER-CONTRACTS.md Handover 5 rows updated. Red: 3 of 4 new tests fail on the pre-fix code (stopped run status, PROGRESS_STEP_STATUSES export, blocked step status). Regression guard (green on arrival): every run status but completed stays resumable. progress-validator 16/16. Suite 1368 (1366/0/2). Voyage order 20261005T104513Z-1250514346, plan step 1/5. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
5680591ddf
commit
8a56187341
3 changed files with 58 additions and 5 deletions
|
|
@ -292,7 +292,7 @@ The strongest validation in the entire pipeline. Phase 5.5 (planning-orchestrato
|
|||
| `mode` | string | yes | `execute \| dry-run \| validate` |
|
||||
| `total_steps` | number | yes | |
|
||||
| `current_step` | number | yes | 0..total_steps |
|
||||
| `status` | string | yes | `pending \| in_progress \| completed \| failed \| partial` |
|
||||
| `status` | string | yes | `pending \| in_progress \| completed \| failed \| partial \| stopped` |
|
||||
| `session_start_sha` | string | optional | git sha at execute start |
|
||||
| `session_end_sha` | string | optional | git sha at execute end |
|
||||
| `steps` | object | yes | Map of step number → step record |
|
||||
|
|
@ -301,7 +301,7 @@ The strongest validation in the entire pipeline. Phase 5.5 (planning-orchestrato
|
|||
|
||||
| Field | Type | Notes |
|
||||
|---|---|---|
|
||||
| `status` | `completed \| in_progress \| failed \| pending \| deferred \| skipped` | |
|
||||
| `status` | `completed \| in_progress \| failed \| pending \| deferred \| skipped \| blocked` | `blocked` = Step 0 sandbox sentinel |
|
||||
| `attempts` | number | 1..N |
|
||||
| `error` | string \| null | |
|
||||
| `completed_at` | ISO string \| null | |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue