diff --git a/CHANGELOG.md b/CHANGELOG.md index b54c19a..45a4d02 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ > 所以不是每个版本号都有条目。条目格式 `## <版本> — <日期>`,新条目加在最上面。 > 工程口径的完整记录见 `PROGRESS.md` / git log。 +## 0.62.6 — 2026-08-06 + +- 修复对话区宽度较窄时模型标签被拆成两行的问题。 + ## 0.62.5 — 2026-08-06 - 修复新对话顶部模型控件换行以及生图、生视频模型入口缺失的问题;对话模型与媒体模型现在保持在同一行。 diff --git a/PROGRESS.md b/PROGRESS.md index af624d6..43d3a0d 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -2,7 +2,7 @@ > 配合 `DESIGN.md`。本文件只记 phase 状态、决策偏差、文件量、下一步。每条 1-2 句:做了啥 + 关键判断;细节查 `git log` / `git diff` / `DESIGN §7.9`。 -最后更新:2026-08-06(新对话模型控件单行修复,bump 0.62.5) +最后更新:2026-08-06(模型标签禁止断行,bump 0.62.6) --- @@ -23,6 +23,7 @@ ### 2026-08-06 +- **08-06 / 0.62.6 / 模型标签禁止断行**:对话顶部模型控件增加不可断行约束,中栏宽度收紧时优先压缩下拉框,不再把“模型”两个汉字拆成两行;静态前端与更新日志共 12 项 unittest、diff 检查通过。纯样式修复,无 schema、migration、HTTP API、依赖或运行方式变化,未连接生产 DB。 - **08-06 / 0.62.5 / 新对话模型控件单行 + 媒体入口恢复**:新对话顶部改用专用的 `draft-controls` 单行布局,不再复用历史 task meta 的强制换行 spacer;模型清单异步加载完成后统一重绘草稿 meta,同时恢复既有“⚙ 媒体”入口及生图/生视频选择弹层。相关静态前端、无 DB 路由及更新日志共 34 项 unittest、JavaScript 语法与 diff 检查通过;当前环境无可用浏览器实例,未连接生产 DB。无 schema、migration、HTTP API、依赖或运行方式变化。 - **08-06 / 0.62.4 / 新对话创建前选择模型 + 目录浮层优化**:快速新对话草稿在顶部复用既有模型选择位置,只展示当前用户可用模型并在首次发送或上传附件懒创建 task 时持久化所选档位;清单失败继续由后端默认模型兜底。工作目录候选改为视口级浮层,按可用空间自动向上或向下展开,不再扩大 `chat-stream` 滚动范围;窄屏保持标题与模型同排。相关静态前端、无 DB 路由及更新日志共 34 项 unittest、JavaScript 语法与 diff 检查通过;当前环境无可用浏览器实例,未连接生产 DB。无 schema、migration、HTTP API、依赖或运行方式变化。 - **08-06 / 0.62.3 / PPT 取消定向模型**:删除 ppt skill frontmatter 的 `glm.pro52` 定向配置,load 后继续沿用 task 当前模型,显式选模型与通用 skill 定向机制保持不变。同步更新 Skill 清单与设计记录;定向模型 7 项 unittest、PPT frontmatter 解析及 diff 检查通过;无 schema、migration、HTTP API、依赖或运行方式变化,未连接生产 DB。 diff --git a/core/__init__.py b/core/__init__.py index ec20931..9de5629 100644 --- a/core/__init__.py +++ b/core/__init__.py @@ -1,3 +1,3 @@ # zcbot 版本号单一事实源:web/app.py 的 FastAPI version、/healthz 返回、前端展示都引这里。 # 改版本只动这一行。 -__version__ = "0.62.5" +__version__ = "0.62.6" diff --git a/tests/test_static_vendor.py b/tests/test_static_vendor.py index 09e7744..7cc230d 100644 --- a/tests/test_static_vendor.py +++ b/tests/test_static_vendor.py @@ -119,6 +119,7 @@ class StaticVendorTests(unittest.TestCase): self.assertIn("${renderMediaModelTrigger()}", chat_js) self.assertIn("bindMediaModelTrigger();", chat_js) self.assertIn("#chat-meta.draft-meta { flex-wrap:nowrap; }", html) + self.assertIn(".mdl-wrap { white-space: nowrap; }", html) self.assertNotIn("new-chat-model-row", chat_js) self.assertIn("function positionDraftFolderOptions()", chat_js) self.assertIn("#new-chat-dir-options { position:fixed;", html) diff --git a/web/static/dev.html b/web/static/dev.html index cd5ca13..1bde828 100644 --- a/web/static/dev.html +++ b/web/static/dev.html @@ -728,6 +728,7 @@ min-width:0; margin-left:auto; } /* 模型下拉标签:桌面文字 / 手机 emoji 二选一(swap 在 @media 640px 内) */ + .mdl-wrap { white-space: nowrap; } .mdl-icon { display: none; } /* 同 wd 并发软警告 banner — 非阻塞,只提示中间产物互覆风险 */ #wd-concurrent-warn { padding: 6px 12px; border-bottom: 1px solid #f0c36d;