You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(PR31): remove SPA and SettlementIntent — chain ends at SBA (#49)
* feat(PR30): add budgetMinor, budgetEscrowRef, authorizedGateway, offlineMaxSinglePayment to PolicyGrantLike
XRPL-escrow budget enforcement requires these PA-signed fields in the PolicyGrant
so the Trust Gateway can enforce ceilings from a tamper-proof source rather than
trusting agent-reported values.
- PolicyGrantLike: budgetMinor, budgetCurrency, budgetEscrowRef, authorizedGateway,
offlineMaxSinglePayment, offlineMaxSinglePaymentCurrency
- policyGrantForVerificationSchema: Zod validators for all six fields (numeric strings
validated via regex)
- createPolicyGrant / CreatePolicyGrantInput: factory and input type updated
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix: review corrections — JSDoc consistency and rail-agnostic wording
- types.ts: authorizedGateway — remove XRPL-specific "address" wording, use rail-agnostic description
- types.ts: offlineMaxSinglePayment — "(drops)" → "minor units" (rail-agnostic)
- types.ts: budgetEscrowRef example — add lockId to eth example for consistency with spec
- createPolicyGrant.ts: add missing JSDoc for authorizedGateway, offlineMaxSinglePayment,
offlineMaxSinglePaymentCurrency (other new fields had docs, these three did not)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(PR31): remove SPA and SettlementIntent — Trust Gateway is mandatory, chain ends at SBA
The Trust Gateway is now a mandatory actor that submits XRPL payments directly.
A separate SignedPaymentAuthorization (SPA) artifact is no longer needed.
The authorization chain is simplified: PolicyGrant → SBA → [gateway verifies + submits XRPL tx] → receipt.
Deleted: src/protocol/spa.ts, src/protocol/schema/paymentAuthorization.ts,
src/protocol/schema/settlementIntent.ts, src/hash/computeSettlementIntentHash.ts,
src/sdk/createSettlementIntent.ts, src/verifier/verifyPaymentAuthorization.ts,
src/verifier/verifyDisputedSettlement.ts, src/verifier/verifySettlementIntent.ts.
Updated: verifyPipeline, verifySettlement family, SettlementVerificationContext,
VerificationReport (removed hashBindingChecked), CLI bundle/verify/formatReport,
sdk/index, hash/index, protocol/schema/index, service/index, and all tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: NAOR YUVAL <naoryuval@NAORs-MacBook-Air.local>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
0 commit comments