Files
user-system/docs/team/PRODUCTION_CHECKLIST.md
long-agent 2cd76b2835 docs: add multi-round review learnings to team quality docs
- PRODUCTION_CHECKLIST: add RBAC/admin governance checklist section
- PROJECT_EXPERIENCE_SUMMARY: add lessons from 2026-04-10 reviews (live ≠ done, main-entry green > local green, test noise = quality issue, docs lag = rework)
- QUALITY_STANDARD: add stub→live review threshold rules
2026-04-11 10:41:08 +08:00

4.5 KiB
Raw Blame History

生产级发布清单

版本3.0
更新时间2026-04-02

本清单用于发布前、发布后和对外表述前的最后核查。

0. PR 提交前检查(必须通过)

0.1 分支与提交

  • 功能分支从 main 最新状态拉取
  • 每个提交是可独立验证的最小单元
  • 提交信息格式:类型: 简短描述

0.2 代码审查

  • 至少 1 人完成代码审查
  • 所有 🔴 阻塞问题已修复
  • 所有 🟡 建议问题已有修复计划

0.3 验证矩阵

  • 后端:go test ./... -count=1 通过
  • 后端:go vet ./... 通过
  • 后端:go build ./cmd/server 通过
  • 前端:npm.cmd run lint 通过
  • 前端:npm.cmd run build 通过
  • 前端:npm.cmd run test -- --run 全绿(如改动前端代码)
  • 真实浏览器 E2Enpm.cmd run e2e:full:win 通过(如涉及认证/导航/主流程)

0.4 文档

  • PR 描述包含变更目的、验证命令及结果、影响范围
  • API 文档已更新(如改动 API
  • docs/status/REAL_PROJECT_STATUS.md 已同步更新(如改变真实结论)

1. 发布前必须完成

1.1 代码与构建

  • go test ./... -count=1
  • go vet ./...
  • go build ./cmd/server
  • cd frontend/admin && npm.cmd run lint
  • cd frontend/admin && npm.cmd run build

1.2 真实浏览器验证

  • cd frontend/admin && npm.cmd run e2e:full:win
  • 本轮改动涉及认证、路由、导航、弹窗、防线或主流程时,不得跳过真实浏览器回归

1.3 运行时规则核查

  • 非测试代码中无 panic
  • 运行时无 mock provider / fake success 路径
  • smoke 仅用于诊断,不是运行时依赖
  • 敏感接口仍带 no-store 等防缓存头
  • 邮件、短信、文件上传、外部调用均为 fail closed

1.4 配置与安全核查

  • release 模式下无占位密钥
  • release 模式下无 localhost OAuth 回调
  • release 模式下无 * CORS 放行
  • 真实密钥来自环境变量或密钥管理系统

2. 可选但建议同时检查

  • cd frontend/admin && npm.cmd run test:run
  • 已同步检查 docs/status/REAL_PROJECT_STATUS.md
  • 已同步检查是否需要补证据文档

3. 不能夸大的结论

满足本清单,不等于自动满足以下结论:

  • 完整 OS 级自动化已闭环
  • 真实第三方 OAuth live 验证已闭环
  • 外部 Secrets/KMS 已闭环
  • 多环境 CI/CD 密钥分发已闭环
  • 跨历史版本 schema downgrade 回滚证据已闭环

如果上述材料未齐备,必须在发布说明中明确列为剩余缺口。

4. 当前项目的主验收路径

当前受支持的真实浏览器主验收路径:

cd D:\project\frontend\admin
npm.cmd run e2e:full:win

当前可诚实表述的边界:

  • 已完成浏览器级真实 E2E 收口
  • 未完成完整 OS 级自动化收口

5. 发布后 30 分钟内检查

  • 核心登录/登出链路正常
  • 后台主导航正常
  • 关键日志无新增异常
  • 无异常弹窗、popup、page error、401 回归
  • 健康检查正常:
    • GET /health
    • GET /health/live
    • GET /health/ready

6. 2026-04-10 多轮 Review 补充检查项

6.1 RBAC / 管理员治理改动

  • 涉及 GetUserRolesAssignRolesCreateAdminDeleteAdmin、角色表单或管理员页的改动时,已验证越权读取失败、越权修改失败。
  • 已验证不可自删管理员、不可删除最后一个管理员、不可把系统带入无管理员状态。
  • 已验证角色赋权、管理员创建、管理员删除具备事务性;若失败,数据库状态可回滚到操作前。
  • 已验证未引入绕过 bootstrap 或 service 校验链路的硬编码角色 ID 或默认角色假设。

6.2 主入口与测试洁净度

  • 文档声明的主入口命令本身已跑通:go test ./... -count=1cd frontend/admin && npm.cmd run e2e:full:win
  • 若包装脚本、临时缓存、工作目录切换或环境注入失败,已按真实失败处理,而不是拿局部命令绿灯代替。
  • cd frontend/admin && npm.cmd run test:runcd frontend/admin && npm.cmd run test:coverage 运行后,无 window.alertwindow.confirmwindow.promptwindow.open 调用和 jsdom Not implemented 噪声。
  • 如本轮改动把 stub、not implemented 或 mock 接口切换为 live 实现,已补充负向权限测试、边界条件测试、失败回滚测试。