mirror of
https://github.com/openai/codex.git
synced 2026-09-28 08:43:01 +08:00
Add GPT-6 Sol and Luna to the 0.156 model catalog (#47332)
Backport the catalog, migration, and rate-limit updates with release-specific conflict resolutions. Refresh the seven core scenario snapshots whose collaboration-tool descriptions change with the model catalog. GitOrigin-RevId: d3a093d18ce44a903383504ab8f5cbbc911d602d
This commit is contained in:
@@ -51,6 +51,7 @@ async fn daemon_startup(command: &str) -> Result<()> {
|
||||
suppress_unstable_features_warning = true\nanalytics.enabled = false\n\
|
||||
windows.sandbox = \"unelevated\"\n\
|
||||
tui.disable_paste_burst = true\n\
|
||||
notice.model_migrations.\"gpt-5.6-terra\" = \"gpt-6-sol\"\n\
|
||||
[projects.{}]\ntrust_level = \"trusted\"\n",
|
||||
serde_json::to_string(&workspace_path)?,
|
||||
),
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ Scenario: Astra asks who a launch update is for, keeps working, and receives the
|
||||
|
||||
## Window 1
|
||||
-- request 1 (request) --
|
||||
00:additional_tools/developer (3; hash=9e8e744a3a55a2dd):
|
||||
00:additional_tools/developer (3; hash=fbbc8f2ad7c8ce86):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -15,7 +15,7 @@ Scenario: Astra asks who a launch update is for, keeps working, and receives the
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@ Scenario: Astra receives host and handler timings on completed and failed code-m
|
||||
|
||||
## Window 1
|
||||
-- request 1 (turn) --
|
||||
00:additional_tools/developer (3; hash=9e8e744a3a55a2dd):
|
||||
00:additional_tools/developer (3; hash=fbbc8f2ad7c8ce86):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -14,7 +14,7 @@ Scenario: Astra receives host and handler timings on completed and failed code-m
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ Settings:
|
||||
text: {"verbosity":"low"}
|
||||
tool_choice: "auto"
|
||||
-- request 1 (request) --
|
||||
00:additional_tools/developer (3; hash=d78b689d87e8c03e):
|
||||
00:additional_tools/developer (3; hash=ff82d1ef7cef6cad):
|
||||
- namespace/functions; hash=97852c93915dad58
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -24,7 +24,7 @@ Settings:
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+4
-4
@@ -16,7 +16,7 @@ Settings:
|
||||
text: {"verbosity":"low"}
|
||||
tool_choice: "auto"
|
||||
-- request 1 (turn) --
|
||||
00:additional_tools/developer (3; hash=9e8e744a3a55a2dd):
|
||||
00:additional_tools/developer (3; hash=fbbc8f2ad7c8ce86):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -24,7 +24,7 @@ Settings:
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
@@ -190,7 +190,7 @@ Settings:
|
||||
## Window 2 (after request 3: input diverged at item 02)
|
||||
Settings: same as window 1
|
||||
-- request 4 (turn) --
|
||||
00:additional_tools/developer (3; hash=9e8e744a3a55a2dd):
|
||||
00:additional_tools/developer (3; hash=fbbc8f2ad7c8ce86):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -198,7 +198,7 @@ Settings: same as window 1
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+4
-4
@@ -16,7 +16,7 @@ Settings:
|
||||
text: {"verbosity":"low"}
|
||||
tool_choice: "auto"
|
||||
-- request 1 (turn) --
|
||||
00:additional_tools/developer (3; hash=9e8e744a3a55a2dd):
|
||||
00:additional_tools/developer (3; hash=fbbc8f2ad7c8ce86):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -24,7 +24,7 @@ Settings:
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
@@ -113,7 +113,7 @@ Settings:
|
||||
## Window 2 (after request 2: input diverged at item 00)
|
||||
Settings: same as window 1
|
||||
-- request 3 (turn) --
|
||||
00:additional_tools/developer (3; hash=d9bfc9d2033f8c93):
|
||||
00:additional_tools/developer (3; hash=175a24d9dd32c0c4):
|
||||
- namespace/functions; hash=8c17932a39355f2d
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -121,7 +121,7 @@ Settings: same as window 1
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ Settings:
|
||||
text: {"verbosity":"low"}
|
||||
tool_choice: "auto"
|
||||
-- request 1 (turn) --
|
||||
00:additional_tools/developer (3; hash=d9bfc9d2033f8c93):
|
||||
00:additional_tools/developer (3; hash=175a24d9dd32c0c4):
|
||||
- namespace/functions; hash=8c17932a39355f2d
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -24,7 +24,7 @@ Settings:
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=91f6de0e2773854f
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=0be1d3f8e1f49dca
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ Settings:
|
||||
text: {"verbosity":"low"}
|
||||
tool_choice: "auto"
|
||||
-- request 1 (turn) --
|
||||
00:additional_tools/developer (3; hash=9d21738c014fb8eb):
|
||||
00:additional_tools/developer (3; hash=9fe5eab151c06aac):
|
||||
- namespace/functions; hash=e7db0a45c4ec3157
|
||||
- custom/exec
|
||||
- function/wait
|
||||
@@ -24,7 +24,7 @@ Settings:
|
||||
- function/request_user_input_async
|
||||
- namespace/clock: Tools for reading and waiting on time.; hash=f402e8c5e9b5e317
|
||||
- function/sleep
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=2943c667577fdb8b
|
||||
- namespace/collaboration: Tools for spawning and managing sub-agents.; hash=1ee3951528ebc076
|
||||
- function/followup_task
|
||||
- function/interrupt_agent
|
||||
- function/list_agents
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -120,7 +120,7 @@ pub(super) fn model_upgrade_for_migration(
|
||||
|
||||
// Saved selections can outlive their catalog entries. Keep only their migration metadata.
|
||||
let (target_model, current_name, target_name) = match model {
|
||||
"gpt-5.4-mini" => ("gpt-5.6-luna", "GPT-5.4 Mini", "GPT-5.6 Luna"),
|
||||
"gpt-5.4-mini" => ("gpt-6-luna", "GPT-5.4 Mini", "GPT-6 Luna"),
|
||||
_ => return None,
|
||||
};
|
||||
Some(ModelUpgrade {
|
||||
|
||||
@@ -179,7 +179,7 @@ async fn model_migration_prompt_only_shows_for_deprecated_models() {
|
||||
));
|
||||
assert!(should_show_model_migration_prompt(
|
||||
"gpt-5.4",
|
||||
"gpt-5.6-terra",
|
||||
"gpt-6-sol",
|
||||
&seen,
|
||||
&presets
|
||||
));
|
||||
@@ -369,8 +369,12 @@ async fn accepted_model_migration_persists_target_default_reasoning_effort() ->
|
||||
let presets = all_model_presets();
|
||||
let mut migration_copies = Vec::new();
|
||||
for (model, replacement) in [
|
||||
("gpt-5.4", "gpt-5.6-terra"),
|
||||
("gpt-5.4-mini", "gpt-5.6-luna"),
|
||||
("gpt-5.4", "gpt-6-sol"),
|
||||
("gpt-5.4-mini", "gpt-6-luna"),
|
||||
("gpt-5.5", "gpt-6-sol"),
|
||||
("gpt-5.6-luna", "gpt-6-luna"),
|
||||
("gpt-5.6-terra", "gpt-6-sol"),
|
||||
("gpt-5.6-sol", "gpt-6-sol"),
|
||||
] {
|
||||
let codex_home = tempdir()?;
|
||||
std::fs::write(
|
||||
@@ -383,7 +387,7 @@ async fn accepted_model_migration_persists_target_default_reasoning_effort() ->
|
||||
.await?;
|
||||
let current_model = config.model.clone().expect("saved model");
|
||||
let upgrade = model_upgrade_for_migration(¤t_model, &presets)
|
||||
.expect("retired selection should still migrate");
|
||||
.expect("catalog selection should have an upgrade");
|
||||
assert_eq!(upgrade.id, replacement);
|
||||
assert!(should_show_model_migration_prompt(
|
||||
¤t_model,
|
||||
@@ -449,11 +453,27 @@ async fn accepted_model_migration_persists_target_default_reasoning_effort() ->
|
||||
assert_snapshot!(migration_copies.join("\n"), @r"
|
||||
GPT-5.4 is no longer available
|
||||
|
||||
Codex now uses GPT-5.6 Terra in place of GPT-5.4. Switch to GPT-5.6 Terra to continue.
|
||||
Codex now uses GPT-6 Sol in place of GPT-5.4. Switch to GPT-6 Sol to continue.
|
||||
|
||||
GPT-5.4 Mini is no longer available
|
||||
|
||||
Codex now uses GPT-5.6 Luna in place of GPT-5.4 Mini. Switch to GPT-5.6 Luna to continue.
|
||||
Codex now uses GPT-6 Luna in place of GPT-5.4 Mini. Switch to GPT-6 Luna to continue.
|
||||
|
||||
Meet GPT-6 Sol
|
||||
|
||||
Our latest Sol is more intelligent and more efficient so your usage limits go further. This model is a great daily driver for complex tasks, especially coding.
|
||||
|
||||
Meet GPT-6 Luna
|
||||
|
||||
Our latest Luna is significantly more efficient, so your usage limits go even further. Reach for it for any job that doesn't require frontier intelligence.
|
||||
|
||||
Meet GPT-6 Sol
|
||||
|
||||
Our latest Sol is more intelligent and more efficient so your usage limits go further. This model is a great daily driver for complex tasks, especially coding.
|
||||
|
||||
Meet GPT-6 Sol
|
||||
|
||||
Our latest Sol is more intelligent and more efficient so your usage limits go further. This model is a great daily driver for complex tasks, especially coding.
|
||||
");
|
||||
Ok(())
|
||||
}
|
||||
@@ -462,16 +482,24 @@ async fn accepted_model_migration_persists_target_default_reasoning_effort() ->
|
||||
async fn model_migration_prompt_respects_hide_flag_and_self_target() {
|
||||
let presets = all_model_presets();
|
||||
let mut seen = BTreeMap::new();
|
||||
// A previously acknowledged intermediate upgrade must not hide the new target.
|
||||
seen.insert("gpt-5.4-mini".to_string(), "gpt-5.6-luna".to_string());
|
||||
assert!(should_show_model_migration_prompt(
|
||||
"gpt-5.4-mini",
|
||||
"gpt-6-luna",
|
||||
&seen,
|
||||
&presets
|
||||
));
|
||||
seen.insert("gpt-5.4-mini".to_string(), "gpt-6-luna".to_string());
|
||||
assert!(!should_show_model_migration_prompt(
|
||||
"gpt-5.4-mini",
|
||||
"gpt-5.6-luna",
|
||||
"gpt-6-luna",
|
||||
&seen,
|
||||
&presets
|
||||
));
|
||||
assert!(!should_show_model_migration_prompt(
|
||||
"gpt-5.6-luna",
|
||||
"gpt-5.6-luna",
|
||||
"gpt-6-luna",
|
||||
"gpt-6-luna",
|
||||
&seen,
|
||||
&presets
|
||||
));
|
||||
@@ -480,31 +508,31 @@ async fn model_migration_prompt_respects_hide_flag_and_self_target() {
|
||||
#[tokio::test]
|
||||
async fn model_migration_prompt_skips_when_target_missing_or_hidden() {
|
||||
let mut available = all_model_presets();
|
||||
available.retain(|preset| preset.model != "gpt-5.6-luna");
|
||||
available.retain(|preset| preset.model != "gpt-6-luna");
|
||||
|
||||
assert!(!should_show_model_migration_prompt(
|
||||
"gpt-5.4-mini",
|
||||
"gpt-5.6-luna",
|
||||
"gpt-6-luna",
|
||||
&BTreeMap::new(),
|
||||
&available,
|
||||
));
|
||||
|
||||
assert!(target_preset_for_upgrade(&available, "gpt-5.6-luna").is_none());
|
||||
assert!(target_preset_for_upgrade(&available, "gpt-6-luna").is_none());
|
||||
|
||||
let mut with_hidden_target = all_model_presets();
|
||||
let target = with_hidden_target
|
||||
.iter_mut()
|
||||
.find(|preset| preset.model == "gpt-5.6-luna")
|
||||
.find(|preset| preset.model == "gpt-6-luna")
|
||||
.expect("target preset present");
|
||||
target.show_in_picker = false;
|
||||
|
||||
assert!(!should_show_model_migration_prompt(
|
||||
"gpt-5.4-mini",
|
||||
"gpt-5.6-luna",
|
||||
"gpt-6-luna",
|
||||
&BTreeMap::new(),
|
||||
&with_hidden_target,
|
||||
));
|
||||
assert!(target_preset_for_upgrade(&with_hidden_target, "gpt-5.6-luna").is_none());
|
||||
assert!(target_preset_for_upgrade(&with_hidden_target, "gpt-6-luna").is_none());
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
|
||||
+1
-1
@@ -6,6 +6,6 @@ Codex just got an upgrade. Introducing GPT-5.5.
|
||||
|
||||
We recommend switching from gpt-5.2 to gpt-5.5.
|
||||
|
||||
Frontier model for complex coding, research, and real-world work.
|
||||
Legacy coding model.
|
||||
|
||||
You can continue using gpt-5.2 if you prefer.
|
||||
|
||||
+5
-6
@@ -1,16 +1,15 @@
|
||||
---
|
||||
source: tui/src/chatwidget/tests/bedrock_catalog_tests.rs
|
||||
assertion_line: 42
|
||||
expression: "render_bottom_popup(&chat, 100)"
|
||||
---
|
||||
Select Model and Effort
|
||||
|
||||
|
||||
› 1. GPT-5.6 Sol (current) Latest frontier agentic coding model.
|
||||
2. GPT-6-Astra Our most capable model for complex, demanding work.
|
||||
3. GPT-5.6 Terra Balanced agentic coding model for everyday work.
|
||||
4. GPT-5.6 Luna Fast and affordable agentic coding model.
|
||||
5. GPT-5.5 Frontier model for complex coding, research, and real-world work.
|
||||
› 1. GPT-5.6 Sol (current) Older coding model for complex work.
|
||||
2. GPT-6-Astra Frontier intelligence for the most demanding work.
|
||||
3. GPT-5.6 Terra Older balanced model for straightforward work.
|
||||
4. GPT-5.6 Luna Older fast and efficient model.
|
||||
5. GPT-5.5 Legacy coding model.
|
||||
6. GPT-5.4 Strong model for everyday coding.
|
||||
|
||||
enter select · esc back
|
||||
|
||||
+8
-9
@@ -1,18 +1,17 @@
|
||||
---
|
||||
source: tui/src/chatwidget/tests/bedrock_catalog_tests.rs
|
||||
assertion_line: 42
|
||||
expression: "render_bottom_popup(&chat, 100)"
|
||||
---
|
||||
Select Model and Effort
|
||||
|
||||
|
||||
› 1. GPT-5.6 Sol (Global) (current) Latest frontier agentic coding model.
|
||||
2. GPT-6-Astra (Global) Our most capable model for complex, demanding work.
|
||||
3. GPT-5.6 Terra (Global) Balanced agentic coding model for everyday work.
|
||||
4. GPT-5.6 Luna (Global) Fast and affordable agentic coding model.
|
||||
5. GPT-5.6 Sol (US cross-region) Latest frontier agentic coding model.
|
||||
6. GPT-6-Astra (US cross-region) Our most capable model for complex, demanding work.
|
||||
7. GPT-5.6 Terra (US cross-region) Balanced agentic coding model for everyday work.
|
||||
8. GPT-5.6 Luna (US cross-region) Fast and affordable agentic coding model.
|
||||
› 1. GPT-5.6 Sol (Global) (current) Older coding model for complex work.
|
||||
2. GPT-6-Astra (Global) Frontier intelligence for the most demanding work.
|
||||
3. GPT-5.6 Terra (Global) Older balanced model for straightforward work.
|
||||
4. GPT-5.6 Luna (Global) Older fast and efficient model.
|
||||
5. GPT-5.6 Sol (US cross-region) Older coding model for complex work.
|
||||
6. GPT-6-Astra (US cross-region) Frontier intelligence for the most demanding work.
|
||||
7. GPT-5.6 Terra (US cross-region) Older balanced model for straightforward work.
|
||||
8. GPT-5.6 Luna (US cross-region) Older fast and efficient model.
|
||||
|
||||
enter select · esc back
|
||||
|
||||
+2
-3
@@ -6,9 +6,8 @@ expression: "render_bottom_popup(&chat, 80)"
|
||||
Select Model and Effort
|
||||
|
||||
|
||||
› 1. Renamed model Balanced agentic coding model for everyday
|
||||
› 1. Renamed model Older balanced model for straightforward
|
||||
work.
|
||||
2. Shared display name (current) Frontier model for complex coding, research,
|
||||
and real-world work.
|
||||
2. Shared display name (current) Legacy coding model.
|
||||
|
||||
enter select · esc back
|
||||
|
||||
+7
-6
@@ -6,11 +6,12 @@ expression: popup
|
||||
Select Model and Effort
|
||||
|
||||
|
||||
1. GPT-6-Astra (default) Our most capable model for complex, demanding work.
|
||||
2. GPT-5.6-Sol Latest frontier agentic coding model.
|
||||
3. GPT-5.6-Terra Balanced agentic coding model for everyday work.
|
||||
4. GPT-5.6-Luna Fast and affordable agentic coding model.
|
||||
› 5. GPT-5.5 (current) Frontier model for complex coding, research, and
|
||||
real-world work.
|
||||
1. GPT-6-Astra (default) Frontier intelligence for the most demanding work.
|
||||
2. GPT-6-Sol Workhorse model for coding and everyday work.
|
||||
3. GPT-6-Luna Fast and affordable model for easier tasks.
|
||||
4. GPT-5.6-Sol Older coding model for complex work.
|
||||
5. GPT-5.6-Terra Older balanced model for straightforward work.
|
||||
6. GPT-5.6-Luna Older fast and efficient model.
|
||||
› 7. GPT-5.5 (current) Legacy coding model.
|
||||
|
||||
enter select · esc back
|
||||
|
||||
+3
-3
@@ -3,11 +3,11 @@ source: tui/src/chatwidget/tests/status_and_layout.rs
|
||||
expression: popup
|
||||
---
|
||||
Approaching rate limits
|
||||
Switch to gpt-5.6-luna for lower credit usage?
|
||||
Switch to gpt-6-luna for lower credit usage?
|
||||
|
||||
|
||||
› 1. Switch to gpt-5.6-luna Fast and affordable agentic coding
|
||||
model.
|
||||
› 1. Switch to gpt-6-luna Fast and affordable model for easier
|
||||
tasks.
|
||||
2. Keep current model
|
||||
3. Keep current model (never show again) Hide future rate limit reminders
|
||||
about switching models.
|
||||
|
||||
@@ -5,7 +5,7 @@ use codex_protocol::openai_models::ModelPreset;
|
||||
use std::convert::Infallible;
|
||||
|
||||
pub(crate) const LUNA_RESERVE_MODEL: &str = "gpt-reserve";
|
||||
pub(crate) const LUNA_MODEL: &str = "gpt-5.6-luna";
|
||||
pub(crate) const LUNA_MODEL: &str = "gpt-6-luna";
|
||||
|
||||
pub(crate) fn model_display_name(model: &str) -> &str {
|
||||
if model.eq_ignore_ascii_case(LUNA_RESERVE_MODEL) {
|
||||
|
||||
@@ -534,7 +534,8 @@ pub(super) fn write_test_config(codex_home: &Path, repo_root: &Path) -> Result<(
|
||||
let repo_root = repo_root.display();
|
||||
let config = format!(
|
||||
"model = \"gpt-5.6-terra\"\nmodel_provider = \"openai\"\n\
|
||||
suppress_unstable_features_warning = true\nanalytics.enabled = false\n\n\
|
||||
suppress_unstable_features_warning = true\nanalytics.enabled = false\n\
|
||||
notice.model_migrations.\"gpt-5.6-terra\" = \"gpt-6-sol\"\n\n\
|
||||
[projects.\"{repo_root}\"]\ntrust_level = \"trusted\"\n"
|
||||
);
|
||||
std::fs::write(codex_home.join("config.toml"), config)
|
||||
|
||||
@@ -603,7 +603,7 @@ requires_openai_auth = false
|
||||
supports_websockets = false
|
||||
|
||||
[notice.model_migrations]
|
||||
"gpt-5.4" = "gpt-5.6-terra"
|
||||
"gpt-5.4" = "gpt-6-sol"
|
||||
|
||||
[projects."{repo_root_display}"]
|
||||
trust_level = "trusted"
|
||||
|
||||
Reference in New Issue
Block a user