feat(auth): skip ePDS consent screen on first-time sign-up - #227
feat(auth): skip ePDS consent screen on first-time sign-up#227s-adamantine wants to merge 1 commit into
Conversation
Advertise the ePDS `epds_skip_consent_on_signup` client-metadata extension so brand-new accounts skip the "Authorize your account" consent screen and land straight in the app. This is the only client-side change required. It takes effect once the certified.one PDS runs with PDS_SIGNUP_ALLOW_CONSENT_SKIP=true and this client_id is on its PDS_OAUTH_TRUSTED_CLIENTS allowlist (operator-side config, not part of this repo).
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe OAuth client metadata response now includes ChangesOAuth client metadata extension
Sequence Diagram(s)Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
What
Adds the ePDS
epds_skip_consent_on_signup: trueextension to Certified's OAuth client metadata (/.well-known/oauth-client-metadata).This removes the "Authorize your account" consent screen that first-time users currently hit during sign-up, so new accounts land straight in the app.
Why
Apps that delegate sign-in to the
certsprovider (e.g. the GainForest frontend) bounce users through certified.one's OAuth flow, and the ePDS shows its stock consent screen on a user's first sign-up. The ePDS exposes a client-metadata opt-out for exactly this case.Changes
src/app/.well-known/oauth-client-metadata/route.ts— advertiseepds_skip_consent_on_signup: truealongside the existing ePDS extension fields.This is the only change required in this repo.
Operator-side prerequisite (not in this repo, for reference)
The flag is only honoured when the certified.one PDS is configured with:
PDS_SIGNUP_ALLOW_CONSENT_SKIP=trueclient_idpresent onPDS_OAUTH_TRUSTED_CLIENTS(certified-app is already a trusted client — its
brand_color/email_template_urionly work for trusted clients — so realistically onlyPDS_SIGNUP_ALLOW_CONSENT_SKIP=trueneeds flipping.)Scope
Skips consent on initial sign-up (new accounts) only, matching "first time someone signs in". An existing account's very first authorization to this client still shows consent once, then it's remembered.
Summary by CodeRabbit