Repository navigation
Stop the onboarding wizard offering GitHub and stalling after sign-in - #1101
Conversation
The sign-in step has two hosts, so what follows a commit is the host's: the re-auth dialog refreshes and closes, the wizard advances after the same hold. A GitHub App server is still reachable by name or URL, where its own auth config picks the flow. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
PR Summary by QodoUse SSO discovery and advance onboarding after sign-in
AI Description
Diagram
High-Level Assessment
Files changed (16)
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d0daab00ad
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| internal bool TryAdvanceFrom(WizardStepId id) { | ||
| if (_closed || Current.Id != id || _index >= Steps.Count - 1) return false; | ||
|
|
||
| return TryGoTo(Steps[_index + 1].Id); |
There was a problem hiding this comment.
Invalidate the delayed advance after any navigation
If the user presses Back after sign-in succeeds and then returns to Sign-in before the 1.6-second hold expires, Current.Id is SignIn again, so the stale completion timer is accepted and unexpectedly advances to Defaults. This can skip sign-in after the user changes the workspace selection; track a navigation generation or completion token so leaving and returning invalidates the pending advance.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in 47ef094. OnboardingViewModel.Visit is bumped on every transition; the hold captures it when Completed fires and TryAdvanceFrom refuses on a mismatch. Pinned by TryAdvanceFrom_is_refused_on_a_return_visit_to_the_same_step and the returned: true case of A_committed_sign_in_never_pulls_the_user_off_a_step_they_chose.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Code Review by Qodo
1.
|
| The wizard's workspace discovery is single sign-on only, matching the CLI's default: a server on | ||
| GitHub App auth is reached by name or URL, where its own `/auth/config` picks the flow. |
There was a problem hiding this comment.
2. Commit subject lacks issue traceability 📘 Rule violation ⚙ Maintainability
The supplied commit subject Stop the onboarding wizard offering GitHub and stalling after sign-in does not end in (#<digits>) and combines the two outcomes with and. When this commit is merged, its subject lacks the required GitHub traceability token and single-clause form.
Agent Prompt
## Issue description
The commit subject lacks the required trailing GitHub issue reference and contains two joined outcomes rather than one imperative clause.
## Fix Focus Areas
- docs/CHANGES.md[1603-1604]
## Recommended Fix
Rewrite the commit subject as one concise imperative clause of at most 80 characters and append the explicit GitHub issue number in `(#123)` form.
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
There was a problem hiding this comment.
The reference goes in once an issue exists (see the sibling thread). The subject is one clause with a compound object; squash-merge appends the PR number.
The step id alone cannot tell the visit that armed the hold from a later one: Back then Next within the hold lands on Sign in again and the old timer would move the user on. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Closes #1107 — AI-3119
What & why
The first-run wizard preselected GitHub App sign-in for workspace discovery, while
kcap setupandkcap logindefault to single sign-on. Wizard discovery is single sign-on only; a server on GitHub App auth is reached by name or URL, where its own/auth/configpicks the flow.After a committed sign-in the wizard showed "You're signed in. Refreshing…" and stayed on the step. That line, and the refresh-and-close behind it, belong to the re-auth dialog, which hosts the same
SignInStepViewModel. The step raisesCompletedand takes its success detail from its host: the dialog keeps its copy, the wizard advances after the same 1.6 s hold.Where to look
Completedis withheld while a consent quarantine notice is up and fires on acknowledgement.TryAdvanceFromchecks the wizard's visit counter as well as the step id, so a Back or Next pressed during the hold is not overridden — including Back then Next, which lands on Sign in again.Verification
A_committed_sign_in_moves_the_wizard_on_after_the_success_holdfailed without the fix (Timed out waiting for: the move past the sign-in step) and passes with it.Capacitor.App.Tests.Unit: 2768 of 2769. The one failure,Size_label_and_image_flag, expects2.3 MBand gets2,3 MBunder a Norwegian locale; it passes underen_US.UTF-8.🤖 Generated with Claude Code