Repository navigation
AUTH-001B: require verified email for Firestore roles - #198
Merged
Merged
Conversation
✅ Deploy Preview for luminous-fox-7c393f ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
9 tasks done
This was referenced Jul 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Outcome
Role-based Firestore access now fails closed unless Firebase supplies both the already-approved
memberoradminrole and exact booleanemail_verified == truein the signed-in token.Verification alone never grants membership or administrator access. Public reads and the existing own-account profile recovery path remain unchanged.
Closes #196.
Security invariant
Tests and review
git diff --checkpasses.b681c561bbf55017f14d9caad8a3cdb411c34606ee84637c51c6cd9db891b6a5with no findings.Officer impact
Private member and administrator screens backed by Firestore Rules will require the same account to have both an approved role and a verified email after this exact Rules revision is deployed. Officers must not change real roles or production records to test it.
Officer documentation
docs/officers/ACCESS_CONTINUITY.mddocs/officers/SYSTEM_MAPS.mdThe staging drill is explicitly NOT AVAILABLE YET until the exact Rules revision is deployed to protected staging.
Deployment evidence
2da7bfa824fdc2be635f27ec577150940cf6a303.29297012945and post-merge CI run29297116454.a8801770e97cf21d81f3307f5893734115140d8f.runmprc.comverified: not applicable; no website runtime changed and nothing was published.Remaining work
This focused Rules outcome does not complete AUTH-001. Separate work still owns Functions/Admin SDK authorization, verification-mirror reconciliation, token refresh or revocation behavior, protected Firebase deployment, and live readback. Admin SDK and IAM bypass Firestore Rules and must be reviewed independently.