Change summary
crates/agent2/src/tests/mod.rs | 2 +-
crates/agent2/src/thread.rs | 14 ++++++++++++--
crates/agent_ui/src/acp/thread_view.rs | 7 ++++---
3 files changed, 17 insertions(+), 6 deletions(-)
Detailed changes
@@ -472,7 +472,7 @@ async fn test_tool_authorization(cx: &mut TestAppContext) {
tool_name: ToolRequiringPermission::name().into(),
is_error: true,
content: "Permission to run tool denied by user".into(),
- output: None
+ output: Some("Permission to run tool denied by user".into())
})
]
);
@@ -732,7 +732,17 @@ impl Thread {
stream.update_tool_call_fields(
&tool_use.id,
acp::ToolCallUpdateFields {
- status: Some(acp::ToolCallStatus::Completed),
+ status: Some(
+ tool_result
+ .as_ref()
+ .map_or(acp::ToolCallStatus::Failed, |result| {
+ if result.is_error {
+ acp::ToolCallStatus::Failed
+ } else {
+ acp::ToolCallStatus::Completed
+ }
+ }),
+ ),
raw_output: output,
..Default::default()
},
@@ -1557,7 +1567,7 @@ impl Thread {
tool_name: tool_use.name,
is_error: true,
content: LanguageModelToolResultContent::Text(Arc::from(error.to_string())),
- output: None,
+ output: Some(error.to_string().into()),
},
}
}))
@@ -1684,7 +1684,7 @@ impl AcpThreadView {
div()
.relative()
.mt_1p5()
- .ml(px(7.))
+ .ml(rems(0.4))
.pl_4()
.border_l_1()
.border_color(self.tool_card_border_color(cx))
@@ -1850,6 +1850,7 @@ impl AcpThreadView {
.w_full()
.h(window.line_height() - px(2.))
.text_size(self.tool_name_font_size())
+ .gap_0p5()
.child(tool_icon)
.child(if tool_call.locations.len() == 1 {
let name = tool_call.locations[0]
@@ -1968,7 +1969,7 @@ impl AcpThreadView {
v_flex()
.mt_1p5()
- .ml(px(7.))
+ .ml(rems(0.4))
.px_3p5()
.gap_2()
.border_l_1()
@@ -2025,7 +2026,7 @@ impl AcpThreadView {
let button_id = SharedString::from(format!("item-{}", uri));
div()
- .ml(px(7.))
+ .ml(rems(0.4))
.pl_2p5()
.border_l_1()
.border_color(self.tool_card_border_color(cx))