Commit Graph

8 Commits

Author SHA1 Message Date
wangjia ff65a06bf2 fix(v2): settleRenewal 重投补入队(通知不再永久丢)+ 无业务方首过返回 Processed(+同型路径核修)
settleRenewal 先 CreateRenewalPaid(建单已 paid)后 Enqueue,首次入队失败后重投走
created=false 的 duplicate 分支旧实现直接 return、不再入队,subscription.renewed
永久丢失(SyncPendingAttempts 救不了)。改为 duplicate 分支也无条件尝试入队,outbox
唯一键 ON CONFLICT DO NOTHING 幂等自愈;顺带对齐无业务方首过应返回 Processed。核查
发现 finalizeCanceled/markSubscriptionPastDue 有同型反纪律,同修。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nMthbVEmQquxBRKb9Fj8u
2026-07-10 18:30:11 +08:00
wangjia 4c242607a7 feat(pay-v2): P8 Task3 订阅创建 + 首期激活(subscription.created)+ 端点 2026-07-10 17:59:35 +08:00
wangjia 2016c5d16e feat(v2): gateway.Refund 编排(部分/多次累计 + 超退守卫 + crypto 人工向闭环)+ RefundingProvider 加 refundID 幂等键 2026-07-10 17:23:14 +08:00
wangjia ed5ec5c894 feat(v2): outbox 退款感知(refund_id 进唯一键)+ 投递门禁放行退款态 + Enqueue 贯通 refundID 2026-07-10 16:26:32 +08:00
wangjia 585133532c feat(v2): 多币种 product(ProductPrice 分币价目 + v1 元回退)+ 结算币种由渠道能力驱动
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nMthbVEmQquxBRKb9Fj8u
2026-07-10 14:20:12 +08:00
wangjia 7a27a6223a feat(v2): order 补 biz_code + webhook payload 带 product_biz_code(收口 P2 延后项) 2026-07-10 14:12:44 +08:00
wangjia c06f6d3a3c feat(v2): gateway 经 Picker 路由选账户 + retry 换号(ExcludeAccounts);替换首个 enabled 2026-07-10 14:02:33 +08:00
wangjia 0ab0713161 feat(v2): 一次性收款管线 CreateOrder/GetOrder/Retry/Cancel + DBProductResolver 2026-07-10 11:08:03 +08:00