@aztec/foundation 0.0.1-commit.9b94fc1 → 0.0.1-commit.9badcec54

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 (405) hide show
  1. package/dest/array/index.d.ts +2 -1
  2. package/dest/array/index.d.ts.map +1 -1
  3. package/dest/array/index.js +1 -0
  4. package/dest/array/sorted_array.d.ts +15 -0
  5. package/dest/array/sorted_array.d.ts.map +1 -0
  6. package/dest/array/sorted_array.js +109 -0
  7. package/dest/branded-types/block_number.d.ts +56 -0
  8. package/dest/branded-types/block_number.d.ts.map +1 -0
  9. package/dest/branded-types/block_number.js +78 -0
  10. package/dest/branded-types/buffer32_hash.d.ts +24 -0
  11. package/dest/branded-types/buffer32_hash.d.ts.map +1 -0
  12. package/dest/branded-types/buffer32_hash.js +19 -0
  13. package/dest/branded-types/checkpoint_number.d.ts +57 -0
  14. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  15. package/dest/branded-types/checkpoint_number.js +80 -0
  16. package/dest/branded-types/index.d.ts +5 -1
  17. package/dest/branded-types/index.d.ts.map +1 -1
  18. package/dest/branded-types/index.js +4 -0
  19. package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
  20. package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
  21. package/dest/branded-types/index_within_checkpoint.js +59 -0
  22. package/dest/branded-types/slot.d.ts +4 -1
  23. package/dest/branded-types/slot.d.ts.map +1 -1
  24. package/dest/branded-types/slot.js +3 -0
  25. package/dest/buffer/buffer16.d.ts +7 -2
  26. package/dest/buffer/buffer16.d.ts.map +1 -1
  27. package/dest/buffer/buffer16.js +4 -2
  28. package/dest/buffer/buffer32.d.ts +29 -59
  29. package/dest/buffer/buffer32.d.ts.map +1 -1
  30. package/dest/buffer/buffer32.js +30 -62
  31. package/dest/buffer/index.d.ts +2 -1
  32. package/dest/buffer/index.d.ts.map +1 -1
  33. package/dest/buffer/index.js +1 -0
  34. package/dest/buffer/utils.d.ts +3 -0
  35. package/dest/buffer/utils.d.ts.map +1 -0
  36. package/dest/buffer/utils.js +7 -0
  37. package/dest/collection/array.d.ts +14 -1
  38. package/dest/collection/array.d.ts.map +1 -1
  39. package/dest/collection/array.js +66 -0
  40. package/dest/collection/index.d.ts +2 -1
  41. package/dest/collection/index.d.ts.map +1 -1
  42. package/dest/collection/index.js +1 -0
  43. package/dest/collection/lru_set.d.ts +35 -0
  44. package/dest/collection/lru_set.d.ts.map +1 -0
  45. package/dest/collection/lru_set.js +95 -0
  46. package/dest/config/env_var.d.ts +2 -2
  47. package/dest/config/env_var.d.ts.map +1 -1
  48. package/dest/config/index.d.ts +61 -32
  49. package/dest/config/index.d.ts.map +1 -1
  50. package/dest/config/index.js +66 -37
  51. package/dest/config/network_config.d.ts +31 -1
  52. package/dest/config/network_config.d.ts.map +1 -1
  53. package/dest/config/network_config.js +6 -1
  54. package/dest/config/network_name.d.ts +2 -2
  55. package/dest/config/network_name.d.ts.map +1 -1
  56. package/dest/config/network_name.js +2 -0
  57. package/dest/config/parse-env.d.ts +3 -0
  58. package/dest/config/parse-env.d.ts.map +1 -0
  59. package/dest/config/parse-env.js +7 -0
  60. package/dest/config/secret_value.js +3 -1
  61. package/dest/crypto/aes128/index.d.ts +2 -1
  62. package/dest/crypto/aes128/index.d.ts.map +1 -1
  63. package/dest/crypto/aes128/index.js +11 -2
  64. package/dest/crypto/bls/bn254_keystore.d.ts +1 -10
  65. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -1
  66. package/dest/crypto/bls/bn254_keystore.js +1 -18
  67. package/dest/crypto/bls/index.js +1 -1
  68. package/dest/crypto/bn254/index.d.ts +35 -51
  69. package/dest/crypto/bn254/index.d.ts.map +1 -1
  70. package/dest/crypto/bn254/index.js +51 -140
  71. package/dest/crypto/ecdsa/signature.d.ts +11 -2
  72. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  73. package/dest/crypto/ecdsa/signature.js +2 -2
  74. package/dest/crypto/grumpkin/index.d.ts +4 -2
  75. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  76. package/dest/crypto/grumpkin/index.js +2 -1
  77. package/dest/crypto/keys/index.d.ts +2 -2
  78. package/dest/crypto/keys/index.d.ts.map +1 -1
  79. package/dest/crypto/keys/index.js +1 -1
  80. package/dest/crypto/pedersen/pedersen.wasm.d.ts +2 -2
  81. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  82. package/dest/crypto/pedersen/pedersen.wasm.js +1 -1
  83. package/dest/crypto/poseidon/index.d.ts +2 -3
  84. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  85. package/dest/crypto/poseidon/index.js +41 -43
  86. package/dest/crypto/random/randomness_singleton.d.ts +4 -3
  87. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  88. package/dest/crypto/random/randomness_singleton.js +5 -5
  89. package/dest/crypto/schnorr/index.d.ts +3 -2
  90. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  91. package/dest/crypto/schnorr/index.js +1 -1
  92. package/dest/crypto/schnorr/signature.d.ts +2 -2
  93. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  94. package/dest/crypto/schnorr/signature.js +2 -2
  95. package/dest/crypto/secp256k1-signer/utils.d.ts +12 -1
  96. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  97. package/dest/crypto/secp256k1-signer/utils.js +26 -0
  98. package/dest/crypto/sha256/index.d.ts +2 -2
  99. package/dest/crypto/sha256/index.d.ts.map +1 -1
  100. package/dest/crypto/sha256/index.js +1 -1
  101. package/dest/crypto/sha512/index.d.ts +2 -2
  102. package/dest/crypto/sha512/index.d.ts.map +1 -1
  103. package/dest/crypto/sha512/index.js +1 -1
  104. package/dest/crypto/signature/index.d.ts +2 -2
  105. package/dest/crypto/signature/index.d.ts.map +1 -1
  106. package/dest/crypto/sync/pedersen/index.d.ts +2 -2
  107. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  108. package/dest/crypto/sync/pedersen/index.js +1 -1
  109. package/dest/crypto/sync/poseidon/index.d.ts +2 -3
  110. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  111. package/dest/crypto/sync/poseidon/index.js +1 -9
  112. package/dest/{fields/bls12_fields.d.ts → curves/bls12/field.d.ts} +3 -3
  113. package/dest/curves/bls12/field.d.ts.map +1 -0
  114. package/dest/{fields/bls12_fields.js → curves/bls12/field.js} +11 -13
  115. package/dest/curves/bls12/index.d.ts +3 -0
  116. package/dest/curves/bls12/index.d.ts.map +1 -0
  117. package/dest/curves/bls12/index.js +2 -0
  118. package/dest/{fields/bls12_point.d.ts → curves/bls12/point.d.ts} +13 -4
  119. package/dest/curves/bls12/point.d.ts.map +1 -0
  120. package/dest/{fields/bls12_point.js → curves/bls12/point.js} +10 -8
  121. package/dest/{fields/fields.d.ts → curves/bn254/field.d.ts} +24 -30
  122. package/dest/curves/bn254/field.d.ts.map +1 -0
  123. package/dest/{fields/fields.js → curves/bn254/field.js} +55 -61
  124. package/dest/curves/bn254/index.d.ts +3 -0
  125. package/dest/curves/bn254/index.d.ts.map +1 -0
  126. package/dest/curves/bn254/index.js +2 -0
  127. package/dest/curves/bn254/point.d.ts +54 -0
  128. package/dest/curves/bn254/point.d.ts.map +1 -0
  129. package/dest/curves/bn254/point.js +143 -0
  130. package/dest/curves/grumpkin/index.d.ts +10 -0
  131. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  132. package/dest/curves/grumpkin/index.js +3 -0
  133. package/dest/{fields → curves/grumpkin}/point.d.ts +16 -7
  134. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  135. package/dest/{fields → curves/grumpkin}/point.js +14 -11
  136. package/dest/error/index.d.ts +4 -4
  137. package/dest/error/index.d.ts.map +1 -1
  138. package/dest/eth-address/index.d.ts +3 -2
  139. package/dest/eth-address/index.d.ts.map +1 -1
  140. package/dest/eth-address/index.js +10 -6
  141. package/dest/eth-signature/eth_signature.d.ts +5 -1
  142. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  143. package/dest/eth-signature/eth_signature.js +7 -2
  144. package/dest/fifo/fifo_frame_reader.d.ts +41 -0
  145. package/dest/fifo/fifo_frame_reader.d.ts.map +1 -0
  146. package/dest/fifo/fifo_frame_reader.js +74 -0
  147. package/dest/fifo/index.d.ts +2 -0
  148. package/dest/fifo/index.d.ts.map +1 -0
  149. package/dest/fifo/index.js +1 -0
  150. package/dest/iterator/filter.d.ts +3 -0
  151. package/dest/iterator/filter.d.ts.map +1 -0
  152. package/dest/iterator/filter.js +7 -0
  153. package/dest/iterator/index.d.ts +2 -0
  154. package/dest/iterator/index.d.ts.map +1 -0
  155. package/dest/iterator/index.js +1 -0
  156. package/dest/jest/setup.js +28 -1
  157. package/dest/json-rpc/client/fetch.d.ts +1 -1
  158. package/dest/json-rpc/client/fetch.d.ts.map +1 -1
  159. package/dest/json-rpc/client/fetch.js +4 -3
  160. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +2 -1
  161. package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -1
  162. package/dest/json-rpc/client/safe_json_rpc_client.js +1 -1
  163. package/dest/json-rpc/client/undici.d.ts +1 -1
  164. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  165. package/dest/json-rpc/client/undici.js +23 -4
  166. package/dest/json-rpc/fixtures/class_a.d.ts +3 -3
  167. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  168. package/dest/json-rpc/fixtures/class_b.d.ts +3 -3
  169. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  170. package/dest/json-rpc/server/api_key_auth.d.ts +19 -0
  171. package/dest/json-rpc/server/api_key_auth.d.ts.map +1 -0
  172. package/dest/json-rpc/server/api_key_auth.js +57 -0
  173. package/dest/json-rpc/server/index.d.ts +2 -1
  174. package/dest/json-rpc/server/index.d.ts.map +1 -1
  175. package/dest/json-rpc/server/index.js +1 -0
  176. package/dest/json-rpc/server/safe_json_rpc_server.js +1 -1
  177. package/dest/log/bigint-utils.d.ts +5 -0
  178. package/dest/log/bigint-utils.d.ts.map +1 -0
  179. package/dest/log/bigint-utils.js +21 -0
  180. package/dest/log/gcloud-logger-config.d.ts +1 -1
  181. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  182. package/dest/log/gcloud-logger-config.js +3 -0
  183. package/dest/log/libp2p_logger.d.ts +5 -2
  184. package/dest/log/libp2p_logger.d.ts.map +1 -1
  185. package/dest/log/libp2p_logger.js +14 -4
  186. package/dest/log/log-filters.d.ts +17 -4
  187. package/dest/log/log-filters.d.ts.map +1 -1
  188. package/dest/log/log-filters.js +26 -12
  189. package/dest/log/pino-logger-server.d.ts +9 -0
  190. package/dest/log/pino-logger-server.d.ts.map +1 -0
  191. package/dest/log/pino-logger-server.js +18 -0
  192. package/dest/log/pino-logger.d.ts +37 -8
  193. package/dest/log/pino-logger.d.ts.map +1 -1
  194. package/dest/log/pino-logger.js +138 -30
  195. package/dest/queue/base_memory_queue.d.ts +2 -2
  196. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  197. package/dest/queue/batch_queue.d.ts +1 -1
  198. package/dest/queue/batch_queue.d.ts.map +1 -1
  199. package/dest/queue/batch_queue.js +1 -0
  200. package/dest/queue/semaphore.d.ts +5 -1
  201. package/dest/queue/semaphore.d.ts.map +1 -1
  202. package/dest/retry/index.d.ts +22 -1
  203. package/dest/retry/index.d.ts.map +1 -1
  204. package/dest/retry/index.js +32 -0
  205. package/dest/schemas/api.d.ts +2 -2
  206. package/dest/schemas/api.d.ts.map +1 -1
  207. package/dest/schemas/schemas.d.ts +7 -3
  208. package/dest/schemas/schemas.d.ts.map +1 -1
  209. package/dest/schemas/schemas.js +9 -3
  210. package/dest/schemas/types.d.ts +31 -1
  211. package/dest/schemas/types.d.ts.map +1 -1
  212. package/dest/schemas/types.js +25 -1
  213. package/dest/serialize/buffer_reader.d.ts +14 -4
  214. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  215. package/dest/serialize/buffer_reader.js +26 -4
  216. package/dest/serialize/field_reader.d.ts +2 -2
  217. package/dest/serialize/field_reader.d.ts.map +1 -1
  218. package/dest/serialize/field_reader.js +1 -1
  219. package/dest/serialize/free_funcs.d.ts +2 -2
  220. package/dest/serialize/free_funcs.d.ts.map +1 -1
  221. package/dest/serialize/free_funcs.js +1 -1
  222. package/dest/serialize/serialize.d.ts +20 -2
  223. package/dest/serialize/serialize.d.ts.map +1 -1
  224. package/dest/serialize/serialize.js +32 -1
  225. package/dest/sleep/index.d.ts +4 -1
  226. package/dest/sleep/index.d.ts.map +1 -1
  227. package/dest/sleep/index.js +14 -1
  228. package/dest/string/index.js +1 -1
  229. package/dest/timer/date.d.ts +26 -1
  230. package/dest/timer/date.d.ts.map +1 -1
  231. package/dest/timer/date.js +36 -0
  232. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +11 -2
  233. package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +1 -1
  234. package/dest/transport/index.d.ts +1 -2
  235. package/dest/transport/index.d.ts.map +1 -1
  236. package/dest/transport/index.js +0 -1
  237. package/dest/transport/transport_client.js +2 -2
  238. package/dest/trees/balanced_merkle_tree_root.d.ts +16 -0
  239. package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
  240. package/dest/trees/{balanced_merkle_tree.js → balanced_merkle_tree_root.js} +3 -17
  241. package/dest/trees/hasher.d.ts +4 -1
  242. package/dest/trees/hasher.d.ts.map +1 -1
  243. package/dest/trees/hasher.js +10 -5
  244. package/dest/trees/index.d.ts +4 -4
  245. package/dest/trees/index.d.ts.map +1 -1
  246. package/dest/trees/index.js +3 -3
  247. package/dest/trees/indexed_merkle_tree.js +1 -1
  248. package/dest/trees/indexed_merkle_tree_calculator.d.ts +1 -1
  249. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  250. package/dest/trees/indexed_merkle_tree_calculator.js +5 -1
  251. package/dest/trees/membership_witness.d.ts +12 -2
  252. package/dest/trees/membership_witness.d.ts.map +1 -1
  253. package/dest/trees/membership_witness.js +10 -1
  254. package/dest/trees/merkle_tree_calculator.d.ts +4 -2
  255. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  256. package/dest/trees/merkle_tree_calculator.js +1 -5
  257. package/dest/trees/sibling_path.d.ts +4 -3
  258. package/dest/trees/sibling_path.d.ts.map +1 -1
  259. package/dest/trees/sibling_path.js +2 -6
  260. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +2 -3
  261. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -1
  262. package/dest/trees/unbalanced_merkle_tree_calculator.js +1 -5
  263. package/dest/trees/{unbalanced_merkle_tree.d.ts → unbalanced_merkle_tree_root.d.ts} +4 -7
  264. package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
  265. package/dest/trees/{unbalanced_merkle_tree.js → unbalanced_merkle_tree_root.js} +12 -51
  266. package/dest/trees/unbalanced_tree_store.d.ts +5 -1
  267. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  268. package/dest/trees/unbalanced_tree_store.js +49 -1
  269. package/dest/types/index.d.ts +6 -2
  270. package/dest/types/index.d.ts.map +1 -1
  271. package/dest/types/index.js +6 -0
  272. package/package.json +49 -9
  273. package/src/array/index.ts +1 -0
  274. package/src/array/sorted_array.ts +138 -0
  275. package/src/branded-types/block_number.ts +117 -0
  276. package/src/branded-types/buffer32_hash.ts +42 -0
  277. package/src/branded-types/checkpoint_number.ts +120 -0
  278. package/src/branded-types/index.ts +4 -0
  279. package/src/branded-types/index_within_checkpoint.ts +88 -0
  280. package/src/branded-types/slot.ts +5 -0
  281. package/src/buffer/buffer16.ts +5 -2
  282. package/src/buffer/buffer32.ts +38 -67
  283. package/src/buffer/index.ts +1 -0
  284. package/src/buffer/utils.ts +8 -0
  285. package/src/collection/array.ts +66 -0
  286. package/src/collection/index.ts +1 -0
  287. package/src/collection/lru_set.ts +115 -0
  288. package/src/config/env_var.ts +95 -24
  289. package/src/config/index.ts +148 -88
  290. package/src/config/network_config.ts +5 -0
  291. package/src/config/network_name.ts +4 -1
  292. package/src/config/parse-env.ts +4 -0
  293. package/src/crypto/aes128/index.ts +11 -2
  294. package/src/crypto/bls/bn254_keystore.ts +1 -24
  295. package/src/crypto/bls/index.ts +1 -1
  296. package/src/crypto/bn254/index.ts +50 -159
  297. package/src/crypto/ecdsa/signature.ts +2 -2
  298. package/src/crypto/grumpkin/index.ts +3 -1
  299. package/src/crypto/keys/index.ts +1 -1
  300. package/src/crypto/pedersen/pedersen.wasm.ts +1 -1
  301. package/src/crypto/poseidon/index.ts +43 -45
  302. package/src/crypto/random/randomness_singleton.ts +6 -4
  303. package/src/crypto/schnorr/index.ts +2 -1
  304. package/src/crypto/schnorr/signature.ts +2 -2
  305. package/src/crypto/secp256k1-signer/utils.ts +32 -0
  306. package/src/crypto/sha256/index.ts +1 -1
  307. package/src/crypto/sha512/index.ts +1 -1
  308. package/src/crypto/signature/index.ts +1 -1
  309. package/src/crypto/sync/pedersen/index.ts +1 -1
  310. package/src/crypto/sync/poseidon/index.ts +1 -10
  311. package/src/{fields/bls12_fields.ts → curves/bls12/field.ts} +5 -12
  312. package/src/curves/bls12/index.ts +2 -0
  313. package/src/{fields/bls12_point.ts → curves/bls12/point.ts} +7 -7
  314. package/src/{fields/fields.ts → curves/bn254/field.ts} +61 -86
  315. package/src/curves/bn254/index.ts +2 -0
  316. package/src/curves/bn254/point.ts +170 -0
  317. package/src/curves/grumpkin/index.ts +11 -0
  318. package/src/{fields → curves/grumpkin}/point.ts +13 -10
  319. package/src/eth-address/index.ts +8 -6
  320. package/src/eth-signature/eth_signature.ts +7 -1
  321. package/src/fifo/fifo_frame_reader.ts +98 -0
  322. package/src/fifo/index.ts +1 -0
  323. package/src/iterator/filter.ts +11 -0
  324. package/src/iterator/index.ts +1 -0
  325. package/src/jest/setup.mjs +31 -1
  326. package/src/json-rpc/client/fetch.ts +4 -3
  327. package/src/json-rpc/client/safe_json_rpc_client.ts +2 -0
  328. package/src/json-rpc/client/undici.ts +23 -3
  329. package/src/json-rpc/server/api_key_auth.ts +63 -0
  330. package/src/json-rpc/server/index.ts +1 -0
  331. package/src/json-rpc/server/safe_json_rpc_server.ts +1 -1
  332. package/src/log/bigint-utils.ts +25 -0
  333. package/src/log/gcloud-logger-config.ts +5 -0
  334. package/src/log/libp2p_logger.ts +12 -5
  335. package/src/log/log-filters.ts +29 -11
  336. package/src/log/pino-logger-server.ts +25 -0
  337. package/src/log/pino-logger.ts +162 -40
  338. package/src/queue/base_memory_queue.ts +1 -1
  339. package/src/queue/batch_queue.ts +1 -0
  340. package/src/queue/semaphore.ts +5 -0
  341. package/src/retry/index.ts +48 -0
  342. package/src/schemas/api.ts +4 -1
  343. package/src/schemas/schemas.ts +14 -3
  344. package/src/schemas/types.ts +33 -0
  345. package/src/serialize/buffer_reader.ts +36 -9
  346. package/src/serialize/field_reader.ts +1 -1
  347. package/src/serialize/free_funcs.ts +1 -1
  348. package/src/serialize/serialize.ts +33 -1
  349. package/src/sleep/index.ts +16 -1
  350. package/src/string/index.ts +1 -1
  351. package/src/timer/date.ts +52 -0
  352. package/src/transport/dispatch/create_dispatch_proxy.ts +11 -1
  353. package/src/transport/index.ts +0 -1
  354. package/src/transport/transport_client.ts +2 -2
  355. package/src/trees/{balanced_merkle_tree.ts → balanced_merkle_tree_root.ts} +3 -20
  356. package/src/trees/hasher.ts +12 -0
  357. package/src/trees/index.ts +3 -3
  358. package/src/trees/indexed_merkle_tree.ts +1 -1
  359. package/src/trees/indexed_merkle_tree_calculator.ts +5 -1
  360. package/src/trees/membership_witness.ts +9 -1
  361. package/src/trees/merkle_tree_calculator.ts +4 -10
  362. package/src/trees/sibling_path.ts +2 -3
  363. package/src/trees/unbalanced_merkle_tree_calculator.ts +1 -12
  364. package/src/trees/{unbalanced_merkle_tree.ts → unbalanced_merkle_tree_root.ts} +17 -64
  365. package/src/trees/unbalanced_tree_store.ts +57 -2
  366. package/src/types/index.ts +11 -1
  367. package/dest/crypto/bn254/bn254_utils.d.ts +0 -39
  368. package/dest/crypto/bn254/bn254_utils.d.ts.map +0 -1
  369. package/dest/crypto/bn254/bn254_utils.js +0 -56
  370. package/dest/crypto/index.d.ts +0 -17
  371. package/dest/crypto/index.d.ts.map +0 -1
  372. package/dest/crypto/index.js +0 -16
  373. package/dest/crypto/serialize.d.ts +0 -51
  374. package/dest/crypto/serialize.d.ts.map +0 -1
  375. package/dest/crypto/serialize.js +0 -68
  376. package/dest/fields/bls12_fields.d.ts.map +0 -1
  377. package/dest/fields/bls12_point.d.ts.map +0 -1
  378. package/dest/fields/coordinate.d.ts +0 -63
  379. package/dest/fields/coordinate.d.ts.map +0 -1
  380. package/dest/fields/coordinate.js +0 -96
  381. package/dest/fields/fields.d.ts.map +0 -1
  382. package/dest/fields/index.d.ts +0 -6
  383. package/dest/fields/index.d.ts.map +0 -1
  384. package/dest/fields/index.js +0 -5
  385. package/dest/fields/point.d.ts.map +0 -1
  386. package/dest/index.d.ts +0 -31
  387. package/dest/index.d.ts.map +0 -1
  388. package/dest/index.js +0 -31
  389. package/dest/json-rpc/server/telemetry.d.ts +0 -2
  390. package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
  391. package/dest/json-rpc/server/telemetry.js +0 -0
  392. package/dest/transport/dispatch/create_dispatch_fn.d.ts +0 -25
  393. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +0 -1
  394. package/dest/transport/dispatch/create_dispatch_fn.js +0 -17
  395. package/dest/trees/balanced_merkle_tree.d.ts +0 -22
  396. package/dest/trees/balanced_merkle_tree.d.ts.map +0 -1
  397. package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
  398. package/src/crypto/bn254/bn254_utils.ts +0 -64
  399. package/src/crypto/index.ts +0 -16
  400. package/src/crypto/serialize.ts +0 -85
  401. package/src/fields/coordinate.ts +0 -104
  402. package/src/fields/index.ts +0 -5
  403. package/src/index.ts +0 -31
  404. package/src/json-rpc/server/telemetry.ts +0 -0
  405. package/src/transport/dispatch/create_dispatch_fn.ts +0 -35
@@ -1,7 +1,6 @@
1
1
  export type EnvVar =
2
2
  | 'REGISTRY_CONTRACT_ADDRESS'
3
3
  | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS'
4
- | 'SLASH_FACTORY_CONTRACT_ADDRESS'
5
4
  | 'ACVM_BINARY_PATH'
6
5
  | 'ACVM_WORKING_DIRECTORY'
7
6
  | 'API_KEY'
@@ -12,6 +11,10 @@ export type EnvVar =
12
11
  | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS'
13
12
  | 'ARCHIVER_BATCH_SIZE'
14
13
  | 'AZTEC_ADMIN_PORT'
14
+ | 'AZTEC_NODE_DEBUG'
15
+ | 'AZTEC_ADMIN_API_KEY_HASH'
16
+ | 'AZTEC_DISABLE_ADMIN_API_KEY'
17
+ | 'AZTEC_RESET_ADMIN_API_KEY'
15
18
  | 'AZTEC_NODE_ADMIN_URL'
16
19
  | 'AZTEC_NODE_URL'
17
20
  | 'AZTEC_PORT'
@@ -20,13 +23,16 @@ export type EnvVar =
20
23
  | 'BB_WORKING_DIRECTORY'
21
24
  | 'BB_NUM_IVC_VERIFIERS'
22
25
  | 'BB_IVC_CONCURRENCY'
26
+ | 'BB_CHONK_VERIFY_MAX_BATCH'
27
+ | 'BB_CHONK_VERIFY_BATCH_CONCURRENCY'
23
28
  | 'BOOTSTRAP_NODES'
24
- | 'BLOB_SINK_ARCHIVE_API_URL'
25
- | 'BLOB_SINK_PORT'
26
- | 'BLOB_SINK_URL'
29
+ | 'BLOB_ARCHIVE_API_URL'
30
+ | 'BLOB_FILE_STORE_URLS'
31
+ | 'BLOB_FILE_STORE_UPLOAD_URL'
32
+ | 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES'
27
33
  | 'BOT_DA_GAS_LIMIT'
28
34
  | 'BOT_FEE_PAYMENT_METHOD'
29
- | 'BOT_BASE_FEE_PADDING'
35
+ | 'BOT_MIN_FEE_PADDING'
30
36
  | 'BOT_FLUSH_SETUP_TRANSACTIONS'
31
37
  | 'BOT_FOLLOW_CHAIN'
32
38
  | 'BOT_L2_GAS_LIMIT'
@@ -46,7 +52,10 @@ export type EnvVar =
46
52
  | 'BOT_TX_MINED_WAIT_SECONDS'
47
53
  | 'BOT_MAX_CONSECUTIVE_ERRORS'
48
54
  | 'BOT_STOP_WHEN_UNHEALTHY'
49
- | 'BOT_AMM_TXS'
55
+ | 'BOT_MODE'
56
+ | 'BOT_L2_TO_L1_MESSAGES_PER_TX'
57
+ | 'BOT_L1_TO_L2_SEED_COUNT'
58
+ | 'BOT_L1_TO_L2_SEED_INTERVAL'
50
59
  | 'COINBASE'
51
60
  | 'CRS_PATH'
52
61
  | 'DATA_DIRECTORY'
@@ -55,6 +64,7 @@ export type EnvVar =
55
64
  | 'BLOB_SINK_MAP_SIZE_KB'
56
65
  | 'P2P_STORE_MAP_SIZE_KB'
57
66
  | 'PROVER_BROKER_STORE_MAP_SIZE_KB'
67
+ | 'SIGNING_PROTECTION_MAP_SIZE_KB'
58
68
  | 'WS_DB_MAP_SIZE_KB'
59
69
  | 'ARCHIVE_TREE_MAP_SIZE_KB'
60
70
  | 'NULLIFIER_TREE_MAP_SIZE_KB'
@@ -63,23 +73,27 @@ export type EnvVar =
63
73
  | 'PUBLIC_DATA_TREE_MAP_SIZE_KB'
64
74
  | 'DEBUG'
65
75
  | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY'
66
- | 'DEPLOY_AZTEC_CONTRACTS_SALT'
76
+ | 'ENABLE_PROVER_NODE'
67
77
  | 'ETHEREUM_HOSTS'
78
+ | 'ETHEREUM_DEBUG_HOSTS'
79
+ | 'ETHEREUM_ALLOW_NO_DEBUG_HOSTS'
68
80
  | 'FEE_RECIPIENT'
69
81
  | 'FORCE_COLOR'
70
82
  | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS'
71
83
  | 'KEY_STORE_DIRECTORY'
72
84
  | 'L1_CHAIN_ID'
73
85
  | 'L1_CONSENSUS_HOST_URLS'
86
+ | 'ETHEREUM_HTTP_TIMEOUT_MS'
74
87
  | 'L1_CONSENSUS_HOST_API_KEYS'
75
88
  | 'L1_CONSENSUS_HOST_API_KEY_HEADERS'
89
+ | 'L1_TX_FAILED_STORE'
76
90
  | 'LOG_JSON'
77
91
  | 'LOG_MULTILINE'
92
+ | 'LOG_NO_COLOR_PER_ACTOR'
78
93
  | 'LOG_LEVEL'
79
94
  | 'MNEMONIC'
80
95
  | 'NETWORK'
81
96
  | 'NETWORK_CONFIG_LOCATION'
82
- | 'NO_PXE'
83
97
  | 'USE_GCLOUD_LOGGING'
84
98
  | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT'
85
99
  | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT'
@@ -92,7 +106,12 @@ export type EnvVar =
92
106
  | 'PUBLIC_OTEL_INCLUDE_METRICS'
93
107
  | 'PUBLIC_OTEL_COLLECT_FROM'
94
108
  | 'PUBLIC_OTEL_OPT_OUT'
109
+ | 'P2P_BATCH_TX_REQUESTER_SMART_PARALLEL_WORKER_COUNT'
110
+ | 'P2P_BATCH_TX_REQUESTER_DUMB_PARALLEL_WORKER_COUNT'
111
+ | 'P2P_BATCH_TX_REQUESTER_TX_BATCH_SIZE'
112
+ | 'P2P_BATCH_TX_REQUESTER_BAD_PEER_THRESHOLD'
95
113
  | 'P2P_BLOCK_CHECK_INTERVAL_MS'
114
+ | 'P2P_SLOT_CHECK_INTERVAL_MS'
96
115
  | 'P2P_BLOCK_REQUEST_BATCH_SIZE'
97
116
  | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK'
98
117
  | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS'
@@ -113,6 +132,7 @@ export type EnvVar =
113
132
  | 'P2P_L2_QUEUE_SIZE'
114
133
  | 'P2P_MAX_PEERS'
115
134
  | 'P2P_PEER_CHECK_INTERVAL_MS'
135
+ | 'P2P_PEER_FAILED_BAN_TIME_MS'
116
136
  | 'P2P_PEER_PENALTY_VALUES'
117
137
  | 'P2P_QUERY_FOR_IP'
118
138
  | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS'
@@ -131,12 +151,12 @@ export type EnvVar =
131
151
  | 'P2P_TRUSTED_PEERS'
132
152
  | 'P2P_PRIVATE_PEERS'
133
153
  | 'P2P_PREFERRED_PEERS'
134
- | 'P2P_MAX_TX_POOL_SIZE'
135
- | 'P2P_TX_POOL_OVERFLOW_FACTOR'
154
+ | 'P2P_MAX_PENDING_TX_COUNT'
136
155
  | 'P2P_SEEN_MSG_CACHE_SIZE'
137
- | 'P2P_DROP_TX'
138
156
  | 'P2P_DROP_TX_CHANCE'
139
157
  | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG'
158
+ | 'P2P_MIN_TX_POOL_AGE_MS'
159
+ | 'P2P_RPC_PRICE_BUMP_PERCENTAGE'
140
160
  | 'DEBUG_P2P_INSTRUMENT_MESSAGES'
141
161
  | 'PEER_ID_PRIVATE_KEY'
142
162
  | 'PEER_ID_PRIVATE_KEY_PATH'
@@ -150,7 +170,11 @@ export type EnvVar =
150
170
  | 'PROVER_BROKER_BATCH_INTERVAL_MS'
151
171
  | 'PROVER_BROKER_BATCH_SIZE'
152
172
  | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR'
173
+ | 'PROVER_BROKER_DEBUG_REPLAY_ENABLED'
174
+ | 'PROVER_CANCEL_JOBS_ON_STOP'
175
+ | 'PROVER_ENQUEUE_CONCURRENCY'
153
176
  | 'PROVER_COORDINATION_NODE_URLS'
177
+ | 'PROVER_PROOF_STORE'
154
178
  | 'PROVER_FAILED_PROOF_STORE'
155
179
  | 'PROVER_NODE_FAILED_EPOCH_STORE'
156
180
  | 'PROVER_NODE_DISABLE_PROOF_PUBLISH'
@@ -166,6 +190,7 @@ export type EnvVar =
166
190
  | 'PROVER_PUBLISHER_PRIVATE_KEYS'
167
191
  | 'PROVER_PUBLISHER_ADDRESSES'
168
192
  | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES'
193
+ | 'PROVER_PUBLISHER_FORWARDER_ADDRESS'
169
194
  | 'PROVER_REAL_PROOFS'
170
195
  | 'PROVER_TEST_DELAY_FACTOR'
171
196
  | 'PROVER_TEST_DELAY_MS'
@@ -173,6 +198,7 @@ export type EnvVar =
173
198
  | 'PROVER_TEST_VERIFICATION_DELAY_MS'
174
199
  | 'PXE_L2_BLOCK_BATCH_SIZE'
175
200
  | 'PXE_PROVER_ENABLED'
201
+ | 'PXE_SYNC_CHAIN_TIP'
176
202
  | 'RPC_MAX_BATCH_SIZE'
177
203
  | 'RPC_MAX_BODY_SIZE'
178
204
  | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT'
@@ -180,24 +206,33 @@ export type EnvVar =
180
206
  | 'SENTINEL_ENABLED'
181
207
  | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS'
182
208
  | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS'
183
- | 'SEQ_MAX_BLOCK_SIZE_IN_BYTES'
209
+ | 'SEQ_ENABLE_PROPOSER_PIPELINING'
184
210
  | 'SEQ_MAX_TX_PER_BLOCK'
211
+ | 'SEQ_MAX_TX_PER_CHECKPOINT'
185
212
  | 'SEQ_MIN_TX_PER_BLOCK'
186
213
  | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS'
187
214
  | 'SEQ_MAX_DA_BLOCK_GAS'
188
215
  | 'SEQ_MAX_L2_BLOCK_GAS'
216
+ | 'SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER'
217
+ | 'SEQ_REDISTRIBUTE_CHECKPOINT_BUDGET'
189
218
  | 'SEQ_PUBLISHER_PRIVATE_KEY'
190
219
  | 'SEQ_PUBLISHER_PRIVATE_KEYS'
191
220
  | 'SEQ_PUBLISHER_ADDRESSES'
192
221
  | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES'
193
- | 'SEQ_TX_POLLING_INTERVAL_MS'
222
+ | 'SEQ_PUBLISHER_FORWARDER_ADDRESS'
223
+ | 'PUBLISHER_FUNDING_THRESHOLD'
224
+ | 'PUBLISHER_FUNDING_AMOUNT'
225
+ | 'SEQ_POLLING_INTERVAL_MS'
194
226
  | 'SEQ_ENFORCE_TIME_TABLE'
195
- | 'SEQ_MAX_L1_TX_INCLUSION_TIME_INTO_SLOT'
227
+ | 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT'
196
228
  | 'SEQ_ATTESTATION_PROPAGATION_TIME'
229
+ | 'SEQ_BLOCK_DURATION_MS'
230
+ | 'SEQ_LAST_BLOCK_DURATION_MS'
231
+ | 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT'
232
+ | 'SEQ_BUILD_CHECKPOINT_IF_EMPTY'
197
233
  | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER'
198
234
  | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER'
199
- | 'SLASH_MIN_PENALTY_PERCENTAGE'
200
- | 'SLASH_MAX_PENALTY_PERCENTAGE'
235
+ | 'SEQ_SKIP_CHECKPOINT_PUBLISH_PERCENT'
201
236
  | 'SLASH_VALIDATORS_ALWAYS'
202
237
  | 'SLASH_VALIDATORS_NEVER'
203
238
  | 'SLASH_PRUNE_PENALTY'
@@ -206,6 +241,8 @@ export type EnvVar =
206
241
  | 'SLASH_INACTIVITY_TARGET_PERCENTAGE'
207
242
  | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD'
208
243
  | 'SLASH_INVALID_BLOCK_PENALTY'
244
+ | 'SLASH_DUPLICATE_PROPOSAL_PENALTY'
245
+ | 'SLASH_DUPLICATE_ATTESTATION_PENALTY'
209
246
  | 'SLASH_OVERRIDE_PAYLOAD'
210
247
  | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY'
211
248
  | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY'
@@ -220,6 +257,7 @@ export type EnvVar =
220
257
  | 'TELEMETRY'
221
258
  | 'TEST_ACCOUNTS'
222
259
  | 'SPONSORED_FPC'
260
+ | 'PREFUND_ADDRESSES'
223
261
  | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS'
224
262
  | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS'
225
263
  | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS'
@@ -230,21 +268,38 @@ export type EnvVar =
230
268
  | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE'
231
269
  | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE'
232
270
  | 'TX_COLLECTION_NODE_RPC_URLS'
271
+ | 'TX_COLLECTION_MISSING_TXS_COLLECTOR_TYPE'
272
+ | 'TX_COLLECTION_FILE_STORE_URLS'
273
+ | 'TX_COLLECTION_FILE_STORE_SLOW_DELAY_MS'
274
+ | 'TX_COLLECTION_FILE_STORE_FAST_DELAY_MS'
275
+ | 'TX_COLLECTION_FILE_STORE_FAST_WORKER_COUNT'
276
+ | 'TX_COLLECTION_FILE_STORE_SLOW_WORKER_COUNT'
277
+ | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_BASE_MS'
278
+ | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_BASE_MS'
279
+ | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_MAX_MS'
280
+ | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_MAX_MS'
281
+ | 'TX_FILE_STORE_URL'
282
+ | 'TX_FILE_STORE_UPLOAD_CONCURRENCY'
283
+ | 'TX_FILE_STORE_MAX_QUEUE_SIZE'
284
+ | 'TX_FILE_STORE_ENABLED'
233
285
  | 'TX_PUBLIC_SETUP_ALLOWLIST'
234
286
  | 'TXE_PORT'
235
287
  | 'TRANSACTIONS_DISABLED'
236
288
  | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS'
237
289
  | 'VALIDATOR_DISABLED'
290
+ | 'VALIDATOR_MAX_DA_BLOCK_GAS'
291
+ | 'VALIDATOR_MAX_L2_BLOCK_GAS'
292
+ | 'VALIDATOR_MAX_TX_PER_BLOCK'
293
+ | 'VALIDATOR_MAX_TX_PER_CHECKPOINT'
238
294
  | 'VALIDATOR_PRIVATE_KEYS'
239
295
  | 'VALIDATOR_PRIVATE_KEY'
240
- | 'VALIDATOR_REEXECUTE'
241
296
  | 'VALIDATOR_ADDRESSES'
242
297
  | 'ROLLUP_VERSION'
243
298
  | 'WS_BLOCK_CHECK_INTERVAL_MS'
244
- | 'WS_PROVEN_BLOCKS_ONLY'
245
299
  | 'WS_BLOCK_REQUEST_BATCH_SIZE'
246
300
  | 'L1_READER_VIEM_POLLING_INTERVAL_MS'
247
301
  | 'WS_DATA_DIRECTORY'
302
+ | 'WS_NUM_HISTORIC_CHECKPOINTS'
248
303
  | 'WS_NUM_HISTORIC_BLOCKS'
249
304
  | 'ETHEREUM_SLOT_DURATION'
250
305
  | 'AZTEC_SLOT_DURATION'
@@ -252,12 +307,14 @@ export type EnvVar =
252
307
  | 'AZTEC_TARGET_COMMITTEE_SIZE'
253
308
  | 'AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET'
254
309
  | 'AZTEC_LAG_IN_EPOCHS_FOR_RANDAO'
310
+ | 'AZTEC_INBOX_LAG'
255
311
  | 'AZTEC_PROOF_SUBMISSION_EPOCHS'
256
312
  | 'AZTEC_ACTIVATION_THRESHOLD'
257
313
  | 'AZTEC_EJECTION_THRESHOLD'
258
314
  | 'AZTEC_LOCAL_EJECTION_THRESHOLD'
259
315
  | 'AZTEC_MANA_TARGET'
260
316
  | 'AZTEC_PROVING_COST_PER_MANA'
317
+ | 'AZTEC_INITIAL_ETH_PER_FEE_ASSET'
261
318
  | 'AZTEC_SLASHING_QUORUM'
262
319
  | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS'
263
320
  | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS'
@@ -268,9 +325,10 @@ export type EnvVar =
268
325
  | 'AZTEC_SLASH_AMOUNT_SMALL'
269
326
  | 'AZTEC_SLASH_AMOUNT_MEDIUM'
270
327
  | 'AZTEC_SLASH_AMOUNT_LARGE'
271
- | 'AZTEC_SLASHER_FLAVOR'
328
+ | 'AZTEC_SLASHER_ENABLED'
272
329
  | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM'
273
330
  | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE'
331
+ | 'AZTEC_GOVERNANCE_VOTING_DURATION'
274
332
  | 'AZTEC_EXIT_DELAY_SECONDS'
275
333
  | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE'
276
334
  | 'L1_GAS_PRICE_MAX'
@@ -279,6 +337,7 @@ export type EnvVar =
279
337
  | 'L1_BLOB_FEE_PER_GAS_GWEI_MAX'
280
338
  | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE'
281
339
  | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE'
340
+ | 'L1_MINIMUM_PRIORITY_FEE_PER_GAS_GWEI'
282
341
  | 'L1_FIXED_PRIORITY_FEE_PER_GAS'
283
342
  | 'L1_FIXED_PRIORITY_FEE_PER_GAS_GWEI'
284
343
  | 'L1_TX_MONITOR_MAX_ATTEMPTS'
@@ -295,13 +354,25 @@ export type EnvVar =
295
354
  | 'K8S_POD_NAME'
296
355
  | 'K8S_POD_UID'
297
356
  | 'K8S_NAMESPACE_NAME'
298
- | 'VALIDATOR_REEXECUTE_DEADLINE_MS'
299
- | 'ALWAYS_REEXECUTE_BLOCK_PROPOSALS'
300
- | 'AUTO_UPDATE'
301
- | 'AUTO_UPDATE_URL'
357
+ | 'ENABLE_VERSION_CHECK'
302
358
  | 'WEB3_SIGNER_URL'
303
359
  | 'SKIP_ARCHIVER_INITIAL_SYNC'
304
360
  | 'BLOB_ALLOW_EMPTY_SOURCES'
361
+ | 'BLOB_PREFER_FILESTORES'
362
+ | 'BLOB_FILE_STORE_TIMEOUT_MS'
305
363
  | 'FISHERMAN_MODE'
306
364
  | 'MAX_ALLOWED_ETH_CLIENT_DRIFT_SECONDS'
307
- | 'LEGACY_BLS_CLI';
365
+ | 'LEGACY_BLS_CLI'
366
+ | 'DEBUG_FORCE_TX_PROOF_VERIFICATION'
367
+ | 'VALIDATOR_HA_SIGNING_ENABLED'
368
+ | 'VALIDATOR_HA_NODE_ID'
369
+ | 'VALIDATOR_HA_POLLING_INTERVAL_MS'
370
+ | 'VALIDATOR_HA_SIGNING_TIMEOUT_MS'
371
+ | 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS'
372
+ | 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H'
373
+ | 'VALIDATOR_HA_DATABASE_URL'
374
+ | 'VALIDATOR_HA_RUN_MIGRATIONS'
375
+ | 'VALIDATOR_HA_POOL_MAX'
376
+ | 'VALIDATOR_HA_POOL_MIN'
377
+ | 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS'
378
+ | 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS';
@@ -1,6 +1,8 @@
1
- import { Fq, Fr } from '../fields/fields.js';
1
+ import { Fq, Fr } from '../curves/bn254/field.js';
2
+ import { createConsoleLogger } from '../log/console.js';
2
3
  import type { EnvVar } from './env_var.js';
3
4
  import { type NetworkNames, getActiveNetworkName } from './network_name.js';
5
+ import { parseBooleanEnv } from './parse-env.js';
4
6
  import { SecretValue } from './secret_value.js';
5
7
 
6
8
  export { SecretValue, getActiveNetworkName };
@@ -8,22 +10,30 @@ export type { EnvVar, NetworkNames };
8
10
  export type { NetworkConfig, NetworkConfigMap } from './network_config.js';
9
11
  export { NetworkConfigMapSchema, NetworkConfigSchema } from './network_config.js';
10
12
 
11
- export interface ConfigMapping {
13
+ export interface ConfigMapping<T> {
12
14
  env?: EnvVar;
13
- parseEnv?: (val: string) => any;
14
- defaultValue?: any;
15
+ /** Parse an env-var string into `T`. Throws on invalid input. */
16
+ parseEnv?: (val: string) => T;
17
+ defaultValue?: T;
15
18
  printDefault?: (val: any) => string;
16
19
  description: string;
17
20
  isBoolean?: boolean;
18
- nested?: Record<string, ConfigMapping>;
21
+ nested?: Record<string, ConfigMapping<any>>;
19
22
  fallback?: EnvVar[];
23
+ /**
24
+ * List of deprecated env vars that are still supported but will log a warning.
25
+ * These should also be included in the fallback array for parsing.
26
+ */
27
+ deprecatedFallback?: { env: EnvVar; message?: string }[];
20
28
  }
21
29
 
22
30
  export function isBooleanConfigValue<T>(obj: T, key: keyof T): boolean {
23
31
  return typeof obj[key] === 'boolean';
24
32
  }
25
33
 
26
- export type ConfigMappingsType<T> = Record<keyof T, ConfigMapping>;
34
+ export type ConfigMappingsType<T> = {
35
+ [K in keyof T]-?: ConfigMapping<Required<T>[K]>;
36
+ };
27
37
 
28
38
  /**
29
39
  * Shared utility function to get a value from environment variables with fallback support.
@@ -59,8 +69,8 @@ export function getValueFromEnvWithFallback<T>(
59
69
  }
60
70
  }
61
71
 
62
- // Parse the value if needed
63
- if (value !== undefined) {
72
+ // Parse the value if needed. Empty strings are treated as "not set".
73
+ if (value !== undefined && value !== '') {
64
74
  return parseFunc ? parseFunc(value) : (value as unknown as T);
65
75
  }
66
76
 
@@ -72,12 +82,28 @@ export function getConfigFromMappings<T>(configMappings: ConfigMappingsType<T>):
72
82
  const config = {} as T;
73
83
 
74
84
  for (const key in configMappings) {
75
- const { env, parseEnv, defaultValue, nested, fallback } = configMappings[key];
85
+ const { env, parseEnv, defaultValue, nested, fallback, deprecatedFallback } = configMappings[key];
76
86
  if (nested) {
77
87
  (config as any)[key] = getConfigFromMappings(nested);
78
88
  } else {
79
89
  // Use the shared utility function
80
- (config as any)[key] = getValueFromEnvWithFallback(env, parseEnv, defaultValue, fallback);
90
+ try {
91
+ (config as any)[key] = getValueFromEnvWithFallback(env, parseEnv, defaultValue, fallback);
92
+ } catch (e: any) {
93
+ throw new Error(`Failed to parse config '${key}' (env: ${env ?? 'none'}): ${e.message}`);
94
+ }
95
+
96
+ // Check for deprecated env vars and warn if logger is set
97
+ if (deprecatedFallback?.length) {
98
+ const userLog = createConsoleLogger('[DEPRECATED]');
99
+ for (const { env: deprecatedEnv, message } of deprecatedFallback) {
100
+ if (process.env[deprecatedEnv]) {
101
+ const warningMessage =
102
+ message ?? `Environment variable ${deprecatedEnv} is deprecated. Please use ${env} instead.`;
103
+ userLog(warningMessage, { deprecatedEnvVar: deprecatedEnv, newEnvVar: env });
104
+ }
105
+ }
106
+ }
81
107
  }
82
108
  }
83
109
 
@@ -104,7 +130,7 @@ export function omitConfigMappings<T, K extends keyof T>(
104
130
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
105
131
  * @returns Object with parseEnv and default values for a numerical config value
106
132
  */
107
- export function numberConfigHelper(defaultVal: number): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
133
+ export function numberConfigHelper(defaultVal: number): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'> {
108
134
  return {
109
135
  parseEnv: (val: string) => safeParseNumber(val, defaultVal),
110
136
  defaultValue: defaultVal,
@@ -119,7 +145,7 @@ export function numberConfigHelper(defaultVal: number): Pick<ConfigMapping, 'par
119
145
  export function floatConfigHelper(
120
146
  defaultVal: number,
121
147
  validationFn?: (val: number) => void,
122
- ): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
148
+ ): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'> {
123
149
  return {
124
150
  parseEnv: (val: string): number => {
125
151
  const parsed = safeParseFloat(val, defaultVal);
@@ -130,16 +156,49 @@ export function floatConfigHelper(
130
156
  };
131
157
  }
132
158
 
159
+ /**
160
+ * Parses an environment variable to a 0-1 percentage value
161
+ */
162
+ export function percentageConfigHelper(defaultVal: number): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'> {
163
+ return {
164
+ parseEnv: (val: string): number => {
165
+ const parsed = safeParseFloat(val, defaultVal);
166
+ if (parsed < 0 || parsed > 1) {
167
+ throw new TypeError(`Invalid percentage value: ${parsed} should be between 0 and 1`);
168
+ }
169
+
170
+ return parsed;
171
+ },
172
+ defaultValue: defaultVal,
173
+ };
174
+ }
175
+
133
176
  /**
134
177
  * Generates parseEnv and default values for a numerical config value.
135
178
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
136
179
  * @returns Object with parseEnv and default values for a numerical config value
137
180
  */
138
- export function bigintConfigHelper(defaultVal?: bigint): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
181
+ export function bigintConfigHelper(defaultVal: bigint): Pick<ConfigMapping<bigint>, 'parseEnv' | 'defaultValue'>;
182
+ export function bigintConfigHelper(): Pick<ConfigMapping<bigint | undefined>, 'parseEnv' | 'defaultValue'>;
183
+ export function bigintConfigHelper(
184
+ defaultVal?: bigint,
185
+ ): Pick<ConfigMapping<bigint | undefined>, 'parseEnv' | 'defaultValue'> {
139
186
  return {
140
187
  parseEnv: (val: string) => {
141
- if (val === '') {
142
- return defaultVal;
188
+ // Handle scientific notation (e.g. "1e+23", "2E23") which BigInt() doesn't accept directly.
189
+ // We parse it losslessly using bigint arithmetic instead of going through float64.
190
+ if (/[eE]/.test(val)) {
191
+ const match = val.match(/^(-?\d+(?:\.(\d+))?)[eE]([+-]?\d+)$/);
192
+ if (!match) {
193
+ throw new Error(`Cannot convert '${val}' to a BigInt`);
194
+ }
195
+ const digits = match[1].replace('.', '');
196
+ const decimalPlaces = match[2]?.length ?? 0;
197
+ const exponent = parseInt(match[3], 10) - decimalPlaces;
198
+ if (exponent < 0) {
199
+ throw new Error(`Cannot convert '${val}' to a BigInt: result is not an integer`);
200
+ }
201
+ return BigInt(digits) * 10n ** BigInt(exponent);
143
202
  }
144
203
  return BigInt(val);
145
204
  },
@@ -149,32 +208,37 @@ export function bigintConfigHelper(defaultVal?: bigint): Pick<ConfigMapping, 'pa
149
208
 
150
209
  /**
151
210
  * Generates parseEnv for an optional numerical config value.
211
+ * Empty strings are already handled by getValueFromEnvWithFallback.
152
212
  */
153
- export function optionalNumberConfigHelper(): Pick<ConfigMapping, 'parseEnv'> {
213
+ export function optionalNumberConfigHelper(): Pick<ConfigMapping<number>, 'parseEnv'> {
154
214
  return {
155
- parseEnv: (val: string | undefined) => {
156
- if (val !== undefined && val.length > 0) {
157
- const parsedValue = parseInt(val);
158
- return Number.isSafeInteger(parsedValue) ? parsedValue : undefined;
215
+ parseEnv: (val: string) => {
216
+ const parsedValue = parseInt(val);
217
+ if (!Number.isSafeInteger(parsedValue)) {
218
+ throw new Error(`Invalid number: ${val}`);
159
219
  }
160
- return undefined;
220
+ return parsedValue;
161
221
  },
162
222
  };
163
223
  }
164
224
 
165
225
  /** Generates parseEnv for an enum-like config value. */
226
+ export function enumConfigHelper<T extends string>(
227
+ values: T[],
228
+ defaultValue: NoInfer<T>,
229
+ ): Pick<ConfigMapping<T>, 'parseEnv' | 'defaultValue'>;
230
+ export function enumConfigHelper<T extends string>(
231
+ values: T[],
232
+ ): Pick<ConfigMapping<T | undefined>, 'parseEnv' | 'defaultValue'>;
166
233
  export function enumConfigHelper<T extends string>(
167
234
  values: T[],
168
235
  defaultValue?: NoInfer<T>,
169
- ): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
236
+ ): Pick<ConfigMapping<T | undefined>, 'parseEnv' | 'defaultValue'> {
170
237
  return {
171
238
  parseEnv: (val: string) => {
172
- const sanitizedVal = (val ?? '').trim().toLowerCase();
173
- if (values.includes(sanitizedVal as T)) {
174
- return sanitizedVal as T;
175
- }
176
- if (!val && defaultValue) {
177
- return defaultValue;
239
+ const sanitizedVal = val.trim().toLowerCase();
240
+ if (values.some(v => v.toLowerCase() === sanitizedVal)) {
241
+ return values.find(v => v.toLowerCase() === sanitizedVal)!;
178
242
  }
179
243
  throw new Error(`Invalid config value '${val}' (must be one of ${values.join(', ')})`);
180
244
  },
@@ -189,7 +253,9 @@ export function enumConfigHelper<T extends string>(
189
253
  */
190
254
  export function booleanConfigHelper(
191
255
  defaultVal = false,
192
- ): Required<Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & { parseVal: (val: string) => boolean }> {
256
+ ): Required<
257
+ Pick<ConfigMapping<boolean>, 'parseEnv' | 'defaultValue' | 'isBoolean'> & { parseVal: (val: string) => boolean }
258
+ > {
193
259
  const parse = (val: string | boolean) => (typeof val === 'boolean' ? val : parseBooleanEnv(val));
194
260
  return {
195
261
  parseEnv: parse,
@@ -199,94 +265,88 @@ export function booleanConfigHelper(
199
265
  };
200
266
  }
201
267
 
202
- export function secretValueConfigHelper<T>(parse: (val: string | undefined) => T): Required<
203
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
204
- parseVal: (val: string) => SecretValue<T>;
205
- }
206
- > {
268
+ export function secretValueConfigHelper<T>(parse: (val: string | undefined) => T): Pick<
269
+ ConfigMapping<SecretValue<T>>,
270
+ 'parseEnv' | 'defaultValue'
271
+ > & {
272
+ parseVal: (val: string) => SecretValue<T>;
273
+ } {
207
274
  const wrap = (val: string) => new SecretValue(parse(val));
208
275
  return {
209
276
  parseEnv: wrap,
210
277
  parseVal: wrap,
211
278
  defaultValue: new SecretValue(parse(undefined)),
212
- isBoolean: true,
213
279
  };
214
280
  }
215
281
 
216
- /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */
217
- export function parseBooleanEnv(val: string | undefined): boolean {
218
- return val !== undefined && ['1', 'true', 'TRUE'].includes(val);
219
- }
282
+ export { parseBooleanEnv } from './parse-env.js';
220
283
 
221
- export function secretStringConfigHelper(): Required<
222
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
223
- parseVal: (val: string) => SecretValue<string | undefined>;
224
- }
225
- >;
226
- export function secretStringConfigHelper(defaultValue: string): Required<
227
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
228
- parseVal: (val: string) => SecretValue<string>;
229
- }
230
- >;
231
- export function secretStringConfigHelper(defaultValue?: string): Required<
232
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
233
- parseVal: (val: string) => SecretValue<string | typeof defaultValue>;
234
- }
235
- > {
284
+ export function secretStringConfigHelper(): {
285
+ parseEnv: (val: string) => SecretValue<string>;
286
+ parseVal: (val: string) => SecretValue<string>;
287
+ defaultValue: undefined;
288
+ };
289
+ export function secretStringConfigHelper(defaultValue: string): {
290
+ parseEnv: (val: string) => SecretValue<string>;
291
+ parseVal: (val: string) => SecretValue<string>;
292
+ defaultValue: SecretValue<string>;
293
+ };
294
+ export function secretStringConfigHelper(defaultValue?: string): {
295
+ parseEnv: (val: string) => SecretValue<string>;
296
+ parseVal: (val: string) => SecretValue<string>;
297
+ defaultValue: SecretValue<string> | undefined;
298
+ } {
236
299
  const parse = (val: string) => new SecretValue(val);
237
300
  return {
238
301
  parseEnv: parse,
239
302
  parseVal: parse,
240
303
  defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined,
241
- isBoolean: true,
242
304
  };
243
305
  }
244
306
 
245
- export function secretFrConfigHelper(): Required<
246
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
247
- parseVal: (val: string) => SecretValue<Fr | undefined>;
248
- }
249
- >;
250
- export function secretFrConfigHelper(defaultValue: Fr): Required<
251
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
252
- parseVal: (val: string) => SecretValue<Fr>;
253
- }
254
- >;
255
- export function secretFrConfigHelper(defaultValue?: Fr): Required<
256
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
257
- parseVal: (val: string) => SecretValue<Fr | typeof defaultValue>;
258
- }
259
- > {
307
+ export function secretFrConfigHelper(): {
308
+ parseEnv: (val: string) => SecretValue<Fr>;
309
+ parseVal: (val: string) => SecretValue<Fr>;
310
+ defaultValue: undefined;
311
+ };
312
+ export function secretFrConfigHelper(defaultValue: Fr): {
313
+ parseEnv: (val: string) => SecretValue<Fr>;
314
+ parseVal: (val: string) => SecretValue<Fr>;
315
+ defaultValue: SecretValue<Fr>;
316
+ };
317
+ export function secretFrConfigHelper(defaultValue?: Fr): {
318
+ parseEnv: (val: string) => SecretValue<Fr>;
319
+ parseVal: (val: string) => SecretValue<Fr>;
320
+ defaultValue: SecretValue<Fr> | undefined;
321
+ } {
260
322
  const parse = (val: string) => new SecretValue(Fr.fromHexString(val));
261
323
  return {
262
324
  parseEnv: parse,
263
325
  parseVal: parse,
264
326
  defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined,
265
- isBoolean: true,
266
327
  };
267
328
  }
268
329
 
269
- export function secretFqConfigHelper(defaultValue: Fq): Required<
270
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
271
- parseVal: (val: string) => SecretValue<Fq>;
272
- }
273
- >;
274
- export function secretFqConfigHelper(): Required<
275
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
276
- parseVal: (val: string) => SecretValue<Fq | undefined>;
277
- }
278
- >;
279
- export function secretFqConfigHelper(defaultValue?: Fq): Required<
280
- Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
281
- parseVal: (val: string) => SecretValue<Fq | typeof defaultValue>;
282
- }
283
- > {
330
+ export function secretFqConfigHelper(): {
331
+ parseEnv: (val: string) => SecretValue<Fq>;
332
+ parseVal: (val: string) => SecretValue<Fq>;
333
+ defaultValue: undefined;
334
+ };
335
+ export function secretFqConfigHelper(defaultValue: Fq): {
336
+ parseEnv: (val: string) => SecretValue<Fq>;
337
+ parseVal: (val: string) => SecretValue<Fq>;
338
+ defaultValue: SecretValue<Fq>;
339
+ };
340
+ export function secretFqConfigHelper(defaultValue?: Fq): {
341
+ parseEnv: (val: string) => SecretValue<Fq>;
342
+ parseVal: (val: string) => SecretValue<Fq>;
343
+ defaultValue: SecretValue<Fq> | undefined;
344
+ } {
284
345
  const parse = (val: string) => new SecretValue(Fq.fromHexString(val));
285
346
  return {
286
347
  parseEnv: parse,
287
348
  parseVal: parse,
288
- defaultValue: typeof defaultValue !== 'undefined' ? new SecretValue(defaultValue) : undefined,
289
- isBoolean: true,
349
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined,
290
350
  };
291
351
  }
292
352