Skip to content

refactor(models): 重构主模型设置流程与同步渲染机制#254

Merged
1186258278 merged 2 commits intoqingchencloud:mainfrom
friendfish:refactor/model-rotation-sync
Apr 26, 2026
Merged

refactor(models): 重构主模型设置流程与同步渲染机制#254
1186258278 merged 2 commits intoqingchencloud:mainfrom
friendfish:refactor/model-rotation-sync

Conversation

@friendfish
Copy link
Copy Markdown
Contributor

@friendfish friendfish commented Apr 25, 2026

本次提交重构了模型管理页面的状态流转逻辑,以降低业务侵入性并提升UI同步的健壮性。

核心变更

1. 状态流转机制重构与解耦:

  • 重构 setPrimary 函数:将原来散落在特定 UI 按钮点击事件中的“备选链轮转”业务逻辑抽离,封装出独立的 rotateFallbackChain 处理流程。
  • 入口归一化:现在无论是从“系统主/备模型”模块,还是从“模型供应商”模块设置主模型,底层状态流转统一收口于 setPrimary。这不仅清除了多余的面条代码,更彻底解决了由于逻辑遗漏导致的数据污染(切换主模型时,旧模型凭空消失、新模型未能从备选链中剔除,进而导致页面重载时状态被修正机制复原的问题)。

2. 响应式双向渲染同步:

  • 规范化数据变更后的渲染调用流程,确保底层 state 改变后统一、完整地触发 renderProvidersrenderDefaultBar
  • 收益:修复了原先在顶部设置主模型后,底部提供商卡片无法同步更新绿色高亮(当前主模型)视觉状态的 Bug。

friendfish and others added 2 commits April 25, 2026 22:02
设为主模型时统一走 setPrimary 后,fallback 链轮转需要额外处理历史异常配置:
- 过滤已不存在的模型,避免删除旧主模型后又被塞回 fallback 链
- 对 fallback 链去重,避免旧配置中已有重复项时继续放大重复
- 保持新主模型从 fallback 链中移除、旧主模型降级到链尾的原设计
@1186258278 1186258278 merged commit 2ad5e2d into qingchencloud:main Apr 26, 2026
3 checks passed
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