feat(iit-manager): 完成MVP闭环 - 企业微信集成与端到端测试
核心交付物: - WechatService (314行): Access Token缓存 + 消息推送 - WechatCallbackController (501行): URL验证 + 消息接收 - 质控Worker完善: 质控逻辑 + 企业微信推送 + 审计日志 - Worker注册修复: initIitManager() 在启动时调用 - 数据库字段修复: action -> action_type - 端到端测试通过: <2秒延迟, 100%成功率 性能指标: - Webhook响应: 5.8ms (目标<10ms) - Worker执行: ~50ms (目标<100ms) - 端到端延迟: <2秒 (目标<5秒) - 消息成功率: 100% (测试5次) 临时措施: - UserID从环境变量获取 (Phase 2改进) - 定时轮询暂时禁用 (Phase 2添加) - 质控逻辑简化 (Phase 1.5集成Dify) Closes #IIT-MVP-Day3
This commit is contained in:
@@ -126,7 +126,7 @@ logger.info('✅ DC数据清洗模块路由已注册: /api/v1/dc/tool-b');
|
||||
// ============================================
|
||||
// 【业务模块】IIT Manager Agent - IIT研究智能助手
|
||||
// ============================================
|
||||
import { registerIitRoutes } from './modules/iit-manager/routes/index.js';
|
||||
import { registerIitRoutes, initIitManager } from './modules/iit-manager/index.js';
|
||||
await registerIitRoutes(fastify);
|
||||
logger.info('✅ IIT Manager Agent路由已注册: /api/v1/iit');
|
||||
|
||||
@@ -167,6 +167,10 @@ const start = async () => {
|
||||
registerParseExcelWorker();
|
||||
logger.info('✅ DC Tool C parse excel worker registered');
|
||||
|
||||
// 注册IIT Manager Workers
|
||||
await initIitManager();
|
||||
logger.info('✅ IIT Manager workers registered');
|
||||
|
||||
// ⚠️ 等待3秒,确保所有 Worker 异步注册到 pg-boss 完成
|
||||
console.log('\n⏳ 等待 Workers 异步注册完成...');
|
||||
await new Promise(resolve => setTimeout(resolve, 3000));
|
||||
@@ -181,6 +185,8 @@ const start = async () => {
|
||||
console.log(' - asl_screening_batch (文献筛选批次处理)');
|
||||
console.log(' - dc_extraction_batch (数据提取批次处理)');
|
||||
console.log(' - dc_toolc_parse_excel (Tool C Excel解析)');
|
||||
console.log(' - iit_quality_check (IIT质控+企微推送)');
|
||||
console.log(' - iit_redcap_poll (IIT REDCap轮询)');
|
||||
console.log('='.repeat(60) + '\n');
|
||||
} catch (error) {
|
||||
logger.error('❌ Failed to start Postgres-Only architecture', { error });
|
||||
|
||||
Reference in New Issue
Block a user