bxcore, loopd: TurnDone says whether the session has read untrusted content

Co-Authored-By: ornith-1.5-35b-a3b <agent@wntrmute.dev>
This commit is contained in:
2026-09-27 19:08:42 -07:00
co-authored by ornith-1.5-35b-a3b
parent 91992b9743
commit 0d3048c3c4
12 changed files with 287 additions and 2 deletions
+4
View File
@@ -144,6 +144,7 @@ fn done() -> End {
End::Done(TurnDone {
content: "It is noon.".to_string(),
usage: usage(),
untrusted: false,
})
}
@@ -364,6 +365,7 @@ fn json_mode_prints_frames_as_json_lines() {
let last: serde_json::Value = serde_json::from_str(lines[lines.len() - 1]).unwrap();
assert_eq!(last["content"], "It is noon.");
assert_eq!(last["usage"]["cache_n"], 10);
assert_eq!(last["untrusted"], false, "the done frame is printed whole");
}
#[test]
@@ -375,6 +377,7 @@ fn interactive_mode_reads_lines_until_quit() {
End::Done(TurnDone {
content: "ok".to_string(),
usage: usage(),
untrusted: false,
}),
);
let mut child = Command::new(env!("CARGO_BIN_EXE_bxctl"))
@@ -433,6 +436,7 @@ fn interactive_mode_survives_a_failed_turn() {
End::Done(TurnDone {
content: "ok".to_string(),
usage: usage(),
untrusted: false,
}),
);
let mut child = Command::new(env!("CARGO_BIN_EXE_bxctl"))
+1
View File
@@ -193,6 +193,7 @@ pub fn fake_loopd(events: Vec<TurnEvent>, answer: &str) -> FakeLoopd {
Message::TurnDone(TurnDone {
content: answer.clone(),
usage: usage(),
untrusted: false,
}),
));
for (last, msg) in frames {