Governance and Roles
Role Model
owner: full control, including destructive actionsadmin: operational management rightsmember: default participation rights, configurable
Member Delegation Model
Per-community member permissions are stored as JSON in communities.member_permissions and enforced by community_member_can(...).
Supported permission keys:
create_eventsinvite_membersfeed_postfinance_add_transactionscreate_tasks
Admins and owners are always allowed.
Join Governance
Community join modes:
private: invite onlyrequest: join requests with admin approvalpublic: direct join path
Invite governance includes:
- Active invite caps (plan-aware)
- Optional invitee email locking
- Expiry and usage counters
Governance Recommendation
- Keep member delegation explicit and reversible
- Default to conservative rights in new communities
- Audit delegation changes in ops reviews
- Use feature flags for high-impact module rollout