Files
BFM-decomp/docs/progress.fleet.md
T
Drew T c716eb15e1 feat(phase-15): T4 — fleet progress roll-up + fix cross-report double-count
- progress.py: refactor to report(binary) + set_binary() + a per-binary .s index
  (fleet run 6m38s -> 7s); add --fleet -> docs/progress.fleet.md (deterministic,
  source-derived per-binary table + fleet totals). Single-binary output byte-unchanged.
- fleet now: 947 REAL / 959 LINKED / 13132 byte-identical / 344010 matchable = 3.82%
  across 136 binaries (main + resident + 134 overlays)
- dup_report --cross: HONESTY FIX (R14) — an onboarded overlay is both a named BINARIES
  entry AND a .run/sig.ov_* glob hit; it was counted twice, inflating collapsible bytes
  to 58.7M once the fleet was onboarded. Dedupe by alias -> accurate 9366 h_exact groups
  / 28.6M collapsible (matches the Phase-11 figure)
- Makefile: wire progress.py --fleet into make report (main-only block)
- docs: progress.fleet.md (new), duplicates.cross.md regenerated, SETUP inventory
- make report green; dedup-check 8 validated / 0 failed
- ghidra/ churn NOT staged (R23)
2026-06-16 20:00:19 -06:00

7.0 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 : 947 (of which dedup-shared 72 via 8 groups / 72 instances) FLEET LINKED PsyQ objs : 959 FLEET byte-identical : 13132 / 344010 = 3.82% (REAL+LINKED+empties) FLEET NON_MATCHING : 7 (0 in any default build — G4) FLEET INCLUDE_ASM stubs : 330871 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 4 4 0 83 2403 3.5%
ov_SC01_001 4 4 0 85 2467 3.4%
ov_SC01_004 0 0 0 76 2416 3.1%
ov_SC01_005 7 7 0 89 2504 3.6%
ov_SC01_006 7 7 0 89 2504 3.6%
ov_SC01_008 0 0 0 77 2428 3.2%
ov_SC01_009 0 0 0 76 2510 3.0%
ov_SC01_074 0 0 0 77 2427 3.2%
ov_SC01_077 704 4 0 785 2586 30.4%
ov_SC01_080 0 0 0 79 2515 3.1%
ov_SC01_084 0 0 0 84 2581 3.3%
ov_SC02_000 4 4 0 90 2684 3.4%
ov_SC02_003 4 4 0 90 2684 3.4%
ov_SC02_004 0 0 0 79 2403 3.3%
ov_SC02_005 0 0 0 85 2930 2.9%
ov_SC02_011 0 0 0 91 2896 3.1%
ov_SC02_015 0 0 0 79 2416 3.3%
ov_SC02_016 0 0 0 82 2548 3.2%
ov_SC02_017 0 0 0 87 2735 3.2%
ov_SC02_021 0 0 0 79 2439 3.2%
ov_SC02_026 0 0 0 85 2575 3.3%
ov_SC02_027 0 0 0 88 2695 3.3%
ov_SC02_028 0 0 0 89 2704 3.3%
ov_SC02_031 0 0 0 85 2565 3.3%
ov_SC02_035 0 0 0 82 2523 3.3%
ov_SC02_039 0 0 0 79 2418 3.3%
ov_SC02_041 0 0 0 82 2563 3.2%
ov_SC03_001 4 4 0 97 2870 3.4%
ov_SC03_002 4 4 0 99 2632 3.8%
ov_SC03_003 0 0 0 80 2425 3.3%
ov_SC03_006 4 4 0 92 2768 3.3%
ov_SC03_007 0 0 0 83 2626 3.2%
ov_SC03_010 0 0 0 79 2472 3.2%
ov_SC03_011 0 0 0 85 2530 3.4%
ov_SC03_012 0 0 0 80 2408 3.3%
ov_SC03_013 0 0 0 79 2495 3.2%
ov_SC03_014 0 0 0 89 2688 3.3%
ov_SC03_015 0 0 0 89 2688 3.3%
ov_SC03_023 0 0 0 80 2437 3.3%
ov_SC03_024 0 0 0 91 2644 3.4%
ov_SC03_028 0 0 0 83 2667 3.1%
ov_SC03_029 0 0 0 89 2647 3.4%
ov_SC03_030 0 0 0 81 2498 3.2%
ov_SC03_031 0 0 0 83 2517 3.3%
ov_SC03_089 0 0 0 86 2584 3.3%
ov_SC03_090 0 0 0 87 2628 3.3%
ov_SC03_091 0 0 0 87 2643 3.3%
ov_SC03_092 0 0 0 91 2590 3.5%
ov_SC03_093 0 0 0 83 2566 3.2%
ov_SC03_094 0 0 0 85 2579 3.3%
ov_SC03_095 0 0 0 82 2477 3.3%
ov_SC03_096 0 0 0 82 2468 3.3%
ov_SC03_097 0 0 0 86 2606 3.3%
ov_SC03_098 0 0 0 82 2544 3.2%
ov_SC03_099 0 0 0 82 2507 3.3%
ov_SC03_100 0 0 0 83 2542 3.3%
ov_SC03_101 0 0 0 83 2531 3.3%
ov_SC03_102 0 0 0 82 2495 3.3%
ov_SC03_103 0 0 0 82 2513 3.3%
ov_SC03_104 0 0 0 86 2619 3.3%
ov_SC03_105 0 0 0 86 2600 3.3%
ov_SC03_108 0 0 0 79 2446 3.2%
ov_SC03_109 0 0 0 81 2426 3.3%
ov_SC03_110 0 0 0 79 2471 3.2%
ov_SC03_111 0 0 0 82 2513 3.3%
ov_SC03_112 0 0 0 81 2529 3.2%
ov_SC03_113 0 0 0 82 2471 3.3%
ov_SC03_114 0 0 0 81 2417 3.4%
ov_SC03_115 0 0 0 81 2475 3.3%
ov_SC03_116 0 0 0 82 2441 3.4%
ov_SC03_117 0 0 0 85 2560 3.3%
ov_SC03_118 0 0 0 92 2688 3.4%
ov_SC03_119 0 0 0 92 2688 3.4%
ov_SC03_121 0 0 0 82 2462 3.3%
ov_SC03_124 0 0 0 95 2744 3.5%
ov_SC03_125 0 0 0 91 2591 3.5%
ov_SC03_126 0 0 0 80 2425 3.3%
ov_SC04_000 4 4 0 92 2547 3.6%
ov_SC04_002 0 0 0 83 2639 3.1%
ov_SC04_003 0 0 0 83 2505 3.3%
ov_SC04_004 0 0 0 81 2561 3.2%
ov_SC04_005 0 0 0 85 2615 3.3%
ov_SC04_006 0 0 0 81 2456 3.3%
ov_SC04_007 0 0 0 83 2572 3.2%
ov_SC04_008 0 0 0 79 2417 3.3%
ov_SC04_009 0 0 0 82 2443 3.4%
ov_SC04_010 0 0 0 80 2421 3.3%
ov_SC04_011 0 0 0 85 2806 3.0%
ov_SC04_012 0 0 0 80 2422 3.3%
ov_SC04_015 0 0 0 91 2614 3.5%
ov_SC04_016 0 0 0 81 2442 3.3%
ov_SC04_018 4 4 0 92 2858 3.2%
ov_SC04_019 4 4 0 92 2858 3.2%
ov_SC04_020 0 0 0 91 2570 3.5%
ov_SC04_021 0 0 0 80 2425 3.3%
ov_SC05_000 4 4 0 86 2422 3.6%
ov_SC05_001 0 0 0 84 2577 3.3%
ov_SC05_002 0 0 0 82 2445 3.4%
ov_SC05_003 0 0 0 80 2484 3.2%
ov_SC05_004 0 0 0 81 2467 3.3%
ov_SC05_005 0 0 0 80 2494 3.2%
ov_SC05_006 0 0 0 79 2432 3.2%
ov_SC05_007 0 0 0 84 2485 3.4%
ov_SC05_008 0 0 0 81 2546 3.2%
ov_SC05_009 0 0 0 83 2440 3.4%
ov_SC05_010 0 0 0 83 2591 3.2%
ov_SC05_011 0 0 0 80 2411 3.3%
ov_SC05_017 0 0 0 87 2845 3.1%
ov_SC05_018 0 0 0 92 2676 3.4%
ov_SC05_019 0 0 0 80 2425 3.3%
ov_SC06_000 4 4 0 91 2692 3.4%
ov_SC06_006 0 0 0 80 2514 3.2%
ov_SC06_008 0 0 0 85 2544 3.3%
ov_SC06_010 0 0 0 84 2520 3.3%
ov_SC06_011 0 0 0 83 2471 3.4%
ov_SC06_013 0 0 0 80 2427 3.3%
ov_SC06_014 0 0 0 81 2455 3.3%
ov_SC06_015 0 0 0 79 2423 3.3%
ov_SC06_016 0 0 0 81 2552 3.2%
ov_SC06_018 0 0 0 87 2668 3.3%
ov_SC06_020 0 0 0 80 2521 3.2%
ov_SC06_022 0 0 0 87 2645 3.3%
ov_SC06_024 0 0 0 85 2670 3.2%
ov_SC06_025 0 0 0 84 2575 3.3%
ov_SC06_027 0 0 0 80 2410 3.3%
ov_SC06_029 0 0 0 91 2665 3.4%
ov_SC06_030 0 0 0 79 2459 3.2%
ov_SC06_032 0 0 0 86 2661 3.2%
ov_SC06_033 0 0 0 86 2634 3.3%
ov_SC07_000 4 4 0 85 2522 3.4%
ov_SC07_001 0 0 0 81 2457 3.3%
ov_SC07_002 0 0 0 83 2582 3.2%
ov_SC07_008 0 0 0 79 2388 3.3%
ov_SC07_009 0 0 0 81 2432 3.3%