@402flow/sdk 0.1.0-alpha.2 → 0.1.0-alpha.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/contracts.js CHANGED
@@ -1,3 +1,10 @@
1
+ /**
2
+ * Public wire-contract schemas for @402flow/sdk.
3
+ *
4
+ * These schemas serve two roles:
5
+ * 1. validate control-plane and merchant-facing data at runtime
6
+ * 2. define the exported TypeScript shapes the SDK exposes to callers
7
+ */
1
8
  import { z } from 'zod';
2
9
  export const receiptAuthorizationOutcomeSchema = z.enum(['allowed']);
3
10
  export const settlementEvidenceClassSchema = z.enum([
@@ -11,7 +18,31 @@ export const fulfillmentStatusSchema = z.enum([
11
18
  'failed',
12
19
  'inconclusive',
13
20
  ]);
21
+ export const receiptStatusSchema = z.enum([
22
+ 'confirmed',
23
+ 'provisional',
24
+ 'expired_unconfirmed',
25
+ 'refunded',
26
+ 'void',
27
+ ]);
28
+ export const receiptReconciliationStatusSchema = z.enum([
29
+ 'none',
30
+ 'required',
31
+ 'in_progress',
32
+ 'resolved',
33
+ 'refunded',
34
+ ]);
14
35
  export const paymentProofSourceSchema = z.enum(['merchant', 'local_simulation']);
36
+ export const chainAttributionStrengthSchema = z.enum([
37
+ 'strong_request_scoped',
38
+ 'constrained_unique',
39
+ ]);
40
+ export const chainConfirmationSourceSchema = z.enum(['chain_observer']);
41
+ export const chainFinalityLevelSchema = z.enum([
42
+ 'evm_block_confirmations_12',
43
+ 'solana_commitment_finalized',
44
+ ]);
45
+ export const chainAttributionBasisSchema = z.record(z.unknown());
15
46
  export const paidRequestProtocolSchema = z.enum(['x402', 'l402']);
16
47
  export const paidRequestHttpMethodSchema = z.enum([
17
48
  'GET',
@@ -26,20 +57,22 @@ export const paidRequestReasonCodeSchema = z.enum([
26
57
  'policy_allow',
27
58
  'policy_denied',
28
59
  'policy_review_required',
60
+ 'challenge_candidate_malformed',
61
+ 'challenge_no_supported_candidates',
62
+ 'challenge_mixed_environment_candidates',
63
+ 'challenge_execution_identity_unavailable',
64
+ 'challenge_execution_identity_ambiguous',
29
65
  'payment_execution_in_progress',
30
66
  'preflight_incompatible',
31
67
  'merchant_rejected',
68
+ 'merchant_execution_failed',
32
69
  'settlement_proof_conflict',
33
70
  'merchant_transport_lost',
34
- 'payment_rail_missing',
35
- 'payment_rail_wrong_organization',
36
- 'payment_rail_disabled',
37
- 'payment_rail_incompatible',
38
71
  ]);
39
72
  const externalIdPattern = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/;
40
73
  const decimalAmountPattern = /^\d+(?:\.\d+)?$/;
41
74
  const minorUnitAmountPattern = /^\d+$/;
42
- const currencyCodePattern = /^(?:[A-Z0-9_-]{3,10}|0x[a-fA-F0-9]{40})$/;
75
+ const currencyCodePattern = /^(?:[A-Z0-9_-]{3,10}|0x[a-fA-F0-9]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$/;
43
76
  export const defaultMoneyPrecision = 6;
44
77
  export const externalIdSchema = z
45
78
  .string()
@@ -65,6 +98,11 @@ function formatMonetaryAmount(amount, precision) {
65
98
  }
66
99
  return `${wholePart}.${fractionalPart.padEnd(precision, '0')}`;
67
100
  }
101
+ /**
102
+ * Convert a decimal amount into minor units using the declared precision.
103
+ * The SDK uses this when a merchant expresses payment terms in decimal form but
104
+ * downstream contracts require canonical minor-unit amounts.
105
+ */
68
106
  export function monetaryAmountToMinorUnits(amount, precision) {
69
107
  const normalizedAmount = formatMonetaryAmount(amount, precision);
70
108
  if (precision === 0) {
@@ -76,6 +114,7 @@ export function monetaryAmountToMinorUnits(amount, precision) {
76
114
  const minorUnits = `${wholePart}${fractionalPart}`.replace(/^0+(?=\d)/, '');
77
115
  return minorUnits || '0';
78
116
  }
117
+ /** Canonical normalized money shape used on receipts and payment requirements. */
79
118
  export const normalizedMoneySchema = z
80
119
  .object({
81
120
  asset: currencyCodeSchema,
@@ -113,16 +152,14 @@ export const normalizedMoneySchema = z
113
152
  });
114
153
  }
115
154
  });
155
+ /** Request-scoped context the control plane uses for policy, audit, and identity. */
116
156
  export const paidRequestContextSchema = z.object({
117
157
  organization: externalIdSchema,
118
158
  agent: externalIdSchema,
119
- purpose: z.string().min(1).max(200).optional(),
159
+ description: z.string().min(1).max(200).optional(),
120
160
  metadata: z.record(z.unknown()).optional(),
121
161
  });
122
- export const paidRequestTargetSchema = z.object({
123
- merchant: externalIdSchema,
124
- paymentRail: externalIdSchema,
125
- });
162
+ /** Exact HTTP request shape that gets prepared, hashed, and later executed. */
126
163
  export const paidRequestHttpRequestSchema = z.object({
127
164
  url: z.string().url(),
128
165
  method: paidRequestHttpMethodSchema,
@@ -130,40 +167,211 @@ export const paidRequestHttpRequestSchema = z.object({
130
167
  body: z.string().optional(),
131
168
  bodyHash: z.string().min(1).max(128).optional(),
132
169
  });
170
+ /** Merchant challenge evidence captured during prepare or fetchPaid flows. */
133
171
  export const paidRequestChallengeSchema = z.object({
134
172
  protocol: paidRequestProtocolSchema,
135
- money: normalizedMoneySchema,
136
- payee: z.string().min(1).max(255).optional(),
137
- memo: z.string().min(1).max(500).optional(),
138
- raw: z.record(z.unknown()).default({}),
173
+ headers: z.record(z.string()).default({}),
174
+ body: z.unknown().optional(),
139
175
  });
176
+ export const sdkPreparationSourceSchema = z.enum([
177
+ 'merchant_challenge',
178
+ 'external_metadata',
179
+ ]);
180
+ export const sdkPreparationAuthoritySchema = z.enum([
181
+ 'authoritative',
182
+ 'advisory',
183
+ ]);
184
+ export const sdkPreparationAttributionSchema = z.object({
185
+ source: sdkPreparationSourceSchema,
186
+ authority: sdkPreparationAuthoritySchema,
187
+ note: z.string().min(1).max(400).optional(),
188
+ });
189
+ export const sdkPreparationFieldSchema = z.object({
190
+ name: z.string().trim().min(1).max(100),
191
+ type: z.string().trim().min(1).max(40).optional(),
192
+ description: z.string().trim().min(1).max(400).optional(),
193
+ required: z.boolean().optional(),
194
+ defaultValue: z.unknown().optional(),
195
+ enumValues: z.array(z.string().trim().min(1)).optional(),
196
+ });
197
+ /** Optional caller-supplied metadata used to enrich preparation hints. */
198
+ export const sdkExternalMetadataSchema = z.object({
199
+ description: z.string().trim().min(1).max(400).optional(),
200
+ requestBodyType: z.string().trim().min(1).max(100).optional(),
201
+ requestBodyExample: z.string().trim().min(1).max(20_000).optional(),
202
+ requestBodyFields: z.array(sdkPreparationFieldSchema).optional(),
203
+ requestQueryParams: z.array(sdkPreparationFieldSchema).optional(),
204
+ requestPathParams: z.array(sdkPreparationFieldSchema).optional(),
205
+ notes: z.array(z.string().trim().min(1).max(400)).optional(),
206
+ });
207
+ export const sdkPreparedHintValueSchema = z.object({
208
+ value: z.string().min(1),
209
+ attribution: sdkPreparationAttributionSchema,
210
+ });
211
+ export const sdkPreparedHintFieldSchema = sdkPreparationFieldSchema.extend({
212
+ attribution: sdkPreparationAttributionSchema,
213
+ });
214
+ /**
215
+ * Consolidated request-shape hints returned by preparePaidRequest(). Every hint
216
+ * carries attribution so callers can distinguish advisory metadata from live
217
+ * merchant-authoritative evidence.
218
+ */
219
+ export const sdkPreparedRequestHintsSchema = z.object({
220
+ description: sdkPreparedHintValueSchema.optional(),
221
+ requestBodyType: sdkPreparedHintValueSchema.optional(),
222
+ requestBodyExample: sdkPreparedHintValueSchema.optional(),
223
+ requestBodyFields: z.array(sdkPreparedHintFieldSchema).default([]),
224
+ requestQueryParams: z.array(sdkPreparedHintFieldSchema).default([]),
225
+ requestPathParams: z.array(sdkPreparedHintFieldSchema).default([]),
226
+ notes: z.array(sdkPreparedHintValueSchema).default([]),
227
+ });
228
+ export const sdkPreparedPaymentRequirementAmountTypeSchema = z.enum([
229
+ 'exact',
230
+ 'max',
231
+ ]);
232
+ /** Parsed x402 challenge resource details surfaced for host and agent inspection. */
233
+ export const sdkPreparedChallengeResourceSchema = z.object({
234
+ url: z.string().min(1),
235
+ description: z.string().min(1).optional(),
236
+ mimeType: z.string().min(1).optional(),
237
+ });
238
+ /** One advertised payment candidate copied from the decoded merchant challenge. */
239
+ export const sdkPreparedChallengeAcceptSchema = z
240
+ .object({
241
+ scheme: z.string().min(1).optional(),
242
+ network: z.string().min(1).optional(),
243
+ amount: z.string().min(1).optional(),
244
+ maxAmountRequired: z.string().min(1).optional(),
245
+ asset: z.string().min(1).optional(),
246
+ payTo: z.string().min(1).optional(),
247
+ maxTimeoutSeconds: z.number().int().positive().optional(),
248
+ resource: z.string().min(1).optional(),
249
+ description: z.string().min(1).optional(),
250
+ mimeType: z.string().min(1).optional(),
251
+ outputSchema: z.unknown().optional(),
252
+ extra: z.record(z.unknown()).optional(),
253
+ })
254
+ .catchall(z.unknown());
255
+ /** Parsed merchant challenge payload for agents that need full spec-level detail. */
256
+ export const sdkPreparedChallengeDetailsSchema = z.object({
257
+ x402Version: z.number().int().positive().optional(),
258
+ error: z.string().min(1).optional(),
259
+ resource: sdkPreparedChallengeResourceSchema.optional(),
260
+ accepts: z.array(sdkPreparedChallengeAcceptSchema).default([]),
261
+ extensions: z.record(z.unknown()).optional(),
262
+ });
263
+ /** Normalized payment terms extracted from a merchant challenge when available. */
264
+ export const sdkPreparedPaymentRequirementSchema = z.object({
265
+ protocol: paidRequestProtocolSchema,
266
+ description: z.string().min(1).optional(),
267
+ asset: z.string().min(1).optional(),
268
+ network: z.string().min(1).optional(),
269
+ payee: z.string().min(1).optional(),
270
+ amountType: sdkPreparedPaymentRequirementAmountTypeSchema.optional(),
271
+ amount: monetaryAmountSchema.optional(),
272
+ amountMinor: z.string().regex(minorUnitAmountPattern).optional(),
273
+ precision: z.number().int().min(0).max(defaultMoneyPrecision).optional(),
274
+ provenance: sdkPreparationAttributionSchema,
275
+ });
276
+ /** Evidence that the SDK performed an unpaid live probe before preparation. */
277
+ export const sdkPreparedProbeResultSchema = z.object({
278
+ responseStatus: z.number().int().min(100).max(599),
279
+ confirmedAt: z.string().datetime(),
280
+ });
281
+ export const sdkPreparedValidationIssueLocationSchema = z.enum([
282
+ 'body',
283
+ 'query',
284
+ 'path',
285
+ 'headers',
286
+ ]);
287
+ export const sdkPreparedValidationSeveritySchema = z.enum([
288
+ 'error',
289
+ 'warning',
290
+ ]);
291
+ /** Structured remediation guidance derived from hints and the candidate request. */
292
+ export const sdkPreparedValidationIssueSchema = z.object({
293
+ location: sdkPreparedValidationIssueLocationSchema,
294
+ field: z.string().trim().min(1).max(100),
295
+ code: z.string().trim().min(1).max(100),
296
+ message: z.string().trim().min(1).max(400),
297
+ source: sdkPreparationSourceSchema,
298
+ blocking: z.boolean(),
299
+ severity: sdkPreparedValidationSeveritySchema,
300
+ suggestedFix: z.string().trim().min(1).max(400).optional(),
301
+ });
302
+ /** Narrow action summary the caller should take after preparation. */
303
+ export const sdkPreparedNextActionSchema = z.enum([
304
+ 'execute',
305
+ 'revise_request',
306
+ 'treat_as_passthrough',
307
+ ]);
308
+ /** Preparation result when this exact request does not currently require payment. */
309
+ export const sdkPreparedPaidRequestPassthroughSchema = z.object({
310
+ kind: z.literal('passthrough'),
311
+ protocol: z.literal('none'),
312
+ request: paidRequestHttpRequestSchema,
313
+ hints: sdkPreparedRequestHintsSchema,
314
+ probe: sdkPreparedProbeResultSchema.optional(),
315
+ validationIssues: z.array(sdkPreparedValidationIssueSchema).default([]),
316
+ nextAction: sdkPreparedNextActionSchema,
317
+ });
318
+ /** Preparation result when this exact request is payable and executable. */
319
+ export const sdkPreparedPaidRequestReadySchema = z.object({
320
+ kind: z.literal('ready'),
321
+ protocol: paidRequestProtocolSchema,
322
+ request: paidRequestHttpRequestSchema,
323
+ challenge: paidRequestChallengeSchema,
324
+ challengeDetails: sdkPreparedChallengeDetailsSchema.optional(),
325
+ paymentRequirement: sdkPreparedPaymentRequirementSchema.optional(),
326
+ hints: sdkPreparedRequestHintsSchema,
327
+ probe: sdkPreparedProbeResultSchema.optional(),
328
+ validationIssues: z.array(sdkPreparedValidationIssueSchema).default([]),
329
+ nextAction: sdkPreparedNextActionSchema,
330
+ });
331
+ /** Discriminated union returned by AgentPayClient.preparePaidRequest(). */
332
+ export const sdkPreparedPaidRequestSchema = z.discriminatedUnion('kind', [
333
+ sdkPreparedPaidRequestPassthroughSchema,
334
+ sdkPreparedPaidRequestReadySchema,
335
+ ]);
336
+ /** Control-plane request shape used for governed paid execution decisions. */
140
337
  export const sdkPaymentDecisionRequestSchema = z.object({
141
338
  context: paidRequestContextSchema,
142
- target: paidRequestTargetSchema,
143
339
  request: paidRequestHttpRequestSchema,
144
340
  challenge: paidRequestChallengeSchema,
145
341
  idempotencyKey: z.string().min(1).max(128).optional(),
146
342
  });
343
+ /** Durable receipt shape returned after the control plane records an outcome. */
147
344
  export const sdkReceiptSchema = z.object({
148
345
  receiptId: z.string().uuid(),
149
346
  paidRequestId: z.string().uuid(),
150
347
  paymentAttemptId: z.string().uuid(),
151
348
  organizationId: z.string().uuid(),
152
349
  agentId: z.string().uuid(),
153
- merchantId: z.string().uuid(),
350
+ merchantId: z.string().uuid().optional(),
154
351
  protocol: paidRequestProtocolSchema,
155
352
  money: normalizedMoneySchema,
156
353
  authorizationOutcome: receiptAuthorizationOutcomeSchema,
354
+ status: receiptStatusSchema,
355
+ reconciliationStatus: receiptReconciliationStatusSchema,
356
+ confirmationSource: chainConfirmationSourceSchema.optional(),
357
+ attributionStrength: chainAttributionStrengthSchema.optional(),
358
+ attributionBasis: chainAttributionBasisSchema.optional(),
359
+ attributionRuleVersion: z.string().min(1).max(128).optional(),
360
+ confirmedAt: z.string().datetime().optional(),
361
+ finalityLevelUsed: chainFinalityLevelSchema.optional(),
157
362
  requestUrl: z.string().url(),
158
363
  requestMethod: paidRequestHttpMethodSchema,
364
+ canonicalSettlementKey: z.string().min(1).max(255).optional(),
159
365
  paymentReference: z.string().min(1).max(128).optional(),
160
366
  evidenceSource: paymentProofSourceSchema.optional(),
161
367
  settlementEvidenceClass: settlementEvidenceClassSchema.optional(),
162
368
  settlementIdentifier: z.string().min(1).max(255).optional(),
369
+ supersededByReceiptId: z.string().uuid().optional(),
163
370
  fulfillmentStatus: fulfillmentStatusSchema.optional(),
164
371
  createdAt: z.string().datetime(),
165
372
  completedAt: z.string().datetime().optional(),
166
373
  });
374
+ /** Normalized merchant HTTP response embedded in SDK results and decisions. */
167
375
  export const sdkMerchantResponseSchema = z.object({
168
376
  status: z.number().int().min(100).max(599),
169
377
  headers: z.record(z.string()).default({}),
@@ -178,11 +386,15 @@ export const sdkPaymentDecisionAllowResponseSchema = z.object({
178
386
  merchantResponse: sdkMerchantResponseSchema,
179
387
  receipt: sdkReceiptSchema,
180
388
  });
389
+ const sdkMerchantFailureReasonCodeSchema = z.enum([
390
+ 'merchant_rejected',
391
+ 'merchant_execution_failed',
392
+ ]);
181
393
  export const sdkPaymentDecisionPaidFulfillmentFailedResponseSchema = z.object({
182
394
  outcome: z.literal('paid_fulfillment_failed'),
183
395
  paidRequestId: z.string().uuid(),
184
396
  paymentAttemptId: z.string().uuid(),
185
- reasonCode: z.literal('merchant_rejected'),
397
+ reasonCode: sdkMerchantFailureReasonCodeSchema,
186
398
  reason: z.string().min(1),
187
399
  merchantResponse: sdkMerchantResponseSchema,
188
400
  settlementEvidenceClass: settlementEvidenceClassSchema,
@@ -194,7 +406,7 @@ export const sdkPaymentDecisionExecutionFailedResponseSchema = z.object({
194
406
  outcome: z.literal('execution_failed'),
195
407
  paidRequestId: z.string().uuid(),
196
408
  paymentAttemptId: z.string().uuid(),
197
- reasonCode: z.enum(['merchant_rejected', 'settlement_proof_conflict']),
409
+ reasonCode: sdkMerchantFailureReasonCodeSchema,
198
410
  reason: z.string().min(1),
199
411
  merchantResponse: sdkMerchantResponseSchema,
200
412
  evidence: z.record(z.unknown()).optional(),
@@ -229,6 +441,7 @@ export const sdkPaymentDecisionDenyResponseSchema = z.object({
229
441
  reason: z.string().min(1),
230
442
  policyReviewEventId: z.string().uuid().optional(),
231
443
  });
444
+ /** Full union of decision outcomes the control plane can return to the SDK. */
232
445
  export const sdkPaymentDecisionResponseSchema = z.discriminatedUnion('outcome', [
233
446
  sdkPaymentDecisionAllowResponseSchema,
234
447
  sdkPaymentDecisionPaidFulfillmentFailedResponseSchema,
@@ -238,6 +451,7 @@ export const sdkPaymentDecisionResponseSchema = z.discriminatedUnion('outcome',
238
451
  sdkPaymentDecisionInconclusiveResponseSchema,
239
452
  sdkPaymentDecisionDenyResponseSchema,
240
453
  ]);
454
+ /** Receipt lookup response returned by AgentPayClient.lookupReceipt(). */
241
455
  export const sdkReceiptResponseSchema = z.object({
242
456
  receipt: sdkReceiptSchema,
243
457
  });
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export type HarnessToolName = 'prepare_paid_request' | 'execute_prepared_request' | 'get_execution_result';
2
+ export type HarnessToolSpec = {
3
+ name: HarnessToolName;
4
+ description: string;
5
+ };
6
+ export declare const defaultHarnessInstructions = "Safely orchestrate paid HTTP requests through 402flow. Follow each tool's description for when and how to call it. Inspect challengeDetails and hints when present for merchant-published discovery data. Use externalMetadata only when the caller already has endpoint metadata, and treat it as advisory when merchant challenge hints disagree.";
7
+ export declare const defaultHarnessToolSpecs: HarnessToolSpec[];
@@ -0,0 +1,28 @@
1
+ export const defaultHarnessInstructions = 'Safely orchestrate paid HTTP requests through 402flow. Follow each tool\'s description for when and how to call it. Inspect challengeDetails and hints when present for merchant-published discovery data. Use externalMetadata only when the caller already has endpoint metadata, and treat it as advisory when merchant challenge hints disagree.';
2
+ export const defaultHarnessToolSpecs = [
3
+ {
4
+ name: 'prepare_paid_request',
5
+ description: [
6
+ 'Probe a merchant URL and return normalized payment terms, request hints, validation issues, and a nextAction directive.',
7
+ '',
8
+ 'Always call this before any paid execution.',
9
+ '',
10
+ 'nextAction is the authoritative machine contract for what to do next:',
11
+ '- "execute": the request is ready to pay. Call execute_prepared_request with the returned preparedId.',
12
+ '- "revise_request": the request is incomplete. Inspect validationIssues and hints to determine what is missing. If the task provides enough information, fix the request and call prepare_paid_request again. Otherwise stop and explain what is still missing.',
13
+ '- "treat_as_passthrough": the merchant does not require payment. Do not pay. Explain that paid execution is not required.',
14
+ '',
15
+ 'Do not call execute_prepared_request unless nextAction is "execute".',
16
+ 'Do not invent missing business parameters.',
17
+ ].join('\n'),
18
+ },
19
+ {
20
+ name: 'execute_prepared_request',
21
+ description: 'Execute a previously prepared paid request. Only call this after prepare_paid_request returned nextAction "execute" for this preparedId. If the same preparedId was already executed, the harness rejects the duplicate call as already consumed. Prepare a new request to retry.',
22
+ },
23
+ {
24
+ name: 'get_execution_result',
25
+ description: 'Read the stored execution result for a preparedId after execution completes. Always call this after execute_prepared_request before summarizing the outcome. Report denied, pending, failed, or inconclusive outcomes clearly.',
26
+ },
27
+ ];
28
+ //# sourceMappingURL=harness-instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness-instructions.js","sourceRoot":"","sources":["../src/harness-instructions.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,0BAA0B,GACrC,sVAAsV,CAAC;AAEzV,MAAM,CAAC,MAAM,uBAAuB,GAAsB;IACxD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE;YACX,yHAAyH;YACzH,EAAE;YACF,6CAA6C;YAC7C,EAAE;YACF,uEAAuE;YACvE,uGAAuG;YACvG,iQAAiQ;YACjQ,2HAA2H;YAC3H,EAAE;YACF,sEAAsE;YACtE,4CAA4C;SAC7C,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EACT,mRAAmR;KACtR;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,gOAAgO;KACnO;CACF,CAAC"}