Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
8754970
specs(exact): propose TON exact scheme for x402 v2 (spec-only)
ohld Mar 5, 2026
9f6683f
specs(exact/ton): address review feedback — exact amounts, commission…
ohld Mar 6, 2026
07cc680
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 10, 2026
a67ee39
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 12, 2026
bd4acad
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 12, 2026
a1f0435
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 13, 2026
cbad3e6
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 13, 2026
26df4c8
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 16, 2026
655fce5
specs(exact/ton): rewrite to self-relay architecture — address all re…
ohld Mar 16, 2026
754599b
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 17, 2026
c3d4c49
chore(spec): simplify TON spec — remove external_signed, condense ref…
ohld Mar 17, 2026
2796f26
fix(spec): remove 50% gas buffer — emulation is already worst-case
ohld Mar 17, 2026
78bf804
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 17, 2026
ace8bba
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 18, 2026
d532515
specs(exact/ton): address all review comments — remove /prepare, add RPC
ohld Mar 19, 2026
3e1b00f
specs(exact/ton): add facilitator safety, explicit jetton wallet check
ohld Mar 19, 2026
5b88a13
specs(exact/ton): add areFeesSponsored flag per Stellar pattern
ohld Mar 19, 2026
9678410
specs(exact/ton): fix validUntil duplication, add stateInit code hash…
ohld Mar 19, 2026
a294e62
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 19, 2026
aaae477
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 20, 2026
c569c24
specs(exact/ton): add payload.to and source Jetton wallet checks
ohld Mar 20, 2026
8c11af2
specs(exact/ton): remove facilitatorUrl, fix dedup TTL, add canonical…
ohld Mar 23, 2026
1d4cda7
specs(exact/ton): internal message BoC, minimal payload, strict seqno
ohld Mar 25, 2026
1d7fd98
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 25, 2026
f2e1380
spec: address skywardboundd review -- account states, asset clarifica…
ohld Mar 26, 2026
d660998
spec: address remaining review comments from skywardboundd
ohld Mar 26, 2026
c0b6340
Merge branch 'main' into feat/scheme-exact-ton
ohld Mar 26, 2026
b93882a
spec: clarify TON exact flow for optional jetton transfer params
ArkadiyStena Apr 2, 2026
c0863ce
specs(exact/ton): clarify W5 account states and extra field semantics
ArkadiyStena Apr 3, 2026
d30ca7b
soec(exact/ton): clarify code hash check
ArkadiyStena Apr 3, 2026
967230d
spec(exact/ton): update reference implementations
ArkadiyStena Apr 6, 2026
83261e2
spec(exact/ton): allow sending mode 3
ArkadiyStena Apr 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion specs/schemes/exact/scheme_exact.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,12 @@ While implementation details vary by network, facilitators MUST enforce security
- Transfer correctness: `to` MUST equal `payTo` and `amount` MUST equal `requirements.amount` exactly.
- Simulation verification: MUST emit events showing only the expected balance changes (recipient increase, payer decrease) for `requirements.amount`—no other balance changes allowed.

Network-specific rules are in per-network documents: `scheme_exact_svm.md` (Solana), `scheme_exact_stellar.md` (Stellar), `scheme_exact_evm.md` (EVM), `scheme_exact_sui.md` (SUI).
### TON

- Transfer correctness: exactly 1 `jetton_transfer` with destination equal to `payTo` and amount equal to `requirements.amount` exactly.
- Signature validity: Ed25519 signature MUST verify against a public key derived from the BoC's `stateInit` (seqno == 0) or from the on-chain `get_public_key` getter (seqno > 0). Only `internal_signed` (0x73696e74) opcode is supported in the current gasless flow.
- Wallet code validity: contract code MUST match a known W5 wallet contract, using `stateInit` for `nonexist`/`uninit` wallets and on-chain code for `active` wallets.
- Replay protection: seqno MUST be strictly equal to on-chain value; duplicate `settlementBoc` submissions rejected via BoC hash dedup.
- Simulation verification: SHOULD simulate via emulation during `/verify` to confirm expected balance changes.

Network-specific rules are in per-network documents: `scheme_exact_svm.md` (Solana), `scheme_exact_stellar.md` (Stellar), `scheme_exact_evm.md` (EVM), `scheme_exact_sui.md` (SUI), `scheme_exact_ton.md` (TON).
Loading
Loading