项目文档治理与英文路径迁移计划

依据:docs/00-产品开发流程与文档管理规范.md v1.13、outputs/itdesk-project-folder-audit-20260809.html,以及对 docs 目录的只读规则检查。

本报告是决策和实施计划,不执行迁移、不修改原文档、不删除文件。

可解析文档/配置432
缺少规范头部候选118
引用目标缺失候选97
文件名/内容版本不一致候选12

一、结论

建议迁移,但不建议把中文目录直接整体重命名为英文目录后再修引用。更安全的做法是采用“英文物理目录 + 中文兼容入口 + 迁移映射清单 + 分批切换”的双轨方案。当前文档体系中存在大量中文相对路径、旧路径、缺失目标和归档引用;一次性重命名会把已有问题和迁移引入的问题混在一起,难以回滚与定位。

建议将代码/运行时根路径保持不变,只迁移 docs 内的活跃文档;不迁移 .workbuddy/memory、Git 元数据、源码目录、部署挂载路径、服务器路径和外部链接。

二、规范已规定但当前未完全执行

规范要求当前证据整改建议
已规定
§2.0 / §2.0.2:源码统一在 src/,配置集中管理,部署路径同步更新
根目录仍有旧 frontend-*,同时存在 src/frontend-*;根目录与 deploy-server 多套 Compose/部署事实源。先锁定 src/ 为运行时唯一源;配置迁移单独立项,先做引用/挂载矩阵,再更新 Compose 和部署脚本。
已规定
§2.1/§2.2:文档按 01—08 类别边界组织
docs 共有 432 个可解析文档/配置;根目录仍有 README、CHANGELOG、overview、openapi 等多种文档;部分旧目录引用仍存在。将根目录文档按项目入口/治理/接口产物/历史分类;先建立权威入口。
已规定
§2.3、§3.1:命名规则与文件名/内容版本一致
检测到 12 个文件名版本与头部版本不一致候选,例如技术方案 v1.4 文件头 v1.3、多个 v1.0 文件头为 v1.1/v1.2。先生成确认表;确认后同步改文件名、头部版本和全部引用,旧版本按 .archive 规则保留。
已规定
§4.2/§4.3/§8.3:变更必须有版本号和变更记录,阶段产物齐全
118 个 Markdown 文件没有检测到标准版本字段候选。README 仍为 2026-06-03,状态与当前实现有滞后。对活跃文档补齐头部与变更记录;历史归档不强行回填,增加历史文档说明和索引。
已规定
§5.1/§5.2/§13.3:引用链完整,移动后更新所有引用并验证死链接
检测到 97 个引用目标缺失候选,包含旧目录、历史文档、自身示例或跨根路径引用。先区分真实死链、历史文档死链、模板示例和扫描误报;迁移前建立路径映射表,迁移后跑链接检查。
已规定
§2.5/§13.5:归档前分拣;仍被引用的不得直接归档
08-历史归档内仍有文档包含指向其他旧文档的引用,且部分活跃文档仍引用旧目录。采用引用扫描、活跃/历史判定、归档标记、索引更新四步,不做目录级盲搬。
已规定
§4.3/§9/§15:新增、变更、上线需按 PRD、技术、测试、任务、运维等链路留痕
能确认存在多类文档,但无法证明每个功能/部署批次都完整具备三件套或七件套。为每个 REQ 建关联矩阵;上线前将文档完备性纳入检查清单和发布门禁。

三、现有规范未规定或规定不足的事项

规范缺口建议新增规则
规范缺口
英文路径/跨平台路径策略
规定物理目录可使用 ASCII 英文名;文档显示名可保留中文;所有链接使用相对路径;禁止依赖 Windows 盘符、中文绝对路径或特定编辑器 URI。
规范缺口
迁移安全与回滚
迁移前生成 manifest、SHA-256、引用图、Git 状态快照和外部备份;迁移后通过链接、哈希、构建/部署回归;保留旧路径兼容窗口。
规范缺口
文档与代码的边界
明确 docs 只保存可审阅文档,构建产物、压缩包、截图批次、数据库分片、运行日志和个人工作区不入文档仓库;制品使用独立制品库。
规范缺口
敏感信息管理
secret scan 覆盖源码、文档、历史归档、备份和压缩包;默认密码不能出现在 Compose 默认值、示例脚本和文档中;发现即按泄露处理并轮换。
规范缺口
文档质量门禁
活跃文档必须具备版本/日期/状态/作者/关联文档;每个 REQ 必须具备关联矩阵;死链、版本错配、重复权威文档不得进入发布分支。
规范缺口
历史归档引用策略
归档文件内部可保留历史引用,但必须标明历史引用、不作为当前事实源;活跃文档不得依赖归档文档作为唯一依据。
规范缺口
Git 与发布提交规则
补充 pre-commit/CI 强制校验、分支保护、工作树冻结、远端备份和灾难恢复演练。

四、英文文档路径方案对比

方案做法优点风险建议
A:原地改名直接把 docs 子目录改成英文。简洁。一次性影响大量链接、脚本和人员习惯;难以区分原有问题和迁移问题。不建议第一步。
B:复制切换复制到 docs-en/,修正引用后切主路径。回滚简单。双份权威文档,容易内容漂移。只适合短期验证。
C:英文物理目录 + 中文兼容入口建立 documentation/ 作为唯一物理目录;旧 docs/ 暂保留兼容说明。安全、可回滚。需要维护映射和兼容期。推荐。
D:独立文档仓库文档进入独立英文命名仓库。边界清晰。增加权限、版本协同和链接管理复杂度。中长期可选。

五、推荐目标结构

documentation/                         # 英文物理目录,唯一文档源
├── 00-governance/                      # 规范、版本索引、整改记录
├── 01-product/                         # PRD、原型、产品设计
├── 02-technical/                       # 架构、接口、实现配置、重构
├── 03-testing/                         # 测试规范、用例、报告、缺陷
├── 04-operations/                      # 部署、监控、运维手册、发布
├── 05-operations-business/             # 用户手册、运营报告
├── 06-security/                        # 安全审计、集成安全分析
├── 07-project-management/              # 任务、计划、看板、日报
└── 08-archive/                         # 仅无活跃引用的历史留痕

# 根目录保留
README.md  CHANGELOG.md  CONTRIBUTING.md  documentation/  src/  scripts/  configs/

重要:“英文路径”不等于强制把所有文件名也翻译成英文。建议优先英文目录、保留中文业务文件名,以降低 REQ 编号、中文功能名和审阅习惯的迁移风险。

六、安全迁移计划

  1. 阶段 1:冻结与授权:暂停大规模文档重命名,确认未提交修改/未跟踪文件归属,创建专用迁移分支,范围仅限 docs 活跃文档。
  2. 阶段 2:只读盘点:生成 document-manifest.csv(旧路径、新路径、类型、版本、状态、大小、SHA-256、是否被引用、敏感候选),生成引用图和 REQ 关联矩阵。
  3. 阶段 3:外部备份:将原 docs 备份到项目外受控位置,备份后复核 SHA-256;敏感文件必须排除或加密限权。
  4. 阶段 4:建立英文目录副本:复制到 documentation/,只修改路径引用,不同时做内容改写、版本升级或归档判断。
  5. 阶段 5:引用与工具适配:更新 Markdown 相对引用、MkDocs、文档发布脚本、审计脚本、CI、README;代码运行时路径保持不变。
  6. 阶段 6:四类验证:文件数量与哈希、Markdown/HTML 链接、文档构建预览、Git diff/secret scan/发布脚本 dry-run;任一失败即停止。
  7. 阶段 7:兼容切换:将 docs/ 改为兼容入口或迁移说明,保留版本窗口;确认入口全切至 documentation/后再人工批准移除旧目录。
  8. 阶段 8:收口:更新规范 v1.14,补充英文路径、迁移和质量门禁;在 00-document-normalization-log.md 记录整改,提交 PR 保留回滚点。

七、迁移前安全门槛

八、建议的决策顺序

  1. 批准“只迁移 docs、代码路径不动”。
  2. 批准目标目录名称:推荐 documentation/。
  3. 确认 docs/兼容入口和兼容期结束条件。
  4. 确认迁移分支和外部备份位置。
  5. 完成盘点后,再决定旧文档、重复文档和归档物的清理;本报告不执行清理。