0d69f82139
Step 1 — policy.ts shouldIntervene: suppress on a prior dismissal alone. The former `&& !priorOutcome.wasRealCollision` term was dead code (outcomes record wasRealCollision hardcoded true), so the 85 real dismissals in Atlas were never used. Now a prior accepted===false suppresses the next identical nudge. Spec: continual-learning/policy.md:41, spec.md:163. Step 2 — podman.ts handle: only escalate severity to 'critical' (the spoken alert trigger) when the recalled prior was an accepted *real* collision, instead of blanket-escalating every recall. Surfaces learned routing in preferredAction; stops dismissed/false priors over-escalating to voice. Spec: continual-learning/policy.md:62-63, plan.md:66. Documentation-first: adds PLAN.md section 8 "P0.5 - RSI negative-feedback activation" with both rungs + follow-ups. No schema change. backend typecheck passes. Independent of the MongoDB-cleanup handoff (Codex). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>