@aztec/stdlib 0.0.1-commit.e6bd8901 → 0.0.1-commit.ec7ac5448

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 (650) hide show
  1. package/dest/abi/abi.d.ts +138 -1
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +10 -2
  4. package/dest/abi/buffer.d.ts +14 -4
  5. package/dest/abi/buffer.d.ts.map +1 -1
  6. package/dest/abi/buffer.js +25 -4
  7. package/dest/abi/decoder.d.ts +6 -45
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +17 -70
  10. package/dest/abi/encoder.d.ts +1 -1
  11. package/dest/abi/encoder.d.ts.map +1 -1
  12. package/dest/abi/encoder.js +37 -6
  13. package/dest/abi/event_metadata_definition.d.ts +3 -1
  14. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  15. package/dest/abi/event_metadata_definition.js +1 -1
  16. package/dest/abi/function_call.d.ts +39 -9
  17. package/dest/abi/function_call.d.ts.map +1 -1
  18. package/dest/abi/function_call.js +20 -3
  19. package/dest/abi/function_selector.js +1 -1
  20. package/dest/abi/function_signature_decoder.d.ts +43 -0
  21. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  22. package/dest/abi/function_signature_decoder.js +66 -0
  23. package/dest/abi/index.d.ts +2 -1
  24. package/dest/abi/index.d.ts.map +1 -1
  25. package/dest/abi/index.js +1 -0
  26. package/dest/abi/selector.d.ts +2 -2
  27. package/dest/abi/selector.d.ts.map +1 -1
  28. package/dest/abi/selector.js +1 -1
  29. package/dest/abi/utils.d.ts +14 -1
  30. package/dest/abi/utils.d.ts.map +1 -1
  31. package/dest/abi/utils.js +15 -0
  32. package/dest/auth_witness/auth_witness.js +3 -3
  33. package/dest/avm/avm_proving_request.d.ts +166 -166
  34. package/dest/avm/revert_code.d.ts +9 -4
  35. package/dest/avm/revert_code.d.ts.map +1 -1
  36. package/dest/avm/revert_code.js +16 -21
  37. package/dest/block/block_data.d.ts +52 -0
  38. package/dest/block/block_data.d.ts.map +1 -0
  39. package/dest/block/block_data.js +12 -0
  40. package/dest/block/block_hash.d.ts +16 -18
  41. package/dest/block/block_hash.d.ts.map +1 -1
  42. package/dest/block/block_hash.js +21 -31
  43. package/dest/block/block_parameter.d.ts +4 -4
  44. package/dest/block/block_parameter.d.ts.map +1 -1
  45. package/dest/block/block_parameter.js +2 -2
  46. package/dest/block/in_block.d.ts +9 -9
  47. package/dest/block/in_block.d.ts.map +1 -1
  48. package/dest/block/in_block.js +5 -5
  49. package/dest/block/index.d.ts +2 -1
  50. package/dest/block/index.d.ts.map +1 -1
  51. package/dest/block/index.js +1 -0
  52. package/dest/block/l2_block.d.ts +11 -2
  53. package/dest/block/l2_block.d.ts.map +1 -1
  54. package/dest/block/l2_block.js +12 -2
  55. package/dest/block/l2_block_source.d.ts +117 -12
  56. package/dest/block/l2_block_source.d.ts.map +1 -1
  57. package/dest/block/l2_block_source.js +1 -0
  58. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  59. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  60. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  61. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +1 -1
  62. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  63. package/dest/block/l2_block_stream/l2_tips_store_base.js +17 -4
  64. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  65. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  66. package/dest/block/test/l2_tips_store_test_suite.js +3 -2
  67. package/dest/checkpoint/checkpoint.d.ts +28 -7
  68. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  69. package/dest/checkpoint/checkpoint.js +41 -17
  70. package/dest/checkpoint/checkpoint_data.d.ts +186 -0
  71. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  72. package/dest/checkpoint/checkpoint_data.js +36 -0
  73. package/dest/checkpoint/index.d.ts +3 -1
  74. package/dest/checkpoint/index.d.ts.map +1 -1
  75. package/dest/checkpoint/index.js +2 -0
  76. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  77. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  78. package/dest/checkpoint/published_checkpoint.js +1 -2
  79. package/dest/checkpoint/validate.d.ts +36 -0
  80. package/dest/checkpoint/validate.d.ts.map +1 -0
  81. package/dest/checkpoint/validate.js +120 -0
  82. package/dest/config/index.d.ts +3 -1
  83. package/dest/config/index.d.ts.map +1 -1
  84. package/dest/config/index.js +2 -0
  85. package/dest/config/pipelining-config.d.ts +19 -0
  86. package/dest/config/pipelining-config.d.ts.map +1 -0
  87. package/dest/config/pipelining-config.js +18 -0
  88. package/dest/config/sequencer-config.d.ts +12 -0
  89. package/dest/config/sequencer-config.d.ts.map +1 -0
  90. package/dest/config/sequencer-config.js +31 -0
  91. package/dest/contract/contract_address.d.ts +3 -3
  92. package/dest/contract/contract_address.js +7 -7
  93. package/dest/contract/contract_class.d.ts +2 -3
  94. package/dest/contract/contract_class.d.ts.map +1 -1
  95. package/dest/contract/contract_class_id.d.ts +3 -3
  96. package/dest/contract/contract_class_id.d.ts.map +1 -1
  97. package/dest/contract/contract_class_id.js +7 -6
  98. package/dest/contract/index.d.ts +1 -3
  99. package/dest/contract/index.d.ts.map +1 -1
  100. package/dest/contract/index.js +0 -2
  101. package/dest/contract/interfaces/contract_class.d.ts +3 -156
  102. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  103. package/dest/contract/interfaces/contract_class.js +1 -28
  104. package/dest/contract/interfaces/node-info.d.ts +3 -1
  105. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  106. package/dest/contract/interfaces/node-info.js +2 -1
  107. package/dest/contract/private_function.js +2 -2
  108. package/dest/database-version/database_version.d.ts +58 -0
  109. package/dest/database-version/database_version.d.ts.map +1 -0
  110. package/dest/database-version/database_version.js +69 -0
  111. package/dest/database-version/version_manager.d.ts +2 -50
  112. package/dest/database-version/version_manager.d.ts.map +1 -1
  113. package/dest/database-version/version_manager.js +1 -66
  114. package/dest/epoch-helpers/index.d.ts +17 -1
  115. package/dest/epoch-helpers/index.d.ts.map +1 -1
  116. package/dest/epoch-helpers/index.js +22 -2
  117. package/dest/file-store/factory.d.ts +4 -3
  118. package/dest/file-store/factory.d.ts.map +1 -1
  119. package/dest/file-store/factory.js +2 -2
  120. package/dest/file-store/http.d.ts +9 -2
  121. package/dest/file-store/http.d.ts.map +1 -1
  122. package/dest/file-store/http.js +20 -9
  123. package/dest/file-store/index.d.ts +2 -1
  124. package/dest/file-store/index.d.ts.map +1 -1
  125. package/dest/file-store/local.d.ts +3 -3
  126. package/dest/file-store/local.d.ts.map +1 -1
  127. package/dest/file-store/local.js +13 -4
  128. package/dest/file-store/s3.d.ts +1 -1
  129. package/dest/file-store/s3.d.ts.map +1 -1
  130. package/dest/file-store/s3.js +11 -3
  131. package/dest/gas/gas_fees.d.ts +1 -1
  132. package/dest/gas/gas_fees.d.ts.map +1 -1
  133. package/dest/gas/gas_fees.js +13 -1
  134. package/dest/gas/gas_settings.d.ts +40 -3
  135. package/dest/gas/gas_settings.d.ts.map +1 -1
  136. package/dest/gas/gas_settings.js +50 -6
  137. package/dest/ha-signing/config.d.ts +136 -0
  138. package/dest/ha-signing/config.d.ts.map +1 -0
  139. package/dest/ha-signing/config.js +97 -0
  140. package/dest/ha-signing/index.d.ts +4 -0
  141. package/dest/ha-signing/index.d.ts.map +1 -0
  142. package/dest/ha-signing/index.js +3 -0
  143. package/dest/ha-signing/local_config.d.ts +63 -0
  144. package/dest/ha-signing/local_config.d.ts.map +1 -0
  145. package/dest/ha-signing/local_config.js +24 -0
  146. package/dest/ha-signing/types.d.ts +85 -0
  147. package/dest/ha-signing/types.d.ts.map +1 -0
  148. package/dest/ha-signing/types.js +32 -0
  149. package/dest/hash/hash.d.ts +20 -1
  150. package/dest/hash/hash.d.ts.map +1 -1
  151. package/dest/hash/hash.js +45 -10
  152. package/dest/hash/map_slot.d.ts +1 -1
  153. package/dest/hash/map_slot.d.ts.map +1 -1
  154. package/dest/hash/map_slot.js +4 -3
  155. package/dest/interfaces/allowed_element.d.ts +26 -20
  156. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  157. package/dest/interfaces/allowed_element.js +8 -8
  158. package/dest/interfaces/archiver.d.ts +1 -1
  159. package/dest/interfaces/archiver.d.ts.map +1 -1
  160. package/dest/interfaces/archiver.js +14 -5
  161. package/dest/interfaces/aztec-node-admin.d.ts +124 -45
  162. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  163. package/dest/interfaces/aztec-node-admin.js +15 -7
  164. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  165. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  166. package/dest/interfaces/aztec-node-debug.js +18 -0
  167. package/dest/interfaces/aztec-node.d.ts +45 -60
  168. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  169. package/dest/interfaces/aztec-node.js +11 -12
  170. package/dest/interfaces/block-builder.d.ts +44 -11
  171. package/dest/interfaces/block-builder.d.ts.map +1 -1
  172. package/dest/interfaces/block-builder.js +16 -2
  173. package/dest/interfaces/client.d.ts +2 -1
  174. package/dest/interfaces/client.d.ts.map +1 -1
  175. package/dest/interfaces/client.js +1 -0
  176. package/dest/interfaces/configs.d.ts +77 -32
  177. package/dest/interfaces/configs.d.ts.map +1 -1
  178. package/dest/interfaces/configs.js +10 -3
  179. package/dest/interfaces/get_logs_response.d.ts +15 -8
  180. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  181. package/dest/interfaces/l2_logs_source.d.ts +5 -3
  182. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  183. package/dest/interfaces/merkle_tree_operations.d.ts +10 -20
  184. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  185. package/dest/interfaces/p2p.d.ts +4 -9
  186. package/dest/interfaces/p2p.d.ts.map +1 -1
  187. package/dest/interfaces/prover-broker.d.ts +16 -1
  188. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  189. package/dest/interfaces/prover-broker.js +4 -1
  190. package/dest/interfaces/prover-client.d.ts +11 -1
  191. package/dest/interfaces/prover-client.d.ts.map +1 -1
  192. package/dest/interfaces/prover-client.js +12 -1
  193. package/dest/interfaces/proving-job.d.ts +202 -202
  194. package/dest/interfaces/slasher.d.ts +9 -10
  195. package/dest/interfaces/slasher.d.ts.map +1 -1
  196. package/dest/interfaces/slasher.js +2 -2
  197. package/dest/interfaces/validator.d.ts +151 -54
  198. package/dest/interfaces/validator.d.ts.map +1 -1
  199. package/dest/interfaces/validator.js +11 -5
  200. package/dest/interfaces/world_state.d.ts +5 -4
  201. package/dest/interfaces/world_state.d.ts.map +1 -1
  202. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  203. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  204. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  205. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  206. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  207. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  208. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  209. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  210. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  211. package/dest/kernel/hints/index.d.ts +2 -2
  212. package/dest/kernel/hints/index.js +2 -2
  213. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  214. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  215. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  216. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  217. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  218. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  219. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  220. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  221. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  222. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  223. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  224. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  225. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  226. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  227. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  228. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +4 -3
  229. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  230. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +11 -7
  231. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  232. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  233. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  234. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  235. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  236. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  237. package/dest/kernel/private_validation_requests.d.ts +3 -3
  238. package/dest/kernel/private_validation_requests.js +9 -9
  239. package/dest/keys/derivation.d.ts +3 -3
  240. package/dest/keys/derivation.js +15 -15
  241. package/dest/keys/key_types.d.ts +3 -3
  242. package/dest/keys/key_types.d.ts.map +1 -1
  243. package/dest/keys/public_keys.js +2 -2
  244. package/dest/keys/utils.d.ts +1 -1
  245. package/dest/keys/utils.d.ts.map +1 -1
  246. package/dest/keys/utils.js +8 -4
  247. package/dest/kv-store/config.d.ts +17 -0
  248. package/dest/kv-store/config.d.ts.map +1 -0
  249. package/dest/kv-store/config.js +26 -0
  250. package/dest/kv-store/index.d.ts +2 -0
  251. package/dest/kv-store/index.d.ts.map +1 -0
  252. package/dest/kv-store/index.js +1 -0
  253. package/dest/l1-contracts/index.d.ts +2 -2
  254. package/dest/l1-contracts/index.d.ts.map +1 -1
  255. package/dest/l1-contracts/index.js +1 -1
  256. package/dest/logs/debug_log_store.d.ts +30 -0
  257. package/dest/logs/debug_log_store.d.ts.map +1 -0
  258. package/dest/logs/debug_log_store.js +30 -0
  259. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  260. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  261. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +35 -20
  262. package/dest/logs/extended_public_log.d.ts +13 -7
  263. package/dest/logs/extended_public_log.d.ts.map +1 -1
  264. package/dest/logs/index.d.ts +4 -2
  265. package/dest/logs/index.d.ts.map +1 -1
  266. package/dest/logs/index.js +3 -1
  267. package/dest/logs/log_filter.d.ts +4 -1
  268. package/dest/logs/log_filter.d.ts.map +1 -1
  269. package/dest/logs/log_filter.js +2 -1
  270. package/dest/logs/log_id.d.ts +17 -14
  271. package/dest/logs/log_id.d.ts.map +1 -1
  272. package/dest/logs/log_id.js +20 -17
  273. package/dest/logs/message_context.d.ts +4 -7
  274. package/dest/logs/message_context.d.ts.map +1 -1
  275. package/dest/logs/message_context.js +23 -9
  276. package/dest/logs/pending_tagged_log.d.ts +2 -3
  277. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  278. package/dest/logs/pending_tagged_log.js +2 -2
  279. package/dest/logs/pre_tag.d.ts +16 -11
  280. package/dest/logs/pre_tag.d.ts.map +1 -1
  281. package/dest/logs/pre_tag.js +2 -2
  282. package/dest/logs/private_log.d.ts +2 -2
  283. package/dest/logs/private_log.d.ts.map +1 -1
  284. package/dest/logs/public_log.d.ts +4 -3
  285. package/dest/logs/public_log.d.ts.map +1 -1
  286. package/dest/logs/public_log.js +2 -1
  287. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  288. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  289. package/dest/logs/shared_secret_derivation.js +15 -9
  290. package/dest/logs/siloed_tag.d.ts +8 -3
  291. package/dest/logs/siloed_tag.d.ts.map +1 -1
  292. package/dest/logs/siloed_tag.js +12 -6
  293. package/dest/logs/tag.js +1 -1
  294. package/dest/logs/tagging_index_range.d.ts +40 -0
  295. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  296. package/dest/logs/tagging_index_range.js +8 -0
  297. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  298. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  299. package/dest/logs/tx_scoped_l2_log.js +7 -0
  300. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  301. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  302. package/dest/messaging/l1_to_l2_message.js +11 -13
  303. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  304. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  305. package/dest/messaging/l2_to_l1_membership.d.ts +34 -8
  306. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  307. package/dest/messaging/l2_to_l1_membership.js +72 -29
  308. package/dest/noir/index.d.ts +3 -3
  309. package/dest/noir/index.d.ts.map +1 -1
  310. package/dest/note/index.d.ts +1 -2
  311. package/dest/note/index.d.ts.map +1 -1
  312. package/dest/note/index.js +0 -1
  313. package/dest/note/note_dao.d.ts +1 -1
  314. package/dest/note/note_dao.d.ts.map +1 -1
  315. package/dest/note/note_dao.js +1 -4
  316. package/dest/p2p/attestation_utils.d.ts +11 -1
  317. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  318. package/dest/p2p/attestation_utils.js +45 -0
  319. package/dest/p2p/block_proposal.d.ts +11 -4
  320. package/dest/p2p/block_proposal.d.ts.map +1 -1
  321. package/dest/p2p/block_proposal.js +2 -4
  322. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  323. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  324. package/dest/p2p/checkpoint_attestation.js +1 -1
  325. package/dest/p2p/checkpoint_proposal.d.ts +27 -13
  326. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  327. package/dest/p2p/checkpoint_proposal.js +30 -38
  328. package/dest/p2p/client_type.d.ts +2 -5
  329. package/dest/p2p/client_type.d.ts.map +1 -1
  330. package/dest/p2p/client_type.js +0 -7
  331. package/dest/p2p/consensus_payload.d.ts +12 -3
  332. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  333. package/dest/p2p/consensus_payload.js +22 -15
  334. package/dest/p2p/constants.d.ts +3 -1
  335. package/dest/p2p/constants.d.ts.map +1 -1
  336. package/dest/p2p/constants.js +1 -0
  337. package/dest/p2p/index.d.ts +1 -2
  338. package/dest/p2p/index.d.ts.map +1 -1
  339. package/dest/p2p/index.js +0 -1
  340. package/dest/p2p/peer_error.d.ts +3 -1
  341. package/dest/p2p/peer_error.d.ts.map +1 -1
  342. package/dest/p2p/peer_error.js +5 -0
  343. package/dest/p2p/topic_type.d.ts +3 -4
  344. package/dest/p2p/topic_type.d.ts.map +1 -1
  345. package/dest/p2p/topic_type.js +7 -24
  346. package/dest/proofs/chonk_proof.d.ts +46 -2
  347. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  348. package/dest/proofs/chonk_proof.js +85 -10
  349. package/dest/rollup/checkpoint_header.d.ts +2 -2
  350. package/dest/rollup/checkpoint_header.js +2 -2
  351. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
  352. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  353. package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
  354. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
  355. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  356. package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
  357. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  358. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  359. package/dest/slashing/helpers.d.ts +2 -2
  360. package/dest/slashing/helpers.d.ts.map +1 -1
  361. package/dest/slashing/helpers.js +6 -0
  362. package/dest/slashing/index.d.ts +2 -3
  363. package/dest/slashing/index.d.ts.map +1 -1
  364. package/dest/slashing/index.js +1 -2
  365. package/dest/slashing/serialization.d.ts +2 -6
  366. package/dest/slashing/serialization.d.ts.map +1 -1
  367. package/dest/slashing/serialization.js +0 -60
  368. package/dest/slashing/types.d.ts +10 -92
  369. package/dest/slashing/types.d.ts.map +1 -1
  370. package/dest/slashing/types.js +13 -15
  371. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  372. package/dest/slashing/votes.d.ts.map +1 -0
  373. package/dest/slashing/{tally.js → votes.js} +35 -3
  374. package/dest/stats/stats.d.ts +1 -3
  375. package/dest/stats/stats.d.ts.map +1 -1
  376. package/dest/tests/factories.d.ts +4 -4
  377. package/dest/tests/factories.d.ts.map +1 -1
  378. package/dest/tests/factories.js +32 -41
  379. package/dest/tests/mocks.d.ts +12 -3
  380. package/dest/tests/mocks.d.ts.map +1 -1
  381. package/dest/tests/mocks.js +46 -40
  382. package/dest/timetable/index.d.ts +87 -0
  383. package/dest/timetable/index.d.ts.map +1 -0
  384. package/dest/timetable/index.js +229 -0
  385. package/dest/trees/public_data_leaf.d.ts +2 -1
  386. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  387. package/dest/trees/public_data_leaf.js +7 -6
  388. package/dest/tx/block_header.d.ts +5 -2
  389. package/dest/tx/block_header.d.ts.map +1 -1
  390. package/dest/tx/block_header.js +8 -3
  391. package/dest/tx/capsule.d.ts +6 -2
  392. package/dest/tx/capsule.d.ts.map +1 -1
  393. package/dest/tx/capsule.js +9 -3
  394. package/dest/tx/global_variable_builder.d.ts +3 -2
  395. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  396. package/dest/tx/global_variables.d.ts +4 -4
  397. package/dest/tx/global_variables.d.ts.map +1 -1
  398. package/dest/tx/in_tx.d.ts +3 -3
  399. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  400. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  401. package/dest/tx/indexed_tx_effect.js +3 -2
  402. package/dest/tx/private_execution_result.d.ts +6 -6
  403. package/dest/tx/private_execution_result.d.ts.map +1 -1
  404. package/dest/tx/private_execution_result.js +6 -6
  405. package/dest/tx/profiling.d.ts +17 -5
  406. package/dest/tx/profiling.d.ts.map +1 -1
  407. package/dest/tx/profiling.js +15 -5
  408. package/dest/tx/protocol_contracts.d.ts +1 -1
  409. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  410. package/dest/tx/protocol_contracts.js +2 -2
  411. package/dest/tx/public_simulation_output.d.ts +4 -2
  412. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  413. package/dest/tx/public_simulation_output.js +7 -3
  414. package/dest/tx/simulated_tx.d.ts +116 -5
  415. package/dest/tx/simulated_tx.d.ts.map +1 -1
  416. package/dest/tx/simulated_tx.js +7 -4
  417. package/dest/tx/tx.d.ts +6 -5
  418. package/dest/tx/tx.d.ts.map +1 -1
  419. package/dest/tx/tx.js +18 -6
  420. package/dest/tx/tx_receipt.d.ts +33 -10
  421. package/dest/tx/tx_receipt.d.ts.map +1 -1
  422. package/dest/tx/tx_receipt.js +25 -21
  423. package/dest/tx/tx_request.js +2 -2
  424. package/dest/tx/validator/empty_validator.d.ts +2 -2
  425. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  426. package/dest/tx/validator/error_texts.d.ts +10 -2
  427. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  428. package/dest/tx/validator/error_texts.js +11 -1
  429. package/dest/tx/validator/tx_validator.d.ts +2 -2
  430. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  431. package/dest/update-checker/index.d.ts +3 -2
  432. package/dest/update-checker/index.d.ts.map +1 -1
  433. package/dest/update-checker/index.js +2 -1
  434. package/dest/update-checker/package_version.d.ts +3 -0
  435. package/dest/update-checker/package_version.d.ts.map +1 -0
  436. package/dest/update-checker/package_version.js +24 -0
  437. package/dest/update-checker/version_checker.d.ts +25 -0
  438. package/dest/update-checker/version_checker.d.ts.map +1 -0
  439. package/dest/update-checker/version_checker.js +50 -0
  440. package/dest/validators/errors.d.ts +6 -1
  441. package/dest/validators/errors.d.ts.map +1 -1
  442. package/dest/validators/errors.js +7 -0
  443. package/dest/validators/schemas.d.ts +30 -30
  444. package/dest/validators/schemas.d.ts.map +1 -1
  445. package/dest/validators/schemas.js +4 -3
  446. package/dest/validators/types.d.ts +3 -3
  447. package/dest/validators/types.d.ts.map +1 -1
  448. package/dest/versioning/versioning.d.ts +4 -2
  449. package/dest/versioning/versioning.d.ts.map +1 -1
  450. package/dest/versioning/versioning.js +4 -1
  451. package/dest/world-state/genesis_data.d.ts +11 -0
  452. package/dest/world-state/genesis_data.d.ts.map +1 -0
  453. package/dest/world-state/genesis_data.js +4 -0
  454. package/dest/world-state/index.d.ts +2 -1
  455. package/dest/world-state/index.d.ts.map +1 -1
  456. package/dest/world-state/index.js +1 -0
  457. package/package.json +26 -13
  458. package/src/abi/abi.ts +25 -2
  459. package/src/abi/buffer.ts +25 -4
  460. package/src/abi/decoder.ts +36 -82
  461. package/src/abi/encoder.ts +49 -6
  462. package/src/abi/event_metadata_definition.ts +2 -0
  463. package/src/abi/function_call.ts +25 -3
  464. package/src/abi/function_selector.ts +1 -1
  465. package/src/abi/function_signature_decoder.ts +77 -0
  466. package/src/abi/index.ts +1 -0
  467. package/src/abi/selector.ts +1 -1
  468. package/src/abi/utils.ts +25 -0
  469. package/src/auth_witness/auth_witness.ts +3 -3
  470. package/src/avm/revert_code.ts +26 -25
  471. package/src/block/block_data.ts +26 -0
  472. package/src/block/block_hash.ts +26 -47
  473. package/src/block/block_parameter.ts +3 -3
  474. package/src/block/in_block.ts +6 -6
  475. package/src/block/index.ts +1 -0
  476. package/src/block/l2_block.ts +15 -2
  477. package/src/block/l2_block_source.ts +51 -11
  478. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  479. package/src/block/l2_block_stream/l2_tips_store_base.ts +24 -12
  480. package/src/block/test/l2_tips_store_test_suite.ts +8 -1
  481. package/src/checkpoint/checkpoint.ts +54 -17
  482. package/src/checkpoint/checkpoint_data.ts +87 -0
  483. package/src/checkpoint/index.ts +2 -0
  484. package/src/checkpoint/published_checkpoint.ts +3 -1
  485. package/src/checkpoint/validate.ts +230 -0
  486. package/src/config/index.ts +2 -0
  487. package/src/config/pipelining-config.ts +31 -0
  488. package/src/config/sequencer-config.ts +47 -0
  489. package/src/contract/contract_address.ts +7 -7
  490. package/src/contract/contract_class.ts +3 -3
  491. package/src/contract/contract_class_id.ts +7 -6
  492. package/src/contract/index.ts +0 -2
  493. package/src/contract/interfaces/contract_class.ts +2 -82
  494. package/src/contract/interfaces/node-info.ts +3 -0
  495. package/src/contract/private_function.ts +2 -2
  496. package/src/database-version/database_version.ts +87 -0
  497. package/src/database-version/version_manager.ts +1 -77
  498. package/src/epoch-helpers/index.ts +39 -0
  499. package/src/file-store/factory.ts +13 -4
  500. package/src/file-store/http.ts +29 -10
  501. package/src/file-store/index.ts +1 -0
  502. package/src/file-store/local.ts +15 -5
  503. package/src/file-store/s3.ts +12 -3
  504. package/src/gas/README.md +123 -0
  505. package/src/gas/gas_fees.ts +15 -1
  506. package/src/gas/gas_settings.ts +65 -12
  507. package/src/ha-signing/config.ts +156 -0
  508. package/src/ha-signing/index.ts +27 -0
  509. package/src/ha-signing/local_config.ts +46 -0
  510. package/src/ha-signing/types.ts +112 -0
  511. package/src/hash/hash.ts +48 -10
  512. package/src/hash/map_slot.ts +3 -2
  513. package/src/interfaces/allowed_element.ts +29 -9
  514. package/src/interfaces/archiver.ts +14 -5
  515. package/src/interfaces/aztec-node-admin.ts +31 -9
  516. package/src/interfaces/aztec-node-debug.ts +40 -0
  517. package/src/interfaces/aztec-node.ts +67 -99
  518. package/src/interfaces/block-builder.ts +68 -11
  519. package/src/interfaces/client.ts +1 -0
  520. package/src/interfaces/configs.ts +36 -8
  521. package/src/interfaces/l2_logs_source.ts +4 -1
  522. package/src/interfaces/merkle_tree_operations.ts +9 -19
  523. package/src/interfaces/p2p.ts +3 -14
  524. package/src/interfaces/prover-broker.ts +22 -0
  525. package/src/interfaces/prover-client.ts +15 -0
  526. package/src/interfaces/slasher.ts +4 -6
  527. package/src/interfaces/validator.ts +57 -33
  528. package/src/interfaces/world_state.ts +4 -3
  529. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  530. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  531. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  532. package/src/kernel/hints/index.ts +2 -2
  533. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  534. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  535. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  536. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  537. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  538. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +14 -5
  539. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  540. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  541. package/src/kernel/private_validation_requests.ts +8 -8
  542. package/src/keys/derivation.ts +15 -15
  543. package/src/keys/key_types.ts +6 -2
  544. package/src/keys/public_keys.ts +2 -2
  545. package/src/keys/utils.ts +8 -4
  546. package/src/kv-store/config.ts +36 -0
  547. package/src/kv-store/index.ts +1 -0
  548. package/src/l1-contracts/index.ts +1 -1
  549. package/src/logs/debug_log_store.ts +54 -0
  550. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +41 -22
  551. package/src/logs/index.ts +3 -1
  552. package/src/logs/log_filter.ts +5 -0
  553. package/src/logs/log_id.ts +22 -18
  554. package/src/logs/message_context.ts +17 -7
  555. package/src/logs/pending_tagged_log.ts +1 -3
  556. package/src/logs/pre_tag.ts +5 -5
  557. package/src/logs/public_log.ts +4 -2
  558. package/src/logs/shared_secret_derivation.ts +21 -10
  559. package/src/logs/siloed_tag.ts +15 -4
  560. package/src/logs/tag.ts +1 -1
  561. package/src/logs/tagging_index_range.ts +24 -0
  562. package/src/logs/tx_scoped_l2_log.ts +16 -0
  563. package/src/messaging/l1_to_l2_message.ts +12 -9
  564. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  565. package/src/messaging/l2_to_l1_membership.ts +101 -36
  566. package/src/noir/index.ts +2 -2
  567. package/src/note/index.ts +0 -1
  568. package/src/note/note_dao.ts +1 -4
  569. package/src/p2p/attestation_utils.ts +56 -0
  570. package/src/p2p/block_proposal.ts +10 -5
  571. package/src/p2p/checkpoint_attestation.ts +6 -1
  572. package/src/p2p/checkpoint_proposal.ts +61 -52
  573. package/src/p2p/client_type.ts +0 -6
  574. package/src/p2p/consensus_payload.ts +25 -12
  575. package/src/p2p/constants.ts +3 -0
  576. package/src/p2p/index.ts +0 -1
  577. package/src/p2p/peer_error.ts +7 -0
  578. package/src/p2p/topic_type.ts +8 -15
  579. package/src/proofs/chonk_proof.ts +91 -5
  580. package/src/rollup/checkpoint_header.ts +2 -2
  581. package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
  582. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  583. package/src/slashing/helpers.ts +8 -0
  584. package/src/slashing/index.ts +1 -2
  585. package/src/slashing/serialization.ts +1 -81
  586. package/src/slashing/types.ts +17 -35
  587. package/src/slashing/{tally.ts → votes.ts} +41 -2
  588. package/src/stats/stats.ts +0 -2
  589. package/src/tests/factories.ts +31 -51
  590. package/src/tests/mocks.ts +63 -33
  591. package/src/timetable/index.ts +346 -0
  592. package/src/trees/public_data_leaf.ts +11 -5
  593. package/src/tx/block_header.ts +14 -5
  594. package/src/tx/capsule.ts +10 -2
  595. package/src/tx/global_variable_builder.ts +2 -0
  596. package/src/tx/global_variables.ts +3 -3
  597. package/src/tx/indexed_tx_effect.ts +3 -2
  598. package/src/tx/private_execution_result.ts +5 -5
  599. package/src/tx/profiling.ts +14 -5
  600. package/src/tx/protocol_contracts.ts +2 -2
  601. package/src/tx/public_simulation_output.ts +4 -0
  602. package/src/tx/simulated_tx.ts +14 -3
  603. package/src/tx/tx.ts +20 -11
  604. package/src/tx/tx_receipt.ts +32 -20
  605. package/src/tx/tx_request.ts +2 -2
  606. package/src/tx/validator/empty_validator.ts +1 -1
  607. package/src/tx/validator/error_texts.ts +13 -1
  608. package/src/tx/validator/tx_validator.ts +1 -1
  609. package/src/update-checker/index.ts +2 -1
  610. package/src/update-checker/package_version.ts +30 -0
  611. package/src/update-checker/version_checker.ts +65 -0
  612. package/src/validators/errors.ts +9 -0
  613. package/src/validators/schemas.ts +8 -1
  614. package/src/validators/types.ts +5 -4
  615. package/src/versioning/versioning.ts +4 -1
  616. package/src/world-state/genesis_data.ts +15 -0
  617. package/src/world-state/index.ts +1 -0
  618. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  619. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  620. package/dest/contract/private_function_membership_proof.js +0 -124
  621. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  622. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  623. package/dest/contract/utility_function_membership_proof.js +0 -87
  624. package/dest/database-version/index.d.ts +0 -2
  625. package/dest/database-version/index.d.ts.map +0 -1
  626. package/dest/database-version/index.js +0 -1
  627. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  628. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  629. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  630. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  631. package/dest/l1-contracts/slash_factory.js +0 -157
  632. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  633. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  634. package/dest/note/notes_filter.d.ts +0 -27
  635. package/dest/note/notes_filter.d.ts.map +0 -1
  636. package/dest/note/notes_filter.js +0 -11
  637. package/dest/slashing/empire.d.ts +0 -31
  638. package/dest/slashing/empire.d.ts.map +0 -1
  639. package/dest/slashing/empire.js +0 -85
  640. package/dest/slashing/tally.d.ts.map +0 -1
  641. package/dest/update-checker/update-checker.d.ts +0 -49
  642. package/dest/update-checker/update-checker.d.ts.map +0 -1
  643. package/dest/update-checker/update-checker.js +0 -130
  644. package/src/contract/private_function_membership_proof.ts +0 -167
  645. package/src/contract/utility_function_membership_proof.ts +0 -118
  646. package/src/database-version/index.ts +0 -1
  647. package/src/l1-contracts/slash_factory.ts +0 -179
  648. package/src/note/notes_filter.ts +0 -38
  649. package/src/slashing/empire.ts +0 -102
  650. package/src/update-checker/update-checker.ts +0 -166
@@ -1 +1 @@
1
- {"version":3,"file":"s3.d.ts","sourceRoot":"","sources":["../../src/file-store/s3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAiBlE,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,qBAAa,WAAY,YAAW,SAAS;IAOzC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG;IATtB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAS;IAExC,YACmB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACjC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,EAClC,GAAG,GAAE,MAA6C,EAepE;IAEY,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB9F;IAEY,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwDvG;IAEY,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASvD;IAEY,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3E;IAEY,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAa1D;IAED,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,WAAW;CAKpB"}
1
+ {"version":3,"file":"s3.d.ts","sourceRoot":"","sources":["../../src/file-store/s3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAkBlE,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAStE,qBAAa,WAAY,YAAW,SAAS;IAOzC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG;IATtB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAS;IAExC,YACmB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EACjC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,EAClC,GAAG,GAAE,MAA6C,EAepE;IAEY,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB9F;IAEY,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwDvG;IAEY,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAavD;IAEY,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3E;IAEY,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAa1D;IAED,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,WAAW;CAKpB"}
@@ -5,7 +5,10 @@ import { mkdir, mkdtemp, stat, unlink } from 'fs/promises';
5
5
  import { tmpdir } from 'os';
6
6
  import { basename, dirname, join } from 'path';
7
7
  import { pipeline } from 'stream/promises';
8
- import { createGzip } from 'zlib';
8
+ import { promisify } from 'util';
9
+ import { createGzip, gunzip as gunzipCb, gzip as gzipCb } from 'zlib';
10
+ const gzip = promisify(gzipCb);
11
+ const gunzip = promisify(gunzipCb);
9
12
  function normalizeBasePath(path) {
10
13
  return path?.replace(/^\/+|\/+$/g, '') ?? '';
11
14
  }
@@ -37,7 +40,7 @@ export class S3FileStore {
37
40
  async save(path, data, opts = {}) {
38
41
  const key = this.getFullPath(path);
39
42
  const shouldCompress = !!opts.compress;
40
- const body = shouldCompress ? (await import('zlib')).gzipSync(data) : data;
43
+ const body = shouldCompress ? await gzip(data) : data;
41
44
  const contentLength = body.length;
42
45
  const contentType = this.detectContentType(key, shouldCompress);
43
46
  const put = new PutObjectCommand({
@@ -45,6 +48,7 @@ export class S3FileStore {
45
48
  Key: key,
46
49
  Body: body,
47
50
  ContentType: contentType,
51
+ ContentEncoding: shouldCompress ? 'gzip' : undefined,
48
52
  CacheControl: opts.metadata?.['Cache-control'],
49
53
  Metadata: this.extractUserMetadata(opts.metadata),
50
54
  ContentLength: contentLength
@@ -119,7 +123,11 @@ export class S3FileStore {
119
123
  for await (const chunk of stream){
120
124
  chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
121
125
  }
122
- return Buffer.concat(chunks);
126
+ const buffer = Buffer.concat(chunks);
127
+ if (out.ContentEncoding === 'gzip') {
128
+ return await gunzip(buffer);
129
+ }
130
+ return buffer;
123
131
  }
124
132
  async download(pathOrUrlStr, destPath) {
125
133
  const { bucket, key } = this.getBucketAndKey(pathOrUrlStr);
@@ -49,4 +49,4 @@ export declare class GasFees {
49
49
  };
50
50
  [inspect.custom](): string;
51
51
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX2ZlZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYXMvZ2FzX2ZlZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFDTCxZQUFZLEVBQ1osV0FBVyxFQUlaLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU5QyxxQ0FBcUM7QUFDckMscUJBQWEsT0FBTztJQUNsQixTQUFnQixXQUFXLEVBQUUsT0FBTyxDQUFDO0lBQ3JDLFNBQWdCLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFFckMsWUFBWSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFHckU7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsS0FBSyxJQUFJLE9BQU8sQ0FFZjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxXQUVwQjtJQUVELEdBQUcsQ0FBQyxTQUFTLEVBQUUsYUFBYSxVQU8zQjtJQUVELEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sV0FRMUI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLFdBRXBDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FLeEM7SUFFRCxNQUFNLENBQUMsTUFBTSxZQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsT0FBTyxDQUd4RDtJQUVELFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLFdBRzNDO0lBRUQsUUFBUSxTQUVQO0lBRUQsU0FBUzs7O01BS1I7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtDQUNGIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX2ZlZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYXMvZ2FzX2ZlZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFDTCxZQUFZLEVBQ1osV0FBVyxFQUlaLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQWE5QyxxQ0FBcUM7QUFDckMscUJBQWEsT0FBTztJQUNsQixTQUFnQixXQUFXLEVBQUUsT0FBTyxDQUFDO0lBQ3JDLFNBQWdCLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFFckMsWUFBWSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFHckU7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsS0FBSyxJQUFJLE9BQU8sQ0FFZjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxXQUVwQjtJQUVELEdBQUcsQ0FBQyxTQUFTLEVBQUUsYUFBYSxVQU8zQjtJQUVELEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sV0FXMUI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLFdBRXBDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FLeEM7SUFFRCxNQUFNLENBQUMsTUFBTSxZQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsT0FBTyxDQUd4RDtJQUVELFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLFdBRzNDO0lBRUQsUUFBUSxTQUVQO0lBRUQsU0FBUzs7O01BS1I7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"gas_fees.d.ts","sourceRoot":"","sources":["../../src/gas/gas_fees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EAIZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,qCAAqC;AACrC,qBAAa,OAAO;IAClB,SAAgB,WAAW,EAAE,OAAO,CAAC;IACrC,SAAgB,WAAW,EAAE,OAAO,CAAC;IAErC,YAAY,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAGrE;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED,KAAK,IAAI,OAAO,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;IAED,GAAG,CAAC,SAAS,EAAE,aAAa,UAO3B;IAED,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,WAQ1B;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,WAEpC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAKxC;IAED,MAAM,CAAC,MAAM,YAEZ;IAED,MAAM,CAAC,KAAK,YAEX;IAED,OAAO,YAEN;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAGxD;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,WAG3C;IAED,QAAQ,SAEP;IAED,SAAS;;;MAKR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
1
+ {"version":3,"file":"gas_fees.d.ts","sourceRoot":"","sources":["../../src/gas/gas_fees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EAIZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAa9C,qCAAqC;AACrC,qBAAa,OAAO;IAClB,SAAgB,WAAW,EAAE,OAAO,CAAC;IACrC,SAAgB,WAAW,EAAE,OAAO,CAAC;IAErC,YAAY,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAGrE;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED,KAAK,IAAI,OAAO,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;IAED,GAAG,CAAC,SAAS,EAAE,aAAa,UAO3B;IAED,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,WAW1B;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,WAEpC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAKxC;IAED,MAAM,CAAC,MAAM,YAEZ;IAED,MAAM,CAAC,KAAK,YAEX;IAED,OAAO,YAEN;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAGxD;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,WAG3C;IAED,QAAQ,SAEP;IAED,SAAS;;;MAKR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
@@ -3,6 +3,15 @@ import { schemas } from '@aztec/foundation/schemas';
3
3
  import { BufferReader, FieldReader, bigintToUInt128BE, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
4
4
  import { inspect } from 'util';
5
5
  import { z } from 'zod';
6
+ /**
7
+ * Multiplies a bigint by a non-integer scalar and returns the ceiling of the result.
8
+ * Avoids converting the bigint to Number (which loses precision above 2^53) by instead
9
+ * scaling the scalar into a bigint rational and performing ceiling division.
10
+ */ function bigintMulCeil(value, scalar) {
11
+ const SCALE = 1_000_000_000_000n; // 1e12
12
+ const scaledScalar = BigInt(Math.round(scalar * 1e12));
13
+ return (value * scaledScalar + SCALE - 1n) / SCALE;
14
+ }
6
15
  _computedKey = inspect.custom;
7
16
  /** Gas prices for each dimension. */ export class GasFees {
8
17
  feePerDaGas;
@@ -36,8 +45,11 @@ _computedKey = inspect.custom;
36
45
  return this.clone();
37
46
  } else if (typeof scalar === 'bigint') {
38
47
  return new GasFees(this.feePerDaGas * scalar, this.feePerL2Gas * scalar);
48
+ } else if (Number.isInteger(scalar)) {
49
+ const s = BigInt(scalar);
50
+ return new GasFees(this.feePerDaGas * s, this.feePerL2Gas * s);
39
51
  } else {
40
- return new GasFees(Number(this.feePerDaGas) * scalar, Number(this.feePerL2Gas) * scalar);
52
+ return new GasFees(bigintMulCeil(this.feePerDaGas, scalar), bigintMulCeil(this.feePerL2Gas, scalar));
41
53
  }
42
54
  }
43
55
  static from(fields) {
@@ -4,6 +4,16 @@ import type { FieldsOf } from '@aztec/foundation/types';
4
4
  import { z } from 'zod';
5
5
  import { Gas } from './gas.js';
6
6
  import { GasFees } from './gas_fees.js';
7
+ /** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */
8
+ export declare const APPROXIMATE_MAX_DA_GAS_PER_BLOCK: number;
9
+ /** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */
10
+ export declare const FALLBACK_TEARDOWN_L2_GAS_LIMIT: number;
11
+ /** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */
12
+ export declare const FALLBACK_TEARDOWN_DA_GAS_LIMIT: number;
13
+ export declare const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = 6540000;
14
+ export declare const GAS_ESTIMATION_L2_GAS_LIMIT: number;
15
+ export declare const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = 786432;
16
+ export declare const GAS_ESTIMATION_DA_GAS_LIMIT: number;
7
17
  /** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */
8
18
  export declare class GasSettings {
9
19
  readonly gasLimits: Gas;
@@ -124,8 +134,35 @@ export declare class GasSettings {
124
134
  getFeeLimit(): Fr;
125
135
  /** Zero-value gas settings. */
126
136
  static empty(): GasSettings;
127
- /** Default gas settings to use when user has not provided them. Requires explicit max fees per gas. */
128
- static default(overrides: {
137
+ /**
138
+ * Fills in gas limits high enough for transactions to be included in most cases.
139
+ * gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
140
+ * from gasLimits during private execution (see gas_meter.nr), the effective gas available
141
+ * for app logic will be gasLimits - teardownGasLimits - privateOverhead.
142
+ * The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
143
+ * since using the maximum per checkpoint would cause nodes to reject transactions.
144
+ * These values won't work if:
145
+ * - Teardown consumes more than the arbitrarily assigned fallback limits
146
+ * - The rest of the transaction consumes more than the remaining gas after teardown
147
+ * - The DA gas limit is too low for the transaction, while still within the checkpoint limit
148
+ */
149
+ static fallback(overrides: {
150
+ gasLimits?: Gas;
151
+ teardownGasLimits?: Gas;
152
+ maxFeesPerGas: GasFees;
153
+ maxPriorityFeesPerGas?: GasFees;
154
+ }): GasSettings;
155
+ /**
156
+ * Gas settings for simulation/estimation only.
157
+ * Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
158
+ * the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
159
+ * To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
160
+ * teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
161
+ * processable amount remains available for each phase independently. To be used in conjunction
162
+ * with skipTxValidation: true during public simulation, or the node would reject the transaction
163
+ * outright due to gas limits being above protocol max.
164
+ */
165
+ static forEstimation(overrides: {
129
166
  gasLimits?: Gas;
130
167
  teardownGasLimits?: Gas;
131
168
  maxFeesPerGas: GasFees;
@@ -139,4 +176,4 @@ export declare class GasSettings {
139
176
  toFields(): Fr[];
140
177
  static getFields(fields: FieldsOf<GasSettings>): readonly [Gas, Gas, GasFees, GasFees];
141
178
  }
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX3NldHRpbmdzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FzL2dhc19zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsR0FBRyxFQUFpQixNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hDLG1HQUFtRztBQUNuRyxxQkFBYSxXQUFXO2FBRUosU0FBUyxFQUFFLEdBQUc7YUFDZCxpQkFBaUIsRUFBRSxHQUFHO2FBQ3RCLGFBQWEsRUFBRSxPQUFPO2FBQ3RCLHFCQUFxQixFQUFFLE9BQU87SUFKaEQsWUFDa0IsU0FBUyxFQUFFLEdBQUcsRUFDZCxpQkFBaUIsRUFBRSxHQUFHLEVBQ3RCLGFBQWEsRUFBRSxPQUFPLEVBQ3RCLHFCQUFxQixFQUFFLE9BQU8sRUFDNUM7SUFHSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FTaEI7SUFFRCxPQUFPLElBQUksTUFBTSxDQUVoQjtJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2hCLFNBQVMsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLGFBQWEsRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMscUJBQXFCLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQzFDLGVBT0E7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsV0FBVyxDQVU1QztJQUVELEtBQUssZ0JBT0o7SUFFRCxtRkFBbUY7SUFDbkYsV0FBVyxPQUtWO0lBRUQsK0JBQStCO0lBQy9CLE1BQU0sQ0FBQyxLQUFLLGdCQUVYO0lBRUQsdUdBQXVHO0lBQ3ZHLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNoQixpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUN4QixhQUFhLEVBQUUsT0FBTyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0tBQ2pDLGVBVUE7SUFFRCxPQUFPLFlBT047SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsV0FPeEI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FRNUQ7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFdBQVcsQ0FRekQ7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHlDQUU3QztDQUNGIn0=
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX3NldHRpbmdzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FzL2dhc19zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsR0FBRyxFQUFpQixNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhDLHFIQUFtSDtBQUNuSCxlQUFPLE1BQU0sZ0NBQWdDLFFBQXdELENBQUM7QUFDdEcscUZBQW1GO0FBQ25GLGVBQU8sTUFBTSw4QkFBOEIsUUFBeUMsQ0FBQztBQUNyRixxRkFBbUY7QUFDbkYsZUFBTyxNQUFNLDhCQUE4QixRQUFtRCxDQUFDO0FBSy9GLGVBQU8sTUFBTSxvQ0FBb0MsVUFBeUIsQ0FBQztBQUMzRSxlQUFPLE1BQU0sMkJBQTJCLFFBQWdFLENBQUM7QUFDekcsZUFBTyxNQUFNLG9DQUFvQyxTQUF3QyxDQUFDO0FBQzFGLGVBQU8sTUFBTSwyQkFBMkIsUUFBK0UsQ0FBQztBQUd4SCxtR0FBbUc7QUFDbkcscUJBQWEsV0FBVzthQUVKLFNBQVMsRUFBRSxHQUFHO2FBQ2QsaUJBQWlCLEVBQUUsR0FBRzthQUN0QixhQUFhLEVBQUUsT0FBTzthQUN0QixxQkFBcUIsRUFBRSxPQUFPO0lBSmhELFlBQ2tCLFNBQVMsRUFBRSxHQUFHLEVBQ2QsaUJBQWlCLEVBQUUsR0FBRyxFQUN0QixhQUFhLEVBQUUsT0FBTyxFQUN0QixxQkFBcUIsRUFBRSxPQUFPLEVBQzVDO0lBR0osTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BU2hCO0lBRUQsT0FBTyxJQUFJLE1BQU0sQ0FFaEI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNoQixTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxhQUFhLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLHFCQUFxQixFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUMxQyxlQU9BO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFdBQVcsQ0FVNUM7SUFFRCxLQUFLLGdCQU9KO0lBRUQsbUZBQW1GO0lBQ25GLFdBQVcsT0FLVjtJQUVELCtCQUErQjtJQUMvQixNQUFNLENBQUMsS0FBSyxnQkFFWDtJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7UUFDekIsU0FBUyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ2hCLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ3hCLGFBQWEsRUFBRSxPQUFPLENBQUM7UUFDdkIscUJBQXFCLENBQUMsRUFBRSxPQUFPLENBQUM7S0FDakMsZUFhQTtJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO1FBQzlCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNoQixpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUN4QixhQUFhLEVBQUUsT0FBTyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0tBQ2pDLGVBYUE7SUFFRCxPQUFPLFlBT047SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsV0FPeEI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FRNUQ7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFdBQVcsQ0FRekQ7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHlDQUU3QztDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,mGAAmG;AACnG,qBAAa,WAAW;aAEJ,SAAS,EAAE,GAAG;aACd,iBAAiB,EAAE,GAAG;aACtB,aAAa,EAAE,OAAO;aACtB,qBAAqB,EAAE,OAAO;IAJhD,YACkB,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,GAAG,EACtB,aAAa,EAAE,OAAO,EACtB,qBAAqB,EAAE,OAAO,EAC5C;IAGJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QAChB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC1C,eAOA;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAU5C;IAED,KAAK,gBAOJ;IAED,mFAAmF;IACnF,WAAW,OAKV;IAED,+BAA+B;IAC/B,MAAM,CAAC,KAAK,gBAEX;IAED,uGAAuG;IACvG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE;QACxB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAUA;IAED,OAAO,YAON;IAED,MAAM,CAAC,KAAK,EAAE,WAAW,WAOxB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAQ5D;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,WAAW,CAQzD;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,yCAE7C;CACF"}
1
+ {"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,qHAAmH;AACnH,eAAO,MAAM,gCAAgC,QAAwD,CAAC;AACtG,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAyC,CAAC;AACrF,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAmD,CAAC;AAK/F,eAAO,MAAM,oCAAoC,UAAyB,CAAC;AAC3E,eAAO,MAAM,2BAA2B,QAAgE,CAAC;AACzG,eAAO,MAAM,oCAAoC,SAAwC,CAAC;AAC1F,eAAO,MAAM,2BAA2B,QAA+E,CAAC;AAGxH,mGAAmG;AACnG,qBAAa,WAAW;aAEJ,SAAS,EAAE,GAAG;aACd,iBAAiB,EAAE,GAAG;aACtB,aAAa,EAAE,OAAO;aACtB,qBAAqB,EAAE,OAAO;IAJhD,YACkB,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,GAAG,EACtB,aAAa,EAAE,OAAO,EACtB,qBAAqB,EAAE,OAAO,EAC5C;IAGJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QAChB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC1C,eAOA;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAU5C;IAED,KAAK,gBAOJ;IAED,mFAAmF;IACnF,WAAW,OAKV;IAED,+BAA+B;IAC/B,MAAM,CAAC,KAAK,gBAEX;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;QACzB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE;QAC9B,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED,OAAO,YAON;IAED,MAAM,CAAC,KAAK,EAAE,WAAW,WAOxB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAQ5D;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,WAAW,CAQzD;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,yCAE7C;CACF"}
@@ -1,9 +1,19 @@
1
- import { DEFAULT_DA_GAS_LIMIT, DEFAULT_L2_GAS_LIMIT, DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT, GAS_SETTINGS_LENGTH } from '@aztec/constants';
1
+ import { GAS_SETTINGS_LENGTH, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
4
4
  import { z } from 'zod';
5
5
  import { Gas, GasDimensions } from './gas.js';
6
6
  import { GasFees } from './gas_fees.js';
7
+ /** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */ export const APPROXIMATE_MAX_DA_GAS_PER_BLOCK = Math.floor(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT / 4);
8
+ /** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_L2_GAS_LIMIT = Math.floor(MAX_PROCESSABLE_L2_GAS / 8);
9
+ /** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_DA_GAS_LIMIT = Math.floor(APPROXIMATE_MAX_DA_GAS_PER_BLOCK / 2);
10
+ // For gas estimation, we use intentionally high limits above what the network can process,
11
+ // so the simulation runs without hitting gas caps. Since teardown gas is counted towards total,
12
+ // the total estimation limit is teardown + max processable.
13
+ export const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = MAX_PROCESSABLE_L2_GAS;
14
+ export const GAS_ESTIMATION_L2_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT + MAX_PROCESSABLE_L2_GAS;
15
+ export const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
16
+ export const GAS_ESTIMATION_DA_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT + MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
7
17
  // docs:start:gas_settings_vars
8
18
  /** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */ export class GasSettings {
9
19
  gasLimits;
@@ -52,15 +62,49 @@ import { GasFees } from './gas_fees.js';
52
62
  /** Zero-value gas settings. */ static empty() {
53
63
  return new GasSettings(Gas.empty(), Gas.empty(), GasFees.empty(), GasFees.empty());
54
64
  }
55
- /** Default gas settings to use when user has not provided them. Requires explicit max fees per gas. */ static default(overrides) {
65
+ /**
66
+ * Fills in gas limits high enough for transactions to be included in most cases.
67
+ * gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
68
+ * from gasLimits during private execution (see gas_meter.nr), the effective gas available
69
+ * for app logic will be gasLimits - teardownGasLimits - privateOverhead.
70
+ * The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
71
+ * since using the maximum per checkpoint would cause nodes to reject transactions.
72
+ * These values won't work if:
73
+ * - Teardown consumes more than the arbitrarily assigned fallback limits
74
+ * - The rest of the transaction consumes more than the remaining gas after teardown
75
+ * - The DA gas limit is too low for the transaction, while still within the checkpoint limit
76
+ */ static fallback(overrides) {
77
+ return GasSettings.from({
78
+ gasLimits: overrides.gasLimits ?? {
79
+ l2Gas: MAX_PROCESSABLE_L2_GAS,
80
+ daGas: APPROXIMATE_MAX_DA_GAS_PER_BLOCK
81
+ },
82
+ teardownGasLimits: overrides.teardownGasLimits ?? {
83
+ l2Gas: FALLBACK_TEARDOWN_L2_GAS_LIMIT,
84
+ daGas: FALLBACK_TEARDOWN_DA_GAS_LIMIT
85
+ },
86
+ maxFeesPerGas: overrides.maxFeesPerGas,
87
+ maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
88
+ });
89
+ }
90
+ /**
91
+ * Gas settings for simulation/estimation only.
92
+ * Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
93
+ * the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
94
+ * To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
95
+ * teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
96
+ * processable amount remains available for each phase independently. To be used in conjunction
97
+ * with skipTxValidation: true during public simulation, or the node would reject the transaction
98
+ * outright due to gas limits being above protocol max.
99
+ */ static forEstimation(overrides) {
56
100
  return GasSettings.from({
57
101
  gasLimits: overrides.gasLimits ?? {
58
- l2Gas: DEFAULT_L2_GAS_LIMIT,
59
- daGas: DEFAULT_DA_GAS_LIMIT
102
+ l2Gas: GAS_ESTIMATION_L2_GAS_LIMIT,
103
+ daGas: GAS_ESTIMATION_DA_GAS_LIMIT
60
104
  },
61
105
  teardownGasLimits: overrides.teardownGasLimits ?? {
62
- l2Gas: DEFAULT_TEARDOWN_L2_GAS_LIMIT,
63
- daGas: DEFAULT_TEARDOWN_DA_GAS_LIMIT
106
+ l2Gas: GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT,
107
+ daGas: GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT
64
108
  },
65
109
  maxFeesPerGas: overrides.maxFeesPerGas,
66
110
  maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
@@ -0,0 +1,136 @@
1
+ import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
2
+ import { type ConfigMappingsType } from '@aztec/foundation/config';
3
+ import { EthAddress } from '@aztec/foundation/eth-address';
4
+ import { z } from 'zod';
5
+ /**
6
+ * Base signing protection configuration shared by both HA (Postgres) and local (LMDB) signers.
7
+ */
8
+ export interface BaseSignerConfig {
9
+ /** L1 contract addresses (rollup address required) */
10
+ l1Contracts: Pick<L1ContractAddresses, 'rollupAddress'>;
11
+ /** Unique identifier for this node */
12
+ nodeId: string;
13
+ /** How long to wait between polls when a duty is being signed (ms) */
14
+ pollingIntervalMs: number;
15
+ /** Maximum time to wait for a duty being signed to complete (ms) */
16
+ signingTimeoutMs: number;
17
+ /** Maximum age of a stuck duty in ms (defaults to 2x hardcoded Aztec slot duration if not set) */
18
+ maxStuckDutiesAgeMs?: number;
19
+ /** Optional: clean up old duties after this many hours (disabled if not set) */
20
+ cleanupOldDutiesAfterHours?: number;
21
+ }
22
+ export declare const baseSignerConfigMappings: ConfigMappingsType<BaseSignerConfig>;
23
+ export declare const BaseSignerConfigSchema: z.ZodObject<{
24
+ l1Contracts: z.ZodObject<{
25
+ rollupAddress: z.ZodType<EthAddress, z.ZodTypeDef, EthAddress>;
26
+ }, "strip", z.ZodTypeAny, {
27
+ rollupAddress: EthAddress;
28
+ }, {
29
+ rollupAddress: EthAddress;
30
+ }>;
31
+ nodeId: z.ZodString;
32
+ pollingIntervalMs: z.ZodNumber;
33
+ signingTimeoutMs: z.ZodNumber;
34
+ maxStuckDutiesAgeMs: z.ZodOptional<z.ZodNumber>;
35
+ cleanupOldDutiesAfterHours: z.ZodOptional<z.ZodNumber>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ l1Contracts: {
38
+ rollupAddress: EthAddress;
39
+ };
40
+ nodeId: string;
41
+ pollingIntervalMs: number;
42
+ signingTimeoutMs: number;
43
+ maxStuckDutiesAgeMs?: number | undefined;
44
+ cleanupOldDutiesAfterHours?: number | undefined;
45
+ }, {
46
+ l1Contracts: {
47
+ rollupAddress: EthAddress;
48
+ };
49
+ nodeId: string;
50
+ pollingIntervalMs: number;
51
+ signingTimeoutMs: number;
52
+ maxStuckDutiesAgeMs?: number | undefined;
53
+ cleanupOldDutiesAfterHours?: number | undefined;
54
+ }>;
55
+ /**
56
+ * Configuration for the Validator HA Signer.
57
+ *
58
+ * Extends BaseSignerConfig with a flag to enable HA mode and Postgres connection settings.
59
+ */
60
+ export interface ValidatorHASignerConfig extends BaseSignerConfig {
61
+ /** Whether HA signing / slashing protection is enabled */
62
+ haSigningEnabled: boolean;
63
+ /**
64
+ * PostgreSQL connection string
65
+ * Format: postgresql://user:password@host:port/database
66
+ */
67
+ databaseUrl?: string;
68
+ /** Maximum number of clients in the pool (default: 10) */
69
+ poolMaxCount?: number;
70
+ /** Minimum number of clients in the pool (default: 0) */
71
+ poolMinCount?: number;
72
+ /** Idle timeout in milliseconds (default: 10000) */
73
+ poolIdleTimeoutMs?: number;
74
+ /** Connection timeout in milliseconds (default: 0, no timeout) */
75
+ poolConnectionTimeoutMs?: number;
76
+ }
77
+ export declare const validatorHASignerConfigMappings: ConfigMappingsType<ValidatorHASignerConfig>;
78
+ export declare const defaultValidatorHASignerConfig: ValidatorHASignerConfig;
79
+ /**
80
+ * Returns the validator HA signer configuration from environment variables.
81
+ * Note: If an environment variable is not set, the default value is used.
82
+ * @returns The validator HA signer configuration.
83
+ */
84
+ export declare function getConfigEnvVars(): ValidatorHASignerConfig;
85
+ export declare const ValidatorHASignerConfigSchema: z.ZodObject<{
86
+ l1Contracts: z.ZodObject<{
87
+ rollupAddress: z.ZodType<EthAddress, z.ZodTypeDef, EthAddress>;
88
+ }, "strip", z.ZodTypeAny, {
89
+ rollupAddress: EthAddress;
90
+ }, {
91
+ rollupAddress: EthAddress;
92
+ }>;
93
+ nodeId: z.ZodString;
94
+ pollingIntervalMs: z.ZodNumber;
95
+ signingTimeoutMs: z.ZodNumber;
96
+ maxStuckDutiesAgeMs: z.ZodOptional<z.ZodNumber>;
97
+ cleanupOldDutiesAfterHours: z.ZodOptional<z.ZodNumber>;
98
+ } & {
99
+ haSigningEnabled: z.ZodBoolean;
100
+ databaseUrl: z.ZodOptional<z.ZodString>;
101
+ poolMaxCount: z.ZodOptional<z.ZodNumber>;
102
+ poolMinCount: z.ZodOptional<z.ZodNumber>;
103
+ poolIdleTimeoutMs: z.ZodOptional<z.ZodNumber>;
104
+ poolConnectionTimeoutMs: z.ZodOptional<z.ZodNumber>;
105
+ }, "strip", z.ZodTypeAny, {
106
+ l1Contracts: {
107
+ rollupAddress: EthAddress;
108
+ };
109
+ nodeId: string;
110
+ pollingIntervalMs: number;
111
+ signingTimeoutMs: number;
112
+ maxStuckDutiesAgeMs?: number | undefined;
113
+ cleanupOldDutiesAfterHours?: number | undefined;
114
+ haSigningEnabled: boolean;
115
+ databaseUrl?: string | undefined;
116
+ poolMaxCount?: number | undefined;
117
+ poolMinCount?: number | undefined;
118
+ poolIdleTimeoutMs?: number | undefined;
119
+ poolConnectionTimeoutMs?: number | undefined;
120
+ }, {
121
+ l1Contracts: {
122
+ rollupAddress: EthAddress;
123
+ };
124
+ nodeId: string;
125
+ pollingIntervalMs: number;
126
+ signingTimeoutMs: number;
127
+ maxStuckDutiesAgeMs?: number | undefined;
128
+ cleanupOldDutiesAfterHours?: number | undefined;
129
+ haSigningEnabled: boolean;
130
+ databaseUrl?: string | undefined;
131
+ poolMaxCount?: number | undefined;
132
+ poolMinCount?: number | undefined;
133
+ poolIdleTimeoutMs?: number | undefined;
134
+ poolConnectionTimeoutMs?: number | undefined;
135
+ }>;
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGEtc2lnbmluZy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEVBQ0wsS0FBSyxrQkFBa0IsRUFNeEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHM0QsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4Qjs7R0FFRztBQUNILE1BQU0sV0FBVyxnQkFBZ0I7SUFDL0Isc0RBQXNEO0lBQ3RELFdBQVcsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDeEQsc0NBQXNDO0lBQ3RDLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixzRUFBc0U7SUFDdEUsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLG9FQUFvRTtJQUNwRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUM7SUFDekIsa0dBQWtHO0lBQ2xHLG1CQUFtQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzdCLGdGQUFnRjtJQUNoRiwwQkFBMEIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUNyQztBQUVELGVBQU8sTUFBTSx3QkFBd0IsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FtQ3pFLENBQUM7QUFFRixlQUFPLE1BQU0sc0JBQXNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBT0UsQ0FBQztBQUV0Qzs7OztHQUlHO0FBQ0gsTUFBTSxXQUFXLHVCQUF3QixTQUFRLGdCQUFnQjtJQUMvRCwwREFBMEQ7SUFDMUQsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDO0lBQzFCOzs7T0FHRztJQUNILFdBQVcsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNyQiwwREFBMEQ7SUFDMUQsWUFBWSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLHlEQUF5RDtJQUN6RCxZQUFZLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdEIsb0RBQW9EO0lBQ3BELGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzNCLGtFQUFrRTtJQUNsRSx1QkFBdUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUNsQztBQUVELGVBQU8sTUFBTSwrQkFBK0IsRUFBRSxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FnQ3ZGLENBQUM7QUFFRixlQUFPLE1BQU0sOEJBQThCLEVBQUUsdUJBRTVDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsd0JBQWdCLGdCQUFnQixJQUFJLHVCQUF1QixDQUUxRDtBQUVELGVBQU8sTUFBTSw2QkFBNkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBT0UsQ0FBQyJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/ha-signing/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EACL,KAAK,kBAAkB,EAMxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAG3D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACxD,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oEAAoE;IACpE,gBAAgB,EAAE,MAAM,CAAC;IACzB,kGAAkG;IAClG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gFAAgF;IAChF,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,gBAAgB,CAmCzE,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOE,CAAC;AAEtC;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,0DAA0D;IAC1D,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,eAAO,MAAM,+BAA+B,EAAE,kBAAkB,CAAC,uBAAuB,CAgCvF,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,uBAE5C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,uBAAuB,CAE1D;AAED,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOE,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { booleanConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, optionalNumberConfigHelper } from '@aztec/foundation/config';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
3
+ import { z } from 'zod';
4
+ export const baseSignerConfigMappings = {
5
+ l1Contracts: {
6
+ description: 'L1 contract addresses (rollup address required)',
7
+ nested: {
8
+ rollupAddress: {
9
+ description: 'The Ethereum address of the rollup contract (must be set programmatically)',
10
+ parseEnv: (val)=>EthAddress.fromString(val)
11
+ }
12
+ }
13
+ },
14
+ nodeId: {
15
+ env: 'VALIDATOR_HA_NODE_ID',
16
+ description: 'The unique identifier for this node',
17
+ defaultValue: ''
18
+ },
19
+ pollingIntervalMs: {
20
+ env: 'VALIDATOR_HA_POLLING_INTERVAL_MS',
21
+ description: 'The number of ms to wait between polls when a duty is being signed',
22
+ ...numberConfigHelper(100)
23
+ },
24
+ signingTimeoutMs: {
25
+ env: 'VALIDATOR_HA_SIGNING_TIMEOUT_MS',
26
+ description: 'The maximum time to wait for a duty being signed to complete',
27
+ ...numberConfigHelper(3_000)
28
+ },
29
+ maxStuckDutiesAgeMs: {
30
+ env: 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS',
31
+ description: 'The maximum age of a stuck duty in ms (defaults to 2x Aztec slot duration)',
32
+ ...optionalNumberConfigHelper()
33
+ },
34
+ cleanupOldDutiesAfterHours: {
35
+ env: 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H',
36
+ description: 'Optional: clean up old duties after this many hours (disabled if not set)',
37
+ ...optionalNumberConfigHelper()
38
+ }
39
+ };
40
+ export const BaseSignerConfigSchema = z.object({
41
+ l1Contracts: z.object({
42
+ rollupAddress: z.instanceof(EthAddress)
43
+ }),
44
+ nodeId: z.string(),
45
+ pollingIntervalMs: z.number().min(0),
46
+ signingTimeoutMs: z.number().min(0),
47
+ maxStuckDutiesAgeMs: z.number().min(0).optional(),
48
+ cleanupOldDutiesAfterHours: z.number().min(0).optional()
49
+ });
50
+ export const validatorHASignerConfigMappings = {
51
+ ...baseSignerConfigMappings,
52
+ haSigningEnabled: {
53
+ env: 'VALIDATOR_HA_SIGNING_ENABLED',
54
+ description: 'Whether HA signing / slashing protection is enabled',
55
+ ...booleanConfigHelper(false)
56
+ },
57
+ databaseUrl: {
58
+ env: 'VALIDATOR_HA_DATABASE_URL',
59
+ description: 'PostgreSQL connection string for validator HA signer (format: postgresql://user:password@host:port/database)'
60
+ },
61
+ poolMaxCount: {
62
+ env: 'VALIDATOR_HA_POOL_MAX',
63
+ description: 'Maximum number of clients in the pool',
64
+ ...numberConfigHelper(10)
65
+ },
66
+ poolMinCount: {
67
+ env: 'VALIDATOR_HA_POOL_MIN',
68
+ description: 'Minimum number of clients in the pool',
69
+ ...numberConfigHelper(0)
70
+ },
71
+ poolIdleTimeoutMs: {
72
+ env: 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS',
73
+ description: 'Idle timeout in milliseconds',
74
+ ...numberConfigHelper(10_000)
75
+ },
76
+ poolConnectionTimeoutMs: {
77
+ env: 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS',
78
+ description: 'Connection timeout in milliseconds (0 means no timeout)',
79
+ ...numberConfigHelper(0)
80
+ }
81
+ };
82
+ export const defaultValidatorHASignerConfig = getDefaultConfig(validatorHASignerConfigMappings);
83
+ /**
84
+ * Returns the validator HA signer configuration from environment variables.
85
+ * Note: If an environment variable is not set, the default value is used.
86
+ * @returns The validator HA signer configuration.
87
+ */ export function getConfigEnvVars() {
88
+ return getConfigFromMappings(validatorHASignerConfigMappings);
89
+ }
90
+ export const ValidatorHASignerConfigSchema = BaseSignerConfigSchema.extend({
91
+ haSigningEnabled: z.boolean(),
92
+ databaseUrl: z.string().optional(),
93
+ poolMaxCount: z.number().min(0).optional(),
94
+ poolMinCount: z.number().min(0).optional(),
95
+ poolIdleTimeoutMs: z.number().min(0).optional(),
96
+ poolConnectionTimeoutMs: z.number().min(0).optional()
97
+ });
@@ -0,0 +1,4 @@
1
+ export { type BaseSignerConfig, BaseSignerConfigSchema, baseSignerConfigMappings, type ValidatorHASignerConfig, ValidatorHASignerConfigSchema, defaultValidatorHASignerConfig, getConfigEnvVars, validatorHASignerConfigMappings, } from './config.js';
2
+ export { type LocalSignerConfig, LocalSignerConfigSchema, getLocalSignerConfigEnvVars, localSignerConfigMappings, } from './local_config.js';
3
+ export { DutyType, type BlockProposalSigningContext, type HAProtectedSigningContext, type NoHAProtectionSigningContext, type OtherSigningContext, type SigningContext, type VoteSigningContext, getBlockNumberFromSigningContext, isHAProtectedContext, } from './types.js';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oYS1zaWduaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLGdCQUFnQixFQUNyQixzQkFBc0IsRUFDdEIsd0JBQXdCLEVBQ3hCLEtBQUssdUJBQXVCLEVBQzVCLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsZ0JBQWdCLEVBQ2hCLCtCQUErQixHQUNoQyxNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQ0wsS0FBSyxpQkFBaUIsRUFDdEIsdUJBQXVCLEVBQ3ZCLDJCQUEyQixFQUMzQix5QkFBeUIsR0FDMUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsUUFBUSxFQUNSLEtBQUssMkJBQTJCLEVBQ2hDLEtBQUsseUJBQXlCLEVBQzlCLEtBQUssNEJBQTRCLEVBQ2pDLEtBQUssbUJBQW1CLEVBQ3hCLEtBQUssY0FBYyxFQUNuQixLQUFLLGtCQUFrQixFQUN2QixnQ0FBZ0MsRUFDaEMsb0JBQW9CLEdBQ3JCLE1BQU0sWUFBWSxDQUFDIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ha-signing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,gBAAgB,EAChB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,gCAAgC,EAChC,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { BaseSignerConfigSchema, baseSignerConfigMappings, ValidatorHASignerConfigSchema, defaultValidatorHASignerConfig, getConfigEnvVars, validatorHASignerConfigMappings } from './config.js';
2
+ export { LocalSignerConfigSchema, getLocalSignerConfigEnvVars, localSignerConfigMappings } from './local_config.js';
3
+ export { DutyType, getBlockNumberFromSigningContext, isHAProtectedContext } from './types.js';
@@ -0,0 +1,63 @@
1
+ import { type ConfigMappingsType } from '@aztec/foundation/config';
2
+ import { type DataStoreConfig } from '@aztec/stdlib/kv-store';
3
+ import { z } from 'zod';
4
+ import { type BaseSignerConfig } from './config.js';
5
+ /**
6
+ * Configuration for local (single-node) slashing protection.
7
+ *
8
+ * Combines the base signing protection fields (shared with HA mode) with
9
+ * DataStoreConfig for the local LMDB backing store, plus a per-store map-size
10
+ * override. Used when HA signing is disabled.
11
+ */
12
+ export type LocalSignerConfig = BaseSignerConfig & DataStoreConfig & {
13
+ /** Maximum size of the local signing-protection LMDB store in KB. Overwrites the general dataStoreMapSizeKb. */
14
+ signingProtectionMapSizeKb?: number;
15
+ };
16
+ export declare const localSignerConfigMappings: ConfigMappingsType<LocalSignerConfig>;
17
+ export declare const LocalSignerConfigSchema: z.ZodObject<{
18
+ l1Contracts: z.ZodObject<{
19
+ rollupAddress: z.ZodType<import("@aztec/foundation/eth-address").EthAddress, z.ZodTypeDef, import("@aztec/foundation/eth-address").EthAddress>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
22
+ }, {
23
+ rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
24
+ }>;
25
+ nodeId: z.ZodString;
26
+ pollingIntervalMs: z.ZodNumber;
27
+ signingTimeoutMs: z.ZodNumber;
28
+ maxStuckDutiesAgeMs: z.ZodOptional<z.ZodNumber>;
29
+ cleanupOldDutiesAfterHours: z.ZodOptional<z.ZodNumber>;
30
+ } & {
31
+ dataDirectory: z.ZodOptional<z.ZodString>;
32
+ dataStoreMapSizeKb: z.ZodNumber;
33
+ signingProtectionMapSizeKb: z.ZodOptional<z.ZodNumber>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ l1Contracts: {
36
+ rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
37
+ };
38
+ nodeId: string;
39
+ pollingIntervalMs: number;
40
+ signingTimeoutMs: number;
41
+ maxStuckDutiesAgeMs?: number | undefined;
42
+ cleanupOldDutiesAfterHours?: number | undefined;
43
+ dataDirectory?: string | undefined;
44
+ dataStoreMapSizeKb: number;
45
+ signingProtectionMapSizeKb?: number | undefined;
46
+ }, {
47
+ l1Contracts: {
48
+ rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
49
+ };
50
+ nodeId: string;
51
+ pollingIntervalMs: number;
52
+ signingTimeoutMs: number;
53
+ maxStuckDutiesAgeMs?: number | undefined;
54
+ cleanupOldDutiesAfterHours?: number | undefined;
55
+ dataDirectory?: string | undefined;
56
+ dataStoreMapSizeKb: number;
57
+ signingProtectionMapSizeKb?: number | undefined;
58
+ }>;
59
+ /**
60
+ * Returns the local signer configuration from environment variables.
61
+ */
62
+ export declare function getLocalSignerConfigEnvVars(): LocalSignerConfig;
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxfY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGEtc2lnbmluZy9sb2NhbF9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQXlCLE1BQU0sMEJBQTBCLENBQUM7QUFFMUYsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHdCQUF3QixDQUFDO0FBRWxGLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQW9ELE1BQU0sYUFBYSxDQUFDO0FBRXRHOzs7Ozs7R0FNRztBQUNILE1BQU0sTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsR0FDOUMsZUFBZSxHQUFHO0lBQ2hCLGdIQUFnSDtJQUNoSCwwQkFBMEIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUNyQyxDQUFDO0FBRUosZUFBTyxNQUFNLHlCQUF5QixFQUFFLGtCQUFrQixDQUFDLGlCQUFpQixDQVMzRSxDQUFDO0FBRUYsZUFBTyxNQUFNLHVCQUF1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFNbkMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsd0JBQWdCLDJCQUEyQixJQUFJLGlCQUFpQixDQUUvRCJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local_config.d.ts","sourceRoot":"","sources":["../../src/ha-signing/local_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAyB,MAAM,0BAA0B,CAAC;AAE1F,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,gBAAgB,EAAoD,MAAM,aAAa,CAAC;AAEtG;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,gBAAgB,GAC9C,eAAe,GAAG;IAChB,gHAAgH;IAChH,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC,CAAC;AAEJ,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,CAAC,iBAAiB,CAS3E,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnC,CAAC;AAEF;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,iBAAiB,CAE/D"}
@@ -0,0 +1,24 @@
1
+ import { getConfigFromMappings } from '@aztec/foundation/config';
2
+ import { zodFor } from '@aztec/foundation/schemas';
3
+ import { dataConfigMappings } from '@aztec/stdlib/kv-store';
4
+ import { z } from 'zod';
5
+ import { BaseSignerConfigSchema, baseSignerConfigMappings } from './config.js';
6
+ export const localSignerConfigMappings = {
7
+ ...baseSignerConfigMappings,
8
+ ...dataConfigMappings,
9
+ signingProtectionMapSizeKb: {
10
+ env: 'SIGNING_PROTECTION_MAP_SIZE_KB',
11
+ description: 'Maximum size of the local signing-protection LMDB store in KB. Overwrites the general dataStoreMapSizeKb.',
12
+ parseEnv: (val)=>val ? +val : undefined
13
+ }
14
+ };
15
+ export const LocalSignerConfigSchema = zodFor()(BaseSignerConfigSchema.extend({
16
+ dataDirectory: z.string().optional(),
17
+ dataStoreMapSizeKb: z.number(),
18
+ signingProtectionMapSizeKb: z.number().optional()
19
+ }));
20
+ /**
21
+ * Returns the local signer configuration from environment variables.
22
+ */ export function getLocalSignerConfigEnvVars() {
23
+ return getConfigFromMappings(localSignerConfigMappings);
24
+ }