From 570b8c548cc38ece6aba222a7aef3d0d183d1b45 Mon Sep 17 00:00:00 2001 From: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 Date: Fri, 19 Jun 2026 08:15:51 -0400 Subject: [PATCH] fix(desktop): quiet boot reconcile noise for unreachable relays MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Boot-time profile reconciliation logged a per-agent failure line every time a local agent's per-record relay was unreachable, producing a wall of identical "relay unreachable" lines on every `just staging` run. A local agent may deliberately target an offline relay, so an unreachable per-record relay is expected, not an error worth shouting each boot. Suppress only the relay-unreachable case (detected via the documented "relay unreachable:" prefix from relay.rs); genuine reconcile failures still surface loudly. Also default the create-agent picker to buzz-agent instead of goose so new local agents stop being born on the dead goose command. Keeps the per-record relay authoritative everywhere — no override, no migration. Co-authored-by: Will Pfleger Signed-off-by: Will Pfleger --- desktop/src-tauri/src/managed_agents/restore.rs | 12 +++++++++++- desktop/src/features/agents/ui/CreateAgentDialog.tsx | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/desktop/src-tauri/src/managed_agents/restore.rs b/desktop/src-tauri/src/managed_agents/restore.rs index 3469dc80d..f4c751ccc 100644 --- a/desktop/src-tauri/src/managed_agents/restore.rs +++ b/desktop/src-tauri/src/managed_agents/restore.rs @@ -232,7 +232,17 @@ pub async fn restore_managed_agents_on_launch( crate::commands::reconcile_agent_profile(&state, &reconcile_app, &pubkey, &data) .await { - eprintln!("buzz-desktop: profile reconciliation failed for agent {pubkey}: {e}"); + // A local agent may deliberately target a relay that isn't + // running (e.g. ws://localhost:3000 between boots); the relay + // helper marks every such case with the "relay unreachable:" + // prefix (see relay.rs). That's expected, not a failure worth + // a per-agent line every boot — only genuine reconcile errors + // surface loudly. + if !e.starts_with("relay unreachable:") { + eprintln!( + "buzz-desktop: profile reconciliation failed for agent {pubkey}: {e}" + ); + } } }); } diff --git a/desktop/src/features/agents/ui/CreateAgentDialog.tsx b/desktop/src/features/agents/ui/CreateAgentDialog.tsx index 37f135031..52e74ad1a 100644 --- a/desktop/src/features/agents/ui/CreateAgentDialog.tsx +++ b/desktop/src/features/agents/ui/CreateAgentDialog.tsx @@ -57,7 +57,7 @@ export function CreateAgentDialog({ const backendProvidersQuery = useBackendProvidersQuery(); const { lastRuntimeId, setLastRuntime } = useLastRuntime(); const [acpCommand, setAcpCommand] = React.useState("buzz-acp"); - const [agentCommand, setAgentCommand] = React.useState("goose"); + const [agentCommand, setAgentCommand] = React.useState("buzz-agent"); const [agentArgs, setAgentArgs] = React.useState("acp"); const [mcpCommand, setMcpCommand] = React.useState(""); const [mcpToolsets, setMcpToolsets] = React.useState(""); @@ -236,7 +236,7 @@ export function CreateAgentDialog({ setSpawnAfterCreate(true); setStartOnAppLaunch(true); setAcpCommand("buzz-acp"); - setAgentCommand("goose"); + setAgentCommand("buzz-agent"); setAgentArgs("acp"); setMcpCommand(""); setMcpToolsets("");