${VAR:-} collapsed exported-empty into genuinely-unset, mis-filing
both-empty and the two mixed empty/unset states as informational where
the charter requires WARNs. Presence now tracked via [[ -v VAR ]]
alongside value: NOTES only when both variables are genuinely absent;
any present-but-empty or single-present state emits a loud WARN per
missing/empty anchor, each naming the launchers as authority (unset and
empty get distinct wording). Suite: the wrong both-empty note arm
replaced by three warn arms (both-empty, host-empty+brain-unset,
host-unset+brain-empty); warn arms accept >=1 warn with zero notes
(single-present states warn once, both-present-empty warns twice — per
anchor, by design); red control now mutates presence tracking back to
the nonemptiness collapse (the reviewed defect shape) and must emit
NOTEs for both-empty. 10 arms green; gates green.
New check_structure_anchor_provisioning audit per spec 1.2a + PHASE2-MAP
F7: four states — both anchors present pass (paths reported only); one
missing/empty WARNs naming the var with the launchers as authoritative
source; neither present emits INFORMATIONAL launcher-equivalent
derivation explicitly labeled non-authoritative (never an error by
design); doctor never exports, writes, or fabricates values — audit
only. Severity follows the doctor's existing note/warn conventions
(warn counts toward --fail-on-warn). Hermetic suite follows the
test-brain-home-check extraction discipline: 7 arms covering all four
states incl. genuinely-unset (env -u) and empty-string forms, plus a
mutation red control proving the empty-vs-set distinction bites
(-n tests replaced by -v in a mutant copy). Registered in
test:framework-shell; enumeration/sanitization/tools-index green.