Files
BFM-decomp/docs/progress.fleet.md
T
Drew T 015ebff536 feat(phase-29): §84 family fully harvested — 123/123 members, 0 failed (+29,280 ins, +27,840 distinct)
The derived-offset recompute swept the whole func_8013D53C family: 119 banked / 0 failed on top of
the 4 earlier; func_8013D53C is now stubbed in ZERO overlays. R22 clean-fleet 140/140 BYTE-IDENTICAL;
tools-health OK; dedup 1886/0; 0 NON_MATCHING (G4).

RECIPE (and it is NOT the return-axis recipe — sampling caught this):
  §84 derived-offset -> per-member literal recompute AND the gate_stage ladder.
  With the recompute alone the sample was 0/8; through the ladder it was 3/3, then 119/119.
  Had I reused the return-axis recipe (plain harvest_verify, which banked 272/272 there) I would
  have swept 123 members to zero banks and mis-concluded the fix was wrong. Probe-before-scale.

METRIC FINDING worth carrying: this harvest moved instr +29,280 AND distinct-code +27,840, while the
return-axis harvest moved instr +26,928 and distinct-code +0. §84-class members are byte-VARIANTS so
each is a new unique function; propagation-class members were already counted once via their shared
exemplar. => §84-class work moves the RE-COMPLETENESS number; propagation moves only the DISPLAY one.

Session fleet: 80.6 -> 81.0% instr · 68.2 -> 68.8% distinct-code · 89.18 -> 89.30% fn-count.
2026-07-26 16:48:56 -06:00

9.1 KiB
Raw Blame History

BFM FLEET matching progress (generated by tools/progress.py --fleet — authoritative)

140 binaries: main + resident + 138 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: 315864 / 353719 = 89.30% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay) FLEET instr-weighted : 10645711 / 13141652 = 81.0% (shipped .text across main + resident + 138 overlays; the decomp.dev-DISPLAY number) FLEET distinct-code(uniq): 3874496 / 5634875 = 68.8% (65028/87459 unique fns; the DISTINCT-RE number) MAIN game-code weighted : 436 / 60201 = 0.7% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-06-14; 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: 10645275 / 13081451 = 81.4%)

FLEET REAL substantive : 314009 (of which dedup-shared 239530 via 1886 groups / 239604 instances) FLEET LINKED PsyQ objs : 959 FLEET NON_MATCHING : 7 (0 in any default build — G4) FLEET INCLUDE_ASM stubs : 37848 FLEET matchable : 353719

binary REAL shared LINKED byte-ident matchable byte-ident %
main 54 2 959 1055 2096 50.3%
resident 129 0 0 131 145 90.3%
ov_SC01_000 2253 1742 0 2253 2403 93.8%
ov_SC01_001 2256 1743 0 2258 2466 91.6%
ov_SC01_004 2245 1734 0 2246 2414 93.0%
ov_SC01_005 2275 1757 0 2275 2503 90.9%
ov_SC01_006 2275 1757 0 2275 2503 90.9%
ov_SC01_008 2245 1734 0 2247 2426 92.6%
ov_SC01_009 2271 1735 0 2272 2507 90.6%
ov_SC01_074 2249 1735 0 2251 2425 92.8%
ov_SC01_077 2430 1702 0 2432 2585 94.1%
ov_SC01_080 2287 1738 0 2287 2512 91.0%
ov_SC01_084 2294 1738 0 2299 2579 89.1%
ov_SC02_000 2347 1773 0 2347 2683 87.5%
ov_SC02_003 2347 1773 0 2347 2683 87.5%
ov_SC02_004 2253 1738 0 2253 2401 93.8%
ov_SC02_005 2361 1734 0 2371 2927 81.0%
ov_SC02_011 2373 1741 0 2384 2893 82.4%
ov_SC02_015 2254 1740 0 2254 2414 93.4%
ov_SC02_016 2288 1740 0 2291 2545 90.0%
ov_SC02_017 2331 1740 0 2339 2732 85.6%
ov_SC02_021 2260 1740 0 2260 2437 92.7%
ov_SC02_026 2276 1738 0 2282 2572 88.7%
ov_SC02_027 2299 1738 0 2308 2692 85.7%
ov_SC02_028 2301 1738 0 2311 2701 85.6%
ov_SC02_031 2287 1739 0 2292 2562 89.5%
ov_SC02_035 2262 1738 0 2265 2520 89.9%
ov_SC02_039 2246 1738 0 2246 2416 93.0%
ov_SC02_041 2284 1738 0 2287 2561 89.3%
ov_SC03_001 2381 1739 0 2398 2869 83.6%
ov_SC03_002 2307 1743 0 2322 2631 88.3%
ov_SC03_003 2256 1738 0 2257 2423 93.1%
ov_SC03_006 2322 1744 0 2331 2767 84.2%
ov_SC03_007 2301 1738 0 2305 2623 87.9%
ov_SC03_010 2264 1738 0 2264 2471 91.6%
ov_SC03_011 2270 1738 0 2276 2527 90.1%
ov_SC03_012 2248 1738 0 2249 2406 93.5%
ov_SC03_013 2269 1738 0 2269 2493 91.0%
ov_SC03_014 2327 1763 0 2327 2685 86.7%
ov_SC03_015 2327 1763 0 2327 2685 86.7%
ov_SC03_023 2255 1738 0 2256 2435 92.6%
ov_SC03_024 2315 1743 0 2322 2641 87.9%
ov_SC03_028 2295 1738 0 2299 2664 86.3%
ov_SC03_029 2296 1740 0 2306 2644 87.2%
ov_SC03_030 2269 1743 0 2271 2495 91.0%
ov_SC03_031 2266 1738 0 2269 2514 90.3%
ov_SC03_089 2283 1738 0 2290 2581 88.7%
ov_SC03_090 2284 1738 0 2292 2625 87.3%
ov_SC03_091 2287 1738 0 2295 2640 86.9%
ov_SC03_092 2297 1738 0 2309 2587 89.3%
ov_SC03_093 2273 1738 0 2277 2563 88.8%
ov_SC03_094 2268 1738 0 2274 2577 88.2%
ov_SC03_095 2258 1738 0 2261 2474 91.4%
ov_SC03_096 2258 1738 0 2261 2465 91.7%
ov_SC03_097 2288 1738 0 2295 2603 88.2%
ov_SC03_098 2266 1738 0 2269 2541 89.3%
ov_SC03_099 2259 1738 0 2262 2504 90.3%
ov_SC03_100 2269 1738 0 2273 2539 89.5%
ov_SC03_101 2269 1738 0 2273 2528 89.9%
ov_SC03_102 2262 1738 0 2265 2492 90.9%
ov_SC03_103 2264 1740 0 2267 2510 90.3%
ov_SC03_104 2291 1738 0 2298 2616 87.8%
ov_SC03_105 2282 1738 0 2289 2597 88.1%
ov_SC03_108 2250 1738 0 2250 2443 92.1%
ov_SC03_109 2253 1738 0 2255 2424 93.0%
ov_SC03_110 2257 1738 0 2257 2468 91.5%
ov_SC03_111 2268 1738 0 2271 2510 90.5%
ov_SC03_112 2262 1740 0 2264 2526 89.6%
ov_SC03_113 2255 1740 0 2258 2468 91.5%
ov_SC03_114 2245 1738 0 2247 2415 93.0%
ov_SC03_115 2262 1738 0 2264 2472 91.6%
ov_SC03_116 2253 1738 0 2256 2438 92.5%
ov_SC03_117 2280 1738 0 2286 2557 89.4%
ov_SC03_118 2326 1762 0 2327 2685 86.7%
ov_SC03_119 2325 1762 0 2326 2685 86.6%
ov_SC03_121 2260 1738 0 2263 2459 92.0%
ov_SC03_124 2338 1734 0 2358 2741 86.0%
ov_SC03_125 2294 1738 0 2306 2588 89.1%
ov_SC03_126 2257 1740 0 2257 2423 93.1%
ov_SC04_000 2273 1742 0 2282 2546 89.6%
ov_SC04_002 2292 1738 0 2296 2636 87.1%
ov_SC04_003 2268 1738 0 2272 2502 90.8%
ov_SC04_004 2277 1738 0 2279 2558 89.1%
ov_SC04_005 2287 1738 0 2293 2612 87.8%
ov_SC04_006 2257 1738 0 2259 2454 92.1%
ov_SC04_007 2281 1738 0 2285 2569 88.9%
ov_SC04_008 2249 1738 0 2249 2415 93.1%
ov_SC04_009 2264 1738 0 2267 2441 92.9%
ov_SC04_010 2254 1738 0 2255 2419 93.2%
ov_SC04_011 2312 1738 0 2318 2803 82.7%
ov_SC04_012 2251 1738 0 2252 2420 93.1%
ov_SC04_015 2316 1739 0 2327 2611 89.1%
ov_SC04_016 2254 1738 0 2256 2440 92.5%
ov_SC04_018 2364 1773 0 2364 2857 82.7%
ov_SC04_019 2370 1773 0 2370 2857 83.0%
ov_SC04_020 2281 1738 0 2293 2567 89.3%
ov_SC04_021 2258 1740 0 2258 2423 93.2%
ov_SC05_000 2255 1742 0 2258 2422 93.2%
ov_SC05_001 2277 1738 0 2282 2574 88.7%
ov_SC05_002 2260 1738 0 2263 2442 92.7%
ov_SC05_003 2257 1738 0 2258 2481 91.0%
ov_SC05_004 2253 1738 0 2255 2464 91.5%
ov_SC05_005 2258 1738 0 2259 2491 90.7%
ov_SC05_006 2251 1738 0 2251 2430 92.6%
ov_SC05_007 2261 1738 0 2266 2482 91.3%
ov_SC05_008 2278 1738 0 2280 2543 89.7%
ov_SC05_009 2257 1738 0 2261 2438 92.7%
ov_SC05_010 2284 1738 0 2288 2588 88.4%
ov_SC05_011 2253 1738 0 2254 2409 93.6%
ov_SC05_017 2360 1735 0 2371 2842 83.4%
ov_SC05_018 2307 1738 0 2320 2673 86.8%
ov_SC05_019 2258 1740 0 2258 2423 93.2%
ov_SC06_000 2322 1747 0 2325 2691 86.4%
ov_SC06_006 2274 1738 0 2275 2511 90.6%
ov_SC06_008 2293 1740 0 2299 2542 90.4%
ov_SC06_010 2274 1738 0 2279 2517 90.5%
ov_SC06_011 2262 1738 0 2266 2468 91.8%
ov_SC06_013 2256 1738 0 2257 2425 93.1%
ov_SC06_014 2262 1738 0 2264 2453 92.3%
ov_SC06_015 2259 1738 0 2259 2421 93.3%
ov_SC06_016 2277 1738 0 2279 2549 89.4%
ov_SC06_018 2289 1740 0 2296 2665 86.2%
ov_SC06_020 2266 1740 0 2267 2518 90.0%
ov_SC06_022 2285 1738 0 2293 2642 86.8%
ov_SC06_024 2295 1738 0 2301 2667 86.3%
ov_SC06_025 2279 1738 0 2284 2572 88.8%
ov_SC06_027 2244 1738 0 2245 2408 93.2%
ov_SC06_029 2305 1738 0 2317 2662 87.0%
ov_SC06_030 2258 1738 0 2258 2456 91.9%
ov_SC06_032 2280 1739 0 2287 2658 86.0%
ov_SC06_033 2282 1739 0 2289 2631 87.0%
ov_SC07_000 2273 1742 0 2275 2521 90.2%
ov_SC07_001 2257 1738 0 2259 2454 92.1%
ov_SC07_002 2285 1738 0 2289 2579 88.8%
ov_SC07_006 2052 1555 0 2132 2455 86.8%
ov_SC07_007 2045 1586 0 2129 2613 81.5%
ov_SC07_008 2242 1738 0 2242 2386 94.0%
ov_SC07_009 2251 1738 0 2253 2430 92.7%
ov_SC07_010 2077 1608 0 2160 2524 85.6%
ov_SC07_011 2045 1585 0 2125 2449 86.8%