docs: 更新 wiki 反映 5 角色测试结果和修复教训
Some checks failed
CI / security-audit (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled

- wiki/index.md: 更新关键数字(693 次提交/129 迁移/clippy 0 警告/角色测试完成)
- wiki/index.md: 症状导航添加 5 个已修复问题
- wiki/index.md: 文档索引添加角色测试计划/结果
- wiki/testing.md: 新增 5 角色深度测试结果表格和 7 个 BUG 修复清单
- wiki/testing.md: 历史教训添加 6 条新教训(容错/拦截同步/路径一致/权限语义/clippy/lint-staged)
This commit is contained in:
iven
2026-05-07 23:50:19 +08:00
parent 6d5a711d2c
commit 645ec39e8b
2 changed files with 74 additions and 24 deletions

View File

@@ -4,27 +4,32 @@
## 关键数字
> 最后更新: 2026-05-07 | 数据截止: commit 6d5a711 (第 693 次提交)
| 指标 | 值 |
|------|-----|
| Rust crate | 18 个erp-core + 5 基础业务 + erp-health + erp-ai + erp-dialysis + erp-plugin + 5 插件 + erp-plugin-prototype |
| 数据库表 | 30 基础表 + 44 健康业务表 + 3 AI 表(已实现) |
| 数据库迁移 | 123 个 |
| 后端路由 | 3288 公开 + 320 受保护) |
| 数据库迁移 | 129 个 |
| 后端路由 | 250+8 公开 + 14 FHIR + 2 网关 + ~230 受保护) |
| 核心模块 | 5 基础 (auth/config/workflow/message/plugin) + 3 业务 (health + ai + dialysis) |
| erp-health 实体 | 46 个 Entity~27k 行 Rust |
| erp-ai 实体 | 6 个 Entity~3.6k 行 Rust |
| Web 前端 | 225 个 TS/TSX 文件(含 25+ 健康路由页面 + 工作台组件 |
| 微信小程序 | Taro 4.2 + React 18182 个源文件 / 40+ 页面 / 5 TabBar + 医生端 |
| 前端单元测试 | 36 个测试文件vitest+ 5 E2E specplaywright |
| erp-health 实体 | 46 个 Entity~36k 行 Rust179 文件 |
| erp-ai 实体 | 6 个 Entity~7k 行 Rust45 文件4 AI Provider |
| Web 前端 | 283 个 TS/TSX 文件(55 路由,含 38 健康路由 + 6 冻结路由 |
| 微信小程序 | Taro 4.2 + React 18118 个 TS/TSX 文件 / ~54 页面 / 4 TabBar + 医生端分包 |
| 前端单元测试 | 62 个测试文件vitest+ 13 E2E specplaywright |
| 后端测试 | 611 单元 + 153 集成 = 772 个函数97.5% 通过率) |
| 总代码量 | Rust ~87k 行(484 源文件)+ Web 前端 225 文件 + 小程序 182 文件 |
| 事件系统 | 25 事件类型 / 44 发布处 / 14 消费者 |
| DTO | 105+ 个结构体23 文件) |
| 总代码量 | Rust ~87k 行(579 源文件)+ Web 前端 283 文件 + 小程序 118 文件 |
| 事件系统 | 31+ 事件类型health 模块内)/ 23 幂等消费者 / Outbox + LISTEN/NOTIFY |
| DTO | 105+ 个结构体20+ 文件) |
| 权限码 | 50 声明health 39 + ai 6 + dialysis 5+ 56 基础模块手动注册 |
| Clippy | **全 workspace 0 警告**2026-05-07 清零) |
| API 文档 | `http://localhost:3000/api/docs/openapi.json` |
| Git 提交 | 577 次 |
| 审计状态 | 2026-04-30 全系统审计完成83% 总体完成度) |
| Git 提交 | 693 次 |
| 审计状态 | V1: 83% (2026-04-30) → V2: 85% (2026-05-05)P0 安全修复已完成 |
| 角色测试 | R01-R05 全角色验证完成86.5% 通过率5 个 BUG 已修复 |
| UI/UX 重构 | Phase 1-5 完成6 共享组件 + 4 角色仪表盘 + 个人统计数据 + 表单抽屉 + 小程序优化) |
| 项目阶段 | **上线前质量加固**(近 30 次提交全为 fix 类型) |
## 症状导航
@@ -60,6 +65,11 @@
| Ollama 暴露到局域网 | [[infrastructure]] Ollama 安全 | `OLLAMA_HOST` | 默认 `0.0.0.0`,必须设 `127.0.0.1` |
| AI 趋势/报告分析 500 模板渲染失败 | [[erp-ai]] Handlebars 模板 | `anomalies.length` | `.length` 不是有效 Handlebars 语法,改为 `{{#if anomalies}}` |
| AI 分析 400 缺少数据 | 后端预校验 | handler 层 | 化验报告 items 为空 / 趋势数据 metrics 为空 |
| 患者创建空名称成功 | [[erp-health]] patient_handler | `name.trim().is_empty()` | **已修复:** 后端添加空名称校验返回 Validation 错误 |
| 仪表盘统计 500 | [[erp-health]] stats_handler | 单个查询异常导致整接口崩溃 | **已修复:** 容错处理,单个查询失败返回零值 |
| FHIR 端点全部 404 | [[erp-server]] main.rs | 路由注册在 `/fhir``/api/v1/fhir` | **已修复:** 移到 `/api/v1/fhir` |
| 冻结模块 API 可绕过 | [[erp-server]] frozen_module | 后端无拦截中间件 | **已修复:** 新增 `frozen_module_middleware` |
| 积分端点 403 权限码错 | [[erp-health]] points_handler | 患者端用了 `health.health-data.list` | **已修复:** 改为 `health.points.list` |
## 模块导航
@@ -86,8 +96,8 @@
### 基础设施
- [[infrastructure]] — 连接信息 · 环境变量 · 一键启动 (**单一真相源**)
- [[database]] — SeaORM 迁移 · 多租户表结构103 迁移)
- [[frontend]] — React 19 SPA · 健康管理页面(25+ 路由 + 工作台组件)
- [[database]] — SeaORM 迁移 · 多租户表结构128 迁移)
- [[frontend]] — React 19 SPA · 健康管理页面(55 路由 + 工作台组件)
- [[testing]] — 验证清单 · 测试分布 · 性能基准
## 核心架构问答
@@ -110,11 +120,12 @@
| PII 加密扩展规格 | `docs/superpowers/specs/2026-04-26-pii-encryption-expansion-design.md` |
| 实时体征管线探讨 | `docs/superpowers/specs/2026-04-26-realtime-vital-signs-pipeline-design.md` |
| 平台复盘与演进 | `docs/superpowers/specs/2026-04-26-platform-retrospective-and-evolution-design.md` |
| 设计规格(全量) | `docs/superpowers/specs/` (41 份) |
| 设计规格(全量) | `docs/superpowers/specs/` (47 份) |
| UI/UX 重构设计规格 | `docs/superpowers/specs/2026-04-28-ui-ux-overhaul-design.md` |
| UI/UX 重构实施计划 | `docs/superpowers/plans/2026-04-28-ui-ux-overhaul-plan.md` |
| 实施计划(全量) | `docs/superpowers/plans/` (38 份) |
| 全系统审计报告 | `docs/audits/08-audit-report-2026-04-30.md`83% 总体完成度2 CRITICAL + 3 HIGH |
| 实施计划(全量) | `docs/superpowers/plans/` (49 份) |
| 全系统审计报告V1 | `docs/audits/08-audit-report-2026-04-30.md`83% 总体完成度2 CRITICAL + 3 HIGH |
| 全系统审计报告V2 | `docs/audits/v2/13-final-report.md`85% 总体完成度P0 安全修复已完成) |
| 审计基线快照 | `docs/audits/00-baseline-snapshot.md` |
| 审计功能清单 | `docs/audits/01-feature-inventory.md`328 路由三端映射矩阵) |
| 审计后端完整性 | `docs/audits/02-backend-integrity.md`100% 调用链连通) |
@@ -123,9 +134,15 @@
| 审计差距模式 | `docs/audits/05-gap-patterns.md`5 种模式,透析/知情同意 MP 缺失) |
| 审计错误处理 | `docs/audits/06-error-handling.md`SSE 不挂起 / 日志 30% 覆盖) |
| 审计测试覆盖 | `docs/audits/07-test-coverage.md`772 测试 / 前端极低 / AI 无集成测试) |
| 讨论记录 | `docs/discussions/` (18 份) |
| 讨论记录 | `docs/discussions/` (26 份) |
| 事件注册表 | `docs/event-registry.md` |
| Wiki 方法论 | `docs/wiki-methodology.md` |
| 项目深度分析 | `docs/superpowers/specs/2026-05-03-project-analysis-brainstorm-design.md`5 专家组分析B+ 评分) |
| 三维度系统分析 | `docs/discussions/2026-05-07-three-dimension-analysis.md`(后端/前端/质量三维深度分析2026-05-07 |
| 多专家组头脑风暴 | `docs/discussions/2026-05-07-expert-brainstorm-session.md`5 专家组评审,综合 6.4/10 B-,行动清单) |
| 角色测试计划(全量) | `docs/qa/role-test-plans/` (R01-R05) |
| 角色测试结果 | `docs/qa/role-test-results/` (R01 100% / R02 100% / R03 90.9% / R04 90.0% / R05 72.7% → 修复后待复测) |
| 系统集成测试结果 | `docs/qa/role-test-results/T00-system-integration-results.md` (20/28 通过) |
| 小程序 E2E 测试结果 | `docs/qa/role-test-results/T10-miniprogram-e2e-results.md` (需手动执行) |
| 协作规则 | `CLAUDE.md` |
| 插件制作指南 | `.claude/skills/plugin-development/SKILL.md` |