diff --git a/.run/backlog.jsonl b/.run/backlog.jsonl index 3c59131de..0ad42d22c 100644 --- a/.run/backlog.jsonl +++ b/.run/backlog.jsonl @@ -297,7 +297,6 @@ {"ts": "2026-07-01 12:43:59", "addr": null, "name": "func_80186DAC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 2, "where_stuck": "residual: 2 mismatch", "best_draft": ".run/backlog_drafts/func_80186DAC.c", "binary": "ov_SC03_001", "source": "bulk-harvest", "residual": null, "passes_tried": null} {"ts": "2026-08-14 19:58:56", "addr": "0x80187454", "name": "func_80187454", "reach": null, "klass": "LENGTH-DRIFT", "nins": null, "status": "near", "closeness": 2, "where_stuck": "lenmiss permuter-length route", "best_draft": ".run/backlog_drafts/func_80187454.c", "binary": "ov_SC02_028", "source": "warmstart", "residual": null, "passes_tried": null} {"ts": "2026-07-01 12:44:06", "addr": null, "name": "func_801810D8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 12, "where_stuck": "residual: 12 mismatch", "best_draft": ".run/backlog_drafts/func_801810D8.c", "binary": "ov_SC03_024", "source": "bulk-harvest", "residual": null, "passes_tried": null} -{"ts": "2026-07-01 12:44:49", "addr": null, "name": "func_8017FFCC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 19, "where_stuck": "residual: 19 mismatch", "best_draft": ".run/backlog_drafts/func_8017FFCC.c", "binary": "ov_SC06_024", "source": "bulk-harvest", "residual": null, "passes_tried": null} {"ts": "2026-07-01 13:28:11", "addr": null, "name": "func_80182118", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 11, "where_stuck": "residual: 11 mismatch", "best_draft": ".run/backlog_drafts/func_80182118.c", "binary": "ov_SC06_025", "source": "bulk-harvest", "residual": null, "passes_tried": null} {"ts": "2026-07-01 13:27:58", "addr": null, "name": "func_8017E818", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 15, "where_stuck": "residual: 15 mismatch", "best_draft": ".run/backlog_drafts/func_8017E818.c", "binary": "ov_SC05_018", "source": "bulk-harvest", "residual": null, "passes_tried": null} {"ts": "2026-08-14 19:58:56", "addr": "0x8017f7bc", "name": "func_8017F7BC", "reach": null, "klass": "LENGTH-DRIFT", "nins": null, "status": "near", "closeness": 1, "where_stuck": "lenmiss permuter-length route", "best_draft": ".run/backlog_drafts/func_8017F7BC.c", "binary": "ov_SC05_018", "source": "warmstart", "residual": null, "passes_tried": null} @@ -459,10 +458,8 @@ {"ts": "2026-07-14 23:03:41", "addr": null, "name": "func_8017EB30", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 278, "where_stuck": "residual: 278 mismatch", "best_draft": ".run/backlog_drafts/func_8017EB30.c", "binary": "ov_SC01_004", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:04:07", "addr": null, "name": "func_801830EC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 26, "where_stuck": "residual: 26 mismatch", "best_draft": ".run/backlog_drafts/func_801830EC.c", "binary": "ov_SC02_027", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:04:34", "addr": null, "name": "func_80180C2C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 39, "where_stuck": "residual: 39 mismatch", "best_draft": ".run/backlog_drafts/func_80180C2C.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:04:35", "addr": null, "name": "func_80181500", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 75, "where_stuck": "residual: 75 mismatch", "best_draft": ".run/backlog_drafts/func_80181500.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:04:35", "addr": null, "name": "func_80182EE8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 23, "where_stuck": "residual: 23 mismatch", "best_draft": ".run/backlog_drafts/func_80182EE8.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:04:35", "addr": null, "name": "func_80183BF8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 258, "where_stuck": "residual: 258 mismatch", "best_draft": ".run/backlog_drafts/func_80183BF8.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:04:35", "addr": null, "name": "func_80184210", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 176, "where_stuck": "residual: 176 mismatch", "best_draft": ".run/backlog_drafts/func_80184210.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:04:35", "addr": null, "name": "func_8018555C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 20, "where_stuck": "residual: 20 mismatch", "best_draft": ".run/backlog_drafts/func_8018555C.c", "binary": "ov_SC03_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:05:04", "addr": null, "name": "func_8017D804", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 35, "where_stuck": "residual: 35 mismatch", "best_draft": ".run/backlog_drafts/func_8017D804.c", "binary": "ov_SC03_014", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:05:04", "addr": null, "name": "func_8017DDBC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 24, "where_stuck": "residual: 24 mismatch", "best_draft": ".run/backlog_drafts/func_8017DDBC.c", "binary": "ov_SC03_014", "source": "worker", "residual": null, "passes_tried": null} @@ -472,7 +469,7 @@ {"ts": "2026-07-14 23:05:37", "addr": null, "name": "func_801807DC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 92, "where_stuck": "residual: 92 mismatch", "best_draft": ".run/backlog_drafts/func_801807DC.c", "binary": "ov_SC02_017", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:05:37", "addr": null, "name": "func_8018337C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 31, "where_stuck": "residual: 31 mismatch", "best_draft": ".run/backlog_drafts/func_8018337C.c", "binary": "ov_SC02_017", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:05:37", "addr": null, "name": "func_80184630", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 18, "where_stuck": "residual: 18 mismatch", "best_draft": ".run/backlog_drafts/func_80184630.c", "binary": "ov_SC02_017", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:05:37", "addr": null, "name": "func_80185B5C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 67, "where_stuck": "residual: 67 mismatch", "best_draft": ".run/backlog_drafts/func_80185B5C.c", "binary": "ov_SC02_017", "source": "worker", "residual": null, "passes_tried": null} +{"ts": "2026-08-17 14:12:07", "addr": "0x80185b5c", "name": "func_80185B5C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 50, "where_stuck": "residual: 50 mismatch", "best_draft": ".run/backlog_drafts/func_80185B5C.c", "binary": "ov_SC02_017", "source": "worker", "residual": [[6, "10620035 beq\tv1,v0,f0 ", "10620037 beq $v1, $v0, .L80185C54"], [7, "00000000 nop", "00001021 addu $v0, $zero, $zero"], [10, "14400031 bnez\tv0,f0 ", "14400033 bnez $v0, .L80185C54"], [11, "00000000 nop", "00001021 addu $v0, $zero, $zero"], [15, "1440002c bnez\tv0,f0 ", "1440002e bnez $v0, .L80185C54"], [16, "00000000 nop", "00001021 addu $v0, $zero, $zero"], [20, "10400027 beqz\tv0,f0 ", "14400003 bnez $v0, .L80185BBC"], [22, "3c030000 lui\tv1,0x0", "08061715 j .L80185C54"], [23, "94630000 lhu\tv1,0(v1)", "00001021 addu $v0, $zero, $zero"], [24, "3c050000 lui\ta1,0x0", "3c038012 lui $v1, %hi(D_80126B5E)"], [25, "94a50000 lhu\ta1,0(a1)", "94636b5e lhu $v1, %lo(D_80126B5E)($v1)"], [26, "3c060000 lui\ta2,0x0", "3c058012 lui $a1, %hi(D_80126B62)"], [27, "94c60000 lhu\ta2,0(a2)", "94a56b62 lhu $a1, %lo(D_80126B62)($a1)"], [28, "a7a30020 sh\tv1,32(sp)", "3c068012 lui $a2, %hi(D_80126B66)"], [29, "a7a50022 sh\ta1,34(sp)", "94c66b66 lhu $a2, %lo(D_80126B66)($a2)"], [30, "a7a60024 sh\ta2,36(sp)", "a7a30020 sh $v1, 0x20($sp)"], [31, "96020006 lhu\tv0,6(s0)", "a7a50022 sh $a1, 0x22($sp)"], [32, "00000000 nop", "a7a60024 sh $a2, 0x24($sp)"], [33, "00621823 subu\tv1,v1,v0", "96020006 lhu $v0, 0x6($s0)"], [34, "a7a30018 sh\tv1,24(sp)", "00000000 nop"], [35, "9602000a lhu\tv0,10(s0)", "00621823 subu $v1, $v1, $v0"], [36, "00000000 nop", "a7a30018 sh $v1, 0x18($sp)"], [37, "00a22823 subu\ta1,a1,v0", "9602000a lhu $v0, 0xA($s0)"], [38, "a7a5001a sh\ta1,26(sp)", "00000000 nop"]], "passes_tried": null} {"ts": "2026-07-14 23:05:37", "addr": null, "name": "func_80186FA8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 38, "where_stuck": "residual: 38 mismatch", "best_draft": ".run/backlog_drafts/func_80186FA8.c", "binary": "ov_SC02_017", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:06:11", "addr": null, "name": "func_8017D96C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 43, "where_stuck": "residual: 43 mismatch", "best_draft": ".run/backlog_drafts/func_8017D96C.c", "binary": "ov_SC03_011", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:06:11", "addr": null, "name": "func_8017DC08", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 22, "where_stuck": "residual: 22 mismatch", "best_draft": ".run/backlog_drafts/func_8017DC08.c", "binary": "ov_SC03_011", "source": "worker", "residual": null, "passes_tried": null} @@ -516,7 +513,6 @@ {"ts": "2026-07-14 23:10:15", "addr": null, "name": "func_8017F344", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 29, "where_stuck": "residual: 29 mismatch", "best_draft": ".run/backlog_drafts/func_8017F344.c", "binary": "ov_SC01_080", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:10:15", "addr": null, "name": "func_8017F414", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 16, "where_stuck": "residual: 16 mismatch", "best_draft": ".run/backlog_drafts/func_8017F414.c", "binary": "ov_SC01_080", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:10:16", "addr": null, "name": "func_801800F4", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 31, "where_stuck": "residual: 31 mismatch", "best_draft": ".run/backlog_drafts/func_801800F4.c", "binary": "ov_SC01_080", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:10:16", "addr": null, "name": "func_80182B90", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 74, "where_stuck": "residual: 74 mismatch", "best_draft": ".run/backlog_drafts/func_80182B90.c", "binary": "ov_SC01_080", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:12:11", "addr": null, "name": "func_8017D220", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 15, "where_stuck": "residual: 15 mismatch", "best_draft": ".run/backlog_drafts/func_8017D220.c", "binary": "ov_SC01_005", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:12:11", "addr": null, "name": "func_8017D808", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 102, "where_stuck": "residual: 102 mismatch", "best_draft": ".run/backlog_drafts/func_8017D808.c", "binary": "ov_SC01_005", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:12:11", "addr": null, "name": "func_8017DB00", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 20, "where_stuck": "residual: 20 mismatch", "best_draft": ".run/backlog_drafts/func_8017DB00.c", "binary": "ov_SC01_005", "source": "worker", "residual": null, "passes_tried": null} @@ -557,7 +553,6 @@ {"ts": "2026-07-14 23:15:45", "addr": null, "name": "func_80180204", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 55, "where_stuck": "residual: 55 mismatch", "best_draft": ".run/backlog_drafts/func_80180204.c", "binary": "ov_SC03_031", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:15:45", "addr": null, "name": "func_8018043C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 41, "where_stuck": "residual: 41 mismatch", "best_draft": ".run/backlog_drafts/func_8018043C.c", "binary": "ov_SC03_031", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:15:45", "addr": null, "name": "func_80180E98", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 28, "where_stuck": "residual: 28 mismatch", "best_draft": ".run/backlog_drafts/func_80180E98.c", "binary": "ov_SC03_031", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:16:05", "addr": null, "name": "func_801848AC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 84, "where_stuck": "residual: 84 mismatch", "best_draft": ".run/backlog_drafts/func_801848AC.c", "binary": "ov_SC03_089", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:16:32", "addr": null, "name": "func_8017DE74", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 50, "where_stuck": "residual: 50 mismatch", "best_draft": ".run/backlog_drafts/func_8017DE74.c", "binary": "ov_SC03_092", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:16:32", "addr": null, "name": "func_8017DF40", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 49, "where_stuck": "residual: 49 mismatch", "best_draft": ".run/backlog_drafts/func_8017DF40.c", "binary": "ov_SC03_092", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:16:32", "addr": null, "name": "func_8017F0A8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 90, "where_stuck": "residual: 90 mismatch", "best_draft": ".run/backlog_drafts/func_8017F0A8.c", "binary": "ov_SC03_092", "source": "worker", "residual": null, "passes_tried": null} @@ -587,7 +582,6 @@ {"ts": "2026-07-14 23:21:06", "addr": null, "name": "func_801853F8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 16, "where_stuck": "residual: 16 mismatch", "best_draft": ".run/backlog_drafts/func_801853F8.c", "binary": "ov_SC04_002", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:21:06", "addr": null, "name": "func_80185A68", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 15, "where_stuck": "residual: 15 mismatch", "best_draft": ".run/backlog_drafts/func_80185A68.c", "binary": "ov_SC04_002", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:21:29", "addr": null, "name": "func_801824F0", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 41, "where_stuck": "residual: 41 mismatch", "best_draft": ".run/backlog_drafts/func_801824F0.c", "binary": "ov_SC04_005", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:21:29", "addr": null, "name": "func_80182728", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 98, "where_stuck": "residual: 98 mismatch", "best_draft": ".run/backlog_drafts/func_80182728.c", "binary": "ov_SC04_005", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:22:27", "addr": null, "name": "func_80188650", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 28, "where_stuck": "residual: 28 mismatch", "best_draft": ".run/backlog_drafts/func_80188650.c", "binary": "ov_SC04_011", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:22:48", "addr": null, "name": "func_8017F1C4", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 58, "where_stuck": "residual: 58 mismatch", "best_draft": ".run/backlog_drafts/func_8017F1C4.c", "binary": "ov_SC04_016", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:22:48", "addr": null, "name": "func_8017F4A0", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 41, "where_stuck": "residual: 41 mismatch", "best_draft": ".run/backlog_drafts/func_8017F4A0.c", "binary": "ov_SC04_016", "source": "worker", "residual": null, "passes_tried": null} @@ -645,7 +639,6 @@ {"ts": "2026-07-14 23:35:56", "addr": null, "name": "func_8017EA2C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 58, "where_stuck": "residual: 58 mismatch", "best_draft": ".run/backlog_drafts/func_8017EA2C.c", "binary": "ov_SC04_015", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:35:56", "addr": null, "name": "func_80183A24", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 28, "where_stuck": "residual: 28 mismatch", "best_draft": ".run/backlog_drafts/func_80183A24.c", "binary": "ov_SC04_015", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:36:19", "addr": null, "name": "func_8017F320", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 22, "where_stuck": "residual: 22 mismatch", "best_draft": ".run/backlog_drafts/func_8017F320.c", "binary": "ov_SC04_020", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:37:26", "addr": null, "name": "func_8017F840", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 82, "where_stuck": "residual: 82 mismatch", "best_draft": ".run/backlog_drafts/func_8017F840.c", "binary": "ov_SC05_005", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:37:26", "addr": null, "name": "func_8017FEC8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 32, "where_stuck": "residual: 32 mismatch", "best_draft": ".run/backlog_drafts/func_8017FEC8.c", "binary": "ov_SC05_005", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:37:51", "addr": null, "name": "func_8017F20C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 16, "where_stuck": "residual: 16 mismatch", "best_draft": ".run/backlog_drafts/func_8017F20C.c", "binary": "ov_SC05_008", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:37:51", "addr": null, "name": "func_8017FF30", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 19, "where_stuck": "residual: 19 mismatch", "best_draft": ".run/backlog_drafts/func_8017FF30.c", "binary": "ov_SC05_008", "source": "worker", "residual": null, "passes_tried": null} @@ -667,11 +660,8 @@ {"ts": "2026-07-14 23:39:56", "addr": null, "name": "func_8017FACC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 32, "where_stuck": "residual: 32 mismatch", "best_draft": ".run/backlog_drafts/func_8017FACC.c", "binary": "ov_SC06_018", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:39:56", "addr": null, "name": "func_8018AB74", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 22, "where_stuck": "residual: 22 mismatch", "best_draft": ".run/backlog_drafts/func_8018AB74.c", "binary": "ov_SC06_018", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:39:56", "addr": null, "name": "func_8018ACD4", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 39, "where_stuck": "residual: 39 mismatch", "best_draft": ".run/backlog_drafts/func_8018ACD4.c", "binary": "ov_SC06_018", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:40:23", "addr": null, "name": "func_8017E8F8", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 120, "where_stuck": "residual: 120 mismatch", "best_draft": ".run/backlog_drafts/func_8017E8F8.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:40:23", "addr": null, "name": "func_80180D28", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 27, "where_stuck": "residual: 27 mismatch", "best_draft": ".run/backlog_drafts/func_80180D28.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:40:23", "addr": null, "name": "func_80181068", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 81, "where_stuck": "residual: 81 mismatch", "best_draft": ".run/backlog_drafts/func_80181068.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:40:23", "addr": null, "name": "func_80181254", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 26, "where_stuck": "residual: 26 mismatch", "best_draft": ".run/backlog_drafts/func_80181254.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} -{"ts": "2026-07-14 23:40:23", "addr": null, "name": "func_80182D10", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 102, "where_stuck": "residual: 102 mismatch", "best_draft": ".run/backlog_drafts/func_80182D10.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:40:24", "addr": null, "name": "func_80183598", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 42, "where_stuck": "residual: 42 mismatch", "best_draft": ".run/backlog_drafts/func_80183598.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:40:24", "addr": null, "name": "func_80183C58", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 17, "where_stuck": "residual: 17 mismatch", "best_draft": ".run/backlog_drafts/func_80183C58.c", "binary": "ov_SC06_024", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-07-14 23:40:49", "addr": null, "name": "func_80186044", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 41, "where_stuck": "residual: 41 mismatch", "best_draft": ".run/backlog_drafts/func_80186044.c", "binary": "ov_SC06_029", "source": "worker", "residual": null, "passes_tried": null} @@ -744,7 +734,6 @@ {"ts": "2026-08-04 23:12:26", "addr": "0x80181f08", "name": "func_80181F08", "reach": 1, "klass": "STRUCT", "nins": 117, "status": "near", "closeness": 90, "where_stuck": "STRUCT: 90 mismatch", "best_draft": ".run/backlog_drafts/func_80181F08.c", "binary": "ov_SC01_077", "source": "worker", "residual": [[0, "27bdffe8 addiu\tsp,sp,-24", "27bdffd8 addiu $sp, $sp, -0x28"], [1, "afb00010 sw\ts0,16(sp)", "afb00020 sw $s0, 0x20($sp)"], [3, "afbf0014 sw\tra,20(sp)", "afbf0024 sw $ra, 0x24($sp)"], [4, "9203005e lbu\tv1,94(s0)", "3c05801e lui $a1, %hi(D_801D9204)"], [5, "24020005 li\tv0,5", "24a59204 addiu $a1, $a1, %lo(D_801D9204)"], [6, "14620009 bne\tv1,v0,40 ", "8ca20000 lw $v0, 0x0($a1)"], [7, "2402001f li\tv0,31", "8ca30004 lw $v1, 0x4($a1)"], [8, "3c040000 lui\ta0,0x0", "8ca40008 lw $a0, 0x8($a1)"], [9, "24840000 addiu\ta0,a0,0", "afa20010 sw $v0, 0x10($sp)"], [10, "3c050000 lui\ta1,0x0", "afa30014 sw $v1, 0x14($sp)"], [11, "24a50000 addiu\ta1,a1,0", "afa40018 sw $a0, 0x18($sp)"], [14, "9203005e lbu\tv1,94(s0)", "afa2001c sw $v0, 0x1C($sp)"], [15, "2402001f li\tv0,31", "9203005e lbu $v1, 0x5E($s0)"], [16, "14620005 bne\tv1,v0,58 ", "24020005 addiu $v0, $zero, 0x5"], [17, "02002021 move\ta0,s0", "14620005 bne $v1, $v0, .L80181F64"], [19, "02002021 move\ta0,s0", "3c048006 lui $a0, %hi(D_80062BDC)"], [21, "00000000 nop", "0c006419 jal func_80019064"], [23, "a20000c1 sb\tzero,193(s0)", "9603005e lhu $v1, 0x5E($s0)"], [24, "96020076 lhu\tv0,118(s0)", "2402001f addiu $v0, $zero, 0x1F"], [25, "96030060 lhu\tv1,96(s0)", "14620005 bne $v1, $v0, .L80181F84"], [27, "00431023 subu\tv0,v0,v1", "0c060c07 jal func_8018301C"], [28, "a6020076 sh\tv0,118(s0)", "02002021 addu $a0, $s0, $zero"], [29, "9602005c lhu\tv0,92(s0)", "08060832 j .L801820C8"], [30, "96030062 lhu\tv1,98(s0)", "00000000 nop"]], "passes_tried": null} {"ts": "2026-08-04 23:16:43", "addr": "0x8018308c", "name": "func_8018308C", "reach": 1, "klass": "STRUCT", "nins": 166, "status": "near", "closeness": 40, "where_stuck": "STRUCT: 40 mismatch", "best_draft": ".run/backlog_drafts/func_8018308C.c", "binary": "ov_SC01_077", "source": "worker", "residual": [[16, "10800013 beqz\ta0,90 ", "1080000a beqz $a0, .L801830F8"], [25, "1462000a bne\tv1,v0,90 ", "10620003 beq $v1, $v0, .L80183100"], [27, "8483000e lh\tv1,14(a0)", "08060c48 j .L80183120"], [28, "8602000e lh\tv0,14(s0)", "00008821 addu $s1, $zero, $zero"], [29, "00000000 nop", "8483000e lh $v1, 0xE($a0)"], [30, "00621823 subu\tv1,v1,v0", "8602000e lh $v0, 0xE($s0)"], [31, "04610005 bgez\tv1,94 ", "00000000 nop"], [32, "28710020 slti\ts1,v1,32", "00621823 subu $v1, $v1, $v0"], [33, "00038823 negu\ts1,v1", "04610003 bgez $v1, .L80183120"], [35, "2a310020 slti\ts1,s1,32", "00031823 negu $v1, $v1"], [36, "00008821 move\ts1,zero", "28710020 slti $s1, $v1, 0x20"], [73, "10400054 beqz\tv0,278 ", "10400055 beqz $v0, .L80183308"], [105, "10400034 beqz\tv0,278 ", "10400035 beqz $v0, .L80183308"], [123, "1040000d beqz\tv0,224 ", "10400012 beqz $v0, .L801832C4"], [134, "10400003 beqz\tv0,228 ", "10400007 beqz $v0, .L801832C4"], [135, "02002021 move\ta0,s0", "00000000 nop"], [136, "a60000e2 sh\tzero,226(s0)", "08060cb1 j .L801832C4"], [137, "02002021 move\ta0,s0", "a60000e2 sh $zero, 0xE2($s0)"], [138, "2402001e li\tv0,30", "0c060a5a jal func_80182968"], [139, "a60200e4 sh\tv0,228(s0)", "02002021 addu $a0, $s0, $zero"], [140, "2402aa10 li\tv0,-22000", "08060cc2 j .L80183308"], [141, "a600005e sh\tzero,94(s0)", "00000000 nop"], [143, "a602005c sh\tv0,92(s0)", "2402001e addiu $v0, $zero, 0x1E"], [145, "02002021 move\ta0,s0", "3402aa10 ori $v0, $zero, 0xAA10"]], "passes_tried": null} {"ts": "2026-08-04 23:17:32", "addr": "0x80186078", "name": "func_80186078", "reach": 1, "klass": "WAVE", "nins": 174, "status": "near", "closeness": 141, "where_stuck": "WAVE: 141 mismatch", "best_draft": ".run/backlog_drafts/func_80186078.c", "binary": "ov_SC01_077", "source": "worker", "residual": [[15, "a7a00014 sh\tzero,20(sp)", "8e02001c lw $v0, 0x1C($s0)"], [16, "a7a00012 sh\tzero,18(sp)", "02603021 addu $a2, $s3, $zero"], [17, "8e02001c lw\tv0,28(s0)", "a7a00014 sh $zero, 0x14($sp)"], [18, "02603021 move\ta2,s3", "a7a00012 sh $zero, 0x12($sp)"], [24, "8e030090 lw\tv1,144(s0)", "8e040090 lw $a0, 0x90($s0)"], [25, "8e040044 lw\ta0,68(s0)", "8e030044 lw $v1, 0x44($s0)"], [26, "8e050048 lw\ta1,72(s0)", "8e05004c lw $a1, 0x4C($s0)"], [27, "a6000098 sh\tzero,152(s0)", "a6020006 sh $v0, 0x6($s0)"], [28, "a6020006 sh\tv0,6(s0)", "97a2001c lhu $v0, 0x1C($sp)"], [29, "97a2001c lhu\tv0,28(sp)", "a6000098 sh $zero, 0x98($s0)"], [30, "00000000 nop", "a602000e sh $v0, 0xE($s0)"], [31, "a602000e sh\tv0,14(s0)", "8e020010 lw $v0, 0x10($s0)"], [32, "8c660000 lw\ta2,0(v1)", "8c860000 lw $a2, 0x0($a0)"], [33, "8e020010 lw\tv0,16(s0)", "8e040048 lw $a0, 0x48($s0)"], [34, "8e030014 lw\tv1,20(s0)", "00431021 addu $v0, $v0, $v1"], [35, "00441021 addu\tv0,v0,a0", "ae020010 sw $v0, 0x10($s0)"], [36, "ae020010 sw\tv0,16(s0)", "8e020014 lw $v0, 0x14($s0)"], [37, "8e020018 lw\tv0,24(s0)", "8e030018 lw $v1, 0x18($s0)"], [38, "8e04004c lw\ta0,76(s0)", "00441021 addu $v0, $v0, $a0"], [40, "ae030014 sw\tv1,20(s0)", "3c04801e lui $a0, %hi(D_801DA988)"], [41, "3c030000 lui\tv1,0x0", "2484a988 addiu $a0, $a0, %lo(D_801DA988)"], [42, "8c630000 lw\tv1,0(v1)", "ae020014 sw $v0, 0x14($s0)"], [43, "8e050010 lw\ta1,16(s0)", "ae030018 sw $v1, 0x18($s0)"], [44, "00441021 addu\tv0,v0,a0", "8c820000 lw $v0, 0x0($a0)"]], "passes_tried": null} -{"ts": "2026-08-04 23:17:33", "addr": "0x801865ec", "name": "func_801865EC", "reach": 1, "klass": "WAVE", "nins": 125, "status": "near", "closeness": 65, "where_stuck": "WAVE: 65 mismatch", "best_draft": ".run/backlog_drafts/func_801865EC.c", "binary": "ov_SC01_077", "source": "worker", "residual": [[36, "00023023 negu\ta2,v0", "00022823 negu $a1, $v0"], [37, "24c40400 addiu\ta0,a2,1024", "24a30400 addiu $v1, $a1, 0x400"], [38, "00041040 sll\tv0,a0,0x1", "00031040 sll $v0, $v1, 1"], [39, "00442821 addu\ta1,v0,a0", "00432021 addu $a0, $v0, $v1"], [40, "00051100 sll\tv0,a1,0x4", "00041100 sll $v0, $a0, 4"], [42, "00401821 move\tv1,v0", "26260024 addiu $a2, $s1, 0x24"], [43, "244307ff addiu\tv1,v0,2047", "244207ff addiu $v0, $v0, 0x7FF"], [44, "000312c3 sra\tv0,v1,0xb", "000212c3 sra $v0, $v0, 11"], [46, "00051140 sll\tv0,a1,0x5", "00041140 sll $v0, $a0, 5"], [52, "00801021 move\tv0,a0", "00601021 addu $v0, $v1, $zero"], [55, "24c2043f addiu\tv0,a2,1087", "24a2043f addiu $v0, $a1, 0x43F"], [63, "8e230020 lw\tv1,32(s1)", "8e220020 lw $v0, 0x20($s1)"], [64, "26220024 addiu\tv0,s1,36", "00000000 nop"], [65, "ac620080 sw\tv0,128(v1)", "ac460080 sw $a2, 0x80($v0)"], [67, "00000000 nop", "02202021 addu $a0, $s1, $zero"], [69, "00000000 nop", "3c058018 lui $a1, %hi(D_80186E48)"], [70, "34420010 ori\tv0,v0,0x10", "24a56e48 addiu $a1, $a1, %lo(D_80186E48)"], [71, "a462002c sh\tv0,44(v1)", "34420010 ori $v0, $v0, 0x10"], [72, "8e230020 lw\tv1,32(s1)", "a462002c sh $v0, 0x2C($v1)"], [73, "24022000 li\tv0,8192", "8e230020 lw $v1, 0x20($s1)"], [74, "a462001c sh\tv0,28(v1)", "24022000 addiu $v0, $zero, 0x2000"], [75, "8e230020 lw\tv1,32(s1)", "a462001c sh $v0, 0x1C($v1)"], [76, "02202021 move\ta0,s1", "a462001a sh $v0, 0x1A($v1)"], [77, "a462001a sh\tv0,26(v1)", "0c04aa0a jal func_8012A828"]], "passes_tried": null} {"ts": "2026-08-05 17:21:27", "addr": "0x8017EF68", "name": "func_8017EF68", "reach": 1, "klass": "SOLVED: ghost wedge (cookbook \u00a7151) \u2014 r3000 blockage(load,store)=2 makes zero-wedge unreachable by source order", "nins": 969, "status": "matched", "closeness": 0, "where_stuck": "BANKED, R22 140/140 confirmed", "best_draft": ".run/s43/fable/8017EF68/final.c", "binary": "ov_SC06_000", "source": "s43-fable", "residual": null, "passes_tried": null} {"ts": "2026-08-14", "addr": "0x8017CE58", "name": "func_8017CE58", "reach": 4, "klass": "WALL(P32): frame residual = 4 missing combine-USE orphan slots; zero-code fix byte-refuted across 90 probes (cookbook \u00a7172); floor NEAR 2", "nins": 246, "status": "near", "closeness": 2, "where_stuck": "ov_SC02_000/003 + func_8017C294 in ov_SC01_077/ov_SC03_030 = 4 instances; residual is one spill offset (sw a1 0xA0 vs 0x80)", "best_draft": ".run/s43/wave/8017CE58/v_best_246.c", "binary": "ov_SC02_000", "source": "s43-wave", "residual": null, "passes_tried": null} {"ts": "2026-08-10 10:24:14", "addr": "0x8013b7ac", "name": "func_8013B7AC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 18, "where_stuck": "residual: 18 mismatch", "best_draft": ".run/backlog_drafts/func_8013B7AC.c", "binary": "ov_SC03_107", "source": "worker", "residual": [[0, "000410c0 sll\tv0,a0,0x3", "27bdfff8 addiu $sp, $sp, -0x8"], [1, "00441023 subu\tv0,v0,a0", "afbe0000 sw $fp, 0x0($sp)"], [2, "00021080 sll\tv0,v0,0x2", "03a0f021 addu $fp, $sp, $zero"], [3, "3c010000 lui\tat,0x0", "afc40008 sw $a0, 0x8($fp)"], [4, "00220821 addu\tat,at,v0", "8fc20008 lw $v0, 0x8($fp)"], [5, "ac200000 sw\tzero,0(at)", "00000000 nop"], [6, "03e00008 jr\tra", "00402021 addu $a0, $v0, $zero"], [7, "00000000 nop", "000418c0 sll $v1, $a0, 3"], [8, "--", "00621823 subu $v1, $v1, $v0"], [9, "--", "00031080 sll $v0, $v1, 2"], [10, "--", "3c01801a lui $at, %hi(D_8019BC18)"], [11, "--", "00220821 addu $at, $at, $v0"], [12, "--", "ac20bc18 sw $zero, %lo(D_8019BC18)($at)"], [13, "--", "03c0e821 addu $sp, $fp, $zero"], [14, "--", "8fbe0000 lw $fp, 0x0($sp)"], [15, "--", "27bd0008 addiu $sp, $sp, 0x8"], [16, "--", "03e00008 jr $ra"], [17, "--", "00000000 nop"]], "passes_tried": null} @@ -1005,3 +994,4 @@ {"ts": "2026-08-16 20:03:56", "addr": "0x80180fe0", "name": "func_80180FE0", "reach": null, "klass": null, "nins": null, "status": "failed", "closeness": null, "where_stuck": "won't compile standalone (loose-typing / missing decl)", "best_draft": ".run/backlog_drafts/func_80180FE0.c", "binary": "ov_SC06_029", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-08-16 20:03:56", "addr": "0x80181170", "name": "func_80181170", "reach": null, "klass": null, "nins": null, "status": "failed", "closeness": null, "where_stuck": "won't compile standalone (loose-typing / missing decl)", "best_draft": ".run/backlog_drafts/func_80181170.c", "binary": "ov_SC06_029", "source": "worker", "residual": null, "passes_tried": null} {"ts": "2026-08-16 20:15:43", "addr": "0x801846cc", "name": "func_801846CC", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 0, "where_stuck": "match_one MATCH but the whole-binary gate rejected \u2014 CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual.", "best_draft": ".run/backlog_drafts/func_801846CC.c", "binary": "ov_SC02_005", "source": "worker", "residual": null, "passes_tried": null} +{"ts": "2026-08-17 20:53:21", "addr": "0x8017d72c", "name": "func_8017D72C", "reach": null, "klass": null, "nins": null, "status": "near", "closeness": 0, "where_stuck": "match_one MATCH but the whole-binary gate rejected \u2014 CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual.", "best_draft": ".run/backlog_drafts/func_8017D72C.c", "binary": "ov_SC01_080", "source": "worker", "residual": null, "passes_tried": null} diff --git a/docs/wave-metrics.md b/docs/wave-metrics.md index 013f07bc4..859a316eb 100644 --- a/docs/wave-metrics.md +++ b/docs/wave-metrics.md @@ -232,3 +232,32 @@ number is the one to act on: the knowledge base knew, and the agents did not fin mechanical cause and its fix — the card's `exemplar`/`sibs` pointers are drawn from the atlas's OPEN set by construction (0/34 banked, and 0% at any maturity), while the atlas's own MATCHED-pool twin (`seed.ref`, 4/4 banked on a control draw) was being discarded by the card builder. + +## Waves U and V (P31 S54) — the Reconcile phase holds, and the card's pointers get fixed + +| | wave T | wave U | wave V | +|---|--:|--:|--:| +| cards | 71 | 73 | 70 | +| drafted instructions | 6,557 | 6,567 | 6,503 | +| gate groups | **5** | **7** | **9** | +| standalone MATCH | 70 (99%) | **73 (100%)** | 69 (99%) | +| banked at the gate | **70 of 70** | **73 of 73** | **68 of 69** | +| agents / tokens / wall | 87 / 8.71M / 70 min | 86 / **7.42M** / **45 min** | 85 / 8.88M / 71 min | +| mechanical siblings banked | 49 | 34 | 25 | +| index_gaps -> confirmed / rejected / already-covered | 71 -> 9 / 5 / 61 | 64 -> 14 / 5 / 44 | 67 -> 14 / 9 / 76 | + +**Three data points, one steady result and one non-trend.** The steady result is BANKING: the +Reconcile phase has now delivered 70/70, 73/73 and 68/69 against wave R's 18-of-45 before it existed. +The non-trend is the 100%: wave U's perfect draft rate did not repeat, and 99% -> 100% -> 99% is +noise on 70-card samples. **Do not report the 100% as a new floor.** + +**Wave U's real signal is the COST, not the rate.** Same models, same gate, same laws — but the cards +carried `seed_ref`, the atlas's *banked* twin (§193-A), for the first time. 15% fewer tokens and 64% +of the wall-clock for one more card. Several agents filed their class as "none (direct twin +transcription)". Reading a banked body beats deriving from the `.s`, and the atlas had been computing +that pointer all along while the card builder discarded it. + +**THE NUMBER TO WATCH IS GATE GROUPS: 5 -> 7 -> 9 for the same ~6,500 instructions.** That is the +fleet-wide 60-200 mass band thinning under `--rank total`. Each group is a whole-binary rebuild, so +the gate cost per banked instruction is rising even while the bank rate holds. At ~12 groups, re-open +the band question against the velocity ledger rather than drawing another wave on reflex. diff --git a/phase-ends/CURRENT_PHASE.md b/phase-ends/CURRENT_PHASE.md index 143d49103..a5e75265f 100644 --- a/phase-ends/CURRENT_PHASE.md +++ b/phase-ends/CURRENT_PHASE.md @@ -229,7 +229,100 @@ R22 clean-fleet **213/213** after every banked batch · tools-health green · 0 byte-neutral only if every existing USE SITE still compiles unchanged — and prefer editing the draft, which verifies in seconds, over the TU, which costs a rebuild and risks the whole file. -## 🛑 SESSION CHECKPOINT — S53 FINAL (2026-08-16/17). Phase 31 CONTINUES. NOTHING IN FLIGHT. +## 🛑 SESSION CHECKPOINT — S54 FINAL (2026-08-17). Phase 31 CONTINUES. NOTHING IN FLIGHT. + +**HEAD `commit:2509` · tree clean except Ghidra `db.*.gbf` restart-noise (R23: do NOT stage) · +R22 `make check-all` = 213 passed / 0 failed of 213 from a CLEAN tree (run 3x this session, after +each wave) · EXE `143dbb89` · 0 NON_MATCHING.** No process running, no cron armed, no workflow in +flight. Drew pushes. + +### Banked this session: 344 functions (235 gated heads + 108 mechanical siblings + 1 main) +| lane | banked | notes | +|---|--:|---| +| wave T — mass band, 5 groups | 70 of 70 | **zero drops** — first wave ever to bank every byte-verified draft | +| wave U — mass band, 7 groups | 73 of 73 | **100% drafted AND 100% banked**; 15% fewer tokens, 64% of the wall-clock | +| wave V — mass band, 9 groups | 68 of 69 | 8 of 9 groups clean | +| mechanical siblings (`family_sweep --hseq`) | 49 + 34 + 25 = **108** | ~0 tokens; 9 failed of 112 attempts | +| §180 leftover sweep | 24 | byte-perfect drafts already on disk from waves M/O/P/R/S | + +**Fleet 95.9% instr-weighted · 91.4% distinct-code · 97.02% fn-count · MAIN 20.5%.** +(Session start: 95.6 / 90.8 / 96.92.) + +### THE FIVE RESULTS THAT OUTLIVE THE COUNT +1. **RECONCILIATION BELONGS INSIDE THE WAVE.** The only structural change from wave S was a + **Reconcile phase**: one agent per gate group runs `reconcile_slate --apply` -> the §183 playbook + -> `pregate_check` over its OWN slate, re-verifying every edit with match_one, BEFORE the first + rebuild. Wave R banked 18 of 45 on its first slate and needed a recovery lane afterwards (§181: + 26 of 27 rejections were byte-perfect drafts). Waves T/U/V banked **70/70, 73/73, 68/69**. This is + the single highest-leverage change of the session and it costs one agent per gate group. +2. **§192 — THE PRE-GATE LADDER WAS MAIN-ONLY AND SAID "clean" ABOUT IT.** `pregate_check` on an + overlay slate printed `checking 0 substituted file(s) ... clean`. Four fixes, each controlled: + per-binary `_stubs_for()`; `sym_of` no longer returns the keyword `void` for + `extern void (*D_x[])(...)` (**NC: 5,526,100 declarations, 189,301 changed verdicts, 0 + regressions**); C89's unspecified-parameter rule as `gate_main.sig_conflict`; the overlay DRIVER's + typedef transform modelled. Plus §192b: the tool REFUSES when it substituted 0 files. +3. **§193-A -> §194-E — THE CARD WAS HANDING AGENTS A DEAD POINTER.** `exemplar`/`sibs` come from the + atlas's OPEN set by construction, so they are stubs 0/34 measured — and on ~half the cards + `exemplar` IS the card's own target. Meanwhile `atlas.py:505-536` already computed a MATCHED-pool + twin whose identity the card builder discarded. Cards now carry **`seed_ref`** (banked 51/51 on + wave U's draw, 37/37 on wave V's) and **`tu_ref`** — banked functions in the card's OWN .c ranked + by symbols shared with the target's `.s` relocations (48/70 cards on wave V; 62% of wave-T targets + have such a neighbour vs 19% for the cross-overlay literal grep). +4. **§195-D — AN INTERNAL `j` WAS INVISIBLE TO THE FAST ORACLE.** `masked_diff.mask_for` + short-circuited on the OPCODE ahead of the reloc dispatch, so every `j .L…` was dropped from the + comparison. For a loop/switch arm that is the difference between `break` (execute the shared + tail's calls) and `return` (skip them): byte-proven on `ov_SC03_118:func_801825EC`, where the two + objects differ in ONE word (`0800003e` vs `08000041`) and both reported MATCH. It blinded + match_one, the permuter's scorer, `family_cousins.tok` and the atlas tiers at once. Fixed (mask + only when `reloc_kind == "26"`); R39 control 35/35 banked drafts still MATCH. **The similarity + TOKENIZERS are deliberately left blind** — everything they feed is byte-gated, and the raw field + is position-dependent so including it naively would break sibling grouping. +5. **THE HARVEST IS THE PRODUCT, AND ITS BIGGEST NUMBER IS "ALREADY COVERED".** Three harvests: + **9 CONFIRMED / 5 rejected / 61 already-covered** (T), **14 / 5 / 44** (U), **14 / 9 / 76** (V) — + 37 verified laws banked as §193-A..I, §194-A..N, §195-A..N. Two of §194 correct §193 entries + written the SAME DAY (both cross-bannered). The already-covered majority is a RETRIEVAL problem, + which is what `tu_ref` and the prompt's STEP 0b cookbook-search exist to fix. + +### Tooling shipped (all negative-controlled) +`build_wave_atlas`: **`--one-per-gid`** (collapse same-skeleton siblings to one card, defer the rest +to the mechanical remap; R32 accounting asserted) · **`--rank total`** (rank gate groups by DELIVERED +mass = card + deferred siblings) · **`seed_ref`/`matched_n`** (§193-A) · **`tu_ref`** + null +self-exemplars (§194-E; operand-only `.s` symbol extraction — a naive uppercase regex read the +comment column's hex words as symbols) · `gate_main`: `_stubs_for`, `sym_of`, `norm_sig`/`sig_conflict`, +`substitute(transform=)`, common.h-derived scalar aliases · `pregate_check`: driver-accurate overlay +transform, builtin conflicts -> WARN (cc1-probed), block-scope typedefs skipped, `[DROP]` reporting, +refuse-on-zero-files · `masked_diff.mask_for`: internal `j` compared. + +### NEXT SESSION — in order +1. **`make atlas` FIRST**, then wave W: `build_wave_atlas --target-ins 6500 --min-ins 60 --max-ins 200 + --rank total --one-per-gid --max-bins 10`. **Watch the gate-group count**: waves T/U/V needed + 5 -> 7 -> 9 groups for the same ~6,500 instructions. When it reaches ~12, the fleet-wide 60-200 + mass band is thinning and the honest move is to re-open the band question with the velocity + ledger, not to keep drawing. +2. **Close the wave the same way every time** (memory `wave-harvest-is-a-pipeline-step`): + gate -> `family_sweep --hseq --only ` (after `make sig-overlays` + + `family_hseq.py`) -> R22 clean-fleet -> **harvest the index_gaps**. Snapshot each target's `.s` + BEFORE gating (`.run/wave*_asm_snapshot/`) — banking prunes it and the verifiers need both sides. +3. **The typing/naming debt is now the largest non-matching liability** (see the S54 note below): + 9.5 casts per 100 lines, 749 distinct per-function invented typedefs vs 220 shared, parameters + typed `s32` that are really pointers. Not a matching problem; it is THE readability problem, and + every retype is byte-checkable by the same gate (§185: grep and COUNT the use sites first). +4. **Carry-overs**: `func_80184F18` (wave V, closeness 9, ~12 permutations pinned — permuter fuel); + `func_80031A98` (the `D_800C5328` wall, unchanged); the 6 §188 SDK objects -> `psyq_integrate`; + the `GsSortBg`/`GsSortFastBg` fragment merges; `gfx2D_BG0_OBJ_4D8` (§181 mirror class). + +### Watch-fors +* `gate_lane` needs `binary` + `name` in its slate records; the leftover slates from + `scan_leftovers.py` carry `fn` + `draft` only — add `binary` before gating. +* A wave script's LAWS block is a JS template literal: **backticks inside the law text terminate it**. + Wave U's first launch died on exactly that; write law text with single quotes. +* `pregate_check` models the DRIVER: main goes through gate_main's hoist/strip, overlays through + harvest_verify's `strip_provided_typedefs`. If you add a third banking driver, teach it the tool. +* A TU typedef defined BELOW the stubs that need it breaks the overlay path (the draft's copy is + stripped, the survivor sits below). Hoisting is byte-neutral — null-control-build it first, as + `ov_SC02_005` was. + +## 🛑 (superseded by S54) SESSION CHECKPOINT — S53 FINAL (2026-08-16/17). Phase 31 CONTINUES. NOTHING IN FLIGHT. **HEAD `commit:2453`+ · tree clean except Ghidra `db.*.gbf` restart-noise (R23: do NOT stage) · R22 `make check-all` = 213 passed / 0 failed of 213 from a clean tree · EXE `143dbb89` · 0 NON_MATCHING.**