mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-03 00:05:11 -04:00
feat(phase-30 S43): L2 second oracle — it found TWO L1 defects; unclaimed code 1.70 -> 3.56 MB
L2 (R34) is sig_image boundary carving: walk the payload cutting each function at the first `jr $ra`
at/after every forward branch target. Structurally different question from L1's statistical test
(valid>=0.90 AND jr>=0.01), so the two can ARGUE — and they did, 80 times, all one shape.
- L1 DEFECT 1 — A CLAIM OUTRANKED BY A HEURISTIC. A payload whose SHA1 equals a committed
config/check.<bin>.sha IS that onboarded binary (the build gates on that hash daily), but I let the
statistical verdict file it as classified-data. Onboarded bucket understated by 14.5 MB.
- L1 DEFECT 2 — WHOLE-PAYLOAD AVERAGING DILUTES CODE. A real location overlay is code followed by a
large data tail, so its whole-payload valid-ratio is ~0.87, under the 0.90 gate — while L2 carves
real functions from its head. The "classify the whole payload" fix for the old 4,096-word window had
traded a head-only bias for an averaging bias. 80 disagreements, every one this shape.
- RESOLUTION (bucket_of): a claim wins outright; otherwise take the UNION of both oracles. Union is
the conservative direction for this audit's question — over-reporting code yields a review queue,
under-reporting HIDES code, the exact failure that produced three "more code all along" surprises.
- RESULT: partition still holds, residue 0 over 416,021,760 B / 1,291 payloads.
onboarded-code 47,066,812 · UNCLAIMED-CODE 3,564,021 (34 payloads) · classified-data 134,265,572
· audio-video 184,338,000 · filesystem-metadata 46,787,355
Largest unclaimed: MAIN.CD sub-file 12 entry 1 type 1, 383,783 B; the rest small type-1, mostly MAIN.CD.
- The ledger now carries an explicit L2 REVIEW QUEUE section; L1=data/L2=code is flagged as the
DANGEROUS direction (missed code).
This commit is contained in:
+129
-4
@@ -9,16 +9,106 @@
|
||||
|
||||
| bucket | bytes | share |
|
||||
|---|---:|---:|
|
||||
| onboarded-code | 32,564,876 | 7.83% |
|
||||
| unclaimed-code | 1,700,049 | 0.41% |
|
||||
| classified-data | 150,631,480 | 36.21% |
|
||||
| onboarded-code | 47,066,812 | 11.31% |
|
||||
| unclaimed-code | 3,564,021 | 0.86% |
|
||||
| classified-data | 134,265,572 | 32.27% |
|
||||
| audio-video | 184,338,000 | 44.31% |
|
||||
| filesystem-metadata | 46,787,355 | 11.25% |
|
||||
| **TOTAL** | **416,021,760** | 100.00% |
|
||||
|
||||
**Residue: 0 bytes — PARTITION HOLDS**
|
||||
|
||||
## Code payloads — 34 UNCLAIMED of 139
|
||||
## L2 review queue — 80 oracle disagreement(s)
|
||||
|
||||
> L1 = statistical heuristic (valid>=0.90 AND jr>=0.01). L2 = independent boundary
|
||||
> carving (sig_image `func_end` walk). R34: the two are made to ARGUE; a disagreement
|
||||
> is a review item, never silently resolved. L1=data/L2=code is the DANGEROUS
|
||||
> direction — that is missed code.
|
||||
|
||||
| file | entry | type | bytes | L1 | L2 | fns carved | valid/jr |
|
||||
|---|---|---|---:|---|---|---:|---|
|
||||
| SC06.CD/6 | 0 | 4 | 854,543 | data | code | 3 | 0.87/0.0118 |
|
||||
| SC03.CD/6 | 0 | 4 | 849,759 | data | code | 3 | 0.87/0.0130 |
|
||||
| SC07.CD/6 | 1 | 4 | 844,311 | data | code | 3 | 0.84/0.0116 |
|
||||
| SC01.CD/9 | 0 | 4 | 832,263 | data | code | 3 | 0.85/0.0121 |
|
||||
| SC01.CD/1 | 0 | 4 | 831,599 | data | code | 3 | 0.74/0.0119 |
|
||||
| SC04.CD/11 | 0 | 4 | 824,663 | data | code | 3 | 0.79/0.0136 |
|
||||
| SC02.CD/17 | 0 | 4 | 818,143 | data | code | 3 | 0.89/0.0134 |
|
||||
| SC03.CD/28 | 0 | 4 | 804,015 | data | code | 3 | 0.88/0.0133 |
|
||||
| SC02.CD/11 | 0 | 4 | 801,063 | data | code | 3 | 0.89/0.0145 |
|
||||
| SC03.CD/7 | 0 | 4 | 799,087 | data | code | 3 | 0.88/0.0131 |
|
||||
| SC03.CD/14 | 0 | 4 | 798,439 | data | code | 3 | 0.87/0.0135 |
|
||||
| SC03.CD/15 | 0 | 4 | 798,439 | data | code | 3 | 0.87/0.0135 |
|
||||
| SC02.CD/0 | 0 | 4 | 788,239 | data | code | 3 | 0.90/0.0136 |
|
||||
| SC02.CD/3 | 0 | 4 | 788,239 | data | code | 3 | 0.90/0.0136 |
|
||||
| SC05.CD/18 | 0 | 4 | 780,087 | data | code | 3 | 0.83/0.0137 |
|
||||
| SC02.CD/5 | 0 | 4 | 772,865 | data | code | 3 | 0.87/0.0152 |
|
||||
| SC06.CD/22 | 0 | 4 | 762,135 | data | code | 3 | 0.89/0.0139 |
|
||||
| SC06.CD/29 | 0 | 4 | 761,911 | data | code | 3 | 0.90/0.0140 |
|
||||
| SC03.CD/30 | 0 | 4 | 760,560 | data | code | 3 | 0.90/0.0131 |
|
||||
| SC06.CD/24 | 0 | 4 | 759,823 | data | code | 3 | 0.89/0.0141 |
|
||||
| SC01.CD/77 | 0 | 4 | 731,607 | data | code | 3 | 0.89/0.0141 |
|
||||
| SC03.CD/94 | 0 | 4 | 700,735 | data | code | 3 | 0.89/0.0147 |
|
||||
| SC03.CD/91 | 0 | 4 | 697,735 | data | code | 3 | 0.90/0.0151 |
|
||||
| SC07.CD/0 | 0 | 4 | 691,087 | data | code | 3 | 0.89/0.0146 |
|
||||
| SC02.CD/26 | 0 | 4 | 688,487 | data | code | 3 | 0.90/0.0150 |
|
||||
| SC01.CD/5 | 0 | 4 | 679,689 | data | code | 3 | 0.88/0.0147 |
|
||||
| SC01.CD/6 | 0 | 4 | 679,689 | data | code | 3 | 0.88/0.0147 |
|
||||
| SC03.CD/93 | 0 | 4 | 673,159 | data | code | 3 | 0.89/0.0152 |
|
||||
| SC03.CD/90 | 0 | 4 | 670,775 | data | code | 3 | 0.90/0.0157 |
|
||||
| SC05.CD/10 | 0 | 4 | 655,063 | data | code | 3 | 0.89/0.0158 |
|
||||
| SC03.CD/105 | 0 | 4 | 609,223 | data | code | 3 | 0.89/0.0171 |
|
||||
| SC06.CD/30 | 0 | 4 | 597,807 | data | code | 3 | 0.84/0.0164 |
|
||||
| SC03.CD/121 | 0 | 4 | 552,535 | data | code | 3 | 0.90/0.0178 |
|
||||
| SC01.CD/8 | 0 | 4 | 504,967 | data | code | 3 | 0.88/0.0192 |
|
||||
| MAIN.CD/10 | 1 | 1 | 365,404 | data | code | 3 | 0.72/0.0016 |
|
||||
| SC07.CD/4 | 1 | 1 | 365,152 | data | code | 3 | 0.84/0.0035 |
|
||||
| SC07.CD/3 | 1 | 1 | 345,132 | data | code | 3 | 0.57/0.0012 |
|
||||
| SC02.CD/9 | 0 | 1 | 70,784 | data | code | 3 | 0.70/0.0023 |
|
||||
| SC05.CD/26 | 2 | 1 | 43,816 | data | code | 3 | 0.88/0.0060 |
|
||||
| SC04.CD/27 | 2 | 1 | 43,776 | data | code | 3 | 0.88/0.0060 |
|
||||
| SC03.CD/76 | 2 | 1 | 43,760 | data | code | 3 | 0.88/0.0060 |
|
||||
| SC03.CD/138 | 2 | 1 | 40,164 | data | code | 3 | 0.79/0.0037 |
|
||||
| SC05.CD/29 | 2 | 1 | 39,396 | data | code | 3 | 0.79/0.0031 |
|
||||
| SC04.CD/30 | 2 | 1 | 39,356 | data | code | 3 | 0.79/0.0032 |
|
||||
| SC03.CD/79 | 2 | 1 | 39,340 | data | code | 3 | 0.79/0.0032 |
|
||||
| SC03.CD/135 | 2 | 1 | 34,828 | data | code | 3 | 0.87/0.0076 |
|
||||
| SC05.CD/27 | 2 | 1 | 32,792 | data | code | 3 | 0.79/0.0043 |
|
||||
| SC03.CD/77 | 2 | 1 | 32,768 | data | code | 3 | 0.79/0.0043 |
|
||||
| SC04.CD/28 | 2 | 1 | 32,752 | data | code | 3 | 0.79/0.0043 |
|
||||
| SC03.CD/136 | 2 | 1 | 32,712 | data | code | 3 | 0.79/0.0043 |
|
||||
| SC05.CD/25 | 2 | 1 | 30,848 | data | code | 3 | 0.82/0.0053 |
|
||||
| SC03.CD/134 | 2 | 1 | 30,808 | data | code | 3 | 0.82/0.0053 |
|
||||
| SC04.CD/26 | 2 | 1 | 30,808 | data | code | 3 | 0.82/0.0053 |
|
||||
| SC03.CD/75 | 2 | 1 | 30,792 | data | code | 3 | 0.82/0.0053 |
|
||||
| SC05.CD/23 | 2 | 1 | 29,168 | data | code | 3 | 0.79/0.0038 |
|
||||
| SC04.CD/24 | 2 | 1 | 29,120 | data | code | 3 | 0.79/0.0038 |
|
||||
| SC03.CD/73 | 2 | 1 | 29,112 | data | code | 3 | 0.79/0.0038 |
|
||||
| SC03.CD/132 | 2 | 1 | 29,080 | data | code | 3 | 0.79/0.0039 |
|
||||
| SC05.CD/24 | 2 | 1 | 27,352 | data | code | 3 | 0.83/0.0042 |
|
||||
| SC04.CD/25 | 2 | 1 | 27,312 | data | code | 3 | 0.83/0.0042 |
|
||||
| SC03.CD/74 | 2 | 1 | 27,296 | data | code | 3 | 0.83/0.0042 |
|
||||
| SC03.CD/133 | 2 | 1 | 27,272 | data | code | 3 | 0.83/0.0043 |
|
||||
| MAIN.CD/11 | 1 | 1 | 24,240 | data | code | 3 | 0.95/0.0035 |
|
||||
| MAIN.CD/0 | 0 | 1 | 19,996 | data | code | 3 | 0.73/0.0022 |
|
||||
| MAIN.CD/1 | 1 | 1 | 19,996 | data | code | 3 | 0.73/0.0022 |
|
||||
| SC05.CD/28 | 2 | 1 | 15,732 | data | code | 3 | 0.84/0.0069 |
|
||||
| SC04.CD/29 | 2 | 1 | 15,692 | data | code | 3 | 0.84/0.0069 |
|
||||
| SC03.CD/78 | 2 | 1 | 15,676 | data | code | 3 | 0.84/0.0069 |
|
||||
| SC03.CD/137 | 2 | 1 | 15,652 | data | code | 3 | 0.83/0.0069 |
|
||||
| MAIN.CD/7 | -1 | -1 | 9,600 | data | code | 3 | 0.99/0.0079 |
|
||||
| SC03.CD/54 | 0 | 1 | 8,220 | data | code | 3 | 0.73/0.0034 |
|
||||
| MAIN.CD/38 | 1 | 1 | 7,232 | data | code | 3 | 0.85/0.0111 |
|
||||
| MAIN.CD/15 | 1 | 1 | 6,768 | data | code | 3 | 0.86/0.0118 |
|
||||
| SC03.CD/53 | 0 | 1 | 6,616 | data | code | 3 | 0.65/0.0091 |
|
||||
| MAIN.CD/25 | 1 | 1 | 6,396 | data | code | 3 | 0.87/0.0188 |
|
||||
| MAIN.CD/13 | 1 | 1 | 6,100 | data | code | 3 | 0.78/0.0105 |
|
||||
| MAIN.CD/32 | 1 | 1 | 5,572 | data | code | 3 | 0.87/0.0072 |
|
||||
| SC03.CD/56 | 0 | 1 | 3,680 | data | code | 3 | 0.53/0.0043 |
|
||||
| MAIN.CD/20 | 1 | 1 | 3,244 | data | code | 3 | 0.84/0.0173 |
|
||||
| SLUS_007.26 | - | - | 413,696 | code | data | 0 | 0.96/0.0143 |
|
||||
|
||||
## Code payloads — 34 UNCLAIMED of 174
|
||||
|
||||
| file | entry | type | bytes | bucket | claimed-by | valid/jr |
|
||||
|---|---|---|---:|---|---|---|
|
||||
@@ -56,21 +146,34 @@
|
||||
| MAIN.CD/9 | 0 | 1 | 2,544 | unclaimed-code | UNCLAIMED | 0.99/0.0189 |
|
||||
| SC02.CD/37 | 0 | 1 | 661,903 | unclaimed-code | UNCLAIMED | 0.91/0.0152 |
|
||||
| SC03.CD/107 | 0 | 1 | 474,087 | unclaimed-code | UNCLAIMED | 0.97/0.0211 |
|
||||
| MAIN.CD/10 | 1 | 1 | 365,404 | onboarded-code | resident | 0.72/0.0016 |
|
||||
| SC01.CD/0 | 0 | 4 | 513,935 | onboarded-code | ov_SC01_000 | 0.95/0.0187 |
|
||||
| SC01.CD/1 | 0 | 4 | 831,599 | onboarded-code | ov_SC01_001 | 0.74/0.0119 |
|
||||
| SC01.CD/4 | 0 | 4 | 426,615 | onboarded-code | ov_SC01_004 | 0.97/0.0227 |
|
||||
| SC01.CD/5 | 0 | 4 | 679,689 | onboarded-code | ov_SC01_006 | 0.88/0.0147 |
|
||||
| SC01.CD/6 | 0 | 4 | 679,689 | onboarded-code | ov_SC01_006 | 0.88/0.0147 |
|
||||
| SC01.CD/74 | 0 | 4 | 474,135 | onboarded-code | ov_SC01_074 | 0.96/0.0205 |
|
||||
| SC01.CD/77 | 0 | 4 | 731,607 | onboarded-code | ov_SC01_077 | 0.89/0.0141 |
|
||||
| SC01.CD/8 | 0 | 4 | 504,967 | onboarded-code | ov_SC01_008 | 0.88/0.0192 |
|
||||
| SC01.CD/80 | 0 | 4 | 654,839 | onboarded-code | ov_SC01_080 | 0.94/0.0154 |
|
||||
| SC01.CD/84 | 0 | 4 | 653,983 | onboarded-code | ov_SC01_084 | 0.90/0.0158 |
|
||||
| SC01.CD/9 | 0 | 4 | 832,263 | onboarded-code | ov_SC01_009 | 0.85/0.0121 |
|
||||
| SC02.CD/0 | 0 | 4 | 788,239 | onboarded-code | ov_SC02_003 | 0.90/0.0136 |
|
||||
| SC02.CD/11 | 0 | 4 | 801,063 | onboarded-code | ov_SC02_011 | 0.89/0.0145 |
|
||||
| SC02.CD/15 | 0 | 4 | 427,335 | onboarded-code | ov_SC02_015 | 0.98/0.0226 |
|
||||
| SC02.CD/16 | 0 | 4 | 575,871 | onboarded-code | ov_SC02_016 | 0.93/0.0177 |
|
||||
| SC02.CD/17 | 0 | 4 | 818,143 | onboarded-code | ov_SC02_017 | 0.89/0.0134 |
|
||||
| SC02.CD/21 | 0 | 4 | 440,135 | onboarded-code | ov_SC02_021 | 0.97/0.0222 |
|
||||
| SC02.CD/26 | 0 | 4 | 688,487 | onboarded-code | ov_SC02_026 | 0.90/0.0150 |
|
||||
| SC02.CD/27 | 0 | 4 | 731,367 | onboarded-code | ov_SC02_027 | 0.90/0.0147 |
|
||||
| SC02.CD/28 | 0 | 4 | 701,671 | onboarded-code | ov_SC02_028 | 0.91/0.0154 |
|
||||
| SC02.CD/3 | 0 | 4 | 788,239 | onboarded-code | ov_SC02_003 | 0.90/0.0136 |
|
||||
| SC02.CD/31 | 0 | 4 | 588,215 | onboarded-code | ov_SC02_031 | 0.91/0.0174 |
|
||||
| SC02.CD/35 | 0 | 4 | 616,687 | onboarded-code | ov_SC02_035 | 0.91/0.0164 |
|
||||
| SC02.CD/39 | 0 | 4 | 494,759 | onboarded-code | ov_SC02_039 | 0.95/0.0195 |
|
||||
| SC02.CD/4 | 0 | 4 | 451,183 | onboarded-code | ov_SC02_004 | 0.97/0.0213 |
|
||||
| SC02.CD/41 | 0 | 4 | 595,327 | onboarded-code | ov_SC02_041 | 0.91/0.0172 |
|
||||
| SC02.CD/5 | 0 | 4 | 772,865 | onboarded-code | ov_SC02_005 | 0.87/0.0152 |
|
||||
| SC03.CD/1 | 0 | 4 | 815,887 | onboarded-code | ov_SC03_001 | 0.91/0.0141 |
|
||||
| SC03.CD/10 | 0 | 4 | 491,639 | onboarded-code | ov_SC03_010 | 0.96/0.0201 |
|
||||
| SC03.CD/100 | 0 | 4 | 657,423 | onboarded-code | ov_SC03_100 | 0.90/0.0155 |
|
||||
@@ -78,6 +181,7 @@
|
||||
| SC03.CD/102 | 0 | 4 | 596,687 | onboarded-code | ov_SC03_102 | 0.91/0.0167 |
|
||||
| SC03.CD/103 | 0 | 4 | 642,175 | onboarded-code | ov_SC03_103 | 0.91/0.0156 |
|
||||
| SC03.CD/104 | 0 | 4 | 623,423 | onboarded-code | ov_SC03_104 | 0.91/0.0168 |
|
||||
| SC03.CD/105 | 0 | 4 | 609,223 | onboarded-code | ov_SC03_105 | 0.89/0.0171 |
|
||||
| SC03.CD/108 | 0 | 4 | 497,999 | onboarded-code | ov_SC03_108 | 0.95/0.0196 |
|
||||
| SC03.CD/109 | 0 | 4 | 467,799 | onboarded-code | ov_SC03_109 | 0.96/0.0207 |
|
||||
| SC03.CD/11 | 0 | 4 | 500,395 | onboarded-code | ov_SC03_011 | 0.95/0.0202 |
|
||||
@@ -92,18 +196,29 @@
|
||||
| SC03.CD/118 | 0 | 4 | 706,295 | onboarded-code | ov_SC03_119 | 0.90/0.0152 |
|
||||
| SC03.CD/119 | 0 | 4 | 706,295 | onboarded-code | ov_SC03_119 | 0.90/0.0152 |
|
||||
| SC03.CD/12 | 0 | 4 | 446,471 | onboarded-code | ov_SC03_012 | 0.98/0.0216 |
|
||||
| SC03.CD/121 | 0 | 4 | 552,535 | onboarded-code | ov_SC03_121 | 0.90/0.0178 |
|
||||
| SC03.CD/124 | 0 | 4 | 763,023 | onboarded-code | ov_SC03_124 | 0.91/0.0144 |
|
||||
| SC03.CD/125 | 0 | 4 | 639,975 | onboarded-code | ov_SC03_125 | 0.92/0.0162 |
|
||||
| SC03.CD/126 | 0 | 4 | 424,405 | onboarded-code | ov_SC03_126 | 0.97/0.0229 |
|
||||
| SC03.CD/13 | 0 | 4 | 545,791 | onboarded-code | ov_SC03_013 | 0.94/0.0183 |
|
||||
| SC03.CD/14 | 0 | 4 | 798,439 | onboarded-code | ov_SC03_015 | 0.87/0.0135 |
|
||||
| SC03.CD/15 | 0 | 4 | 798,439 | onboarded-code | ov_SC03_015 | 0.87/0.0135 |
|
||||
| SC03.CD/2 | 0 | 4 | 670,199 | onboarded-code | ov_SC03_002 | 0.91/0.0157 |
|
||||
| SC03.CD/23 | 0 | 4 | 461,871 | onboarded-code | ov_SC03_023 | 0.97/0.0211 |
|
||||
| SC03.CD/24 | 0 | 4 | 628,471 | onboarded-code | ov_SC03_024 | 0.91/0.0168 |
|
||||
| SC03.CD/28 | 0 | 4 | 804,015 | onboarded-code | ov_SC03_028 | 0.88/0.0133 |
|
||||
| SC03.CD/29 | 0 | 4 | 727,279 | onboarded-code | ov_SC03_029 | 0.93/0.0146 |
|
||||
| SC03.CD/3 | 0 | 4 | 424,485 | onboarded-code | ov_SC03_003 | 0.97/0.0229 |
|
||||
| SC03.CD/30 | 0 | 4 | 760,560 | onboarded-code | ov_SC03_030 | 0.90/0.0131 |
|
||||
| SC03.CD/31 | 0 | 4 | 647,503 | onboarded-code | ov_SC03_031 | 0.94/0.0155 |
|
||||
| SC03.CD/6 | 0 | 4 | 849,759 | onboarded-code | ov_SC03_006 | 0.87/0.0130 |
|
||||
| SC03.CD/7 | 0 | 4 | 799,087 | onboarded-code | ov_SC03_007 | 0.88/0.0131 |
|
||||
| SC03.CD/89 | 0 | 4 | 649,159 | onboarded-code | ov_SC03_089 | 0.91/0.0159 |
|
||||
| SC03.CD/90 | 0 | 4 | 670,775 | onboarded-code | ov_SC03_090 | 0.90/0.0157 |
|
||||
| SC03.CD/91 | 0 | 4 | 697,735 | onboarded-code | ov_SC03_091 | 0.90/0.0151 |
|
||||
| SC03.CD/92 | 0 | 4 | 569,135 | onboarded-code | ov_SC03_092 | 0.93/0.0182 |
|
||||
| SC03.CD/93 | 0 | 4 | 673,159 | onboarded-code | ov_SC03_093 | 0.89/0.0152 |
|
||||
| SC03.CD/94 | 0 | 4 | 700,735 | onboarded-code | ov_SC03_094 | 0.89/0.0147 |
|
||||
| SC03.CD/95 | 0 | 4 | 474,431 | onboarded-code | ov_SC03_095 | 0.95/0.0209 |
|
||||
| SC03.CD/96 | 0 | 4 | 468,983 | onboarded-code | ov_SC03_096 | 0.95/0.0210 |
|
||||
| SC03.CD/97 | 0 | 4 | 535,927 | onboarded-code | ov_SC03_097 | 0.94/0.0194 |
|
||||
@@ -111,6 +226,7 @@
|
||||
| SC03.CD/99 | 0 | 4 | 619,271 | onboarded-code | ov_SC03_099 | 0.91/0.0162 |
|
||||
| SC04.CD/0 | 0 | 4 | 536,319 | onboarded-code | ov_SC04_000 | 0.95/0.0190 |
|
||||
| SC04.CD/10 | 0 | 4 | 423,407 | onboarded-code | ov_SC04_010 | 0.97/0.0229 |
|
||||
| SC04.CD/11 | 0 | 4 | 824,663 | onboarded-code | ov_SC04_011 | 0.79/0.0136 |
|
||||
| SC04.CD/12 | 0 | 4 | 438,503 | onboarded-code | ov_SC04_012 | 0.96/0.0221 |
|
||||
| SC04.CD/15 | 0 | 4 | 660,103 | onboarded-code | ov_SC04_015 | 0.92/0.0158 |
|
||||
| SC04.CD/16 | 0 | 4 | 541,063 | onboarded-code | ov_SC04_016 | 0.95/0.0181 |
|
||||
@@ -128,8 +244,10 @@
|
||||
| SC04.CD/9 | 0 | 4 | 459,031 | onboarded-code | ov_SC04_009 | 0.97/0.0213 |
|
||||
| SC05.CD/0 | 0 | 4 | 469,759 | onboarded-code | ov_SC05_000 | 0.96/0.0206 |
|
||||
| SC05.CD/1 | 0 | 4 | 581,295 | onboarded-code | ov_SC05_001 | 0.95/0.0177 |
|
||||
| SC05.CD/10 | 0 | 4 | 655,063 | onboarded-code | ov_SC05_010 | 0.89/0.0158 |
|
||||
| SC05.CD/11 | 0 | 4 | 479,367 | onboarded-code | ov_SC05_011 | 0.94/0.0201 |
|
||||
| SC05.CD/17 | 0 | 4 | 809,007 | onboarded-code | ov_SC05_017 | 0.91/0.0141 |
|
||||
| SC05.CD/18 | 0 | 4 | 780,087 | onboarded-code | ov_SC05_018 | 0.83/0.0137 |
|
||||
| SC05.CD/19 | 0 | 4 | 424,405 | onboarded-code | ov_SC05_019 | 0.97/0.0229 |
|
||||
| SC05.CD/2 | 0 | 4 | 491,111 | onboarded-code | ov_SC05_002 | 0.96/0.0199 |
|
||||
| SC05.CD/3 | 0 | 4 | 543,095 | onboarded-code | ov_SC05_003 | 0.94/0.0183 |
|
||||
@@ -148,15 +266,22 @@
|
||||
| SC06.CD/16 | 0 | 4 | 491,799 | onboarded-code | ov_SC06_016 | 0.96/0.0207 |
|
||||
| SC06.CD/18 | 0 | 4 | 711,239 | onboarded-code | ov_SC06_018 | 0.91/0.0150 |
|
||||
| SC06.CD/20 | 0 | 4 | 600,215 | onboarded-code | ov_SC06_020 | 0.92/0.0168 |
|
||||
| SC06.CD/22 | 0 | 4 | 762,135 | onboarded-code | ov_SC06_022 | 0.89/0.0139 |
|
||||
| SC06.CD/24 | 0 | 4 | 759,823 | onboarded-code | ov_SC06_024 | 0.89/0.0141 |
|
||||
| SC06.CD/25 | 0 | 4 | 565,551 | onboarded-code | ov_SC06_025 | 0.93/0.0182 |
|
||||
| SC06.CD/27 | 0 | 4 | 479,959 | onboarded-code | ov_SC06_027 | 0.96/0.0201 |
|
||||
| SC06.CD/29 | 0 | 4 | 761,911 | onboarded-code | ov_SC06_029 | 0.90/0.0140 |
|
||||
| SC06.CD/30 | 0 | 4 | 597,807 | onboarded-code | ov_SC06_030 | 0.84/0.0164 |
|
||||
| SC06.CD/32 | 0 | 4 | 692,247 | onboarded-code | ov_SC06_032 | 0.92/0.0154 |
|
||||
| SC06.CD/33 | 0 | 4 | 691,863 | onboarded-code | ov_SC06_033 | 0.92/0.0152 |
|
||||
| SC06.CD/6 | 0 | 4 | 854,543 | onboarded-code | ov_SC06_006 | 0.87/0.0118 |
|
||||
| SC06.CD/8 | 0 | 4 | 534,239 | onboarded-code | ov_SC06_008 | 0.96/0.0190 |
|
||||
| SC07.CD/0 | 0 | 4 | 691,087 | onboarded-code | ov_SC07_000 | 0.89/0.0146 |
|
||||
| SC07.CD/1 | 0 | 4 | 535,991 | onboarded-code | ov_SC07_001 | 0.93/0.0183 |
|
||||
| SC07.CD/10 | 1 | 4 | 529,391 | onboarded-code | ov_SC07_010 | 0.94/0.0191 |
|
||||
| SC07.CD/11 | 1 | 4 | 426,919 | onboarded-code | ov_SC07_011 | 0.98/0.0230 |
|
||||
| SC07.CD/2 | 0 | 4 | 491,391 | onboarded-code | ov_SC07_002 | 0.98/0.0210 |
|
||||
| SC07.CD/6 | 1 | 4 | 844,311 | onboarded-code | ov_SC07_006 | 0.84/0.0116 |
|
||||
| SC07.CD/7 | 1 | 4 | 653,791 | onboarded-code | ov_SC07_007 | 0.91/0.0160 |
|
||||
| SC07.CD/8 | 0 | 4 | 452,079 | onboarded-code | ov_SC07_008 | 0.97/0.0211 |
|
||||
| SC07.CD/9 | 0 | 4 | 507,007 | onboarded-code | ov_SC07_009 | 0.95/0.0192 |
|
||||
|
||||
@@ -2485,6 +2485,48 @@ class; until then, gate remapped drafts DIRECTLY rather than through `family_swe
|
||||
(the same `family_remap` `_carry_macros` gap as §146/§152) and gate directly, bypassing the sweep's
|
||||
recovery ladder entirely. Drafts + gate logs: `.run/s43/cluster_gate/`.
|
||||
|
||||
### ▶ S43-12 — L1+L2 SHIPPED: `make audit-disc`, the partition HOLDS at residue 0 (2026-08-05/06)
|
||||
Drew's task #10, delivered. **`tools/disc_audit.py` + `make audit-disc`**, ledger at
|
||||
`docs/disc-ledger.md`, machine copy `.run/disc_audit.json`.
|
||||
|
||||
**THE PARTITION HOLDS — residue 0 over all 416,021,760 disc bytes, 1,291 payloads examined:**
|
||||
| bucket | bytes | share |
|
||||
|---|---:|---:|
|
||||
| onboarded-code | 47,066,812 | 11.31% |
|
||||
| **unclaimed-code** | **3,564,021** | **0.86%** |
|
||||
| classified-data | 134,265,572 | 32.27% |
|
||||
| audio-video | 184,338,000 | 44.31% |
|
||||
| filesystem-metadata | 46,787,355 | 11.25% |
|
||||
|
||||
**THE ANSWER TO THE QUESTION THAT MOTIVATED IT: 34 UNCLAIMED code payloads / 3.56 MB** — code on the
|
||||
disc that no onboarded binary claims. Largest is **`MAIN.CD` sub-file 12, entry 1, type 1, 383,783 B**;
|
||||
the rest are small type-1 entries, overwhelmingly in `MAIN.CD`. These are the "there was more code all
|
||||
along" surprises, **enumerated instead of stumbled into**.
|
||||
|
||||
**Design (the three past surprises, each designed out):** walks the DISC IMAGE not our configs · whole
|
||||
payloads, **no window** · decodes **both** the raw and LZSS layers. `claimed-by` is DERIVED (R33) from
|
||||
`config/check.<bin>.sha` — that hash IS the build's own byte-identity gate, so it cannot drift.
|
||||
|
||||
**L2, the SECOND DISAGREEING ORACLE (R34), earned its keep immediately — it found two L1 defects:**
|
||||
1. **A claim outranks a heuristic.** I let the statistical verdict override a SHA match, so claimed
|
||||
binaries were being filed as `classified-data`. Onboarded bucket was understated by **14.5 MB**.
|
||||
2. **Whole-payload averaging DILUTES code.** A real overlay is code + a large data tail, so its
|
||||
whole-payload valid-ratio lands ~0.87, under L1's 0.90 gate — while L2 carves real functions from
|
||||
its head. My "classify the whole payload" fix (for the old 4,096-word window) had simply traded a
|
||||
head-only bias for an averaging bias. **80 disagreements, all this shape.**
|
||||
Resolution: a claim wins outright; otherwise take the **UNION** of the two oracles — over-reporting
|
||||
code puts a payload in a review queue, under-reporting it hides code, which is the exact failure
|
||||
mode that produced the three surprises. Unclaimed code went **1.70 MB → 3.56 MB** once fixed.
|
||||
|
||||
**My own first run FAILED the partition by −49,709,520 B and the fail-closed exit caught it:** `.DA`
|
||||
entries' LBAs point past track 1 into the CD-DA tracks (double-counted against the whole-track audio
|
||||
total) and `.STR`/`.XA` are MODE2 FORM2 (2324 user bytes/sector, not 2048).
|
||||
|
||||
**Known gap, stated not hidden:** `LIST.CD` fails the TOC walk (it IS the TOC cache, not a container)
|
||||
and is booked as data. **Not in `tools-health`** — it needs `disks/`, which a fresh clone lacks (H1).
|
||||
**Next (task #11 / L3):** the emulator tour resolves whether these 34 are the 39 type-1 modules, gives
|
||||
their load addresses, and proves completeness against execution.
|
||||
|
||||
### ▶ S11 — the propagation lag: EXTEND 0/36 -> 31/36, and every blocker was a DECLARATION (2026-08-03/04)
|
||||
Lane 2 of the S10 checkpoint ("26,006 ins, ~0 agent tokens, PARTLY BLOCKED"), taken first on the
|
||||
standing doctrine that the cheap deterministic lever is probed before the expensive agent one.
|
||||
|
||||
+92
-4
@@ -65,6 +65,68 @@ def classify(buf):
|
||||
return ('code' if vr >= 0.90 and jd >= 0.01 else 'data'), vr, jd
|
||||
|
||||
|
||||
_SIG = None
|
||||
|
||||
|
||||
def l2_carve(buf, cap=3):
|
||||
"""L2 (R34): an INDEPENDENT verdict — does a boundary carver find real functions here?
|
||||
|
||||
L1's test is a statistical heuristic (valid>=0.90 AND jr>=0.01); it can miss a small code payload
|
||||
whose `jr $ra` density falls under 1%, and it has no way to know it missed one. This oracle asks a
|
||||
structurally different question: walk the payload as sig_image does, cutting each function at the
|
||||
first `jr $ra` that lies at/after every forward branch target seen so far. Data has no regular
|
||||
epilogue, so the walk stops immediately; code yields function after function.
|
||||
|
||||
Returns (n_functions_found, instructions_covered), stopping at `cap` — a YES is what we need, and
|
||||
stopping early keeps the whole-disc pass affordable. The two oracles are then made to ARGUE: any
|
||||
payload where they disagree lands in the ledger's review queue rather than being silently resolved
|
||||
in favour of either."""
|
||||
global _SIG
|
||||
if _SIG is None:
|
||||
sys.path.insert(0, os.path.join(REPO, 'tools'))
|
||||
import sig_image as _si
|
||||
_SIG = _si
|
||||
n = len(buf) // 4 * 4
|
||||
if n < 64:
|
||||
return 0, 0
|
||||
base, pos, found, covered = 0x80000000, 0x80000000, 0, 0
|
||||
hi = base + n
|
||||
while pos < hi and found < cap:
|
||||
try:
|
||||
end = _SIG.func_end(buf, base, pos, hi)
|
||||
except Exception:
|
||||
break
|
||||
if end >= hi: # no qualifying return -> left the code region
|
||||
break
|
||||
found += 1
|
||||
covered += end - pos
|
||||
pos = end
|
||||
return found, covered
|
||||
|
||||
|
||||
def bucket_of(who, k1, k2):
|
||||
"""Resolve a payload's bucket from the claim + BOTH oracles.
|
||||
|
||||
Two L1 defects that the L2 disagreement exposed (P30 S43, and exactly why R34 exists):
|
||||
|
||||
1. **A CLAIM OUTRANKS A HEURISTIC.** If the payload's SHA1 equals a committed
|
||||
`config/check.<bin>.sha`, it IS that onboarded binary — the build gates on that hash every
|
||||
day. Letting a statistical verdict file a claimed payload as `classified-data` was simply
|
||||
wrong, and it silently shrank the onboarded bucket.
|
||||
2. **WHOLE-PAYLOAD AVERAGING DILUTES CODE.** A real location overlay is code followed by a large
|
||||
data tail, so its whole-payload valid-ratio lands ~0.87 — under L1's 0.90 gate — while L2
|
||||
carves real functions out of its head. Classifying the whole payload (the fix for the old
|
||||
4,096-word window) traded a head-only bias for an averaging bias.
|
||||
|
||||
So: a claim wins outright, and for the rest take the UNION of the two oracles. The union is the
|
||||
conservative direction for the question this audit exists to answer — over-reporting a payload as
|
||||
code puts it in a review queue, under-reporting it hides code, which is the failure mode that
|
||||
produced three "there was more code all along" surprises."""
|
||||
if who:
|
||||
return 'onboarded-code'
|
||||
return 'unclaimed-code' if (k1 == 'code' or k2 == 'code') else 'classified-data'
|
||||
|
||||
|
||||
def onboarded_payload_shas():
|
||||
"""{sha1: alias} from every committed config/check.<bin>.sha (R33 — the build's own oracle)."""
|
||||
out = {}
|
||||
@@ -101,7 +163,7 @@ def main():
|
||||
'audio-video', 'filesystem-metadata'), 0)
|
||||
B['audio-video'] += sum(os.path.getsize(t) for t in tracks if 'Track 1' not in t)
|
||||
|
||||
rows, payloads, file_fp_total = [], 0, 0
|
||||
rows, payloads, file_fp_total, disputes = [], 0, 0, []
|
||||
with iso9660.Iso9660Image(t1) as img:
|
||||
recs = list(img.list_files())
|
||||
print(f'ISO root files: {len(recs)}')
|
||||
@@ -123,11 +185,15 @@ def main():
|
||||
data = img.extract_file(name)
|
||||
if not up.endswith('.CD'):
|
||||
k, vr, jd = classify(data)
|
||||
nf, _cov = l2_carve(data)
|
||||
k2 = 'code' if nf >= 2 else 'data'
|
||||
h = hashlib.sha1(data).hexdigest()
|
||||
who = claimed.get(h)
|
||||
b = ('onboarded-code' if who else 'unclaimed-code') if k == 'code' else 'classified-data'
|
||||
b = bucket_of(who, k, k2)
|
||||
B[b] += fp
|
||||
payloads += 1
|
||||
if k != k2:
|
||||
disputes.append((name, '-', '-', len(data), k, k2, nf, f'{vr:.2f}/{jd:.4f}'))
|
||||
if k == 'code' or who:
|
||||
rows.append((name, '-', '-', len(data), b, who or 'UNCLAIMED', f'{vr:.2f}/{jd:.4f}'))
|
||||
continue
|
||||
@@ -159,9 +225,14 @@ def main():
|
||||
except Exception:
|
||||
buf = raw
|
||||
k, vr, jd = classify(buf)
|
||||
nf, _cov = l2_carve(buf)
|
||||
k2 = 'code' if nf >= 2 else 'data'
|
||||
if k != k2:
|
||||
disputes.append((f'{name}/{si}', idx, etype, len(buf), k, k2, nf,
|
||||
f'{vr:.2f}/{jd:.4f}'))
|
||||
h = hashlib.sha1(buf).hexdigest()
|
||||
who = claimed.get(h)
|
||||
b = ('onboarded-code' if who else 'unclaimed-code') if k == 'code' else 'classified-data'
|
||||
b = bucket_of(who, k, k2)
|
||||
B[b] += rawlen
|
||||
acct += rawlen
|
||||
if k == 'code' or who:
|
||||
@@ -190,6 +261,19 @@ def main():
|
||||
fh.write(f'| **TOTAL** | **{total:,}** | {100*total/disc_bytes:.2f}% |\n')
|
||||
fh.write(f'\n**Residue: {residue:,} bytes — '
|
||||
f'{"PARTITION HOLDS" if residue == 0 else "DEFECT, unaccounted"}**\n\n')
|
||||
fh.write(f'## L2 review queue — {len(disputes)} oracle disagreement(s)\n\n')
|
||||
fh.write('> L1 = statistical heuristic (valid>=0.90 AND jr>=0.01). L2 = independent boundary\n'
|
||||
'> carving (sig_image `func_end` walk). R34: the two are made to ARGUE; a disagreement\n'
|
||||
'> is a review item, never silently resolved. L1=data/L2=code is the DANGEROUS\n'
|
||||
'> direction — that is missed code.\n\n')
|
||||
if disputes:
|
||||
fh.write('| file | entry | type | bytes | L1 | L2 | fns carved | valid/jr |\n')
|
||||
fh.write('|---|---|---|---:|---|---|---:|---|\n')
|
||||
for d in sorted(disputes, key=lambda d: (d[4] != 'data', -d[3])):
|
||||
fh.write(f'| {d[0]} | {d[1]} | {d[2]} | {d[3]:,} | {d[4]} | {d[5]} | {d[6]} | {d[7]} |\n')
|
||||
fh.write('\n')
|
||||
else:
|
||||
fh.write('_The two oracles agree on every payload._\n\n')
|
||||
fh.write(f'## Code payloads — {len(unclaimed)} UNCLAIMED of '
|
||||
f'{len([r for r in rows if "code" in r[4]])}\n\n')
|
||||
fh.write('| file | entry | type | bytes | bucket | claimed-by | valid/jr |\n')
|
||||
@@ -199,12 +283,16 @@ def main():
|
||||
fh.write(f'| {r[0]} | {r[1]} | {r[2]} | {r[3]:,} | {r[4]} | {r[5]} | {r[6]} |\n')
|
||||
|
||||
json.dump({'buckets': B, 'disc_bytes': disc_bytes, 'residue': residue,
|
||||
'payloads': payloads, 'unclaimed_code': len(unclaimed)},
|
||||
'payloads': payloads, 'unclaimed_code': len(unclaimed),
|
||||
'l2_disputes': len(disputes)},
|
||||
open('.run/disc_audit.json', 'w'), indent=1)
|
||||
|
||||
for k, v in B.items():
|
||||
print(f' {k:22s} {v:>14,}')
|
||||
print(f' {"TOTAL":22s} {total:>14,} disc {disc_bytes:,} residue {residue:,}')
|
||||
print(f'L2 disagreements (review queue): {len(disputes)}')
|
||||
for d in sorted(disputes, key=lambda d: (d[4] != 'data', -d[3]))[:12]:
|
||||
print(f' {d[0]} entry={d[1]} type={d[2]} {d[3]:,} B L1={d[4]} L2={d[5]} fns={d[6]} {d[7]}')
|
||||
print(f'UNCLAIMED code payloads: {len(unclaimed)}')
|
||||
for r in unclaimed[:25]:
|
||||
print(f' {r[0]} entry={r[1]} type={r[2]} {r[3]:,} B valid/jr={r[6]}')
|
||||
|
||||
Reference in New Issue
Block a user