Commit Graph

4151 Commits

Author SHA1 Message Date
Drew T 3c14ee490a src(phase-35): T5 bucket new batch 3 — registered 120 groups, 358 sites in 59 TUs replaced by the include, gated 12/12 binaries green per binary, rejected classes 0 ledgered (share_body_cycle) 2026-09-08 19:55:15 -06:00
Drew T e4b25e5f70 tools(phase-35): T5 — share_body_cycle.sh, the unattended batch cycle for bucket new (batch → exit code + gated N/N → phase-log entry → commit → clean fleet run every N batches, stops on the first red); share_body --label; dictionary row + SETUP; kit corpus 2026-09-08 19:53:09 -06:00
Drew T a9353b4122 src(phase-35): T5 bucket new batch 2 — registered 120 groups, 360 sites in 69 TUs replaced by the include, gated 9/9 binaries green per binary, rejected classes 0 ledgered 2026-09-08 19:48:06 -06:00
Drew T 9aaa08391e src(phase-35): T5 bucket new batch 1 — 120 same-address classes given one source (120 headers under src/shared/ov/, 1,482 private copies in 535 TUs replaced by the include, 120 registry groups appended), 165/165 binaries green per binary; 1 class rejected (a body relying on a file-scope extern outside its definition), ledgered 2026-09-08 19:46:25 -06:00
Drew T 29951c4fe1 build(phase-35): T5 — R22 after bucket 0: clean fleet check-all 218 passed, 0 failed of 218 in 84 s (fleet CPU 2,230 s -> 1,335 s); the re-exemplar batch record 2026-09-08 19:43:52 -06:00
Drew T a60340c6d4 src(phase-35): T5 — E_func_80168B70 re-exemplared from the majority text (share_body.py --reexemplar: header ← ov_SC01_000's copy, 7/7 includers green first, then 134 private copies → the include in 129 TUs, 141/141 binaries green, 0 rejected; the minority-header ledger row dropped); bucket 0 closed: 183 classes → 135 fully shared, 48 ledgered TU-CONFLICT (late-overlay declaration conflicts, for the types phase); SETUP paragraph (--batches, snapshot restore, the cause rule, --repair-registry, --reexemplar); kit corpus 2026-09-08 19:41:40 -06:00
Drew T 1b49048c02 phase-35: T5 step 5 decided (Max, delegated) — E_func_80168B70's header is re-exemplared from the majority text (the cast-at-call form compiles under both declaration environments); the 48 late-overlay declaration conflicts stay ledgered TU-CONFLICT for the types phase; the mis-stated TU-repair option corrected; the checkpoint headline refreshed 2026-09-08 19:33:54 -06:00
Drew T 5325fd506b src(phase-35): T5 bucket 0 run 3 — 78 private copies in 24 TUs replaced by the shared include, 87 members extended (141/141 binaries green per binary); share_body: a twin's instance queued the same (tu, line) edit twice and the second replacement swallowed the next function (7 classes rejected in the five twin primaries on that artifact; now deduped), chained file:line: warning lines never a cause; the ledger re-judged by the fixed tool: 49 rows with real diagnostics (conflicting types / too few arguments in the late overlays), E_func_80168B70 kept with its cause pending the exemplar decision; kit corpus 2026-09-08 19:31:19 -06:00
Drew T 090f8fb428 config(phase-35): T5 — the registry repaired: 378 listed-but-private members removed from 79 groups (share_body.py --repair-registry, derived from the census on (binary, vram); the 317 ledgered rejected pairs + 61 sites the S94 bisects wiped); dedup-check 2221/0, C1 256,120/256,120; census A 1,812 · B 183, same-vram backlog 1,099 -> 999 classes; the first cut's name-only match (9,269 removed, 14 groups emptied) caught by dedup-check + a known-true control and reverted before commit 2026-09-08 19:20:48 -06:00
Drew T f4163518a2 tools(phase-35): T5 — share_body.py: the failure cause is the first non-warning file:line diagnostic (gcc 2.7.2 errors carry no 'error' token — 254 of 303 rejections had read 'Error 33'), reason codes SYMBOL-NAME / GATE-REJECT / PARSE-ERROR / TU-CONFLICT derived from it and recorded with the cause in every ledger note, the bisect restores from an in-memory pre-edit snapshot (never git checkout — it wiped the previous batch's uncommitted shares), one batch per invocation by default; controls on the real red cc1.err + six synthetic logs; ledger header + kit corpus 2026-09-08 19:14:45 -06:00
Drew T aacbd71eb9 src(phase-35): T5 bucket 0 (second run, finished after S94 died — banked by S96) — 170 private copies in 8 overlays replaced by the shared include (ov_SC07_006 49, ov_SC07_007 29, ov_SC07_011 29, ov_SC07_010 28, ov_SC01_077 19, ov_SC02_037 6, ov_MAIN_012 5, ov_SC03_107 5); 141/141 binaries green per binary (make check + object A/B); 55 classes rejected in 325 (class, binary) pairs, ledgered TU-CONFLICT in config/dedup_exceptions.tsv; run_extend2.log + the batch records; phase log + checkpoint headline 2026-09-08 19:11:16 -06:00
Drew T 1259eaa83c phase-35: S95 — three rule candidates recorded for the PhaseEnd (a bank commit carries its log line + the 🛑 headline; a tool restores from its own snapshot, never git checkout; a cause extractor is negative-controlled against the compiler's real message forms) 2026-09-08 19:08:15 -06:00
Drew T ecffc38950 phase-35: S95 recovery checkpoint — T5's state reconstructed from the S94 transcript (the tool + probe commit, bucket 0's first pass and the second run that finished after the session died), the dirty tree inventoried as run 2's bank (170 shares in 8 overlays, uncommitted), three share_body defects named (gcc-2.7.2 error lines unmatched → 'Error 33', the git-checkout bisect wiping the previous batch's shares, one ledger reason for four causes), the registry-ahead-of-source count (317 of 325 rejected pairs still listed), the E_func_80168B70 cause (too many arguments to func_80146C3C), the T6 hit list; the 🛑 block rewritten with the resume sequence 2026-09-08 19:07:38 -06:00
Drew T 571374b979 src(phase-35): T5 bucket 0 (first pass) — 788 members extended into their registry groups, private copies replaced by the include where the per-binary gate held (141/141 and 146/146 binaries green after bisect); share_body: the bisect now re-applies the kept classes in one bottom-up pass per TU (its per-class sequential re-application had shifted later classes' lines and rejected 125 of 183 classes on its own artifacts), the failure detail from error lines only, rejected extend classes ledgered, groups extended only with members that passed 2026-09-08 18:30:29 -06:00
Drew T 0bccef9016 tools(phase-35): T5 — share_body.py, the permanent share tool for the include-at-site form (exemplar by majority text, header written once, private copies → include at their position, per-binary gate with object comparison and bisect, registry appended by text, exception ledger); the R37 probe: func_801681FC shared by ov_SC04_008 + ov_SC05_009 (2/2 binaries green, group S_func_801681FC); the census exports per-instance line ranges; bind_alias_header factored out of macro_to_header; SETUP + dictionary rows; kit corpus 2026-09-08 18:12:41 -06:00
Drew T a8457663fc src(phase-35): T4 finalize — engine_core.h, ov_setters.h and clearTbl40.h deleted; the legacy sites converted (clearTbl40 as the SHARED_FN parameterized control in src/800_c.c; the three SC01_005 accessors as headers), the whale header moved under ov/ with every -O0 includer rewritten, 7 alias-form bodies given their own __asm__ binding, the registry's source/func lines text-edited by id, three non-shared headers rewritten; --verify OK (0 macro sites, no macro header); R22 clean fleet check-all: 218 passed, 0 failed of 218 in 145 s; dedup-check 2220/0; audit-binaries OK; the census 362,389/362,389 with 0 macro sites; SETUP + dictionary rows; kit corpus 2026-09-08 18:06:04 -06:00
Drew T c53a9e1a91 src(phase-35): T4 — every DEFINE_func_X() macro body becomes a plain-C header under src/shared/<space>/ included at its site (sotn's shape): 2,215 headers (ov/ 2,204, three module slots 12; 86 with the stable h_exact suffix), 246,347 sites in 3,818 TUs, the engine_prelude.h include in place of engine_core.h, 1,300 dead macros dropped; L0/L1: 213 binaries BYTE-IDENTICAL, 4,121/4,121 objects byte-identical before and after (tools/macro_to_header.py --apply, .run/P35/convert/ledger.txt); engine_core.h and the legacy headers still present until --finalize 2026-09-08 17:51:39 -06:00
Drew T 0e38b51a37 build(phase-35): T3 close — the five twin pairs collapsed onto one source directory each (10 aliases, 166 files deleted); R22 clean fleet run check-all: 218 passed, 0 failed of 218 (309 s); the census after the twins: same-vram backlog 4,667 -> 1,099 classes, 3,580 classes twin-covered, S1 9,081/10,180 satisfied; rules check (P6) done; kit corpus for pads_audit 2026-09-08 17:33:42 -06:00
Drew T 6ebb3dac33 build(phase-35): T3 — ov_SC03_015 TWIN_OF ov_SC03_014 with the primary's carve: yaml, JTBL_INTERLEAVE and the per-object JTBL_PADS lines regenerated from ov_SC03_014 by alias substitution (the twin's retired jump-table splits with them), create_c_files: False, src/ov_SC03_015/ deleted; twin + primary BYTE-IDENTICAL; interleave_check ALIGNED + pads_audit on the twin (R60; pads_audit now reads a twin's source through the oracle); dedup-check 0 failed; audit-binaries OK 2026-09-08 17:24:42 -06:00
Drew T 2648aa5a92 build(phase-35): T3 — ov_SC04_019 TWIN_OF ov_SC04_018 with the primary's carve: yaml, JTBL_INTERLEAVE and the per-object JTBL_PADS lines regenerated from ov_SC04_018 by alias substitution (the twin's retired jump-table splits with them), create_c_files: False, src/ov_SC04_019/ deleted; twin + primary BYTE-IDENTICAL; interleave_check ALIGNED + pads_audit on the twin (R60; pads_audit now reads a twin's source through the oracle); dedup-check 0 failed; audit-binaries OK 2026-09-08 17:21:44 -06:00
Drew T e79cfcc06d build(phase-35): T3 — ov_SC03_119 TWIN_OF ov_SC03_118 and ov_SC02_003 TWIN_OF ov_SC02_000 (equal carves): the twins' source dirs deleted, create_c_files: False, both twins and both primaries BYTE-IDENTICAL, audit-binaries OK, dedup-check per twin 0 failed 2026-09-08 17:15:01 -06:00
Drew T 9b0816e74a build(phase-35): T3 probe — ov_SC01_006 is a TWIN of ov_SC01_005: one source directory per payload. Makefile twin rules (build/src/<twin>/<twin>%.o <- src/<primary>/<primary>%.c, same recipe, -O0 objects kept), overlays.mk TWIN_OF + SRC_DIR, the twin's yaml create_c_files: False, src/ov_SC01_006/ (30 files) deleted; twin + primary BYTE-IDENTICAL (56760dbe), the concurrent race test green, every consumer sees the twin through the oracle; share_census: copies = distinct sites, TWIN-COVERED reported (575 classes for the pair) 2026-09-08 17:10:00 -06:00
Drew T 24e8ff72d6 tools(phase-35): T2 close — the kit's verbatim copies of the 16 edited tools regenerated (make kit-corpus; tool_census --check OK), the chain's remaining rungs green by exit code; the regenerated timeline (33 commits today); the phase log: T2 ☑, NEXT = T3 2026-09-08 17:01:21 -06:00
Drew T 4ec752e683 docs(phase-35): T2 — the generated timeline regenerated from the committed digest (363,221) 2026-09-08 16:46:59 -06:00
Drew T 6cb056c932 tools(phase-35): T2 — the health chain learns the include-at-site and twin forms while the macro form still builds: one source-dir oracle (corpus.src_dirs/src_dir/twin_of from the Makefile), share_census.header_defs as the one reader of the include form, progress.classify counts include sites (fold keeps 255,632), overlay_src_split's include item kind + loud macro-table refusal, dedup_integrate C2a' (a header must DEFINE func), audit_binaries prelude + twin citizenship (CHECK 3b), cdecl differential not-applicable when the macro header is gone, recursive shared-header globs; the count correction 363,214 -> 363,221 (7 whale include sites never registered; ov_MAIN_012 2,401 -> 2,402) regenerated into progress.json + README 2026-09-08 16:46:55 -06:00
Drew T 8bb1d876d6 docs(phase-35): T1 — the generated tool index for share_census.py; the T1 slip named in the phase log 2026-09-08 16:26:31 -06:00
Drew T 72a77e7d3c tools(phase-35): T1 fix — the census's dictionary row is kit-ladder P10, not the project phase; kit corpus regenerated; tool_census --check OK. The previous commit claimed the corpus regenerated while kit-corpus had exited 2 and the census had refused the row — its chain read an echo's status, not the check's (R97); this one chains on the checks' own exit codes 2026-09-08 16:26:00 -06:00
Drew T 1dbffee87d tools(phase-35): T1 — share_census.py, the fleet census of byte-identical function classes + the S1 'one source per unique function' checker with its exception ledger; 362,389/362,389 sig instances covered, 10,180 classes (A 1,712 · B 282 · C 6,107 · D 1,861 · M 218), self-test 7/7, four controls as measured; SETUP + dictionary rows, kit corpus regenerated 2026-09-08 16:24:08 -06:00
Drew T f811833394 chore(phase-35): OPEN — Gen3's dedup phase at gate 1 (R96–R99 ratified; the plan verbatim in CURRENT_PHASE.md); the R22 baseline 218/218 from clean in 157 s; tools-health OK after the kit corpus regen + the R96–R99 coverage rows; the ov_SC06_033 include-form probe: 34/34 objects byte-identical, build 1.12 s → 0.52 s, the 137 macro-redefinition warnings gone 2026-09-08 16:03:00 -06:00
Drew T 48170fd7fa chore(phase-34): CLOSE — Gen2 EXIT: the repository public, protect-main, decomp.dev + the wiki live, the decomp.me preset requested at 100%, the outreach sent, the aftercare done (v2.0.0) 2026-09-08 14:28:32 -06:00
Drew T 577da268ea docs(phase-34): the fleet digest as regenerated by the close tools-health (the build-derived main sig's date); the gate-2 live re-check record 2026-09-08 14:18:42 -06:00
Drew T bf5a9a401a docs(phase-34): task 8 part 2 — the close tools-health OK on run 5 (5,917 lines); the doc_links and kit_coverage findings on the way, DK-81, the false-green commit named 2026-09-08 14:18:01 -06:00
Drew T 9f2aa46b52 kit(phase-34): coverage map — KIT: paths are relative to decomp-architect/ (three rows fixed); kit_coverage is green HERE (0 uncovered rules, 0 uncovered accelerators) — the previous commit's message claimed green while three rows were refused (a masked exit code) 2026-09-08 14:09:10 -06:00
Drew T 81ec819451 kit(phase-34): DK-81 (the flip day's lessons) + coverage-map dispositions for R84–R95 — kit_coverage green; the kernel range now DK-1…DK-81 2026-09-08 14:08:20 -06:00
Drew T a13d1cd9a7 docs(phase-34): two wiki citations of untracked paths (the outreach draft, the archive folder) rewritten as prose — doc_links --strict green again 2026-09-08 13:56:34 -06:00
Drew T cd768d717a tools(phase-34): cdecl --audit — create its scratch dir and refuse (never misgrade) when the gcc adjudication cannot run; the prune had removed .run/audit and every unparsed draft line read as a DEFECT 2026-09-08 13:46:38 -06:00
Drew T 4f35be0191 docs(phase-34): task 7 closed — the wiki re-synced (be8a6cc) on Drew's word; task 8 opened 2026-09-08 13:42:46 -06:00
Drew T a1d47bb002 docs(phase-34): task 7 part 2 — C11: ~9 GB of untracked campaign scratch pruned (46G→37G), public_rewrite kept to the probe inputs; DIGEST §0/§1/§4, decision-log P34 S93, accelerators, SETUP posture, direction page; README shows the generated timeline 2026-09-08 13:39:26 -06:00
Drew T 1ff6b5395b docs(phase-34): task 7 part 1 — docs/sunset/ leaves the tree (Drew: the Archive index is the record; history v1.32.1 keeps the files), tools/sunset/ stays for the index; wiki/doc sentences rewritten; checks green 2026-09-08 13:30:01 -06:00
Drew T fe45f7f016 docs(phase-34): task 6 addendum — Drew's #ai reply posted; docs/outreach/ untracked and ignored on his decision (sent notes stay local); doc_links DEFAULT, Reference-index row, SETUP rows updated; corpus regenerated 2026-09-08 13:23:18 -06:00
Drew T 19c676f474 docs(phase-34): outreach — the decomp.me #ai channel reply drafted from the record (Drew's words to edit) 2026-09-08 13:05:16 -06:00
Drew T 95c9c0d122 docs(phase-34): task 6 closed — the tools post in the decomp.me Discord; Decompedia rows for xsig (PlayStation tools) and BFM-decomp (PlayStation projects), verified 2026-09-08 13:02:49 -06:00
Drew T 6ce1a38c61 docs(phase-34): tools announcement — add the xsig v2 direction (1:1 first, then wider tiers with context) to the post draft 2026-09-08 12:54:55 -06:00
Drew T b018bb8cec docs(phase-34): task 6 addendum — xsig v2 (the whole knowledge base behind one search: 1-to-1, then the best expansion path with context) recorded in gen3-handoff §7 as a parked Gen3 idea 2026-09-08 12:48:23 -06:00
Drew T b3d72df3a5 docs(phase-34): task 6 (Claude's half) — xsig topics + homepage set and verified; the permuter fork confirmed gone; the tools post awaits Drew 2026-09-08 12:39:31 -06:00
Drew T 279f440c04 docs(phase-34): task 5 — the wiki is live: 32 pages synced to BFM-decomp.wiki (75c17d0) on Drew's one-off R6 waiver; pages verified unauthenticated, 0 dead links 2026-09-08 12:38:55 -06:00
Drew T a601c74cb9 docs(phase-34): task 4 — D3: decomp.dev registered and verified (decomp.dev/Druthulu/BFM-decomp, 100.00%/100.00%, hero image); frogress skipped this phase, pending by name 2026-09-08 12:34:54 -06:00
Drew T 559122ed17 docs(phase-34): task 3 — E2 sent: the Archipelago note as AegeusEvander/Brave-Fencer-Musashi-AP-World#1; reply handling recorded as pending 2026-09-08 12:11:25 -06:00
Drew T 9e8a055e6c docs(phase-34): task 2 — E1 done: scratch mIu4d at 100%, preset request decompme/decomp.me#2106, manual search closes ledger row 14; preset creation pending 2026-09-08 12:07:15 -06:00
Drew T c9a3d7b891 tools+docs(phase-34): task 2 part 1 — the decomp.me paste form: verbatim_target_s.py --gas (assemblable target), decompme_replica.sh steps D (the paste through decomp.me's as, 26/26) + E (the bundle), doc §5 step 2, SETUP rows, dictionary, kit corpus regenerated 2026-09-08 11:54:22 -06:00