4.3 KiB
4.3 KiB
部署资产与台账一致性修复并公网复检
Goal
将当前 main 上已完成并本地验证通过的资产、业务台账一致性和本地启动修复部署到公网 OA,并完成公开访问复检。部署后才能告知用户可在线查看本轮页面效果。
What I Already Know
- 当前工作区干净,最新提交包括:
42a963d 归档资产 E2E 数据库漂移任务(05-31-fix-assets-e2e-schema-drift)df6d721 记录资产 E2E 漂移验收完成(05-31-fix-assets-e2e-schema-drift)dafd2eb 修复资产 E2E 数据库漂移(05-31-fix-assets-e2e-schema-drift)f299cee 修正 ERP 边界与资产页面一致性(05-30-fix-erp-boundary-asset-consistency)16fd9bd 统一业务台账首屏布局(05-30-fix-payment-ledger-layout-consistency)
- 本地已通过资产真实 E2E:
assets-flow.spec.ts建卡、领用、归还、调拨、盘点1 passed。 - 本地回归库已补齐待执行迁移;这不代表公网库已部署该批代码,公网仍需要部署脚本自行执行远端 migration status 和 init。
- 当前产品边界固定:OA 没有 ERP,以后也不接 ERP;请假、考勤日常主办在企业微信,OA 不重复处理。
- 公网部署属于准生产操作,必须得到用户明确部署批准后执行。
Scope
- 使用现有部署脚本将当前
main发布到https://oa.hyinda.com对应公网环境。 - 使用
SYNC_ENV=0,不覆盖远端.env。 - 不执行真实业务写入、真实付款、ERP 写入、企业微信写入或数据库重置。
- 执行部署后的公网健康、前端资源文案、live readiness 和重点页面 smoke。
- 将部署命令、提交 hash、复检结果和是否可测试写入本任务实施记录。
Requirements
- 部署前运行环境契约检查,避免新增配置键导致远端部署失败。
- 部署脚本必须完成远端构建、Prisma migration deploy/status、seed、
/ready、external deps smoke、runtime smoke 和公网 bundle 文案扫描。 - 部署后独立复核:
/readycheck-public-bundle-copyrun-live-smoke-readiness- 聚焦公网 Playwright:至少覆盖登录/工作台、资产或台账一致性关键路径中当前可自动化的部分。
- 如果缺少
LIVE_SMOKE_*凭据,记录脚本跳过原因;不得把跳过说成真实登录 smoke 通过。 - 若部署或 smoke 失败,停止告知“可线上测试”,记录失败点并优先回滚/修复。
Test Plan
部署前:
node deploy/trialrun/validate-env-contract.js
cd server && npm run prisma:validate
cd client && npm run build
git diff --check
部署:
SYNC_ENV=0 LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash deploy/trialrun/deploy.sh
部署后:
curl -fsS https://oa.hyinda.com/ready
node scripts/qa/check-public-bundle-copy.mjs https://oa.hyinda.com
LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh
cd client && E2E_BASE_URL=https://oa.hyinda.com npx playwright test tests/e2e/login-portal-ux.spec.ts tests/e2e/visual-portal.spec.ts --workers=1 --reporter=list
收口:
python3 ./.trellis/scripts/task.py validate 05-31-deploy-asset-ledger-consistency-public-check
node scripts/qa/check-trellis-governance.mjs
git diff --check
Acceptance Criteria
- 用户明确批准公网部署。
- 当前
main成功部署到公网 OA,记录部署基线提交 hash。 - 部署使用
SYNC_ENV=0,未覆盖远端.env。 - 远端
/ready通过。 - 公网前端资源文案扫描 findings=0,确认无 ERP 产品暴露回退。
- live readiness 通过;如凭据缺失,按规则记录 SKIP,不声明真实登录通过。
- 至少一组公网 Playwright 重点页面检查通过。
- 任务文档记录部署结果、复检结果和是否可让用户线上查看。
Out of Scope
- 不同步本地
.env。 - 不做真实付款、银行流水导入、真实支付接口或 ERP 写入。
- 不写企业微信,不改企业微信配置。
- 不重置或恢复公网数据库。
- 不新增页面设计改造;若公网发现 UI 问题,另建修复任务。
Open Question
- 是否批准现在执行公网部署?推荐批准,理由是当前本地资产真实 E2E 和构建已通过,用户需要看到公网效果;部署仍使用
SYNC_ENV=0并由脚本自动做远端 smoke。