@aztec/stdlib 0.0.1-commit.96dac018d → 0.0.1-commit.993d240

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 (941) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +7 -25
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_selector.d.ts +3 -6
  26. package/dest/abi/function_selector.d.ts.map +1 -1
  27. package/dest/abi/function_selector.js +2 -4
  28. package/dest/abi/function_signature_decoder.d.ts +43 -0
  29. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  30. package/dest/abi/function_signature_decoder.js +66 -0
  31. package/dest/abi/index.d.ts +2 -1
  32. package/dest/abi/index.d.ts.map +1 -1
  33. package/dest/abi/index.js +1 -0
  34. package/dest/abi/note_selector.d.ts +4 -7
  35. package/dest/abi/note_selector.d.ts.map +1 -1
  36. package/dest/abi/note_selector.js +1 -3
  37. package/dest/abi/selector.d.ts +2 -2
  38. package/dest/abi/selector.d.ts.map +1 -1
  39. package/dest/abi/selector.js +1 -1
  40. package/dest/abi/utils.d.ts +14 -1
  41. package/dest/abi/utils.d.ts.map +1 -1
  42. package/dest/abi/utils.js +16 -1
  43. package/dest/auth_witness/auth_witness.d.ts +2 -2
  44. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  45. package/dest/avm/avm.d.ts +1756 -10463
  46. package/dest/avm/avm.d.ts.map +1 -1
  47. package/dest/avm/avm.js +6 -3
  48. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  49. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  50. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  51. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  52. package/dest/avm/avm_proving_request.d.ts +653 -5446
  53. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  54. package/dest/avm/message_pack.js +12 -3
  55. package/dest/avm/public_data_write.d.ts +6 -12
  56. package/dest/avm/public_data_write.d.ts.map +1 -1
  57. package/dest/avm/revert_code.d.ts +6 -7
  58. package/dest/avm/revert_code.d.ts.map +1 -1
  59. package/dest/avm/revert_code.js +13 -21
  60. package/dest/aztec-address/index.d.ts +8 -8
  61. package/dest/aztec-address/index.d.ts.map +1 -1
  62. package/dest/aztec-address/index.js +9 -6
  63. package/dest/block/attestation_info.d.ts +3 -2
  64. package/dest/block/attestation_info.d.ts.map +1 -1
  65. package/dest/block/attestation_info.js +7 -5
  66. package/dest/block/block_data.d.ts +13 -38
  67. package/dest/block/block_data.d.ts.map +1 -1
  68. package/dest/block/block_data.js +2 -2
  69. package/dest/block/block_hash.d.ts +11 -10
  70. package/dest/block/block_hash.d.ts.map +1 -1
  71. package/dest/block/block_hash.js +10 -9
  72. package/dest/block/block_parameter.d.ts +37 -4
  73. package/dest/block/block_parameter.d.ts.map +1 -1
  74. package/dest/block/block_parameter.js +53 -2
  75. package/dest/block/in_block.d.ts +5 -24
  76. package/dest/block/in_block.d.ts.map +1 -1
  77. package/dest/block/index.d.ts +1 -2
  78. package/dest/block/index.d.ts.map +1 -1
  79. package/dest/block/index.js +0 -1
  80. package/dest/block/l2_block.d.ts +21 -41
  81. package/dest/block/l2_block.d.ts.map +1 -1
  82. package/dest/block/l2_block.js +12 -2
  83. package/dest/block/l2_block_info.d.ts +10 -29
  84. package/dest/block/l2_block_info.d.ts.map +1 -1
  85. package/dest/block/l2_block_info.js +6 -5
  86. package/dest/block/l2_block_source.d.ts +204 -351
  87. package/dest/block/l2_block_source.d.ts.map +1 -1
  88. package/dest/block/l2_block_source.js +67 -1
  89. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  90. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  91. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  92. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  93. package/dest/block/l2_block_stream/l2_block_stream.js +49 -12
  94. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  95. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  97. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  98. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  100. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  101. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  102. package/dest/block/proposal/attestations_and_signers.js +26 -18
  103. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  104. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  105. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  106. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  107. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  108. package/dest/checkpoint/checkpoint.d.ts +31 -96
  109. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  110. package/dest/checkpoint/checkpoint.js +18 -5
  111. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  112. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  113. package/dest/checkpoint/checkpoint_data.js +12 -0
  114. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  115. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  116. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  117. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  118. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  119. package/dest/checkpoint/digest.d.ts +18 -0
  120. package/dest/checkpoint/digest.d.ts.map +1 -0
  121. package/dest/checkpoint/digest.js +12 -0
  122. package/dest/checkpoint/index.d.ts +5 -1
  123. package/dest/checkpoint/index.d.ts.map +1 -1
  124. package/dest/checkpoint/index.js +4 -0
  125. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  126. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  127. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  128. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  129. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  130. package/dest/checkpoint/validate.d.ts +36 -0
  131. package/dest/checkpoint/validate.d.ts.map +1 -0
  132. package/dest/checkpoint/validate.js +120 -0
  133. package/dest/config/chain-config.d.ts +4 -9
  134. package/dest/config/chain-config.d.ts.map +1 -1
  135. package/dest/config/chain-config.js +13 -12
  136. package/dest/config/index.d.ts +2 -1
  137. package/dest/config/index.d.ts.map +1 -1
  138. package/dest/config/index.js +1 -0
  139. package/dest/config/pipelining-config.d.ts +15 -0
  140. package/dest/config/pipelining-config.d.ts.map +1 -0
  141. package/dest/config/pipelining-config.js +18 -0
  142. package/dest/config/sequencer-config.d.ts +7 -3
  143. package/dest/config/sequencer-config.d.ts.map +1 -1
  144. package/dest/config/sequencer-config.js +23 -3
  145. package/dest/contract/complete_address.d.ts +3 -2
  146. package/dest/contract/complete_address.d.ts.map +1 -1
  147. package/dest/contract/complete_address.js +6 -2
  148. package/dest/contract/contract_address.d.ts +6 -6
  149. package/dest/contract/contract_address.d.ts.map +1 -1
  150. package/dest/contract/contract_address.js +6 -5
  151. package/dest/contract/contract_class_id.d.ts +2 -2
  152. package/dest/contract/contract_class_id.js +2 -2
  153. package/dest/contract/contract_deployment_data.d.ts +15 -61
  154. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  155. package/dest/contract/contract_instance.d.ts +4 -2
  156. package/dest/contract/contract_instance.d.ts.map +1 -1
  157. package/dest/contract/contract_instance.js +10 -3
  158. package/dest/contract/index.d.ts +1 -3
  159. package/dest/contract/index.d.ts.map +1 -1
  160. package/dest/contract/index.js +0 -2
  161. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  162. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  163. package/dest/contract/interfaces/contract_class.js +1 -28
  164. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  165. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  166. package/dest/contract/interfaces/contract_instance.js +4 -2
  167. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  168. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  169. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  170. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  171. package/dest/contract/private_function.d.ts +1 -1
  172. package/dest/contract/private_function.d.ts.map +1 -1
  173. package/dest/contract/private_function.js +2 -4
  174. package/dest/database-version/database_version.d.ts +5 -11
  175. package/dest/database-version/database_version.d.ts.map +1 -1
  176. package/dest/database-version/version_manager.d.ts +6 -2
  177. package/dest/database-version/version_manager.d.ts.map +1 -1
  178. package/dest/database-version/version_manager.js +12 -1
  179. package/dest/epoch-helpers/index.d.ts +12 -20
  180. package/dest/epoch-helpers/index.d.ts.map +1 -1
  181. package/dest/epoch-helpers/index.js +16 -2
  182. package/dest/file-store/factory.d.ts +4 -3
  183. package/dest/file-store/factory.d.ts.map +1 -1
  184. package/dest/file-store/factory.js +2 -2
  185. package/dest/file-store/http.d.ts +9 -2
  186. package/dest/file-store/http.d.ts.map +1 -1
  187. package/dest/file-store/http.js +20 -9
  188. package/dest/file-store/index.d.ts +2 -1
  189. package/dest/file-store/index.d.ts.map +1 -1
  190. package/dest/gas/fee_math.d.ts +49 -0
  191. package/dest/gas/fee_math.d.ts.map +1 -0
  192. package/dest/gas/fee_math.js +80 -0
  193. package/dest/gas/gas.d.ts +9 -14
  194. package/dest/gas/gas.d.ts.map +1 -1
  195. package/dest/gas/gas.js +6 -3
  196. package/dest/gas/gas_fees.d.ts +13 -14
  197. package/dest/gas/gas_fees.d.ts.map +1 -1
  198. package/dest/gas/gas_fees.js +20 -4
  199. package/dest/gas/gas_settings.d.ts +66 -86
  200. package/dest/gas/gas_settings.d.ts.map +1 -1
  201. package/dest/gas/gas_settings.js +56 -9
  202. package/dest/gas/index.d.ts +2 -1
  203. package/dest/gas/index.d.ts.map +1 -1
  204. package/dest/gas/index.js +1 -0
  205. package/dest/ha-signing/config.d.ts +28 -57
  206. package/dest/ha-signing/config.d.ts.map +1 -1
  207. package/dest/ha-signing/config.js +24 -28
  208. package/dest/ha-signing/index.d.ts +4 -3
  209. package/dest/ha-signing/index.d.ts.map +1 -1
  210. package/dest/ha-signing/index.js +3 -2
  211. package/dest/ha-signing/local_config.d.ts +32 -0
  212. package/dest/ha-signing/local_config.d.ts.map +1 -0
  213. package/dest/ha-signing/local_config.js +24 -0
  214. package/dest/ha-signing/types.d.ts +37 -32
  215. package/dest/ha-signing/types.d.ts.map +1 -1
  216. package/dest/ha-signing/types.js +13 -6
  217. package/dest/hash/hash.d.ts +34 -1
  218. package/dest/hash/hash.d.ts.map +1 -1
  219. package/dest/hash/hash.js +63 -2
  220. package/dest/interfaces/allowed_element.d.ts +17 -35
  221. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  222. package/dest/interfaces/allowed_element.js +8 -8
  223. package/dest/interfaces/api_limit.d.ts +1 -1
  224. package/dest/interfaces/api_limit.js +1 -1
  225. package/dest/interfaces/archiver.d.ts +22 -32
  226. package/dest/interfaces/archiver.d.ts.map +1 -1
  227. package/dest/interfaces/archiver.js +208 -68
  228. package/dest/interfaces/aztec-node-admin.d.ts +81 -273
  229. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  230. package/dest/interfaces/aztec-node-admin.js +59 -16
  231. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  232. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  233. package/dest/interfaces/aztec-node-debug.js +21 -0
  234. package/dest/interfaces/aztec-node.d.ts +84 -101
  235. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  236. package/dest/interfaces/aztec-node.js +298 -68
  237. package/dest/interfaces/block-builder.d.ts +40 -11
  238. package/dest/interfaces/block-builder.d.ts.map +1 -1
  239. package/dest/interfaces/block-builder.js +13 -6
  240. package/dest/interfaces/block_response.d.ts +90 -0
  241. package/dest/interfaces/block_response.d.ts.map +1 -0
  242. package/dest/interfaces/block_response.js +30 -0
  243. package/dest/interfaces/chain_tips.d.ts +50 -0
  244. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  245. package/dest/interfaces/chain_tips.js +11 -0
  246. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  247. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  248. package/dest/interfaces/checkpoint_parameter.js +18 -0
  249. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  250. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  251. package/dest/interfaces/checkpoint_response.js +26 -0
  252. package/dest/interfaces/client.d.ts +8 -2
  253. package/dest/interfaces/client.d.ts.map +1 -1
  254. package/dest/interfaces/client.js +7 -1
  255. package/dest/interfaces/configs.d.ts +64 -123
  256. package/dest/interfaces/configs.d.ts.map +1 -1
  257. package/dest/interfaces/configs.js +15 -3
  258. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  259. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  260. package/dest/interfaces/l1_publish_info.js +26 -0
  261. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  262. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  263. package/dest/interfaces/l2_logs_source.js +5 -0
  264. package/dest/interfaces/merkle_tree_operations.d.ts +12 -21
  265. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  266. package/dest/interfaces/p2p-bootstrap.js +8 -2
  267. package/dest/interfaces/p2p.d.ts +17 -12
  268. package/dest/interfaces/p2p.d.ts.map +1 -1
  269. package/dest/interfaces/p2p.js +28 -5
  270. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  271. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  272. package/dest/interfaces/prover-agent.d.ts +5 -23
  273. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  274. package/dest/interfaces/prover-agent.js +4 -1
  275. package/dest/interfaces/prover-client.d.ts +9 -25
  276. package/dest/interfaces/prover-client.d.ts.map +1 -1
  277. package/dest/interfaces/prover-client.js +7 -4
  278. package/dest/interfaces/prover-node.js +22 -8
  279. package/dest/interfaces/proving-job-source.js +24 -4
  280. package/dest/interfaces/proving-job.d.ts +742 -5793
  281. package/dest/interfaces/proving-job.d.ts.map +1 -1
  282. package/dest/interfaces/proving-job.js +1 -1
  283. package/dest/interfaces/public_storage_override.d.ts +22 -0
  284. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  285. package/dest/interfaces/public_storage_override.js +7 -0
  286. package/dest/interfaces/server.d.ts +6 -1
  287. package/dest/interfaces/server.d.ts.map +1 -1
  288. package/dest/interfaces/server.js +5 -0
  289. package/dest/interfaces/slasher.d.ts +25 -65
  290. package/dest/interfaces/slasher.d.ts.map +1 -1
  291. package/dest/interfaces/slasher.js +8 -4
  292. package/dest/interfaces/tx_provider.d.ts +6 -1
  293. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  294. package/dest/interfaces/validator.d.ts +70 -208
  295. package/dest/interfaces/validator.d.ts.map +1 -1
  296. package/dest/interfaces/validator.js +13 -5
  297. package/dest/interfaces/world_state.d.ts +6 -5
  298. package/dest/interfaces/world_state.d.ts.map +1 -1
  299. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  300. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  301. package/dest/kernel/hints/key_validation_request.js +20 -18
  302. package/dest/kernel/index.d.ts +5 -1
  303. package/dest/kernel/index.d.ts.map +1 -1
  304. package/dest/kernel/index.js +4 -0
  305. package/dest/kernel/log_hash.d.ts +6 -2
  306. package/dest/kernel/log_hash.d.ts.map +1 -1
  307. package/dest/kernel/log_hash.js +21 -9
  308. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  309. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  310. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  311. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  312. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  313. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  314. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  315. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  316. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  317. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  318. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  319. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  320. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  321. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  322. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  323. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  324. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  325. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  326. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +10 -6
  327. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  328. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +26 -7
  329. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  330. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  331. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  332. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  333. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  334. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  335. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  336. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  338. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  339. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  340. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  341. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  342. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  343. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  344. package/dest/kernel/public_call_request.d.ts +15 -30
  345. package/dest/kernel/public_call_request.d.ts.map +1 -1
  346. package/dest/kernel/public_call_request.js +16 -7
  347. package/dest/keys/derivation.d.ts +6 -2
  348. package/dest/keys/derivation.d.ts.map +1 -1
  349. package/dest/keys/derivation.js +16 -6
  350. package/dest/keys/public_key.d.ts +22 -3
  351. package/dest/keys/public_key.d.ts.map +1 -1
  352. package/dest/keys/public_key.js +20 -1
  353. package/dest/keys/public_keys.d.ts +55 -82
  354. package/dest/keys/public_keys.d.ts.map +1 -1
  355. package/dest/keys/public_keys.js +102 -74
  356. package/dest/kv-store/config.d.ts +14 -0
  357. package/dest/kv-store/config.d.ts.map +1 -0
  358. package/dest/kv-store/config.js +21 -0
  359. package/dest/kv-store/index.d.ts +2 -0
  360. package/dest/kv-store/index.d.ts.map +1 -0
  361. package/dest/kv-store/index.js +1 -0
  362. package/dest/l1-contracts/index.d.ts +2 -2
  363. package/dest/l1-contracts/index.d.ts.map +1 -1
  364. package/dest/l1-contracts/index.js +1 -1
  365. package/dest/logs/app_tagging_secret.d.ts +46 -0
  366. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  367. package/dest/logs/app_tagging_secret.js +109 -0
  368. package/dest/logs/app_tagging_secret_kind.d.ts +6 -0
  369. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  370. package/dest/logs/app_tagging_secret_kind.js +4 -0
  371. package/dest/logs/contract_class_log.d.ts +16 -34
  372. package/dest/logs/contract_class_log.d.ts.map +1 -1
  373. package/dest/logs/contract_class_log.js +11 -9
  374. package/dest/logs/index.d.ts +8 -7
  375. package/dest/logs/index.d.ts.map +1 -1
  376. package/dest/logs/index.js +7 -6
  377. package/dest/logs/log_cursor.d.ts +51 -0
  378. package/dest/logs/log_cursor.d.ts.map +1 -0
  379. package/dest/logs/log_cursor.js +82 -0
  380. package/dest/logs/log_result.d.ts +54 -0
  381. package/dest/logs/log_result.d.ts.map +1 -0
  382. package/dest/logs/log_result.js +56 -0
  383. package/dest/logs/logs_query.d.ts +82 -0
  384. package/dest/logs/logs_query.d.ts.map +1 -0
  385. package/dest/logs/logs_query.js +50 -0
  386. package/dest/logs/message_context.d.ts +4 -7
  387. package/dest/logs/message_context.d.ts.map +1 -1
  388. package/dest/logs/message_context.js +23 -9
  389. package/dest/logs/pending_tagged_log.d.ts +2 -3
  390. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  391. package/dest/logs/pending_tagged_log.js +2 -2
  392. package/dest/logs/pre_tag.d.ts +14 -22
  393. package/dest/logs/pre_tag.d.ts.map +1 -1
  394. package/dest/logs/pre_tag.js +2 -2
  395. package/dest/logs/private_log.d.ts +7 -12
  396. package/dest/logs/private_log.d.ts.map +1 -1
  397. package/dest/logs/private_log.js +6 -3
  398. package/dest/logs/public_log.d.ts +4 -3
  399. package/dest/logs/public_log.d.ts.map +1 -1
  400. package/dest/logs/public_log.js +2 -1
  401. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  402. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  403. package/dest/logs/query_all_logs_by_tags.js +64 -0
  404. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  405. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  406. package/dest/logs/shared_secret_derivation.js +15 -9
  407. package/dest/logs/siloed_tag.d.ts +12 -9
  408. package/dest/logs/siloed_tag.d.ts.map +1 -1
  409. package/dest/logs/siloed_tag.js +17 -2
  410. package/dest/logs/tag.d.ts +5 -6
  411. package/dest/logs/tag.d.ts.map +1 -1
  412. package/dest/logs/tag.js +5 -1
  413. package/dest/logs/tagging_index_range.d.ts +22 -0
  414. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  415. package/dest/logs/tagging_index_range.js +8 -0
  416. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  417. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  418. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  419. package/dest/messaging/index.d.ts +2 -1
  420. package/dest/messaging/index.d.ts.map +1 -1
  421. package/dest/messaging/index.js +1 -0
  422. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  423. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  424. package/dest/messaging/l1_to_l2_message.js +11 -13
  425. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  426. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  427. package/dest/messaging/l2_to_l1_membership.d.ts +62 -6
  428. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  429. package/dest/messaging/l2_to_l1_membership.js +115 -27
  430. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  431. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  432. package/dest/messaging/l2_to_l1_message.js +21 -12
  433. package/dest/noir/index.d.ts +5 -3
  434. package/dest/noir/index.d.ts.map +1 -1
  435. package/dest/note/note.d.ts +2 -2
  436. package/dest/note/note.d.ts.map +1 -1
  437. package/dest/note/note_dao.d.ts +1 -1
  438. package/dest/note/note_dao.d.ts.map +1 -1
  439. package/dest/note/note_dao.js +1 -4
  440. package/dest/p2p/block_proposal.d.ts +31 -14
  441. package/dest/p2p/block_proposal.d.ts.map +1 -1
  442. package/dest/p2p/block_proposal.js +57 -39
  443. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  444. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  445. package/dest/p2p/checkpoint_attestation.js +23 -24
  446. package/dest/p2p/checkpoint_proposal.d.ts +35 -21
  447. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  448. package/dest/p2p/checkpoint_proposal.js +59 -61
  449. package/dest/p2p/client_type.d.ts +2 -5
  450. package/dest/p2p/client_type.d.ts.map +1 -1
  451. package/dest/p2p/client_type.js +0 -7
  452. package/dest/p2p/consensus_payload.d.ts +26 -20
  453. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  454. package/dest/p2p/consensus_payload.js +38 -19
  455. package/dest/p2p/gossipable.d.ts +4 -4
  456. package/dest/p2p/gossipable.d.ts.map +1 -1
  457. package/dest/p2p/index.d.ts +1 -2
  458. package/dest/p2p/index.d.ts.map +1 -1
  459. package/dest/p2p/index.js +0 -1
  460. package/dest/p2p/peer_error.d.ts +3 -1
  461. package/dest/p2p/peer_error.d.ts.map +1 -1
  462. package/dest/p2p/peer_error.js +5 -0
  463. package/dest/p2p/signature_utils.d.ts +28 -19
  464. package/dest/p2p/signature_utils.d.ts.map +1 -1
  465. package/dest/p2p/signature_utils.js +118 -21
  466. package/dest/p2p/signed_txs.d.ts +15 -13
  467. package/dest/p2p/signed_txs.d.ts.map +1 -1
  468. package/dest/p2p/signed_txs.js +26 -24
  469. package/dest/p2p/topic_type.d.ts +3 -4
  470. package/dest/p2p/topic_type.d.ts.map +1 -1
  471. package/dest/p2p/topic_type.js +7 -24
  472. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  473. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  474. package/dest/parity/parity_base_private_inputs.js +7 -5
  475. package/dest/parity/parity_public_inputs.d.ts +8 -4
  476. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  477. package/dest/parity/parity_public_inputs.js +6 -3
  478. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  479. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  480. package/dest/proofs/chonk_proof.d.ts +57 -7
  481. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  482. package/dest/proofs/chonk_proof.js +112 -15
  483. package/dest/proofs/recursive_proof.d.ts +2 -2
  484. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  485. package/dest/rollup/block_headers_hash.d.ts +1 -1
  486. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  487. package/dest/rollup/block_headers_hash.js +8 -2
  488. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  489. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  490. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  491. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  492. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  493. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  494. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  495. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  496. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  497. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  498. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  499. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  500. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  501. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  502. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  503. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  504. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  505. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  506. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  507. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  508. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  509. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  510. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  511. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  512. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  513. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  514. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  515. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  516. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  517. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  518. package/dest/schemas/schemas.d.ts +32 -78
  519. package/dest/schemas/schemas.d.ts.map +1 -1
  520. package/dest/schemas/schemas.js +2 -2
  521. package/dest/slashing/helpers.d.ts +2 -2
  522. package/dest/slashing/helpers.d.ts.map +1 -1
  523. package/dest/slashing/helpers.js +10 -7
  524. package/dest/slashing/index.d.ts +2 -3
  525. package/dest/slashing/index.d.ts.map +1 -1
  526. package/dest/slashing/index.js +1 -2
  527. package/dest/slashing/serialization.d.ts +2 -6
  528. package/dest/slashing/serialization.d.ts.map +1 -1
  529. package/dest/slashing/serialization.js +0 -60
  530. package/dest/slashing/types.d.ts +18 -112
  531. package/dest/slashing/types.d.ts.map +1 -1
  532. package/dest/slashing/types.js +16 -24
  533. package/dest/slashing/{tally.d.ts → votes.d.ts} +7 -2
  534. package/dest/slashing/votes.d.ts.map +1 -0
  535. package/dest/slashing/{tally.js → votes.js} +30 -2
  536. package/dest/snapshots/types.d.ts +15 -78
  537. package/dest/snapshots/types.d.ts.map +1 -1
  538. package/dest/stats/stats.d.ts +2 -2
  539. package/dest/stats/stats.d.ts.map +1 -1
  540. package/dest/tests/factories.d.ts +25 -30
  541. package/dest/tests/factories.d.ts.map +1 -1
  542. package/dest/tests/factories.js +84 -76
  543. package/dest/tests/mocks.d.ts +11 -6
  544. package/dest/tests/mocks.d.ts.map +1 -1
  545. package/dest/tests/mocks.js +55 -62
  546. package/dest/timetable/index.d.ts +51 -1
  547. package/dest/timetable/index.d.ts.map +1 -1
  548. package/dest/timetable/index.js +218 -14
  549. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  550. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  551. package/dest/trees/append_only_tree_snapshot.js +6 -3
  552. package/dest/trees/nullifier_leaf.d.ts +19 -42
  553. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  554. package/dest/trees/nullifier_leaf.js +3 -0
  555. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  556. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  557. package/dest/trees/nullifier_membership_witness.js +2 -14
  558. package/dest/trees/public_data_leaf.d.ts +21 -53
  559. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  560. package/dest/trees/public_data_witness.d.ts +16 -58
  561. package/dest/trees/public_data_witness.d.ts.map +1 -1
  562. package/dest/tx/block_header.d.ts +7 -4
  563. package/dest/tx/block_header.d.ts.map +1 -1
  564. package/dest/tx/block_header.js +11 -4
  565. package/dest/tx/call_context.d.ts +4 -14
  566. package/dest/tx/call_context.d.ts.map +1 -1
  567. package/dest/tx/capsule.d.ts +7 -3
  568. package/dest/tx/capsule.d.ts.map +1 -1
  569. package/dest/tx/capsule.js +9 -3
  570. package/dest/tx/fee_provider.d.ts +10 -0
  571. package/dest/tx/fee_provider.d.ts.map +1 -0
  572. package/dest/tx/fee_provider.js +1 -0
  573. package/dest/tx/function_data.d.ts +4 -10
  574. package/dest/tx/function_data.d.ts.map +1 -1
  575. package/dest/tx/global_variable_builder.d.ts +3 -4
  576. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  577. package/dest/tx/global_variables.d.ts +16 -49
  578. package/dest/tx/global_variables.d.ts.map +1 -1
  579. package/dest/tx/global_variables.js +8 -12
  580. package/dest/tx/hashed_values.d.ts +4 -3
  581. package/dest/tx/hashed_values.d.ts.map +1 -1
  582. package/dest/tx/hashed_values.js +6 -3
  583. package/dest/tx/in_tx.d.ts +5 -17
  584. package/dest/tx/in_tx.d.ts.map +1 -1
  585. package/dest/tx/index.d.ts +2 -1
  586. package/dest/tx/index.d.ts.map +1 -1
  587. package/dest/tx/index.js +1 -0
  588. package/dest/tx/indexed_tx_effect.d.ts +4 -18
  589. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  590. package/dest/tx/indexed_tx_effect.js +1 -2
  591. package/dest/tx/partial_state_reference.d.ts +22 -65
  592. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  593. package/dest/tx/partial_state_reference.js +6 -3
  594. package/dest/tx/private_execution_result.d.ts +11 -21
  595. package/dest/tx/private_execution_result.d.ts.map +1 -1
  596. package/dest/tx/private_execution_result.js +6 -6
  597. package/dest/tx/profiling.d.ts +67 -353
  598. package/dest/tx/profiling.d.ts.map +1 -1
  599. package/dest/tx/profiling.js +17 -7
  600. package/dest/tx/protocol_contracts.d.ts +5 -9
  601. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  602. package/dest/tx/proven_tx.d.ts +30 -74
  603. package/dest/tx/proven_tx.d.ts.map +1 -1
  604. package/dest/tx/proven_tx.js +6 -0
  605. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  606. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  607. package/dest/tx/public_call_request_with_calldata.js +6 -3
  608. package/dest/tx/simulated_tx.d.ts +68 -1144
  609. package/dest/tx/simulated_tx.d.ts.map +1 -1
  610. package/dest/tx/simulated_tx.js +17 -12
  611. package/dest/tx/state_reference.d.ts +30 -117
  612. package/dest/tx/state_reference.d.ts.map +1 -1
  613. package/dest/tx/state_reference.js +6 -4
  614. package/dest/tx/tree_snapshots.d.ts +27 -84
  615. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  616. package/dest/tx/tree_snapshots.js +6 -4
  617. package/dest/tx/tx.d.ts +12 -17
  618. package/dest/tx/tx.d.ts.map +1 -1
  619. package/dest/tx/tx.js +40 -29
  620. package/dest/tx/tx_constant_data.d.ts +4 -3
  621. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  622. package/dest/tx/tx_constant_data.js +6 -3
  623. package/dest/tx/tx_context.d.ts +32 -131
  624. package/dest/tx/tx_context.d.ts.map +1 -1
  625. package/dest/tx/tx_context.js +6 -6
  626. package/dest/tx/tx_hash.d.ts +6 -4
  627. package/dest/tx/tx_hash.d.ts.map +1 -1
  628. package/dest/tx/tx_hash.js +13 -5
  629. package/dest/tx/tx_receipt.d.ts +8 -5
  630. package/dest/tx/tx_receipt.d.ts.map +1 -1
  631. package/dest/tx/tx_receipt.js +8 -18
  632. package/dest/tx/validator/error_texts.d.ts +9 -1
  633. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  634. package/dest/tx/validator/error_texts.js +10 -0
  635. package/dest/tx/validator/tx_validator.d.ts +5 -27
  636. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  637. package/dest/tx/validator/tx_validator.js +0 -4
  638. package/dest/types/shared.d.ts +4 -12
  639. package/dest/types/shared.d.ts.map +1 -1
  640. package/dest/types/shared.js +6 -12
  641. package/dest/update-checker/dev_version.d.ts +3 -0
  642. package/dest/update-checker/dev_version.d.ts.map +1 -0
  643. package/dest/update-checker/dev_version.js +1 -0
  644. package/dest/update-checker/index.d.ts +4 -2
  645. package/dest/update-checker/index.d.ts.map +1 -1
  646. package/dest/update-checker/index.js +3 -1
  647. package/dest/update-checker/package_version.d.ts +6 -0
  648. package/dest/update-checker/package_version.d.ts.map +1 -0
  649. package/dest/update-checker/package_version.js +13 -0
  650. package/dest/update-checker/version_checker.d.ts +25 -0
  651. package/dest/update-checker/version_checker.d.ts.map +1 -0
  652. package/dest/update-checker/version_checker.js +50 -0
  653. package/dest/validators/errors.d.ts +6 -1
  654. package/dest/validators/errors.d.ts.map +1 -1
  655. package/dest/validators/errors.js +7 -0
  656. package/dest/validators/schemas.d.ts +147 -614
  657. package/dest/validators/schemas.d.ts.map +1 -1
  658. package/dest/validators/schemas.js +6 -4
  659. package/dest/validators/types.d.ts +20 -3
  660. package/dest/validators/types.d.ts.map +1 -1
  661. package/dest/versioning/versioning.d.ts +4 -2
  662. package/dest/versioning/versioning.d.ts.map +1 -1
  663. package/dest/versioning/versioning.js +5 -2
  664. package/dest/vks/verification_key.d.ts +4 -139
  665. package/dest/vks/verification_key.d.ts.map +1 -1
  666. package/dest/vks/verification_key.js +5 -126
  667. package/dest/world-state/genesis_data.d.ts +13 -0
  668. package/dest/world-state/genesis_data.d.ts.map +1 -0
  669. package/dest/world-state/genesis_data.js +7 -0
  670. package/dest/world-state/index.d.ts +2 -1
  671. package/dest/world-state/index.d.ts.map +1 -1
  672. package/dest/world-state/index.js +1 -0
  673. package/dest/world-state/world_state_revision.d.ts +15 -26
  674. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  675. package/dest/world-state/world_state_revision.js +7 -1
  676. package/package.json +14 -12
  677. package/src/abi/abi.ts +78 -21
  678. package/src/abi/authorization_selector.ts +2 -8
  679. package/src/abi/buffer.ts +25 -4
  680. package/src/abi/contract_artifact.ts +11 -6
  681. package/src/abi/decoder.ts +36 -82
  682. package/src/abi/encoder.ts +85 -6
  683. package/src/abi/event_metadata_definition.ts +2 -0
  684. package/src/abi/event_selector.ts +2 -8
  685. package/src/abi/function_selector.ts +4 -13
  686. package/src/abi/function_signature_decoder.ts +77 -0
  687. package/src/abi/index.ts +1 -0
  688. package/src/abi/note_selector.ts +3 -12
  689. package/src/abi/selector.ts +1 -1
  690. package/src/abi/utils.ts +31 -4
  691. package/src/avm/avm.ts +5 -0
  692. package/src/avm/message_pack.ts +12 -3
  693. package/src/avm/revert_code.ts +20 -25
  694. package/src/aztec-address/index.ts +15 -12
  695. package/src/block/attestation_info.ts +11 -11
  696. package/src/block/block_data.ts +3 -4
  697. package/src/block/block_hash.ts +21 -14
  698. package/src/block/block_parameter.ts +72 -4
  699. package/src/block/index.ts +0 -1
  700. package/src/block/l2_block.ts +13 -1
  701. package/src/block/l2_block_info.ts +8 -6
  702. package/src/block/l2_block_source.ts +198 -139
  703. package/src/block/l2_block_stream/interfaces.ts +6 -2
  704. package/src/block/l2_block_stream/l2_block_stream.ts +49 -17
  705. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  706. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  707. package/src/block/proposal/attestations_and_signers.ts +32 -17
  708. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  709. package/src/checkpoint/checkpoint.ts +23 -4
  710. package/src/checkpoint/checkpoint_data.ts +44 -4
  711. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  712. package/src/checkpoint/digest.ts +28 -0
  713. package/src/checkpoint/index.ts +4 -0
  714. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  715. package/src/checkpoint/validate.ts +230 -0
  716. package/src/config/chain-config.ts +13 -16
  717. package/src/config/index.ts +1 -0
  718. package/src/config/pipelining-config.ts +31 -0
  719. package/src/config/sequencer-config.ts +41 -5
  720. package/src/contract/complete_address.ts +7 -3
  721. package/src/contract/contract_address.ts +7 -7
  722. package/src/contract/contract_class_id.ts +2 -2
  723. package/src/contract/contract_instance.ts +11 -2
  724. package/src/contract/index.ts +0 -2
  725. package/src/contract/interfaces/contract_class.ts +2 -82
  726. package/src/contract/interfaces/contract_instance.ts +6 -2
  727. package/src/contract/private_function.ts +3 -1
  728. package/src/database-version/version_manager.ts +17 -0
  729. package/src/epoch-helpers/index.ts +27 -0
  730. package/src/file-store/factory.ts +13 -4
  731. package/src/file-store/http.ts +29 -10
  732. package/src/file-store/index.ts +1 -0
  733. package/src/gas/README.md +154 -0
  734. package/src/gas/fee_math.ts +120 -0
  735. package/src/gas/gas.ts +8 -3
  736. package/src/gas/gas_fees.ts +29 -10
  737. package/src/gas/gas_settings.ts +73 -15
  738. package/src/gas/index.ts +1 -0
  739. package/src/ha-signing/config.ts +56 -53
  740. package/src/ha-signing/index.ts +12 -1
  741. package/src/ha-signing/local_config.ts +46 -0
  742. package/src/ha-signing/types.ts +48 -34
  743. package/src/hash/hash.ts +63 -2
  744. package/src/interfaces/allowed_element.ts +29 -9
  745. package/src/interfaces/api_limit.ts +1 -1
  746. package/src/interfaces/archiver.ts +82 -91
  747. package/src/interfaces/aztec-node-admin.ts +35 -20
  748. package/src/interfaces/aztec-node-debug.ts +40 -0
  749. package/src/interfaces/aztec-node.ts +260 -240
  750. package/src/interfaces/block-builder.ts +62 -14
  751. package/src/interfaces/block_response.ts +92 -0
  752. package/src/interfaces/chain_tips.ts +24 -0
  753. package/src/interfaces/checkpoint_parameter.ts +20 -0
  754. package/src/interfaces/checkpoint_response.ts +84 -0
  755. package/src/interfaces/client.ts +7 -1
  756. package/src/interfaces/configs.ts +64 -8
  757. package/src/interfaces/l1_publish_info.ts +40 -0
  758. package/src/interfaces/l2_logs_source.ts +13 -39
  759. package/src/interfaces/merkle_tree_operations.ts +11 -20
  760. package/src/interfaces/p2p-bootstrap.ts +2 -2
  761. package/src/interfaces/p2p.ts +37 -28
  762. package/src/interfaces/private_kernel_prover.ts +88 -0
  763. package/src/interfaces/prover-agent.ts +1 -1
  764. package/src/interfaces/prover-client.ts +10 -5
  765. package/src/interfaces/prover-node.ts +7 -7
  766. package/src/interfaces/proving-job-source.ts +4 -4
  767. package/src/interfaces/proving-job.ts +3 -3
  768. package/src/interfaces/public_storage_override.ts +26 -0
  769. package/src/interfaces/server.ts +5 -0
  770. package/src/interfaces/slasher.ts +17 -10
  771. package/src/interfaces/tx_provider.ts +6 -0
  772. package/src/interfaces/validator.ts +79 -38
  773. package/src/interfaces/world_state.ts +5 -4
  774. package/src/kernel/hints/key_validation_request.ts +18 -16
  775. package/src/kernel/index.ts +4 -0
  776. package/src/kernel/log_hash.ts +29 -9
  777. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  778. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  779. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  780. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  781. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +38 -14
  782. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  783. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  784. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  785. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  786. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  787. package/src/kernel/public_call_request.ts +22 -7
  788. package/src/keys/derivation.ts +21 -9
  789. package/src/keys/public_key.ts +26 -2
  790. package/src/keys/public_keys.ts +124 -110
  791. package/src/kv-store/config.ts +29 -0
  792. package/src/kv-store/index.ts +1 -0
  793. package/src/l1-contracts/index.ts +1 -1
  794. package/src/logs/app_tagging_secret.ts +137 -0
  795. package/src/logs/app_tagging_secret_kind.ts +6 -0
  796. package/src/logs/contract_class_log.ts +15 -5
  797. package/src/logs/index.ts +7 -6
  798. package/src/logs/log_cursor.ts +110 -0
  799. package/src/logs/log_result.ts +104 -0
  800. package/src/logs/logs_query.ts +138 -0
  801. package/src/logs/message_context.ts +17 -7
  802. package/src/logs/pending_tagged_log.ts +1 -3
  803. package/src/logs/pre_tag.ts +3 -6
  804. package/src/logs/private_log.ts +9 -3
  805. package/src/logs/public_log.ts +4 -2
  806. package/src/logs/query_all_logs_by_tags.ts +98 -0
  807. package/src/logs/shared_secret_derivation.ts +21 -10
  808. package/src/logs/siloed_tag.ts +27 -12
  809. package/src/logs/tag.ts +9 -9
  810. package/src/logs/tagging_index_range.ts +18 -0
  811. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  812. package/src/messaging/index.ts +1 -0
  813. package/src/messaging/l1_to_l2_message.ts +12 -9
  814. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  815. package/src/messaging/l2_to_l1_membership.ts +171 -34
  816. package/src/messaging/l2_to_l1_message.ts +29 -9
  817. package/src/noir/index.ts +4 -2
  818. package/src/note/note_dao.ts +1 -4
  819. package/src/p2p/block_proposal.ts +111 -36
  820. package/src/p2p/checkpoint_attestation.ts +27 -31
  821. package/src/p2p/checkpoint_proposal.ts +126 -85
  822. package/src/p2p/client_type.ts +0 -6
  823. package/src/p2p/consensus_payload.ts +59 -28
  824. package/src/p2p/gossipable.ts +4 -4
  825. package/src/p2p/index.ts +0 -1
  826. package/src/p2p/peer_error.ts +7 -0
  827. package/src/p2p/signature_utils.ts +110 -25
  828. package/src/p2p/signed_txs.ts +46 -28
  829. package/src/p2p/topic_type.ts +8 -15
  830. package/src/parity/parity_base_private_inputs.ts +10 -4
  831. package/src/parity/parity_public_inputs.ts +9 -2
  832. package/src/proofs/chonk_proof.ts +132 -12
  833. package/src/rollup/block_headers_hash.ts +11 -2
  834. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  835. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  836. package/src/schemas/schemas.ts +6 -1
  837. package/src/slashing/helpers.ts +13 -9
  838. package/src/slashing/index.ts +1 -2
  839. package/src/slashing/serialization.ts +1 -81
  840. package/src/slashing/types.ts +24 -49
  841. package/src/slashing/{tally.ts → votes.ts} +34 -1
  842. package/src/stats/stats.ts +4 -0
  843. package/src/tests/factories.ts +106 -105
  844. package/src/tests/mocks.ts +83 -76
  845. package/src/timetable/index.ts +308 -13
  846. package/src/trees/append_only_tree_snapshot.ts +8 -3
  847. package/src/trees/nullifier_leaf.ts +4 -0
  848. package/src/trees/nullifier_membership_witness.ts +2 -12
  849. package/src/tx/block_header.ts +16 -5
  850. package/src/tx/capsule.ts +10 -2
  851. package/src/tx/fee_provider.ts +10 -0
  852. package/src/tx/global_variable_builder.ts +2 -3
  853. package/src/tx/global_variables.ts +10 -18
  854. package/src/tx/hashed_values.ts +8 -3
  855. package/src/tx/index.ts +1 -0
  856. package/src/tx/indexed_tx_effect.ts +1 -2
  857. package/src/tx/partial_state_reference.ts +8 -3
  858. package/src/tx/private_execution_result.ts +5 -5
  859. package/src/tx/profiling.ts +15 -6
  860. package/src/tx/proven_tx.ts +6 -0
  861. package/src/tx/public_call_request_with_calldata.ts +8 -3
  862. package/src/tx/simulated_tx.ts +30 -22
  863. package/src/tx/state_reference.ts +9 -4
  864. package/src/tx/tree_snapshots.ts +9 -4
  865. package/src/tx/tx.ts +53 -35
  866. package/src/tx/tx_constant_data.ts +8 -3
  867. package/src/tx/tx_context.ts +8 -3
  868. package/src/tx/tx_hash.ts +20 -5
  869. package/src/tx/tx_receipt.ts +9 -16
  870. package/src/tx/validator/error_texts.ts +12 -0
  871. package/src/tx/validator/tx_validator.ts +1 -5
  872. package/src/types/shared.ts +8 -13
  873. package/src/update-checker/dev_version.ts +2 -0
  874. package/src/update-checker/index.ts +3 -1
  875. package/src/update-checker/package_version.ts +17 -0
  876. package/src/update-checker/version_checker.ts +65 -0
  877. package/src/validators/errors.ts +9 -0
  878. package/src/validators/schemas.ts +6 -4
  879. package/src/validators/types.ts +21 -2
  880. package/src/versioning/versioning.ts +5 -2
  881. package/src/vks/verification_key.ts +5 -184
  882. package/src/world-state/genesis_data.ts +27 -0
  883. package/src/world-state/index.ts +1 -0
  884. package/src/world-state/world_state_revision.ts +9 -1
  885. package/dest/abi/mocked_keys.d.ts +0 -2
  886. package/dest/abi/mocked_keys.d.ts.map +0 -1
  887. package/dest/abi/mocked_keys.js +0 -1
  888. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  889. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  890. package/dest/block/checkpointed_l2_block.js +0 -46
  891. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  892. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  893. package/dest/contract/private_function_membership_proof.js +0 -124
  894. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  895. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  896. package/dest/contract/utility_function_membership_proof.js +0 -87
  897. package/dest/interfaces/get_logs_response.d.ts +0 -97
  898. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  899. package/dest/interfaces/get_logs_response.js +0 -12
  900. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  901. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  902. package/dest/l1-contracts/slash_factory.js +0 -158
  903. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  904. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  905. package/dest/logs/directional_app_tagging_secret.js +0 -64
  906. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  907. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  908. package/dest/logs/extended_contract_class_log.js +0 -67
  909. package/dest/logs/extended_public_log.d.ts +0 -106
  910. package/dest/logs/extended_public_log.d.ts.map +0 -1
  911. package/dest/logs/extended_public_log.js +0 -73
  912. package/dest/logs/log_filter.d.ts +0 -22
  913. package/dest/logs/log_filter.d.ts.map +0 -1
  914. package/dest/logs/log_filter.js +0 -11
  915. package/dest/logs/log_id.d.ts +0 -85
  916. package/dest/logs/log_id.d.ts.map +0 -1
  917. package/dest/logs/log_id.js +0 -94
  918. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  919. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  920. package/dest/logs/tx_scoped_l2_log.js +0 -70
  921. package/dest/slashing/empire.d.ts +0 -31
  922. package/dest/slashing/empire.d.ts.map +0 -1
  923. package/dest/slashing/empire.js +0 -87
  924. package/dest/slashing/tally.d.ts.map +0 -1
  925. package/dest/update-checker/update-checker.d.ts +0 -49
  926. package/dest/update-checker/update-checker.d.ts.map +0 -1
  927. package/dest/update-checker/update-checker.js +0 -130
  928. package/src/abi/mocked_keys.ts +0 -2
  929. package/src/block/checkpointed_l2_block.ts +0 -70
  930. package/src/contract/private_function_membership_proof.ts +0 -167
  931. package/src/contract/utility_function_membership_proof.ts +0 -118
  932. package/src/interfaces/get_logs_response.ts +0 -35
  933. package/src/l1-contracts/slash_factory.ts +0 -180
  934. package/src/logs/directional_app_tagging_secret.ts +0 -79
  935. package/src/logs/extended_contract_class_log.ts +0 -87
  936. package/src/logs/extended_public_log.ts +0 -94
  937. package/src/logs/log_filter.ts +0 -31
  938. package/src/logs/log_id.ts +0 -125
  939. package/src/logs/tx_scoped_l2_log.ts +0 -98
  940. package/src/slashing/empire.ts +0 -104
  941. package/src/update-checker/update-checker.ts +0 -166
@@ -1,87 +0,0 @@
1
- import type { ZodFor } from '@aztec/foundation/schemas';
2
- import { BufferReader } from '@aztec/foundation/serialize';
3
- import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
4
- import type { FieldsOf } from '@aztec/foundation/types';
5
-
6
- import isEqual from 'lodash.isequal';
7
- import { z } from 'zod';
8
-
9
- import { ContractClassLog } from './contract_class_log.js';
10
- import { LogId } from './log_id.js';
11
-
12
- /**
13
- * Represents an individual contract class log entry extended with info about the block and tx it was emitted in.
14
- */
15
- export class ExtendedContractClassLog {
16
- constructor(
17
- /** Globally unique id of the log. */
18
- public readonly id: LogId,
19
- /** The data contents of the log. */
20
- public readonly log: ContractClassLog,
21
- ) {}
22
-
23
- static async random() {
24
- return new ExtendedContractClassLog(LogId.random(), await ContractClassLog.random());
25
- }
26
-
27
- static get schema(): ZodFor<ExtendedContractClassLog> {
28
- return z
29
- .object({
30
- id: LogId.schema,
31
- log: ContractClassLog.schema,
32
- })
33
- .transform(ExtendedContractClassLog.from);
34
- }
35
-
36
- static from(fields: FieldsOf<ExtendedContractClassLog>) {
37
- return new ExtendedContractClassLog(fields.id, fields.log);
38
- }
39
-
40
- /**
41
- * Serializes log to a buffer.
42
- * @returns A buffer containing the serialized log.
43
- */
44
- public toBuffer(): Buffer {
45
- return Buffer.concat([this.id.toBuffer(), this.log.toBuffer()]);
46
- }
47
-
48
- /**
49
- * Serializes log to a string.
50
- * @returns A string containing the serialized log.
51
- */
52
- public toString(): string {
53
- return bufferToHex(this.toBuffer());
54
- }
55
-
56
- /**
57
- * Checks if two ExtendedContractClassLog objects are equal.
58
- * @param other - Another ExtendedContractClassLog object to compare with.
59
- * @returns True if the two objects are equal, false otherwise.
60
- */
61
- public equals(other: ExtendedContractClassLog): boolean {
62
- return isEqual(this, other);
63
- }
64
-
65
- /**
66
- * Deserializes log from a buffer.
67
- * @param buffer - The buffer or buffer reader containing the log.
68
- * @returns Deserialized instance of `Log`.
69
- */
70
- public static fromBuffer(buffer: Buffer | BufferReader): ExtendedContractClassLog {
71
- const reader = BufferReader.asReader(buffer);
72
-
73
- const logId = LogId.fromBuffer(reader);
74
- const log = ContractClassLog.fromBuffer(reader);
75
-
76
- return new ExtendedContractClassLog(logId, log);
77
- }
78
-
79
- /**
80
- * Deserializes `ExtendedContractClassLog` object from a hex string representation.
81
- * @param data - A hex string representation of the log.
82
- * @returns An `ExtendedContractClassLog` object.
83
- */
84
- public static fromString(data: string): ExtendedContractClassLog {
85
- return ExtendedContractClassLog.fromBuffer(hexToBuffer(data));
86
- }
87
- }
@@ -1,94 +0,0 @@
1
- import { BufferReader } from '@aztec/foundation/serialize';
2
- import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
3
- import type { FieldsOf } from '@aztec/foundation/types';
4
-
5
- import isEqual from 'lodash.isequal';
6
- import { z } from 'zod';
7
-
8
- import { LogId } from './log_id.js';
9
- import { PublicLog } from './public_log.js';
10
-
11
- /**
12
- * Represents an individual public log entry extended with info about the block and tx it was emitted in.
13
- */
14
- export class ExtendedPublicLog {
15
- constructor(
16
- /** Globally unique id of the log. */
17
- public readonly id: LogId,
18
- /** The data contents of the log. */
19
- public readonly log: PublicLog,
20
- ) {}
21
-
22
- static async random() {
23
- return new ExtendedPublicLog(LogId.random(), await PublicLog.random());
24
- }
25
-
26
- static get schema() {
27
- return z
28
- .object({
29
- id: LogId.schema,
30
- log: PublicLog.schema,
31
- })
32
- .transform(ExtendedPublicLog.from);
33
- }
34
-
35
- static from(fields: FieldsOf<ExtendedPublicLog>) {
36
- return new ExtendedPublicLog(fields.id, fields.log);
37
- }
38
-
39
- /**
40
- * Serializes log to a buffer.
41
- * @returns A buffer containing the serialized log.
42
- */
43
- public toBuffer(): Buffer {
44
- return Buffer.concat([this.id.toBuffer(), this.log.toBuffer()]);
45
- }
46
-
47
- /**
48
- * Serializes log to a string.
49
- * @returns A string containing the serialized log.
50
- */
51
- public toString(): string {
52
- return bufferToHex(this.toBuffer());
53
- }
54
-
55
- /**
56
- * Serializes log to a human readable string.
57
- * @returns A human readable representation of the log.
58
- */
59
- public toHumanReadable(): string {
60
- return `${this.id.toHumanReadable()}, ${this.log.toHumanReadable()}`;
61
- }
62
-
63
- /**
64
- * Checks if two ExtendedPublicLog objects are equal.
65
- * @param other - Another ExtendedPublicLog object to compare with.
66
- * @returns True if the two objects are equal, false otherwise.
67
- */
68
- public equals(other: ExtendedPublicLog): boolean {
69
- return isEqual(this, other);
70
- }
71
-
72
- /**
73
- * Deserializes log from a buffer.
74
- * @param buffer - The buffer or buffer reader containing the log.
75
- * @returns Deserialized instance of `Log`.
76
- */
77
- public static fromBuffer(buffer: Buffer | BufferReader): ExtendedPublicLog {
78
- const reader = BufferReader.asReader(buffer);
79
-
80
- const logId = LogId.fromBuffer(reader);
81
- const log = PublicLog.fromBuffer(reader);
82
-
83
- return new ExtendedPublicLog(logId, log);
84
- }
85
-
86
- /**
87
- * Deserializes `ExtendedPublicLog` object from a hex string representation.
88
- * @param data - A hex string representation of the log.
89
- * @returns An `ExtendedPublicLog` object.
90
- */
91
- public static fromString(data: string): ExtendedPublicLog {
92
- return ExtendedPublicLog.fromBuffer(hexToBuffer(data));
93
- }
94
- }
@@ -1,31 +0,0 @@
1
- import { z } from 'zod';
2
-
3
- import type { AztecAddress } from '../aztec-address/index.js';
4
- import { type ZodFor, schemas } from '../schemas/index.js';
5
- import { TxHash } from '../tx/tx_hash.js';
6
- import { LogId } from './log_id.js';
7
-
8
- /**
9
- * Log filter used to fetch L2 logs.
10
- * @remarks This filter is applied as an intersection of all it's params.
11
- */
12
- export type LogFilter = {
13
- /** Hash of a transaction from which to fetch the logs. */
14
- txHash?: TxHash;
15
- /** The block number from which to start fetching logs (inclusive). */
16
- fromBlock?: number;
17
- /** The block number until which to fetch logs (not inclusive). */
18
- toBlock?: number;
19
- /** Log id after which to start fetching logs. */
20
- afterLog?: LogId;
21
- /** The contract address to filter logs by. */
22
- contractAddress?: AztecAddress;
23
- };
24
-
25
- export const LogFilterSchema: ZodFor<LogFilter> = z.object({
26
- txHash: TxHash.schema.optional(),
27
- fromBlock: schemas.Integer.optional(),
28
- toBlock: schemas.Integer.optional(),
29
- afterLog: LogId.schema.optional(),
30
- contractAddress: schemas.AztecAddress.optional(),
31
- });
@@ -1,125 +0,0 @@
1
- import { INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
2
- import { toBufferBE } from '@aztec/foundation/bigint-buffer';
3
- import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
4
- import { Fr } from '@aztec/foundation/curves/bn254';
5
- import { BufferReader } from '@aztec/foundation/serialize';
6
-
7
- import { z } from 'zod';
8
-
9
- import { BlockHash } from '../block/block_hash.js';
10
- import { schemas } from '../schemas/index.js';
11
- import { TxHash } from '../tx/tx_hash.js';
12
-
13
- /** A globally unique log id. */
14
- export class LogId {
15
- constructor(
16
- /** The block number the log was emitted in. */
17
- public readonly blockNumber: BlockNumber,
18
- /** The hash of the block the log was emitted in. */
19
- public readonly blockHash: BlockHash,
20
- /** The hash of the transaction the log was emitted in. */
21
- public readonly txHash: TxHash,
22
- /** The index of a tx in a block the log was emitted in. */
23
- public readonly txIndex: number,
24
- /** The index of a log the tx was emitted in. */
25
- public readonly logIndex: number,
26
- ) {
27
- if (!Number.isInteger(blockNumber) || blockNumber < INITIAL_L2_BLOCK_NUM) {
28
- throw new Error(`Invalid block number: ${blockNumber}`);
29
- }
30
- if (!Number.isInteger(txIndex)) {
31
- throw new Error(`Invalid tx index: ${txIndex}`);
32
- }
33
- if (!Number.isInteger(logIndex)) {
34
- throw new Error(`Invalid log index: ${logIndex}`);
35
- }
36
- }
37
-
38
- static random() {
39
- return new LogId(
40
- BlockNumber(Math.floor(Math.random() * 1000) + 1),
41
- BlockHash.random(),
42
- TxHash.random(),
43
- Math.floor(Math.random() * 1000),
44
- Math.floor(Math.random() * 100),
45
- );
46
- }
47
-
48
- static get schema() {
49
- return z
50
- .object({
51
- blockNumber: BlockNumberSchema,
52
- blockHash: BlockHash.schema,
53
- txHash: TxHash.schema,
54
- txIndex: schemas.Integer,
55
- logIndex: schemas.Integer,
56
- })
57
- .transform(
58
- ({ blockNumber, blockHash, txHash, txIndex, logIndex }) =>
59
- new LogId(blockNumber, blockHash, txHash, txIndex, logIndex),
60
- );
61
- }
62
-
63
- /**
64
- * Serializes log id to a buffer.
65
- * @returns A buffer containing the serialized log id.
66
- */
67
- public toBuffer(): Buffer {
68
- return Buffer.concat([
69
- toBufferBE(BigInt(this.blockNumber), 4),
70
- this.blockHash.toBuffer(),
71
- this.txHash.toBuffer(),
72
- toBufferBE(BigInt(this.txIndex), 4),
73
- toBufferBE(BigInt(this.logIndex), 4),
74
- ]);
75
- }
76
-
77
- /**
78
- * Creates a LogId from a buffer.
79
- * @param buffer - A buffer containing the serialized log id.
80
- * @returns A log id.
81
- */
82
- static fromBuffer(buffer: Buffer | BufferReader): LogId {
83
- const reader = BufferReader.asReader(buffer);
84
-
85
- const blockNumber = BlockNumber(reader.readNumber());
86
- const blockHash = new BlockHash(reader.readObject(Fr));
87
- const txHash = reader.readObject(TxHash);
88
- const txIndex = reader.readNumber();
89
- const logIndex = reader.readNumber();
90
-
91
- return new LogId(blockNumber, blockHash, txHash, txIndex, logIndex);
92
- }
93
-
94
- /**
95
- * Converts the LogId instance to a string.
96
- * @returns A string representation of the log id.
97
- */
98
- public toString(): string {
99
- return `${this.blockNumber}-${this.txIndex}-${this.logIndex}-${this.blockHash.toString()}-${this.txHash.toString()}`;
100
- }
101
-
102
- /**
103
- * Creates a LogId from a string.
104
- * @param data - A string representation of a log id.
105
- * @returns A log id.
106
- */
107
- static fromString(data: string): LogId {
108
- const [rawBlockNumber, rawTxIndex, rawLogIndex, rawBlockHash, rawTxHash] = data.split('-');
109
- const blockNumber = BlockNumber(Number(rawBlockNumber));
110
- const blockHash = BlockHash.fromString(rawBlockHash);
111
- const txHash = TxHash.fromString(rawTxHash);
112
- const txIndex = Number(rawTxIndex);
113
- const logIndex = Number(rawLogIndex);
114
-
115
- return new LogId(blockNumber, blockHash, txHash, txIndex, logIndex);
116
- }
117
-
118
- /**
119
- * Serializes log id to a human readable string.
120
- * @returns A human readable representation of the log id.
121
- */
122
- public toHumanReadable(): string {
123
- return `logId: (blockNumber: ${this.blockNumber}, blockHash: ${this.blockHash.toString()}, txHash: ${this.txHash.toString()}, txIndex: ${this.txIndex}, logIndex: ${this.logIndex})`;
124
- }
125
- }
@@ -1,98 +0,0 @@
1
- import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
2
- import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { schemas as foundationSchemas } from '@aztec/foundation/schemas';
4
- import {
5
- BufferReader,
6
- bigintToUInt64BE,
7
- numToUInt32BE,
8
- serializeArrayOfBufferableToVector,
9
- } from '@aztec/foundation/serialize';
10
-
11
- import { z } from 'zod';
12
-
13
- import { schemas } from '../schemas/schemas.js';
14
- import { TxHash } from '../tx/tx_hash.js';
15
- import type { UInt64 } from '../types/shared.js';
16
-
17
- export class TxScopedL2Log {
18
- constructor(
19
- /*
20
- * Hash of the tx where the log is included
21
- */
22
- public txHash: TxHash,
23
- /*
24
- * The block this log is included in
25
- */
26
- public blockNumber: BlockNumber,
27
- /*
28
- * The timestamp of the block this log is included in
29
- */
30
- public blockTimestamp: UInt64,
31
- /*
32
- * The log data as an array of field elements
33
- */
34
- public logData: Fr[],
35
- /*
36
- * The note hashes from the tx effect
37
- */
38
- public noteHashes: Fr[],
39
- /*
40
- * The first nullifier from the tx effect. Used for nonce discovery when processing notes from logs.
41
- *
42
- * (Note nonces are computed as `hash(firstNullifier, noteIndexInTx)`.)
43
- */
44
- public firstNullifier: Fr,
45
- ) {}
46
-
47
- static get schema() {
48
- return z
49
- .object({
50
- txHash: TxHash.schema,
51
- blockNumber: BlockNumberSchema,
52
- blockTimestamp: schemas.UInt64,
53
- logData: z.array(foundationSchemas.Fr),
54
- noteHashes: z.array(foundationSchemas.Fr),
55
- firstNullifier: foundationSchemas.Fr,
56
- })
57
- .transform(
58
- ({ txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier }) =>
59
- new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier),
60
- );
61
- }
62
-
63
- toBuffer() {
64
- return Buffer.concat([
65
- this.txHash.toBuffer(),
66
- numToUInt32BE(this.blockNumber),
67
- bigintToUInt64BE(this.blockTimestamp),
68
- serializeArrayOfBufferableToVector(this.logData),
69
- serializeArrayOfBufferableToVector(this.noteHashes),
70
- this.firstNullifier.toBuffer(),
71
- ]);
72
- }
73
-
74
- static fromBuffer(buffer: Buffer) {
75
- const reader = BufferReader.asReader(buffer);
76
- const txHash = reader.readObject(TxHash);
77
- const blockNumber = BlockNumber(reader.readNumber());
78
- const blockTimestamp = reader.readUInt64();
79
- const logData = reader.readVector(Fr);
80
- const noteHashes = reader.readVector(Fr);
81
- const firstNullifier = reader.readObject(Fr);
82
-
83
- return new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier);
84
- }
85
-
86
- equals(other: TxScopedL2Log) {
87
- return (
88
- this.txHash.equals(other.txHash) &&
89
- this.blockNumber === other.blockNumber &&
90
- this.blockTimestamp === other.blockTimestamp &&
91
- this.logData.length === other.logData.length &&
92
- this.logData.every((f, i) => f.equals(other.logData[i])) &&
93
- this.noteHashes.length === other.noteHashes.length &&
94
- this.noteHashes.every((h, i) => h.equals(other.noteHashes[i])) &&
95
- this.firstNullifier.equals(other.firstNullifier)
96
- );
97
- }
98
- }
@@ -1,104 +0,0 @@
1
- import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
-
3
- import { getRoundForSlot, getRoundsForEpoch } from './helpers.js';
4
- import type { Offense, OffenseIdentifier, SlashPayload, SlashPayloadRound, ValidatorSlash } from './types.js';
5
- import { OffenseType } from './types.js';
6
-
7
- /**
8
- * Returns true if the offense is uncontroversial as in it can be verified via L1 data alone,
9
- * and does not depend on the local view of the node of the L2 p2p network.
10
- * @param offense - The offense type to check
11
- */
12
- export function isOffenseUncontroversial(offense: OffenseType): boolean {
13
- return (
14
- offense === OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS ||
15
- offense === OffenseType.PROPOSED_INCORRECT_ATTESTATIONS ||
16
- offense === OffenseType.ATTESTED_DESCENDANT_OF_INVALID
17
- );
18
- }
19
-
20
- /** Extracts offense identifiers (validator, epoch, offense type) from an Empire-based SlashPayload */
21
- export function getOffenseIdentifiersFromPayload(payload: SlashPayload | SlashPayloadRound): OffenseIdentifier[] {
22
- return payload.slashes.flatMap((slash: ValidatorSlash) =>
23
- slash.offenses.map(o => ({
24
- validator: slash.validator,
25
- offenseType: o.offenseType,
26
- epochOrSlot: o.epochOrSlot,
27
- })),
28
- );
29
- }
30
-
31
- /** Creates ValidatorSlashes used to create an Empire-based SlashPayload from a set of Offenses */
32
- export function offensesToValidatorSlash(offenses: Offense[]): ValidatorSlash[] {
33
- return offenses.map(offense => ({
34
- validator: offense.validator,
35
- amount: offense.amount,
36
- offenses: [{ epochOrSlot: offense.epochOrSlot, offenseType: offense.offenseType }],
37
- }));
38
- }
39
-
40
- /**
41
- * Sorts offense data by:
42
- * - Uncontroversial offenses first
43
- * - Slash amount (descending)
44
- * - Epoch or slot (ascending, ie oldest first)
45
- * - Validator address (ascending)
46
- * - Offense type (descending)
47
- */
48
- export function offenseDataComparator(a: Offense, b: Offense): number {
49
- return (
50
- Number(isOffenseUncontroversial(b.offenseType)) - Number(isOffenseUncontroversial(a.offenseType)) ||
51
- Number(b.amount - a.amount) ||
52
- Number(a.epochOrSlot - b.epochOrSlot) ||
53
- a.validator.toString().localeCompare(b.validator.toString()) ||
54
- Number(b.offenseType) - Number(a.offenseType)
55
- );
56
- }
57
-
58
- /**
59
- * Returns the first round in which the offense is eligible for being included in an Empire-based slash payload.
60
- * Should be equal to to the first round that starts strictly after the offense becomes detectable.
61
- */
62
- export function getFirstEligibleRoundForOffense(
63
- offense: OffenseIdentifier,
64
- constants: { slashingRoundSize: number; epochDuration: number; proofSubmissionEpochs: number },
65
- ): bigint {
66
- // TODO(palla/slash): Check for off-by-ones
67
- switch (offense.offenseType) {
68
- // Inactivity is detected at the end of the epoch, so we flag it as detected in the first fresh round for the next epoch
69
- case OffenseType.INACTIVITY: {
70
- const epoch = offense.epochOrSlot;
71
- const detectedEpoch = EpochNumber.fromBigInt(epoch + 1n);
72
- return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
73
- }
74
- // These offenses are detected once an epoch is pruned, which happens after the proof submission window
75
- case OffenseType.VALID_EPOCH_PRUNED:
76
- case OffenseType.DATA_WITHHOLDING: {
77
- // TODO(palla/slash): Check for off-by-ones especially here
78
- const epoch = offense.epochOrSlot;
79
- const detectedEpoch = EpochNumber.fromBigInt(epoch + BigInt(constants.proofSubmissionEpochs));
80
- return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
81
- }
82
- // These offenses are detected immediately in the slot they occur, so we assume they are detected in the first round for the following slot
83
- case OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS:
84
- case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
85
- case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
86
- case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
87
- case OffenseType.DUPLICATE_PROPOSAL:
88
- case OffenseType.DUPLICATE_ATTESTATION: {
89
- const slot = offense.epochOrSlot;
90
- const detectedSlot = SlotNumber.fromBigInt(slot + 1n);
91
- return getRoundForSlot(detectedSlot, constants).round + 1n;
92
- }
93
- // Assume these are epoch-based offenses, even though we should never have to process these
94
- case OffenseType.UNKNOWN: {
95
- const epoch = offense.epochOrSlot;
96
- const detectedEpoch = EpochNumber.fromBigInt(epoch + 1n);
97
- return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
98
- }
99
- default: {
100
- const _: never = offense.offenseType;
101
- throw new Error(`Unknown offense type: ${offense.offenseType}`);
102
- }
103
- }
104
- }