fix(trekexecute): run_seen is kept in progress.json and reported on every path

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kjell Tore Guttormsen 2026-10-26 17:05:43 +01:00
commit 33ef2c1b3a
Signed by: ktg
SSH key fingerprint: SHA256:JakMjO6FTBBzN0Bhfj9saOoEjaFxlSdYuZQQpM/lF9Q
4 changed files with 70 additions and 2 deletions

View file

@ -1184,6 +1184,7 @@ progress file.
"exit_condition_checked": false,
"plan_verification": null,
"end_to_end": null,
"run_seen": null,
"arch_rules": null,
"scope_sweep": null,
"simplify": null,
@ -1206,6 +1207,7 @@ a progress file without them still validates and resumes:
| `steps.{N}.fix_rounds` | Sub-step F | 0–5: 0 = passed its first control, 1–3 = fix rounds, 4 = sent up to the plan, 5 = sent up to the operator |
| `steps.{N}.attempts` | Sub-steps C, F | helpers launched for the step: 1 + the fix rounds that launched one |
| `end_to_end` | Phase 7 | `"verified" \| "not-verified"` (P9 (6)) |
| `run_seen` | Phase 7 | `"yes" \| "no — {reason}"` — what Claude Code's built-in `run` showed in this run; `null` = not run (Phase 7 not reached) |
| `decisions` | any phase | `[{step, decision, cost_if_wrong}]` — every call the executor made on its own (Phase 5.5) |
`progress-validator.mjs` rejects `fix_rounds` outside 0–5 (there is no sixth
@ -2142,7 +2144,8 @@ rejects that as `PLAN_END_TO_END_NOT_VERIFIED`.)
Record `run_seen`: `yes` when the app was seen and driven with Claude Code's
built-in `run` in this run, else `no — {reason}` (no app to launch, `run` not
available, not started, and why). The verdict is still the `End-to-end:`
available, not started, and why) in the progress file's top-level `run_seen`,
so Phase 8 reads it from there. The verdict is still the `End-to-end:`
command.
### Architecture rules (K5) and the plan-file sweep (K6)
@ -2809,6 +2812,12 @@ completion). Phase 2.55 and Phase 4 cover the early-stop paths E1/E2.
Phase 2.3 (validate exit) and Phase 5 (dry-run) intentionally do not write
— neither path is resumable.
The report's **Seen with `run`:** line and the summary's `run_seen` are read
from the progress file's `run_seen` (Phase 7 writes it), not from this
session's memory, so a resumed run (`--resume`) reports it too, and on the
multi-session path (Phase 2.6) the report gives each session's value from its
archived progress copy (Step 6). A `null` there is reported as `no — not run`.
```
## Ultraexecute Local Complete