From ce38cfbcda57ced9045fa1a3690b56b646553e38 Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Thu, 30 Jul 2026 17:45:03 -0600 Subject: [PATCH] =?UTF-8?q?fix(phase-30):=20T3=20pre-work=20=E2=80=94=20ga?= =?UTF-8?q?te=5Fstage=20commit=20stages=20NEW=20jr-carve=20files=20+=20ove?= =?UTF-8?q?rlays.mk=20+=20the=20binary's=20yaml=20(T1a=20found=20the=20-u?= =?UTF-8?q?=20gap);=20bounded=20failed-prep=20hazard=20documented?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/gate_stage.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tools/gate_stage.py b/tools/gate_stage.py index 00ffdc722..fffb6b368 100644 --- a/tools/gate_stage.py +++ b/tools/gate_stage.py @@ -461,6 +461,16 @@ def _run_gate_locked(drafts, binary, src, asm, out, good_sha, propagate, source_ # the same-named split — the Phase-29 §-lesson (a filename glob silently omitted 4 # R22-verified banks from a commit). `-u` cannot miss a modified tracked file. sh(["git", "add", "-u", "src/"]) + # P30 T3 pre-work: `-u` cannot stage NEW files — a jr bank's jtbl prep CREATES + # src//_jr_XXXX.c and edits config/overlays.mk + the binary's splat yaml, + # all of which the old scope silently omitted (a clone of such a bank commit failed to + # build; found via T1a's zero-jr-bank runs leaving exactly this residue). Add them + # binary-scoped. KNOWN BOUNDED HAZARD: a FAILED jr attempt's prep residue in the same run + # would ride along — the wave runner's post-batch §61 residue sweep (orphan carve = a + # carve file whose fns are all still stubs) is the guard until harvest_verify's per-draft + # undo covers config+carve-file restore on reject. + sh(["git", "add", f"src/{binary}/"]) + sh(["git", "add", "config/overlays.mk", f"config/splat.{binary}.yaml"]) sh(["git", "add", DEDUP_YAML] + ([src] if src else [])) sh(["git", "commit", "-q", "-m", f"feat({os.environ.get('GATE_PHASE', 'decomp')}): {source_tag} gate — +{len(verified)} fns x{propagated} propagated (fleet {fp}%)"])