diff --git a/docs/task/13-多子项目与独立交付单元.md b/docs/task/13-多子项目与独立交付单元.md new file mode 100644 index 0000000..071a6f3 --- /dev/null +++ b/docs/task/13-多子项目与独立交付单元.md @@ -0,0 +1,66 @@ + +generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) +wiki_page: Task-13-多子项目与独立交付单元 +wiki_url: http://ilaer.eicp.net:8418/opc/dev_harness/wiki/Task-13-%E5%A4%9A%E5%AD%90%E9%A1%B9%E7%9B%AE%E4%B8%8E%E7%8B%AC%E7%AB%8B%E4%BA%A4%E4%BB%98%E5%8D%95%E5%85%83.- +wiki_revision: 6f20d2a94d681f754d499a129981df1979063f7a +synchronized_at: 2026-08-10T11:08:27Z + + +# 13 多子项目与独立交付单元 + +- 类型:需求 +- 所属 Epic:无 +- 所属 MVP / 版本:无 +- 状态:待验收 +- 日期:2026-08-10 +- Gitea 工单:http://ilaer.eicp.net:8418/opc/dev_harness/issues/13 +- Wiki 页面:Task-13-多子项目与独立交付单元 +- Wiki revision:见本地镜像头 + +## 背景与目标 + +DevHarness 需要兼容一个 Git 仓库包含多个终端、服务或其他独立交付单元的项目。目标是在不引入 monorepo 框架、不自动拆仓的前提下,让项目档案、任务范围和接入指南明确每个子项目的职责、构建测试、版本发布、规则入口及共享契约边界。 + +## 最终方案 + +- Project-Profile 增加“子项目与交付单元”表格,记录职责、技术栈、构建测试、版本发布、规则入口和共享边界。 +- 新项目初始化流程先识别全部子项目与独立交付单元,并指定共享契约的唯一事实来源。 +- 已有项目接入指南增加多应用单仓库判断:技术栈不同本身不要求拆仓;按团队、权限、发布周期、仓库效率、复用关系和契约稳定性决定是否拆分。 +- 单元任务模板增加“子项目影响”,强制记录单端或跨端范围、共享契约变化及各端验证。 +- Harness 严格检查上述核心章节与模板字段,并增加对应单元测试。 +- 未增加 monorepo 工具、自动拆仓或迁移、统一版本机制、CI 生成器,也未修改实际业务项目。 + +## 修改文件 + +- `.gitea/issue_template/task.md`:增加子项目影响字段。 +- `dev_scripts/check_harness.py`:检查多子项目核心文档结构和任务模板字段。 +- `tests/test_harness_docs.py`:增加任务模板子项目影响测试。 +- `docs/00-project-profile.md`:镜像项目档案的子项目与交付单元定义。 +- `docs/07-new-project-documentation-setup.md`:镜像新项目识别交付单元的初始化步骤。 +- `docs/08-existing-project-adoption.md`:镜像多应用单仓库判断与最小规则。 + +## 验收结果 + +| 验收标准 | 结果 | +|---|---| +| 项目档案可记录每个子项目和独立交付单元 | 通过 | +| 新项目和已有项目指南说明多应用单仓库的判断规则 | 通过 | +| 单元任务模板明确子项目、跨项目和共享契约影响 | 通过 | +| 共享契约要求指定唯一事实来源和各端验证 | 通过 | +| 严格检查、单元测试和 Wiki 镜像检查通过 | 通过 | +| 不引入拆仓自动化或修改实际业务项目 | 通过 | + +## 测试 + +- 执行命令:`python dev_scripts/check_harness.py --strict` +- 结果:通过。 +- 执行命令:`python -m unittest discover -s tests -v` +- 结果:24 项测试全部通过。 +- 执行命令:`python dev_scripts/sync_wiki_docs.py --check` +- 结果:归档前 25 份 Wiki 镜像全部一致。 +- 人工示例检查:以 Client 与 Admin 两个交付单元填写职责、独立构建测试、版本发布和共享接口时,新增字段能够表达单端与跨端影响。 +- **未验证部分**:未在真实多应用业务仓库执行接入或发布验证;该项不属于本工单范围。 + +## 相关提交 + +- `4e1db45` docs: support multi-project delivery units (#13) diff --git a/wiki-docs.json b/wiki-docs.json index da37188..cb1b54c 100644 --- a/wiki-docs.json +++ b/wiki-docs.json @@ -103,6 +103,10 @@ { "page": "Task-12-已有项目接入DevHarness指南", "path": "docs/task/12-已有项目接入DevHarness指南.md" + }, + { + "page": "Task-13-多子项目与独立交付单元", + "path": "docs/task/13-多子项目与独立交付单元.md" } ] }