Add the channel messages and the usage record to proto
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
This commit is contained in:
@@ -69,11 +69,18 @@ fn envelopes_reject_unknown_keys_at_every_depth() {
|
||||
"tool_response_failed.json",
|
||||
"tool_response_denied.json",
|
||||
"error.json",
|
||||
"turn.json",
|
||||
"turn_event_tool_result.json",
|
||||
"turn_event_content.json",
|
||||
"turn_event_retrying.json",
|
||||
"turn_done.json",
|
||||
"error_session_full.json",
|
||||
] {
|
||||
// Envelope, msg and body: three objects.
|
||||
// Envelope, msg and body: three objects; turn_done also has a usage object.
|
||||
let want = if name == "turn_done.json" { 4 } else { 3 };
|
||||
assert_eq!(
|
||||
check::<Envelope>(name, &fixture(&format!("wire/{name}"))),
|
||||
3,
|
||||
want,
|
||||
"{name}"
|
||||
);
|
||||
}
|
||||
@@ -100,6 +107,16 @@ fn log_records_reject_unknown_keys_at_every_depth() {
|
||||
assert_eq!(tried, 8);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn usage_log_records_reject_unknown_keys_at_every_depth() {
|
||||
let mut tried = 0;
|
||||
for (i, line) in fixture("records/session_usage.jsonl").lines().enumerate() {
|
||||
tried += check::<LogRecord>(&format!("session_usage.jsonl:{}", i + 1), line);
|
||||
}
|
||||
// Seven records, plus the one tool call inside the first assistant record.
|
||||
assert_eq!(tried, 8);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn grants_reject_unknown_keys_at_every_depth() {
|
||||
let grant: Grant = toml::from_str(&fixture("grant/full.toml")).unwrap();
|
||||
|
||||
Reference in New Issue
Block a user