## W2 verify-representation — targeted unit gate receipt

Filed by hertz, gated by doyle, 2026-09-12. Combined-gate END accepted; window released.

**Pin gated:** `53d625cd` (test cells) over `10d18b7f` (todlando's FOLD-4 representation repair). Both pins preserved, warm target preserved.

**Evidence manifest:** `.spt/preserved/hertz-304-w2-traceability/MANIFEST-v5.sha256` — 50 hashed entries (drivers, raw captures, run logs, list/sentinel enumerations, plans, adjudication).

### What was measured

**Final combined run**, at `53d625cd`, tracked tree clean:

| step | command shape | result |
|---|---|---|
| enumerate | `nextest list -E 'test(/^bootstrap_firewall::/)'` | **31 names** |
| filter control | `nextest list -E 'test(/^bootstrap_firewall::hz_absent_sentinel_/)'` | **0** — the filter can express absence |
| run | same filter, `--build-jobs 2 --test-threads 2 --success-output immediate` | **31 tests run: 31 passed**, 982 skipped |

List count equals run count. Coverage preservation is **measured, not audited**: the five sibling cells that own the claims dropped from the block are in this selection and passed.

**Regression-sensitivity battery (5b)** — the product breaks, the tests stay byte-identical: five production mutations, one axis each, across eight invocations. `m1_program_raw`, `m2_profile_raw`, `m3_remote_raw`, `m4_remote_ignored` each drove their named cells red at their own assertions (exit 100, summary 1 run / 0 passed / 1 failed, failing set exactly the selected cell, not a compile failure). Between every mutation the test region was byte-identical to the pre-mutation bytes and EOL-equivalent to the pin, with restoration verified by exact bytes, pinned equivalence, and a clean tracked tree.

**Traceability:** `traceable-reqs check` re-run standalone, **exit 0**. Checker version `0.4.1` verified equal to the CI pin (`WANT=0.4.1` in `.github/workflows/ci.yml`).

### Evidence limitations — recorded, not counted as covered

1. **`m5_enforcement_disabled` is adjudicated, not clean.** The cell went red for the right reason but at a different assertion than the registry named: with the enforcement arm disabled, `decide()` returns `Ok` and the `expect_err` at `windows.rs:1609` fires before the assertion the registry expected. doyle read the preserved raw and accepted it as regression-sensitivity evidence for **rejecting unenforced rules**. The original mismatch is preserved unrepaired; m5 was not re-run. Detail: `5b-m5-adjudication.md`.
2. **Diagnostic-wording sensitivity was NOT exercised.** No registered mutation makes `decide()` still refuse while dropping "enforcement" from the message, so the cell's second claim — that the refusal *names* the enforcement arm — has no sensitivity evidence. A sixth mutation was proposed and explicitly not authorized. **Not covered.**
3. **Six 5a controls remain peer-reported only.** `h1`, `h2`, `e1`, `e2`, `e3`, `e4` keep their filtered-log limitation; their raw was never preserved and re-runs were not authorized. `arm1_adjacency` is accepted off raw; `query_onepass` is measured. Not upgraded.
4. **Checker caveat, carried forward verbatim:** `3 tag-carrying file(s) not placement-judged (no grammar for the language, or the parse recovered from errors)`.
5. **Clippy's exit is inferred, not captured.** See deviation 2.

### Scope deviations — both hertz's, both reported

1. **Superseded 26-test listing.** The first enumeration used the older filter `bootstrap_firewall::windows::tests::` from `validation-commands.md` and returned **26** against a recorded expectation of 31. Wrong command, not a missing population: the 26 are a strict subset of the 31, and the five extra are exactly the parent-module `bootstrap_firewall::tests::` cells (opt-out ×2, invocation-outcome, residual-cleanup, relative-binder/port-zero). Both listings preserved so the difference is re-derivable.
2. **Clippy exceeded the authorized scope.** `cargo clippy --workspace --all-targets --jobs 2` was run where a scoped `spt-daemon` library check was authorized. It was already in flight when the scope was corrected; per ruling it was allowed to finish inside capacity limits, no second clippy was launched, and nothing was fixed. Result: **0 errors, 9 warnings**, all one lint (`needless_borrow`) in `crates/spt-daemon/src/bootstrap_firewall/windows.rs` inside the test module. Blamed, not assumed: all nine come from `61d3459f` (2026-09-11), which predates both pins — **pre-existing, not introduced by this lane**. Clippy's own exit is not directly captured; it is inferred from the `&&` chain having reached the checker. doyle ruled **no rerun solely to obtain a separately captured exit**.

### What this receipt does not claim

This closes the **targeted unit gate only**. It is **not** field acceptance, **not** twohost acceptance, and **not** landing approval. No NetSecurity call, elevation, or firewall write occurred at any point — field execution remained held throughout. The twohost plan (v4/v5 + `census.ps1`) stays queued as a separate gate that has never run. A7's populated-timing question remains unanswered.

Final state: `53d625cd`, tracked tree clean, pool `304w2-combined-gate` released, 122.02 GiB free (floor 96, stop 32 — never approached).
