- Create platform infrastructure planning core document (766 lines) - Update architecture design to support cloud-native deployment - Update development specs and operations documentation - Simplify ASL module docs by removing duplicate implementations New Documents: - Platform Infrastructure Planning (04-骞冲彴鍩虹璁炬柦瑙勫垝.md) - Cloud-Native Development Standards (08-浜戝師鐢熷紑鍙戣鑼?md) - Git Commit Standards (06-Git鎻愪氦瑙勮寖.md) - Cloud-Native Deployment Guide (03-浜戝師鐢熼儴缃叉灦鏋勬寚鍗?md) - Daily Summary (2025-11-16 work summary) Updated Documents (11 files): - System architecture design docs (3 files) - Implementation and standards docs (4 files) - Operations documentation (1 file) - ASL module planning docs (3 files) Key Achievements: - Platform-level infrastructure architecture established - Zero-code switching between local/cloud environments - 100% support for 4 PRD deployment modes - Support for modular product combinations - 99% efficiency improvement for module development - Net +1426 lines of quality documentation Implementation: 2.5 days (20 hours) for 8 infrastructure modules
25 KiB
ASL 模块任务分解(To-do List)
文档版本: V3.0
创建日期: 2025-11-16
适用阶段: MVP(标题摘要初筛)
预计周期: 4 周
最后更新: 2025-11-16
⭐ 重要:基于真实架构(Frontend-v2 + Backend + asl_schema)
📋 使用说明
本文档是 ASL 标题摘要初筛模块 的详细任务分解清单,基于 真实的架构基础:
- ✅ Frontend-v2(顶部导航 + 模块注册)- Week 2 已完成
- ✅ Backend 增量演进(legacy/ + common/ + modules/)- Week 2 已完成
- ✅ 数据库 10个Schema隔离 - Week 1 已完成
任务状态标记:
[ ]- 待开始[🔄]- 进行中[✅]- 已完成[❌]- 已取消/跳过
🌥️ 云原生开发要求(2025-11-16 新增)
⭐ 重要提醒:所有任务必须遵循云原生开发规范
详细规范:云原生开发规范
核心要求
| 要求 | 说明 |
|---|---|
| ✅ 存储抽象层 | 使用 StorageFactory,支持本地/OSS切换 |
| ✅ 内存解析 | Excel导入使用 xlsx.read(buffer),不落盘 |
| ✅ 异步任务 | LLM筛选必须异步处理(> 10秒) |
| ✅ 环境变量 | 所有配置从 .env 读取 |
| ✅ 数据库连接池 | 使用全局 prisma 实例 |
| ✅ OSS字段预留 | pdfUrl, pdfOssKey, pdfFileSize |
每日检查清单
提交代码前必须确认:
- 是否使用存储抽象层?
- 是否避免文件落盘?
- 是否使用全局 prisma 实例?
- 是否所有配置都从环境变量读取?
- 长时间任务是否异步处理?
🗓️ Week 1: 数据库Schema与后端API框架(Day 1-5)
Day 1: Prisma Schema 设计
数据库任务
-
T1.1.1 设计 asl_schema 表结构
- 文件:
backend/prisma/schema.prisma - 新增4个模型:
AslScreeningProject(筛选项目表)AslLiterature(文献条目表)AslScreeningResult(筛选结果表)AslScreeningTask(筛选任务表)
- 使用
@@schema("asl_schema")指定Schema - ⭐ 新增要求(云原生):在
AslLiterature中添加 OSS 字段pdfUrl String? @map("pdf_url")- PDF访问URLpdfOssKey String? @map("pdf_oss_key")- OSS存储KeypdfFileSize Int? @map("pdf_file_size")- 文件大小(字节)- 说明:MVP阶段预留,V1.0阶段使用
- 预计耗时:2 小时
- 负责人:后端开发
- 参考:
02-标题摘要初筛开发计划.mdWeek 1 Day 1
- 文件:
-
T1.1.2 在 User 模型中添加关联
// backend/prisma/schema.prisma - User模型添加 aslProjects AslScreeningProject[] @relation("AslProjects")- 预计耗时:10 分钟
- 负责人:后端开发
-
T1.1.3 运行 Prisma 迁移
cd backend npx prisma migrate dev --name add_asl_screening_tables- 预计耗时:5 分钟
- 负责人:后端开发
-
T1.1.4 生成 Prisma Client
npx prisma generate- 预计耗时:5 分钟
- 负责人:后端开发
-
T1.1.5 验证数据库表创建
- 使用 DBeaver 连接数据库
- 检查 asl_schema 下的4个表
- 检查索引和外键
- 预计耗时:15 分钟
- 负责人:后端开发
Day 1 验收标准:
- ✅ asl_schema 4张表创建成功
- ✅ Prisma Client 生成无错误
- ✅ 可查询 asl_schema 表
Day 2: 后端目录结构创建
⭐ 前置条件(2025-11-16 更新):平台已提供存储服务
说明:存储抽象层已在平台级实现(backend/src/common/storage/),ASL模块可直接使用
参考文档:平台基础设施规划
平台服务说明(ASL模块无需实现)
平台已提供以下服务:
| 服务 | 路径 | 使用方式 | 说明 |
|---|---|---|---|
| 存储服务 | common/storage/ |
import { storage } from '@/common/storage' |
文件上传下载(本地/OSS) |
| 日志系统 | common/logging/ |
import { logger } from '@/common/logging' |
标准化日志输出 |
| 异步任务 | common/jobs/ |
import { jobQueue } from '@/common/jobs' |
长时间任务处理 |
| 缓存服务 | common/cache/ |
import { cache } from '@/common/cache' |
分布式缓存 |
| 数据库 | config/database.ts |
import { prisma } from '@/config/database' |
全局Prisma实例 |
示例代码:
// ASL模块直接使用平台服务
import { storage } from '@/common/storage'
import { logger } from '@/common/logging'
import { jobQueue } from '@/common/jobs'
import { prisma } from '@/config/database'
// 上传文件
const url = await storage.upload('asl/literature/123.pdf', pdfBuffer)
// 记录日志
logger.info('Literature uploaded', { projectId, url })
// 创建异步任务
const job = await jobQueue.push('asl:screening', { projectId })
后端任务
-
T1.2.1 创建 ASL 模块目录结构
cd backend/src/modules mkdir -p asl/{routes,controllers,services,schemas,types,utils}- 预计耗时:5 分钟
- 负责人:后端开发
-
T1.2.2 创建路由文件
routes/index.ts- 路由注册- 实现占位函数(返回404或空数组)
- 预计耗时:30 分钟
- 负责人:后端开发
-
T1.2.3 创建控制器文件
controllers/projectController.ts- 项目控制器controllers/literatureController.ts- 文献控制器controllers/screeningController.ts- 筛选控制器- 创建占位函数(每个控制器5-7个函数)
- 预计耗时:1 小时
- 负责人:后端开发
-
T1.2.4 创建服务层文件
services/projectService.ts- 项目业务逻辑services/literatureService.ts- 文献业务逻辑services/llmScreeningService.ts- LLM筛选服务- 预计耗时:30 分钟
- 负责人:后端开发
-
T1.2.5 创建类型定义文件
// types/screening.types.ts export interface Literature { ... } export interface ScreeningResult { ... } export interface Protocol { ... }- 预计耗时:30 分钟
- 负责人:后端开发
Day 2 验收标准:
- ✅ ASL 模块目录结构完整
- ✅ 所有占位文件创建完成
- ✅ 可正常使用平台服务(storage/logger/prisma等)
Day 3: 注册ASL路由
后端任务
-
T1.3.1 实现
routes/index.ts- 注册所有API路由
- 参考
legacy/routes/的风格 - 预计耗时:1 小时
- 负责人:后端开发
- 参考:
02-标题摘要初筛开发计划.mdWeek 1 Day 2
-
T1.3.2 在
src/index.ts中注册ASL路由import { aslRoutes } from './modules/asl/routes/index.js' await app.register(aslRoutes, { prefix: '/api/v1/asl' }) console.log('✅ ASL 路由已注册到 /api/v1/asl/*')- 预计耗时:10 分钟
- 负责人:后端开发
-
T1.3.3 测试路由可访问性
# 启动后端服务 cd backend && npm run dev # 测试健康检查 curl http://localhost:3001/api/v1/asl/projects- 预计耗时:10 分钟
- 负责人:后端开发
Day 3 验收标准:
- ✅ 后端服务正常启动
- ✅ ASL路由注册成功
- ✅ API可访问(返回空数组或404)
Day 4-5: 实现基础API
后端任务
-
T1.4.1 实现
projectService.tscreateProject(userId, data)- 创建项目listProjects(userId)- 获取项目列表getProject(projectId)- 获取项目详情- 使用 Prisma Client 操作 asl_schema
- 预计耗时:2 小时
- 负责人:后端开发
-
T1.4.2 实现
projectController.tscreateProject- 控制器listProjects- 控制器getProject- 控制器- 请求验证、响应格式化
- 预计耗时:1.5 小时
- 负责人:后端开发
-
T1.4.3 实现
literatureService.tsimportBatch(projectId, literatures)- 批量导入listLiteratures(projectId, page, pageSize)- 分页查询- 去重逻辑(基于DOI和标题)
- 预计耗时:2 小时
- 负责人:后端开发
-
T1.4.4 实现
literatureController.tsimportLiteratures- 导入控制器listLiteratures- 列表控制器- Excel数据验证
- 预计耗时:1.5 小时
- 负责人:后端开发
-
T1.4.5 Postman 测试
- 创建 Postman 测试集合
- 测试所有已实现的API
- 预计耗时:1 小时
- 负责人:后端开发
Day 4-5 验收标准:
- ✅ 项目管理API可调用
- ✅ 文献导入API可调用
- ✅ 数据正确保存到 asl_schema
🗓️ Week 2: LLM筛选核心(Day 6-10)
Day 6: JSON Schema 与提示词设计
后端任务
-
T2.1.1 定义 JSON Schema
- 文件:
backend/src/modules/asl/schemas/screening.schema.ts - 定义输出结构(decision, reason, confidence, pico)
- 预计耗时:1 小时
- 负责人:后端开发 + AI工程师
- 文件:
-
T2.1.2 安装验证库
cd backend npm install ajv- 预计耗时:5 分钟
- 负责人:后端开发
-
T2.1.3 编写 Schema 验证函数
- 使用
Ajv验证 - 错误信息格式化
- 预计耗时:30 分钟
- 负责人:后端开发
- 使用
-
T2.1.4 设计提示词模板 v1.0.0
- 文件:
backend/prompts/asl/screening/v1.0.0-basic.txt - 包含:PICO标准、纳排标准、输出格式
- 预计耗时:2 小时
- 负责人:AI工程师 + 医学专家
- 文件:
-
T2.1.5 人工测试提示词
- 手动调用 LLM(使用 10 篇样本)
- 评估输出质量
- 迭代优化提示词
- 预计耗时:2 小时
- 负责人:AI工程师
Day 6 验收标准:
- ✅ JSON Schema 定义完成
- ✅ 提示词人工测试准确率 ≥ 80%
Day 7: LLM 服务封装
后端任务
-
T2.2.1 创建
llmScreeningService.ts- 预计耗时:10 分钟
- 负责人:后端开发
-
T2.2.2 实现
callModel方法- 调用
LLMFactory.createLLM()(复用 common/llm) - 设置参数(temperature: 0)
- 错误处理
- 预计耗时:1 小时
- 负责人:后端开发
- 调用
-
T2.2.3 实现
parseModelOutput方法- JSON 解析(使用
common/utils/jsonParser.js) - Schema 验证
- 格式化为
ModelDecision - 预计耗时:1 小时
- 负责人:后端开发
- JSON 解析(使用
-
T2.2.4 实现
compareDecisions方法- 对比两个模型的 PICO 判断
- 识别冲突字段
- 预计耗时:1 小时
- 负责人:后端开发
-
T2.2.5 实现
shouldReview方法- 自动分流规则
- 置信度阈值(< 0.7)
- 预计耗时:30 分钟
- 负责人:后端开发
-
T2.2.6 实现
dualModelScreening方法- 并行调用两个模型(
Promise.all) - 汇总结果
- 预计耗时:1 小时
- 负责人:后端开发
- 并行调用两个模型(
-
T2.2.7 单元测试
- 测试 JSON 解析
- 测试冲突检测
- 测试分流规则
- 预计耗时:2 小时
- 负责人:后端开发
Day 7 验收标准:
- ✅ 可成功调用 DeepSeek 和 Qwen3
- ✅ JSON Schema 验证通过率 > 95%
- ✅ 冲突检测准确
Day 8: 批量筛选任务管理
后端任务
-
T2.3.1 实现
batchScreening方法- 分组逻辑(15篇/组)
- 并行处理(
Promise.all) - 进度计算
- 预计耗时:2 小时
- 负责人:后端开发
-
T2.3.2 实现任务创建
screeningService.createTask- 初始化任务记录(AslScreeningTask表)
- 预计耗时:1 小时
- 负责人:后端开发
-
T2.3.3 实现任务状态更新
screeningService.updateTaskProgress- 更新 processedItems, successItems 等
- 预计耗时:1 小时
- 负责人:后端开发
-
T2.3.4 实现结果保存
screeningService.saveResults- 批量保存到
AslScreeningResult表 - 预计耗时:1.5 小时
- 负责人:后端开发
-
T2.3.5 错误处理和重试
- 单篇失败不影响整体
- 记录错误信息
- 预计耗时:1 小时
- 负责人:后端开发
Day 8 验收标准:
- ✅ 可批量处理 100 篇文献
- ✅ 任务状态正确记录
- ✅ 结果正确保存到数据库
Day 9: 筛选 API 开发
后端任务
-
T2.4.1 实现启动筛选 API
POST /api/v1/asl/projects/:id/screening/start- 创建任务
- ⭐ 云原生要求:异步执行筛选(立即返回taskId,后台处理)
- 避免请求超时(SAE默认30秒超时限制)
- 预计耗时:2 小时
- 负责人:后端开发
- 参考:云原生开发规范 - 原则5
-
T2.4.2 实现进度查询 API
GET /api/v1/asl/screening/tasks/:taskId/progress- 返回实时进度
- 预计耗时:1 小时
- 负责人:后端开发
-
T2.4.3 实现结果查询 API
GET /api/v1/asl/projects/:id/screening/results- 支持过滤(conflictOnly, finalDecision)
- 分页
- 预计耗时:1.5 小时
- 负责人:后端开发
-
T2.4.4 实现更新决策 API
PUT /api/v1/asl/screening/results/:idPOST /api/v1/asl/screening/results/batch-update- 预计耗时:1 小时
- 负责人:后端开发
-
T2.4.5 Postman 测试
- 创建测试集合
- 测试各种场景
- 预计耗时:1 小时
- 负责人:后端开发
Day 9 验收标准:
- ✅ API 调用成功
- ✅ 任务可异步执行
- ✅ 进度查询实时准确
Day 10: 后端集成测试
后端任务
-
T2.5.1 端到端测试(50篇文献)
- 导入文献 → 启动筛选 → 查询结果
- 预计耗时:30 分钟执行 + 1小时分析
- 负责人:后端开发
-
T2.5.2 性能测试
- 测试 100 篇文献筛选时间
- 目标:< 10 分钟
- 预计耗时:1 小时
- 负责人:后端开发
-
T2.5.3 质量评估
- 计算准确率(对比金标准,如果有)
- 计算双模型一致率
- 计算冲突率
- 预计耗时:2 小时
- 负责人:AI工程师
-
T2.5.4 修复 Bug
- 根据测试结果修复
- 预计耗时:2 小时
- 负责人:后端开发
Week 2 总验收标准:
- ✅ 可成功筛选 100 篇文献
- ✅ 准确率 ≥ 85%
- ✅ 双模型一致率 ≥ 80%
- ✅ 性能达标(100篇 < 10分钟)
🗓️ Week 3: 前端模块开发(Day 11-15)
Day 11: 前端模块结构创建
前端任务
-
T3.1.1 更新
modules/asl/index.tsx- 移除
placeholder: true标记 - 改为
placeholder: false - 预计耗时:5 分钟
- 负责人:前端开发
- 移除
-
T3.1.2 创建 ASL 子目录
cd frontend-v2/src/modules/asl mkdir pages components api hooks types utils- 预计耗时:5 分钟
- 负责人:前端开发
-
T3.1.3 创建路由配置
routes.tsx- 定义4个子路由
- 使用
lazy()懒加载 - 预计耗时:30 分钟
- 负责人:前端开发
-
T3.1.4 创建4个主页面(占位)
pages/ProjectList.tsxpages/ScreeningSettings.tsxpages/ScreeningWorkbench.tsxpages/ScreeningResults.tsx- 每个页面显示"开发中"占位
- 预计耗时:30 分钟
- 负责人:前端开发
-
T3.1.5 测试路由
- 启动前端:
cd frontend-v2 && npm run dev - 访问
http://localhost:3000/literature - 确认顶部导航显示"AI智能文献"
- 预计耗时:10 分钟
- 负责人:前端开发
- 启动前端:
Day 11 验收标准:
- ✅ 顶部导航显示"AI智能文献"(不再是占位)
- ✅ 点击后进入项目列表页
Day 12: Excel 上传功能
前端任务
-
T3.2.1 安装依赖
cd frontend-v2 npm install xlsx- 预计耗时:5 分钟
- 负责人:前端开发
-
T3.2.2 创建
ExcelUploader组件- 文件选择(
antd Upload) - 文件类型验证(.xls, .xlsx)
- 预计耗时:1 小时
- 负责人:前端开发
- 文件选择(
-
T3.2.3 实现 Excel 解析逻辑
- 使用
xlsx库解析 - ⭐ 云原生要求:内存解析
xlsx.read(buffer),禁止落盘 - 字段映射(Title → title)
- 数据验证(必填字段)
- 预计耗时:2 小时
- 负责人:前端开发
- 参考:云原生开发规范 - 禁止做法2
- 使用
-
T3.2.4 实现去重逻辑
- 基于 DOI 去重
- 基于标题去重(标准化)
- 去重统计展示
- 预计耗时:1 小时
- 负责人:前端开发
-
T3.2.5 实现文献预览表格
- 使用
Ant Design Table - 显示:标题、摘要(截断)、作者、年份、期刊
- 分页(50条/页)
- 预计耗时:1.5 小时
- 负责人:前端开发
- 使用
Day 12 验收标准:
- ✅ 可成功上传 Excel 文件
- ✅ 解析后数据正确展示
- ✅ 去重功能正常
Day 13: API 客户端封装
前端任务
-
T3.3.1 创建 API 客户端
api/index.ts- 使用
axios或fetch - 复用
shared/api/client配置 - 预计耗时:1 小时
- 负责人:前端开发
-
T3.3.2 实现项目 API
createProject(data)listProjects()getProject(id)- 预计耗时:1 小时
- 负责人:前端开发
-
T3.3.3 实现文献 API
importLiteratures(projectId, data)listLiteratures(projectId, page, pageSize)- 预计耗时:1 小时
- 负责人:前端开发
-
T3.3.4 实现筛选 API
startScreening(projectId)getScreeningResults(projectId, filters)updateScreeningResult(resultId, data)- 预计耗时:1.5 小时
- 负责人:前端开发
-
T3.3.5 前后端联调
- 测试所有API调用
- 错误处理
- Loading 状态
- 预计耗时:2 小时
- 负责人:前端开发 + 后端开发
Day 13 验收标准:
- ✅ API 客户端可正常调用后端
- ✅ 上传Excel后数据保存到数据库
Day 14-15: 审核工作台(核心UI)
前端任务
-
T3.4.1 实现
ScreeningTable组件- 双行表格结构(主行 + 展开行)
- 预计耗时:2 小时
- 负责人:前端开发
-
T3.4.2 实现表头
- 第一行:DS 判断、Qwen 判断(合并单元格)
- 第二行:P、I、C、S、结论
- 预计耗时:1 小时
- 负责人:前端开发
-
T3.4.3 实现主行
- 展开/收起按钮
- 文献ID、研究ID、来源
- DS和Qwen的PICO判断(✓/✗/?)
- 冲突状态
- 最终决策下拉框
- 预计耗时:3 小时
- 负责人:前端开发
-
T3.4.4 实现展开行
- 显示DS和Qwen的证据短语
- 格式化展示
- 预计耗时:1.5 小时
- 负责人:前端开发
-
T3.4.5 实现冲突高亮
- 冲突行背景色变红
- 冲突字段标记
- 预计耗时:1 小时
- 负责人:前端开发
-
T3.4.6 实现双视图原文审查模态框
- 使用
Ant Design Modal - 左侧:摘要展示 + 高亮证据
- 右侧:双模型详情(Tab切换)
- 预计耗时:3 小时
- 负责人:前端开发
- 使用
Day 14-15 验收标准:
- ✅ 审核工作台完整可用
- ✅ 表格可正确展示筛选结果
- ✅ 冲突项高亮显示
- ✅ 双视图模态框可弹出
🗓️ Week 4: 结果展示与集成测试(Day 16-20)
Day 16: 结果统计与展示
前端任务
-
T4.1.1 实现统计概览卡片
- 总数、纳入、排除、待定
- 使用
Ant Design Statistic - 预计耗时:1.5 小时
- 负责人:前端开发
-
T4.1.2 实现 PRISMA 式排除总结
- 按排除原因分组统计
- 柱状图展示
- 预计耗时:2 小时
- 负责人:前端开发
-
T4.1.3 实现结果列表 Tab 页
- 纳入 Tab
- 排除 Tab
- 待定 Tab
- 预计耗时:1.5 小时
- 负责人:前端开发
-
T4.1.4 实现结果表格
- 列:文献ID、研究ID、标题、决策、理由
- 可展开查看摘要
- 预计耗时:2 小时
- 负责人:前端开发
Day 16 验收标准:
- ✅ 统计数据正确展示
- ✅ PRISMA 排除总结清晰
- ✅ 结果列表可正常查看
Day 17: Excel 导出功能
后端任务
-
T4.2.1 后端实现导出逻辑
- 使用
exceljs库 - 生成 Excel 文件
- 预计耗时:2 小时
- 负责人:后端开发
- 使用
-
T4.2.2 实现导出 API
GET /api/v1/asl/projects/:id/screening/results/export- 支持过滤参数(导出全部/仅纳入/仅排除)
- 预计耗时:1.5 小时
- 负责人:后端开发
前端任务
- T4.2.3 前端实现导出按钮
- 调用导出 API
- 下载文件
- 预计耗时:1 小时
- 负责人:前端开发
Day 17 验收标准:
- ✅ 可成功导出 Excel
- ✅ 导出格式规范
- ✅ 数据完整准确
Day 18: 完整流程测试
集成测试任务
-
T4.3.1 端到端完整流程测试
- 上传 → 筛选 → 复核 → 导出
- 使用真实的 199 篇测试数据
- 预计耗时:2 小时
- 负责人:全栈开发 + 测试
-
T4.3.2 异常场景测试
- 网络中断
- API 错误
- 数据格式错误
- 预计耗时:2 小时
- 负责人:测试
-
T4.3.3 性能测试
- 500 篇文献筛选
- 大文件导出
- 预计耗时:1 小时
- 负责人:测试
-
T4.3.4 修复 Bug
- 记录和修复所有发现的问题
- 预计耗时:3 小时
- 负责人:全栈开发
Day 18 验收标准:
- ✅ 完整流程无阻塞
- ✅ 异常处理完善
- ✅ 性能达标
Day 19: 质量验收
质量验收任务
-
T4.4.1 准确率测试
- 使用金标准数据集(199 篇)
- 计算准确率、召回率、F1
- 目标:准确率 ≥ 85%
- 预计耗时:2 小时
- 负责人:AI工程师 + 医学专家
-
T4.4.2 双模型一致性测试
- 计算一致率
- 目标:≥ 80%
- 预计耗时:1 小时
- 负责人:AI工程师
-
T4.4.3 JSON Schema 验证率测试
- 统计验证通过率
- 目标:≥ 95%
- 预计耗时:30 分钟
- 负责人:后端开发
-
T4.4.4 人工复核队列测试
- 统计需人工复核的比例
- 目标:≤ 20%
- 预计耗时:30 分钟
- 负责人:AI工程师
-
T4.4.5 根据测试结果优化
- 调整提示词
- 调整分流阈值
- 预计耗时:3 小时
- 负责人:AI工程师
Day 19 验收标准:
- ✅ 准确率 ≥ 85%
- ✅ 双模型一致率 ≥ 80%
- ✅ JSON Schema 验证通过率 ≥ 95%
- ✅ 人工复核队列 ≤ 20%
Day 20: 文档与交付
文档任务
-
T4.5.1 编写用户手册
- 功能介绍
- 操作步骤
- 常见问题
- 预计耗时:3 小时
- 负责人:产品经理
-
T4.5.2 编写技术文档
- 架构设计
- API 文档
- 数据库设计
- 预计耗时:2 小时
- 负责人:后端开发
-
T4.5.3 编写测试报告
- 测试用例
- 测试结果
- 质量指标
- 预计耗时:2 小时
- 负责人:测试
-
T4.5.4 代码审查
- 代码规范检查
- 安全性检查
- 性能检查
- 预计耗时:2 小时
- 负责人:技术 Leader
-
T4.5.5 准备演示环境
- 部署到测试环境
- 准备演示数据
- 预计耗时:1 小时
- 负责人:运维
Day 20 验收标准:
- ✅ 文档完整
- ✅ 代码质量合格
- ✅ 测试报告完整
- ✅ 演示环境就绪
📊 总体验收清单
功能完整性
- ✅ 用户可上传 Excel 文件
- ✅ Excel 格式验证正常
- ✅ 文献去重功能正常
- ✅ AI 双模型筛选可运行
- ✅ 冲突自动检测和标记
- ✅ 人工复核界面完整
- ✅ 批量操作功能正常
- ✅ 结果统计正确展示
- ✅ Excel 导出功能正常
- ✅ ASL模块在顶部导航显示并可点击
质量指标
- ✅ 准确率 ≥ 85%
- ✅ 双模型一致率 ≥ 80%
- ✅ JSON Schema 验证通过率 ≥ 95%
- ✅ 人工复核队列 ≤ 20%
性能指标
- ✅ 100 篇文献筛选 ≤ 10 分钟
- ✅ Excel 上传响应 ≤ 3 秒
- ✅ 页面加载 ≤ 2 秒
架构验证
- ✅ ASL模块正确注册到 moduleRegistry.ts
- ✅ 后端路由注册到 /api/v1/asl/*
- ✅ 数据保存到 asl_schema
- ✅ 复用 common/llm 成功
- ✅ Prisma Client 正常工作
📚 相关文档
更新日志:
- 2025-11-16: V3.0 完全重写,基于真实架构(Frontend-v2 + Backend + asl_schema),详细到每个任务
- 2025-11-16: V2.0 完全重写,详细到每个任务(预计耗时、负责人、验收标准)
- 2025-10-29: V1.0 创建,初始占位符