From add0d26963636a82cc497a24dce505f7ded74310 Mon Sep 17 00:00:00 2001 From: wangjia <809946525@qq.com> Date: Fri, 10 Jul 2026 09:55:35 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20pay=20v2=20=E6=89=A7=E8=A1=8C=E6=80=BB?= =?UTF-8?q?=E8=A7=88=E4=B8=8E=E8=AF=84=E5=AE=A1=E9=A1=B5(=E5=8D=95?= =?UTF-8?q?=E9=A1=B5=E6=B1=87=E6=80=BB=20P1=E7=8A=B6=E6=80=81/DAG/P2=C2=B7?= =?UTF-8?q?P7=E8=AE=A1=E5=88=92/=E5=86=B3=E7=AD=96=E7=82=B9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 --- docs/index.html | 5 ++ docs/pay-v2-execution-overview.html | 132 ++++++++++++++++++++++++++++ 2 files changed, 137 insertions(+) create mode 100644 docs/pay-v2-execution-overview.html diff --git a/docs/index.html b/docs/index.html index 86ac6b6..58cb60f 100644 --- a/docs/index.html +++ b/docs/index.html @@ -52,6 +52,11 @@

📋 实现计划

+ +
pay v2 · 执行总览与评审 ⭐
+
一页看全:P1 已完成 + 依赖 DAG + P2/P7 待审计划(任务清单)+ 4 个待拍决策点(是否开跑/新仓/延后取舍/资金链路)+ 波次建议。评审入口。
+
overview · 2026-07-10 · 评审入口
+
pay v2 · P1 核心数据模型 + 配置账户注册表(阅读版)⭐
阅读版;执行真相源 docs/superpowers/plans/2026-07-10-pay-v2-p1-core-model.md(含 checkbox)。pay v2 设计的首个落地阶段(8 阶段之 P1)。4 个 TDD 任务:money 包(int64 最小单位+币种)→ Order/Attempt/Account/Refund 模型+状态机+:memory: 测试约定 → OrderStore(幂等标付/取消/列表,条件UPDATE+RowsAffected)→ 账户配置注册表(凭证走 env)。沿用 GORM AutoMigrate/glebarez sqlite 惯例;金额从 string 元改 int64。P2-P8(Provider/收款管线/渠道 adapter/退款/路由/对账/codes 库/订阅)各自成计划、落地前细化。
diff --git a/docs/pay-v2-execution-overview.html b/docs/pay-v2-execution-overview.html new file mode 100644 index 0000000..9c4b023 --- /dev/null +++ b/docs/pay-v2-execution-overview.html @@ -0,0 +1,132 @@ + + + + + +pay v2 · 执行总览与评审 + + + +
+
pay v2 · Execution
+

pay v2 · 执行总览与评审

+

2026-07-10 · 一页看全:当前进度 + 依赖 DAG + P2/P7 待审计划 + 你要拍的决策点。详见 设计 · P1 · P2 · P7 · DAG

+ +
+现状:P1 已完成(核心数据模型,6 提交全绿,SDD 逐任务复审 + opus 整支复审通过)。P2(收款管线)与 P7(codes 库)计划已并行起草,待你评审后执行。 +
+ +

1. 8 阶段进度

+ + + + + + + + + + + + +
阶段内容状态
P1核心数据模型(Order/Attempt/Account/Refund)+ money + 账户注册表✅ 完成
P2Provider 抽象 + 一次性收款管线 + 统一入账 + webhook v2计划待审
P3首批渠道 adapter:crypto 自托管 / 支付宝 / Stripe路线图
P4退款 POST /refunds + 三向路线图
P5多账户路由策略路线图
P6对账 job路线图
P7codes 共享库(独立仓,A 嵌入各产品)计划待审
P8订阅/recurring + 拒付(later)路线图
+ +

2. 依赖 DAG 与波次

+
+ + + + + + + + + + P1 数据模型✅ 已完成 + P2 Provider 抽象收款管线+webhook关键路径起点 + P3 渠道 adaptercrypto/支付宝/Stripe + P5 多账户路由∥ P3 + P4 退款三向 + P6 对账 jobquery 兜底 + P8 订阅/拒付later + P7 codes 共享库(独立仓)零依赖 pay · 全程可并行(worktree)▶ Wave0 与 P2 同步起跑 + +
+

关键路径 P2→P3→P4/P6(硬串行);波次:Wave0 P7 ∥ Wave1 P2 → Wave2 P3∥P5 → Wave3 P4∥P6 → Wave4 P8。

+ +

3. 待审计划

+
+
+

P2 收款管线(pay 仓,7 任务)

+
    +
  1. Provider 接口 + 6 render_type + PaidEvent + 注册表
  2. +
  3. fake provider(测试用)
  4. +
  5. OrderStore 扩展(GetOrder/AttemptByProviderRef…)
  6. +
  7. 一次性收款管线 gateway(建单/查单/重试/取消)
  8. +
  9. 统一入账/开通 settle(复用 P1 幂等标付)
  10. +
  11. webhook v2 outbox + Notifier(event_type + HMAC)
  12. +
  13. HTTP /v1 接线
  14. +
+

P2 详细阅读版

+
+
+

P7 codes 共享库(新仓 ~/code/codes,8 任务)

+
    +
  1. 模块脚手架 + 通用权益描述符 Entitlement + 状态机
  2. +
  3. Crockford Base32 生成器(移植 pangolin)
  4. +
  5. Dialect + 内嵌迁移 + Store CRUD
  6. +
  7. Mint(批次生成,明文只现一次)
  8. +
  9. Redeem[T] 兑换事务骨架(宿主本地事务 + grant 回调)
  10. +
  11. RateLimiter/NonceChecker 接口 + GuardedRedeem
  12. +
  13. redisx 可选子包(唯一 import Redis 处)
  14. +
  15. webhook 灌码(pay-contract 式 HMAC)
  16. +
+

P7 详细阅读版

+
+
+ +

4. 你要拍的决策点

+
D1 · 是否开跑大执行波 —— P2(7)+P7(8)≈15 任务、~40 次 SDD agent 调用,多小时工程;P7 要新建仓 ~/code/codes。开跑 / 先只跑 P7 / 暂缓?
+
D2 · P7 独立新仓 —— codes 做成 github.com/wangjia/codes 独立仓(不放 pay 内、不留 pangolin),核心零第三方依赖。认可?
+
D3 · P2 延后取舍 —— webhook 暂无 biz_code(用 biz_ref)、路由取"首个 enabled 账户"(策略延 P5)、币种走部署默认(多币种延 P3+)、/v1 与 /api/v1 并存。都认可?
+
D4 · settle 资金链路 & Provider 接口 —— 入账归一/幂等/金额核对(P2 Task5)与 Provider 抽象(P2 Task1)是资金命脉与扩展地基,是否需要我讲深或调整?
+ +

5. 建议下一步

+

我建议:D2/D3 认可后开跑 —— P7 在新仓/worktree 与 P2 关键路径并行,按 DAG 波次推进,每波边界向你汇报。若想稳,先只跑 P7(独立、低风险、不动 pay 主线)试水。你定。

+
+ +