Skip to content

feat(frontend): Discord and GitHub usernames in org onboarding - #2832

Merged
riderx merged 6 commits into
mainfrom
feat/onboarding-support-usernames
Aug 3, 2026
Merged

feat(frontend): Discord and GitHub usernames in org onboarding#2832
riderx merged 6 commits into
mainfrom
feat/onboarding-support-usernames

Conversation

@riderx

@riderx riderx commented Aug 3, 2026

Copy link
Copy Markdown
Member

Summary (AI generated)

  • Ask for optional Discord + verified GitHub usernames during Capgo onboarding → Create organization (after app details)
  • Show eyebrow copy Onboarding · Create organization on the new-user path so placement is explicit
  • Extract shared GitHub verify dialog/composable used by onboarding + account settings
  • Add a weekly console modal if usernames are still missing, with Remind me later and a discreet Don't ask again link
  • Fix review notes: trim GitHub lookup input, toast + stop org create on Discord save failure, ignore stale user updates after logout

Motivation (AI generated)

Support identity fields were easy to miss after onboarding. Collecting them in the org-creation onboarding step, then gently reminding weekly, increases match rate for Capgo Cloud support on Discord/GitHub.

Business Impact (AI generated)

Faster Capgo Cloud support triage. Maker+ / trial priority support messaging is visible in onboarding and the weekly prompt.

Where this sits in onboarding (AI generated)

New-user Capgo onboarding flow:

  1. /onboarding/app — app details / intent
  2. /onboarding/organizationcreate organization ← Discord + GitHub block is here
  3. logo / invite steps

Additional-org create (?source=org-switcher) shows the same block without the new-user onboarding eyebrow.

Visual changes (AI generated)

Local console screenshot:

Onboarding support usernames

Test Plan (AI generated)

  • New-user onboarding: after app details, on org create step, see Onboarding · Create organization + support fields
  • Leave empty and create org successfully
  • Enter Discord, fail network (or force error) → toast and org create stops
  • Verify GitHub via dialog (trim whitespace / empty Enter does nothing)
  • Logged-in user missing usernames sees weekly modal after ~2.5s outside /onboarding/*
  • Remind me later hides until next week; Don't ask again never shows again
  • Account settings GitHub verify still works via shared dialog

Generated with AI


Note

Low Risk
User-profile field updates and client-side prompt gating only; no auth or billing changes, with org create guarded on Discord save failure.

Overview
Optional Discord and verified GitHub are collected on the create organization onboarding step; Discord is persisted before org creation (failure shows a toast and blocks org create). Copy explains how usernames tie Capgo Cloud accounts to Discord/GitHub support, including Maker+ / trial priority messaging.

Shared UI includes OnboardingSupportUsernames, GitHubProfileDialog, and useGitHubProfileDialog (account settings drops inline GitHub dialog logic in favor of these). App-wide SupportUsernamesPrompt appears after ~2.5s when the user is missing both usernames, with remind-later (weekly via localStorage) and don't-ask-again; it is suppressed on auth/onboarding routes and when another dialog is open.

English i18n strings are expanded for help text, onboarding benefits, and the prompt.

Reviewed by Cursor Bugbot for commit 3a7951b. Bugbot is set up for automated code reviews on this repo. Configure here.

Collect optional support identity during organization creation so Capgo can recognize cloud customers faster when they need help.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_c4f4417e-38ce-4c28-b343-c8960a16cd90)

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The onboarding flow collects optional Discord and GitHub support identities. GitHub profiles can be looked up, confirmed, or removed. Organization onboarding saves the Discord username before organization creation and adds localized guidance.

Changes

Support identity onboarding

Layer / File(s) Summary
Support identity controls
src/components/dashboard/OnboardingSupportUsernames.vue, messages/en.json
Adds optional Discord input and GitHub profile lookup, confirmation, removal, loading, error, and cancellation states. Adds related localization messages.
Organization onboarding persistence
src/pages/onboarding/organization.vue, messages/en.json
Adds the support identity form to organization details. Loads and saves the Discord username before organization creation. Adds onboarding-specific localization.

Estimated code review effort: 3 (Moderate) | ~30 minutes

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant OnboardingSupportUsernames
  participant GitHubProfileLookup
  participant Supabase
  User->>OnboardingSupportUsernames: Enter GitHub username
  OnboardingSupportUsernames->>GitHubProfileLookup: Look up profile
  GitHubProfileLookup-->>OnboardingSupportUsernames: Return profile or error
  User->>OnboardingSupportUsernames: Confirm or remove account
  OnboardingSupportUsernames->>Supabase: Persist GitHub account change
Loading

Possibly related PRs

  • Cap-go/capgo.app#2826: Implements a related GitHub username lookup, confirmation, removal, and persistence flow.

Suggested labels: codex

Suggested reviewers: wcaleniewolny

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly summarizes the main change: adding Discord and GitHub usernames to organization onboarding.
Description check ✅ Passed The description explains the changes, motivation, visual impact, test plan, and screenshots, but it omits the repository checklist.

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot added the codex label Aug 3, 2026
Spell out that Discord/GitHub usernames are used to match Capgo Cloud accounts when customers open support issues.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_6e85078a-597e-438a-8dd5-3fdd2bc7605f)

@codspeed-hq

codspeed-hq Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 43 untouched benchmarks
⏩ 2 skipped benchmarks1


Comparing feat/onboarding-support-usernames (3a7951b) with main (001a47e)

Open in CodSpeed

Footnotes

  1. 2 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

Make GitHub username help copy state that priority support is included from Maker and above, and for all accounts during trial.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_3d84480a-bc9d-44da-84a0-f4c414171e4e)

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/components/dashboard/OnboardingSupportUsernames.vue`:
- Around line 57-84: Update findGitHubProfile to trim githubUsernameInput.value
before passing it to getGitHubProfile, and return early when the trimmed
username is empty. This guard must also cover the `@keydown.enter.prevent`
shortcut so pressing Enter with only whitespace does not trigger a lookup, while
preserving the existing loading and lookup-generation behavior.
- Around line 44-153: Extract the duplicated lookup, confirmation, removal, and
users-table update logic from openGitHubProfileDialog, findGitHubProfile,
confirmGitHubProfile, and clearGitHubProfile into a shared GitHub profile
composable. Update both consuming components to use that composable while
preserving their existing loading, generation guards, error handling, user-state
updates, dialog, and toast behavior.

In `@src/pages/onboarding/organization.vue`:
- Around line 392-416: Update saveSupportUsernames to surface persistence
failures to its caller instead of only logging and returning. Propagate the
Supabase update error or throw when error or user is missing, and ensure the
onboarding flow that invokes saveSupportUsernames before organization creation
handles the failure by stopping creation and presenting a visible error to the
user.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 0a4bb73a-b942-4189-b185-62a5fc07db26

📥 Commits

Reviewing files that changed from the base of the PR and between b5d66eb and eef12a6.

📒 Files selected for processing (3)
  • messages/en.json
  • src/components/dashboard/OnboardingSupportUsernames.vue
  • src/pages/onboarding/organization.vue
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • Cap-go/capacitor-updater (manual)

Comment thread src/components/dashboard/OnboardingSupportUsernames.vue
Comment thread src/components/dashboard/OnboardingSupportUsernames.vue Outdated
Comment thread src/pages/onboarding/organization.vue

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread src/pages/onboarding/organization.vue Outdated
Comment thread src/pages/onboarding/organization.vue
Comment thread src/components/dashboard/OnboardingSupportUsernames.vue Outdated
Redesign Discord/GitHub support fields with clearer hierarchy, benefit chips for Maker+ and trial priority, and a real local console screenshot for the PR.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_5c91abb6-aa94-45ac-afb0-9ebeeda3923c)

Keep only the OnboardingSupportUsernames component registration.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_7b14b210-a86f-46cf-9824-0626371512f4)

Extract shared GitHub verify dialog, clarify new-user org onboarding placement, surface Discord save failures, and prompt logged-in users weekly with a discreet forever-dismiss link.

Co-authored-by: Cursor <cursoragent@cursor.com>
@riderx

riderx commented Aug 3, 2026

Copy link
Copy Markdown
Member Author

Follow-up (AI generated)

Addressed review comments:

  • Shared GitHub profile flow extracted to useGitHubProfileDialog + GitHubProfileDialog
  • GitHub lookup trims input and ignores empty Enter
  • Discord save failure toasts and blocks org create
  • Stale Discord save after logout no longer overwrites main.user

Also added:

  • Clear new-user onboarding placement copy (Onboarding · Create organization on the org step after app details)
  • Weekly prompt modal with discreet Don't ask again link

@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_485b7bbe-ed5a-4ebc-94c0-42e188f8153b)

@riderx
riderx merged commit 6bd6db4 into main Aug 3, 2026
67 of 90 checks passed
@riderx
riderx deleted the feat/onboarding-support-usernames branch August 3, 2026 12:13
@sonarqubecloud

sonarqubecloud Bot commented Aug 3, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
D Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant