Files
BFM-decomp/docs/progress.fleet.md
T
Drew T 6c5bd1c4a9 feat(phase-20): cast_call_sites.py — the §17a-1 callee-cast cap tool; 6 recovered, fleet 58.63%->58.82%
- tools/cast_call_sites.py: per draft, callee whose canonical TU sig != draft's
  intended sig -> decl->canonical (kills in-TU conflicting types, keeps symbol in
  scope) + call-site cast ((ret(*)(args))func_X)(args) (codegen-neutral: gcc folds
  the cast of a known symbol -> direct jal). Pure --in/--out; whole-binary gate is
  the arbiter (G3/P9). Pipeline: canon_resident_calls -> cast_call_sites ->
  sig_unify -> harvest_verify --chunk 1
- recovered 6 of T6 batch-1's 33 gate-fails byte-identical (func_80153C44/8015CF58/
  801711FC/80161BE0/801683D8/8015F948); 5 propagated x134 + 1 local; check-all 136/136
- R14 CORRECTION of cookbook §20's '~33' projection (byte-proven): the batch is NOT
  mostly callee-conflicts — ~6 callee (cast-recovered), ~18 DEF-side loose-typing wall
  (def's matchable sig conflicts with the unchangeable caller-canonical; caller-side
  fix BLOCKED because INCLUDE_ASM declares no symbol -> a shared macro's internal
  extern is load-bearing in the 133 stub overlays), + a small DATA tail. The def-side
  needs re-drafting under the caller-canonical sig (future wave), not a text transform
- cookbook §20 RESOLUTION + SETUP tool inventory (R16/R21/R30); CURRENT_PHASE log (R28)
- fleet 58.63% -> 58.82%, dedup 1501 -> 1508, 0 NON_MATCHING (G4)
2026-06-21 02:04:39 -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 : 200702 (of which dedup-shared 200206 via 1506 groups / 200250 instances) FLEET LINKED PsyQ objs : 959 FLEET byte-identical : 202349 / 344010 = 58.82% (REAL+LINKED+empties) FLEET NON_MATCHING : 7 (0 in any default build — G4) FLEET INCLUDE_ASM stubs : 141654 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 1498 1498 0 1498 2403 62.3%
ov_SC01_001 1498 1498 0 1500 2467 60.8%
ov_SC01_004 1490 1490 0 1491 2416 61.7%
ov_SC01_005 1497 1497 0 1504 2504 60.1%
ov_SC01_006 1497 1497 0 1504 2504 60.1%
ov_SC01_008 1490 1490 0 1492 2428 61.4%
ov_SC01_009 1490 1490 0 1491 2510 59.4%
ov_SC01_074 1490 1490 0 1492 2427 61.5%
ov_SC01_077 1779 1458 0 1781 2586 68.9%
ov_SC01_080 1494 1494 0 1494 2515 59.4%
ov_SC01_084 1494 1494 0 1499 2581 58.1%
ov_SC02_000 1498 1498 0 1505 2684 56.1%
ov_SC02_003 1498 1498 0 1505 2684 56.1%
ov_SC02_004 1494 1494 0 1494 2403 62.2%
ov_SC02_005 1490 1490 0 1500 2930 51.2%
ov_SC02_011 1496 1496 0 1508 2896 52.1%
ov_SC02_015 1496 1496 0 1496 2416 61.9%
ov_SC02_016 1496 1496 0 1499 2548 58.8%
ov_SC02_017 1496 1496 0 1504 2735 55.0%
ov_SC02_021 1496 1496 0 1496 2439 61.3%
ov_SC02_026 1494 1494 0 1500 2575 58.3%
ov_SC02_027 1494 1494 0 1503 2695 55.8%
ov_SC02_028 1494 1494 0 1504 2704 55.6%
ov_SC02_031 1494 1494 0 1500 2565 58.5%
ov_SC02_035 1494 1494 0 1497 2523 59.3%
ov_SC02_039 1494 1494 0 1494 2418 61.8%
ov_SC02_041 1494 1494 0 1497 2563 58.4%
ov_SC03_001 1494 1494 0 1512 2870 52.7%
ov_SC03_002 1498 1498 0 1514 2632 57.5%
ov_SC03_003 1494 1494 0 1495 2425 61.6%
ov_SC03_006 1500 1500 0 1509 2768 54.5%
ov_SC03_007 1494 1494 0 1498 2626 57.0%
ov_SC03_010 1494 1494 0 1494 2472 60.4%
ov_SC03_011 1494 1494 0 1500 2530 59.3%
ov_SC03_012 1494 1494 0 1495 2408 62.1%
ov_SC03_013 1494 1494 0 1494 2495 59.9%
ov_SC03_014 1494 1494 0 1504 2688 56.0%
ov_SC03_015 1494 1494 0 1504 2688 56.0%
ov_SC03_023 1494 1494 0 1495 2437 61.3%
ov_SC03_024 1494 1494 0 1506 2644 57.0%
ov_SC03_028 1494 1494 0 1498 2667 56.2%
ov_SC03_029 1496 1496 0 1506 2647 56.9%
ov_SC03_030 1498 1498 0 1500 2498 60.0%
ov_SC03_031 1494 1494 0 1498 2517 59.5%
ov_SC03_089 1494 1494 0 1501 2584 58.1%
ov_SC03_090 1494 1494 0 1502 2628 57.2%
ov_SC03_091 1494 1494 0 1502 2643 56.8%
ov_SC03_092 1494 1494 0 1506 2590 58.1%
ov_SC03_093 1494 1494 0 1498 2566 58.4%
ov_SC03_094 1494 1494 0 1500 2579 58.2%
ov_SC03_095 1494 1494 0 1497 2477 60.4%
ov_SC03_096 1494 1494 0 1497 2468 60.7%
ov_SC03_097 1494 1494 0 1501 2606 57.6%
ov_SC03_098 1494 1494 0 1497 2544 58.8%
ov_SC03_099 1494 1494 0 1497 2507 59.7%
ov_SC03_100 1494 1494 0 1498 2542 58.9%
ov_SC03_101 1494 1494 0 1498 2531 59.2%
ov_SC03_102 1494 1494 0 1497 2495 60.0%
ov_SC03_103 1496 1496 0 1499 2513 59.6%
ov_SC03_104 1494 1494 0 1501 2619 57.3%
ov_SC03_105 1494 1494 0 1501 2600 57.7%
ov_SC03_108 1494 1494 0 1494 2446 61.1%
ov_SC03_109 1494 1494 0 1496 2426 61.7%
ov_SC03_110 1494 1494 0 1494 2471 60.5%
ov_SC03_111 1494 1494 0 1497 2513 59.6%
ov_SC03_112 1496 1496 0 1498 2529 59.2%
ov_SC03_113 1496 1496 0 1499 2471 60.7%
ov_SC03_114 1494 1494 0 1496 2417 61.9%
ov_SC03_115 1494 1494 0 1496 2475 60.4%
ov_SC03_116 1494 1494 0 1497 2441 61.3%
ov_SC03_117 1494 1494 0 1500 2560 58.6%
ov_SC03_118 1494 1494 0 1507 2688 56.1%
ov_SC03_119 1494 1494 0 1507 2688 56.1%
ov_SC03_121 1494 1494 0 1497 2462 60.8%
ov_SC03_124 1490 1490 0 1510 2744 55.0%
ov_SC03_125 1494 1494 0 1506 2591 58.1%
ov_SC03_126 1494 1494 0 1495 2425 61.6%
ov_SC04_000 1498 1498 0 1507 2547 59.2%
ov_SC04_002 1494 1494 0 1498 2639 56.8%
ov_SC04_003 1494 1494 0 1498 2505 59.8%
ov_SC04_004 1494 1494 0 1496 2561 58.4%
ov_SC04_005 1494 1494 0 1500 2615 57.4%
ov_SC04_006 1494 1494 0 1496 2456 60.9%
ov_SC04_007 1494 1494 0 1498 2572 58.2%
ov_SC04_008 1494 1494 0 1494 2417 61.8%
ov_SC04_009 1494 1494 0 1497 2443 61.3%
ov_SC04_010 1494 1494 0 1495 2421 61.8%
ov_SC04_011 1494 1494 0 1500 2806 53.5%
ov_SC04_012 1494 1494 0 1495 2422 61.7%
ov_SC04_015 1494 1494 0 1506 2614 57.6%
ov_SC04_016 1494 1494 0 1496 2442 61.3%
ov_SC04_018 1494 1494 0 1507 2858 52.7%
ov_SC04_019 1494 1494 0 1507 2858 52.7%
ov_SC04_020 1494 1494 0 1506 2570 58.6%
ov_SC04_021 1494 1494 0 1495 2425 61.6%
ov_SC05_000 1498 1498 0 1501 2422 62.0%
ov_SC05_001 1494 1494 0 1499 2577 58.2%
ov_SC05_002 1494 1494 0 1497 2445 61.2%
ov_SC05_003 1494 1494 0 1495 2484 60.2%
ov_SC05_004 1494 1494 0 1496 2467 60.6%
ov_SC05_005 1494 1494 0 1495 2494 59.9%
ov_SC05_006 1494 1494 0 1494 2432 61.4%
ov_SC05_007 1494 1494 0 1499 2485 60.3%
ov_SC05_008 1494 1494 0 1496 2546 58.8%
ov_SC05_009 1494 1494 0 1498 2440 61.4%
ov_SC05_010 1494 1494 0 1498 2591 57.8%
ov_SC05_011 1494 1494 0 1495 2411 62.0%
ov_SC05_017 1490 1490 0 1502 2845 52.8%
ov_SC05_018 1494 1494 0 1507 2676 56.3%
ov_SC05_019 1494 1494 0 1495 2425 61.6%
ov_SC06_000 1498 1498 0 1506 2692 55.9%
ov_SC06_006 1494 1494 0 1495 2514 59.5%
ov_SC06_008 1496 1496 0 1502 2544 59.0%
ov_SC06_010 1494 1494 0 1499 2520 59.5%
ov_SC06_011 1494 1494 0 1498 2471 60.6%
ov_SC06_013 1494 1494 0 1495 2427 61.6%
ov_SC06_014 1494 1494 0 1496 2455 60.9%
ov_SC06_015 1494 1494 0 1494 2423 61.7%
ov_SC06_016 1494 1494 0 1496 2552 58.6%
ov_SC06_018 1494 1494 0 1502 2668 56.3%
ov_SC06_020 1494 1494 0 1495 2521 59.3%
ov_SC06_022 1494 1494 0 1502 2645 56.8%
ov_SC06_024 1494 1494 0 1500 2670 56.2%
ov_SC06_025 1494 1494 0 1499 2575 58.2%
ov_SC06_027 1494 1494 0 1495 2410 62.0%
ov_SC06_029 1494 1494 0 1506 2665 56.5%
ov_SC06_030 1494 1494 0 1494 2459 60.8%
ov_SC06_032 1494 1494 0 1501 2661 56.4%
ov_SC06_033 1494 1494 0 1501 2634 57.0%
ov_SC07_000 1498 1498 0 1500 2522 59.5%
ov_SC07_001 1494 1494 0 1496 2457 60.9%
ov_SC07_002 1494 1494 0 1498 2582 58.0%
ov_SC07_008 1494 1494 0 1494 2388 62.6%
ov_SC07_009 1494 1494 0 1496 2432 61.5%