R30-1 R30-9: 建立零人工发布门禁并补齐高频回归
这个提交包含在:
+35
-2
@@ -11,7 +11,7 @@
|
||||
1. 服务器以 root 执行 `bash deploy/trialrun/setup-server.sh`
|
||||
2. 手工创建 `deploy/trialrun/.env`
|
||||
3. 手工放置 OA 的 Nginx 站点配置和证书
|
||||
4. 本地执行 `bash deploy/trialrun/deploy.sh`
|
||||
4. 本地执行 `bash scripts/qa/run-release-gate.sh all`(或至少执行 `bash deploy/trialrun/deploy.sh`)
|
||||
|
||||
## 0. 前置条件
|
||||
- Docker + Docker Compose(v2)
|
||||
@@ -88,7 +88,9 @@ docker compose -f deploy/trialrun/docker-compose.yml --env-file deploy/trialrun/
|
||||
```
|
||||
|
||||
说明:
|
||||
- `deploy/trialrun/deploy.sh` 现已自动执行 `validate-env-contract.js`、`/ready` 探活与 `smoke-trialrun-runtime.js`。
|
||||
- `deploy/trialrun/deploy.sh` 现已自动执行 `validate-env-contract.js`、`/ready` 探活、`smoke-external-deps.js` 与 `smoke-trialrun-runtime.js`。
|
||||
- 若本地存在完整 `LIVE_SMOKE_*` 环境变量,部署脚本会继续执行 `client npm run test:e2e:live`,用于公网只读 smoke。
|
||||
- 推荐直接执行 `bash scripts/qa/run-release-gate.sh all`,让 static / local smoke / full-local / deploy / live smoke 形成单一放行链。
|
||||
- 若再出现“数据库开了但功能被环境硬关”的情况,部署会直接失败,不再等到手工点页面才发现。
|
||||
|
||||
浏览器访问:
|
||||
@@ -141,6 +143,17 @@ curl -fsS http://127.0.0.1:3000/ready
|
||||
建议版本化方式:
|
||||
- 每次发布打 tag,例如 `trialrun-2026-02-08-01`
|
||||
|
||||
### 2.1 网页自动化门禁(R28)
|
||||
发布前后统一使用三层网页自动化:
|
||||
- `bash scripts/qa/run-web-gates.sh smoke-local`:本地/PR 快速门禁,只覆盖登录、Portal、导航、企微入口 UI。
|
||||
- `bash scripts/qa/run-web-gates.sh full-local`:本地/main/夜间全量门禁,串联 server 回归、client build 与全部 Playwright E2E。
|
||||
- `bash scripts/qa/run-web-gates.sh smoke-live`:发布后公网只读 smoke,只检查 `/ready`、登录、Portal、团队、请假、项目、公告、个人设置、管理页只读入口与企微配置状态。
|
||||
|
||||
约束:
|
||||
- live smoke 必须使用独立账号:`smoke-admin`、`smoke-employee`。
|
||||
- live smoke 禁止新建报销、提交审批、付款、导入、资产流转、项目写操作。
|
||||
- 若本地已配置完整 `LIVE_SMOKE_*`,`bash deploy/trialrun/deploy.sh` 会在远端部署完成后自动补跑 live smoke。
|
||||
|
||||
步骤:
|
||||
1) 先做备份(见 E14 脚本)
|
||||
2) 拉取代码:`git pull` / `git checkout <tag>`
|
||||
@@ -316,3 +329,23 @@ docker compose -f deploy/trialrun/docker-compose.yml --env-file deploy/trialrun/
|
||||
- 客户沟通影响项目时 `24h` 内回填
|
||||
- 私聊可继续发生,但项目状态不能只留在聊天里
|
||||
5. 进入真实 4 周试点前,至少保留一次通过记录:后端测试、前端 build、E2E 全绿截图或日志。
|
||||
|
||||
|
||||
## 8. R29 前端设计系统与工作台体验验收
|
||||
### 8.1 视觉与交互核对顺序
|
||||
1. 登录页:先确认当前场景只有一个主 CTA,并验证错误提示、企微回退文案可理解。
|
||||
2. Portal:确认员工与管理员两套第一屏都先回答“今天要做什么”。
|
||||
3. 导航:确认主导航 9 项稳定、管理入口独立、备用模块默认折叠。
|
||||
4. 个人设置:确认只展示员工可理解的信息,企微绑定卡状态清晰。
|
||||
|
||||
### 8.2 自动化建议
|
||||
- 本地快速验收:`bash scripts/qa/run-web-gates.sh smoke-local`
|
||||
- 发版前完整验收:`bash scripts/qa/run-web-gates.sh full-local`
|
||||
- 公网只读验收:`bash scripts/qa/run-web-gates.sh smoke-live`
|
||||
|
||||
### 8.3 设计 QA 口径
|
||||
- 一个场景只允许一个主 CTA。
|
||||
- 首页先动作,后报表;公告与最近访问降到第二阅读层。
|
||||
- 空状态必须给下一步建议,不只显示“暂无数据”。
|
||||
- 移动 / WebView 首屏避免横向滚动和过宽表格。
|
||||
- 状态色只表达语义,不把品牌色滥用成所有强调色。
|
||||
|
||||
在新工单中引用
屏蔽一个用户