mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-27 05:56:00 -04:00
e40fe9c116
PROVEN: from 14:57:01 to 18:43:23 today HEAD built main to 307aa45d… against the expected 143dbb89…, with NO draft substituted (measured under gate.main.lock, no gate_main alive). Auto-commit commit:2693 had adopted a mid-flight gate_main substitution — its carve-out reverted main's TUs, gate_main re-wrote them, and `git add -A src/` swept the unverified bodies in (a TOCTOU race, 14 s after a bisect chunk banked). Every main batch after it was doomed before its first draft was judged: m00–m03 card cycles drafted ~737, slated 160, banked 0, and burned ~50 clean rebuilds bisecting innocent slates. commit:2712 restored the green content by accident (it swept this investigation's diagnostic checkout). gate_main: on any batch failure, ONE try_batch([]) control runs first — if HEAD itself is red it prints BASELINE RED, leaves the slate reusable, exits 3 (R40). clean_build no longer reports a linked-but-mismatched build as "no binary" (the build target embeds the SHA check), the compile-conflict shortcut fires only on error-shaped lines naming a symbol some draft in the slate actually uses (the baseline's own func_800143AC implicit-decl WARNING was matching — every m04 chunk died with "drafts declaring it: []"), reverts narrow to top-level src/*.c (main_tus) so a main gate can never destroy overlay lanes' in-flight work, and --assert-baseline is a first-class mode. main_lane: every cycle opens with gate_main --assert-baseline and REFUSES to draft or gate against a red baseline (R43) — BaselineRed parks nothing, burns no tries, writes .run/main_lane.BASELINE_RED, re-checks every 30 min. Adopters (ox_campaign ×3, maintenance.sh, gate_stage, gate_lane, idiom_serial): main's TUs (top-level src/*.c) are never staged and never reverted by an overlay/maintenance lane — one writer (gate_main), one committer (main_lane, after the whole-EXE SHA re-checks green). Unstage-after-add is race-free where the old revert-then-add was the losing half of the TOCTOU. Diagnosis, evidence and the full timeline: docs/tool-designs/main-lane-fix-s59.md