diff --git a/docs/port/DECISIONS.md b/docs/port/DECISIONS.md index 02c926b5..0372315e 100644 --- a/docs/port/DECISIONS.md +++ b/docs/port/DECISIONS.md @@ -4123,3 +4123,50 @@ uncontrolled instrument, but a control chosen where it could not fail. fitted. A rotation about a declared pivot rather than the centre would displace by roughly that; if it still matters once the association is adopted, it gets measured rather than derived. + +## Re-running the P5/P6 gate after eight iterations of changes + +The leaf path, the plate pulse, the BGM level, the voice export, the focus fix +and a new diagnostic flag have all landed since the gate was last actually run. +The mission's test is *"a human presses a d-pad and Ⓐ and moves through those +screens"*, and I had been verifying pieces of that against captures without once +re-running the whole walk. + +**It works.** Nine steps, unattended: + +| step | | | +|---|---|---| +| ⬇ ×4 | `ptbtn01` → `ptbtn05` | focus moves, every frame drawn | +| Ⓐ | `EXTRAS` → screen `extras`, focus `ptbtn11` | | +| Ⓑ | back to `main_menu`, **focus restored to `ptbtn05`** | HANDOFF Q5's rule, live | +| ⬆, Ⓐ | `ptbtn04` `OPTIONS`, destination outside this archive | prints the gap rather than pretending | + +Filmstrip shared as `1788027380-788b1faafc3e`. Every shot is non-blank (frame +means 31.5–33.1). + +### The sound is verified by a null control, not by a detector + +I first tried an onset detector: count sharp level rises in the recording. It +found **one** onset in the walk — and **the same one** in the music bed alone, +which contains no cues. The 50 ms envelope cannot see a short cue over the bed. +⚠️ **The right response to a detector that cannot separate its control from its +subject is to stop using it**, not to widen the window until the numbers look +better. That is the shape this session has hit five times. + +So the same technique that settled the voice: shadow the three cues with silence +through `data/mods/`, run the identical walk, and compare. + +| | peak | RMS | +|---|---|---| +| walk, cues playing | **+0.0003 dBFS** | −18.36 | +| walk, cues silenced | **−4.74 dBFS** | −20.78 | + +**Silencing three sound effects costs 4.74 dB of peak and 2.43 dB of RMS**, and +the walk's peak is *set by* a cue rather than by the music. The mod log confirms +exactly three files shadowed. No detector, no threshold, and the control is the +same run with one input changed. + +⚠️ Recorded under the Dummy driver, as everything audio here is. It shows the +cues reach the Master bus at the right moments; it does not show they are the +cues the game plays — that is HANDOFF Q8, and `authored/audio.json` still carries +the offsets as measured rather than decoded.