Add OpenClaw Onboard settings card - #770
Conversation
Add a dedicated "OpenClaw Onboard" card to the Local Gateway section of Companion Settings. Its "Open onboarding" button opens the hosted setup window and navigates straight to the gateway onboarding step, skipping WSL installation. - New ShowGatewayWizard app command hosts SetupWindow and calls NavigateToWizard() after initial content is ready. - Local Gateway setup card keeps its single "Open setup" button. - Localized header, description, and button across all 5 locales. - Extend AppRefactorContractTests to cover the direct onboarding entrypoint. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Codex review: needs real behavior proof before merge. Reviewed June 16, 2026, 2:35 PM ET / 18:35 UTC. Summary Reproducibility: yes. for the PR findings: CI reproduces the localization failure, and source inspection shows the direct-wizard command can navigate an existing setup window while ProgressPage cancels on unload. I did not run the Windows UI locally in this read-only review. Review metrics: 2 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Mantis proof suggestion Risk before merge
Maintainer options:
Next step before merge
Security Review findings
Review detailsBest possible solution: Land a guarded direct-wizard entrypoint that cannot hijack active setup, resolves localization policy, and includes redacted visual or runtime proof of the card and button flow. Do we have a high-confidence way to reproduce the issue? Yes for the PR findings: CI reproduces the localization failure, and source inspection shows the direct-wizard command can navigate an existing setup window while ProgressPage cancels on unload. I did not run the Windows UI locally in this read-only review. Is this the best way to solve the issue? No: the direct entrypoint is plausible, but this implementation needs an active-setup guard, a localization-policy fix, and proof that the button opens the gateway wizard before it is the safest solution. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against d392f7d4ea0d. Label changesLabel changes:
Label justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
…tion - Guard direct onboarding so it cannot interrupt an in-progress setup. ShowGatewayWizardAsync now goes through EnsureSetupWindowAsync, which reports whether a setup window was newly created. It only calls NavigateToWizard() for a freshly created window; an already-open setup window (which may be mid-install on ProgressPage, whose Unloaded handler cancels the running pipeline) is just brought to the front instead. - Register SettingsPage_OnboardWizard_Header.Text as an invariant resource key. "OpenClaw Onboard" is a product/feature name kept identical across locales (the card's description and button are translated), fixing the LocalizationValidationTests all-or-none failure. - Extend AppRefactorContractTests to assert the active-setup guard (EnsureSetupWindowAsync + the createdNew check) stays in place. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Thanks for the review. Addressed the blockers in [P1] Don't navigate an active setup run to the wizard (
[P2] Invariant header localization failure (
Validation
Proof screenshot of the card is attached to the PR. @clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
|
Closed as superseded by #780, which includes this change plus conflict-resolution, validation, localization, and review fixes. |
Summary
Adds a dedicated OpenClaw Onboard card to the Local Gateway section of Companion Settings. Its Open onboarding button opens the hosted setup window and jumps straight to the gateway onboarding step, skipping WSL installation.
This is useful when a Local Gateway is already installed and you just want to (re)run the gateway-driven onboarding/configuration without going through the full first-run install flow.
Changes
ShowGatewayWizardapp command (IAppCommands+App.xaml.cs) — hostsSetupWindow, waits for initial content, then callsNavigateToWizard()so Welcome / Capabilities / install / Progress pages are skipped.SettingsPage.xaml/.xaml.cs) — the existing Local Gateway setup card keeps its single Open setup button; a new OpenClaw Onboard card is added below it with header, description, and an Open onboarding button.SettingsPage_OnboardWizard_Header,SettingsPage_OnboardWizard_Description, andSettingsPage_OpenOnboardWizard.Contentstrings across all 5 locales (en-us, fr-fr, nl-nl, zh-cn, zh-tw).AppRefactorContractTestsextended to assert the direct onboarding entrypoint (ShowGatewayWizardAsync+setupWindow.NavigateToWizard()) stays in the tray process.Validation
./build.ps1— all projects builddotnet test ./tests/OpenClaw.Shared.Tests/...— passdotnet test ./tests/OpenClaw.Tray.Tests/...— pass