Why: Define the approved direction for one rule-driven Word renderer, all-template onboarding, human-readable traceability, and review-aware delivery before implementation starts. Evidence: SELF documentation checks passed for relative links, balanced code fences, JSON parsing, manifest SHA256 coverage, and git diff whitespace. Impact: Adds a 12-document review set and immutable review manifest; no runtime code, migration, deployment, or published rule changes. Refs: feature/rdm-two-trees-latest-templates
4.7 KiB
4.7 KiB
01 需求与范围
1. 用户目标
成员和智能体能够以 Markdown 编制公司项目文档,由系统根据声明式渲染规则生成 Word。文档可使用专用公司模板,也可在未指定专用模板时使用公司通用规则。用户可以下载 Markdown、Word 或包含全部交付物的归档包。
渲染结果不是一次性文件,而是 2 树 1 网的一部分:文档树保存文档、章节、小节和段落;笔记树保存对话、文件、网络搜索和工具结果等依据;追溯网连接内容节点、来源、修订、批注、审签决定、规则版本和最终文件。
2. 第一阶段范围
- 统一文档模型和 Markdown 解析。
- 声明式 RenderProfile schema、校验器、注册表和版本生命周期。
- Word 格式适配器。
- 公司通用 Word 规则包。
- 44 份现有模板的规则包及受控资产绑定。
- 文档实例级规则选择及四级回退策略。
- 工作稿、预览稿、批准稿和审阅留痕稿。
- Markdown、DOCX、清单及归档包下载。
- Word 书签/内容控件与文档树节点的双向锚定。
- 规则预览、发布、退役、升级提案和回滚。
- SQLite 与 PostgreSQL 的规则、版本和交付物持久化。
- 真实浏览器中的选择规则、预览、审阅和下载流程。
3. 后续范围
后续格式适配器消费同一 CanonicalDocument:
- PDF:固定版式发布和打印交付。
- PPT:按幻灯片规则映射章节、图表和演讲者备注。
- 用户上传参考文档,智能体分析后生成候选 RenderProfile。
后续功能必须沿用本阶段的规则审查、预览、发布和权限生命周期。上传参考文档不会直接生成已发布规则。
4. 角色
| 角色 | 权限与职责 |
|---|---|
| 文档编制人 | 编辑 Markdown、选择允许的规则、生成工作稿和提交审阅 |
| 审阅人 | 查看来源和差异、添加批注、提出修改或通过审阅 |
| 批准人 | 对冻结提交作最终决定,批准后生成批准稿 |
| 项目创建者/授权管理员 | 管理项目默认规则和项目内可用规则 |
| 系统管理员 | 发布公司规则、受控资产和格式适配器 |
| 普通项目成员 | 按项目内容权限查看和下载文档;无审计权时不见审计信息 |
| 智能体 | 生成 Markdown 候选、提出规则选择和结构映射;不得伪造审签或发布规则 |
5. 功能要求
5.1 规则选择
选择顺序固定为:
- 文档实例显式绑定的
profileId@version。 - 文档类型的已发布默认规则。
- 项目已发布默认规则。
- 公司通用 Word 规则。
受控文档一旦声明专用模板,任何缺包、失配、退役或必填字段缺失都必须阻止生成,不进入第 3 或第 4 级回退。
5.2 双格式与清单
每次交付至少包含:
document.mdpreview.docx、approved.docx或review.docx中的适用文件manifest.json
清单记录内容哈希、规则和模板版本、资产哈希、生成主体、生成时间、审签轮次、输出哈希、诊断结果及文档树根节点。
5.3 可追溯性
每个可渲染内容节点必须有稳定 nodeId。Markdown 解析范围、DOCX 书签/内容控件、来源引用、内容版本、批注和交付物均绑定该 ID。仅靠标题或段落顺序不得作为稳定身份。
5.4 审阅和批准
系统分别保存内容版本、批注和审签决定。批准稿接受已批准修订并隐藏普通批注;审阅留痕稿保留修订、批注、回复及解决状态。签署区只读取可信审签数据。
6. 非功能要求
- 确定性:同一 Markdown、元数据、规则版本和资产生成相同有效内容;时间戳等非确定字段必须来自冻结提交。
- 安全:规则不含脚本、宏、外部 URL 运行、任意 OOXML 或任意文件路径。
- 隔离:规则执行无网络,资产只从已验证包读取,输出写入限定目录。
- 兼容:未知规则版本、未知节点、旧二进制或新 schema 均 fail-closed。
- 性能:普通 100 页以内文档在交互预览预算内完成;大文档进入后台任务并显示进度。
- 可解释:失败返回具体字段、规则路径、文档节点和修复建议。
7. 完成判据
- 44/44 模板在适用项目中完成“Markdown→预览→审阅→批准→批准稿/留痕稿→下载”的逐项验证;当前两个字典阻塞清零。
- 公司通用规则可生成无专用模板的普通文档。
- Markdown 与所有 Word 输出均可下载,清单中的哈希可复核。
- 页眉、页脚、页码、文件控制字段、Logo、标题、表格及签署区符合已批准规范。
- 私人来源和无权批注不进入共享文件。
- 规则升级不改变旧批准文件,旧版本仍可重放生成或取回冻结字节。