refund-terminal-status.php
✔ 隔离库 jnc_ma_e2e_h8 就绪(105 张表,缺列 0)
【组 A-1 PayPal refundChannel:只认 COMPLETED】
✅ PayPal 退款 status=COMPLETED → success
✅ PayPal 退款 status=PENDING → uncertain
✅ PayPal 退款 status=FAILED → uncertain
✅ PayPal 退款 status=CANCELLED → uncertain
✅ PayPal 干净 4xx 仍 fail(守卫)
【组 A-2 微信 refundChannel:只认 SUCCESS】
✅ 微信 退款 status=SUCCESS → success
✅ 微信 退款 status=PROCESSING → uncertain
✅ 微信 退款 status=ABNORMAL → uncertain
✅ 微信 退款 status=CLOSED → fail
【组 A-3 微信 refundStatusQuery:参照物,本次未动,仍只认 SUCCESS】
✅ 微信 查单 status=SUCCESS → success
✅ 微信 查单 status=PROCESSING → uncertain
【组 A-4 Xendit:执行与查询**两处**都只认 SUCCEEDED】
✅ Xendit 夹具:测试库里取到一行 jnc_dd
✅ Xendit 退款 status=SUCCEEDED → success
✅ Xendit 退款 status=PENDING → uncertain
✅ Xendit 退款 status=FAILED → uncertain
✅ Xendit 查单 status=SUCCEEDED → success
✅ Xendit 查单 status=PENDING → uncertain
✅ Xendit 查单 status=FAILED → uncertain
【组 B PayPal 查单:只认「本次 out_refund_no 且 COMPLETED」那一笔】
✅ 发起侧 body 带 custom_id = out_refund_no
✅ 历史退款(custom_id 不是本次)→ uncertain
✅ 本次已 COMPLETED → success
✅ 回执 = 真实 refund id(不是 out_refund_no 兜底)
✅ 本次仍 PENDING → uncertain
✅ 无 custom_id 的历史退款 → uncertain
✅ 缓存已还原(读回真实值,投毒没留下)
✅ Xendit dd 夹具已还原
【组 C ScheduleDaily::stepRefundChannelRecheck】
✅ 全程都在测试库上(绝不写 jnc_ma)
✅ 测试库有可用 paydetail 夹具
✅ 桩控制器已注入
corp 1 通道退款复查 已确认成功=1 笔
✅ 本轮确认成功 1 笔(8 天前那行不在 7 天窗口内)
✅ 7 天内那行 status 3 → 1
✅ 7 天内那行写回了通道回执
✅ 8 天前那行**没被碰**(仍 status=3)
✅ 8 天前那行没有回执
✅ 工单正文追加了复查证据行
✅ 证据行带 out_refund_no
✅ 工单原始正文没被覆盖
✅ 工单仍未关闭(收口仍归管理员)
✅ 用户余额一分未动
✅ 没有新建/改动任何 refund_request
✅ 组 C 夹具已自清(测试库台账归零)
────────────────────────────
PASS=41 FAIL=0
✔ 已销毁 jnc_ma_e2e_h8