This was generated by AI during triage.
Slice of the e2e coverage epic #106, following the pattern proven by #111 (voting spec, landed in PR #150).
Goal
Playwright e2e spec for the group lifecycle against the existing local-Supabase harness.
Behaviors to cover
- A signed-in user can create a group and sees it listed.
- The creator can manage the group (rename; see the member list; access the invite code/link).
- A second user can join via the invite code/link and then sees the group.
- A non-member cannot see group-scoped data (e.g. group notes/votes visibility) — assert the negative where cheaply possible.
- Leaving a group removes it from the user's list.
Harness & preconditions
- Build on the existing Playwright setup and
TestHelpers; follow the suite's semantic-selector conventions, adding minimal data-testids to group controls only if needed.
- Confirm the seed provides two distinct test users (or a way to sign in as a second user); extend
supabase/seed.sql if not — no production-synced data.
- If
tests/README.md is still stale ("Boom Voter", port :5173), refresh it in passing.
Verification
pnpm run test:setup then pnpm run test:e2e green locally; new spec deterministic across repeated runs.
Out of scope
Voting (done, #111), schedule/reveal, admin, set-detail — separate slices under #106.
Slice of the e2e coverage epic #106, following the pattern proven by #111 (voting spec, landed in PR #150).
Goal
Playwright e2e spec for the group lifecycle against the existing local-Supabase harness.
Behaviors to cover
Harness & preconditions
TestHelpers; follow the suite's semantic-selector conventions, adding minimaldata-testids to group controls only if needed.supabase/seed.sqlif not — no production-synced data.tests/README.mdis still stale ("Boom Voter", port:5173), refresh it in passing.Verification
pnpm run test:setupthenpnpm run test:e2egreen locally; new spec deterministic across repeated runs.Out of scope
Voting (done, #111), schedule/reveal, admin, set-detail — separate slices under #106.