@@ -29,6 +29,10 @@ not inherited merely because the superseded branch entered history.
2929 cadence is suspect after a 237-minute stale observation, roughly eight known
3030 test failures remain, and roughly 4,169 tests have never been measured in a
3131 completed full-suite run.
32+ - No CI has run since 01:24 UTC on 2026-07-27 because PR #421 has been
33+ conflicting since 05:13 UTC. Roughly 60 commits, including every repair
34+ recorded below, are locally verified only. See the verification-status section
35+ below before treating any of them as proven.
3236- Plan 32 is PR17-only and SCOPE-OUT for PR8–PR14 audits.
3337- Plan 34 is split: the published read-only rename preview is implemented and
3438 reachable; apply-grade rename is not certified by that preview, and the
@@ -237,6 +241,131 @@ No numbered plan claims `.tracedecay/domain-symbols.toml` as a delivered
237241capability, so the no-op ` DOMAIN-EXTRACTORS.md ` proposal requires no plan-side
238242correction.
239243
244+ ## Verification status of the 2026-07-27 night commits
245+
246+ Everything recorded in the three sections below landed on
247+ ` codex/tracedecay-total-redesign-plan ` during the night of 2026-07-27. ** None of
248+ the 24 commits has been validated by CI.** PR #421 has been in a conflicting
249+ state since 05:13 UTC, and ` pull_request ` workflows cannot build a merge ref for
250+ a conflicting pull request, so no CI run has started since 01:24 UTC — a gap now
251+ covering roughly 60 commits. ` gh pr view 421 ` still reports
252+ ` mergeable: CONFLICTING ` .
253+
254+ Local verification during that window was scoped and contended. Several lanes
255+ committed on ` cargo check ` plus a filtered test run rather than a completed
256+ suite. Where a fix below is described as fixed, that means the repair landed and
257+ its author observed a scoped local run — not that the repository's aggregate
258+ gates agree. No claim here upgrades the delivery band, which remains not green
259+ per the authority section above.
260+
261+ ## Verification-coverage corrections (2026-07-27)
262+
263+ Commit ` 9e3ca9fd2 ` (2026-07-24, 617 files changed) deleted 124 first-party
264+ tests. 75 of those covered behavior that still ships. Three of them intersect
265+ claims this ledger or its numbered plans record as ** delivered** .
266+
267+ These are ** verification-coverage corrections, not retractions** . Nothing here
268+ withdraws a delivered claim, and no audit may cite this section as evidence that
269+ the underlying behavior is broken or must be reimplemented. The behavior may
270+ well be correct. What is missing is the assertion that it is. A later audit's
271+ only licensed action is to restore or replace the coverage — never to reopen the
272+ capability as unbuilt.
273+
274+ - ** Plan 16 — worktree/store identity.** The corrections list states that linked
275+ worktrees "collapse to primary-checkout project/store identity while retaining
276+ exact worktree snapshot authority". The mechanism enforcing the immutable half
277+ of that is the ` store_instances_project_immutable_v1 ` trigger, and its test
278+ ` store_project_identity_cannot_be_reparented ` was among the deletions. Between
279+ 2026-07-24 and 2026-07-27 nothing asserted that the trigger fires. ` b8ef48ec5 `
280+ restored it, together with the cross-table identity-constraint and
281+ sanitization-receipt-immutability tests. Three restored tests against 67
282+ declared guards is a partial restoration, not closure.
283+ - ** Plan 38 — ` source_cursor_advances ` reclamation.** The corrections list
284+ states that superseded advances are reclaimed "while preserving the current-
285+ frontier receipt and restoring the immutable delete trigger before commit".
286+ The adjacent recovery logic in
287+ ` src/global_db/schema_contract/invariants/repair.rs ` — 391 lines that run on
288+ every reopen and can rewind cursors and requeue projection suffixes — lost all
289+ nine of its tests in the same commit and currently has zero. The retention
290+ transaction's own coverage is a separate question from this one; what is
291+ unasserted is the repair path that can move the same cursors outside it.
292+ - ** Plans 18 and 23 — end-to-end sanitization.** Plan 18 lists structural
293+ sanitization as delivered and Plan 23 requires every imported row to carry a
294+ verified sanitization receipt. ` tests/session_suite/temporal_privacy.rs ` (1,081
295+ lines) was deleted outright, taking the three end-to-end tests that a redacted
296+ value cannot resurface through temporal summary, context, reopen, or rebuild
297+ replay. Unit sanitization coverage in ` src/privacy/tests.rs ` survives, so the
298+ detector and sanitizer are still asserted; the end-to-end non-resurfacing
299+ property is not. The fixtures those tests consumed are still on disk, so
300+ restoration does not require regenerating inputs.
301+
302+ ### Structural residue of the same deletion
303+
304+ Three files carrying schema-enforcement and registry authority were left with no
305+ direct test coverage at all, and two of them still are:
306+
307+ - ` src/global_db/schema_contract/invariants/triggers.rs ` — 67 ` RAISE(ABORT) `
308+ guards across roughly 1,800 lines of trigger definitions, of which three are
309+ asserted by the module ` b8ef48ec5 ` restored and 64 are not;
310+ - ` src/global_db/schema_contract/invariants/repair.rs ` — 391 lines, zero tests;
311+ - ` src/global_db/project_registry.rs ` — 1,691 lines, zero tests.
312+
313+ The cause was mechanical rather than a judgement that the coverage was
314+ worthless: a ` GlobalDb ` → ` RegisteredGlobalDb ` refactor whose compile breaks were
315+ cleared by deleting callers. The evidence is that 20 tests in the same file were
316+ successfully re-pointed at the new type while 63 were deleted. A later audit
317+ should treat this as a restoration backlog against known-good prior assertions,
318+ not as new test design.
319+
320+ ## Gates that attest to what they never checked
321+
322+ Six independent lanes each found the same failure family on 2026-07-27: a gate
323+ that reports success without having exercised the thing it names. Recording the
324+ family so future gate review looks for it directly.
325+
326+ 1 . ` windows-pr8-temporal-durable ` filtered on
327+ ` binary(=session_suite) & test(/^lcm_schema::/) ` , which matched zero tests
328+ while the job reported green. 30 LCM schema tests had never run under the
329+ Windows DELETE+FULL pragmas the job exists to cover. Fixed in ` 7a92b147a ` .
330+ 2 . ` platform_lifecycle.passed ` receipts were written unconditionally on two
331+ operating systems, under a comment claiming they proved a test had run. Fixed
332+ in ` 2758e5b97 ` .
333+ 3 . ` pr13_lite_grammar_contract ` was satisfiable by all-features junit evidence
334+ without the lite build ever running. Fixed in ` 6b0417935 ` .
335+ 4 . MCP fixtures wired test doubles into test doubles, and ` production_joins.rs `
336+ has no production implementor — the seam is proven only against itself.
337+ 5 . ` pr13_advisory_proximity_overlap ` filtered on a test deleted a month earlier,
338+ which reddened the ` test ` job at HEAD. Fixed in ` 3ec8f086b ` .
339+ 6 . ` tests/pr12_production_reachability.rs ` asserts that a symbol * name appears
340+ in source text* rather than that the path executes. That is why symbol-graph
341+ pagination was dead from the day it was written without any gate noticing.
342+
343+ The asymmetry that hides this family: ** libtest exits 0 when a name filter
344+ matches nothing, while nextest can be made to fail on an empty filter.** A
345+ dangling ` cargo test --exact ` is therefore silently vacuous forever, and stays
346+ green through the deletion of the very test it names. Treat a name-filtered gate
347+ as unverified until something proves the filter selects a nonempty set.
348+
349+ ## Product defects found and fixed 2026-07-27
350+
351+ Each landed with scoped local verification only; see the CI-status section
352+ above.
353+
354+ - Symbol-graph pagination failed any read exceeding one page, from the day it
355+ was written — ` e864c9bf1 ` binds the cursors to a derived digest.
356+ - macOS and Windows could not mount a store at all, because the
357+ filesystem-locality classifier was Linux-only — ` 2edeee16c ` , cross-checked on
358+ four target triples.
359+ - ` test_map ` reported well-tested functions as untested when a graph read
360+ failed, presenting a failure as an empty success — ` e56c1cc6c ` .
361+ - SSE renders were never coalesced, producing roughly 1,000 renders/s against a
362+ stated ceiling of ten, and one queue overflow fired eleven invalidations —
363+ ` e402d6cfe ` .
364+ - Route grant identity was not request-correlated, and ` storage_status ` wrote a
365+ history row on every read — ` 5d2a6d4b9 ` .
366+ - LSP refused to project context for any freshly bootstrapped project —
367+ ` f3135e9f7 ` projects degraded feedback instead.
368+
240369## Refuted defect claims — do not reintroduce
241370
242371- Plan 35's current capability advertisement is honest; it is not a missing
0 commit comments