Complete tasks 3-7: harden verdict parsing, outputs retention, base branch, linux schedule parity, claim loop task
CI / build (push) Has been cancelled

This commit is contained in:
Lap Tran
2026-06-24 10:31:49 -04:00
parent dd2726c0dd
commit e13513faaa
193 changed files with 14934 additions and 98 deletions
@@ -0,0 +1,17 @@
# Bug Report: add-outputs-retention
## O1 — GC tick-count semantic: cutoff uses `max_seen` from filenames, not `state.iteration_count`
The formula `cutoff = max_seen - retention + 1` uses the max tick index found in filenames, NOT `state.iteration_count`. If the `.state.loop` advances to iteration_count=N but the output files for tick N haven't been written yet (crash after step 10 write but before GC), the next tick will see max_seen = N-1 and compute a cutoff that deletes one fewer group than expected. On the next tick, N is written and GC catches up.
**Not a bug** — SPEC D-O5 explicitly chose filename-based max_seen over iteration_count for robustness. Self-healing on the next tick.
## O2 — GC doesn't iterate recursively
If a future version nests files inside `outputs/` subdirectories (e.g., `outputs/tick5/`), `os.listdir` at the top level won't see them. The regex won't match, so they're preserved. Only top-level `tick{N}-*` files are affected.
**Not a bug** — SPEC D-O6: regex `^tick(\d+)-` matches only top-level files. Nested subdirs preserved. Not a current concern.
## Verdict
PASS — no blockers.