Fix onboarding wizard Back desynchronization - #1205
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
🦞👀 Pull request received. I will update this pull request when review starts. |
|
Codex review: needs maintainer review before merge. Reviewed August 22, 2026, 5:47 AM ET / 09:47 UTC. ClawSweeper reviewWhat this changesThe PR removes the onboarding Back button and local payload replay, preserves restart/exit recovery in More options, documents the Gateway protocol limit, and adds a regression contract test. Regression provenancePossible regression — suspected (reviewed change). No predecessor PR is attributed. Merge readinessKeep open. This collaborator-authored PR directly removes the source-proven client-only rewind that desynchronized the Gateway wizard session, while retaining restart and exit recovery; no blocking code defect was found. Priority: P2 Review scores
Verification
Live VerificationCommand: Result: FAIL (failed) — execution before step 1 Assertions:
How this fits togetherThe Windows Companion renders onboarding steps supplied by the Gateway wizard and submits answers back to that same session. Recovery controls restart or exit onboarding when the protocol cannot authoritatively rewind a prior step. flowchart LR
A[Gateway wizard session] --> B[Authoritative step payload]
B --> C[Windows onboarding page]
C --> D[Answer submission]
D --> A
C --> E[More options recovery]
E --> F[Restart or exit]
Before merge
Agent review detailsSecurityNone. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Land the removal after CI and an isolated current-head wizard check confirm that Back is absent while More options still exposes restart and exit recovery. Do we have a high-confidence way to reproduce the issue? Yes. Current-main source records received Gateway payloads locally and re-renders an earlier payload on Back without a matching Gateway operation; the linked report provides the corresponding user flow. Is this the best way to solve the issue? Yes. Removing the unsafe local rewind is the narrowest maintainable repair because the represented Gateway wizard contract has no rewind operation and recovery actions remain available. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against ccd64bbb7d68. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
|
Exact-head validation for Validation
Real behavior proofThe exact-head Debug/Dev executable was launched through the repository-supported, Gateway-free
The capture-time UIA record binds the source head/base and executable SHA-256 and passes all four assertions. The screenshot contains repository-supplied synthetic preview data only and was cropped to the app window. The screenshot is hosted from immutable evidence commit Artifact hashes:
Cleanup was exact-PID and verified; no Gateway/WSL distro, production Companion, settings, credentials, or pairings were used or changed. Proof boundary: @clawsweeper re-review |
|
@clawsweeper re-review |
|
@karkarl The exact-head build, full test, UI Automation, and sanitized visual proof are published above and address both remaining validation items. This account has READ permission only, so ClawSweeper cannot accept our re-review command. Could you please post |

Summary
Fixes #1172
Validation
Not verified / blocked on this host because NuGet.org fails TLS negotiation (
NU1301,Authentication failed because the remote party sent a TLS alert: 'HandshakeFailure') and this fresh worktree does not contain the required restored assets orMicrosoft.ML.OnnxRuntime1.29.0 package.Attempted:
./build.ps1- blocked during Shared restoredotnet test ./tests/OpenClaw.Shared.Tests/OpenClaw.Shared.Tests.csproj- blocked during restoredotnet test ./tests/OpenClaw.Tray.Tests/OpenClaw.Tray.Tests.csproj- blocked during restoredotnet test ./tests/OpenClaw.Tray.Tests/OpenClaw.Tray.Tests.csproj --no-restore --filter "FullyQualifiedName~WizardBack_IsUnavailableWithoutAuthoritativeGatewayRewind"- blocked becauseproject.assets.jsonis unavailable in the fresh worktreegit diff --check- passed before commitRubber-duck review found no actionable issues.
Real behavior proof
Not verified / blocked.
run-app-local.ps1 -Isolatedcannot build and launch the current head until the NuGet TLS/restore failure is resolved. Source-level proof in the current head removesWizardBackButton,WizardBack_Click,_stepHistory, and prior-payload replay while retaining the visible More options recovery menu with Restart onboard and Skip & exit.