@fhevm/sdk 0.13.2-1 → 0.14.0-12

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 (322) hide show
  1. package/_cjs/core/_version.js +1 -1
  2. package/_cjs/core/_version.js.map +1 -1
  3. package/_cjs/core/actions/base/canUseUnifiedDecryptionPermit.js +11 -0
  4. package/_cjs/core/actions/base/canUseUnifiedDecryptionPermit.js.map +1 -0
  5. package/_cjs/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.js +0 -4
  6. package/_cjs/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.js.map +1 -1
  7. package/_cjs/core/actions/base/index.js +7 -1
  8. package/_cjs/core/actions/base/index.js.map +1 -1
  9. package/_cjs/core/actions/base/signUnifiedDecryptionPermit.js +10 -0
  10. package/_cjs/core/actions/base/signUnifiedDecryptionPermit.js.map +1 -0
  11. package/_cjs/core/actions/host/resolveChainId.js +3 -1
  12. package/_cjs/core/actions/host/resolveChainId.js.map +1 -1
  13. package/_cjs/core/clients/decorators/base.js +2 -0
  14. package/_cjs/core/clients/decorators/base.js.map +1 -1
  15. package/_cjs/core/errors/Erc1271Error.js +48 -0
  16. package/_cjs/core/errors/Erc1271Error.js.map +1 -0
  17. package/_cjs/core/frozenContext/fhevmClientFrozenContext-p.js.map +1 -1
  18. package/_cjs/core/frozenContext/resolveFhevmClientFrozenContext-p.js +11 -1
  19. package/_cjs/core/frozenContext/resolveFhevmClientFrozenContext-p.js.map +1 -1
  20. package/_cjs/core/host-contracts/readKmsSignersContext-p.js +0 -7
  21. package/_cjs/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  22. package/_cjs/core/key/FheEncryptionKeyCache-p.js +3 -0
  23. package/_cjs/core/key/FheEncryptionKeyCache-p.js.map +1 -1
  24. package/_cjs/core/key/fetchFheEncryptionKey.js +13 -1
  25. package/_cjs/core/key/fetchFheEncryptionKey.js.map +1 -1
  26. package/_cjs/core/kms/SignedDecryptionPermit-p.js +1 -27
  27. package/_cjs/core/kms/SignedDecryptionPermit-p.js.map +1 -1
  28. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js +22 -14
  29. package/_cjs/core/kms/SignedDecryptionPermitV2-p.js.map +1 -1
  30. package/_cjs/core/kms/decryptValuesFromPairs.js +5 -14
  31. package/_cjs/core/kms/decryptValuesFromPairs.js.map +1 -1
  32. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js +8 -0
  33. package/_cjs/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -1
  34. package/_cjs/core/modules/decrypt/module/api-p.js +1 -1
  35. package/_cjs/core/modules/decrypt/module/api-p.js.map +1 -1
  36. package/_cjs/core/modules/decrypt/module/init-p.js +7 -1
  37. package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -1
  38. package/_cjs/core/modules/encrypt/module/init-p.js +14 -2
  39. package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -1
  40. package/_cjs/core/modules/relayer/cleartext/mock.js +5 -0
  41. package/_cjs/core/modules/relayer/cleartext/mock.js.map +1 -1
  42. package/_cjs/core/modules/relayer/module/RelayerAsyncRequest.js +20 -0
  43. package/_cjs/core/modules/relayer/module/RelayerAsyncRequest.js.map +1 -1
  44. package/_cjs/core/modules/relayer/module/fetchCoprocessorSignatures.js +1 -0
  45. package/_cjs/core/modules/relayer/module/fetchCoprocessorSignatures.js.map +1 -1
  46. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js +1 -0
  47. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -1
  48. package/_cjs/core/modules/relayer/module/fetchFeatures.js +35 -0
  49. package/_cjs/core/modules/relayer/module/fetchFeatures.js.map +1 -0
  50. package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js +1 -0
  51. package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js.map +1 -1
  52. package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js +1 -0
  53. package/_cjs/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -1
  54. package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js +1 -0
  55. package/_cjs/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -1
  56. package/_cjs/core/modules/relayer/module/index.js +2 -0
  57. package/_cjs/core/modules/relayer/module/index.js.map +1 -1
  58. package/_cjs/core/relayerFeatures/ensureRelayerFeatures-p.js +25 -0
  59. package/_cjs/core/relayerFeatures/ensureRelayerFeatures-p.js.map +1 -0
  60. package/_cjs/core/relayerFeatures/resolveRelayerFeatures-p.js +7 -0
  61. package/_cjs/core/relayerFeatures/resolveRelayerFeatures-p.js.map +1 -0
  62. package/_cjs/core/runtime/CoreFhevm-p.js +58 -2
  63. package/_cjs/core/runtime/CoreFhevm-p.js.map +1 -1
  64. package/_cjs/core/runtime/HyperWasmSolver-p.js +44 -4
  65. package/_cjs/core/runtime/HyperWasmSolver-p.js.map +1 -1
  66. package/_cjs/core/runtime/ProtocolVersionResolver-p.js +10 -4
  67. package/_cjs/core/runtime/ProtocolVersionResolver-p.js.map +1 -1
  68. package/_cjs/core/runtime/initFhevmDecryptRuntime-p.js +1 -1
  69. package/_cjs/core/runtime/initFhevmDecryptRuntime-p.js.map +1 -1
  70. package/_cjs/core/runtime/initFhevmRuntime-p.js +1 -1
  71. package/_cjs/core/runtime/initFhevmRuntime-p.js.map +1 -1
  72. package/_cjs/core/runtime/sdkProtocolApiVersion.js +1 -1
  73. package/_cjs/core/runtime/sdkProtocolApiVersion.js.map +1 -1
  74. package/_cjs/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.js +73 -0
  75. package/_cjs/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.js.map +1 -0
  76. package/_cjs/ethers/internal/ethereum-ct.js +2 -11
  77. package/_cjs/ethers/internal/ethereum-ct.js.map +1 -1
  78. package/_cjs/ethers/internal/ethereum.js +33 -0
  79. package/_cjs/ethers/internal/ethereum.js.map +1 -1
  80. package/_cjs/ethers/internal/utils.js +17 -0
  81. package/_cjs/ethers/internal/utils.js.map +1 -1
  82. package/_cjs/viem/internal/ethereum-ct.js +2 -8
  83. package/_cjs/viem/internal/ethereum-ct.js.map +1 -1
  84. package/_cjs/viem/internal/ethereum.js +34 -4
  85. package/_cjs/viem/internal/ethereum.js.map +1 -1
  86. package/_cjs/wasm/tfhe/loadTfheLib.js.map +1 -1
  87. package/_cjs/wasm/tkms/KmsLibApi.d.ts +1 -1
  88. package/_cjs/wasm/tkms/loadKmsLib.js +13 -4
  89. package/_cjs/wasm/tkms/loadKmsLib.js.map +3 -3
  90. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib.d.ts +598 -0
  91. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib.js +1887 -0
  92. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib.js.map +7 -0
  93. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm +0 -0
  94. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.d.ts +3 -0
  95. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.js +35 -0
  96. package/_cjs/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.js.map +7 -0
  97. package/_esm/core/_version.js +1 -1
  98. package/_esm/core/_version.js.map +1 -1
  99. package/_esm/core/actions/base/canUseUnifiedDecryptionPermit.js +21 -0
  100. package/_esm/core/actions/base/canUseUnifiedDecryptionPermit.js.map +1 -0
  101. package/_esm/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.js +0 -4
  102. package/_esm/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.js.map +1 -1
  103. package/_esm/core/actions/base/index.js +9 -2
  104. package/_esm/core/actions/base/index.js.map +1 -1
  105. package/_esm/core/actions/base/signUnifiedDecryptionPermit.js +7 -0
  106. package/_esm/core/actions/base/signUnifiedDecryptionPermit.js.map +1 -0
  107. package/_esm/core/actions/host/resolveChainId.js +3 -1
  108. package/_esm/core/actions/host/resolveChainId.js.map +1 -1
  109. package/_esm/core/clients/decorators/base.js +2 -0
  110. package/_esm/core/clients/decorators/base.js.map +1 -1
  111. package/_esm/core/errors/Erc1271Error.js +45 -0
  112. package/_esm/core/errors/Erc1271Error.js.map +1 -0
  113. package/_esm/core/frozenContext/fhevmClientFrozenContext-p.js.map +1 -1
  114. package/_esm/core/frozenContext/resolveFhevmClientFrozenContext-p.js +12 -1
  115. package/_esm/core/frozenContext/resolveFhevmClientFrozenContext-p.js.map +1 -1
  116. package/_esm/core/host-contracts/readKmsSignersContext-p.js +9 -40
  117. package/_esm/core/host-contracts/readKmsSignersContext-p.js.map +1 -1
  118. package/_esm/core/key/FheEncryptionKeyCache-p.js +3 -0
  119. package/_esm/core/key/FheEncryptionKeyCache-p.js.map +1 -1
  120. package/_esm/core/key/fetchFheEncryptionKey.js +13 -1
  121. package/_esm/core/key/fetchFheEncryptionKey.js.map +1 -1
  122. package/_esm/core/kms/SignedDecryptionPermit-p.js +6 -47
  123. package/_esm/core/kms/SignedDecryptionPermit-p.js.map +1 -1
  124. package/_esm/core/kms/SignedDecryptionPermitV2-p.js +35 -21
  125. package/_esm/core/kms/SignedDecryptionPermitV2-p.js.map +1 -1
  126. package/_esm/core/kms/decryptValuesFromPairs.js +14 -32
  127. package/_esm/core/kms/decryptValuesFromPairs.js.map +1 -1
  128. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js +11 -0
  129. package/_esm/core/kms/fetchKmsSigncryptedSharesV2-p.js.map +1 -1
  130. package/_esm/core/modules/decrypt/module/api-p.js +5 -3
  131. package/_esm/core/modules/decrypt/module/api-p.js.map +1 -1
  132. package/_esm/core/modules/decrypt/module/init-p.js +7 -1
  133. package/_esm/core/modules/decrypt/module/init-p.js.map +1 -1
  134. package/_esm/core/modules/encrypt/module/init-p.js +14 -2
  135. package/_esm/core/modules/encrypt/module/init-p.js.map +1 -1
  136. package/_esm/core/modules/relayer/cleartext/mock.js +5 -0
  137. package/_esm/core/modules/relayer/cleartext/mock.js.map +1 -1
  138. package/_esm/core/modules/relayer/module/RelayerAsyncRequest.js +20 -0
  139. package/_esm/core/modules/relayer/module/RelayerAsyncRequest.js.map +1 -1
  140. package/_esm/core/modules/relayer/module/fetchCoprocessorSignatures.js +1 -0
  141. package/_esm/core/modules/relayer/module/fetchCoprocessorSignatures.js.map +1 -1
  142. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js +1 -0
  143. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecryptV1.js.map +1 -1
  144. package/_esm/core/modules/relayer/module/fetchFeatures.js +68 -0
  145. package/_esm/core/modules/relayer/module/fetchFeatures.js.map +1 -0
  146. package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js +1 -0
  147. package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js.map +1 -1
  148. package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js +1 -0
  149. package/_esm/core/modules/relayer/module/fetchUserDecryptV1.js.map +1 -1
  150. package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js +1 -0
  151. package/_esm/core/modules/relayer/module/fetchUserDecryptV2.js.map +1 -1
  152. package/_esm/core/modules/relayer/module/index.js +2 -0
  153. package/_esm/core/modules/relayer/module/index.js.map +1 -1
  154. package/_esm/core/relayerFeatures/ensureRelayerFeatures-p.js +61 -0
  155. package/_esm/core/relayerFeatures/ensureRelayerFeatures-p.js.map +1 -0
  156. package/_esm/core/relayerFeatures/resolveRelayerFeatures-p.js +15 -0
  157. package/_esm/core/relayerFeatures/resolveRelayerFeatures-p.js.map +1 -0
  158. package/_esm/core/runtime/CoreFhevm-p.js +61 -2
  159. package/_esm/core/runtime/CoreFhevm-p.js.map +1 -1
  160. package/_esm/core/runtime/HyperWasmSolver-p.js +51 -6
  161. package/_esm/core/runtime/HyperWasmSolver-p.js.map +1 -1
  162. package/_esm/core/runtime/ProtocolVersionResolver-p.js +10 -4
  163. package/_esm/core/runtime/ProtocolVersionResolver-p.js.map +1 -1
  164. package/_esm/core/runtime/initFhevmDecryptRuntime-p.js +1 -1
  165. package/_esm/core/runtime/initFhevmDecryptRuntime-p.js.map +1 -1
  166. package/_esm/core/runtime/initFhevmRuntime-p.js +1 -1
  167. package/_esm/core/runtime/initFhevmRuntime-p.js.map +1 -1
  168. package/_esm/core/runtime/sdkProtocolApiVersion.js +8 -9
  169. package/_esm/core/runtime/sdkProtocolApiVersion.js.map +1 -1
  170. package/_esm/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.js +118 -0
  171. package/_esm/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.js.map +1 -0
  172. package/_esm/ethers/internal/ethereum-ct.js +4 -13
  173. package/_esm/ethers/internal/ethereum-ct.js.map +1 -1
  174. package/_esm/ethers/internal/ethereum.js +45 -2
  175. package/_esm/ethers/internal/ethereum.js.map +1 -1
  176. package/_esm/ethers/internal/utils.js +20 -0
  177. package/_esm/ethers/internal/utils.js.map +1 -1
  178. package/_esm/viem/internal/ethereum-ct.js +5 -11
  179. package/_esm/viem/internal/ethereum-ct.js.map +1 -1
  180. package/_esm/viem/internal/ethereum.js +37 -0
  181. package/_esm/viem/internal/ethereum.js.map +1 -1
  182. package/_esm/wasm/tkms/KmsLibApi.d.ts +1 -1
  183. package/_esm/wasm/tkms/loadKmsLib.js +11 -2
  184. package/_esm/wasm/tkms/v0.14.0-1/kms_lib.d.ts +598 -0
  185. package/_esm/wasm/tkms/v0.14.0-1/kms_lib.js +2055 -0
  186. package/_esm/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm +0 -0
  187. package/_esm/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.d.ts +3 -0
  188. package/_esm/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.js +7 -0
  189. package/_types/core/_version.d.ts.map +1 -1
  190. package/_types/core/actions/base/canUseUnifiedDecryptionPermit.d.ts +23 -0
  191. package/_types/core/actions/base/canUseUnifiedDecryptionPermit.d.ts.map +1 -0
  192. package/_types/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.d.ts.map +1 -1
  193. package/_types/core/actions/base/index.d.ts +3 -0
  194. package/_types/core/actions/base/index.d.ts.map +1 -1
  195. package/_types/core/actions/base/signUnifiedDecryptionPermit.d.ts +17 -0
  196. package/_types/core/actions/base/signUnifiedDecryptionPermit.d.ts.map +1 -0
  197. package/_types/core/actions/host/resolveChainId.d.ts.map +1 -1
  198. package/_types/core/clients/decorators/base.d.ts +14 -0
  199. package/_types/core/clients/decorators/base.d.ts.map +1 -1
  200. package/_types/core/errors/Erc1271Error.d.ts +46 -0
  201. package/_types/core/errors/Erc1271Error.d.ts.map +1 -0
  202. package/_types/core/frozenContext/fhevmClientFrozenContext-p.d.ts.map +1 -1
  203. package/_types/core/frozenContext/resolveFhevmClientFrozenContext-p.d.ts.map +1 -1
  204. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts +9 -14
  205. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts.map +1 -1
  206. package/_types/core/key/FheEncryptionKeyCache-p.d.ts.map +1 -1
  207. package/_types/core/key/fetchFheEncryptionKey.d.ts.map +1 -1
  208. package/_types/core/kms/SignedDecryptionPermit-p.d.ts.map +1 -1
  209. package/_types/core/kms/SignedDecryptionPermitV2-p.d.ts.map +1 -1
  210. package/_types/core/kms/decryptValuesFromPairs.d.ts.map +1 -1
  211. package/_types/core/kms/fetchKmsSigncryptedSharesV2-p.d.ts.map +1 -1
  212. package/_types/core/modules/decrypt/module/api-p.d.ts.map +1 -1
  213. package/_types/core/modules/decrypt/module/init-p.d.ts.map +1 -1
  214. package/_types/core/modules/encrypt/module/init-p.d.ts.map +1 -1
  215. package/_types/core/modules/ethereum/types.d.ts +47 -2
  216. package/_types/core/modules/ethereum/types.d.ts.map +1 -1
  217. package/_types/core/modules/relayer/cleartext/mock.d.ts.map +1 -1
  218. package/_types/core/modules/relayer/module/RelayerAsyncRequest.d.ts +3 -0
  219. package/_types/core/modules/relayer/module/RelayerAsyncRequest.d.ts.map +1 -1
  220. package/_types/core/modules/relayer/module/fetchCoprocessorSignatures.d.ts.map +1 -1
  221. package/_types/core/modules/relayer/module/fetchDelegatedUserDecryptV1.d.ts.map +1 -1
  222. package/_types/core/modules/relayer/module/fetchFeatures.d.ts +26 -0
  223. package/_types/core/modules/relayer/module/fetchFeatures.d.ts.map +1 -0
  224. package/_types/core/modules/relayer/module/fetchPublicDecrypt.d.ts.map +1 -1
  225. package/_types/core/modules/relayer/module/fetchUserDecryptV1.d.ts.map +1 -1
  226. package/_types/core/modules/relayer/module/fetchUserDecryptV2.d.ts.map +1 -1
  227. package/_types/core/modules/relayer/module/index.d.ts.map +1 -1
  228. package/_types/core/modules/relayer/types.d.ts +14 -2
  229. package/_types/core/modules/relayer/types.d.ts.map +1 -1
  230. package/_types/core/relayerFeatures/ensureRelayerFeatures-p.d.ts +55 -0
  231. package/_types/core/relayerFeatures/ensureRelayerFeatures-p.d.ts.map +1 -0
  232. package/_types/core/relayerFeatures/resolveRelayerFeatures-p.d.ts +39 -0
  233. package/_types/core/relayerFeatures/resolveRelayerFeatures-p.d.ts.map +1 -0
  234. package/_types/core/runtime/CoreFhevm-p.d.ts +5 -0
  235. package/_types/core/runtime/CoreFhevm-p.d.ts.map +1 -1
  236. package/_types/core/runtime/HyperWasmSolver-p.d.ts +1 -0
  237. package/_types/core/runtime/HyperWasmSolver-p.d.ts.map +1 -1
  238. package/_types/core/runtime/ProtocolVersionResolver-p.d.ts.map +1 -1
  239. package/_types/core/runtime/sdkProtocolApiVersion.d.ts +7 -8
  240. package/_types/core/runtime/sdkProtocolApiVersion.d.ts.map +1 -1
  241. package/_types/core/types/kms-p.d.ts +2 -2
  242. package/_types/core/types/kms-p.d.ts.map +1 -1
  243. package/_types/core/types/relayer-p.d.ts +1 -1
  244. package/_types/core/types/relayer-p.d.ts.map +1 -1
  245. package/_types/core/types/signedDecryptionPermit.d.ts +10 -3
  246. package/_types/core/types/signedDecryptionPermit.d.ts.map +1 -1
  247. package/_types/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.d.ts +49 -0
  248. package/_types/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.d.ts.map +1 -0
  249. package/_types/ethers/internal/ethereum-ct.d.ts.map +1 -1
  250. package/_types/ethers/internal/ethereum.d.ts +3 -1
  251. package/_types/ethers/internal/ethereum.d.ts.map +1 -1
  252. package/_types/ethers/internal/utils.d.ts +5 -0
  253. package/_types/ethers/internal/utils.d.ts.map +1 -1
  254. package/_types/viem/internal/ethereum-ct.d.ts.map +1 -1
  255. package/_types/viem/internal/ethereum.d.ts +3 -1
  256. package/_types/viem/internal/ethereum.d.ts.map +1 -1
  257. package/_types/wasm/tkms/KmsLibApi.d.ts +1 -1
  258. package/_types/wasm/tkms/v0.14.0-1/kms_lib.d.ts +598 -0
  259. package/_types/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.d.ts +3 -0
  260. package/core/_version.ts +1 -1
  261. package/core/actions/base/canUseUnifiedDecryptionPermit.ts +38 -0
  262. package/core/actions/base/createUnsignedUnifiedDecryptionPermitEip712.ts +0 -6
  263. package/core/actions/base/index.ts +24 -2
  264. package/core/actions/base/signUnifiedDecryptionPermit.ts +27 -0
  265. package/core/actions/host/resolveChainId.ts +3 -1
  266. package/core/clients/decorators/base.ts +21 -0
  267. package/core/errors/Erc1271Error.ts +85 -0
  268. package/core/frozenContext/fhevmClientFrozenContext-p.ts +1 -0
  269. package/core/frozenContext/resolveFhevmClientFrozenContext-p.ts +21 -8
  270. package/core/host-contracts/readKmsSignersContext-p.ts +9 -45
  271. package/core/key/FheEncryptionKeyCache-p.ts +6 -0
  272. package/core/key/fetchFheEncryptionKey.ts +17 -1
  273. package/core/kms/SignedDecryptionPermit-p.ts +6 -60
  274. package/core/kms/SignedDecryptionPermitV2-p.ts +54 -41
  275. package/core/kms/decryptValuesFromPairs.ts +14 -33
  276. package/core/kms/fetchKmsSigncryptedSharesV2-p.ts +15 -0
  277. package/core/modules/decrypt/module/api-p.ts +5 -3
  278. package/core/modules/decrypt/module/init-p.ts +6 -1
  279. package/core/modules/encrypt/module/init-p.ts +15 -2
  280. package/core/modules/ethereum/types.ts +55 -1
  281. package/core/modules/relayer/cleartext/mock.ts +11 -0
  282. package/core/modules/relayer/module/RelayerAsyncRequest.ts +55 -0
  283. package/core/modules/relayer/module/fetchCoprocessorSignatures.ts +1 -0
  284. package/core/modules/relayer/module/fetchDelegatedUserDecryptV1.ts +1 -0
  285. package/core/modules/relayer/module/fetchFeatures.ts +75 -0
  286. package/core/modules/relayer/module/fetchPublicDecrypt.ts +1 -0
  287. package/core/modules/relayer/module/fetchUserDecryptV1.ts +1 -0
  288. package/core/modules/relayer/module/fetchUserDecryptV2.ts +1 -0
  289. package/core/modules/relayer/module/index.ts +2 -0
  290. package/core/modules/relayer/types.ts +26 -2
  291. package/core/relayerFeatures/ensureRelayerFeatures-p.ts +84 -0
  292. package/core/relayerFeatures/resolveRelayerFeatures-p.ts +47 -0
  293. package/core/runtime/CoreFhevm-p.ts +71 -0
  294. package/core/runtime/HyperWasmSolver-p.ts +57 -8
  295. package/core/runtime/ProtocolVersionResolver-p.ts +12 -4
  296. package/core/runtime/initFhevmDecryptRuntime-p.ts +1 -1
  297. package/core/runtime/initFhevmRuntime-p.ts +1 -1
  298. package/core/runtime/sdkProtocolApiVersion.ts +8 -9
  299. package/core/types/kms-p.ts +2 -2
  300. package/core/types/relayer-p.ts +4 -2
  301. package/core/types/signedDecryptionPermit.ts +10 -3
  302. package/core/utils-p/decrypt/verifyErc1271UserDecrypt-p.ts +164 -0
  303. package/ethers/internal/ethereum-ct.ts +5 -15
  304. package/ethers/internal/ethereum.ts +58 -3
  305. package/ethers/internal/utils.ts +27 -0
  306. package/package.json +2 -2
  307. package/viem/internal/ethereum-ct.ts +6 -14
  308. package/viem/internal/ethereum.ts +48 -1
  309. package/wasm/tkms/KmsLibApi.d.ts +1 -1
  310. package/wasm/tkms/loadKmsLib.js +11 -2
  311. package/wasm/tkms/v0.14.0-1/kms_lib.d.ts +598 -0
  312. package/wasm/tkms/v0.14.0-1/kms_lib.js +2055 -0
  313. package/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm +0 -0
  314. package/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.d.ts +3 -0
  315. package/wasm/tkms/v0.14.0-1/kms_lib_bg.wasm.base64.js +7 -0
  316. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +0 -30
  317. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +0 -1
  318. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js +0 -27
  319. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.js.map +0 -1
  320. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts +0 -14
  321. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.d.ts.map +0 -1
  322. package/core/utils-p/decrypt/verifyKmsUserDecryptEip712V2.ts +0 -43
@@ -30,6 +30,12 @@ export class RelayerAsyncRequest {
30
30
  writable: true,
31
31
  value: void 0
32
32
  });
33
+ Object.defineProperty(this, "_logger", {
34
+ enumerable: true,
35
+ configurable: true,
36
+ writable: true,
37
+ value: void 0
38
+ });
33
39
  Object.defineProperty(this, "_fetchMethod", {
34
40
  enumerable: true,
35
41
  configurable: true,
@@ -241,6 +247,7 @@ export class RelayerAsyncRequest {
241
247
  if (signal.reason !== 'cancel') {
242
248
  this._assert(!this._state.canceled, '!this._state.canceled');
243
249
  }
250
+ this._logger?.warn?.(`[RelayerAsyncRequest] Request aborted on ${this._url} (reason=${String(signal.reason)}, operation=${this._relayerOperation}, jobId=${this._jobId})`);
244
251
  this._postAsyncOnProgressCallback({
245
252
  type: 'abort',
246
253
  url: this._url,
@@ -287,6 +294,7 @@ export class RelayerAsyncRequest {
287
294
  this._url = params.url;
288
295
  this._payload = params.payload;
289
296
  this._debug = params.options?.debug === true;
297
+ this._logger = params.logger;
290
298
  this._fhevmAuth = params.options?.auth;
291
299
  this._customHeaders = normalizeHeaders(params.options?.headers);
292
300
  this._onProgress = params.options?.onProgress;
@@ -609,6 +617,7 @@ export class RelayerAsyncRequest {
609
617
  });
610
618
  }
611
619
  const retryAfterMs = this._getRetryAfterHeaderValueInMs(response);
620
+ this._logger?.warn?.(`[RelayerAsyncRequest] Throttled (429) on ${this._url} (operation=${this._relayerOperation}, retryCount=${this._retryCount}). Retrying in ${retryAfterMs}ms.`);
612
621
  // Async onProgress callback
613
622
  this._postAsyncOnProgressCallback({
614
623
  type: 'throttled',
@@ -682,6 +691,7 @@ export class RelayerAsyncRequest {
682
691
  default: {
683
692
  // Use TS compiler + `never` to guarantee the switch integrity
684
693
  const throwUnsupportedStatus = (unsupportedStatus) => {
694
+ this._logger?.error?.(`[RelayerAsyncRequest] Unsupported POST response status ${String(unsupportedStatus)} on ${this._url} (operation=${this._relayerOperation})`, undefined);
685
695
  throw new RelayerResponseStatusError({
686
696
  fetchMethod: 'POST',
687
697
  status: unsupportedStatus,
@@ -1017,6 +1027,7 @@ export class RelayerAsyncRequest {
1017
1027
  default: {
1018
1028
  // Use TS compiler + `never` to guarantee the switch integrity
1019
1029
  const throwUnsupportedStatus = (unsupportedStatus) => {
1030
+ this._logger?.error?.(`[RelayerAsyncRequest] Unsupported GET response status ${String(unsupportedStatus)} on ${this._url} (operation=${this._relayerOperation}, jobId=${this.jobId})`, undefined);
1020
1031
  throw new RelayerResponseStatusError({
1021
1032
  fetchMethod: 'GET',
1022
1033
  status: unsupportedStatus,
@@ -1133,6 +1144,7 @@ export class RelayerAsyncRequest {
1133
1144
  if (attempts >= this._fetchRetries) {
1134
1145
  throw fetchError;
1135
1146
  }
1147
+ this._logger?.warn?.(`[RelayerAsyncRequest] Fetch to ${this._url} failed (attempt ${attempts}/${this._fetchRetries}, operation=${this._relayerOperation}): ${formatFetchErrorMetaMessages(fetchError).join('. ')}. Retrying.`);
1136
1148
  // Wait before retry using state-machine-aware timeout
1137
1149
  // This allows cancellation to interrupt the delay
1138
1150
  // Skip incrementing _retryCount since fetch retries are separate from polling retries
@@ -1357,6 +1369,7 @@ export class RelayerAsyncRequest {
1357
1369
  this._assert(!this._state.terminated, `!this._state.terminated`);
1358
1370
  this._assert(!this._state.timeout, '!this._state.timeout');
1359
1371
  this._state.timeout = true;
1372
+ this._logger?.error?.(`[RelayerAsyncRequest] Request timed out on ${this._url} (operation=${this._relayerOperation}, jobId=${this._jobId}, retryCount=${this._retryCount}, timeoutMs=${this._requestMaxDurationInMs})`, undefined);
1360
1373
  this._postAsyncOnProgressCallback({
1361
1374
  type: 'timeout',
1362
1375
  url: this._url,
@@ -1435,6 +1448,7 @@ export class RelayerAsyncRequest {
1435
1448
  * @throws {RelayerResponseStatusError} Always throws.
1436
1449
  */
1437
1450
  _throwUnexpectedStatusError(status, surfacedMessage) {
1451
+ this._logger?.error?.(`[RelayerAsyncRequest] Unexpected HTTP status ${status} on ${this._url} (operation=${this._relayerOperation}, jobId=${this._jobId})${surfacedMessage !== undefined ? `: ${surfacedMessage}` : ''}`, undefined);
1438
1452
  throw new RelayerResponseStatusError({
1439
1453
  fetchMethod: this._fetchMethod,
1440
1454
  status,
@@ -1467,6 +1481,7 @@ export class RelayerAsyncRequest {
1467
1481
  _throwRelayerResponseApiError(params) {
1468
1482
  // Clone
1469
1483
  const clonedRelayerApiError = JSON.parse(JSON.stringify(params.relayerApiError));
1484
+ this._logger?.error?.(`[RelayerAsyncRequest] Relayer API error on ${this._url} (status=${params.status}, operation=${this._relayerOperation}, jobId=${this._jobId}, retryCount=${this._retryCount}): label=${params.relayerApiError.label}, message=${params.relayerApiError.message}`, undefined);
1470
1485
  const args = {
1471
1486
  type: 'failed',
1472
1487
  url: this._url,
@@ -1510,6 +1525,7 @@ export class RelayerAsyncRequest {
1510
1525
  * @throws {RelayerRequestInternalError}
1511
1526
  */
1512
1527
  _throwInternalError(message) {
1528
+ this._logger?.error?.(`[RelayerAsyncRequest] Internal error on ${this._url} (operation=${this._relayerOperation}): ${message}`, undefined);
1513
1529
  throw new RelayerRequestInternalError({
1514
1530
  operation: this._relayerOperation,
1515
1531
  url: this._url,
@@ -1524,6 +1540,7 @@ export class RelayerAsyncRequest {
1524
1540
  */
1525
1541
  _throwMaxRetryError(params) {
1526
1542
  const elapsed = this._jobIdTimestamp !== undefined ? Date.now() - this._jobIdTimestamp : 0;
1543
+ this._logger?.error?.(`[RelayerAsyncRequest] Max retry count exceeded on ${this._url} (${params.fetchMethod}, operation=${this._relayerOperation}, jobId=${this._jobId}, retryCount=${this._retryCount}, elapsed=${elapsed}ms).`, undefined);
1527
1544
  throw new RelayerMaxRetryError({
1528
1545
  operation: this._relayerOperation,
1529
1546
  url: this._url,
@@ -1539,6 +1556,7 @@ export class RelayerAsyncRequest {
1539
1556
  * @throws {RelayerResponseInvalidBodyError} Always throws.
1540
1557
  */
1541
1558
  _throwResponseInvalidBodyError(params) {
1559
+ this._logger?.error?.(`[RelayerAsyncRequest] Unexpected response body on ${this._url} (status=${params.status}, operation=${this._relayerOperation}, jobId=${this._jobId}): ${params.bodyJson}`, params.cause);
1542
1560
  throw new RelayerResponseInvalidBodyError({
1543
1561
  ...params,
1544
1562
  fetchMethod: this._fetchMethod,
@@ -1555,6 +1573,7 @@ export class RelayerAsyncRequest {
1555
1573
  * @throws {RelayerFetchError} Always throws.
1556
1574
  */
1557
1575
  _throwFetchError(params) {
1576
+ this._logger?.error?.(`[RelayerAsyncRequest] ${params.message} (url=${this._url}, operation=${this._relayerOperation}, jobId=${this._jobId}, retryCount=${this._retryCount})`, params.cause);
1558
1577
  throw new RelayerFetchError({
1559
1578
  ...params,
1560
1579
  elapsed: this._elapsed,
@@ -1596,6 +1615,7 @@ export class RelayerAsyncRequest {
1596
1615
  if (this._debug) {
1597
1616
  console.log(`[RelayerAsyncRequest]:${functionName}: ${message}`);
1598
1617
  }
1618
+ this._logger?.debug?.(`[RelayerAsyncRequest]:${functionName}: ${message}`);
1599
1619
  }
1600
1620
  }
1601
1621
  // Warning: the following condition should always stand!
@@ -1 +1 @@
1
- {"version":3,"file":"RelayerAsyncRequest.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/RelayerAsyncRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RelayerAsyncRequest.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/RelayerAsyncRequest.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ export async function fetchCoprocessorSignatures(relayerClient, parameters) {
22
22
  url,
23
23
  payload: inputProofPayload,
24
24
  options,
25
+ logger: relayerClient.runtime.config.logger,
25
26
  });
26
27
  const result = (await request.run());
27
28
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchCoprocessorSignatures.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchCoprocessorSignatures.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,gFAAgF;AAChF,6BAA6B;AAC7B,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,aAAuC,EACvC,UAAgD;IAEhD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,iBAAiB,GAA2B;QAChD,+BAA+B,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACtF,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe;QAChD,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QACrD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE;QACzC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW;KACzC,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,aAAa;QAC/B,GAAG;QACH,OAAO,EAAE,iBAAiB;QAC1B,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA0B,CAAC;IAE9D,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,2BAA2B,EAAE,MAAM,CAAC,UAAU;QAC9C,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fetchCoprocessorSignatures.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchCoprocessorSignatures.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,gFAAgF;AAChF,6BAA6B;AAC7B,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,aAAuC,EACvC,UAAgD;IAEhD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,iBAAiB,GAA2B;QAChD,+BAA+B,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACtF,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe;QAChD,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QACrD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE;QACzC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW;KACzC,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,aAAa;QAC/B,GAAG;QACH,OAAO,EAAE,iBAAiB;QAC1B,OAAO;QACP,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;KAC5C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA0B,CAAC;IAE9D,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,2BAA2B,EAAE,MAAM,CAAC,UAAU;QAC9C,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC"}
@@ -37,6 +37,7 @@ export async function fetchDelegatedUserDecrypt(relayerClient, parameters) {
37
37
  url,
38
38
  payload: relayerPayload,
39
39
  options,
40
+ logger: relayerClient.runtime.config.logger,
40
41
  });
41
42
  const result = (await request.run());
42
43
  const shares = result.map((r) => {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchDelegatedUserDecryptV1.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchDelegatedUserDecryptV1.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,aAAuC,EACvC,UAA+C;IAE/C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,iCAAiC;IACjC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAE3E,MAAM,cAAc,GAAqC;QACvD,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5D,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAC9B,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC;QACJ,CAAC,CAAC;QACF,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,cAAc;QAC9D,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,YAAY;QAC1D,gBAAgB;QAChB,iBAAiB,EAAE,OAAO,CAAC,uBAAuB,CAAC,iBAAiB;QACpE,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,gBAAgB;QAClE,eAAe,EAAE,OAAO,CAAC,sBAAsB;QAC/C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC;QACtD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;QACpD,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;KAC/D,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,2BAA2B,CAAC,CAAC;IAE/E,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,wBAAwB;QAC1C,GAAG;QACH,OAAO,EAAE,cAAc;QACvB,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAoC,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAoC,CAAC;IAEzG,MAAM,MAAM,GAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrD,MAAM,KAAK,GAAwB;YACjC,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"fetchDelegatedUserDecryptV1.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchDelegatedUserDecryptV1.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,aAAuC,EACvC,UAA+C;IAE/C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,iCAAiC;IACjC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAE3E,MAAM,cAAc,GAAqC;QACvD,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5D,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAC9B,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC;QACJ,CAAC,CAAC;QACF,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,cAAc;QAC9D,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,YAAY;QAC1D,gBAAgB;QAChB,iBAAiB,EAAE,OAAO,CAAC,uBAAuB,CAAC,iBAAiB;QACpE,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,gBAAgB;QAClE,eAAe,EAAE,OAAO,CAAC,sBAAsB;QAC/C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC;QACtD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;QACpD,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;KAC/D,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,2BAA2B,CAAC,CAAC;IAE/E,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,wBAAwB;QAC1C,GAAG;QACH,OAAO,EAAE,cAAc;QACvB,OAAO;QACP,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;KAC5C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAoC,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAoC,CAAC;IAEzG,MAAM,MAAM,GAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrD,MAAM,KAAK,GAAwB;YACjC,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { RelayerResponseErrorBase } from '../../../errors/RelayerResponseErrorBase.js';
2
+ import { RelayerAsyncRequest } from './RelayerAsyncRequest.js';
3
+ import { buildRelayerUrlString, validateRelayerBaseUrl } from './relayerUrl.js';
4
+ //////////////////////////////////////////////////////////////////////////////
5
+ // fetchFeatures
6
+ //////////////////////////////////////////////////////////////////////////////
7
+ /**
8
+ * Probes whether the relayer exposes the unified user-decrypt route, and reports it as
9
+ * `relayerSupportsV3UserDecryptRoute`.
10
+ *
11
+ * There is no dedicated feature endpoint, so we detect the route by POSTing an **empty probe
12
+ * payload** to `v3/user-decrypt` and reading the outcome. Routing is path-based, so the body never
13
+ * decides existence:
14
+ *
15
+ * - **Route absent** → a user-decrypt POST does not expect a 404, so the request layer surfaces it
16
+ * as `status: 404` → `relayerSupportsV3UserDecryptRoute: false`.
17
+ * - **Route present** → the relayer answers the (invalid) probe with a 400 (or 429 / 5xx). Any such
18
+ * response proves the endpoint exists → `relayerSupportsV3UserDecryptRoute: true`.
19
+ * - **Auth rejected (401 / 403)** → the key is missing, bad, or expired (or an edge proxy blocked
20
+ * the request). That is not a capability answer, so we **fail loudly** (rethrow) rather than guess.
21
+ * `ensureRelayerFeatures` clears its in-flight promise on this rejection, so a retry with a valid
22
+ * key resolves cleanly.
23
+ *
24
+ * `options.auth` is forwarded so the probe can authenticate against relayers that require a key
25
+ * (e.g. mainnet); the resulting capability is itself auth-independent.
26
+ *
27
+ * Any non-response failure (network, DNS, timeout) is likewise rethrown so the caller fails loudly
28
+ * and retries instead of caching a wrong answer.
29
+ */
30
+ export async function fetchFeatures(relayerClient, parameters) {
31
+ const { options } = parameters;
32
+ const hasAuth = options?.auth !== undefined;
33
+ const relayerBaseUrl = validateRelayerBaseUrl(relayerClient.chain.fhevm.relayerUrl, hasAuth);
34
+ const url = buildRelayerUrlString(relayerBaseUrl, 'v3/user-decrypt');
35
+ const request = new RelayerAsyncRequest({
36
+ relayerOperation: 'USER_DECRYPT',
37
+ url,
38
+ // Deliberately-empty probe: a present route rejects it with a 400 (proving it exists); an absent
39
+ // route 404s. We never expect this request to succeed.
40
+ payload: {},
41
+ options,
42
+ // Do not use a logger here: this is a low-level probe.
43
+ // logger: relayerClient.runtime.config.logger,
44
+ });
45
+ try {
46
+ await request.run();
47
+ // Not expected from an empty payload — but if the route accepts it, it certainly exists.
48
+ return { relayerSupportsV3UserDecryptRoute: true };
49
+ }
50
+ catch (error) {
51
+ if (error instanceof RelayerResponseErrorBase) {
52
+ if (error.status === 404) {
53
+ // RelayerResponseStatusError(404)
54
+ return { relayerSupportsV3UserDecryptRoute: false };
55
+ }
56
+ // Auth rejected (missing / bad / expired key) or edge-blocked → fail loudly instead of
57
+ // reporting a capability: the caller supplied a key we could not authenticate with.
58
+ if (error.status === 401 || error.status === 403) {
59
+ throw error;
60
+ }
61
+ // Any other relayer response (400 rejects the empty probe, 429, 5xx) proves the route exists.
62
+ return { relayerSupportsV3UserDecryptRoute: true };
63
+ }
64
+ // Non-response failure (network / timeout): can't determine support — fail loudly.
65
+ throw error;
66
+ }
67
+ }
68
+ //# sourceMappingURL=fetchFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchFeatures.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchFeatures.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,aAAuC,EACvC,UAAmC;IAEnC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAE/B,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,cAAc;QAChC,GAAG;QACH,iGAAiG;QACjG,uDAAuD;QACvD,OAAO,EAAE,EAAE;QACX,OAAO;QACP,uDAAuD;QACvD,+CAA+C;KAChD,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC;QACpB,yFAAyF;QACzF,OAAO,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,wBAAwB,EAAE,CAAC;YAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACzB,kCAAkC;gBAClC,OAAO,EAAE,iCAAiC,EAAE,KAAK,EAAE,CAAC;YACtD,CAAC;YACD,uFAAuF;YACvF,oFAAoF;YACpF,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACjD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,8FAA8F;YAC9F,OAAO,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,mFAAmF;QACnF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -21,6 +21,7 @@ export async function fetchPublicDecrypt(relayerClient, parameters) {
21
21
  url,
22
22
  payload: p,
23
23
  options,
24
+ logger: relayerClient.runtime.config.logger,
24
25
  });
25
26
  const result = (await request.run());
26
27
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPublicDecrypt.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchPublicDecrypt.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAuC,EACvC,UAAwC;IAExC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,8CAA8C;IAC9C,MAAM,CAAC,GAAqC;QAC1C,iBAAiB,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,OAAO,CAAC,CAAC,UAAU,CAAC;QACtB,CAAC,CAAC;QACF,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,gBAAgB;QAClC,GAAG;QACH,OAAO,EAAE,CAAC;QACV,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA6B,CAAC;IAEjE,OAAO;QACL,4BAA4B,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QAC7D,gCAAgC,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAiB;QACjF,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fetchPublicDecrypt.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchPublicDecrypt.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAuC,EACvC,UAAwC;IAExC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,8CAA8C;IAC9C,MAAM,CAAC,GAAqC;QAC1C,iBAAiB,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,OAAO,CAAC,CAAC,UAAU,CAAC;QACtB,CAAC,CAAC;QACF,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,gBAAgB;QAClC,GAAG;QACH,OAAO,EAAE,CAAC;QACV,OAAO;QACP,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;KAC5C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA6B,CAAC;IAEjE,OAAO;QACL,4BAA4B,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QAC7D,gCAAgC,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAiB;QACjF,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC"}
@@ -61,6 +61,7 @@ export async function fetchUserDecryptV1(relayerClient, parameters) {
61
61
  url,
62
62
  payload: relayerPayload,
63
63
  options,
64
+ logger: relayerClient.runtime.config.logger,
64
65
  });
65
66
  const result = (await request.run());
66
67
  const shares = result.map((r) => {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchUserDecryptV1.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchUserDecryptV1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchUserDecryptV1.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchUserDecryptV1.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ export async function fetchUserDecryptV2(relayerClient, parameters) {
41
41
  url,
42
42
  payload: relayerPayload,
43
43
  options,
44
+ logger: relayerClient.runtime.config.logger,
44
45
  });
45
46
  const result = (await request.run());
46
47
  const shares = result.map((r) => {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchUserDecryptV2.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchUserDecryptV2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,kDAAkD;AAClD,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAuC,EACvC,UAAwC;IAExC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,8CAA8C;IAC9C,+EAA+E;IAC/E,MAAM,cAAc,GAA8B;QAChD,eAAe,EAAE,gCAAgC;QACjD,eAAe,EAAE;YACf,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClD,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAChC,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC,CAAC;YACH,WAAW,EAAE,OAAO,CAAC,uBAAuB,CAAC,WAAW;YACxD,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,gBAAgB;YAClE,eAAe,EAAE;gBACf,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,cAAc;gBAC9D,eAAe,EAAE,OAAO,CAAC,uBAAuB,CAAC,eAAe;aACjE;YACD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;YACpD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;SACrD;QACD,SAAS,EAAE,OAAO,CAAC,yBAAyB;KAC7C,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,cAAc;QAChC,GAAG;QACH,OAAO,EAAE,cAAc;QACvB,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA2B,CAAC;IAE/D,MAAM,MAAM,GAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrD,MAAM,KAAK,GAAwB;YACjC,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"fetchUserDecryptV2.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/fetchUserDecryptV2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,8EAA8E;AAC9E,kDAAkD;AAClD,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAuC,EACvC,UAAwC;IAExC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,8CAA8C;IAC9C,+EAA+E;IAC/E,MAAM,cAAc,GAA8B;QAChD,eAAe,EAAE,gCAAgC;QACjD,eAAe,EAAE;YACf,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClD,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAChC,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC,CAAC;YACH,WAAW,EAAE,OAAO,CAAC,uBAAuB,CAAC,WAAW;YACxD,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,gBAAgB;YAClE,eAAe,EAAE;gBACf,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,cAAc;gBAC9D,eAAe,EAAE,OAAO,CAAC,uBAAuB,CAAC,eAAe;aACjE;YACD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;YACpD,SAAS,EAAE,OAAO,CAAC,uBAAuB,CAAC,SAAS;SACrD;QACD,SAAS,EAAE,OAAO,CAAC,yBAAyB;KAC7C,CAAC;IAEF,MAAM,OAAO,GAAY,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC;IACrD,MAAM,cAAc,GAAQ,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClG,MAAM,GAAG,GAAG,qBAAqB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC;QACtC,gBAAgB,EAAE,cAAc;QAChC,GAAG;QACH,OAAO,EAAE,cAAc;QACvB,OAAO;QACP,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;KAC5C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAA2B,CAAC;IAE/D,MAAM,MAAM,GAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrD,MAAM,KAAK,GAAwB;YACjC,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -4,6 +4,7 @@ import { fetchPublicDecrypt } from './fetchPublicDecrypt.js';
4
4
  import { fetchFheEncryptionKeyBytes } from './fetchFheEncryptionKeyBytes.js';
5
5
  import { fetchFheEncryptionKeySource } from './fetchFheEncryptionKeySource.js';
6
6
  import { fetchUserDecrypt } from './fetchUserDecrypt.js';
7
+ import { fetchFeatures } from './fetchFeatures.js';
7
8
  ////////////////////////////////////////////////////////////////////////////////
8
9
  // relayerModule
9
10
  ////////////////////////////////////////////////////////////////////////////////
@@ -16,6 +17,7 @@ export const relayerModule = () => {
16
17
  fetchPublicDecrypt,
17
18
  fetchUserDecrypt,
18
19
  fetchDelegatedUserDecrypt,
20
+ fetchFeatures,
19
21
  }),
20
22
  });
21
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,aAAa,GAAyB,GAAG,EAAE;IACtD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;YACrB,2BAA2B;YAC3B,0BAA0B;YAC1B,0BAA0B;YAC1B,kBAAkB;YAClB,gBAAgB;YAChB,yBAAyB;SAC1B,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../core/modules/relayer/module/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,aAAa,GAAyB,GAAG,EAAE;IACtD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;YACrB,2BAA2B;YAC3B,0BAA0B;YAC1B,0BAA0B;YAC1B,kBAAkB;YAClB,gBAAgB;YAChB,yBAAyB;YACzB,aAAa;SACd,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { getRelayerFeatures, getRelayerFeaturesPromise, setRelayerFeatures, setRelayerFeaturesPromise, } from '../runtime/CoreFhevm-p.js';
2
+ import { resolveRelayerFeatures } from './resolveRelayerFeatures-p.js';
3
+ ////////////////////////////////////////////////////////////////////////////////
4
+ /**
5
+ * Resolves the client's relayer feature list **exactly once** and returns it, deduping concurrent
6
+ * callers onto a single in-flight fetch. The relayer-service sibling of `ensureFrozenContext`.
7
+ *
8
+ * ### Why this lives beside the frozen context, not inside it
9
+ *
10
+ * The frozen context is the *version basis*, resolved at `init()` from pure chain reads with **no
11
+ * inputs**. Relayer features are a *service capability*, fetched over HTTP and — critically —
12
+ * requiring an `Auth` that only arrives with a public action call, never at `init()`. So they
13
+ * cannot share the frozen context's resolution point, and they are resolved **lazily** here: at the
14
+ * first relayer action that carries an `Auth`.
15
+ *
16
+ * ### Auth is used only on the first resolution
17
+ *
18
+ * The result is Auth-independent (a deployment capability — see {@link RelayerFeatures}). The first
19
+ * caller's `auth` authorizes the one discovery request; the result is then pinned on the client and
20
+ * every later caller — regardless of its own `auth` — reads the same snapshot. This is what keeps a
21
+ * single per-client cache correct while avoiding dynamic drift.
22
+ *
23
+ * ### Lifecycle — promise while resolving, data afterwards (mirrors `ensureFrozenContext`)
24
+ *
25
+ * - Already stored on the client → return it immediately (no re-fetch).
26
+ * - Otherwise resolve once; on success store it (`setRelayerFeatures`) so later reads are
27
+ * synchronous, and drop the transient promise.
28
+ * - The transient promise is cleared once resolution settles either way (`.finally`), so a first
29
+ * attempt that fails — e.g. an auth-less call to an auth-required endpoint — does not poison later
30
+ * auth'd calls: the next caller retries, and the first success wins.
31
+ *
32
+ * All state lives on the client instance (`getRelayerFeatures` / `getRelayerFeaturesPromise`), so it
33
+ * is scoped to the client's lifecycle and safe to use per-request in a server component.
34
+ *
35
+ * NOTE: this depends on the client-instance accessors `getRelayerFeatures` / `setRelayerFeatures` /
36
+ * `getRelayerFeaturesPromise` / `setRelayerFeaturesPromise` being added to `CoreFhevm-p.ts`, exactly
37
+ * parallel to the frozen-context slot (`#frozenContext` / `#frozenContextPromise` + their symbols).
38
+ * Wiring those into `CoreFhevm-p.ts` is intentionally out of scope of this folder.
39
+ *
40
+ * @internal
41
+ */
42
+ export async function ensureRelayerFeatures(fhevm, parameters) {
43
+ const existing = getRelayerFeatures(fhevm);
44
+ if (existing !== undefined) {
45
+ return existing;
46
+ }
47
+ let pending = getRelayerFeaturesPromise(fhevm);
48
+ if (pending === undefined) {
49
+ pending = resolveRelayerFeatures(fhevm, parameters)
50
+ .then((relayerFeatures) => {
51
+ setRelayerFeatures(fhevm, relayerFeatures);
52
+ return relayerFeatures;
53
+ })
54
+ .finally(() => {
55
+ setRelayerFeaturesPromise(fhevm, undefined);
56
+ });
57
+ setRelayerFeaturesPromise(fhevm, pending);
58
+ }
59
+ return pending;
60
+ }
61
+ //# sourceMappingURL=ensureRelayerFeatures-p.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureRelayerFeatures-p.js","sourceRoot":"","sources":["../../../core/relayerFeatures/ensureRelayerFeatures-p.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,sBAAsB,EAAwB,MAAM,+BAA+B,CAAC;AAW7F,gFAAgF;AAEhF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAc,EACd,UAAgD;IAEhD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC;aAChD,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE;YACxB,kBAAkB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YAC3C,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACL,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,15 @@
1
+ ////////////////////////////////////////////////////////////////////////////////
2
+ /**
3
+ * Resolves the relayer feature list via the relayer module's `fetchFeatures`.
4
+ *
5
+ * Unlike `resolveFhevmClientFrozenContext` (pure chain reads, no inputs), this is a network call to
6
+ * the relayer whose discovery endpoint requires an `Auth`. The `auth` is threaded through purely to
7
+ * authorize the request; the returned {@link RelayerFeatures} does not depend on it (see the type
8
+ * doc above), so the caller is free to resolve once and reuse across callers with different auths.
9
+ *
10
+ * @internal
11
+ */
12
+ export async function resolveRelayerFeatures(fhevm, parameters) {
13
+ return await fhevm.runtime.relayer.fetchFeatures(fhevm, { options: { auth: parameters.auth } });
14
+ }
15
+ //# sourceMappingURL=resolveRelayerFeatures-p.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveRelayerFeatures-p.js","sourceRoot":"","sources":["../../../core/relayerFeatures/resolveRelayerFeatures-p.ts"],"names":[],"mappings":"AA6BA,gFAAgF;AAEhF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAc,EACd,UAAgD;IAEhD,OAAO,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAClG,CAAC"}