Drew T
583ec85d6e
docs(phase-33): G1 — docs/gen3-handoff.md: where Gen2 ends, the owner's next intent (casts -> structs, pins off, names), the starter census DERIVED from the tree with its commands (143 raw address casts, 61,898 D_ symbols, 16,335 func_ names — the plan's numbers reproduced — plus 44,243 register pins, 1,258 Sony tiles, 1,083 symbol-file entries, 1,232 struct defs, 2,220 dedup groups), the one invariant (every edit byte-gated; shared bodies change every member; types are comprehension not bytes), the inherited levers, shiftability honestly scoped, the parked Gen3 ideas, governance for a new generation; SETUP row + P33 G1 section; doc_links default; log + checkpoint (34 of 41: everything Claude can do before the flip is done — NEXT = the probe-gated chain on Drew's side, then C11, then G2); G1 pulled ahead of the plan's C11 -> G1 order (recorded)
2026-09-07 11:35:50 -06:00
..
2026-06-14 03:56:07 -06:00
feat(phase-33): B1 make disc-extract — the rom->decoder step in the build: extract.py --expect-manifest (compare against the committed oracle, never write it; mismatch -> .run/extract/ + diffs, exit 1) + --allow-missing-audio (explicit PARTIAL for Track-1-only dumps); disc-extract = probe (0.7 s no-op) -> disc presence -> redump SHA1/CRC32 -> extract+compare -> verify (15.7 s full); extract/extract-all call it; check-env WARN-on-absent EXE + oracle self-consistency; help rewritten; the 4 splat preset headers TRACKED (clean keeps them); .gitignore re-tightened to H1 (dumps/*.bin, ghidra/, tools/psyq/, session archive/, ghidra-ext zips, brave.exe; EXE re-include dropped); controls: no-disc exit 2, truncated disc FAILs with the oracle untouched, regenerated tree byte-identical to the previous (1,801 files)
2026-09-06 19:02:34 -06:00
2026-06-15 17:15:31 -06:00
2026-06-13 19:47:42 -06:00
2026-06-14 03:56:07 -06:00
2026-09-06 20:32:35 -06:00
2026-09-06 23:28:39 -06:00
2026-06-14 03:56:07 -06:00
2026-06-14 03:56:07 -06:00
2026-07-28 14:53:47 -06:00
tools(phase-33): E5 — the permuter upstream PR branch (reloc-masked-scorer: src/reloc_scorer.py RelocMaskedScorer as a Scorer subclass, --score-mode {mnemonic,reloc-masked} + score_mode setting, -J refusal, docs, test/test_reloc_scorer.py 10/10 on an embedded gcc-2.7.2 listing; black clean, mypy at upstream's baseline; the real permuter: a swapped-operand base 4 -> 0 in 256 iterations where the default scorer read 3,585) tracked as tools/permuter/upstream/0001-reloc-masked-scorer.patch (git am clean onto upstream main 41bd0bfc); docs/permuter-ils.md (why the stock scorer floats, the scorer + PR, the symbol_regex issue text for PR-2, the ILS warm-restart recipe and its five guards); SETUP row + P33 E5 section; doc_links default; log + checkpoint (NEXT = E6); Drew pushes the branch to his fork and opens the PR + issue
2026-09-07 11:29:35 -06:00
2026-09-07 01:41:08 -06:00
2026-08-13 17:44:20 -06:00
2026-09-02 01:29:59 -06:00
2026-09-07 02:51:02 -06:00
2026-06-29 12:52:39 -06:00
2026-09-05 09:36:43 -06:00
2026-09-05 10:11:43 -06:00
2026-09-04 19:50:01 -06:00
docs(phase-32): T4c harvest + checkpoint — the frontier is EMPTY (census 0 stubs / 0 ins); cookbook §501-Q (the combine self-update ghost slot) + §501-R (a hoisted invariant read three times: inline temps merged by combine_movables, u16 as a cse firewall, the allocation order IS the callee-saved bank; every pin came off), accelerators (15)(16), decision-log P32 S85 T4c, tools/cc1_dumps_tu.sh + tools/alloc_table.py promoted (+ SETUP rows, cc1_dumps.sh -dL), wave_exclude 0 entries, backlog 1 legacy row, .run/P32/t4e (56 variants, 18+8 reproducers, NOTES, banks, slates); 🛑 checkpoint refreshed as the T5 seed (the fleet R22 + report chain runs in the background — its logs are recorded by the next session)
2026-09-06 16:13:19 -06:00
2026-09-03 14:20:44 -06:00
2026-08-23 00:12:07 -06:00
2026-08-23 12:59:59 -06:00
2026-08-26 01:14:36 -06:00
2026-09-02 05:38:28 -06:00
2026-09-01 14:09:38 -06:00
2026-08-14 18:06:46 -06:00
2026-09-06 23:28:39 -06:00
2026-09-06 18:55:21 -06:00
2026-09-06 23:28:39 -06:00
2026-09-06 20:58:29 -06:00
2026-07-29 00:42:40 -06:00
2026-09-06 20:50:11 -06:00
2026-09-06 19:06:03 -06:00
2026-06-19 10:05:58 -06:00
2026-06-21 13:12:04 -06:00
2026-06-18 23:15:31 -06:00
2026-06-21 13:06:34 -06:00
2026-07-28 19:34:00 -06:00
feat(phase-33): A2 reporting instruments — make sig-main rewritten (tools/main_seed_ends.py: main's game-code boundaries DERIVED from the link map + objects, tiling asserted; 809 fns / 45,150 ins), progress.py weighs main by the build-derived sig and EXITS with no sig (R32), the digest's oracle clause derived live (0 phantom / 0 truncated / 0 pad-tail), backlog.linked_closed retires the LINKED-range legacy row (0 open), dup_report on the derived sig; CORRECTED main denominator 45,150 (Ghidra's flow boundaries left 3,628 words of game code unowned) — fleet instr 13,492,113 / distinct 5,820,205, all 100%; make report BINARY=main EXIT=0, audit-digest OK; SETUP §6.8 + P33 A2 rows (R21)
2026-09-06 18:46:52 -06:00
2026-09-06 23:28:39 -06:00
2026-08-16 17:21:10 -06:00
2026-07-26 23:08:07 -06:00
2026-09-03 19:16:51 -06:00
2026-09-06 19:14:11 -06:00
2026-07-23 19:54:19 -06:00
2026-07-14 09:22:31 -06:00
2026-07-23 11:43:28 -06:00
2026-08-26 20:19:41 -06:00
2026-08-14 23:44:03 -06:00
2026-08-07 18:57:10 -06:00
2026-07-22 15:24:59 -06:00
2026-09-06 23:28:39 -06:00
2026-06-17 00:30:45 -06:00
2026-06-20 17:12:00 -06:00
2026-07-14 19:59:56 -06:00
2026-08-05 11:05:35 -06:00
2026-09-03 18:49:56 -06:00
docs(phase-32): T4c harvest + checkpoint — the frontier is EMPTY (census 0 stubs / 0 ins); cookbook §501-Q (the combine self-update ghost slot) + §501-R (a hoisted invariant read three times: inline temps merged by combine_movables, u16 as a cse firewall, the allocation order IS the callee-saved bank; every pin came off), accelerators (15)(16), decision-log P32 S85 T4c, tools/cc1_dumps_tu.sh + tools/alloc_table.py promoted (+ SETUP rows, cc1_dumps.sh -dL), wave_exclude 0 entries, backlog 1 legacy row, .run/P32/t4e (56 variants, 18+8 reproducers, NOTES, banks, slates); 🛑 checkpoint refreshed as the T5 seed (the fleet R22 + report chain runs in the background — its logs are recorded by the next session)
2026-09-06 16:13:19 -06:00
docs(phase-32): T4c harvest + checkpoint — the frontier is EMPTY (census 0 stubs / 0 ins); cookbook §501-Q (the combine self-update ghost slot) + §501-R (a hoisted invariant read three times: inline temps merged by combine_movables, u16 as a cse firewall, the allocation order IS the callee-saved bank; every pin came off), accelerators (15)(16), decision-log P32 S85 T4c, tools/cc1_dumps_tu.sh + tools/alloc_table.py promoted (+ SETUP rows, cc1_dumps.sh -dL), wave_exclude 0 entries, backlog 1 legacy row, .run/P32/t4e (56 variants, 18+8 reproducers, NOTES, banks, slates); 🛑 checkpoint refreshed as the T5 seed (the fleet R22 + report chain runs in the background — its logs are recorded by the next session)
2026-09-06 16:13:19 -06:00
2026-09-01 20:10:51 -06:00
2026-08-07 20:36:04 -06:00
2026-09-03 20:08:27 -06:00
2026-09-06 20:50:11 -06:00
2026-08-10 16:01:49 -06:00
2026-08-24 13:36:58 -06:00
2026-09-03 21:58:17 -06:00
2026-09-06 23:28:39 -06:00
2026-08-18 15:44:55 -06:00
2026-06-14 14:47:01 -06:00
2026-08-10 10:43:44 -06:00
2026-07-14 02:50:28 -06:00
2026-09-02 22:15:20 -06:00
2026-07-24 14:25:28 -06:00
2026-08-26 15:41:20 -06:00
2026-07-16 12:07:37 -06:00
2026-07-15 18:20:55 -06:00
2026-08-06 09:51:39 -06:00
2026-08-25 00:49:24 -06:00
docs(phase-33): G1 — docs/gen3-handoff.md: where Gen2 ends, the owner's next intent (casts -> structs, pins off, names), the starter census DERIVED from the tree with its commands (143 raw address casts, 61,898 D_ symbols, 16,335 func_ names — the plan's numbers reproduced — plus 44,243 register pins, 1,258 Sony tiles, 1,083 symbol-file entries, 1,232 struct defs, 2,220 dedup groups), the one invariant (every edit byte-gated; shared bodies change every member; types are comprehension not bytes), the inherited levers, shiftability honestly scoped, the parked Gen3 ideas, governance for a new generation; SETUP row + P33 G1 section; doc_links default; log + checkpoint (34 of 41: everything Claude can do before the flip is done — NEXT = the probe-gated chain on Drew's side, then C11, then G2); G1 pulled ahead of the plan's C11 -> G1 order (recorded)
2026-09-07 11:35:50 -06:00
2026-09-03 15:02:50 -06:00
2026-09-03 14:47:46 -06:00
feat(phase-33): A2 reporting instruments — make sig-main rewritten (tools/main_seed_ends.py: main's game-code boundaries DERIVED from the link map + objects, tiling asserted; 809 fns / 45,150 ins), progress.py weighs main by the build-derived sig and EXITS with no sig (R32), the digest's oracle clause derived live (0 phantom / 0 truncated / 0 pad-tail), backlog.linked_closed retires the LINKED-range legacy row (0 open), dup_report on the derived sig; CORRECTED main denominator 45,150 (Ghidra's flow boundaries left 3,628 words of game code unowned) — fleet instr 13,492,113 / distinct 5,820,205, all 100%; make report BINARY=main EXIT=0, audit-digest OK; SETUP §6.8 + P33 A2 rows (R21)
2026-09-06 18:46:52 -06:00
2026-06-29 16:49:11 -06:00
2026-09-04 17:56:31 -06:00
2026-07-15 18:20:55 -06:00
2026-06-30 01:46:54 -06:00
2026-08-14 19:54:57 -06:00
2026-08-14 19:59:21 -06:00
2026-09-06 18:55:21 -06:00
2026-07-14 09:40:38 -06:00
2026-09-06 23:28:39 -06:00
2026-08-31 14:24:03 -06:00
2026-09-06 19:19:06 -06:00
2026-08-07 22:09:05 -06:00
2026-09-01 17:36:57 -06:00
2026-08-27 12:19:36 -06:00
2026-07-23 12:42:43 -06:00
2026-08-24 23:19:47 -06:00
2026-06-30 01:46:54 -06:00
2026-08-16 21:07:03 -06:00
2026-09-07 01:01:28 -06:00
2026-09-04 17:56:31 -06:00
2026-08-18 11:08:29 -06:00
2026-08-24 19:08:47 -06:00
2026-09-03 13:00:16 -06:00
2026-09-06 23:28:39 -06:00
2026-09-06 23:28:39 -06:00
2026-09-02 00:39:18 -06:00
2026-08-31 13:48:56 -06:00
2026-09-01 17:37:49 -06:00
docs(phase-33): E3 — docs/gcc-2.7.2-map/README.md (the five files by pass group, the condensed §31 triage table, the byte-proof method, the provenance legend: vanilla 2.7.2 subset from the GNU tarball sha256 7cd8bce5… vs pmret/gcc-papermario = gcc 2.8.1, the +611-line drift caveat, the S23 audit 119/40/7/4) + tools/gccmap_cites.py: every file.c:NNN cite in the map tagged [2.7.2]/[2.8.1 pm]/[repo] from the trees (quoted snippets → function extents → nearest occurrence → the author's cues → cite_overrides.tsv, 20 rows with reasons → a tie is a valid 2.7.2 line; a contradiction leaves [?]); 135 cites: 79/55/1, --verify 0 disagreements, --controls 6/6, idempotent; three tagger defects caught by its own controls before any tag landed (window span pairing, code fences, self-read cues); --check (textual) in tools-health + CI audits; doc_links default; SETUP row + P33 E3 section; log + checkpoint (NEXT = E4); 8 orphaned 49h permuter workers stopped
2026-09-07 02:32:57 -06:00
2026-06-19 10:05:58 -06:00
2026-07-14 00:08:59 -06:00
2026-06-15 20:55:28 -06:00
2026-09-06 20:32:35 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 20:32:35 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 19:31:34 -06:00
2026-09-06 20:32:35 -06:00
2026-09-06 20:32:35 -06:00
2026-09-06 11:44:40 -06:00
2026-07-02 16:56:56 -06:00
2026-07-01 21:03:08 -06:00
2026-07-31 12:26:03 -06:00
2026-09-04 23:28:59 -06:00
2026-08-23 12:59:59 -06:00
2026-07-01 23:13:29 -06:00
2026-06-25 13:09:02 -06:00
2026-08-25 15:00:31 -06:00
2026-08-07 22:09:05 -06:00
2026-06-30 11:15:11 -06:00
2026-08-26 14:04:54 -06:00
2026-09-04 23:28:59 -06:00
2026-09-02 12:02:23 -06:00
2026-09-04 23:24:02 -06:00
2026-09-02 17:15:28 -06:00
2026-09-05 11:11:03 -06:00
2026-09-02 18:11:48 -06:00
2026-08-24 12:31:14 -06:00
2026-09-06 23:28:39 -06:00
2026-09-02 23:34:01 -06:00
2026-08-31 18:59:50 -06:00
2026-09-06 23:28:39 -06:00
2026-09-02 19:34:09 -06:00
2026-08-14 19:54:57 -06:00
2026-08-14 19:54:57 -06:00
2026-07-23 19:54:19 -06:00
2026-09-04 15:57:06 -06:00
2026-06-30 15:32:56 -06:00
2026-08-10 16:01:49 -06:00
2026-09-02 23:05:27 -06:00
2026-09-06 23:28:39 -06:00
2026-08-26 15:02:15 -06:00
feat(phase-33): A2 reporting instruments — make sig-main rewritten (tools/main_seed_ends.py: main's game-code boundaries DERIVED from the link map + objects, tiling asserted; 809 fns / 45,150 ins), progress.py weighs main by the build-derived sig and EXITS with no sig (R32), the digest's oracle clause derived live (0 phantom / 0 truncated / 0 pad-tail), backlog.linked_closed retires the LINKED-range legacy row (0 open), dup_report on the derived sig; CORRECTED main denominator 45,150 (Ghidra's flow boundaries left 3,628 words of game code unowned) — fleet instr 13,492,113 / distinct 5,820,205, all 100%; make report BINARY=main EXIT=0, audit-digest OK; SETUP §6.8 + P33 A2 rows (R21)
2026-09-06 18:46:52 -06:00
2026-09-04 17:56:31 -06:00
2026-09-04 17:19:29 -06:00
2026-09-04 17:19:29 -06:00
2026-08-29 12:56:20 -06:00
2026-07-02 23:10:54 -06:00
2026-09-03 14:17:53 -06:00
2026-06-14 03:19:23 -06:00
2026-09-07 01:16:08 -06:00
2026-08-26 15:48:50 -06:00
2026-08-31 22:08:34 -06:00
2026-08-06 12:36:49 -06:00
2026-08-06 10:59:03 -06:00
2026-07-18 20:30:43 -06:00
2026-08-31 16:50:09 -06:00
2026-08-31 01:46:16 -06:00
2026-09-03 22:20:57 -06:00
2026-09-07 01:01:28 -06:00
2026-09-03 14:17:53 -06:00
2026-06-22 21:22:35 -06:00
2026-09-02 19:22:16 -06:00
2026-09-06 23:28:39 -06:00
2026-06-18 23:40:17 -06:00
2026-06-18 23:15:31 -06:00
2026-09-04 20:59:35 -06:00
2026-08-26 14:29:35 -06:00
2026-09-06 23:28:39 -06:00
2026-09-04 23:52:58 -06:00
2026-09-04 20:59:35 -06:00
2026-09-03 21:09:59 -06:00
2026-07-21 15:05:56 -06:00
2026-08-14 19:42:55 -06:00
2026-08-06 10:57:17 -06:00
2026-08-18 15:32:32 -06:00
2026-09-07 01:01:28 -06:00
2026-09-04 17:19:29 -06:00
2026-09-04 17:19:29 -06:00
2026-06-14 21:24:10 -06:00
2026-09-06 19:19:06 -06:00
2026-09-03 22:35:12 -06:00
2026-09-04 17:19:29 -06:00
2026-06-14 21:24:10 -06:00
2026-09-06 19:19:06 -06:00
2026-06-15 21:00:36 -06:00
2026-09-04 17:19:29 -06:00
2026-09-04 17:19:29 -06:00
2026-08-31 18:59:50 -06:00
2026-06-19 13:03:14 -06:00
2026-09-07 00:53:58 -06:00
2026-09-02 13:48:00 -06:00
2026-09-02 20:30:22 -06:00
2026-08-11 21:12:44 -06:00
2026-06-26 03:06:54 -06:00
2026-09-01 11:03:06 -06:00
2026-08-24 21:33:32 -06:00
2026-09-03 21:05:50 -06:00
2026-08-24 22:29:29 -06:00
2026-07-27 00:06:01 -06:00
2026-09-01 20:32:12 -06:00
2026-07-28 19:34:00 -06:00
2026-09-01 11:03:06 -06:00
2026-08-31 22:24:56 -06:00
2026-09-02 00:39:18 -06:00
2026-09-06 23:28:39 -06:00
2026-08-31 14:24:03 -06:00
2026-09-03 14:25:26 -06:00
2026-08-24 22:22:12 -06:00
2026-08-26 00:29:05 -06:00
2026-08-16 18:11:32 -06:00
2026-08-11 19:07:07 -06:00
2026-08-31 01:46:16 -06:00
2026-07-28 20:15:11 -06:00
2026-09-01 13:06:27 -06:00
2026-06-30 01:46:54 -06:00
2026-08-07 18:57:10 -06:00
2026-09-03 21:58:17 -06:00
2026-07-14 15:39:07 -06:00
2026-09-05 00:08:44 -06:00
2026-09-02 19:22:16 -06:00
2026-08-31 01:46:16 -06:00
2026-08-26 14:04:54 -06:00
2026-07-28 13:20:27 -06:00
2026-08-25 10:43:10 -06:00
2026-07-24 21:30:08 -06:00
2026-09-03 20:38:59 -06:00
2026-08-27 12:19:36 -06:00
2026-08-31 13:48:56 -06:00
2026-08-29 15:22:14 -06:00
2026-08-27 10:25:01 -06:00
2026-07-10 00:02:55 -06:00
2026-08-24 10:42:11 -06:00
2026-08-24 12:43:40 -06:00
2026-08-07 18:50:29 -06:00
2026-07-21 15:05:56 -06:00
2026-09-07 01:10:48 -06:00
2026-06-29 20:07:48 -06:00
2026-09-05 10:11:43 -06:00
2026-07-30 22:00:32 -06:00
2026-08-31 23:53:50 -06:00
2026-09-01 14:50:26 -06:00
2026-08-29 19:14:02 -06:00
2026-07-23 20:51:42 -06:00
2026-08-23 12:59:59 -06:00
2026-09-03 12:05:37 -06:00
2026-09-03 12:05:37 -06:00
2026-09-03 15:02:50 -06:00
2026-09-01 14:50:26 -06:00
2026-09-06 23:30:13 -06:00
2026-07-28 13:20:27 -06:00
2026-09-02 20:30:22 -06:00
2026-08-31 19:59:27 -06:00
2026-06-19 12:13:38 -06:00
2026-08-14 19:59:21 -06:00
2026-08-31 23:53:50 -06:00
2026-08-26 20:19:41 -06:00
2026-08-26 19:35:54 -06:00
2026-08-18 15:25:49 -06:00
2026-07-14 09:22:31 -06:00
2026-09-02 00:19:59 -06:00
docs(phase-33): F3 the wiki + how-to-AI-decomp, authored in-repo — docs/wiki/ (Home, Build from your own disc, Toolchain setup, Repository layout, The matching workflow, The dedup engine, Overlays and modules, Ghidra rebuild from text, Verification and progress, Contributing and the no-ROM policy, How-to-AI-decomp index, _Sidebar) + docs/how-to-ai-decomp/ chapters 00–12 (governance, byte gate, bootstrap order, oracles and instruments, cards/lanes/waves, knowledge base, compiler source, models and budgets, economics, integration and propagation, publishing, failure museum); tools/wiki_render.py (link rewrite to GitHub-wiki page names, dead link = error, 12-case selftest) + tools/wiki_sync.sh (render → clone → replace → diff; --push is Drew's, R6; dry-run works before the wiki repo exists); doc_links checks both directories by default (DEFAULT_GLOBS); pending list EMPTY, --strict PASS: 40 documents / 290 links / 0 broken; 25 pages rendered, 264 links rewritten
2026-09-07 01:57:24 -06:00
docs(phase-33): F3 the wiki + how-to-AI-decomp, authored in-repo — docs/wiki/ (Home, Build from your own disc, Toolchain setup, Repository layout, The matching workflow, The dedup engine, Overlays and modules, Ghidra rebuild from text, Verification and progress, Contributing and the no-ROM policy, How-to-AI-decomp index, _Sidebar) + docs/how-to-ai-decomp/ chapters 00–12 (governance, byte gate, bootstrap order, oracles and instruments, cards/lanes/waves, knowledge base, compiler source, models and budgets, economics, integration and propagation, publishing, failure museum); tools/wiki_render.py (link rewrite to GitHub-wiki page names, dead link = error, 12-case selftest) + tools/wiki_sync.sh (render → clone → replace → diff; --push is Drew's, R6; dry-run works before the wiki repo exists); doc_links checks both directories by default (DEFAULT_GLOBS); pending list EMPTY, --strict PASS: 40 documents / 290 links / 0 broken; 25 pages rendered, 264 links rewritten
2026-09-07 01:57:24 -06:00
2026-09-01 18:59:04 -06:00
2026-07-16 02:01:15 -06:00