[codex-analytics] add protocol-native turn timestamps

This commit is contained in:
rhan-oai
2026-04-06 11:08:39 -07:00
parent 4fd5c35c4f
commit bbb42eb94f
59 changed files with 1136 additions and 35 deletions
@@ -167,6 +167,9 @@ fn turn_completed_recovers_final_message_from_turn_items() {
}],
status: TurnStatus::Completed,
error: None,
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
@@ -211,6 +214,9 @@ fn turn_completed_overwrites_stale_final_message_from_turn_items() {
}],
status: TurnStatus::Completed,
error: None,
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
@@ -251,6 +257,9 @@ fn turn_completed_preserves_streamed_final_message_when_turn_items_are_empty() {
items: Vec::new(),
status: TurnStatus::Completed,
error: None,
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
@@ -291,6 +300,9 @@ fn turn_failed_clears_stale_final_message() {
items: Vec::new(),
status: TurnStatus::Failed,
error: None,
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
@@ -332,6 +344,9 @@ fn turn_interrupted_clears_stale_final_message() {
items: Vec::new(),
status: TurnStatus::Interrupted,
error: None,
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
@@ -38,6 +38,9 @@ fn failed_turn_does_not_overwrite_output_last_message_file() {
additional_details: None,
codex_error_info: None,
}),
started_at: None,
completed_at: Some(0),
duration_ms: None,
},
},
));
+5 -1
View File
@@ -42,6 +42,7 @@ use codex_app_server_protocol::ThreadStartParams;
use codex_app_server_protocol::ThreadStartResponse;
use codex_app_server_protocol::ThreadUnsubscribeParams;
use codex_app_server_protocol::ThreadUnsubscribeResponse;
use codex_app_server_protocol::Turn;
use codex_app_server_protocol::TurnInterruptParams;
use codex_app_server_protocol::TurnInterruptResponse;
use codex_app_server_protocol::TurnStartParams;
@@ -719,7 +720,10 @@ async fn run_exec_session(args: ExecRunArgs) -> anyhow::Result<()> {
let _ = event_processor.process_server_notification(ServerNotification::TurnStarted(
TurnStartedNotification {
thread_id: response.review_thread_id.clone(),
turn: response.turn.clone(),
turn: Turn {
started_at: Some(0),
..response.turn.clone()
},
},
));
let task_id = response.turn.id;
+6
View File
@@ -268,6 +268,9 @@ fn turn_items_for_thread_returns_matching_turn_items() {
}],
status: codex_app_server_protocol::TurnStatus::Completed,
error: None,
started_at: None,
completed_at: None,
duration_ms: None,
},
codex_app_server_protocol::Turn {
id: "turn-2".to_string(),
@@ -277,6 +280,9 @@ fn turn_items_for_thread_returns_matching_turn_items() {
}],
status: codex_app_server_protocol::TurnStatus::Completed,
error: None,
started_at: None,
completed_at: None,
duration_ms: None,
},
],
};