Summary
Grow tests/corpus/ beyond the current three fixtures (basic.sp, actor.sp, control_flow.sp) using the spec's own examples as the source of truth, then add grammar-generated fuzzing for the edges.
Part of the Frontend milestone (see the Compiler Roadmap, #66). The crates/AGENTS.md convention is "add a corpus fixture for every accepted grammar shape."
Spec
- §15 (complete REST-API example) and the inline examples throughout §16 / §3–§11 are the canonical fixtures.
Scope
Notes
Hand-written fixtures give the "obviously-correct" floor; grammar-gen fuzzing covers the edges. Defer the fuzzing sub-task until the parser covers most of §16 so generated inputs are mostly valid. Pairs with the round-trip issue — every corpus file should also round-trip.
Summary
Grow
tests/corpus/beyond the current three fixtures (basic.sp,actor.sp,control_flow.sp) using the spec's own examples as the source of truth, then add grammar-generated fuzzing for the edges.Part of the Frontend milestone (see the Compiler Roadmap, #66). The
crates/AGENTS.mdconvention is "add a corpus fixture for every accepted grammar shape."Spec
Scope
tests/corpus/as parser coverage lands for its constructs.crates/AGENTS.md).Notes
Hand-written fixtures give the "obviously-correct" floor; grammar-gen fuzzing covers the edges. Defer the fuzzing sub-task until the parser covers most of §16 so generated inputs are mostly valid. Pairs with the round-trip issue — every corpus file should also round-trip.