4.7 KiB
4.7 KiB
附件治理部署与公网烟测
Goal
将已提交的“业务附件受控入库 V1”安全部署到公网 OA,并完成迁移、健康检查、公网 smoke 和关键业务验证,确认报销附件、采购附件、付款回单附件的治理字段、下载用途和审计留痕在公网可用。
What I Already Know
- 本轮待部署工作提交为
52e5284,任务已归档提交为fef5966。 - 业务附件 V1 包含 Prisma migration:
20260528162000_business_attachment_governance_v1。 - 部署入口为
SYNC_ENV=0 bash deploy/trialrun/deploy.sh,默认不覆盖远端.env。 - 部署脚本会在远端执行
npm run prisma:migrate:deploy、seed:config、seed:trialrun、npx prisma migrate status、/ready、external deps smoke 和 runtime smoke。 - 部署后还需执行公网 live smoke 和面向附件治理的关键路径检查。
- 生产部署、远端配置修改、数据库迁移和公网真实数据写入都需要明确批准。
Scope
- 部署前本地静态门禁:部署环境契约、Prisma validate、前端 typecheck/build、Trellis governance。
- 部署前确认迁移影响和回滚口径:新增列/索引,不重置数据库、不改写历史迁移、不覆盖远端
.env。 - 获得明确批准后执行公网部署。
- 部署后检查:
/readynpx prisma migrate status- external deps smoke
- runtime smoke
- live smoke readiness
- 公网前端资源文案扫描
- 付款回单下载用途弹窗和审计日志
- 报销/采购附件治理标签展示
Out Of Scope
- 不迁移历史附件文件,不接 COS,不改存储驱动。
- 不覆盖远端
.env,除非另行明确批准SYNC_ENV=1。 - 不执行真实付款、不导入银行流水、不写 ERP、不写企业微信。
- 不使用真实敏感票据、合同正文、银行材料或完整账号做自动化证据。
- 不做数据库 reset、迁移漂移修复或迁移历史重写。
Requirements
- R1:部署前必须确认本地工作区干净,当前 commit 可追溯。
- R2:部署前必须跑本地静态门禁和 Trellis governance,失败则不部署。
- R3:部署必须使用
SYNC_ENV=0,保持远端.env原状。 - R4:部署脚本执行远端迁移后必须确认 migrate status 通过。
- R5:公网 smoke 失败时,停止并保留错误摘要,不继续宣称可以测试。
- R6:附件治理专项验收必须覆盖付款回单下载用途、审计日志、报销/采购附件治理标签。
- R7:报告不得输出 Secret、密码、完整账号、完整本地路径、附件原文或原始 payload。
Acceptance Criteria
- 部署前静态门禁通过。
- 获得明确“批准部署”后执行公网部署。
- 部署脚本完成,远端
/ready通过。 - 远端 Prisma migration status 通过。
- 公网 live smoke 或 readiness 按规则输出 PASS/SKIP/FINDINGS,结论清晰。
- 业务附件专项验证通过或记录阻断项。
- Trellis task validate、governance gate、
git diff --check通过。
Test Plan
node deploy/trialrun/validate-env-contract.jscd server && npm run prisma:validatecd client && npm run typecheck && npm run buildpython3 ./.trellis/scripts/task.py validate 05-28-attachment-governance-deploy-smokenode scripts/qa/check-trellis-governance.mjsgit diff --check- 获批后:
SYNC_ENV=0 bash deploy/trialrun/deploy.sh - 部署后:
LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh
Technical Notes
- 参考规范:
.trellis/spec/hyb-oa/deployment-trialrun.md、.trellis/spec/hyb-oa/backend-fastify-prisma.md、.trellis/spec/hyb-oa/security-privacy.md。 - 参考手册:
docs/试运行与自动化验证手册.md。 - 用户已明确批准部署;部署使用
SYNC_ENV=0,未覆盖远端.env。 - 首次部署应用迁移
20260528162000_business_attachment_governance_v1成功;二次部署显示 no pending migrations,migrate status 为 up to date。 - live readiness 结论 PASS;OCR 样本为可解释的
duplicate_or_same_invoice类结果,readiness 脚本判定通过。 - 专项抽查:付款回单附件返回
approved/confidential/receipt/reason_required,无用途下载 400,带用途下载 200,审计日志命中PAYMENT_BATCH_RECEIPT_DOWNLOADED且包含治理元数据。 - 页面抽查:付款批次回单卡片显示“已通过 / 回单 / 保密 / 需填用途”,点击下载会弹出“填写下载用途”对话框,继续下载产生浏览器 download 事件。
- 报销/采购公网现有数据未找到附件样本;本轮未为补样本创建真实业务单据。报销详情 select 缺失治理字段的问题已在
33b1232修复并完成二次部署,采购详情 select 已包含治理字段。