diff --git a/desktop/src/features/channels/ui/ChannelScreen.tsx b/desktop/src/features/channels/ui/ChannelScreen.tsx index fc31dace7..8d313fa54 100644 --- a/desktop/src/features/channels/ui/ChannelScreen.tsx +++ b/desktop/src/features/channels/ui/ChannelScreen.tsx @@ -397,11 +397,9 @@ export function ChannelScreen({ if (!parentEventId) { return; } - const agentReplyParentId = currentThreadHeadId ?? null; const branchHeadId = currentThreadHeadId ?? null; await sendMessageMutation.mutateAsync({ - agentReplyParentId, branchHeadId, content, mentionPubkeys, diff --git a/desktop/src/features/messages/lib/threadBranch.ts b/desktop/src/features/messages/lib/threadBranch.ts index 68fbb3aee..8a98db53e 100644 --- a/desktop/src/features/messages/lib/threadBranch.ts +++ b/desktop/src/features/messages/lib/threadBranch.ts @@ -74,7 +74,12 @@ export function collectThreadBranch( ) .map((message) => ({ ...message, - depth: Math.max(0, message.depth - depthOffset), + // Keep normal replies in the drilled branch visually flat. + // Only explicitly drilled nested branches get their own branchHeadId and collapse link. + depth: + message.branchHeadId === branchHeadId + ? 0 + : Math.max(0, message.depth - depthOffset), })); return {