mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-27 14:02:04 -04:00
1ab9905368
- ROOT CAUSE (R14 — the session-7 diagnosis was half right): the isolated region builds [ OK ] WITHOUT the body, so §8b isolation was never implicated. `family_remap.gather_externs` prepends carried decls at FILE scope; D_801812A4 is a fn-ptr dispatch table the sibling declares FOUR incompatible ways at BLOCK scope inside its own later functions, so the carried file-scope decl ESTABLISHES A GLOBAL THE TU NEVER HAD and every later block-scope extern must now agree with it. Byte-proven asymmetry: BLOCK(int)->BLOCK(struct*)->FILE(void*) builds; FILE(void*)->BLOCK(int) errors. It was the ONLY hard error in the build — all 27 carried function externs were fine raw. - THE FIX (demote, don't reconcile): tools/scope_data_externs.py emits a carried D_ extern at BLOCK scope inside the function body when the TU has no file-scope decl of it above the insertion point. Byte-neutral (an extern emits no code; type + access opcodes unchanged) and never worse than raw, so it needs no oracle, no type comparator, no fn-ptr parser. Restores fidelity — the original declares these symbols at block scope in exactly this way. Wired into jtbl_family_bank as the `scoped` stage: raw -> scoped -> recovered -> reconciled (scoped is the base for the later stages). - reconcile_decls is the WRONG instrument for this class, twice: its oracle answers "what does the FLEET call this symbol" when the question is "what can THIS TU see", and its DATA_DECL_LINE_RE cannot parse `extern void (*D_x[])(void *);` — silently skipping the very symbols that were failing (the phase's third silent-skip bug, after find_site braces + overlay_files splits). - R17 TRIAGE RULE, first real test, held: `conflicting types` = the compiler REFUSED TO COMPILE = a C front-end diagnostic = our Python. Reading cse.c/global.c would have taught nothing. - RESULT: func_8015AE2C (562 ins, reach 134) swept 133/133 siblings, 0 failures. R22 clean-fleet 136/136 BYTE-IDENTICAL (534 changed src files); dedup-check 1813 validated / 0 failed; 0 NON_MATCHING (G4). instr-weighted 63.0 -> 63.6%; distinct-code 39.1 -> 40.5% (+256 unique fns / +79,957 ins) — one core, ~0 agent tokens. - knowledge captured during the producing session (R30/R31/R21): cookbook §8d, decision-log 2026-07-13 session 8, SETUP tool-inventory row; CURRENT_PHASE session-8 checkpoint.
155 lines
8.6 KiB
Markdown
155 lines
8.6 KiB
Markdown
# BFM FLEET matching progress (generated by tools/progress.py --fleet — authoritative)
|
||
# 136 binaries: main + resident + 134 location overlays. DETERMINISTIC,
|
||
# source-derived (committed src/*.c + config/dedup.us.yaml). Live byte gate: `make check-all`;
|
||
# cross-binary collapsible-byte leverage: docs/duplicates.cross.md.
|
||
|
||
# THREE progress metrics (all matter — see the labels):
|
||
FLEET fn-count byte-ident: 283062 / 343904 = 82.31% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
|
||
FLEET instr-weighted : 8079400 / 12707182 = 63.6% (shipped .text across resident+134 overlays; the decomp.dev-DISPLAY number)
|
||
FLEET distinct-code(uniq): 2191904 / 5410077 = 40.5% (50954/84996 unique fns; the DISTINCT-RE number; main EXE not sig'd)
|
||
|
||
FLEET REAL substantive : 281533 (of which dedup-shared 223275 via 1813 groups / 223725 instances)
|
||
FLEET LINKED PsyQ objs : 959
|
||
FLEET NON_MATCHING : 7 (0 in any default build — G4)
|
||
FLEET INCLUDE_ASM stubs : 60835
|
||
FLEET matchable : 343904
|
||
|
||
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
|
||
|---|---:|---:|---:|---:|---:|---:|
|
||
| main | 54 | 2 | 959 | 1055 | 2096 | 50.3% |
|
||
| resident | 123 | 0 | 0 | 125 | 146 | 85.6% |
|
||
| ov_SC01_000 | 2073 | 1669 | 0 | 2073 | 2404 | 86.2% |
|
||
| ov_SC01_001 | 2078 | 1669 | 0 | 2080 | 2468 | 84.3% |
|
||
| ov_SC01_004 | 2070 | 1660 | 0 | 2071 | 2415 | 85.8% |
|
||
| ov_SC01_005 | 2096 | 1682 | 0 | 2096 | 2505 | 83.7% |
|
||
| ov_SC01_006 | 2096 | 1682 | 0 | 2096 | 2505 | 83.7% |
|
||
| ov_SC01_008 | 2069 | 1660 | 0 | 2071 | 2427 | 85.3% |
|
||
| ov_SC01_009 | 2090 | 1661 | 0 | 2091 | 2509 | 83.3% |
|
||
| ov_SC01_074 | 2074 | 1661 | 0 | 2076 | 2426 | 85.6% |
|
||
| ov_SC01_077 | 2311 | 1624 | 0 | 2313 | 2583 | 89.5% |
|
||
| ov_SC01_080 | 2106 | 1664 | 0 | 2106 | 2514 | 83.8% |
|
||
| ov_SC01_084 | 2113 | 1664 | 0 | 2118 | 2580 | 82.1% |
|
||
| ov_SC02_000 | 2159 | 1699 | 0 | 2159 | 2685 | 80.4% |
|
||
| ov_SC02_003 | 2159 | 1699 | 0 | 2159 | 2685 | 80.4% |
|
||
| ov_SC02_004 | 2075 | 1664 | 0 | 2075 | 2402 | 86.4% |
|
||
| ov_SC02_005 | 2176 | 1660 | 0 | 2186 | 2929 | 74.6% |
|
||
| ov_SC02_011 | 2181 | 1667 | 0 | 2192 | 2895 | 75.7% |
|
||
| ov_SC02_015 | 2080 | 1666 | 0 | 2080 | 2415 | 86.1% |
|
||
| ov_SC02_016 | 2105 | 1666 | 0 | 2108 | 2547 | 82.8% |
|
||
| ov_SC02_017 | 2148 | 1666 | 0 | 2156 | 2734 | 78.9% |
|
||
| ov_SC02_021 | 2086 | 1666 | 0 | 2086 | 2438 | 85.6% |
|
||
| ov_SC02_026 | 2095 | 1664 | 0 | 2101 | 2574 | 81.6% |
|
||
| ov_SC02_027 | 2120 | 1664 | 0 | 2129 | 2694 | 79.0% |
|
||
| ov_SC02_028 | 2121 | 1664 | 0 | 2131 | 2703 | 78.8% |
|
||
| ov_SC02_031 | 2109 | 1665 | 0 | 2114 | 2564 | 82.4% |
|
||
| ov_SC02_035 | 2086 | 1664 | 0 | 2089 | 2522 | 82.8% |
|
||
| ov_SC02_039 | 2070 | 1664 | 0 | 2070 | 2417 | 85.6% |
|
||
| ov_SC02_041 | 2097 | 1664 | 0 | 2100 | 2562 | 82.0% |
|
||
| ov_SC03_001 | 2202 | 1665 | 0 | 2219 | 2871 | 77.3% |
|
||
| ov_SC03_002 | 2132 | 1669 | 0 | 2147 | 2633 | 81.5% |
|
||
| ov_SC03_003 | 2075 | 1664 | 0 | 2076 | 2424 | 85.6% |
|
||
| ov_SC03_006 | 2142 | 1670 | 0 | 2151 | 2769 | 77.7% |
|
||
| ov_SC03_007 | 2122 | 1664 | 0 | 2126 | 2625 | 81.0% |
|
||
| ov_SC03_010 | 2085 | 1664 | 0 | 2085 | 2471 | 84.4% |
|
||
| ov_SC03_011 | 2090 | 1664 | 0 | 2096 | 2529 | 82.9% |
|
||
| ov_SC03_012 | 2069 | 1664 | 0 | 2070 | 2407 | 86.0% |
|
||
| ov_SC03_013 | 2086 | 1664 | 0 | 2086 | 2494 | 83.6% |
|
||
| ov_SC03_014 | 2134 | 1689 | 0 | 2134 | 2687 | 79.4% |
|
||
| ov_SC03_015 | 2137 | 1689 | 0 | 2137 | 2687 | 79.5% |
|
||
| ov_SC03_023 | 2075 | 1664 | 0 | 2076 | 2436 | 85.2% |
|
||
| ov_SC03_024 | 2129 | 1669 | 0 | 2136 | 2643 | 80.8% |
|
||
| ov_SC03_028 | 2112 | 1664 | 0 | 2116 | 2666 | 79.4% |
|
||
| ov_SC03_029 | 2113 | 1666 | 0 | 2123 | 2646 | 80.2% |
|
||
| ov_SC03_030 | 2092 | 1668 | 0 | 2094 | 2497 | 83.9% |
|
||
| ov_SC03_031 | 2086 | 1664 | 0 | 2090 | 2516 | 83.1% |
|
||
| ov_SC03_089 | 2103 | 1664 | 0 | 2110 | 2583 | 81.7% |
|
||
| ov_SC03_090 | 2105 | 1664 | 0 | 2113 | 2627 | 80.4% |
|
||
| ov_SC03_091 | 2106 | 1664 | 0 | 2114 | 2642 | 80.0% |
|
||
| ov_SC03_092 | 2112 | 1664 | 0 | 2124 | 2589 | 82.0% |
|
||
| ov_SC03_093 | 2093 | 1664 | 0 | 2097 | 2565 | 81.8% |
|
||
| ov_SC03_094 | 2088 | 1664 | 0 | 2094 | 2578 | 81.2% |
|
||
| ov_SC03_095 | 2079 | 1664 | 0 | 2082 | 2476 | 84.1% |
|
||
| ov_SC03_096 | 2079 | 1664 | 0 | 2082 | 2467 | 84.4% |
|
||
| ov_SC03_097 | 2102 | 1664 | 0 | 2109 | 2605 | 81.0% |
|
||
| ov_SC03_098 | 2086 | 1664 | 0 | 2089 | 2543 | 82.1% |
|
||
| ov_SC03_099 | 2080 | 1664 | 0 | 2083 | 2506 | 83.1% |
|
||
| ov_SC03_100 | 2087 | 1664 | 0 | 2091 | 2541 | 82.3% |
|
||
| ov_SC03_101 | 2088 | 1664 | 0 | 2092 | 2530 | 82.7% |
|
||
| ov_SC03_102 | 2083 | 1664 | 0 | 2086 | 2494 | 83.6% |
|
||
| ov_SC03_103 | 2087 | 1666 | 0 | 2090 | 2512 | 83.2% |
|
||
| ov_SC03_104 | 2106 | 1664 | 0 | 2113 | 2618 | 80.7% |
|
||
| ov_SC03_105 | 2100 | 1664 | 0 | 2107 | 2599 | 81.1% |
|
||
| ov_SC03_108 | 2072 | 1664 | 0 | 2072 | 2445 | 84.7% |
|
||
| ov_SC03_109 | 2073 | 1664 | 0 | 2075 | 2425 | 85.6% |
|
||
| ov_SC03_110 | 2078 | 1664 | 0 | 2078 | 2470 | 84.1% |
|
||
| ov_SC03_111 | 2086 | 1664 | 0 | 2089 | 2512 | 83.2% |
|
||
| ov_SC03_112 | 2084 | 1666 | 0 | 2086 | 2528 | 82.5% |
|
||
| ov_SC03_113 | 2078 | 1666 | 0 | 2081 | 2470 | 84.3% |
|
||
| ov_SC03_114 | 2068 | 1664 | 0 | 2070 | 2416 | 85.7% |
|
||
| ov_SC03_115 | 2082 | 1664 | 0 | 2084 | 2474 | 84.2% |
|
||
| ov_SC03_116 | 2076 | 1664 | 0 | 2079 | 2440 | 85.2% |
|
||
| ov_SC03_117 | 2094 | 1664 | 0 | 2100 | 2559 | 82.1% |
|
||
| ov_SC03_118 | 2137 | 1688 | 0 | 2138 | 2687 | 79.6% |
|
||
| ov_SC03_119 | 2134 | 1688 | 0 | 2135 | 2687 | 79.5% |
|
||
| ov_SC03_121 | 2079 | 1664 | 0 | 2082 | 2461 | 84.6% |
|
||
| ov_SC03_124 | 2151 | 1660 | 0 | 2171 | 2743 | 79.1% |
|
||
| ov_SC03_125 | 2114 | 1664 | 0 | 2126 | 2590 | 82.1% |
|
||
| ov_SC03_126 | 2076 | 1666 | 0 | 2076 | 2424 | 85.6% |
|
||
| ov_SC04_000 | 2093 | 1668 | 0 | 2102 | 2548 | 82.5% |
|
||
| ov_SC04_002 | 2107 | 1664 | 0 | 2111 | 2638 | 80.0% |
|
||
| ov_SC04_003 | 2085 | 1664 | 0 | 2089 | 2504 | 83.4% |
|
||
| ov_SC04_004 | 2099 | 1664 | 0 | 2101 | 2560 | 82.1% |
|
||
| ov_SC04_005 | 2100 | 1664 | 0 | 2106 | 2614 | 80.6% |
|
||
| ov_SC04_006 | 2076 | 1664 | 0 | 2078 | 2455 | 84.6% |
|
||
| ov_SC04_007 | 2095 | 1664 | 0 | 2099 | 2571 | 81.6% |
|
||
| ov_SC04_008 | 2072 | 1664 | 0 | 2072 | 2416 | 85.8% |
|
||
| ov_SC04_009 | 2080 | 1664 | 0 | 2083 | 2442 | 85.3% |
|
||
| ov_SC04_010 | 2076 | 1664 | 0 | 2077 | 2420 | 85.8% |
|
||
| ov_SC04_011 | 2126 | 1664 | 0 | 2132 | 2805 | 76.0% |
|
||
| ov_SC04_012 | 2074 | 1664 | 0 | 2075 | 2421 | 85.7% |
|
||
| ov_SC04_015 | 2134 | 1665 | 0 | 2145 | 2613 | 82.1% |
|
||
| ov_SC04_016 | 2073 | 1664 | 0 | 2075 | 2441 | 85.0% |
|
||
| ov_SC04_018 | 2180 | 1699 | 0 | 2180 | 2859 | 76.3% |
|
||
| ov_SC04_019 | 2186 | 1699 | 0 | 2186 | 2859 | 76.5% |
|
||
| ov_SC04_020 | 2103 | 1664 | 0 | 2115 | 2569 | 82.3% |
|
||
| ov_SC04_021 | 2075 | 1666 | 0 | 2075 | 2424 | 85.6% |
|
||
| ov_SC05_000 | 2079 | 1668 | 0 | 2082 | 2423 | 85.9% |
|
||
| ov_SC05_001 | 2095 | 1664 | 0 | 2100 | 2576 | 81.5% |
|
||
| ov_SC05_002 | 2078 | 1664 | 0 | 2081 | 2444 | 85.1% |
|
||
| ov_SC05_003 | 2078 | 1664 | 0 | 2079 | 2483 | 83.7% |
|
||
| ov_SC05_004 | 2076 | 1664 | 0 | 2078 | 2466 | 84.3% |
|
||
| ov_SC05_005 | 2080 | 1664 | 0 | 2081 | 2493 | 83.5% |
|
||
| ov_SC05_006 | 2074 | 1664 | 0 | 2074 | 2431 | 85.3% |
|
||
| ov_SC05_007 | 2081 | 1664 | 0 | 2086 | 2484 | 84.0% |
|
||
| ov_SC05_008 | 2100 | 1664 | 0 | 2102 | 2545 | 82.6% |
|
||
| ov_SC05_009 | 2076 | 1664 | 0 | 2080 | 2439 | 85.3% |
|
||
| ov_SC05_010 | 2100 | 1664 | 0 | 2104 | 2590 | 81.2% |
|
||
| ov_SC05_011 | 2077 | 1664 | 0 | 2078 | 2410 | 86.2% |
|
||
| ov_SC05_017 | 2176 | 1661 | 0 | 2187 | 2844 | 76.9% |
|
||
| ov_SC05_018 | 2126 | 1664 | 0 | 2139 | 2675 | 80.0% |
|
||
| ov_SC05_019 | 2075 | 1666 | 0 | 2075 | 2424 | 85.6% |
|
||
| ov_SC06_000 | 2136 | 1673 | 0 | 2139 | 2693 | 79.4% |
|
||
| ov_SC06_006 | 2084 | 1664 | 0 | 2085 | 2513 | 83.0% |
|
||
| ov_SC06_008 | 2100 | 1666 | 0 | 2106 | 2543 | 82.8% |
|
||
| ov_SC06_010 | 2087 | 1664 | 0 | 2092 | 2519 | 83.0% |
|
||
| ov_SC06_011 | 2084 | 1664 | 0 | 2088 | 2470 | 84.5% |
|
||
| ov_SC06_013 | 2077 | 1664 | 0 | 2078 | 2426 | 85.7% |
|
||
| ov_SC06_014 | 2081 | 1664 | 0 | 2083 | 2454 | 84.9% |
|
||
| ov_SC06_015 | 2078 | 1664 | 0 | 2078 | 2422 | 85.8% |
|
||
| ov_SC06_016 | 2096 | 1664 | 0 | 2098 | 2551 | 82.2% |
|
||
| ov_SC06_018 | 2094 | 1667 | 0 | 2101 | 2667 | 78.8% |
|
||
| ov_SC06_020 | 2084 | 1666 | 0 | 2085 | 2520 | 82.7% |
|
||
| ov_SC06_022 | 2100 | 1664 | 0 | 2108 | 2644 | 79.7% |
|
||
| ov_SC06_024 | 2106 | 1664 | 0 | 2112 | 2669 | 79.1% |
|
||
| ov_SC06_025 | 2093 | 1664 | 0 | 2098 | 2574 | 81.5% |
|
||
| ov_SC06_027 | 2068 | 1664 | 0 | 2069 | 2409 | 85.9% |
|
||
| ov_SC06_029 | 2121 | 1664 | 0 | 2133 | 2664 | 80.1% |
|
||
| ov_SC06_030 | 2079 | 1664 | 0 | 2079 | 2458 | 84.6% |
|
||
| ov_SC06_032 | 2090 | 1665 | 0 | 2097 | 2660 | 78.8% |
|
||
| ov_SC06_033 | 2094 | 1665 | 0 | 2101 | 2633 | 79.8% |
|
||
| ov_SC07_000 | 2093 | 1668 | 0 | 2095 | 2523 | 83.0% |
|
||
| ov_SC07_001 | 2080 | 1664 | 0 | 2082 | 2456 | 84.8% |
|
||
| ov_SC07_002 | 2097 | 1664 | 0 | 2101 | 2581 | 81.4% |
|
||
| ov_SC07_008 | 2064 | 1664 | 0 | 2064 | 2387 | 86.5% |
|
||
| ov_SC07_009 | 2075 | 1664 | 0 | 2077 | 2431 | 85.4% |
|