Handbook
Constraints are the product. Syntax is how they project into a surface you will actually write.
| Area | Rule of thumb |
|---|---|
| Option / Result / Async | Un-narrowed values cannot be field-read or treated as success |
| match | Sums and literal unions must be exhaustive |
| Foreign import | Enters as unknown; shape use needs runtime-checked match |
| as | Checked ascription — not an escape hatch for unknown |
| Semantic veto | Provably absurd ops and members error ((3).toUpperCase(), 1 == "x") |
| Parse rejections | try, for, class, ===, ?., … refused at the door |
Catalog with entropy proofs: in-repo docs/10-constraint-catalog.md.