# MVP试运行与发布回滚预案

## 1. 试运行前检查
- 数据库：`schema.sql`、`data.sql` 已执行完成。
- 配置：`DB/OSS/JWT/SCHEDULER` 环境变量已配置。
- 服务检查：后端健康检查 `/api/system/health` 返回 `UP`。
- 前端构建：`npm run build` 成功。

## 2. 核心验证用例（上线阻断项）
- 创建项目 -> 创建会议 -> 会议级提交 -> 初审/复审/终审 -> 支付确认 全链路可用。
- 越权访问接口返回 `20001/20002`。
- 幂等冲突返回 `10002`。
- 未终审通过支付确认返回 `40003`。
- 调度任务可执行并支持失败重试。

## 3. 灰度发布策略
- 第1阶段：仅内部租户（10%流量）观察 30 分钟。
- 第2阶段：扩大到 50% 租户观察 1 小时。
- 第3阶段：全量发布。
- 监控阈值
  - 5xx 错误率连续 5 分钟 > 1% 触发回滚。
  - 核心接口 P95 延迟连续 10 分钟劣化 > 30% 触发回滚评估。
  - 审核/支付关键失败率 > 2% 触发 P1 告警。

## 4. 回滚策略
- 应用回滚：回滚到最近稳定版本（保留最近2版）。
- 数据回滚：通过备份+binlog 恢复，禁止手工改生产数据。
- 紧急开关
  - 关闭调度：`SCHEDULER_ENABLED=false`
  - 暂停支付确认入口（前端隐藏+后端网关拦截）

## 5. 试运行周期建议
- 试运行 3-5 天。
- 每日输出问题清单（功能、性能、权限、财务口径）。
- 试运行结束召开上线评审，确认是否转正式运行。
