Skip to content

AUTH-MAIL-002B: make verification resend honest - #154

Merged
daliu merged 1 commit into
mainfrom
codex/issue-153-verification-resend
Jul 13, 2026
Merged

daliu merged 1 commit into
mainfrom
codex/issue-153-verification-resend

Conversation

@daliu

@daliu daliu commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Closes #153

Outcome

My Account now distinguishes Firebase request acceptance from delivery. It reports accepted or a fixed generic unavailable result, never says the email was sent, synchronously blocks rapid duplicate activation, and shows the same visible 60-second browser cooldown after either result.

The control uses a native large button, explicit live status/alert text, timer cleanup, and a UID-keyed stale-result guard. A refresh or account change may reset this usability timer; Firebase throttling can still apply. No email, UID, provider error, action link, or token is displayed or logged.

Verification

  • Exact staged diff SHA-256: e379783f3c4bf57b51139608b55721553918c23bf91a1e3c2141ff27efefc686
  • Two independent exact-hash reviews: APPROVED, no findings
  • Node 20 focused Account suite: 14/14
  • Node 20 full frontend: 9 suites / 119 tests
  • SPA callback safety: 10/10
  • Strict changed-file lint: passed
  • Optimized diagnostic build: passed
  • Diff/link/sensitive-pattern checks: passed; 6 Markdown files / 17 relative links resolved
  • Tests use Firebase mocks and no network or mailbox

Continuity

Officer impact: Members get one plain request result and a visible wait before retry. Officers never need an email address, password, code, link, screenshot, mailbox, or Firebase Console repair.

Officer documentation: docs/officers/EVENTS_SHOP_MEMBERS.md and docs/officers/EMERGENCY_AND_RECOVERY.md

Deployment evidence: Source and local tests only at PR creation. No website publication, runmprc.com verification, Firebase/provider configuration, production email, member record, or live behavior was performed or verified. The exact #118 Rules/Functions deployment and readback must succeed before this website revision may be published through the protected profile-recovery plan.

@netlify

netlify Bot commented Jul 13, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for luminous-fox-7c393f ready!

Name Link
🔨 Latest commit 1b45199
🔍 Latest deploy log https://app.netlify.com/projects/luminous-fox-7c393f/deploys/6a54e213c9a5fa0007b0d70e
😎 Deploy Preview https://deploy-preview-154--luminous-fox-7c393f.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@daliu

daliu commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Exact-head merge gate verified at 2026-07-13T13:05:16Z: commit 1b4519932f51037d239a41001822a9817ca87fc4 remains based on current origin/main 7c7a41c366223bcf435b4f24ecc1cc0c87a62505. Hosted CI run 29252233611 passed Frontend (119 Jest tests, SPA 10/10, release workflow validation, lint/build), Functions, and Firestore Rules. Netlify deploy preview 6a54e213c9a5fa0007b0d70e is ready; its applicable redirect check passed and non-applicable header/page-change contexts skipped. Two independent exact-diff reviews approved. Proceeding with the user-authorized admin squash merge; production publication remains a separate protected release with per-surface evidence.

@daliu
daliu merged commit 23bca8c into main Jul 13, 2026
7 checks passed
@daliu
daliu deleted the codex/issue-153-verification-resend branch July 13, 2026 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AUTH-MAIL-002B — Make verification resend honest and rate-conscious

1 participant