@peac/adapter-x402 0.16.1 → 0.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/errors.d.ts CHANGED
@@ -14,8 +14,9 @@
14
14
  * - payload_*: Generic payload errors
15
15
  * - amount_*: Amount validation errors
16
16
  * - network_*: Network validation errors
17
+ * - settlement_extensions_*: Settlement `extensions` bag errors
17
18
  */
18
- export type X402ErrorCode = 'offer_invalid_format' | 'offer_expired' | 'offer_version_unsupported' | 'offer_signature_invalid' | 'offer_no_expiry' | 'receipt_invalid_format' | 'receipt_signature_invalid' | 'receipt_version_unsupported' | 'receipt_resource_mismatch' | 'receipt_network_mismatch' | 'receipt_issuedAt_stale' | 'receipt_payer_invalid' | 'receipt_payer_not_in_candidates' | 'accept_index_out_of_range' | 'accept_no_match' | 'accept_ambiguous' | 'accept_term_mismatch' | 'accept_too_many_entries' | 'payload_missing_field' | 'payload_tampered' | 'amount_invalid' | 'network_invalid' | 'jws_too_large' | 'jws_malformed' | 'jws_padded_base64url' | 'jws_payload_not_object';
19
+ export type X402ErrorCode = 'offer_invalid_format' | 'offer_expired' | 'offer_version_unsupported' | 'offer_signature_invalid' | 'offer_no_expiry' | 'receipt_invalid_format' | 'receipt_signature_invalid' | 'receipt_version_unsupported' | 'receipt_resource_mismatch' | 'receipt_network_mismatch' | 'receipt_issuedAt_stale' | 'receipt_payer_invalid' | 'receipt_payer_not_in_candidates' | 'accept_index_out_of_range' | 'accept_no_match' | 'accept_ambiguous' | 'accept_term_mismatch' | 'accept_too_many_entries' | 'payload_missing_field' | 'payload_tampered' | 'amount_invalid' | 'network_invalid' | 'jws_too_large' | 'jws_malformed' | 'jws_padded_base64url' | 'jws_payload_not_object' | 'settlement_extensions_invalid' | 'settlement_extensions_too_large';
19
20
  /**
20
21
  * Custom error class for x402 adapter operations
21
22
  *
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GACrB,sBAAsB,GACtB,eAAe,GACf,2BAA2B,GAC3B,yBAAyB,GACzB,iBAAiB,GACjB,wBAAwB,GACxB,2BAA2B,GAC3B,6BAA6B,GAC7B,2BAA2B,GAC3B,0BAA0B,GAC1B,wBAAwB,GACxB,uBAAuB,GACvB,iCAAiC,GACjC,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,GACtB,yBAAyB,GACzB,uBAAuB,GACvB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,sBAAsB,GACtB,wBAAwB,CAAC;AAkC7B;;;;;GAKG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAGzC,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;IAUjE,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,GACrB,sBAAsB,GACtB,eAAe,GACf,2BAA2B,GAC3B,yBAAyB,GACzB,iBAAiB,GACjB,wBAAwB,GACxB,2BAA2B,GAC3B,6BAA6B,GAC7B,2BAA2B,GAC3B,0BAA0B,GAC1B,wBAAwB,GACxB,uBAAuB,GACvB,iCAAiC,GACjC,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,GACtB,yBAAyB,GACzB,uBAAuB,GACvB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,sBAAsB,GACtB,wBAAwB,GACxB,+BAA+B,GAC/B,iCAAiC,CAAC;AAoCtC;;;;;GAKG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAGzC,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;IAUjE,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlC"}
package/dist/errors.js CHANGED
@@ -37,6 +37,8 @@ const ERROR_HTTP_STATUS = {
37
37
  jws_malformed: 400,
38
38
  jws_padded_base64url: 400,
39
39
  jws_payload_not_object: 400,
40
+ settlement_extensions_invalid: 400,
41
+ settlement_extensions_too_large: 400,
40
42
  };
41
43
  /**
42
44
  * Custom error class for x402 adapter operations
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAyCH;;GAEG;AACH,MAAM,iBAAiB,GAAkC;IACvD,oBAAoB,EAAE,GAAG;IACzB,aAAa,EAAE,GAAG;IAClB,yBAAyB,EAAE,GAAG;IAC9B,uBAAuB,EAAE,GAAG;IAC5B,eAAe,EAAE,GAAG;IACpB,sBAAsB,EAAE,GAAG;IAC3B,yBAAyB,EAAE,GAAG;IAC9B,2BAA2B,EAAE,GAAG;IAChC,yBAAyB,EAAE,GAAG;IAC9B,wBAAwB,EAAE,GAAG;IAC7B,sBAAsB,EAAE,GAAG;IAC3B,qBAAqB,EAAE,GAAG;IAC1B,+BAA+B,EAAE,GAAG;IACpC,yBAAyB,EAAE,GAAG;IAC9B,eAAe,EAAE,GAAG;IACpB,gBAAgB,EAAE,GAAG;IACrB,oBAAoB,EAAE,GAAG;IACzB,uBAAuB,EAAE,GAAG;IAC5B,qBAAqB,EAAE,GAAG;IAC1B,gBAAgB,EAAE,GAAG;IACrB,cAAc,EAAE,GAAG;IACnB,eAAe,EAAE,GAAG;IACpB,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,GAAG;IAClB,oBAAoB,EAAE,GAAG;IACzB,sBAAsB,EAAE,GAAG;CAC5B,CAAC;AAEF;;;;;GAKG;AACH,MAAa,SAAU,SAAQ,KAAK;IACzB,IAAI,CAAgB;IACpB,UAAU,CAAS;IACnB,KAAK,CAAU;IACf,OAAO,CAA2B;IAE3C,YACE,IAAmB,EACnB,OAAe,EACf,OAA+D;QAE/D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;IAClC,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;SAC7D,CAAC;IACJ,CAAC;CACF;AA7BD,8BA6BC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA4CH;;GAEG;AACH,MAAM,iBAAiB,GAAkC;IACvD,oBAAoB,EAAE,GAAG;IACzB,aAAa,EAAE,GAAG;IAClB,yBAAyB,EAAE,GAAG;IAC9B,uBAAuB,EAAE,GAAG;IAC5B,eAAe,EAAE,GAAG;IACpB,sBAAsB,EAAE,GAAG;IAC3B,yBAAyB,EAAE,GAAG;IAC9B,2BAA2B,EAAE,GAAG;IAChC,yBAAyB,EAAE,GAAG;IAC9B,wBAAwB,EAAE,GAAG;IAC7B,sBAAsB,EAAE,GAAG;IAC3B,qBAAqB,EAAE,GAAG;IAC1B,+BAA+B,EAAE,GAAG;IACpC,yBAAyB,EAAE,GAAG;IAC9B,eAAe,EAAE,GAAG;IACpB,gBAAgB,EAAE,GAAG;IACrB,oBAAoB,EAAE,GAAG;IACzB,uBAAuB,EAAE,GAAG;IAC5B,qBAAqB,EAAE,GAAG;IAC1B,gBAAgB,EAAE,GAAG;IACrB,cAAc,EAAE,GAAG;IACnB,eAAe,EAAE,GAAG;IACpB,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,GAAG;IAClB,oBAAoB,EAAE,GAAG;IACzB,sBAAsB,EAAE,GAAG;IAC3B,6BAA6B,EAAE,GAAG;IAClC,+BAA+B,EAAE,GAAG;CACrC,CAAC;AAEF;;;;;GAKG;AACH,MAAa,SAAU,SAAQ,KAAK;IACzB,IAAI,CAAgB;IACpB,UAAU,CAAS;IACnB,KAAK,CAAU;IACf,OAAO,CAA2B;IAE3C,YACE,IAAmB,EACnB,OAAe,EACf,OAA+D;QAE/D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;IAClC,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;SAC7D,CAAC;IACJ,CAAC;CACF;AA7BD,8BA6BC"}
package/dist/index.d.ts CHANGED
@@ -37,6 +37,7 @@ export type { ChallengeType } from './challenge.js';
37
37
  export { mapX402ToChallengeType } from './challenge.js';
38
38
  export { extractSettlementProofFromHeaders, fromX402SettlementObservation } from './settlement.js';
39
39
  export type { HeaderBag, SettlementProofSource, ExtractedSettlementProof, X402SettlementObservationInput, X402SettlementEvidence, X402SettlementOptions, } from './settlement.js';
40
+ export { extractSignedReceiptFromSettlement, MAX_SETTLEMENT_EXTENSIONS_BYTES, } from './settlement-extensions.js';
40
41
  export { computeX402TermsDigest, computeJsonDocumentDigestJcs, computeTextDocumentDigestUtf8, } from './terms.js';
41
42
  export type { X402TermsRepresentation, DocumentRepresentation } from './terms.js';
42
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,7 +14,8 @@
14
14
  * @packageDocumentation
15
15
  */
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.computeTextDocumentDigestUtf8 = exports.computeJsonDocumentDigestJcs = exports.computeX402TermsDigest = exports.fromX402SettlementObservation = exports.extractSettlementProofFromHeaders = exports.mapX402ToChallengeType = exports.X402CarrierAdapter = exports.fromSettlementResponseAsync = exports.fromSettlementResponse = exports.fromOfferResponseAsync = exports.fromOfferResponse = exports.extractReceiptArtifactFromHeaders = exports.X402_CARRIER_LIMITS = exports.toPeacCarrier = exports.toPeacRecordV2 = exports.toPeacRecord = exports.selectAccept = exports.matchAcceptTerms = exports.verifyOfferReceiptConsistency = exports.verifyReceiptWire = exports.verifyOfferWire = exports.verifyReceiptUnified = exports.verifyOfferUnified = exports.verifyReceiptV2 = exports.verifyOfferV2 = exports.verifyReceipt = exports.verifyOffer = exports.X402Error = exports.defaultAddressComparator = exports.MAX_AMOUNT_LENGTH = exports.MAX_TOTAL_ACCEPTS_BYTES = exports.MAX_ACCEPT_ENTRIES = exports.X402_OFFER_RECEIPT_PROFILE = exports.normalizeV2Receipt = exports.normalizeV2Offers = exports.normalizeV2Offer = exports.normalizeReceiptPayload = exports.normalizeOfferPayload = exports.detectX402VersionFromSource = exports.detectX402Version = exports.X402_V2_HEADERS = exports.extractReceiptFromHeaders = exports.extractExtensionInfo = exports.extractReceiptPayload = exports.extractOfferPayload = exports.parseCompactJWS = exports.X402_RECEIPT_HEADERS = exports.MAX_COMPACT_JWS_BYTES = exports.OFFER_RECEIPT = void 0;
17
+ exports.computeJsonDocumentDigestJcs = exports.computeX402TermsDigest = exports.MAX_SETTLEMENT_EXTENSIONS_BYTES = exports.extractSignedReceiptFromSettlement = exports.fromX402SettlementObservation = exports.extractSettlementProofFromHeaders = exports.mapX402ToChallengeType = exports.X402CarrierAdapter = exports.fromSettlementResponseAsync = exports.fromSettlementResponse = exports.fromOfferResponseAsync = exports.fromOfferResponse = exports.extractReceiptArtifactFromHeaders = exports.X402_CARRIER_LIMITS = exports.toPeacCarrier = exports.toPeacRecordV2 = exports.toPeacRecord = exports.selectAccept = exports.matchAcceptTerms = exports.verifyOfferReceiptConsistency = exports.verifyReceiptWire = exports.verifyOfferWire = exports.verifyReceiptUnified = exports.verifyOfferUnified = exports.verifyReceiptV2 = exports.verifyOfferV2 = exports.verifyReceipt = exports.verifyOffer = exports.X402Error = exports.defaultAddressComparator = exports.MAX_AMOUNT_LENGTH = exports.MAX_TOTAL_ACCEPTS_BYTES = exports.MAX_ACCEPT_ENTRIES = exports.X402_OFFER_RECEIPT_PROFILE = exports.normalizeV2Receipt = exports.normalizeV2Offers = exports.normalizeV2Offer = exports.normalizeReceiptPayload = exports.normalizeOfferPayload = exports.detectX402VersionFromSource = exports.detectX402Version = exports.X402_V2_HEADERS = exports.extractReceiptFromHeaders = exports.extractExtensionInfo = exports.extractReceiptPayload = exports.extractOfferPayload = exports.parseCompactJWS = exports.X402_RECEIPT_HEADERS = exports.MAX_COMPACT_JWS_BYTES = exports.OFFER_RECEIPT = void 0;
18
+ exports.computeTextDocumentDigestUtf8 = void 0;
18
19
  var raw_js_1 = require("./raw.js");
19
20
  Object.defineProperty(exports, "OFFER_RECEIPT", { enumerable: true, get: function () { return raw_js_1.OFFER_RECEIPT; } });
20
21
  Object.defineProperty(exports, "MAX_COMPACT_JWS_BYTES", { enumerable: true, get: function () { return raw_js_1.MAX_COMPACT_JWS_BYTES; } });
@@ -78,6 +79,13 @@ Object.defineProperty(exports, "mapX402ToChallengeType", { enumerable: true, get
78
79
  var settlement_js_1 = require("./settlement.js");
79
80
  Object.defineProperty(exports, "extractSettlementProofFromHeaders", { enumerable: true, get: function () { return settlement_js_1.extractSettlementProofFromHeaders; } });
80
81
  Object.defineProperty(exports, "fromX402SettlementObservation", { enumerable: true, get: function () { return settlement_js_1.fromX402SettlementObservation; } });
82
+ // Settlement extensions: signed-receipt extraction from the settlement
83
+ // `extensions` bag (offer-receipt extension, upstream commit f2bbb5c).
84
+ // Extraction only; does not verify signatures. See map.ts for how the
85
+ // mapper preserves settlement extensions into proofs.x402.
86
+ var settlement_extensions_js_1 = require("./settlement-extensions.js");
87
+ Object.defineProperty(exports, "extractSignedReceiptFromSettlement", { enumerable: true, get: function () { return settlement_extensions_js_1.extractSignedReceiptFromSettlement; } });
88
+ Object.defineProperty(exports, "MAX_SETTLEMENT_EXTENSIONS_BYTES", { enumerable: true, get: function () { return settlement_extensions_js_1.MAX_SETTLEMENT_EXTENSIONS_BYTES; } });
81
89
  // x402 PR #1986 terms digest helpers (v0.12.14). Mapper-local convenience
82
90
  // over @peac/protocol/document-binding; digest is NEVER stamped into the
83
91
  // emitted record / envelope shape (verifier-report-only).
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAgBH,mCASkB;AARhB,uGAAA,aAAa,OAAA;AACb,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,mHAAA,yBAAyB,OAAA;AAgB3B,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAIxB,2CAA8E;AAArE,+GAAA,iBAAiB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AAKvD,+CAAgF;AAAvE,qHAAA,qBAAqB,OAAA;AAAE,uHAAA,uBAAuB,OAAA;AAIvD,qDAA4F;AAAnF,mHAAA,gBAAgB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AA+BhE,qCAAqC;AACrC,uCAMoB;AALlB,sHAAA,0BAA0B,OAAA;AAC1B,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,6GAAA,iBAAiB,OAAA;AACjB,oHAAA,wBAAwB,OAAA;AAM1B,SAAS;AACT,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAGlB,eAAe;AACf,yCAYqB;AAXnB,wGAAA,WAAW,OAAA;AACX,0GAAA,aAAa,OAAA;AACb,0GAAA,aAAa,OAAA;AACb,4GAAA,eAAe,OAAA;AACf,+GAAA,kBAAkB,OAAA;AAClB,iHAAA,oBAAoB,OAAA;AACpB,4GAAA,eAAe,OAAA;AACf,8GAAA,iBAAiB,OAAA;AACjB,0HAAA,6BAA6B,OAAA;AAC7B,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AAId,UAAU;AACV,mCAAuE;AAA9D,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,uGAAA,aAAa,OAAA;AAepD,2CAQsB;AAPpB,iHAAA,mBAAmB,OAAA;AACnB,+HAAA,iCAAiC,OAAA;AACjC,+GAAA,iBAAiB,OAAA;AACjB,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,yHAAA,2BAA2B,OAAA;AAC3B,gHAAA,kBAAkB,OAAA;AAKpB,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAE/B,uEAAuE;AACvE,iDAAmG;AAA1F,kIAAA,iCAAiC,OAAA;AAAE,8HAAA,6BAA6B,OAAA;AAUzE,0EAA0E;AAC1E,yEAAyE;AACzE,0DAA0D;AAC1D,uCAIoB;AAHlB,kHAAA,sBAAsB,OAAA;AACtB,wHAAA,4BAA4B,OAAA;AAC5B,yHAAA,6BAA6B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;;AAgBH,mCASkB;AARhB,uGAAA,aAAa,OAAA;AACb,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,mHAAA,yBAAyB,OAAA;AAgB3B,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAIxB,2CAA8E;AAArE,+GAAA,iBAAiB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AAKvD,+CAAgF;AAAvE,qHAAA,qBAAqB,OAAA;AAAE,uHAAA,uBAAuB,OAAA;AAIvD,qDAA4F;AAAnF,mHAAA,gBAAgB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AA+BhE,qCAAqC;AACrC,uCAMoB;AALlB,sHAAA,0BAA0B,OAAA;AAC1B,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,6GAAA,iBAAiB,OAAA;AACjB,oHAAA,wBAAwB,OAAA;AAM1B,SAAS;AACT,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAGlB,eAAe;AACf,yCAYqB;AAXnB,wGAAA,WAAW,OAAA;AACX,0GAAA,aAAa,OAAA;AACb,0GAAA,aAAa,OAAA;AACb,4GAAA,eAAe,OAAA;AACf,+GAAA,kBAAkB,OAAA;AAClB,iHAAA,oBAAoB,OAAA;AACpB,4GAAA,eAAe,OAAA;AACf,8GAAA,iBAAiB,OAAA;AACjB,0HAAA,6BAA6B,OAAA;AAC7B,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AAId,UAAU;AACV,mCAAuE;AAA9D,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,uGAAA,aAAa,OAAA;AAepD,2CAQsB;AAPpB,iHAAA,mBAAmB,OAAA;AACnB,+HAAA,iCAAiC,OAAA;AACjC,+GAAA,iBAAiB,OAAA;AACjB,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,yHAAA,2BAA2B,OAAA;AAC3B,gHAAA,kBAAkB,OAAA;AAKpB,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAE/B,uEAAuE;AACvE,iDAAmG;AAA1F,kIAAA,iCAAiC,OAAA;AAAE,8HAAA,6BAA6B,OAAA;AAUzE,uEAAuE;AACvE,uEAAuE;AACvE,sEAAsE;AACtE,2DAA2D;AAC3D,uEAGoC;AAFlC,8IAAA,kCAAkC,OAAA;AAClC,2IAAA,+BAA+B,OAAA;AAGjC,0EAA0E;AAC1E,yEAAyE;AACzE,0DAA0D;AAC1D,uCAIoB;AAHlB,kHAAA,sBAAsB,OAAA;AACtB,wHAAA,4BAA4B,OAAA;AAC5B,yHAAA,6BAA6B,OAAA"}
package/dist/map.d.ts CHANGED
@@ -45,6 +45,21 @@ export interface ToPeacRecordOptions {
45
45
  * Maximum compact JWS byte length for payload extraction
46
46
  */
47
47
  maxCompactJwsBytes?: number;
48
+ /**
49
+ * Preserve the raw settlement `extensions` bag as a canonical JSON
50
+ * clone under `proofs.x402.settlementExtensions`, in addition to the always-on
51
+ * `settlementExtensionsDigest`. Default: false.
52
+ *
53
+ * Privacy note: the settlement `extensions` bag is upstream
54
+ * protocol-extension data (e.g. batch-settlement, or sibling
55
+ * extensions this adapter does not interpret) and MAY carry payer- or
56
+ * resource-correlating material. The digest-by-default posture avoids
57
+ * storing that raw material in the emitted PEAC record unless
58
+ * explicitly opted in. The preserved value is a clone derived from the
59
+ * bounded canonical (RFC 8785 JCS) bytes, never the caller's live
60
+ * object reference.
61
+ */
62
+ preserveRawSettlementExtensions?: boolean;
48
63
  }
49
64
  /**
50
65
  * Map x402 payment flow to a PEAC interaction record
@@ -76,6 +91,14 @@ export interface ToPeacRecordV2Options {
76
91
  cryptoResult?: CryptoResult;
77
92
  /** Signer authorization result */
78
93
  authorizationResult?: AuthorizationResult;
94
+ /**
95
+ * Preserve the raw settlement `extensions` bag as a canonical JSON
96
+ * clone under `proofs.x402.settlementExtensions`, in addition to the always-on
97
+ * `settlementExtensionsDigest`. Default: false. See
98
+ * `ToPeacRecordOptions.preserveRawSettlementExtensions` for the
99
+ * privacy rationale (identical semantics for V2).
100
+ */
101
+ preserveRawSettlementExtensions?: boolean;
79
102
  }
80
103
  /**
81
104
  * Map V2 x402 payment flow to a PEAC interaction record.
package/dist/map.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,cAAc,EAEd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;OAEG;IACH,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,eAAe,EAAE,yBAAyB,EAC1C,kBAAkB,EAAE,sBAAsB,EAC1C,OAAO,CAAC,EAAE,mBAAmB,GAC5B,cAAc,CA2HhB;AAMD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,sCAAsC;IACtC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,uDAAuD;IACvD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iCAAiC;IACjC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,gBAAgB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,cAAc,CAsEhB;AAMD;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAMpF"}
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAMxD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKhF,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,cAAc,EAEd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAyGpB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;OAEG;IACH,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;;;;OAaG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,eAAe,EAAE,yBAAyB,EAC1C,kBAAkB,EAAE,sBAAsB,EAC1C,OAAO,CAAC,EAAE,mBAAmB,GAC5B,cAAc,CAkIhB;AAMD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,sCAAsC;IACtC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,uDAAuD;IACvD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iCAAiC;IACjC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;;;;OAMG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,gBAAgB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,cAAc,CA6EhB;AAMD;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAMpF"}
package/dist/map.js CHANGED
@@ -12,11 +12,96 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.toPeacRecord = toPeacRecord;
13
13
  exports.toPeacRecordV2 = toPeacRecordV2;
14
14
  exports.toPeacCarrier = toPeacCarrier;
15
+ const node_crypto_1 = require("node:crypto");
16
+ const kernel_1 = require("@peac/kernel");
15
17
  const schema_1 = require("@peac/schema");
18
+ const crypto_1 = require("@peac/crypto");
16
19
  const errors_js_1 = require("./errors.js");
17
20
  const raw_js_1 = require("./raw.js");
18
21
  const normalize_js_1 = require("./normalize.js");
22
+ const settlement_extensions_js_1 = require("./settlement-extensions.js");
19
23
  const types_js_1 = require("./types.js");
24
+ // ---------------------------------------------------------------------------
25
+ // Settlement extensions (proofs.x402), shared by V1 and V2 mapping
26
+ // ---------------------------------------------------------------------------
27
+ /**
28
+ * Canonicalize a settlement `extensions` object for bounding + digesting,
29
+ * converting any canonicalization failure into the stable adapter-local
30
+ * `settlement_extensions_invalid` error. A public JS caller could pass a
31
+ * value that is not JSON-canonicalizable (cyclic references, `BigInt`, or
32
+ * other non-JSON types); those must fail closed with a stable protocol
33
+ * code rather than leaking a raw `TypeError`/`RangeError`. The raw
34
+ * extension value is never included in the error message.
35
+ *
36
+ * Note: `undefined` object-member values are omitted by `canonicalize`
37
+ * (RFC 8785 / `JSON.stringify` semantics), not treated as an error.
38
+ */
39
+ function canonicalizeSettlementExtensions(extensions) {
40
+ try {
41
+ return (0, crypto_1.canonicalize)(extensions);
42
+ }
43
+ catch {
44
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement extensions must be JSON-canonicalizable');
45
+ }
46
+ }
47
+ /**
48
+ * Applies settlement `extensions` (x402 protocol-extension passthrough
49
+ * data) to a PEAC record's `proofs.x402` bundle, in place.
50
+ *
51
+ * Privacy-hardened default: only a stable content digest
52
+ * (`settlementExtensionsDigest`) is added, computed over the RFC 8785 JCS
53
+ * canonicalization of `extensions`. The SAME canonical bytes are used for
54
+ * both the DoS bound and the digest (computed once), avoiding a
55
+ * bound/digest mismatch. The digest is byte-identical to
56
+ * `computeJsonDocumentDigestJcs(extensions)` from `@peac/protocol`; it is
57
+ * computed here via Node's synchronous `createHash` instead so that
58
+ * `toPeacRecord`/`toPeacRecordV2` remain synchronous public APIs.
59
+ *
60
+ * Raw `extensions` are preserved under `proofs.x402.settlementExtensions`
61
+ * ONLY when `preserveRaw` is true, and the preserved object is derived
62
+ * from the already-bounded canonical string (`JSON.parse(canonical)`),
63
+ * never the caller's live object reference, so later caller-side
64
+ * mutation of the input cannot alter the emitted record.
65
+ *
66
+ * Also enforces a receipt-consistency guard: if `extensions` embeds a
67
+ * signed receipt via the offer-receipt extension
68
+ * (`extensions["offer-receipt"].info.receipt`) that structurally differs
69
+ * from the receipt already present at `proofsX402.receipt`, the record
70
+ * would carry two conflicting receipts, so mapping fails closed instead.
71
+ *
72
+ * No-op (byte-identical output) when `extensions` is `undefined`.
73
+ *
74
+ * @throws X402Error `settlement_extensions_too_large` if the canonical
75
+ * serialization exceeds `MAX_SETTLEMENT_EXTENSIONS_BYTES`.
76
+ * @throws X402Error `settlement_extensions_invalid` if `extensions`
77
+ * embeds a receipt that conflicts with `proofsX402.receipt`, if the
78
+ * embedded offer-receipt extension is structurally malformed, or if
79
+ * `extensions` is not JSON-canonicalizable.
80
+ */
81
+ function applySettlementExtensions(proofsX402, extensions, preserveRaw) {
82
+ if (extensions === undefined) {
83
+ return;
84
+ }
85
+ const canonical = canonicalizeSettlementExtensions(extensions);
86
+ const byteLength = Buffer.byteLength(canonical, 'utf8');
87
+ if (byteLength > settlement_extensions_js_1.MAX_SETTLEMENT_EXTENSIONS_BYTES) {
88
+ throw new errors_js_1.X402Error('settlement_extensions_too_large', `Settlement extensions canonical serialization (${byteLength} bytes) exceeds the ${settlement_extensions_js_1.MAX_SETTLEMENT_EXTENSIONS_BYTES} byte limit`);
89
+ }
90
+ // Enforce receipt consistency using the same extraction path exposed
91
+ // to callers, so the offer-receipt nesting walk has one source of truth.
92
+ const embeddedReceipt = (0, settlement_extensions_js_1.extractSignedReceiptFromSettlement)({ extensions });
93
+ if (embeddedReceipt !== null &&
94
+ (0, crypto_1.canonicalize)(embeddedReceipt) !== (0, crypto_1.canonicalize)(proofsX402.receipt)) {
95
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement extensions embed a receipt that conflicts with proofs.x402.receipt');
96
+ }
97
+ const digestHex = (0, node_crypto_1.createHash)('sha256').update(canonical, 'utf8').digest('hex');
98
+ proofsX402.settlementExtensionsDigest = `${kernel_1.HASH.prefix}${digestHex}`;
99
+ if (preserveRaw) {
100
+ // Derive the preserved object from the bounded canonical bytes,
101
+ // never the caller's live object reference.
102
+ proofsX402.settlementExtensions = JSON.parse(canonical);
103
+ }
104
+ }
20
105
  /**
21
106
  * Map x402 payment flow to a PEAC interaction record
22
107
  *
@@ -107,13 +192,15 @@ function toPeacRecord(paymentRequired, settlementResponse, options) {
107
192
  }),
108
193
  };
109
194
  hints.verification = verification;
195
+ const proofsX402 = {
196
+ offer, // exact raw artifact, never mutated
197
+ receipt, // exact raw artifact, never mutated
198
+ };
199
+ applySettlementExtensions(proofsX402, settlementResponse.extensions, options?.preserveRawSettlementExtensions ?? false);
110
200
  return {
111
201
  version: types_js_1.X402_OFFER_RECEIPT_PROFILE,
112
202
  proofs: {
113
- x402: {
114
- offer, // exact raw artifact, never mutated
115
- receipt, // exact raw artifact, never mutated
116
- },
203
+ x402: proofsX402,
117
204
  },
118
205
  evidence: {
119
206
  resourceUrl: offerPayload.resourceUrl,
@@ -186,13 +273,15 @@ function toPeacRecordV2(offer, receipt, rawOffer, rawReceipt, options) {
186
273
  }),
187
274
  };
188
275
  hints.verification = verification;
276
+ const proofsX402 = {
277
+ offer: rawOffer,
278
+ receipt: rawReceipt,
279
+ };
280
+ applySettlementExtensions(proofsX402, receipt.extensions, options?.preserveRawSettlementExtensions ?? false);
189
281
  return {
190
282
  version: types_js_1.X402_OFFER_RECEIPT_PROFILE,
191
283
  proofs: {
192
- x402: {
193
- offer: rawOffer,
194
- receipt: rawReceipt,
195
- },
284
+ x402: proofsX402,
196
285
  },
197
286
  evidence: {
198
287
  resourceUrl: offer.resource.url,
package/dist/map.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"map.js","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"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"}
@@ -65,6 +65,17 @@ export interface NormalizedV2Receipt {
65
65
  resourceUrl: string;
66
66
  /** Receipt issuance timestamp in epoch seconds (caller-supplied from response timing) */
67
67
  issuedAt: number;
68
+ /**
69
+ * Upstream protocol-extensions data (optional), carried through
70
+ * unchanged from `RawV2SettlementResponseSuccess.extensions` when
71
+ * present.
72
+ *
73
+ * This is a raw/normalized pass-through only: no PEAC semantics are
74
+ * added here. The mapper (`map.ts` `toPeacRecordV2`) applies the
75
+ * privacy-hardened default (digest under `proofs.x402`, raw preservation
76
+ * opt-in) when building the emitted record.
77
+ */
78
+ extensions?: Record<string, unknown>;
68
79
  }
69
80
  /**
70
81
  * Normalize a V2 PaymentRequired accept entry into a NormalizedV2Offer.
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-v2.d.ts","sourceRoot":"","sources":["../src/normalize-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAMrB;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,OAAO,EAAE,CAAC,CAAC;IACX,6BAA6B;IAC7B,QAAQ,EAAE,aAAa,CAAC;IACxB,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,OAAO,EAAE,CAAC,CAAC;IACX,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,0BAA0B,EAClC,QAAQ,EAAE,aAAa,GACtB,iBAAiB,CAYnB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,GAAG,iBAAiB,EAAE,CAEtF;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,uBAAuB,EACnC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,mBAAmB,GAAG,IAAI,CAa5B"}
1
+ {"version":3,"file":"normalize-v2.d.ts","sourceRoot":"","sources":["../src/normalize-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAMrB;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,OAAO,EAAE,CAAC,CAAC;IACX,6BAA6B;IAC7B,QAAQ,EAAE,aAAa,CAAC;IACxB,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,OAAO,EAAE,CAAC,CAAC;IACX,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAMD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,0BAA0B,EAClC,QAAQ,EAAE,aAAa,GACtB,iBAAiB,CAYnB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,GAAG,iBAAiB,EAAE,CAEtF;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,uBAAuB,EACnC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,mBAAmB,GAAG,IAAI,CAc5B"}
@@ -83,6 +83,7 @@ function normalizeV2Receipt(settlement, resourceUrl, issuedAt) {
83
83
  resourceUrl,
84
84
  issuedAt,
85
85
  ...(settlement.transaction && { transaction: settlement.transaction }),
86
+ ...(settlement.extensions !== undefined && { extensions: settlement.extensions }),
86
87
  };
87
88
  }
88
89
  //# sourceMappingURL=normalize-v2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-v2.js","sourceRoot":"","sources":["../src/normalize-v2.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AA+EH,4CAeC;AAQD,8CAEC;AAoBD,gDAiBC;AA5ED,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAC9B,MAAkC,EAClC,QAAuB;IAEvB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,QAAQ;QACR,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,SAA+B;IAC/D,OAAO,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;;;;;;;;GAaG;AACH,SAAgB,kBAAkB,CAChC,UAAmC,EACnC,WAAmB,EACnB,QAAgB;IAEhB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,WAAW;QACX,QAAQ;QACR,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;KACvE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"normalize-v2.js","sourceRoot":"","sources":["../src/normalize-v2.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AA0FH,4CAeC;AAQD,8CAEC;AAoBD,gDAkBC;AA7ED,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAC9B,MAAkC,EAClC,QAAuB;IAEvB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,QAAQ;QACR,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,SAA+B;IAC/D,OAAO,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;;;;;;;;GAaG;AACH,SAAgB,kBAAkB,CAChC,UAAmC,EACnC,WAAmB,EACnB,QAAgB;IAEhB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,WAAW;QACX,QAAQ;QACR,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;QACtE,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;KAClF,CAAC;AACJ,CAAC"}
package/dist/raw-v2.d.ts CHANGED
@@ -122,6 +122,21 @@ export interface RawV2SettlementResponseSuccess {
122
122
  network: string;
123
123
  /** Payer address */
124
124
  payer: string;
125
+ /**
126
+ * Upstream protocol-extensions data (optional).
127
+ *
128
+ * Mirrors `SettleResponse.extensions?: Record<string, unknown>` from
129
+ * upstream x402-foundation/x402
130
+ * (`typescript/packages/core/src/types/facilitator.ts`), a generic
131
+ * protocol-extension passthrough field that pre-dates the offer-receipt
132
+ * extension (PR #1003). The "Signed Offers & Receipts" extension places
133
+ * a signed receipt at `extensions["offer-receipt"].info.receipt`
134
+ * (specs/extensions/extension-offer-and-receipt.md Section 5.1, pinned
135
+ * commit f2bbb5c); sibling extensions (e.g. batch-settlement) may use
136
+ * other keys under this same bag. Raw pass-through only: no PEAC
137
+ * semantics are added at this layer (see normalize-v2.ts / map.ts).
138
+ */
139
+ extensions?: Record<string, unknown>;
125
140
  }
126
141
  /**
127
142
  * V2 SettlementResponse (failure).
@@ -138,6 +153,16 @@ export interface RawV2SettlementResponseFailure {
138
153
  network: string;
139
154
  /** Payer address */
140
155
  payer: string;
156
+ /**
157
+ * Upstream protocol-extensions data (optional).
158
+ *
159
+ * See `RawV2SettlementResponseSuccess.extensions` for the field's
160
+ * provenance and semantics. Present on the unified upstream
161
+ * `SettleResponse` shape regardless of `success`; PEAC's V2
162
+ * normalization (`normalizeV2Receipt`) only carries it forward on the
163
+ * success path, since failed settlements do not produce a receipt.
164
+ */
165
+ extensions?: Record<string, unknown>;
141
166
  }
142
167
  /** Discriminated union of V2 settlement response outcomes */
143
168
  export type RawV2SettlementResponse = RawV2SettlementResponseSuccess | RawV2SettlementResponseFailure;
@@ -1 +1 @@
1
- {"version":3,"file":"raw-v2.d.ts","sourceRoot":"","sources":["../src/raw-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,sCAAsC;IACtC,WAAW,EAAE,CAAC,CAAC;IACf,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,QAAQ,EAAE,aAAa,CAAC;IACxB,0CAA0C;IAC1C,OAAO,EAAE,0BAA0B,EAAE,CAAC;CACvC;AAMD;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,aAAa,EAAE,yBAAyB,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,WAAW,EAAE,CAAC,CAAC;IACf,8BAA8B;IAC9B,QAAQ,EAAE,aAAa,CAAC;IACxB,gEAAgE;IAChE,QAAQ,EAAE,0BAA0B,CAAC;IACrC,yBAAyB;IACzB,OAAO,EAAE,qBAAqB,CAAC;CAChC;AAMD;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,IAAI,CAAC;IACd,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,KAAK,CAAC;IACf,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,6DAA6D;AAC7D,MAAM,MAAM,uBAAuB,GAC/B,8BAA8B,GAC9B,8BAA8B,CAAC;AAMnC;;;GAGG;AACH,eAAO,MAAM,eAAe;IAC1B,6CAA6C;;IAE7C,4CAA4C;;IAE5C,iDAAiD;;CAEzC,CAAC"}
1
+ {"version":3,"file":"raw-v2.d.ts","sourceRoot":"","sources":["../src/raw-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,sCAAsC;IACtC,WAAW,EAAE,CAAC,CAAC;IACf,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,QAAQ,EAAE,aAAa,CAAC;IACxB,0CAA0C;IAC1C,OAAO,EAAE,0BAA0B,EAAE,CAAC;CACvC;AAMD;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,aAAa,EAAE,yBAAyB,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,WAAW,EAAE,CAAC,CAAC;IACf,8BAA8B;IAC9B,QAAQ,EAAE,aAAa,CAAC;IACxB,gEAAgE;IAChE,QAAQ,EAAE,0BAA0B,CAAC;IACrC,yBAAyB;IACzB,OAAO,EAAE,qBAAqB,CAAC;CAChC;AAMD;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,IAAI,CAAC;IACd,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;;;GAIG;AACH,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,KAAK,CAAC;IACf,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,6DAA6D;AAC7D,MAAM,MAAM,uBAAuB,GAC/B,8BAA8B,GAC9B,8BAA8B,CAAC;AAMnC;;;GAGG;AACH,eAAO,MAAM,eAAe;IAC1B,6CAA6C;;IAE7C,4CAA4C;;IAE5C,iDAAiD;;CAEzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"raw-v2.js","sourceRoot":"","sources":["../src/raw-v2.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;AAuJH,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC7B,6CAA6C;IAC7C,gBAAgB,EAAE,kBAAkB;IACpC,4CAA4C;IAC5C,iBAAiB,EAAE,mBAAmB;IACtC,iDAAiD;IACjD,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC"}
1
+ {"version":3,"file":"raw-v2.js","sourceRoot":"","sources":["../src/raw-v2.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;AAgLH,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC7B,6CAA6C;IAC7C,gBAAgB,EAAE,kBAAkB;IACpC,4CAA4C;IAC5C,iBAAiB,EAAE,mBAAmB;IACtC,iDAAiD;IACjD,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * x402 settlement-extensions receipt extraction (Layer C convenience)
3
+ *
4
+ * Upstream x402's "Signed Offers & Receipts" extension places a signed
5
+ * receipt on the settlement/200 response at
6
+ * `extensions["offer-receipt"].info.receipt`
7
+ * (x402-foundation/x402 commit f2bbb5c,
8
+ * specs/extensions/extension-offer-and-receipt.md Section 5.1). This
9
+ * placement is identical for x402 v1 (`X402SettlementResponse.extensions`)
10
+ * and v2 (`NormalizedV2Receipt.extensions`, mirroring upstream
11
+ * `SettleResponse.extensions?: Record<string, unknown>` from
12
+ * `typescript/packages/core/src/types/facilitator.ts`).
13
+ *
14
+ * `extractSignedReceiptFromSettlement` narrows a settlement-shaped object
15
+ * down to the embedded signed receipt artifact, if present. It reuses
16
+ * `extractExtensionInfo` (raw.ts) for the documented challenge-side shape
17
+ * where `offers` is present (e.g. an empty array). A settlement response
18
+ * may also carry `extensions["offer-receipt"].info.receipt` with no
19
+ * `offers` key at all: there is nothing left to offer once payment has
20
+ * settled. `extractExtensionInfo` requires `offers` to be an array
21
+ * (challenge-side contract) and returns `null` when it is absent, so that
22
+ * settlement-only shape is narrowed to `.receipt` independently below.
23
+ * Structural validation (object-shape checks at each nesting level, and
24
+ * the signed-receipt envelope discriminant) is performed directly in this
25
+ * module so malformed input can fail closed with `settlement_extensions_invalid`;
26
+ * `extractExtensionInfo` returns `null` for any anomaly instead of
27
+ * throwing, which is the right default for its own challenge-side callers
28
+ * but not strict enough for this extraction path.
29
+ *
30
+ * This is extraction only: it does NOT verify the receipt's signature.
31
+ * Callers must verify the returned artifact with the appropriate
32
+ * x402/JWS/EIP-712 verifier.
33
+ */
34
+ import type { RawSignedReceipt } from './raw.js';
35
+ /**
36
+ * Maximum bytes for the RFC 8785 (JCS) canonical serialization of a
37
+ * settlement `extensions` bag. Enforced by the mapper (`map.ts`) before
38
+ * digesting or preserving the raw bag (DoS bound); exported so callers
39
+ * share a single constant.
40
+ */
41
+ export declare const MAX_SETTLEMENT_EXTENSIONS_BYTES: number;
42
+ /**
43
+ * Extracts a signed receipt artifact from an x402 settlement response.
44
+ * This helper does not verify the receipt signature; callers must verify
45
+ * the returned artifact with the appropriate x402/JWS/EIP-712 verifier.
46
+ */
47
+ export declare function extractSignedReceiptFromSettlement(settlement: unknown): RawSignedReceipt | null;
48
+ //# sourceMappingURL=settlement-extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement-extensions.d.ts","sourceRoot":"","sources":["../src/settlement-extensions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAIH,OAAO,KAAK,EACV,gBAAgB,EAIjB,MAAM,UAAU,CAAC;AAElB;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,QAAa,CAAC;AAwD1D;;;;GAIG;AACH,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CA+D/F"}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ /**
3
+ * x402 settlement-extensions receipt extraction (Layer C convenience)
4
+ *
5
+ * Upstream x402's "Signed Offers & Receipts" extension places a signed
6
+ * receipt on the settlement/200 response at
7
+ * `extensions["offer-receipt"].info.receipt`
8
+ * (x402-foundation/x402 commit f2bbb5c,
9
+ * specs/extensions/extension-offer-and-receipt.md Section 5.1). This
10
+ * placement is identical for x402 v1 (`X402SettlementResponse.extensions`)
11
+ * and v2 (`NormalizedV2Receipt.extensions`, mirroring upstream
12
+ * `SettleResponse.extensions?: Record<string, unknown>` from
13
+ * `typescript/packages/core/src/types/facilitator.ts`).
14
+ *
15
+ * `extractSignedReceiptFromSettlement` narrows a settlement-shaped object
16
+ * down to the embedded signed receipt artifact, if present. It reuses
17
+ * `extractExtensionInfo` (raw.ts) for the documented challenge-side shape
18
+ * where `offers` is present (e.g. an empty array). A settlement response
19
+ * may also carry `extensions["offer-receipt"].info.receipt` with no
20
+ * `offers` key at all: there is nothing left to offer once payment has
21
+ * settled. `extractExtensionInfo` requires `offers` to be an array
22
+ * (challenge-side contract) and returns `null` when it is absent, so that
23
+ * settlement-only shape is narrowed to `.receipt` independently below.
24
+ * Structural validation (object-shape checks at each nesting level, and
25
+ * the signed-receipt envelope discriminant) is performed directly in this
26
+ * module so malformed input can fail closed with `settlement_extensions_invalid`;
27
+ * `extractExtensionInfo` returns `null` for any anomaly instead of
28
+ * throwing, which is the right default for its own challenge-side callers
29
+ * but not strict enough for this extraction path.
30
+ *
31
+ * This is extraction only: it does NOT verify the receipt's signature.
32
+ * Callers must verify the returned artifact with the appropriate
33
+ * x402/JWS/EIP-712 verifier.
34
+ */
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.MAX_SETTLEMENT_EXTENSIONS_BYTES = void 0;
37
+ exports.extractSignedReceiptFromSettlement = extractSignedReceiptFromSettlement;
38
+ const errors_js_1 = require("./errors.js");
39
+ const raw_js_1 = require("./raw.js");
40
+ /**
41
+ * Maximum bytes for the RFC 8785 (JCS) canonical serialization of a
42
+ * settlement `extensions` bag. Enforced by the mapper (`map.ts`) before
43
+ * digesting or preserving the raw bag (DoS bound); exported so callers
44
+ * share a single constant.
45
+ */
46
+ exports.MAX_SETTLEMENT_EXTENSIONS_BYTES = 256 * 1024;
47
+ function isPlainObject(value) {
48
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
49
+ }
50
+ /**
51
+ * Validate and narrow a raw `info.receipt` value to the `RawSignedReceipt`
52
+ * discriminated union (`RawJWSSignedReceipt | RawEIP712SignedReceipt`).
53
+ * Enforces the compact-JWS byte bound on the JWS branch via
54
+ * `parseCompactJWS` (the parsed result is discarded; only the raw compact
55
+ * JWS string is preserved, matching the challenge-side extraction
56
+ * discipline in raw.ts).
57
+ */
58
+ function asSignedReceiptEnvelope(value) {
59
+ const format = value.format;
60
+ if (format === 'jws') {
61
+ const signature = value.signature;
62
+ if (typeof signature !== 'string') {
63
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement offer-receipt JWS receipt is missing a signature string');
64
+ }
65
+ // Enforce the same compact-JWS byte bound as the challenge-side path.
66
+ // Throws jws_too_large / jws_malformed / jws_padded_base64url /
67
+ // jws_payload_not_object as appropriate; those codes propagate as-is.
68
+ (0, raw_js_1.parseCompactJWS)(signature);
69
+ const receipt = { format: 'jws', signature };
70
+ return receipt;
71
+ }
72
+ if (format === 'eip712') {
73
+ const signature = value.signature;
74
+ const payload = value.payload;
75
+ if (typeof signature !== 'string' || !isPlainObject(payload)) {
76
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement offer-receipt EIP-712 receipt is missing payload/signature');
77
+ }
78
+ const receipt = {
79
+ format: 'eip712',
80
+ payload: payload,
81
+ signature,
82
+ };
83
+ return receipt;
84
+ }
85
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement offer-receipt receipt has an unrecognized format');
86
+ }
87
+ /**
88
+ * Extracts a signed receipt artifact from an x402 settlement response.
89
+ * This helper does not verify the receipt signature; callers must verify
90
+ * the returned artifact with the appropriate x402/JWS/EIP-712 verifier.
91
+ */
92
+ function extractSignedReceiptFromSettlement(settlement) {
93
+ if (!isPlainObject(settlement)) {
94
+ return null;
95
+ }
96
+ const extensions = settlement.extensions;
97
+ if (extensions === undefined) {
98
+ return null;
99
+ }
100
+ if (!isPlainObject(extensions)) {
101
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'settlement.extensions must be a JSON object');
102
+ }
103
+ const offerReceipt = extensions[raw_js_1.OFFER_RECEIPT];
104
+ if (offerReceipt === undefined) {
105
+ return null;
106
+ }
107
+ if (!isPlainObject(offerReceipt)) {
108
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', `settlement.extensions["${raw_js_1.OFFER_RECEIPT}"] must be a JSON object`);
109
+ }
110
+ const info = offerReceipt.info;
111
+ if (!isPlainObject(info)) {
112
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', `settlement.extensions["${raw_js_1.OFFER_RECEIPT}"].info must be a JSON object`);
113
+ }
114
+ // Reuse the shared upstream nesting walk for the documented shape where
115
+ // `offers` is present (e.g. an empty array, matching the challenge-side
116
+ // contract). Fall back to an independent narrow-to-`.receipt` when
117
+ // `offers` is absent entirely (a settlement-only shape).
118
+ const extracted = (0, raw_js_1.extractExtensionInfo)(settlement);
119
+ const rawReceipt = extracted?.receipt ?? info.receipt;
120
+ if (rawReceipt === undefined) {
121
+ return null;
122
+ }
123
+ if (!isPlainObject(rawReceipt)) {
124
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', `settlement.extensions["${raw_js_1.OFFER_RECEIPT}"].info.receipt must be a JSON object`);
125
+ }
126
+ // The x402 offer-receipt extension places receipts on settlement
127
+ // success (Section 5.1). A `success:false` settlement embedding a
128
+ // receipt fails closed instead of being silently preserved.
129
+ if (settlement.success === false) {
130
+ throw new errors_js_1.X402Error('settlement_extensions_invalid', 'Settlement extensions embed a receipt on a failed (success:false) settlement');
131
+ }
132
+ return asSignedReceiptEnvelope(rawReceipt);
133
+ }
134
+ //# sourceMappingURL=settlement-extensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement-extensions.js","sourceRoot":"","sources":["../src/settlement-extensions.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -281,6 +281,25 @@ export interface X402PeacRecord {
281
281
  x402: {
282
282
  offer: RawSignedOffer;
283
283
  receipt: RawSignedReceipt;
284
+ /**
285
+ * Integrity/correlation digest over the settlement `extensions`
286
+ * bag (RFC 8785 JCS canonicalization + SHA-256,
287
+ * `sha256:<64 lowercase hex>`), present whenever the settlement
288
+ * response carried an `extensions` object. This is a stable
289
+ * equality handle, NOT anonymization: two records preserving the
290
+ * same upstream settlement extensions share this digest.
291
+ */
292
+ settlementExtensionsDigest?: string;
293
+ /**
294
+ * Raw settlement `extensions` bag, preserved as a canonical JSON
295
+ * clone (derived from the bounded RFC 8785 JCS bytes, not the
296
+ * caller's original object reference or byte serialization) ONLY
297
+ * when mapping was performed with `preserveRawSettlementExtensions:
298
+ * true` (default: omitted). May carry upstream protocol-extension
299
+ * data (e.g. payer- or resource-correlating material); never
300
+ * copied into signed `evidence`.
301
+ */
302
+ settlementExtensions?: Record<string, unknown>;
284
303
  };
285
304
  };
286
305
  /** Normalized evidence fields (extracted from signed payloads via Layer B) */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAgcH,4DAKC;AA/aD,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;;;;;GAOG;AACU,QAAA,0BAA0B,GAAG,6BAAsC,CAAC;AAEjF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;GAKG;AACU,QAAA,kBAAkB,GAAG,GAAG,CAAC;AAEtC;;;;;GAKG;AACU,QAAA,uBAAuB,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,UAAU;AAE7D;;;;GAIG;AACU,QAAA,iBAAiB,GAAG,EAAE,CAAC;AA6XpC;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,CAAS,EAAE,CAAS,EAAE,OAAe;IAC5E,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAmdH,4DAKC;AAlcD,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;;;;;GAOG;AACU,QAAA,0BAA0B,GAAG,6BAAsC,CAAC;AAEjF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;GAKG;AACU,QAAA,kBAAkB,GAAG,GAAG,CAAC;AAEtC;;;;;GAKG;AACU,QAAA,uBAAuB,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,UAAU;AAE7D;;;;GAIG;AACU,QAAA,iBAAiB,GAAG,EAAE,CAAC;AAgZpC;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,CAAS,EAAE,CAAS,EAAE,OAAe;IAC5E,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peac/adapter-x402",
3
- "version": "0.16.1",
3
+ "version": "0.16.2",
4
4
  "description": "x402 offer/receipt verification, term-matching, and PEAC record mapping",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,11 +19,11 @@
19
19
  "access": "public"
20
20
  },
21
21
  "dependencies": {
22
- "@peac/adapter-core": "0.16.1",
23
- "@peac/kernel": "0.16.1",
24
- "@peac/crypto": "0.16.1",
25
- "@peac/protocol": "0.16.1",
26
- "@peac/schema": "0.16.1"
22
+ "@peac/adapter-core": "0.16.2",
23
+ "@peac/crypto": "0.16.2",
24
+ "@peac/protocol": "0.16.2",
25
+ "@peac/kernel": "0.16.2",
26
+ "@peac/schema": "0.16.2"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/node": "^22.19.11",