Repository navigation
Add gated ChatGPT sign-in and explicit account linking - #49
Draft
tmcfarlane wants to merge 3 commits into
Draft
tmcfarlane wants to merge 3 commits into
tmcfarlane wants to merge 3 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
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.
The connector page only explains how ChatGPT accesses ZeroBoard; it does not let someone use their ChatGPT identity to sign in. This adds a gated Continue with ChatGPT action and an explicit Link ChatGPT account action on Account, using the existing Supabase session and board ownership.
The feature stays off by default. This draft targets
v0.8and does not enable a provider or production flag. Native SDK requests use the fixedcustom:chatgptOIDC provider andopenid profile; pending/stale auth attempts, callback cancellation and identity collisions receive safe feedback. Existing accounts link while signed in, and linked status comes from their native identity record.Enablement requirements
Actual OpenAI authentication remains unverified. OpenAI website sign-in requires an approved client. The native path also needs compatible token authentication and an enforced claim/account-linking policy: Supabase automatically links matching email during anonymous OAuth, and caller-supplied scopes can override defaults. Frontend scope omission is insufficient. Keep the provider and flag off until the server/client boundary and actual callback/account preservation pass the conditional setup guide.
Also verify no-email new-user profile creation before enablement: the legacy schema requires a profile email, while generated types and the catalog-derived trigger fixture allow null. Actual deployed nullability and trigger behavior were not verified; no fallback email or speculative schema migration is included.
Validation
Published head:
88072d9e2336cc6788fd4deb619f247d953faad9; integrated base:4879f7e2aaf7f45fcdea6dad2b2ac2ecc2b54c48.auth.initializeboard-sync mock was repaired with three mock-only lines; its 70 cases passed. Neither full attempt is presented as a passing full gate.cdf2d9c2867789f92ecfa76d373c8750d73e3a9f; its tree equals the published head tree (e3cb2372c72ff264b789982c5e58e87c0c9391ee), with the stated base already an ancestor.Screenshots below are offline compiled fixtures, not a live OpenAI login. All fixture service requests are intercepted and no real account credentials are used.