将项目说明按主题集中到 docs,补齐根目录 README 和 AGENTS,移除弃用方案并保留有效测试记录与未实现提案。同步文档索引、引用及改动日志生成路径,README 增加 GitHub Markdown 导航和 Mermaid 图。 - fix(client): 统一状态与操作文案,录制和截图成功后再显示完成提示 - test(client): 按文件名核对媒体类型,避免依赖时间戳排序 验证:23 份项目文档、144 处本地引用、27 条外链、2 张 Mermaid 图;前端构建和 12 项测试;截图与录制的 4 条异步反馈路径;Windows Rust 编译检查和后端测试。后端 40 项返回成功,其中 3 项 ffmpeg 集成用例因本机缺少工具而未实际执行。
2.1 KiB
2.1 KiB
版本维护
版本号与改动记录由 scripts/version.mjs 从 Git 历史计算。以下命令从仓库根目录执行:
node scripts/version.mjs --write
node scripts/version.mjs --check
node scripts/version.mjs --print
--write 写回派生文件,--check 检查当前版本是否与历史一致,--print 输出计算结果。
提交与版本规则
提交标题采用 Conventional Commits:type(scope): 说明。
| 当前区间内的提交 | 版本增量 |
|---|---|
BREAKING CHANGE: 或 type!: |
major |
feat |
minor |
fix / perf |
patch |
| 其他类型 | 版本号不变,更新构建号 |
构建号取 git rev-list --count HEAD。提交正文中以 - 开头、且内容符合 type(scope): 说明 的行,也会作为独立条目归类,适合记录 squash 提交中的多项改动。历史发布按标签区间重新计算,不从上一次生成的文件续写。
派生文件
| 文件 | 用途 |
|---|---|
version.json |
根固件的 build.rs 读取,编译期注入 RMIC_VERSION* |
docs/releases/changelog.md |
供人阅读的改动记录 |
docs/releases/changelog.json |
供程序读取的当前区间记录 |
desktop/src/lib/version.ts |
UI 版本标签与线路协议号 |
desktop/package.json、desktop/src-tauri/tauri.conf.json 的 version |
安装包命名与系统中的应用版本 |
这些文件由同一次计算生成;改动记录应修改提交信息或生成脚本,再运行 --write。自动版本机制建立前的说明保存在早期人工记录。
固件与客户端的版本对应
版本沿 git → version.json → 固件二进制 → Hello 报文 → 客户端界面 传递。图传板每 2 秒广播语义化版本、构建号和编译时的线路协议号,布局见UDP 协议。
设置中的绑定列表显示固件版本,裁判端在各路画面下方显示对应版本。线路协议不匹配时,客户端拒收视频并提示双方协议号,便于判断是否需要重烧固件或更换客户端。