diff --git a/docs/task/90-Sense项目根目录Windows启动脚本.md b/docs/task/90-Sense项目根目录Windows启动脚本.md index 84ba4a6..c576b1b 100644 --- a/docs/task/90-Sense项目根目录Windows启动脚本.md +++ b/docs/task/90-Sense项目根目录Windows启动脚本.md @@ -2,16 +2,16 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Task-90-Sense项目根目录Windows启动脚本 wiki_url: https://git.ilapage.cn/ila/yovision/wiki/Task-90-Sense%E9%A1%B9%E7%9B%AE%E6%A0%B9%E7%9B%AE%E5%BD%95Windows%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC.- -wiki_revision: ce4c4bd2d4eaf73b1f29bc4803e93024bc25dc26 -synchronized_at: 2026-08-15T06:46:01Z +wiki_revision: 336096c2dcc38b2129d0238c79103a71bcd7f65e +synchronized_at: 2026-08-15T06:48:10Z # 90 Sense项目根目录Windows启动脚本 -- 类型:需求 / 缺陷 / 重构 -- 所属 Epic:# -- 所属 MVP / 版本:# -- 状态:待验收 / 已完成 +- 类型:需求 +- 所属 Epic:#7 +- 所属 MVP / 版本:#8 +- 状态:待验收 - 日期:2026-08-15 - Gitea 工单:https://git.ilapage.cn/ila/yovision/issues/90 - Wiki 页面:Task-90-Sense项目根目录Windows启动脚本 @@ -19,32 +19,46 @@ synchronized_at: 2026-08-15T06:46:01Z ## 背景与目标 - +#70 建立的 Windows 交付包入口位于 `Sense/dist/sense-windows-amd64/start-sense.bat`,用户从项目目录启动时需要进入多层目录。工单 #90 增加项目根目录快捷入口,同时保持包内脚本为配置、迁移和服务编排的唯一事实源。 ## 最终方案 - +新增 `Sense/start_sense.bat`。脚本使用 `%~dp0` 定位同一项目下的交付包,不依赖调用者当前工作目录;通过 `call ... %*` 原样透传 production、demo 和开关参数,并保存子脚本退出码。交付包入口不存在时输出预期路径和构建命令,返回退出码 2。 + +脚本不读取 `sense.env`、不处理密码或 token、不自动构建,也不直接启动 Go/Node 开发服务。项目 README 与 Wiki Project-Profile 记录快捷命令;#70 的包内说明和运行脚本保持不变。 ## 修改文件 -- `<文件>`:<改动说明> +- `Sense/start_sense.bat`:项目根目录 Windows 启动入口。 +- `Sense/README.md`:增加 production/demo 快捷启动说明与职责边界。 +- Wiki `Project-Profile`、`docs/00-project-profile.md`:记录长期启动入口。 +- `wiki-docs.json`、`docs/task/90-Sense项目根目录Windows启动脚本.md`:登记任务归档镜像。 ## 验收结果 | 验收标准 | 结果 | |---|---| -| | 通过 / 未通过 | +| 从任意工作目录定位包内入口 | 通过;从 `C:\Windows` 使用隔离夹具和当前本地交付包验证 | +| 参数和退出码原样传递 | 通过;`demo -SkipMigration "two words"` 原样到达假包内脚本,退出码 17 保持 | +| 缺失交付包时明确失败 | 通过;输出预期路径和构建命令,退出码 2 | +| 不包含秘密、不解析配置、不复制启动实现 | 通过;脚本仅 17 行定位、检查、调用和退出码逻辑 | +| 项目说明和 Wiki 镜像一致 | 通过;受影响页面定向同步与检查通过 | ## 测试 -- 执行命令:`<命令>` -- 结果: -- **未验证部分**: +- 隔离缺失包夹具:从 `C:\Windows` 调用,错误信息可行动,退出码 2。 +- 隔离假包内脚本:参数输出为 `demo -SkipMigration "two words"`,子脚本退出码 17 被根入口保留。 +- 当前 #70 本地交付包:从 `C:\Windows` 分别调用包内入口和根入口并传入安全的无效模式,两者均返回参数校验退出码 1,证明真实路径连接和退出码一致。 +- 敏感关键词扫描:脚本不含 password、token、secret、database URL 或 credential。 +- `git diff --check`:通过。 +- Wiki 受影响页面定向 `sync_wiki_docs.py --check --config .tmp-wiki-90.json`:通过。 +- **未验证部分**:未通过根入口实际启动 production/demo 服务,以避免在本工单重复操作数据库和服务进程;真实启动链已由 #70 验证。完整 Wiki 全量检查暂受待验收 PR #89 已更新但尚未合入 `dev` 的三个 #70 镜像影响,#90 只对不冲突页面做定向一致性检查。 ## 遗留问题 - +- `dev` 合入 #70 后才包含根入口所调用的版本化包内构建和启动脚本;在此之前根入口会按设计提示先构建且返回 2。 ## 相关提交 -- `<提交哈希>` <提交说明> +- `a865dda` 增加 Sense 根目录启动脚本。 +- `06d982d` 记录 Sense 根目录启动方式。