@miradexio/client 0.1.1 → 0.1.3

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 (317) hide show
  1. package/README.md +57 -292
  2. package/dist/address/base58.d.ts.map +1 -1
  3. package/dist/address/base58.js +1 -2
  4. package/dist/address/base58.js.map +1 -1
  5. package/dist/address/bech32.d.ts +0 -8
  6. package/dist/address/bech32.d.ts.map +1 -1
  7. package/dist/address/bech32.js +3 -9
  8. package/dist/address/bech32.js.map +1 -1
  9. package/dist/address/evm.d.ts.map +1 -1
  10. package/dist/address/evm.js +1 -2
  11. package/dist/address/evm.js.map +1 -1
  12. package/dist/address/index.d.ts +0 -6
  13. package/dist/address/index.d.ts.map +1 -1
  14. package/dist/address/index.js +6 -9
  15. package/dist/address/index.js.map +1 -1
  16. package/dist/address/monero.d.ts +0 -10
  17. package/dist/address/monero.d.ts.map +1 -1
  18. package/dist/address/monero.js +4 -10
  19. package/dist/address/monero.js.map +1 -1
  20. package/dist/address/polkadot.d.ts +0 -5
  21. package/dist/address/polkadot.d.ts.map +1 -1
  22. package/dist/address/polkadot.js +2 -6
  23. package/dist/address/polkadot.js.map +1 -1
  24. package/dist/address/ton.d.ts +0 -6
  25. package/dist/address/ton.d.ts.map +1 -1
  26. package/dist/address/ton.js +3 -8
  27. package/dist/address/ton.js.map +1 -1
  28. package/dist/api/index.d.ts +0 -19
  29. package/dist/api/index.d.ts.map +1 -1
  30. package/dist/api/index.js +18 -37
  31. package/dist/api/index.js.map +1 -1
  32. package/dist/atomic-swap/drive.d.ts +0 -13
  33. package/dist/atomic-swap/drive.d.ts.map +1 -1
  34. package/dist/atomic-swap/drive.js +72 -114
  35. package/dist/atomic-swap/drive.js.map +1 -1
  36. package/dist/atomic-swap/extract.d.ts +0 -23
  37. package/dist/atomic-swap/extract.d.ts.map +1 -1
  38. package/dist/atomic-swap/extract.js +6 -16
  39. package/dist/atomic-swap/extract.js.map +1 -1
  40. package/dist/atomic-swap/index.d.ts +0 -7
  41. package/dist/atomic-swap/index.d.ts.map +1 -1
  42. package/dist/atomic-swap/index.js +1 -7
  43. package/dist/atomic-swap/index.js.map +1 -1
  44. package/dist/atomic-swap/monero-sweep/errors.d.ts.map +1 -1
  45. package/dist/atomic-swap/monero-sweep/errors.js +5 -20
  46. package/dist/atomic-swap/monero-sweep/errors.js.map +1 -1
  47. package/dist/atomic-swap/monero-sweep/index.d.ts +1 -13
  48. package/dist/atomic-swap/monero-sweep/index.d.ts.map +1 -1
  49. package/dist/atomic-swap/monero-sweep/index.js +36 -65
  50. package/dist/atomic-swap/monero-sweep/index.js.map +1 -1
  51. package/dist/atomic-swap/monero-sweep/ring-select.d.ts +0 -4
  52. package/dist/atomic-swap/monero-sweep/ring-select.d.ts.map +1 -1
  53. package/dist/atomic-swap/monero-sweep/ring-select.js +9 -21
  54. package/dist/atomic-swap/monero-sweep/ring-select.js.map +1 -1
  55. package/dist/atomic-swap/presign.d.ts +0 -63
  56. package/dist/atomic-swap/presign.d.ts.map +1 -1
  57. package/dist/atomic-swap/presign.js +30 -90
  58. package/dist/atomic-swap/presign.js.map +1 -1
  59. package/dist/atomic-swap/refund.d.ts +0 -18
  60. package/dist/atomic-swap/refund.d.ts.map +1 -1
  61. package/dist/atomic-swap/refund.js +16 -32
  62. package/dist/atomic-swap/refund.js.map +1 -1
  63. package/dist/atomic-swap/run.d.ts +0 -17
  64. package/dist/atomic-swap/run.d.ts.map +1 -1
  65. package/dist/atomic-swap/run.js +11 -25
  66. package/dist/atomic-swap/run.js.map +1 -1
  67. package/dist/atomic-swap/snapshot.d.ts +0 -30
  68. package/dist/atomic-swap/snapshot.d.ts.map +1 -1
  69. package/dist/atomic-swap/snapshot.js +8 -23
  70. package/dist/atomic-swap/snapshot.js.map +1 -1
  71. package/dist/atomic-swap/submit-encsig.d.ts +0 -7
  72. package/dist/atomic-swap/submit-encsig.d.ts.map +1 -1
  73. package/dist/atomic-swap/submit-encsig.js +8 -15
  74. package/dist/atomic-swap/submit-encsig.js.map +1 -1
  75. package/dist/atomic-swap/types.d.ts +2 -55
  76. package/dist/atomic-swap/types.d.ts.map +1 -1
  77. package/dist/atomic-swap/types.js +2 -3
  78. package/dist/atomic-swap/types.js.map +1 -1
  79. package/dist/blockchain/quorum-provider.d.ts +0 -15
  80. package/dist/blockchain/quorum-provider.d.ts.map +1 -1
  81. package/dist/blockchain/quorum-provider.js +7 -9
  82. package/dist/blockchain/quorum-provider.js.map +1 -1
  83. package/dist/cooperative-redeem.d.ts +5 -14
  84. package/dist/cooperative-redeem.d.ts.map +1 -1
  85. package/dist/cooperative-redeem.js +3 -20
  86. package/dist/cooperative-redeem.js.map +1 -1
  87. package/dist/engine/blockchain-querier.d.ts +0 -22
  88. package/dist/engine/blockchain-querier.d.ts.map +1 -1
  89. package/dist/engine/engine-state.d.ts +0 -8
  90. package/dist/engine/engine-state.d.ts.map +1 -1
  91. package/dist/engine/engine-state.js.map +1 -1
  92. package/dist/engine/flow-context.d.ts +0 -20
  93. package/dist/engine/flow-context.d.ts.map +1 -1
  94. package/dist/engine/flow-context.js +17 -41
  95. package/dist/engine/flow-context.js.map +1 -1
  96. package/dist/engine/flows/atomic-flow-state.d.ts +8 -1
  97. package/dist/engine/flows/atomic-flow-state.d.ts.map +1 -1
  98. package/dist/engine/flows/atomic-flow.d.ts +1 -28
  99. package/dist/engine/flows/atomic-flow.d.ts.map +1 -1
  100. package/dist/engine/flows/atomic-flow.js +98 -128
  101. package/dist/engine/flows/atomic-flow.js.map +1 -1
  102. package/dist/engine/flows/error-routing.d.ts +11 -0
  103. package/dist/engine/flows/error-routing.d.ts.map +1 -0
  104. package/dist/engine/flows/error-routing.js +17 -0
  105. package/dist/engine/flows/error-routing.js.map +1 -0
  106. package/dist/engine/flows/swap-flow.d.ts +0 -19
  107. package/dist/engine/flows/swap-flow.d.ts.map +1 -1
  108. package/dist/engine/flows/swap-flow.js +41 -83
  109. package/dist/engine/flows/swap-flow.js.map +1 -1
  110. package/dist/engine/miradex-engine.d.ts +1 -62
  111. package/dist/engine/miradex-engine.d.ts.map +1 -1
  112. package/dist/engine/miradex-engine.js +18 -50
  113. package/dist/engine/miradex-engine.js.map +1 -1
  114. package/dist/engine/pipeline.d.ts +0 -11
  115. package/dist/engine/pipeline.d.ts.map +1 -1
  116. package/dist/engine/pipeline.js +11 -21
  117. package/dist/engine/pipeline.js.map +1 -1
  118. package/dist/engine/platform.d.ts +0 -160
  119. package/dist/engine/platform.d.ts.map +1 -1
  120. package/dist/engine/platform.js +2 -0
  121. package/dist/engine/platform.js.map +1 -1
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +7 -11
  124. package/dist/index.js.map +1 -1
  125. package/dist/interfaces/blockchain.d.ts +1 -13
  126. package/dist/interfaces/blockchain.d.ts.map +1 -1
  127. package/dist/interfaces/blockchain.js +1 -0
  128. package/dist/interfaces/blockchain.js.map +1 -1
  129. package/dist/interfaces/logger.d.ts +0 -6
  130. package/dist/interfaces/logger.d.ts.map +1 -1
  131. package/dist/interfaces/logger.js.map +1 -1
  132. package/dist/lib/bitcoin/deposit-watcher.d.ts +0 -23
  133. package/dist/lib/bitcoin/deposit-watcher.d.ts.map +1 -1
  134. package/dist/lib/bitcoin/deposit-watcher.js +7 -31
  135. package/dist/lib/bitcoin/deposit-watcher.js.map +1 -1
  136. package/dist/lib/bitcoin/script-hash.d.ts.map +1 -1
  137. package/dist/lib/bitcoin/script-hash.js +2 -6
  138. package/dist/lib/bitcoin/script-hash.js.map +1 -1
  139. package/dist/lib/bitcoin/sweep.d.ts +0 -30
  140. package/dist/lib/bitcoin/sweep.d.ts.map +1 -1
  141. package/dist/lib/bitcoin/sweep.js +11 -40
  142. package/dist/lib/bitcoin/sweep.js.map +1 -1
  143. package/dist/lib/bitcoin/tx-verify.d.ts +0 -28
  144. package/dist/lib/bitcoin/tx-verify.d.ts.map +1 -1
  145. package/dist/lib/bitcoin/tx-verify.js +20 -61
  146. package/dist/lib/bitcoin/tx-verify.js.map +1 -1
  147. package/dist/lib/bitcoin/wallet.d.ts +0 -38
  148. package/dist/lib/bitcoin/wallet.d.ts.map +1 -1
  149. package/dist/lib/bitcoin/wallet.js +13 -38
  150. package/dist/lib/bitcoin/wallet.js.map +1 -1
  151. package/dist/lib/crypto/bytes.d.ts +0 -14
  152. package/dist/lib/crypto/bytes.d.ts.map +1 -1
  153. package/dist/lib/crypto/bytes.js +5 -14
  154. package/dist/lib/crypto/bytes.js.map +1 -1
  155. package/dist/lib/crypto/errors.d.ts +0 -5
  156. package/dist/lib/crypto/errors.d.ts.map +1 -1
  157. package/dist/lib/crypto/errors.js +2 -5
  158. package/dist/lib/crypto/errors.js.map +1 -1
  159. package/dist/lib/crypto/libp2p-identity.d.ts +0 -15
  160. package/dist/lib/crypto/libp2p-identity.d.ts.map +1 -1
  161. package/dist/lib/crypto/libp2p-identity.js +16 -28
  162. package/dist/lib/crypto/libp2p-identity.js.map +1 -1
  163. package/dist/lib/crypto/mnemonic.d.ts +0 -9
  164. package/dist/lib/crypto/mnemonic.d.ts.map +1 -1
  165. package/dist/lib/crypto/mnemonic.js +11 -27
  166. package/dist/lib/crypto/mnemonic.js.map +1 -1
  167. package/dist/lib/crypto/platform.d.ts +0 -6
  168. package/dist/lib/crypto/platform.d.ts.map +1 -1
  169. package/dist/lib/crypto/platform.js +2 -6
  170. package/dist/lib/crypto/platform.js.map +1 -1
  171. package/dist/lib/crypto/scalars.d.ts +0 -23
  172. package/dist/lib/crypto/scalars.d.ts.map +1 -1
  173. package/dist/lib/crypto/scalars.js +10 -23
  174. package/dist/lib/crypto/scalars.js.map +1 -1
  175. package/dist/lib/crypto/types.d.ts +0 -4
  176. package/dist/lib/crypto/types.d.ts.map +1 -1
  177. package/dist/lib/crypto/wasm.d.ts +0 -23
  178. package/dist/lib/crypto/wasm.d.ts.map +1 -1
  179. package/dist/lib/crypto/wasm.js +9 -16
  180. package/dist/lib/crypto/wasm.js.map +1 -1
  181. package/dist/lib/default-config.d.ts +1 -59
  182. package/dist/lib/default-config.d.ts.map +1 -1
  183. package/dist/lib/default-config.js +22 -61
  184. package/dist/lib/default-config.js.map +1 -1
  185. package/dist/lib/errors.d.ts +0 -54
  186. package/dist/lib/errors.d.ts.map +1 -1
  187. package/dist/lib/errors.js +12 -35
  188. package/dist/lib/errors.js.map +1 -1
  189. package/dist/lib/keystore.d.ts +0 -24
  190. package/dist/lib/keystore.d.ts.map +1 -1
  191. package/dist/lib/keystore.js +3 -10
  192. package/dist/lib/keystore.js.map +1 -1
  193. package/dist/lib/monero/output-scanner.d.ts +0 -18
  194. package/dist/lib/monero/output-scanner.d.ts.map +1 -1
  195. package/dist/lib/monero/output-scanner.js +17 -40
  196. package/dist/lib/monero/output-scanner.js.map +1 -1
  197. package/dist/lib/monero/rpc.d.ts +0 -64
  198. package/dist/lib/monero/rpc.d.ts.map +1 -1
  199. package/dist/lib/monero/rpc.js +17 -59
  200. package/dist/lib/monero/rpc.js.map +1 -1
  201. package/dist/lib/monero/verify-lock.d.ts +0 -12
  202. package/dist/lib/monero/verify-lock.d.ts.map +1 -1
  203. package/dist/lib/monero/verify-lock.js +9 -24
  204. package/dist/lib/monero/verify-lock.js.map +1 -1
  205. package/dist/lib/monero/verify-sweep.d.ts +0 -20
  206. package/dist/lib/monero/verify-sweep.d.ts.map +1 -1
  207. package/dist/lib/monero/verify-sweep.js +7 -25
  208. package/dist/lib/monero/verify-sweep.js.map +1 -1
  209. package/dist/lib/pow-solver.d.ts.map +1 -1
  210. package/dist/lib/pow-solver.js +3 -8
  211. package/dist/lib/pow-solver.js.map +1 -1
  212. package/dist/lib/retry.d.ts +7 -64
  213. package/dist/lib/retry.d.ts.map +1 -1
  214. package/dist/lib/retry.js +13 -13
  215. package/dist/lib/retry.js.map +1 -1
  216. package/dist/portable.d.ts.map +1 -1
  217. package/dist/portable.js +3 -4
  218. package/dist/portable.js.map +1 -1
  219. package/dist/quote-binding.d.ts +0 -13
  220. package/dist/quote-binding.d.ts.map +1 -1
  221. package/dist/quote-binding.js +3 -18
  222. package/dist/quote-binding.js.map +1 -1
  223. package/dist/swap-executor.d.ts +1 -5
  224. package/dist/swap-executor.d.ts.map +1 -1
  225. package/dist/swap-executor.js +1 -1
  226. package/dist/swap-executor.js.map +1 -1
  227. package/dist/types/api.d.ts +0 -6
  228. package/dist/types/api.d.ts.map +1 -1
  229. package/dist/types/api.js +6 -9
  230. package/dist/types/api.js.map +1 -1
  231. package/dist/types/errors.d.ts +0 -7
  232. package/dist/types/errors.d.ts.map +1 -1
  233. package/dist/types/errors.js +2 -7
  234. package/dist/types/errors.js.map +1 -1
  235. package/dist/types/index.js +1 -1
  236. package/dist/types/index.js.map +1 -1
  237. package/dist/types/keys.d.ts +0 -15
  238. package/dist/types/keys.d.ts.map +1 -1
  239. package/dist/types/protocol.d.ts +0 -51
  240. package/dist/types/protocol.d.ts.map +1 -1
  241. package/dist/types/protocol.js +3 -8
  242. package/dist/types/protocol.js.map +1 -1
  243. package/dist/types/status.d.ts +2 -0
  244. package/dist/types/status.d.ts.map +1 -1
  245. package/dist/types/status.js +17 -14
  246. package/dist/types/status.js.map +1 -1
  247. package/dist/types/verification.d.ts +0 -10
  248. package/dist/types/verification.d.ts.map +1 -1
  249. package/dist/types/verification.js +7 -15
  250. package/dist/types/verification.js.map +1 -1
  251. package/dist/verification/chainflip-networks.d.ts +2 -35
  252. package/dist/verification/chainflip-networks.d.ts.map +1 -1
  253. package/dist/verification/chainflip-networks.js +12 -4
  254. package/dist/verification/chainflip-networks.js.map +1 -1
  255. package/dist/verification/chainflip.d.ts +0 -40
  256. package/dist/verification/chainflip.d.ts.map +1 -1
  257. package/dist/verification/chainflip.js +49 -129
  258. package/dist/verification/chainflip.js.map +1 -1
  259. package/dist/verification/constants.d.ts +0 -40
  260. package/dist/verification/constants.d.ts.map +1 -1
  261. package/dist/verification/constants.js +14 -40
  262. package/dist/verification/constants.js.map +1 -1
  263. package/dist/verification/index.d.ts +0 -26
  264. package/dist/verification/index.d.ts.map +1 -1
  265. package/dist/verification/index.js +8 -12
  266. package/dist/verification/index.js.map +1 -1
  267. package/dist/verification/memo.d.ts +0 -15
  268. package/dist/verification/memo.d.ts.map +1 -1
  269. package/dist/verification/memo.js +9 -27
  270. package/dist/verification/memo.js.map +1 -1
  271. package/dist/verification/near-intents.d.ts +0 -63
  272. package/dist/verification/near-intents.d.ts.map +1 -1
  273. package/dist/verification/near-intents.js +25 -67
  274. package/dist/verification/near-intents.js.map +1 -1
  275. package/dist/verification/rate-oracle.d.ts +0 -22
  276. package/dist/verification/rate-oracle.d.ts.map +1 -1
  277. package/dist/verification/rate-oracle.js +6 -11
  278. package/dist/verification/rate-oracle.js.map +1 -1
  279. package/dist/verification/thorchain-networks.d.ts +0 -27
  280. package/dist/verification/thorchain-networks.d.ts.map +1 -1
  281. package/dist/verification/thorchain-networks.js +13 -15
  282. package/dist/verification/thorchain-networks.js.map +1 -1
  283. package/dist/verification/thorchain.d.ts +0 -30
  284. package/dist/verification/thorchain.d.ts.map +1 -1
  285. package/dist/verification/thorchain.js +24 -47
  286. package/dist/verification/thorchain.js.map +1 -1
  287. package/dist/wasm-pins.d.ts +3 -3
  288. package/dist/wasm-pins.js +1 -1
  289. package/dist/wire/near-intents.zod.d.ts +0 -27
  290. package/dist/wire/near-intents.zod.d.ts.map +1 -1
  291. package/dist/wire/near-intents.zod.js +15 -23
  292. package/dist/wire/near-intents.zod.js.map +1 -1
  293. package/dist/wire/server/action.zod.d.ts +0 -10
  294. package/dist/wire/server/action.zod.d.ts.map +1 -1
  295. package/dist/wire/server/action.zod.js +8 -14
  296. package/dist/wire/server/action.zod.js.map +1 -1
  297. package/dist/wire/server/common.zod.d.ts +0 -13
  298. package/dist/wire/server/common.zod.d.ts.map +1 -1
  299. package/dist/wire/server/common.zod.js +6 -14
  300. package/dist/wire/server/common.zod.js.map +1 -1
  301. package/dist/wire/server/quotes.zod.d.ts +35 -20
  302. package/dist/wire/server/quotes.zod.d.ts.map +1 -1
  303. package/dist/wire/server/quotes.zod.js +1 -0
  304. package/dist/wire/server/quotes.zod.js.map +1 -1
  305. package/dist/wire/server/swap.zod.d.ts +0 -42
  306. package/dist/wire/server/swap.zod.d.ts.map +1 -1
  307. package/dist/wire/server/swap.zod.js +12 -26
  308. package/dist/wire/server/swap.zod.js.map +1 -1
  309. package/dist/wire/thorchain.zod.d.ts +0 -8
  310. package/dist/wire/thorchain.zod.d.ts.map +1 -1
  311. package/dist/wire/thorchain.zod.js +3 -8
  312. package/dist/wire/thorchain.zod.js.map +1 -1
  313. package/package.json +4 -4
  314. package/wasm/miradex-rust/README.md +3 -4
  315. package/wasm/miradex-rust/miradex_rust.d.ts +4 -6
  316. package/wasm/miradex-rust/miradex_rust.js +4 -6
  317. package/wasm/miradex-rust/miradex_rust_bg.wasm +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"verify-lock.js","sourceRoot":"","sources":["../../../src/lib/monero/verify-lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-lock.js","sourceRoot":"","sources":["../../../src/lib/monero/verify-lock.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,3 @@
1
- /**
2
- * Verify a sweep transaction's construction data before signing.
3
- *
4
- * Checks that:
5
- * 1. The destination address matches the expected receive address
6
- * 2. The amount is positive
7
- * 3. The fee is reasonable (not zero, not more than 10% of amount)
8
- * 4. The inputs exist and have valid ring sizes
9
- *
10
- * This runs in TypeScript (not WASM) so business rules like fee caps
11
- * can be updated without recompiling Rust.
12
- */
13
1
  import type { Logger } from '../../interfaces/logger.js';
14
2
  export interface SweepConstructionData {
15
3
  readonly inputs: readonly SweepInputData[];
@@ -46,14 +34,6 @@ export interface SweepVerificationResult {
46
34
  readonly fee: string;
47
35
  readonly reason?: string;
48
36
  }
49
- /**
50
- * Verify sweep construction data before signing.
51
- *
52
- * @param constructionData - Full construction data from server
53
- * @param expectedAddress - The client's XMR receive address
54
- * @param logger - Optional structured logger
55
- * @returns Verification result with amount, fee, and reason if invalid
56
- */
57
37
  export declare function verifySweepTx(constructionData: SweepConstructionData, expectedAddress: string, logger?: Logger): SweepVerificationResult;
58
38
  export {};
59
39
  //# sourceMappingURL=verify-sweep.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify-sweep.d.ts","sourceRoot":"","sources":["../../../src/lib/monero/verify-sweep.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAMzD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS;QAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;QAC/C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,qBAAqB,EACvC,eAAe,EAAE,MAAM,EACvB,MAAM,GAAE,MAAmB,GAC1B,uBAAuB,CAqEzB"}
1
+ {"version":3,"file":"verify-sweep.d.ts","sourceRoot":"","sources":["../../../src/lib/monero/verify-sweep.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAMzD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACrF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS;QAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;QAC/C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,qBAAqB,EACvC,eAAe,EAAE,MAAM,EACvB,MAAM,GAAE,MAAmB,GAC1B,uBAAuB,CAiEzB"}
@@ -1,43 +1,26 @@
1
- /**
2
- * Verify a sweep transaction's construction data before signing.
3
- *
4
- * Checks that:
5
- * 1. The destination address matches the expected receive address
6
- * 2. The amount is positive
7
- * 3. The fee is reasonable (not zero, not more than 10% of amount)
8
- * 4. The inputs exist and have valid ring sizes
9
- *
10
- * This runs in TypeScript (not WASM) so business rules like fee caps
11
- * can be updated without recompiling Rust.
12
- */
1
+ // Pre-sign sanity check for sweep construction data:
2
+ // 1. destination matches the expected receive address
3
+ // 2. amount is positive
4
+ // 3. fee is positive and <= 10% of amount
5
+ // 4. inputs exist and ring sizes match the rct_type
6
+ // Lives in TS (not WASM) so business rules can change without rebuilding Rust.
13
7
  import { noopLogger } from '../../interfaces/logger.js';
14
8
  const CLSAG_RING_SIZE = 16;
15
9
  const PRE_CLSAG_RING_SIZE = 11;
16
- /**
17
- * Verify sweep construction data before signing.
18
- *
19
- * @param constructionData - Full construction data from server
20
- * @param expectedAddress - The client's XMR receive address
21
- * @param logger - Optional structured logger
22
- * @returns Verification result with amount, fee, and reason if invalid
23
- */
24
10
  export function verifySweepTx(constructionData, expectedAddress, logger = noopLogger) {
25
11
  const amount = String(constructionData.destination.amount);
26
12
  const fee = String(constructionData.fee);
27
- // 1. Destination address must match exactly
28
13
  if (constructionData.destination.address !== expectedAddress) {
29
14
  const reason = `Destination mismatch: expected ${expectedAddress}, got ${constructionData.destination.address}`;
30
15
  logger.error({ expectedAddress, got: constructionData.destination.address }, reason);
31
16
  return { valid: false, amount, fee, reason };
32
17
  }
33
- // 2. Amount must be positive
34
18
  const amountNum = BigInt(amount);
35
19
  if (amountNum <= 0n) {
36
20
  const reason = `Sweep amount must be positive, got ${amount}`;
37
21
  logger.error({ amount }, reason);
38
22
  return { valid: false, amount, fee, reason };
39
23
  }
40
- // 3. Fee must be positive and not exceed 10% of amount
41
24
  const feeNum = BigInt(fee);
42
25
  if (feeNum <= 0n) {
43
26
  const reason = `Fee must be positive, got ${fee}`;
@@ -50,13 +33,12 @@ export function verifySweepTx(constructionData, expectedAddress, logger = noopLo
50
33
  logger.warn({ fee, amount, maxFee: maxFee.toString() }, reason);
51
34
  return { valid: false, amount, fee, reason };
52
35
  }
53
- // 4. Must have at least one input
54
36
  if (constructionData.inputs.length === 0) {
55
37
  const reason = 'No inputs in construction data';
56
38
  logger.error({}, reason);
57
39
  return { valid: false, amount, fee, reason };
58
40
  }
59
- // 5. Ring size must match RCT type (CLSAG+BP+ or CLSAG+BP)
41
+ // rct_type 6 = CLSAG+BP+; otherwise CLSAG+BP.
60
42
  const expectedRingSize = constructionData.rct_type === 6 ? CLSAG_RING_SIZE : PRE_CLSAG_RING_SIZE;
61
43
  for (let i = 0; i < constructionData.inputs.length; i++) {
62
44
  const input = constructionData.inputs[i];
@@ -1 +1 @@
1
- {"version":3,"file":"verify-sweep.js","sourceRoot":"","sources":["../../../src/lib/monero/verify-sweep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-sweep.js","sourceRoot":"","sources":["../../../src/lib/monero/verify-sweep.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pow-solver.d.ts","sourceRoot":"","sources":["../../src/lib/pow-solver.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIlE,wBAAsB,cAAc,CAClC,SAAS,EAAE,YAAY,EACvB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GACpD,OAAO,CAAC,UAAU,CAAC,CA0BrB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAE3D"}
1
+ {"version":3,"file":"pow-solver.d.ts","sourceRoot":"","sources":["../../src/lib/pow-solver.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIlE,wBAAsB,cAAc,CAClC,SAAS,EAAE,YAAY,EACvB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GACpD,OAAO,CAAC,UAAU,CAAC,CA0BrB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAE3D"}
@@ -1,11 +1,6 @@
1
- /**
2
- * Proof-of-work solver for swap creation.
3
- *
4
- * The server issues a SHA-256 hash-preimage challenge: given a salt and a
5
- * target hash, find a number n in [0, maxnumber] such that
6
- * SHA-256(salt + String(n)) === challenge. The solution is sent as a
7
- * Base64-encoded JSON header on the swap creation request.
8
- */
1
+ // Server issues a SHA-256 preimage challenge: given salt + target hash,
2
+ // find n in [0, maxnumber] such that sha256(salt + String(n)) === target.
3
+ // Solution is sent as a base64 JSON header on the swap-create request.
9
4
  import { sha256 } from '@noble/hashes/sha2.js';
10
5
  import { bytesToHex } from '@noble/hashes/utils.js';
11
6
  const BATCH_SIZE = 10_000;
@@ -1 +1 @@
1
- {"version":3,"file":"pow-solver.js","sourceRoot":"","sources":["../../src/lib/pow-solver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD,MAAM,UAAU,GAAG,MAAM,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAuB,EACvB,UAAqD;IAErD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;IAEzD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,UAAU,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAExD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,OAAO;oBACL,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,SAAS,EAAE,MAAM;oBACjB,MAAM,EAAE,CAAC;oBACT,IAAI;oBACJ,SAAS,EAAE,SAAS,CAAC,SAAS;iBAC/B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAE7B,sEAAsE;QACtE,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAmB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"pow-solver.js","sourceRoot":"","sources":["../../src/lib/pow-solver.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,0EAA0E;AAC1E,uEAAuE;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD,MAAM,UAAU,GAAG,MAAM,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAuB,EACvB,UAAqD;IAErD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;IAEzD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,UAAU,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAExD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,OAAO;oBACL,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,SAAS,EAAE,MAAM;oBACjB,MAAM,EAAE,CAAC;oBACT,IAAI;oBACJ,SAAS,EAAE,SAAS,CAAC,SAAS;iBAC/B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAE7B,sEAAsE;QACtE,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAmB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AACvC,CAAC"}
@@ -1,65 +1,20 @@
1
- /**
2
- * Cross-platform retry helper.
3
- *
4
- * Wraps an async operation and retries it according to the {@link ErrorCategory}
5
- * derived from each thrown value. Network and server errors retry indefinitely
6
- * with exponential backoff capped at {@link RetryOptions.maxBackoffMs}; bounded
7
- * categories retry at most {@link RetryOptions.maxBoundedRetries} times before
8
- * surfacing the error; fatal categories propagate immediately.
9
- *
10
- * Cancellation is honoured via an optional {@link AbortSignal}. The signal is
11
- * checked before every attempt and during every backoff sleep — a caller that
12
- * aborts mid-retry sees a {@link SwapCancelledError} within ms, never the
13
- * original failure that triggered the retry.
14
- *
15
- * Cross-platform: only `setTimeout` / `clearTimeout` and `AbortSignal` are
16
- * used. Works in Node 20+ and modern browsers without polyfills.
17
- */
18
1
  import type { Logger } from '../interfaces/logger.js';
19
2
  import { type ErrorCategory } from './errors.js';
20
3
  export interface RetryOptions {
21
- /**
22
- * Cap on retries for `client-bounded` and `unknown` categories.
23
- * After this many failures the original error is rethrown.
24
- * Default: 3.
25
- */
4
+ /** Cap on retries for client-bounded / unknown. Default 3. */
26
5
  readonly maxBoundedRetries?: number;
27
- /**
28
- * Initial backoff in ms. Each subsequent attempt doubles the wait
29
- * (capped at {@link maxBackoffMs}).
30
- * Default: 500.
31
- */
6
+ /** Initial backoff in ms; doubles each attempt up to maxBackoffMs. Default 500. */
32
7
  readonly baseMs?: number;
33
- /**
34
- * Upper bound for the per-retry backoff sleep, in ms. Network / server /
35
- * rate-limit errors retry indefinitely; this caps how long each successive
36
- * sleep can grow to before plateauing.
37
- * Default: 60000 (one minute).
38
- */
8
+ /** Cap for per-retry sleep, in ms. Default 60_000. */
39
9
  readonly maxBackoffMs?: number;
40
- /**
41
- * Optional cancellation signal. When aborted, the in-flight wait or the
42
- * next attempt rejects with {@link SwapCancelledError}.
43
- */
10
+ /** When aborted, the next sleep / attempt rejects with SwapCancelledError. */
44
11
  readonly signal?: AbortSignal;
45
- /** Optional structured logger. Defaults to a no-op. */
46
12
  readonly logger?: Logger;
47
- /**
48
- * Diagnostic label appended to log lines. Use the call site / endpoint
49
- * (e.g. `"GET /api/v1/swap/SWP-…"`).
50
- * Default: `"op"`.
51
- */
13
+ /** Label appended to log lines (call site / endpoint). Default 'op'. */
52
14
  readonly label?: string;
53
- /**
54
- * Optional override for the classifier. Useful when a caller wants to
55
- * promote a known transient string to `network`, or treat a 404 as
56
- * `client-fatal` instead of `client-bounded`.
57
- */
15
+ /** Override the default classifier (e.g. promote a transient string to 'network'). */
58
16
  readonly classify?: (err: unknown) => ErrorCategory;
59
- /**
60
- * Hook called once per retry, after classification, before backoff. Lets
61
- * callers integrate with metrics / UI without re-implementing the loop.
62
- */
17
+ /** Hook fired once per retry after classification, before backoff. */
63
18
  readonly onRetry?: (info: RetryInfo) => void;
64
19
  }
65
20
  export interface RetryInfo {
@@ -69,18 +24,6 @@ export interface RetryInfo {
69
24
  readonly error: unknown;
70
25
  readonly isUnbounded: boolean;
71
26
  }
72
- /**
73
- * Run `fn` with retries until it succeeds, the signal aborts, or the policy
74
- * rejects further attempts. Returns the resolved value of the first
75
- * successful call.
76
- *
77
- * @example
78
- * await withRetry(
79
- * () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
80
- * { logger, label: 'submit_encsig', signal: engineSignal },
81
- * );
82
- */
83
27
  export declare function withRetry<T>(fn: (attempt: number) => Promise<T>, options?: RetryOptions): Promise<T>;
84
- /** Public for tests / callers that want the same backoff schedule. */
85
28
  export declare function computeBackoffMs(retryNumber: number, baseMs: number, maxMs: number): number;
86
29
  //# sourceMappingURL=retry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,uDAAuD;IACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,aAAa,CAAC;IACpD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAQD;;;;;;;;;;GAUG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACnC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CA2EZ;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI3F"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,YAAY;IAC3B,8DAA8D;IAC9D,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,aAAa,CAAC;IACpD,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAcD,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACnC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CA2EZ;AAGD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI3F"}
package/dist/lib/retry.js CHANGED
@@ -1,21 +1,21 @@
1
+ // Retries by ErrorCategory. network/server retry forever with exponential
2
+ // backoff capped at maxBackoffMs; bounded categories retry up to
3
+ // maxBoundedRetries; fatal categories propagate. AbortSignal honoured before
4
+ // every attempt and during every sleep — abort surfaces SwapCancelledError
5
+ // within ms.
1
6
  import { noopLogger } from '../interfaces/logger.js';
2
7
  import { SwapCancelledError, classifyError, errorMessage, } from './errors.js';
3
8
  const DEFAULT_MAX_BOUNDED = 3;
4
9
  const DEFAULT_BASE_MS = 500;
5
10
  const DEFAULT_MAX_BACKOFF_MS = 60_000;
6
- /** Cap the exponent so `2 ** n` cannot overflow `Number` after a long retry chain. */
11
+ // Cap the exponent so 2 ** n can't overflow Number on a long retry chain.
7
12
  const MAX_EXPONENT = 30;
8
- /**
9
- * Run `fn` with retries until it succeeds, the signal aborts, or the policy
10
- * rejects further attempts. Returns the resolved value of the first
11
- * successful call.
12
- *
13
- * @example
14
- * await withRetry(
15
- * () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
16
- * { logger, label: 'submit_encsig', signal: engineSignal },
17
- * );
18
- */
13
+ // Returns the first successful resolution of fn, retrying per the policy.
14
+ // Example:
15
+ // await withRetry(
16
+ // () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
17
+ // { logger, label: 'submit_encsig', signal: engineSignal },
18
+ // );
19
19
  export async function withRetry(fn, options = {}) {
20
20
  const maxBounded = options.maxBoundedRetries ?? DEFAULT_MAX_BOUNDED;
21
21
  const baseMs = options.baseMs ?? DEFAULT_BASE_MS;
@@ -78,7 +78,7 @@ export async function withRetry(fn, options = {}) {
78
78
  }
79
79
  }
80
80
  }
81
- /** Public for tests / callers that want the same backoff schedule. */
81
+ // Exposed for tests and callers that want the same schedule.
82
82
  export function computeBackoffMs(retryNumber, baseMs, maxMs) {
83
83
  if (retryNumber <= 0)
84
84
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,YAAY,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,UAAU,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,YAAY,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,UAAU,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/portable.js CHANGED
@@ -1,7 +1,6 @@
1
- // Portable subset of the @miradex/client surface safe in browsers, Electron
2
- // renderer, React Native, and any runtime without Node built-ins. Pulls only
3
- // pure-TS modules with no fs/net dependencies. Server / signing code lives in
4
- // the main barrel ('@miradex/client').
1
+ // Portable subset of @miradexio/client. Browser / Electron-renderer / RN /
2
+ // any runtime without Node built-ins. Pure-TS only (no fs/net deps); server
3
+ // and signing code live in the main barrel.
5
4
  export { swapPipelineStage, atomicPipelineStage, computeDoneStages, mapServerStatus, PIPELINE_LABELS, PIPELINE_LABELS_CANCEL, PIPELINE_LABELS_REFUND, PIPELINE_LABELS_EXPIRED, } from './engine/pipeline.js';
6
5
  export { TERMINAL_STATUSES } from './types/index.js';
7
6
  export { createInitialEngineState } from './engine/engine-state.js';
@@ -1 +1 @@
1
- {"version":3,"file":"portable.js","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAC9E,uCAAuC;AAEvC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAmCpE,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"portable.js","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,4EAA4E;AAC5E,4CAA4C;AAE5C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAmCpE,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -12,20 +12,7 @@ export interface AcceptedQuote {
12
12
  readonly quoteHash: string;
13
13
  }
14
14
  export declare const QUOTE_MAX_AGE_MS: number;
15
- /**
16
- * Compute the canonical SHA-256 hash over an accepted quote. The hash is
17
- * deterministic under key-order normalisation; consumers may compare two
18
- * quotes for strict equality via their hashes.
19
- */
20
15
  export declare function hashQuote(q: Omit<AcceptedQuote, 'quoteHash'>): string;
21
- /**
22
- * Assert a quote hashes to the same value the consumer recorded at accept
23
- * time. Throws `E_QUOTE_TAMPERED` on mismatch.
24
- */
25
16
  export declare function requireQuoteHashMatches(accepted: AcceptedQuote, current: Omit<AcceptedQuote, 'quoteHash'>): void;
26
- /**
27
- * Assert the accepted quote is still within `QUOTE_MAX_AGE_MS` of now.
28
- * Throws `E_QUOTE_STALE` when expired.
29
- */
30
17
  export declare function requireQuoteFresh(accepted: AcceptedQuote, nowEpochMs?: number): void;
31
18
  //# sourceMappingURL=quote-binding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"quote-binding.d.ts","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,MAAM,CAIrE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GACxC,IAAI,CAQN;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,UAAU,GAAE,MAAmB,GAC9B,IAAI,CAQN"}
1
+ {"version":3,"file":"quote-binding.d.ts","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAG9C,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,MAAM,CAIrE;AAGD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GACxC,IAAI,CAQN;AAGD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,UAAU,GAAE,MAAmB,GAC9B,IAAI,CAQN"}
@@ -1,36 +1,21 @@
1
- /**
2
- * Quote binding: every AcceptedQuote is hashed canonically at accept time and
3
- * re-hashed just before funding. Prevents the server from changing the
4
- * expected output between accept and funding (AV-D.4 / Part VIII §8.4.1).
5
- */
6
1
  import { sha256 } from '@noble/hashes/sha2.js';
7
2
  import { bytesToHex } from '@noble/hashes/utils.js';
8
3
  import { VerificationError } from './types/index.js';
9
4
  export const QUOTE_MAX_AGE_MS = 5 * 60 * 1000;
10
- /**
11
- * Compute the canonical SHA-256 hash over an accepted quote. The hash is
12
- * deterministic under key-order normalisation; consumers may compare two
13
- * quotes for strict equality via their hashes.
14
- */
5
+ // SHA-256 over the quote with sorted keys, so two equivalent quotes hash equal.
15
6
  export function hashQuote(q) {
16
7
  const keys = Object.keys(q).sort();
17
8
  const canonical = JSON.stringify(q, keys);
18
9
  return bytesToHex(sha256(new TextEncoder().encode(canonical)));
19
10
  }
20
- /**
21
- * Assert a quote hashes to the same value the consumer recorded at accept
22
- * time. Throws `E_QUOTE_TAMPERED` on mismatch.
23
- */
11
+ // Throws E_QUOTE_TAMPERED on mismatch.
24
12
  export function requireQuoteHashMatches(accepted, current) {
25
13
  const currentHash = hashQuote(current);
26
14
  if (currentHash !== accepted.quoteHash) {
27
15
  throw new VerificationError('E_QUOTE_TAMPERED', `quote hash mismatch: accepted=${accepted.quoteHash.slice(0, 16)}..., current=${currentHash.slice(0, 16)}...`);
28
16
  }
29
17
  }
30
- /**
31
- * Assert the accepted quote is still within `QUOTE_MAX_AGE_MS` of now.
32
- * Throws `E_QUOTE_STALE` when expired.
33
- */
18
+ // Throws E_QUOTE_STALE if accepted more than QUOTE_MAX_AGE_MS ago.
34
19
  export function requireQuoteFresh(accepted, nowEpochMs = Date.now()) {
35
20
  const age = nowEpochMs - accepted.acceptedAtEpochMs;
36
21
  if (age > QUOTE_MAX_AGE_MS) {
@@ -1 +1 @@
1
- {"version":3,"file":"quote-binding.js","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAerD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,CAAmC;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAAuB,EACvB,OAAyC;IAEzC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,WAAW,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CACzB,kBAAkB,EAClB,iCAAiC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAC9G,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAuB,EACvB,aAAqB,IAAI,CAAC,GAAG,EAAE;IAE/B,MAAM,GAAG,GAAG,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IACpD,IAAI,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAC3B,MAAM,IAAI,iBAAiB,CACzB,eAAe,EACf,aAAa,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"quote-binding.js","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAkBrD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C,gFAAgF;AAChF,MAAM,UAAU,SAAS,CAAC,CAAmC;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,uBAAuB,CACrC,QAAuB,EACvB,OAAyC;IAEzC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,WAAW,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CACzB,kBAAkB,EAClB,iCAAiC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAC9G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,iBAAiB,CAC/B,QAAuB,EACvB,aAAqB,IAAI,CAAC,GAAG,EAAE;IAE/B,MAAM,GAAG,GAAG,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IACpD,IAAI,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAC3B,MAAM,IAAI,iBAAiB,CACzB,eAAe,EACf,aAAa,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -28,11 +28,7 @@ export declare class SwapExecutor {
28
28
  fromChain?: string;
29
29
  toChain?: string;
30
30
  slippageBps?: number;
31
- /**
32
- * Opt-in escape hatch for providers that don't expose a refund-address
33
- * binding. Setting this to `true` logs a security warning and lets the
34
- * swap proceed without refund-address assertion.
35
- */
31
+ /** Opt-in: skip the refundAddress check for providers without refund binding. */
36
32
  acknowledgedNoRefundAddress?: boolean;
37
33
  }, powHeader?: string): Promise<SwapResult>;
38
34
  executeAtomicSwap(params: {
@@ -1 +1 @@
1
- {"version":3,"file":"swap-executor.d.ts","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAEV,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EAEb,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,GAAG,EAAE,SAAS,EACd,cAAc,SAAQ,EACtB,OAAO,GAAE,OAAO,UAAU,CAAC,KAAwB;IAGhE,WAAW,CACf,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB;;;;WAIG;QACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;KACvC,EACD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC;IA8BhB,iBAAiB,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC;IAsDjB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI7D,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrE,SAAS,CACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,SAAS,SAAU,EACnB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,EACrC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;YAuBR,MAAM;CAuCrB"}
1
+ {"version":3,"file":"swap-executor.d.ts","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAEV,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EAEb,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,GAAG,EAAE,SAAS,EACd,cAAc,SAAQ,EACtB,OAAO,GAAE,OAAO,UAAU,CAAC,KAAwB;IAGhE,WAAW,CACf,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iFAAiF;QACjF,2BAA2B,CAAC,EAAE,OAAO,CAAC;KACvC,EACD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC;IA8BhB,iBAAiB,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC;IAsDjB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI7D,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrE,SAAS,CACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,SAAS,SAAU,EACnB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,EACrC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;YAuBR,MAAM;CAuCrB"}
@@ -102,7 +102,7 @@ export class SwapExecutor {
102
102
  onPoll?.(detail);
103
103
  if (targetSet.has(detail.status))
104
104
  return detail;
105
- // Break out of polling if a user-actionable requiredAction is detected.
105
+ // Stop early when the swap needs user action.
106
106
  const actionType = detail.requiredAction?.type;
107
107
  if (actionType === 'cancel' || actionType === 'refund' || actionType === 'sweep') {
108
108
  return detail;
@@ -1 +1 @@
1
- {"version":3,"file":"swap-executor.js","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap-executor.js","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,5 @@
1
1
  import type { SwapStatus, SwapDetailProtocolData } from '../wire/server/index.js';
2
- /**
3
- * Unified protocol data shape used by the engine during atomic-swap state
4
- * tracking. Directly typed from the swapDetailProtocolDataSchema so shape
5
- * drift from the server surfaces as a SCHEMA_MISMATCH at the API boundary.
6
- */
7
2
  export type ProtocolData = SwapDetailProtocolData;
8
- /** Type guard for the atomic-swap protocol shape (psbt + lock + timelock). */
9
3
  export declare function isAtomicProtocolData(pd: unknown): pd is SwapDetailProtocolData & {
10
4
  psbt: string;
11
5
  lock_address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAElF;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAElD,8EAA8E;AAC9E,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,GACV,EAAE,IAAI,sBAAsB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB,CAQA;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAElF,MAAM,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAGlD,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,GACV,EAAE,IAAI,sBAAsB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB,CAQA;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC"}
package/dist/types/api.js CHANGED
@@ -1,12 +1,9 @@
1
- // Client-side types that are NOT server-response shapes.
2
- //
3
- // Server-response types live in src/wire/server/ and are inferred from
4
- // zod schemas. This file houses:
5
- // - HistoryEntry: the client-side history-store row (distinct from recents)
6
- // - ProtocolData + isAtomicProtocolData: the unified shape the engine
7
- // tracks during atomic-swap state transitions, sourced from the
8
- // swapDetailProtocolDataSchema.
9
- /** Type guard for the atomic-swap protocol shape (psbt + lock + timelock). */
1
+ // Client-side types that aren't server-response shapes.
2
+ // ProtocolData / isAtomicProtocolData - engine's view of swap protocol data,
3
+ // sourced from swapDetailProtocolDataSchema
4
+ // so shape drift surfaces as SCHEMA_MISMATCH
5
+ // HistoryEntry - client-side history-store row (vs. recents)
6
+ // psbt + lock_address + timelock_blocks present.
10
7
  export function isAtomicProtocolData(pd) {
11
8
  if (!pd || typeof pd !== 'object')
12
9
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,uEAAuE;AACvE,iCAAiC;AACjC,8EAA8E;AAC9E,wEAAwE;AACxE,oEAAoE;AACpE,oCAAoC;AAWpC,8EAA8E;AAC9E,MAAM,UAAU,oBAAoB,CAClC,EAAW;IAMX,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChD,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,OAAO,CACL,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC5B,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,CACxC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+EAA+E;AAC/E,oFAAoF;AACpF,qFAAqF;AACrF,sFAAsF;AAMtF,iDAAiD;AACjD,MAAM,UAAU,oBAAoB,CAClC,EAAW;IAMX,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChD,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,OAAO,CACL,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC5B,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,CACxC,CAAC;AACJ,CAAC"}
@@ -1,10 +1,3 @@
1
- /**
2
- * Canonical error codes emitted by the client. Every `VerificationError` and
3
- * `ProtocolError` constructs with one of these. Consumers switch on `code`
4
- * to produce stable UI.
5
- *
6
- * @see docs/ERROR-CODES.md for the human-readable reference.
7
- */
8
1
  export declare const ERROR_CODES: {
9
2
  readonly E_REDEEM_DIGEST_MISMATCH: "Local redeem digest differs from sidecar claim";
10
3
  readonly E_LOCK_ADDR_MISMATCH: "Derived P2WSH address differs from sidecar claim";
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsFd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsFd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC"}
@@ -1,10 +1,5 @@
1
- /**
2
- * Canonical error codes emitted by the client. Every `VerificationError` and
3
- * `ProtocolError` constructs with one of these. Consumers switch on `code`
4
- * to produce stable UI.
5
- *
6
- * @see docs/ERROR-CODES.md for the human-readable reference.
7
- */
1
+ // Canonical codes for VerificationError and ProtocolError. Consumers switch
2
+ // on `code` for stable UI. Human-readable reference: docs/ERROR-CODES.md.
8
3
  export const ERROR_CODES = {
9
4
  E_REDEEM_DIGEST_MISMATCH: 'Local redeem digest differs from sidecar claim',
10
5
  E_LOCK_ADDR_MISMATCH: 'Derived P2WSH address differs from sidecar claim',