Files
BFM-decomp/docs/backlog.md
T
Drew T 02e1b3a7e6 feat(waves): every pack now carries that function's own PAST-ATTEMPT history
tools/journal_notes.py mines the agent journals per (binary, fn) and appends a
PAST ATTEMPTS section to the pack; claude_wave_packs.py calls it automatically, so
it is the default rather than a step to remember. Idempotent, and R48-safe (a note
stamped with a different binary is never served — §238 homonyms).

Measured before adopting (S71 wave 1, 50 one-agent workflows over the 210-function
real frontier where every target had already refused an earlier wave):
  * 38/39 MATCH at closeness 0 (97.4%) vs S70's 124/131 (94.7%) on an EASIER pool
  * 29/39 agents cite a prior attempt as what they used
  * 4/39 banked by RECOVERING a body that already matched, from a path a note named
  * 11/39 matched on the first compile

The two costs it removes are re-testing a measured-inert lever (§406 lists twelve,
§407 fifteen, §410 four — each paid for by an agent and never seen again) and
re-deriving a body that already exists on disk.

Also: jr_isolate_all places file-local `static` definitions with the region that uses
them instead of refusing the whole file. A `static inline` helper (§82.1) has no
address by construction, which is not a defect; the R32 guard was refusing these and
blocking the isolate on 4 of the 6 overlays whose CARVE-REFUSED functions it is the
named remedy for. Two regions using one static is still a hard refusal (duplicating a
used static is a byte change, R43).

docs: cookbook §411, wave-playbook step 3b, accelerators entry.
2026-09-02 01:11:52 -06:00

78 lines
15 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Backlog — automation near-misses for hand-finishing
> Generated by `tools/backlog.py render` from `.run/backlog.jsonl`. These are functions the Phase-21 automation got **close** on but did NOT byte-match. The whole-binary byte-gate is the sole arbiter (G3/P9): **byte-matches bank and are NOT listed here** — only genuine near-misses/blockers are. Ranked by hand-session priority: **reach** (×N propagation leverage) → **closeness** (match_one mismatch count, lower = closer) → **size**. Each row's `best_draft` is the closest C the machine reached — resume from there.
**Open near-misses:** 69 · by status {'near': 47, 'failed': 22} · by class {'WAVE': 1, None: 68}
| # | addr | reach | class | nins | status | closeness | where it stuck | best draft |
|--:|------|------:|-------|-----:|--------|----------:|----------------|------------|
| 1 | func_8017FAAC | 1 | WAVE | 154 | near | 0 | match_one MATCH but gate rejected (declaration/TU plumbing) | `.run/backlog_drafts/func_8017FAAC.c` |
| 2 | func_801803A0 | None | | None | near | 0 | match_one MATCH but gate rejected (declaration/TU plumbing) | `.run/backlog_drafts/func_801803A0.c` |
| 3 | func_8017FFD0 | None | | None | near | 0 | match_one MATCH but gate rejected (declaration/TU plumbing) | `.run/backlog_drafts/func_8017FFD0.c` |
| 4 | func_8017FE88 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017FE88.c` |
| 5 | func_8017EB30 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017EB30.c` |
| 6 | func_8017F2D4 | None | | None | near | 0 | match_one MATCH but gate rejected (declaration/TU plumbing) | `.run/backlog_drafts/func_8017F2D4.c` |
| 7 | func_8017FE0C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017FE0C.c` |
| 8 | func_80181804 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80181804.c` |
| 9 | func_800D00E4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_800D00E4.c` |
| 10 | func_80180E68 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80180E68.c` |
| 11 | func_80181CB8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80181CB8.c` |
| 12 | func_80182DCC | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182DCC.c` |
| 13 | func_8017ECB4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017ECB4.c` |
| 14 | func_8017F8B8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F8B8.c` |
| 15 | func_80188E3C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80188E3C.c` |
| 16 | func_800D0488 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_800D0488.c` |
| 17 | func_8017F6C0 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F6C0.c` |
| 18 | func_8016AE5C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8016AE5C.c` |
| 19 | func_801A11D4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_801A11D4.c` |
| 20 | func_801ADA10 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_801ADA10.c` |
| 21 | func_8002B0B4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm/<ov>/nonmatchings/<TU_stem>/<fn>.s => src/<ov>/<TU_stem>.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8002B0B4.c` |
| 22 | func_80180020 | None | | 231 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=231 target=231 | `.run/backlog_drafts/func_80180020.c` |
| 23 | func_801A4ACC | None | | 237 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=237 target=237 | `.run/backlog_drafts/func_801A4ACC.c` |
| 24 | func_8017D918 | None | | None | near | 4 | residual: 4 mismatch | `.run/backlog_drafts/func_8017D918.c` |
| 25 | func_80185F4C | None | | None | near | 4 | residual: 4 mismatch | `.run/backlog_drafts/func_80185F4C.c` |
| 26 | func_80182CBC | None | | 28 | near | 7 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=28 target=28 | `.run/backlog_drafts/func_80182CBC.c` |
| 27 | func_80181C84 | None | | None | near | 8 | residual: 8 mismatch | `.run/backlog_drafts/func_80181C84.c` |
| 28 | func_80180EC0 | None | | None | near | 9 | residual: 9 mismatch | `.run/backlog_drafts/func_80180EC0.c` |
| 29 | func_80181294 | None | | None | near | 19 | residual: 19 mismatch | `.run/backlog_drafts/func_80181294.c` |
| 30 | func_80183178 | None | | None | near | 21 | residual: 21 mismatch | `.run/backlog_drafts/func_80183178.c` |
| 31 | func_80181344 | None | | None | near | 48 | residual: 48 mismatch | `.run/backlog_drafts/func_80181344.c` |
| 32 | func_800D0C50 | None | | 71 | near | 68 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=46 target=71 | `.run/backlog_drafts/func_800D0C50.c` |
| 33 | func_800D0B1C | None | | 77 | near | 69 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=77 | `.run/backlog_drafts/func_800D0B1C.c` |
| 34 | func_80180610 | None | | 79 | near | 78 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=31 target=79 | `.run/wave_ck/shard182/func_80180610.c` |
| 35 | func_8017EB78 | None | | 10 | near | 94 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=95 target=10 | `.run/wave_df/shard365/func_8017EB78.c` |
| 36 | func_80183098 | None | | 104 | near | 98 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=53 target=104 | `.run/wave_cx/shard97/func_80183098.c` |
| 37 | func_8017F69C | None | | None | near | 107 | residual: 107 mismatch | `.run/backlog_drafts/func_8017F69C.c` |
| 38 | func_8017DB98 | None | | None | near | 115 | residual: 115 mismatch | `.run/backlog_drafts/func_8017DB98.c` |
| 39 | func_80180B3C | None | | 297 | near | 125 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=296 target=297 | `.run/wave_eo/shard478/func_80180B3C.c` |
| 40 | func_801867D0 | None | | 198 | near | 166 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=100 target=198 | `.run/wave_g0d/shard11/func_801867D0.c` |
| 41 | func_800CB00C | None | | 123 | near | 168 | resolver DIFF (real-TU rtu_match, 20260826-053145): mine=174 target=123 | `.run/wave_g0c/shard30/func_800CB00C.c` |
| 42 | func_801806F8 | None | | 241 | near | 235 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=72 target=241 | `.run/wave_g0d/shard20/func_801806F8.c` |
| 43 | func_80180ABC | None | | 257 | near | 250 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=257 | `.run/wave_ci/shard141/func_80180ABC.c` |
| 44 | func_80182184 | None | | 272 | near | 261 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=202 target=272 | `.run/wave_de/shard232/func_80182184.c` |
| 45 | func_8017EC68 | None | | 279 | near | 274 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=341 target=279 | `.run/wave_fa/shard313/func_8017EC68.c` |
| 46 | func_80180B3C | None | | 21 | near | 287 | resolver DIFF (real-TU rtu_match, 20260826-022235): mine=287 target=21 | `.run/wave_eq/shard63/func_80180B3C.c` |
| 47 | func_8016AB6C | None | | 188 | near | 14831 | resolver DIFF (real-TU rtu_match, 20260826-004023): mine=14864 target=188 | `.run/wave_fc/shard132/func_8016AB6C.c` |
| 48 | func_80186A34 | None | | 70 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-235252): i=50 hi/lo draft D_801C92CC vs target 0x801C92BC =func_801C92BC (splat-derived); i=54 hi/lo draft D_801C92BC vs target 0x801C92CC =func_801C92CC (splat-derived) | `.run/wave_dm/shard206/func_80186A34.c` |
| 49 | func_8017FAA8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233727): .run/resolver/work/ov_SC03_013__func_8017FAA8/c0/rtu/func_8017FAA8/t.c:4276: conflicting types for `SV3' | `.run/backlog_drafts/func_8017FAA8.c` |
| 50 | func_8017F9F8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC01_006__func_8017F9F8/c0/rtu/func_8017F9F8/t.c:3099: conflicting types for `D_800A5E88' | `.run/backlog_drafts/func_8017F9F8.c` |
| 51 | func_8017FA74 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_092__func_8017FA74/c0/rtu/func_8017FA74/t.c:5483: conflicting types for `Tbl8_8017FC44' | `.run/backlog_drafts/func_8017FA74.c` |
| 52 | func_800D06E8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/resident__func_800D06E8/c0/rtu/func_800D06E8/t.c:1770: conflicting types for `Struct80078E78' | `.run/wave_ch/shard62/func_800D06E8.c` |
| 53 | func_800D02D0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-080111): .run/resolver/work/resident__func_800D02D0/c0/rtu/func_800D02D0/t.c:1136: conflicting types for `CdFileLoc' | `.run/backlog_drafts/func_800D02D0.c` |
| 54 | func_8018FE20 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018FE20.c` |
| 55 | func_8017FBCC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FBCC.c` |
| 56 | func_801832F8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801832F8.c` |
| 57 | func_8017F018 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017F018.c` |
| 58 | func_801829CC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801829CC.c` |
| 59 | func_80182BD8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80182BD8.c` |
| 60 | func_8018095C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018095C.c` |
| 61 | func_80181720 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181720.c` |
| 62 | func_8017E464 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E464.c` |
| 63 | func_8018DFC4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018DFC4.c` |
| 64 | func_80187A30 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80187A30.c` |
| 65 | func_801801D8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801801D8.c` |
| 66 | func_801898CC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801898CC.c` |
| 67 | func_8005D734 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | |
| 68 | func_8005FA94 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | |
| 69 | func_80062144 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | |