- The blocker was carried as "one missing file-scope extern gates 83 PURE members". Both halves were wrong (R14): corpus.stubs says 4 open members, and D_801ED98C is a DEFINED const Blk8 whose rodata lives inside the member's own nonmatchings .s — replacing the stub deletes the data with it. gather_externs can carry an extern DECL, never a DEFINITION, which is why it reported "no file-scope decl" for a symbol md_SC05_023 defines on line 114. - Fix: paste typedef + const definition + body per sibling (data bytes verified identical across md_SC05_024/025/028/029). 4/4 banked. - aprop_symfix: new `local-only` class — draft-DEFINED identifiers that merely carry a vram-looking suffix (Blk8_…, S8_…, L_call_…) are not stale symbols. Measured: that is every non-clean case in the whole wave-7a/7b stored-draft residue, which holds ZERO stale-symbol recoveries (a clean negative result — the defect was A-prop-specific). - cookbook index regenerated (tools-health fails closed on a stale index — it caught §171). - R22 clean rebuild: check-all 213 passed, 0 failed of 213. Stubs 12,445 -> 12,441.
160 KiB
Cookbook index — find the entry by the SYMPTOM you are looking at
Generated by
tools/cookbook_index.py— do not hand-edit (R33). Regenerate after adding a cookbook section.
docs/matching-cookbook.mdis ~716 KB / 512 sections. Grepping it blind is how three P30 wave-1 agents each "discovered" an idiom that was already written down. Start here, then read the section. A section appears under every symptom it addresses.
How to use: name what you SEE in the diff (a stolen delay slot, an extra la, a swapped register pair, a conflicting types error), find that symptom below, read those sections first. If nothing fits, THEN grind — and add a section when you win.
Start here — the symptoms that come up most, with the section that fixes them
Hand-curated from what agents actually hit and, in several cases, RE-DERIVED because keyword matching alone did not surface the entry (P30 wave-2 feedback). If your symptom is here, read the named section before anything else.
- wrong branch sense / arms swapped /
beqwhere the target hasbne(match_one prints this class as BRANCH-POLARITY) → §3-T4 (invert the source condition) + §32.2; for a trailingreturn 0vs an early return see the shared-ret0 note (cookbook L1344) conflicting typeson YOUR OWN function's definition, where the fleet canon is(void)→ §73 (the PARAMS axis) + §42 — keep the(void)signature and read the incoming arg viaregister s32 a0v __asm__("$4"); §42 is otherwise indexed only under regalloc- a shared global declared at a conflicting type (u8 vs s32, signedness) blocking your draft → §37 asm-label alias
extern T X __asm__("D_x")— beats*(T*)&X, whose address-of perturbs regalloc. Works for FUNCTION definitions too (P30 wave 2) - target reuses ONE address register across two different offsets of the same global → §20 (the pointer-var-to-the-global bullet, cookbook L1907-1918) — take
T *p = &D_x;and index offp, never the bare symbol twice - an extra
la/ the address hoisted into a callee-saved register across calls → §20 +gcc-2.7.2-map/cse_expr.md§H —*(T*)&symforce_regs the address; the asm-label alias (§37) keeps the direct%lomem form andi $x,0xFFfolded away in your output but present in the target → §1/I2 + §12 name the family; if the prescribed& 0xffat the use folds, hold the masked byte in a u16 local so only a QI->HI extend survives (P30 wave 2, byte-tested)sltiwhere the target hassltiu(or vice versa) → §35 — a separate SIGNED int copy of an unsigned load keepsslti; chained bounds get range-folded, so write each bound as its ownif/goto(§21)- you are about to hand-derive a body that some overlay already matched → §71 — grep the callees/globals for an already-matched SIBLING first; in wave 2 this alone produced iteration-1 MATCHes on 4 of 19 targets
- gcc stole an instruction into a branch delay slot that the target leaves as
nop→ §5a + the zero-byte__asm__("")fence (§34 toolkit) —reorg.c stop_search_phalts the eager filler on an asm insn voidvss32return — is promoting it byte-neutral? → NO, not always: §41d (byte-proven; avoidbody with noreturngains an instruction). P30 adds a second mechanism: ans32return keeps$v0live-out and blocks dbr from filling a loop-back delay slotmatch_onesays SIZE-MISMATCH/short and the target has a frame-pointer prologue (addu $fp,$sp,$zero/21F0A003) → The target is -O0. Pass--o0tomatch_one/rtu_match— nothing else will ever match (§116: opt level is a property of the FILE). Known -O0 regions: boot,ov_SC01_077_o0*, the whale_o0b, and 0x8013B568..0x8013C98C — a target outside all four still needs checking- same instruction multiset, one contiguous window, loads/registers ROTATED inside it → pure sched1 statement-order (
gcc-2.7.2-map/sched.md§S1/§S4). Cheapest lever: brute-force it — N independent statements, script all N! orders throughmatch_one(24 runs ≈ 2 min) instead of reasoning aboutrank_for_schedule - a two-constant
if/elseor?:result lands in $v1 where the target reuses the condition's $v0 → §76 — fold the condition into a NAMED local and overwrite that SAME variable with the two constants (an s16 temp, a fresh temp, an inner scope, and both ternary polarities all stay $v1; only reusing ones32local coalesces onto $v0). §76 reads as behemoth-only; it is not - a load HOISTED above a store (match_one may call it a WIDTH class) → usually §76 regalloc, not a width bug: a missing WAR dependency lets sched2 hoist it. Same fix — one variable for the compare temp and the result
ori $v0,0xffd8in yours vsaddiu $v0,-0x28in the target → a NEGATIVE constant stored into an unsigned narrow local materialises via zero-extendedori; make the local signed to getaddiu. It does NOT cost you thelhuon readback — gcc-2.7.2 emitslhufor any plain HImode load feeding ansh(P30 wave 4, byte-tested)- LENGTH-DRIFT −1 and the missing instruction is a reg-to-reg COPY in a
jaldelay slot → a narrow prototyped param (plain ANSIs16 arg3) — §43 is indexed as the K&R-definition lever, but the ANSI form is the fix as often - your narrow load lost its load-delay
nopright after an inline block move → anlwl/lwr+swl/swrpair is a delay-slot SPONGE for the following load — the inverse of the §5a/§34 fence case. Align-1 4×u8 struct assign emits the inline form (§38 covers only the -O0 memcpy-call form) - your
e = param_1copy VANISHED (target addresses every field off a copy at a join block) → cse.cmake_regs_eqvkeeps a param copy only when the new pseudo's live range escapes the cse block AND outlives the param's last mention — reach that by REUSING the same variable in a later block. Copy-in-the-arms gets hoisted into the delay slot; copy-assigned-in-an-arm goes global allocno → callee-saved + 2 prologue insns - ⚠️ the
.run/ghidra_c/<fn>.cseed looks like a DIFFERENT function entirely → it may be — overlays share VAs, so a seed can be decompiled from another overlay mapped at the same address. Trust the target.s, not the seed (P30 wave 4)
By symptom
delay slots & branches (6)
- §3-T4 — Branch polarity: invert the source condition to flip gcc's chosen branch L90
- §5a — Cross-jump tail-merge — gcc collapses two byte-identical blocks the original kept separate (FIX FOUND) L211
- §3-D. — THE CROSS-JUMP RATCHET (the sharpest new trap —
func_80131340L-C) L3508 - §3-C. — Inner-block declaration does NOT delay slot allocation — BYTE-REFUTED L10065
- §162 — CROSS-JUMP DIRECTION: the surviving copy is always the LATER one, so a BACKWARD
jinto a sibling arm is a sourcegoto(P30 S48) L11263 - §162 — The cross-jump "CALL veto" is a COUNT law, not a CALL law (BOUNDS §88a; P30 S48,
func_80189540) L11299
instruction scheduling (19)
- §3-T2 — Source statement order drives instruction scheduling L78
- §3 — When a diff is pure scheduling → decomp-permuter (harness built, Phase 6) L107
- §10 — Closing the regalloc/scheduling hard tail by hand (LZSS, Phase 7 session F — the full close) L835
- §25 — The "schedule" class is mostly COALESCING (pin-crackable), not scheduling; + the gate two-stage + h_exact over-counts ×134 (Phase 21, cont.6) L2132
- §3-The — crack: the residual was gcc-2.7.2 COPY-COALESCING, not the instruction scheduler L2144
- §3-The — genuine scheduler —
rank_for_schedule(sched.c), for when it IS scheduling L2160 - §3-The — genuine schedule WALLS (do NOT re-grind — stub) L2169
- §32 — The region-a CAMERA-GIANT idiom set: struct-base hoisting + 4 sibling levers (Phase 24 T7, Fable5-cracked on
func_80129CF8191 ins, match_one MATCH; transferable to the 6 sibling giants) L2422 - §34 — The
func_80138ED0giant crack: gcc-2.7.2's 3-qty sort bug + the zero-byte asm allocation toolkit + the giv-init fence (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2454 - §35 — The region-a sibling-giant harvest: difficulty ≠ $s-reg count (it's global-array hoisting) + the banking recipe + new loop idioms (Phase 24 T7, 5 parallel Opus-Max agents) L2471
- §3-A4 — SINK THE CONSUMER CALL INTO THE ARMS (the inverse of A1;
func_8016AB6C, byte-proven) L3444 - §49 — The LUID DIAL: a zero-byte SCHEDULING dial (the sched.c analogue of §47) —
func_8017A4AC(536 ins ×134), Phase 26 session 8 L3527 - §66d-5 —
residual_class's "structural ⇒ permuter CPU is waste" is WRONG for schedule permutations (measured, Phase 29 SESSION-18) L5491 - §3-The — attribution primitive (use this before calling anything a scheduling residual) L6057
- §3-The — scheduling rules (refining §135-2 and §135-4) L8909
- Consequence — for the family (a real scheduling decision) L10092
- §148 — The loop.c hoisting THRESHOLD is arithmetic you can compute, and the
?:clamp that folds to MIN_EXPR (P30 S42,func_8017C6F4, 947 ins) L10142 - §3-A. —
move_movableshoists iffthreshold × savings × lifetime ≥ insn_count— and you can read it L10148 - §16Z — SHARPENS (sharpens §37 "the /s-DEP LATTICE", §136-13, §136-14, §16Xy, §162q,
gcc-2.7.2-map/sched.md§64) L14337
register allocation & pins (42)
- §10 — Closing the regalloc/scheduling hard tail by hand (LZSS, Phase 7 session F — the full close) L835
- Residual — A — commutative
|/&/+result lands in the wrong source-operand register L856 - Register-allocation — ORDER (call-crossing $s0/$s1 swap) → FORCE it with register pins (byte-proven) L1384
- §3-The — LOOSE-TYPING wall is real for narrow params (Phase 16, reconfirmed) L1428
- §3-THE — CAP: at this tail the match_one→gate gap is the LOOSE-TYPING CALL-GRAPH wall (not cheap plumbing) L1637
- §22 — DEF-side loose-typing recovery + grinder blacklist (Phase 21) L2005
- §24 — The
ov_SC01_077_a.csplit-file vein: split-aware propagation, but loose-typing-gated (Phase 21) L2085 - §25 — The "schedule" class is mostly COALESCING (pin-crackable), not scheduling; + the gate two-stage + h_exact over-counts ×134 (Phase 21, cont.6) L2132
- §42 — The F-band ≤28 regalloc crack wave: register-pin/DENSITY levers beat the permuter (Phase 25 T7 F-band, 2026-07-10; Ultracode 9-worker wave, 4/9 banked byte-identical, 266 swept ×134) L2900
- §43 — The K&R s16-param definition DISSOLVES the "narrow-param wall" for by-value register args (Phase 25 task A, Fable5 crack of the 369-ins giant
func_80166994×134, 2026-07-11) L3195 - §45 — The flagship
func_80133CD4crack (399 ins ×134): the merged-variable permutation-breaker + the 1-death local-alloc gate (Phase 25 task A giant escalation, Fable5 gdb-on-cc1, 2026-07-11) L3298 - §47 — The live-length SLIDER: splitting a global.c allocno-priority TIE with one zero-byte asm (Phase 26 session 8, Fable5 Max, byte-proven on
func_8017BEBC952 ins ×113) L3365 - §48 — The 12-core jr crack wave: the ALLOCNO-PRICING dials and the EBB rule (Phase 26 session 8, Ultracode, 9/12 MATCH first pass) L3405
- §3-A. — ALLOCNO-PRICING DIALS — move a value into the register you want, byte-neutrally L3413
- §52 — The WALKER-FAMILY skeleton: 6 regalloc-order levers + a deeply-characterized intrinsic wall (
func_80178004, 165 ins ×134; Phase 26, Fable5, 2026-07-15) L3913 - §52a — The regalloc sibling wave: new levers + two new wall classes (cheap-Opus applying §52, 2026-07-15) L3959
- §52b — Sibling wave 2: more de-pin levers, a third wall class, and the match_one→whole-binary gap at scale (2026-07-15) L3997
- §66d-1 — What transfers between giants is the LOOP, not the PIN L5280
- §70 — The giv-init base register: walk the PARAMETER, not a copy of it (Phase 29 SESSION-18,
func_801777BC) L5619 - §71 — Before mapping a giant, look for an already-matched SIBLING beside it (Phase 29 SESSION-18,
func_8017D960, 3,338 ins) L5660 - §72 — A
register __asm__pin is a PREFERENCE, not a reservation (Phase 29 SESSION-18,func_8017F510) L5726 - §74 — Auditing a pinned draft: the §72 hazard is CALLER-SAVED pins spanning a call, and only the disassembly can tell you (Phase 29 SESSION-19,
func_8017D960b2, 5 pins) L5822 - §76 — The allocno CLASS (local vs global) is the dominant regalloc lever, and C reaches it ONLY through declaration scope and variable reuse (Phase 29 SESSION-19, behemoth #3
func_8017F5101,511 ins, 97 → MATCH, pin-free) L6028 - §78 — A LENGTH drift can be a register grant in disguise; and
foldnever leaves a literal first in an|chain (Phase 29 SESSION-19, behemoth #2func_8017D9603,338 ins, 1806 → 0, pin-free) L6174 - §76 — confirmed at scale, and a pin nuance L6251
- §80 — A do-not-re-buy entry is scoped to its BASE, not to the function; and the pin's hidden cost is an unconditional
qty_phys_sugg(Phase 29 SESSION-19,func_8017BF1445 → 0) L6270 - §3-The — pin's hidden cost, with the citation L6291
- §83 — The parameterised-repeat law, the spill-area trap, and why a per-case edit cannot move a per-case symptom (Phase 29 SESSION-20,
func_801838145,122 ins, cold-ish start → 36 structural / 99.3%) L6412 - §83c — TRAP: a "dead local" in a prior draft may be gcc's OWN spill area L6445
- §86 — Pinned-exemplar templatability is a PER-FAMILY property, not a per-member rate; and the §42e pin guard is now over-conservative (Phase 29 SESSION-20) L6589
- §3-Two — further notes worth keeping L8248
- §137 — REGALLOC-PERM is a TWO-COMPILE ARITHMETIC PROBLEM, not a permuter job L9341
- §3-The — same swallow, twice more, in the integration spine L9706
- §3-B. — A
?:on MEMORY operands costs ~16 bytes of invisible frame; on REGISTER operands, zero L10054 - §3-D. — A lone
$t8/$t9in the target is RELOAD SCRATCH — reproduce the spill, don't pin the register L10070 - §3-C. — A zero-byte ALLOCNO-PRIORITY slider L10181
- §150 — A register ROTATION across symmetric blocks is VARIABLE-IDENTITY evidence, not an allocator tie (P30 S43,
func_8017C6F4, 947 ins ×4) L10309 - §152 — BYTE SIZE is the family key that name- and h_seq-grouping both miss (P30 S43, the 0xECC family: 1 crack → 12 overlays → 11,364 ins) L10415
- §155 — hi/lo literal scanning MUST track base registers (S45) L10555
- §158 — The RANGE-EXTENDER: a fourth zero-emission asm lever completes the allocno toolkit (P30 S46 tier-3,
func_8017CE58, 733 ins) L10709 - Bonus — facts worth keeping L10754
- §156 — THE PREFERENCE-DONOR MERGE: cross-region variable reuse is what fills a0-a3, and a call-arg use in ONE region steers the fill in ALL of them (P30 S46 tier-3,
func_80186E24, 611 ins: 236-off "S11 regalloc-order" → MATCH, zero new pins) L10769
CSE / redundancy / rematerialization (3)
- §46 — The
func_80178D40crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3313 - §83d — CSE's quantity budget is WHOLE-FUNCTION, so a local rewrite cannot fix a local symptom L6452
- §153 — THE ADDRESS-REMATERIALISATION LAUNDER: a third zero-emission asm lever (P30 S43,
func_8018D98C, 710 ins) L10463
loops & induction variables (9)
- §3-T1 — Loop pointer: top-of-body for
adduinduction, not constant-foldedaddiuL71 - §34 — The
func_80138ED0giant crack: gcc-2.7.2's 3-qty sort bug + the zero-byte asm allocation toolkit + the giv-init fence (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2454 - §35 — The region-a sibling-giant harvest: difficulty ≠ $s-reg count (it's global-array hoisting) + the banking recipe + new loop idioms (Phase 24 T7, 5 parallel Opus-Max agents) L2471
- §46 — The
func_80178D40crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3313 - §66d — The permuter⇄reader loop: alternate a random search with a byte-verified idiom, and let
residual_classdecide whose turn it is (Phase 29 SESSION-17) L5245 - §66d-1 — What transfers between giants is the LOOP, not the PIN L5280
- §70 — The giv-init base register: walk the PARAMETER, not a copy of it (Phase 29 SESSION-18,
func_801777BC) L5619 - §145 — Three loop/combine levers from the S40 wave-2 drafters (16/16 match_one) L9924
- §148 — The loop.c hoisting THRESHOLD is arithmetic you can compute, and the
?:clamp that folds to MIN_EXPR (P30 S42,func_8017C6F4, 947 ins) L10142
structs, block moves & memcpy (35)
- §3-T2 — Source statement order drives instruction scheduling L78
- §5 — Known hard-residual classes (instruction-identical, one byte-exact blocker) L199
- §13 — Add a location overlay — the canonical runbook (Phase 13; the Phase-15 fleet recipe) L1056
- §15 — Struct-heavy shared-core pipeline (Phase 16) — empirical determinations (S0) L1313
- §16 — Guided hand-matching the struct-heavy core (Phase 17 — beats the §15 brute-force) L1335
- §3-The — crack: the residual was gcc-2.7.2 COPY-COALESCING, not the instruction scheduler L2144
- §28 — Banking a "close=0 gate-rejected" giant: the canonical-extern recovery (Phase 22 T1, byte-proven on func_8015126C ×134) L2325
- §28b — The struct-walled close=0 giant (§28 case #3) IS bankable: the engine_types.h type-lift (Phase 22 T2, byte-proven on func_80156B74 ×134) L2357
- §30 — Fable5Max cracks §20/§10 "unsteerable" from the gcc SOURCE: store-vs-load is a
/saliasing flag, the def-side wall has a macro escape, + the birthing-boost (Phase 23, byte-proven on giantfunc_8014EE14248 ins ×134) L2382 - §32 — The region-a CAMERA-GIANT idiom set: struct-base hoisting + 4 sibling levers (Phase 24 T7, Fable5-cracked on
func_80129CF8191 ins, match_one MATCH; transferable to the 6 sibling giants) L2422 - §38 — The WHALE
func_80144B9C(770 ins): the -O0 struct-assign memcpy idiom + the -O0 reach-134 ×134 rollout (Phase 24 T7 §G, cheap Opus — no Fable5, no calls.c) L2527 - §40 — Structural families: the MECHANICAL symbol-remap (crack one exemplar → remap the rest, ~0 tokens) (Phase 25 T3/T7, 2026-07-08) L2553
- §41 — The DEF-SIDE canonical-sig wall: mechanically banking a drafted giant past
conflicting types(Phase 25 T5b batch-2, 2026-07-09;tools/canon_sig_reconcile.py, byte-proven onfunc_8013B274) L2710 - §42a — addendum — wave 2 (residuals + 29-100 band): iso-MATCH ≠ real-TU bank, the memcpy→struct-assign fix, +5 levers (2026-07-10b) L2953
- §44 — The Phase-25 cheap-Opus giant batch: 5 structural levers + the §43 extension (2026-07-11, 6 crackers over the frontier giants) L3242
- §46 — The
func_80178D40crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3313 - §3-Why — 0/8 was structural, and predictable from two words L4045
- §54 —
--fix-def-sig: the member's CANONICAL DECLARATION is a build step too (tiny-IMM mega-pools, +4,801, Phase 29 T6, 2026-07-16) L4163 - §56b — PROPAGATING an h_seq giant: the exemplar's externs MUST be fleet-canonical, not the draft's types L4232
- §65a — The blast-radius taxonomy (makes §61's law structural instead of remembered) L5030
- §66d-5 —
residual_class's "structural ⇒ permuter CPU is waste" is WRONG for schedule permutations (measured, Phase 29 SESSION-18) L5491 - §83 — The parameterised-repeat law, the spill-area trap, and why a per-case edit cannot move a per-case symptom (Phase 29 SESSION-20,
func_801838145,122 ins, cold-ish start → 36 structural / 99.3%) L6412 - §84 — The DERIVED-OFFSET remap bug: a hand-computed literal that encodes the DISTANCE between two per-overlay symbols, and why
match_oneis structurally blind to it (Phase 29 SESSION-20,func_8013D53C) L6472 - §3-The — construct L6477
- §91 — A structure-TRANSFER is only valid where the structure corresponds: the
--likerole trap (Phase 29 SESSION-21,func_8012AAAC×137) L6842 - §3-The — three-hypothesis trail, because two of them were wrong and the wrongness is instructive L6871
- §129 — Post-carve,
rtu_match/match_oneCOUNT THE JUMP TABLE AS INSTRUCTIONS; and a carve must never be committed without its owner (P30 S28,func_8013BD74) L8437 - §129a — the target instruction count is INFLATED after a carve L8441
- §3-The — DEFINITION-side alias is the only escape when the fleet canon disagrees on a promoting param L9470
- §3-Two — errors of mine, both instructive L10006
- §160 — THE REACH-15 WAVE HARVEST: an align-1 block move, and the instrument that called it a wall (P30 S47) L10890
- §16Xy — SHARPENS (sharpens §136d-3, §37 /s-DEP LATTICE, §135-2, §136-13, §162q) L12297
- §3-The —
/sdrop clause is in ALL THREE dependence predicates, so the FIXED-ADDRESS STORE is what floats (P30 S48,func_8017CA18, ov_MAIN_012) L12299 - §16Z — SHARPENS (sharpens §37 "the /s-DEP LATTICE", §136-13, §136-14, §16Xy, §162q,
gcc-2.7.2-map/sched.md§64) L14337 - §3-The — ADDRESS-CLASS TABLE: which load/store pairs even REACH the
/sclause (P30 S48 wave 4,func_80185B44, ov_SC03_014) L14339
types, signedness & load/store width (34)
- §3-I1 — Unsigned range check:
(x - lo) < (hi-lo)→addiu+sltiuL41 - §3-I2 — Byte mask forces
andieven afterlbuL47 - §3-T3 — Types L85
- §7 — PsyQ SDK types & symbols (the library-call prerequisite) L303
- §14c — Callee-signature-aware harvest — breaking the extern-type-conflict wall (Phase 15, T6) L1213
- Phase-20 — RESOLUTION —
tools/cast_call_sites.pyBUILT + the cap re-diagnosed (R14, byte-proven) L1701 - §23 — Giant
func_80153E00cracked (scalar-data CAST); BUT most giant drafts are STALE+INCOMPLETE, and a diag MUST remove artifacts (Phase 21 — byte-proven + a self-correction) L2032 - §28b — The struct-walled close=0 giant (§28 case #3) IS bankable: the engine_types.h type-lift (Phase 22 T2, byte-proven on func_80156B74 ×134) L2357
- §33 — Automating the giant decl-reconcile:
tools/reconcile_decls.py(the DATA analog of §20'scast_call_sites) + a fleet-majority type oracle (Phase 24 T7b, byte-proven onfunc_80129CF8) L2434 - §40a — The DECL-RECONCILE pass (type-lift so remapped drafts compile in the sibling TU) (Phase 25 T7.2, 2026-07-08) L2601
- §41 — The DEF-SIDE canonical-sig wall: mechanically banking a drafted giant past
conflicting types(Phase 25 T5b batch-2, 2026-07-09;tools/canon_sig_reconcile.py, byte-proven onfunc_8013B274) L2710 - §41d —
void→s32is NOT always byte-neutral: gate the RAW draft FIRST (Phase 26 session 6, byte-proven) L2878 - §42b — addendum — wave 3 (Max, 2026-07-10c): THE STALE-OBJECT GATE TRAP + the read-global
&-cast drift + fix L2994 - §43 — The K&R s16-param definition DISSOLVES the "narrow-param wall" for by-value register args (Phase 25 task A, Fable5 crack of the 369-ins giant
func_80166994×134, 2026-07-11) L3195 - §3-C. — TYPE- AND SHAPE-DRIVEN CODEGEN (the C type literally selects the addressing mode) L3484
- §56b — PROPAGATING an h_seq giant: the exemplar's externs MUST be fleet-canonical, not the draft's types L4232
- §64 — The §20 type-lift's three laws: fold the tagged typedef, check VISIBILITY, and strip only what is TEXTUALLY IDENTICAL (
lift_types.py, Phase 29 SESSION-14, 2026-07-23) L4908 - §64a — VARIANT types: UNIQUIFY the camps, do not reconcile them (
uniquify_type.py, Phase 29 SESSION-14) L4957 - §65g — Where the cheap levers STOP: the local-type and in-TU-self-decl classes did not yield L5139
- §68 — A comment-only line halted the extern scan, and the skip label blamed the type cap (Phase 29 SESSION-18) L5524
- §73 — A def-side self-decl conflict has TWO axes: RETURN (fleet widen, T2) and PARAMS (casts at each use, T0). Diagnose which before paying for the expensive one (Phase 29 SESSION-19,
func_8014F3E8+func_8014D4C0) L5783 - §75c — Class-B's remedy is the FULL §17a-1 PAIR (decl and call-site cast); a decl-only fix moves the error and looks like a new wall (Phase 29 SESSION-19,
func_8012F14C) L5997 - §3-The — defect this exposed: a shared type that is present but invisible L6354
- §92 — Conforming a DECLARATION: pointer changes are caller-neutral, scalar-WIDTH changes are not (Phase 29 SESSION-21,
tools/conform_decls.py) L6891 - §94 — A family sweep's
0/Nis a TYPE-CARRY failure until proven otherwise: lift the exemplar's local types, ALL of them, transitively (Phase 29 SESSION-21,func_8016B6BC0/137 → 137/137) L6947 - §100 — Prefer the DRAFT-LOCAL fix: a type only one function uses belongs in its BODY, not in a shared header (Phase 29 SESSION-22,
func_80175DA80/137 → 137/137) L7216 - §120 — Uniquify draft-defined TYPE names; and check which of N staging sites you actually patched (Phase 29 T93) L8026
- §3-Do — NOT "strip the duplicate typedef" — it breaks the extern that uses it L8037
- §3-The — type-form rules L8879
- §143 —
cast_call_sitesread a RETURN STATEMENT as a prototype and deleted it. A 0/39 sweep became 18/39. (P30 S40) L9831 - Then — propagation returned 0/137 TWICE — both times a missing TYPE L9997
- §154 — Reading a disc payload: the module-id word, static base derivation, and "type 1 = uncompressed overlay" (P30 S44) L10519
- §3-C. — PAC type 1 = the same payload class as type 4, just NOT compressed L10545
- §155b — check the TYPE your oracle returns before comparing against it (S45 p5) L10584
declarations, prototypes & K&R (57)
- §3-T4 — Branch polarity: invert the source condition to flip gcc's chosen branch L90
- §8c — Splitting a TU means rebuilding its DECLARATION ENVIRONMENT, not moving text (Phase 26 session 6) L437
- §8d — Templating a body INTO a TU must not CHANGE its declaration environment — demote the carried data externs (Phase 26 session 8, byte-proven on
func_8015AE2C×133) L483 - §13 — Add a location overlay — the canonical runbook (Phase 13; the Phase-15 fleet recipe) L1056
- §14c — Callee-signature-aware harvest — breaking the extern-type-conflict wall (Phase 15, T6) L1213
- §3-The — pipeline gotcha — match_one ≠ the gate;
sig_unifyis MANDATORY L1421 - §3-The — gate two-stage — sig_unify is a FALLBACK, not unconditional (
gate_stage.py, §19 folded in) L2189 - §28 — Banking a "close=0 gate-rejected" giant: the canonical-extern recovery (Phase 22 T1, byte-proven on func_8015126C ×134) L2325
- §28d — The "macro-extern-injection" lever: freeing reach-134 inline matches dedup_propagate skips as "not self-contained" (Phase 23,
tools/inject_capped_externs.py) L2366 - §33 — Automating the giant decl-reconcile:
tools/reconcile_decls.py(the DATA analog of §20'scast_call_sites) + a fleet-majority type oracle (Phase 24 T7b, byte-proven onfunc_80129CF8) L2434 - §40a — The DECL-RECONCILE pass (type-lift so remapped drafts compile in the sibling TU) (Phase 25 T7.2, 2026-07-08) L2601
- §41 — The DEF-SIDE canonical-sig wall: mechanically banking a drafted giant past
conflicting types(Phase 25 T5b batch-2, 2026-07-09;tools/canon_sig_reconcile.py, byte-proven onfunc_8013B274) L2710 - §41b — addendum — M4 "reconcile_decls" tier is ALSO a probe over-count: 0/8 mechanical (Phase 25 T7-M4, 2026-07-10) L2858
- §41d —
void→s32is NOT always byte-neutral: gate the RAW draft FIRST (Phase 26 session 6, byte-proven) L2878 - §43 — The K&R s16-param definition DISSOLVES the "narrow-param wall" for by-value register args (Phase 25 task A, Fable5 crack of the 369-ins giant
func_80166994×134, 2026-07-11) L3195 - §51g — When the thing you are scanning has a GRAMMAR, parse the grammar (
tools/cdecl.py) L3769 - §54 —
--fix-def-sig: the member's CANONICAL DECLARATION is a build step too (tiny-IMM mega-pools, +4,801, Phase 29 T6, 2026-07-16) L4163 - §56 — Banking a hand-drafted GIANT into its exemplar TU: self-contained draft vs live-TU decls, 4 reconciliation tactics (
func_8013FAF8, 312 ins ×138, Phase 29 T4, 2026-07-17) L4187 - §56b — PROPAGATING an h_seq giant: the exemplar's externs MUST be fleet-canonical, not the draft's types L4232
- §57 — The SELF-decl normalize: the sibling's OWN caller declares the templated fn divergently (the third §17a-1 direction;
tools/normalize_self_decls.py, func_801670E4 ×137, Phase 29, 2026-07-18) L4256 - §61 — Task 14: the gate ladder's missing stage is the ARITY pre-pass, and it is TU-side not draft-side (Phase 29, 2026-07-21) L4545
- §63 — The fresh-138 DEF-SIDE blocker: fix the HEADER decl, not the draft (
fix_header_decl.py, Phase 29 SESSION-13, 2026-07-23) L4877 - §63 — UPDATE (Phase 29 SESSION-14) —
fix_header_decl's "SAFE" verdict is FLEET-BLIND; it MUST be R22-validated L5000 - §65c —
rtu_matchMATCH → bank held 13/13 on self-decl, but broke on the FIRST callee-decl case L5081 - §65g — Where the cheap levers STOP: the local-type and in-TU-self-decl classes did not yield L5139
- §66a — The widest write in a pipeline is the one most likely to be UNDECLARED L5181
- §68 — A comment-only line halted the extern scan, and the skip label blamed the type cap (Phase 29 SESSION-18) L5524
- §73 — A def-side self-decl conflict has TWO axes: RETURN (fleet widen, T2) and PARAMS (casts at each use, T0). Diagnose which before paying for the expensive one (Phase 29 SESSION-19,
func_8014F3E8+func_8014D4C0) L5783 - §75 — A propagation cap is usually a MINORITY-SPELLING SOURCE OVERLAY, not a wall: census the carried extern before believing the exclusion message (Phase 29 SESSION-19,
func_8014F3E8×4 → ×138) L5866 - §75b — A body's preamble can carry
#defines, not justexterns; extraction lifts only the externs (Phase 29 SESSION-19,func_80165CA0×3 → fleet) L5948 - §75c — Class-B's remedy is the FULL §17a-1 PAIR (decl and call-site cast); a decl-only fix moves the error and looks like a new wall (Phase 29 SESSION-19,
func_8012F14C) L5997 - §76 — The allocno CLASS (local vs global) is the dominant regalloc lever, and C reaches it ONLY through declaration scope and variable reuse (Phase 29 SESSION-19, behemoth #3
func_8017F5101,511 ins, 97 → MATCH, pin-free) L6028 - §79 — For a 0-callee giant, fingerprint by DATA symbols (§71 cannot fire); and the STACK-SLOT ORDER is a declaration-order oracle (Phase 29 SESSION-19,
func_8017BF144,763 ins, cold start → 45/4763) L6220 - §3-NEW — LEVER — the frame layout reads back the original declaration order L6240
- §3-1. — The inlined-helper signature L6375
- §92 — Conforming a DECLARATION: pointer changes are caller-neutral, scalar-WIDTH changes are not (Phase 29 SESSION-21,
tools/conform_decls.py) L6891 - §95 —
reconcile_tudropped the SIBLING declarators of a multi-symbolexternline (Phase 29 SESSION-21,func_80176218) L6983 - §96 — The same rewrite, one shape down:
reconcile_tumatched statements to lines by TEXT, so every COMMENTED declaration was silently skipped (Phase 29 SESSION-22,func_80176218banked) L7018 - §98 —
conform_declshad three defects, and only the third needed R22 to find (Phase 29 SESSION-22,func_8014CF04) L7113 - §99 — The narrow-param wall is a DEF-side problem with a ZERO-blast-radius fix: convert the definition to K&R (Phase 29 SESSION-22,
func_80175AB8+func_80175DA8) L7167 - §102 — A PLUMBING verdict can MASK a DIFF; and K&R is not always a codegen change (Phase 29 SESSION-22,
func_8016EC0C) L7272 - §103 — A FILE-scope
externin a shared overlay TU is a GLOBAL constraint on every LATER function; move the DECL, not the draft (Phase 29 T48/T51,func_80135260— the fleet-wide half) L7307 - §104 — Two silent-skip defects in one scan: match on MASKED text, emit from the ORIGINAL (Phase 29 T53,
gather_externs) L7395 - §112 — A macro-scoped declaration only collides where the macro is INSTANTIATED (Phase 29 T67/T69,
audit_header_sigs.py) L7730 - §113 — An ARITY blocker only exists if the macro CALLS the function; an address-taken use has no call site (Phase 29 T72) L7776
- §114 — The THIRD decl axis: a CALLEE the draft declares differently from the target TU (Phase 29 T76/T77) L7808
- §3-Do — NOT "strip the duplicate typedef" — it breaks the extern that uses it L8037
- §121 — Synthesise externs for macro-DEFINED callees from the macro's own definition head (Phase 29 T95) L8061
- §3-The — declaration surface (integration, not codegen) L8938
- §136f — Two declaration sub-cases the reconcile lane surfaced (lane now 15/15 lifetime) L9183
- §138 — The propagation lanes: a gate refusal is a DECLARATION, and which lever you owe depends on blast radius L9412
- Reconciling — a gate-refused draft: which way you edit depends on WHERE the TU's decl is L9562
- §141 — The §134 class is CLOSED: every line-shape decision now routes through
cdecl._mask(P30 S39) L9737 - §143 —
cast_call_sitesread a RETURN STATEMENT as a prototype and deleted it. A 0/39 sweep became 18/39. (P30 S40) L9831 - §3-C. — Inner-block declaration does NOT delay slot allocation — BYTE-REFUTED L10065
- §159 — THE DECLARATION AXIS: conform to byte-truth, and make every guard state its COVERAGE (P30 S47; ~10,930 sites across 8 axes, fleet byte-identical) L10825
- §168 — THE COUSIN TIER (P30 S49, 2026-08-12): h_seq's exact-hash brittleness, measured — and the similarity map above it L16208
jump tables & switches (27)
- §8 — rodata island (compiler jump tables) — the
.data→.rodata→.datasandwich (Phase 7) L320 - §8a — rodata island in a flat OVERLAY — the tail sandwich, per matched jr-function (Phase 26 — PoC PROVEN) L342
- §8a-pad — a trailing
.word 0x00000000under a jtbl dlabel is.alignPAD, not an entry (Phase 26 session 6, byte-proven) L380 - §8b — MULTI-jtbl per overlay — the
ld_interleave --ordersandwich + the same-subseg cases (Phase 26 session 4) L404 - §8e — The jtbl ALIGNMENT LAW + the pad-spec filter — multi-table .rodata spans (Phase 29, byte-proven;
.run/probe_jtbl/verdict.md) L530 - §3-The — clean object-level metric (use this, not the permuter score, for jtbl/rodata functions) L844
- §41b — T7 execution: the object-only probe OVER-counts BANKABLE by two link/rodata classes (Phase 25 T7-M1, 2026-07-10) L2809
- §48 — The 12-core jr crack wave: the ALLOCNO-PRICING dials and the EBB rule (Phase 26 session 8, Ultracode, 9/12 MATCH first pass) L3405
- §53 — SWEEP A FAMILY WITH THE TOOL ITS EXEMPLAR NEEDED: the jr/switch carve, and how omitting it manufactured the "families don't template" doctrine (Phase 28 T1, 2026-07-15) L4028
- §61b — The jtbl gate stage: built, and the ORDERING law it exposed (Phase 29 Task-14 stage 4, 2026-07-21) L4658
- §61c — The jtbl bank is INCREMENTALLY valid and CLEAN-INVALID (Phase 29, 2026-07-21) — the blocking finding L4713
- §62 — The jtbl RECONCILE must also follow the carve: the post-carve draft reconcile (
harvest_verify._jtbl_reconcile, Phase 29 SESSION-11, 2026-07-22) L4833 - §81 — Banking a jr (jump-table) function: the 3-step carve chain, and why
match_onecannot see the problem (Phase 29 SESSION-19,func_8017C954) L6323 - §88d — BANKING ORDER: run the §81 carve chain BEFORE banking, never after L6701
- §97 — The gate's own tree hygiene: a refused carve, an unchecked recovery, and a snapshot that captured a dirty tree (Phase 29 SESSION-22) L7066
- §105 — A gate's revert must survive an EXCEPTION, not just a failure (Phase 29 T53,
jtbl_family_bank) L7431 - §125 — Split the CARVE from the BODY before calling a jr residue a wall — and measure it by SHA from a CLEAN tree (P30 SESSION-28; this section's first draft was WRONG and the method caught it) L8206
- §126 — The carve-within-a-carve: an ADDRESS RANGE is not an OPTIMIZATION REGION (P30 T2, byte-proven end-to-end) L8264
- §129 — Post-carve,
rtu_match/match_oneCOUNT THE JUMP TABLE AS INSTRUCTIONS; and a carve must never be committed without its owner (P30 S28,func_8013BD74) L8437 - §129a — the target instruction count is INFLATED after a carve L8441
- §129b — never commit a carve whose owner is still a stub (it strands the carve) L8462
- §130 — An INCREMENTAL build can report BYTE-IDENTICAL for a change the CLEAN build cannot even LINK (P30 S28, the jr pair) L8486
- §131 — The jtbl OVER-SPAN:
sltiu Nis ground truth in BOTH directions, and the zero-word rule only guards one (P30 S28,func_80191C50) L8533 - §132 — The
JR-PAIR-IN-ONE-O0-OBJECT"wall" was TWO instrument defects: a merged-double span the carve could not see, and a truncated object no rule deleted (P30 S29,func_8013B83C+func_8013BD74) L8570 - §132b — When the span's already-matched owner is ITSELF multi-switch:
--span-rel(P30 S1,func_8014032C) L8660 - §139 — A GATE THAT GREPS FOR VERDICTS MUST ASSERT 1:1 ACCOUNTING; and a
--srcfilter must not survive a carve (P30 S38, wave 6: 10 of 16 drafts vanished) L9591 - §161 — THE RETRY-WAVE HARVEST: a jump table indexed from zero, and two allocator traps (P30 S47) L10966
optimisation level (-O0/-O2) (12)
- §6 — Per-module optimization mixing — the -O0 boot module (Phase 7) L246
- Detecting — the opt level (do this first) L254
- Build — mechanism — per-file opt override (splat resegmentation) L288
- §18 — Per-file
-O0split inside an overlay/blob (Phase 19 T1) L1519 - §38 — The WHALE
func_80144B9C(770 ins): the -O0 struct-assign memcpy idiom + the -O0 reach-134 ×134 rollout (Phase 24 T7 §G, cheap Opus — no Fable5, no calls.c) L2527 - §39 — The ×1→×134 giant-endgame: propagate a matched -O2 giant via the NATIVE DEFINE-macro path (Phase 24 T7 §G close, 2026-07-08) L2537
- §116 — Optimization level is a property of the FILE, not the function: read a family 0/N against the member's stub HOME (Phase 29 T79) L7877
- §3-The — finding: opt level is per FILE, so the file's contents must be opt-HOMOGENEOUS L8279
- §127 — The
-O0regime: the CONSTANT-OFFSET FOLD, and why-O0needs its own idiom set (P30 T3 wave, 15 targets) L8349 - §3-The — rest of the
-O0regime (write PLAIN C, and mean it) L8367 - §127a — §71 (sibling-first) is the strongest
-O0lever, and it beats the index L8377 - §132 — The
JR-PAIR-IN-ONE-O0-OBJECT"wall" was TWO instrument defects: a merged-double span the carve could not see, and a truncated object no rule deleted (P30 S29,func_8013B83C+func_8013BD74) L8570
family propagation & sweeps (84)
- §8d — Templating a body INTO a TU must not CHANGE its declaration environment — demote the carried data externs (Phase 26 session 8, byte-proven on
func_8015AE2C×133) L483 - §11 — Cross-binary dedup & code-sharing (Phase 11 — "one match unlocks many") L908
- §3-The — mechanism: game-code dedup is SOURCE-LEVEL, not an object swap (R-D1, the key lesson) L926
- §3-The — flat-blob overlay config (what the template encodes) L1071
- §3-THE — NON-4-ALIGNED-OVERLAY GOTCHA (≈75% of the fleet; fixed in the template + Makefile, automatic) L1079
- §14 — Propagate a matched function across the fleet —
tools/dedup_propagate.py(Phase 15) L1126 - §19 — Scaling the toolkit waves — the recovery PIPELINE + the propagation CAP (Phase 19 T3) L1597
- §24 — The
ov_SC01_077_a.csplit-file vein: split-aware propagation, but loose-typing-gated (Phase 21) L2085 - §25 — The "schedule" class is mostly COALESCING (pin-crackable), not scheduling; + the gate two-stage + h_exact over-counts ×134 (Phase 21, cont.6) L2132
- §3-h — _exact OVER-COUNTS ×134 — verify shareability before crediting a class's "reach-134" (R14) L2177
- Where — this leaves the reach-134 tail (cont.6 option-3, now CONFIRMED byte-backed) L2233
- §28 — Banking a "close=0 gate-rejected" giant: the canonical-extern recovery (Phase 22 T1, byte-proven on func_8015126C ×134) L2325
- §28c — The close=0 recovery is NOT fully exhausted (§26 corrected, R14); + the dedup_propagate registry-skip recovery (Phase 22 T2) L2352
- §28b — The struct-walled close=0 giant (§28 case #3) IS bankable: the engine_types.h type-lift (Phase 22 T2, byte-proven on func_80156B74 ×134) L2357
- §28d — The "macro-extern-injection" lever: freeing reach-134 inline matches dedup_propagate skips as "not self-contained" (Phase 23,
tools/inject_capped_externs.py) L2366 - §30 — Fable5Max cracks §20/§10 "unsteerable" from the gcc SOURCE: store-vs-load is a
/saliasing flag, the def-side wall has a macro escape, + the birthing-boost (Phase 23, byte-proven on giantfunc_8014EE14248 ins ×134) L2382 - §34 — The
func_80138ED0giant crack: gcc-2.7.2's 3-qty sort bug + the zero-byte asm allocation toolkit + the giv-init fence (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2454 - §38 — The WHALE
func_80144B9C(770 ins): the -O0 struct-assign memcpy idiom + the -O0 reach-134 ×134 rollout (Phase 24 T7 §G, cheap Opus — no Fable5, no calls.c) L2527 - §39 — The ×1→×134 giant-endgame: propagate a matched -O2 giant via the NATIVE DEFINE-macro path (Phase 24 T7 §G close, 2026-07-08) L2537
- §40 — Structural families: the MECHANICAL symbol-remap (crack one exemplar → remap the rest, ~0 tokens) (Phase 25 T3/T7, 2026-07-08) L2553
- §40a — The DECL-RECONCILE pass (type-lift so remapped drafts compile in the sibling TU) (Phase 25 T7.2, 2026-07-08) L2601
- §40b — The reloc-tracker blind spot: the indexed-global idiom that hid the "reach-1 tail" (Phase 26 Task 1, 2026-07-11, byte-verified V0/V1) L2634
- §40c — The h_seq per-sibling reconcile: templating a reconcile-class crack ×134 (Phase 26 Task 8, 2026-07-12, byte-proven) L2676
- §41c — T7-M2: the ×134 def-side-wall sweep via per-sibling RE-reconcile (Phase 25, 2026-07-10; 4,389 banks, ~0 agent tokens) L2839
- §42 — The F-band ≤28 regalloc crack wave: register-pin/DENSITY levers beat the permuter (Phase 25 T7 F-band, 2026-07-10; Ultracode 9-worker wave, 4/9 banked byte-identical, 266 swept ×134) L2900
- §42e — propagating a CRACK ×134: the def-finder bug + the byte-drift residual (the "remap-fail" misdiagnosis) L3121
- §43 — The K&R s16-param definition DISSOLVES the "narrow-param wall" for by-value register args (Phase 25 task A, Fable5 crack of the 369-ins giant
func_80166994×134, 2026-07-11) L3195 - §45 — The flagship
func_80133CD4crack (399 ins ×134): the merged-variable permutation-breaker + the 1-death local-alloc gate (Phase 25 task A giant escalation, Fable5 gdb-on-cc1, 2026-07-11) L3298 - §46 — The
func_80178D40crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3313 - §47 — The live-length SLIDER: splitting a global.c allocno-priority TIE with one zero-byte asm (Phase 26 session 8, Fable5 Max, byte-proven on
func_8017BEBC952 ins ×113) L3365 - §49 — The LUID DIAL: a zero-byte SCHEDULING dial (the sched.c analogue of §47) —
func_8017A4AC(536 ins ×134), Phase 26 session 8 L3527 - §52 — The WALKER-FAMILY skeleton: 6 regalloc-order levers + a deeply-characterized intrinsic wall (
func_80178004, 165 ins ×134; Phase 26, Fable5, 2026-07-15) L3913 - §3-The — 6 levers (the "walker-family skeleton" — apply to the 12 siblings; levers 1-5 retire ~half the residual) L3924
- §53 — SWEEP A FAMILY WITH THE TOOL ITS EXEMPLAR NEEDED: the jr/switch carve, and how omitting it manufactured the "families don't template" doctrine (Phase 28 T1, 2026-07-15) L4028
- §55c — Sizing the propagate: a TARGETED propagate is ~4 min/core, and "it's slow" was a BROKEN-TREE ARTIFACT L4141
- §54 —
--fix-def-sig: the member's CANONICAL DECLARATION is a build step too (tiny-IMM mega-pools, +4,801, Phase 29 T6, 2026-07-16) L4163 - §56 — Banking a hand-drafted GIANT into its exemplar TU: self-contained draft vs live-TU decls, 4 reconciliation tactics (
func_8013FAF8, 312 ins ×138, Phase 29 T4, 2026-07-17) L4187 - §56b — PROPAGATING an h_seq giant: the exemplar's externs MUST be fleet-canonical, not the draft's types L4232
- §57 — The SELF-decl normalize: the sibling's OWN caller declares the templated fn divergently (the third §17a-1 direction;
tools/normalize_self_decls.py, func_801670E4 ×137, Phase 29, 2026-07-18) L4256 - §57a — Two NSD corrections + the SURGICAL-ONLY law + the honest broad-sweep yield (Phase 29, 2026-07-18) L4303
- §59 — Three h_seq sweep-residual classes match_one/the-exemplar-bank don't reveal (Phase 29 crack-wave close, 2026-07-18) L4377
- §3-Two — corollaries worth remembering L4450
- §65a — The blast-radius taxonomy (makes §61's law structural instead of remembered) L5030
- §3-Giv — record order (the §70 family) L5760
- §75 — A propagation cap is usually a MINORITY-SPELLING SOURCE OVERLAY, not a wall: census the carried extern before believing the exclusion message (Phase 29 SESSION-19,
func_8014F3E8×4 → ×138) L5866 - §75a — The exclusion classes, enumerated with named causes (Phase 29 SESSION-19, the 134-binary
dedup_extendsweep) L5925 - §75b — A body's preamble can carry
#defines, not justexterns; extraction lifts only the externs (Phase 29 SESSION-19,func_80165CA0×3 → fleet) L5948 - §76 — The allocno CLASS (local vs global) is the dominant regalloc lever, and C reaches it ONLY through declaration scope and variable reuse (Phase 29 SESSION-19, behemoth #3
func_8017F5101,511 ins, 97 → MATCH, pin-free) L6028 - §77 — Every extraction tool carries a NARROW hard-coded preamble set; anything outside it silently caps the body's reach. Diff the preamble before you gate. (Phase 29 SESSION-19 — three variants in one session, two different tools) L6084
- §84 — The DERIVED-OFFSET remap bug: a hand-computed literal that encodes the DISTANCE between two per-overlay symbols, and why
match_oneis structurally blind to it (Phase 29 SESSION-20,func_8013D53C) L6472 - §86 — Pinned-exemplar templatability is a PER-FAMILY property, not a per-member rate; and the §42e pin guard is now over-conservative (Phase 29 SESSION-20) L6589
- §3-THE — LAW: all-or-nothing PER FAMILY L6600
- §3-Why — the two live families differ from the three dead ones — the open question L6627
- §3-The — cheap discriminator, before spending a sweep L6666
- §89b — the parallel gate farm existed; the family path could not reach it (
tools/sweep_parallel.py) L6745 - §91 — A structure-TRANSFER is only valid where the structure corresponds: the
--likerole trap (Phase 29 SESSION-21,func_8012AAAC×137) L6842 - §94 — A family sweep's
0/Nis a TYPE-CARRY failure until proven otherwise: lift the exemplar's local types, ALL of them, transitively (Phase 29 SESSION-21,func_8016B6BC0/137 → 137/137) L6947 - §105 — A gate's revert must survive an EXCEPTION, not just a failure (Phase 29 T53,
jtbl_family_bank) L7431 - §107 — A lever wired into ONE gate path is a lever most families cannot reach (Phase 29 T56,
func_801440900/136 → 136/136) L7513 - §108 — Diagnosing a family
0/N: the four causes, and the third opt-in lever (Phase 29 T59) L7551 - §111 — The distinct-code metric is not noisy: a family pays it only if its members are byte-VARIANT (Phase 29 T66) L7681
- §116 — Optimization level is a property of the FILE, not the function: read a family 0/N against the member's stub HOME (Phase 29 T79) L7877
- §123 — PROPAGATE A FAMILY WITH THE TOOL ITS TIER NEEDS:
dedup_propagateis h_exact-only; its refusals are statements about the TOOL (P30 wave 1, 2026-07-30) L8116 - §124 — A "not matched" verdict can mean the definition is there under a DIFFERENT C NAME: the asm-label alias blind spot (P30 SESSION-28,
func_8016191C×137) L8153 - §124a — a family sweep's
0 matched-exemplar familiesmay be a FILTER, not a wall L8198 - §134 — MULTI-LINE BLINDNESS: one root cause, four faces, in
family_remap's preamble scanner (P30 S6, 190 zero-crack families) L8711 - §136c — SIBLING-FIRST is a DERIVATION shortcut, not just a conflict fix (the fastest route in a family wave) L9066
- §138 — The propagation lanes: a gate refusal is a DECLARATION, and which lever you owe depends on blast radius L9412
- §142 — An open stub whose
h_exactclass is MATCHED elsewhere is FREE. Propagate the body; do not gate a draft. (P30 S39, +7,710 ins in two commands) L9775 - §143 —
cast_call_sitesread a RETURN STATEMENT as a prototype and deleted it. A 0/39 sweep became 18/39. (P30 S40) L9831 - Then — propagation returned 0/137 TWICE — both times a missing TYPE L9997
- §3-A. — The frame has THREE strata, and stratum 3 is unreachable from C L10038
- §3-E. — A
qty_compareTIE is not spelling-reachable — recognise it and stop L10080 - Consequence — for the family (a real scheduling decision) L10092
- §150 — A register ROTATION across symmetric blocks is VARIABLE-IDENTITY evidence, not an allocator tie (P30 S43,
func_8017C6F4, 947 ins ×4) L10309 - §151 — THE GHOST WEDGE: when a load-before-store transposition is unreachable by ANY statement order (P30 S43,
func_8017EF68, 969 ins) L10364 - When — to reach for it L10404
- §152 — BYTE SIZE is the family key that name- and h_seq-grouping both miss (P30 S43, the 0xECC family: 1 crack → 12 overlays → 11,364 ins) L10415
- §156 — an ORPHANED reconcile poisons the fleet:
dedup_propagate's kept edit (S45 p6/p7) L10637 - §160 — THE REACH-15 WAVE HARVEST: an align-1 block move, and the instrument that called it a wall (P30 S47) L10890
- §162 — S48 WAVE-1 HARVEST (P30, 2026-08-11): the reach-ordered sibling campaign's first 12 targets L11011
- §163z — THE UNVETTED REMAINDER (do not cite as law; each needs a dedupe pass) L11825
- §3-The — ADDRESS-CLASS TABLE: which load/store pairs even REACH the
/sclause (P30 S48 wave 4,func_80185B44, ov_SC03_014) L14339 - §168 — THE COUSIN TIER (P30 S49, 2026-08-12): h_seq's exact-hash brittleness, measured — and the similarity map above it L16208
integration / TU plumbing (39)
- §8c — Splitting a TU means rebuilding its DECLARATION ENVIRONMENT, not moving text (Phase 26 session 6) L437
- §8d — Templating a body INTO a TU must not CHANGE its declaration environment — demote the carried data externs (Phase 26 session 8, byte-proven on
func_8015AE2C×133) L483 - §9.3 — Make it the build: resegment + swap + resolve (
tools/psyq_integrate.py, libcd DONE) L685 - §9.4 — Integrating a SECOND library (libgs block 6 after libcd) — multi-library gotchas L712
- §9.5 — Integrating a WHOLE multi-block library in one call (full libgs — Phase 7 session G) L740
- §17a — The TOOLKIT at WAVE scale (Phase-18 Step-3b/Step-1 — measured) + the pipeline-integration gotchas L1445
- §3-THE — CAP: at this tail the match_one→gate gap is the LOOSE-TYPING CALL-GRAPH wall (not cheap plumbing) L1637
- Diagnostic — lesson: a failed in-TU build leaves a STALE
.oL1654 - §28d — The "macro-extern-injection" lever: freeing reach-134 inline matches dedup_propagate skips as "not self-contained" (Phase 23,
tools/inject_capped_externs.py) L2366 - §30a — §30 generalizes to the FULL near-miss backlog (via STANDARD Opus agents, not just Fable5) + 2 more steer levers + the mechanical-integration throughput unlock (Phase 23 (a)) L2394
- §40a — The DECL-RECONCILE pass (type-lift so remapped drafts compile in the sibling TU) (Phase 25 T7.2, 2026-07-08) L2601
- §42a — addendum — wave 2 (residuals + 29-100 band): iso-MATCH ≠ real-TU bank, the memcpy→struct-assign fix, +5 levers (2026-07-10b) L2953
- §42c — addendum — wave 3 (Max orchestrator + CORRECTED Ultracode fan-out, 2026-07-10c): the real-TU-faithful parallel harness (rtu_match) + 7/9 crack, ZERO iso-drift L3033
- §56 — Banking a hand-drafted GIANT into its exemplar TU: self-contained draft vs live-TU decls, 4 reconciliation tactics (
func_8013FAF8, 312 ins ×138, Phase 29 T4, 2026-07-17) L4187 - §61 — Task 14: the gate ladder's missing stage is the ARITY pre-pass, and it is TU-side not draft-side (Phase 29, 2026-07-21) L4545
- §61a — The Task-5 wave: 11/12 MATCH, 0 banked — three DISTINCT integration walls, each now named (Phase 29, 2026-07-21) L4606
- §63 — The fresh-138 DEF-SIDE blocker: fix the HEADER decl, not the draft (
fix_header_decl.py, Phase 29 SESSION-13, 2026-07-23) L4877 - §63 — UPDATE (Phase 29 SESSION-14) —
fix_header_decl's "SAFE" verdict is FLEET-BLIND; it MUST be R22-validated L5000 - §65 — The stranded-draft recovery: BLAST-RADIUS TIERS, and the per-overlay de-macroize that refutes §20's DEF-conflict wall (
tools/demacroize.py+tools/blocker_probe.py, Phase 29 SESSION-16, 2026-07-24) L5015 - §65b — The escape: de-macroize the instantiation, don't touch the shared header L5045
- §65f — The de-macroize lever's BOUNDARY, measured: byte-neutral 14 times of 15, and the 15th is why the gate exists L5118
- §65g — Where the cheap levers STOP: the local-type and in-TU-self-decl classes did not yield L5139
- §85 — The RETURN-axis fleet widen is ALL-OR-NOTHING: widening the shared header alone guarantees a conflict in the source overlay (Phase 29 SESSION-20,
func_8012CC88/func_8014D12C) L6539 - §95 —
reconcile_tudropped the SIBLING declarators of a multi-symbolexternline (Phase 29 SESSION-21,func_80176218) L6983 - §96 — The same rewrite, one shape down:
reconcile_tumatched statements to lines by TEXT, so every COMMENTED declaration was silently skipped (Phase 29 SESSION-22,func_80176218banked) L7018 - §3-Two —
reconcile_tubugs found underneath, one introduced while fixing the other L7190 - §100 — Prefer the DRAFT-LOCAL fix: a type only one function uses belongs in its BODY, not in a shared header (Phase 29 SESSION-22,
func_80175DA80/137 → 137/137) L7216 - §102 — A PLUMBING verdict can MASK a DIFF; and K&R is not always a codegen change (Phase 29 SESSION-22,
func_8016EC0C) L7272 - §103 — A FILE-scope
externin a shared overlay TU is a GLOBAL constraint on every LATER function; move the DECL, not the draft (Phase 29 T48/T51,func_80135260— the fleet-wide half) L7307 - §109 — Conforming a definition to a shared header: fix the NAMES, then check the RETURN precondition (Phase 29 T60) L7600
- §112 — A macro-scoped declaration only collides where the macro is INSTANTIATED (Phase 29 T67/T69,
audit_header_sigs.py) L7730 - §114 — The THIRD decl axis: a CALLEE the draft declares differently from the target TU (Phase 29 T76/T77) L7808
- §3-The — integration idioms (these decide whether a byte-correct draft BANKS) L8804
- §3-The — declaration surface (integration, not codegen) L8938
- Reconciling — a gate-refused draft: which way you edit depends on WHERE the TU's decl is L9562
- §3-The — same swallow, twice more, in the integration spine L9706
- §3-A. — Payload word0 is a global MODULE ID; code starts after the header L10524
- §162 — THE LICM PAIR: what makes an address a movable AT ALL, and why the preheader order is the body order (P30 S47,
ov_MAIN_012) L11140 - §166 — THE DESTINATION-TU ORACLE (P30 S48): the seven-attempt bug that was never codegen L14899
build graph, splat & the harness (109)
- §4 — Flag/toolchain gotchas L190
- Build — mechanism — per-file opt override (splat resegmentation) L288
- §8c — Splitting a TU means rebuilding its DECLARATION ENVIRONMENT, not moving text (Phase 26 session 6) L437
- §9 — Link real PsyQ library objects byte-exact (Phase 7 — GO proven) L613
- §9.1 — Generalised per-object linker —
tools/psyq_link.py(+psyq_link_lib.py), 18/18 libcd byte-exact L642 - §9.2 — Wire a library region into the build with NOLOAD — no data carving (
tools/psyq_link_region.py) L666 - §9.3 — Make it the build: resegment + swap + resolve (
tools/psyq_integrate.py, libcd DONE) L685 - §9.6 — Scaling library linking to the whole EXE (Phase 8 — 8 libs linked, 20%→50% byte-identical) L766
- §9.7 — Binary-agnostic toolchain refactor (Phase 9) — the reusable pattern for Gen2 L802
- §3-The — clean object-level metric (use this, not the permuter score, for jtbl/rodata functions) L844
- §3-The — mechanism: game-code dedup is SOURCE-LEVEL, not an object swap (R-D1, the key lesson) L926
- Per-binary — toolchain provenance (R24) L959
- §12 — Ultracode harvest — parallel-draft + byte-gate at scale (Phase 12, resident: 1.4%→71.7% in one session) L964
- One-command — onboarding —
tools/new_overlay.sh <SCxx> <FILE_nnn>L1062 - §3-THE — NON-4-ALIGNED-OVERLAY GOTCHA (≈75% of the fleet; fixed in the template + Makefile, automatic) L1079
- Fleet — build —
make build-all/make check-allL1120 - §14 — Propagate a matched function across the fleet —
tools/dedup_propagate.py(Phase 15) L1126 - §14b — Harvesting the UNMATCHED shared core — the match_one wall (Phase 15) L1192
- §14c — Callee-signature-aware harvest — breaking the extern-type-conflict wall (Phase 15, T6) L1213
- §17 — The compiler-quirk wall — the matching TOOLKIT (Phase 18; gcc-2.7.2 source + byte-gated) L1376
- §3-The — pipeline gotcha — match_one ≠ the gate;
sig_unifyis MANDATORY L1421 - §17a — The TOOLKIT at WAVE scale (Phase-18 Step-3b/Step-1 — measured) + the pipeline-integration gotchas L1445
- §19 — Scaling the toolkit waves — the recovery PIPELINE + the propagation CAP (Phase 19 T3) L1597
- §20 — The wave-at-scale GATE CAP + residual-class verdicts (Phase 20) L1632
- §3-THE — CAP: at this tail the match_one→gate gap is the LOOSE-TYPING CALL-GRAPH wall (not cheap plumbing) L1637
- Diagnostic — lesson: a failed in-TU build leaves a STALE
.oL1654 - Phase-20 — RESOLUTION —
tools/cast_call_sites.pyBUILT + the cap re-diagnosed (R14, byte-proven) L1701 - §24 — The
ov_SC01_077_a.csplit-file vein: split-aware propagation, but loose-typing-gated (Phase 21) L2085 - §25 — The "schedule" class is mostly COALESCING (pin-crackable), not scheduling; + the gate two-stage + h_exact over-counts ×134 (Phase 21, cont.6) L2132
- §3-The — gate two-stage — sig_unify is a FALLBACK, not unconditional (
gate_stage.py, §19 folded in) L2189 - §28 — Banking a "close=0 gate-rejected" giant: the canonical-extern recovery (Phase 22 T1, byte-proven on func_8015126C ×134) L2325
- §28c — The close=0 recovery is NOT fully exhausted (§26 corrected, R14); + the dedup_propagate registry-skip recovery (Phase 22 T2) L2352
- §28d — The "macro-extern-injection" lever: freeing reach-134 inline matches dedup_propagate skips as "not self-contained" (Phase 23,
tools/inject_capped_externs.py) L2366 - §29 — Reasoning-model (GLM5.2) DEF-side reconciliation idioms + the wall's hard limit (Phase 23 T10.7,
tools/glm_reconcile.py) L2374 - §33 — Automating the giant decl-reconcile:
tools/reconcile_decls.py(the DATA analog of §20'scast_call_sites) + a fleet-majority type oracle (Phase 24 T7b, byte-proven onfunc_80129CF8) L2434 - §34 — The
func_80138ED0giant crack: gcc-2.7.2's 3-qty sort bug + the zero-byte asm allocation toolkit + the giv-init fence (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2454 - §35 — The region-a sibling-giant harvest: difficulty ≠ $s-reg count (it's global-array hoisting) + the banking recipe + new loop idioms (Phase 24 T7, 5 parallel Opus-Max agents) L2471
- §37 — The T7 §G giant endgame: 6/8 cracked, meta-laws + transferable levers (Phase 24, 2026-07-07; FULL byte-verified detail + gcc-2.7.2 line cites in
docs/gcc-2.7.2-map/t7g-giant-harvest.md) L2506 - §39 — The ×1→×134 giant-endgame: propagate a matched -O2 giant via the NATIVE DEFINE-macro path (Phase 24 T7 §G close, 2026-07-08) L2537
- §41 — The DEF-SIDE canonical-sig wall: mechanically banking a drafted giant past
conflicting types(Phase 25 T5b batch-2, 2026-07-09;tools/canon_sig_reconcile.py, byte-proven onfunc_8013B274) L2710 - §41a — v3.1: the def-side wall was ~71% TOOL-shaped — the five measured defects + the laws that dissolve them (Phase 25 T6, Fable5, 2026-07-09) L2754
- §41b — T7 execution: the object-only probe OVER-counts BANKABLE by two link/rodata classes (Phase 25 T7-M1, 2026-07-10) L2809
- §41d —
void→s32is NOT always byte-neutral: gate the RAW draft FIRST (Phase 26 session 6, byte-proven) L2878 - §42b — addendum — wave 3 (Max, 2026-07-10c): THE STALE-OBJECT GATE TRAP + the read-global
&-cast drift + fix L2994 - §45 — The flagship
func_80133CD4crack (399 ins ×134): the merged-variable permutation-breaker + the 1-death local-alloc gate (Phase 25 task A giant escalation, Fable5 gdb-on-cc1, 2026-07-11) L3298 - §51 — TOOLING INTEGRITY: the silent skip, and how to hunt it L3630
- §51b — Why the byte-gate cannot save you L3652
- §51f — Checklist for any new corpus-scanning tool L3755
- §51g — When the thing you are scanning has a GRAMMAR, parse the grammar (
tools/cdecl.py) L3769 - §53 — SWEEP A FAMILY WITH THE TOOL ITS EXEMPLAR NEEDED: the jr/switch carve, and how omitting it manufactured the "families don't template" doctrine (Phase 28 T1, 2026-07-15) L4028
- §55 — Core-crack wave levers + the GATE-ORCHESTRATION law (Phase 29 T3, 13-agent ultracode wave, 2026-07-17) L4093
- §55b — THE GATE-ORCHESTRATION LAW (3 traps, ~3.5h lost; all recovered, 0 data lost) L4122
- §55c — Sizing the propagate: a TARGETED propagate is ~4 min/core, and "it's slow" was a BROKEN-TREE ARTIFACT L4141
- §54 —
--fix-def-sig: the member's CANONICAL DECLARATION is a build step too (tiny-IMM mega-pools, +4,801, Phase 29 T6, 2026-07-16) L4163 - §57 — The SELF-decl normalize: the sibling's OWN caller declares the templated fn divergently (the third §17a-1 direction;
tools/normalize_self_decls.py, func_801670E4 ×137, Phase 29, 2026-07-18) L4256 - §61 — Task 14: the gate ladder's missing stage is the ARITY pre-pass, and it is TU-side not draft-side (Phase 29, 2026-07-21) L4545
- §61b — The jtbl gate stage: built, and the ORDERING law it exposed (Phase 29 Task-14 stage 4, 2026-07-21) L4658
- §61d — The undo was eating the tree: two tools, one defect, invisible to the byte-gate (Phase 29, 2026-07-22) L4779
- §62 — The jtbl RECONCILE must also follow the carve: the post-carve draft reconcile (
harvest_verify._jtbl_reconcile, Phase 29 SESSION-11, 2026-07-22) L4833 - §65 — The stranded-draft recovery: BLAST-RADIUS TIERS, and the per-overlay de-macroize that refutes §20's DEF-conflict wall (
tools/demacroize.py+tools/blocker_probe.py, Phase 29 SESSION-16, 2026-07-24) L5015 - §65d — Existing-ladder baseline, measured (do this before building a recovery stage) L5091
- §65e — Two oracles, and the disagreement is the finding (R34 in practice) L5101
- §65f — The de-macroize lever's BOUNDARY, measured: byte-neutral 14 times of 15, and the 15th is why the gate exists L5118
- §66b — A metric parsed out of another tool's prose goes NULL silently when the label changes L5200
- §67a — Run the symbol-set guard BEFORE you pay for a gate (
tools/symcheck.py, Phase 29 SESSION-18) L5405 - §77 — Every extraction tool carries a NARROW hard-coded preamble set; anything outside it silently caps the body's reach. Diff the preamble before you gate. (Phase 29 SESSION-19 — three variants in one session, two different tools) L6084
- §3-The — CANDIDATE gate and the REAL gate need DIFFERENT preambles — keep the difference out of the bank L6124
- §79 — For a 0-callee giant, fingerprint by DATA symbols (§71 cannot fire); and the STACK-SLOT ORDER is a declaration-order oracle (Phase 29 SESSION-19,
func_8017BF144,763 ins, cold start → 45/4763) L6220 - §82 — Two source-shape oracles from behemoth #6: a duplicated
addiu $aN,$sp,Kacross ajalmeans the block was INLINED, and scalar-vs-aggregate decides WHEN a stack slot is allocated (Phase 29 SESSION-19,func_8017C7301,061 ins) L6370 - §3-2. — Scalar vs aggregate decides when the slot is allocated L6389
- §3-Why — it survived every candidate gate L6495
- §3-THE — FIX IS MECHANICAL — the tool already holds the answer L6510
- §87 —
match_oneCOMPILES but never LINKS, so an unresolvable data symbol reads as MATCH; and stored drafts go STALE against the tree (Phase 29 SESSION-20) L6633 - §88f — the missing rung: a RELOCATION gate between
match_oneand the binary L6718 - §89a — MEASURE the write set; do not assert its tier (
tools/blast_radius.py) L6732 - §89b — the parallel gate farm existed; the family path could not reach it (
tools/sweep_parallel.py) L6745 - §90 — Five tool-integrity laws from one session, each of which changed an answer (Phase 29 SESSION-21, 2026-07-27) L6766
- §90a — A comparison tool MUST share its reference oracle's index space, exactly L6772
- §92 — Conforming a DECLARATION: pointer changes are caller-neutral, scalar-WIDTH changes are not (Phase 29 SESSION-21,
tools/conform_decls.py) L6891 - §97 — The gate's own tree hygiene: a refused carve, an unchecked recovery, and a snapshot that captured a dirty tree (Phase 29 SESSION-22) L7066
- §105 — A gate's revert must survive an EXCEPTION, not just a failure (Phase 29 T53,
jtbl_family_bank) L7431 - §107 — A lever wired into ONE gate path is a lever most families cannot reach (Phase 29 T56,
func_801440900/136 → 136/136) L7513 - §3-Why — it survived so long: a MASKED oracle will MATCH a wrong symbol L7953
- §122 — GATE RAW BEFORE TRANSFORMING; the undo belongs to the WRITER, as a per-edit journal (P30 T0a, 2026-07-30) L8084
- §123 — PROPAGATE A FAMILY WITH THE TOOL ITS TIER NEEDS:
dedup_propagateis h_exact-only; its refusals are statements about the TOOL (P30 wave 1, 2026-07-30) L8116 - §126a — a bare
except: continuearound a coverage-asserting oracle re-creates the silent skip (P30 S28) L8317 - §130 — An INCREMENTAL build can report BYTE-IDENTICAL for a change the CLEAN build cannot even LINK (P30 S28, the jr pair) L8486
- §132 — The
JR-PAIR-IN-ONE-O0-OBJECT"wall" was TWO instrument defects: a merged-double span the carve could not see, and a truncated object no rule deleted (P30 S29,func_8013B83C+func_8013BD74) L8570 - §133 — The DEFAULT-FILTER class: three times in one session, a tool silently answered a narrower question than the one asked (P30 S1–S3) L8685
- §134 — MULTI-LINE BLINDNESS: one root cause, four faces, in
family_remap's preamble scanner (P30 S6, 190 zero-crack families) L8711 - §3-The — splitting/merging rules (each closed a residual, byte-gated) L8853
- §137a — A gate verdict has a TIMESTAMP; re-check it against the draft's mtime L9383
- §138 — The propagation lanes: a gate refusal is a DECLARATION, and which lever you owe depends on blast radius L9412
- §134 — again, in a second tool — and the waiter rule corrected L9523
- Reconciling — a gate-refused draft: which way you edit depends on WHERE the TU's decl is L9562
- §139 — A GATE THAT GREPS FOR VERDICTS MUST ASSERT 1:1 ACCOUNTING; and a
--srcfilter must not survive a carve (P30 S38, wave 6: 10 of 16 drafts vanished) L9591 - §140 — A METRIC IS NOT A MEASUREMENT UNTIL IT IS REPRODUCIBLE FROM THE COMMITTED TREE (P30 S1e: a phantom regression that gated the session's best lever) L9657
- §142 — An open stub whose
h_exactclass is MATCHED elsewhere is FREE. Propagate the body; do not gate a draft. (P30 S39, +7,710 ins in two commands) L9775 - §3-The — measurement (do this before any wave; it is ~20 lines and needs no builds) L9787
- §155b — check the TYPE your oracle returns before comparing against it (S45 p5) L10584
- §156 — an ORPHANED reconcile poisons the fleet:
dedup_propagate's kept edit (S45 p6/p7) L10637 - §158 — The RANGE-EXTENDER: a fourth zero-emission asm lever completes the allocno toolkit (P30 S46 tier-3,
func_8017CE58, 733 ins) L10709 - §160 — THE REACH-15 WAVE HARVEST: an align-1 block move, and the instrument that called it a wall (P30 S47) L10890
- §161 — THE RETRY-WAVE HARVEST: a jump table indexed from zero, and two allocator traps (P30 S47) L10966
- §162 — S48 WAVE-1 HARVEST (P30, 2026-08-11): the reach-ordered sibling campaign's first 12 targets L11011
- §163 — S48 WAVES 2-3 HARVEST (P30, 2026-08-11/12): the five that were byte-probed and are actionable L11757
- §165 — S48 WAVE-4 HARVEST (P30, 2026-08-12): banked the same day the wave landed L13686
- §166 — THE DESTINATION-TU ORACLE (P30 S48): the seven-attempt bug that was never codegen L14899
- §167 — S48 WAVE-5/6 HARVEST (P30, 2026-08-12): the saturation point L14955
process, measurement & doctrine (73)
- §8e — The jtbl ALIGNMENT LAW + the pad-spec filter — multi-table .rodata spans (Phase 29, byte-proven;
.run/probe_jtbl/verdict.md) L530 - §3-The — mechanism: game-code dedup is SOURCE-LEVEL, not an object swap (R-D1, the key lesson) L926
- Per-binary — toolchain provenance (R24) L959
- §17a — The TOOLKIT at WAVE scale (Phase-18 Step-3b/Step-1 — measured) + the pipeline-integration gotchas L1445
- Diagnostic — lesson: a failed in-TU build leaves a STALE
.oL1654 - Phase-20 — RESOLUTION —
tools/cast_call_sites.pyBUILT + the cap re-diagnosed (R14, byte-proven) L1701 - §23 — Giant
func_80153E00cracked (scalar-data CAST); BUT most giant drafts are STALE+INCOMPLETE, and a diag MUST remove artifacts (Phase 21 — byte-proven + a self-correction) L2032 - §3-h — _exact OVER-COUNTS ×134 — verify shareability before crediting a class's "reach-134" (R14) L2177
- §28c — The close=0 recovery is NOT fully exhausted (§26 corrected, R14); + the dedup_propagate registry-skip recovery (Phase 22 T2) L2352
- §31-triage — R17 applies to CODEGEN residuals, never to a compile ERROR (Phase 26 session 7, Drew asked) L2693
- §41a — v3.1: the def-side wall was ~71% TOOL-shaped — the five measured defects + the laws that dissolve them (Phase 25 T6, Fable5, 2026-07-09) L2754
- §41b — T7 execution: the object-only probe OVER-counts BANKABLE by two link/rodata classes (Phase 25 T7-M1, 2026-07-10) L2809
- §41b — addendum — M4 "reconcile_decls" tier is ALSO a probe over-count: 0/8 mechanical (Phase 25 T7-M4, 2026-07-10) L2858
- §53 — SWEEP A FAMILY WITH THE TOOL ITS EXEMPLAR NEEDED: the jr/switch carve, and how omitting it manufactured the "families don't template" doctrine (Phase 28 T1, 2026-07-15) L4028
- §3-The — meta-lesson (R35, and why this one is expensive) L4078
- §55 — Core-crack wave levers + the GATE-ORCHESTRATION law (Phase 29 T3, 13-agent ultracode wave, 2026-07-17) L4093
- §55b — THE GATE-ORCHESTRATION LAW (3 traps, ~3.5h lost; all recovered, 0 data lost) L4122
- §57a — Two NSD corrections + the SURGICAL-ONLY law + the honest broad-sweep yield (Phase 29, 2026-07-18) L4303
- §58 — match_one MATCH ≠ BANK: the four blind spots + the crack-wave reconcile-before-bank law (Phase 29 crack-wave, 2026-07-18) L4343
- §60 — Classify the residual, don't rank it: the deterministic residual→class classifier and what it measured about the backlog (Phase 29 Task-13A, 2026-07-21) L4407
- What — it measured — the whole open backlog, byte-grounded L4431
- §3-The — parallel-probe race this surfaced L4463
- §61b — The jtbl gate stage: built, and the ORDERING law it exposed (Phase 29 Task-14 stage 4, 2026-07-21) L4658
- §62 — The jtbl RECONCILE must also follow the carve: the post-carve draft reconcile (
harvest_verify._jtbl_reconcile, Phase 29 SESSION-11, 2026-07-22) L4833 - §63 — UPDATE (Phase 29 SESSION-14) —
fix_header_decl's "SAFE" verdict is FLEET-BLIND; it MUST be R22-validated L5000 - §65 — The stranded-draft recovery: BLAST-RADIUS TIERS, and the per-overlay de-macroize that refutes §20's DEF-conflict wall (
tools/demacroize.py+tools/blocker_probe.py, Phase 29 SESSION-16, 2026-07-24) L5015 - §65a — The blast-radius taxonomy (makes §61's law structural instead of remembered) L5030
- §65d — Existing-ladder baseline, measured (do this before building a recovery stage) L5091
- §65e — Two oracles, and the disagreement is the finding (R34 in practice) L5101
- §65f — The de-macroize lever's BOUNDARY, measured: byte-neutral 14 times of 15, and the 15th is why the gate exists L5118
- §66c — Before a wave, verify the FUEL exists; an "already attempted" set built from the wrong directory lies in BOTH directions L5217
- §66d-5 —
residual_class's "structural ⇒ permuter CPU is waste" is WRONG for schedule permutations (measured, Phase 29 SESSION-18) L5491 - §3-The — honest fix was source-level and cheap L5750
- §3-The — residual, and the honest read L6260
- §83 — The parameterised-repeat law, the spill-area trap, and why a per-case edit cannot move a per-case symptom (Phase 29 SESSION-20,
func_801838145,122 ins, cold-ish start → 36 structural / 99.3%) L6412 - Scope — , measured (do not over-generalise — §80) L6518
- §3-Two — ladder lessons banked with it L6528
- §3-Do — the WHOLE axis in one edit, then R22 once L6567
- §3-THE — LAW: all-or-nothing PER FAMILY L6600
- §88b — the
sltiliteral-position law (extends §78 to comparisons) L6686 - §88e — a wrong diagnosis, refuted properly (the model for how to treat an inherited lever) L6708
- §89a — MEASURE the write set; do not assert its tier (
tools/blast_radius.py) L6732 - §90d — Do not measure a live wave's drafts (§87 in real time) L6810
- §98 —
conform_declshad three defects, and only the third needed R22 to find (Phase 29 SESSION-22,func_8014CF04) L7113 - §106 — Persist the MEASUREMENT, derive the POLICY: a stored route let a stale file out-vote the live table (Phase 29 T54,
residual_class._ROUTE) L7470 - §125 — Split the CARVE from the BODY before calling a jr residue a wall — and measure it by SHA from a CLEAN tree (P30 SESSION-28; this section's first draft was WRONG and the method caught it) L8206
- §3-The — meta-lesson L8257
- Wave — economics (measured, for the next batch's sizing) L8950
- §136b — A prior wave's "genuine byte-DIFF" verdict is NOT reliable evidence (4 of 4 refuted) L9030
- §136g — When the index points at the WRONG lever: two byte-refuted routings (func_801863B4) L9208
- §136h — CORRECTION: the zero-crack pool does NOT "refill with cheap work" (my error, byte-measured) L9237
- §136j — The failure MIX flips with function size (measured across four bands, one session) L9299
- Rank — the lane by measured concentration, not by class count L9478
- §140 — A METRIC IS NOT A MEASUREMENT UNTIL IT IS REPRODUCIBLE FROM THE COMMITTED TREE (P30 S1e: a phantom regression that gated the session's best lever) L9657
- §3-The — measurement (do this before any wave; it is ~20 lines and needs no builds) L9787
- §3-And — the report-vs-bytes lesson attached to it L9819
- §146 — RE-MEASURE A WALL BEFORE YOU RESPECT IT. Both "permanent" giants fell to drafts already on disk. (P30 S6, +50,094 ins) L9974
- §147 — The three-stratum FRAME LAW, and four "stop searching" verdicts (P30 S42,
func_8017C294, serial run) L10033 - §3-C. — Inner-block declaration does NOT delay slot allocation — BYTE-REFUTED L10065
- §3-D. — "Cheap fuel" that was never probed: 0 of 31 templatable L10290
- §3-Two — corrections to the record L10342
- §3-The — two fallouts, and how to close them (both measured, in order) L10392
- What — does NOT work (14 byte-measured probes) L10483
- §157 — the cheap-tier size cliff, measured (S45 p6) L10684
- §162 — The cross-jump "CALL veto" is a COUNT law, not a CALL law (BOUNDS §88a; P30 S48,
func_80189540) L11299 - §3-The — law L11546
- DIAGNOSTIC — TELL — two faces, one law L11588
- §163 — S48 WAVES 2-3 HARVEST (P30, 2026-08-11/12): the five that were byte-probed and are actionable L11757
- §163z — THE UNVETTED REMAINDER (do not cite as law; each needs a dedupe pass) L11825
- §164z — REFUTED CLAIMS: do NOT re-derive these L13620
- §165z — REFUTED THIS WAVE: do NOT re-derive L14855
- §167z — REFUTED IN WAVES 5/6: do NOT re-derive L16151
- §168 — THE COUSIN TIER (P30 S49, 2026-08-12): h_seq's exact-hash brittleness, measured — and the similarity map above it L16208
(unbucketed — title matched no symptom vocabulary) (169)
- §3-How — to use this L30
- §1 — Idiom catalog (asm pattern → C that produces it) L39
- §3-I3 — Division by a constant → magic multiply L54
- §3-I4 — Runtime (variable) division →
divu+ zero-checkbreak(NEEDS--expand-div) L60 - §2 — Writing matching C (what makes gcc emit X) L69
- §3a — Escalation TIER above the permuter — web-research the compiler internals (HIGH VALUE, proven) L128
- §3b — §31-directed permuter mutation — bias the search over the class's levers (Phase 24 T5) L147
- Residual — B — a
return <const>materialised late / merged instead of distributed per-site L867 - §3-The — A→B→C per-overlay workflow L1091
- Dedup-credit — (§11) for overlays — two shapes L1108
- §14a — The fleet bulk run (Phase 15 —
--auto-from, 947 REAL → 74,527; 3.82% → 22.14% in one pass) L1169 - §14d — Deterministic recovery beats agent waves on the hard tail (Phase 15, the final-session finding) L1269
- §14e — Two hard-tail dead-ends (Phase 15 — documented so they aren't re-attempted) L1298
- §3-The — STEERABLE idioms (byte-confirmed this phase) L1404
- Strategic — conclusion — the match-% lever post-research L1435
- §3-NEW — / CONFIRMED residual classes (this session) L1660
- Operational — gotchas (cost real time) L1681
- What — WORKED — the Phase-20 reusable wins L1689
- §21 — wave-distilled idioms (Phase 21) L1752
- §26 — The cheap close=0 recovery lever is EXHAUSTED;
idiom_loop --assesswas DOUBLY inflated (Phase 21, cont.7) L2199 - §3-The —
_aclose=0 recovery banks 0/20 — same def-side wall as MAIN (0/40) L2205 - §27 — Giant matching recipe (Phase 21 cont.7b — validated on func_80176D94, 152 ins) L2259
- §28a — decomp.wiki GCC patterns worth trying on BFM giants (decomp.wiki/compilers/GCC, raw at decompals/decompedia; PS1-applicable subset) L2345
- §31 — THE gcc-2.7.2 CODEGEN MAP: pass → residual → C-lever catalog (Phase 23; 4 Fable5 agents read the compiler source) L2402
- §36 — Fable5 giant-crack levers (Phase 24 T7 Fable5 batch; accumulates as each lands — full RTL dumps in
.run/t7/fable/) L2487 - §42d — addendum — wave 4 (rtu_match fan-out over the mapped frontier, 2026-07-10c): 24/26 MATCH, +5 durable levers L3082
- §3-B. — THE EBB RULE — the general form of §46-L2 L3468
- §3-E. — Meta L3518
- §50 — Refinements that BOUND §47/§48 (from the
func_80135EB0wall, 21→6; Phase 26 session 8) L3576 - §51a — The bug class L3636
- §51c — THE METHOD (do not audit by reading the regex) L3662
- §51d — THE LAWS L3677
- §51e — The false-wall pipeline (why this is not just hygiene) L3739
- §3-Why — the wall is (probably) intrinsic L3945
- §3-The — case L4033
- §3-The — rule L4062
- §55a — New byte-proven levers (each from a banked or near draft) L4098
- §60a — What the first DIRECTED grinder run exposed (Phase 29 Task-13B, 2026-07-21) L4472
- §60b — The plateau autopsy's verdict: a
partialdrift is a WRONG DRAFT, not a missing transform (Phase 29 Task-13B close, 2026-07-21) L4510 - §66 — Exercise a banking driver's SUCCESS path before pointing it at a wave: the free re-bank test (Phase 29 SESSION-17, 2026-07-24) L5159
- §66d-2 — Two operational sharp edges L5289
- §66d-3 — Read the ILS per-cycle SERIES, not its final best: a repeated score and a still-falling one look identical in a summary line and mean opposite things L5300
- §67 — The arg-copy PLACEMENT lever: launder a parameter into a fresh pseudo AT the statement where the target's copy lands (Phase 29 SESSION-18,
func_8014D82025 → 16) L5315 - §66d-4 — "ILS converged" means converged FOR THAT WEIGHT PROFILE, not a floor (amends §66d-3; Phase 29 SESSION-18) L5438
- §69 — How to attack a behemoth: map it, don't draft it (Phase 29 SESSION-18,
func_80183814, 5,122 ins) L5569 - What — is left, and what is byte-recorded as SPENT L5766
- §3-The — mechanism, with citations L6037
- §3-Two — diagnosis traps this function proved L6064
- Practice — Practice L6074
- §3-The — drift was an allocation decision, not missing code L6180
- §3-The — economics L6211
- §71 — has a blind spot, and this is it L6226
- §3-The — flagged "#1 move" LOST — and why the failure is informative L6302
- §78 — 's attribution primitive, run and reproduced L6312
- Cold-start — economics, now complete L6318
- Also — reproduced on this function L6401
- §3-And — the banking footnote (§75a class A, one line) L6405
- §83a — READ THE HEADLINE NUMBER CORRECTLY: a LENGTH drift makes
match_one's count meaningless L6419 - §83b — THE LEVER: find the parameterised REPEAT before decoding case-by-case L6427
- §83e — §80 vindicated again, on the same day it was written L6466
- §3-The — conflict L6544
- §3-THE — FAILURE MODE — widening only
engine_core.his worse than not starting L6552 - §3-The — precondition, and how to check it in one grep L6559
- Reading — , for the next person L6576
- §3-The — guard refuses a class that largely works L6591
- §3-The — blindness ladder, now complete — FOUR classes
match_onecannot see L6649 - Consequence — for the backlog ledger L6659
- §88 —
cross_jumpwill not merge a common suffix containing a CALL; and §78 is scoped to ORDERED comparisons only (Phase 29 SESSION-20, the behemoth close-out) L6674 - §88a — repeated CALL-shaped blocks are left UNMERGED; call-free tails are merged for you L6679
- §89 — Two throughput rules the project already had written down and was not following (Phase 29 SESSION-20) L6726
- §3-The — standing sequence L6758
- §90b — "Byte-neutral" is not "wanted": undo on the SUCCESS path too L6789
- §90c — A library-callable function must FAIL CLOSED on an unconfigured module L6799
- §90e — An agent's CONCLUSION and its EVIDENCE fail independently — re-derive the premise, not the fix L6818
- §93 —
set -o pipefailattributes a pipeline failure to the LAST stage, not the failing one (Phase 29 SESSION-21,func_8014D820) L6922 - §101 — The STALE DEFAULT class: a guard whose cause was removed is a silent skip wearing a safety label (Phase 29 SESSION-22, three instances in one session) L7245
- §110 — A unit must define exactly ONE function, and "ends in
;" does not tell you which line defines it (Phase 29 T65) L7640 - §115 — A
func_XXXXXXXXpredicate rots by design: the same name-form assumption in THREE places (Phase 29 T78) L7850 - §3-The — fix moves the DEFINITION, not the stub — and here is why the obvious shortcut fails L7895
- §117 — Spell the sibling's symbol from the SIBLING's address, not the exemplar's kind (Phase 29 T82) L7926
- §118 — Ordinal (positional) immediate resolution: compare C tokens to the DIFFERING asm uses (Phase 29 T87) L7963
- §119 — Two levers on the SAME axis, opposite directions: test the off-diagonal (Phase 29 T89) L7997
- §3-The — wiring trap that cost two attempts L8043
- §3-The — method (keep this) L8213
- §3-The — instrument rules that make its answer trustworthy (this is where I failed) L8223
- §3-The — corrected results (each SHA-verified, from a clean tree, restore re-verified) L8238
- §3-The — instrument trap that hid it (and it is §124's shape again) L8290
- §3-The — mechanics L8299
- §3-The — idiom they kept re-deriving: the constant-offset fold L8356
- §127b — the knowledge was in a SOURCE COMMENT, not the cookbook L8386
- §128 — A raw NUL in C source makes grep SILENTLY SKIP the file (P30 S28, 137 files) L8393
- §128a — a negative control must corrupt a SCRATCH COPY, never the tracked file L8425
- §3-The — real blocker underneath, for the record L8477
- §3-The — diagnostic ladder that finally located it (reusable) L8523
- Defect — 1 — a pre-§8e MERGED DOUBLE is not a single-table predecessor L8579
- Defect — 2 —
aswrites a corpse and nothing deletes it L8597 - §3-The — fingerprint, and the 30-second ladder that found it L8607
- §3-The — transferable rule L8628
- §132a —
--likeis for a sibling with NO record; against one that HAS a record it over-derives (P30 S29,ov_SC07_010) L8635 - §135 — Six byte-verified gcc-2.7.2 idioms from the P30 S6f-h waves (and the two-lane wave shape that found them) L8765
- §3-The — codegen idioms L8770
- §3-The — wave shape that produced these L8819
- §136 — The LOCAL-VARIABLE lever: how many C locals, at what scope (P30 wave 4a, 25 byte-verified banks) L8837
- §136a — Blocker capture: classify on the OUTPUT, never on the exit status L8973
- §136d — Four gcc-2.7.2 levers the redraft lane found (each closed a residual no other lever moved) L9091
- §136e — §136c's PRECONDITION, and two more symptom keys (wave 4b batch 3) L9135
- §136i — The drafter model LADDER: Haiku → Sonnet → Opus → Fable5 (Drew, 2026-08-03) L9267
- §3-The — triage, cheapest first L9418
- THREE — carry variants hide in one "CARRY-FIXABLE" bucket — and they need different fixes L9487
- STEP — 0 of sibling-first: grep
src/for a distinctive LITERAL from the.sL9543 - §3-The — generalisation — three corollaries worth more than the bug L9623
- §3-And — the inverse-lookup trap, same session L9640
- §3-The — three-line proof (do this before diagnosing any metric movement) L9677
- §3-The — two instrument defects it exposed L9686
- §3-Two — wrong mechanisms I chased first, and why they were wrong L9717
- §3-The — trap that hid it — SAME FUNCTION, TWO ROUTES, ONLY ONE IS FREE L9802
- Route — selection (why
--addrsometimes says "nothing changed") L9811 - §144 — THE LITERAL'S SPELLING PICKS THE IMMEDIATE ENCODING (P30 S40 wave 1,
func_801822E0) L9885 - §3-Why — a correct draft can read as an intrinsic wall L9985
- §3-The — rule L10020
- §3-B. —
(v < 0x40) ? v : 0x3Fis folded toMIN_EXPRand expands to the WRONG SHAPE L10167 - §3-D. — Reproduce the original's BUGS verbatim L10191
- §149 — Four instrument defects in one session, and the two questions they were hiding (P30 S43) L10240
- §3-A. — A prep step that returns its input on failure is indistinguishable from a search that found nothing L10246
- §3-B. — Same address + same name ≠ same body — and the ledger keys on address L10264
- §3-C. —
make: *** [...] Error Nis a summary, never a diagnosis L10280 - §3-The — fix L10316
- §3-The — method that found it (this is the transferable part) L10326
- Diagnostic — order (adopt this) L10353
- §3-The — mechanism (read from cc1's own
-dRtrace, not inferred) L10369 - §3-The — lever — a zero-emission insn that absorbs the blocked tick L10384
- §3-The — finding L10420
- §3-The — key L10429
- §3-Two — cautions that must travel with this technique L10440
- §3-The — companion defect (open) L10451
- Symptom — Symptom L10471
- Mechanism — (gcc source + RTL dumps, not inferred) L10476
- §3-The — cure — a fresh launder per site, each in its own block L10489
- Companion — levers from the same function L10499
- §3-B. — Two static base-derivation methods that must AGREE (use both) L10533
- §155a — the same failure class, one level up: SHAPE-blind table scanning (S45 p5) L10564
- §155c — the ZERO-REFERENCE trap: gcc splits a global-array address across the
luiand the LOAD (S46) L10607 - Symptom — Symptom L10718
- §3-Why — the fork is chained (gcc source, validated insn-by-insn against -dS/-dR dumps) L10724
- §3-The — method (dump-arithmetic first, then place — no probing) L10737
- §162a — SHARPENS (sharpens §161a, §131, §8a-pad, §129a) L11038
- §162b — SHARPENS (sharpens §48-A3, §156, §150, §76) L11067
- §162d — SHARPENS (sharpens §31, §21, §30, §55a) L11096
- §162e — NEW L11138
- §162f — SHARPENS (sharpens §42d, §41d, §73, §10) L11206
- §162g — NEW L11261
- §162h — SHARPENS (sharpens §88, §88a, §50-B, §8) L11297
- §162i — SHARPENS (sharpens §135, §21, §42, §32) L11365
- §162j — SHARPENS (sharpens §25, §136d-1, §48-B, §46-L2) L11390
- §162k — SHARPENS (sharpens §1-I2, §12, §160d, §21) L11419
- §162l — SHARPENS (sharpens §48-B, §48-C1, §20, §21) L11482
- §162m — SHARPENS (sharpens §36, §158, §148, §153) L11537
- §158a — THE FIFTH LEVER IS NOT AN ASM:
do { } while (0)is a REGION ref-multiplier you MINT (P30 S48,func_8017CBC8, ov_MAIN_012 / jr_801789AC, 188 ins → MATCH) L11539 - Size — it before you write it (§158 step 1-2, applied) L11557
- §3-The — wrap BOUNDARY is the dial — and it is indiscriminate L11578
- §3-Not — a pure dial L11584
- §162n — NEW L11610
- §162o — SHARPENS (sharpens §158, §136-1, §136-6, §79) L11643
- §162p — SHARPENS (sharpens §48-B, §46-L2, §156, §136d-1) L11702
- §162q — SHARPENS (sharpens §30, §30a, §135-2, §136-13) L11719
- §164 — S48 §163z SKEPTIC PASS (P30, 2026-08-12): 190 claims vetted, 82 banked L11845
- §169 — THE MICRO-ADAPT LANE (P30 S49): edit a proven body, don't crack a new one L16260
- §170 — THE A-PROP WORD-DIFF CARD (P30 S49): the lane that had no owner L16307
- §171 — THE STALE SEED SYMBOL (P30 S50, 2026-08-13): why §170's 91%→57% was never codegen L16351
All sections, in order
- §3-How — to use this L30
- §1 — Idiom catalog (asm pattern → C that produces it) L39
- §3-I1 — Unsigned range check:
(x - lo) < (hi-lo)→addiu+sltiuL41 - §3-I2 — Byte mask forces
andieven afterlbuL47 - §3-I3 — Division by a constant → magic multiply L54
- §3-I4 — Runtime (variable) division →
divu+ zero-checkbreak(NEEDS--expand-div) L60 - §2 — Writing matching C (what makes gcc emit X) L69
- §3-T1 — Loop pointer: top-of-body for
adduinduction, not constant-foldedaddiuL71 - §3-T2 — Source statement order drives instruction scheduling L78
- §3-T3 — Types L85
- §3-T4 — Branch polarity: invert the source condition to flip gcc's chosen branch L90
- §3 — When a diff is pure scheduling → decomp-permuter (harness built, Phase 6) L107
- §3a — Escalation TIER above the permuter — web-research the compiler internals (HIGH VALUE, proven) L128
- §3b — §31-directed permuter mutation — bias the search over the class's levers (Phase 24 T5) L147
- §4 — Flag/toolchain gotchas L190
- §5 — Known hard-residual classes (instruction-identical, one byte-exact blocker) L199
- §5a — Cross-jump tail-merge — gcc collapses two byte-identical blocks the original kept separate (FIX FOUND) L211
- §6 — Per-module optimization mixing — the -O0 boot module (Phase 7) L246
- Detecting — the opt level (do this first) L254
- Build — mechanism — per-file opt override (splat resegmentation) L288
- §7 — PsyQ SDK types & symbols (the library-call prerequisite) L303
- §8 — rodata island (compiler jump tables) — the
.data→.rodata→.datasandwich (Phase 7) L320 - §8a — rodata island in a flat OVERLAY — the tail sandwich, per matched jr-function (Phase 26 — PoC PROVEN) L342
- §8a-pad — a trailing
.word 0x00000000under a jtbl dlabel is.alignPAD, not an entry (Phase 26 session 6, byte-proven) L380 - §8b — MULTI-jtbl per overlay — the
ld_interleave --ordersandwich + the same-subseg cases (Phase 26 session 4) L404 - §8c — Splitting a TU means rebuilding its DECLARATION ENVIRONMENT, not moving text (Phase 26 session 6) L437
- §8d — Templating a body INTO a TU must not CHANGE its declaration environment — demote the carried data externs (Phase 26 session 8, byte-proven on
func_8015AE2C×133) L483 - §8e — The jtbl ALIGNMENT LAW + the pad-spec filter — multi-table .rodata spans (Phase 29, byte-proven;
.run/probe_jtbl/verdict.md) L530 - §9 — Link real PsyQ library objects byte-exact (Phase 7 — GO proven) L613
- §9.1 — Generalised per-object linker —
tools/psyq_link.py(+psyq_link_lib.py), 18/18 libcd byte-exact L642 - §9.2 — Wire a library region into the build with NOLOAD — no data carving (
tools/psyq_link_region.py) L666 - §9.3 — Make it the build: resegment + swap + resolve (
tools/psyq_integrate.py, libcd DONE) L685 - §9.4 — Integrating a SECOND library (libgs block 6 after libcd) — multi-library gotchas L712
- §9.5 — Integrating a WHOLE multi-block library in one call (full libgs — Phase 7 session G) L740
- §9.6 — Scaling library linking to the whole EXE (Phase 8 — 8 libs linked, 20%→50% byte-identical) L766
- §9.7 — Binary-agnostic toolchain refactor (Phase 9) — the reusable pattern for Gen2 L802
- §10 — Closing the regalloc/scheduling hard tail by hand (LZSS, Phase 7 session F — the full close) L835
- §3-The — clean object-level metric (use this, not the permuter score, for jtbl/rodata functions) L844
- Residual — A — commutative
|/&/+result lands in the wrong source-operand register L856 - Residual — B — a
return <const>materialised late / merged instead of distributed per-site L867 - §11 — Cross-binary dedup & code-sharing (Phase 11 — "one match unlocks many") L908
- §3-The — mechanism: game-code dedup is SOURCE-LEVEL, not an object swap (R-D1, the key lesson) L926
- Per-binary — toolchain provenance (R24) L959
- §12 — Ultracode harvest — parallel-draft + byte-gate at scale (Phase 12, resident: 1.4%→71.7% in one session) L964
- §13 — Add a location overlay — the canonical runbook (Phase 13; the Phase-15 fleet recipe) L1056
- One-command — onboarding —
tools/new_overlay.sh <SCxx> <FILE_nnn>L1062 - §3-The — flat-blob overlay config (what the template encodes) L1071
- §3-THE — NON-4-ALIGNED-OVERLAY GOTCHA (≈75% of the fleet; fixed in the template + Makefile, automatic) L1079
- §3-The — A→B→C per-overlay workflow L1091
- Dedup-credit — (§11) for overlays — two shapes L1108
- Fleet — build —
make build-all/make check-allL1120 - §14 — Propagate a matched function across the fleet —
tools/dedup_propagate.py(Phase 15) L1126 - §14a — The fleet bulk run (Phase 15 —
--auto-from, 947 REAL → 74,527; 3.82% → 22.14% in one pass) L1169 - §14b — Harvesting the UNMATCHED shared core — the match_one wall (Phase 15) L1192
- §14c — Callee-signature-aware harvest — breaking the extern-type-conflict wall (Phase 15, T6) L1213
- §14d — Deterministic recovery beats agent waves on the hard tail (Phase 15, the final-session finding) L1269
- §14e — Two hard-tail dead-ends (Phase 15 — documented so they aren't re-attempted) L1298
- §15 — Struct-heavy shared-core pipeline (Phase 16) — empirical determinations (S0) L1313
- §16 — Guided hand-matching the struct-heavy core (Phase 17 — beats the §15 brute-force) L1335
- §17 — The compiler-quirk wall — the matching TOOLKIT (Phase 18; gcc-2.7.2 source + byte-gated) L1376
- Register-allocation — ORDER (call-crossing $s0/$s1 swap) → FORCE it with register pins (byte-proven) L1384
- §3-The — STEERABLE idioms (byte-confirmed this phase) L1404
- §3-The — pipeline gotcha — match_one ≠ the gate;
sig_unifyis MANDATORY L1421 - §3-The — LOOSE-TYPING wall is real for narrow params (Phase 16, reconfirmed) L1428
- Strategic — conclusion — the match-% lever post-research L1435
- §17a — The TOOLKIT at WAVE scale (Phase-18 Step-3b/Step-1 — measured) + the pipeline-integration gotchas L1445
- §18 — Per-file
-O0split inside an overlay/blob (Phase 19 T1) L1519 - §19 — Scaling the toolkit waves — the recovery PIPELINE + the propagation CAP (Phase 19 T3) L1597
- §20 — The wave-at-scale GATE CAP + residual-class verdicts (Phase 20) L1632
- §3-THE — CAP: at this tail the match_one→gate gap is the LOOSE-TYPING CALL-GRAPH wall (not cheap plumbing) L1637
- Diagnostic — lesson: a failed in-TU build leaves a STALE
.oL1654 - §3-NEW — / CONFIRMED residual classes (this session) L1660
- Operational — gotchas (cost real time) L1681
- What — WORKED — the Phase-20 reusable wins L1689
- Phase-20 — RESOLUTION —
tools/cast_call_sites.pyBUILT + the cap re-diagnosed (R14, byte-proven) L1701 - §21 — wave-distilled idioms (Phase 21) L1752
- §22 — DEF-side loose-typing recovery + grinder blacklist (Phase 21) L2005
- §23 — Giant
func_80153E00cracked (scalar-data CAST); BUT most giant drafts are STALE+INCOMPLETE, and a diag MUST remove artifacts (Phase 21 — byte-proven + a self-correction) L2032 - §24 — The
ov_SC01_077_a.csplit-file vein: split-aware propagation, but loose-typing-gated (Phase 21) L2085 - §25 — The "schedule" class is mostly COALESCING (pin-crackable), not scheduling; + the gate two-stage + h_exact over-counts ×134 (Phase 21, cont.6) L2132
- §3-The — crack: the residual was gcc-2.7.2 COPY-COALESCING, not the instruction scheduler L2144
- §3-The — genuine scheduler —
rank_for_schedule(sched.c), for when it IS scheduling L2160 - §3-The — genuine schedule WALLS (do NOT re-grind — stub) L2169
- §3-h — _exact OVER-COUNTS ×134 — verify shareability before crediting a class's "reach-134" (R14) L2177
- §3-The — gate two-stage — sig_unify is a FALLBACK, not unconditional (
gate_stage.py, §19 folded in) L2189 - §26 — The cheap close=0 recovery lever is EXHAUSTED;
idiom_loop --assesswas DOUBLY inflated (Phase 21, cont.7) L2199 - §3-The —
_aclose=0 recovery banks 0/20 — same def-side wall as MAIN (0/40) L2205 - Where — this leaves the reach-134 tail (cont.6 option-3, now CONFIRMED byte-backed) L2233
- §27 — Giant matching recipe (Phase 21 cont.7b — validated on func_80176D94, 152 ins) L2259
- §28 — Banking a "close=0 gate-rejected" giant: the canonical-extern recovery (Phase 22 T1, byte-proven on func_8015126C ×134) L2325
- §28a — decomp.wiki GCC patterns worth trying on BFM giants (decomp.wiki/compilers/GCC, raw at decompals/decompedia; PS1-applicable subset) L2345
- §28c — The close=0 recovery is NOT fully exhausted (§26 corrected, R14); + the dedup_propagate registry-skip recovery (Phase 22 T2) L2352
- §28b — The struct-walled close=0 giant (§28 case #3) IS bankable: the engine_types.h type-lift (Phase 22 T2, byte-proven on func_80156B74 ×134) L2357
- §28d — The "macro-extern-injection" lever: freeing reach-134 inline matches dedup_propagate skips as "not self-contained" (Phase 23,
tools/inject_capped_externs.py) L2366 - §29 — Reasoning-model (GLM5.2) DEF-side reconciliation idioms + the wall's hard limit (Phase 23 T10.7,
tools/glm_reconcile.py) L2374 - §30 — Fable5Max cracks §20/§10 "unsteerable" from the gcc SOURCE: store-vs-load is a
/saliasing flag, the def-side wall has a macro escape, + the birthing-boost (Phase 23, byte-proven on giantfunc_8014EE14248 ins ×134) L2382 - §30a — §30 generalizes to the FULL near-miss backlog (via STANDARD Opus agents, not just Fable5) + 2 more steer levers + the mechanical-integration throughput unlock (Phase 23 (a)) L2394
- §31 — THE gcc-2.7.2 CODEGEN MAP: pass → residual → C-lever catalog (Phase 23; 4 Fable5 agents read the compiler source) L2402
- §32 — The region-a CAMERA-GIANT idiom set: struct-base hoisting + 4 sibling levers (Phase 24 T7, Fable5-cracked on
func_80129CF8191 ins, match_one MATCH; transferable to the 6 sibling giants) L2422 - §33 — Automating the giant decl-reconcile:
tools/reconcile_decls.py(the DATA analog of §20'scast_call_sites) + a fleet-majority type oracle (Phase 24 T7b, byte-proven onfunc_80129CF8) L2434 - §34 — The
func_80138ED0giant crack: gcc-2.7.2's 3-qty sort bug + the zero-byte asm allocation toolkit + the giv-init fence (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2454 - §35 — The region-a sibling-giant harvest: difficulty ≠ $s-reg count (it's global-array hoisting) + the banking recipe + new loop idioms (Phase 24 T7, 5 parallel Opus-Max agents) L2471
- §36 — Fable5 giant-crack levers (Phase 24 T7 Fable5 batch; accumulates as each lands — full RTL dumps in
.run/t7/fable/) L2487 - §37 — The T7 §G giant endgame: 6/8 cracked, meta-laws + transferable levers (Phase 24, 2026-07-07; FULL byte-verified detail + gcc-2.7.2 line cites in
docs/gcc-2.7.2-map/t7g-giant-harvest.md) L2506 - §38 — The WHALE
func_80144B9C(770 ins): the -O0 struct-assign memcpy idiom + the -O0 reach-134 ×134 rollout (Phase 24 T7 §G, cheap Opus — no Fable5, no calls.c) L2527 - §39 — The ×1→×134 giant-endgame: propagate a matched -O2 giant via the NATIVE DEFINE-macro path (Phase 24 T7 §G close, 2026-07-08) L2537
- §40 — Structural families: the MECHANICAL symbol-remap (crack one exemplar → remap the rest, ~0 tokens) (Phase 25 T3/T7, 2026-07-08) L2553
- §40a — The DECL-RECONCILE pass (type-lift so remapped drafts compile in the sibling TU) (Phase 25 T7.2, 2026-07-08) L2601
- §40b — The reloc-tracker blind spot: the indexed-global idiom that hid the "reach-1 tail" (Phase 26 Task 1, 2026-07-11, byte-verified V0/V1) L2634
- §40c — The h_seq per-sibling reconcile: templating a reconcile-class crack ×134 (Phase 26 Task 8, 2026-07-12, byte-proven) L2676
- §31-triage — R17 applies to CODEGEN residuals, never to a compile ERROR (Phase 26 session 7, Drew asked) L2693
- §41 — The DEF-SIDE canonical-sig wall: mechanically banking a drafted giant past
conflicting types(Phase 25 T5b batch-2, 2026-07-09;tools/canon_sig_reconcile.py, byte-proven onfunc_8013B274) L2710 - §41a — v3.1: the def-side wall was ~71% TOOL-shaped — the five measured defects + the laws that dissolve them (Phase 25 T6, Fable5, 2026-07-09) L2754
- §41b — T7 execution: the object-only probe OVER-counts BANKABLE by two link/rodata classes (Phase 25 T7-M1, 2026-07-10) L2809
- §41c — T7-M2: the ×134 def-side-wall sweep via per-sibling RE-reconcile (Phase 25, 2026-07-10; 4,389 banks, ~0 agent tokens) L2839
- §41b — addendum — M4 "reconcile_decls" tier is ALSO a probe over-count: 0/8 mechanical (Phase 25 T7-M4, 2026-07-10) L2858
- §41d —
void→s32is NOT always byte-neutral: gate the RAW draft FIRST (Phase 26 session 6, byte-proven) L2878 - §42 — The F-band ≤28 regalloc crack wave: register-pin/DENSITY levers beat the permuter (Phase 25 T7 F-band, 2026-07-10; Ultracode 9-worker wave, 4/9 banked byte-identical, 266 swept ×134) L2900
- §42a — addendum — wave 2 (residuals + 29-100 band): iso-MATCH ≠ real-TU bank, the memcpy→struct-assign fix, +5 levers (2026-07-10b) L2953
- §42b — addendum — wave 3 (Max, 2026-07-10c): THE STALE-OBJECT GATE TRAP + the read-global
&-cast drift + fix L2994 - §42c — addendum — wave 3 (Max orchestrator + CORRECTED Ultracode fan-out, 2026-07-10c): the real-TU-faithful parallel harness (rtu_match) + 7/9 crack, ZERO iso-drift L3033
- §42d — addendum — wave 4 (rtu_match fan-out over the mapped frontier, 2026-07-10c): 24/26 MATCH, +5 durable levers L3082
- §42e — propagating a CRACK ×134: the def-finder bug + the byte-drift residual (the "remap-fail" misdiagnosis) L3121
- §43 — The K&R s16-param definition DISSOLVES the "narrow-param wall" for by-value register args (Phase 25 task A, Fable5 crack of the 369-ins giant
func_80166994×134, 2026-07-11) L3195 - §44 — The Phase-25 cheap-Opus giant batch: 5 structural levers + the §43 extension (2026-07-11, 6 crackers over the frontier giants) L3242
- §45 — The flagship
func_80133CD4crack (399 ins ×134): the merged-variable permutation-breaker + the 1-death local-alloc gate (Phase 25 task A giant escalation, Fable5 gdb-on-cc1, 2026-07-11) L3298 - §46 — The
func_80178D40crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3313 - §47 — The live-length SLIDER: splitting a global.c allocno-priority TIE with one zero-byte asm (Phase 26 session 8, Fable5 Max, byte-proven on
func_8017BEBC952 ins ×113) L3365 - §48 — The 12-core jr crack wave: the ALLOCNO-PRICING dials and the EBB rule (Phase 26 session 8, Ultracode, 9/12 MATCH first pass) L3405
- §3-A. — ALLOCNO-PRICING DIALS — move a value into the register you want, byte-neutrally L3413
- §3-A4 — SINK THE CONSUMER CALL INTO THE ARMS (the inverse of A1;
func_8016AB6C, byte-proven) L3444 - §3-B. — THE EBB RULE — the general form of §46-L2 L3468
- §3-C. — TYPE- AND SHAPE-DRIVEN CODEGEN (the C type literally selects the addressing mode) L3484
- §3-D. — THE CROSS-JUMP RATCHET (the sharpest new trap —
func_80131340L-C) L3508 - §3-E. — Meta L3518
- §49 — The LUID DIAL: a zero-byte SCHEDULING dial (the sched.c analogue of §47) —
func_8017A4AC(536 ins ×134), Phase 26 session 8 L3527 - §50 — Refinements that BOUND §47/§48 (from the
func_80135EB0wall, 21→6; Phase 26 session 8) L3576 - §51 — TOOLING INTEGRITY: the silent skip, and how to hunt it L3630
- §51a — The bug class L3636
- §51b — Why the byte-gate cannot save you L3652
- §51c — THE METHOD (do not audit by reading the regex) L3662
- §51d — THE LAWS L3677
- §51e — The false-wall pipeline (why this is not just hygiene) L3739
- §51f — Checklist for any new corpus-scanning tool L3755
- §51g — When the thing you are scanning has a GRAMMAR, parse the grammar (
tools/cdecl.py) L3769 - §52 — The WALKER-FAMILY skeleton: 6 regalloc-order levers + a deeply-characterized intrinsic wall (
func_80178004, 165 ins ×134; Phase 26, Fable5, 2026-07-15) L3913 - §3-The — 6 levers (the "walker-family skeleton" — apply to the 12 siblings; levers 1-5 retire ~half the residual) L3924
- §3-Why — the wall is (probably) intrinsic L3945
- §52a — The regalloc sibling wave: new levers + two new wall classes (cheap-Opus applying §52, 2026-07-15) L3959
- §52b — Sibling wave 2: more de-pin levers, a third wall class, and the match_one→whole-binary gap at scale (2026-07-15) L3997
- §53 — SWEEP A FAMILY WITH THE TOOL ITS EXEMPLAR NEEDED: the jr/switch carve, and how omitting it manufactured the "families don't template" doctrine (Phase 28 T1, 2026-07-15) L4028
- §3-The — case L4033
- §3-Why — 0/8 was structural, and predictable from two words L4045
- §3-The — rule L4062
- §3-The — meta-lesson (R35, and why this one is expensive) L4078
- §55 — Core-crack wave levers + the GATE-ORCHESTRATION law (Phase 29 T3, 13-agent ultracode wave, 2026-07-17) L4093
- §55a — New byte-proven levers (each from a banked or near draft) L4098
- §55b — THE GATE-ORCHESTRATION LAW (3 traps, ~3.5h lost; all recovered, 0 data lost) L4122
- §55c — Sizing the propagate: a TARGETED propagate is ~4 min/core, and "it's slow" was a BROKEN-TREE ARTIFACT L4141
- §54 —
--fix-def-sig: the member's CANONICAL DECLARATION is a build step too (tiny-IMM mega-pools, +4,801, Phase 29 T6, 2026-07-16) L4163 - §56 — Banking a hand-drafted GIANT into its exemplar TU: self-contained draft vs live-TU decls, 4 reconciliation tactics (
func_8013FAF8, 312 ins ×138, Phase 29 T4, 2026-07-17) L4187 - §56b — PROPAGATING an h_seq giant: the exemplar's externs MUST be fleet-canonical, not the draft's types L4232
- §57 — The SELF-decl normalize: the sibling's OWN caller declares the templated fn divergently (the third §17a-1 direction;
tools/normalize_self_decls.py, func_801670E4 ×137, Phase 29, 2026-07-18) L4256 - §57a — Two NSD corrections + the SURGICAL-ONLY law + the honest broad-sweep yield (Phase 29, 2026-07-18) L4303
- §58 — match_one MATCH ≠ BANK: the four blind spots + the crack-wave reconcile-before-bank law (Phase 29 crack-wave, 2026-07-18) L4343
- §59 — Three h_seq sweep-residual classes match_one/the-exemplar-bank don't reveal (Phase 29 crack-wave close, 2026-07-18) L4377
- §60 — Classify the residual, don't rank it: the deterministic residual→class classifier and what it measured about the backlog (Phase 29 Task-13A, 2026-07-21) L4407
- What — it measured — the whole open backlog, byte-grounded L4431
- §3-Two — corollaries worth remembering L4450
- §3-The — parallel-probe race this surfaced L4463
- §60a — What the first DIRECTED grinder run exposed (Phase 29 Task-13B, 2026-07-21) L4472
- §60b — The plateau autopsy's verdict: a
partialdrift is a WRONG DRAFT, not a missing transform (Phase 29 Task-13B close, 2026-07-21) L4510 - §61 — Task 14: the gate ladder's missing stage is the ARITY pre-pass, and it is TU-side not draft-side (Phase 29, 2026-07-21) L4545
- §61a — The Task-5 wave: 11/12 MATCH, 0 banked — three DISTINCT integration walls, each now named (Phase 29, 2026-07-21) L4606
- §61b — The jtbl gate stage: built, and the ORDERING law it exposed (Phase 29 Task-14 stage 4, 2026-07-21) L4658
- §61c — The jtbl bank is INCREMENTALLY valid and CLEAN-INVALID (Phase 29, 2026-07-21) — the blocking finding L4713
- §61d — The undo was eating the tree: two tools, one defect, invisible to the byte-gate (Phase 29, 2026-07-22) L4779
- §62 — The jtbl RECONCILE must also follow the carve: the post-carve draft reconcile (
harvest_verify._jtbl_reconcile, Phase 29 SESSION-11, 2026-07-22) L4833 - §63 — The fresh-138 DEF-SIDE blocker: fix the HEADER decl, not the draft (
fix_header_decl.py, Phase 29 SESSION-13, 2026-07-23) L4877 - §64 — The §20 type-lift's three laws: fold the tagged typedef, check VISIBILITY, and strip only what is TEXTUALLY IDENTICAL (
lift_types.py, Phase 29 SESSION-14, 2026-07-23) L4908 - §64a — VARIANT types: UNIQUIFY the camps, do not reconcile them (
uniquify_type.py, Phase 29 SESSION-14) L4957 - §63 — UPDATE (Phase 29 SESSION-14) —
fix_header_decl's "SAFE" verdict is FLEET-BLIND; it MUST be R22-validated L5000 - §65 — The stranded-draft recovery: BLAST-RADIUS TIERS, and the per-overlay de-macroize that refutes §20's DEF-conflict wall (
tools/demacroize.py+tools/blocker_probe.py, Phase 29 SESSION-16, 2026-07-24) L5015 - §65a — The blast-radius taxonomy (makes §61's law structural instead of remembered) L5030
- §65b — The escape: de-macroize the instantiation, don't touch the shared header L5045
- §65c —
rtu_matchMATCH → bank held 13/13 on self-decl, but broke on the FIRST callee-decl case L5081 - §65d — Existing-ladder baseline, measured (do this before building a recovery stage) L5091
- §65e — Two oracles, and the disagreement is the finding (R34 in practice) L5101
- §65f — The de-macroize lever's BOUNDARY, measured: byte-neutral 14 times of 15, and the 15th is why the gate exists L5118
- §65g — Where the cheap levers STOP: the local-type and in-TU-self-decl classes did not yield L5139
- §66 — Exercise a banking driver's SUCCESS path before pointing it at a wave: the free re-bank test (Phase 29 SESSION-17, 2026-07-24) L5159
- §66a — The widest write in a pipeline is the one most likely to be UNDECLARED L5181
- §66b — A metric parsed out of another tool's prose goes NULL silently when the label changes L5200
- §66c — Before a wave, verify the FUEL exists; an "already attempted" set built from the wrong directory lies in BOTH directions L5217
- §66d — The permuter⇄reader loop: alternate a random search with a byte-verified idiom, and let
residual_classdecide whose turn it is (Phase 29 SESSION-17) L5245 - §66d-1 — What transfers between giants is the LOOP, not the PIN L5280
- §66d-2 — Two operational sharp edges L5289
- §66d-3 — Read the ILS per-cycle SERIES, not its final best: a repeated score and a still-falling one look identical in a summary line and mean opposite things L5300
- §67 — The arg-copy PLACEMENT lever: launder a parameter into a fresh pseudo AT the statement where the target's copy lands (Phase 29 SESSION-18,
func_8014D82025 → 16) L5315 - §67a — Run the symbol-set guard BEFORE you pay for a gate (
tools/symcheck.py, Phase 29 SESSION-18) L5405 - §66d-4 — "ILS converged" means converged FOR THAT WEIGHT PROFILE, not a floor (amends §66d-3; Phase 29 SESSION-18) L5438
- §66d-5 —
residual_class's "structural ⇒ permuter CPU is waste" is WRONG for schedule permutations (measured, Phase 29 SESSION-18) L5491 - §68 — A comment-only line halted the extern scan, and the skip label blamed the type cap (Phase 29 SESSION-18) L5524
- §69 — How to attack a behemoth: map it, don't draft it (Phase 29 SESSION-18,
func_80183814, 5,122 ins) L5569 - §70 — The giv-init base register: walk the PARAMETER, not a copy of it (Phase 29 SESSION-18,
func_801777BC) L5619 - §71 — Before mapping a giant, look for an already-matched SIBLING beside it (Phase 29 SESSION-18,
func_8017D960, 3,338 ins) L5660 - §72 — A
register __asm__pin is a PREFERENCE, not a reservation (Phase 29 SESSION-18,func_8017F510) L5726 - §3-The — honest fix was source-level and cheap L5750
- §3-Giv — record order (the §70 family) L5760
- What — is left, and what is byte-recorded as SPENT L5766
- §73 — A def-side self-decl conflict has TWO axes: RETURN (fleet widen, T2) and PARAMS (casts at each use, T0). Diagnose which before paying for the expensive one (Phase 29 SESSION-19,
func_8014F3E8+func_8014D4C0) L5783 - §74 — Auditing a pinned draft: the §72 hazard is CALLER-SAVED pins spanning a call, and only the disassembly can tell you (Phase 29 SESSION-19,
func_8017D960b2, 5 pins) L5822 - §75 — A propagation cap is usually a MINORITY-SPELLING SOURCE OVERLAY, not a wall: census the carried extern before believing the exclusion message (Phase 29 SESSION-19,
func_8014F3E8×4 → ×138) L5866 - §75a — The exclusion classes, enumerated with named causes (Phase 29 SESSION-19, the 134-binary
dedup_extendsweep) L5925 - §75b — A body's preamble can carry
#defines, not justexterns; extraction lifts only the externs (Phase 29 SESSION-19,func_80165CA0×3 → fleet) L5948 - §75c — Class-B's remedy is the FULL §17a-1 PAIR (decl and call-site cast); a decl-only fix moves the error and looks like a new wall (Phase 29 SESSION-19,
func_8012F14C) L5997 - §76 — The allocno CLASS (local vs global) is the dominant regalloc lever, and C reaches it ONLY through declaration scope and variable reuse (Phase 29 SESSION-19, behemoth #3
func_8017F5101,511 ins, 97 → MATCH, pin-free) L6028 - §3-The — mechanism, with citations L6037
- §3-The — attribution primitive (use this before calling anything a scheduling residual) L6057
- §3-Two — diagnosis traps this function proved L6064
- Practice — Practice L6074
- §77 — Every extraction tool carries a NARROW hard-coded preamble set; anything outside it silently caps the body's reach. Diff the preamble before you gate. (Phase 29 SESSION-19 — three variants in one session, two different tools) L6084
- §3-The — CANDIDATE gate and the REAL gate need DIFFERENT preambles — keep the difference out of the bank L6124
- §78 — A LENGTH drift can be a register grant in disguise; and
foldnever leaves a literal first in an|chain (Phase 29 SESSION-19, behemoth #2func_8017D9603,338 ins, 1806 → 0, pin-free) L6174 - §3-The — drift was an allocation decision, not missing code L6180
- §3-The — economics L6211
- §79 — For a 0-callee giant, fingerprint by DATA symbols (§71 cannot fire); and the STACK-SLOT ORDER is a declaration-order oracle (Phase 29 SESSION-19,
func_8017BF144,763 ins, cold start → 45/4763) L6220 - §71 — has a blind spot, and this is it L6226
- §3-NEW — LEVER — the frame layout reads back the original declaration order L6240
- §76 — confirmed at scale, and a pin nuance L6251
- §3-The — residual, and the honest read L6260
- §80 — A do-not-re-buy entry is scoped to its BASE, not to the function; and the pin's hidden cost is an unconditional
qty_phys_sugg(Phase 29 SESSION-19,func_8017BF1445 → 0) L6270 - §3-The — pin's hidden cost, with the citation L6291
- §3-The — flagged "#1 move" LOST — and why the failure is informative L6302
- §78 — 's attribution primitive, run and reproduced L6312
- Cold-start — economics, now complete L6318
- §81 — Banking a jr (jump-table) function: the 3-step carve chain, and why
match_onecannot see the problem (Phase 29 SESSION-19,func_8017C954) L6323 - §3-The — defect this exposed: a shared type that is present but invisible L6354
- §82 — Two source-shape oracles from behemoth #6: a duplicated
addiu $aN,$sp,Kacross ajalmeans the block was INLINED, and scalar-vs-aggregate decides WHEN a stack slot is allocated (Phase 29 SESSION-19,func_8017C7301,061 ins) L6370 - §3-1. — The inlined-helper signature L6375
- §3-2. — Scalar vs aggregate decides when the slot is allocated L6389
- Also — reproduced on this function L6401
- §3-And — the banking footnote (§75a class A, one line) L6405
- §83 — The parameterised-repeat law, the spill-area trap, and why a per-case edit cannot move a per-case symptom (Phase 29 SESSION-20,
func_801838145,122 ins, cold-ish start → 36 structural / 99.3%) L6412 - §83a — READ THE HEADLINE NUMBER CORRECTLY: a LENGTH drift makes
match_one's count meaningless L6419 - §83b — THE LEVER: find the parameterised REPEAT before decoding case-by-case L6427
- §83c — TRAP: a "dead local" in a prior draft may be gcc's OWN spill area L6445
- §83d — CSE's quantity budget is WHOLE-FUNCTION, so a local rewrite cannot fix a local symptom L6452
- §83e — §80 vindicated again, on the same day it was written L6466
- §84 — The DERIVED-OFFSET remap bug: a hand-computed literal that encodes the DISTANCE between two per-overlay symbols, and why
match_oneis structurally blind to it (Phase 29 SESSION-20,func_8013D53C) L6472 - §3-The — construct L6477
- §3-Why — it survived every candidate gate L6495
- §3-THE — FIX IS MECHANICAL — the tool already holds the answer L6510
- Scope — , measured (do not over-generalise — §80) L6518
- §3-Two — ladder lessons banked with it L6528
- §85 — The RETURN-axis fleet widen is ALL-OR-NOTHING: widening the shared header alone guarantees a conflict in the source overlay (Phase 29 SESSION-20,
func_8012CC88/func_8014D12C) L6539 - §3-The — conflict L6544
- §3-THE — FAILURE MODE — widening only
engine_core.his worse than not starting L6552 - §3-The — precondition, and how to check it in one grep L6559
- §3-Do — the WHOLE axis in one edit, then R22 once L6567
- Reading — , for the next person L6576
- §86 — Pinned-exemplar templatability is a PER-FAMILY property, not a per-member rate; and the §42e pin guard is now over-conservative (Phase 29 SESSION-20) L6589
- §3-The — guard refuses a class that largely works L6591
- §3-THE — LAW: all-or-nothing PER FAMILY L6600
- §3-Why — the two live families differ from the three dead ones — the open question L6627
- §87 —
match_oneCOMPILES but never LINKS, so an unresolvable data symbol reads as MATCH; and stored drafts go STALE against the tree (Phase 29 SESSION-20) L6633 - §3-The — blindness ladder, now complete — FOUR classes
match_onecannot see L6649 - Consequence — for the backlog ledger L6659
- §3-The — cheap discriminator, before spending a sweep L6666
- §88 —
cross_jumpwill not merge a common suffix containing a CALL; and §78 is scoped to ORDERED comparisons only (Phase 29 SESSION-20, the behemoth close-out) L6674 - §88a — repeated CALL-shaped blocks are left UNMERGED; call-free tails are merged for you L6679
- §88b — the
sltiliteral-position law (extends §78 to comparisons) L6686 - §88d — BANKING ORDER: run the §81 carve chain BEFORE banking, never after L6701
- §88e — a wrong diagnosis, refuted properly (the model for how to treat an inherited lever) L6708
- §88f — the missing rung: a RELOCATION gate between
match_oneand the binary L6718 - §89 — Two throughput rules the project already had written down and was not following (Phase 29 SESSION-20) L6726
- §89a — MEASURE the write set; do not assert its tier (
tools/blast_radius.py) L6732 - §89b — the parallel gate farm existed; the family path could not reach it (
tools/sweep_parallel.py) L6745 - §3-The — standing sequence L6758
- §90 — Five tool-integrity laws from one session, each of which changed an answer (Phase 29 SESSION-21, 2026-07-27) L6766
- §90a — A comparison tool MUST share its reference oracle's index space, exactly L6772
- §90b — "Byte-neutral" is not "wanted": undo on the SUCCESS path too L6789
- §90c — A library-callable function must FAIL CLOSED on an unconfigured module L6799
- §90d — Do not measure a live wave's drafts (§87 in real time) L6810
- §90e — An agent's CONCLUSION and its EVIDENCE fail independently — re-derive the premise, not the fix L6818
- §91 — A structure-TRANSFER is only valid where the structure corresponds: the
--likerole trap (Phase 29 SESSION-21,func_8012AAAC×137) L6842 - §3-The — three-hypothesis trail, because two of them were wrong and the wrongness is instructive L6871
- §92 — Conforming a DECLARATION: pointer changes are caller-neutral, scalar-WIDTH changes are not (Phase 29 SESSION-21,
tools/conform_decls.py) L6891 - §93 —
set -o pipefailattributes a pipeline failure to the LAST stage, not the failing one (Phase 29 SESSION-21,func_8014D820) L6922 - §94 — A family sweep's
0/Nis a TYPE-CARRY failure until proven otherwise: lift the exemplar's local types, ALL of them, transitively (Phase 29 SESSION-21,func_8016B6BC0/137 → 137/137) L6947 - §95 —
reconcile_tudropped the SIBLING declarators of a multi-symbolexternline (Phase 29 SESSION-21,func_80176218) L6983 - §96 — The same rewrite, one shape down:
reconcile_tumatched statements to lines by TEXT, so every COMMENTED declaration was silently skipped (Phase 29 SESSION-22,func_80176218banked) L7018 - §97 — The gate's own tree hygiene: a refused carve, an unchecked recovery, and a snapshot that captured a dirty tree (Phase 29 SESSION-22) L7066
- §98 —
conform_declshad three defects, and only the third needed R22 to find (Phase 29 SESSION-22,func_8014CF04) L7113 - §99 — The narrow-param wall is a DEF-side problem with a ZERO-blast-radius fix: convert the definition to K&R (Phase 29 SESSION-22,
func_80175AB8+func_80175DA8) L7167 - §3-Two —
reconcile_tubugs found underneath, one introduced while fixing the other L7190 - §100 — Prefer the DRAFT-LOCAL fix: a type only one function uses belongs in its BODY, not in a shared header (Phase 29 SESSION-22,
func_80175DA80/137 → 137/137) L7216 - §101 — The STALE DEFAULT class: a guard whose cause was removed is a silent skip wearing a safety label (Phase 29 SESSION-22, three instances in one session) L7245
- §102 — A PLUMBING verdict can MASK a DIFF; and K&R is not always a codegen change (Phase 29 SESSION-22,
func_8016EC0C) L7272 - §103 — A FILE-scope
externin a shared overlay TU is a GLOBAL constraint on every LATER function; move the DECL, not the draft (Phase 29 T48/T51,func_80135260— the fleet-wide half) L7307 - §104 — Two silent-skip defects in one scan: match on MASKED text, emit from the ORIGINAL (Phase 29 T53,
gather_externs) L7395 - §105 — A gate's revert must survive an EXCEPTION, not just a failure (Phase 29 T53,
jtbl_family_bank) L7431 - §106 — Persist the MEASUREMENT, derive the POLICY: a stored route let a stale file out-vote the live table (Phase 29 T54,
residual_class._ROUTE) L7470 - §107 — A lever wired into ONE gate path is a lever most families cannot reach (Phase 29 T56,
func_801440900/136 → 136/136) L7513 - §108 — Diagnosing a family
0/N: the four causes, and the third opt-in lever (Phase 29 T59) L7551 - §109 — Conforming a definition to a shared header: fix the NAMES, then check the RETURN precondition (Phase 29 T60) L7600
- §110 — A unit must define exactly ONE function, and "ends in
;" does not tell you which line defines it (Phase 29 T65) L7640 - §111 — The distinct-code metric is not noisy: a family pays it only if its members are byte-VARIANT (Phase 29 T66) L7681
- §112 — A macro-scoped declaration only collides where the macro is INSTANTIATED (Phase 29 T67/T69,
audit_header_sigs.py) L7730 - §113 — An ARITY blocker only exists if the macro CALLS the function; an address-taken use has no call site (Phase 29 T72) L7776
- §114 — The THIRD decl axis: a CALLEE the draft declares differently from the target TU (Phase 29 T76/T77) L7808
- §115 — A
func_XXXXXXXXpredicate rots by design: the same name-form assumption in THREE places (Phase 29 T78) L7850 - §116 — Optimization level is a property of the FILE, not the function: read a family 0/N against the member's stub HOME (Phase 29 T79) L7877
- §3-The — fix moves the DEFINITION, not the stub — and here is why the obvious shortcut fails L7895
- §117 — Spell the sibling's symbol from the SIBLING's address, not the exemplar's kind (Phase 29 T82) L7926
- §3-Why — it survived so long: a MASKED oracle will MATCH a wrong symbol L7953
- §118 — Ordinal (positional) immediate resolution: compare C tokens to the DIFFERING asm uses (Phase 29 T87) L7963
- §119 — Two levers on the SAME axis, opposite directions: test the off-diagonal (Phase 29 T89) L7997
- §120 — Uniquify draft-defined TYPE names; and check which of N staging sites you actually patched (Phase 29 T93) L8026
- §3-Do — NOT "strip the duplicate typedef" — it breaks the extern that uses it L8037
- §3-The — wiring trap that cost two attempts L8043
- §121 — Synthesise externs for macro-DEFINED callees from the macro's own definition head (Phase 29 T95) L8061
- §122 — GATE RAW BEFORE TRANSFORMING; the undo belongs to the WRITER, as a per-edit journal (P30 T0a, 2026-07-30) L8084
- §123 — PROPAGATE A FAMILY WITH THE TOOL ITS TIER NEEDS:
dedup_propagateis h_exact-only; its refusals are statements about the TOOL (P30 wave 1, 2026-07-30) L8116 - §124 — A "not matched" verdict can mean the definition is there under a DIFFERENT C NAME: the asm-label alias blind spot (P30 SESSION-28,
func_8016191C×137) L8153 - §124a — a family sweep's
0 matched-exemplar familiesmay be a FILTER, not a wall L8198 - §125 — Split the CARVE from the BODY before calling a jr residue a wall — and measure it by SHA from a CLEAN tree (P30 SESSION-28; this section's first draft was WRONG and the method caught it) L8206
- §3-The — method (keep this) L8213
- §3-The — instrument rules that make its answer trustworthy (this is where I failed) L8223
- §3-The — corrected results (each SHA-verified, from a clean tree, restore re-verified) L8238
- §3-Two — further notes worth keeping L8248
- §3-The — meta-lesson L8257
- §126 — The carve-within-a-carve: an ADDRESS RANGE is not an OPTIMIZATION REGION (P30 T2, byte-proven end-to-end) L8264
- §3-The — finding: opt level is per FILE, so the file's contents must be opt-HOMOGENEOUS L8279
- §3-The — instrument trap that hid it (and it is §124's shape again) L8290
- §3-The — mechanics L8299
- §126a — a bare
except: continuearound a coverage-asserting oracle re-creates the silent skip (P30 S28) L8317 - §127 — The
-O0regime: the CONSTANT-OFFSET FOLD, and why-O0needs its own idiom set (P30 T3 wave, 15 targets) L8349 - §3-The — idiom they kept re-deriving: the constant-offset fold L8356
- §3-The — rest of the
-O0regime (write PLAIN C, and mean it) L8367 - §127a — §71 (sibling-first) is the strongest
-O0lever, and it beats the index L8377 - §127b — the knowledge was in a SOURCE COMMENT, not the cookbook L8386
- §128 — A raw NUL in C source makes grep SILENTLY SKIP the file (P30 S28, 137 files) L8393
- §128a — a negative control must corrupt a SCRATCH COPY, never the tracked file L8425
- §129 — Post-carve,
rtu_match/match_oneCOUNT THE JUMP TABLE AS INSTRUCTIONS; and a carve must never be committed without its owner (P30 S28,func_8013BD74) L8437 - §129a — the target instruction count is INFLATED after a carve L8441
- §129b — never commit a carve whose owner is still a stub (it strands the carve) L8462
- §3-The — real blocker underneath, for the record L8477
- §130 — An INCREMENTAL build can report BYTE-IDENTICAL for a change the CLEAN build cannot even LINK (P30 S28, the jr pair) L8486
- §3-The — diagnostic ladder that finally located it (reusable) L8523
- §131 — The jtbl OVER-SPAN:
sltiu Nis ground truth in BOTH directions, and the zero-word rule only guards one (P30 S28,func_80191C50) L8533 - §132 — The
JR-PAIR-IN-ONE-O0-OBJECT"wall" was TWO instrument defects: a merged-double span the carve could not see, and a truncated object no rule deleted (P30 S29,func_8013B83C+func_8013BD74) L8570 - Defect — 1 — a pre-§8e MERGED DOUBLE is not a single-table predecessor L8579
- Defect — 2 —
aswrites a corpse and nothing deletes it L8597 - §3-The — fingerprint, and the 30-second ladder that found it L8607
- §3-The — transferable rule L8628
- §132a —
--likeis for a sibling with NO record; against one that HAS a record it over-derives (P30 S29,ov_SC07_010) L8635 - §132b — When the span's already-matched owner is ITSELF multi-switch:
--span-rel(P30 S1,func_8014032C) L8660 - §133 — The DEFAULT-FILTER class: three times in one session, a tool silently answered a narrower question than the one asked (P30 S1–S3) L8685
- §134 — MULTI-LINE BLINDNESS: one root cause, four faces, in
family_remap's preamble scanner (P30 S6, 190 zero-crack families) L8711 - §135 — Six byte-verified gcc-2.7.2 idioms from the P30 S6f-h waves (and the two-lane wave shape that found them) L8765
- §3-The — codegen idioms L8770
- §3-The — integration idioms (these decide whether a byte-correct draft BANKS) L8804
- §3-The — wave shape that produced these L8819
- §136 — The LOCAL-VARIABLE lever: how many C locals, at what scope (P30 wave 4a, 25 byte-verified banks) L8837
- §3-The — splitting/merging rules (each closed a residual, byte-gated) L8853
- §3-The — type-form rules L8879
- §3-The — scheduling rules (refining §135-2 and §135-4) L8909
- §3-The — declaration surface (integration, not codegen) L8938
- Wave — economics (measured, for the next batch's sizing) L8950
- §136a — Blocker capture: classify on the OUTPUT, never on the exit status L8973
- §136b — A prior wave's "genuine byte-DIFF" verdict is NOT reliable evidence (4 of 4 refuted) L9030
- §136c — SIBLING-FIRST is a DERIVATION shortcut, not just a conflict fix (the fastest route in a family wave) L9066
- §136d — Four gcc-2.7.2 levers the redraft lane found (each closed a residual no other lever moved) L9091
- §136e — §136c's PRECONDITION, and two more symptom keys (wave 4b batch 3) L9135
- §136f — Two declaration sub-cases the reconcile lane surfaced (lane now 15/15 lifetime) L9183
- §136g — When the index points at the WRONG lever: two byte-refuted routings (func_801863B4) L9208
- §136h — CORRECTION: the zero-crack pool does NOT "refill with cheap work" (my error, byte-measured) L9237
- §136i — The drafter model LADDER: Haiku → Sonnet → Opus → Fable5 (Drew, 2026-08-03) L9267
- §136j — The failure MIX flips with function size (measured across four bands, one session) L9299
- §137 — REGALLOC-PERM is a TWO-COMPILE ARITHMETIC PROBLEM, not a permuter job L9341
- §137a — A gate verdict has a TIMESTAMP; re-check it against the draft's mtime L9383
- §138 — The propagation lanes: a gate refusal is a DECLARATION, and which lever you owe depends on blast radius L9412
- §3-The — triage, cheapest first L9418
- §3-The — DEFINITION-side alias is the only escape when the fleet canon disagrees on a promoting param L9470
- Rank — the lane by measured concentration, not by class count L9478
- THREE — carry variants hide in one "CARRY-FIXABLE" bucket — and they need different fixes L9487
- §134 — again, in a second tool — and the waiter rule corrected L9523
- STEP — 0 of sibling-first: grep
src/for a distinctive LITERAL from the.sL9543 - Reconciling — a gate-refused draft: which way you edit depends on WHERE the TU's decl is L9562
- §139 — A GATE THAT GREPS FOR VERDICTS MUST ASSERT 1:1 ACCOUNTING; and a
--srcfilter must not survive a carve (P30 S38, wave 6: 10 of 16 drafts vanished) L9591 - §3-The — generalisation — three corollaries worth more than the bug L9623
- §3-And — the inverse-lookup trap, same session L9640
- §140 — A METRIC IS NOT A MEASUREMENT UNTIL IT IS REPRODUCIBLE FROM THE COMMITTED TREE (P30 S1e: a phantom regression that gated the session's best lever) L9657
- §3-The — three-line proof (do this before diagnosing any metric movement) L9677
- §3-The — two instrument defects it exposed L9686
- §3-The — same swallow, twice more, in the integration spine L9706
- §3-Two — wrong mechanisms I chased first, and why they were wrong L9717
- §141 — The §134 class is CLOSED: every line-shape decision now routes through
cdecl._mask(P30 S39) L9737 - §142 — An open stub whose
h_exactclass is MATCHED elsewhere is FREE. Propagate the body; do not gate a draft. (P30 S39, +7,710 ins in two commands) L9775 - §3-The — measurement (do this before any wave; it is ~20 lines and needs no builds) L9787
- §3-The — trap that hid it — SAME FUNCTION, TWO ROUTES, ONLY ONE IS FREE L9802
- Route — selection (why
--addrsometimes says "nothing changed") L9811 - §3-And — the report-vs-bytes lesson attached to it L9819
- §143 —
cast_call_sitesread a RETURN STATEMENT as a prototype and deleted it. A 0/39 sweep became 18/39. (P30 S40) L9831 - §144 — THE LITERAL'S SPELLING PICKS THE IMMEDIATE ENCODING (P30 S40 wave 1,
func_801822E0) L9885 - §145 — Three loop/combine levers from the S40 wave-2 drafters (16/16 match_one) L9924
- §146 — RE-MEASURE A WALL BEFORE YOU RESPECT IT. Both "permanent" giants fell to drafts already on disk. (P30 S6, +50,094 ins) L9974
- §3-Why — a correct draft can read as an intrinsic wall L9985
- Then — propagation returned 0/137 TWICE — both times a missing TYPE L9997
- §3-Two — errors of mine, both instructive L10006
- §3-The — rule L10020
- §147 — The three-stratum FRAME LAW, and four "stop searching" verdicts (P30 S42,
func_8017C294, serial run) L10033 - §3-A. — The frame has THREE strata, and stratum 3 is unreachable from C L10038
- §3-B. — A
?:on MEMORY operands costs ~16 bytes of invisible frame; on REGISTER operands, zero L10054 - §3-C. — Inner-block declaration does NOT delay slot allocation — BYTE-REFUTED L10065
- §3-D. — A lone
$t8/$t9in the target is RELOAD SCRATCH — reproduce the spill, don't pin the register L10070 - §3-E. — A
qty_compareTIE is not spelling-reachable — recognise it and stop L10080 - Consequence — for the family (a real scheduling decision) L10092
- §148 — The loop.c hoisting THRESHOLD is arithmetic you can compute, and the
?:clamp that folds to MIN_EXPR (P30 S42,func_8017C6F4, 947 ins) L10142 - §3-A. —
move_movableshoists iffthreshold × savings × lifetime ≥ insn_count— and you can read it L10148 - §3-B. —
(v < 0x40) ? v : 0x3Fis folded toMIN_EXPRand expands to the WRONG SHAPE L10167 - §3-C. — A zero-byte ALLOCNO-PRIORITY slider L10181
- §3-D. — Reproduce the original's BUGS verbatim L10191
- §149 — Four instrument defects in one session, and the two questions they were hiding (P30 S43) L10240
- §3-A. — A prep step that returns its input on failure is indistinguishable from a search that found nothing L10246
- §3-B. — Same address + same name ≠ same body — and the ledger keys on address L10264
- §3-C. —
make: *** [...] Error Nis a summary, never a diagnosis L10280 - §3-D. — "Cheap fuel" that was never probed: 0 of 31 templatable L10290
- §150 — A register ROTATION across symmetric blocks is VARIABLE-IDENTITY evidence, not an allocator tie (P30 S43,
func_8017C6F4, 947 ins ×4) L10309 - §3-The — fix L10316
- §3-The — method that found it (this is the transferable part) L10326
- §3-Two — corrections to the record L10342
- Diagnostic — order (adopt this) L10353
- §151 — THE GHOST WEDGE: when a load-before-store transposition is unreachable by ANY statement order (P30 S43,
func_8017EF68, 969 ins) L10364 - §3-The — mechanism (read from cc1's own
-dRtrace, not inferred) L10369 - §3-The — lever — a zero-emission insn that absorbs the blocked tick L10384
- §3-The — two fallouts, and how to close them (both measured, in order) L10392
- When — to reach for it L10404
- §152 — BYTE SIZE is the family key that name- and h_seq-grouping both miss (P30 S43, the 0xECC family: 1 crack → 12 overlays → 11,364 ins) L10415
- §3-The — finding L10420
- §3-The — key L10429
- §3-Two — cautions that must travel with this technique L10440
- §3-The — companion defect (open) L10451
- §153 — THE ADDRESS-REMATERIALISATION LAUNDER: a third zero-emission asm lever (P30 S43,
func_8018D98C, 710 ins) L10463 - Symptom — Symptom L10471
- Mechanism — (gcc source + RTL dumps, not inferred) L10476
- What — does NOT work (14 byte-measured probes) L10483
- §3-The — cure — a fresh launder per site, each in its own block L10489
- Companion — levers from the same function L10499
- §154 — Reading a disc payload: the module-id word, static base derivation, and "type 1 = uncompressed overlay" (P30 S44) L10519
- §3-A. — Payload word0 is a global MODULE ID; code starts after the header L10524
- §3-B. — Two static base-derivation methods that must AGREE (use both) L10533
- §3-C. — PAC type 1 = the same payload class as type 4, just NOT compressed L10545
- §155 — hi/lo literal scanning MUST track base registers (S45) L10555
- §155a — the same failure class, one level up: SHAPE-blind table scanning (S45 p5) L10564
- §155b — check the TYPE your oracle returns before comparing against it (S45 p5) L10584
- §155c — the ZERO-REFERENCE trap: gcc splits a global-array address across the
luiand the LOAD (S46) L10607 - §156 — an ORPHANED reconcile poisons the fleet:
dedup_propagate's kept edit (S45 p6/p7) L10637 - §157 — the cheap-tier size cliff, measured (S45 p6) L10684
- §158 — The RANGE-EXTENDER: a fourth zero-emission asm lever completes the allocno toolkit (P30 S46 tier-3,
func_8017CE58, 733 ins) L10709 - Symptom — Symptom L10718
- §3-Why — the fork is chained (gcc source, validated insn-by-insn against -dS/-dR dumps) L10724
- §3-The — method (dump-arithmetic first, then place — no probing) L10737
- Bonus — facts worth keeping L10754
- §156 — THE PREFERENCE-DONOR MERGE: cross-region variable reuse is what fills a0-a3, and a call-arg use in ONE region steers the fill in ALL of them (P30 S46 tier-3,
func_80186E24, 611 ins: 236-off "S11 regalloc-order" → MATCH, zero new pins) L10769 - §159 — THE DECLARATION AXIS: conform to byte-truth, and make every guard state its COVERAGE (P30 S47; ~10,930 sites across 8 axes, fleet byte-identical) L10825
- §160 — THE REACH-15 WAVE HARVEST: an align-1 block move, and the instrument that called it a wall (P30 S47) L10890
- §161 — THE RETRY-WAVE HARVEST: a jump table indexed from zero, and two allocator traps (P30 S47) L10966
- §162 — S48 WAVE-1 HARVEST (P30, 2026-08-11): the reach-ordered sibling campaign's first 12 targets L11011
- §162a — SHARPENS (sharpens §161a, §131, §8a-pad, §129a) L11038
- §162b — SHARPENS (sharpens §48-A3, §156, §150, §76) L11067
- §162d — SHARPENS (sharpens §31, §21, §30, §55a) L11096
- §162e — NEW L11138
- §162 — THE LICM PAIR: what makes an address a movable AT ALL, and why the preheader order is the body order (P30 S47,
ov_MAIN_012) L11140 - §162f — SHARPENS (sharpens §42d, §41d, §73, §10) L11206
- §162g — NEW L11261
- §162 — CROSS-JUMP DIRECTION: the surviving copy is always the LATER one, so a BACKWARD
jinto a sibling arm is a sourcegoto(P30 S48) L11263 - §162h — SHARPENS (sharpens §88, §88a, §50-B, §8) L11297
- §162 — The cross-jump "CALL veto" is a COUNT law, not a CALL law (BOUNDS §88a; P30 S48,
func_80189540) L11299 - §162i — SHARPENS (sharpens §135, §21, §42, §32) L11365
- §162j — SHARPENS (sharpens §25, §136d-1, §48-B, §46-L2) L11390
- §162k — SHARPENS (sharpens §1-I2, §12, §160d, §21) L11419
- §162l — SHARPENS (sharpens §48-B, §48-C1, §20, §21) L11482
- §162m — SHARPENS (sharpens §36, §158, §148, §153) L11537
- §158a — THE FIFTH LEVER IS NOT AN ASM:
do { } while (0)is a REGION ref-multiplier you MINT (P30 S48,func_8017CBC8, ov_MAIN_012 / jr_801789AC, 188 ins → MATCH) L11539 - §3-The — law L11546
- Size — it before you write it (§158 step 1-2, applied) L11557
- §3-The — wrap BOUNDARY is the dial — and it is indiscriminate L11578
- §3-Not — a pure dial L11584
- DIAGNOSTIC — TELL — two faces, one law L11588
- §162n — NEW L11610
- §162o — SHARPENS (sharpens §158, §136-1, §136-6, §79) L11643
- §162p — SHARPENS (sharpens §48-B, §46-L2, §156, §136d-1) L11702
- §162q — SHARPENS (sharpens §30, §30a, §135-2, §136-13) L11719
- §163 — S48 WAVES 2-3 HARVEST (P30, 2026-08-11/12): the five that were byte-probed and are actionable L11757
- §163z — THE UNVETTED REMAINDER (do not cite as law; each needs a dedupe pass) L11825
- §164 — S48 §163z SKEPTIC PASS (P30, 2026-08-12): 190 claims vetted, 82 banked L11845
- §16Xy — SHARPENS (sharpens §136d-3, §37 /s-DEP LATTICE, §135-2, §136-13, §162q) L12297
- §3-The —
/sdrop clause is in ALL THREE dependence predicates, so the FIXED-ADDRESS STORE is what floats (P30 S48,func_8017CA18, ov_MAIN_012) L12299 - §164z — REFUTED CLAIMS: do NOT re-derive these L13620
- §165 — S48 WAVE-4 HARVEST (P30, 2026-08-12): banked the same day the wave landed L13686
- §16Z — SHARPENS (sharpens §37 "the /s-DEP LATTICE", §136-13, §136-14, §16Xy, §162q,
gcc-2.7.2-map/sched.md§64) L14337 - §3-The — ADDRESS-CLASS TABLE: which load/store pairs even REACH the
/sclause (P30 S48 wave 4,func_80185B44, ov_SC03_014) L14339 - §165z — REFUTED THIS WAVE: do NOT re-derive L14855
- §166 — THE DESTINATION-TU ORACLE (P30 S48): the seven-attempt bug that was never codegen L14899
- §167 — S48 WAVE-5/6 HARVEST (P30, 2026-08-12): the saturation point L14955
- §167z — REFUTED IN WAVES 5/6: do NOT re-derive L16151
- §168 — THE COUSIN TIER (P30 S49, 2026-08-12): h_seq's exact-hash brittleness, measured — and the similarity map above it L16208
- §169 — THE MICRO-ADAPT LANE (P30 S49): edit a proven body, don't crack a new one L16260
- §170 — THE A-PROP WORD-DIFF CARD (P30 S49): the lane that had no owner L16307
- §171 — THE STALE SEED SYMBOL (P30 S50, 2026-08-13): why §170's 91%→57% was never codegen L16351