From 9d4da4de534c647b3dceb6d1634a1baf580082b3 Mon Sep 17 00:00:00 2001 From: Osamaali313 Date: Wed, 15 Jul 2026 23:37:27 +0300 Subject: [PATCH] fix(cli): print the "New leader" note after removing a team leader teamRemoveAgent picks a replacement leader, then does `team.leader_agent = newLeader` and immediately tests `newLeader !== team.leader_agent` to decide whether to append " New leader: @x." to the success message. Because leader_agent was just assigned newLeader, that comparison is always false, so the note never prints -- even when the removed agent was the leader and the user explicitly chose a replacement. Capture the previous leader before the assignment and compare against it. --- packages/cli/src/team.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/cli/src/team.ts b/packages/cli/src/team.ts index da123fdc..c3990d07 100644 --- a/packages/cli/src/team.ts +++ b/packages/cli/src/team.ts @@ -145,10 +145,11 @@ async function teamRemoveAgent(teamId: string, agentId: string) { } team.agents = remaining; + const previousLeader = team.leader_agent; team.leader_agent = newLeader; writeSettings(settings); - p.log.success(`Removed @${agentId} from team '${teamId}'.${newLeader !== team.leader_agent ? ` New leader: @${newLeader}.` : ''}`); + p.log.success(`Removed @${agentId} from team '${teamId}'.${newLeader !== previousLeader ? ` New leader: @${newLeader}.` : ''}`); } // --- team list ---