chore(proto): pull FlowIntent and the consent document RPC - #1908
chore(proto): pull FlowIntent and the consent document RPC#1908rohanchkrabrty wants to merge 1 commit into
Conversation
Pins PROTON_COMMIT to the proton commit that adds the FlowIntent enum, flow_intent and accepted_document_ids on AuthenticateRequest, and the ListConsentDocuments RPC with its request, response and ConsentDocument messages, then regenerates. Generated code only. Nothing references the new symbols yet; the implementation follows. Part of RFC 0002: https://github.com/raystack/frontier/blob/main/docs/rfcs/0002-explicit-consent-at-signup.md Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VW3nysiE4H83VQk6BroMYc
|
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: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. 📝 WalkthroughSummary by CodeRabbit
WalkthroughThe ChangesProton dependency update
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This PR adds generated consent and flow-intent API types and updates the Proton pin without introducing a concrete correctness, security, availability, or deployment issue. No actionable merge-blocking risk remains beyond normal review and the planned pin follow-up after Proton merges. Suggested reviewers: 🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
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 |
Coverage Report for CI Build 33314660040Coverage remained the same at 49.161%Details
Uncovered ChangesNo uncovered changes found. Coverage RegressionsNo coverage regressions found. Coverage Stats
💛 - Coveralls |
Part of RFC 0002: Explicit consent at signup. First of the stack; the login gate, the consent service and the migration follow.
Pins
PROTON_COMMITto the proton commit addingFlowIntent, the twoAuthenticateRequestfields and theListConsentDocumentsRPC (raystack/proton#501), and regenerates. No frontier logic here — the generated code just has to exist before anything can reference it.Changes
PROTON_COMMITbumped tob4a0f2fe8eaef5626e1661e7e2c9faede89693b9.proto/v1beta1/frontier.pb.goandproto/v1beta1/frontierv1beta1connect/frontier.connect.go.The new surface: the
FlowIntentenum (UNSPECIFIED/LOGIN/SIGNUP),flow_intent = 6andaccepted_document_ids = 7onAuthenticateRequest, andListConsentDocumentswith its request, response andConsentDocumentmessages.Technical Details
Both fields land in one proton change so neither can claim the other's number.
flow_intentis an enum rather than a string because the set is closed, and its zero value gives backward compatibility for free — an existing client that sends nothing keeps today's create-or-get behaviour. The RFC considered aoneofcarryingLoginIntentandSignupIntentwith the ids on the signup arm only (alternative 8), which would make a signup-only field unrepresentable on a login rather than merely rejected. It settles on flat fields, sinceAuthenticateRequest.emailis already a field only some strategies use, checked at runtime. Worth settling now: moving to aoneoflater means deprecating field 6 and carrying both for a window.AuthCallbackgains neither field — both ride on the flow, keyed by thestatethe provider returns.ListConsentDocumentsmirrorsListAuthStrategies: unauthenticated, no database, four fields per document. It is separate fromListAuthStrategiesbecause consent is not a strategy andAuthStrategycarries onlynameandparams, so the documents would land in aparamsmap every client has to parse.Before merge:
PROTON_COMMITpoints at the proton PR branch head, not amaincommit. It must be re-bumped to the squashed commit once raystack/proton#501 merges.Test Plan
make protoclean, generated files committedmake lint— 0 issuesmake test— passes; theinternal/store/postgressuites need a Docker daemon and were not run locallyFlowIntent,AcceptedDocumentIds,ListConsentDocumentsRequest,ConsentDocument)SQL Safety
Not applicable — no
*_repository.goorgoqu.*changes.