test(parse): RED fixture for tuple args & spread #5

Merged
crowmaki merged 1 commit from fixtures/tuple-arg-spread into main 2026-08-21 20:19:32 +00:00
Collaborator

What

RED for the tuple args / explicit spread feature (TDD contract). Adds:

  • tests/fixtures/parse/tuple-spread.cat — a parse-phase snippet registering
    the three call forms that PR #4's spec/grammar codified:
    • f(a, b) — two positional arguments
    • f((a, b)) — one tuple argument
    • f(...t) — explicit tuple spread into positional args
  • a row in docs/prd/0-feature-manifest.md mapping the feature to the
    fixture (phase parse, documented at Tuples ▸ In argument lists).

Why RED

Per AGENTS.md: no production code without a failing fixture first. This PR is
purely the fixture + manifest entry — it registers the expected syntax ahead
of building the parser. The parser (step 00 onward in docs/parser/) is the
green half and is a separate body of work.

Companion codification PR: #4 (docs/tuple-arg-spread).

Files

File Change
tests/fixtures/parse/tuple-spread.cat new fixture (added)
docs/prd/0-feature-manifest.md +1 row under Parser fixtures
## What RED for the **tuple args / explicit spread** feature (TDD contract). Adds: - `tests/fixtures/parse/tuple-spread.cat` — a parse-phase snippet registering the three call forms that PR #4's spec/grammar codified: - `f(a, b)` — two positional arguments - `f((a, b))` — one tuple argument - `f(...t)` — explicit tuple spread into positional args - a row in `docs/prd/0-feature-manifest.md` mapping the feature to the fixture (phase `parse`, documented at `Tuples ▸ In argument lists`). ## Why RED Per AGENTS.md: no production code without a failing fixture first. This PR is purely the fixture + manifest entry — it registers the expected syntax ahead of building the parser. The parser (step 00 onward in `docs/parser/`) is the green half and is a separate body of work. Companion codification PR: #4 (`docs/tuple-arg-spread`). ## Files | File | Change | |---|---| | `tests/fixtures/parse/tuple-spread.cat` | new fixture (added) | | `docs/prd/0-feature-manifest.md` | +1 row under **Parser fixtures** |
Adds tests/fixtures/parse/tuple-spread.cat and a feature-manifest row
(phase: parse) for the tuple-vs-argument-list rule and explicit tuple
spread, per the TDD contract (no production code without a fixture).

RED: no parser exists yet; the fixture registers the expected syntax
per docs/prd/language-spec.md > Tuples > In argument lists.
crowmaki approved these changes 2026-08-21 20:19:27 +00:00
crowmaki deleted branch fixtures/tuple-arg-spread 2026-08-21 20:19:32 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crowmaki/catlang!5
No description provided.