docs: pass-56 second-audit touchups, lockdown note + style nit
DATABASE_SCHEMA: the migration 047 row now records the REVOKE/GRANT lockdown, with one-line rationale for why it differs from user_has_permission (RLS policies depend on anon/authenticated being able to call user_has_permission, so locking it would break policy evaluation; the new function has no such constraint). HANDOFF: replaces "Next-most-leverage" with "Highest-priority" in my pass-56 backlog header. "Leverage" is on the CLAUDE.md style-bans list.
This commit is contained in:
+1
-1
@@ -35,7 +35,7 @@ Branch `main`. Took item 3 from the pass-55 backlog: booking, class signup, and
|
||||
- **No volume governor.** Every form submission fans out one row per `forms.manage` holder; a popular waiver could create N rows per submission. Acceptable today (the unique index makes it idempotent); a digest / throttle is a separate phase (lines up with member preferences and an in-app inbox).
|
||||
|
||||
### Backlog after this
|
||||
The pass-55 list minus item 3. Next-most-leverage items remain:
|
||||
The pass-55 list minus item 3. Highest-priority items remaining:
|
||||
1. Owner-gated end-to-end spine validation (the shipped≠proven gap).
|
||||
2. Production observability (Sentry-equivalent for the webhook + dispatcher + actions).
|
||||
3. Phase 4-adjacent: member notification preferences (per-type opt-in/out; the dispatcher checks prefs before sending; natural next pass now that breadth exists).
|
||||
|
||||
Reference in New Issue
Block a user