Files
BFM-decomp/docs/progress.fleet.md
T
Drew T 4f5f73c480 feat(phase-20): T1 — typedef lift closes the type-blocked propagation cap (9 fns ×134)
- build_engine_types.py: add find_typedefs() (brace-aware) + typedef_name() (anon-struct,
  fn-ptr, alias) + same-name/overlap collision guards; lift 14 typedefs to engine_types.h
  in source order after the named structs (A801593E4 -> S801593E4 dep preserved)
- engine_types.h: 48 named types + 14 typedefs; ov_SC01_077 byte-neutral (still d19c9580)
- dedup_propagate --auto-from: 9 reach-134 fns propagated x134 (8013E4B4 80148C9C 8014A238
  8014C118 80153978 801593E4 80168664 8016B964 8017AD0C); engine_core.h +9 DEFINE macros
- FINDING (R14/P9): cap was 16; only 9 were TYPE-blocked (all freed). The other 7 fail on
  undeclared callees/data (80142B2C 801535F4 80155E30 80157580 801576A8 80168F40 80170B48)
  -> the SS19 declaration-plumbing class, a recovery-tooling lever, NOT the type-lift
- check-all 136/136 byte-identical; fleet 58.00%% -> 58.35%%; dedup 1485 -> 1494 / 0 failed; 0 NON_MATCHING (G4)
2026-06-20 23:49:58 -06:00

8.2 KiB

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

136 binaries: main + resident + 134 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.

FLEET REAL substantive : 199091 (of which dedup-shared 198598 via 1494 groups / 198642 instances) FLEET LINKED PsyQ objs : 959 FLEET byte-identical : 200738 / 344010 = 58.35% (REAL+LINKED+empties) FLEET NON_MATCHING : 7 (0 in any default build — G4) FLEET INCLUDE_ASM stubs : 143265 FLEET matchable : 344010

binary REAL shared LINKED byte-ident matchable byte-ident %
main 54 2 959 1055 2096 50.3%
resident 123 0 0 125 146 85.6%
ov_SC01_000 1486 1486 0 1486 2403 61.8%
ov_SC01_001 1486 1486 0 1488 2467 60.3%
ov_SC01_004 1478 1478 0 1479 2416 61.2%
ov_SC01_005 1485 1485 0 1492 2504 59.6%
ov_SC01_006 1485 1485 0 1492 2504 59.6%
ov_SC01_008 1478 1478 0 1480 2428 61.0%
ov_SC01_009 1478 1478 0 1479 2510 58.9%
ov_SC01_074 1478 1478 0 1480 2427 61.0%
ov_SC01_077 1764 1446 0 1766 2586 68.3%
ov_SC01_080 1482 1482 0 1482 2515 58.9%
ov_SC01_084 1482 1482 0 1487 2581 57.6%
ov_SC02_000 1486 1486 0 1493 2684 55.6%
ov_SC02_003 1486 1486 0 1493 2684 55.6%
ov_SC02_004 1482 1482 0 1482 2403 61.7%
ov_SC02_005 1478 1478 0 1488 2930 50.8%
ov_SC02_011 1484 1484 0 1496 2896 51.7%
ov_SC02_015 1484 1484 0 1484 2416 61.4%
ov_SC02_016 1484 1484 0 1487 2548 58.4%
ov_SC02_017 1484 1484 0 1492 2735 54.6%
ov_SC02_021 1484 1484 0 1484 2439 60.8%
ov_SC02_026 1482 1482 0 1488 2575 57.8%
ov_SC02_027 1482 1482 0 1491 2695 55.3%
ov_SC02_028 1482 1482 0 1492 2704 55.2%
ov_SC02_031 1482 1482 0 1488 2565 58.0%
ov_SC02_035 1482 1482 0 1485 2523 58.9%
ov_SC02_039 1482 1482 0 1482 2418 61.3%
ov_SC02_041 1482 1482 0 1485 2563 57.9%
ov_SC03_001 1482 1482 0 1500 2870 52.3%
ov_SC03_002 1486 1486 0 1502 2632 57.1%
ov_SC03_003 1482 1482 0 1483 2425 61.2%
ov_SC03_006 1488 1488 0 1497 2768 54.1%
ov_SC03_007 1482 1482 0 1486 2626 56.6%
ov_SC03_010 1482 1482 0 1482 2472 60.0%
ov_SC03_011 1482 1482 0 1488 2530 58.8%
ov_SC03_012 1482 1482 0 1483 2408 61.6%
ov_SC03_013 1482 1482 0 1482 2495 59.4%
ov_SC03_014 1482 1482 0 1492 2688 55.5%
ov_SC03_015 1482 1482 0 1492 2688 55.5%
ov_SC03_023 1482 1482 0 1483 2437 60.9%
ov_SC03_024 1482 1482 0 1494 2644 56.5%
ov_SC03_028 1482 1482 0 1486 2667 55.7%
ov_SC03_029 1484 1484 0 1494 2647 56.4%
ov_SC03_030 1486 1486 0 1488 2498 59.6%
ov_SC03_031 1482 1482 0 1486 2517 59.0%
ov_SC03_089 1482 1482 0 1489 2584 57.6%
ov_SC03_090 1482 1482 0 1490 2628 56.7%
ov_SC03_091 1482 1482 0 1490 2643 56.4%
ov_SC03_092 1482 1482 0 1494 2590 57.7%
ov_SC03_093 1482 1482 0 1486 2566 57.9%
ov_SC03_094 1482 1482 0 1488 2579 57.7%
ov_SC03_095 1482 1482 0 1485 2477 60.0%
ov_SC03_096 1482 1482 0 1485 2468 60.2%
ov_SC03_097 1482 1482 0 1489 2606 57.1%
ov_SC03_098 1482 1482 0 1485 2544 58.4%
ov_SC03_099 1482 1482 0 1485 2507 59.2%
ov_SC03_100 1482 1482 0 1486 2542 58.5%
ov_SC03_101 1482 1482 0 1486 2531 58.7%
ov_SC03_102 1482 1482 0 1485 2495 59.5%
ov_SC03_103 1484 1484 0 1487 2513 59.2%
ov_SC03_104 1482 1482 0 1489 2619 56.9%
ov_SC03_105 1482 1482 0 1489 2600 57.3%
ov_SC03_108 1482 1482 0 1482 2446 60.6%
ov_SC03_109 1482 1482 0 1484 2426 61.2%
ov_SC03_110 1482 1482 0 1482 2471 60.0%
ov_SC03_111 1482 1482 0 1485 2513 59.1%
ov_SC03_112 1484 1484 0 1486 2529 58.8%
ov_SC03_113 1484 1484 0 1487 2471 60.2%
ov_SC03_114 1482 1482 0 1484 2417 61.4%
ov_SC03_115 1482 1482 0 1484 2475 60.0%
ov_SC03_116 1482 1482 0 1485 2441 60.8%
ov_SC03_117 1482 1482 0 1488 2560 58.1%
ov_SC03_118 1482 1482 0 1495 2688 55.6%
ov_SC03_119 1482 1482 0 1495 2688 55.6%
ov_SC03_121 1482 1482 0 1485 2462 60.3%
ov_SC03_124 1478 1478 0 1498 2744 54.6%
ov_SC03_125 1482 1482 0 1494 2591 57.7%
ov_SC03_126 1482 1482 0 1483 2425 61.2%
ov_SC04_000 1486 1486 0 1495 2547 58.7%
ov_SC04_002 1482 1482 0 1486 2639 56.3%
ov_SC04_003 1482 1482 0 1486 2505 59.3%
ov_SC04_004 1482 1482 0 1484 2561 57.9%
ov_SC04_005 1482 1482 0 1488 2615 56.9%
ov_SC04_006 1482 1482 0 1484 2456 60.4%
ov_SC04_007 1482 1482 0 1486 2572 57.8%
ov_SC04_008 1482 1482 0 1482 2417 61.3%
ov_SC04_009 1482 1482 0 1485 2443 60.8%
ov_SC04_010 1482 1482 0 1483 2421 61.3%
ov_SC04_011 1482 1482 0 1488 2806 53.0%
ov_SC04_012 1482 1482 0 1483 2422 61.2%
ov_SC04_015 1482 1482 0 1494 2614 57.2%
ov_SC04_016 1482 1482 0 1484 2442 60.8%
ov_SC04_018 1482 1482 0 1495 2858 52.3%
ov_SC04_019 1482 1482 0 1495 2858 52.3%
ov_SC04_020 1482 1482 0 1494 2570 58.1%
ov_SC04_021 1482 1482 0 1483 2425 61.2%
ov_SC05_000 1486 1486 0 1489 2422 61.5%
ov_SC05_001 1482 1482 0 1487 2577 57.7%
ov_SC05_002 1482 1482 0 1485 2445 60.7%
ov_SC05_003 1482 1482 0 1483 2484 59.7%
ov_SC05_004 1482 1482 0 1484 2467 60.2%
ov_SC05_005 1482 1482 0 1483 2494 59.5%
ov_SC05_006 1482 1482 0 1482 2432 60.9%
ov_SC05_007 1482 1482 0 1487 2485 59.8%
ov_SC05_008 1482 1482 0 1484 2546 58.3%
ov_SC05_009 1482 1482 0 1486 2440 60.9%
ov_SC05_010 1482 1482 0 1486 2591 57.4%
ov_SC05_011 1482 1482 0 1483 2411 61.5%
ov_SC05_017 1478 1478 0 1490 2845 52.4%
ov_SC05_018 1482 1482 0 1495 2676 55.9%
ov_SC05_019 1482 1482 0 1483 2425 61.2%
ov_SC06_000 1486 1486 0 1494 2692 55.5%
ov_SC06_006 1482 1482 0 1483 2514 59.0%
ov_SC06_008 1484 1484 0 1490 2544 58.6%
ov_SC06_010 1482 1482 0 1487 2520 59.0%
ov_SC06_011 1482 1482 0 1486 2471 60.1%
ov_SC06_013 1482 1482 0 1483 2427 61.1%
ov_SC06_014 1482 1482 0 1484 2455 60.4%
ov_SC06_015 1482 1482 0 1482 2423 61.2%
ov_SC06_016 1482 1482 0 1484 2552 58.2%
ov_SC06_018 1482 1482 0 1490 2668 55.8%
ov_SC06_020 1482 1482 0 1483 2521 58.8%
ov_SC06_022 1482 1482 0 1490 2645 56.3%
ov_SC06_024 1482 1482 0 1488 2670 55.7%
ov_SC06_025 1482 1482 0 1487 2575 57.7%
ov_SC06_027 1482 1482 0 1483 2410 61.5%
ov_SC06_029 1482 1482 0 1494 2665 56.1%
ov_SC06_030 1482 1482 0 1482 2459 60.3%
ov_SC06_032 1482 1482 0 1489 2661 56.0%
ov_SC06_033 1482 1482 0 1489 2634 56.5%
ov_SC07_000 1486 1486 0 1488 2522 59.0%
ov_SC07_001 1482 1482 0 1484 2457 60.4%
ov_SC07_002 1482 1482 0 1486 2582 57.6%
ov_SC07_008 1482 1482 0 1482 2388 62.1%
ov_SC07_009 1482 1482 0 1484 2432 61.0%