From cbedf0aec80ad2f855086d091e84ddfc6381955c Mon Sep 17 00:00:00 2001 From: tangweijie <877588133@qq.com> Date: Fri, 17 Apr 2026 17:54:37 +0800 Subject: [PATCH] Upgrade redink evidence to full execute closure This updates the REDINK_RECORD evidence with a successful live execute smoke run after bringing up business-bank-server locally, and refreshes the final mainline delivery summary to remove the stale blocker wording. Constraint: Docs must reflect the newly verified live redink execute closure, not the earlier blocked state Rejected: Leave the old blocker note in place | factually stale after the successful execute rerun Confidence: high Scope-risk: narrow Reversibility: clean Directive: If redink live execute is revalidated again later, append a dated subsection instead of rewriting this successful closure note Tested: Cross-checked against successful live execute smoke, DB readback, and cleanup results on 2026-04-17 Not-tested: No document export/render pipeline executed for this docs-only refresh --- ...nk-formal-table-dev-db-apply-2026-04-17.md | 72 +++++++++++++++++++ .../REV004_FINAL_MAINLINE_DELIVERY_SUMMARY.md | 13 ++-- 2 files changed, 79 insertions(+), 6 deletions(-) diff --git a/docs/evidence/rev004-redink-formal-table-dev-db-apply-2026-04-17.md b/docs/evidence/rev004-redink-formal-table-dev-db-apply-2026-04-17.md index 795f649..bd4737c 100644 --- a/docs/evidence/rev004-redink-formal-table-dev-db-apply-2026-04-17.md +++ b/docs/evidence/rev004-redink-formal-table-dev-db-apply-2026-04-17.md @@ -138,3 +138,75 @@ REDINK_RECORD 当前依赖原交易定位 / bank follow-up 逻辑;本轮先采 - fresh query smoke 但“真实 redink 执行成功后自动落 formal”的端到端 smoke 仍需在 `business-bank-server` 可用时补跑。 + + +## live execute smoke 成功补证(2026-04-17 17:51 +08:00) +在本轮额外启动本地 `business-bank-server`(dev profile, port `48092`)并向测试库预置原交易后,重新完成了 REDINK_RECORD 的真实端到端执行 smoke。 + +### 前置 +- 本地启动 `business-bank-server`,并成功注册到 Nacos dev:`business-bank-server 192.168.9.109:48092 register finished` +- 向 `bk_transaction` seed 原交易: + - `tran_seq = T-REDINK-NOPE` + - `sys_tran_seq = SYS-REDINK-NOPE` + - `tran_type = PAY` + - `status = SUCCESS` + - `contract_no = 992306` + - `amount = 12000` +- 准备已收费营业账:`chargeId = 992306` + +### execute 请求 +`POST /admin-api/business/charge/accounting-adjust` +```json +{ + "chargeId": 992306, + "objectType": "REDINK_RECORD", + "reasonCode": "1", + "reason": "redink execute smoke", + "originalTranSeq": "T-REDINK-NOPE" +} +``` + +### execute 响应 +结果:**PASS** + +返回: +- `adjustmentNo = REV004-992306-20260417175109` +- `objectType = REDINK_RECORD` +- `resultStatus = SUCCESS` +- `approvalStatus = NOT_REQUIRED` +- `writeBackStatus = UPDATED` +- `message = 冲正处理成功,bank流水号=RV9923062026041717511073C805` + +### DB 回读 +`biz_redink_record`: +- `adjustment_no = REV004-992306-20260417175109` +- `approval_status = NOT_REQUIRED` +- `execute_status = UPDATED` +- `result_status = SUCCESS` +- `bank_tran_seq = RV9923062026041717511073C805` +- `original_tran_seq = T-REDINK-NOPE` + +`biz_redink_record_detail`: +- `detail_status = SUCCESS` +- `proc_type = EXECUTE` +- `pay_state_before = 1` +- `pay_state_after = 0` +- `redink_amount = 120.00` + +`biz_charge`: +- `pay_state = 0` +- 支付信息已清空为红冲后的未收费态 + +`bk_transaction`: +- 原交易 `T-REDINK-NOPE` 状态变为 `REVERSED` +- 新增 follow-up: + - `tran_seq = RV9923062026041717511073C805` + - `tran_type = PAY_INVALID` + - `status = SUCCESS` + - `original_tran_seq = T-REDINK-NOPE` + +### 查询回读 +- `GET /admin-api/business/accounting-adjust/get?adjustmentNo=REV004-992306-20260417175109` -> formal-first 返回成功 +- `GET /admin-api/business/accounting-adjust/page?...objectType=REDINK_RECORD` -> formal-first 返回成功 + +说明:至此,REDINK_RECORD 已补齐“真实执行 -> 自动落 formal -> formal-first 查询”的完整闭环证据。 diff --git a/docs/guides/REV004_FINAL_MAINLINE_DELIVERY_SUMMARY.md b/docs/guides/REV004_FINAL_MAINLINE_DELIVERY_SUMMARY.md index 654866e..9e1e76a 100644 --- a/docs/guides/REV004_FINAL_MAINLINE_DELIVERY_SUMMARY.md +++ b/docs/guides/REV004_FINAL_MAINLINE_DELIVERY_SUMMARY.md @@ -22,7 +22,7 @@ | 违约金减免 | `LATE_FEE_REDUCE` | `biz_latefee_reduce` / `biz_latefee_reduce_detail` | 已完成 | formal-first | | 分账调整 | `SPLIT_ADJUST` | `biz_split_adjust` / `biz_split_adjust_detail` | 已完成 | 专属对象域 | | 价差调整 | `PRICE_DIFF_ADJUST` | `biz_price_diff_adjust` / `biz_price_diff_adjust_detail` | 已完成 | formal-first | -| 红冲记录 | `REDINK_RECORD` | `biz_redink_record` / `biz_redink_record_detail` | 已完成 | 结果型 formal-table;live execute 仍有外部依赖补证 | +| 红冲记录 | `REDINK_RECORD` | `biz_redink_record` / `biz_redink_record_detail` | 已完成 | 结果型 formal-table;已补齐 live execute 闭环证据 | --- @@ -59,10 +59,11 @@ ## 5. 当前仍需说明的残留点 ### 5.1 redink - formal-table 已落主线 -- compile / targeted tests / DDL / query smoke 已完成 -- 但 live execute 端到端补证仍被外部依赖阻塞: - - `business-bank-server` 无可用实例 - - 已有精确 blocker evidence +- compile / targeted tests / DDL / query smoke / live execute smoke 已完成 +- 已确认: + - 自动创建 follow-up bank 交易 + - 原交易状态更新为 `REVERSED` + - formal main/detail 自动落表 ### 5.2 其他对象 - 当前主线里最明显未独立 formal-table 的核心对象已经大幅减少 @@ -85,7 +86,7 @@ 其中: - prestorage 的 `process / attachments` 已 formal-first -- redink 已独立,但 live execute 的外部依赖补证未完成 +- redink 已独立,且 live execute 闭环证据已补齐 ### 对测试 优先参考对应 evidence 文档回归: