codex-web-v0.2.0
这次工作主要完成了 Web 性能重构、Web 交互修复、生产启动优化。
用户可见改进
- 聊天短对话改为从顶部开始显示,不再贴着底部出现。
- 长历史首次打开时稳定定位到最新消息。
- 用户主动向上阅读后,不会被异步内容高度变化强制拉回底部。
- About 页恢复“检查更新”按钮,当前保持禁用,为后续 Web 更新功能预留入口。
- About 页操作系统改为显示 app-server 实际运行环境,例如 Linux、Windows、macOS。
- About、CLI、Sentry 和 app-server 客户端版本统一读取
package.json.version。
性能优化
- App-server 状态改为 selector 订阅,避免无关状态变化导致整个页面重复渲染。
- 普通历史 React commit 从约
54/42降至5/25,长历史从207/142降至18/17。 - 聊天历史接入动态高度虚拟列表,60 条消息通常只挂载约 11 至 13 条。
MessageList最慢渲染从约205 ms降至61.1 ms。- 流式消息按动画帧合并更新,输入框和消息组件增加稳定渲染边界。
- Mermaid、KaTeX、Shiki 等重模块改为按内容需要动态加载。
- 普通 Markdown 不再提前加载数学、图表和代码高亮能力。
- 清理无生产引用依赖,缩小依赖图和首屏加载范围。
- 生产服务入口改为预编译 bundle:
- 启动中位数降低约
36.41% - 入口 RSS 降低约
105.97 MiB
- 启动中位数降低约
性能诊断能力
- 建立可重复的开发/生产性能基线,覆盖普通历史、长历史、普通 Turn、Skill Turn 和重 Markdown。
- 增加默认关闭的生产 Source Map 诊断开关。
- 使用无扩展 Headless Chromium 完成 Long Task 源码归因。
- 确认代码高亮冷启动是部分内容场景成本,但没有项目源码热点达到继续修改组件的门槛。