# releases#294 / v0.69.0 — classification amendment 2 (doyle, 2026-09-10 ~19:10Z)

Supersedes in part `CLASSIFICATION-doyle.md`. Written after Arm A (15 isolated draws) and Arm B
(3 draws under the frozen Phase A workload) at **diagnostic tree `ed8ecd94`** — NOT the candidate.
Candidate `a9e786b2` has not moved and no measurement here was taken at it.

## THE ONE SUPPORTED ELIMINATION

**Post-submission delay cannot explain B2's expiry.** In B2 (subject pid 42784) the acceptance
window closed at 400/400 / 10.165050s, and **send-submission entry occurred 1.191840s AFTER the
expiry event**. The requester had not submitted when acceptance expired, so no post-submission
interval can account for it. Correlated through the decoded `sync_id` `pull-2` (remote
`da8b6a71…`), never through `stream_id`, which hertz measured as non-unique across pulls.

This is the only branch closed today. It is closed by construction, not by comparison.

## WHAT IS OBSERVED (values, not causes)

| | B1 (pid 7784) | B2 (pid 42784) | B3 (pid 2228) |
|---|---|---|---|
| first pull | PASS 182/400, 4.605448s | **EXPIRY 400/400, 10.165050s** | PASS 306/400, 7.748243s |
| store-init | 1.869609s | 9.130515s | 5.739629s |
| four tips | 2.713379s | 2.211485s (straddles expiry — NOT time inside the window) | 1.974243s |
| submission → registration | 628µs | 764µs | 898µs |

Arm A, 15 ISOLATED draws: first pull 45–300/400 (median 153); store-init 0.196–3.497s.
B2 and B3 store-init exceeded A's observed maximum; their tip totals did not. **Observed stage
locations, not a causal workload estimate** (todlando).

The continuation observed B2's correlated row 1.196399s past expiry with 28.803599s of its 30s
unspent, acceptance preserved FAILED. **Every prior instance of this red was right-censored with no
upper endpoint. This one has an endpoint.** That is hertz's design, built over doyle's wider-ceiling
version.

## WITHDRAWN IN THIS AMENDMENT — three eliminations doyle claimed and does not have

1. **"Drift does not explain B2."** WITHDRAWN (todlando, hertz). The argument was that convoy
   duration (9.473/10.973/14.553s) and suite wall (973.295/1047.917/1108.559s) grow monotonically
   while subject store-init does not, so "the run that expired was not the most-drifted run."
   **Suite wall and convoy duration are OUTCOMES, not a drift meter** — there is no measured drift
   level, so "most-drifted run" is undefined. Progressive degradation can coexist with run-specific
   variation and produce exactly this non-monotone store-init. Drift is **NOT excluded**.
   *deployah had endorsed this argument as the sharpest result of the arm; the endorsement is
   withdrawn with it, and is recorded here because an endorsed error propagates further than a
   private one.*
2. **"Convoy is not a product defect at the candidate."** WITHDRAWN as an elimination. A candidate CI
   pass against 3-of-3 diagnostic-local failures does **not** isolate instrumentation or local
   conditions as the only causes; a condition-dependent or intermittent product defect remains
   possible. The no-filing/no-blocker disposition **stands as a TRIAGE decision**, explicitly not as
   proof of non-defect, and the register entry carries **cause-unclassified** wording.
3. **"Sequencing changes nothing a peer observes."** WITHDRAWN as a measured claim (hertz).
   Unchanged absolute submission timing under a hypothetical rearrangement **was not measured**.
   **Sequencing remains REFUSED — by the acceptance ruling** (acceptance covers requester
   preparation through visibility), not by that unmeasured mechanism.

## UNMEASURED — the inventory, stated so nobody mistakes silence for absence

- **Why store-init took 9.130515s in B2.** No mechanism named: not contention, not filesystem, not
  antivirus. **Overlap is UNVERIFIED** — the elevated process recorder was unavailable unelevated
  (subscription failed: "Call cancelled" / "Access denied"), no nextest side-file sink exists at
  0.9.137, and no justified cross-clock error bound was established for an inner window.
- **Whether the golden reds (34445961595, 34481993681) share this mechanism.** Signature matches;
  signature match is not mechanism match. Now testable, which it was not this morning.
- **Failure rate.** 1 expiry in 3 B draws and 0 in 15 A draws bound nothing without a stated
  sampling model, which is not established. NOT "rare."
- **PROTOCOL DEVIATION (hertz's framing, stronger than "confounder"): the three B runs were NOT
  three equivalent workload repetitions.** Derived from `10-residual-births.json` against the run
  windows: each suite leaked exactly 6 `spt` children that outlived it, and all 18 were still alive
  at the post-B3 census — so diag-tree orphans present were **0 during B1, 6 during B2, 12 during
  B3**. A process alive at census with a birth time in an earlier window existed continuously
  through the runs between. The protocol ALREADY required between-run accounting; execution did not
  enforce it, so this is a deviation to be enforced next time, not wording to be added.
  **LIMITS: process COUNT is measured, LOAD is not** — idle orphans may cost nothing, contention is
  UNMEASURED, and this is not a drift meter. It neither implicates nor excludes residue as a cause,
  and it does not explain B2 (B3 carried twice the orphan count and PASSED). It does NOT invalidate
  B2's correlated timeline — acceptance expired before submission, then the matching row appeared —
  it limits CROSS-RUN attribution only.
- **"Three self-exited" is NOT established.** 18 censused against 15 killed shows only that three
  were absent at the second read; no exit evidence identifies how they went. Counts preserved as
  counts, in both directions (deployah likewise refused to claim he killed 18).
- **Confounders, stated and uncorrected:** A-then-B ordering, B's prebuild and cache changes,
  sampler overhead. Arm B was never a randomized comparison.

## STANDING

**Finding 1 remains UNCLASSIFIED as to cause.** Release **HELD**. v0.69.0 not cleared, core#218
unmerged, candidate `a9e786b2` unmoved, no tag, no publish, no board close-out, no CI dispatch.
**No budget change this milestone.** Convoy → infra register, cause-unclassified, swept at next
milestone intake.
