mirror of
https://github.com/block/buzz.git
synced 2026-11-04 08:21:48 +00:00
fix: resolve persona avatar in update path, move responds-to icon to top-left
Fix 1: In agent_models.rs, the update_managed_agent profile sync was always using the provider avatar via managed_agent_avatar_url(). Now checks persona_id first and uses the persona's avatar_url when present, falling back to the provider avatar. Mirrors the pattern in agents.rs creation path. Fix 2: In MessageRow.tsx, move the responds-to indicator overlay from top-right (-right-0.5) to top-left (-left-0.5) so it doesn't collide with the presence dot at bottom-right. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,7 +7,7 @@ use crate::{
|
||||
app_state::AppState,
|
||||
managed_agents::{
|
||||
build_managed_agent_summary, default_agent_workdir, find_managed_agent_mut,
|
||||
load_managed_agents, managed_agent_avatar_url, missing_command_message,
|
||||
load_managed_agents, load_personas, managed_agent_avatar_url, missing_command_message,
|
||||
normalize_agent_args, resolve_command, save_managed_agents, sync_managed_agent_processes,
|
||||
AgentModelInfo, AgentModelsResponse, UpdateManagedAgentRequest, UpdateManagedAgentResponse,
|
||||
},
|
||||
@@ -213,7 +213,15 @@ pub async fn update_managed_agent(
|
||||
.map_err(|e| format!("failed to parse agent keys: {e}"))?;
|
||||
let relay_url = record.relay_url.clone();
|
||||
let display_name = record.name.clone();
|
||||
let avatar_url = managed_agent_avatar_url(&record.agent_command);
|
||||
let avatar_url = record
|
||||
.persona_id
|
||||
.as_deref()
|
||||
.and_then(|pid| {
|
||||
let personas = load_personas(&app).ok()?;
|
||||
let persona = personas.iter().find(|p| p.id == pid)?;
|
||||
persona.avatar_url.clone()
|
||||
})
|
||||
.or_else(|| managed_agent_avatar_url(&record.agent_command));
|
||||
let auth_tag = record.auth_tag.clone();
|
||||
let respond_to = record.respond_to.as_str().to_string();
|
||||
Some((
|
||||
|
||||
@@ -154,7 +154,7 @@ export const MessageRow = React.memo(
|
||||
{respondToIcon ? (
|
||||
<span
|
||||
className={cn(
|
||||
"absolute -right-0.5 flex items-center justify-center rounded-full bg-background text-muted-foreground",
|
||||
"absolute -left-0.5 flex items-center justify-center rounded-full bg-background text-muted-foreground",
|
||||
isSmall ? "-top-0.5 h-3 w-3" : "-top-0.5 h-3.5 w-3.5",
|
||||
)}
|
||||
title={respondToIcon.title}
|
||||
|
||||
Reference in New Issue
Block a user