feat(iit): Implement real-time quality control system
Summary: - Add 4 new database tables: iit_field_metadata, iit_qc_logs, iit_record_summary, iit_qc_project_stats - Implement pg-boss debounce mechanism in WebhookController - Refactor QC Worker for dual output: QC logs + record summary - Enhance HardRuleEngine to support form-based rule filtering - Create QcService for QC data queries - Optimize ChatService with new intents: query_enrollment, query_qc_status - Add admin batch operations: one-click full QC + one-click full summary - Create IIT Admin management module: project config, QC rules, user mapping Status: Code complete, pending end-to-end testing Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,10 +1,14 @@
|
||||
# IIT Manager Agent模块 - 当前状态与开发指南
|
||||
|
||||
> **文档版本:** v1.6
|
||||
> **文档版本:** v2.1
|
||||
> **创建日期:** 2026-01-01
|
||||
> **维护者:** IIT Manager开发团队
|
||||
> **最后更新:** 2026-01-04 🎉 **Dify知识库集成完成 - 混合检索实现!**
|
||||
> **重大里程碑:** ✅ 混合检索架构实现(REDCap实时数据 + Dify文档知识库)!
|
||||
> **最后更新:** 2026-02-07 🎉 **实时质控系统核心功能开发完成!**
|
||||
> **重大里程碑:**
|
||||
> - ✅ 2026-02-07:**实时质控系统开发完成**(pg-boss防抖 + 质控日志 + 录入汇总 + 管理端批量操作)
|
||||
> - ✅ 2026-02-05:**V2.9.1 完整开发计划发布**(双脑架构 + 三层记忆 + 主动性增强 + 隐私合规)
|
||||
> - ✅ 2026-02-02:**REDCap 生产环境部署完成**(ECS + RDS + HTTPS)
|
||||
> - ✅ 2026-01-04:混合检索架构实现(REDCap实时数据 + Dify文档知识库)
|
||||
> **文档目的:** 反映模块真实状态,记录开发历程
|
||||
|
||||
---
|
||||
@@ -27,70 +31,65 @@
|
||||
IIT Manager Agent(研究者发起试验管理助手)是一个基于企业微信的主动式AI Agent产品,为IIT(研究者发起试验)提供智能化管理能力。
|
||||
|
||||
### 架构设计
|
||||
- **核心理念**:Native Orchestration(原生编排)+ Dify RAG + Shadow State(影子状态)
|
||||
- **核心理念**:**双脑架构(V2.9.1)** - SOP 状态机 + ReAct 引擎 + 三层记忆 + 隐私合规
|
||||
- **双脑路由**:
|
||||
- **左脑(SOP 引擎)**:结构化任务执行,写操作必经
|
||||
- **右脑(ReAct 引擎)**:模糊查询,只读不写
|
||||
- **技术栈**:
|
||||
- 后端:Node.js (Fastify) + PostgreSQL (Prisma) + pg-boss
|
||||
- 前端:微信小程序 (Taro 4.x)
|
||||
- 前端:企业微信 + 微信小程序 (Taro 4.x)
|
||||
- 数据源:REDCap (EDC系统)
|
||||
- 通知:企业微信
|
||||
- AI能力:Dify RAG + DeepSeek/Qwen
|
||||
- AI能力:DeepSeek/Qwen + 自研 RAG
|
||||
|
||||
### 当前状态
|
||||
- **开发阶段**:🎉 **Phase 1.5完成 - 混合检索架构实现!**
|
||||
- **整体完成度**:65%(Day 1-3 + Phase 1.5完成 + Dify集成完成)
|
||||
- **已完成功能**:
|
||||
- ✅ 数据库Schema创建(iit_schema,5个表)
|
||||
- ✅ Prisma Schema编写(223行类型定义)
|
||||
- ✅ 模块目录结构创建
|
||||
- ✅ 企业微信应用注册和配置
|
||||
- ✅ 企业微信Access Token获取成功
|
||||
- ✅ **企业微信可信域名配置成功**(devlocal.xunzhengyixue.com)
|
||||
- ✅ **REDCap本地Docker环境部署成功**(15.8.0)
|
||||
- ✅ **REDCap对接技术方案确定**(DET + REST API)
|
||||
- ✅ **REDCap测试项目创建**(test0102, PID 16, 11条记录)
|
||||
- ✅ **REDCap实时集成完成**(DET + REST API + WebhookController + SyncManager)
|
||||
- ✅ **企业微信推送服务完成**(WechatService, 314行)
|
||||
- ✅ **企业微信回调处理完成**(WechatCallbackController, 501行)
|
||||
- ✅ **natapp内网穿透配置成功**(https://devlocal.xunzhengyixue.com + 公司备案域名)
|
||||
- ✅ **RedcapAdapter API适配器完成**(271行,7个API方法)
|
||||
- ✅ **WebhookController完成**(327行,<10ms响应)
|
||||
- ✅ **SyncManager完成**(398行,增量+全量同步)
|
||||
- ✅ **Worker注册完成**(iit_quality_check, iit_redcap_poll)
|
||||
- ✅ **质控Worker完善**(质控逻辑 + 企业微信推送 + 审计日志)
|
||||
- ✅ **🎯 端到端测试通过**(REDCap → Node.js → 企业微信,<2秒延迟)
|
||||
- ✅ **🎯 MVP闭环完全打通**(100%消息成功率)
|
||||
- ✅ **🚀 Phase 1.5: AI对话集成完成**(2026-01-03 & 2026-01-04)
|
||||
- ✅ ChatService集成(485行)
|
||||
- ✅ SessionMemory(120行,上下文记忆)
|
||||
- ✅ REDCap数据查询集成(queryRedcapRecord, countRedcapRecords)
|
||||
- ✅ **Dify知识库集成**(queryDifyKnowledge)
|
||||
- ✅ **混合检索实现**(REDCap实时数据 + Dify文档知识库)
|
||||
- ✅ **智能路由**(根据意图自动选择数据源)
|
||||
- ✅ 意图识别优化(扩充医学关键词库)
|
||||
- ✅ 数据注入LLM(基于真实数据,不编造)
|
||||
- ✅ 即时反馈("正在查询")
|
||||
- ✅ **Dify Dataset关联**(test0102 → b49595b2-bf71-4e47-9988-4aa2816d3c6f)
|
||||
- ✅ **Bug修复**(Dify API字段路径错误修正)
|
||||
- ✅ 测试通过(5个场景:REDCap查询、Dify文档查询、混合查询)
|
||||
- **未开发功能**:
|
||||
- ⏳ Function Calling(LLM自主决策)- Phase 2
|
||||
- ⏳ 多项目支持(项目切换)- Phase 2
|
||||
- ⏳ 文档API上传(自动化上传到Dify)- Phase 2
|
||||
- ⏳ 数据质量Agent(AI质控逻辑)- Phase 2
|
||||
- ⏳ 任务驱动引擎 - Phase 2
|
||||
- ⏳ 患者随访Agent - Phase 2
|
||||
- ⏳ 微信小程序前端 - Phase 3
|
||||
- ⏳ REDCap双向回写 - Phase 2
|
||||
- **部署状态**:✅ AI对话正常运行,支持REDCap实时数据 + Dify文档查询
|
||||
- **开发阶段**:🎉 **实时质控系统核心功能开发完成!待端到端测试**
|
||||
- **整体完成度**:
|
||||
- **基础设施**:85%(REDCap + 企业微信 + AI 对话 + 实时质控)
|
||||
- **架构设计**:100%(V2.9.1 完整开发计划发布)
|
||||
- **代码实现**:45%(实时质控系统已实现)
|
||||
|
||||
#### ✅ 已完成功能(基础设施)
|
||||
- ✅ 数据库Schema创建(iit_schema,9个表 = 原5个 + 新增4个质控表)
|
||||
- ✅ Prisma Schema编写(扩展至 ~350 行类型定义)
|
||||
- ✅ 企业微信应用注册和配置
|
||||
- ✅ **REDCap 生产环境部署完成**(ECS + RDS + HTTPS)
|
||||
- ✅ **REDCap实时集成完成**(DET + REST API)
|
||||
- ✅ **企业微信推送服务完成**(WechatService)
|
||||
- ✅ **端到端测试通过**(REDCap → Node.js → 企业微信)
|
||||
- ✅ **AI对话集成完成**(ChatService + SessionMemory)
|
||||
|
||||
#### ✅ 已完成功能(实时质控系统 - 2026-02-07)
|
||||
- ✅ **质控数据库表**(iit_qc_logs + iit_record_summary + iit_qc_project_stats + iit_field_metadata)
|
||||
- ✅ **pg-boss 防抖机制**(WebhookController + singletonKey)
|
||||
- ✅ **Worker 双产出**(质控日志 + 录入汇总,一次执行两个产出)
|
||||
- ✅ **HardRuleEngine 增强**(按表单过滤规则)
|
||||
- ✅ **QcService 创建**(质控查询服务,6 个核心方法)
|
||||
- ✅ **ChatService 优化**(优先查询汇总表/质控表,新增录入/质控意图识别)
|
||||
- ✅ **管理端批量操作**(一键全量质控 + 一键全量汇总,前后端完整实现)
|
||||
|
||||
#### ✅ 已完成功能(架构设计 V2.9.1)
|
||||
- ✅ **双脑架构设计**(SOP 状态机 + ReAct 引擎)
|
||||
- ✅ **三层记忆系统设计**(流水账 + 热记忆 + 历史书)
|
||||
- ✅ **主动性增强设计**(Cron Skill + 用户画像 + 反馈循环)
|
||||
- ✅ **隐私合规设计**(PII 脱敏中间件 + 审计日志)
|
||||
- ✅ **自动化工具设计**(AutoMapper REDCap Schema 对齐)
|
||||
- ✅ **模块化开发文档**(6 份专项文档)
|
||||
|
||||
#### ⏳ 待实施功能(按 Phase 规划)
|
||||
| Phase | 内容 | 优先级 | 状态 |
|
||||
|-------|------|--------|------|
|
||||
| **Phase 1** | 基础工具层(ToolsService + HardRuleEngine + AutoMapper) | P0 | ✅ 部分完成(HardRuleEngine 已实现) |
|
||||
| **Phase 1.5** | 隐私安全(AnonymizerService + PII 脱敏) | **P0 合规必需** | 待开始 |
|
||||
| **Phase 2** | 实时质控系统(QC Worker + QcService + 批量操作) | P0 | ✅ **已完成** |
|
||||
| **Phase 3** | ReAct 引擎 + 流水账(ReActEngine + 反馈循环) | P0 | 待开始 |
|
||||
| **Phase 4** | 调度系统(SchedulerService + Cron Skill + ProfilerService) | P1 | 待开始 |
|
||||
| **Phase 5** | 智能路由(IntentService + 多意图处理) | P1 | 待开始 |
|
||||
| **Phase 6** | 视觉能力(VisionService) | 延后 | 待开始 |
|
||||
|
||||
- **部署状态**:✅ REDCap 生产环境运行中(https://redcap.xunzhengyixue.com/)
|
||||
- **已知问题**:无
|
||||
- **临时措施**:
|
||||
- ⚠️ 使用关键词匹配识别意图(Phase 2升级为Function Calling)
|
||||
- ⚠️ SessionMemory基于内存(Phase 2改为Redis)
|
||||
- ⚠️ 默认查询第一个active项目(Phase 2支持项目选择)
|
||||
- ⚠️ Dify文档通过Web界面手动上传(Phase 2开发API自动上传)
|
||||
- ⚠️ 单项目单知识库(Phase 2支持多知识库)
|
||||
- ⚠️ UserID从环境变量获取(`WECHAT_TEST_USER_ID`)- Phase 2改进
|
||||
- ⚠️ 定时轮询暂时禁用(REDCap DET已足够)- Phase 2添加
|
||||
- **开发计划文档**:[V2.9.1 综合开发计划](./04-开发计划/IIT%20Manager%20Agent%20V2.6%20综合开发计划.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -105,6 +104,8 @@ IIT Manager Agent(研究者发起试验管理助手)是一个基于企业微
|
||||
| **Day 2:REDCap拉取** | ✅ 已完成 | 2026-01-02 | RedcapAdapter(271行) + WebhookController(327行) + SyncManager(398行) |
|
||||
| **Day 3:企微推送** | ✅ 已完成 | 2026-01-03 | WechatService(314行) + WechatCallbackController(501行) + 质控Worker |
|
||||
| **Phase 1.5:AI对话** | ✅ 已完成 | 2026-01-03 & 2026-01-04 | ChatService(485行) + SessionMemory(120行) + Dify集成 |
|
||||
| **IIT 管理端配置** | ✅ 已完成 | 2026-02-07 | 运营管理端 IIT 项目管理(REDCap配置 + 质控规则 + 用户映射 + 知识库) |
|
||||
| **实时质控系统** | ✅ 已完成 | 2026-02-07 | 4个新表 + pg-boss防抖 + Worker双产出 + QcService + 管理端批量操作 |
|
||||
| **Day 6-7:小程序** | ⏳ 待开始 | - | Taro前端 + 审批界面 |
|
||||
| **Day 8:回写+集成** | ⏳ 待开始 | - | REDCap回写 + 端到端测试 |
|
||||
| **Day 9-10:完善+测试** | ⏳ 待开始 | - | 错误处理 + 日志 + 性能优化 |
|
||||
|
||||
Reference in New Issue
Block a user