\subsection*{Finite obstruction list is complete in the declared regime}

Inside the declared regime, the obstruction interface is not an open-ended list of failure stories.
It is a finite catalog whose members are forced by validator predicate failures.
This is the sense in which the catalog is \emph{complete}: every certificate failure inside the regime is recognized as exactly one canonical obstruction code with auditable evidence.

\subsection*{Canonical obstruction catalog (WOB)}

\begin{tabular}{@{}p{0.36\textwidth}p{0.58\textwidth}@{}}
\toprule
\textbf{WOB code} & \textbf{Meaning (declared regime)} \\
\midrule
\codeid{WOB-01-no-subsystem} & No admissible cyclic subsystem/observable is available in the measured model. \\
\codeid{WOB-02-trivial-winding} & All candidate loops have degree/holonomy multiple $0$. \\
\codeid{WOB-03-pinch} & Image misses an arc neighborhood on the declared target (non-surjective). \\
\codeid{WOB-04-tear} & Regularity/definability needed for degree/holonomy fails at the declared tolerance. \\
\codeid{WOB-05-holonomy-defect} & Lift/connection consistency needed for holonomy certification fails. \\
\codeid{WOB-06-coupling-mismatch} & Coupling target/baseline is wrong (CST not computed or baseline not defined). \\
\codeid{WOB-07-mixing-not-justified} & Statistical convergence claim made without an admissible RNF or NDB+MXC hypothesis. \\
\codeid{WOB-08-orbit-collapse} & No $\chi$-active circle-type orbit exists on the declared evidence domain. \\
\codeid{WOB-09-equivariance-defect} & Equivariance defect exceeds the declared admissible tolerance. \\
\codeid{WOB-10-resonant-locking} & Rank deficiency/rational dependence collapses the intended torus target. \\
\codeid{WOB-11-disconnected-slice} & Measurement domain misses the orbit/loop component required by the mechanism. \\
\codeid{WOB-12-slope-zero-quotient-nonsurjective} & $\chi$ is trivial and the induced quotient factor map is not surjective. \\
\bottomrule
\end{tabular}

\subsection*{Theorem (catalog completeness within the declared regime)}

Fix the declared regime described above (declared target type, admissible mechanism, admissible FEQ class, declared tolerances and margins, and in coupled settings the target-correctness rule selecting $\mathrm{CST}_s$ with coupled Haar baseline).
Let \emph{WSC} mean: \emph{there exists a witness stability certificate satisfying the regime validators on the declared correct target}.
Let \emph{WOB} mean: \emph{there exists a witness obstruction whose code is one of the fifteen canonical codes and whose evidence satisfies its checklist}.
Then, inside the declared regime,
\[
\neg \mathrm{WSC}\ \Longleftrightarrow\ \mathrm{WOB}.
\]
More concretely: a validator predicate failure $\neg\mathrm{V}_{XX}$ forces the obstruction code \codeid{WOB-XX}, and if all validator predicates hold then the regime permits a WSC on the correct target.

\subsection*{Necessity (each obstruction code is realized by an audited atlas artifact)}

Each canonical WOB code occurs in the shipped witness atlas as a boundary artifact with concrete evidence.
The following obstruction artifacts are included under \codeid{engine/artifacts/} and are checked by the audit suite:

\begin{tabular}{@{}p{0.40\textwidth}p{0.54\textwidth}@{}}
\toprule
\textbf{WOB code} & \textbf{Realizing atlas obstruction artifact} \\
\midrule
\codeid{WOB-01-no-subsystem} & \codeid{WOB-ATLAS-0013.json} \\
\codeid{WOB-02-trivial-winding} & \codeid{WOB-ATLAS-0014.json} \\
\codeid{WOB-03-pinch} & \codeid{WOB-ATLAS-0015.json} \\
\codeid{WOB-04-tear} & \codeid{WOB-ATLAS-0016.json} \\
\codeid{WOB-05-holonomy-defect} & \codeid{WOB-ATLAS-0031.json} \\
\codeid{WOB-06-coupling-mismatch} & \codeid{WOB-ATLAS-0011.json} \\
\codeid{WOB-07-mixing-not-justified} & \codeid{WOB-ATLAS-0020.json} \\
\codeid{WOB-08-orbit-collapse} & \codeid{WOB-ATLAS-0019.json} \\
\codeid{WOB-09-equivariance-defect} & \codeid{WOB-ATLAS-0012.json} \\
\codeid{WOB-10-resonant-locking} & \codeid{WOB-ATLAS-0009.json} \\
\codeid{WOB-11-disconnected-slice} & \codeid{WOB-ATLAS-0017.json} \\
\codeid{WOB-12-slope-zero-quotient-nonsurjective} & \codeid{WOB-ATLAS-0018.json} \\
\bottomrule
\end{tabular}

This realizability statement is what makes the catalog \emph{necessary}: no code can be removed without deleting a genuine, audited boundary mechanism.
