feat(iit): V3.2 data consistency + project isolation + admin config redesign + Chinese labels
Summary: - Refactor timeline API to read from qc_field_status (SSOT) instead of qc_logs - Add field-issues paginated API with severity/dimension/recordId filters - Add LEFT JOIN field_metadata + qc_event_status for Chinese display names - Implement per-project ChatOrchestrator cache and SessionMemory isolation - Redesign admin IIT config tabs (REDCap -> Fields -> KB -> Rules -> Members) - Add AI-powered QC rule generation (D3 programmatic + D1/D5/D6 LLM-based) - Add clickable warning/critical detail Modal in ReportsPage - Auto-dispatch eQuery after batch QC via DailyQcOrchestrator - Update module status documentation to v3.2 Backend changes: - iitQcCockpitController: rewrite getTimeline from qc_field_status, add getFieldIssues - iitQcCockpitRoutes: add field-issues route - ChatOrchestrator: per-projectId cached instances - SessionMemory: keyed by userId::projectId - WechatCallbackController: resolve projectId from iitUserMapping - iitRuleSuggestionService: dimension-based suggest + generateD3Rules - iitBatchController: call DailyQcOrchestrator after batch QC Frontend changes: - AiStreamPage: adapt to new timeline structure with dimension tags - ReportsPage: clickable stats cards with issue detail Modal - IitProjectDetailPage: reorder tabs, add AI rule generation UI - iitProjectApi: add TimelineIssue, FieldIssueItem types and APIs Status: TypeScript compilation verified, no new lint errors Made-with: Cursor
This commit is contained in:
@@ -1,10 +1,15 @@
|
||||
# IIT Manager Agent模块 - 当前状态与开发指南
|
||||
|
||||
> **文档版本:** v3.1
|
||||
> **文档版本:** v3.2
|
||||
> **创建日期:** 2026-01-01
|
||||
> **维护者:** IIT Manager开发团队
|
||||
> **最后更新:** 2026-03-01 **GCP 业务报表 + AI 工作流水增强 + 多项 Bug 修复完成!**
|
||||
> **最后更新:** 2026-03-02 **数据一致性修复 + 项目隔离 + 管理端配置流重设计 + 中文显示名!**
|
||||
> **重大里程碑:**
|
||||
> - **2026-03-02:QC 数据一致性修复!** AI 时间线 + 警告详情 统一从 qc_field_status(SSOT)读取,与热力图数据一致
|
||||
> - **2026-03-02:字段/事件中文显示名!** LEFT JOIN field_metadata + qc_event_status,消除 REDCap 技术标识符
|
||||
> - **2026-03-02:警告详情可查看!** 新增 field-issues 分页 API + ReportsPage 严重问题/警告数字可点击弹出详情 Modal
|
||||
> - **2026-03-02:AI 对话项目隔离!** ChatOrchestrator 按 projectId 缓存实例 + SessionMemory 按 userId::projectId 隔离
|
||||
> - **2026-03-02:管理端配置流重设计!** 5 个配置 Tab 按依赖关系重排 + AI 自动构建质控规则(D1/D3/D5/D6 四维度)
|
||||
> - **2026-03-01:GCP 业务端报表全量完成!** 4 张 GCP 标准报表(D1 筛选入选/D2 完整性/D3D4 质疑跟踪/D6 方案偏离)后端 API + 前端组件 + ReportsPage 五 Tab 重构
|
||||
> - **2026-03-01:AI 工作流水时间线增强!** 实际规则数显示(33 条而非 1 条)+ 中文事件名 + 可展开问题详情表格 + severity 映射修复
|
||||
> - **2026-03-01:业务端一键全量质控!** DashboardPage 新增按钮 + 自动刷新报告缓存 + 事件级通过率修复
|
||||
@@ -61,7 +66,16 @@ CRA Agent 是一个**替代 CRA 岗位的自主 AI Agent**,而非辅助 CRA
|
||||
- AI能力:DeepSeek/Qwen + 自研 RAG(pgvector)+ LLM Tool Use
|
||||
|
||||
### 当前状态
|
||||
- **开发阶段**:**V3.1 质控引擎 + GCP 业务报表 + AI 时间线增强 + Bug 修复 → 待部署验证**
|
||||
- **开发阶段**:**V3.2 数据一致性 + 项目隔离 + 管理端重设计 + 中文显示名 → 待部署验证**
|
||||
- **V3.2 数据一致性 + 项目隔离已完成**(2026-03-02):
|
||||
- AI 时间线改为从 qc_field_status(SSOT)聚合,与风险热力图数据一致
|
||||
- 新增 field-issues 分页查询 API(支持按维度/严重程度/受试者筛选)
|
||||
- ReportsPage 严重问题/警告数字可点击弹出详情 Modal(分页+按维度筛选)
|
||||
- 字段名/事件名中文显示(LEFT JOIN field_metadata + qc_event_status 替代 REDCap 技术标识符)
|
||||
- AI 对话项目隔离(ChatOrchestrator 按 projectId 缓存 + SessionMemory 按 userId::projectId 隔离 + WeChat 回调自动解析 projectId)
|
||||
- 管理端 IIT 配置流重设计:5 个 Tab 按依赖关系重排(REDCap→变量清单→知识库→质控规则→成员)
|
||||
- AI 自动构建质控规则(D3 程序化 + D1/D5/D6 LLM 生成 + 预览批量导入 + 规则追加而非覆盖)
|
||||
- 批量 QC 后自动调用 DailyQcOrchestrator 派发 eQuery
|
||||
- **GCP 业务报表 + Bug 修复已完成**(2026-03-01):
|
||||
- 4 张 GCP 标准报表后端 API(iitQcCockpitService:getEligibilityReport/getCompletenessReport/getEqueryReport/getDeviationReport)
|
||||
- 4 个前端报表组件(EligibilityTable/CompletenessTable/EqueryLogTable/DeviationLogTable)
|
||||
@@ -107,6 +121,37 @@ CRA Agent 是一个**替代 CRA 岗位的自主 AI Agent**,而非辅助 CRA
|
||||
- ✅ **端到端测试通过**(REDCap → Node.js → 企业微信)
|
||||
- ✅ ~~AI对话集成完成(ChatService + SessionMemory)~~ → 已替换为 ChatOrchestrator
|
||||
|
||||
#### ✅ 已完成功能(V3.2 数据一致性 + 项目隔离 + 管理端重设计 - 2026-03-02)
|
||||
- ✅ **QC 数据一致性修复(qc_field_status 为 SSOT)**:
|
||||
- AI 时间线 getTimeline 改为从 qc_field_status 按受试者分组聚合(替代 qc_logs)
|
||||
- 与风险热力图、质控报告数据来源统一,消除数据不一致问题
|
||||
- 时间线展示有问题的受试者(FAIL/WARNING)+ 全部通过的受试者(PASS)
|
||||
- ✅ **字段/事件中文显示名**:
|
||||
- getTimeline + getFieldIssues SQL 增加 LEFT JOIN field_metadata(字段中文标签)+ qc_event_status(事件中文标签)
|
||||
- 前端优先显示 fieldLabel / eventLabel,回退到原始技术标识符
|
||||
- 消除 `65a64dbbd9_arm_1`、`check_date` 等不可读标识符
|
||||
- ✅ **警告详情可查看**:
|
||||
- 新增 GET /:projectId/qc-cockpit/field-issues 分页查询 API(支持按 severity/dimension/recordId 筛选)
|
||||
- 返回聚合统计(bySeverity + byDimension)
|
||||
- ReportsPage "严重问题"/"警告"卡片可点击,弹出详情 Modal(分页+维度下拉筛选)
|
||||
- ✅ **AI 对话项目隔离**:
|
||||
- ChatOrchestrator 从单例改为按 projectId 缓存实例(orchestratorCache Map)
|
||||
- SessionMemory 会话键改为 `userId::projectId`,不同项目聊天历史互不干扰
|
||||
- 后端 /api/v1/iit/chat 路由要求传 projectId
|
||||
- WechatCallbackController 通过 iitUserMapping 自动解析用户 projectId
|
||||
- ✅ **管理端 IIT 配置流重设计**:
|
||||
- 5 个配置 Tab 按依赖关系重排:① REDCap 配置 → ② 变量清单 → ③ 知识库 → ④ 质控规则 → ⑤ 项目成员
|
||||
- "同步元数据" 按钮从基础配置移至变量清单 Tab
|
||||
- 各 Tab 增加前置条件检查和提示(如"请先配置 REDCap 并同步变量")
|
||||
- ✅ **AI 自动构建质控规则**:
|
||||
- D3 准确性:基于 field_metadata 程序化生成范围/枚举/必填检查(无需 LLM)
|
||||
- D1 入选排除 / D5 安全性 / D6 方案偏离:LLM 基于变量清单+知识库智能生成
|
||||
- 预览 Modal 支持多选批量导入 + 规则追加(不覆盖已有规则)
|
||||
- 规则按 D1-D7 维度分组展示(Collapse 折叠面板)
|
||||
- ✅ **批量 QC 后自动派发 eQuery**:
|
||||
- iitBatchController 执行 QcExecutor.executeBatch 后调用 DailyQcOrchestrator.orchestrate
|
||||
- 返回 equeriesCreated 计数
|
||||
|
||||
#### ✅ 已完成功能(GCP 业务报表 + AI 时间线 + Bug 修复 - 2026-03-01)
|
||||
- ✅ **GCP 标准报表(阶段 A 4 张)**:
|
||||
- D1 筛选入选表(getEligibilityReport:record_summary 全量 + qc_field_status D1 叠加)
|
||||
@@ -954,8 +999,8 @@ npx ts-node src/modules/iit-manager/test-wechat-push.ts
|
||||
---
|
||||
|
||||
> **提示**:本文档反映IIT Manager Agent模块的最新真实状态,每个里程碑完成后必须更新!
|
||||
> **最后更新**:2026-03-01
|
||||
> **当前进度**:V3.1 QC Engine 完成 | GCP 业务报表 4 张全量完成 | AI Timeline 增强 | 一键全量质控 | 多项 Bug 修复 | Phase 2: LLM 执行摘要待开发
|
||||
> **最后更新**:2026-03-02
|
||||
> **当前进度**:V3.2 数据一致性修复 | 项目隔离 | 管理端配置流重设计 | AI 规则自动生成 | 中文显示名 | 警告详情 Modal | 待部署验证
|
||||
> **核心文档**:
|
||||
> - [CRA Agent V3.0 开发计划](./04-开发计划/V3.0全新开发计划/V3.0全新开发计划.md) ⭐⭐⭐⭐⭐
|
||||
> - [统一数字 CRA 质控平台 PRD](./04-开发计划/V3.0全新开发计划/统一数字%20CRA%20质控平台产品需求文档(PRD).md) ⭐⭐⭐⭐⭐
|
||||
|
||||
Reference in New Issue
Block a user