Schema: games, campaign_members, signups (campaign forming), audit_log; full campaigns columns
- Dominant language
- HTML
- Stars
- 0
- Forks
- 0
- Avg merge
- 1h 34m
- Merged PRs (30d)
- 23
Description
Fill out the domain for many campaigns.
- [ ] `games` — name, min/max players, default duration; referenced by campaigns and (later) single game days.
- [ ] `campaigns` gains: `recurrence_anchor` + `interval_weeks`, quorum, capacity, `max_sessions`, **`first_session_number`** (session numbers need seeding because history starts empty), lifecycle state.
- [ ] `campaign_members` — the roster: campaign_id, user_id, role (gm/player), joined_at, character_name.
- [ ] `signups` — target_type (`campaign_forming` now; `game_day` in phase 5), target_id, user_id, state, position, character_name — with the **CHECK constraint that a signup never targets a session**.
- [ ] `audit_log` — who changed what from the console.
Contributor guide
No contributing guide indexed for this repository
Research direction
No files or tests are named. Start by reading the existing schema and migration conventions, then map the requested games, campaigns, campaign_members, signups, and audit_log tables and campaign columns. Done means the listed fields, relationships, lifecycle data, seeded session numbering, audit data, and the signup CHECK constraint are represented in the schema.
Written by the indexing model from the issue text.
Assessment
- Domain
- database
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100