notedeck

One damus client to rule them all
git clone git://jb55.com/notedeck
Log | Files | Refs | README | LICENSE

commit 4169bc867ac7666d5d8d63ee5acd09c4e97cf835
parent 5cd46712995d85ceedc7e7ed149f4aa4faba8f11
Author: William Casarin <jb55@jb55.com>
Date:   Thu, 19 Feb 2026 11:18:50 -0800

dave: fix tool results without parent_task_id silently dropped

The `?` operator on `parent_task_id.as_ref()` returned None when
there was no parent, which the caller interpreted as "successfully
folded into subagent." This caused standalone tool results to be
silently dropped from chat, never reaching the UI.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Diffstat:
Mcrates/notedeck_dave/src/session.rs | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/crates/notedeck_dave/src/session.rs b/crates/notedeck_dave/src/session.rs @@ -260,8 +260,12 @@ impl AgenticSessionData { chat: &mut [Message], result: ExecutedTool, ) -> Option<ExecutedTool> { - let parent_id = result.parent_task_id.as_ref()?; - let &idx = self.subagent_indices.get(parent_id)?; + let Some(parent_id) = result.parent_task_id.as_ref() else { + return Some(result); + }; + let Some(&idx) = self.subagent_indices.get(parent_id) else { + return Some(result); + }; if let Some(Message::Subagent(subagent)) = chat.get_mut(idx) { subagent.tool_results.push(result); None