维刻 Vex
GitHub
维刻 Vex / 文档 / 第二轮产品复核

第二轮产品复核

日期:2026-10-18。针对当前 Flutter 产品继续检查,不以浏览器原型代替实际应用,也不把通过测试等同“功能全部完成”或“98% 还原”。本轮保持 0.3.1+6,不创建发布标签;下述修复尚未进入公开的 v0.3.1 安装包。

已确认并修复

场景 原问题 本轮处理
恢复快照损坏或写入中断 仅依赖主文件不足以保护草稿 依次读取主文件、已落盘临时文件、上一份可读快照;拒绝损坏字段,保存时捕获快照并串行写入。明确丢弃时删除备份,避免已丢弃内容重新出现
设置读取失败 设置与草稿在同一异常边界,可能跳过旧草稿读取;新写作后的快照会遗漏旧草稿 恢复读取独立执行;完全无法读取恢复记录时阻止新草稿覆盖它,保留文件供下次启动重试;没有新草稿时不阻止正常关闭。自动保存仍默认关闭
关闭期间继续输入 保存或刷新恢复记录时新增的输入,可能在关闭后丢失 保存全部后复查脏文档,最终恢复写入前后复查修改版本;有新内容则保留窗口,允许再次保存后关闭
非 Windows 源码 固定高度行号与真实换行、文字缩放不一致 按真实输入控件的光标几何绘制可见行号,匹配字体与缩放;覆盖空行和末尾换行,按文档恢复滚动位置
窄桌面标题栏 菜单和工具占满空间,窗口关闭按钮可能被挤出 按实测文字宽度选择完整菜单、简化助记符或收纳菜单;窗口按钮保持在右侧,七类菜单和 Alt 菜单入口保留
排版浮层 Windows 原生窗口中 Esc 偶尔无法关闭 浮层提供明确的焦点与 Esc 快捷键;控件和原生集成均检查打开后、选卡后关闭
内置阅读与关于 鸣谢、日志跟随界面强调色;MIT 链接偏到信息列右侧 内置正文使用独立白底/深色阅读配色,保留外框主题;MIT 与同列信息左对齐
检查更新 只显示远端版本,不能准确说明是否有更新 按语义版本比较,不把构建号当新版本;区分最新、可更新、本机较新、无正式版本与本机版本未知。请求含整体截止时间、体积限制、销毁取消和失败重试,发布页限定为本仓库
文档阅读链接 无法通过学习资料中的相对链接打开另一篇文档 支持相对 .md、.markdown、.txt 与 文档.md#章节,中文/空格路径和上级目录;复用已打开文档,保留未保存内容。异步完成不抢走较新的文档焦点,失败时保留原文并提示

设置异常和关闭期间输入的关键回归先复现失败,再修复复跑。草稿写入失败时不能假装保存成功;若恢复文件始终不可读,有未保存新内容的用户需先保存原文件,再关闭或重启重试。

本地文档链接只在 Vex 内打开支持的文本文件,不通过系统执行程序,也不自动访问网络共享。没有实际路径的手机选择器副本或未保存草稿,不能假设相对目录存在;会提示先保存。手机系统文件提供程序授权仍需真机验收。演示模式的链接行为不在本次跨文档导航范围内。

自动回归

工作目录 检查 结果
packages/vex_markdown_core dart test 24 项通过
packages/vex_editor flutter test --no-pub 223 项通过
packages/vex_mindmap flutter test --no-pub 16 项通过
apps/vex flutter test --no-pub 251 项通过
仓库根目录 flutter analyze --no-pub --fatal-infos 无问题
仓库根目录 全部已跟踪 Dart 文件的格式检查 无需修改;Windows 分批传参,避免命令行长度上限
仓库根目录 python -m unittest discover -s scripts/tests -v 55 项通过
仓库根目录 design/scripts/verify*.cjs 七组原型契约通过
仓库根目录 python scripts/sync_brand_assets.py --check 与品牌源一致

合计 514 项 Dart/Flutter 测试,不包括下述一项 Windows 原生集成;测试数不换算为视觉还原率。非 Windows 源码行号用 Android、iOS、macOS、Linux 平台主题与不同文字缩放验证,实际运行平台仍是本机测试环境,不是上述系统的真机认证。

Windows 原生检查

apps/vex/integration_test/editor_ux_test.dart 通过真实 Windows Debug 构建和原生窗口运行,生成 11 张非空截图:

  • 简约/书卷排版的斜体示例、源码行号、四级标题排版浮层。
  • 明/暗关于及可更新状态、800px 桌面菜单和右侧窗口按钮。
  • 明/暗独立更新日志阅读窗口。
  • 1280px 与 390px 的跨文档链接和目标章节跳转。

截图位于本机 artifacts/product-audit-2026-10-18/,生成产物不提交。已核看上述截图,确认浮层没有残留在关于对话框后、信息列左对齐、正文颜色独立和窄窗口无操作按钮遮挡。标题间距仍较宽松,属于后续视觉校准项;本轮不据此宣称全部语法和排版无问题。

集成中的更新结果由内存测试服务提供,不是真实下载/安装;链接测试使用内存文件服务与真实渲染/导航,不能冒充系统文件提供程序测试。原生文件读取与目录枚举另有临时目录测试。390px 为 Windows 窄窗口,不代表物理手机、触控软键盘或系统输入法验收。

powershell
$env:VEX_CAPTURE_DIR = Join-Path $PWD 'artifacts/product-audit-2026-10-18'
$env:CMAKE_BUILD_PARALLEL_LEVEL = '1'
$env:CL = '/MP1'
Push-Location apps/vex
try {
    flutter test --no-pub integration_test/editor_ux_test.dart -d windows
} finally {
    Pop-Location
}

重新审视产品

以下按用户风险和实际使用影响排序,均未宣布完成:

优先级 仍需完成 用户影响与验收方向
高 完整更新流程 当前只有检查与发布页入口。需匹配平台/架构、流式下载、进度/取消/重试、SHA256 校验、启动安装器和未保存内容保护;Windows 必须确认安装器真正就绪后再退出。参考相邻 Vex 的 VexUpdateService.cs、WindowsUpdateInstaller.cs 和共享 Toolkit,不能把打开网页当作自动更新
高 MCP 系统安全凭据 令牌仍随普通偏好持久化,尚未接入系统凭据库。已有本机绑定、鉴权和修改确认不等于静态凭据安全;需验证系统解锁失败和更换令牌的行为
高 大文件与真实输入 非 Windows 源码仍为整篇 TextField,行号修复不等于长文档虚拟化。需在低配/无独显电脑及物理移动设备测文件切换、最差输入时延、滚动、章节跳转和系统中日文候选,不能用桌面窄窗口替代
中 复杂 Markdown 排版 常见代码、列表、斜体与链接已有回归,特殊行内公式、图片、引用式链接、上下标基线及全语法换行一致性仍需完善;阅读留白和字号应在统一字体/缩放下对照原型
中 原生安装与外部工作流 macOS/Linux 原生运行、安装/升级/卸载及实际打印、Word 页面、系统文件授权仍需验收;本轮没有重装各平台安装包,安装器的多 DPI 清晰度也未全面验证
中 文档导航的连续性 跨文档链接现在可用,但仍可补“返回上次阅读位置”的导航历史和演示内链接策略;需要与文件树/大纲跳转的操作习惯一起确定,不随意增加常驻按钮
持续 工程维护 工作区 ViewModel 较大、部分全局刷新粒度与外部文件轮询仍可改善;应在性能测量和职责边界明确后逐项拆分,不用无关重构混入功能修复

iOS IPA 与 HarmonyOS HAP 发布按用户确认继续暂缓。这不代表原生 iOS、鸿蒙手机/平板/电脑适配已经完成。98% 原型还原仍缺完整测量矩阵,本轮不升级版本或触发正式发布。

💬 评论暂未开启
有疑问或建议,欢迎到 GitHub 提交 Issue 参与讨论。
tems[selIndex] as HTMLAnchorElement).click(); } } });