---
name: cfg-gated-code-is-invisible-to-the-other-platform-gate
description: "A #[cfg(unix)] arm or test is not compiled, linted, or run by any Windows gate — green Windows gates are silence about it, never evidence."
metadata: 
  node_type: memory
  type: feedback
  originSessionId: e85925aa-e501-498f-855b-550e75112265
  modified: 2026-08-03T14:54:04.491Z
---

Code and tests behind `#[cfg(unix)]` are **not compiled** on Windows, so `cargo clippy
--all-targets`, the full lib suite, and a mutation battery on HFENDULEAM all return green
while saying **nothing at all** about that arm. A `cfg(unix)` test with a compile error or a
dead assertion passes every Windows gate by not existing. The reverse holds for
`#[cfg(windows)]` on Linux.

**Why:** IR-16 (2026-08-03) fixed `DetachedChild::kill_tree` on BOTH arms. Windows gave
clippy 0, 821/821, battery 4/4 — and had zero exposure to the unix ESRCH whitelist. Proving
it needed kitsubito: clippy 0, 815/815, and its own 2-row battery. Same class as
[[opt-in-ci-legs-skip-silently]] — a leg that did not run is silence, not a pass — but worse,
because here the *local* gate looks complete.

**How to apply:** when a change touches a cfg-gated arm, name the platform each piece of
evidence covers and get the other platform before claiming the change is proven. `ssh
reavus@kitsubito` is authorized; ship the tree with `tar | ssh` into a scratch dir (~21MB
excluding `.git`/`target`) rather than touching their checkout, use a separate
`CARGO_TARGET_DIR`, and reap the scratch after. ⭐⭐ The mutation that matters on the second
platform is the one proving the row **reaches** the gated branch — re-key the condition
(ESRCH→EPERM) and confirm the row dies; a row that never enters the arm survives that and
looks identical to a passing one. See [[make-a-new-rig-red-on-purpose]] and
[[verdict-from-probe-competence]].
