Files
AIclinicalresearch/部署检查清单.md
HaHafeng 5523ef36ea feat(admin): Complete Phase 3.5.1-3.5.4 Prompt Management System (83%)
Summary:
- Implement Prompt management infrastructure and core services
- Build admin portal frontend with light theme
- Integrate CodeMirror 6 editor for non-technical users

Phase 3.5.1: Infrastructure Setup
- Create capability_schema for Prompt storage
- Add prompt_templates and prompt_versions tables
- Add prompt:view/edit/debug/publish permissions
- Migrate RVW prompts to database (RVW_EDITORIAL, RVW_METHODOLOGY)

Phase 3.5.2: PromptService Core
- Implement gray preview logic (DRAFT for debuggers, ACTIVE for users)
- Module-level debug control (setDebugMode)
- Handlebars template rendering
- Variable extraction and validation (extractVariables, validateVariables)
- Three-level disaster recovery (database -> cache -> hardcoded fallback)

Phase 3.5.3: Management API
- 8 RESTful endpoints (/api/admin/prompts/*)
- Permission control (PROMPT_ENGINEER can edit, SUPER_ADMIN can publish)

Phase 3.5.4: Frontend Management UI
- Build admin portal architecture (AdminLayout, OrgLayout)
- Add route system (/admin/*, /org/*)
- Implement PromptListPage (filter, search, debug switch)
- Implement PromptEditor (CodeMirror 6 simplified for clinical users)
- Implement PromptEditorPage (edit, save, publish, test, version history)

Technical Details:
- Backend: 6 files, ~2044 lines (prompt.service.ts 596 lines)
- Frontend: 9 files, ~1735 lines (PromptEditorPage.tsx 399 lines)
- CodeMirror 6: Line numbers, auto-wrap, variable highlight, search, undo/redo
- Chinese-friendly: 15px font, 1.8 line-height, system fonts

Next Step: Phase 3.5.5 - Integrate RVW module with PromptService

Tested: Backend API tests passed (8/8), Frontend pending user testing
Status: Ready for Phase 3.5.5 RVW integration
2026-01-11 21:25:16 +08:00

8.0 KiB
Raw Blame History

🚀 SAE部署检查清单

用途: 部署前的最后检查,确保不遗漏任何步骤
使用方法: 打印或在另一个屏幕上打开,逐项勾选
预计时间: 10分钟检查


📋 阶段1阿里云服务准备

云数据库 RDS

  • RDS实例已创建PostgreSQL 15+
  • 数据库 aiclinical_dev 已创建
  • 数据库用户 aiclinical 已创建
  • 用户已授权读写权限
  • 白名单已添加(可以先设置为 0.0.0.0/0
  • 已获取内网连接地址(rm-xxxx.mysql.rds.aliyuncs.com
  • 已测试连接成功

快速验证命令:

# 使用 psql 或任何PostgreSQL客户端
psql "postgresql://aiclinical:密码@rm-xxxx.mysql.rds.aliyuncs.com:5432/aiclinical_dev"

对象存储 OSS

  • Bucket aiclinical-dev 已创建
  • Bucket区域与RDS相同
  • 存储类型设置为「标准存储」
  • 读写权限设置为「私有」
  • RAM用户 aiclinical-oss 已创建
  • RAM用户已授权 AliyunOSSFullAccess
  • 已获取 AccessKeyId 和 AccessKeySecret
  • 已保存密钥到安全的地方(只显示一次!)

快速验证:

# 使用ossutil测试
ossutil ls oss://aiclinical-dev

容器镜像服务 ACR

  • 容器镜像服务已开通
  • 命名空间 aiclinical 已创建
  • 镜像仓库 backend-dev 已创建
  • 镜像仓库类型为「私有」
  • 已设置镜像仓库登录密码
  • 已测试Docker登录成功

快速验证:

docker login --username=你的阿里云账号 registry.cn-hangzhou.aliyuncs.com
# 输入密码,看是否 "Login Succeeded"

📦 阶段2Docker镜像准备

后端镜像

  • backend/Dockerfile 文件已创建
  • backend/.dockerignore 文件已创建
  • Docker Desktop 已启动
  • 镜像构建成功(docker build -t aiclinical-backend:dev .
  • 镜像标签已创建(docker tag ...
  • 镜像已推送到ACRdocker push ...
  • 在ACR控制台确认镜像版本存在

快速验证:

# 查看本地镜像
docker images | Select-String "aiclinical-backend"

# 查看ACR远程镜像
# 登录ACR控制台 → 镜像仓库 → backend-dev → 镜像版本

Python微服务镜像可选

  • extraction_service/Dockerfile 文件已创建
  • 镜像构建成功
  • 镜像已推送到ACR
  • 镜像仓库 python-dev 已创建

临时方案: 如果Python服务还在本地运行可以先跳过等后端部署成功后再处理


⚙️ 阶段3环境变量准备

必填变量(缺一不可)

  • NODE_ENV=development
  • DATABASE_URL=postgresql://...替换为真实RDS地址
  • OSS_REGION=oss-cn-hangzhou
  • OSS_BUCKET=aiclinical-dev
  • OSS_ACCESS_KEY_ID=你的ID
  • OSS_ACCESS_KEY_SECRET=你的Secret
  • DEEPSEEK_API_KEY=你的Key或其他LLM API Key
  • JWT_SECRET=随机字符串32位以上

推荐配置

  • CACHE_TYPE=memory初期不用Redis
  • QUEUE_TYPE=memory
  • LOG_LEVEL=debug(开发环境)
  • CORS_ORIGIN=*(开发环境)

特殊字符检查

  • 所有密码和密钥不包含 @ # $ % & 空格
  • DATABASE_URL中的密码已正确转义如果有特殊字符
  • JWT_SECRET是随机生成的不要用默认值

快速验证:

# 复制 .env.sae.example 内容到文本编辑器
# 逐行替换所有"你的XXX"
# 确认没有遗漏

🚀 阶段4SAE应用创建

基本配置

  • 应用名称:aiclinical-backend-dev
  • VPC 与 RDS 在同一个VPC
  • 镜像地址:registry.cn-hangzhou.aliyuncs.com/aiclinical/backend-dev:v1.0.0
  • 端口:3001
  • 实例规格:1核2GB
  • 实例数:1(固定)

网络配置

  • 已勾选「公网访问」
  • 公网SLB已自动创建
  • 端口映射:3001 → 3001

健康检查

  • 检查方式:HTTP
  • 检查路径:/health
  • 端口:3001
  • 初始延迟:30秒
  • 检查间隔:10秒
  • 超时时间:3秒

环境变量

  • 所有必填环境变量已配置
  • 环境变量值已替换为真实值
  • 数据库URL格式正确
  • OSS密钥正确
  • JWT_SECRET已修改

阶段5部署验证

部署状态

  • SAE应用状态显示「运行中」
  • 健康检查显示「通过」
  • 实时日志无ERROR
  • 日志显示「 数据库连接成功」
  • 日志显示「📦 使用阿里云 OSS 存储」或「📁 使用本地文件存储」

接口测试

  • /health 接口返回 200
  • 返回JSON包含 {"status":"ok"}
  • 返回JSON包含 "database":"connected"

测试命令:

# 替换为你的SAE公网地址
curl http://你的SAE地址:3001/health

# 或在浏览器访问

数据库验证

  • 数据库Schema已创建
  • 必要的表已创建prisma_migrations等
  • 测试数据可以插入

验证SQL

-- 连接到RDS
\c aiclinical_dev

-- 查看Schema
SELECT schema_name FROM information_schema.schemata;

-- 查看表
\dt platform_schema.*
\dt aia_schema.*

OSS验证

  • 测试文件上传成功
  • 在OSS控制台能看到上传的文件
  • 文件可以正常下载

🌐 阶段6前端部署

构建准备

  • frontend-v2/vite.config.ts 已配置正确的后端地址
  • 环境变量 VITE_API_BASE_URL 已设置
  • 依赖已安装(npm install
  • 构建成功(npm run build
  • dist/ 目录生成

OSS上传

  • 前端文件已上传到OSS
  • 文件路径正确(可以放在 frontend/ 目录下)
  • index.html 设置为默认首页
  • 静态网站托管已开启

访问验证

  • 前端URL可以访问
  • 页面正常显示无404
  • 前端可以连接后端API
  • 登录功能正常
  • 文件上传功能正常

快速验证:

访问http://aiclinical-dev.oss-cn-hangzhou.aliyuncs.com/
或https://aiclinical-dev.oss-cn-hangzhou.aliyuncs.com/如果配置了CDN

📊 阶段7监控配置可选

SAE监控

  • 应用监控已开启
  • CPU使用率图表正常
  • 内存使用率图表正常
  • QPS图表正常

日志查询

  • 实时日志可查看
  • 历史日志可查询
  • 日志级别设置正确

告警配置(可选)

  • CPU告警>80%
  • 内存告警(>80%
  • 错误率告警(>5%

🎉 完成!

最终验证清单

  • 后端健康检查通过
  • 前端页面可访问
  • 前后端通信正常
  • 数据库读写正常
  • OSS文件上传下载正常
  • 日志记录正常
  • 无ERROR日志

重要信息记录

请将以下信息保存到安全的地方(推荐使用密码管理器):

【部署信息】

后端地址http://_______________:3001
前端地址http://_______________

RDS连接
- 地址_______________
- 数据库aiclinical_dev
- 用户名aiclinical
- 密码_______________

OSS配置
- Bucketaiclinical-dev
- AccessKeyId_______________
- AccessKeySecret_______________

镜像仓库:
- 命名空间aiclinical
- 仓库backend-dev
- 最新版本_______________
- 登录密码_______________

部署时间_______________
部署人_______________

🆘 遇到问题?

快速排查步骤

  1. 查看实时日志

    • SAE控制台 → 应用详情 → 实时日志
    • 找红色ERROR关键词
  2. 检查环境变量

    • SAE控制台 → 应用详情 → 环境变量
    • 确认所有变量正确
  3. 测试网络连通性

    • 后端能否连接RDS
    • 后端能否连接OSS
    • 前端能否连接后端
  4. 查看详细文档

    • docs/05-部署文档/02-SAE部署完全指南(产品经理版).md
    • 里面有详细的问题排查方法

版本: v1.0
最后更新: 2025-12-11
维护者: 技术架构师