Skip to content

fix(codex-profile): 修改config.toml时保留自定义cm配置 / preserve custom cm provider fields - #399

Merged
qxcnm merged 1 commit into
qxcnm:mainfrom
MDX-Tom:codex/fix-preserve-cm-provider-config
Jul 28, 2026
Merged

fix(codex-profile): 修改config.toml时保留自定义cm配置 / preserve custom cm provider fields#399
qxcnm merged 1 commit into
qxcnm:mainfrom
MDX-Tom:codex/fix-preserve-cm-provider-config

Conversation

@MDX-Tom

@MDX-Tom MDX-Tom commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

变更摘要

  • 修复 Codex 网关 profile 同步时清空 [model_providers.cm] 的问题。
  • 保留用户已有的 provider nameexperimental_bearer_token 及其他自定义字段。
  • 继续由 CodexManager 更新运行所需的 base_urlwire_apisupports_websockets
  • name 缺失时仍补充默认值 CodexManager
  • 新增回归测试,覆盖自定义字段保留及托管字段更新行为。

改动范围

  • Frontend
  • Desktop / Tauri
  • Service
  • Gateway / Protocol Adapter
  • Docs / Governance
  • Workflow / Release

主要文件

  • crates/service/src/codex_profile.rs
  • crates/service/src/codex_profile_tests.rs

验证

  • pnpm -C apps run test
  • pnpm -C apps run build
  • pnpm -C apps run test:ui
  • cargo test --workspace
  • 其他本地验证已说明

已执行的实际验证:

cargo fmt --all -- --check
# PASS

git diff --check
# PASS

cargo test -p codexmanager-service codex_profile::tests:: -- --nocapture
# PASS: 28 passed, 0 failed

# 新回归测试在 main 基线上:
# FAIL: name 从 Custom Gateway 被重置为 CodexManager(exit 101)

# 同一回归测试在修复分支上:
cargo test -p codexmanager-service codex_profile::tests::gateway_config_preserves_custom_managed_provider_values -- --exact --nocapture
# PASS: 1 passed, 0 failed

未执行或未完全通过的验证与原因:

cargo test --workspace
# 未继续执行;更窄的 service 完整测试已暴露仓库现有/时序型失败。

cargo test -p codexmanager-service
# 1368 passed, 2 failed, 3 ignored
# 1. codex_skills FIFO/目录校验用例在 main 基线同样失败。
# 2. SSE keep-alive 时序用例在完整套件中失败,但单独复跑通过。

风险与影响面

  • 改动仅影响 CodexManager 接管的 [model_providers.cm] 合并行为。
  • base_urlwire_apisupports_websockets 仍以 CodexManager 状态为准。
  • 其他 provider 小节、auth.json 写入逻辑和模型目录同步逻辑未改变。

备注

  • 已确认变更与测试数据不包含真实 token、cookie 或 API key。

@MDX-Tom MDX-Tom changed the title fix(codex-profile): preserve custom cm provider fields fix(codex-profile): 修改config.toml时保留自定义cm配置 / preserve custom cm provider fields Jul 28, 2026
@qxcnm
qxcnm merged commit 589ee6b into qxcnm:main Jul 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants