Files
BFM-decomp/docs/progress.fleet.md
T
Drew T cbc5665fd8 feat(phase-29): T57 — func_80133AB0 132/132 (+18,084 ins); a SECOND opt-in lever found; fleet 86.0% instr
First batch off the 64-family list. Fleet crosses 86.0% instr-weighted.

TWO OF MY OWN ERRORS, both caught by measuring:
 1. Three of five targets never ran — --band defaults to `substantial` (nins>=80) and I picked three
    at 79/78/78. The tool printed "2 matched-exemplar families" and I nearly read that as "5
    attempted, 3 refused". Read the SELECTION line, not the intent.
 2. Stale map: .run/family_hseq.json was regenerated in T55, BEFORE T56 banked func_80144090, so it
    still listed 134 live stubs for a now-complete family. Membership is stable (h_seq over original
    bytes); only the matched/unmatched split rots. Filter live stubs from src/, not from n_matched.

THE FIRST RUN WAS 0/268 — AND IT WAS A SECOND OPT-IN LEVER, NOT A WALL. Diagnosed one sibling past
the -j16 interleave and the §58 warning noise: `conflicting types for func_80133AB0` (spliced def at
2688 vs a decl at 2429) — the FUNCTION decl-conflict class, not the DATA one T56 fixed. That is
exactly what --normalize-self-decls exists for (the sibling's own caller declares the member in a
different C form than the exemplar's, which used a fn-ptr cast) — and it is OPT-IN, so it never ran.
Re-ran the identical two families with it: 0 -> 132 banked.

  0x80133ab0 (137 ins, jr_8012ACE0)  132/132 BANKED
  0x80143d28 (80 ins,  jr_80140608)  0/136 — a different, undiagnosed blocker

THE PATTERN, TWICE IN A ROW: T56 the DATA decl lever was unreachable from the sweep path; T57 the
FUNCTION decl lever is reachable but OFF BY DEFAULT. Both present as a flat 0/N that reads exactly
like a compiler wall. A 0/N from a sweep is a statement about which levers were enabled, not about
the code.

GATES: R22 clean-fleet 140 passed, 0 failed of 140; tools-health OK (corpus 0 PHANTOM + 0 TRUNCATED,
cdecl, audit-binaries, dedup 1886/0); 0 NON_MATCHING (G4).

METRICS: instr 85.8% -> 86.0% (11279007 -> 11297091 = +18,084 ins); fn-count 90.69% -> 90.73% (+132);
distinct-code 76.4% -> 76.7% (67812 -> 67937 = +125).
SHARPENS the T56 anomaly rather than resolving it: 132 banked here moved distinct-code +125, and
T52's 132 also moved it +125 — but T56's 136 moved it +0. Three PURE families, two behave one way
and one the other. Still unexplained, still not guessed at.
2026-07-28 20:37:06 -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: 320924 / 353720 = 90.73% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay) FLEET instr-weighted : 11297091 / 13141652 = 86.0% (shipped .text across main + resident + 138 overlays; the decomp.dev-DISPLAY number) FLEET distinct-code(uniq): 4322517 / 5634875 = 76.7% (67937/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: 11296655 / 13081451 = 86.4%)

FLEET REAL substantive : 319069 (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 : 32789 FLEET matchable : 353720

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 2286 1742 0 2286 2403 95.1%
ov_SC01_001 2291 1743 0 2293 2466 93.0%
ov_SC01_004 2281 1734 0 2282 2414 94.5%
ov_SC01_005 2311 1757 0 2311 2503 92.3%
ov_SC01_006 2311 1757 0 2311 2503 92.3%
ov_SC01_008 2281 1734 0 2283 2426 94.1%
ov_SC01_009 2307 1735 0 2308 2507 92.1%
ov_SC01_074 2285 1735 0 2287 2425 94.3%
ov_SC01_077 2464 1702 0 2466 2585 95.4%
ov_SC01_080 2323 1738 0 2323 2512 92.5%
ov_SC01_084 2330 1738 0 2335 2579 90.5%
ov_SC02_000 2383 1773 0 2383 2683 88.8%
ov_SC02_003 2383 1773 0 2383 2683 88.8%
ov_SC02_004 2289 1738 0 2289 2401 95.3%
ov_SC02_005 2397 1734 0 2407 2927 82.2%
ov_SC02_011 2410 1741 0 2421 2893 83.7%
ov_SC02_015 2291 1740 0 2291 2414 94.9%
ov_SC02_016 2325 1740 0 2328 2545 91.5%
ov_SC02_017 2369 1740 0 2377 2732 87.0%
ov_SC02_021 2297 1740 0 2297 2437 94.3%
ov_SC02_026 2312 1738 0 2318 2572 90.1%
ov_SC02_027 2335 1738 0 2344 2692 87.1%
ov_SC02_028 2337 1738 0 2347 2701 86.9%
ov_SC02_031 2323 1739 0 2328 2562 90.9%
ov_SC02_035 2298 1738 0 2301 2520 91.3%
ov_SC02_039 2282 1738 0 2282 2416 94.5%
ov_SC02_041 2320 1738 0 2323 2561 90.7%
ov_SC03_001 2417 1739 0 2434 2869 84.8%
ov_SC03_002 2343 1743 0 2358 2631 89.6%
ov_SC03_003 2292 1738 0 2293 2423 94.6%
ov_SC03_006 2360 1744 0 2369 2767 85.6%
ov_SC03_007 2337 1738 0 2341 2623 89.2%
ov_SC03_010 2300 1738 0 2300 2471 93.1%
ov_SC03_011 2306 1738 0 2312 2527 91.5%
ov_SC03_012 2284 1738 0 2285 2406 95.0%
ov_SC03_013 2305 1738 0 2305 2493 92.5%
ov_SC03_014 2363 1763 0 2363 2685 88.0%
ov_SC03_015 2363 1763 0 2363 2685 88.0%
ov_SC03_023 2291 1738 0 2292 2435 94.1%
ov_SC03_024 2351 1743 0 2358 2641 89.3%
ov_SC03_028 2331 1738 0 2335 2664 87.7%
ov_SC03_029 2333 1740 0 2343 2644 88.6%
ov_SC03_030 2306 1743 0 2308 2495 92.5%
ov_SC03_031 2302 1738 0 2305 2514 91.7%
ov_SC03_089 2319 1738 0 2326 2581 90.1%
ov_SC03_090 2320 1738 0 2328 2625 88.7%
ov_SC03_091 2323 1738 0 2331 2640 88.3%
ov_SC03_092 2333 1738 0 2345 2587 90.6%
ov_SC03_093 2309 1738 0 2313 2563 90.2%
ov_SC03_094 2304 1738 0 2310 2577 89.6%
ov_SC03_095 2294 1738 0 2297 2474 92.8%
ov_SC03_096 2294 1738 0 2297 2465 93.2%
ov_SC03_097 2324 1738 0 2331 2603 89.6%
ov_SC03_098 2302 1738 0 2305 2541 90.7%
ov_SC03_099 2295 1738 0 2298 2504 91.8%
ov_SC03_100 2305 1738 0 2309 2539 90.9%
ov_SC03_101 2305 1738 0 2309 2528 91.3%
ov_SC03_102 2298 1738 0 2301 2492 92.3%
ov_SC03_103 2301 1740 0 2304 2510 91.8%
ov_SC03_104 2327 1738 0 2334 2616 89.2%
ov_SC03_105 2318 1738 0 2325 2597 89.5%
ov_SC03_108 2285 1738 0 2285 2443 93.5%
ov_SC03_109 2289 1738 0 2291 2424 94.5%
ov_SC03_110 2293 1738 0 2293 2468 92.9%
ov_SC03_111 2304 1738 0 2307 2510 91.9%
ov_SC03_112 2300 1740 0 2302 2526 91.1%
ov_SC03_113 2293 1740 0 2296 2468 93.0%
ov_SC03_114 2282 1738 0 2284 2415 94.6%
ov_SC03_115 2299 1738 0 2301 2472 93.1%
ov_SC03_116 2290 1738 0 2293 2438 94.1%
ov_SC03_117 2317 1738 0 2323 2557 90.8%
ov_SC03_118 2363 1762 0 2364 2685 88.0%
ov_SC03_119 2362 1762 0 2363 2685 88.0%
ov_SC03_121 2297 1738 0 2300 2459 93.5%
ov_SC03_124 2375 1734 0 2395 2741 87.4%
ov_SC03_125 2331 1738 0 2343 2588 90.5%
ov_SC03_126 2294 1740 0 2294 2423 94.7%
ov_SC04_000 2310 1742 0 2319 2546 91.1%
ov_SC04_002 2329 1738 0 2333 2636 88.5%
ov_SC04_003 2305 1738 0 2309 2502 92.3%
ov_SC04_004 2314 1738 0 2316 2558 90.5%
ov_SC04_005 2324 1738 0 2330 2612 89.2%
ov_SC04_006 2294 1738 0 2296 2454 93.6%
ov_SC04_007 2318 1738 0 2322 2569 90.4%
ov_SC04_008 2286 1738 0 2286 2415 94.7%
ov_SC04_009 2301 1738 0 2304 2441 94.4%
ov_SC04_010 2291 1738 0 2292 2419 94.7%
ov_SC04_011 2349 1738 0 2355 2803 84.0%
ov_SC04_012 2288 1738 0 2289 2420 94.6%
ov_SC04_015 2353 1739 0 2364 2611 90.5%
ov_SC04_016 2291 1738 0 2293 2440 94.0%
ov_SC04_018 2401 1773 0 2401 2857 84.0%
ov_SC04_019 2407 1773 0 2407 2857 84.2%
ov_SC04_020 2318 1738 0 2330 2567 90.8%
ov_SC04_021 2295 1740 0 2295 2423 94.7%
ov_SC05_000 2292 1742 0 2295 2422 94.8%
ov_SC05_001 2314 1738 0 2319 2574 90.1%
ov_SC05_002 2297 1738 0 2300 2442 94.2%
ov_SC05_003 2294 1738 0 2295 2481 92.5%
ov_SC05_004 2290 1738 0 2292 2464 93.0%
ov_SC05_005 2295 1738 0 2296 2491 92.2%
ov_SC05_006 2288 1738 0 2288 2430 94.2%
ov_SC05_007 2298 1738 0 2303 2482 92.8%
ov_SC05_008 2315 1738 0 2317 2543 91.1%
ov_SC05_009 2294 1738 0 2298 2438 94.3%
ov_SC05_010 2321 1738 0 2325 2588 89.8%
ov_SC05_011 2290 1738 0 2291 2409 95.1%
ov_SC05_017 2397 1735 0 2408 2842 84.7%
ov_SC05_018 2344 1738 0 2357 2673 88.2%
ov_SC05_019 2295 1740 0 2295 2423 94.7%
ov_SC06_000 2359 1747 0 2362 2691 87.8%
ov_SC06_006 2311 1738 0 2312 2511 92.1%
ov_SC06_008 2331 1740 0 2337 2542 91.9%
ov_SC06_010 2311 1738 0 2316 2517 92.0%
ov_SC06_011 2299 1738 0 2303 2468 93.3%
ov_SC06_013 2293 1738 0 2294 2425 94.6%
ov_SC06_014 2299 1738 0 2301 2453 93.8%
ov_SC06_015 2296 1738 0 2296 2421 94.8%
ov_SC06_016 2314 1738 0 2316 2549 90.9%
ov_SC06_018 2323 1740 0 2330 2665 87.4%
ov_SC06_020 2303 1740 0 2304 2518 91.5%
ov_SC06_022 2322 1738 0 2330 2642 88.2%
ov_SC06_024 2332 1738 0 2338 2667 87.7%
ov_SC06_025 2316 1738 0 2321 2572 90.2%
ov_SC06_027 2281 1738 0 2282 2408 94.8%
ov_SC06_029 2342 1738 0 2354 2662 88.4%
ov_SC06_030 2295 1738 0 2295 2456 93.4%
ov_SC06_032 2317 1739 0 2324 2658 87.4%
ov_SC06_033 2319 1739 0 2326 2631 88.4%
ov_SC07_000 2310 1742 0 2312 2521 91.7%
ov_SC07_001 2294 1738 0 2296 2454 93.6%
ov_SC07_002 2322 1738 0 2326 2579 90.2%
ov_SC07_006 2091 1555 0 2171 2456 88.4%
ov_SC07_007 2086 1586 0 2170 2613 83.0%
ov_SC07_008 2279 1738 0 2279 2386 95.5%
ov_SC07_009 2288 1738 0 2290 2430 94.2%
ov_SC07_010 2119 1608 0 2202 2524 87.2%
ov_SC07_011 2086 1585 0 2166 2449 88.4%