refactor: rename sprout backend to buzz#958
Merged
Merged
Conversation
First step of the Sprout->Buzz backend rebrand. Moves all 20 crate directories under crates/ and updates the workspace members list. The workspace does not compile after this commit alone; Cargo.toml package names and use-paths are renamed in following commits. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
Updates [package]/[lib]/[[bin]] names, workspace dependency keys and path declarations, and every 'use sprout_*' / 'sprout_*::' crate-qualified import across the workspace. Local variables that happen to start with sprout_ (sprout_event, sprout_mytoken, etc.) are intentionally left untouched; they are not crate references. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
countdown-bot keeps its own name but is a workspace member, so its path dependency on the renamed sdk crate must update in lockstep or the workspace fails to load. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
Completes the Rust identifier rename pass: doc comments referencing sprout-relay/sprout-pubsub, inline string mentions of 'sprout context', and metrics names (sprout_fanout_recipients, sprout_search_index_errors_total) all updated to buzz equivalents. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
All SPROUT_ prefixed environment variable references replaced with BUZZ_ across documentation, Rust source (git-sign-nostr, countdown-bot), and Cargo.toml comments. Wire-protocol strings were already clean from a prior pass. Co-authored-by: Will Pfleger <wpfleger@block.xyz> Signed-off-by: Will Pfleger <wpfleger@block.xyz>
Hard rename of all sprout references in infrastructure config: - docker-compose.yml: container names, DB creds, network, volumes, labels - ci.yml: container refs, DSN, env vars, package names, binary paths - release.yml: updater env vars, package names, artifact/release tag names - sprig.yml: binary/package references - CODEOWNERS: team name (with verification TODO) Co-authored-by: Will Pfleger <wpfleger@squareup.com> Signed-off-by: Will Pfleger <wpfleger@squareup.com>
Hard rename of all sprout references in scripts/ and docs/: - Env vars SPROUT_* → BUZZ_* - Binary names sprout-relay/acp/agent/dev-mcp/cli/proxy → buzz-* - DB creds and container names matching compose renames - Product name Sprout → Buzz in descriptive prose - Email domain sprout.test → buzz.test - Nostr tag sprout-channel → buzz-channel - Kept github.com/block/sprout repo URLs unchanged - Kept historical crates/sprout-relay/ path ref in git-on-object-storage.md Co-authored-by: Will Pfleger <wpfleger@squareup.com> Signed-off-by: Will Pfleger <wpfleger@squareup.com>
Formatting-only changes from cargo fmt run. Co-authored-by: Will Pfleger <wpfleger@squareup.com> Signed-off-by: Will Pfleger <wpfleger@squareup.com>
The desktop stub creation loop referenced old sprout-* binary names that no longer match the renamed crate outputs (buzz-acp, buzz-agent, buzz-dev-mcp, buzz). Co-authored-by: Will Pfleger <wpfleger@squareup.com> Signed-off-by: Will Pfleger <wpfleger@squareup.com>
…kerfile, and prometheus.yml Co-authored-by: Will Pfleger <wpfleger96@gmail.com> Signed-off-by: Will Pfleger <wpfleger96@gmail.com>
Desktop's sprout-core/sprout-persona/sprout-sdk path dependencies pointed at the old crate directory names which no longer exist after the rename. Use package aliases so desktop source code keeps importing as sprout_core (Wes's PR 960 will handle the full desktop rename pass). Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
Introduced by a recently-merged PR that added a use statement referencing the old crate name. Missed during rebase conflict resolution because the line was in a non-conflicting hunk. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
8f25396 to
62a87a0
Compare
wesbillman
approved these changes
Jun 10, 2026
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
`_ensure-sidecar-stubs` was renamed to produce `buzz-*` stub filenames as part of #958, but `desktop/src-tauri/tauri.conf.json` still declares its `externalBin` entries as `binaries/sprout-{acp,agent,dev-mcp,...}` and the `staging` recipe also copies the real binary to `binaries/sprout-${TARGET}`. The mismatch causes tauri-cli to abort with: resource path `binaries/sprout-acp-aarch64-apple-darwin` doesn't exist Revert the stub names to `sprout-*` so they match the tauri.conf.json contract and the staging recipe's `cp` target. A full buzz rename (tauri.conf.json + staging cp + stubs) can come later as a single sweep. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
#958 renamed the cargo crates to buzz-* and updated `_ensure-sidecar-stubs` to produce `buzz-*` stub filenames, but left `desktop/src-tauri/tauri.conf.json` declaring `externalBin` as `binaries/sprout-*` and the `staging` / `desktop-release-build` recipes still touching/copying `sprout-*` paths. tauri-cli then aborts with: resource path `binaries/sprout-acp-aarch64-apple-darwin` doesn't exist Update the three remaining sites (tauri.conf.json externalBin, staging cp target, desktop-release-build stub touches) to `buzz-*` so everything agrees on the rename direction. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
#958 renamed SPROUT_* env vars to BUZZ_* in scripts/instance-env.sh but missed the `dev` and `staging` just recipes, which still reference SPROUT_TAURI_CONFIG, SPROUT_VITE_PORT, and SPROUT_RELAY_URL. Running `just dev` or `just staging` on a fresh checkout fails with `SyntaxError: "undefined" is not valid JSON` because the recipes try to JSON.parse an unset env var. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
#958 renamed the cargo crates to buzz-* and updated `_ensure-sidecar-stubs` to produce `buzz-*` stub filenames, but left `desktop/src-tauri/tauri.conf.json` declaring `externalBin` as `binaries/sprout-*` and the `staging` / `desktop-release-build` recipes still touching/copying `sprout-*` paths. tauri-cli then aborts with: resource path `binaries/sprout-acp-aarch64-apple-darwin` doesn't exist Update the three remaining sites (tauri.conf.json externalBin, staging cp target, desktop-release-build stub touches) to `buzz-*` so everything agrees on the rename direction. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
#958 renamed SPROUT_* env vars to BUZZ_* in scripts/instance-env.sh but missed the `dev` and `staging` just recipes, which still reference SPROUT_TAURI_CONFIG, SPROUT_VITE_PORT, and SPROUT_RELAY_URL. Running `just dev` or `just staging` on a fresh checkout fails with `SyntaxError: "undefined" is not valid JSON` because the recipes try to JSON.parse an unset env var. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
#958 renamed the cargo crates to buzz-* and updated `_ensure-sidecar-stubs` to produce `buzz-*` stub filenames, but left `desktop/src-tauri/tauri.conf.json` declaring `externalBin` as `binaries/sprout-*` and the `staging` / `desktop-release-build` recipes still touching/copying `sprout-*` paths. tauri-cli then aborts with: resource path `binaries/sprout-acp-aarch64-apple-darwin` doesn't exist Update the three remaining sites (tauri.conf.json externalBin, staging cp target, desktop-release-build stub touches) to `buzz-*` so everything agrees on the rename direction. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
tellaho
added a commit
that referenced
this pull request
Jun 11, 2026
The staging recipe now exports BUZZ_RELAY_URL, but the desktop shell still read SPROUT_RELAY_URL — so `just staging` would launch fine while the app silently connected to ws://localhost:3000 instead of the staging relay (and sidecars, which already read BUZZ_RELAY_URL, would point at staging: split-brain). Rename the shell's relay env vars and the build-time baked pair to BUZZ_* to match instance-env.sh and the buzz-* crates. The managed-agent spawn handoff (SPROUT_RELAY_URL/SPROUT_PRIVATE_KEY/ SPROUT_ACP_* in managed_agents/) is a separate pre-existing gap from #958 and is left for a follow-up. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Summary
Renames all backend
sproutreferences tobuzzacross the Rust workspace, infrastructure config, scripts, and documentation. This is the backend portion of the full rebrand — thedesktop/tree is handled separately.Changes
Crate structure (Phase 1–3)
crates/sprout-*directories tocrates/buzz-*Cargo.tomlpackage names and workspace dependency pathsuse-paths and identifiers (sprout_*→buzz_*)Env vars (Phase 4)
SPROUT_*env var references toBUZZ_*in crates and examplesgit-sign-nostrenv var reads (SPROUT_PRIVATE_KEY→BUZZ_PRIVATE_KEY)Docker/CI (Phase 5)
docker-compose.yml: container names, DB creds, network, volumes, labelsci.yml: container refs, DSN, env vars, package names, binary pathsrelease.yml: updater env vars, package names, artifact/release tag namessprig.yml: binary/package referencesCODEOWNERS: team name (with verification TODO)Scripts & docs (Phase 6)
scripts/files: binary names, env vars, DB/service refs, product namedocs/files: env vars, crate references, product name in proseIntentionally preserved
github.com/block/sproutrepo URLs (actual repo URL)Sprout.app/Sprout Desktopproduct names in release.yml (macOS bundle name)docs/git-on-object-storage.md(PR feat(relay/git): git on Sprout, S3-backed #726 context)Out of scope
desktop/tree (~300+ references) — separate frontend PRVerification
cargo checkpasses cleanrg "SPROUT_" crates/ examples/→ 0 hitsrg -i sprout docker-compose.yml .github/→ 0 hits (excluding preserved items above)rg -i sprout scripts/ docs/→ 0 hits (excluding repo URL and historical path)