---
name: a-tests-banner-can-go-stale-against-its-own-assert
description: A test's diagnostic banner can contradict its own assert — promoting an arm from diagnostic to hard assert without re-reading the banner or the oracle's soundness
metadata:
  type: feedback
---

**A failing test can tell you, in its own printed output, that the thing it just died on is "not
asserted." Believe the assert, then go read what promoted it.**

MEASURED 2026-08-25, golden r1 `32856409565` @ `de91ee62`, `spt-daemon::input_ack_deadlock
input_flood_through_serve_attach_does_not_deadlock_broker`. The failure block printed:

    === P1b ACK-DEADLOCK GATE: flood_verdict=Sent broker_alive=true sessions_answered=true
    concurrent_attach_subscribed=true attach_received_output=false (fixed = flood_verdict=Sent +
    broker_alive + sessions_answered true; ... The loopback leg [subscribed/got_output] is a
    captured diagnostic, not asserted.) ===
    panicked at input_ack_deadlock.rs:687: subscribed=true got_output=false

All three legs the banner calls load-bearing were GREEN. The red came from the leg the banner calls
non-asserted — because line 687 is `assert!(subscribed && got_output, ...)`.

**Mechanism (one commit, two faces).** `53be5270` (v0.61.0) removed `// (4) DIAGNOSTIC (not
asserted):` and its `let _ = (subscribed, got_output);` sink and added a hard assert — and updated
NEITHER the banner NOR the oracle's soundness argument. So the banner had been lying for two
releases, and the new assert depended on a property the cold-attach contract never guaranteed
(a `from_seq=0` attach is served a GRID REPAINT, not ring bytes; 64 flood lines scrolled the seeded
needle off the 24-row screen). Unsound as an oracle on ANY timing — it passed only while the race
went one way.

**Why it matters beyond this test:** the contradiction is FREE evidence sitting in the failure
output, and it is the fastest route from "a red" to "which commit to read." I found it in the log
before any RCA and it named the right commit; what I could NOT get from the log was the repaint
contract, which is why I handed the mechanism to the gater instead of guessing it.

**How to apply:**
- When a red's own diagnostic text disagrees with what actually asserted, that is a FINDING about
  the test, not noise to skip past. Report it as a finding.
- `git show` the commit that introduced the assert and check whether the banner, the comment block,
  and the soundness argument moved WITH it. Promoting an arm from diagnostic to asserted is a
  CONTRACT change and needs all four updated together.
- A green history does not establish soundness: this passed for two releases on the winning side of
  a race. "It used to pass" dates the margin, not the oracle. See
  [[a-frontier-names-where-progress-stopped-not-the-cause]] and
  [[dont-take-a-diagnosis-as-measured]].
- Same-sha PLATFORM SPLIT (Windows PASS 2.175s / Linux FAIL 9.880s) is a strong tell for a
  race-dependent oracle rather than a product regression — pair it with a range-diff before
  indicting any lane. My own timing hunch about an unrelated member was refuted at the diff.
