Add a role
A new hire or a 6th seat — starts with no access anywhere; grant it by clicking cells in the matrix below.
Click a permission cell to cycle its level — No access → View only → Create only → Edit → Approve. New modules aren't self-service here since a module needs a real page built for it first; this editor covers roles and access levels on the modules that already exist.
What this closes
- Nav items and pages hide themselves per role automatically — no one sees a module they can't act on.
- "Create only" is a distinct level from "Edit" — a role can be allowed to add new items without being able to touch everyone else's.
- "Approve" stays its own level above Edit — e.g. only Celina can approve a timeline revision; Sohan, Irine, and Patrick can propose one.
- A new hire or 6th seat is added here, live — no code change or redeploy to grant someone access.
Still true after this editor
- This is a POC-stage guard, not real access control — anything client-side (this whole app, for now) can be bypassed by anyone with devtools. Real enforcement needs the backend that's coming later.
- Removing a role here only affects future gating — anything already attributed to them elsewhere (an idea's "submitted by," a QA log line) keeps their name.
- Adding a brand-new module (not just a new role) still needs a page built for it — this editor can't invent a route.