Files
AIclinicalresearch/docs/05-部署文档/03-待部署变更清单.md
HaHafeng 16179e16ca feat(rvw): deliver tenant portal v4 flow and config foundation
Implement RVW V4.0 tenant-aware backend/frontend flow with tenant routing, config APIs, and full portal UX updates. Sync system/RVW/deployment docs to capture verified upload-review-report workflow and next-step admin configuration work.

Made-with: Cursor
2026-03-14 22:29:40 +08:00

15 KiB
Raw Blame History

待部署变更清单

用途: 开发过程中实时记录所有待部署的变更,下次部署时按此清单逐项执行
维护规则: 每次修改 Schema / 新增依赖 / 改配置时,立即在此文档追加记录
Cursor Rule: .cursor/rules/deployment-change-tracking.mdc 会自动提醒
最后清零: 2026-03-100310 部署完成后清零)
本次变更: 已新增待部署项2026-03-11含 Agent 严格分步执行模式)


当前待部署变更

⚠️ 下次部署前,逐项检查此清单。部署完成后将已部署项移到「历史」区域并清零。

数据库变更

# 变更内容 迁移文件 优先级 备注
DB-1 SSA Agent 执行记录新增分步执行与种子审计字段(step_results/current_step/seed_audit 20260311_add_ssa_agent_step_seed_fields 按数据库规范生成Shadow DB 失败后采用降级流程产出 SQL并已人工收敛为仅本次字段变更
DB-2 RVW V4.0:新增 platform_schema.tenant_rvw_configs每期刊独立审稿配置含4维提示词+Handlebars模板 20260314_add_tenant_rvw_configs ⚠️ 部署前无需前置条件使用降级流程手动创建迁移SQL需执行 prisma migrate resolve --applied 20260314_add_tenant_rvw_configs 标记为已应用
DB-3 RVW V4.0rvw_schema.review_tasks 新增 tenant_id 字段 + 索引(历史数据平滑回填两步走) 20260314_add_tenant_id_to_review_tasks ⚠️ 部署前必须先确认 platform_schema.tenants 中存在 code='yanjiu' 的主站默认租户迁移会自动将历史记录回填为该租户ID需执行 prisma migrate resolve --applied 20260314_add_tenant_id_to_review_tasks 标记为已应用

后端变更 (Node.js)

# 变更内容 涉及文件 需要操作 备注
BE-1 SSA Agent 执行链路增加确定性种子注入、错误分类、seed 审计透传 + 分步执行事件step_* backend/src/modules/ssa/services/ChatHandlerService.ts, backend/src/modules/ssa/services/CodeRunnerService.ts, backend/src/modules/ssa/services/AgentCoderService.ts 重新构建镜像 与 DB-1 配套上线,确保执行可复现与可追溯
BE-2 新增 Agent 计划参数编辑接口 PATCH /api/v1/ssa/agent-executions/:executionId/plan-params(复用参数约束配置) backend/src/modules/ssa/routes/agent-execution.routes.ts, backend/src/modules/ssa/index.ts 重新构建镜像 Phase 5A.5 后端入口,限制 plan_pending 状态可编辑
BE-3 Agent 切换为严格分步模式:confirm_plan 不生成整段代码,执行阶段统一按步骤生成 + 失败后依赖短路跳过后续步骤 backend/src/modules/ssa/services/ChatHandlerService.ts 重新构建镜像 修复“第3步失败仍尝试第4步”问题降低无效重试与误导性结果
BE-4 R 代码语法修复器纠正 } else 处理策略,避免引入 unexpected 'else' backend/src/modules/ssa/services/CodeRunnerService.ts 重新构建镜像 修复线上语法错误噪声,减少重试失败
BE-5 RVW 审稿通道改造4 通道 Prompt 动静分离(业务提示词可编辑 + 系统协议固化)+ 方法学/稿约 JSON 结构化修复兜底 + DataForensics 默认切换为 LLM-only规则验证默认关闭 backend/src/modules/rvw/services/promptProtocols.ts, backend/src/modules/rvw/services/editorialService.ts, backend/src/modules/rvw/services/methodologyService.ts, backend/src/modules/rvw/services/clinicalService.ts, backend/src/modules/rvw/skills/library/DataForensicsSkill.ts, backend/src/modules/rvw/skills/core/types.ts, backend/src/common/document/ExtractionClient.ts, backend/src/common/prompt/prompt.fallbacks.ts 重新构建镜像 解决运营端改 Prompt 导致 JSON 解析失败;数据侦探默认仅“表格提取+LLM判断”规则代码保留可回切
BE-6 RVW V4.0 Phase 1Prisma Schema 新增 TenantRvwConfig 模型 + ReviewTask.tenantId 字段 + RVW租户中间件rvwTenantMiddlewareslug到UUID解析+tenant_members校验+缓存)+ FastifyRequest 扩展 tenantId/tenant 字段 backend/prisma/schema.prisma, backend/src/modules/rvw/middleware/rvwTenantMiddleware.ts, backend/src/common/auth/auth.middleware.ts 重新构建镜像 + 执行 DB-2/DB-3 迁移 与 DB-2/DB-3 配套上线Prisma Client 已重新生成
BE-7 RVW V4.0 Phase 2RVW Config CRUD APIGET/PUT /api/admin/tenants/:id/rvw-config+ Handlebars 渲染引擎Zod 校验 + 默认模板)+ SkillExecutor 按租户装配 Hybrid Prompt backend/src/modules/admin/rvw-config/rvwConfigController.ts, backend/src/modules/admin/rvw-config/rvwConfigService.ts, backend/src/modules/admin/rvw-config/rvwConfigRoutes.ts, backend/src/modules/rvw/services/rvwReportRenderer.ts, backend/src/modules/rvw/workers/reviewWorker.ts, backend/src/index.ts 重新构建镜像

前端变更

# 变更内容 涉及文件 需要操作 备注
FE-1 Agent 通道接入 step_* SSE 事件并展示分步执行状态(兼容旧 code_* 事件) frontend-v2/src/modules/ssa/hooks/useSSAChat.ts, frontend-v2/src/modules/ssa/components/AgentCodePanel.tsx, frontend-v2/src/modules/ssa/types/index.ts, frontend-v2/src/modules/ssa/stores/ssaStore.ts 重新构建镜像 右侧工作区可见每步状态/错误/耗时,便于排障
FE-2 Agent 计划阶段复用 QPER 变量编辑控件(单变量/多变量)并接入保存、确认前自动保存 frontend-v2/src/modules/ssa/components/AgentCodePanel.tsx, frontend-v2/src/modules/ssa/components/WorkflowTimeline.tsx, frontend-v2/src/modules/ssa/components/SSAWorkspacePane.tsx 重新构建镜像 对接 PATCH /agent-executions/:executionId/plan-params,实现 5A.5 前后端闭环
FE-3 Agent 工作区增强:在分步状态下可展开查看每步已生成结果(reportBlocks),并兼容严格分步模式下的 code_pending 空代码预览 frontend-v2/src/modules/ssa/components/AgentCodePanel.tsx, frontend-v2/src/modules/ssa/hooks/useSSAChat.ts 重新构建镜像 修复“有结果但代码下方不可见”与状态显示误导问题
FE-4 RVW V4.0 Phase 2TenantDetailPage 新增「智能审稿配置」Tab4 Panel稿约规范占位 / 方法学Prompt+Handlebars模板 / 数据验证深度L1-L3 / 临床FINER权重+ tenantApi 新增 fetchRvwConfig/saveRvwConfig frontend-v2/src/pages/admin/tenants/TenantDetailPage.tsx, frontend-v2/src/pages/admin/tenants/api/tenantApi.ts 重新构建镜像
BE-8 RVW V4.0 Phase 3后端 CORS 配置新增 x-tenant-id 白名单(多租户 Header 跨域支持) backend/src/index.ts 重新构建镜像
FE-5 RVW V4.0 Phase 3新增 TenantPortalLayout 极简期刊门户布局 + App.tsx 新增 /:tenantSlug/rvw/* 路由(期刊专属 URL+ LoginPage.tsx 修复跳转逻辑(读取 ?redirect= 查询参数 + 租户默认落地页 /:tenantSlug/rvw frontend-v2/src/framework/layout/TenantPortalLayout.tsx, frontend-v2/src/App.tsx, frontend-v2/src/pages/LoginPage.tsx 重新构建镜像
FE-6 RVW V4.0 租户门户体验收敛:上传按钮稳定触发(原生文件选择器 API + input 回退)、执行审稿后跳转旧版过程页(复用 TaskDetail)、列表四维状态图标修复(完成态正确显示绿勾/警告) frontend-v2/src/modules/rvw/pages/TenantDashboard.tsx, frontend-v2/src/modules/rvw/pages/TenantTaskDetail.tsx 重新构建镜像 已本地联调通过;上线后重点回归 /t/:tenant/login -> /:tenant/rvw 主流程

Python 微服务变更

# 变更内容 涉及文件 需要操作 备注
PY-1 Forensics API 新增 EXTRACT_ONLY 模式并默认仅提取表格(不执行 L1/L2 规则校验) extraction_service/forensics/api.py, extraction_service/forensics/types.py 重新构建镜像 与后端 RVW LLM-only 路径配套,避免规则与 LLM 双轨冲突

R 统计引擎变更

# 变更内容 涉及文件 需要操作 备注
R-1 execute-code 端点升级为语法+安全双层预检,新增 E_SECURITY 与运行时高危函数拦截 r-statistics-service/plumber.R 重新构建镜像 阻断 system/eval/source/file.remove/setwd 等风险调用

环境变量 / 配置变更

# 变更内容 服务 变量名 备注
ENV-1 新增 RVW 数据侦探规则引擎开关(默认关闭) nodejs-backend-test / nodejs-backend-prod RVW_FORENSICS_RULES_ENABLED=false false=仅表格提取+LLM判断推荐如需恢复规则验证可设为 true

基础设施变更

# 变更内容 范围 备注
暂无

记录模板

开发时发现需要部署的变更,复制下方模板追加到对应区域:

<!-- 数据库变更 -->
| DB-N | 简述变更 | `迁移文件名` | 高/中/低 | 备注 |

<!-- 后端变更 -->
| BE-N | 简述变更 | `file.ts` | 重新构建镜像 | 备注 |

<!-- 前端变更 -->
| FE-N | 简述变更 | `Component.tsx` | 重新构建镜像 | 备注 |

<!-- Python 变更 -->
| PY-N | 简述变更 | `requirements-prod.txt` | 重新构建镜像 | 备注 |

<!-- R 变更 -->
| R-N | 简述变更 | `tool.R` | 重新构建镜像 | 备注 |

<!-- 环境变量 -->
| ENV-N | 简述变更 | nodejs-backend-test | `VAR_NAME=value` | 备注 |

历史(已部署,仅供追溯)

0310 部署已清零项

# 变更内容 部署日期 结果
DB 新增 user_permissions 表(20260309_add_user_permissions_table 2026-03-10
DB Seed 权限 ops:user-ops 2026-03-10
BE 后端 v2.10 → v2.11用户直授权限、运营埋点与看板、AIA 附件与 RVW 提速等) 2026-03-10
FE 前端 v2.7 → v2.8运营端权限入口、用户运营权限开关、看板增强、AIA/RVW 体验优化) 2026-03-10
ENV frontend-nginx-service: BACKEND_SERVICE_HOST172.17.173.110 2026-03-10

0309 二次部署已清零项

# 变更内容 部署日期 结果
DB AIA 新增 attachments 持久化表(20260309_add_aia_attachments_persistence 2026-03-09
R v1.0.2 → v1.0.5(包诊断接口、构建期缺包校验、错误映射修复、`% %` 修复)
BE v2.9 → v2.10SSE/优雅停机/AIA附件/短信能力等变更) 2026-03-09
FE v2.6 → v2.7SSE 代理与友好重试体验优化) 2026-03-09
ENV nodejs-backend-test: R_SERVICE_URLhttp://172.17.197.26:8080 2026-03-09
ENV frontend-nginx-service: BACKEND_SERVICE_HOST172.17.173.109 2026-03-09

0309 部署已清零项

# 变更内容 部署日期 结果
DB 4 个 Prisma 迁移error_details + eQuery 去重 + agent 默认 + token_version 2026-03-09
DB 3 个种子脚本modules ASL_SR + RVW Prompt×2 + SSA Agent Prompt×2 2026-03-09
R R 统计引擎 v1.0.1 → v1.0.2execute-code + 错误处理 + AST 预检3 项变更) 2026-03-09
BE Node.js v2.8 → v2.9Deep Research V2 + RVW 4维 + SSA Agent + IIT 幂等 + 认证互踢13 项变更) 2026-03-09
FE 前端 v2.5 → v2.6ASL 手风琴 + RVW 4Tab + SSA Agent UI + 全局心跳10 项变更) 2026-03-09
ENV nodejs-backend-test: R_SERVICE_URL → http://172.17.197.22:8080 2026-03-09
ENV frontend-nginx-service: BACKEND_SERVICE_HOST → 172.17.173.108 2026-03-09

0305 部署已清零项

# 变更内容 部署日期 结果
DB modules 表 seed 更新(新增 RM、AIA_PROTOCOLIIT→CRA质控 2026-03-05
BE Node.js v2.4 → v2.6(登录踢人 + 权限体系 + SSA双通道 + 批量导入9 项变更) 2026-03-05
FE 前端 v2.0 → v2.3ASL/AIA/PKB UI优化 + 权限适配 + 批量导入重构11 项变更) 2026-03-05
ENV frontend-nginx-service: BACKEND_SERVICE_HOST → 172.17.197.36 2026-03-05
DB SSA 双通道ssa_sessions 新增 execution_mode + ssa_agent_executions 表 2026-03-05 热修
BE Node.js v2.6 → v2.7bug 修复,基于测试反馈) 2026-03-05 二次部署
FE 前端 v2.3 → v2.4bug 修复,基于测试反馈) 2026-03-05 二次部署
ENV frontend-nginx-service: BACKEND_SERVICE_HOST → 172.17.197.37 2026-03-05 二次部署
BE Node.js v2.7 → v2.8bug 修复) 2026-03-05 三次部署
FE 前端 v2.4 → v2.5bug 修复) 2026-03-05 三次部署
ENV frontend-nginx-service: BACKEND_SERVICE_HOST → 172.17.173.106 2026-03-05 三次部署

0302 部署已清零项

# 变更内容 部署日期 结果
DB 6 个 Prisma 迁移SSA 类型对齐 + IIT RBAC + is_demo + V3.1 QC 三批) 2026-03-02
DB 新建 qc_field_status、qc_event_status 2 张表84 → 86 2026-03-02
BE Node.js v2.3 → v2.4IIT V3.1 QC引擎全面升级27 项变更) 2026-03-02
FE 前端 v1.9 → v2.0GCP 报表 + V3.1 前端17 项变更) 2026-03-02
ENV frontend-nginx-service: BACKEND_SERVICE_HOST → 172.17.197.32 2026-03-02

0227 部署已清零项

# 变更内容 部署日期 结果
DB 5 个业务迁移 + 1 个 drift patch 2026-02-27
DB SSA data_profile 列补充 2026-02-27 线上热修
DB RVW review_tasks 8 列补充 2026-02-27 线上热修
BE Node.js v1.7 → v2.2SSA/ASL/RVW/IIT 全模块更新) 2026-02-27
BE Dockerfile 增加 JSON 配置文件拷贝 2026-02-27
FE 前端 v1.3 → v1.8react-markdown, nginx 配置更新) 2026-02-27
PY Python v1.1 → v1.2(新增 scipy 2026-02-27
R R 统计引擎 v1.0.1 全新部署 2026-02-27
ENV nodejs-backend-test: R_STATISTICS_SERVICE_URL 等 2026-02-27
ENV frontend-nginx-service: BACKEND_SERVICE_HOST 更新 2026-02-27