@aztec/stdlib 0.0.1-commit.f504929 → 0.0.1-commit.f650c0a5c

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 (366) 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 +5 -44
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +12 -67
  10. package/dest/abi/function_selector.js +1 -1
  11. package/dest/abi/function_signature_decoder.d.ts +43 -0
  12. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  13. package/dest/abi/function_signature_decoder.js +66 -0
  14. package/dest/abi/index.d.ts +2 -1
  15. package/dest/abi/index.d.ts.map +1 -1
  16. package/dest/abi/index.js +1 -0
  17. package/dest/abi/selector.d.ts +2 -2
  18. package/dest/abi/selector.d.ts.map +1 -1
  19. package/dest/abi/selector.js +1 -1
  20. package/dest/avm/avm.d.ts +300 -300
  21. package/dest/avm/revert_code.d.ts +8 -18
  22. package/dest/avm/revert_code.d.ts.map +1 -1
  23. package/dest/avm/revert_code.js +15 -30
  24. package/dest/block/l2_block.d.ts +9 -1
  25. package/dest/block/l2_block.d.ts.map +1 -1
  26. package/dest/block/l2_block.js +12 -2
  27. package/dest/block/l2_block_source.d.ts +95 -10
  28. package/dest/block/l2_block_source.d.ts.map +1 -1
  29. package/dest/block/l2_block_source.js +1 -0
  30. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +1 -1
  31. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  32. package/dest/block/l2_block_stream/l2_tips_store_base.js +17 -4
  33. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  34. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  35. package/dest/block/test/l2_tips_store_test_suite.js +3 -2
  36. package/dest/checkpoint/checkpoint.d.ts +8 -1
  37. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  38. package/dest/checkpoint/checkpoint.js +18 -5
  39. package/dest/checkpoint/checkpoint_data.d.ts +71 -5
  40. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  41. package/dest/checkpoint/checkpoint_data.js +10 -0
  42. package/dest/checkpoint/index.d.ts +2 -1
  43. package/dest/checkpoint/index.d.ts.map +1 -1
  44. package/dest/checkpoint/index.js +1 -0
  45. package/dest/checkpoint/validate.d.ts +36 -0
  46. package/dest/checkpoint/validate.d.ts.map +1 -0
  47. package/dest/checkpoint/validate.js +120 -0
  48. package/dest/config/index.d.ts +2 -1
  49. package/dest/config/index.d.ts.map +1 -1
  50. package/dest/config/index.js +1 -0
  51. package/dest/config/pipelining-config.d.ts +19 -0
  52. package/dest/config/pipelining-config.d.ts.map +1 -0
  53. package/dest/config/pipelining-config.js +18 -0
  54. package/dest/config/sequencer-config.d.ts +2 -2
  55. package/dest/config/sequencer-config.d.ts.map +1 -1
  56. package/dest/config/sequencer-config.js +1 -2
  57. package/dest/contract/contract_address.d.ts +3 -3
  58. package/dest/contract/contract_address.js +3 -3
  59. package/dest/contract/contract_class_id.d.ts +2 -2
  60. package/dest/contract/contract_class_id.js +2 -2
  61. package/dest/contract/index.d.ts +1 -3
  62. package/dest/contract/index.d.ts.map +1 -1
  63. package/dest/contract/index.js +0 -2
  64. package/dest/contract/interfaces/contract_class.d.ts +3 -156
  65. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  66. package/dest/contract/interfaces/contract_class.js +1 -28
  67. package/dest/epoch-helpers/index.d.ts +11 -1
  68. package/dest/epoch-helpers/index.d.ts.map +1 -1
  69. package/dest/epoch-helpers/index.js +16 -2
  70. package/dest/file-store/factory.d.ts +4 -3
  71. package/dest/file-store/factory.d.ts.map +1 -1
  72. package/dest/file-store/factory.js +2 -2
  73. package/dest/file-store/http.d.ts +9 -2
  74. package/dest/file-store/http.d.ts.map +1 -1
  75. package/dest/file-store/http.js +20 -9
  76. package/dest/file-store/index.d.ts +2 -1
  77. package/dest/file-store/index.d.ts.map +1 -1
  78. package/dest/gas/gas_settings.d.ts +40 -3
  79. package/dest/gas/gas_settings.d.ts.map +1 -1
  80. package/dest/gas/gas_settings.js +50 -6
  81. package/dest/ha-signing/config.d.ts +49 -14
  82. package/dest/ha-signing/config.d.ts.map +1 -1
  83. package/dest/ha-signing/config.js +20 -15
  84. package/dest/ha-signing/index.d.ts +3 -2
  85. package/dest/ha-signing/index.d.ts.map +1 -1
  86. package/dest/ha-signing/index.js +2 -1
  87. package/dest/ha-signing/local_config.d.ts +63 -0
  88. package/dest/ha-signing/local_config.d.ts.map +1 -0
  89. package/dest/ha-signing/local_config.js +24 -0
  90. package/dest/hash/hash.d.ts +19 -1
  91. package/dest/hash/hash.d.ts.map +1 -1
  92. package/dest/hash/hash.js +29 -0
  93. package/dest/interfaces/allowed_element.d.ts +25 -1
  94. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  95. package/dest/interfaces/allowed_element.js +8 -2
  96. package/dest/interfaces/archiver.d.ts +1 -1
  97. package/dest/interfaces/archiver.d.ts.map +1 -1
  98. package/dest/interfaces/archiver.js +6 -3
  99. package/dest/interfaces/aztec-node-admin.d.ts +73 -23
  100. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  101. package/dest/interfaces/aztec-node-admin.js +3 -3
  102. package/dest/interfaces/aztec-node.d.ts +12 -6
  103. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  104. package/dest/interfaces/aztec-node.js +5 -2
  105. package/dest/interfaces/block-builder.d.ts +38 -11
  106. package/dest/interfaces/block-builder.d.ts.map +1 -1
  107. package/dest/interfaces/block-builder.js +12 -5
  108. package/dest/interfaces/configs.d.ts +47 -7
  109. package/dest/interfaces/configs.d.ts.map +1 -1
  110. package/dest/interfaces/configs.js +3 -1
  111. package/dest/interfaces/l2_logs_source.d.ts +5 -3
  112. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  113. package/dest/interfaces/merkle_tree_operations.d.ts +9 -19
  114. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  115. package/dest/interfaces/prover-client.d.ts +6 -1
  116. package/dest/interfaces/prover-client.d.ts.map +1 -1
  117. package/dest/interfaces/prover-client.js +7 -1
  118. package/dest/interfaces/proving-job.d.ts +34 -34
  119. package/dest/interfaces/slasher.d.ts +1 -10
  120. package/dest/interfaces/slasher.d.ts.map +1 -1
  121. package/dest/interfaces/slasher.js +0 -2
  122. package/dest/interfaces/validator.d.ts +103 -35
  123. package/dest/interfaces/validator.d.ts.map +1 -1
  124. package/dest/interfaces/validator.js +7 -5
  125. package/dest/interfaces/world_state.d.ts +5 -4
  126. package/dest/interfaces/world_state.d.ts.map +1 -1
  127. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -1
  128. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  129. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -0
  130. package/dest/kv-store/config.d.ts +17 -0
  131. package/dest/kv-store/config.d.ts.map +1 -0
  132. package/dest/kv-store/config.js +26 -0
  133. package/dest/kv-store/index.d.ts +2 -0
  134. package/dest/kv-store/index.d.ts.map +1 -0
  135. package/dest/kv-store/index.js +1 -0
  136. package/dest/l1-contracts/index.d.ts +2 -2
  137. package/dest/l1-contracts/index.d.ts.map +1 -1
  138. package/dest/l1-contracts/index.js +1 -1
  139. package/dest/logs/extended_directional_app_tagging_secret.d.ts +4 -4
  140. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -1
  141. package/dest/logs/extended_directional_app_tagging_secret.js +12 -5
  142. package/dest/logs/index.d.ts +2 -1
  143. package/dest/logs/index.d.ts.map +1 -1
  144. package/dest/logs/index.js +1 -0
  145. package/dest/logs/log_filter.d.ts +4 -1
  146. package/dest/logs/log_filter.d.ts.map +1 -1
  147. package/dest/logs/log_filter.js +2 -1
  148. package/dest/logs/message_context.d.ts +4 -7
  149. package/dest/logs/message_context.d.ts.map +1 -1
  150. package/dest/logs/message_context.js +23 -9
  151. package/dest/logs/pending_tagged_log.d.ts +2 -3
  152. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  153. package/dest/logs/pending_tagged_log.js +2 -2
  154. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  155. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  156. package/dest/logs/shared_secret_derivation.js +15 -9
  157. package/dest/logs/siloed_tag.d.ts +4 -1
  158. package/dest/logs/siloed_tag.d.ts.map +1 -1
  159. package/dest/logs/siloed_tag.js +7 -3
  160. package/dest/logs/tagging_index_range.d.ts +40 -0
  161. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  162. package/dest/logs/tagging_index_range.js +8 -0
  163. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  164. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  165. package/dest/logs/tx_scoped_l2_log.js +7 -0
  166. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  167. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  168. package/dest/messaging/l1_to_l2_message.js +11 -13
  169. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  170. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  171. package/dest/messaging/l2_to_l1_membership.d.ts +32 -6
  172. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  173. package/dest/messaging/l2_to_l1_membership.js +69 -26
  174. package/dest/noir/index.d.ts +3 -3
  175. package/dest/noir/index.d.ts.map +1 -1
  176. package/dest/note/note_dao.d.ts +1 -1
  177. package/dest/note/note_dao.d.ts.map +1 -1
  178. package/dest/note/note_dao.js +1 -4
  179. package/dest/p2p/checkpoint_proposal.d.ts +2 -7
  180. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  181. package/dest/p2p/checkpoint_proposal.js +3 -25
  182. package/dest/p2p/peer_error.d.ts +3 -1
  183. package/dest/p2p/peer_error.d.ts.map +1 -1
  184. package/dest/p2p/peer_error.js +5 -0
  185. package/dest/proofs/chonk_proof.d.ts +46 -2
  186. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  187. package/dest/proofs/chonk_proof.js +85 -10
  188. package/dest/slashing/index.d.ts +2 -3
  189. package/dest/slashing/index.d.ts.map +1 -1
  190. package/dest/slashing/index.js +1 -2
  191. package/dest/slashing/serialization.d.ts +2 -6
  192. package/dest/slashing/serialization.d.ts.map +1 -1
  193. package/dest/slashing/serialization.js +0 -60
  194. package/dest/slashing/types.d.ts +4 -90
  195. package/dest/slashing/types.d.ts.map +1 -1
  196. package/dest/slashing/types.js +0 -14
  197. package/dest/slashing/{tally.d.ts → votes.d.ts} +5 -6
  198. package/dest/slashing/votes.d.ts.map +1 -0
  199. package/dest/slashing/{tally.js → votes.js} +19 -10
  200. package/dest/tests/factories.d.ts +2 -4
  201. package/dest/tests/factories.d.ts.map +1 -1
  202. package/dest/tests/factories.js +11 -28
  203. package/dest/tests/mocks.d.ts +4 -2
  204. package/dest/tests/mocks.d.ts.map +1 -1
  205. package/dest/tests/mocks.js +26 -26
  206. package/dest/timetable/index.d.ts +2 -1
  207. package/dest/timetable/index.d.ts.map +1 -1
  208. package/dest/timetable/index.js +6 -2
  209. package/dest/tx/block_header.d.ts +3 -1
  210. package/dest/tx/block_header.d.ts.map +1 -1
  211. package/dest/tx/block_header.js +4 -0
  212. package/dest/tx/capsule.d.ts +6 -2
  213. package/dest/tx/capsule.d.ts.map +1 -1
  214. package/dest/tx/capsule.js +9 -3
  215. package/dest/tx/global_variable_builder.d.ts +14 -2
  216. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  217. package/dest/tx/private_execution_result.d.ts +6 -6
  218. package/dest/tx/private_execution_result.d.ts.map +1 -1
  219. package/dest/tx/private_execution_result.js +6 -6
  220. package/dest/tx/profiling.d.ts +14 -2
  221. package/dest/tx/profiling.d.ts.map +1 -1
  222. package/dest/tx/profiling.js +13 -3
  223. package/dest/tx/simulated_tx.d.ts +111 -3
  224. package/dest/tx/simulated_tx.d.ts.map +1 -1
  225. package/dest/tx/simulated_tx.js +2 -2
  226. package/dest/tx/tx.d.ts +6 -5
  227. package/dest/tx/tx.d.ts.map +1 -1
  228. package/dest/tx/tx.js +18 -6
  229. package/dest/tx/tx_receipt.d.ts +14 -5
  230. package/dest/tx/tx_receipt.d.ts.map +1 -1
  231. package/dest/tx/tx_receipt.js +14 -18
  232. package/dest/tx/validator/error_texts.d.ts +8 -1
  233. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  234. package/dest/tx/validator/error_texts.js +9 -0
  235. package/dest/update-checker/index.d.ts +3 -2
  236. package/dest/update-checker/index.d.ts.map +1 -1
  237. package/dest/update-checker/index.js +2 -1
  238. package/dest/update-checker/package_version.d.ts +3 -0
  239. package/dest/update-checker/package_version.d.ts.map +1 -0
  240. package/dest/update-checker/package_version.js +24 -0
  241. package/dest/update-checker/version_checker.d.ts +25 -0
  242. package/dest/update-checker/version_checker.d.ts.map +1 -0
  243. package/dest/update-checker/version_checker.js +50 -0
  244. package/dest/validators/errors.d.ts +6 -1
  245. package/dest/validators/errors.d.ts.map +1 -1
  246. package/dest/validators/errors.js +7 -0
  247. package/dest/versioning/versioning.d.ts +4 -2
  248. package/dest/versioning/versioning.d.ts.map +1 -1
  249. package/dest/versioning/versioning.js +4 -1
  250. package/dest/world-state/genesis_data.d.ts +11 -0
  251. package/dest/world-state/genesis_data.d.ts.map +1 -0
  252. package/dest/world-state/genesis_data.js +4 -0
  253. package/dest/world-state/index.d.ts +2 -1
  254. package/dest/world-state/index.d.ts.map +1 -1
  255. package/dest/world-state/index.js +1 -0
  256. package/package.json +10 -9
  257. package/src/abi/abi.ts +25 -2
  258. package/src/abi/buffer.ts +25 -4
  259. package/src/abi/decoder.ts +23 -78
  260. package/src/abi/function_selector.ts +1 -1
  261. package/src/abi/function_signature_decoder.ts +77 -0
  262. package/src/abi/index.ts +1 -0
  263. package/src/abi/selector.ts +1 -1
  264. package/src/avm/revert_code.ts +25 -39
  265. package/src/block/l2_block.ts +13 -1
  266. package/src/block/l2_block_source.ts +26 -9
  267. package/src/block/l2_block_stream/l2_tips_store_base.ts +24 -12
  268. package/src/block/test/l2_tips_store_test_suite.ts +8 -1
  269. package/src/checkpoint/checkpoint.ts +23 -4
  270. package/src/checkpoint/checkpoint_data.ts +40 -4
  271. package/src/checkpoint/index.ts +1 -0
  272. package/src/checkpoint/validate.ts +230 -0
  273. package/src/config/index.ts +1 -0
  274. package/src/config/pipelining-config.ts +31 -0
  275. package/src/config/sequencer-config.ts +2 -2
  276. package/src/contract/contract_address.ts +3 -3
  277. package/src/contract/contract_class_id.ts +2 -2
  278. package/src/contract/index.ts +0 -2
  279. package/src/contract/interfaces/contract_class.ts +2 -82
  280. package/src/epoch-helpers/index.ts +27 -0
  281. package/src/file-store/factory.ts +13 -4
  282. package/src/file-store/http.ts +29 -10
  283. package/src/file-store/index.ts +1 -0
  284. package/src/gas/README.md +123 -0
  285. package/src/gas/gas_settings.ts +65 -12
  286. package/src/ha-signing/config.ts +45 -38
  287. package/src/ha-signing/index.ts +9 -0
  288. package/src/ha-signing/local_config.ts +46 -0
  289. package/src/hash/hash.ts +34 -0
  290. package/src/interfaces/allowed_element.ts +28 -4
  291. package/src/interfaces/archiver.ts +6 -3
  292. package/src/interfaces/aztec-node-admin.ts +5 -7
  293. package/src/interfaces/aztec-node.ts +24 -5
  294. package/src/interfaces/block-builder.ts +56 -13
  295. package/src/interfaces/configs.ts +15 -4
  296. package/src/interfaces/l2_logs_source.ts +4 -1
  297. package/src/interfaces/merkle_tree_operations.ts +8 -18
  298. package/src/interfaces/prover-client.ts +8 -0
  299. package/src/interfaces/slasher.ts +0 -6
  300. package/src/interfaces/validator.ts +47 -33
  301. package/src/interfaces/world_state.ts +4 -3
  302. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +9 -0
  303. package/src/kv-store/config.ts +36 -0
  304. package/src/kv-store/index.ts +1 -0
  305. package/src/l1-contracts/index.ts +1 -1
  306. package/src/logs/extended_directional_app_tagging_secret.ts +19 -8
  307. package/src/logs/index.ts +1 -0
  308. package/src/logs/log_filter.ts +5 -0
  309. package/src/logs/message_context.ts +17 -7
  310. package/src/logs/pending_tagged_log.ts +1 -3
  311. package/src/logs/shared_secret_derivation.ts +21 -10
  312. package/src/logs/siloed_tag.ts +7 -2
  313. package/src/logs/tagging_index_range.ts +24 -0
  314. package/src/logs/tx_scoped_l2_log.ts +16 -0
  315. package/src/messaging/l1_to_l2_message.ts +12 -9
  316. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  317. package/src/messaging/l2_to_l1_membership.ts +98 -33
  318. package/src/noir/index.ts +2 -2
  319. package/src/note/note_dao.ts +1 -4
  320. package/src/p2p/checkpoint_proposal.ts +8 -38
  321. package/src/p2p/peer_error.ts +7 -0
  322. package/src/proofs/chonk_proof.ts +91 -5
  323. package/src/slashing/index.ts +1 -2
  324. package/src/slashing/serialization.ts +1 -81
  325. package/src/slashing/types.ts +3 -35
  326. package/src/slashing/{tally.ts → votes.ts} +22 -4
  327. package/src/tests/factories.ts +5 -34
  328. package/src/tests/mocks.ts +31 -18
  329. package/src/timetable/index.ts +7 -2
  330. package/src/tx/block_header.ts +6 -0
  331. package/src/tx/capsule.ts +10 -2
  332. package/src/tx/global_variable_builder.ts +15 -0
  333. package/src/tx/private_execution_result.ts +5 -5
  334. package/src/tx/profiling.ts +11 -2
  335. package/src/tx/simulated_tx.ts +5 -1
  336. package/src/tx/tx.ts +20 -11
  337. package/src/tx/tx_receipt.ts +18 -16
  338. package/src/tx/validator/error_texts.ts +11 -0
  339. package/src/update-checker/index.ts +2 -1
  340. package/src/update-checker/package_version.ts +30 -0
  341. package/src/update-checker/version_checker.ts +65 -0
  342. package/src/validators/errors.ts +9 -0
  343. package/src/versioning/versioning.ts +4 -1
  344. package/src/world-state/genesis_data.ts +15 -0
  345. package/src/world-state/index.ts +1 -0
  346. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  347. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  348. package/dest/contract/private_function_membership_proof.js +0 -124
  349. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  350. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  351. package/dest/contract/utility_function_membership_proof.js +0 -87
  352. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  353. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  354. package/dest/l1-contracts/slash_factory.js +0 -158
  355. package/dest/slashing/empire.d.ts +0 -31
  356. package/dest/slashing/empire.d.ts.map +0 -1
  357. package/dest/slashing/empire.js +0 -87
  358. package/dest/slashing/tally.d.ts.map +0 -1
  359. package/dest/update-checker/update-checker.d.ts +0 -49
  360. package/dest/update-checker/update-checker.d.ts.map +0 -1
  361. package/dest/update-checker/update-checker.js +0 -130
  362. package/src/contract/private_function_membership_proof.ts +0 -167
  363. package/src/contract/utility_function_membership_proof.ts +0 -118
  364. package/src/l1-contracts/slash_factory.ts +0 -180
  365. package/src/slashing/empire.ts +0 -104
  366. package/src/update-checker/update-checker.ts +0 -166
@@ -6277,154 +6277,154 @@ export declare const ProvingJobResult: z.ZodDiscriminatedUnion<"type", [z.ZodObj
6277
6277
  result?: any;
6278
6278
  }>, z.ZodObject<{
6279
6279
  type: z.ZodLiteral<ProvingRequestType.PUBLIC_CHONK_VERIFIER>;
6280
- result: ZodFor<PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, 519>>;
6280
+ result: ZodFor<PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, 480>>;
6281
6281
  }, "strip", z.ZodTypeAny, {
6282
6282
  type: ProvingRequestType.PUBLIC_CHONK_VERIFIER;
6283
- result: PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, 519>;
6283
+ result: PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, 480>;
6284
6284
  }, {
6285
6285
  type: ProvingRequestType.PUBLIC_CHONK_VERIFIER;
6286
6286
  result?: any;
6287
6287
  }>, z.ZodObject<{
6288
6288
  type: z.ZodLiteral<ProvingRequestType.PRIVATE_TX_BASE_ROLLUP>;
6289
- result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>>;
6289
+ result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>>;
6290
6290
  }, "strip", z.ZodTypeAny, {
6291
6291
  type: ProvingRequestType.PRIVATE_TX_BASE_ROLLUP;
6292
- result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>;
6292
+ result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>;
6293
6293
  }, {
6294
6294
  type: ProvingRequestType.PRIVATE_TX_BASE_ROLLUP;
6295
6295
  result?: any;
6296
6296
  }>, z.ZodObject<{
6297
6297
  type: z.ZodLiteral<ProvingRequestType.PUBLIC_TX_BASE_ROLLUP>;
6298
- result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>>;
6298
+ result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>>;
6299
6299
  }, "strip", z.ZodTypeAny, {
6300
6300
  type: ProvingRequestType.PUBLIC_TX_BASE_ROLLUP;
6301
- result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>;
6301
+ result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>;
6302
6302
  }, {
6303
6303
  type: ProvingRequestType.PUBLIC_TX_BASE_ROLLUP;
6304
6304
  result?: any;
6305
6305
  }>, z.ZodObject<{
6306
6306
  type: z.ZodLiteral<ProvingRequestType.TX_MERGE_ROLLUP>;
6307
- result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>>;
6307
+ result: ZodFor<PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>>;
6308
6308
  }, "strip", z.ZodTypeAny, {
6309
6309
  type: ProvingRequestType.TX_MERGE_ROLLUP;
6310
- result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 519>;
6310
+ result: PublicInputsAndRecursiveProof<TxRollupPublicInputs, 480>;
6311
6311
  }, {
6312
6312
  type: ProvingRequestType.TX_MERGE_ROLLUP;
6313
6313
  result?: any;
6314
6314
  }>, z.ZodObject<{
6315
6315
  type: z.ZodLiteral<ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP>;
6316
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6316
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6317
6317
  }, "strip", z.ZodTypeAny, {
6318
6318
  type: ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP;
6319
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6319
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6320
6320
  }, {
6321
6321
  type: ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP;
6322
6322
  result?: any;
6323
6323
  }>, z.ZodObject<{
6324
6324
  type: z.ZodLiteral<ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP>;
6325
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6325
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6326
6326
  }, "strip", z.ZodTypeAny, {
6327
6327
  type: ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP;
6328
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6328
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6329
6329
  }, {
6330
6330
  type: ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP;
6331
6331
  result?: any;
6332
6332
  }>, z.ZodObject<{
6333
6333
  type: z.ZodLiteral<ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP>;
6334
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6334
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6335
6335
  }, "strip", z.ZodTypeAny, {
6336
6336
  type: ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP;
6337
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6337
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6338
6338
  }, {
6339
6339
  type: ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP;
6340
6340
  result?: any;
6341
6341
  }>, z.ZodObject<{
6342
6342
  type: z.ZodLiteral<ProvingRequestType.BLOCK_ROOT_ROLLUP>;
6343
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6343
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6344
6344
  }, "strip", z.ZodTypeAny, {
6345
6345
  type: ProvingRequestType.BLOCK_ROOT_ROLLUP;
6346
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6346
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6347
6347
  }, {
6348
6348
  type: ProvingRequestType.BLOCK_ROOT_ROLLUP;
6349
6349
  result?: any;
6350
6350
  }>, z.ZodObject<{
6351
6351
  type: z.ZodLiteral<ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP>;
6352
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6352
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6353
6353
  }, "strip", z.ZodTypeAny, {
6354
6354
  type: ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP;
6355
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6355
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6356
6356
  }, {
6357
6357
  type: ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP;
6358
6358
  result?: any;
6359
6359
  }>, z.ZodObject<{
6360
6360
  type: z.ZodLiteral<ProvingRequestType.BLOCK_MERGE_ROLLUP>;
6361
- result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>>;
6361
+ result: ZodFor<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
6362
6362
  }, "strip", z.ZodTypeAny, {
6363
6363
  type: ProvingRequestType.BLOCK_MERGE_ROLLUP;
6364
- result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 519>;
6364
+ result: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>;
6365
6365
  }, {
6366
6366
  type: ProvingRequestType.BLOCK_MERGE_ROLLUP;
6367
6367
  result?: any;
6368
6368
  }>, z.ZodObject<{
6369
6369
  type: z.ZodLiteral<ProvingRequestType.CHECKPOINT_ROOT_ROLLUP>;
6370
- result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>>;
6370
+ result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>>;
6371
6371
  }, "strip", z.ZodTypeAny, {
6372
6372
  type: ProvingRequestType.CHECKPOINT_ROOT_ROLLUP;
6373
- result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>;
6373
+ result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>;
6374
6374
  }, {
6375
6375
  type: ProvingRequestType.CHECKPOINT_ROOT_ROLLUP;
6376
6376
  result?: any;
6377
6377
  }>, z.ZodObject<{
6378
6378
  type: z.ZodLiteral<ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP>;
6379
- result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>>;
6379
+ result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>>;
6380
6380
  }, "strip", z.ZodTypeAny, {
6381
6381
  type: ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP;
6382
- result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>;
6382
+ result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>;
6383
6383
  }, {
6384
6384
  type: ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP;
6385
6385
  result?: any;
6386
6386
  }>, z.ZodObject<{
6387
6387
  type: z.ZodLiteral<ProvingRequestType.CHECKPOINT_PADDING_ROLLUP>;
6388
- result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>>;
6388
+ result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>>;
6389
6389
  }, "strip", z.ZodTypeAny, {
6390
6390
  type: ProvingRequestType.CHECKPOINT_PADDING_ROLLUP;
6391
- result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>;
6391
+ result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>;
6392
6392
  }, {
6393
6393
  type: ProvingRequestType.CHECKPOINT_PADDING_ROLLUP;
6394
6394
  result?: any;
6395
6395
  }>, z.ZodObject<{
6396
6396
  type: z.ZodLiteral<ProvingRequestType.CHECKPOINT_MERGE_ROLLUP>;
6397
- result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>>;
6397
+ result: ZodFor<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>>;
6398
6398
  }, "strip", z.ZodTypeAny, {
6399
6399
  type: ProvingRequestType.CHECKPOINT_MERGE_ROLLUP;
6400
- result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 519>;
6400
+ result: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, 480>;
6401
6401
  }, {
6402
6402
  type: ProvingRequestType.CHECKPOINT_MERGE_ROLLUP;
6403
6403
  result?: any;
6404
6404
  }>, z.ZodObject<{
6405
6405
  type: z.ZodLiteral<ProvingRequestType.ROOT_ROLLUP>;
6406
- result: ZodFor<PublicInputsAndRecursiveProof<RootRollupPublicInputs, 449>>;
6406
+ result: ZodFor<PublicInputsAndRecursiveProof<RootRollupPublicInputs, 410>>;
6407
6407
  }, "strip", z.ZodTypeAny, {
6408
6408
  type: ProvingRequestType.ROOT_ROLLUP;
6409
- result: PublicInputsAndRecursiveProof<RootRollupPublicInputs, 449>;
6409
+ result: PublicInputsAndRecursiveProof<RootRollupPublicInputs, 410>;
6410
6410
  }, {
6411
6411
  type: ProvingRequestType.ROOT_ROLLUP;
6412
6412
  result?: any;
6413
6413
  }>, z.ZodObject<{
6414
6414
  type: z.ZodLiteral<ProvingRequestType.PARITY_BASE>;
6415
- result: ZodFor<PublicInputsAndRecursiveProof<ParityPublicInputs, 449>>;
6415
+ result: ZodFor<PublicInputsAndRecursiveProof<ParityPublicInputs, 410>>;
6416
6416
  }, "strip", z.ZodTypeAny, {
6417
6417
  type: ProvingRequestType.PARITY_BASE;
6418
- result: PublicInputsAndRecursiveProof<ParityPublicInputs, 449>;
6418
+ result: PublicInputsAndRecursiveProof<ParityPublicInputs, 410>;
6419
6419
  }, {
6420
6420
  type: ProvingRequestType.PARITY_BASE;
6421
6421
  result?: any;
6422
6422
  }>, z.ZodObject<{
6423
6423
  type: z.ZodLiteral<ProvingRequestType.PARITY_ROOT>;
6424
- result: ZodFor<PublicInputsAndRecursiveProof<ParityPublicInputs, 449>>;
6424
+ result: ZodFor<PublicInputsAndRecursiveProof<ParityPublicInputs, 410>>;
6425
6425
  }, "strip", z.ZodTypeAny, {
6426
6426
  type: ProvingRequestType.PARITY_ROOT;
6427
- result: PublicInputsAndRecursiveProof<ParityPublicInputs, 449>;
6427
+ result: PublicInputsAndRecursiveProof<ParityPublicInputs, 410>;
6428
6428
  }, {
6429
6429
  type: ProvingRequestType.PARITY_ROOT;
6430
6430
  result?: any;
@@ -1,10 +1,7 @@
1
1
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
2
  import { z } from 'zod';
3
- export type SlasherClientType = 'empire' | 'tally';
4
3
  export interface SlasherConfig {
5
4
  slashOverridePayload?: EthAddress;
6
- slashMinPenaltyPercentage: number;
7
- slashMaxPenaltyPercentage: number;
8
5
  slashSelfAllowed?: boolean;
9
6
  slashValidatorsAlways: EthAddress[];
10
7
  slashValidatorsNever: EthAddress[];
@@ -26,8 +23,6 @@ export interface SlasherConfig {
26
23
  }
27
24
  export declare const SlasherConfigSchema: z.ZodObject<{
28
25
  slashOverridePayload: z.ZodOptional<z.ZodType<EthAddress, any, string>>;
29
- slashMinPenaltyPercentage: z.ZodNumber;
30
- slashMaxPenaltyPercentage: z.ZodNumber;
31
26
  slashValidatorsAlways: z.ZodArray<z.ZodType<EthAddress, any, string>, "many">;
32
27
  slashValidatorsNever: z.ZodArray<z.ZodType<EthAddress, any, string>, "many">;
33
28
  slashPrunePenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
@@ -48,8 +43,6 @@ export declare const SlasherConfigSchema: z.ZodObject<{
48
43
  slashSelfAllowed: z.ZodOptional<z.ZodBoolean>;
49
44
  }, "strip", z.ZodTypeAny, {
50
45
  slashOverridePayload?: EthAddress | undefined;
51
- slashMinPenaltyPercentage: number;
52
- slashMaxPenaltyPercentage: number;
53
46
  slashValidatorsAlways: EthAddress[];
54
47
  slashValidatorsNever: EthAddress[];
55
48
  slashPrunePenalty: bigint;
@@ -70,8 +63,6 @@ export declare const SlasherConfigSchema: z.ZodObject<{
70
63
  slashSelfAllowed?: boolean | undefined;
71
64
  }, {
72
65
  slashOverridePayload?: string | undefined;
73
- slashMinPenaltyPercentage: number;
74
- slashMaxPenaltyPercentage: number;
75
66
  slashValidatorsAlways: string[];
76
67
  slashValidatorsNever: string[];
77
68
  slashPrunePenalty: string | number | bigint;
@@ -91,4 +82,4 @@ export declare const SlasherConfigSchema: z.ZodObject<{
91
82
  slashExecuteRoundsLookBack: number;
92
83
  slashSelfAllowed?: boolean | undefined;
93
84
  }>;
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhc2hlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZXMvc2xhc2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUdoRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE1BQU0sTUFBTSxpQkFBaUIsR0FBRyxRQUFRLEdBQUcsT0FBTyxDQUFDO0FBRW5ELE1BQU0sV0FBVyxhQUFhO0lBQzVCLG9CQUFvQixDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ2xDLHlCQUF5QixFQUFFLE1BQU0sQ0FBQztJQUNsQyx5QkFBeUIsRUFBRSxNQUFNLENBQUM7SUFDbEMsZ0JBQWdCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDM0IscUJBQXFCLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDcEMsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDbkMsK0JBQStCLEVBQUUsTUFBTSxDQUFDO0lBQ3hDLHdDQUF3QyxFQUFFLE1BQU0sQ0FBQztJQUNqRCxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsMkJBQTJCLEVBQUUsTUFBTSxDQUFDO0lBQ3BDLHNCQUFzQixFQUFFLE1BQU0sQ0FBQztJQUMvQixtQ0FBbUMsRUFBRSxNQUFNLENBQUM7SUFDNUMsNkJBQTZCLEVBQUUsTUFBTSxDQUFDO0lBQ3RDLGdDQUFnQyxFQUFFLE1BQU0sQ0FBQztJQUN6QyxzQ0FBc0MsRUFBRSxNQUFNLENBQUM7SUFDL0MscUNBQXFDLEVBQUUsTUFBTSxDQUFDO0lBQzlDLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztJQUM1Qiw0QkFBNEIsRUFBRSxNQUFNLENBQUM7SUFDckMsbUJBQW1CLEVBQUUsTUFBTSxDQUFDO0lBQzVCLHVCQUF1QixFQUFFLE1BQU0sQ0FBQztJQUNoQywwQkFBMEIsRUFBRSxNQUFNLENBQUM7Q0FDcEM7QUFFRCxlQUFPLE1BQU0sbUJBQW1COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUF3Qi9CLENBQUMifQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhc2hlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZXMvc2xhc2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUdoRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE1BQU0sV0FBVyxhQUFhO0lBQzVCLG9CQUFvQixDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ2xDLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzNCLHFCQUFxQixFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ3BDLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ25DLCtCQUErQixFQUFFLE1BQU0sQ0FBQztJQUN4Qyx3Q0FBd0MsRUFBRSxNQUFNLENBQUM7SUFDakQsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLDJCQUEyQixFQUFFLE1BQU0sQ0FBQztJQUNwQyxzQkFBc0IsRUFBRSxNQUFNLENBQUM7SUFDL0IsbUNBQW1DLEVBQUUsTUFBTSxDQUFDO0lBQzVDLDZCQUE2QixFQUFFLE1BQU0sQ0FBQztJQUN0QyxnQ0FBZ0MsRUFBRSxNQUFNLENBQUM7SUFDekMsc0NBQXNDLEVBQUUsTUFBTSxDQUFDO0lBQy9DLHFDQUFxQyxFQUFFLE1BQU0sQ0FBQztJQUM5QyxtQkFBbUIsRUFBRSxNQUFNLENBQUM7SUFDNUIsNEJBQTRCLEVBQUUsTUFBTSxDQUFDO0lBQ3JDLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztJQUM1Qix1QkFBdUIsRUFBRSxNQUFNLENBQUM7SUFDaEMsMEJBQTBCLEVBQUUsTUFBTSxDQUFDO0NBQ3BDO0FBRUQsZUFBTyxNQUFNLG1CQUFtQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBc0IvQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"slasher.d.ts","sourceRoot":"","sources":["../../src/interfaces/slasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qBAAqB,EAAE,UAAU,EAAE,CAAC;IACpC,oBAAoB,EAAE,UAAU,EAAE,CAAC;IACnC,+BAA+B,EAAE,MAAM,CAAC;IACxC,wCAAwC,EAAE,MAAM,CAAC;IACjD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,2BAA2B,EAAE,MAAM,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mCAAmC,EAAE,MAAM,CAAC;IAC5C,6BAA6B,EAAE,MAAM,CAAC;IACtC,gCAAgC,EAAE,MAAM,CAAC;IACzC,sCAAsC,EAAE,MAAM,CAAC;IAC/C,qCAAqC,EAAE,MAAM,CAAC;IAC9C,mBAAmB,EAAE,MAAM,CAAC;IAC5B,4BAA4B,EAAE,MAAM,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAChC,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwB/B,CAAC"}
1
+ {"version":3,"file":"slasher.d.ts","sourceRoot":"","sources":["../../src/interfaces/slasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,aAAa;IAC5B,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qBAAqB,EAAE,UAAU,EAAE,CAAC;IACpC,oBAAoB,EAAE,UAAU,EAAE,CAAC;IACnC,+BAA+B,EAAE,MAAM,CAAC;IACxC,wCAAwC,EAAE,MAAM,CAAC;IACjD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,2BAA2B,EAAE,MAAM,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mCAAmC,EAAE,MAAM,CAAC;IAC5C,6BAA6B,EAAE,MAAM,CAAC;IACtC,gCAAgC,EAAE,MAAM,CAAC;IACzC,sCAAsC,EAAE,MAAM,CAAC;IAC/C,qCAAqC,EAAE,MAAM,CAAC;IAC9C,mBAAmB,EAAE,MAAM,CAAC;IAC5B,4BAA4B,EAAE,MAAM,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAChC,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB/B,CAAC"}
@@ -2,8 +2,6 @@ import { schemas, zodFor } from '@aztec/foundation/schemas';
2
2
  import { z } from 'zod';
3
3
  export const SlasherConfigSchema = zodFor()(z.object({
4
4
  slashOverridePayload: schemas.EthAddress.optional(),
5
- slashMinPenaltyPercentage: z.number(),
6
- slashMaxPenaltyPercentage: z.number(),
7
5
  slashValidatorsAlways: z.array(schemas.EthAddress),
8
6
  slashValidatorsNever: z.array(schemas.EthAddress),
9
7
  slashPrunePenalty: schemas.BigInt,
@@ -4,17 +4,17 @@ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
5
5
  import type { Signature } from '@aztec/foundation/eth-signature';
6
6
  import type { SequencerConfig, SlasherConfig } from '@aztec/stdlib/interfaces/server';
7
- import type { BlockProposal, BlockProposalOptions, CheckpointAttestation, CheckpointLastBlockData, CheckpointProposal, CheckpointProposalOptions } from '@aztec/stdlib/p2p';
7
+ import type { BlockProposal, BlockProposalOptions, CheckpointAttestation, CheckpointProposal, CheckpointProposalOptions } from '@aztec/stdlib/p2p';
8
8
  import type { CheckpointHeader } from '@aztec/stdlib/rollup';
9
9
  import type { BlockHeader, Tx } from '@aztec/stdlib/tx';
10
10
  import type { PeerId } from '@libp2p/interface';
11
11
  import { z } from 'zod';
12
12
  import type { CommitteeAttestationsAndSigners } from '../block/index.js';
13
- import { type ValidatorHASignerConfig } from '../ha-signing/index.js';
13
+ import { type LocalSignerConfig, type ValidatorHASignerConfig } from '../ha-signing/index.js';
14
14
  /**
15
15
  * Validator client configuration
16
16
  */
17
- export type ValidatorClientConfig = ValidatorHASignerConfig & {
17
+ export type ValidatorClientConfig = ValidatorHASignerConfig & LocalSignerConfig & {
18
18
  /** The private keys of the validators participating in attestation duties */
19
19
  validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
20
20
  /** The addresses of the validators to use with remote signers */
@@ -25,9 +25,7 @@ export type ValidatorClientConfig = ValidatorHASignerConfig & {
25
25
  disabledValidators: EthAddress[];
26
26
  /** Interval between polling for new attestations from peers */
27
27
  attestationPollingIntervalMs: number;
28
- /** Whether to re-execute transactions in a block proposal before attesting */
29
- validatorReexecute: boolean;
30
- /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the currnet committee */
28
+ /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the current committee */
31
29
  alwaysReexecuteBlockProposals?: boolean;
32
30
  /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
33
31
  fishermanMode?: boolean;
@@ -37,8 +35,16 @@ export type ValidatorClientConfig = ValidatorHASignerConfig & {
37
35
  skipPushProposedBlocksToArchiver?: boolean;
38
36
  /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
39
37
  attestToEquivocatedProposals?: boolean;
38
+ /** Maximum L2 gas per block for validation. Proposals exceeding this limit are rejected. */
39
+ validateMaxL2BlockGas?: number;
40
+ /** Maximum DA gas per block for validation. Proposals exceeding this limit are rejected. */
41
+ validateMaxDABlockGas?: number;
42
+ /** Maximum transactions per block for validation. Proposals exceeding this limit are rejected. */
43
+ validateMaxTxsPerBlock?: number;
44
+ /** Maximum transactions per checkpoint for validation. Proposals exceeding this limit are rejected. */
45
+ validateMaxTxsPerCheckpoint?: number;
40
46
  };
41
- export type ValidatorClientFullConfig = ValidatorClientConfig & Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal' | 'maxTxsPerBlock'> & Pick<SlasherConfig, 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'> & {
47
+ export type ValidatorClientFullConfig = ValidatorClientConfig & Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal'> & Pick<SlasherConfig, 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'> & {
42
48
  /**
43
49
  * Whether transactions are disabled for this node
44
50
  * @remarks This should match the property in P2PConfig. It's not picked from there to avoid circular dependencies.
@@ -47,6 +53,12 @@ export type ValidatorClientFullConfig = ValidatorClientConfig & Pick<SequencerCo
47
53
  };
48
54
  export declare const ValidatorClientConfigSchema: z.ZodObject<{
49
55
  haSigningEnabled: z.ZodBoolean;
56
+ databaseUrl: z.ZodOptional<z.ZodString>;
57
+ poolMaxCount: z.ZodOptional<z.ZodNumber>;
58
+ poolMinCount: z.ZodOptional<z.ZodNumber>;
59
+ poolIdleTimeoutMs: z.ZodOptional<z.ZodNumber>;
60
+ poolConnectionTimeoutMs: z.ZodOptional<z.ZodNumber>;
61
+ } & {
50
62
  l1Contracts: z.ZodObject<{
51
63
  rollupAddress: z.ZodType<EthAddress, z.ZodTypeDef, EthAddress>;
52
64
  }, "strip", z.ZodTypeAny, {
@@ -59,24 +71,24 @@ export declare const ValidatorClientConfigSchema: z.ZodObject<{
59
71
  signingTimeoutMs: z.ZodNumber;
60
72
  maxStuckDutiesAgeMs: z.ZodOptional<z.ZodNumber>;
61
73
  cleanupOldDutiesAfterHours: z.ZodOptional<z.ZodNumber>;
62
- databaseUrl: z.ZodOptional<z.ZodString>;
63
- poolMaxCount: z.ZodOptional<z.ZodNumber>;
64
- poolMinCount: z.ZodOptional<z.ZodNumber>;
65
- poolIdleTimeoutMs: z.ZodOptional<z.ZodNumber>;
66
- poolConnectionTimeoutMs: z.ZodOptional<z.ZodNumber>;
74
+ dataDirectory: z.ZodOptional<z.ZodString>;
75
+ dataStoreMapSizeKb: z.ZodNumber;
76
+ signingProtectionMapSizeKb: z.ZodOptional<z.ZodNumber>;
67
77
  } & {
68
78
  validatorAddresses: z.ZodOptional<z.ZodArray<z.ZodType<EthAddress, any, string>, "many">>;
69
79
  disableValidator: z.ZodBoolean;
70
80
  disabledValidators: z.ZodArray<z.ZodType<EthAddress, any, string>, "many">;
71
81
  attestationPollingIntervalMs: z.ZodNumber;
72
- validatorReexecute: z.ZodBoolean;
73
82
  alwaysReexecuteBlockProposals: z.ZodOptional<z.ZodBoolean>;
74
83
  fishermanMode: z.ZodOptional<z.ZodBoolean>;
75
84
  skipCheckpointProposalValidation: z.ZodOptional<z.ZodBoolean>;
76
85
  skipPushProposedBlocksToArchiver: z.ZodOptional<z.ZodBoolean>;
77
86
  attestToEquivocatedProposals: z.ZodOptional<z.ZodBoolean>;
87
+ validateMaxL2BlockGas: z.ZodOptional<z.ZodNumber>;
88
+ validateMaxDABlockGas: z.ZodOptional<z.ZodNumber>;
89
+ validateMaxTxsPerBlock: z.ZodOptional<z.ZodNumber>;
90
+ validateMaxTxsPerCheckpoint: z.ZodOptional<z.ZodNumber>;
78
91
  }, "strip", z.ZodTypeAny, {
79
- haSigningEnabled: boolean;
80
92
  l1Contracts: {
81
93
  rollupAddress: EthAddress;
82
94
  };
@@ -85,23 +97,29 @@ export declare const ValidatorClientConfigSchema: z.ZodObject<{
85
97
  signingTimeoutMs: number;
86
98
  maxStuckDutiesAgeMs?: number | undefined;
87
99
  cleanupOldDutiesAfterHours?: number | undefined;
100
+ haSigningEnabled: boolean;
88
101
  databaseUrl?: string | undefined;
89
102
  poolMaxCount?: number | undefined;
90
103
  poolMinCount?: number | undefined;
91
104
  poolIdleTimeoutMs?: number | undefined;
92
105
  poolConnectionTimeoutMs?: number | undefined;
106
+ dataDirectory?: string | undefined;
107
+ dataStoreMapSizeKb: number;
108
+ signingProtectionMapSizeKb?: number | undefined;
93
109
  validatorAddresses?: EthAddress[] | undefined;
94
110
  disableValidator: boolean;
95
111
  disabledValidators: EthAddress[];
96
112
  attestationPollingIntervalMs: number;
97
- validatorReexecute: boolean;
98
113
  alwaysReexecuteBlockProposals?: boolean | undefined;
99
114
  fishermanMode?: boolean | undefined;
100
115
  skipCheckpointProposalValidation?: boolean | undefined;
101
116
  skipPushProposedBlocksToArchiver?: boolean | undefined;
102
117
  attestToEquivocatedProposals?: boolean | undefined;
118
+ validateMaxL2BlockGas?: number | undefined;
119
+ validateMaxDABlockGas?: number | undefined;
120
+ validateMaxTxsPerBlock?: number | undefined;
121
+ validateMaxTxsPerCheckpoint?: number | undefined;
103
122
  }, {
104
- haSigningEnabled: boolean;
105
123
  l1Contracts: {
106
124
  rollupAddress: EthAddress;
107
125
  };
@@ -110,24 +128,37 @@ export declare const ValidatorClientConfigSchema: z.ZodObject<{
110
128
  signingTimeoutMs: number;
111
129
  maxStuckDutiesAgeMs?: number | undefined;
112
130
  cleanupOldDutiesAfterHours?: number | undefined;
131
+ haSigningEnabled: boolean;
113
132
  databaseUrl?: string | undefined;
114
133
  poolMaxCount?: number | undefined;
115
134
  poolMinCount?: number | undefined;
116
135
  poolIdleTimeoutMs?: number | undefined;
117
136
  poolConnectionTimeoutMs?: number | undefined;
137
+ dataDirectory?: string | undefined;
138
+ dataStoreMapSizeKb: number;
139
+ signingProtectionMapSizeKb?: number | undefined;
118
140
  validatorAddresses?: string[] | undefined;
119
141
  disableValidator: boolean;
120
142
  disabledValidators: string[];
121
143
  attestationPollingIntervalMs: number;
122
- validatorReexecute: boolean;
123
144
  alwaysReexecuteBlockProposals?: boolean | undefined;
124
145
  fishermanMode?: boolean | undefined;
125
146
  skipCheckpointProposalValidation?: boolean | undefined;
126
147
  skipPushProposedBlocksToArchiver?: boolean | undefined;
127
148
  attestToEquivocatedProposals?: boolean | undefined;
149
+ validateMaxL2BlockGas?: number | undefined;
150
+ validateMaxDABlockGas?: number | undefined;
151
+ validateMaxTxsPerBlock?: number | undefined;
152
+ validateMaxTxsPerCheckpoint?: number | undefined;
128
153
  }>;
129
154
  export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
130
155
  haSigningEnabled: z.ZodBoolean;
156
+ databaseUrl: z.ZodOptional<z.ZodString>;
157
+ poolMaxCount: z.ZodOptional<z.ZodNumber>;
158
+ poolMinCount: z.ZodOptional<z.ZodNumber>;
159
+ poolIdleTimeoutMs: z.ZodOptional<z.ZodNumber>;
160
+ poolConnectionTimeoutMs: z.ZodOptional<z.ZodNumber>;
161
+ } & {
131
162
  l1Contracts: z.ZodObject<{
132
163
  rollupAddress: z.ZodType<EthAddress, z.ZodTypeDef, EthAddress>;
133
164
  }, "strip", z.ZodTypeAny, {
@@ -140,50 +171,67 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
140
171
  signingTimeoutMs: z.ZodNumber;
141
172
  maxStuckDutiesAgeMs: z.ZodOptional<z.ZodNumber>;
142
173
  cleanupOldDutiesAfterHours: z.ZodOptional<z.ZodNumber>;
143
- databaseUrl: z.ZodOptional<z.ZodString>;
144
- poolMaxCount: z.ZodOptional<z.ZodNumber>;
145
- poolMinCount: z.ZodOptional<z.ZodNumber>;
146
- poolIdleTimeoutMs: z.ZodOptional<z.ZodNumber>;
147
- poolConnectionTimeoutMs: z.ZodOptional<z.ZodNumber>;
174
+ dataDirectory: z.ZodOptional<z.ZodString>;
175
+ dataStoreMapSizeKb: z.ZodNumber;
176
+ signingProtectionMapSizeKb: z.ZodOptional<z.ZodNumber>;
148
177
  } & {
149
178
  validatorAddresses: z.ZodOptional<z.ZodArray<z.ZodType<EthAddress, any, string>, "many">>;
150
179
  disableValidator: z.ZodBoolean;
151
180
  disabledValidators: z.ZodArray<z.ZodType<EthAddress, any, string>, "many">;
152
181
  attestationPollingIntervalMs: z.ZodNumber;
153
- validatorReexecute: z.ZodBoolean;
154
182
  alwaysReexecuteBlockProposals: z.ZodOptional<z.ZodBoolean>;
155
183
  fishermanMode: z.ZodOptional<z.ZodBoolean>;
156
184
  skipCheckpointProposalValidation: z.ZodOptional<z.ZodBoolean>;
157
185
  skipPushProposedBlocksToArchiver: z.ZodOptional<z.ZodBoolean>;
158
186
  attestToEquivocatedProposals: z.ZodOptional<z.ZodBoolean>;
187
+ validateMaxL2BlockGas: z.ZodOptional<z.ZodNumber>;
188
+ validateMaxDABlockGas: z.ZodOptional<z.ZodNumber>;
189
+ validateMaxTxsPerBlock: z.ZodOptional<z.ZodNumber>;
190
+ validateMaxTxsPerCheckpoint: z.ZodOptional<z.ZodNumber>;
159
191
  } & {
160
192
  txPublicSetupAllowListExtend: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
161
193
  address: import("@aztec/foundation/schemas").ZodFor<import("../aztec-address/index.js").AztecAddress>;
162
194
  selector: import("@aztec/foundation/schemas").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
195
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
196
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
197
+ calldataLength: z.ZodOptional<z.ZodNumber>;
163
198
  }, "strip", z.ZodTypeAny, {
164
199
  address: import("../aztec-address/index.js").AztecAddress;
165
200
  selector: import("../abi/function_selector.js").FunctionSelector;
201
+ onlySelf?: boolean | undefined;
202
+ rejectNullMsgSender?: boolean | undefined;
203
+ calldataLength?: number | undefined;
166
204
  }, {
167
205
  address?: any;
168
206
  selector?: any;
207
+ onlySelf?: boolean | undefined;
208
+ rejectNullMsgSender?: boolean | undefined;
209
+ calldataLength?: number | undefined;
169
210
  }>, z.ZodObject<{
170
211
  classId: import("@aztec/foundation/schemas").ZodFor<Fr>;
171
212
  selector: import("@aztec/foundation/schemas").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
213
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
214
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
215
+ calldataLength: z.ZodOptional<z.ZodNumber>;
172
216
  }, "strip", z.ZodTypeAny, {
173
217
  classId: Fr;
174
218
  selector: import("../abi/function_selector.js").FunctionSelector;
219
+ onlySelf?: boolean | undefined;
220
+ rejectNullMsgSender?: boolean | undefined;
221
+ calldataLength?: number | undefined;
175
222
  }, {
176
223
  classId?: any;
177
224
  selector?: any;
225
+ onlySelf?: boolean | undefined;
226
+ rejectNullMsgSender?: boolean | undefined;
227
+ calldataLength?: number | undefined;
178
228
  }>]>, "many">>;
179
229
  broadcastInvalidBlockProposal: z.ZodOptional<z.ZodBoolean>;
180
- maxTxsPerBlock: z.ZodOptional<z.ZodNumber>;
181
230
  slashBroadcastedInvalidBlockPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
182
231
  slashDuplicateProposalPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
183
232
  slashDuplicateAttestationPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
184
233
  disableTransactions: z.ZodOptional<z.ZodBoolean>;
185
234
  }, "strip", z.ZodTypeAny, {
186
- haSigningEnabled: boolean;
187
235
  l1Contracts: {
188
236
  rollupAddress: EthAddress;
189
237
  };
@@ -192,36 +240,47 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
192
240
  signingTimeoutMs: number;
193
241
  maxStuckDutiesAgeMs?: number | undefined;
194
242
  cleanupOldDutiesAfterHours?: number | undefined;
243
+ haSigningEnabled: boolean;
195
244
  databaseUrl?: string | undefined;
196
245
  poolMaxCount?: number | undefined;
197
246
  poolMinCount?: number | undefined;
198
247
  poolIdleTimeoutMs?: number | undefined;
199
248
  poolConnectionTimeoutMs?: number | undefined;
249
+ dataDirectory?: string | undefined;
250
+ dataStoreMapSizeKb: number;
251
+ signingProtectionMapSizeKb?: number | undefined;
200
252
  validatorAddresses?: EthAddress[] | undefined;
201
253
  disableValidator: boolean;
202
254
  disabledValidators: EthAddress[];
203
255
  attestationPollingIntervalMs: number;
204
- validatorReexecute: boolean;
205
256
  alwaysReexecuteBlockProposals?: boolean | undefined;
206
257
  fishermanMode?: boolean | undefined;
207
258
  skipCheckpointProposalValidation?: boolean | undefined;
208
259
  skipPushProposedBlocksToArchiver?: boolean | undefined;
209
260
  attestToEquivocatedProposals?: boolean | undefined;
261
+ validateMaxL2BlockGas?: number | undefined;
262
+ validateMaxDABlockGas?: number | undefined;
263
+ validateMaxTxsPerBlock?: number | undefined;
264
+ validateMaxTxsPerCheckpoint?: number | undefined;
210
265
  txPublicSetupAllowListExtend?: ({
211
266
  address: import("../aztec-address/index.js").AztecAddress;
212
267
  selector: import("../abi/function_selector.js").FunctionSelector;
268
+ onlySelf?: boolean | undefined;
269
+ rejectNullMsgSender?: boolean | undefined;
270
+ calldataLength?: number | undefined;
213
271
  } | {
214
272
  classId: Fr;
215
273
  selector: import("../abi/function_selector.js").FunctionSelector;
274
+ onlySelf?: boolean | undefined;
275
+ rejectNullMsgSender?: boolean | undefined;
276
+ calldataLength?: number | undefined;
216
277
  })[] | undefined;
217
278
  broadcastInvalidBlockProposal?: boolean | undefined;
218
- maxTxsPerBlock?: number | undefined;
219
279
  slashBroadcastedInvalidBlockPenalty: bigint;
220
280
  slashDuplicateProposalPenalty: bigint;
221
281
  slashDuplicateAttestationPenalty: bigint;
222
282
  disableTransactions?: boolean | undefined;
223
283
  }, {
224
- haSigningEnabled: boolean;
225
284
  l1Contracts: {
226
285
  rollupAddress: EthAddress;
227
286
  };
@@ -230,44 +289,53 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
230
289
  signingTimeoutMs: number;
231
290
  maxStuckDutiesAgeMs?: number | undefined;
232
291
  cleanupOldDutiesAfterHours?: number | undefined;
292
+ haSigningEnabled: boolean;
233
293
  databaseUrl?: string | undefined;
234
294
  poolMaxCount?: number | undefined;
235
295
  poolMinCount?: number | undefined;
236
296
  poolIdleTimeoutMs?: number | undefined;
237
297
  poolConnectionTimeoutMs?: number | undefined;
298
+ dataDirectory?: string | undefined;
299
+ dataStoreMapSizeKb: number;
300
+ signingProtectionMapSizeKb?: number | undefined;
238
301
  validatorAddresses?: string[] | undefined;
239
302
  disableValidator: boolean;
240
303
  disabledValidators: string[];
241
304
  attestationPollingIntervalMs: number;
242
- validatorReexecute: boolean;
243
305
  alwaysReexecuteBlockProposals?: boolean | undefined;
244
306
  fishermanMode?: boolean | undefined;
245
307
  skipCheckpointProposalValidation?: boolean | undefined;
246
308
  skipPushProposedBlocksToArchiver?: boolean | undefined;
247
309
  attestToEquivocatedProposals?: boolean | undefined;
310
+ validateMaxL2BlockGas?: number | undefined;
311
+ validateMaxDABlockGas?: number | undefined;
312
+ validateMaxTxsPerBlock?: number | undefined;
313
+ validateMaxTxsPerCheckpoint?: number | undefined;
248
314
  txPublicSetupAllowListExtend?: ({
249
315
  address?: any;
250
316
  selector?: any;
317
+ onlySelf?: boolean | undefined;
318
+ rejectNullMsgSender?: boolean | undefined;
319
+ calldataLength?: number | undefined;
251
320
  } | {
252
321
  classId?: any;
253
322
  selector?: any;
323
+ onlySelf?: boolean | undefined;
324
+ rejectNullMsgSender?: boolean | undefined;
325
+ calldataLength?: number | undefined;
254
326
  })[] | undefined;
255
327
  broadcastInvalidBlockProposal?: boolean | undefined;
256
- maxTxsPerBlock?: number | undefined;
257
328
  slashBroadcastedInvalidBlockPenalty: string | number | bigint;
258
329
  slashDuplicateProposalPenalty: string | number | bigint;
259
330
  slashDuplicateAttestationPenalty: string | number | bigint;
260
331
  disableTransactions?: boolean | undefined;
261
332
  }>;
262
- export type CreateCheckpointProposalLastBlockData = Omit<CheckpointLastBlockData, 'txHashes'> & {
263
- txs: Tx[];
264
- };
265
333
  export interface Validator {
266
334
  start(): Promise<void>;
267
335
  updateConfig(config: Partial<ValidatorClientFullConfig>): void;
268
336
  createBlockProposal(blockHeader: BlockHeader, indexWithinCheckpoint: number, inHash: Fr, archive: Fr, txs: Tx[], proposerAddress: EthAddress | undefined, options: BlockProposalOptions): Promise<BlockProposal | undefined>;
269
337
  /** Creates a checkpoint proposal for the last block in a checkpoint */
270
- createCheckpointProposal(checkpointHeader: CheckpointHeader, archive: Fr, feeAssetPriceModifier: bigint, lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined, proposerAddress: EthAddress | undefined, options: CheckpointProposalOptions): Promise<CheckpointProposal>;
338
+ createCheckpointProposal(checkpointHeader: CheckpointHeader, archive: Fr, feeAssetPriceModifier: bigint, lastBlockProposal: BlockProposal | undefined, proposerAddress: EthAddress | undefined, options: CheckpointProposalOptions): Promise<CheckpointProposal>;
271
339
  /**
272
340
  * Validate a block proposal from a peer.
273
341
  * Note: Validators do NOT attest to individual blocks - attestations are only for checkpoint proposals.
@@ -286,4 +354,4 @@ export interface Validator {
286
354
  collectAttestations(proposal: CheckpointProposal, required: number, deadline: Date): Promise<CheckpointAttestation[]>;
287
355
  signAttestationsAndSigners(attestationsAndSigners: CommitteeAttestationsAndSigners, proposer: EthAddress, slot: SlotNumber, blockNumber: BlockNumber | CheckpointNumber): Promise<Signature>;
288
356
  }
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy92YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pHLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDMUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLEtBQUssdUJBQXVCLEVBQWlDLE1BQU0sd0JBQXdCLENBQUM7QUFHckc7O0dBRUc7QUFDSCxNQUFNLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLEdBQUc7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
357
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy92YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pHLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUMxQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RSxPQUFPLEVBQ0wsS0FBSyxpQkFBaUIsRUFFdEIsS0FBSyx1QkFBdUIsRUFFN0IsTUFBTSx3QkFBd0IsQ0FBQztBQUdoQzs7R0FFRztBQUNILE1BQU0sTUFBTSxxQkFBcUIsR0FBRyx1QkFBdUIsR0FDekQsaUJBQWlCLEdBQUc7SUFDbEIsNkVBQTZFO0lBQzdFLG9CQUFvQixDQUFDLEVBQUUsV0FBVyxDQUFDLEtBQUssTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXBELGlFQUFpRTtJQUNqRSxrQkFBa0IsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBRWxDLCtCQUErQjtJQUMvQixnQkFBZ0IsRUFBRSxPQUFPLENBQUM7SUFFMUIsNkRBQTZEO0lBQzdELGtCQUFrQixFQUFFLFVBQVUsRUFBRSxDQUFDO0lBRWpDLCtEQUErRDtJQUMvRCw0QkFBNEIsRUFBRSxNQUFNLENBQUM7SUFFckMscUhBQXFIO0lBQ3JILDZCQUE2QixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBRXhDLGlKQUFpSjtJQUNqSixhQUFhLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFeEIsNkVBQTZFO0lBQzdFLGdDQUFnQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBRTNDLG1FQUFtRTtJQUNuRSxnQ0FBZ0MsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUUzQyxzRkFBc0Y7SUFDdEYsNEJBQTRCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFdkMsNEZBQTRGO0lBQzVGLHFCQUFxQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRS9CLDRGQUE0RjtJQUM1RixxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQixrR0FBa0c7SUFDbEcsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFaEMsdUdBQXVHO0lBQ3ZHLDJCQUEyQixDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ3RDLENBQUM7QUFFSixNQUFNLE1BQU0seUJBQXlCLEdBQUcscUJBQXFCLEdBQzNELElBQUksQ0FBQyxlQUFlLEVBQUUsOEJBQThCLEdBQUcsK0JBQStCLENBQUMsR0FDdkYsSUFBSSxDQUNGLGFBQWEsRUFDYixxQ0FBcUMsR0FBRywrQkFBK0IsR0FBRyxrQ0FBa0MsQ0FDN0csR0FBRztJQUNGOzs7T0FHRztJQUNILG1CQUFtQixDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQy9CLENBQUM7QUFFSixlQUFPLE1BQU0sMkJBQTJCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQnZDLENBQUM7QUFFRixlQUFPLE1BQU0sK0JBQStCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBUzNDLENBQUM7QUFFRixNQUFNLFdBQVcsU0FBUztJQUN4QixLQUFLLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxDQUFDO0lBRy9ELG1CQUFtQixDQUNqQixXQUFXLEVBQUUsV0FBVyxFQUN4QixxQkFBcUIsRUFBRSxNQUFNLEVBQzdCLE1BQU0sRUFBRSxFQUFFLEVBQ1YsT0FBTyxFQUFFLEVBQUUsRUFDWCxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQ1QsZUFBZSxFQUFFLFVBQVUsR0FBRyxTQUFTLEVBQ3ZDLE9BQU8sRUFBRSxvQkFBb0IsR0FDNUIsT0FBTyxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUV0Qyx1RUFBdUU7SUFDdkUsd0JBQXdCLENBQ3RCLGdCQUFnQixFQUFFLGdCQUFnQixFQUNsQyxPQUFPLEVBQUUsRUFBRSxFQUNYLHFCQUFxQixFQUFFLE1BQU0sRUFDN0IsaUJBQWlCLEVBQUUsYUFBYSxHQUFHLFNBQVMsRUFDNUMsZUFBZSxFQUFFLFVBQVUsR0FBRyxTQUFTLEVBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsR0FDakMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFL0I7Ozs7T0FJRztJQUNILHFCQUFxQixDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFakY7OztPQUdHO0lBQ0gsMEJBQTBCLENBQ3hCLFFBQVEsRUFBRSxrQkFBa0IsRUFDNUIsTUFBTSxFQUFFLE1BQU0sR0FDYixPQUFPLENBQUMscUJBQXFCLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoRCxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsYUFBYSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUvRCx5R0FBeUc7SUFDekcsc0JBQXNCLENBQUMsUUFBUSxFQUFFLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFFdkYsMEVBQTBFO0lBQzFFLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztJQUV0SCwwQkFBMEIsQ0FDeEIsc0JBQXNCLEVBQUUsK0JBQStCLEVBQ3ZELFFBQVEsRUFBRSxVQUFVLEVBQ3BCLElBQUksRUFBRSxVQUFVLEVBQ2hCLFdBQVcsRUFBRSxXQUFXLEdBQUcsZ0JBQWdCLEdBQzFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztDQUN2QiJ9