This commit is contained in:
Dylan Hurd
2026-02-09 15:25:36 -08:00
parent 7a160219d9
commit 8f220696fe
3 changed files with 17 additions and 6 deletions

View File

@@ -21,7 +21,6 @@ use codex_app_server_protocol::AppsListParams;
use codex_app_server_protocol::AppsListResponse;
use codex_app_server_protocol::ArchiveConversationParams;
use codex_app_server_protocol::ArchiveConversationResponse;
use codex_app_server_protocol::AskForApproval;
use codex_app_server_protocol::AuthMode;
use codex_app_server_protocol::AuthStatusChangeNotification;
use codex_app_server_protocol::CancelLoginAccountParams;
@@ -451,8 +450,15 @@ impl CodexMessageProcessor {
// Map v2 input items to core input items.
let items: Vec<CoreInputItem> = input.into_iter().map(V2UserInput::into_core).collect();
let collaboration_mode =
collaboration_mode.map(|mode| self.normalize_turn_start_collaboration_mode(mode));
let collaboration_mode = collaboration_mode
.map(|mode| self.normalize_turn_start_collaboration_mode(mode))
.or_else(|| {
Some(config_snapshot.collaboration_mode.with_updates(
model.clone(),
effort.map(Some),
None,
))
});
Op::UserTurn {
items,
@@ -464,9 +470,8 @@ impl CodexMessageProcessor {
.map(|p| p.to_core())
.unwrap_or(config_snapshot.sandbox_policy),
model: model.unwrap_or(config_snapshot.model),
effort,
// TODO: need to add to config_snapshot
summary: summary.unwrap_or_default(),
effort: effort.or(config_snapshot.reasoning_effort),
summary: summary.unwrap_or(config_snapshot.reasoning_summary),
final_output_json_schema: output_schema,
collaboration_mode,
personality,

View File

@@ -651,7 +651,9 @@ impl SessionConfiguration {
approval_policy: self.approval_policy.value(),
sandbox_policy: self.sandbox_policy.get().clone(),
cwd: self.cwd.clone(),
collaboration_mode: self.collaboration_mode.clone(),
reasoning_effort: self.collaboration_mode.reasoning_effort(),
reasoning_summary: self.model_reasoning_summary,
personality: self.personality,
session_source: self.session_source.clone(),
}

View File

@@ -5,7 +5,9 @@ use crate::error::Result as CodexResult;
use crate::protocol::Event;
use crate::protocol::Op;
use crate::protocol::Submission;
use codex_protocol::config_types::CollaborationMode;
use codex_protocol::config_types::Personality;
use codex_protocol::config_types::ReasoningSummary;
use codex_protocol::openai_models::ReasoningEffort;
use codex_protocol::protocol::AskForApproval;
use codex_protocol::protocol::SandboxPolicy;
@@ -23,7 +25,9 @@ pub struct ThreadConfigSnapshot {
pub approval_policy: AskForApproval,
pub sandbox_policy: SandboxPolicy,
pub cwd: PathBuf,
pub collaboration_mode: CollaborationMode,
pub reasoning_effort: Option<ReasoningEffort>,
pub reasoning_summary: ReasoningSummary,
pub personality: Option<Personality>,
pub session_source: SessionSource,
}