diff --git a/api/database/seeders/RoleSeeder.php b/api/database/seeders/RoleSeeder.php index c32d7bf4..92100d98 100644 --- a/api/database/seeders/RoleSeeder.php +++ b/api/database/seeders/RoleSeeder.php @@ -22,5 +22,15 @@ class RoleSeeder extends Seeder Role::findOrCreate('event_manager', 'web'); Role::findOrCreate('staff_coordinator', 'web'); Role::findOrCreate('volunteer_coordinator', 'web'); + + // RFC-TIMETABLE v0.2 §9 — program/production roles. Per Phase A + // decision (2026-05-08), Crewli authorises by role only; the four + // RFC §9 permission strings (events.view_program, events.manage_program, + // organisations.manage_artists, organisations.manage_settings) are + // mapped to roles in policy class docblocks rather than seeded as + // Spatie permissions. See BACKLOG entry AUTH-PERMISSIONS-MIGRATION + // for the eventual cross-cutting migration. + Role::findOrCreate('program_manager', 'web'); + Role::findOrCreate('production_assistant', 'web'); } }