Skip to content

ModelHarbor v0.1.6

Choose a tag to compare

@Zomcxj Zomcxj released this 01 Nov 06:55
· 4 commits to main since this release

ModelHarbor v0.1.6——DSH 档位补丁文档读写 + 界面视觉层打磨

新增

  • DSH 档位补丁文档读写:DSH 0.2 起 provider 配置位于 ~/.dsh/profiles/{desktop,sdk}/cordis.patch.yml(llm-pi-ai 条目的 config.providers),settings.yaml 降级为一次性导入源。本版按新形态读写:保存只改写 providers 块(文本级替换),文件头注释与桌面档其余 9 个补丁条目原样保留;无 provider 时写 {};旧式 settings.yaml 形态仍可解析,写入补丁路径时自动转换形态。
  • 对档镜像:桌面档与 sdk 档必须一致。主写入成功后,用同一份结果渲染进对档自己的文档(保住对档的文件头与其它条目);对档不含 llm-pi-ai 条目不镜像(避免整份文档被新文档覆盖,丢掉对档其它条目)。不变量:镜像档的 provider 集合 == 主文档的 provider 集合。
  • 页头显示当前源文档:DSH 页在「写入」路径旁多一行「已读: <档位>/<文件名> · N 个 provider / M 个模型」,悬停显示完整路径。本工具同一时刻只加载一份源文档、各页共享同一份数据(见 README),这一行让「现在读的是哪一份」一眼可辨。
  • 点击反馈脉冲:页签 / 工具栏 / chip 被点击时给出强调色脉冲。
  • 用量页行悬停动效:行高亮渐入 + 主题圆角(原为硬切与硬编码圆角)。

修复

  • DSH 跨格式保存不再留住目标档多余的 provider:从某一页保存到 DSH 档时,本应由界面列表决定目标档有哪几个 provider(其它 agent 一直是这个语义),但 DSH 档的 provider 容器没被找到,于是界面上删掉的 provider 保存后照样回来。现两种文档形态统一为:集合与顺序都取自界面,同名 provider 仍保守合并——目标档里 UI 不建模的字段(retryPolicy / timeoutMs)保留。
  • DSH 镜像对档不再丢 provider:镜像按主文档保住的集合渲染,而不是按界面原始列表整体替换(曾把对档从 12 个削到 9 个)。
  • 混合分隔符路径也能镜像:路径同时含 \ 与 / 时(手输路径会出现)此前会被当成补丁文档处理却静默不镜像,两档就此漂移。
  • 输入框聚焦框可见:egui 用 visuals.selection.stroke 画聚焦框,而本工具该字段是「强调色上的墨色」(保证选中文字可读),导致深色主题聚焦框纯黑、浅色主题纯白,落在面板上都看不见;未聚焦态却有主题描边,于是点进输入框边框像「消失」。现统一到独立聚焦环,23 处输入框全部收口。
  • 开关可用键盘操作:开关此前由 allocate_exact_size(.., Sense::click()) 生成自动 id,调用方传入的 id 只用于动画状态,request_focus 静默失效。改为以调用方 id 交互;按钮、开关、工具栏图标、chip 一并补齐聚焦环。
  • 状态栏按语义着色:信息 / 完成 / 失败分三色;「一键保存」取各部分里最差级别。
  • 图表 tooltip 表格化:日期头 + 分隔线 + 名称固定槽 + 数值右对齐 + 合计行。
  • 系列色在两套主题下都可读:原按固定偏移取色,浅色主题下第 2 条系列色对比度仅 1.68(几乎不可见)。现按相对亮度收敛,并按色相 + chroma 双维度保证两两区分度 ≥ 40。
  • 拖拽 ghost 跟随形状预设:原为固定圆角与字号;并修复拖页签完全不画 ghost 的缺口。
  • 窗口圆角跟随形状预设:此前是 egui 默认的 6。
  • 禁用态保存按钮不再用强调色:褪色的强调色仍读作「主操作可用」,中性底才读作「无事可做」。
  • 探测身份版本刷新:User-Agent 更新到当前主流版本(opencode/2.0.32、claude-cli/2.0.28),Claude Code 身份补上 X-App: cli;有意不发 anthropic-beta(过期的 beta 声明会改变上游行为)。

内部改进(无行为变化)

  • 动效统一到同一条缓动曲线并按「动的面积」分四档时长。
  • 依赖与安全:rustls-webpki 0.103.16、webpki-roots 1.0.11(CVE-2026-111943);zstd 批量公告走 .cargo/audit.toml 忽略(附逐条理由与出口条件,上游升级到 0.14 线后删除)。

注意

  • DSH 跨格式保存现在会让目标档的 provider 集合与界面一致——界面里删掉的 provider 会被真删。写入前会自动备份到 ~/.modelharbor/backups。
  • 在 DSH 页保存时,界面显示的是当前加载的源文档的 provider(各页共享一份数据)。若发现显示的 provider 数与你预期的 DSH 档不一致,看页头那行「已读: …」确认当前源文档是哪一份。