fix(rvw): speed up review flow and complete forensics export

Run RVW skills in controlled parallel mode and persist per-skill progress so users can view completed tabs during execution.
Also include data-forensics tables in Word export and refresh the RVW module status documentation.

Made-with: Cursor
This commit is contained in:
2026-03-10 21:10:43 +08:00
parent d96cdf3fe8
commit 4a4771fbbe
7 changed files with 377 additions and 78 deletions

View File

@@ -1,10 +1,10 @@
# RVW稿件审查模块 - 当前状态与开发指南
> **文档版本:** v6.0
> **文档版本:** v6.1
> **创建日期:** 2026-01-07
> **最后更新:** 2026-03-07
> **最后更新:** 2026-03-10
> **维护者:** 开发团队
> **当前状态:** 🚀 **V3.0 "智能审稿增强" 完成LLM数据核查 + 临床评估 + 稳定性增强**
> **当前状态:** 🚀 **V3.0.1 "性能与体验增强" 完成4模块并行 + 增量展示 + 导出补全**
> **文档目的:** 快速了解RVW模块状态为新AI助手提供上下文
>
> **🎉 V3.0 进展2026-03-07**
@@ -14,6 +14,12 @@
> - ✅ **稳定性增强**SkillExecutor 使用 Promise.allSettled 实现并行故障隔离
> - ✅ **部分完成支持**:新增 `partial_completed` 状态 + `errorDetails` 字段,部分模块失败仍展示成功结果
> - ✅ **前端 4 Tab 报告**:稿约规范性 / 方法学 / 数据验证 / 临床评估Word 导出全覆盖
>
> **⚡ V3.0.1 增强2026-03-10**
> - ✅ **4模块受控并行**DataForensics 与 Editorial/Methodology/Clinical 同组并行,`maxConcurrency=4` 控制并发上限
> - ✅ **增量结果持久化**:每个 Skill 完成即写入任务中间结果,`getTaskDetail` 返回模块级 `reviewProgress`
> - ✅ **先出先看**TaskDetail 在审查中即可展示已完成模块(无需等待全流程结束)
> - ✅ **Word 导出修复**:补齐“数据验证”章节,导出汇总 + 表格明细 + 该表问题列表
>
> **V2.0 进展回顾:**
> - ✅ L1 算术验证 + L2 统计验证 + L2.5 一致性取证
@@ -34,7 +40,7 @@
| **商业价值** | ⭐⭐⭐⭐⭐ 极高 |
| **独立性** | ⭐⭐⭐⭐⭐ 极高(用户群完全不同) |
| **目标用户** | 期刊初审编辑 |
| **开发状态** | ✅ **V3.0 完成4维审查(规范性+方法学+数据验证+临床评估)+ 稳定性增强 + Word导出** |
| **开发状态** | ✅ **V3.0.1 完成4维审查并行提速 + 增量结果展示 + Word导出补全** |
### 核心目标
@@ -105,7 +111,7 @@ backend/src/modules/rvw/
│ ├── clinicalService.ts # 🆕 V3.0 临床专业评估服务
│ └── utils.ts # 工具函数
├── workers/
│ └── reviewWorker.ts # pg-boss异步任务处理V2.0 Skills集成 + V3.0 partial_completed
│ └── reviewWorker.ts # pg-boss异步任务处理V2.0 Skills集成 + V3.0 partial_completed + V3.0.1 增量落库
├── skills/ # V2.0 Skills 架构
│ ├── core/ # 核心框架types, registry, executor[allSettled]等)
│ ├── library/ # Skill 实现Forensics[+LLM], Editorial, Methodology, 🆕Clinical
@@ -125,7 +131,7 @@ frontend-v2/src/modules/rvw/
├── Header.tsx # 页头(上传按钮)
├── Sidebar.tsx # 侧边栏导航
├── TaskTable.tsx # 任务列表表格(支持 partial_completed 状态)
├── TaskDetail.tsx # 任务详情(进度条+报告+Word导出+部分完成警告)
├── TaskDetail.tsx # 任务详情(进度条+增量展示+Word导出+部分完成警告)
├── EditorialReport.tsx # 稿约规范性报告
├── MethodologyReport.tsx # 方法学评估报告
├── ForensicsReport.tsx # 数据验证报告(含 LLM 核查结果)
@@ -446,6 +452,17 @@ Content-Type: multipart/form-data
| 前端 partial_completed UI | ✅ 已完成 | 琥珀色警告横幅 + 列表"部分完成"标签 |
| Word 导出覆盖临床评估 | ✅ 已完成 | 导出报告包含临床专业评估章节 |
### ⚡ V3.0.1 "性能与体验增强" 开发进度2026-03-10
| 任务 | 状态 | 说明 |
|------|------|------|
| DataForensics 并入并行组 | ✅ 已完成 | 与 Editorial/Methodology/Clinical 同组并行执行 |
| 并发上限控制 | ✅ 已完成 | Executor 支持按 `maxConcurrency` 分批并行 |
| 模块完成即持久化 | ✅ 已完成 | Worker 通过 `onSkillComplete` 增量写入 `contextData` |
| 任务详情增量返回 | ✅ 已完成 | `getTaskDetail` 返回模块结果与 `reviewProgress` |
| 前端先出先看 | ✅ 已完成 | 审查过程中实时展示已完成 Tab |
| Word 导出补齐数据验证 | ✅ 已完成 | 导出包含数据验证汇总、表格明细、该表问题列表 |
### 后续版本V3.1+
- [ ] 全面移除评分机制(只列问题,不打分)
@@ -462,7 +479,7 @@ Content-Type: multipart/form-data
---
**文档版本:** v6.0
**最后更新:** 2026-03-07
**当前状态:** 🚀 V3.0 "智能审稿增强" 完成LLM数据核查 + 临床评估 + 稳定性增强
**文档版本:** v6.1
**最后更新:** 2026-03-10
**当前状态:** 🚀 V3.0.1 "性能与体验增强" 完成4模块并行 + 增量展示 + 导出补全
**下一步:** V3.1 移除评分机制 + 单模块重试