@402flow/sdk 0.1.0-alpha.27 → 0.1.0-alpha.29

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/README.md CHANGED
@@ -1,8 +1,18 @@
1
1
  # @402flow/sdk
2
2
 
3
- Paid HTTP SDK for AI agents with an inspectable prepare/execute flow.
3
+ Paid API SDK for AI agents, tool hosts, and governed automation.
4
4
 
5
- It uses the 402flow control plane as the governance and execution backend, but the main developer surface is a small client for preparing and executing paid HTTP requests.
5
+ It gives AI agents, tool hosts, and automation services easy access to paid APIs while organizations keep policy, approvals, receipts, and spend controls outside the agent runtime.
6
+
7
+ Use `fetchPaid(...)` when the exact request is already known.
8
+ Use `preparePaidRequest(...)` when the agent needs merchant-published hints and an authoritative `nextAction` before paying.
9
+
10
+ ## Why This SDK
11
+
12
+ - Inspectable paid request flow. Agents and tool hosts can prepare, revise, and execute paid HTTP requests explicitly instead of hiding everything inside one opaque pay-and-fetch call.
13
+ - Control-plane governance. Policy, approvals, receipts, and audit stay centralized instead of being reimplemented in every host.
14
+ - Agent-ready request shaping. `nextAction` gives models and tools a stable contract for revise, execute, or passthrough.
15
+ - Provider-neutral execution. Use the native SDK path or delegate the paid call to Dexter, pay.sh, or a host-owned executor without losing governance value.
6
16
 
7
17
  ## Install
8
18
 
@@ -10,647 +20,133 @@ It uses the 402flow control plane as the governance and execution backend, but t
10
20
  npm install @402flow/sdk
11
21
  ```
12
22
 
13
- The published package supports Node 20+.
14
-
15
- ## Overview
16
-
17
- `@402flow/sdk` is built for AI agents and other callers that need to inspect, prepare, and execute paid HTTP requests without embedding payment-protocol or governance logic in the host.
23
+ This is the normal install path. Use `@402flow/sdk` by itself when you want the native 402flow payment flow.
18
24
 
19
- The SDK has one core client, `AgentPayClient`, and three main calls:
25
+ Optional official adapters for third-party payers:
20
26
 
21
- | API | Use when | What it does |
22
- | --- | --- | --- |
23
- | `fetchPaid(...)` | You already know the request shape | Probes if needed, resolves payment through the control plane, and returns passthrough or success |
24
- | `preparePaidRequest(...)` | You want to inspect before paying | Returns normalized payment terms, request hints, validation issues, and `nextAction` |
25
- | `executePreparedRequest(...)` | You already prepared the request | Executes the exact prepared request without re-probing first |
26
-
27
- Use `fetchPaid(...)` for the simplest direct path.
28
- Use `preparePaidRequest(...)` plus `executePreparedRequest(...)` when the caller needs an explicit inspect, revise, then execute loop.
27
+ ```bash
28
+ npm install @402flow/sdk @402flow/sdk-third-party-executors
29
+ ```
29
30
 
30
- The package also includes `AgentHarness`, an optional preparedId-based wrapper for tool hosts. That host-facing wrapper adds a human-readable `costSummary` on prepared results and ships canonical `defaultHarnessInstructions` plus `defaultHarnessToolSpecs` exports so adapters can reuse the same orchestration contract.
31
+ Install `@402flow/sdk-third-party-executors` only when you want delegated execution through Dexter or pay.sh instead of the native 402flow path.
31
32
 
32
- ## Runtime Notes
33
+ The published package supports Node 20+.
33
34
 
34
- Two constraints matter early in real integrations:
35
+ ## Core Surface
35
36
 
36
- 1. paid prepare and execute flows require replayable request bodies
37
- 2. the current replayable body types are `string` and `URLSearchParams`
37
+ | API | Use it when | What it returns |
38
+ | --- | --- | --- |
39
+ | `fetchPaid(...)` | You already know the request shape | Probe the merchant when no challenge is supplied, then authorize, pay, and return the merchant response |
40
+ | `preparePaidRequest(...)` | You want to inspect before paying | Payment terms, parameter hints, validation issues, and an authoritative `nextAction` |
41
+ | `executePreparedRequest(...)` | You already prepared the request | Executes the exact prepared request without re-probing first |
42
+ | `AgentHarness` | Your model host wants a `preparedId` tool contract | The same flow behind a process-local in-memory three-tool surface |
38
43
 
39
- That means JSON payloads should be sent as strings, and form-style payloads should be sent as `URLSearchParams`.
44
+ ## Quick Start: Host-Controlled Request
40
45
 
41
- The SDK exports small helpers for that:
46
+ This first example shows the deterministic application path. Your code already knows which merchant route and request parameters it wants to send, and the SDK handles probing, policy, payment, and receipts around that request.
42
47
 
43
48
  ```ts
44
49
  import {
45
- createFormUrlEncodedBody,
50
+ AgentPayClient,
46
51
  createJsonRequestBody,
47
52
  } from '@402flow/sdk';
48
53
 
49
- const jsonBody = createJsonRequestBody({
50
- prompt: 'foggy coastline',
51
- });
52
-
53
- const formBody = createFormUrlEncodedBody({
54
- prompt: 'foggy coastline',
55
- style: 'noir',
56
- tags: ['coast', 'mist'],
57
- });
58
- ```
59
-
60
- `FormData`, `Blob`, streams, and framework-specific body wrappers are not currently accepted in paid flows because the SDK has to replay the exact request body through preparation and execution. Convert those upstream into a stable string or `URLSearchParams` first.
61
-
62
- ## Create A Client
63
-
64
- Create one `AgentPayClient` per agent identity. The client binds the 402flow control-plane location and the organization plus agent selectors up front, and each request only carries request-specific context.
65
-
66
- ### Bootstrap key
67
-
68
- For most SDK integrations, bootstrap-key auth is the recommended mode. The SDK exchanges it for a short-lived runtime token, caches that token, and refreshes it automatically before expiry.
69
-
70
- ```ts
71
- import { AgentPayClient, createJsonRequestBody } from '@402flow/sdk';
72
-
73
54
  const client = new AgentPayClient({
74
- controlPlaneBaseUrl: 'https://402flow.ai',
75
- organization: 'acme-labs',
76
- agent: 'reporting-worker',
55
+ controlPlaneBaseUrl:
56
+ process.env.X402FLOW_CONTROL_PLANE_BASE_URL ?? 'https://api-staging.402flow.ai',
57
+ organization: process.env.X402FLOW_ORGANIZATION ?? 'acme-labs',
58
+ agent: process.env.X402FLOW_AGENT ?? 'research-worker',
77
59
  auth: {
78
60
  type: 'bootstrapKey',
79
61
  bootstrapKey: process.env.X402FLOW_BOOTSTRAP_KEY ?? '',
80
62
  },
81
63
  });
82
- ```
83
-
84
- ### Runtime token
85
64
 
86
- ```ts
87
- import { AgentPayClient } from '@402flow/sdk';
88
-
89
- const client = new AgentPayClient({
90
- controlPlaneBaseUrl: 'https://402flow.ai',
91
- organization: 'acme-labs',
92
- agent: 'reporting-worker',
93
- auth: {
94
- type: 'runtimeToken',
95
- runtimeToken: process.env.X402FLOW_RUNTIME_TOKEN ?? '',
96
- },
97
- });
98
- ```
99
-
100
- ## Fast Path: `fetchPaid()`
101
-
102
- Call `fetchPaid()` when you already know the merchant URL, method, headers, and body.
103
-
104
- ```ts
105
- try {
106
- const result = await client.fetchPaid(
107
- 'https://merchant.example.com/reports/daily',
108
- {
109
- method: 'POST',
110
- headers: {
111
- 'content-type': 'application/json',
112
- },
113
- body: createJsonRequestBody({
114
- date: '2026-03-25',
115
- }),
116
- },
117
- {
118
- description: 'sync daily paid report',
119
- idempotencyKey: 'daily-report-2026-03-25',
120
- },
121
- );
122
-
123
- const merchantBody = await result.response.json();
124
- console.log('merchant response body:', merchantBody);
125
- } catch (error) {
126
- console.error('paid request failed', error);
127
- throw error;
128
- }
129
- ```
130
-
131
- If the merchant does not require payment for that exact request, the SDK returns a passthrough response. If the merchant returns a payable challenge, the SDK resolves payment through the control plane and returns a durable paid outcome.
132
-
133
- `result.response` is always the merchant HTTP response. SDK-owned payment metadata such as `paidRequestId`, `paymentAttemptId`, `receiptId`, and `receipt` stays on the SDK result instead of being injected into the merchant JSON body.
134
-
135
- ### Optional Attribution
136
-
137
- Most SDK users do not need to send attribution at all.
138
-
139
- The optional `attribution` field is for callers that already know where this paid endpoint came from and want that provenance to survive into control-plane audit, reporting, and later policy analysis.
140
-
141
- Common cases:
142
-
143
- 1. your app found the endpoint through your own registry or catalog
144
- 2. your app imported the endpoint from a saved workspace config
145
- 3. your agent is calling a merchant directly and you want to mark that path as `direct`
146
- 4. your host selected the endpoint from a discovery surface such as Bazaar, Dexter, pay.sh, x402scan, or another catalog
147
-
148
- This field does not make payment execution work. It improves lifecycle explainability.
149
-
150
- If you do not already know the endpoint provenance, omit it.
151
-
152
- ```ts
153
65
  const result = await client.fetchPaid(
154
- 'https://merchant.example.com/reports/daily',
66
+ 'https://demo-merchant-staging.402flow.ai/demo-merchant/research-brief/solana-devnet',
155
67
  {
156
68
  method: 'POST',
157
69
  headers: {
158
70
  'content-type': 'application/json',
159
71
  },
160
72
  body: createJsonRequestBody({
161
- date: '2026-03-25',
73
+ topic: 'sdk integration rollout',
74
+ audience: 'platform engineers',
75
+ format: 'bullets',
162
76
  }),
163
77
  },
164
78
  {
165
- description: 'sync daily paid report',
166
- attribution: {
167
- discoverySource: 'direct',
168
- },
169
- },
170
- );
171
- ```
172
-
173
- For the first attribution slice, `discoverySource` is the main field callers should set when they have a clear answer. The control plane derives an early endpoint-level `resourceIdentity` from the request method and URL, so callers do not need to compute that themselves.
174
-
175
- ### Interpreting Merchant Responses
176
-
177
- The SDK gives you a stable place for payment metadata, but it does not invent a universal fulfilled-response schema for merchant content.
178
-
179
- In practice:
180
-
181
- 1. the SDK result carries durable payment metadata such as `receiptId` and `receipt`
182
- 2. `result.response` carries the merchant fulfillment payload
183
- 3. the merchant contract decides where the useful paid content lives inside that payload
184
-
185
- If you need request-shape guidance before execution, use `preparePaidRequest()` and inspect:
186
-
187
- 1. `prepared.hints` for authoritative request fields, examples, notes, and query/body guidance when the challenge publishes them
188
- 2. `prepared.challengeDetails` for raw merchant challenge data such as resource metadata, accepted payment candidates, and extensions like Bazaar discovery metadata
189
- 3. optional caller-supplied `externalMetadata` as advisory context only
190
-
191
- If you do not have enough contract information to interpret a merchant response safely, return the raw merchant body and explain what is still missing instead of inventing a payload shape.
192
-
193
- ## Preparation Flow
194
-
195
- Use `preparePaidRequest()` when the caller needs a first-class pre-execution result before paying.
196
-
197
- ```ts
198
- import { createJsonRequestBody } from '@402flow/sdk';
199
-
200
- const prepared = await client.preparePaidRequest(
201
- 'https://merchant.example.com/images/generate',
202
- {
203
- method: 'POST',
204
- headers: {
205
- 'content-type': 'application/json',
206
- },
207
- body: createJsonRequestBody({
208
- prompt: 'foggy coastline',
209
- }),
79
+ description: 'generate a staged research brief',
80
+ idempotencyKey: 'sdk-readme-solana-devnet-brief',
210
81
  },
211
82
  );
212
83
 
213
- if (prepared.kind === 'passthrough') {
214
- console.log('merchant did not require payment', prepared.probe?.responseStatus);
215
- } else {
216
- console.log('protocol:', prepared.protocol);
217
- console.log('payment requirement:', prepared.paymentRequirement);
218
- console.log('request hints:', prepared.hints);
219
- }
220
-
221
- console.log('next action:', prepared.nextAction);
222
- console.log('validation issues:', prepared.validationIssues);
84
+ console.log(await result.response.json());
85
+ console.log(result.receiptId);
223
86
  ```
224
87
 
225
- This flow is useful when:
88
+ This is why the request body is filled in directly in code here. `fetchPaid(...)` is the simplest integration path when your application already knows the parameters.
226
89
 
227
- 1. an agent needs request-shape hints before attempting execution
228
- 2. the caller wants normalized payment terms before paying
229
- 3. the caller wants to merge optional `externalMetadata` it already has from another system
90
+ Important probe semantics: when you do not supply a merchant challenge, both `fetchPaid(...)` and `preparePaidRequest(...)` send the original request to the merchant first to discover whether payment is required. That initial merchant probe happens before any control-plane authorization or payment attempt. For non-idempotent `POST` routes, use this only against endpoints that are explicitly safe to probe or after you already have the merchant challenge from another step.
230
91
 
231
- The common loop is:
92
+ Use `fetchPaid(...)` when the request is already shaped and you want the shortest path.
93
+ Use `preparePaidRequest(...)` when the caller needs to inspect what the merchant published, construct the right request, and execute only when `nextAction === 'execute'`.
232
94
 
233
- 1. prepare the request
234
- 2. inspect `kind`, `paymentRequirement`, `hints`, `validationIssues`, and `nextAction`
235
- 3. revise if needed
236
- 4. execute only once the request is understood
95
+ ## Quick Start: Agent-Driven Request Construction
237
96
 
238
- If your system already has endpoint metadata, you can pass it in as optional context:
97
+ If you want the agent to decide which parameters to send, do not hardcode those decisions into the SDK call site. Instead, expose the SDK through `AgentHarness` or your own tool wrapper and let the agent react to `nextAction`, `validationIssues`, and `hints`.
239
98
 
240
- ```ts
241
- import { createJsonRequestBody } from '@402flow/sdk';
99
+ The typical loop is:
242
100
 
243
- const prepared = await client.preparePaidRequest(
244
- 'https://merchant.example.com/images/generate',
245
- {
246
- method: 'POST',
247
- headers: {
248
- 'content-type': 'application/json',
249
- },
250
- body: createJsonRequestBody({
251
- prompt: 'foggy coastline',
252
- }),
253
- },
254
- {
255
- externalMetadata: {
256
- requestBodyType: 'json',
257
- requestBodyFields: [
258
- {
259
- name: 'prompt',
260
- type: 'string',
261
- required: true,
262
- },
263
- ],
264
- },
265
- },
266
- );
267
- ```
268
-
269
- `externalMetadata` is optional caller context. It improves preparation when the caller already has structured endpoint knowledge, but it is not required for normal SDK use.
270
-
271
- `attribution` is separate from `externalMetadata`.
272
-
273
- 1. `externalMetadata` helps the SDK understand request shape before execution
274
- 2. `attribution` helps the control plane explain where the paid endpoint came from after execution
275
-
276
- Use `externalMetadata` for request hints. Use `attribution` for provenance. Either may be omitted.
101
+ 1. the agent proposes a request
102
+ 2. the SDK returns `nextAction`, `validationIssues`, and merchant-published `hints`
103
+ 3. the agent revises the request until `nextAction === 'execute'`
104
+ 4. the host executes the prepared request and reads the stored result before summarizing the outcome
277
105
 
278
- ### What `ready` Means
106
+ That is the path to use when the model is supposed to fill request parameters properly instead of relying on host code that already knows the answer.
279
107
 
280
- `ready` means this exact request can proceed through governed paid execution as-is; it does not mean the SDK has inferred the best task parameters for you.
108
+ ## AgentHarness
281
109
 
282
- That distinction matters:
110
+ `AgentHarness` is the optional model-host wrapper for the same inspect-then-execute loop.
283
111
 
284
- 1. `ready` is about protocol and payment executability
285
- 2. `validationIssues` and `hints` are about request-shape guidance
286
- 3. choosing semantically correct task parameters still belongs to the caller or agent
112
+ It stores process-local in-memory prepared state behind a `preparedId`, exposes a canonical three-tool contract, and keeps the rule that matters most stable across hosts:
287
113
 
288
- ### Execute A Prepared Request
289
-
290
- If preparation returns `kind === 'ready'`, execute that exact prepared request with `executePreparedRequest(prepared, ...)`.
291
-
292
- ```ts
293
- import { createJsonRequestBody } from '@402flow/sdk';
294
-
295
- const prepared = await client.preparePaidRequest(
296
- 'https://merchant.example.com/images/generate',
297
- {
298
- method: 'POST',
299
- headers: {
300
- 'content-type': 'application/json',
301
- },
302
- body: createJsonRequestBody({
303
- prompt: 'foggy coastline',
304
- }),
305
- },
306
-
307
- const result = await client.executePreparedRequest(prepared, {
308
- description: 'generate paid image',
309
- attribution: {
310
- discoverySource: 'manual',
311
- },
312
- });
313
- );
314
-
315
- if (prepared.kind === 'ready') {
316
- const result = await client.executePreparedRequest(prepared, {
317
- description: 'generate image',
318
- idempotencyKey: 'image-generate-foggy-coastline',
319
- });
320
-
321
- console.log('paid response status:', result.response.status);
322
- }
323
- ```
324
-
325
- If preparation does not return `kind === 'ready'`, that is not necessarily an error. It means this exact request did not currently resolve to a payable executable path. The caller can accept that result, run a normal non-paid path, or revise and prepare again.
326
-
327
- ### Delegated Execution With Custom Executors
328
-
329
- `executePreparedRequest()` now supports governed delegated execution through a caller-supplied executor interface.
330
-
331
- This lets the SDK keep authorization, policy, receipts, and final outcome normalization in the 402flow control plane while handing the final paid merchant call to a provider-specific executor owned by the host app or a separate integration package.
332
-
333
- The core SDK stays provider-neutral. That means third-party payment clients such as Dexter or pay.sh should live in the host app's own dependency graph, not inside `@402flow/sdk` itself.
334
-
335
- The flow is:
336
-
337
- 1. prepare the exact request locally with `preparePaidRequest()`
338
- 2. ask the control plane to authorize delegated execution
339
- 3. if authorized, let the supplied executor perform the actual paid merchant request
340
- 4. finalize the normalized executor result back through the control plane
341
- 5. return the same stable SDK result or `FetchPaidError` contract the caller already uses elsewhere
342
-
343
- If the control plane denies authorization, the delegated executor is never invoked.
344
-
345
- ```ts
346
- import {
347
- createJsonRequestBody,
348
- type PreparedRequestExecutorInput,
349
- type PreparedRequestExecutor,
350
- } from '@402flow/sdk';
351
-
352
- async function callDexter(
353
- prepared: PreparedRequestExecutorInput['prepared'],
354
- ) {
355
- // Replace this with your real Dexter SDK call.
356
- return {
357
- status: 200,
358
- body: { ok: true },
359
- settlementReference: 'settlement-ref-1',
360
- paymentReference: 'payment-ref-1',
361
- };
362
- }
363
-
364
- function mapDexterResult(
365
- prepared: PreparedRequestExecutorInput['prepared'],
366
- result: Awaited<ReturnType<typeof callDexter>>,
367
- ) {
368
- return {
369
- protocol: prepared.protocol,
370
- executionStatus: 'succeeded' as const,
371
- settlementEvidenceClass: 'settled' as const,
372
- merchantOutcome: 'success_response' as const,
373
- merchantResponse: {
374
- status: result.status,
375
- headers: {
376
- 'content-type': 'application/json',
377
- },
378
- body: JSON.stringify(result.body),
379
- },
380
- settlementReference: result.settlementReference,
381
- paymentReference: result.paymentReference,
382
- };
383
- }
384
-
385
- const dexterExecutor: PreparedRequestExecutor = {
386
- provider: 'dexter',
387
- async execute({ prepared }) {
388
- const dexterResult = await callDexter(prepared);
389
- return mapDexterResult(prepared, dexterResult);
390
- },
391
- };
392
-
393
- const prepared = await client.preparePaidRequest(
394
- 'https://merchant.example.com/images/generate',
395
- {
396
- method: 'POST',
397
- headers: {
398
- 'content-type': 'application/json',
399
- },
400
- body: createJsonRequestBody({
401
- prompt: 'foggy coastline',
402
- }),
403
- },
404
- );
405
-
406
- if (prepared.kind === 'ready') {
407
- const result = await client.executePreparedRequest(prepared, {
408
- description: 'generate image through delegated execution',
409
- executionProvider: 'dexter',
410
- executor: dexterExecutor,
411
- });
412
-
413
- console.log('paid response status:', result.response.status);
414
- }
415
- ```
416
-
417
- This snippet shows the intended split directly: your host-owned code does the provider call and maps it into the delegated execution contract, while the SDK still owns authorize, finalize, and the outward result shape. For a real host-owned Dexter integration that performs the paid call, see `third-party-executors/examples/dexter-delegated-executor.mjs`.
418
-
419
- Responsibility split:
420
-
421
- 1. the SDK asks the control plane for delegated authorization
422
- 2. if authorized, the SDK invokes your executor
423
- 3. your executor performs the provider-specific paid request and returns `SdkDelegatedExecutionResult`
424
- 4. the SDK finalizes that result with the control plane
425
- 5. the SDK returns the same outward `PaidResponse` or `FetchPaidError` contract as the direct path
426
-
427
- If your host app wants to execute through Dexter, pay.sh, or another provider, that integration should install and own the third-party SDK directly. `@402flow/sdk` only owns the executor contract and the governed authorize/finalize flow.
428
-
429
- Official supported adapters live in the separate `@402flow/sdk-third-party-executors` package so the main `@402flow/sdk` install path stays provider-neutral.
430
-
431
- ```bash
432
- npm install @402flow/sdk @402flow/sdk-third-party-executors
433
- ```
434
-
435
- If you pin versions explicitly, pin both packages to the same version:
436
-
437
- ```bash
438
- npm install @402flow/sdk@<version> @402flow/sdk-third-party-executors@<version>
439
- ```
440
-
441
- The adapter package is versioned and supported in lockstep with `@402flow/sdk`, so keep the two package versions aligned. In this repo, the published adapter package source lives under `third-party-executors/`.
442
-
443
- Current official adapters:
444
-
445
- | Adapter | Current scope | Key dependencies |
446
- | --- | --- | --- |
447
- | Dexter | Host-owned delegated execution against Dexter's paid request client | `@dexterai/x402` |
448
- | pay.sh | Host-owned x402 Solana exact delegated execution | `@x402/core`, `@x402/svm`, `@solana/kit` |
449
-
450
- The pay.sh adapter intentionally does not depend on `@solana/pay` today. The current proof targets pay.sh's x402 Solana exact flow, so challenge parsing, signed payment payload creation, and paid response parsing come from `@x402/core` plus `@x402/svm`, while `@solana/kit` only supplies the signer. `@solana/pay` becomes relevant when the repo adds a separate Solana Pay or MPP-specific adapter path.
451
-
452
- For a repo-wide verification pass from the SDK root, run:
453
-
454
- ```bash
455
- npm run install:all
456
- npm run check:all
457
- ```
458
-
459
- `npm run install:all` installs both the main SDK package and the separate `third-party-executors` package from the SDK root. `npm run check` still validates only the main SDK package. `npm run check:all` runs the main SDK checks first, then runs the separate `third-party-executors` package checks from the top level.
460
-
461
- For a repo-local host-owned Dexter example, run:
462
-
463
- ```bash
464
- cd third-party-executors
465
- npm install
466
- export DEXTER_EVM_PRIVATE_KEY="..."
467
-
468
- npm run example:dexter-delegated-executor -- \
469
- "https://merchant.example.com/paid-endpoint" \
470
- '{"topic":"sdk integration rollout","audience":"platform engineers","format":"bullets"}'
471
- ```
472
-
473
- For a repo-local host-owned pay.sh x402 example, run:
474
-
475
- ```bash
476
- cd third-party-executors
477
- npm install
478
- npm run example:pay-sh-delegated-executor -- --help
479
- ```
480
-
481
- The pay.sh example expects the standard SDK auth environment plus a local Solana signer path in `PAY_SH_SOLANA_KEYPAIR_PATH`. Run the `--help` form first to see the full required environment and argument contract.
482
-
483
- ## Prepared Result Semantics
484
-
485
- `preparePaidRequest()` separates request checking from paid execution.
486
-
487
- The preparation result distinguishes four important things:
488
-
489
- 1. `paymentRequirement`: normalized payment terms derived from the merchant challenge when available
490
- 2. `hints`: request-shape hints such as body fields, query params, path params, descriptions, examples, and notes
491
- 3. `validationIssues`: structured remediation diagnostics derived from the current request and defensible preparation inputs
492
- 4. `nextAction`: the authoritative machine contract for what to do next, such as `execute`, `revise_request`, or `treat_as_passthrough`
493
-
494
- Each prepared hint carries `attribution` so callers can distinguish live merchant-authoritative data from advisory caller-supplied metadata.
495
-
496
- In this model, payment terms come from the merchant challenge, optional request-shape enrichment comes from `externalMetadata`, and live confirmation is represented by the prepared `probe` result.
497
-
498
- ## Result And Error Semantics
499
-
500
- `fetchPaid()` and `executePreparedRequest()` either:
501
-
502
- 1. return a passthrough response when the request did not require payment
503
- 2. return `success` with a receipt when the paid request completed successfully
504
- 3. throw `FetchPaidError` for all non-success paid outcomes
505
-
506
- `FetchPaidError` kinds are:
507
-
508
- 1. `denied`
509
- 2. `preflight_failed`
510
- 3. `execution_pending`
511
- 4. `execution_failed`
512
- 5. `paid_fulfillment_failed`
513
- 6. `execution_inconclusive`
514
- 7. `request_failed`
515
-
516
- Receipt notes:
517
-
518
- 1. `receipt.status = 'confirmed'` means the control plane has chain-backed settlement attribution for the paid attempt
519
- 2. `receipt.status = 'provisional'` means the paid outcome was supportable by merchant-provided evidence, but final settlement attribution is still pending reconciliation
520
- 3. callers should treat provisional receipts as payment-attempt evidence, not as proof of final settlement
521
- 4. `idempotencyKey` is optional for normal SDK use, which keeps low-value one-off integrations simple
522
- 5. if you safely retry the same logical paid request with the same `idempotencyKey`, the SDK returns the same durable paid outcome instead of creating a second paid attempt
523
- 6. if you omit `idempotencyKey`, the request still works, but you should not assume replay-safe duplicate suppression across retries
524
- 7. use `idempotencyKey` for retrying callers, automation loops, and higher-load integrations where duplicate suppression matters
525
-
526
- ## Receipt Lookup
527
-
528
- ```ts
529
- const receipt = await client.lookupReceipt('receipt-id');
530
-
531
- console.log(receipt.receipt.status);
532
- ```
533
-
534
- ## Canonical Host Metadata
535
-
536
- If you are building a tool host, do not copy orchestration rules into ad hoc prompts. Import the canonical host-agnostic metadata from the SDK and adapt it to your model provider.
114
+ `nextAction` is authoritative.
537
115
 
538
116
  ```ts
539
117
  import {
118
+ AgentHarness,
540
119
  defaultHarnessInstructions,
541
120
  defaultHarnessToolSpecs,
542
121
  } from '@402flow/sdk';
543
122
 
544
- console.log(defaultHarnessInstructions);
545
- console.log(defaultHarnessToolSpecs);
546
- ```
547
-
548
- `defaultHarnessToolSpecs` defines the canonical three-tool contract:
549
-
550
- 1. `prepare_paid_request`
551
- 2. `execute_prepared_request`
552
- 3. `get_execution_result`
553
-
554
- Those descriptions encode the orchestration rules, including:
555
-
556
- 1. `nextAction` is authoritative
557
- 2. execute only after `nextAction === 'execute'`
558
- 3. read the stored execution result before summarizing the outcome
559
-
560
- Keep provider-specific tool objects in your host adapter, not in the SDK core package.
561
-
562
- ## Tiny OpenAI Tools Host
563
-
564
- If you want a minimal real host integration instead of the larger evaluation harness, use the tiny OpenAI Responses example in `examples/openai-tools-quickstart.mjs`.
123
+ const harness = new AgentHarness({ client });
565
124
 
566
- For repo-local example runs, create `.env` from `.env.example` in the SDK root. The SDK examples load that file directly, so scenario runs stay self-contained in this repo whether they point at a local control plane or a hosted environment.
567
-
568
- It keeps the host story narrow:
569
-
570
- 1. create an `AgentPayClient`
571
- 2. wrap it with optional `AgentHarness` so tool calls can pass `preparedId`
572
- 3. build provider-specific tool objects from `defaultHarnessToolSpecs`
573
- 4. expose `prepare_paid_request`, `execute_prepared_request`, and `get_execution_result`
574
-
575
- Run it with one prompt. Either populate `.env` from `.env.example`, or export the same values in your shell for a one-off run:
576
-
577
- ```bash
578
- cp .env.example .env
579
- export OPENAI_API_KEY="..."
580
- export X402FLOW_CONTROL_PLANE_BASE_URL="https://402flow.ai"
581
- export X402FLOW_ORGANIZATION="acme-labs"
582
- export X402FLOW_AGENT="reporting-worker"
583
- export X402FLOW_BOOTSTRAP_KEY="..."
584
-
585
- npm run example:openai-tools-quickstart -- \
586
- "Prepare and execute a paid POST request to http://127.0.0.1:4123/demo-merchant/research-brief/solana-devnet with JSON body {\"topic\":\"sdk integration rollout\",\"audience\":\"platform engineers\",\"format\":\"bullets\"}"
587
- ```
588
-
589
- Use this when you want the shortest real host integration path. For now, this quickstart defaults to the self-hosted first-party demo merchant in `agent-pay` so SDK adoption starts from the canonical proving ground. Switch the merchant URL to the public AWS demo-merchant host once that deployment is live.
590
-
591
- ## Optional `AgentHarness`
592
-
593
- `AgentHarness` is an optional preparedId-based wrapper for tool hosts that do not want to manage in-flight prepared request objects themselves. It is a convenience layer on top of `AgentPayClient`, not a required abstraction.
594
-
595
- Key behavior:
596
-
597
- 1. preparations are stored in memory behind a `preparedId`
598
- 2. a newer active preparation for the same method plus origin plus pathname supersedes the older one
599
- 3. duplicate execute calls for the same consumed `preparedId` are rejected locally as already consumed
600
- 4. hosts should call `getExecutionResult(preparedId)` after execution to read the durable stored outcome
601
- 5. host-facing prepare results include `costSummary`, for example `Costs 0.001000 USDC on Base Sepolia (exact).`
602
-
603
- For harness usage, presets, transcripts, and scenario packs, see:
604
-
605
- 1. [docs/evaluation-harness.md](docs/evaluation-harness.md)
606
- 2. [docs/harness-scenarios.md](docs/harness-scenarios.md)
607
-
608
- For the canonical cross-repo core proving sweep (first-party + mock), run:
609
-
610
- ```bash
611
- pnpm scenario:core
125
+ console.log(defaultHarnessInstructions);
126
+ console.log(defaultHarnessToolSpecs.map((spec) => spec.name));
127
+ // [ 'prepare_paid_request', 'execute_prepared_request', 'get_execution_result' ]
612
128
  ```
613
129
 
614
- `pnpm scenario:core` runs first-party + mock in a single pass and keeps one combined artifact set under `tmp/`.
615
-
616
- Additional scenario commands:
617
-
618
- 1. `pnpm scenario:core`: core proving sweep (first-party + mock)
619
- 2. `pnpm scenario:first-party`: first-party self-hosted demo-merchant scenarios only
620
- 3. `pnpm scenario:third-party`: third-party merchant compatibility scenarios only
621
- 4. `pnpm scenario:mock`: fixture-only mock outcomes, no live merchant required
622
-
623
- `pnpm scenario:all` now literally runs all scenarios (first-party + third-party + mock).
624
-
625
- As the public AWS demo-merchant host comes online, keep these command boundaries and flip first-party scenario fixtures with one env variable:
626
-
627
- ```bash
628
- export X402FLOW_FIRST_PARTY_MERCHANT_BASE_URL="https://demo-merchant.402flow.ai"
629
- ```
130
+ Use this path when you want the model to construct a correct request instead of guessing its way into a paid call.
630
131
 
631
- When unset, first-party fixtures default to the self-hosted demo merchant at `http://127.0.0.1:4123`.
132
+ `AgentHarness` is a convenience wrapper for single-process hosts. It is not a durable cross-process orchestration store.
632
133
 
633
- ## Publish
134
+ ## Governed Third-Party Execution
634
135
 
635
- Publish the main SDK package first. Publish `@402flow/sdk-third-party-executors` second, after the matching SDK version is available.
136
+ 402flow can execute paid x402 requests natively, or you can delegate final payment execution to Dexter, pay.sh, or another executor. Once a payable challenge is already known, 402flow authorizes the paid attempt before execution and finalizes the normalized result afterward, keeping policy, approvals, receipts, and audit centralized.
636
137
 
637
- Main SDK package:
138
+ Official adapters live in `@402flow/sdk-third-party-executors`, and the repo-local source for those adapters lives under `third-party-executors/`. Import the provider-specific subpath you actually use:
638
139
 
639
- ```bash
640
- npm run install:all
641
- npm run check:all
642
- npm run pack:check
643
- npm publish --access public
140
+ ```ts
141
+ import { createDexterExecutor } from '@402flow/sdk-third-party-executors/dexter';
142
+ // or:
143
+ import { createPayShExecutor } from '@402flow/sdk-third-party-executors/pay-sh';
644
144
  ```
645
145
 
646
- `npm publish` now also runs `npm run check:all` through the root `prepublishOnly` hook, so the repo-wide test pass is enforced before publish even if you skip that step manually.
146
+ ## Further Reading
647
147
 
648
- Adapter package:
649
-
650
- ```bash
651
- cd third-party-executors
652
- npm install
653
- npm run check
654
- npm run pack:check
655
- npm publish --access public
656
- ```
148
+ - [Detailed SDK guide](docs/sdk-guide.md)
149
+ - [Evaluation harness](docs/evaluation-harness.md)
150
+ - [Harness scenarios](docs/harness-scenarios.md)
151
+ - [Dexter and pay.sh executors](third-party-executors/README.md)
152
+ - [Publishing and release checks](docs/releasing.md)
@@ -146,7 +146,7 @@ export declare class AgentHarness {
146
146
  */
147
147
  executePreparedRequest(input: AgentHarnessExecuteInput): Promise<AgentHarnessExecutionResult>;
148
148
  /**
149
- * Return the durable stored outcome for a preparedId without re-running any
149
+ * Return the stored in-memory outcome for a preparedId without re-running any
150
150
  * merchant or control-plane call.
151
151
  */
152
152
  getExecutionResult(preparedId: string): AgentHarnessExecutionLookup;
@@ -155,6 +155,7 @@ export declare class AgentHarness {
155
155
  */
156
156
  getPreparedRecord(preparedId: string): AgentHarnessPreparedRecord;
157
157
  private runExecution;
158
+ private createExecutionPromise;
158
159
  private handleExecutionRejection;
159
160
  private getRecordForExecution;
160
161
  private getKnownRecord;
@@ -331,9 +331,9 @@ export class AgentHarness {
331
331
  // Execution is only allowed for active, ready preparations. All rejected
332
332
  // local states are converted into stored deterministic results.
333
333
  const record = this.getRecordForExecution(input.preparedId);
334
- const outcome = await this.runExecution(record, input.executionContext);
335
- record.state = 'consumed';
336
- record.executionResult = createFrozenClone(outcome);
334
+ const executionPromise = record.executionPromise ??
335
+ this.createExecutionPromise(record, input.executionContext);
336
+ const outcome = await executionPromise;
337
337
  return cloneValue(outcome);
338
338
  }
339
339
  catch (error) {
@@ -344,12 +344,12 @@ export class AgentHarness {
344
344
  }
345
345
  }
346
346
  /**
347
- * Return the durable stored outcome for a preparedId without re-running any
347
+ * Return the stored in-memory outcome for a preparedId without re-running any
348
348
  * merchant or control-plane call.
349
349
  */
350
350
  getExecutionResult(preparedId) {
351
- // This lookup lets an agent fetch the durable outcome later without re-running
352
- // execution or depending on host-specific tool memory.
351
+ // This lookup lets an agent fetch the stored in-memory outcome later without
352
+ // re-running execution or depending on host-specific tool memory.
353
353
  const record = this.getKnownRecord(preparedId);
354
354
  this.refreshRecordState(record);
355
355
  return cloneValue({
@@ -396,6 +396,19 @@ export class AgentHarness {
396
396
  return summarizeExecutionOutcome(record.preparedId, error.details);
397
397
  }
398
398
  }
399
+ createExecutionPromise(record, executionContext) {
400
+ const executionPromise = this.runExecution(record, executionContext)
401
+ .then((outcome) => {
402
+ record.state = 'consumed';
403
+ record.executionResult = createFrozenClone(outcome);
404
+ return record.executionResult;
405
+ })
406
+ .finally(() => {
407
+ delete record.executionPromise;
408
+ });
409
+ record.executionPromise = executionPromise;
410
+ return executionPromise;
411
+ }
399
412
  // Rejection results are stored so later lookups remain deterministic even when
400
413
  // execution never reached the core SDK or merchant.
401
414
  handleExecutionRejection(preparedId, error) {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-harness.js","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAqCzC,uFAAuF;AACvF,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,IAAI,CAA4B;IAChC,UAAU,CAAqB;IAExC,YACE,IAA+B,EAC/B,OAAe,EACf,UAAmB;QAEnB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AA4GD,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAa3C,kFAAkF;AAClF,0EAA0E;AAC1E,SAAS,qBAAqB,CAAC,OAAqC;IAClE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,UAAU,CAAI,KAAQ;IAC7B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,gFAAgF;AAChF,sEAAsE;AACtE,SAAS,UAAU,CAAI,KAAQ;IAC7B,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,iBAAiB,CAAI,KAAQ;IACpC,OAAO,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,gBAAgB,CACvB,OAA2C;IAE3C,MAAM,iBAAiB,GAA2B,EAAE,CAAC;IAErD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC/B,iBAAiB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAgC;IAEhC,8EAA8E;IAC9E,mEAAmE;IACnE,OAAO,iBAAiB,CAAC;QACvB,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;QAC/B,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG;QACzB,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QACnD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE;YACzC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;YAC3B,CAAC,CAAC;gBACE,SAAS,EAAE;oBACT,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ;oBACrC,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC;oBACrD,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS;wBACvC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;wBAC/C,CAAC,CAAC,EAAE,CAAC;iBACR;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,cAAc,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;KACrD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,kBAAkB,GAA2B;IACjD,cAAc,EAAE,cAAc;IAC9B,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,MAAM;IACrB,IAAI,EAAE,MAAM;IACZ,yCAAyC,EAAE,eAAe;IAC1D,eAAe,EAAE,eAAe;IAChC,yCAAyC,EAAE,QAAQ;IACnD,gBAAgB,EAAE,QAAQ;CAC3B,CAAC;AAEF,MAAM,kBAAkB,GAAwD;IAC9E,4CAA4C,EAAE;QAC5C,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,CAAC;KACb;IACD,4CAA4C,EAAE;QAC5C,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,CAAC;KACb;IACD,8CAA8C,EAAE;QAC9C,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,CAAC;KACb;IACD,4CAA4C,EAAE;QAC5C,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,CAAC;KACb;CACF,CAAC;AAEF,SAAS,uBAAuB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9D,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAmB,EAAE,SAAiB;IAC/D,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IAEpE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;IAC1D,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;IAErD,OAAO,GAAG,SAAS,IAAI,cAAc,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,qBAAqB,CAAC,gBAAyD;IACtF,MAAM,KAAK,GAAG,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAElD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,SAAS,qBAAqB,CAAC,gBAAyD;IACtF,MAAM,KAAK,GAAG,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAElD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,OAAO,OAAO,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9F,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAuD;IACjF,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgC;IACxD,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACpC,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED,MAAM,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC;IAEvD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK;QACzC,CAAC,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACvE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,SAAS;WACjD,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC;WAChD,UAAU,EAAE,SAAS,CAAC;IAE3B,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM;WACnC,CAAC,kBAAkB,CAAC,WAAW,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS;YACjF,CAAC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,CAAC;YACtE,CAAC,CAAC,SAAS,CAAC,CAAC;IACjB,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC;WAC7D,CAAC,kBAAkB,CAAC,KAAK;YAC1B,CAAC,CAAC,UAAU,EAAE,IAAI;mBACb,kBAAkB,CAAC,KAAK;YAC7B,CAAC,CAAC,SAAS,CAAC,CAAC;IACjB,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO;QAC7C,CAAC,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,OAAO;QAC9E,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,eAAe,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAE1E,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,MAAM,IAAI,SAAS,OAAO,YAAY,KAAK,eAAe,IAAI,CAAC;AACjF,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAA4B;IAE5B,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEtD,OAAO,UAAU,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,KAAK,EAAE,QAAiB;QACxB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;QAClC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,gBAAgB;YACtE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,kBAAkB;YACxE,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE;YAC5D,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;QAC5B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgB;QAClD,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;QACtC,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,QAAkB;IAElB,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,OAAO;QACP,IAAI,EAAE,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,UAAkB,EAClB,OAAgD;IAEhD,OAAO;QACL,UAAU;QACV,kBAAkB,EAAE,UAAU;QAC9B,cAAc,EAAE,OAAO,CAAC,IAAI;QAC5B,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC/B,gBAAgB,EAAE,MAAM,yBAAyB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnE,GAAG,CAAC,WAAW,IAAI,OAAO,IAAI,OAAO,CAAC,SAAS;YAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;YAClC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,eAAe,IAAI,OAAO,IAAI,OAAO,CAAC,aAAa;YACrD,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;YAC1C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,kBAAkB,IAAI,OAAO,IAAI,OAAO,CAAC,gBAAgB;YAC3D,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;YAC3D,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;YAC5B,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,qBAAqB,IAAI,OAAO,IAAI,OAAO,CAAC,mBAAmB;YACjE,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,KAAgC,CAAC;IAEnD,OAAO,CACL,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;QAClC,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ;QACtC,SAAS,CAAC,QAAQ,YAAY,QAAQ;QACtC,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ;QACpC,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ;QACtC,SAAS,CAAC,QAAQ,KAAK,IAAI,CAC5B,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAc;IAEd,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,KAAsC,CAAC;IACzD,OAAO,0BAA0B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,YAAY;IACN,MAAM,CAAqB;IAC3B,aAAa,CAAS;IACtB,GAAG,CAAa;IAChB,gBAAgB,CAAe;IAC/B,eAAe,GAAG,IAAI,GAAG,EAAgC,CAAC;IAE3E,YAAY,OAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,oBAAoB,CAAC;QACnE,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CACtB,KAA+B;QAE/B,0EAA0E;QAC1E,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CACnD,KAAK,CAAC,GAAG,EACT;YACE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,EACD;YACE,GAAG,CAAC,KAAK,CAAC,gBAAgB;gBACxB,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE;gBAC9C,CAAC,CAAC,EAAE,CAAC;SACR,CACF,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAyB;YACnC,UAAU;YACV,KAAK,EAAE,QAAQ;YACf,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;YAClC,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE;YAC3E,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,CAAC;YACrC,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,CAAC;SAClD,CAAC;QAEF,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAE7C,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAA+B;QAE/B,IAAI,CAAC;YACH,yEAAyE;YACzE,gEAAgE;YAChE,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAExE,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC;YAC1B,MAAM,CAAC,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAEpD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,iBAAiB,CAAC,EAAE,CAAC;gBAC1C,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAChB,UAAkB;QAElB,+EAA+E;QAC/E,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEhC,OAAO,UAAU,CAAC;YAChB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,CAAC,MAAM,CAAC,sBAAsB;gBAC/B,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,eAAe;gBACxB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,UAAkB;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEhC,OAAO,UAAU,CAAC;YAChB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,GAAG,CAAC,MAAM,CAAC,sBAAsB;gBAC/B,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;YACP,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,GAAG,CAAC,MAAM,CAAC,eAAe;gBACxB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,MAA4B,EAC5B,gBAAoD;QAEpD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,CACvD,MAAM,CAAC,QAAuC,EAC9C,gBAAgB,CACjB,CAAC;YAEF,OAAO,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,oDAAoD;IAC5C,wBAAwB,CAC9B,UAAkB,EAClB,KAAwB;QAExB,MAAM,cAAc,GAA+B;YACjD,UAAU;YACV,kBAAkB,EAAE,UAAU;YAC9B,aAAa,EAAE,KAAK,CAAC,IAAI;YACzB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;QAEF,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,IACE,MAAM;YACN,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,CAAC,MAAM,CAAC,eAAe,EACvB,CAAC;YACD,MAAM,CAAC,eAAe,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,qBAAqB,CAAC,UAAkB;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEhC,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,iBAAiB,CACzB,qBAAqB,EACrB,oBAAoB,UAAU,eAAe,EAC7C,UAAU,CACX,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;YAClC,MAAM,IAAI,iBAAiB,CACzB,6BAA6B,EAC7B,MAAM,CAAC,sBAAsB;gBAC3B,CAAC,CAAC,oBAAoB,UAAU,sBAAsB,MAAM,CAAC,sBAAsB,GAAG;gBACtF,CAAC,CAAC,oBAAoB,UAAU,yCAAyC,EAC3E,UAAU,CACX,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAChC,MAAM,IAAI,iBAAiB,CACzB,2BAA2B,EAC3B,oBAAoB,UAAU,6BAA6B,EAC3D,UAAU,CACX,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACrC,MAAM,IAAI,iBAAiB,CACzB,4BAA4B,EAC5B,oBAAoB,UAAU,oCAAoC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,EACzF,UAAU,CACX,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,iBAAiB,CACzB,iCAAiC,EACjC,oBAAoB,UAAU,aAAa,MAAM,CAAC,QAAQ,CAAC,UAAU,oBAAoB,EACzF,UAAU,CACX,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,cAAc,CAAC,UAAkB;QACvC,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,iBAAiB,CACzB,qBAAqB,EACrB,2BAA2B,CAC5B,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,iBAAiB,CACzB,qBAAqB,EACrB,oBAAoB,UAAU,cAAc,EAC5C,UAAU,CACX,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8EAA8E;IAC9E,2BAA2B;IACnB,kBAAkB,CAAC,MAA4B;QACrD,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACjE,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,UAAgC;QAC7D,4EAA4E;QAC5E,qFAAqF;QACrF,MAAM,OAAO,GAAG,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QAEnE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YACnD,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,SAAS;YACX,CAAC;YAED,IAAI,qBAAqB,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,OAAO,EAAE,CAAC;gBAC/D,SAAS;YACX,CAAC;YAED,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC;YAC5B,MAAM,CAAC,sBAAsB,GAAG,UAAU,CAAC,UAAU,CAAC;QACxD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"agent-harness.js","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -54,6 +54,27 @@ const defaultRuntimeTokenRefreshWindowMs = 30_000;
54
54
  function trimTrailingSlash(value) {
55
55
  return value.endsWith('/') ? value.slice(0, -1) : value;
56
56
  }
57
+ function isLoopbackHost(hostname) {
58
+ return hostname === 'localhost' || hostname === '127.0.0.1' || hostname === '::1';
59
+ }
60
+ function buildControlPlaneTransportErrorMessage(controlPlaneUrl, error) {
61
+ let localHttpsHint = '';
62
+ try {
63
+ const parsedUrl = new URL(controlPlaneUrl);
64
+ if (parsedUrl.protocol === 'https:' && isLoopbackHost(parsedUrl.hostname)) {
65
+ const httpUrl = new URL(controlPlaneUrl);
66
+ httpUrl.protocol = 'http:';
67
+ localHttpsHint = ` If this is a local control plane running without TLS, use ${httpUrl.origin} as the controlPlaneBaseUrl instead.`;
68
+ }
69
+ }
70
+ catch {
71
+ // Ignore URL parsing failures and fall back to the generic transport message.
72
+ }
73
+ const originalMessage = error instanceof Error && error.message.trim().length > 0
74
+ ? error.message
75
+ : 'Unknown transport failure.';
76
+ return `Control plane request to ${controlPlaneUrl} failed.${localHttpsHint} Original error: ${originalMessage}`;
77
+ }
57
78
  function createJsonResponse(status, payload) {
58
79
  return new Response(JSON.stringify(payload), {
59
80
  status,
@@ -1050,8 +1071,8 @@ export class AgentPayClient {
1050
1071
  const { challenge: _challenge, idempotencyKey, ...requestContext } = request;
1051
1072
  return sdkPaymentDecisionRequestSchema.parse({
1052
1073
  context: {
1053
- ...this.identity,
1054
1074
  ...requestContext,
1075
+ ...this.identity,
1055
1076
  },
1056
1077
  request: createPreparedHttpRequest(input, init),
1057
1078
  challenge: {
@@ -1322,15 +1343,23 @@ export class AgentPayClient {
1322
1343
  async controlPlaneFetch(path, init, authorizationHeader) {
1323
1344
  // Every control-plane call carries the SDK version header so incompatible
1324
1345
  // client/server contract mismatches can fail fast.
1325
- return this.fetchImpl(`${this.controlPlaneBaseUrl}${path}`, {
1326
- ...init,
1327
- headers: {
1328
- ...(this.headers ?? {}),
1329
- ...(normalizeHeaders(init.headers) ?? {}),
1330
- Authorization: authorizationHeader,
1331
- [sdkClientVersionHeaderName]: sdkClientVersion,
1332
- },
1333
- });
1346
+ const controlPlaneUrl = `${this.controlPlaneBaseUrl}${path}`;
1347
+ try {
1348
+ return await this.fetchImpl(controlPlaneUrl, {
1349
+ ...init,
1350
+ headers: {
1351
+ ...(this.headers ?? {}),
1352
+ ...(normalizeHeaders(init.headers) ?? {}),
1353
+ Authorization: authorizationHeader,
1354
+ [sdkClientVersionHeaderName]: sdkClientVersion,
1355
+ },
1356
+ });
1357
+ }
1358
+ catch (error) {
1359
+ throw new Error(buildControlPlaneTransportErrorMessage(controlPlaneUrl, error), {
1360
+ cause: error,
1361
+ });
1362
+ }
1334
1363
  }
1335
1364
  }
1336
1365
  /** Small factory wrapper for callers that prefer a function export. */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@402flow/sdk",
3
- "version": "0.1.0-alpha.27",
3
+ "version": "0.1.0-alpha.29",
4
4
  "description": "Paid HTTP SDK for AI agents with an inspectable prepare/execute flow.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -67,11 +67,11 @@
67
67
  "devDependencies": {
68
68
  "@eslint/js": "^9.22.0",
69
69
  "@types/node": "^22.13.10",
70
- "@vitest/coverage-v8": "^3.0.8",
70
+ "@vitest/coverage-v8": "^4.1.8",
71
71
  "eslint": "^9.22.0",
72
72
  "globals": "^15.15.0",
73
73
  "typescript": "^5.8.2",
74
74
  "typescript-eslint": "^8.26.1",
75
- "vitest": "^3.0.8"
75
+ "vitest": "^4.1.8"
76
76
  }
77
77
  }