fix(phase-29): commit the jtbl carve config that belonged with func_801789AC's bank

MY ERROR: the previous commit scoped `git add` to src/ and tools/ and omitted config/, leaving the
jtbl carve's config (overlays.mk + splat.ov_SC01_077.yaml) uncommitted. harvest_verify KEEPS a carve
on success, so that config is part of the banked state — HEAD was an incomplete change set, and the
R22 140/140 I reported was verified WITH these files present, not without them.

CAUGHT BY jtbl_family_bank's precondition check ("config/ or src/ has uncommitted changes"), not by
me and not by any gate. A build without them appeared byte-identical, but that was an INCREMENTAL
build reusing objects — the same trap that produced a false all-clear earlier today — so it is not
evidence either way. Committing what R22 actually verified removes the ambiguity rather than
reasoning about it.

Lesson, same shape as R32 pointed at commit hygiene: a scoped `git add` is an assertion about the
change set's boundary, and nothing checks it. The tool preconditions are the only thing standing
between a partial commit and a broken HEAD.
This commit is contained in:
Drew T
2026-07-27 19:46:04 -06:00
parent 2f1aa8659d
commit 05cd7a5808
2 changed files with 3 additions and 1 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ ov_SC01_077_ELF := $(ov_SC01_077_OUT).elf
ov_SC01_077_MAPFILE := $(ov_SC01_077_OUT).map
ov_SC01_077_LD_SCRIPT := $(ov_SC01_077_OUT).ld
ov_SC01_077_SPLAT_YAML := config/splat.ov_SC01_077.yaml
ov_SC01_077_JTBL_INTERLEAVE := --order tail.data.o,ov_SC01_077_a.o,ov_SC01_077_jr_8012ACE0.o,tail2.data.o,ov_SC01_077_jr_80135888.o,tail3.data.o,ov_SC01_077_jr_80135A4C.o,tail4.data.o,ov_SC01_077_jr_80135D20.o,tail5.data.o,ov_SC01_077_jr_801380E0.o,tail6.data.o,ov_SC01_077_o0.o,tail7.data.o,ov_SC01_077.o,tail8.data.o,ov_SC01_077_jr_8015444C.o,tail9.data.o,ov_SC01_077_jr_80154C24.o,ov_SC01_077_jr_801588CC.o,tail10.data.o,ov_SC01_077_jr_80159C84.o,tail11.data.o,ov_SC01_077_jr_8015A3C8.o,tail12.data.o,ov_SC01_077_jr_8015AE2C.o,tail13.data.o,ov_SC01_077_jr_8015C32C.o,tail14.data.o,ov_SC01_077_jr_8016AB6C.o,tail15.data.o,ov_SC01_077_jr_801734BC.o,tail16.data.o,ov_SC01_077_jr_80178D40.o,tail17.data.o,ov_SC01_077_jr_8017A4AC.o,tail18.data.o,ov_SC01_077_jr_8017AE2C.o,tail19.data.o,ov_SC01_077_jr_80182268.o,tail20.data.o,trailing.o # Phase-26 §8 jtbl-rodata carve
ov_SC01_077_JTBL_INTERLEAVE := --order tail.data.o,ov_SC01_077_a.o,ov_SC01_077_jr_8012ACE0.o,tail2.data.o,ov_SC01_077_jr_80135888.o,tail3.data.o,ov_SC01_077_jr_80135A4C.o,tail4.data.o,ov_SC01_077_jr_80135D20.o,tail5.data.o,ov_SC01_077_jr_801380E0.o,tail6.data.o,ov_SC01_077_o0.o,tail7.data.o,ov_SC01_077.o,tail8.data.o,ov_SC01_077_jr_8015444C.o,tail9.data.o,ov_SC01_077_jr_80154C24.o,ov_SC01_077_jr_801588CC.o,tail10.data.o,ov_SC01_077_jr_80159C84.o,tail11.data.o,ov_SC01_077_jr_8015A3C8.o,tail12.data.o,ov_SC01_077_jr_8015AE2C.o,tail13.data.o,ov_SC01_077_jr_8015C32C.o,tail14.data.o,ov_SC01_077_jr_8016AB6C.o,tail15.data.o,ov_SC01_077_jr_801734BC.o,tail16.data.o,ov_SC01_077_jr_801789AC.o,ov_SC01_077_jr_80178D40.o,tail17.data.o,ov_SC01_077_jr_8017A4AC.o,tail18.data.o,ov_SC01_077_jr_8017AE2C.o,tail19.data.o,ov_SC01_077_jr_80182268.o,tail20.data.o,trailing.o # Phase-26 §8 jtbl-rodata carve
build/src/ov_SC01_077/ov_SC01_077.o: JTBL_PADS := 0,0,4,0,4,0,4 # §8e pads (jtbl_carve.py) tables=+0x0,+0x20,+0x38,+0x58,+0x70,+0x90,+0xa8
build/src/ov_SC01_077/ov_SC01_077_a.o: JTBL_PADS := 0,0 # §8e pads (jtbl_carve.py) tables=+0x0,+0x14
build/src/ov_SC01_077/ov_SC01_077_jr_8012ACE0.o: JTBL_PADS := 0,0 # §8e pads (jtbl_carve.py) tables=+0x0,+0xcc
+2
View File
@@ -79,6 +79,7 @@ segments:
- [0x341d4, c, ov_SC01_077_jr_8015C32C]
- [0x42a14, c, ov_SC01_077_jr_8016AB6C]
- [0x4b364, c, ov_SC01_077_jr_801734BC]
- [0x50854, c, ov_SC01_077_jr_801789AC]
- [0x50be8, c, ov_SC01_077_jr_80178D40]
- [0x52354, c, ov_SC01_077_jr_8017A4AC]
- [0x52cd4, c, ov_SC01_077_jr_8017AE2C]
@@ -127,6 +128,7 @@ segments:
- [0xb0ab0, data, tail15]
- [0xb0b10, .rodata, ov_SC01_077_jr_801734BC] # Phase-26 §8 jtbl-rodata carve (jtbl_carve.py)
- [0xb0b24, data, tail16]
- [0xb0cb4, .rodata, ov_SC01_077_jr_801789AC] # Phase-26 §8 jtbl-rodata carve (jtbl_carve.py)
- [0xb0ccc, .rodata, ov_SC01_077_jr_80178D40] # Phase-26 §8 jtbl-rodata carve (jtbl_carve.py)
- [0xb0ed0, data, tail17]
- [0xb0ed4, .rodata, ov_SC01_077_jr_8017A4AC] # Phase-26 §8 jtbl-rodata carve (jtbl_carve.py)