---
name: rig-inherits-the-defect-it-studies
description: "A diagnostic rig reaches for the same broad-selector shortcut as the bug it investigates; on a shared dev/CI box that selector reaches CI's processes."
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 1d37fd4a-b44f-4b62-b50e-c5470fd1c3c9
  modified: 2026-08-03T05:39:27.615Z
---

Hold a diagnostic rig to the SAME identity discipline you would demand of the product code it
investigates. Building the positive control for IR-18 (a bare `taskkill /PID /F /T` fed by stale
breadcrumbs) I wrote the rig's own killer as a machine-wide
`Win32_Process Name='spt.exe' | where CommandLine -match 'daemon run'` → `Stop-Process -Force`.
Caught before first execution; corrected to `ParentProcessId=<test pid>` for the daemon and
`ParentProcessId=<daemon pid>` for its service.

**Why:** hfenduleam is the Windows CI runner AND the dev box, so a machine-wide selector is not
test-local — it matches CI's test daemons. Running it during a live leg force-kills another job's
daemon and then reports the result as your own measurement: a fabricated red in someone else's run,
produced by the instrument built to study fabricated reds. `CREATE_BREAKAWAY_FROM_JOB` does not
weaken parent-id scoping — breakaway leaves the JOB, not the parent-id record, which is also how an
orphaned child stays attributable to the daemon that spawned it.

**How to apply:** in any rig that kills, scope by proven descent or captured identity, never by
image name or cmdline match, and never machine-wide on a shared runner. Treat "my instrument used a
bare selector" as evidence the pattern is easy to reach under pressure — argue the fix should make
the authenticated path the only one in reach, not "be careful". Being blocked on the box is what
bought the re-read: load discipline buys correctness catches, not just courtesy.

Related: [[rig-ownership-reap-only-your-own]], [[reap-root-needs-authenticated-ancestry]],
[[stale-breadcrumb-tree-kill-class]], [[live-agents-lock-target-debug-spt-exe]].
