Four composable recipes.
Apply base + whichever sector recipes fit the deployment.
rsvp_full_stack applies rsvp_roles_base by default.
rsvp_roles_base (all deployments): - admin, marketing, director, senior_director, coordinator
rsvp_roles_general (generic functional roles, any sector):
- member — view restricted content, submit reservations per policy
- contributor — submit content for review, cannot publish - editor — create, edit, publish; no moderation authority
- moderator — review/approve content and cross-posts; works the audience moderation queue
rsvp_roles_municipal (town/government):
- town_clerk, select_board, librarian
rsvp_roles_university
(higher education / housing):
- faculty, campus_partner, resident_advisor, student_staff, student_manager
- Note: coordinator from base is the primary management role for university too
— no duplication Each role gets a defined base permission set.
Document the role→permission matrix in a recipe README.
Marketing gets cross-community permissions.
Coordinator/Senior Director/Director get community content management + moderation permissions.
Moderator gets content review and audience approval queue permissions.