Wave P drafted at 97% and then cost a dozen clean rebuilds to bank, and not one of those rebuilds failed on a matching problem. Banks the whole failure surface: A. The SEVEN under-reporting holes in gate_main, all the same shape (R32): the checker never read the destination TU, shared headers, a draft's own definition, lines with trailing comments, typedef aliases, the build's own error text, or file order. Law: audit a batch-integration tool for what it DOESN'T look at -- its verdicts can be correct on the inputs it reads and still be worthless, because the compiler reads more. B. Typedef handling, with the two wrong strategies that both look right: blanket STRIP (assumes the surviving definition sits above the insertion point -- src/800.c defines Rec14 at 7336 while stubs wanting it sit at 7272), blanket RENAME (breaks drafts sharing an identical typedef, because their externs stop agreeing -- my regression, three drafts at once), and the rescan loop that deletes the definition it just renamed. The survivor is body-aware + position-aware in a single pass over a snapshot. C. The remaining limit: conflict detection compares spelled type NAMES, so three drafts each defining their own Slot54 with different layouts all declare func_80032A74(Slot54*) and compare equal. Comparing struct LAYOUTS is the real fix. D. The measured cost shape -- drafting cheap and solved, integration expensive -- and therefore the next lever: a STATIC pre-gate check over the substituted text, no make at all. Plus the R39 lesson that negative controls apply to the tool you are FIXING, not just the one you ship.
12 KiB
BFM FLEET matching progress (generated by tools/progress.py --fleet — authoritative)
213 binaries: main + resident + 211 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: 351770 / 363162 = 96.86% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay) FLEET instr-weighted : 12916767 / 13523865 = 95.5% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number) FLEET distinct-code(uniq): 5296975 / 5851972 = 90.5% (81764/90929 unique fns; the DISTINCT-RE number) MAIN game-code weighted : 10029 / 79510 = 12.6% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-08-05; caveat is R34: no independent second oracle for a PS-X EXE, NOT drift) (fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 12906738 / 13444355 = 96.0%)
FLEET REAL substantive : 349600 (of which dedup-shared 254598 via 2137 groups / 254674 instances) FLEET LINKED PsyQ objs : 959 FLEET NON_MATCHING : 6 (0 in any default build — G4) FLEET INCLUDE_ASM stubs : 11386 FLEET matchable : 363162
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
|---|---|---|---|---|---|---|
| main | 252 | 2 | 959 | 1253 | 2095 | 59.8% |
| resident | 129 | 0 | 0 | 131 | 145 | 90.3% |
| md_MAIN_001 | 1 | 0 | 0 | 1 | 11 | 9.1% |
| md_MAIN_003 | 3 | 0 | 0 | 3 | 60 | 5.0% |
| md_MAIN_008 | 0 | 0 | 0 | 0 | 6 | 0.0% |
| md_MAIN_011 | 0 | 0 | 0 | 0 | 21 | 0.0% |
| md_MAIN_013 | 5 | 0 | 0 | 5 | 16 | 31.2% |
| md_MAIN_014 | 5 | 0 | 0 | 6 | 13 | 46.2% |
| md_MAIN_015 | 8 | 0 | 0 | 8 | 20 | 40.0% |
| md_MAIN_016 | 4 | 0 | 0 | 5 | 13 | 38.5% |
| md_MAIN_017 | 4 | 0 | 0 | 4 | 10 | 40.0% |
| md_MAIN_018 | 3 | 0 | 0 | 4 | 11 | 36.4% |
| md_MAIN_019 | 9 | 0 | 0 | 9 | 22 | 40.9% |
| md_MAIN_020 | 9 | 0 | 0 | 10 | 14 | 71.4% |
| md_MAIN_021 | 4 | 0 | 0 | 5 | 11 | 45.5% |
| md_MAIN_022 | 19 | 0 | 0 | 21 | 33 | 63.6% |
| md_MAIN_023 | 3 | 0 | 0 | 4 | 6 | 66.7% |
| md_MAIN_024 | 3 | 0 | 0 | 5 | 6 | 83.3% |
| md_MAIN_025 | 6 | 0 | 0 | 6 | 30 | 20.0% |
| md_MAIN_026 | 7 | 0 | 0 | 7 | 24 | 29.2% |
| md_MAIN_027 | 11 | 0 | 0 | 13 | 29 | 44.8% |
| md_MAIN_028 | 6 | 0 | 0 | 6 | 22 | 27.3% |
| md_MAIN_029 | 3 | 0 | 0 | 4 | 11 | 36.4% |
| md_MAIN_030 | 4 | 0 | 0 | 4 | 10 | 40.0% |
| md_MAIN_031 | 4 | 0 | 0 | 4 | 18 | 22.2% |
| md_MAIN_032 | 5 | 0 | 0 | 5 | 10 | 50.0% |
| md_MAIN_033 | 4 | 0 | 0 | 4 | 19 | 21.1% |
| md_MAIN_034 | 5 | 0 | 0 | 6 | 28 | 21.4% |
| md_MAIN_035 | 11 | 0 | 0 | 12 | 16 | 75.0% |
| md_MAIN_036 | 9 | 0 | 0 | 10 | 28 | 35.7% |
| md_MAIN_037 | 5 | 0 | 0 | 5 | 17 | 29.4% |
| md_MAIN_038 | 7 | 0 | 0 | 7 | 20 | 35.0% |
| md_MAIN_039 | 5 | 0 | 0 | 5 | 26 | 19.2% |
| md_MAIN_040 | 4 | 0 | 0 | 4 | 19 | 21.1% |
| md_MAIN_041 | 5 | 0 | 0 | 5 | 15 | 33.3% |
| md_MAIN_042 | 0 | 0 | 0 | 0 | 4 | 0.0% |
| md_MAIN_043 | 4 | 0 | 0 | 5 | 23 | 21.7% |
| md_MAIN_044 | 13 | 0 | 0 | 14 | 44 | 31.8% |
| md_MAIN_045 | 5 | 0 | 0 | 6 | 21 | 28.6% |
| md_MAIN_046 | 10 | 0 | 0 | 11 | 39 | 28.2% |
| md_MAIN_047 | 3 | 0 | 0 | 4 | 12 | 33.3% |
| md_SC02_009 | 5 | 0 | 0 | 5 | 40 | 12.5% |
| md_SC03_073 | 27 | 10 | 0 | 27 | 28 | 96.4% |
| md_SC03_074 | 26 | 10 | 0 | 26 | 29 | 89.7% |
| md_SC03_075 | 29 | 10 | 0 | 29 | 41 | 70.7% |
| md_SC03_076 | 35 | 0 | 0 | 37 | 66 | 56.1% |
| md_SC03_077 | 24 | 0 | 0 | 26 | 35 | 74.3% |
| md_SC03_078 | 25 | 9 | 0 | 25 | 27 | 92.6% |
| md_SC03_079 | 24 | 0 | 0 | 26 | 29 | 89.7% |
| md_SC03_132 | 25 | 0 | 0 | 27 | 28 | 96.4% |
| md_SC03_133 | 23 | 1 | 0 | 25 | 29 | 86.2% |
| md_SC03_134 | 27 | 1 | 0 | 29 | 41 | 70.7% |
| md_SC03_135 | 34 | 0 | 0 | 36 | 66 | 54.5% |
| md_SC03_136 | 24 | 0 | 0 | 26 | 35 | 74.3% |
| md_SC03_137 | 23 | 1 | 0 | 25 | 27 | 92.6% |
| md_SC03_138 | 26 | 1 | 0 | 30 | 37 | 81.1% |
| md_SC04_024 | 24 | 0 | 0 | 26 | 28 | 92.9% |
| md_SC04_025 | 22 | 0 | 0 | 24 | 29 | 82.8% |
| md_SC04_026 | 26 | 0 | 0 | 28 | 41 | 68.3% |
| md_SC04_027 | 33 | 0 | 0 | 35 | 66 | 53.0% |
| md_SC04_028 | 24 | 0 | 0 | 26 | 35 | 74.3% |
| md_SC04_029 | 22 | 0 | 0 | 24 | 27 | 88.9% |
| md_SC04_030 | 24 | 0 | 0 | 28 | 31 | 90.3% |
| md_SC05_023 | 24 | 0 | 0 | 26 | 28 | 92.9% |
| md_SC05_024 | 21 | 0 | 0 | 23 | 29 | 79.3% |
| md_SC05_025 | 25 | 0 | 0 | 27 | 41 | 65.9% |
| md_SC05_026 | 32 | 0 | 0 | 34 | 66 | 51.5% |
| md_SC05_027 | 23 | 0 | 0 | 25 | 35 | 71.4% |
| md_SC05_028 | 21 | 0 | 0 | 23 | 27 | 85.2% |
| md_SC05_029 | 23 | 0 | 0 | 27 | 31 | 87.1% |
| md_SC07_003 | 18 | 0 | 0 | 18 | 100 | 18.0% |
| md_SC07_004 | 51 | 0 | 0 | 51 | 315 | 16.2% |
| ov_MAIN_012 | 2236 | 1689 | 0 | 2315 | 2403 | 96.3% |
| ov_SC01_000 | 2391 | 1809 | 0 | 2391 | 2403 | 99.5% |
| ov_SC01_001 | 2401 | 1811 | 0 | 2403 | 2466 | 97.4% |
| ov_SC01_004 | 2399 | 1802 | 0 | 2400 | 2414 | 99.4% |
| ov_SC01_005 | 2441 | 1832 | 0 | 2441 | 2503 | 97.5% |
| ov_SC01_006 | 2440 | 1832 | 0 | 2440 | 2503 | 97.5% |
| ov_SC01_008 | 2400 | 1803 | 0 | 2402 | 2426 | 99.0% |
| ov_SC01_009 | 2428 | 1803 | 0 | 2429 | 2507 | 96.9% |
| ov_SC01_074 | 2400 | 1803 | 0 | 2402 | 2426 | 99.0% |
| ov_SC01_077 | 2568 | 1764 | 0 | 2570 | 2586 | 99.4% |
| ov_SC01_080 | 2426 | 1806 | 0 | 2426 | 2512 | 96.6% |
| ov_SC01_084 | 2451 | 1811 | 0 | 2456 | 2579 | 95.2% |
| ov_SC02_000 | 2579 | 1888 | 0 | 2579 | 2683 | 96.1% |
| ov_SC02_003 | 2566 | 1888 | 0 | 2566 | 2683 | 95.6% |
| ov_SC02_004 | 2391 | 1806 | 0 | 2391 | 2401 | 99.6% |
| ov_SC02_005 | 2581 | 1802 | 0 | 2591 | 2927 | 88.5% |
| ov_SC02_011 | 2704 | 1810 | 0 | 2714 | 2893 | 93.8% |
| ov_SC02_015 | 2402 | 1808 | 0 | 2402 | 2414 | 99.5% |
| ov_SC02_016 | 2485 | 1810 | 0 | 2488 | 2545 | 97.8% |
| ov_SC02_017 | 2559 | 1810 | 0 | 2567 | 2732 | 94.0% |
| ov_SC02_021 | 2407 | 1808 | 0 | 2407 | 2437 | 98.8% |
| ov_SC02_026 | 2513 | 1807 | 0 | 2519 | 2572 | 97.9% |
| ov_SC02_027 | 2567 | 1828 | 0 | 2576 | 2692 | 95.7% |
| ov_SC02_028 | 2578 | 1827 | 0 | 2588 | 2701 | 95.8% |
| ov_SC02_031 | 2502 | 1809 | 0 | 2507 | 2562 | 97.9% |
| ov_SC02_035 | 2497 | 1806 | 0 | 2500 | 2520 | 99.2% |
| ov_SC02_037 | 2339 | 1704 | 0 | 2421 | 2516 | 96.2% |
| ov_SC02_039 | 2397 | 1806 | 0 | 2397 | 2416 | 99.2% |
| ov_SC02_041 | 2495 | 1806 | 0 | 2498 | 2561 | 97.5% |
| ov_SC03_001 | 2700 | 1807 | 0 | 2717 | 2869 | 94.7% |
| ov_SC03_002 | 2551 | 1815 | 0 | 2566 | 2631 | 97.5% |
| ov_SC03_003 | 2402 | 1806 | 0 | 2403 | 2423 | 99.2% |
| ov_SC03_006 | 2607 | 1814 | 0 | 2616 | 2767 | 94.5% |
| ov_SC03_007 | 2470 | 1806 | 0 | 2474 | 2623 | 94.3% |
| ov_SC03_010 | 2423 | 1807 | 0 | 2423 | 2471 | 98.1% |
| ov_SC03_011 | 2426 | 1807 | 0 | 2432 | 2527 | 96.2% |
| ov_SC03_012 | 2391 | 1806 | 0 | 2392 | 2406 | 99.4% |
| ov_SC03_013 | 2427 | 1807 | 0 | 2427 | 2493 | 97.4% |
| ov_SC03_014 | 2598 | 1843 | 0 | 2598 | 2685 | 96.8% |
| ov_SC03_015 | 2377 | 1843 | 0 | 2377 | 2468 | 96.3% |
| ov_SC03_023 | 2404 | 1806 | 0 | 2405 | 2435 | 98.8% |
| ov_SC03_024 | 2531 | 1813 | 0 | 2538 | 2641 | 96.1% |
| ov_SC03_028 | 2466 | 1807 | 0 | 2470 | 2664 | 92.7% |
| ov_SC03_029 | 2505 | 1810 | 0 | 2515 | 2644 | 95.1% |
| ov_SC03_030 | 2428 | 1811 | 0 | 2430 | 2495 | 97.4% |
| ov_SC03_031 | 2449 | 1808 | 0 | 2452 | 2514 | 97.5% |
| ov_SC03_089 | 2526 | 1811 | 0 | 2533 | 2581 | 98.1% |
| ov_SC03_090 | 2543 | 1811 | 0 | 2551 | 2625 | 97.2% |
| ov_SC03_091 | 2557 | 1828 | 0 | 2565 | 2640 | 97.2% |
| ov_SC03_092 | 2515 | 1811 | 0 | 2527 | 2588 | 97.6% |
| ov_SC03_093 | 2530 | 1828 | 0 | 2534 | 2563 | 98.9% |
| ov_SC03_094 | 2519 | 1806 | 0 | 2525 | 2577 | 98.0% |
| ov_SC03_095 | 2440 | 1806 | 0 | 2443 | 2474 | 98.7% |
| ov_SC03_096 | 2437 | 1806 | 0 | 2440 | 2465 | 99.0% |
| ov_SC03_097 | 2540 | 1827 | 0 | 2547 | 2603 | 97.8% |
| ov_SC03_098 | 2517 | 1828 | 0 | 2520 | 2541 | 99.2% |
| ov_SC03_099 | 2489 | 1806 | 0 | 2492 | 2504 | 99.5% |
| ov_SC03_100 | 2524 | 1828 | 0 | 2528 | 2539 | 99.6% |
| ov_SC03_101 | 2490 | 1811 | 0 | 2494 | 2528 | 98.7% |
| ov_SC03_102 | 2473 | 1806 | 0 | 2476 | 2492 | 99.4% |
| ov_SC03_103 | 2497 | 1808 | 0 | 2500 | 2510 | 99.6% |
| ov_SC03_104 | 2551 | 1811 | 0 | 2558 | 2616 | 97.8% |
| ov_SC03_105 | 2452 | 1807 | 0 | 2459 | 2597 | 94.7% |
| ov_SC03_107 | 2310 | 1689 | 0 | 2393 | 2497 | 95.8% |
| ov_SC03_108 | 2406 | 1806 | 0 | 2406 | 2443 | 98.5% |
| ov_SC03_109 | 2409 | 1807 | 0 | 2411 | 2424 | 99.5% |
| ov_SC03_110 | 2444 | 1830 | 0 | 2444 | 2468 | 99.0% |
| ov_SC03_111 | 2482 | 1806 | 0 | 2485 | 2510 | 99.0% |
| ov_SC03_112 | 2453 | 1808 | 0 | 2455 | 2526 | 97.2% |
| ov_SC03_113 | 2445 | 1808 | 0 | 2448 | 2468 | 99.2% |
| ov_SC03_114 | 2391 | 1806 | 0 | 2393 | 2415 | 99.1% |
| ov_SC03_115 | 2437 | 1806 | 0 | 2439 | 2472 | 98.7% |
| ov_SC03_116 | 2404 | 1806 | 0 | 2407 | 2438 | 98.7% |
| ov_SC03_117 | 2484 | 1806 | 0 | 2490 | 2557 | 97.4% |
| ov_SC03_118 | 2575 | 1843 | 0 | 2576 | 2684 | 96.0% |
| ov_SC03_119 | 2572 | 1843 | 0 | 2573 | 2685 | 95.8% |
| ov_SC03_121 | 2407 | 1807 | 0 | 2409 | 2459 | 98.0% |
| ov_SC03_124 | 2597 | 1802 | 0 | 2617 | 2741 | 95.5% |
| ov_SC03_125 | 2535 | 1815 | 0 | 2547 | 2588 | 98.4% |
| ov_SC03_126 | 2406 | 1809 | 0 | 2406 | 2423 | 99.3% |
| ov_SC04_000 | 2479 | 1811 | 0 | 2488 | 2546 | 97.7% |
| ov_SC04_002 | 2520 | 1806 | 0 | 2524 | 2636 | 95.8% |
| ov_SC04_003 | 2443 | 1813 | 0 | 2446 | 2502 | 97.8% |
| ov_SC04_004 | 2476 | 1807 | 0 | 2478 | 2558 | 96.9% |
| ov_SC04_005 | 2512 | 1806 | 0 | 2518 | 2612 | 96.4% |
| ov_SC04_006 | 2432 | 1812 | 0 | 2434 | 2454 | 99.2% |
| ov_SC04_007 | 2503 | 1807 | 0 | 2507 | 2569 | 97.6% |
| ov_SC04_008 | 2402 | 1806 | 0 | 2402 | 2415 | 99.5% |
| ov_SC04_009 | 2428 | 1806 | 0 | 2431 | 2441 | 99.6% |
| ov_SC04_010 | 2405 | 1806 | 0 | 2406 | 2419 | 99.5% |
| ov_SC04_011 | 2568 | 1811 | 0 | 2574 | 2803 | 91.8% |
| ov_SC04_012 | 2402 | 1806 | 0 | 2403 | 2420 | 99.3% |
| ov_SC04_015 | 2545 | 1807 | 0 | 2556 | 2611 | 97.9% |
| ov_SC04_016 | 2403 | 1806 | 0 | 2405 | 2440 | 98.6% |
| ov_SC04_018 | 2734 | 1883 | 0 | 2734 | 2857 | 95.7% |
| ov_SC04_019 | 2725 | 1883 | 0 | 2725 | 2857 | 95.4% |
| ov_SC04_020 | 2520 | 1815 | 0 | 2532 | 2567 | 98.6% |
| ov_SC04_021 | 2404 | 1809 | 0 | 2404 | 2423 | 99.2% |
| ov_SC05_000 | 2407 | 1810 | 0 | 2410 | 2422 | 99.5% |
| ov_SC05_001 | 2486 | 1807 | 0 | 2491 | 2574 | 96.8% |
| ov_SC05_002 | 2431 | 1806 | 0 | 2434 | 2442 | 99.7% |
| ov_SC05_003 | 2419 | 1806 | 0 | 2420 | 2481 | 97.5% |
| ov_SC05_004 | 2433 | 1806 | 0 | 2435 | 2464 | 98.8% |
| ov_SC05_005 | 2439 | 1812 | 0 | 2440 | 2491 | 98.0% |
| ov_SC05_006 | 2424 | 1807 | 0 | 2424 | 2430 | 99.8% |
| ov_SC05_007 | 2436 | 1806 | 0 | 2441 | 2482 | 98.3% |
| ov_SC05_008 | 2444 | 1806 | 0 | 2446 | 2543 | 96.2% |
| ov_SC05_009 | 2410 | 1806 | 0 | 2414 | 2438 | 99.0% |
| ov_SC05_010 | 2454 | 1807 | 0 | 2458 | 2588 | 95.0% |
| ov_SC05_011 | 2397 | 1806 | 0 | 2398 | 2409 | 99.5% |
| ov_SC05_017 | 2673 | 1806 | 0 | 2684 | 2842 | 94.4% |
| ov_SC05_018 | 2553 | 1814 | 0 | 2566 | 2673 | 96.0% |
| ov_SC05_019 | 2404 | 1809 | 0 | 2404 | 2423 | 99.2% |
| ov_SC06_000 | 2543 | 1817 | 0 | 2546 | 2691 | 94.6% |
| ov_SC06_006 | 2433 | 1807 | 0 | 2434 | 2511 | 96.9% |
| ov_SC06_008 | 2502 | 1808 | 0 | 2508 | 2542 | 98.7% |
| ov_SC06_010 | 2473 | 1806 | 0 | 2478 | 2517 | 98.5% |
| ov_SC06_011 | 2418 | 1806 | 0 | 2422 | 2468 | 98.1% |
| ov_SC06_013 | 2407 | 1806 | 0 | 2408 | 2425 | 99.3% |
| ov_SC06_014 | 2418 | 1806 | 0 | 2420 | 2453 | 98.7% |
| ov_SC06_015 | 2412 | 1806 | 0 | 2412 | 2421 | 99.6% |
| ov_SC06_016 | 2456 | 1807 | 0 | 2458 | 2549 | 96.4% |
| ov_SC06_018 | 2551 | 1807 | 0 | 2558 | 2665 | 96.0% |
| ov_SC06_020 | 2472 | 1808 | 0 | 2473 | 2518 | 98.2% |
| ov_SC06_022 | 2523 | 1806 | 0 | 2531 | 2642 | 95.8% |
| ov_SC06_024 | 2542 | 1806 | 0 | 2548 | 2667 | 95.5% |
| ov_SC06_025 | 2455 | 1806 | 0 | 2460 | 2572 | 95.6% |
| ov_SC06_027 | 2392 | 1806 | 0 | 2393 | 2408 | 99.4% |
| ov_SC06_029 | 2480 | 1807 | 0 | 2492 | 2662 | 93.6% |
| ov_SC06_030 | 2415 | 1807 | 0 | 2415 | 2456 | 98.3% |
| ov_SC06_032 | 2535 | 1807 | 0 | 2542 | 2658 | 95.6% |
| ov_SC06_033 | 2531 | 1807 | 0 | 2538 | 2631 | 96.5% |
| ov_SC07_000 | 2439 | 1811 | 0 | 2441 | 2521 | 96.8% |
| ov_SC07_001 | 2407 | 1807 | 0 | 2409 | 2454 | 98.2% |
| ov_SC07_002 | 2467 | 1807 | 0 | 2471 | 2579 | 95.8% |
| ov_SC07_006 | 2330 | 1625 | 0 | 2410 | 2456 | 98.1% |
| ov_SC07_007 | 2395 | 1660 | 0 | 2479 | 2612 | 94.9% |
| ov_SC07_008 | 2386 | 1806 | 0 | 2386 | 2386 | 100.0% |
| ov_SC07_009 | 2400 | 1806 | 0 | 2402 | 2430 | 98.8% |
| ov_SC07_010 | 2324 | 1682 | 0 | 2406 | 2523 | 95.4% |
| ov_SC07_011 | 2341 | 1659 | 0 | 2421 | 2448 | 98.9% |