\section*{Obstruction table (dichotomy support for universality)}

SFT treats coverage claims as engine outputs: either a WSC (witness stability certificate) exists, or a WOB (witness obstruction) exists. The table below provides the canonical mapping used in the paper.

\begin{longtable}{@{}p{0.25\textwidth}p{0.25\textwidth}p{0.40\textwidth}@{}}
\toprule
\textbf{Obstruction} & \textbf{WOB code} & \textbf{Evidence checklist pointer} \\
\midrule
\endhead
No cyclic subsystem / no phase observable & \texttt{WOB-\allowbreak 01-\allowbreak no-\allowbreak subsystem} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Trivial winding / holonomy multiple zero & \texttt{WOB-\allowbreak 02-\allowbreak trivial-\allowbreak winding} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Image misses an arc (pinch) & \texttt{WOB-\allowbreak 03-\allowbreak pinch} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Regularity failure (tear) & \texttt{WOB-\allowbreak 04-\allowbreak tear} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Holonomy certification defect & \texttt{WOB-\allowbreak 05-\allowbreak holonomy-\allowbreak defect} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Coupling target not computed or wrong baseline & \texttt{WOB-\allowbreak 06-\allowbreak coupling-\allowbreak mismatch} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Mixing claim made without NDB/MXC & \texttt{WOB-\allowbreak 07-\allowbreak mixing-\allowbreak not-\allowbreak justified} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
No $\chi$-active circle-type orbit (orbit collapse) & \texttt{WOB-\allowbreak 08-\allowbreak orbit-\allowbreak collapse} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Equivariance defect beyond tolerance & \texttt{WOB-\allowbreak 09-\allowbreak equivariance-\allowbreak defect} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Rank deficiency / resonant locking & \texttt{WOB-\allowbreak 10-\allowbreak resonant-\allowbreak locking} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Disconnected slice misses witness component & \texttt{WOB-\allowbreak 11-\allowbreak disconnected-\allowbreak slice} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
Slope-zero plus quotient nonsurjectivity & \texttt{WOB-\allowbreak 12-\allowbreak slope-\allowbreak zero-\allowbreak quotient-\allowbreak nonsurjective} & \codeid{engine/contracts/WOB_CODEBOOK.md} \\
\bottomrule
\end{longtable}
