SIGN IN SIGN UP

feat(rpiv-pi): tier the scope floor — quarantine untracked excess, adjudicate tracked excess

The lane scope floor no longer halts on its own findings (the citation
floor's demote-where-a-remedy-or-adjudicator-exists precedent). The verdict
is tiered by what a deterministic check can actually know per excess path:

- "untracked-only" — every excess path is run-created untracked ("??"):
  provably absent from the run-start baseline, owned by no phase. Routes to
  the new scope-quarantine script stage, which MOVES (never deletes) each
  file under .rpiv/tmp/scope-quarantine/ with a basename-keyed manifest,
  then re-enters the floor. The re-entry hop is a plain string edge
  (non-counted) with guaranteed convergence — quarantined copies live under
  the exempt .rpiv/ tree, so the second verdict can never be untracked-only
  again (integration-tested).
- "excess" — at least one TRACKED file modified out of scope. The floor
  cannot tell a lockfile touch or an undeclared in-goal edit from a real
  cross-phase stomp, so the run continues and validate adjudicates: build's
  validate dispatch threads the verdict JSON via a new --scope flag
  (the --cite-check pattern). ANY tracked path escalates the whole verdict —
  quarantine fires only on the all-untracked shape, so real work is never
  moved.
- A missing/corrupt/legacy verdict remains terminal STOP (the integrity
  clause every de-halting change has preserved). Ship deliberately keeps its
  stop-on-fail route — no fix loops is its contract.

Forced by the run-history audit: all six recorded scope-gate deaths were
either already-fixed false-positive classes (untracked-dir collapse, test
twins), disposable scratch the quarantine arm now clears autonomously
(run 2026-08-20_18-10-39-17e7 — a five-hour green run killed twice over two
.tmp scripts), or tracked in-goal work the eventual manual repair accepted
anyway (run 4cc2 — the flagged files shipped in the run's own commit).
Severity ("medium"/"high") mirrors the tier for trail legibility only; no
consumer folds it. Site workflow data resynced (build 32 stages, vet 9).
S
Sergii committed
4fd36fa1554a7a17a8a578a23754fd21cc1da0b1
Parent: 2136ef7