wip: 2026-08-11 工作树快照(docs/memory/h5.py/scripts 等 447 项未评审改动,安全提交到 feat 分支)

This commit is contained in:
Simon
2026-08-11 09:59:44 +08:00
parent 6be361fb63
commit f2fd4fa012
447 changed files with 273482 additions and 1386 deletions
@@ -1,12 +1,13 @@
# IT智能服务台 - 产品开发流程与文档管理规范
> **版本**: v1.13
> **日期**: 2026-08-03
> **版本**: v1.14
> **日期**: 2026-08-09
> **状态**: [已评审]
> **作者**: Simon
> **变更说明**:
> - v1.11 → v1.12:新增 §14 大需求重构的文档化策略(2026-07-28 管理后台 IA 重构经验)
> - **v1.12 → v1.13**:新增 §16 技术方案偏离时的"增量更新章节"治理(基于 2026-08-03 voice_asr.py P0 安全巡检 + 文档-代码不一致修复经验),涵盖:① §16.1 技术方案与实际部署偏离的场景识别;② §16.2 §10 增量更新章节模板;③ §16.3 多策略功能(如语音输入的"手机 JS-SDK / PC 百度 ASR / Web Speech"三分支)的文档化要求;④ §16.4 API 端点调用方分析强制检查项;⑤ §16.5 运营/配置/运维文档与代码一致性核查清单模板
> - v1.12 → v1.13:新增 §16 技术方案偏离时的"增量更新章节"治理(基于 2026-08-03 voice_asr.py P0 安全巡检 + 文档-代码不一致修复经验),涵盖:① §16.1 技术方案与实际部署偏离的场景识别;② §16.2 §10 增量更新章节模板;③ §16.3 多策略功能(如语音输入的"手机 JS-SDK / PC 百度 ASR / Web Speech"三分支)的文档化要求;④ §16.4 API 端点调用方分析强制检查项;⑤ §16.5 运营/配置/运维文档与代码一致性核查清单模板
> - **v1.13 → v1.14**:新增 §13.5.1~13.5.4 归档命名约定全员一致性(基于 2026-08-09 工具栏统一设计 v0.3~v1.9 批量归档经验),涵盖:① §13.5.1 归档命名格式表 + 全员一致性铁律;② §13.5.2 引用指向规则(活文档指向当前生产版本);③ §13.5.3 归档目录位置规则;④ §13.5.4 归档操作 7 步 SOP;同步清理 §13.5 旧表述 `-archived-日期`(统一为 `.archive`
---
@@ -895,10 +896,90 @@ BUG-[模块]-[序号]
### 13.5 归档文件处理
- 归档文件命名:`原文件名-archived-日期.后缀`
- 归档目录`08-历史归档/`
- 归档条件:无活跃引用(不被其他文档引用)
- 归档前确认:仍有引用 → 提升回主文档;无引用 → 归档
- **归档命名约定**`.archive` 后缀(详见 §13.5.1
- **归档目录**:默认留在原目录(命名加 `.archive` 即可);仅当完全无活跃引用 + 跨多个子系统时,移至 `08-历史归档/{原类别}/`
- **归档条件**:无活跃引用(不被其他文档引用)
- **归档前确认**:仍有引用 → 提升回主文档(不归档);无引用 → 归档
#### 13.5.1 归档命名约定(全员一致性铁律)
> **核心原则**:**同一条演进线上所有旧版本必须全员打 `.archive` 后缀,不留半归档半未归档。**
**命名格式表**
| 文档类型 | 归档命名格式 | 示例 |
|---------|-------------|------|
| PRD / 技术方案 | `原文件名.archive.md` | `PRD-REQ-会话-001-工具栏统一设计-v1.3.archive.md` |
| 原型 HTML | `原文件名.archive.html` | `原型-REQ-会话-001-工具栏统一设计v1.4-xxx.archive.html` |
| 任务说明书 | `原文件名.v{X}.archive.md`(保留版本号) | `任务说明书-REQ-集成-002-xxx.v1.0.archive.md` |
| Vue 组件 | `原文件名.archive.vue` | `AssignmentMode.archive.vue` |
**触发场景(任一命中即应归档)**
| 场景 | 说明 |
|------|------|
| **被新版本接替** | 同一需求编号的 vN → vN+1,前序版本归档 |
| **被合并/收编** | 多源 → 单一源,被合并方归档 |
| **文档状态变更** | 文档状态变为 `[已废弃]`(§8.4 |
**全员一致性原则**
- 同一条演进线:**第一个版本加 `.archive` 之后,所有同级版本必须全员加 `.archive`**
- 自查:`ls *.html` 第一眼必须能区分"当前生产"和"历史归档"
- 反例:v1.9 加了 `.archive` 但 v1.4~v1.8 仍无 `.archive` → 目录里"半归档半未归档",结构混乱(2026-08-09 工具栏原型原状)
**`.archive` vs `.archive-日期` 取舍**
- **推荐**`.archive`(无日期)—— 文件位置 + REQ 编号本身就是时间戳
- 仅当需要明确"精确归档日期"时附加 `-YYYYMMDD`(如 `xxx.archive-20260809.md`
- §2.5 / §13.5 旧版提到的 `-archived-日期` 格式已**不再推荐**,统一为 `.archive`v1.14 清理)
**禁止**
- ❌ 把归档文件直接删除(保留作为历史快照)
- ❌ 在活文档里混用半归档(部分打 `.archive` 部分不打)
- ❌ 用 `-old` / `-deprecated` / `_bak` 等其他后缀命名归档(统一用 `.archive`
#### 13.5.2 引用指向规则
> **核心原则**:活文档的引用应指向当前生产版本;归档文件仅作历史参考。
| 引用场景 | 指向规则 |
|---------|---------|
| 任务说明书 / 交付清单的"基线" | 指向当前生产版本(不带 `.archive`|
| PRD / 技术方案引用 | 指向当前生产版本 |
| 运维 SOP / 故障排查 | 指向当前生产版本 |
| 历史对照 / 复盘 | 可引用 `.archive` 文件(说明对比意向)|
**反例**2026-08-09 群聊入口接线任务说明书教训):
- 任务说明书"5 按钮基线"指向 `v1.9-员工端落地版.archive.html` → 误导实施者锁错版本
- 修正:扫描 grep,识别所有指向 `.archive` 的活文档引用,**必须更新到当前生产版本**
#### 13.5.3 归档文件目录位置
- **首选**:留在原目录(不移动),命名加 `.archive` 后缀即可
- 仅当满足以下全部条件时才能移到 `08-历史归档/`
- 完全没有活跃引用
- 跨多个子系统的历史归档
- 明确标 `08-历史归档/{原类别}/原文件名`
**禁止**
- ❌ 把被引用的归档文件移动到 `08-历史归档/`(违反"归档 = 历史留痕"的可达性)
- ❌ 修改归档文件内容(保持历史不变性)
#### 13.5.4 归档操作 SOP(基于 2026-08-09 工具栏原型归档经验)
| # | 步骤 | 操作 |
|---|------|------|
| 1 | 识别归档范围 | 列出该 REQ 编号下所有版本文件,按时间/版本号排序 |
| 2 | 区分当前生产 vs 旧版本 | 当前生产保留原名,其余加 `.archive` |
| 3 | 批量重命名 | `Bash``mv` 或 PowerShell 的 `Rename-Item` |
| 4 | 跨文档树扫描引用 | `grep -rn 原文件名 docs/ src/` |
| 5 | 同步更新活文档引用 | 将指向 `.archive` 的引用更新到当前生产 |
| 6 | 跳过归档区 | `archives/` / `08-历史归档/` 目录内的引用**不动**(历史不变性) |
| 7 | 验证 | `ls` 目录确认当前生产 vs 归档分离清晰 |
### 13.6 Dify DSL 备份与变更管理规范