[Bug][buzz-acp] Managed agent worker initialization intermittently omits BUZZ_PRIVATE_KEY environment injection
- Dominant language
- Rust
- Stars
- 32.7k
- Forks
- 4.3k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 253
Description
### Environment
- **Client:** Buzz Desktop Mac App (v0.5.5+ / macOS WebKit runtime)
- **Harness:** buzz-acp (built-in pool worker runtime)
- **Impacted Session Components:** `buzz-cli` / `messages send` / `messages get`
### Describe the Bug
When the `buzz-acp` harness provisions and spawns a lazy pool-worker instance (e.g., handling DM channel `69db0d7e`), it intermittently fails to inject the `BUZZ_PRIVATE_KEY` and `BUZZ_AUTH_TAG` into the worker's active shell environment.
While `env | grep -i BUZZ` shows the full suite of `BUZZ_ACP_*`, `BUZZ_RELAY_URL`, and `BUZZ_MANAGED_AGENT*` variables, the key pair environment variables are completely absent.
### Symptoms
1. The agent model processes incoming execution calls flawlessly inside the sandbox (visible to the user in backend "Activity" tracking logs).
2. Any internal agent call to `buzz messages send` or `get` fails globally with `auth_error (exit 3)` because the client cannot sign Nostr events.
3. Messages completely black out from the perspective of user Channels and DMs, resulting in silent drops.
4. This loop has recurring failure rates across at least 6 separate worker spawns (`buzz-a2`, `buzz-64`, etc.) in a single cycle.
### Expected Behavior
The runner harness must strictly validate that cryptographic identity keys (`BUZZ_PRIVATE_KEY`) are present in the worker subprocess environment map prior to flagging the worker session as healthy/ready.
Contributor guide
Research direction
Start at the buzz-acp lazy pool-worker provisioning path and inspect the worker subprocess environment map before the session is marked healthy. Reproduce with the reported worker spawns and the buzz-cli messages send/get commands, then verify that missing BUZZ_PRIVATE_KEY or BUZZ_AUTH_TAG prevents readiness and that authenticated messaging works when the variables are present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- authentication, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100