---
name: probe-before-teardown-not-at-assert
description: "A liveness/state probe read at assert time reads the rig's OWN cleanup, not the defect — capture it at the measurement instant, before teardown."
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 3af0675c-3744-4c28-b1ba-0f1bf9c1a162
  modified: 2026-08-04T06:25:59.624Z
---

A test that tears down (kills children, drops TempDirs, stops threads) BEFORE its assertions —
the standard "teardown first so a failing assert still reaps" shape — makes any state probe
placed at assert time a read of the rig's own cleanup. Probe the subject at the MEASUREMENT
instant (t1, the same window the tallies bracket), stash the answer, assert on the stash.

**Why:** measured while authoring the resume_no_control_steal taxonomy (2026-08-04,
dispatch 4). That test kills every ticker child at teardown, then asserts. A `provably_gone`
read in the assert would have reported EVERY child dead on every run, green or red — an
instrument that convicts the rig of its own cleanup and reads as a product verdict. The
placement is what makes it an instrument rather than a self-report; it is not a detail of
that one file.

**How to apply:** when adding a probe to an existing test, find the teardown FIRST and ask
what it destroys. Any field whose value the teardown changes must be captured upstream of it.
Kin: [[verify-the-subject-not-just-the-measurement]], [[setup-suppresses-failing-arm]],
[[a-predicate-without-its-tool-is-not-evidence]]. Same session's sibling rule:
[[consumer-tally-needs-a-producer-side-control]].
