diff --git a/src/GmRelay.Bot/Migrations/V027__add_showcase_fields.sql b/src/GmRelay.Bot/Migrations/V027__add_showcase_fields.sql new file mode 100644 index 0000000..d49d618 --- /dev/null +++ b/src/GmRelay.Bot/Migrations/V027__add_showcase_fields.sql @@ -0,0 +1,14 @@ +-- Showcase fields for game catalog / public session browsing. + +ALTER TABLE sessions + ADD COLUMN is_one_shot BOOLEAN NOT NULL DEFAULT false, + ADD COLUMN system VARCHAR(50), + ADD COLUMN description TEXT, + ADD COLUMN cover_image_url TEXT, + ADD COLUMN duration_minutes INTEGER, + ADD COLUMN format VARCHAR(20) CHECK (format IN ('Online', 'Offline', 'Hybrid')), + ADD COLUMN allow_direct_registration BOOLEAN NOT NULL DEFAULT false; + +CREATE INDEX ix_sessions_showcase + ON sessions (scheduled_at, system, is_one_shot, format) + WHERE is_public = true AND status <> 'Cancelled';