Always request encrypted cot (#3539)
Otherwise future requests will fail with 500
This commit is contained in:
@@ -84,8 +84,10 @@ pub enum ResponseEvent {
|
||||
|
||||
#[derive(Debug, Serialize)]
|
||||
pub(crate) struct Reasoning {
|
||||
pub(crate) effort: ReasoningEffortConfig,
|
||||
pub(crate) summary: ReasoningSummaryConfig,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub(crate) effort: Option<ReasoningEffortConfig>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub(crate) summary: Option<ReasoningSummaryConfig>,
|
||||
}
|
||||
|
||||
/// Controls under the `text` field in the Responses API for GPT-5.
|
||||
@@ -146,7 +148,10 @@ pub(crate) fn create_reasoning_param_for_request(
|
||||
return None;
|
||||
}
|
||||
|
||||
effort.map(|effort| Reasoning { effort, summary })
|
||||
Some(Reasoning {
|
||||
effort,
|
||||
summary: Some(summary),
|
||||
})
|
||||
}
|
||||
|
||||
pub(crate) fn create_text_param_for_request(
|
||||
|
||||
@@ -450,7 +450,6 @@ async fn chatgpt_auth_sends_correct_request() {
|
||||
// Init session
|
||||
let codex_home = TempDir::new().unwrap();
|
||||
let mut config = load_default_config_for_test(&codex_home);
|
||||
let include_reasoning = config.model_reasoning_effort.is_some();
|
||||
config.model_provider = model_provider;
|
||||
let conversation_manager = ConversationManager::with_auth(create_dummy_codex_auth());
|
||||
let NewConversation {
|
||||
@@ -492,18 +491,10 @@ async fn chatgpt_auth_sends_correct_request() {
|
||||
);
|
||||
assert_eq!(request_chatgpt_account_id.to_str().unwrap(), "account_id");
|
||||
assert!(request_body["stream"].as_bool().unwrap());
|
||||
if include_reasoning {
|
||||
assert_eq!(
|
||||
request_body["include"][0].as_str().unwrap(),
|
||||
"reasoning.encrypted_content"
|
||||
);
|
||||
} else {
|
||||
assert!(
|
||||
request_body["include"]
|
||||
.as_array()
|
||||
.is_none_or(|items| items.is_empty())
|
||||
);
|
||||
}
|
||||
assert_eq!(
|
||||
request_body["include"][0].as_str().unwrap(),
|
||||
"reasoning.encrypted_content"
|
||||
);
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "multi_thread", worker_threads = 2)]
|
||||
|
||||
Reference in New Issue
Block a user