Files
BFM-decomp/docs/progress.fleet.md
T
Drew T f8e522ea0d docs(cookbook): §378b — the four decl-blocker variants, and the two places §378 does NOT apply
Correcting my own guidance from earlier today. §378 gave the self-caller chain;
three more variants appeared within hours and two of them BREAK the chain.

Variant 3 (NEW, byte-proven ov_SC04_018/func_8017F35C, banked): conflicting
RETURN type on a decl that is ALREADY no-proto, where the symbol is
ADDRESS-TAKEN rather than called. --any-proto has nothing to relax and
cast_self_callers has no call site to cast; --sync-decls ALONE fixes it, and is
safe precisely because an address-taken site has no arguments to convert.

Variant 4 (REFUTATION of what I wrote in the playbook this morning): "run the
same chain on the callee the diagnostic names" is wrong at scale. Applied to
func_8012AD44 in ov_SC07_000 it no-protoed 60 caller decls and the binary went
RED (265b24bb vs 9dbe4241); reverted via journal. The self case is safe because
step 2 casts the call sites so the decl change cannot alter argument conversion;
for a callee, cast_self_callers correctly refuses and the decl change runs
unprotected. It banked main/func_80021D38 only because that callee had ONE decl,
not sixty.

Rule added: never --any-proto a symbol whose call sites you are not also casting;
count the sites first. The chain is a DECISION TABLE, not a sequence to run
blindly.
2026-09-01 13:34:21 -06:00

234 lines
13 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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: 362611 / 362961 = 99.90% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
FLEET instr-weighted : 13443325 / 13523865 = 99.4% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number)
FLEET distinct-code(uniq): 5772886 / 5851972 = 98.6% (90662/90929 unique fns; the DISTINCT-RE number)
MAIN game-code weighted : 39105 / 79510 = 49.2% (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: 13404220 / 13444355 = 99.7%)
FLEET REAL substantive : 360441 (of which dedup-shared 255632 via 2220 groups / 255708 instances)
FLEET LINKED PsyQ objs : 959
FLEET NON_MATCHING : 3 (0 in any default build — G4)
FLEET INCLUDE_ASM stubs : 347
FLEET matchable : 362961
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
|---|---:|---:|---:|---:|---:|---:|
| main | 850 | 2 | 959 | 1852 | 1919 | 96.5% |
| resident | 138 | 0 | 0 | 140 | 145 | 96.6% |
| md_MAIN_001 | 11 | 0 | 0 | 11 | 11 | 100.0% |
| md_MAIN_003 | 40 | 0 | 0 | 40 | 49 | 81.6% |
| md_MAIN_008 | 6 | 0 | 0 | 6 | 6 | 100.0% |
| md_MAIN_011 | 19 | 0 | 0 | 20 | 21 | 95.2% |
| md_MAIN_013 | 15 | 0 | 0 | 15 | 16 | 93.8% |
| md_MAIN_014 | 12 | 0 | 0 | 13 | 13 | 100.0% |
| md_MAIN_015 | 20 | 1 | 0 | 20 | 20 | 100.0% |
| md_MAIN_016 | 11 | 0 | 0 | 12 | 12 | 100.0% |
| md_MAIN_017 | 10 | 0 | 0 | 10 | 10 | 100.0% |
| md_MAIN_018 | 10 | 0 | 0 | 11 | 11 | 100.0% |
| md_MAIN_019 | 22 | 0 | 0 | 22 | 22 | 100.0% |
| md_MAIN_020 | 12 | 0 | 0 | 13 | 13 | 100.0% |
| md_MAIN_021 | 10 | 0 | 0 | 11 | 11 | 100.0% |
| md_MAIN_022 | 31 | 0 | 0 | 33 | 33 | 100.0% |
| md_MAIN_023 | 5 | 1 | 0 | 6 | 6 | 100.0% |
| md_MAIN_024 | 4 | 0 | 0 | 6 | 6 | 100.0% |
| md_MAIN_025 | 29 | 0 | 0 | 29 | 30 | 96.7% |
| md_MAIN_026 | 24 | 0 | 0 | 24 | 24 | 100.0% |
| md_MAIN_027 | 27 | 0 | 0 | 29 | 29 | 100.0% |
| md_MAIN_028 | 21 | 0 | 0 | 21 | 22 | 95.5% |
| md_MAIN_029 | 10 | 0 | 0 | 11 | 11 | 100.0% |
| md_MAIN_030 | 10 | 0 | 0 | 10 | 10 | 100.0% |
| md_MAIN_031 | 18 | 0 | 0 | 18 | 18 | 100.0% |
| md_MAIN_032 | 10 | 1 | 0 | 10 | 10 | 100.0% |
| md_MAIN_033 | 19 | 0 | 0 | 19 | 19 | 100.0% |
| md_MAIN_034 | 25 | 0 | 0 | 26 | 28 | 92.9% |
| md_MAIN_035 | 15 | 0 | 0 | 16 | 16 | 100.0% |
| md_MAIN_036 | 27 | 0 | 0 | 28 | 28 | 100.0% |
| md_MAIN_037 | 17 | 0 | 0 | 17 | 17 | 100.0% |
| md_MAIN_038 | 20 | 0 | 0 | 20 | 20 | 100.0% |
| md_MAIN_039 | 26 | 0 | 0 | 26 | 26 | 100.0% |
| md_MAIN_040 | 19 | 0 | 0 | 19 | 19 | 100.0% |
| md_MAIN_041 | 15 | 1 | 0 | 15 | 15 | 100.0% |
| md_MAIN_042 | 4 | 0 | 0 | 4 | 4 | 100.0% |
| md_MAIN_043 | 22 | 0 | 0 | 23 | 23 | 100.0% |
| md_MAIN_044 | 41 | 0 | 0 | 42 | 43 | 97.7% |
| md_MAIN_045 | 20 | 0 | 0 | 21 | 21 | 100.0% |
| md_MAIN_046 | 38 | 0 | 0 | 39 | 39 | 100.0% |
| md_MAIN_047 | 11 | 0 | 0 | 12 | 12 | 100.0% |
| md_SC02_009 | 40 | 0 | 0 | 40 | 40 | 100.0% |
| md_SC03_073 | 28 | 10 | 0 | 28 | 28 | 100.0% |
| md_SC03_074 | 29 | 10 | 0 | 29 | 29 | 100.0% |
| md_SC03_075 | 41 | 10 | 0 | 41 | 41 | 100.0% |
| md_SC03_076 | 64 | 0 | 0 | 66 | 66 | 100.0% |
| md_SC03_077 | 33 | 0 | 0 | 35 | 35 | 100.0% |
| md_SC03_078 | 27 | 9 | 0 | 27 | 27 | 100.0% |
| md_SC03_079 | 27 | 0 | 0 | 29 | 29 | 100.0% |
| md_SC03_132 | 26 | 0 | 0 | 28 | 28 | 100.0% |
| md_SC03_133 | 27 | 1 | 0 | 29 | 29 | 100.0% |
| md_SC03_134 | 39 | 1 | 0 | 41 | 41 | 100.0% |
| md_SC03_135 | 63 | 0 | 0 | 65 | 66 | 98.5% |
| md_SC03_136 | 33 | 0 | 0 | 35 | 35 | 100.0% |
| md_SC03_137 | 25 | 1 | 0 | 27 | 27 | 100.0% |
| md_SC03_138 | 33 | 1 | 0 | 37 | 37 | 100.0% |
| md_SC04_024 | 26 | 0 | 0 | 28 | 28 | 100.0% |
| md_SC04_025 | 27 | 0 | 0 | 29 | 29 | 100.0% |
| md_SC04_026 | 39 | 0 | 0 | 41 | 41 | 100.0% |
| md_SC04_027 | 64 | 0 | 0 | 66 | 66 | 100.0% |
| md_SC04_028 | 33 | 0 | 0 | 35 | 35 | 100.0% |
| md_SC04_029 | 25 | 0 | 0 | 27 | 27 | 100.0% |
| md_SC04_030 | 27 | 0 | 0 | 31 | 31 | 100.0% |
| md_SC05_023 | 26 | 0 | 0 | 28 | 28 | 100.0% |
| md_SC05_024 | 27 | 0 | 0 | 29 | 29 | 100.0% |
| md_SC05_025 | 39 | 0 | 0 | 41 | 41 | 100.0% |
| md_SC05_026 | 63 | 0 | 0 | 65 | 66 | 98.5% |
| md_SC05_027 | 33 | 0 | 0 | 35 | 35 | 100.0% |
| md_SC05_028 | 25 | 0 | 0 | 27 | 27 | 100.0% |
| md_SC05_029 | 27 | 0 | 0 | 31 | 31 | 100.0% |
| md_SC07_003 | 94 | 0 | 0 | 94 | 100 | 94.0% |
| md_SC07_004 | 301 | 0 | 0 | 301 | 315 | 95.6% |
| ov_MAIN_012 | 2322 | 1693 | 0 | 2401 | 2401 | 100.0% |
| ov_SC01_000 | 2400 | 1814 | 0 | 2400 | 2403 | 99.9% |
| ov_SC01_001 | 2461 | 1816 | 0 | 2463 | 2465 | 99.9% |
| ov_SC01_004 | 2412 | 1807 | 0 | 2413 | 2414 | 100.0% |
| ov_SC01_005 | 2500 | 1838 | 0 | 2500 | 2503 | 99.9% |
| ov_SC01_006 | 2500 | 1838 | 0 | 2500 | 2503 | 99.9% |
| ov_SC01_008 | 2423 | 1808 | 0 | 2425 | 2426 | 100.0% |
| ov_SC01_009 | 2504 | 1808 | 0 | 2505 | 2507 | 99.9% |
| ov_SC01_074 | 2424 | 1808 | 0 | 2426 | 2426 | 100.0% |
| ov_SC01_077 | 2583 | 1769 | 0 | 2585 | 2586 | 100.0% |
| ov_SC01_080 | 2506 | 1813 | 0 | 2506 | 2512 | 99.8% |
| ov_SC01_084 | 2569 | 1824 | 0 | 2574 | 2579 | 99.8% |
| ov_SC02_000 | 2680 | 1902 | 0 | 2680 | 2683 | 99.9% |
| ov_SC02_003 | 2678 | 1902 | 0 | 2678 | 2683 | 99.8% |
| ov_SC02_004 | 2401 | 1813 | 0 | 2401 | 2401 | 100.0% |
| ov_SC02_005 | 2909 | 1807 | 0 | 2919 | 2926 | 99.8% |
| ov_SC02_011 | 2876 | 1815 | 0 | 2886 | 2893 | 99.8% |
| ov_SC02_015 | 2414 | 1819 | 0 | 2414 | 2414 | 100.0% |
| ov_SC02_016 | 2540 | 1815 | 0 | 2543 | 2545 | 99.9% |
| ov_SC02_017 | 2721 | 1815 | 0 | 2729 | 2732 | 99.9% |
| ov_SC02_021 | 2437 | 1819 | 0 | 2437 | 2437 | 100.0% |
| ov_SC02_026 | 2565 | 1812 | 0 | 2571 | 2572 | 100.0% |
| ov_SC02_027 | 2681 | 1833 | 0 | 2690 | 2692 | 99.9% |
| ov_SC02_028 | 2690 | 1832 | 0 | 2700 | 2701 | 100.0% |
| ov_SC02_031 | 2557 | 1814 | 0 | 2562 | 2562 | 100.0% |
| ov_SC02_035 | 2516 | 1811 | 0 | 2519 | 2520 | 100.0% |
| ov_SC02_037 | 2433 | 1708 | 0 | 2515 | 2515 | 100.0% |
| ov_SC02_039 | 2416 | 1819 | 0 | 2416 | 2416 | 100.0% |
| ov_SC02_041 | 2557 | 1811 | 0 | 2560 | 2561 | 100.0% |
| ov_SC03_001 | 2851 | 1812 | 0 | 2868 | 2869 | 100.0% |
| ov_SC03_002 | 2616 | 1820 | 0 | 2631 | 2631 | 100.0% |
| ov_SC03_003 | 2422 | 1811 | 0 | 2423 | 2423 | 100.0% |
| ov_SC03_006 | 2758 | 1819 | 0 | 2767 | 2767 | 100.0% |
| ov_SC03_007 | 2617 | 1813 | 0 | 2621 | 2623 | 99.9% |
| ov_SC03_010 | 2469 | 1812 | 0 | 2469 | 2471 | 99.9% |
| ov_SC03_011 | 2520 | 1812 | 0 | 2526 | 2527 | 100.0% |
| ov_SC03_012 | 2405 | 1813 | 0 | 2406 | 2406 | 100.0% |
| ov_SC03_013 | 2490 | 1812 | 0 | 2490 | 2493 | 99.9% |
| ov_SC03_014 | 2685 | 1879 | 0 | 2685 | 2685 | 100.0% |
| ov_SC03_015 | 2468 | 1879 | 0 | 2468 | 2468 | 100.0% |
| ov_SC03_023 | 2434 | 1813 | 0 | 2435 | 2435 | 100.0% |
| ov_SC03_024 | 2633 | 1837 | 0 | 2640 | 2641 | 100.0% |
| ov_SC03_028 | 2654 | 1816 | 0 | 2658 | 2664 | 99.8% |
| ov_SC03_029 | 2632 | 1815 | 0 | 2642 | 2644 | 99.9% |
| ov_SC03_030 | 2491 | 1816 | 0 | 2493 | 2495 | 99.9% |
| ov_SC03_031 | 2511 | 1813 | 0 | 2514 | 2514 | 100.0% |
| ov_SC03_089 | 2574 | 1824 | 0 | 2581 | 2581 | 100.0% |
| ov_SC03_090 | 2617 | 1824 | 0 | 2625 | 2625 | 100.0% |
| ov_SC03_091 | 2632 | 1833 | 0 | 2640 | 2640 | 100.0% |
| ov_SC03_092 | 2573 | 1824 | 0 | 2585 | 2588 | 99.9% |
| ov_SC03_093 | 2560 | 1834 | 0 | 2563 | 2563 | 100.0% |
| ov_SC03_094 | 2571 | 1811 | 0 | 2577 | 2577 | 100.0% |
| ov_SC03_095 | 2471 | 1811 | 0 | 2474 | 2474 | 100.0% |
| ov_SC03_096 | 2462 | 1811 | 0 | 2465 | 2465 | 100.0% |
| ov_SC03_097 | 2596 | 1832 | 0 | 2603 | 2603 | 100.0% |
| ov_SC03_098 | 2538 | 1833 | 0 | 2541 | 2541 | 100.0% |
| ov_SC03_099 | 2501 | 1811 | 0 | 2504 | 2504 | 100.0% |
| ov_SC03_100 | 2535 | 1833 | 0 | 2539 | 2539 | 100.0% |
| ov_SC03_101 | 2524 | 1824 | 0 | 2528 | 2528 | 100.0% |
| ov_SC03_102 | 2488 | 1811 | 0 | 2491 | 2492 | 100.0% |
| ov_SC03_103 | 2507 | 1813 | 0 | 2510 | 2510 | 100.0% |
| ov_SC03_104 | 2609 | 1824 | 0 | 2616 | 2616 | 100.0% |
| ov_SC03_105 | 2569 | 1816 | 0 | 2576 | 2596 | 99.2% |
| ov_SC03_107 | 2411 | 1693 | 0 | 2494 | 2495 | 100.0% |
| ov_SC03_108 | 2442 | 1819 | 0 | 2442 | 2443 | 100.0% |
| ov_SC03_109 | 2422 | 1812 | 0 | 2424 | 2424 | 100.0% |
| ov_SC03_110 | 2468 | 1835 | 0 | 2468 | 2468 | 100.0% |
| ov_SC03_111 | 2505 | 1811 | 0 | 2508 | 2510 | 99.9% |
| ov_SC03_112 | 2521 | 1813 | 0 | 2523 | 2526 | 99.9% |
| ov_SC03_113 | 2465 | 1813 | 0 | 2468 | 2468 | 100.0% |
| ov_SC03_114 | 2413 | 1812 | 0 | 2415 | 2415 | 100.0% |
| ov_SC03_115 | 2470 | 1812 | 0 | 2472 | 2472 | 100.0% |
| ov_SC03_116 | 2435 | 1811 | 0 | 2438 | 2438 | 100.0% |
| ov_SC03_117 | 2549 | 1811 | 0 | 2555 | 2557 | 99.9% |
| ov_SC03_118 | 2682 | 1869 | 0 | 2683 | 2684 | 100.0% |
| ov_SC03_119 | 2684 | 1869 | 0 | 2685 | 2685 | 100.0% |
| ov_SC03_121 | 2457 | 1812 | 0 | 2459 | 2459 | 100.0% |
| ov_SC03_124 | 2717 | 1807 | 0 | 2737 | 2741 | 99.9% |
| ov_SC03_125 | 2576 | 1820 | 0 | 2588 | 2588 | 100.0% |
| ov_SC03_126 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% |
| ov_SC04_000 | 2536 | 1816 | 0 | 2545 | 2546 | 100.0% |
| ov_SC04_002 | 2630 | 1811 | 0 | 2634 | 2636 | 99.9% |
| ov_SC04_003 | 2498 | 1818 | 0 | 2501 | 2502 | 100.0% |
| ov_SC04_004 | 2556 | 1812 | 0 | 2558 | 2558 | 100.0% |
| ov_SC04_005 | 2604 | 1811 | 0 | 2610 | 2612 | 99.9% |
| ov_SC04_006 | 2452 | 1817 | 0 | 2454 | 2454 | 100.0% |
| ov_SC04_007 | 2564 | 1812 | 0 | 2568 | 2569 | 100.0% |
| ov_SC04_008 | 2415 | 1811 | 0 | 2415 | 2415 | 100.0% |
| ov_SC04_009 | 2438 | 1811 | 0 | 2441 | 2441 | 100.0% |
| ov_SC04_010 | 2418 | 1811 | 0 | 2419 | 2419 | 100.0% |
| ov_SC04_011 | 2789 | 1824 | 0 | 2795 | 2804 | 99.7% |
| ov_SC04_012 | 2418 | 1811 | 0 | 2419 | 2420 | 100.0% |
| ov_SC04_015 | 2599 | 1812 | 0 | 2610 | 2611 | 100.0% |
| ov_SC04_016 | 2437 | 1812 | 0 | 2439 | 2440 | 100.0% |
| ov_SC04_018 | 2854 | 1896 | 0 | 2854 | 2857 | 99.9% |
| ov_SC04_019 | 2856 | 1899 | 0 | 2856 | 2857 | 100.0% |
| ov_SC04_020 | 2554 | 1820 | 0 | 2566 | 2567 | 100.0% |
| ov_SC04_021 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% |
| ov_SC05_000 | 2419 | 1815 | 0 | 2422 | 2422 | 100.0% |
| ov_SC05_001 | 2568 | 1813 | 0 | 2573 | 2574 | 100.0% |
| ov_SC05_002 | 2439 | 1811 | 0 | 2442 | 2442 | 100.0% |
| ov_SC05_003 | 2479 | 1811 | 0 | 2480 | 2481 | 100.0% |
| ov_SC05_004 | 2462 | 1811 | 0 | 2464 | 2464 | 100.0% |
| ov_SC05_005 | 2488 | 1825 | 0 | 2489 | 2490 | 100.0% |
| ov_SC05_006 | 2430 | 1813 | 0 | 2430 | 2430 | 100.0% |
| ov_SC05_007 | 2477 | 1812 | 0 | 2482 | 2482 | 100.0% |
| ov_SC05_008 | 2537 | 1812 | 0 | 2539 | 2543 | 99.8% |
| ov_SC05_009 | 2434 | 1811 | 0 | 2438 | 2438 | 100.0% |
| ov_SC05_010 | 2576 | 1816 | 0 | 2580 | 2588 | 99.7% |
| ov_SC05_011 | 2407 | 1812 | 0 | 2408 | 2409 | 100.0% |
| ov_SC05_017 | 2830 | 1811 | 0 | 2841 | 2842 | 100.0% |
| ov_SC05_018 | 2655 | 1819 | 0 | 2668 | 2673 | 99.8% |
| ov_SC05_019 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% |
| ov_SC06_000 | 2687 | 1841 | 0 | 2690 | 2691 | 100.0% |
| ov_SC06_006 | 2509 | 1813 | 0 | 2510 | 2511 | 100.0% |
| ov_SC06_008 | 2535 | 1813 | 0 | 2541 | 2542 | 100.0% |
| ov_SC06_010 | 2510 | 1811 | 0 | 2515 | 2516 | 100.0% |
| ov_SC06_011 | 2463 | 1811 | 0 | 2467 | 2468 | 100.0% |
| ov_SC06_013 | 2424 | 1811 | 0 | 2425 | 2425 | 100.0% |
| ov_SC06_014 | 2451 | 1811 | 0 | 2453 | 2453 | 100.0% |
| ov_SC06_015 | 2421 | 1811 | 0 | 2421 | 2421 | 100.0% |
| ov_SC06_016 | 2547 | 1816 | 0 | 2549 | 2549 | 100.0% |
| ov_SC06_018 | 2655 | 1812 | 0 | 2662 | 2665 | 99.9% |
| ov_SC06_020 | 2515 | 1813 | 0 | 2516 | 2518 | 99.9% |
| ov_SC06_022 | 2629 | 1811 | 0 | 2637 | 2642 | 99.8% |
| ov_SC06_024 | 2657 | 1811 | 0 | 2663 | 2667 | 99.9% |
| ov_SC06_025 | 2565 | 1811 | 0 | 2570 | 2572 | 99.9% |
| ov_SC06_027 | 2407 | 1811 | 0 | 2408 | 2408 | 100.0% |
| ov_SC06_029 | 2634 | 1816 | 0 | 2646 | 2662 | 99.4% |
| ov_SC06_030 | 2455 | 1816 | 0 | 2455 | 2456 | 100.0% |
| ov_SC06_032 | 2645 | 1812 | 0 | 2652 | 2657 | 99.8% |
| ov_SC06_033 | 2620 | 1812 | 0 | 2627 | 2630 | 99.9% |
| ov_SC07_000 | 2511 | 1816 | 0 | 2513 | 2521 | 99.7% |
| ov_SC07_001 | 2449 | 1812 | 0 | 2451 | 2454 | 99.9% |
| ov_SC07_002 | 2569 | 1816 | 0 | 2573 | 2578 | 99.8% |
| ov_SC07_006 | 2373 | 1630 | 0 | 2453 | 2457 | 99.8% |
| ov_SC07_007 | 2525 | 1666 | 0 | 2608 | 2612 | 99.8% |
| ov_SC07_008 | 2386 | 1812 | 0 | 2386 | 2386 | 100.0% |
| ov_SC07_009 | 2428 | 1811 | 0 | 2430 | 2430 | 100.0% |
| ov_SC07_010 | 2436 | 1689 | 0 | 2518 | 2523 | 99.8% |
| ov_SC07_011 | 2367 | 1664 | 0 | 2447 | 2448 | 100.0% |