Skip to content

模型页添加/删除后配置残留:defaults.model.fallbacks / defaults.models 未清理 #214

@wuya110

Description

@wuya110

问题

模型配置页在“添加 / 删除模型”或“删除 provider”之后,OpenClaw 配置里会残留已经无效的模型引用,导致:

  • 配置看起来越改越乱
  • 删除后仍残留旧模型名
  • 后续再次保存时这些旧引用可能继续被写回

复现现象

实际看到过残留在这些位置:

  • agents.defaults.model.fallbacks
  • agents.defaults.models

表现形式类似:

  • provider/model 已经删掉了
  • fallbacks 里还留着 provider/model
  • defaults.models 里也还挂着对应键

初步判断

问题不只是 UI 显示,更像是“写配置时合并保留旧字段,但删除路径没有同步清理失效引用”。

也就是说:

  • provider / model 从 models.providers.* 里删掉了
  • 但没有同步清理:
    • agents.defaults.model.primary(若它指向被删模型)
    • agents.defaults.model.fallbacks
    • agents.defaults.models

建议修复

保存模型配置后,基于当前仍然存在的模型全集做一次引用清理:

  1. 收集所有有效模型 provider/model
  2. 如果 primary 已无效,切到一个仍存在的模型或置空
  3. fallbacks 只保留仍存在、且不等于 primary 的项
  4. defaults.models 只保留仍存在的模型键

期望

模型页删除模型 / 删除 provider 后,配置应该同步收干净,不应再残留无效 fallback / defaults.models 引用。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions