Files
BFM-decomp/docs/progress.fleet.md
T
Drew T 7e32da8f64 feat(phase-29): T95/T96 — func_80142B2C 136/136 (§121); all 3 byte-identical stragglers closed
- The draft calls ((void(*)(void))func_80142C84)() but nothing declares that symbol above the
  splice: it is DEFINED by DEFINE_func_80142C84() in engine_core.h, so gather_externs has no
  extern line to harvest, and the member TU instantiates the macro BELOW our function.
- The wrong guess was the useful step: a no-prototype `extern s32 func_80142C84();` turned
  `undeclared` into `conflicting types` — a DIFFERENT error, proving the diagnosis right and the
  type wrong. Synthesised from the macro's own definition head -> MATCH (34 ins) -> 136/136.
- NEW macro_def_sig_map() (1,878 signatures): the complement of header_sig_map(), which reads the
  externs a macro emits FOR ITS CALLEES; this reads the signature a macro DEFINES. Cookbook §121.
- ALL THREE byte-identical stragglers carried since SESSION-24 are now closed: func_80146750
  137/137 (T84), func_801759D8 137/137 (T93), func_80142B2C 136/136 (T95) = 410 members, and not
  one was a compiler wall (a signedness-wrong header decl, a type-name collision, a missing extern).
- Blast radius 0 (74 further families re-swept). FOUR data points now: only §117 (wrong LOGIC)
  generalised at 1,209 members; §118/§120/§121 are path-reachability gaps worth ~one family each.
- GATES: R22 clean-fleet 140/140; dedup 1886/0; 0 NON_MATCHING (G4).
- METRICS: fn-count 91.88 -> 91.96% (+273, exact) · instr 87.3 -> 87.4% (+12,296) · distinct +0
  (both byte-identical families — §111 predicted exactly that).
2026-07-30 13:13:06 -06:00

161 lines
9.1 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)
# 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: 325279 / 353720 = 91.96% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
FLEET instr-weighted : 11490979 / 13141652 = 87.4% (shipped .text across main + resident + 138 overlays; the decomp.dev-DISPLAY number)
FLEET distinct-code(uniq): 4395820 / 5634875 = 78.0% (69744/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: 11490543 / 13081451 = 87.8%)
FLEET REAL substantive : 323424 (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 : 28434
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 | 2310 | 1742 | 0 | 2310 | 2403 | 96.1% |
| ov_SC01_001 | 2317 | 1743 | 0 | 2319 | 2466 | 94.0% |
| ov_SC01_004 | 2308 | 1734 | 0 | 2309 | 2414 | 95.7% |
| ov_SC01_005 | 2339 | 1757 | 0 | 2339 | 2503 | 93.4% |
| ov_SC01_006 | 2339 | 1757 | 0 | 2339 | 2503 | 93.4% |
| ov_SC01_008 | 2308 | 1734 | 0 | 2310 | 2426 | 95.2% |
| ov_SC01_009 | 2333 | 1735 | 0 | 2334 | 2507 | 93.1% |
| ov_SC01_074 | 2314 | 1735 | 0 | 2316 | 2425 | 95.5% |
| ov_SC01_077 | 2481 | 1702 | 0 | 2483 | 2585 | 96.1% |
| ov_SC01_080 | 2348 | 1738 | 0 | 2348 | 2512 | 93.5% |
| ov_SC01_084 | 2357 | 1738 | 0 | 2362 | 2579 | 91.6% |
| ov_SC02_000 | 2411 | 1773 | 0 | 2411 | 2683 | 89.9% |
| ov_SC02_003 | 2411 | 1773 | 0 | 2411 | 2683 | 89.9% |
| ov_SC02_004 | 2313 | 1738 | 0 | 2313 | 2401 | 96.3% |
| ov_SC02_005 | 2436 | 1734 | 0 | 2446 | 2927 | 83.6% |
| ov_SC02_011 | 2444 | 1741 | 0 | 2455 | 2893 | 84.9% |
| ov_SC02_015 | 2318 | 1740 | 0 | 2318 | 2414 | 96.0% |
| ov_SC02_016 | 2356 | 1740 | 0 | 2359 | 2545 | 92.7% |
| ov_SC02_017 | 2405 | 1740 | 0 | 2413 | 2732 | 88.3% |
| ov_SC02_021 | 2323 | 1740 | 0 | 2323 | 2437 | 95.3% |
| ov_SC02_026 | 2338 | 1738 | 0 | 2344 | 2572 | 91.1% |
| ov_SC02_027 | 2362 | 1738 | 0 | 2371 | 2692 | 88.1% |
| ov_SC02_028 | 2364 | 1738 | 0 | 2374 | 2701 | 87.9% |
| ov_SC02_031 | 2351 | 1739 | 0 | 2356 | 2562 | 92.0% |
| ov_SC02_035 | 2324 | 1738 | 0 | 2327 | 2520 | 92.3% |
| ov_SC02_039 | 2309 | 1738 | 0 | 2309 | 2416 | 95.6% |
| ov_SC02_041 | 2352 | 1738 | 0 | 2355 | 2561 | 92.0% |
| ov_SC03_001 | 2453 | 1739 | 0 | 2470 | 2869 | 86.1% |
| ov_SC03_002 | 2371 | 1743 | 0 | 2386 | 2631 | 90.7% |
| ov_SC03_003 | 2319 | 1738 | 0 | 2320 | 2423 | 95.7% |
| ov_SC03_006 | 2393 | 1744 | 0 | 2402 | 2767 | 86.8% |
| ov_SC03_007 | 2370 | 1738 | 0 | 2374 | 2623 | 90.5% |
| ov_SC03_010 | 2328 | 1738 | 0 | 2328 | 2471 | 94.2% |
| ov_SC03_011 | 2335 | 1738 | 0 | 2341 | 2527 | 92.6% |
| ov_SC03_012 | 2310 | 1738 | 0 | 2311 | 2406 | 96.1% |
| ov_SC03_013 | 2334 | 1738 | 0 | 2334 | 2493 | 93.6% |
| ov_SC03_014 | 2395 | 1763 | 0 | 2395 | 2685 | 89.2% |
| ov_SC03_015 | 2397 | 1763 | 0 | 2397 | 2685 | 89.3% |
| ov_SC03_023 | 2321 | 1738 | 0 | 2322 | 2435 | 95.4% |
| ov_SC03_024 | 2386 | 1743 | 0 | 2393 | 2641 | 90.6% |
| ov_SC03_028 | 2355 | 1738 | 0 | 2359 | 2664 | 88.6% |
| ov_SC03_029 | 2366 | 1740 | 0 | 2376 | 2644 | 89.9% |
| ov_SC03_030 | 2332 | 1743 | 0 | 2334 | 2495 | 93.5% |
| ov_SC03_031 | 2328 | 1738 | 0 | 2331 | 2514 | 92.7% |
| ov_SC03_089 | 2344 | 1738 | 0 | 2351 | 2581 | 91.1% |
| ov_SC03_090 | 2347 | 1738 | 0 | 2355 | 2625 | 89.7% |
| ov_SC03_091 | 2349 | 1738 | 0 | 2357 | 2640 | 89.3% |
| ov_SC03_092 | 2365 | 1738 | 0 | 2377 | 2587 | 91.9% |
| ov_SC03_093 | 2336 | 1738 | 0 | 2340 | 2563 | 91.3% |
| ov_SC03_094 | 2331 | 1738 | 0 | 2337 | 2577 | 90.7% |
| ov_SC03_095 | 2320 | 1738 | 0 | 2323 | 2474 | 93.9% |
| ov_SC03_096 | 2321 | 1738 | 0 | 2324 | 2465 | 94.3% |
| ov_SC03_097 | 2357 | 1738 | 0 | 2364 | 2603 | 90.8% |
| ov_SC03_098 | 2328 | 1738 | 0 | 2331 | 2541 | 91.7% |
| ov_SC03_099 | 2321 | 1738 | 0 | 2324 | 2504 | 92.8% |
| ov_SC03_100 | 2331 | 1738 | 0 | 2335 | 2539 | 92.0% |
| ov_SC03_101 | 2334 | 1738 | 0 | 2338 | 2528 | 92.5% |
| ov_SC03_102 | 2322 | 1738 | 0 | 2325 | 2492 | 93.3% |
| ov_SC03_103 | 2327 | 1740 | 0 | 2330 | 2510 | 92.8% |
| ov_SC03_104 | 2351 | 1738 | 0 | 2358 | 2616 | 90.1% |
| ov_SC03_105 | 2346 | 1738 | 0 | 2353 | 2597 | 90.6% |
| ov_SC03_108 | 2312 | 1738 | 0 | 2312 | 2443 | 94.6% |
| ov_SC03_109 | 2317 | 1738 | 0 | 2319 | 2424 | 95.7% |
| ov_SC03_110 | 2319 | 1738 | 0 | 2319 | 2468 | 94.0% |
| ov_SC03_111 | 2330 | 1738 | 0 | 2333 | 2510 | 92.9% |
| ov_SC03_112 | 2327 | 1740 | 0 | 2329 | 2526 | 92.2% |
| ov_SC03_113 | 2320 | 1740 | 0 | 2323 | 2468 | 94.1% |
| ov_SC03_114 | 2308 | 1738 | 0 | 2310 | 2415 | 95.7% |
| ov_SC03_115 | 2327 | 1738 | 0 | 2329 | 2472 | 94.2% |
| ov_SC03_116 | 2316 | 1738 | 0 | 2319 | 2438 | 95.1% |
| ov_SC03_117 | 2350 | 1738 | 0 | 2356 | 2557 | 92.1% |
| ov_SC03_118 | 2398 | 1762 | 0 | 2399 | 2685 | 89.3% |
| ov_SC03_119 | 2394 | 1762 | 0 | 2395 | 2685 | 89.2% |
| ov_SC03_121 | 2324 | 1738 | 0 | 2327 | 2459 | 94.6% |
| ov_SC03_124 | 2415 | 1734 | 0 | 2435 | 2741 | 88.8% |
| ov_SC03_125 | 2358 | 1738 | 0 | 2370 | 2588 | 91.6% |
| ov_SC03_126 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
| ov_SC04_000 | 2341 | 1742 | 0 | 2350 | 2546 | 92.3% |
| ov_SC04_002 | 2363 | 1738 | 0 | 2367 | 2636 | 89.8% |
| ov_SC04_003 | 2334 | 1738 | 0 | 2338 | 2502 | 93.4% |
| ov_SC04_004 | 2343 | 1738 | 0 | 2345 | 2558 | 91.7% |
| ov_SC04_005 | 2353 | 1738 | 0 | 2359 | 2612 | 90.3% |
| ov_SC04_006 | 2320 | 1738 | 0 | 2322 | 2454 | 94.6% |
| ov_SC04_007 | 2347 | 1738 | 0 | 2351 | 2569 | 91.5% |
| ov_SC04_008 | 2313 | 1738 | 0 | 2313 | 2415 | 95.8% |
| ov_SC04_009 | 2327 | 1738 | 0 | 2330 | 2441 | 95.5% |
| ov_SC04_010 | 2317 | 1738 | 0 | 2318 | 2419 | 95.8% |
| ov_SC04_011 | 2376 | 1738 | 0 | 2382 | 2803 | 85.0% |
| ov_SC04_012 | 2315 | 1738 | 0 | 2316 | 2420 | 95.7% |
| ov_SC04_015 | 2385 | 1739 | 0 | 2396 | 2611 | 91.8% |
| ov_SC04_016 | 2317 | 1738 | 0 | 2319 | 2440 | 95.0% |
| ov_SC04_018 | 2451 | 1773 | 0 | 2451 | 2857 | 85.8% |
| ov_SC04_019 | 2451 | 1773 | 0 | 2451 | 2857 | 85.8% |
| ov_SC04_020 | 2346 | 1738 | 0 | 2358 | 2567 | 91.9% |
| ov_SC04_021 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
| ov_SC05_000 | 2319 | 1742 | 0 | 2322 | 2422 | 95.9% |
| ov_SC05_001 | 2341 | 1738 | 0 | 2346 | 2574 | 91.1% |
| ov_SC05_002 | 2325 | 1738 | 0 | 2328 | 2442 | 95.3% |
| ov_SC05_003 | 2321 | 1738 | 0 | 2322 | 2481 | 93.6% |
| ov_SC05_004 | 2317 | 1738 | 0 | 2319 | 2464 | 94.1% |
| ov_SC05_005 | 2321 | 1738 | 0 | 2322 | 2491 | 93.2% |
| ov_SC05_006 | 2315 | 1738 | 0 | 2315 | 2430 | 95.3% |
| ov_SC05_007 | 2325 | 1738 | 0 | 2330 | 2482 | 93.9% |
| ov_SC05_008 | 2346 | 1738 | 0 | 2348 | 2543 | 92.3% |
| ov_SC05_009 | 2320 | 1738 | 0 | 2324 | 2438 | 95.3% |
| ov_SC05_010 | 2348 | 1738 | 0 | 2352 | 2588 | 90.9% |
| ov_SC05_011 | 2316 | 1738 | 0 | 2317 | 2409 | 96.2% |
| ov_SC05_017 | 2438 | 1735 | 0 | 2449 | 2842 | 86.2% |
| ov_SC05_018 | 2377 | 1738 | 0 | 2390 | 2673 | 89.4% |
| ov_SC05_019 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
| ov_SC06_000 | 2397 | 1747 | 0 | 2400 | 2691 | 89.2% |
| ov_SC06_006 | 2340 | 1738 | 0 | 2341 | 2511 | 93.2% |
| ov_SC06_008 | 2361 | 1740 | 0 | 2367 | 2542 | 93.1% |
| ov_SC06_010 | 2340 | 1738 | 0 | 2345 | 2517 | 93.2% |
| ov_SC06_011 | 2325 | 1738 | 0 | 2329 | 2468 | 94.4% |
| ov_SC06_013 | 2319 | 1738 | 0 | 2320 | 2425 | 95.7% |
| ov_SC06_014 | 2326 | 1738 | 0 | 2328 | 2453 | 94.9% |
| ov_SC06_015 | 2324 | 1738 | 0 | 2324 | 2421 | 96.0% |
| ov_SC06_016 | 2340 | 1738 | 0 | 2342 | 2549 | 91.9% |
| ov_SC06_018 | 2354 | 1740 | 0 | 2361 | 2665 | 88.6% |
| ov_SC06_020 | 2329 | 1740 | 0 | 2330 | 2518 | 92.5% |
| ov_SC06_022 | 2354 | 1738 | 0 | 2362 | 2642 | 89.4% |
| ov_SC06_024 | 2362 | 1738 | 0 | 2368 | 2667 | 88.8% |
| ov_SC06_025 | 2348 | 1738 | 0 | 2353 | 2572 | 91.5% |
| ov_SC06_027 | 2308 | 1738 | 0 | 2309 | 2408 | 95.9% |
| ov_SC06_029 | 2369 | 1738 | 0 | 2381 | 2662 | 89.4% |
| ov_SC06_030 | 2323 | 1738 | 0 | 2323 | 2456 | 94.6% |
| ov_SC06_032 | 2349 | 1739 | 0 | 2356 | 2658 | 88.6% |
| ov_SC06_033 | 2350 | 1739 | 0 | 2357 | 2631 | 89.6% |
| ov_SC07_000 | 2336 | 1742 | 0 | 2338 | 2521 | 92.7% |
| ov_SC07_001 | 2320 | 1738 | 0 | 2322 | 2454 | 94.6% |
| ov_SC07_002 | 2347 | 1738 | 0 | 2351 | 2579 | 91.2% |
| ov_SC07_006 | 2210 | 1555 | 0 | 2290 | 2456 | 93.2% |
| ov_SC07_007 | 2229 | 1586 | 0 | 2313 | 2613 | 88.5% |
| ov_SC07_008 | 2305 | 1738 | 0 | 2305 | 2386 | 96.6% |
| ov_SC07_009 | 2315 | 1738 | 0 | 2317 | 2430 | 95.3% |
| ov_SC07_010 | 2232 | 1608 | 0 | 2315 | 2524 | 91.7% |
| ov_SC07_011 | 2229 | 1585 | 0 | 2309 | 2449 | 94.3% |