0%

Spec + grammar + quick-reference sync

Goal

Sync every normative surface named by the proposal’s Spec & Grammar Impact table via /sync-spec + /sync-grammar (proposal gate satisfied: fallible-let-binding-proposal.md is Approved). Update .claude/rules/ori-syntax.md quick reference.

Implementation Sketch

Scope contract: the approved proposal (compiler_repo/docs/ori_lang/proposals/approved/fallible-let-binding-proposal.md) - Design + Semantics + Spec & Grammar Impact sections govern this section verbatim; no scope invention. TDD: the failing test matrix for this section’s shapes lands before implementation; debug AND release verified at close.

Spec References

  • compiler_repo/docs/ori_lang/proposals/approved/fallible-let-binding-proposal.md
  • compiler_repo/docs/ori_lang/v2026/spec/16-control-flow.md (16.0.3, 16.5, 16.6, 16.7)
  • compiler_repo/docs/ori_lang/v2026/spec/15-patterns.md; 13-variables.md; grammar.ebnf

Work Items

  • grammar.ebnf: let_expr second alternative + parameterized fallible_pattern production (one pattern grammar, never a mirrored family)
  • 13-variables.md: new fallible-bindings subsection; amend the 13.4 refutable-list-recourse sentence
  • 15-patterns.md: let? context-table row; E2001 text; guards clarifying note
  • 16-control-flow.md: 16.0.3 statement-position row; 16.5 subsection with the shape table; 16.6 terminating-expression producer; amend the 16.7.1 no-if-let NOTE
  • Annex D: no-interior-space rule for let?/as?; then update .claude/rules/ori-syntax.md