feat(corporate-bank-account-payment-order): 基于原模板生成建行制单
这个提交包含在:
@@ -81,3 +81,25 @@
|
||||
- 治理:Trellis task 校验、governance、process contract、敏感内容扫描和 `git diff --check` 通过;文档注册审计仅保留仓库既有 22 个未登记文件警告。
|
||||
- 依赖:`[email protected]` 来自官方精确 tarball且锁定;生产依赖审计仍有 14 项仓库既有告警,未执行破坏性 `npm audit fix --force`。
|
||||
- 尚未完成:Excel/WPS 人工打开、前端 E2E/截图、生产数据库迁移、真实资料配置、部署、公网检查和企业网银校验。
|
||||
|
||||
## 11. 原模板保真修订(2026-08-03)
|
||||
|
||||
- [x] Excel 人工打开否决 SheetJS 重建输出:字段合同正确,但原模板列宽、行高、字体、底色、边框和对齐丢失。
|
||||
- [x] 用户批准改为“固定脱敏原模板 + Python BIFF8 保真填充”,不再接受重建工作簿方案。
|
||||
- [x] 提交经敏感检查的空白模板资产并固定 SHA-256;不提交 `input/` 原件或任何生成制单文件。
|
||||
- [x] 用固定 Python requirements 实现 stdin JSON / stdout BIFF8 填充器,stderr 仅固定错误码。
|
||||
- [x] Node 改为子进程桥接,保留现有资格、冻结快照、blockers、排序、流水号、审计与导出统计合同。
|
||||
- [x] 生产镜像和 CI 使用同一带哈希 requirements 和绝对 venv 解释器;移除服务端 SheetJS 生成依赖。
|
||||
- [x] 独立读回增加模板视觉签名、超过三行扩展、模板/运行时失败和隐私负向测试。
|
||||
- [x] 重新运行聚焦/全量后端、前端、治理和只读复核;用合成数据交付 Excel 人工复核,不部署。
|
||||
|
||||
### 修订验证记录
|
||||
|
||||
- 受控模板仅有 15 个表头和三行预格式化空数据行;模板 SHA-256 与运行时常量一致,字符串扫描未发现账号、URL、凭据或业务数据。
|
||||
- 固定 Python 环境的独立读回已确认三个工作表、15 列、账号/`01` 文本、数值金额 `0.00`,并逐格比较列宽、行高、字体/加粗、底色、边框、对齐;第四笔扩展行同样通过。
|
||||
- 聚焦测试在资格门禁修订后为 70 项通过;新增覆盖 admin 非财务拒绝、四种非 reviewed 状态、历史 item 非银行 override、模板 hash、依赖缺失、子进程超时/输出越界和 stderr 隐私。
|
||||
- 后端全量最终为 176 个文件、1199 项全部通过;此前 Dockerfile 缓存层文本合同失败已通过恢复独立 `RUN cd server && npm ci` 修复并纳入最终全量。
|
||||
- 前端 typecheck/build、Prisma validate、流程合同、Trellis governance、敏感扫描和 diff 检查通过;文档审计仅保留仓库既有 22 个未登记文件警告。
|
||||
- 本地 Docker 构建因 Alpine 包下载长时间无进展被主动取消,未形成镜像通过证据;生产镜像、部署、公网与网银验证仍待单独批准。
|
||||
- 当前实现已生成并独立读回一份 gitignored 合成 Excel 验收文件;原型文件此前经用户 Excel 人工打开认可,当前实现文件仍可用于最终人工外观确认。
|
||||
- 付款/隐私只读复核在资格门禁修订后确认无 Blocker、High 或 Medium;唯一 Low(失败路径缺显式“无成功审计”断言)已补测试并复验。
|
||||
|
||||
在新工单中引用
屏蔽一个用户