fix(desktop): zero-prep connector onboarding (create workspace dirs)#265
Merged
Conversation
A connector created from the desktop New-connector flow failed to start: the gateway's config points policy.workspace.allowed_roots (and default_cwd) at ~/.cheers/workspace/<bot>, and the connector validates those dirs exist at startup (resolve_existing_dirs) — but nothing created them, so the daemon exited with 'does not exist (os error 2)'. Creating a connector from the desktop should need no manual prep. connector_write_onboarded now creates the referenced workspace dirs after writing the config. Best-effort and scoped to the user's home dir so a gateway-supplied config can't make us mkdir arbitrary system paths. Adds unit tests for the pure home-scoping collector. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This was referenced Jul 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Creating a connector from the desktop New connector flow fails to start with:
The gateway's generated config points
policy.workspace.allowed_roots(anddefault_cwd) at~/.cheers/workspace/<bot>, and the connector validates those dirs exist at startup (resolve_existing_dirs) — but nothing creates them. So onboarding from the desktop needed manualmkdirprep, which defeats the point of one-click "Set up & start".Fix
connector_write_onboardednow creates the referenced workspace directories right after writing the config (the desktop is on the same machine and owns~/.cheers). It is:mkdir -parbitrary system paths.The home-scoping/collection logic is factored into a pure
workspace_dirs_in_config()with unit tests (home-scoped kept, out-of-home dropped, malformed TOML → empty).Verify
cargo test(2 new tests pass) ·cargo fmt --checkclean. Full end-to-end (retry New connector → daemon starts) needs a rebuilt.app— flagged for live verification.