From 32af159987c7c53db0e5efb6ebd8cbd4d3a16a2a Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Tue, 27 Oct 2026 15:39:48 +0800 Subject: [PATCH] docs: record finance reopen and lifecycle TEST acceptance --- 测试环境单机部署与配置契约.md | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/测试环境单机部署与配置契约.md b/测试环境单机部署与配置契约.md index d807a4e..8912f1b 100644 --- a/测试环境单机部署与配置契约.md +++ b/测试环境单机部署与配置契约.md @@ -43,10 +43,26 @@ - 用户明确授权部署 Finance 与 Admin。后端 `test` 固定提交 `83f2fda4cd2a432c7516018f6ce3b1b05eb1d2d7`、Admin `release/test` 固定提交 `b9b930936d2db7acaa3c9c12eeacb1f7ceb522bb` 已推送;本批包含此前费用接收幂等、客户归属及金额校验修复,以及应付来源付款进度、对账单修订后金额和客户名称读取修复。 - `baiyue-firstleg-finance #140`、`admin-web-test #719` 均 SUCCESS,耗时分别 73.007、58.845 秒;实际镜像标签分别为 `83f2fda4cd2a`、`b9b930936d2d`,两容器 running/healthy。发布前后只有 Finance、Admin 镜像变化,历史退役事件桥保持原状。Admin 临时 SCM pin 已逐字核对并恢复。 - 复用输入未变的三项修复 92 项后端定向测试、此前费用接收 40 项定向结果,以及 Admin 27 项测试和类型检查;补跑 22 项发布合同全部通过。Finance 流水线显式跳过重复测试执行,仍完成生产/测试源码编译与打包;Admin 类型检查、生产构建及容器健康检查通过,不宣称全模块回归通过。 -- 发布后通过真实 HTTP 只读核对 24 张对账单、24 张应收单、9 张应付单及 24 笔收款。26 条已付款应付来源在列表、筛选及详情均为 PAID,并从可选应付费用池排除;剩余 175 条可结算应付合计 CNY 707.00。24 张对账单的 144 条修订金额正确,8 次调账均保留 CNY 0.03 差额;对账单、应收/应付及统计的客户名称与账户主档一致,不再显示内部编号拼接名称。PAYABLE_BILLED、PARTIALLY_PAID 当前无实存样本,接口空筛选正确,非空行为由定向测试覆盖。 -- 既有账单应收 CNY 34,343.92、已收 1,936.24、未收 32,407.68,正式应付 CNY 3,040.03 均已付,金额、版本及状态与修复前快照一致。当前最新费用 755 条,较此前快照多 1 条头程应收 CNY 8,379.37;原有 754 条费用金额、归属和版本均未变化,仅上述 26 条应付读取状态变化。本次未新建、修改或推进任何业务单据,也未执行 SQL、重置数据或改动 Nacos/Gateway 配置。 +- 发布后通过真实 HTTP 只读核对 24 张对账单、24 张应收单、9 张应付单及 24 笔收款。26 条已付款应付来源在列表、筛选及详情均为 PAID,并从可选应付费用池排除;剩余 175 条可结算应付合计 CNY 707.00。24 张对账单的 144 条修订金额正确,8 次调账均保留 CNY 0.03 差额;对账单、应收/应付及统计的客户名称与账户主档一致,不再显示内部编号拼接名称。首轮只读核验时 PAYABLE_BILLED、PARTIALLY_PAID 无实存样本,后续真实 HTTP 已补齐这两个中间状态,见下文。 +- 既有账单应收 CNY 34,343.92、已收 1,936.24、未收 32,407.68,正式应付 CNY 3,040.03 均已付,金额、版本及状态与修复前快照一致。本次发布后首轮快照为 755 条最新费用,较此前快照多 1 条头程应收 CNY 8,379.37;原有 754 条费用金额、归属和版本均未变化,仅上述 26 条应付读取状态变化。本次未新建、修改或推进任何业务单据,也未执行 SQL、重置数据或改动 Nacos/Gateway 配置。 - Admin 公网首页、运行配置、入口脚本及财务来源页面脚本均 HTTP 200,SHA-256 与运行容器一致,实际产物包含新增付款状态和文案。该核验不替代 1920×1080、100% 缩放人工页面验收。证据保存在本机私有临时目录 `codex-finance-release-20261027`,包括提交及门禁输入摘要、Jenkins 状态与脱敏日志、配置恢复、运行版本、只读数据核验及 `public-assets-final.json`。 +### 同日应付来源中间状态补验:四阶段真实 HTTP 已通过 + +- 用户确认继续 TEST 应付状态衔接验收。沿用本对话原生合成转运单与启用的测试供应商,经海外费用正式入口新增并审核一笔 CNY 0.03 的 ON_ACCOUNT 应付费用,再生成 `AP202610270001`,先登记 0.01 元、再登记 0.02 元,最终 PAID。付款参考、备注及本轮上传凭证均标明合成测试,未发生银行或第三方转账。 +- 37 项业务断言、63 次 HTTP 请求检查全部通过,包括预期拒绝;AVAILABLE → PAYABLE_BILLED → PARTIALLY_PAID → PAID 四阶段的来源列表、详情、状态筛选、待选池资格及账户成本汇总一致,应付单列表与详情、付款流水一致。创建/付款重放保持同一记录;重复占用费用、超额付款、旧版本付款、同键改金额及结清后继续付款均被拒绝,最终只有两条付款流水。 +- 原有 24 张应收单、9 张应付单金额、状态和版本不变,原有 175 条待结算应付仍为 CNY 707.00。测试客户总成本、已付成本仅各增加 0.03 元,实际余额、冻结及可用金额不变。仅新增上述测试费用、应付单、两笔付款记录和合成凭证,未改源码、部署、执行 SQL 或清理数据;本轮会话已退出,样本保留。证据为本机私有临时目录 `codex-finance-ap-progress-20261027/progress.json`;四阶段 API 核验不替代人工页面验收。 + +### 2026-10-27 费用调整、作废与重开续检:Finance 已发布,AP/AR 本轮场景通过 + +- 用户明确授权部署 TEST Finance 并继续检查。后端 `test` 提交 `fe89b8a2b875d6634b0d7f2b28793b73c02bb4b6` 经 `baiyue-firstleg-finance #141` 发布成功,耗时 65.420 秒;重开重新锁定原费用/对账单,校验当前状态、客户、币种、金额及唯一占用,应付另校验供应商,应收逐行核对账单金额。新建与重开共用当前占用读取,避免等待来源锁后使用旧快照。修复前已复现重复占用缺口,修复后 52 项定向测试及 429 个 Mapper 注册合同通过。 +- AP 真实 HTTP 验证:独立 ON_ACCOUNT 测试费用从 0.03 调整至 0.04、再调整至 0.05 元,审核前旧版本保持有效,审核后旧版本 SUPERSEDED,仅最新版本计成本。`AP202610270002` 合法作废/重开及幂等重放成功;费用被 `AP202610270003` 占用或被新版替代后,旧单重开均返回 FIN_409,金额、版本和修订未被错误推进。两张 AP 及最终费用均已作废,保留历史;业务端作废与 Finance ACK 已核对。首轮 70 项业务断言通过,最后的汇总断言误用了账户接口不存在的字段;随后仅只读补验 9 项通过,原失败报告保留,未重复造数或写入。 +- AR 补验发现两处问题:作废应收仍被数据库全历史唯一键占用,重新建单返回 S0500;对账单动作即时响应在审计写入前取快照,少返回本次修订,重新查询时记录存在。修复提交 `ed6a173b8678a43d260b89b8d10a4d2e0e0f99af` 已推送并通过 Finance `#142` 发布,耗时 63.875 秒,最终镜像 `ed6a173b8678` running/healthy。新增修复通过 29 项定向检查(对账单行为 21、结算表基线 3、SQL 注释合同 5);基线测试实际执行模块与统一初始化中的表定义,覆盖作废历史、重建、有效应收唯一、重开冲突、客户隔离及应付不受影响。两次流水线复用相应本地测试,仍完成生产/测试源码编译、打包与健康检查。 +- 用户单独确认执行 `deploy/sql/finance-receivable-active-uniqueness-repair.sql`。已在 TEST MySQL 8.0.45 的 `baiyue_finance.fin_settlement` 执行一次原子 ALTER,以虚拟生成列及有效应收唯一键替换全历史唯一键;执行前后 37 条记录及金额、版本汇总完全一致,未更新、删除或回填业务记录。首次连接在只读前置检查阶段因主机别名无法解析停止,尚未发出 ALTER;改用 Finance 容器实际解析结果后执行成功。执行文件 SHA-256 与已提交脚本一致;旧索引移除、新索引及生成列已回查确认。初始化模式仍为 `never`,未重放空库基线。 +- 修复后 AR 完整真实 HTTP 验证 31 项业务断言、49 次请求检查全部通过:`REC202610270002` 生成 `AR202610270003`,合法作废/重开成功,作废后能生成 `AR202610270004`;新单占用、对账单调价及作废后,旧应收重开均被拒绝。提交、审核、出账、调账、作废的即时响应均包含本次修订,调账保留来源 0.03 元与账单 0.04 元差异。前一轮 `REC202610270001` / `AR202610270001` 的剩余场景也已补验并作废;没有重放失败写入,失败建单未留下新应收。 +- 本轮新增 2 张 AP、3 张 AR、2 张对账单及对应测试费用最终均已作废,修订和来源版本保留;未新增收付款或转账。原有单据金额、状态、版本不变,原有 175 条应付待选费用仍为 CNY 707.00;应收 34,343.92、已收 1,936.24、未收 32,407.68,总成本 3,885.57、已付成本 3,178.57 及钱包余额均恢复检查前值。所有本轮认证会话已退出。 +- 发布前后仅 Finance 镜像变化,Admin、Client、Lastleg 等服务版本及历史退役事件桥保持原状。证据分别在本机私有临时目录 `codex-finance-reopen-fix-20261027`(`lifecycle-final.json`、`ar-final.json` 等)和 `codex-finance-revision-release-20261027`(`sql-execute2.json`、`ar-lifecycle-final.json`、Jenkins 及运行版本证据)。本结论限于上述接口场景,不代表全部财务场景或 1920×1080、100% 缩放人工页面验收完成。 + ## 2026-10-26 海外费用与仓租 TEST 补齐:收费、仓租及应付链路已验,直付明细已修复并复验 - 本轮仅继续 TEST。先按已审阅的 `overseas-fees-storage-rent-structure-add.sql`、`overseas-storage-rent-zero-fee-repair.sql` 补齐 `ll_storage_rent_inbound`、费用审核人名称及自动免费仓租的金额/汇率约束,两文件执行成功。执行前后原有费用均为 143 条,资金编排及计租批次均为 0;未重放初始化、未回填或删除业务数据,未调整汇率。