记录 DirectProject 请求解决事件
将 serverRequest/resolved 转换为 request.resolved 事件,及时解除订阅请求占用。
This commit is contained in:
@@ -934,6 +934,13 @@ fn direct_codex_request_event_type(method: &str) -> Option<&'static str> {
|
||||
}
|
||||
}
|
||||
|
||||
fn direct_codex_resolution_event_type(method: &str) -> Option<&'static str> {
|
||||
match method {
|
||||
"serverRequest/resolved" => Some("request.resolved"),
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
|
||||
fn direct_codex_intermediate_text_for_notification(
|
||||
method: &str,
|
||||
params: &serde_json::Value,
|
||||
@@ -3545,6 +3552,7 @@ async fn read_game_creator_codex_app_server_stdout(
|
||||
| "rawResponseItem/completed"
|
||||
| "turn/completed"
|
||||
) && direct_codex_request_event_type(method).is_none()
|
||||
&& direct_codex_resolution_event_type(method).is_none()
|
||||
&& safe_activity.is_none()
|
||||
&& intermediate_text.is_none()
|
||||
{
|
||||
@@ -3582,7 +3590,9 @@ async fn read_game_creator_codex_app_server_stdout(
|
||||
continue;
|
||||
}
|
||||
}
|
||||
let event = if let Some(activity) = safe_activity {
|
||||
let event = if let Some(event_type) = direct_codex_resolution_event_type(method) {
|
||||
CodexTurnEvent::Request { event_type, params }
|
||||
} else if let Some(activity) = safe_activity {
|
||||
// Preparing notifications may carry private plan/reasoning text;
|
||||
// expose only the safe activity category. Other categories may
|
||||
// retain their bounded, redacted intermediate text below.
|
||||
|
||||
Reference in New Issue
Block a user