REPORT: step .felhom.yml files (night 2026-09-24)
gates / gates (push) Successful in 2s

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-09-24 14:53:58 +02:00
parent cf7cf8456f
commit c8025093d2
+11 -13
View File
@@ -1,15 +1,13 @@
# REPORT — step definitions for the ladder, two bench fixes (2026-09-24, `5ed599c`)
# REPORT — every ladder step keeps its own `.felhom.yml` (2026-09-24 night, `cf7cf84`, R-664)
Full record: `felhom.eu/documentation/audits/ladder-2026-09-24/README.md`.
Full record: `felhom.eu/documentation/audits/DRILL-night-2026-09-24.md`.
- Baseline `585a7cba22cf` → **`5ed599c`**. No `image:` line moved.
- `ladder.step_key` / `step_file`; `check-test-record.py` rule 4 (+ 4 decoy cases: no file, right name wrong image,
wrong name, genuine); `upgrade-test.py --write-ladder` keeps the superseded step's compose; `steps_backfill.py`
wrote 8 step files (emby, ghost, immich, n8n, navidrome, nextcloud, romm ×2 — romm's first from `f4eb94f`).
- R-653 `load_verdict`, R-656 `clear_scratch_folders` + `test_upgrade_bench.py` (5 tests).
- R-663: `test_gate_decoys.py` and `test_ladder_writer.py` were red at the start (last night's pin moves under
literals); they now read the live pins.
- Red-proofs: rule 4 removed → 3 decoys pass wrongly; writer's STEP block off → "has no definition"; bench mutations →
3 failures. Green: `catalog_gates.py` OK, decoys 84 OK, writer 6 OK, bench 5 OK.
- Live: the box (controller v0.268.0) climbed romm's two steps from these files on 9202. **Not run:** a bench edge
with the R-653/R-656 changes (no bench this session).
- `steps/<step_key(to)>.felhom.yml` beside each step's compose, so the box judges a step with that step's own
health check, memory request and applied record (controller v0.269.0 reads them).
- `check-test-record.py` rule 4b refuses a step whose `.felhom.yml` is missing, or has no health check while
its template has one; the writer (`upgrade-test.py --write-ladder`) keeps the superseded file; 8 backfilled
(`scripts/steps_meta_backfill.py`). Decoys 86 OK; red-proofed (`night-2026-09-24/redproofs/A4-r664-catalog-gate.txt`).
- Used live tonight: navidrome's and romm's steps were judged by their own files on 9202 (Part C).
- **No `image:` line moved tonight.** Part D (move more apps) was not run — see the findings doc.
- Every tested digest in the ladder renders into a compose file that `docker compose config` accepts:
25 apps, 37 digests (`night-2026-09-24/B/01`).