@dvmkit/sdk 0.8.0 → 0.9.0

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.
Files changed (52) hide show
  1. package/dist/{chunk-5K5E6ME6.js → chunk-4VV7WACY.js} +1 -1
  2. package/dist/{chunk-GSPV3UIM.js → chunk-73C4JN2E.js} +632 -262
  3. package/dist/{chunk-2I3OHMTY.js → chunk-BAQRUYRL.js} +3 -3
  4. package/dist/{chunk-ATXDKX6F.js → chunk-GAZBBMAA.js} +1 -1
  5. package/dist/{chunk-QPXI7YPH.js → chunk-GODOH2AF.js} +3 -3
  6. package/dist/{chunk-5CQKSLAU.js → chunk-HC4I7LAV.js} +1 -1
  7. package/dist/{chunk-6FEHRZO7.js → chunk-IBX2ORBV.js} +1 -1
  8. package/dist/{chunk-TFYY5APM.js → chunk-IYQQXEHV.js} +3 -3
  9. package/dist/{chunk-X3JEME6P.js → chunk-K2MSIKMM.js} +3 -3
  10. package/dist/{chunk-55NKZQOC.js → chunk-KGL3YMZA.js} +1 -1
  11. package/dist/{chunk-YPSJU3OH.js → chunk-LCCG5HQM.js} +2 -2
  12. package/dist/{chunk-GB5XPAA5.js → chunk-LFVIZH2G.js} +361 -44
  13. package/dist/{chunk-RTFBVXCN.js → chunk-LW7KZQHG.js} +4 -4
  14. package/dist/{chunk-DZQYQN2X.js → chunk-OIP44KBB.js} +12 -0
  15. package/dist/{chunk-P5WEZXJ2.js → chunk-Q3VYRU5R.js} +60 -3
  16. package/dist/{chunk-BL6LRWXD.js → chunk-QSZW2I5Y.js} +1 -1
  17. package/dist/{chunk-I6PHA54S.js → chunk-TFDR2YP2.js} +3 -3
  18. package/dist/{chunk-IFWUWHTW.js → chunk-TRY7BJA4.js} +1 -1
  19. package/dist/{chunk-PRSKC7AD.js → chunk-WB3E7KE7.js} +3 -3
  20. package/dist/{chunk-XXLUIXPO.js → chunk-WLPLHXNP.js} +1 -1
  21. package/dist/{chunk-VYP6ADCS.js → chunk-YYRY32NR.js} +24 -8
  22. package/dist/{chunk-EBCLWOKF.js → chunk-ZBQKXAYK.js} +17 -4
  23. package/dist/{content-retention-D2K4MKNO.d.ts → content-retention-CVBYehRS.d.ts} +1 -1
  24. package/dist/{credit-ledger-AOU6S34N.js → credit-ledger-CZQ56DYI.js} +4 -4
  25. package/dist/{credit-menu-C-8g2cHT.d.ts → credit-menu-QntEhZJS.d.ts} +4 -4
  26. package/dist/{fx-Ql4nvdbh.d.ts → fx-CMyNFenZ.d.ts} +1 -1
  27. package/dist/index.d.ts +5 -5
  28. package/dist/index.js +4 -4
  29. package/dist/internal/caller.d.ts +6 -6
  30. package/dist/internal/caller.js +16 -16
  31. package/dist/internal/server.d.ts +7 -7
  32. package/dist/internal/server.js +26 -26
  33. package/dist/{job-store-DCvJQUX0.d.ts → job-store-qOD-FrQF.d.ts} +1 -1
  34. package/dist/{lightning-backend-CY5ML3km.d.ts → lightning-backend-DtdG6UT5.d.ts} +1 -1
  35. package/dist/{memory-credit-ledger-4HWYINKJ.js → memory-credit-ledger-EMN7G3MO.js} +5 -5
  36. package/dist/{mpp-setup-2BKTPEK6.js → mpp-setup-VW53KFPO.js} +5 -3
  37. package/dist/{payout-reporter-HQSIIBFL.js → payout-reporter-TZX2S7KG.js} +2 -2
  38. package/dist/{postgres-consumed-credential-store-R7DNU6CM.js → postgres-consumed-credential-store-V464OAJB.js} +3 -3
  39. package/dist/{postgres-job-store-6VGFL6XE.js → postgres-job-store-27VOCSPO.js} +2 -2
  40. package/dist/{postgres-replay-store-SY26NUCI.js → postgres-replay-store-7GJFAQXY.js} +2 -2
  41. package/dist/{pricing-H2RA4X2R.js → pricing-NNMBNP7N.js} +3 -3
  42. package/dist/{revenue-reporter-X52GPZ5U.js → revenue-reporter-4EAVPWXS.js} +2 -2
  43. package/dist/server/index.d.ts +14 -10
  44. package/dist/server/index.js +49 -45
  45. package/dist/{step-cache-BOWAn_BH.d.ts → step-cache-B7svmPz3.d.ts} +157 -8
  46. package/dist/{tempo-charge-store-NKXJ2AXE.js → tempo-charge-store-2RPOJBM2.js} +2 -2
  47. package/dist/{tempo-session-store-ZSDQIWSU.js → tempo-session-store-LI3Q3A3U.js} +3 -3
  48. package/dist/testing/index.d.ts +3 -3
  49. package/dist/testing/index.js +7 -7
  50. package/dist/{usd-MAtMp3DB.d.ts → usd-D3izFz71.d.ts} +1 -1
  51. package/dist/{x402-Q4S36NHQ.js → x402-SL36LSOD.js} +4 -4
  52. package/package.json +1 -1
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  canonicaliseForSigning
3
3
  } from "./chunk-UKD3R2KU.js";
4
- import {
5
- callerLoggers
6
- } from "./chunk-66HGCPBU.js";
7
4
  import {
8
5
  DvmError
9
6
  } from "./chunk-BPYMEMQX.js";
7
+ import {
8
+ callerLoggers
9
+ } from "./chunk-66HGCPBU.js";
10
10
  import {
11
11
  diagnosticConsole
12
- } from "./chunk-DZQYQN2X.js";
12
+ } from "./chunk-OIP44KBB.js";
13
13
 
14
14
  // src/lib/cashu/lock-pubkey.ts
15
15
  function toLockPubkey(raw) {
@@ -416,11 +416,23 @@ var diagnostic_catalogue_v1_default = {
416
416
  "tempo_routine_sweep",
417
417
  "tempo_routine_sweep_failed",
418
418
  "tempo_session_advertised_refresh_failed",
419
+ "tempo_session_close_attempts_exhausted",
419
420
  "tempo_session_close_challenge_failed",
421
+ "tempo_session_close_descriptor_refused",
422
+ "tempo_session_close_exit_resolved",
420
423
  "tempo_session_close_failed",
421
424
  "tempo_session_close_failure_reconcile_failed",
425
+ "tempo_session_close_reconcile_failed",
422
426
  "tempo_session_close_recovery_failed",
427
+ "tempo_session_close_recovery_search_paused",
423
428
  "tempo_session_close_recovery_unmatched",
429
+ "tempo_session_close_report_written_off",
430
+ "tempo_session_close_reservation_released",
431
+ "tempo_session_close_settlement_callback_failed",
432
+ "tempo_session_close_settlement_unreported",
433
+ "tempo_session_drain_finalized",
434
+ "tempo_session_drain_refund_unproven",
435
+ "tempo_session_drain_unbacked_resolved",
424
436
  "tempo_session_open_refused",
425
437
  "tempo_session_settled",
426
438
  "tempo_session_withheld",
@@ -2,12 +2,12 @@ import {
2
2
  parseStoreValue,
3
3
  stringifyStoreValue
4
4
  } from "./chunk-YG7G4DPZ.js";
5
- import {
6
- withPostgresTransactionRecovery
7
- } from "./chunk-6FEHRZO7.js";
8
5
  import {
9
6
  withSdkInitLock
10
7
  } from "./chunk-COYKJRMM.js";
8
+ import {
9
+ withPostgresTransactionRecovery
10
+ } from "./chunk-IBX2ORBV.js";
11
11
 
12
12
  // src/sdk/server/tempo-session-store.ts
13
13
  import { AsyncLocalStorage } from "async_hooks";
@@ -69,6 +69,11 @@ var PostgresTempoSessionStore = class {
69
69
  `ALTER TABLE mpp_tempo_close_intents
70
70
  ADD COLUMN IF NOT EXISTS forecast_pending BOOLEAN NOT NULL DEFAULT FALSE`
71
71
  );
72
+ await this.pool.query(
73
+ `ALTER TABLE mpp_tempo_close_intents
74
+ ADD COLUMN IF NOT EXISTS close_search_before BIGINT,
75
+ ADD COLUMN IF NOT EXISTS settled_before_close NUMERIC(78,0)`
76
+ );
72
77
  });
73
78
  }
74
79
  async get(key) {
@@ -273,6 +278,17 @@ var PostgresTempoSessionStore = class {
273
278
  if (rows[0].forecast_pending !== false) {
274
279
  throw new Error(`Tempo session drain ${drainId} refund forecast is still pending`);
275
280
  }
281
+ const channel = await tx.query(
282
+ "SELECT state_json FROM mpp_tempo_channels WHERE channel_key = $1",
283
+ [channelId.toLowerCase()]
284
+ );
285
+ const state = channel.rows[0] ? parseStoreValue(channel.rows[0].state_json) : null;
286
+ const settled = state?.settledOnChain;
287
+ await tx.query(
288
+ `UPDATE mpp_tempo_close_intents SET settled_before_close = $3
289
+ WHERE channel_id = $1 AND drain_id = $2`,
290
+ [channelId.toLowerCase(), drainId, typeof settled === "bigint" ? settled.toString() : null]
291
+ );
276
292
  return record;
277
293
  });
278
294
  }
@@ -357,6 +373,47 @@ var PostgresTempoSessionStore = class {
357
373
  if (!rows[0]) throw new Error(`Tempo session close intent not found`);
358
374
  return closeRecord(rows[0]);
359
375
  }
376
+ /** Set a close's reference only if none is set, reporting whether this call set it. */
377
+ async claimCloseReference(channelId, drainId, reference) {
378
+ const { rows } = await this.pool.query(
379
+ `UPDATE mpp_tempo_close_intents
380
+ SET reference = $3, updated_at = $4
381
+ WHERE channel_id = $1 AND drain_id = $2 AND forecast_pending = FALSE
382
+ AND reference IS NULL
383
+ RETURNING reference`,
384
+ [channelId.toLowerCase(), drainId, reference, Date.now()]
385
+ );
386
+ if (rows[0]) return { reference: rows[0].reference, claimed: true };
387
+ const current = await this.getClose(channelId);
388
+ if (current?.drainId !== drainId || current.reference === null) {
389
+ throw new Error(`Tempo session close intent not found`);
390
+ }
391
+ return { reference: current.reference, claimed: false };
392
+ }
393
+ async getCloseRecovery(channelId) {
394
+ const { rows } = await this.pool.query(
395
+ `SELECT updated_at, close_search_before, settled_before_close
396
+ FROM mpp_tempo_close_intents
397
+ WHERE channel_id = $1`,
398
+ [channelId.toLowerCase()]
399
+ );
400
+ const row = rows[0];
401
+ if (!row) return null;
402
+ return {
403
+ updatedAtMs: Number(row.updated_at),
404
+ searchBefore: row.close_search_before === null ? null : BigInt(row.close_search_before),
405
+ settledBeforeClose: row.settled_before_close === null ? null : BigInt(row.settled_before_close)
406
+ };
407
+ }
408
+ /** Record where a paused close search resumes; the cursor only moves back. */
409
+ async recordCloseSearch(channelId, drainId, resumeAt) {
410
+ await this.pool.query(
411
+ `UPDATE mpp_tempo_close_intents
412
+ SET close_search_before = LEAST(COALESCE(close_search_before, $3), $3)
413
+ WHERE channel_id = $1 AND drain_id = $2`,
414
+ [channelId.toLowerCase(), drainId, resumeAt.toString()]
415
+ );
416
+ }
360
417
  async runCloseIntentTransaction(channelId, drainId, operation) {
361
418
  return this.transaction("tempo_session.close_intent", async (client) => {
362
419
  const record = await this.writeCloseIntent(client, channelId, drainId);
@@ -7,7 +7,7 @@ import {
7
7
  extendDiagnosticIdentityAuthority,
8
8
  projectDiagnosticFields,
9
9
  projectSpanRow
10
- } from "./chunk-DZQYQN2X.js";
10
+ } from "./chunk-OIP44KBB.js";
11
11
 
12
12
  // src/observability/context.ts
13
13
  import { AsyncLocalStorage } from "async_hooks";
@@ -3,12 +3,12 @@ import {
3
3
  applyContentHoldMutation,
4
4
  isTerminal
5
5
  } from "./chunk-AFV77S4C.js";
6
- import {
7
- loggers
8
- } from "./chunk-BL6LRWXD.js";
9
6
  import {
10
7
  redactUrl
11
8
  } from "./chunk-FUJ36YDV.js";
9
+ import {
10
+ loggers
11
+ } from "./chunk-QSZW2I5Y.js";
12
12
 
13
13
  // src/sdk/server/job-store.ts
14
14
  function accumulateAskedTopUp(prior, ask) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  emitDiagnostic,
3
3
  projectDiagnosticFields
4
- } from "./chunk-DZQYQN2X.js";
4
+ } from "./chunk-OIP44KBB.js";
5
5
 
6
6
  // src/sdk/logger.ts
7
7
  function createConsoleLogger(_jobId) {
@@ -1,9 +1,9 @@
1
- import {
2
- diagnosticConsole
3
- } from "./chunk-DZQYQN2X.js";
4
1
  import {
5
2
  withSdkInitLock
6
3
  } from "./chunk-COYKJRMM.js";
4
+ import {
5
+ diagnosticConsole
6
+ } from "./chunk-OIP44KBB.js";
7
7
 
8
8
  // src/sdk/server/revenue-reporter.ts
9
9
  import { randomUUID } from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  validateCurrency
3
- } from "./chunk-5CQKSLAU.js";
3
+ } from "./chunk-HC4I7LAV.js";
4
4
 
5
5
  // src/sdk/pricing/upfront.ts
6
6
  function buildUpfront(input) {
@@ -1,15 +1,15 @@
1
+ import {
2
+ withSdkInitLock
3
+ } from "./chunk-COYKJRMM.js";
1
4
  import {
2
5
  applyRetryToPool
3
- } from "./chunk-6FEHRZO7.js";
6
+ } from "./chunk-IBX2ORBV.js";
4
7
  import {
5
8
  x402NetworkByCaip2
6
9
  } from "./chunk-BPYMEMQX.js";
7
10
  import {
8
11
  diagnosticConsole
9
- } from "./chunk-DZQYQN2X.js";
10
- import {
11
- withSdkInitLock
12
- } from "./chunk-COYKJRMM.js";
12
+ } from "./chunk-OIP44KBB.js";
13
13
 
14
14
  // src/sdk/server/credit-ledger.ts
15
15
  import { randomUUID } from "crypto";
@@ -3153,7 +3153,7 @@ var CreditLedger = class {
3153
3153
  const { rows } = await this.pool.query(
3154
3154
  `SELECT d.*, ${DRAIN_CREDIT_COLUMNS} FROM credit_drains d
3155
3155
  JOIN credits c ON c.credit_id = d.credit_id
3156
- WHERE d.status = 'pending' ORDER BY d.created_at, d.credit_id, d.drain_id`
3156
+ WHERE d.status IN ('pending','exit_required') ORDER BY d.created_at, d.credit_id, d.drain_id`
3157
3157
  );
3158
3158
  return rows.map(drainRecordFromJoinRow);
3159
3159
  }
@@ -3173,7 +3173,7 @@ var CreditLedger = class {
3173
3173
  const { rows } = await this.pool.query(
3174
3174
  `SELECT d.*, ${DRAIN_CREDIT_COLUMNS} FROM credit_drains d
3175
3175
  JOIN credits c ON c.credit_id = d.credit_id
3176
- WHERE d.status = 'pending'
3176
+ WHERE d.status IN ('pending','exit_required')
3177
3177
  AND d.method = 'tempo'
3178
3178
  AND c.tempo_channel_id IS NOT NULL
3179
3179
  AND d.created_at <= $1
@@ -3225,6 +3225,22 @@ var CreditLedger = class {
3225
3225
  [args.creditId, args.drainId]
3226
3226
  );
3227
3227
  }
3228
+ /** Keep the debit and close intent while the caller uses its timed channel exit. */
3229
+ async requireTempoDrainExit(args) {
3230
+ const q = args.tx ?? this.pool;
3231
+ const { rows } = await q.query(
3232
+ `UPDATE credit_drains d SET status='exit_required'
3233
+ FROM credits c WHERE d.credit_id=c.credit_id AND d.credit_id=$1 AND d.drain_id=$2
3234
+ AND d.status='pending' AND d.method='tempo' AND c.tempo_channel_id IS NOT NULL
3235
+ RETURNING d.*`,
3236
+ [args.creditId, args.drainId]
3237
+ );
3238
+ if (rows.length) return { drain: await this.rejoin(q, rows[0]), replayed: false };
3239
+ return this.refuseTransition(q, args.creditId, args.drainId, {
3240
+ idempotentWhen: (row) => row.status === "exit_required" || row.status === "sent",
3241
+ verb: "require timed exit"
3242
+ });
3243
+ }
3228
3244
  /**
3229
3245
  * Cancel an unfulfilled Tempo cooperative drain and restore the exact
3230
3246
  * balance plus rail basis it removed (`pending -> released`). This is only
@@ -3366,7 +3382,7 @@ var CreditLedger = class {
3366
3382
  const nowMs = args.nowMs ?? Date.now();
3367
3383
  const { rows } = await q.query(
3368
3384
  `UPDATE credit_drains SET status = 'sent', sent_ref = $3, sent_at = $4
3369
- WHERE credit_id = $1 AND drain_id = $2 AND status = 'pending' AND method <> 'cashu'
3385
+ WHERE credit_id = $1 AND drain_id = $2 AND status IN ('pending','exit_required') AND method <> 'cashu'
3370
3386
  RETURNING *`,
3371
3387
  [args.creditId, args.drainId, JSON.stringify(args.sentRef), nowMs]
3372
3388
  );
@@ -15,7 +15,7 @@ import {
15
15
  lotOwedSats,
16
16
  netOwedSats,
17
17
  x402SettlementPending
18
- } from "./chunk-VYP6ADCS.js";
18
+ } from "./chunk-YYRY32NR.js";
19
19
 
20
20
  // src/sdk/server/memory-credit-ledger.ts
21
21
  import { randomUUID } from "crypto";
@@ -934,7 +934,7 @@ var MemoryCreditLedger = class _MemoryCreditLedger {
934
934
  const out = [];
935
935
  for (const credit of this.credits.values()) {
936
936
  for (const drain of credit.drains.values()) {
937
- if (drain.status === "pending") out.push(drainRecord(drain, credit));
937
+ if (drain.status === "pending" || drain.status === "exit_required") out.push(drainRecord(drain, credit));
938
938
  }
939
939
  }
940
940
  out.sort((a, b) => a.createdAt - b.createdAt || a.creditId.localeCompare(b.creditId));
@@ -945,7 +945,7 @@ var MemoryCreditLedger = class _MemoryCreditLedger {
945
945
  for (const credit of this.credits.values()) {
946
946
  if (credit.tempoChannelId === null) continue;
947
947
  for (const drain of credit.drains.values()) {
948
- if (drain.status !== "pending" || drain.method !== "tempo") continue;
948
+ if (drain.status !== "pending" && drain.status !== "exit_required" || drain.method !== "tempo") continue;
949
949
  if (drain.createdAt > args.createdBeforeMs) continue;
950
950
  if (!args.includeResolved && drain.writtenOffAt !== null) continue;
951
951
  out.push(drainRecord(drain, credit));
@@ -979,6 +979,19 @@ var MemoryCreditLedger = class _MemoryCreditLedger {
979
979
  }
980
980
  return Promise.resolve();
981
981
  }
982
+ requireTempoDrainExit(args) {
983
+ return run(() => {
984
+ const { credit, drain } = this.requireDrain(args.creditId, args.drainId);
985
+ if (drain.status === "exit_required" || drain.status === "sent") {
986
+ return { drain: drainRecord(drain, credit), replayed: true };
987
+ }
988
+ if (drain.status !== "pending" || drain.method !== "tempo" || !credit.tempoChannelId) {
989
+ throw this.transitionRefusal(drain, "require timed exit");
990
+ }
991
+ drain.status = "exit_required";
992
+ return { drain: drainRecord(drain, credit), replayed: false };
993
+ });
994
+ }
982
995
  releaseDrain(args) {
983
996
  return run(() => {
984
997
  const { credit, drain } = this.requireDrain(args.creditId, args.drainId);
@@ -1042,7 +1055,7 @@ var MemoryCreditLedger = class _MemoryCreditLedger {
1042
1055
  markDrainSent(args) {
1043
1056
  return run(() => {
1044
1057
  const { credit, drain } = this.requireDrain(args.creditId, args.drainId);
1045
- if (drain.status === "pending" && drain.method !== "cashu") {
1058
+ if ((drain.status === "pending" || drain.status === "exit_required") && drain.method !== "cashu") {
1046
1059
  drain.status = "sent";
1047
1060
  drain.sentRef = { ...args.sentRef };
1048
1061
  drain.sentAt = args.nowMs ?? Date.now();
@@ -1,4 +1,4 @@
1
- import { b as JobStore, J as JobRecord } from './job-store-DCvJQUX0.js';
1
+ import { b as JobStore, J as JobRecord } from './job-store-qOD-FrQF.js';
2
2
 
3
3
  /** Authenticated caller metadata; omitted fields on older services mean unknown. */
4
4
  interface JobContentMetadata {
@@ -10,11 +10,11 @@ import {
10
10
  isDrainMethod,
11
11
  isFundingRail,
12
12
  x402SettlementPending
13
- } from "./chunk-VYP6ADCS.js";
14
- import "./chunk-6FEHRZO7.js";
15
- import "./chunk-BPYMEMQX.js";
16
- import "./chunk-DZQYQN2X.js";
13
+ } from "./chunk-YYRY32NR.js";
17
14
  import "./chunk-COYKJRMM.js";
15
+ import "./chunk-IBX2ORBV.js";
16
+ import "./chunk-BPYMEMQX.js";
17
+ import "./chunk-OIP44KBB.js";
18
18
  export {
19
19
  CreditLedger,
20
20
  CreditLedgerError,
@@ -1,11 +1,11 @@
1
- import { f as LockPubkey, e as CheckMintHealthOptions, b as LightningBackend, A as AttestationPayload } from './lightning-backend-CY5ML3km.js';
2
- import { cg as HostingCleanupFence, cW as HostedIntent, aj as FundingMethod, p as PaymentMethod, bO as CreditLedgerLike, a5 as Message, $ as FundingReceipt, bQ as CreditSnapshot, a0 as JobReceipt, S as SDKJobContext, ax as StepCache, v as ResponseContent, P as PaymentContent, a1 as MessageType, bk as X402Receipt, aF as X402Config, bj as X402ExactVersionSupport, cX as X402SettlementIntent, ab as PaymentRequirementsV2, cY as HostedFundingReservation, c3 as CreditLedgerQuerier, cZ as X402SettlementCursor, bS as X402SettlementStatus, c_ as X402SettlementWriteOff, bP as X402RefundSettlementGate, c$ as X402FacilitatorAuth, d0 as X402BatchSettlementConfig, cC as PostgresX402ChannelStorage, d1 as X402PayoutObserver, bM as HostedSettlementReportObligations, bn as CreditDepositPayload, bs as MppxServer, ae as CashuMode, d2 as CreditDepositEnqueue, d3 as X402SettlementReconciliationReason, aq as PaymentRequirements, a3 as MppxCredential, bR as DrawResult, cq as CreditLedgerError, a7 as ReceiptCredit, ag as DrainReceiptEvent, a8 as DrainReceipt, K as KVStore, z as SignedRequestAudience, d4 as CreditDrawReleaseEnqueue, cA as JobCostReportPayload, cB as JobTerminalReportPayload, cE as RevenueSkippedNoRailPayload, Z as ZodLike, a as DVMDescriptor, bX as CreditInvoiceRecord, bY as InvoiceSettlement, ck as ClientCompatibilityGate, ci as ClientCompatibility, bw as PostgresTempoSessionStore, bv as PayoutReporter, R as ResolvedCreditConfig, h as CreditView } from './step-cache-BOWAn_BH.js';
1
+ import { f as LockPubkey, e as CheckMintHealthOptions, b as LightningBackend, A as AttestationPayload } from './lightning-backend-DtdG6UT5.js';
2
+ import { cg as HostingCleanupFence, cY as HostedIntent, aj as FundingMethod, p as PaymentMethod, bO as CreditLedgerLike, a5 as Message, $ as FundingReceipt, bQ as CreditSnapshot, a0 as JobReceipt, S as SDKJobContext, ax as StepCache, v as ResponseContent, P as PaymentContent, a1 as MessageType, bk as X402Receipt, aF as X402Config, bj as X402ExactVersionSupport, cZ as X402SettlementIntent, ab as PaymentRequirementsV2, c_ as HostedFundingReservation, c3 as CreditLedgerQuerier, c$ as X402SettlementCursor, bS as X402SettlementStatus, d0 as X402SettlementWriteOff, bP as X402RefundSettlementGate, d1 as X402FacilitatorAuth, d2 as X402BatchSettlementConfig, cC as PostgresX402ChannelStorage, d3 as X402PayoutObserver, bM as HostedSettlementReportObligations, bn as CreditDepositPayload, bs as MppxServer, ae as CashuMode, d4 as CreditDepositEnqueue, d5 as X402SettlementReconciliationReason, aq as PaymentRequirements, a3 as MppxCredential, bR as DrawResult, cq as CreditLedgerError, a7 as ReceiptCredit, ag as DrainReceiptEvent, a8 as DrainReceipt, K as KVStore, z as SignedRequestAudience, d6 as CreditDrawReleaseEnqueue, cA as JobCostReportPayload, cB as JobTerminalReportPayload, cE as RevenueSkippedNoRailPayload, Z as ZodLike, a as DVMDescriptor, bX as CreditInvoiceRecord, bY as InvoiceSettlement, ck as ClientCompatibilityGate, ci as ClientCompatibility, bw as PostgresTempoSessionStore, bv as PayoutReporter, R as ResolvedCreditConfig, h as CreditView } from './step-cache-B7svmPz3.js';
3
3
  import { ProofLike, SerializedDLEQ, Proof } from '@cashu/cashu-ts';
4
4
  import { Hono, Context } from 'hono';
5
5
  import { Pool } from 'pg';
6
- import { d as FxSourceFailure, b as FxRateSnapshot, F as FxFetcher } from './fx-Ql4nvdbh.js';
6
+ import { d as FxSourceFailure, b as FxRateSnapshot, F as FxFetcher } from './fx-CMyNFenZ.js';
7
7
  import { Store, Challenge } from 'mppx';
8
- import { T as TopUpCapUnenforcedReason, A as AppendOutgoingOptions, J as JobRecord, b as JobStore } from './job-store-DCvJQUX0.js';
8
+ import { T as TopUpCapUnenforcedReason, A as AppendOutgoingOptions, J as JobRecord, b as JobStore } from './job-store-qOD-FrQF.js';
9
9
  import { SettleResponse, SupportedResponse } from '@x402/core/types';
10
10
  import { Channel, AutoSettlementConfig } from '@x402/evm/batch-settlement/server';
11
11
  import { FacilitatorClient } from '@x402/core/server';
@@ -1,4 +1,4 @@
1
- import { C as Currency } from './step-cache-BOWAn_BH.js';
1
+ import { C as Currency } from './step-cache-B7svmPz3.js';
2
2
 
3
3
  /**
4
4
  * Quote-time FX snapshot. `rates` maps configured lowercase currency codes to
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { C as Currency, Z as ZodLike, D as DVMConfig, a as DVMDescriptor } from './step-cache-BOWAn_BH.js';
2
- export { A as ApprovalContent, b as ArtifactContent, c as CancelContent, d as CanonicalEnvelope, e as CapabilityRate, f as CreateSignedRequestVerifierOpts, g as CreditConfig, h as CreditView, i as DEFAULT_CREDIT_MAX, j as DEFAULT_CREDIT_MIN, k as DEFAULT_CREDIT_TTL_SECONDS, l as DEFAULT_JOB_RETENTION_DAYS, m as DVMRouteContext, I as IncomingMessage, n as InputType, o as InvalidCurrencyError, J as JobCost, K as KVStore, L as Logger, P as PaymentContent, p as PaymentMethod, q as PriceValue, r as ProgressContent, s as PromptOpts, Q as QuoteConfig, t as QuoteContext, u as QuoteResult, R as ResolvedCreditConfig, v as ResponseContent, S as SDKJobContext, w as SDKPaymentRequestOpts, x as SIGNED_REQUEST_AUTH_ID, y as SIGNED_REQUEST_STATEMENT_VERSION, z as SignedRequestAudience, B as SignedRequestDomain, E as SignedRequestError, F as SignedRequestFailure, G as SignedRequestReplayStore, H as SignedRequestSignOpts, M as SignedRequestStatementHeader, N as SignedRequestVerifier, U as UnsupportedCurrencyError, O as createSignedRequestVerifier, T as isZodSchema, V as signedRequestStatementHeader, W as validateCurrency } from './step-cache-BOWAn_BH.js';
3
- export { C as CreateFxFetcherOpts, D as DEFAULT_FX_CURRENCIES, a as DEFAULT_FX_RATE_SOURCE, F as FxFetcher, b as FxRateSnapshot, c as FxRateUnavailableError, d as FxSourceFailure, e as FxSourceFailureCategory, P as PlatformFxSource, f as createFxFetcher, g as fxRateFor, r as resolveFxSourceFromEnv } from './fx-Ql4nvdbh.js';
4
- export { I as InvalidFxRateError, f as fiatToSatsCeil, a as formatFiat, b as formatUsd, r as roundUsd, s as satsToFiat } from './usd-MAtMp3DB.js';
5
- export { J as JobRecord, a as JobStatus, b as JobStore } from './job-store-DCvJQUX0.js';
1
+ import { C as Currency, Z as ZodLike, D as DVMConfig, a as DVMDescriptor } from './step-cache-B7svmPz3.js';
2
+ export { A as ApprovalContent, b as ArtifactContent, c as CancelContent, d as CanonicalEnvelope, e as CapabilityRate, f as CreateSignedRequestVerifierOpts, g as CreditConfig, h as CreditView, i as DEFAULT_CREDIT_MAX, j as DEFAULT_CREDIT_MIN, k as DEFAULT_CREDIT_TTL_SECONDS, l as DEFAULT_JOB_RETENTION_DAYS, m as DVMRouteContext, I as IncomingMessage, n as InputType, o as InvalidCurrencyError, J as JobCost, K as KVStore, L as Logger, P as PaymentContent, p as PaymentMethod, q as PriceValue, r as ProgressContent, s as PromptOpts, Q as QuoteConfig, t as QuoteContext, u as QuoteResult, R as ResolvedCreditConfig, v as ResponseContent, S as SDKJobContext, w as SDKPaymentRequestOpts, x as SIGNED_REQUEST_AUTH_ID, y as SIGNED_REQUEST_STATEMENT_VERSION, z as SignedRequestAudience, B as SignedRequestDomain, E as SignedRequestError, F as SignedRequestFailure, G as SignedRequestReplayStore, H as SignedRequestSignOpts, M as SignedRequestStatementHeader, N as SignedRequestVerifier, U as UnsupportedCurrencyError, O as createSignedRequestVerifier, T as isZodSchema, V as signedRequestStatementHeader, W as validateCurrency } from './step-cache-B7svmPz3.js';
3
+ export { C as CreateFxFetcherOpts, D as DEFAULT_FX_CURRENCIES, a as DEFAULT_FX_RATE_SOURCE, F as FxFetcher, b as FxRateSnapshot, c as FxRateUnavailableError, d as FxSourceFailure, e as FxSourceFailureCategory, P as PlatformFxSource, f as createFxFetcher, g as fxRateFor, r as resolveFxSourceFromEnv } from './fx-CMyNFenZ.js';
4
+ export { I as InvalidFxRateError, f as fiatToSatsCeil, a as formatFiat, b as formatUsd, r as roundUsd, s as satsToFiat } from './usd-D3izFz71.js';
5
+ export { J as JobRecord, a as JobStatus, b as JobStore } from './job-store-qOD-FrQF.js';
6
6
  export { P as PinnedFetch, S as SSRFError, a as SSRFGuardOpts, b as SSRFReason, c as SSRFResolver, d as assertSafeUrl, e as createPinnedFetch } from './ssrf-dMooihtY.js';
7
7
  export { z } from 'zod';
8
8
  import 'hono';
package/dist/index.js CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SignedRequestError,
12
12
  createSignedRequestVerifier
13
- } from "./chunk-5K5E6ME6.js";
13
+ } from "./chunk-4VV7WACY.js";
14
14
  import {
15
15
  DEFAULT_CREDIT_MAX,
16
16
  DEFAULT_CREDIT_MIN,
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-UKD3R2KU.js";
24
24
  import {
25
25
  buildUpfront
26
- } from "./chunk-XXLUIXPO.js";
26
+ } from "./chunk-WLPLHXNP.js";
27
27
  import {
28
28
  DEFAULT_FX_CURRENCIES,
29
29
  DEFAULT_FX_RATE_SOURCE,
@@ -41,8 +41,8 @@ import {
41
41
  roundUsd,
42
42
  satsToFiat,
43
43
  validateCurrency
44
- } from "./chunk-5CQKSLAU.js";
45
- import "./chunk-DZQYQN2X.js";
44
+ } from "./chunk-HC4I7LAV.js";
45
+ import "./chunk-OIP44KBB.js";
46
46
 
47
47
  // src/sdk/configure.ts
48
48
  function configureDVM(config) {
@@ -1,16 +1,16 @@
1
- import { L as LightningTransactionListOptions, a as LightningTransactionSnapshot, b as LightningBackend, c as LightningPayment, d as LightningWalletInfo, C as CreatedInvoice, I as InvoiceStatus } from '../lightning-backend-CY5ML3km.js';
2
- export { A as AttestationPayload, B as BuilderIdentityKeypair, e as CheckMintHealthOptions, f as LockPubkey, M as MintAmountBounds, g as MintHealthCheckResult, h as amountBoundsVerdict, i as assertNutSupport, j as buildAttestation, k as canSwap, l as checkMintHealth, m as generateIdentity, n as hashCapabilities, o as loadIdentitySecret, p as meltAmountBounds, s as signAttestation, t as toLockPubkey, v as verifyAttestation, w as writeIdentity } from '../lightning-backend-CY5ML3km.js';
1
+ import { L as LightningTransactionListOptions, a as LightningTransactionSnapshot, b as LightningBackend, c as LightningPayment, d as LightningWalletInfo, C as CreatedInvoice, I as InvoiceStatus } from '../lightning-backend-DtdG6UT5.js';
2
+ export { A as AttestationPayload, B as BuilderIdentityKeypair, e as CheckMintHealthOptions, f as LockPubkey, M as MintAmountBounds, g as MintHealthCheckResult, h as amountBoundsVerdict, i as assertNutSupport, j as buildAttestation, k as canSwap, l as checkMintHealth, m as generateIdentity, n as hashCapabilities, o as loadIdentitySecret, p as meltAmountBounds, s as signAttestation, t as toLockPubkey, v as verifyAttestation, w as writeIdentity } from '../lightning-backend-DtdG6UT5.js';
3
3
  import { ProofLike, MeltQuoteBolt11Response, Proof, Wallet, MintQuoteBolt11Response, MintPreview, CounterSource, CounterRange, SerializedDLEQ, OutputData, OutputDataLike } from '@cashu/cashu-ts';
4
4
  export { g as getWallet } from '../wallet-Dwjs5n_M.js';
5
- import { X as JsonValue, B as SignedRequestDomain, M as SignedRequestStatementHeader, Y as X402_BATCH_SETTLEMENT_SCHEME, _ as X402_EXACT_SCHEME, $ as FundingReceipt, a0 as JobReceipt$1, a1 as MessageType, a2 as X402Version, a3 as MppxCredential, z as SignedRequestAudience, a4 as PaymentRequired, a5 as Message, a6 as MppxChallenge, a7 as ReceiptCredit, a8 as DrainReceipt, C as Currency, a9 as X402Wallet, aa as PaymentRequirementsV1, ab as PaymentRequirementsV2, L as Logger$1, K as KVStore } from '../step-cache-BOWAn_BH.js';
6
- export { ac as BuildPaymentRequirementsOpts, ad as CapabilityDescriptor, ae as CashuMode, af as CompleteContent, ag as DrainReceiptEvent, ah as ExactEvmPayload, ai as ExactEvmPayloadAuthorization, aj as FundingMethod, ak as MessageFrom, al as PaymentPayload, am as PaymentPayloadV1, an as PaymentPayloadV2, ao as PaymentRequestContent, ap as PaymentRequiredV2, aq as PaymentRequirements, ar as PromptContent, as as RAIL_REFUNDABLE, at as ReceiptOutcome, au as ReceiptPayment, av as ResourceInfo, aw as SettleResponse, ax as StepCache, ay as StepRecord, az as TextContent, aA as UnsignedDrainReceipt, aB as UnsignedFundingReceipt, aC as UnsignedJobReceipt, aD as VerifyResponse, aE as WorkingContent, aF as X402Config, aG as X402ResponseBody, aH as X402SelfRelayRpcFailureReason, aI as X402_DEFAULT_NETWORK, aJ as X402_V1_VERSION, aK as X402_VERSION, aL as buildPaymentRequiredV2, aM as buildPaymentRequirements, aN as caip2ToX402Network, aO as canonicalRequestPath, aP as canonicaliseForSigning, aQ as canonicalize, aR as chainIdFromCaip2, aS as computeResultHash, aT as decodePayment, aU as decodePaymentRequiredHeader, aV as encodePayment, aW as encodePaymentRequiredHeader, aX as encodeSettleResponseHeader, aY as exactEvmAuthorization, aZ as isArtifactMessage, a_ as isCancelMessage, a$ as isCompleteMessage, b0 as isDrainReceipt, b1 as isFundingReceipt, b2 as isPaymentRequestMessage, b3 as isPromptMessage, b4 as isSignedJobReceipt, b5 as isTextMessage, b6 as isWorkingMessage, b7 as paymentRequiredV2FromV1, b8 as signDrainReceipt, b9 as signFundingReceipt, ba as signReceipt, bb as usdcContractByCaip2, bc as usdcContractFor, bd as usdcDomainNameFor, be as usdcDomainVersionFor, bf as verifyDrainReceipt, bg as verifyFundingReceipt, bh as verifyReceipt, bi as x402NetworkToCaip2 } from '../step-cache-BOWAn_BH.js';
5
+ import { X as JsonValue, B as SignedRequestDomain, M as SignedRequestStatementHeader, Y as X402_BATCH_SETTLEMENT_SCHEME, _ as X402_EXACT_SCHEME, $ as FundingReceipt, a0 as JobReceipt$1, a1 as MessageType, a2 as X402Version, a3 as MppxCredential, z as SignedRequestAudience, a4 as PaymentRequired, a5 as Message, a6 as MppxChallenge, a7 as ReceiptCredit, a8 as DrainReceipt, C as Currency, a9 as X402Wallet, aa as PaymentRequirementsV1, ab as PaymentRequirementsV2, L as Logger$1, K as KVStore } from '../step-cache-B7svmPz3.js';
6
+ export { ac as BuildPaymentRequirementsOpts, ad as CapabilityDescriptor, ae as CashuMode, af as CompleteContent, ag as DrainReceiptEvent, ah as ExactEvmPayload, ai as ExactEvmPayloadAuthorization, aj as FundingMethod, ak as MessageFrom, al as PaymentPayload, am as PaymentPayloadV1, an as PaymentPayloadV2, ao as PaymentRequestContent, ap as PaymentRequiredV2, aq as PaymentRequirements, ar as PromptContent, as as RAIL_REFUNDABLE, at as ReceiptOutcome, au as ReceiptPayment, av as ResourceInfo, aw as SettleResponse, ax as StepCache, ay as StepRecord, az as TextContent, aA as UnsignedDrainReceipt, aB as UnsignedFundingReceipt, aC as UnsignedJobReceipt, aD as VerifyResponse, aE as WorkingContent, aF as X402Config, aG as X402ResponseBody, aH as X402SelfRelayRpcFailureReason, aI as X402_DEFAULT_NETWORK, aJ as X402_V1_VERSION, aK as X402_VERSION, aL as buildPaymentRequiredV2, aM as buildPaymentRequirements, aN as caip2ToX402Network, aO as canonicalRequestPath, aP as canonicaliseForSigning, aQ as canonicalize, aR as chainIdFromCaip2, aS as computeResultHash, aT as decodePayment, aU as decodePaymentRequiredHeader, aV as encodePayment, aW as encodePaymentRequiredHeader, aX as encodeSettleResponseHeader, aY as exactEvmAuthorization, aZ as isArtifactMessage, a_ as isCancelMessage, a$ as isCompleteMessage, b0 as isDrainReceipt, b1 as isFundingReceipt, b2 as isPaymentRequestMessage, b3 as isPromptMessage, b4 as isSignedJobReceipt, b5 as isTextMessage, b6 as isWorkingMessage, b7 as paymentRequiredV2FromV1, b8 as signDrainReceipt, b9 as signFundingReceipt, ba as signReceipt, bb as usdcContractByCaip2, bc as usdcContractFor, bd as usdcDomainNameFor, be as usdcDomainVersionFor, bf as verifyDrainReceipt, bg as verifyFundingReceipt, bh as verifyReceipt, bi as x402NetworkToCaip2 } from '../step-cache-B7svmPz3.js';
7
7
  import { SimplePool } from 'nostr-tools/pool';
8
8
  import { Session } from 'mppx/tempo';
9
9
  import { Pool } from 'pg';
10
10
  import { PaymentRequired as PaymentRequired$1 } from '@x402/core/types';
11
11
  import { ClientChannelStorage, BatchSettlementClientContext, BatchSettlementEvmScheme } from '@x402/evm/batch-settlement/client';
12
- export { h as FX_CACHE_TTL_MS, i as FX_RETRY_COUNT, w as warmFxSnapshot } from '../fx-Ql4nvdbh.js';
13
- export { c as InvalidUsdPriceError, p as parseUsdPrice } from '../usd-MAtMp3DB.js';
12
+ export { h as FX_CACHE_TTL_MS, i as FX_RETRY_COUNT, w as warmFxSnapshot } from '../fx-CMyNFenZ.js';
13
+ export { c as InvalidUsdPriceError, p as parseUsdPrice } from '../usd-D3izFz71.js';
14
14
  import 'hono';
15
15
  import 'mppx';
16
16
  import '@x402/core/server';
@@ -32,7 +32,7 @@ import {
32
32
  sha256hex,
33
33
  validateX402Env,
34
34
  withNwcPool
35
- } from "../chunk-55NKZQOC.js";
35
+ } from "../chunk-KGL3YMZA.js";
36
36
  import {
37
37
  MemoryKVStore
38
38
  } from "../chunk-SDK6KDJN.js";
@@ -143,7 +143,7 @@ import {
143
143
  withWalletLock,
144
144
  writeAgentMnemonic,
145
145
  writeIdentity
146
- } from "../chunk-RTFBVXCN.js";
146
+ } from "../chunk-LW7KZQHG.js";
147
147
  import {
148
148
  X402_BATCH_SETTLEMENT_SCHEME,
149
149
  X402_DEFAULT_FACILITATOR,
@@ -190,21 +190,11 @@ import {
190
190
  import {
191
191
  createNoopLogger,
192
192
  createStdoutLogger
193
- } from "../chunk-IFWUWHTW.js";
194
- import {
195
- currentContext,
196
- initLoggers,
197
- loggers,
198
- pinDimension,
199
- randomTraceId,
200
- setEmitter,
201
- withTraceContext
202
- } from "../chunk-BL6LRWXD.js";
193
+ } from "../chunk-TRY7BJA4.js";
203
194
  import {
204
195
  redactUrl,
205
196
  redactUrlsInText
206
197
  } from "../chunk-FUJ36YDV.js";
207
- import "../chunk-66HGCPBU.js";
208
198
  import {
209
199
  StepCache
210
200
  } from "../chunk-BQJIFRAZ.js";
@@ -214,11 +204,11 @@ import {
214
204
  InvalidUsdPriceError,
215
205
  parseUsdPrice,
216
206
  warmFxSnapshot
217
- } from "../chunk-5CQKSLAU.js";
207
+ } from "../chunk-HC4I7LAV.js";
218
208
  import {
219
209
  applyRetryToPool,
220
210
  withInitRetry
221
- } from "../chunk-6FEHRZO7.js";
211
+ } from "../chunk-IBX2ORBV.js";
222
212
  import {
223
213
  DvmError,
224
214
  X402_NETWORKS,
@@ -232,6 +222,16 @@ import {
232
222
  x402NetworkListForCopy,
233
223
  x402SupportedNetworksHint
234
224
  } from "../chunk-BPYMEMQX.js";
225
+ import {
226
+ currentContext,
227
+ initLoggers,
228
+ loggers,
229
+ pinDimension,
230
+ randomTraceId,
231
+ setEmitter,
232
+ withTraceContext
233
+ } from "../chunk-QSZW2I5Y.js";
234
+ import "../chunk-66HGCPBU.js";
235
235
  import {
236
236
  DIAGNOSTIC_CATALOGUE_VERSION,
237
237
  bindDiagnosticCapabilityAuthority,
@@ -241,7 +241,7 @@ import {
241
241
  projectDiagnosticFields,
242
242
  projectEventName,
243
243
  projectSpanRow
244
- } from "../chunk-DZQYQN2X.js";
244
+ } from "../chunk-OIP44KBB.js";
245
245
 
246
246
  // src/lib/budget-core.ts
247
247
  function checkBudgetForLedger(ledger, opts) {
@@ -1,22 +1,22 @@
1
1
  import { FacilitatorConfig } from '@x402/core/server';
2
- import { al as PaymentPayload, aa as PaymentRequirementsV1, ab as PaymentRequirementsV2, aF as X402Config, aw as SettleResponse, aD as VerifyResponse, bj as X402ExactVersionSupport, bk as X402Receipt, bl as TransactionalPayoutHook, bm as CashuMeltCompleted } from '../step-cache-BOWAn_BH.js';
3
- export { bn as CreditDepositPayload, bo as CreditDrainPayload, bp as FundingLot, bq as LotDebit, br as LotDepletion, bs as MppxServer, bt as NON_CHANNEL_BITCOIN_RAILS, bu as NonChannelBitcoinRail, bv as PayoutReporter, bw as PostgresTempoSessionStore, bx as RevenueReporter, by as SIGNED_ENVELOPE_FIELDS, bz as SIGNED_ENVELOPE_TYPES, bA as X402TrackedChannel, bB as _testing, bC as createDefaultReplayStore, bD as depleteLots, bE as fifoOrder, bF as inKindDrawMsats, bG as isInKindDepletion, bH as isNonChannelBitcoinRail, bI as lotOwedSats, bJ as netOwedSats, bK as wrapMppx } from '../step-cache-BOWAn_BH.js';
2
+ import { al as PaymentPayload, aa as PaymentRequirementsV1, ab as PaymentRequirementsV2, aF as X402Config, aw as SettleResponse, aD as VerifyResponse, bj as X402ExactVersionSupport, bk as X402Receipt, bl as TransactionalPayoutHook, bm as CashuMeltCompleted } from '../step-cache-B7svmPz3.js';
3
+ export { bn as CreditDepositPayload, bo as CreditDrainPayload, bp as FundingLot, bq as LotDebit, br as LotDepletion, bs as MppxServer, bt as NON_CHANNEL_BITCOIN_RAILS, bu as NonChannelBitcoinRail, bv as PayoutReporter, bw as PostgresTempoSessionStore, bx as RevenueReporter, by as SIGNED_ENVELOPE_FIELDS, bz as SIGNED_ENVELOPE_TYPES, bA as X402TrackedChannel, bB as _testing, bC as createDefaultReplayStore, bD as depleteLots, bE as fifoOrder, bF as inKindDrawMsats, bG as isInKindDepletion, bH as isNonChannelBitcoinRail, bI as lotOwedSats, bJ as netOwedSats, bK as wrapMppx } from '../step-cache-B7svmPz3.js';
4
4
  import { Hono } from 'hono';
5
5
  import { Env, BlankSchema } from 'hono/types';
6
6
  import { Pool } from 'pg';
7
7
  export { Pool } from 'pg';
8
8
  import { g as getWallet } from '../wallet-Dwjs5n_M.js';
9
- import { C as ConsumedCredentialStore, L as LockPubkeyStateLoader } from '../credit-menu-C-8g2cHT.js';
10
- export { A as AccumulatorPool, a as AppEnv, b as CreditFundingReport, D as DEFAULT_LOCK_PUBKEY_GRACE_SECONDS, F as FiatDenomination, c as FiatDenominationFailure, d as FundOnlyRequest, I as IncomingPaymentOpts, J as JobCancelledError, e as LockPubkeyPool, f as LockPubkeyState, M as MintHealthTracker, P as PAYMENT_PROOF_KEYS, g as PaymentErrorCode, h as PaymentErrorDetail, i as PaymentInfo, j as PostgresTempoChargeStore, R as ReporterBannerOpts, k as ResolvedFx, l as RevenueBootCheckOpts, S as SDKServerOpts, m as ServerJob, n as ShortPayForfeit, T as TempoChannelReport, o as TempoObserverHealth, p as TempoSessionChannelMismatchError, U as UpfrontPaymentOpts, V as VerifiedIncomingPayment, q as VerifyIncomingSnapshot, X as X402BatchChannelObservation, r as X402FacilitatorHealth, s as X402SettlementEvidenceOutcome, t as X402SettlementRepair, u as X402SettlementRepairRefusal, v as X402SettlementRepaired, w as X402WedgedSettlement, x as X402WedgedSettlementPage, y as X402_BATCH_SETTLEMENT_MAINNET_NETWORK, z as abortJob, B as activePubkeySet, E as applyPaymentInfoToJob, G as assertRevenueReporterReady, H as buildPaymentErrorResponse, K as clearAccumulatorForDvm, N as createDVMServer, O as creditDepositPayload, Q as derivedFundCreditId, W as devModeSkipsPaymentVerification, Y as fromJobRecord, Z as fundedMicroFor, _ as hasPaymentProof, $ as hashLockKey, a0 as implicitCreditId, a1 as initLockPubkeyTable, a2 as initWalletAccumulatorTable, a3 as insertAccumulatorRows, a4 as isDerivedCreditId, a5 as isTerminal, a6 as isYieldMessage, a7 as issueUpfrontChallenges, a8 as loadLockPubkeyState, a9 as msatsToFiatMicro, aa as paymentErrorBody, ab as pinAskFiat, ac as priceFiatMicro, ad as processIncomingPayment, ae as providerMessage, af as pruneRetired, ag as repairX402ExactSettlementEffect, ah as resolveFxSnapshot, ai as resolvePriceFiat, aj as revenueReporterBannerState, ak as rotateLockPubkey, al as seedLockPubkeyState, am as toCreditTerms, an as toJobRecord, ao as unknownRouteNotFound, ap as verifyIncomingPayment, aq as verifyTempoSessionManagementCredential, ar as verifyUpfrontPayment, as as x402RequiredUsdcMicro, at as x402SettledShare } from '../credit-menu-C-8g2cHT.js';
11
- export { O as OutgoingMessage, S as StaleJobReapable, i as isStaleJobReapable } from '../job-store-DCvJQUX0.js';
9
+ import { C as ConsumedCredentialStore, L as LockPubkeyStateLoader } from '../credit-menu-QntEhZJS.js';
10
+ export { A as AccumulatorPool, a as AppEnv, b as CreditFundingReport, D as DEFAULT_LOCK_PUBKEY_GRACE_SECONDS, F as FiatDenomination, c as FiatDenominationFailure, d as FundOnlyRequest, I as IncomingPaymentOpts, J as JobCancelledError, e as LockPubkeyPool, f as LockPubkeyState, M as MintHealthTracker, P as PAYMENT_PROOF_KEYS, g as PaymentErrorCode, h as PaymentErrorDetail, i as PaymentInfo, j as PostgresTempoChargeStore, R as ReporterBannerOpts, k as ResolvedFx, l as RevenueBootCheckOpts, S as SDKServerOpts, m as ServerJob, n as ShortPayForfeit, T as TempoChannelReport, o as TempoObserverHealth, p as TempoSessionChannelMismatchError, U as UpfrontPaymentOpts, V as VerifiedIncomingPayment, q as VerifyIncomingSnapshot, X as X402BatchChannelObservation, r as X402FacilitatorHealth, s as X402SettlementEvidenceOutcome, t as X402SettlementRepair, u as X402SettlementRepairRefusal, v as X402SettlementRepaired, w as X402WedgedSettlement, x as X402WedgedSettlementPage, y as X402_BATCH_SETTLEMENT_MAINNET_NETWORK, z as abortJob, B as activePubkeySet, E as applyPaymentInfoToJob, G as assertRevenueReporterReady, H as buildPaymentErrorResponse, K as clearAccumulatorForDvm, N as createDVMServer, O as creditDepositPayload, Q as derivedFundCreditId, W as devModeSkipsPaymentVerification, Y as fromJobRecord, Z as fundedMicroFor, _ as hasPaymentProof, $ as hashLockKey, a0 as implicitCreditId, a1 as initLockPubkeyTable, a2 as initWalletAccumulatorTable, a3 as insertAccumulatorRows, a4 as isDerivedCreditId, a5 as isTerminal, a6 as isYieldMessage, a7 as issueUpfrontChallenges, a8 as loadLockPubkeyState, a9 as msatsToFiatMicro, aa as paymentErrorBody, ab as pinAskFiat, ac as priceFiatMicro, ad as processIncomingPayment, ae as providerMessage, af as pruneRetired, ag as repairX402ExactSettlementEffect, ah as resolveFxSnapshot, ai as resolvePriceFiat, aj as revenueReporterBannerState, ak as rotateLockPubkey, al as seedLockPubkeyState, am as toCreditTerms, an as toJobRecord, ao as unknownRouteNotFound, ap as verifyIncomingPayment, aq as verifyTempoSessionManagementCredential, ar as verifyUpfrontPayment, as as x402RequiredUsdcMicro, at as x402SettledShare } from '../credit-menu-QntEhZJS.js';
11
+ export { O as OutgoingMessage, S as StaleJobReapable, i as isStaleJobReapable } from '../job-store-qOD-FrQF.js';
12
12
  import { z } from 'zod';
13
- export { f as LockPubkeyStoreLockPubkey, t as lockPubkeyStoreToLockPubkey } from '../lightning-backend-CY5ML3km.js';
13
+ export { f as LockPubkeyStoreLockPubkey, t as lockPubkeyStoreToLockPubkey } from '../lightning-backend-DtdG6UT5.js';
14
14
  import 'mppx';
15
15
  import '@x402/evm/batch-settlement/server';
16
16
  import '@x402/core/types';
17
17
  import 'viem';
18
18
  import '@cashu/cashu-ts';
19
- import '../fx-Ql4nvdbh.js';
19
+ import '../fx-CMyNFenZ.js';
20
20
 
21
21
  declare function verifyWithFacilitator(payload: PaymentPayload, requirements: PaymentRequirementsV1 | PaymentRequirementsV2, config?: Pick<X402Config, "facilitator" | "facilitatorAuth">, createAuthHeaders?: FacilitatorConfig["createAuthHeaders"] | undefined): Promise<VerifyResponse>;
22
22
  declare function settleWithFacilitator(payload: PaymentPayload, requirements: PaymentRequirementsV1 | PaymentRequirementsV2, config?: Pick<X402Config, "facilitator" | "facilitatorAuth">, createAuthHeaders?: FacilitatorConfig["createAuthHeaders"] | undefined): Promise<SettleResponse>;