@aztec/stdlib 0.0.1-commit.3100065 → 0.0.1-commit.330febf

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 (231) hide show
  1. package/dest/abi/abi.d.ts +32 -7
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +11 -2
  4. package/dest/abi/contract_artifact.d.ts +1 -14
  5. package/dest/abi/contract_artifact.d.ts.map +1 -1
  6. package/dest/abi/contract_artifact.js +35 -36
  7. package/dest/abi/decoder.d.ts +12 -5
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +18 -21
  10. package/dest/abi/function_call.d.ts +17 -8
  11. package/dest/abi/function_call.d.ts.map +1 -1
  12. package/dest/abi/function_call.js +28 -9
  13. package/dest/avm/avm.d.ts +212 -211
  14. package/dest/avm/avm.d.ts.map +1 -1
  15. package/dest/avm/avm.js +3 -1
  16. package/dest/avm/index.d.ts +1 -6
  17. package/dest/avm/index.d.ts.map +1 -1
  18. package/dest/avm/index.js +0 -5
  19. package/dest/block/l2_block_source.d.ts +1 -1
  20. package/dest/block/l2_block_source.d.ts.map +1 -1
  21. package/dest/block/l2_block_source.js +6 -2
  22. package/dest/block/l2_block_stream/interfaces.d.ts +7 -5
  23. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  24. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -1
  25. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  26. package/dest/block/l2_block_stream/l2_block_stream.js +47 -20
  27. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  28. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  29. package/dest/block/test/l2_tips_store_test_suite.js +9 -4
  30. package/dest/config/node-rpc-config.d.ts +1 -1
  31. package/dest/config/node-rpc-config.d.ts.map +1 -1
  32. package/dest/config/node-rpc-config.js +1 -1
  33. package/dest/contract/artifact_hash.d.ts +2 -2
  34. package/dest/contract/artifact_hash.d.ts.map +1 -1
  35. package/dest/contract/artifact_hash.js +10 -2
  36. package/dest/contract/contract_class.d.ts +1 -1
  37. package/dest/contract/contract_class.d.ts.map +1 -1
  38. package/dest/contract/contract_class.js +3 -2
  39. package/dest/contract/index.d.ts +1 -2
  40. package/dest/contract/index.d.ts.map +1 -1
  41. package/dest/contract/index.js +0 -1
  42. package/dest/interfaces/api_limit.d.ts +6 -1
  43. package/dest/interfaces/api_limit.d.ts.map +1 -1
  44. package/dest/interfaces/api_limit.js +3 -0
  45. package/dest/interfaces/aztec-node-admin.d.ts +2 -1
  46. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  47. package/dest/interfaces/block-builder.d.ts +7 -2
  48. package/dest/interfaces/block-builder.d.ts.map +1 -1
  49. package/dest/interfaces/configs.d.ts +7 -1
  50. package/dest/interfaces/configs.d.ts.map +1 -1
  51. package/dest/interfaces/configs.js +1 -0
  52. package/dest/interfaces/merkle_tree_operations.d.ts +8 -3
  53. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  54. package/dest/interfaces/private_kernel_prover.d.ts +64 -3
  55. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  56. package/dest/interfaces/proving-job.d.ts +1 -1
  57. package/dest/interfaces/server.d.ts +1 -2
  58. package/dest/interfaces/server.d.ts.map +1 -1
  59. package/dest/interfaces/server.js +0 -1
  60. package/dest/interfaces/tx_provider.d.ts +5 -1
  61. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  62. package/dest/kernel/hints/index.d.ts +1 -2
  63. package/dest/kernel/hints/index.d.ts.map +1 -1
  64. package/dest/kernel/hints/index.js +0 -1
  65. package/dest/kernel/index.d.ts +5 -1
  66. package/dest/kernel/index.d.ts.map +1 -1
  67. package/dest/kernel/index.js +4 -0
  68. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +1 -9
  69. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  70. package/dest/kernel/private_kernel_circuit_public_inputs.js +3 -7
  71. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  72. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  73. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  74. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  75. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  76. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  77. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  78. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  79. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  80. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  81. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  82. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  83. package/dest/kernel/private_kernel_prover_output.d.ts +4 -1
  84. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  85. package/dest/kernel/private_kernel_prover_output.js +4 -1
  86. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  87. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  88. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  89. package/dest/kernel/utils/index.d.ts +1 -2
  90. package/dest/kernel/utils/index.d.ts.map +1 -1
  91. package/dest/kernel/utils/index.js +0 -1
  92. package/dest/logs/index.d.ts +3 -1
  93. package/dest/logs/index.d.ts.map +1 -1
  94. package/dest/logs/index.js +2 -0
  95. package/dest/logs/logs_query.d.ts +2 -2
  96. package/dest/logs/message_context.d.ts +17 -0
  97. package/dest/logs/message_context.d.ts.map +1 -0
  98. package/dest/logs/message_context.js +9 -0
  99. package/dest/logs/pending_tagged_log.d.ts +11 -0
  100. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  101. package/dest/logs/pending_tagged_log.js +4 -0
  102. package/dest/logs/shared_secret_derivation.d.ts +12 -2
  103. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  104. package/dest/logs/shared_secret_derivation.js +18 -0
  105. package/dest/noir/index.d.ts +3 -3
  106. package/dest/noir/index.d.ts.map +1 -1
  107. package/dest/p2p/index.d.ts +1 -2
  108. package/dest/p2p/index.d.ts.map +1 -1
  109. package/dest/p2p/index.js +0 -1
  110. package/dest/stats/stats.d.ts +2 -2
  111. package/dest/stats/stats.d.ts.map +1 -1
  112. package/dest/tests/factories.d.ts +1 -27
  113. package/dest/tests/factories.d.ts.map +1 -1
  114. package/dest/tests/factories.js +0 -30
  115. package/dest/tx/hashed_values.d.ts +7 -1
  116. package/dest/tx/hashed_values.d.ts.map +1 -1
  117. package/dest/tx/hashed_values.js +9 -1
  118. package/dest/tx/index.d.ts +1 -2
  119. package/dest/tx/index.d.ts.map +1 -1
  120. package/dest/tx/index.js +0 -1
  121. package/dest/tx/offchain_effect.js +1 -1
  122. package/dest/tx/profiling.d.ts +1 -1
  123. package/dest/tx/profiling.d.ts.map +1 -1
  124. package/dest/tx/profiling.js +2 -0
  125. package/dest/tx/simulated_tx.d.ts +1 -1
  126. package/dest/tx/simulated_tx.d.ts.map +1 -1
  127. package/dest/tx/simulated_tx.js +7 -2
  128. package/dest/tx/tx.d.ts +8 -1
  129. package/dest/tx/tx.d.ts.map +1 -1
  130. package/dest/tx/tx.js +9 -3
  131. package/dest/validators/errors.d.ts +16 -1
  132. package/dest/validators/errors.d.ts.map +1 -1
  133. package/dest/validators/errors.js +12 -0
  134. package/dest/world-state/world_state_revision.d.ts +1 -18
  135. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  136. package/dest/world-state/world_state_revision.js +0 -20
  137. package/package.json +8 -8
  138. package/src/abi/abi.ts +32 -4
  139. package/src/abi/contract_artifact.ts +40 -35
  140. package/src/abi/decoder.ts +20 -24
  141. package/src/abi/function_call.ts +19 -7
  142. package/src/avm/avm.ts +4 -1
  143. package/src/avm/index.ts +0 -5
  144. package/src/block/l2_block_source.ts +14 -2
  145. package/src/block/l2_block_stream/interfaces.ts +6 -4
  146. package/src/block/l2_block_stream/l2_block_stream.ts +58 -21
  147. package/src/block/test/l2_tips_store_test_suite.ts +5 -0
  148. package/src/config/node-rpc-config.ts +2 -1
  149. package/src/contract/artifact_hash.ts +15 -3
  150. package/src/contract/contract_class.ts +3 -2
  151. package/src/contract/index.ts +0 -1
  152. package/src/gas/README.md +108 -36
  153. package/src/interfaces/api_limit.ts +5 -0
  154. package/src/interfaces/block-builder.ts +6 -1
  155. package/src/interfaces/configs.ts +6 -0
  156. package/src/interfaces/merkle_tree_operations.ts +8 -2
  157. package/src/interfaces/private_kernel_prover.ts +94 -1
  158. package/src/interfaces/server.ts +0 -1
  159. package/src/interfaces/tx_provider.ts +4 -0
  160. package/src/kernel/hints/index.ts +0 -1
  161. package/src/kernel/index.ts +4 -0
  162. package/src/kernel/private_kernel_circuit_public_inputs.ts +0 -7
  163. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  164. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  165. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  166. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  167. package/src/kernel/private_kernel_prover_output.ts +4 -0
  168. package/src/kernel/private_kernel_reset_dimensions.ts +1 -1
  169. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  170. package/src/kernel/utils/index.ts +0 -1
  171. package/src/logs/index.ts +2 -0
  172. package/src/logs/logs_query.ts +2 -2
  173. package/src/logs/message_context.ts +18 -0
  174. package/src/logs/pending_tagged_log.ts +12 -0
  175. package/src/logs/shared_secret_derivation.ts +18 -1
  176. package/src/noir/index.ts +2 -1
  177. package/src/p2p/index.ts +0 -1
  178. package/src/stats/stats.ts +4 -0
  179. package/src/tests/factories.ts +0 -38
  180. package/src/tx/hashed_values.ts +11 -6
  181. package/src/tx/index.ts +0 -1
  182. package/src/tx/offchain_effect.ts +1 -1
  183. package/src/tx/profiling.ts +2 -0
  184. package/src/tx/simulated_tx.ts +13 -2
  185. package/src/tx/tx.ts +19 -3
  186. package/src/validators/errors.ts +17 -0
  187. package/src/world-state/world_state_revision.ts +0 -33
  188. package/dest/avm/contract_storage_read.d.ts +0 -58
  189. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  190. package/dest/avm/contract_storage_read.js +0 -65
  191. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  192. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  193. package/dest/avm/contract_storage_update_request.js +0 -80
  194. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  195. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  196. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  197. package/dest/avm/public_data_update_request.d.ts +0 -62
  198. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  199. package/dest/avm/public_data_update_request.js +0 -67
  200. package/dest/avm/public_inner_call_request.d.ts +0 -50
  201. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  202. package/dest/avm/public_inner_call_request.js +0 -74
  203. package/dest/contract/deployment_info.d.ts +0 -24
  204. package/dest/contract/deployment_info.d.ts.map +0 -1
  205. package/dest/contract/deployment_info.js +0 -3
  206. package/dest/interfaces/prover-coordination.d.ts +0 -15
  207. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  208. package/dest/interfaces/prover-coordination.js +0 -1
  209. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  210. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  211. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  212. package/dest/kernel/utils/optional_number.d.ts +0 -31
  213. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  214. package/dest/kernel/utils/optional_number.js +0 -42
  215. package/dest/p2p/interface.d.ts +0 -5
  216. package/dest/p2p/interface.d.ts.map +0 -1
  217. package/dest/p2p/interface.js +0 -1
  218. package/dest/tx/validator/empty_validator.d.ts +0 -5
  219. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  220. package/dest/tx/validator/empty_validator.js +0 -7
  221. package/src/avm/contract_storage_read.ts +0 -77
  222. package/src/avm/contract_storage_update_request.ts +0 -93
  223. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  224. package/src/avm/public_data_update_request.ts +0 -106
  225. package/src/avm/public_inner_call_request.ts +0 -85
  226. package/src/contract/deployment_info.ts +0 -25
  227. package/src/interfaces/prover-coordination.ts +0 -17
  228. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  229. package/src/kernel/utils/optional_number.ts +0 -50
  230. package/src/p2p/interface.ts +0 -4
  231. package/src/tx/validator/empty_validator.ts +0 -7
@@ -145,4 +145,4 @@ export declare class TxSimulationResult {
145
145
  * @returns
146
146
  */
147
147
  export declare function accumulatePrivateReturnValues(executionResult: PrivateExecutionResult): NestedProcessReturnValues;
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGVkX3R4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvc2ltdWxhdGVkX3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUNMLEtBQUssMkJBQTJCLEVBRWpDLE1BQU0sNkNBQTZDLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUsscUJBQXFCLEVBQStCLE1BQU0sMENBQTBDLENBQUM7QUFDbkgsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUVMLHNCQUFzQixFQUd2QixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBeUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBUzdCLE1BQU0sTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUErQjtJQUFFLFFBQVEsRUFBRSwyQkFBMkIsQ0FBQTtDQUFFLENBQUMsQ0FBQztBQVF2SCxxQkFBYSxtQkFBbUI7SUFDdkIsYUFBYSxDQUFDLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztJQUN4QyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztJQUVyQyxZQUFZLElBQUksR0FBRTtRQUFFLGFBQWEsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsQ0FBQTtLQUFPLEVBR2hHO0lBRUQsTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBT2hCO0NBQ0Y7QUFFRCxxQkFBYSx1QkFBdUI7SUFFekIsc0JBQXNCLEVBQUUsc0JBQXNCO0lBQzlDLFlBQVksRUFBRSxvQ0FBb0M7SUFGM0QsWUFDUyxzQkFBc0IsRUFBRSxzQkFBc0IsRUFDOUMsWUFBWSxFQUFFLG9DQUFvQyxFQUN2RDtJQUVKLHNCQUFzQiw4QkFFckI7SUFFSyxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQVNqQztDQUNGO0FBRUQscUJBQWEsa0JBQWtCO0lBRXBCLHNCQUFzQixFQUFFLHNCQUFzQjtJQUM5QyxZQUFZLEVBQUUsb0NBQW9DO0lBQ2xELFlBQVksQ0FBQztJQUNiLEtBQUssQ0FBQztJQUpmLFlBQ1Msc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFlBQVksRUFBRSxvQ0FBb0MsRUFDbEQsWUFBWSxDQUFDLG9DQUF3QixFQUNyQyxLQUFLLENBQUMsNkJBQWlCLEVBQzVCO0lBRUosaUVBQWlFO0lBQ2pFLElBQUksZUFBZSxJQUFJLGNBQWMsRUFBRSxDQUV0QztJQUVELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FTckI7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQVM5QztJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsc0JBT3BGO0lBRUQsTUFBTSxDQUFDLDBDQUEwQyxDQUMvQyx1QkFBdUIsRUFBRSx1QkFBdUIsRUFDaEQsWUFBWSxDQUFDLEVBQUUsc0JBQXNCLEVBQ3JDLEtBQUssQ0FBQyxFQUFFLGVBQWUsc0JBUXhCO0lBRUQsT0FBYSxNQUFNLGdDQU1sQjtJQUVELHNCQUFzQiw4QkFFckI7SUFFRCxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUzQjtJQUVELHFCQUFxQixnQ0FFcEI7Q0FDRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUFDLGVBQWUsRUFBRSxzQkFBc0IsR0FBRyx5QkFBeUIsQ0FXaEgifQ==
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGVkX3R4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvc2ltdWxhdGVkX3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUNMLEtBQUssMkJBQTJCLEVBRWpDLE1BQU0sNkNBQTZDLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsT0FBTyxFQUFFLEtBQUsscUJBQXFCLEVBQStCLE1BQU0sMENBQTBDLENBQUM7QUFDbkgsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUVMLHNCQUFzQixFQUd2QixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBeUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBUzdCLE1BQU0sTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUErQjtJQUFFLFFBQVEsRUFBRSwyQkFBMkIsQ0FBQTtDQUFFLENBQUMsQ0FBQztBQVF2SCxxQkFBYSxtQkFBbUI7SUFDdkIsYUFBYSxDQUFDLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztJQUN4QyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztJQUVyQyxZQUFZLElBQUksR0FBRTtRQUFFLGFBQWEsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsQ0FBQTtLQUFPLEVBR2hHO0lBRUQsTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBaUJoQjtDQUNGO0FBRUQscUJBQWEsdUJBQXVCO0lBRXpCLHNCQUFzQixFQUFFLHNCQUFzQjtJQUM5QyxZQUFZLEVBQUUsb0NBQW9DO0lBRjNELFlBQ1Msc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFlBQVksRUFBRSxvQ0FBb0MsRUFDdkQ7SUFFSixzQkFBc0IsOEJBRXJCO0lBRUssYUFBYSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FTakM7Q0FDRjtBQUVELHFCQUFhLGtCQUFrQjtJQUVwQixzQkFBc0IsRUFBRSxzQkFBc0I7SUFDOUMsWUFBWSxFQUFFLG9DQUFvQztJQUNsRCxZQUFZLENBQUM7SUFDYixLQUFLLENBQUM7SUFKZixZQUNTLHNCQUFzQixFQUFFLHNCQUFzQixFQUM5QyxZQUFZLEVBQUUsb0NBQW9DLEVBQ2xELFlBQVksQ0FBQyxvQ0FBd0IsRUFDckMsS0FBSyxDQUFDLDZCQUFpQixFQUM1QjtJQUVKLGlFQUFpRTtJQUNqRSxJQUFJLGVBQWUsSUFBSSxjQUFjLEVBQUUsQ0FFdEM7SUFFRCxJQUFJLE9BQU8sSUFBSSxPQUFPLENBU3JCO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FTOUM7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsU0FBUyxHQUFHLGlCQUFpQixDQUFDLHNCQU9wRjtJQUVELE1BQU0sQ0FBQywwQ0FBMEMsQ0FDL0MsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQ2hELFlBQVksQ0FBQyxFQUFFLHNCQUFzQixFQUNyQyxLQUFLLENBQUMsRUFBRSxlQUFlLHNCQVF4QjtJQUVELE9BQWEsTUFBTSxnQ0FNbEI7SUFFRCxzQkFBc0IsOEJBRXJCO0lBRUQsYUFBYSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFM0I7SUFFRCxxQkFBcUIsZ0NBRXBCO0NBQ0Y7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxlQUFlLEVBQUUsc0JBQXNCLEdBQUcseUJBQXlCLENBV2hIIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6CAA6C,CAAC;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,KAAK,qBAAqB,EAA+B,MAAM,0CAA0C,CAAC;AACnH,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAE9G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAEL,sBAAsB,EAGvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAClG,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAS7B,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAA+B;IAAE,QAAQ,EAAE,2BAA2B,CAAA;CAAE,CAAC,CAAC;AAQvH,qBAAa,mBAAmB;IACvB,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAErC,YAAY,IAAI,GAAE;QAAE,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,iBAAiB,CAAA;KAAO,EAGhG;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAOhB;CACF;AAED,qBAAa,uBAAuB;IAEzB,sBAAsB,EAAE,sBAAsB;IAC9C,YAAY,EAAE,oCAAoC;IAF3D,YACS,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,EAAE,oCAAoC,EACvD;IAEJ,sBAAsB,8BAErB;IAEK,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,CASjC;CACF;AAED,qBAAa,kBAAkB;IAEpB,sBAAsB,EAAE,sBAAsB;IAC9C,YAAY,EAAE,oCAAoC;IAClD,YAAY,CAAC;IACb,KAAK,CAAC;IAJf,YACS,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,EAAE,oCAAoC,EAClD,YAAY,CAAC,oCAAwB,EACrC,KAAK,CAAC,6BAAiB,EAC5B;IAEJ,iEAAiE;IACjE,IAAI,eAAe,IAAI,cAAc,EAAE,CAEtC;IAED,IAAI,OAAO,IAAI,OAAO,CASrB;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAS9C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,iBAAiB,CAAC,sBAOpF;IAED,MAAM,CAAC,0CAA0C,CAC/C,uBAAuB,EAAE,uBAAuB,EAChD,YAAY,CAAC,EAAE,sBAAsB,EACrC,KAAK,CAAC,EAAE,eAAe,sBAQxB;IAED,OAAa,MAAM,gCAMlB;IAED,sBAAsB,8BAErB;IAED,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,CAE3B;IAED,qBAAqB,gCAEpB;CACF;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,sBAAsB,GAAG,yBAAyB,CAWhH"}
1
+ {"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6CAA6C,CAAC;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,KAAK,qBAAqB,EAA+B,MAAM,0CAA0C,CAAC;AACnH,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAE9G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAEL,sBAAsB,EAGvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAClG,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAS7B,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAA+B;IAAE,QAAQ,EAAE,2BAA2B,CAAA;CAAE,CAAC,CAAC;AAQvH,qBAAa,mBAAmB;IACvB,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAErC,YAAY,IAAI,GAAE;QAAE,aAAa,CAAC,EAAE,qBAAqB,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,iBAAiB,CAAA;KAAO,EAGhG;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiBhB;CACF;AAED,qBAAa,uBAAuB;IAEzB,sBAAsB,EAAE,sBAAsB;IAC9C,YAAY,EAAE,oCAAoC;IAF3D,YACS,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,EAAE,oCAAoC,EACvD;IAEJ,sBAAsB,8BAErB;IAEK,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,CASjC;CACF;AAED,qBAAa,kBAAkB;IAEpB,sBAAsB,EAAE,sBAAsB;IAC9C,YAAY,EAAE,oCAAoC;IAClD,YAAY,CAAC;IACb,KAAK,CAAC;IAJf,YACS,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,EAAE,oCAAoC,EAClD,YAAY,CAAC,oCAAwB,EACrC,KAAK,CAAC,6BAAiB,EAC5B;IAEJ,iEAAiE;IACjE,IAAI,eAAe,IAAI,cAAc,EAAE,CAEtC;IAED,IAAI,OAAO,IAAI,OAAO,CASrB;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAS9C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,iBAAiB,CAAC,sBAOpF;IAED,MAAM,CAAC,0CAA0C,CAC/C,uBAAuB,EAAE,uBAAuB,EAChD,YAAY,CAAC,EAAE,sBAAsB,EACrC,KAAK,CAAC,EAAE,eAAe,sBAQxB;IAED,OAAa,MAAM,gCAMlB;IAED,sBAAsB,8BAErB;IAED,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,CAE3B;IAED,qBAAqB,gCAEpB;CACF;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,sBAAsB,GAAG,yBAAyB,CAWhH"}
@@ -2,6 +2,7 @@ import { optional } from '@aztec/foundation/schemas';
2
2
  import { z } from 'zod';
3
3
  import { ContractInstanceWithAddressSchema } from '../contract/interfaces/contract_instance.js';
4
4
  import { Gas } from '../gas/gas.js';
5
+ import { MAX_RPC_CONTRACT_OVERRIDES_LEN, MAX_RPC_PUBLIC_STORAGE_OVERRIDES_LEN } from '../interfaces/api_limit.js';
5
6
  import { PublicStorageOverrideSchema } from '../interfaces/public_storage_override.js';
6
7
  import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
7
8
  import { ChonkProof } from '../proofs/chonk_proof.js';
@@ -23,10 +24,14 @@ import { Tx } from './tx.js';
23
24
  }
24
25
  static get schema() {
25
26
  return z.object({
26
- publicStorage: optional(z.array(PublicStorageOverrideSchema)),
27
+ publicStorage: optional(z.array(PublicStorageOverrideSchema).max(MAX_RPC_PUBLIC_STORAGE_OVERRIDES_LEN, {
28
+ message: `publicStorage must have at most ${MAX_RPC_PUBLIC_STORAGE_OVERRIDES_LEN} entries`
29
+ })),
27
30
  contracts: optional(z.record(z.string(), z.object({
28
31
  instance: ContractInstanceWithAddressSchema
29
- })))
32
+ })).refine((contracts)=>Object.keys(contracts).length <= MAX_RPC_CONTRACT_OVERRIDES_LEN, {
33
+ message: `contracts must have at most ${MAX_RPC_CONTRACT_OVERRIDES_LEN} entries`
34
+ }))
30
35
  }).transform((args)=>new SimulationOverrides(args));
31
36
  }
32
37
  }
package/dest/tx/tx.d.ts CHANGED
@@ -13,6 +13,13 @@ import type { TxStats } from '../stats/stats.js';
13
13
  import { HashedValues } from './hashed_values.js';
14
14
  import { PublicCallRequestWithCalldata } from './public_call_request_with_calldata.js';
15
15
  import { TxHash } from './tx_hash.js';
16
+ /**
17
+ * Upper bound on the calldata entries a tx can carry: one per enqueued call, plus one for the teardown call.
18
+ * The revertible and non-revertible call request arrays are each sized `MAX_ENQUEUED_CALLS_PER_TX`, but the
19
+ * private tail circuit fills them by partitioning a single array of that size, so their lengths sum to it. The
20
+ * teardown request is propagated separately and can only be set once.
21
+ */
22
+ export declare const MAX_PUBLIC_FUNCTION_CALLDATA_PER_TX: number;
16
23
  /**
17
24
  * The interface of an L2 transaction.
18
25
  */
@@ -171,4 +178,4 @@ export declare class TxArray extends Array<Tx> {
171
178
  toBuffer(): Buffer;
172
179
  toBuffer(sink: BufferSink): void;
173
180
  }
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eC90eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxZQUFZLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUNMLFlBQVksRUFDWixVQUFVLEVBSVgsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQVksTUFBTSx5QkFBeUIsQ0FBQztBQUlsRSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVV0Qzs7R0FFRztBQUVILHFCQUFhLEVBQUcsU0FBUSxVQUFVOztJQU05Qjs7OztPQUlHO2FBQ2EsTUFBTSxFQUFFLE1BQU07SUFDOUI7O09BRUc7YUFDYSxJQUFJLEVBQUUsb0NB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
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eC90eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsS0FBSyxZQUFZLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUNMLFlBQVksRUFDWixVQUFVLEVBSVgsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQVksTUFBTSx5QkFBeUIsQ0FBQztBQUlsRSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVV0Qzs7Ozs7R0FLRztBQUNILGVBQU8sTUFBTSxtQ0FBbUMsUUFBZ0MsQ0FBQztBQUVqRjs7R0FFRztBQUVILHFCQUFhLEVBQUcsU0FBUSxVQUFVOztJQU05Qjs7OztPQUlHO2FB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
@@ -1 +1 @@
1
- {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/tx/tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/tx/tx.ts"],"names":[],"mappings":"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"}
package/dest/tx/tx.js CHANGED
@@ -1,4 +1,4 @@
1
- import { DA_GAS_PER_FIELD, TX_DA_GAS_OVERHEAD } from '@aztec/constants';
1
+ import { DA_GAS_PER_FIELD, MAX_CONTRACT_CLASS_LOGS_PER_TX, MAX_ENQUEUED_CALLS_PER_TX, MAX_FR_CALLDATA_TO_ALL_ENQUEUED_CALLS, TX_DA_GAS_OVERHEAD } from '@aztec/constants';
2
2
  import { Buffer32 } from '@aztec/foundation/buffer';
3
3
  import { BufferReader, BufferSink, serializeArrayOfBufferableToVector, serializeArrayToSink, serializeToSink } from '@aztec/foundation/serialize';
4
4
  import { unfreeze } from '@aztec/foundation/types';
@@ -18,6 +18,12 @@ import { TxHash } from './tx_hash.js';
18
18
  // exceed this still serialize correctly — the sink falls back to its standard doubling growth — just
19
19
  // with the existing cost.
20
20
  const TX_SINK_PRESIZE_BYTES = 131072;
21
+ /**
22
+ * Upper bound on the calldata entries a tx can carry: one per enqueued call, plus one for the teardown call.
23
+ * The revertible and non-revertible call request arrays are each sized `MAX_ENQUEUED_CALLS_PER_TX`, but the
24
+ * private tail circuit fills them by partitioning a single array of that size, so their lengths sum to it. The
25
+ * teardown request is propagated separately and can only be set once.
26
+ */ export const MAX_PUBLIC_FUNCTION_CALLDATA_PER_TX = MAX_ENQUEUED_CALLS_PER_TX + 1;
21
27
  /**
22
28
  * The interface of an L2 transaction.
23
29
  */ // docs:start:tx_class
@@ -122,8 +128,8 @@ export class Tx extends Gossipable {
122
128
  return z.object({
123
129
  data: PrivateKernelTailCircuitPublicInputs.schema,
124
130
  chonkProof: ChonkProof.schema,
125
- contractClassLogFields: z.array(ContractClassLogFields.schema),
126
- publicFunctionCalldata: z.array(HashedValues.schema)
131
+ contractClassLogFields: z.array(ContractClassLogFields.schema).max(MAX_CONTRACT_CLASS_LOGS_PER_TX),
132
+ publicFunctionCalldata: z.array(HashedValues.schemaFor(MAX_FR_CALLDATA_TO_ALL_ENQUEUED_CALLS)).max(MAX_PUBLIC_FUNCTION_CALLDATA_PER_TX)
127
133
  }).transform(Tx.create);
128
134
  }
129
135
  static async computeTxHash(fields) {
@@ -16,6 +16,21 @@ export declare class AttestationTimeoutError extends ValidatorError {
16
16
  export declare class TransactionsNotAvailableError extends ValidatorError {
17
17
  constructor(txHashes: TxHash[]);
18
18
  }
19
+ /**
20
+ * Thrown when a tx carried in a block proposal fails minimum integrity validation (metadata, size, data,
21
+ * contract instances, or proof). The proposer signs both the tx hashes and the tx objects, so this is
22
+ * proposer misbehavior rather than a local failure, and callers classify it as an invalid block proposal.
23
+ */
24
+ export declare class InvalidBlockProposalTxsError extends ValidatorError {
25
+ readonly invalidTxs: {
26
+ txHash: TxHash;
27
+ reasons: string[];
28
+ }[];
29
+ constructor(invalidTxs: {
30
+ txHash: TxHash;
31
+ reasons: string[];
32
+ }[]);
33
+ }
19
34
  export declare class FailedToReExecuteTransactionsError extends ValidatorError {
20
35
  constructor(txHashes: TxHash[]);
21
36
  }
@@ -35,4 +50,4 @@ export declare class ReExFailedTxsError extends ValidatorError {
35
50
  export declare class ReExTimeoutError extends ValidatorError {
36
51
  constructor();
37
52
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmFsaWRhdG9ycy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MscUJBQWEsY0FBZSxTQUFRLEtBQUs7SUFDdkMsWUFBWSxPQUFPLEVBQUUsTUFBTSxFQUUxQjtDQUNGO0FBRUQscUJBQWEsK0JBQWdDLFNBQVEsY0FBYztJQUNqRSxjQUVDO0NBQ0Y7QUFFRCxxQkFBYSx1QkFBd0IsU0FBUSxjQUFjO2FBRXZDLGNBQWMsRUFBRSxNQUFNO2FBQ3RCLGFBQWEsRUFBRSxNQUFNO2FBQ3JCLElBQUksRUFBRSxVQUFVO0lBSGxDLFlBQ2tCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGFBQWEsRUFBRSxNQUFNLEVBQ3JCLElBQUksRUFBRSxVQUFVLEVBR2pDO0NBQ0Y7QUFFRCxxQkFBYSw2QkFBOEIsU0FBUSxjQUFjO0lBQy9ELFlBQVksUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUU3QjtDQUNGO0FBRUQscUJBQWEsa0NBQW1DLFNBQVEsY0FBYztJQUNwRSxZQUFZLFFBQVEsRUFBRSxNQUFNLEVBQUUsRUFFN0I7Q0FDRjtBQUVELHFCQUFhLDZCQUE4QixTQUFRLGNBQWM7YUFFN0MsbUJBQW1CLEVBQUUsRUFBRTthQUN2QixpQkFBaUIsRUFBRSxFQUFFO0lBRnZDLFlBQ2tCLG1CQUFtQixFQUFFLEVBQUUsRUFDdkIsaUJBQWlCLEVBQUUsRUFBRSxFQUd0QztDQUNGO0FBRUQscUJBQWEsc0JBQXVCLFNBQVEsY0FBYzthQUV0QyxtQkFBbUIsRUFBRSxFQUFFO2FBQ3ZCLGlCQUFpQixFQUFFLEVBQUU7SUFGdkMsWUFDa0IsbUJBQW1CLEVBQUUsRUFBRSxFQUN2QixpQkFBaUIsRUFBRSxFQUFFLEVBR3RDO0NBQ0Y7QUFFRCxxQkFBYSxrQkFBbUIsU0FBUSxjQUFjO0lBQ3BELFlBQVksWUFBWSxFQUFFLE1BQU0sRUFFL0I7Q0FDRjtBQUVELHFCQUFhLGdCQUFpQixTQUFRLGNBQWM7SUFDbEQsY0FFQztDQUNGIn0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmFsaWRhdG9ycy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MscUJBQWEsY0FBZSxTQUFRLEtBQUs7SUFDdkMsWUFBWSxPQUFPLEVBQUUsTUFBTSxFQUUxQjtDQUNGO0FBRUQscUJBQWEsK0JBQWdDLFNBQVEsY0FBYztJQUNqRSxjQUVDO0NBQ0Y7QUFFRCxxQkFBYSx1QkFBd0IsU0FBUSxjQUFjO2FBRXZDLGNBQWMsRUFBRSxNQUFNO2FBQ3RCLGFBQWEsRUFBRSxNQUFNO2FBQ3JCLElBQUksRUFBRSxVQUFVO0lBSGxDLFlBQ2tCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGFBQWEsRUFBRSxNQUFNLEVBQ3JCLElBQUksRUFBRSxVQUFVLEVBR2pDO0NBQ0Y7QUFFRCxxQkFBYSw2QkFBOEIsU0FBUSxjQUFjO0lBQy9ELFlBQVksUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUU3QjtDQUNGO0FBRUQ7Ozs7R0FJRztBQUNILHFCQUFhLDRCQUE2QixTQUFRLGNBQWM7YUFDbEMsVUFBVSxFQUFFO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQTtLQUFFLEVBQUU7SUFBL0UsWUFBNEIsVUFBVSxFQUFFO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQTtLQUFFLEVBQUUsRUFROUU7Q0FDRjtBQUVELHFCQUFhLGtDQUFtQyxTQUFRLGNBQWM7SUFDcEUsWUFBWSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBRTdCO0NBQ0Y7QUFFRCxxQkFBYSw2QkFBOEIsU0FBUSxjQUFjO2FBRTdDLG1CQUFtQixFQUFFLEVBQUU7YUFDdkIsaUJBQWlCLEVBQUUsRUFBRTtJQUZ2QyxZQUNrQixtQkFBbUIsRUFBRSxFQUFFLEVBQ3ZCLGlCQUFpQixFQUFFLEVBQUUsRUFHdEM7Q0FDRjtBQUVELHFCQUFhLHNCQUF1QixTQUFRLGNBQWM7YUFFdEMsbUJBQW1CLEVBQUUsRUFBRTthQUN2QixpQkFBaUIsRUFBRSxFQUFFO0lBRnZDLFlBQ2tCLG1CQUFtQixFQUFFLEVBQUUsRUFDdkIsaUJBQWlCLEVBQUUsRUFBRSxFQUd0QztDQUNGO0FBRUQscUJBQWEsa0JBQW1CLFNBQVEsY0FBYztJQUNwRCxZQUFZLFlBQVksRUFBRSxNQUFNLEVBRS9CO0NBQ0Y7QUFFRCxxQkFBYSxnQkFBaUIsU0FBUSxjQUFjO0lBQ2xELGNBRUM7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/validators/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED,qBAAa,+BAAgC,SAAQ,cAAc;IACjE,cAEC;CACF;AAED,qBAAa,uBAAwB,SAAQ,cAAc;aAEvC,cAAc,EAAE,MAAM;aACtB,aAAa,EAAE,MAAM;aACrB,IAAI,EAAE,UAAU;IAHlC,YACkB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,UAAU,EAGjC;CACF;AAED,qBAAa,6BAA8B,SAAQ,cAAc;IAC/D,YAAY,QAAQ,EAAE,MAAM,EAAE,EAE7B;CACF;AAED,qBAAa,kCAAmC,SAAQ,cAAc;IACpE,YAAY,QAAQ,EAAE,MAAM,EAAE,EAE7B;CACF;AAED,qBAAa,6BAA8B,SAAQ,cAAc;aAE7C,mBAAmB,EAAE,EAAE;aACvB,iBAAiB,EAAE,EAAE;IAFvC,YACkB,mBAAmB,EAAE,EAAE,EACvB,iBAAiB,EAAE,EAAE,EAGtC;CACF;AAED,qBAAa,sBAAuB,SAAQ,cAAc;aAEtC,mBAAmB,EAAE,EAAE;aACvB,iBAAiB,EAAE,EAAE;IAFvC,YACkB,mBAAmB,EAAE,EAAE,EACvB,iBAAiB,EAAE,EAAE,EAGtC;CACF;AAED,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,YAAY,YAAY,EAAE,MAAM,EAE/B;CACF;AAED,qBAAa,gBAAiB,SAAQ,cAAc;IAClD,cAEC;CACF"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/validators/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED,qBAAa,+BAAgC,SAAQ,cAAc;IACjE,cAEC;CACF;AAED,qBAAa,uBAAwB,SAAQ,cAAc;aAEvC,cAAc,EAAE,MAAM;aACtB,aAAa,EAAE,MAAM;aACrB,IAAI,EAAE,UAAU;IAHlC,YACkB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,UAAU,EAGjC;CACF;AAED,qBAAa,6BAA8B,SAAQ,cAAc;IAC/D,YAAY,QAAQ,EAAE,MAAM,EAAE,EAE7B;CACF;AAED;;;;GAIG;AACH,qBAAa,4BAA6B,SAAQ,cAAc;aAClC,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE;IAA/E,YAA4B,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,EAQ9E;CACF;AAED,qBAAa,kCAAmC,SAAQ,cAAc;IACpE,YAAY,QAAQ,EAAE,MAAM,EAAE,EAE7B;CACF;AAED,qBAAa,6BAA8B,SAAQ,cAAc;aAE7C,mBAAmB,EAAE,EAAE;aACvB,iBAAiB,EAAE,EAAE;IAFvC,YACkB,mBAAmB,EAAE,EAAE,EACvB,iBAAiB,EAAE,EAAE,EAGtC;CACF;AAED,qBAAa,sBAAuB,SAAQ,cAAc;aAEtC,mBAAmB,EAAE,EAAE;aACvB,iBAAiB,EAAE,EAAE;IAFvC,YACkB,mBAAmB,EAAE,EAAE,EACvB,iBAAiB,EAAE,EAAE,EAGtC;CACF;AAED,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,YAAY,YAAY,EAAE,MAAM,EAE/B;CACF;AAED,qBAAa,gBAAiB,SAAQ,cAAc;IAClD,cAEC;CACF"}
@@ -21,6 +21,18 @@ export class TransactionsNotAvailableError extends ValidatorError {
21
21
  super(`Transactions not available: ${txHashes.join(', ')}`);
22
22
  }
23
23
  }
24
+ /**
25
+ * Thrown when a tx carried in a block proposal fails minimum integrity validation (metadata, size, data,
26
+ * contract instances, or proof). The proposer signs both the tx hashes and the tx objects, so this is
27
+ * proposer misbehavior rather than a local failure, and callers classify it as an invalid block proposal.
28
+ */ export class InvalidBlockProposalTxsError extends ValidatorError {
29
+ invalidTxs;
30
+ constructor(invalidTxs){
31
+ super(`Invalid txs in block proposal: ${invalidTxs.map(({ txHash, reasons })=>`${txHash} (${reasons.join(', ')})`).join('; ')}`), this.invalidTxs = invalidTxs;
32
+ // Set so `isErrorClass` can recognize this error across package instances, where `instanceof` fails.
33
+ this.name = 'InvalidBlockProposalTxsError';
34
+ }
35
+ }
24
36
  export class FailedToReExecuteTransactionsError extends ValidatorError {
25
37
  constructor(txHashes){
26
38
  super(`Failed to re-execute transactions: ${txHashes.join(', ')}`);
@@ -23,21 +23,4 @@ export declare class WorldStateRevision {
23
23
  includeUncommitted: boolean;
24
24
  }>>;
25
25
  }
26
- export declare class WorldStateRevisionWithHandle extends WorldStateRevision {
27
- readonly handle: any;
28
- constructor(forkId: number, blockNumber: number, includeUncommitted: boolean, handle: any);
29
- toWorldStateRevision(): WorldStateRevision;
30
- static fromWorldStateRevision(revision: WorldStateRevision, handle: any): WorldStateRevisionWithHandle;
31
- static get schema(): z.ZodPipe<z.ZodObject<{
32
- forkId: z.ZodNumber;
33
- blockNumber: z.ZodNumber;
34
- includeUncommitted: z.ZodBoolean;
35
- handle: z.ZodAny;
36
- }, z.core.$strip>, z.ZodTransform<WorldStateRevisionWithHandle, {
37
- forkId: number;
38
- blockNumber: number;
39
- includeUncommitted: boolean;
40
- handle: any;
41
- }>>;
42
- }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ybGRfc3RhdGVfcmV2aXNpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93b3JsZC1zdGF0ZS93b3JsZF9zdGF0ZV9yZXZpc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLHFCQUFhLGtCQUFrQjthQVVYLE1BQU0sRUFBRSxNQUFNO2FBQ2QsV0FBVyxFQUFFLE1BQU07YUFDbkIsa0JBQWtCLEVBQUUsT0FBTztJQVg3Qzs7Ozs7T0FLRztJQUNILGdCQUF1QixNQUFNLGNBQWM7SUFFM0MsWUFDa0IsTUFBTSxFQUFFLE1BQU0sRUFDZCxXQUFXLEVBQUUsTUFBTSxFQUNuQixrQkFBa0IsRUFBRSxPQUFPLEVBQ3pDO0lBRUcsUUFBUSxXQUVkO0lBRUQsTUFBTSxDQUFDLEtBQUssdUJBRVg7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7UUFXaEI7Q0FDRjtBQUVELHFCQUFhLDRCQUE2QixTQUFRLGtCQUFrQjthQUtoRCxNQUFNLEVBQUUsR0FBRztJQUo3QixZQUNFLE1BQU0sRUFBRSxNQUFNLEVBQ2QsV0FBVyxFQUFFLE1BQU0sRUFDbkIsa0JBQWtCLEVBQUUsT0FBTyxFQUNYLE1BQU0sRUFBRSxHQUFHLEVBRzVCO0lBRU0sb0JBQW9CLHVCQUUxQjtJQUVELE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLEdBQUcsZ0NBRXRFO0lBRUQsV0FBb0IsTUFBTTs7Ozs7Ozs7OztRQVl6QjtDQUNGIn0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ybGRfc3RhdGVfcmV2aXNpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93b3JsZC1zdGF0ZS93b3JsZF9zdGF0ZV9yZXZpc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLHFCQUFhLGtCQUFrQjthQVVYLE1BQU0sRUFBRSxNQUFNO2FBQ2QsV0FBVyxFQUFFLE1BQU07YUFDbkIsa0JBQWtCLEVBQUUsT0FBTztJQVg3Qzs7Ozs7T0FLRztJQUNILGdCQUF1QixNQUFNLGNBQWM7SUFFM0MsWUFDa0IsTUFBTSxFQUFFLE1BQU0sRUFDZCxXQUFXLEVBQUUsTUFBTSxFQUNuQixrQkFBa0IsRUFBRSxPQUFPLEVBQ3pDO0lBRUcsUUFBUSxXQUVkO0lBRUQsTUFBTSxDQUFDLEtBQUssdUJBRVg7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7UUFXaEI7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"world_state_revision.d.ts","sourceRoot":"","sources":["../../src/world-state/world_state_revision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,qBAAa,kBAAkB;aAUX,MAAM,EAAE,MAAM;aACd,WAAW,EAAE,MAAM;aACnB,kBAAkB,EAAE,OAAO;IAX7C;;;;;OAKG;IACH,gBAAuB,MAAM,cAAc;IAE3C,YACkB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,OAAO,EACzC;IAEG,QAAQ,WAEd;IAED,MAAM,CAAC,KAAK,uBAEX;IAED,MAAM,KAAK,MAAM;;;;;;;;QAWhB;CACF;AAED,qBAAa,4BAA6B,SAAQ,kBAAkB;aAKhD,MAAM,EAAE,GAAG;IAJ7B,YACE,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,OAAO,EACX,MAAM,EAAE,GAAG,EAG5B;IAEM,oBAAoB,uBAE1B;IAED,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,gCAEtE;IAED,WAAoB,MAAM;;;;;;;;;;QAYzB;CACF"}
1
+ {"version":3,"file":"world_state_revision.d.ts","sourceRoot":"","sources":["../../src/world-state/world_state_revision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,qBAAa,kBAAkB;aAUX,MAAM,EAAE,MAAM;aACd,WAAW,EAAE,MAAM;aACnB,kBAAkB,EAAE,OAAO;IAX7C;;;;;OAKG;IACH,gBAAuB,MAAM,cAAc;IAE3C,YACkB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,OAAO,EACzC;IAEG,QAAQ,WAEd;IAED,MAAM,CAAC,KAAK,uBAEX;IAED,MAAM,KAAK,MAAM;;;;;;;;QAWhB;CACF"}
@@ -28,23 +28,3 @@ export class WorldStateRevision {
28
28
  }).transform(({ forkId, blockNumber, includeUncommitted })=>new WorldStateRevision(forkId, blockNumber, includeUncommitted));
29
29
  }
30
30
  }
31
- export class WorldStateRevisionWithHandle extends WorldStateRevision {
32
- handle;
33
- constructor(forkId, blockNumber, includeUncommitted, handle){
34
- super(forkId, blockNumber, includeUncommitted), this.handle = handle;
35
- }
36
- toWorldStateRevision() {
37
- return new WorldStateRevision(this.forkId, this.blockNumber, this.includeUncommitted);
38
- }
39
- static fromWorldStateRevision(revision, handle) {
40
- return new WorldStateRevisionWithHandle(revision.forkId, revision.blockNumber, revision.includeUncommitted, handle);
41
- }
42
- static get schema() {
43
- return z.object({
44
- forkId: z.number(),
45
- blockNumber: z.number(),
46
- includeUncommitted: z.boolean(),
47
- handle: z.any()
48
- }).transform(({ forkId, blockNumber, includeUncommitted, handle })=>new WorldStateRevisionWithHandle(forkId, blockNumber, includeUncommitted, handle));
49
- }
50
- }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "0.0.1-commit.3100065",
3
+ "version": "0.0.1-commit.330febf",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -92,13 +92,13 @@
92
92
  },
93
93
  "dependencies": {
94
94
  "@aws-sdk/client-s3": "^3.892.0",
95
- "@aztec/bb.js": "0.0.1-commit.3100065",
96
- "@aztec/blob-lib": "0.0.1-commit.3100065",
97
- "@aztec/constants": "0.0.1-commit.3100065",
98
- "@aztec/ethereum": "0.0.1-commit.3100065",
99
- "@aztec/foundation": "0.0.1-commit.3100065",
100
- "@aztec/l1-artifacts": "0.0.1-commit.3100065",
101
- "@aztec/noir-noirc_abi": "0.0.1-commit.3100065",
95
+ "@aztec/bb.js": "6.0.0-nightly.20260807",
96
+ "@aztec/blob-lib": "0.0.1-commit.330febf",
97
+ "@aztec/constants": "0.0.1-commit.330febf",
98
+ "@aztec/ethereum": "0.0.1-commit.330febf",
99
+ "@aztec/foundation": "0.0.1-commit.330febf",
100
+ "@aztec/l1-artifacts": "6.0.0-nightly.20260807",
101
+ "@aztec/noir-noirc_abi": "6.0.0-nightly.20260807",
102
102
  "@google-cloud/storage": "^7.15.0",
103
103
  "axios": "^1.15.1",
104
104
  "json-stringify-deterministic": "1.0.12",
package/src/abi/abi.ts CHANGED
@@ -27,6 +27,14 @@ export type AbiValue =
27
27
  | IntegerValue
28
28
  | StructValue;
29
29
 
30
+ /** An exported value together with the name of the global that produced it. */
31
+ export interface AbiNamedValue {
32
+ /** The name of the exported global. */
33
+ name: string;
34
+ /** The exported value. */
35
+ value: AbiValue;
36
+ }
37
+
30
38
  export const AbiValueSchema: z.ZodType<AbiValue> = z.discriminatedUnion('kind', [
31
39
  z.object({ kind: z.literal('boolean'), value: z.boolean() }),
32
40
  z.object({ kind: z.literal('string'), value: z.string() }),
@@ -182,14 +190,34 @@ export interface FunctionAbi {
182
190
  isStatic: boolean;
183
191
  /** Function parameters. */
184
192
  parameters: ABIParameter[];
185
- /** The types of the return values. */
186
- returnTypes: AbiType[];
193
+ /** The type of the value the function returns, or undefined if it returns nothing. */
194
+ returnType?: AbiType;
195
+ /**
196
+ * The same type as `returnType`, as a list that is either:
197
+ * - a single entry, when the function returns something. Multiple return values are expressed as a single `tuple`
198
+ * type, so this never holds more than one entry.
199
+ * - empty, when the function returns nothing.
200
+ *
201
+ * @deprecated Read it through {@link getFunctionReturnType}.
202
+ */
203
+ returnTypes?: AbiType[];
187
204
  /** The types of the errors that the function can throw. */
188
205
  errorTypes: Partial<Record<string, AbiErrorType>>;
189
206
  /** Whether the function is flagged as an initializer. */
190
207
  isInitializer: boolean;
191
208
  }
192
209
 
210
+ /**
211
+ * The type a function returns, or undefined if it returns nothing. Falls back to the deprecated `returnTypes` so that
212
+ * artifacts serialized before `returnType` existed still resolve.
213
+ */
214
+ export function getFunctionReturnType(abi: Pick<FunctionAbi, 'returnType' | 'returnTypes'>): AbiType | undefined {
215
+ if (abi.returnTypes !== undefined && abi.returnTypes.length > 1) {
216
+ throw new Error(`Expected at most one return type, got ${abi.returnTypes.length}`);
217
+ }
218
+ return abi.returnType ?? abi.returnTypes?.[0];
219
+ }
220
+
193
221
  export const FunctionAbiSchema = z.object({
194
222
  name: z.string(),
195
223
  functionType: z.nativeEnum(FunctionType),
@@ -197,7 +225,8 @@ export const FunctionAbiSchema = z.object({
197
225
  isStatic: z.boolean(),
198
226
  isInitializer: z.boolean(),
199
227
  parameters: z.array(z.object({ name: z.string(), type: AbiTypeSchema, visibility: z.enum(ABIParameterVisibility) })),
200
- returnTypes: z.array(AbiTypeSchema),
228
+ returnType: AbiTypeSchema.optional(),
229
+ returnTypes: z.array(AbiTypeSchema).optional(),
201
230
  errorTypes: z.record(z.string(), AbiErrorTypeSchema.optional()),
202
231
  }) satisfies z.ZodType<FunctionAbi>;
203
232
 
@@ -566,7 +595,6 @@ export function emptyFunctionAbi(): FunctionAbi {
566
595
  isOnlySelf: false,
567
596
  isStatic: false,
568
597
  parameters: [],
569
- returnTypes: [],
570
598
  errorTypes: {},
571
599
  isInitializer: false,
572
600
  };
@@ -13,7 +13,9 @@ import {
13
13
  type ABIParameter,
14
14
  type ABIParameterVisibility,
15
15
  ARTIFACT_VERSION_BEFORE_INJECTION,
16
+ type AbiNamedValue,
16
17
  type AbiType,
18
+ type AbiValue,
17
19
  type BasicValue,
18
20
  type ContractArtifact,
19
21
  ContractArtifactSchema,
@@ -61,25 +63,6 @@ export function loadContractArtifact(input: NoirCompiledContract): ContractArtif
61
63
  return generateContractArtifact(input);
62
64
  }
63
65
 
64
- /**
65
- * Like {@link loadContractArtifact}, but fully validates an already-processed artifact against the
66
- * contract artifact schema before returning it. Use when loading an artifact from untrusted or
67
- * external JSON (e.g. a file path passed to the CLI), so a malformed artifact is rejected up-front
68
- * with a clear schema error instead of surfacing as an opaque failure later during deployment.
69
- *
70
- * `loadContractArtifact` only runs the shallow `isContractArtifact` shape check on already-processed
71
- * artifacts; raw nargo output is validated via `generateContractArtifact` regardless. The returned
72
- * object is identical to `loadContractArtifact`'s; the schema parse is used purely for validation.
73
- * @param input - Input object as generated by nargo compile, or an already-processed artifact.
74
- * @returns A valid contract artifact instance.
75
- */
76
- export function loadContractArtifactWithValidation(input: NoirCompiledContract): ContractArtifact {
77
- if (isContractArtifact(input)) {
78
- ContractArtifactSchema.parse(input);
79
- }
80
- return loadContractArtifact(input);
81
- }
82
-
83
66
  /**
84
67
  * Gets nargo build output and returns a valid contract artifact instance.
85
68
  * Differs from loadContractArtifact() by retaining all bytecode.
@@ -185,9 +168,9 @@ function generateFunctionAbi(fn: NoirCompiledContractFunction, contract: NoirCom
185
168
  parameters = parameters.slice(1);
186
169
  }
187
170
 
188
- let returnTypes: AbiType[] = [];
171
+ let returnType: AbiType | undefined;
189
172
  if (functionType === FunctionType.UTILITY) {
190
- returnTypes = fn.abi.return_type ? [fn.abi.return_type.abi_type] : returnTypes;
173
+ returnType = fn.abi.return_type?.abi_type;
191
174
  } else {
192
175
  const pathToFind = `${contract.name}::${fn.name}_abi`;
193
176
  const abiStructs: AbiType[] = contract.outputs.structs['functions'];
@@ -199,10 +182,7 @@ function generateFunctionAbi(fn: NoirCompiledContractFunction, contract: NoirCom
199
182
  throw new Error('Could not generate contract function artifact');
200
183
  }
201
184
 
202
- const returnTypeField = returnStruct.fields.find(field => field.name === 'return_type');
203
- if (returnTypeField) {
204
- returnTypes = [returnTypeField.type];
205
- }
185
+ returnType = returnStruct.fields.find(field => field.name === 'return_type')?.type;
206
186
  }
207
187
  }
208
188
 
@@ -213,7 +193,10 @@ function generateFunctionAbi(fn: NoirCompiledContractFunction, contract: NoirCom
213
193
  isStatic,
214
194
  isInitializer: fn.custom_attributes.includes(AZTEC_INITIALIZER_ATTRIBUTE),
215
195
  parameters,
216
- returnTypes,
196
+ returnType,
197
+ // Old consumers expect `returnTypes` property, not `returnType`. So we write both down for now, until we can
198
+ // safely remove the old version.
199
+ returnTypes: returnType ? [returnType] : [],
217
200
  errorTypes: fn.abi.error_types,
218
201
  ...(fn.assert_messages ? { assertMessages: fn.assert_messages } : undefined),
219
202
  };
@@ -265,20 +248,24 @@ function hasKernelFunctionInputs(params: ABIParameter[]): boolean {
265
248
 
266
249
  /**
267
250
  * Generates a storage layout for the contract artifact.
268
- * @param input - The compiled noir contract to get storage layout for
251
+ * @param contractName - The name of the compiled Noir contract.
252
+ * @param globals - The normalized globals exported by the contract.
269
253
  * @returns A storage layout for the contract.
270
254
  */
271
- function getStorageLayout(input: NoirCompiledContract) {
255
+ function getStorageLayout(contractName: string, globals: Record<string, AbiValue[]>) {
272
256
  // If another contract is imported by the main contract, its storage layout its going to also show up here.
273
257
  // The layout export includes the contract name, so here we can find the one that belongs to the current one and
274
258
  // ignore the rest.
275
- const storageExports = input.outputs.globals.storage ? (input.outputs.globals.storage as StructValue[]) : [];
276
- const storageForContract = storageExports.find(storageExport => {
259
+ const storageExports = globals.storage ?? [];
260
+ const storageForContract = storageExports.find((storageExport): storageExport is StructValue => {
261
+ if (storageExport.kind !== 'struct') {
262
+ return false;
263
+ }
277
264
  const contractNameField = storageExport.fields.find(field => field.name === 'contract_name')?.value as BasicValue<
278
265
  'string',
279
266
  string
280
267
  >;
281
- return contractNameField.value === input.name;
268
+ return contractNameField.value === contractName;
282
269
  });
283
270
  const storageFields = storageForContract
284
271
  ? ((storageForContract.fields.find(field => field.name == 'fields') as TypedStructFieldValue<StructValue>).value
@@ -299,6 +286,22 @@ function getStorageLayout(input: NoirCompiledContract) {
299
286
  }, {});
300
287
  }
301
288
 
289
+ function isAbiNamedValue(value: AbiNamedValue | AbiValue): value is AbiNamedValue {
290
+ return 'name' in value;
291
+ }
292
+
293
+ function normalizeContractOutputs(outputs: NoirCompiledContract['outputs']): ContractArtifact['outputs'] {
294
+ return {
295
+ structs: outputs.structs,
296
+ globals: Object.fromEntries(
297
+ Object.entries(outputs.globals).map(([tag, values]) => [
298
+ tag,
299
+ values.map(value => (isAbiNamedValue(value) ? value.value : value)),
300
+ ]),
301
+ ),
302
+ };
303
+ }
304
+
302
305
  /**
303
306
  * Given a post-processed Nargo output defined as `contract` generates an Aztec-compatible contract artifact.
304
307
  *
@@ -309,6 +312,7 @@ function generateContractArtifact(contract: NoirCompiledContract): ContractArtif
309
312
  if (!contract.transpiled) {
310
313
  throw new Error("Contract's public bytecode has not been transpiled");
311
314
  }
315
+ const outputs = normalizeContractOutputs(contract.outputs);
312
316
  return ContractArtifactSchema.parse({
313
317
  name: contract.name,
314
318
  aztecVersion: contract.aztec_version,
@@ -316,8 +320,8 @@ function generateContractArtifact(contract: NoirCompiledContract): ContractArtif
316
320
  nonDispatchPublicFunctions: contract.functions
317
321
  .filter(f => !retainBytecode(f))
318
322
  .map(f => generateFunctionAbi(f, contract)),
319
- outputs: contract.outputs,
320
- storageLayout: getStorageLayout(contract),
323
+ outputs,
324
+ storageLayout: getStorageLayout(contract.name, outputs.globals),
321
325
  fileMap: contract.file_map,
322
326
  });
323
327
  } catch (err) {
@@ -332,6 +336,7 @@ function generateContractArtifact(contract: NoirCompiledContract): ContractArtif
332
336
  */
333
337
  function generateContractArtifactForPublic(contract: NoirCompiledContract): ContractArtifact {
334
338
  try {
339
+ const outputs = normalizeContractOutputs(contract.outputs);
335
340
  return ContractArtifactSchema.parse({
336
341
  name: contract.name,
337
342
  aztecVersion: contract.aztec_version,
@@ -339,8 +344,8 @@ function generateContractArtifactForPublic(contract: NoirCompiledContract): Cont
339
344
  nonDispatchPublicFunctions: contract.functions
340
345
  .filter(f => !retainBytecode(f))
341
346
  .map(f => generateFunctionAbi(f, contract)),
342
- outputs: contract.outputs,
343
- storageLayout: getStorageLayout(contract),
347
+ outputs,
348
+ storageLayout: getStorageLayout(contract.name, outputs.globals),
344
349
  fileMap: contract.file_map,
345
350
  });
346
351
  } catch (err) {
@@ -32,17 +32,14 @@ export type AbiDecoded =
32
32
  * Decodes values using a provided ABI.
33
33
  */
34
34
  class AbiDecoder {
35
- constructor(
36
- private types: AbiType[],
37
- private flattened: Fr[],
38
- ) {}
35
+ constructor(private flattened: Fr[]) {}
39
36
 
40
37
  /**
41
- * Decodes a single return value from field to the given type.
42
- * @param abiType - The type of the return value.
43
- * @returns The decoded return value.
38
+ * Decodes a single value from field to the given type.
39
+ * @param abiType - The type of the value.
40
+ * @returns The decoded value.
44
41
  */
45
- private decodeNext(abiType: AbiType): AbiDecoded {
42
+ public decodeNext(abiType: AbiType): AbiDecoded {
46
43
  switch (abiType.kind) {
47
44
  case 'field':
48
45
  return this.getNextField().toBigInt();
@@ -121,26 +118,25 @@ class AbiDecoder {
121
118
  }
122
119
  return field;
123
120
  }
121
+ }
124
122
 
125
- /**
126
- * Decodes all the values for the given ABI.
127
- * The decided value can be simple types, structs or arrays
128
- * @returns The decoded return values.
129
- */
130
- public decode(): AbiDecoded {
131
- if (this.types.length === 1) {
132
- return this.decodeNext(this.types[0]);
133
- }
134
- return this.types.map(type => this.decodeNext(type));
135
- }
123
+ /**
124
+ * Decodes the single value a function returns, or undefined if it returns nothing. Multiple return values are expressed
125
+ * as one `tuple` type, so they decode through here too.
126
+ * @param type - The type the function returns.
127
+ * @param buffer - The flattened Field array to decode.
128
+ */
129
+ export function decodeFromAbi(type: AbiType | undefined, buffer: Fr[]): AbiDecoded {
130
+ return type === undefined ? undefined : new AbiDecoder(buffer.slice()).decodeNext(type);
136
131
  }
137
132
 
138
133
  /**
139
- * Decodes values in a flattened Field array using a provided ABI.
140
- * @param abi - The ABI to use as reference.
134
+ * Decodes one value per given type, consumed from the buffer in order. Always returns one decoded value per type, so
135
+ * callers can index the result positionally. A function's arguments are encoded this way.
136
+ * @param types - The type of each value, in order.
141
137
  * @param buffer - The flattened Field array to decode.
142
- * @returns
143
138
  */
144
- export function decodeFromAbi(typ: AbiType[], buffer: Fr[]) {
145
- return new AbiDecoder(typ, buffer.slice()).decode();
139
+ export function decodeEachFromAbi(types: AbiType[], buffer: Fr[]): AbiDecoded[] {
140
+ const decoder = new AbiDecoder(buffer.slice());
141
+ return types.map(type => decoder.decodeNext(type));
146
142
  }