bug(dev): `just dev` leaves non-executable sidecar stubs, breaking ACP authentication
- Dominant language
- Rust
- Stars
- 32.7k
- Forks
- 4.3k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 253
Description
## Summary
A source build launched with `just dev` can leave the desktop sidecar helpers as zero-byte, non-executable files. The desktop app then fails when it invokes `buzz-acp` for Claude Code sign-in discovery:
```
Couldn't load sign-in options: failed to run buzz-acp auth helper: Permission denied (os error 13)
```
This also prevents other desktop-managed agent features that require the bundled sidecars.
## Reproduction
1. Clone the repository on macOS (Apple Silicon).
2. Run the documented setup, then start the app with `just dev`.
3. In the desktop app, open the Claude Code integration and attempt to load sign-in options.
The files under `desktop/src-tauri/binaries/` are placeholders created by `_ensure-sidecar-stubs` and remain zero bytes / mode `0644`.
## Expected
`just dev` should make executable `buzz-acp`, `buzz-agent`, `buzz-dev-mcp`, `buzz`, and `git-credential-nostr` sidecars available to the Tauri desktop process.
## Actual
The Tauri app attempts to execute the `buzz-acp` helper and macOS returns `Permission denied (os error 13)`.
## Likely cause
`_ensure-sidecar-stubs` intentionally creates placeholder binaries for Tauri compile-time validation, but the `dev` recipe does not copy the compiled helpers into `desktop/src-tauri/binaries/` afterward. `desktop-standalone` already performs that copy, so the behavior is inconsistent.
A local workaround was to build the helper binaries and copy them into `desktop/src-tauri/binaries/-aarch64-apple-darwin`; after that, `buzz-acp auth-methods --json` returned the Claude sign-in methods successfully.
## Suggested fix
Reuse the copy-and-`chmod +x` block from `desktop-standalone` in `just dev` after its `cargo build` step, or factor it into a shared recipe used by both launch paths.
Contributor guide
Research direction
Start with the just dev recipe, _ensure-sidecar-stubs, and the desktop-standalone recipe, then compare how each handles the cargo build and copies files into desktop/src-tauri/binaries/. Verify that just dev produces executable sidecars for the listed names and run buzz-acp auth-methods --json through the desktop setup to confirm the helper can run.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust, tauri
- Domain
- build-system, desktop
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100