---
name: cascade-red-from-a-skipped-driver-is-zero-information
description: "A downstream job's RED carries zero information when its upstream driver step was SKIPPED — the assertion raced a driver that never launched. Read job STEP status before attributing a red to any seam, including your own."
metadata: 
  node_type: memory
  type: project
  originSessionId: d3652482-14ed-4c90-b240-4f6cc2208e8d
  modified: 2026-08-19T02:27:06.980Z
---

**A red acquires false polarity exactly the way an absent number does.** Golden
30873007187 (2026-08-04, 4b37512, #145): `twohost-b` failed at
`crates/spt/tests/twohost_cli.rs:189` with "never converged on the rig: bring-up: A's
target row replicated to B" — a REGISTRY REPLICATION rung, and `spt-net/registry.rs`
was one of my four changed files. It reads as a pointed accusation of my seam.
It was not one. doyle's structural disarm: `twohost-a`'s gated role-A step was SKIPPED
after the ladder died, so **twohost-b's assertion raced a driver that never launched**.
The rung could not have converged regardless of what registry.rs said. Zero information
about the replication seam.

**Why:** my own triage got the honest half right — I flagged leg 3 as the one I could
NOT exonerate by file overlap, and found a cross-lane prior (bench-wiring @bc58712 red
at the SAME file:line on a different rung, unrelated lane, green on same-sha respin).
That prior is real evidence and doyle accepted it, but it is STATISTICAL: it says this
line flakes across lanes. The step-status read is STRUCTURAL: it says this particular
red could not have carried a signal at all. Structural beats statistical — it settles
the arm instead of shifting its prior, and it costs one query.

**How to apply:** before attributing ANY downstream red — to your lane or anyone's —
read the failing job's STEP list, not just its test output, and ask what upstream step
was skipped, cancelled, or died. A cascade red is a labelled hole wearing an assertion
message. In a two-role rig this is the default suspicion, not an edge case: role B's
assertions are only meaningful if role A's driver actually launched.
[[bench-wiring-landed]] records the same shape from the other direction (B's E-1 send
hit a 10s QUIC bound, A cascaded into a 15-min convergence wait on a reaped peer) — so
twohost cascades in BOTH directions and neither one's red is self-interpreting.

**Stronger face — trace the TOKEN to its emit site, and "probably a cascade" becomes
deterministic (2026-08-18, golden 32205195794 @ 9ffb270, both twohost legs red).** Here the driver
step was NOT skipped: role A ran its full 997.50s and died on its own `rig_wait`, so step status
alone could not disarm it. The release lane read it as a likely cascade and said out loud that the
falsifier was a rig token he had not traced. Tracing cost one grep: `SIG_FORKGAP_OK` has exactly ONE
emit site (`twohost_cli.rs:998`), A's only wait on it is `:1249-1251`, and B panicked at `:987` —
eleven lines ABOVE the sole emit. So A could not have converged on any box, at any deadline. That is
a different and better shape than the cross-job-kill reading also on the table (B's panic killing A's
in-flight ack): nothing killed A, B simply never reached the print. **Same verdict, but "could not
have" instead of "probably did not" — and the difference is one grep for the token's emit sites.**
When a peer's red is a converge timeout, always ask: how many places emit the token it waited on, and
where do they sit relative to the peer's panic line?

Mirror of [[cancelled-measurement-leaves-labelled-hole]] and
[[start-event-is-not-proof-nothing-ran]]: there, an ABSENCE reads as a benign number;
here, a PRESENCE (a red, with a specific and plausible-looking assertion string) reads
as a finding. Both need the record to fix their polarity. Kin:
[[is-this-red-mine-delta-test]], [[intermittent-green-is-zero-information]] (the
same coin — a green from a rerun and a red from a cascade are both non-evidence),
[[stacked-defects-mask-each-other]].
