Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

WSL setup: no window appears at all after post-setup restart (native-handoff ai-v3: path throws InvalidOperationException/Unavailable)

Open
#1,781 1 comment 1 reaction 0 assignees View on GitHub

Maintainers usually reply within 1 day

@joelagnel is already working on this.

Since Oct 20, 2026.

  • #1789 by @joelagnel — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
csharp
Domain
backend, desktop

Research direction

Start by tracing ActivationRouter → OpenNativeSetupCompletion → SetupNativeHandoffLauncher.OpenAsync, then inspect the WSL path through SetupGatewaySession.ConnectAsync and its provenance check. Reproduce on a WSL-capable Windows machine using the onboarding steps in the issue, and capture the InvalidOperationException details. Done means the post-setup restart promptly opens chat or shows a visible failure, with the root cause covered by a reproducible check.

Written by the indexing model from the issue text.

Description

clawsweeper:needs-maintainer-review clawsweeper:no-new-fix-pr impact:ux-release-blocker issue-rating: 🦪 silver shellfish P0 status: 🚢 actively landing

Summary

After WSL gateway setup completes any AI-connect step (confirmed with Local AI; AI-connect is mandatory for WSL in the current wizard, so every WSL setup run hits this) and the tray app does its post-setup restart, no chat window, hub window, or any other window appears at all for several minutes (observed ~93s+ and counting in both reproductions below). The only window that eventually appears is Settings (Connection page), which does show the backend as healthy.

Found via two independent, fresh-pull reproductions (b65006a6 and c25f7ba0), both clean builds on a fresh isolated profile.

Current behavior

  1. Fresh clean build, fresh isolated profile, fresh WSL distro.
  2. Walk onboarding: Install a local Gateway (WSL) -> Balanced capabilities -> Install (succeeds) -> Connect your AI (mandatory, no skip reachable in a normal run) -> Local AI on this PC -> install completes, model verified, gateway reconfigured and running.
  3. Click "Talk to my agent" on the finish page.
  4. The tray app restarts. The restarted process is launched with --post-setup-launch ai-v3:<hash> (a native dashboard-handoff token), not the plain "chat" route string.
  5. openclaw-tray.log shows [WARN] Native setup destination failed (InvalidOperationException); phase: none; result: Unavailable. at roughly the same point in both reproductions.
  6. No window (chat, hub, or even an error dialog) appears. EnumWindows against the restarted process shows nothing for 2+ minutes.
  7. Eventually, a Settings window (Connection page) appears on its own and correctly shows Connected/healthy operator and node state — but chat is never reached.

Expected behavior

The post-restart window (chat, or at minimum a visible error/retry dialog) should appear promptly, or the failure should be surfaced to the user instead of leaving no window at all.

Investigation notes (not fully confirmed, worth a maintainer's look)

  • The restart routes through ActivationRouter -> OpenNativeSetupCompletion -> SetupNativeHandoffLauncher.OpenAsync for this ai-v3: token, which is architecturally separate from the plain ShowHub/ShowWorkspace restart path.
  • Logger.Warn for this failure only logs the exception type, not its message, so the exact InvalidOperationException text wasn't recoverable from the log alone.
  • Best-evidence hypothesis from reading the code (not confirmed with a debugger/instrumentation): SetupGatewaySession.ConnectAsync has a provenance/device-token check (needsProvenance true for a WSL-managed loopback gateway) that calls provenanceService.InspectAsync and can throw InvalidOperationException if the result doesn't match ExpectedManagedGateway. This check does not exist in the native-package gateway branch of SetupNativeCompletionVerifier.VerifyAsync, which would explain why a plain native-gateway setup doesn't hit this.
  • Separately, whatever the actual failure is, ShowNativeSetupFailureAsync (or the broader SetupNativeHandoffLauncher.OpenAsync failure path) should produce a visible window/error dialog instead of leaving the user with nothing on screen — that's a bug independent of the root cause above.

Reproduction

Deterministic across two separate fresh-pull attempts on main (b65006a6, c25f7ba0). Needs a WSL-capable Windows test machine; AI-connect is unavoidable in the current wizard flow for WSL.

Related

This was originally mistaken for #1780 ("chat window stuck on Loading messages"), which was closed as not reproducing on current main after this different, no-window symptom kept reproducing instead in its place.

Dominant language
C#
Stars
2.1k
Forks
315
Avg merge
4d 10h
Merged PRs (30d)
169

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from openclaw/openclaw-windows-node

All issues in openclaw/openclaw-windows-node

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.