R30-1 R30-9: 建立零人工发布门禁并补齐高频回归
这个提交包含在:
+26
-8
@@ -13,7 +13,7 @@
|
||||
- [ ] 已将 OA Nginx 配置放到 `/etc/nginx/sites-available/hyb-oa`
|
||||
- [ ] 已上传 OA 域名证书到 `/etc/nginx/ssl/<oa-domain>/`
|
||||
- [ ] 已执行 `nginx -t && systemctl reload nginx`
|
||||
- [ ] 已从本地执行 `bash deploy/trialrun/deploy.sh`
|
||||
- [ ] 已从本地执行 `bash scripts/qa/run-release-gate.sh all` 或至少执行 `bash deploy/trialrun/deploy.sh`
|
||||
- [ ] 已通过 `https://<oa-domain>/ready` 或首页登录完成最小探活
|
||||
- [ ] 首次上线先执行系统初始化(migration + seed),不要直接导入旧库整库备份
|
||||
- [ ] 若要导数据,仅准备最小主数据:部门、员工、角色、在用资产、活跃项目、合同元数据
|
||||
@@ -23,6 +23,8 @@
|
||||
- [ ] 确认当前版本已打 tag:`git tag -a trialrun-YYYYMMDD-NN -m "trialrun release"`
|
||||
- [ ] 本地门禁:`./scripts/check-minimal.sh`
|
||||
- [ ] 部署契约校验:`node deploy/trialrun/validate-env-contract.js`
|
||||
- [ ] 网页 smoke 门禁:`bash scripts/qa/run-web-gates.sh smoke-local`
|
||||
- [ ] 网页 full 门禁(建议发版前执行):`bash scripts/qa/run-web-gates.sh full-local`
|
||||
- [ ] 全量回归(建议):`cd server && RUN_AUDIT_REGRESSION=1 RUN_OCR_REGRESSION=1 ./scripts/regression-all.sh`
|
||||
- [ ] 备份(DB + 文件存储):
|
||||
- [ ] `set -a && source deploy/trialrun/.env && set +a`
|
||||
@@ -38,17 +40,18 @@
|
||||
- [ ] `curl -fsS http://127.0.0.1:3000/ready`
|
||||
- [ ] Runtime smoke:
|
||||
- [ ] `docker compose -f deploy/trialrun/docker-compose.yml --env-file deploy/trialrun/.env exec -T server node src/scripts/smoke-trialrun-runtime.js`
|
||||
- [ ] 登录验证(管理员账号):
|
||||
- [ ] 访问 `http://127.0.0.1:3000`
|
||||
- [ ] 登录成功,菜单权限正确
|
||||
- [ ] external deps smoke:
|
||||
- [ ] `docker compose -f deploy/trialrun/docker-compose.yml --env-file deploy/trialrun/.env exec -T server node src/scripts/smoke-external-deps.js`
|
||||
- [ ] 登录验证已由 live smoke 与 release gate 覆盖;仅首次接入或第三方后台配置变更时补做人工确认
|
||||
|
||||
## C. 发布后(Post-check)
|
||||
- [ ] 关键链路手工验证(建议至少一次):
|
||||
- [ ] 员工:新建报销 → 上传票据 → 绑定 → 提交
|
||||
- [ ] 经理:待办审批(approve)
|
||||
- [ ] 财务:付款(含凭证字段)
|
||||
- [ ] 公网 live smoke(只读,不做写操作):`bash scripts/qa/run-web-gates.sh smoke-live`
|
||||
- [ ] 若本地已配置 `LIVE_SMOKE_*`,确认 `bash deploy/trialrun/deploy.sh` 输出中包含 live smoke 结果
|
||||
- [ ] 已确认 release gate / live smoke 结果为通过;关键链路不再作为每次发布的手工必做项
|
||||
- [ ] 查看 server 日志(无异常错误风暴):
|
||||
- [ ] `docker logs --tail=200 hyb-oa-trialrun-server`
|
||||
- [ ] 已确认 smoke 账号为独立账号(`smoke-admin` / `smoke-employee`),且不参与真实业务
|
||||
- [ ] 已确认 live smoke 仅检查 `/ready`、登录、Portal、项目、公告、个人设置和企微配置状态
|
||||
|
||||
## D. 回滚(Rollback)
|
||||
> 原则:如果涉及迁移,最快回滚通常是 “恢复备份 + 回到上个 tag”。
|
||||
@@ -120,3 +123,18 @@
|
||||
- [ ] 已验证:Portal 首屏第一排卡片顺序符合员工 / 管理员视角设计
|
||||
- [ ] 已验证:备用模块默认折叠,不干扰主导航
|
||||
- [ ] 已验证:企业微信通知仍保持脱敏,不包含涉密正文与金额明细
|
||||
|
||||
|
||||
## R29 前端设计系统与工作台体验检查
|
||||
- [ ] 主导航已稳定收敛为 `Portal / 团队 / 请假 / 报销 / 资产 / 周报 / 待办 / 公告 / 项目`
|
||||
- [ ] 管理入口已单独分区,`备用模块` 默认折叠
|
||||
- [ ] 登录页在普通浏览器与企业微信 WebView 场景下都只保留一个主 CTA
|
||||
- [ ] 登录页未再展示测试账号暗示,错误提示贴近操作区
|
||||
- [ ] `Portal` 员工第一屏已优先显示:待办 / 今日状态 / 周报 / 项目
|
||||
- [ ] `Portal` 管理第一屏已优先显示:审批 / 团队状态 / 周报缺口 / 需协助员工
|
||||
- [ ] `个人设置` 不再直出 `部门 ID / 上级 ID` 等内部标识
|
||||
- [ ] `topbar` 仅在企业微信 WebView 场景显示“当前通过企业微信进入”轻提示
|
||||
- [ ] 已执行 `cd client && npm run typecheck`
|
||||
- [ ] 已执行 `cd client && npm run build`
|
||||
- [ ] 已执行 `bash scripts/qa/run-web-gates.sh smoke-local`
|
||||
- [ ] 发版前建议执行 `bash scripts/qa/run-web-gates.sh full-local`
|
||||
|
||||
在新工单中引用
屏蔽一个用户