Add collaboration_mode override to turns (#9408)

This commit is contained in:
Ahmed Ibrahim
2026-01-16 21:51:25 -08:00
committed by GitHub
Unverified
parent ad8bf59cbf
commit 146d54cede
33 changed files with 281 additions and 13 deletions
+17 -10
View File
@@ -1842,13 +1842,17 @@ async fn submission_loop(sess: Arc<Session>, config: Arc<Config>, rx_sub: Receiv
model,
effort,
summary,
collaboration_mode,
} => {
let collaboration_mode = {
let collaboration_mode = if let Some(collab_mode) = collaboration_mode {
collab_mode
} else {
let state = sess.state.lock().await;
state
.session_configuration
.collaboration_mode
.with_updates(model, effort, None)
state.session_configuration.collaboration_mode.with_updates(
model.clone(),
effort,
None,
)
};
handlers::override_turn_context(
&sess,
@@ -2013,12 +2017,15 @@ mod handlers {
summary,
final_output_json_schema,
items,
collaboration_mode,
} => {
let collaboration_mode = Some(CollaborationMode::Custom(Settings {
model,
reasoning_effort: effort,
developer_instructions: None,
}));
let collaboration_mode = collaboration_mode.or_else(|| {
Some(CollaborationMode::Custom(Settings {
model: model.clone(),
reasoning_effort: effort,
developer_instructions: None,
}))
});
(
items,
SessionSettingsUpdate {