Skip to content

Commit 52bce07

Browse files
eastmadcclaude
andcommitted
chore(backlog): pin commit SHA for p3x:substring_in_head row
Closure SHA fixup — the prior commit bundled the ADAPTIVE_BACKLOG.md sync with the source change per Rule #21, so the row referenced `<sha>` placeholder. This commit substitutes the actual SHA dcebd1c. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent dcebd1c commit 52bce07

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

.planning/ADAPTIVE_BACKLOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ chain + Rule #51 worked-example evidence.
131131

132132
| ID | Severity | Source | Item | Shipped in | Notes |
133133
|----|---------|--------|------|-----------|-------|
134-
| `p3x:substring_in_head` | HIGH | P3.2 postmortem Rec #2 → 2026-05-20 | `substring_in_head` signal kind — closes the windows_installer_iso + iso_9660 bridge case | `2026-05-20:<sha>` (1 commit) | Rule #25 Shape-1 single-slice: new `SubstringInHeadConstraint` Pydantic sub-model (5 fields, 16-needle cap, 64-byte-per-needle cap) + `SubstringInHeadCombine` Literal + `DetectionSignalKind` += `substring_in_head` + `_eval_substring_in_head` evaluator + `_SIGNAL_COST_CLASS` entry (cost 2; same I/O class as magic_bytes) + `SIGNAL_EVALUATORS` dispatch entry + `windows_installer_iso.yaml` adopts new signal (bootmgr / sources/boot.wim / sources\\boot.wim needles; case_sensitive=false; combine=any) + `format_detection.py` drops both `iso_9660` + `windows_installer_iso` from `_CATALOG_NEEDS_DISAMBIGUATION` + deletes the bootmgr substring upgrade block in `_legacy_bridge_detect`. Corpus fixture `windows_installer_iso.head` regenerated with bootmgr at offset 0x100 + CD001 at 0x8001; parity test `_HEAD_BYTES_INSUFFICIENT` drops `windows_installer_iso`. New test file `test_substring_in_head_evaluator.py` (34 tests: positive/negative eval + case-sensitivity + combine=any/all + min_count + search_offset/length + schema validation + catalog round-trip + Rule #46 paired META-CANARY for SIGNAL_EVALUATORS exhaustive + _SIGNAL_COST_CLASS exhaustive + DISPATCH_EVALUATORS exhaustive + anti-hardcode AST-walk + 4 new paired gate-canaries that the pre-edit codebase was missing per Rule #46 §gate-canary-requirement). 433/434 pytest sweep green (1 skipped is pre-existing); Rule #11 import smoke + Rule #35b live canary via running backend confirm: bootmgr-bearing ISO → windows_installer_iso, bare CD001 ISO → iso_9660. |
134+
| `p3x:substring_in_head` | HIGH | P3.2 postmortem Rec #2 → 2026-05-20 | `substring_in_head` signal kind — closes the windows_installer_iso + iso_9660 bridge case | `2026-05-20:dcebd1c` (1 commit) | Rule #25 Shape-1 single-slice: new `SubstringInHeadConstraint` Pydantic sub-model (5 fields, 16-needle cap, 64-byte-per-needle cap) + `SubstringInHeadCombine` Literal + `DetectionSignalKind` += `substring_in_head` + `_eval_substring_in_head` evaluator + `_SIGNAL_COST_CLASS` entry (cost 2; same I/O class as magic_bytes) + `SIGNAL_EVALUATORS` dispatch entry + `windows_installer_iso.yaml` adopts new signal (bootmgr / sources/boot.wim / sources\\boot.wim needles; case_sensitive=false; combine=any) + `format_detection.py` drops both `iso_9660` + `windows_installer_iso` from `_CATALOG_NEEDS_DISAMBIGUATION` + deletes the bootmgr substring upgrade block in `_legacy_bridge_detect`. Corpus fixture `windows_installer_iso.head` regenerated with bootmgr at offset 0x100 + CD001 at 0x8001; parity test `_HEAD_BYTES_INSUFFICIENT` drops `windows_installer_iso`. New test file `test_substring_in_head_evaluator.py` (34 tests: positive/negative eval + case-sensitivity + combine=any/all + min_count + search_offset/length + schema validation + catalog round-trip + Rule #46 paired META-CANARY for SIGNAL_EVALUATORS exhaustive + _SIGNAL_COST_CLASS exhaustive + DISPATCH_EVALUATORS exhaustive + anti-hardcode AST-walk + 4 new paired gate-canaries that the pre-edit codebase was missing per Rule #46 §gate-canary-requirement). 433/434 pytest sweep green (1 skipped is pre-existing); Rule #11 import smoke + Rule #35b live canary via running backend confirm: bootmgr-bearing ISO → windows_installer_iso, bare CD001 ISO → iso_9660. |
135135
| `file-format-yaml-registry-p32` | HIGH | continuation-of-P3.1 → 2026-05-19 evening | Phase 3.2: closed-grammar sort_tier + precedence-flip + TextFormatConstraint + RTOS plugin HYBRID + A6/A7/A8/A9 gates + parity-JSON-snapshot + Rule #52 Rule-of-Two promotion + P3.3.a legacy shim deletion | `2026-05-19: 34d0689..4c028fc` (P3.2.a..f + P3.3.a, 7 commits) + `229578a + 0038698` (postmortem + /citadel:learn) | 15 commits closing all P3.1 deferrals end-to-end. CLAUDE.md Rule #52 promoted Rule-of-One → Rule-of-Two DURABLE BEYOND DEBATE (bare-metal MCU/DSP + file-format YAML registry). 60+ paired META-CANARIES; 3 NEW §SC5 analogs caught by W2-β cross-feature critique (dispatch-chain authority laundering → A6; TextFormatConstraint high-collision → A8; RTOS plugin family namespace collision → A7). 383/383 in-scope pytest sweep green. Patterns extracted to `.planning/knowledge/file-format-yaml-registry-p32-2026-05-19-{patterns,antipatterns}.md`. Postmortem at `.planning/postmortems/postmortem-file-format-yaml-registry-p32-2026-05-19.md`. Methodology: Wave-1 + Wave-2 cross-feature critique separation promoted to feedback memory `feedback_wave2_cross_feature_methodology.md`. |
136136
| `evening:RvwA-A5 + RvwB-B6` | HIGH | evening 2026-05-18 → 2026-05-19 | Suppress duplicate-`advisory_id` WARN under intentional-convergence opt-in (`shared_advisory_id: true` YAML key) | `2026-05-19:23974ea` | 3 new tests in `test_hardware_firmware_cve_matcher.py` (both-opt-in suppressed; asymmetric opt-in WARNs; pre-flag backward-compat). Both FragAttacks YAML entries (broadcom + qualcomm wcn3xxx) now declare the flag. |
137137
| `evening:RvwC-C10` | HIGH | evening 2026-05-18 → 2026-05-19 | Extend `list_extension_points` MCP tool with F-FORENSIC-10 rejection counts per layer | `2026-05-19:4ecaa5b` | Module-level `_LAST_LOAD_REJECTIONS` dict in `cve_matcher.py` tracking 4 categories (advisory_missing_advisory_id / advisory_id_too_long / advisory_id_duplicate_warn / f_forensic_10_no_narrowing); accessor `get_known_firmware_load_rejections()`; surfaced in MCP tool payload under `load_rejections.curated_known_firmware`. |

0 commit comments

Comments
 (0)