@aztec/stdlib 0.0.1-commit.ffe5b04ea → 0.0.1-commit.fff30aa

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 (265) hide show
  1. package/dest/abi/abi.d.ts +57 -85
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +55 -6
  4. package/dest/abi/buffer.d.ts +14 -4
  5. package/dest/abi/buffer.d.ts.map +1 -1
  6. package/dest/abi/buffer.js +25 -4
  7. package/dest/abi/decoder.d.ts +5 -44
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +12 -67
  10. package/dest/abi/function_selector.js +1 -1
  11. package/dest/abi/function_signature_decoder.d.ts +43 -0
  12. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  13. package/dest/abi/function_signature_decoder.js +66 -0
  14. package/dest/abi/index.d.ts +2 -1
  15. package/dest/abi/index.d.ts.map +1 -1
  16. package/dest/abi/index.js +1 -0
  17. package/dest/abi/selector.d.ts +2 -2
  18. package/dest/abi/selector.d.ts.map +1 -1
  19. package/dest/abi/selector.js +1 -1
  20. package/dest/avm/avm_accumulated_data.js +2 -2
  21. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  22. package/dest/avm/revert_code.d.ts +8 -18
  23. package/dest/avm/revert_code.d.ts.map +1 -1
  24. package/dest/avm/revert_code.js +15 -30
  25. package/dest/block/l2_block_source.d.ts +11 -8
  26. package/dest/block/l2_block_source.d.ts.map +1 -1
  27. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  28. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  29. package/dest/checkpoint/validate.js +2 -2
  30. package/dest/config/sequencer-config.d.ts +1 -3
  31. package/dest/config/sequencer-config.d.ts.map +1 -1
  32. package/dest/config/sequencer-config.js +0 -1
  33. package/dest/epoch-helpers/index.d.ts +9 -1
  34. package/dest/epoch-helpers/index.d.ts.map +1 -1
  35. package/dest/epoch-helpers/index.js +13 -2
  36. package/dest/gas/gas_settings.d.ts +40 -3
  37. package/dest/gas/gas_settings.d.ts.map +1 -1
  38. package/dest/gas/gas_settings.js +50 -6
  39. package/dest/hash/hash.d.ts +19 -1
  40. package/dest/hash/hash.d.ts.map +1 -1
  41. package/dest/hash/hash.js +29 -0
  42. package/dest/interfaces/archiver.js +2 -2
  43. package/dest/interfaces/aztec-node-admin.d.ts +10 -13
  44. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  45. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  46. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  47. package/dest/interfaces/aztec-node-debug.js +18 -0
  48. package/dest/interfaces/aztec-node.d.ts +3 -2
  49. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  50. package/dest/interfaces/aztec-node.js +2 -0
  51. package/dest/interfaces/block-builder.d.ts +32 -11
  52. package/dest/interfaces/block-builder.d.ts.map +1 -1
  53. package/dest/interfaces/block-builder.js +6 -4
  54. package/dest/interfaces/client.d.ts +2 -1
  55. package/dest/interfaces/client.d.ts.map +1 -1
  56. package/dest/interfaces/client.js +1 -0
  57. package/dest/interfaces/configs.d.ts +7 -2
  58. package/dest/interfaces/configs.d.ts.map +1 -1
  59. package/dest/interfaces/configs.js +1 -0
  60. package/dest/interfaces/merkle_tree_operations.d.ts +9 -19
  61. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  62. package/dest/interfaces/prover-client.d.ts +6 -1
  63. package/dest/interfaces/prover-client.d.ts.map +1 -1
  64. package/dest/interfaces/prover-client.js +7 -1
  65. package/dest/interfaces/validator.d.ts +17 -37
  66. package/dest/interfaces/validator.d.ts.map +1 -1
  67. package/dest/interfaces/validator.js +2 -2
  68. package/dest/interfaces/world_state.d.ts +5 -4
  69. package/dest/interfaces/world_state.d.ts.map +1 -1
  70. package/dest/kernel/claimed_length_array.js +1 -1
  71. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  72. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  73. package/dest/kernel/padded_side_effects.js +1 -1
  74. package/dest/kernel/private_to_avm_accumulated_data.js +2 -2
  75. package/dest/kernel/private_to_public_accumulated_data.js +2 -2
  76. package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
  77. package/dest/logs/extended_directional_app_tagging_secret.d.ts +4 -4
  78. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -1
  79. package/dest/logs/extended_directional_app_tagging_secret.js +12 -5
  80. package/dest/logs/index.d.ts +2 -1
  81. package/dest/logs/index.d.ts.map +1 -1
  82. package/dest/logs/index.js +1 -0
  83. package/dest/logs/log_filter.d.ts +4 -1
  84. package/dest/logs/log_filter.d.ts.map +1 -1
  85. package/dest/logs/log_filter.js +2 -1
  86. package/dest/logs/message_context.d.ts +4 -7
  87. package/dest/logs/message_context.d.ts.map +1 -1
  88. package/dest/logs/message_context.js +23 -9
  89. package/dest/logs/pending_tagged_log.d.ts +2 -3
  90. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  91. package/dest/logs/pending_tagged_log.js +2 -2
  92. package/dest/logs/private_log.js +1 -1
  93. package/dest/logs/public_log.d.ts +1 -1
  94. package/dest/logs/public_log.d.ts.map +1 -1
  95. package/dest/logs/public_log.js +7 -1
  96. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  97. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  98. package/dest/logs/shared_secret_derivation.js +15 -9
  99. package/dest/logs/siloed_tag.d.ts +4 -1
  100. package/dest/logs/siloed_tag.d.ts.map +1 -1
  101. package/dest/logs/siloed_tag.js +7 -3
  102. package/dest/logs/tagging_index_range.d.ts +40 -0
  103. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  104. package/dest/logs/tagging_index_range.js +8 -0
  105. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  106. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  107. package/dest/logs/tx_scoped_l2_log.js +7 -0
  108. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  109. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  110. package/dest/messaging/l1_to_l2_message.js +11 -13
  111. package/dest/messaging/l2_to_l1_membership.d.ts +32 -6
  112. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  113. package/dest/messaging/l2_to_l1_membership.js +69 -26
  114. package/dest/noir/index.d.ts +3 -3
  115. package/dest/noir/index.d.ts.map +1 -1
  116. package/dest/note/note_dao.d.ts +1 -1
  117. package/dest/note/note_dao.d.ts.map +1 -1
  118. package/dest/note/note_dao.js +1 -4
  119. package/dest/p2p/block_proposal.d.ts +2 -2
  120. package/dest/p2p/block_proposal.d.ts.map +1 -1
  121. package/dest/p2p/block_proposal.js +1 -1
  122. package/dest/p2p/checkpoint_proposal.d.ts +2 -2
  123. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  124. package/dest/p2p/checkpoint_proposal.js +14 -12
  125. package/dest/parity/parity_base_private_inputs.js +1 -1
  126. package/dest/proofs/chonk_proof.d.ts +1 -1
  127. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  128. package/dest/proofs/chonk_proof.js +7 -1
  129. package/dest/rollup/base_rollup_hints.js +2 -2
  130. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  131. package/dest/rollup/checkpoint_rollup_public_inputs.js +1 -1
  132. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  133. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  134. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  135. package/dest/tests/factories.js +1 -1
  136. package/dest/tests/mocks.d.ts +1 -1
  137. package/dest/tests/mocks.d.ts.map +1 -1
  138. package/dest/tests/mocks.js +2 -2
  139. package/dest/tx/capsule.d.ts +6 -2
  140. package/dest/tx/capsule.d.ts.map +1 -1
  141. package/dest/tx/capsule.js +9 -3
  142. package/dest/tx/private_execution_result.d.ts +6 -6
  143. package/dest/tx/private_execution_result.d.ts.map +1 -1
  144. package/dest/tx/private_execution_result.js +6 -6
  145. package/dest/tx/profiling.d.ts +14 -2
  146. package/dest/tx/profiling.d.ts.map +1 -1
  147. package/dest/tx/profiling.js +13 -3
  148. package/dest/tx/protocol_contracts.js +2 -2
  149. package/dest/tx/simulated_tx.d.ts +59 -76
  150. package/dest/tx/simulated_tx.d.ts.map +1 -1
  151. package/dest/tx/simulated_tx.js +3 -3
  152. package/dest/tx/tx_receipt.d.ts +14 -5
  153. package/dest/tx/tx_receipt.d.ts.map +1 -1
  154. package/dest/tx/tx_receipt.js +14 -18
  155. package/dest/tx/validator/error_texts.d.ts +5 -1
  156. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  157. package/dest/tx/validator/error_texts.js +6 -0
  158. package/dest/update-checker/package_version.d.ts +2 -2
  159. package/dest/update-checker/package_version.d.ts.map +1 -1
  160. package/dest/update-checker/package_version.js +16 -3
  161. package/dest/validators/errors.d.ts +6 -1
  162. package/dest/validators/errors.d.ts.map +1 -1
  163. package/dest/validators/errors.js +7 -0
  164. package/dest/versioning/versioning.d.ts +4 -2
  165. package/dest/versioning/versioning.d.ts.map +1 -1
  166. package/dest/versioning/versioning.js +4 -1
  167. package/dest/vks/vk_data.js +1 -1
  168. package/package.json +10 -11
  169. package/src/abi/abi.ts +78 -2
  170. package/src/abi/buffer.ts +25 -4
  171. package/src/abi/decoder.ts +23 -78
  172. package/src/abi/function_selector.ts +1 -1
  173. package/src/abi/function_signature_decoder.ts +77 -0
  174. package/src/abi/index.ts +1 -0
  175. package/src/abi/selector.ts +1 -1
  176. package/src/avm/avm_accumulated_data.ts +6 -6
  177. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  178. package/src/avm/revert_code.ts +25 -39
  179. package/src/block/l2_block_source.ts +10 -7
  180. package/src/block/l2_block_stream/interfaces.ts +6 -2
  181. package/src/checkpoint/validate.ts +2 -2
  182. package/src/config/sequencer-config.ts +0 -3
  183. package/src/epoch-helpers/index.ts +22 -0
  184. package/src/gas/README.md +123 -0
  185. package/src/gas/gas_settings.ts +65 -12
  186. package/src/hash/hash.ts +34 -0
  187. package/src/interfaces/archiver.ts +2 -2
  188. package/src/interfaces/aztec-node-debug.ts +40 -0
  189. package/src/interfaces/aztec-node.ts +10 -1
  190. package/src/interfaces/block-builder.ts +39 -13
  191. package/src/interfaces/client.ts +1 -0
  192. package/src/interfaces/configs.ts +4 -1
  193. package/src/interfaces/merkle_tree_operations.ts +8 -18
  194. package/src/interfaces/prover-client.ts +8 -0
  195. package/src/interfaces/validator.ts +34 -40
  196. package/src/interfaces/world_state.ts +4 -3
  197. package/src/kernel/claimed_length_array.ts +2 -2
  198. package/src/kernel/hints/private_kernel_reset_hints.ts +5 -2
  199. package/src/kernel/hints/read_request_hints.ts +3 -3
  200. package/src/kernel/padded_side_effects.ts +3 -3
  201. package/src/kernel/private_to_avm_accumulated_data.ts +4 -4
  202. package/src/kernel/private_to_public_accumulated_data.ts +10 -10
  203. package/src/kernel/private_to_rollup_accumulated_data.ts +5 -5
  204. package/src/logs/extended_directional_app_tagging_secret.ts +19 -8
  205. package/src/logs/index.ts +1 -0
  206. package/src/logs/log_filter.ts +5 -0
  207. package/src/logs/message_context.ts +17 -7
  208. package/src/logs/pending_tagged_log.ts +1 -3
  209. package/src/logs/private_log.ts +1 -1
  210. package/src/logs/public_log.ts +11 -1
  211. package/src/logs/shared_secret_derivation.ts +21 -10
  212. package/src/logs/siloed_tag.ts +7 -2
  213. package/src/logs/tagging_index_range.ts +24 -0
  214. package/src/logs/tx_scoped_l2_log.ts +16 -0
  215. package/src/messaging/l1_to_l2_message.ts +12 -9
  216. package/src/messaging/l2_to_l1_membership.ts +98 -33
  217. package/src/noir/index.ts +2 -2
  218. package/src/note/note_dao.ts +1 -4
  219. package/src/p2p/block_proposal.ts +1 -1
  220. package/src/p2p/checkpoint_proposal.ts +24 -21
  221. package/src/parity/parity_base_private_inputs.ts +1 -1
  222. package/src/proofs/chonk_proof.ts +9 -1
  223. package/src/rollup/base_rollup_hints.ts +2 -2
  224. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  225. package/src/rollup/checkpoint_rollup_public_inputs.ts +2 -2
  226. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  227. package/src/rollup/root_rollup_public_inputs.ts +2 -2
  228. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  229. package/src/tests/factories.ts +1 -1
  230. package/src/tests/mocks.ts +2 -2
  231. package/src/tx/capsule.ts +10 -2
  232. package/src/tx/private_execution_result.ts +5 -5
  233. package/src/tx/profiling.ts +11 -2
  234. package/src/tx/protocol_contracts.ts +2 -2
  235. package/src/tx/simulated_tx.ts +6 -2
  236. package/src/tx/tx_receipt.ts +18 -16
  237. package/src/tx/validator/error_texts.ts +8 -0
  238. package/src/update-checker/package_version.ts +19 -6
  239. package/src/validators/errors.ts +9 -0
  240. package/src/versioning/versioning.ts +4 -1
  241. package/src/vks/vk_data.ts +1 -1
  242. package/dest/ha-signing/config.d.ts +0 -136
  243. package/dest/ha-signing/config.d.ts.map +0 -1
  244. package/dest/ha-signing/config.js +0 -97
  245. package/dest/ha-signing/index.d.ts +0 -4
  246. package/dest/ha-signing/index.d.ts.map +0 -1
  247. package/dest/ha-signing/index.js +0 -3
  248. package/dest/ha-signing/local_config.d.ts +0 -63
  249. package/dest/ha-signing/local_config.d.ts.map +0 -1
  250. package/dest/ha-signing/local_config.js +0 -24
  251. package/dest/ha-signing/types.d.ts +0 -85
  252. package/dest/ha-signing/types.d.ts.map +0 -1
  253. package/dest/ha-signing/types.js +0 -32
  254. package/dest/kv-store/config.d.ts +0 -17
  255. package/dest/kv-store/config.d.ts.map +0 -1
  256. package/dest/kv-store/config.js +0 -26
  257. package/dest/kv-store/index.d.ts +0 -2
  258. package/dest/kv-store/index.d.ts.map +0 -1
  259. package/dest/kv-store/index.js +0 -1
  260. package/src/ha-signing/config.ts +0 -156
  261. package/src/ha-signing/index.ts +0 -27
  262. package/src/ha-signing/local_config.ts +0 -46
  263. package/src/ha-signing/types.ts +0 -112
  264. package/src/kv-store/config.ts +0 -36
  265. package/src/kv-store/index.ts +0 -1
@@ -1,5 +1,7 @@
1
+ import { EthAddress } from '@aztec/foundation/eth-address';
1
2
  import { AztecAddress } from '../aztec-address/index.js';
2
- import { isAztecAddressStruct, isOptionStruct, parseSignedInt } from './utils.js';
3
+ import { FunctionSelector } from './function_selector.js';
4
+ import { isAztecAddressStruct, isEthAddressStruct, isFunctionSelectorStruct, isOptionStruct, isWrappedFieldStruct, parseSignedInt } from './utils.js';
3
5
  /**
4
6
  * Decodes values using a provided ABI.
5
7
  */ class AbiDecoder {
@@ -42,6 +44,15 @@ import { isAztecAddressStruct, isOptionStruct, parseSignedInt } from './utils.js
42
44
  if (isAztecAddressStruct(abiType)) {
43
45
  return new AztecAddress(this.getNextField().toBuffer());
44
46
  }
47
+ if (isEthAddressStruct(abiType)) {
48
+ return EthAddress.fromField(this.getNextField());
49
+ }
50
+ if (isFunctionSelectorStruct(abiType)) {
51
+ return FunctionSelector.fromField(this.getNextField());
52
+ }
53
+ if (isWrappedFieldStruct(abiType)) {
54
+ return this.getNextField();
55
+ }
45
56
  if (isOptionStruct(abiType)) {
46
57
  const isSome = this.decodeNext(abiType.fields[0].type);
47
58
  const value = this.decodeNext(abiType.fields[1].type);
@@ -102,69 +113,3 @@ import { isAztecAddressStruct, isOptionStruct, parseSignedInt } from './utils.js
102
113
  */ export function decodeFromAbi(typ, buffer) {
103
114
  return new AbiDecoder(typ, buffer.slice()).decode();
104
115
  }
105
- /**
106
- * Decodes the signature of a function from the name and parameters.
107
- */ export class FunctionSignatureDecoder {
108
- name;
109
- parameters;
110
- includeNames;
111
- separator;
112
- constructor(name, parameters, includeNames = false){
113
- this.name = name;
114
- this.parameters = parameters;
115
- this.includeNames = includeNames;
116
- this.separator = includeNames ? ', ' : ',';
117
- }
118
- /**
119
- * Decodes a single function parameter type for the function signature.
120
- * @param param - The parameter type to decode.
121
- * @returns A string representing the parameter type.
122
- */ getParameterType(param) {
123
- switch(param.kind){
124
- case 'field':
125
- return 'Field';
126
- case 'integer':
127
- return param.sign === 'signed' ? `i${param.width}` : `u${param.width}`;
128
- case 'boolean':
129
- return 'bool';
130
- case 'array':
131
- return `[${this.getParameterType(param.type)};${param.length}]`;
132
- case 'string':
133
- return `str<${param.length}>`;
134
- case 'struct':
135
- return `(${param.fields.map((field)=>`${this.decodeParameter(field)}`).join(this.separator)})`;
136
- default:
137
- throw new Error(`Unsupported type: ${param.kind}`);
138
- }
139
- }
140
- /**
141
- * Decodes a single function parameter for the function signature.
142
- * @param param - The parameter to decode.
143
- * @returns A string representing the parameter type and optionally its name.
144
- */ decodeParameter(param) {
145
- const type = this.getParameterType(param.type);
146
- return this.includeNames ? `${param.name}: ${type}` : type;
147
- }
148
- /**
149
- * Decodes all the parameters and build the function signature
150
- * @returns The function signature.
151
- */ decode() {
152
- return `${this.name}(${this.parameters.map((param)=>this.decodeParameter(param)).join(this.separator)})`;
153
- }
154
- }
155
- /**
156
- * Decodes a function signature from the name and parameters.
157
- * @param name - The name of the function.
158
- * @param parameters - The parameters of the function.
159
- * @returns - The function signature.
160
- */ export function decodeFunctionSignature(name, parameters) {
161
- return new FunctionSignatureDecoder(name, parameters).decode();
162
- }
163
- /**
164
- * Decodes a function signature from the name and parameters including parameter names.
165
- * @param name - The name of the function.
166
- * @param parameters - The parameters of the function.
167
- * @returns - The user-friendly function signature.
168
- */ export function decodeFunctionSignatureWithParameterNames(name, parameters) {
169
- return new FunctionSignatureDecoder(name, parameters, true).decode();
170
- }
@@ -3,7 +3,7 @@ import { poseidon2HashBytes } from '@aztec/foundation/crypto/poseidon';
3
3
  import { randomBytes } from '@aztec/foundation/crypto/random';
4
4
  import { hexSchemaFor } from '@aztec/foundation/schemas';
5
5
  import { BufferReader, FieldReader, TypeRegistry } from '@aztec/foundation/serialize';
6
- import { decodeFunctionSignature } from './decoder.js';
6
+ import { decodeFunctionSignature } from './function_signature_decoder.js';
7
7
  import { Selector } from './selector.js';
8
8
  /** A function selector is the first 4 bytes of the hash of a function signature. */ export class FunctionSelector extends Selector {
9
9
  /**
@@ -0,0 +1,43 @@
1
+ import type { ABIParameter } from './abi.js';
2
+ /**
3
+ * Decodes the signature of a function from the name and parameters.
4
+ */
5
+ export declare class FunctionSignatureDecoder {
6
+ private name;
7
+ private parameters;
8
+ private includeNames;
9
+ private separator;
10
+ constructor(name: string, parameters: ABIParameter[], includeNames?: boolean);
11
+ /**
12
+ * Decodes a single function parameter type for the function signature.
13
+ * @param param - The parameter type to decode.
14
+ * @returns A string representing the parameter type.
15
+ */
16
+ private getParameterType;
17
+ /**
18
+ * Decodes a single function parameter for the function signature.
19
+ * @param param - The parameter to decode.
20
+ * @returns A string representing the parameter type and optionally its name.
21
+ */
22
+ private decodeParameter;
23
+ /**
24
+ * Decodes all the parameters and build the function signature
25
+ * @returns The function signature.
26
+ */
27
+ decode(): string;
28
+ }
29
+ /**
30
+ * Decodes a function signature from the name and parameters.
31
+ * @param name - The name of the function.
32
+ * @param parameters - The parameters of the function.
33
+ * @returns - The function signature.
34
+ */
35
+ export declare function decodeFunctionSignature(name: string, parameters: ABIParameter[]): string;
36
+ /**
37
+ * Decodes a function signature from the name and parameters including parameter names.
38
+ * @param name - The name of the function.
39
+ * @param parameters - The parameters of the function.
40
+ * @returns - The user-friendly function signature.
41
+ */
42
+ export declare function decodeFunctionSignatureWithParameterNames(name: string, parameters: ABIParameter[]): string;
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25fc2lnbmF0dXJlX2RlY29kZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvZnVuY3Rpb25fc2lnbmF0dXJlX2RlY29kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUF3QixNQUFNLFVBQVUsQ0FBQztBQUVuRTs7R0FFRztBQUNILHFCQUFhLHdCQUF3QjtJQUdqQyxPQUFPLENBQUMsSUFBSTtJQUNaLE9BQU8sQ0FBQyxVQUFVO0lBQ2xCLE9BQU8sQ0FBQyxZQUFZO0lBSnRCLE9BQU8sQ0FBQyxTQUFTLENBQVM7SUFDMUIsWUFDVSxJQUFJLEVBQUUsTUFBTSxFQUNaLFVBQVUsRUFBRSxZQUFZLEVBQUUsRUFDMUIsWUFBWSxVQUFRLEVBRzdCO0lBRUQ7Ozs7T0FJRztJQUNILE9BQU8sQ0FBQyxnQkFBZ0I7SUFtQnhCOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsZUFBZTtJQUt2Qjs7O09BR0c7SUFDSSxNQUFNLElBQUksTUFBTSxDQUV0QjtDQUNGO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsdUJBQXVCLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBRS9FO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IseUNBQXlDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBRWpHIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"function_signature_decoder.d.ts","sourceRoot":"","sources":["../../src/abi/function_signature_decoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,qBAAa,wBAAwB;IAGjC,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,YAAY;IAJtB,OAAO,CAAC,SAAS,CAAS;IAC1B,YACU,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,YAAY,EAAE,EAC1B,YAAY,UAAQ,EAG7B;IAED;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAKvB;;;OAGG;IACI,MAAM,IAAI,MAAM,CAEtB;CACF;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAE/E;AAED;;;;;GAKG;AACH,wBAAgB,yCAAyC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAEjG"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Decodes the signature of a function from the name and parameters.
3
+ */ export class FunctionSignatureDecoder {
4
+ name;
5
+ parameters;
6
+ includeNames;
7
+ separator;
8
+ constructor(name, parameters, includeNames = false){
9
+ this.name = name;
10
+ this.parameters = parameters;
11
+ this.includeNames = includeNames;
12
+ this.separator = includeNames ? ', ' : ',';
13
+ }
14
+ /**
15
+ * Decodes a single function parameter type for the function signature.
16
+ * @param param - The parameter type to decode.
17
+ * @returns A string representing the parameter type.
18
+ */ getParameterType(param) {
19
+ switch(param.kind){
20
+ case 'field':
21
+ return 'Field';
22
+ case 'integer':
23
+ return param.sign === 'signed' ? `i${param.width}` : `u${param.width}`;
24
+ case 'boolean':
25
+ return 'bool';
26
+ case 'array':
27
+ return `[${this.getParameterType(param.type)};${param.length}]`;
28
+ case 'string':
29
+ return `str<${param.length}>`;
30
+ case 'struct':
31
+ return `(${param.fields.map((field)=>`${this.decodeParameter(field)}`).join(this.separator)})`;
32
+ default:
33
+ throw new Error(`Unsupported type: ${param.kind}`);
34
+ }
35
+ }
36
+ /**
37
+ * Decodes a single function parameter for the function signature.
38
+ * @param param - The parameter to decode.
39
+ * @returns A string representing the parameter type and optionally its name.
40
+ */ decodeParameter(param) {
41
+ const type = this.getParameterType(param.type);
42
+ return this.includeNames ? `${param.name}: ${type}` : type;
43
+ }
44
+ /**
45
+ * Decodes all the parameters and build the function signature
46
+ * @returns The function signature.
47
+ */ decode() {
48
+ return `${this.name}(${this.parameters.map((param)=>this.decodeParameter(param)).join(this.separator)})`;
49
+ }
50
+ }
51
+ /**
52
+ * Decodes a function signature from the name and parameters.
53
+ * @param name - The name of the function.
54
+ * @param parameters - The parameters of the function.
55
+ * @returns - The function signature.
56
+ */ export function decodeFunctionSignature(name, parameters) {
57
+ return new FunctionSignatureDecoder(name, parameters).decode();
58
+ }
59
+ /**
60
+ * Decodes a function signature from the name and parameters including parameter names.
61
+ * @param name - The name of the function.
62
+ * @param parameters - The parameters of the function.
63
+ * @returns - The user-friendly function signature.
64
+ */ export function decodeFunctionSignatureWithParameterNames(name, parameters) {
65
+ return new FunctionSignatureDecoder(name, parameters, true).decode();
66
+ }
@@ -1,6 +1,7 @@
1
1
  export * from './abi.js';
2
2
  export * from './buffer.js';
3
3
  export * from './decoder.js';
4
+ export * from './function_signature_decoder.js';
4
5
  export * from './encoder.js';
5
6
  export * from './authorization_selector.js';
6
7
  export * from './event_metadata_definition.js';
@@ -10,4 +11,4 @@ export * from './note_selector.js';
10
11
  export * from './utils.js';
11
12
  export * from './contract_artifact.js';
12
13
  export * from './function_call.js';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxvQkFBb0IsQ0FBQyJ9
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG9CQUFvQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iCAAiC,CAAC;AAChD,cAAc,cAAc,CAAC;AAC7B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC"}
package/dest/abi/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './abi.js';
2
2
  export * from './buffer.js';
3
3
  export * from './decoder.js';
4
+ export * from './function_signature_decoder.js';
4
5
  export * from './encoder.js';
5
6
  export * from './authorization_selector.js';
6
7
  export * from './event_metadata_definition.js';
@@ -1,6 +1,6 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { inspect } from 'util';
3
- /** A selector is the first 4 bytes of the hash of a signature. */
3
+ /** A selector is the low 4 bytes of the poseidon2 hash of a signature. */
4
4
  export declare abstract class Selector {
5
5
  value: number;
6
6
  /** The size of the selector in bytes. */
@@ -36,4 +36,4 @@ export declare abstract class Selector {
36
36
  */
37
37
  toField(): Fr;
38
38
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0Isa0VBQWtFO0FBQ2xFLDhCQUFzQixRQUFRO0lBSW9CLEtBQUssRUFBRSxNQUFNO0lBSDdELHlDQUF5QztJQUN6QyxPQUFjLElBQUksU0FBSztJQUV2QixZQUFZLDRCQUE0QixDQUFRLEtBQUssRUFBRSxNQUFNLEVBSTVEO0lBRUQ7OztPQUdHO0lBQ0ksT0FBTyxJQUFJLE9BQU8sQ0FFeEI7SUFFRDs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLFVBQVUsU0FBZ0IsR0FBRyxNQUFNLENBRTNDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsR0FBRyxPQUFPLENBRS9CO0lBRUQ7Ozs7T0FJRztJQUNJLE9BQU8sT0FFYjtDQUNGIn0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsMEVBQTBFO0FBQzFFLDhCQUFzQixRQUFRO0lBSW9CLEtBQUssRUFBRSxNQUFNO0lBSDdELHlDQUF5QztJQUN6QyxPQUFjLElBQUksU0FBSztJQUV2QixZQUFZLDRCQUE0QixDQUFRLEtBQUssRUFBRSxNQUFNLEVBSTVEO0lBRUQ7OztPQUdHO0lBQ0ksT0FBTyxJQUFJLE9BQU8sQ0FFeEI7SUFFRDs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLFVBQVUsU0FBZ0IsR0FBRyxNQUFNLENBRTNDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsR0FBRyxPQUFPLENBRS9CO0lBRUQ7Ozs7T0FJRztJQUNJLE9BQU8sT0FFYjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../src/abi/selector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,kEAAkE;AAClE,8BAAsB,QAAQ;IAIoB,KAAK,EAAE,MAAM;IAH7D,yCAAyC;IACzC,OAAc,IAAI,SAAK;IAEvB,YAAY,4BAA4B,CAAQ,KAAK,EAAE,MAAM,EAI5D;IAED;;;OAGG;IACI,OAAO,IAAI,OAAO,CAExB;IAED;;;;OAIG;IACH,QAAQ,CAAC,UAAU,SAAgB,GAAG,MAAM,CAE3C;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAE/B;IAED;;;;OAIG;IACI,OAAO,OAEb;CACF"}
1
+ {"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../src/abi/selector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,0EAA0E;AAC1E,8BAAsB,QAAQ;IAIoB,KAAK,EAAE,MAAM;IAH7D,yCAAyC;IACzC,OAAc,IAAI,SAAK;IAEvB,YAAY,4BAA4B,CAAQ,KAAK,EAAE,MAAM,EAI5D;IAED;;;OAGG;IACI,OAAO,IAAI,OAAO,CAExB;IAED;;;;OAIG;IACH,QAAQ,CAAC,UAAU,SAAgB,GAAG,MAAM,CAE3C;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAE/B;IAED;;;;OAIG;IACI,OAAO,OAEb;CACF"}
@@ -4,7 +4,7 @@ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { bufferToHex } from '@aztec/foundation/string';
5
5
  import { inspect } from 'util';
6
6
  _computedKey = inspect.custom;
7
- /** A selector is the first 4 bytes of the hash of a signature. */ export class Selector {
7
+ /** A selector is the low 4 bytes of the poseidon2 hash of a signature. */ export class Selector {
8
8
  value;
9
9
  /** The size of the selector in bytes. */ static SIZE = 4;
10
10
  constructor(/** Value of the selector */ value){
@@ -50,7 +50,7 @@ export class AvmAccumulatedData {
50
50
  }
51
51
  static fromBuffer(buffer) {
52
52
  const reader = BufferReader.asReader(buffer);
53
- return new this(reader.readArray(MAX_NOTE_HASHES_PER_TX, Fr), reader.readArray(MAX_NULLIFIERS_PER_TX, Fr), reader.readArray(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message), reader.readObject(FlatPublicLogs), reader.readArray(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite));
53
+ return new this(reader.readTuple(MAX_NOTE_HASHES_PER_TX, Fr), reader.readTuple(MAX_NULLIFIERS_PER_TX, Fr), reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message), reader.readObject(FlatPublicLogs), reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite));
54
54
  }
55
55
  toBuffer() {
56
56
  return serializeToBuffer(this.noteHashes, this.nullifiers, this.l2ToL1Msgs, this.publicLogs, this.publicDataWrites);
@@ -66,7 +66,7 @@ export class AvmAccumulatedData {
66
66
  }
67
67
  static fromFields(fields) {
68
68
  const reader = FieldReader.asReader(fields);
69
- return new this(reader.readFieldArray(MAX_NOTE_HASHES_PER_TX), reader.readFieldArray(MAX_NULLIFIERS_PER_TX), reader.readArray(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message), reader.readObject(FlatPublicLogs), reader.readArray(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite));
69
+ return new this(reader.readFieldArray(MAX_NOTE_HASHES_PER_TX), reader.readFieldArray(MAX_NULLIFIERS_PER_TX), reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message), reader.readObject(FlatPublicLogs), reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite));
70
70
  }
71
71
  toFields() {
72
72
  const fields = serializeToFields(...AvmAccumulatedData.getFields(this));
@@ -98,7 +98,7 @@ export class AvmCircuitPublicInputs {
98
98
  }
99
99
  static fromBuffer(buffer) {
100
100
  const reader = BufferReader.asReader(buffer);
101
- return new AvmCircuitPublicInputs(reader.readObject(GlobalVariables), reader.readObject(ProtocolContracts), reader.readObject(TreeSnapshots), reader.readObject(Gas), reader.readObject(GasSettings), reader.readObject(GasFees), reader.readObject(AztecAddress), reader.readObject(Fr), reader.readObject(PublicCallRequestArrayLengths), reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readObject(PublicCallRequest), reader.readObject(PrivateToAvmAccumulatedDataArrayLengths), reader.readObject(PrivateToAvmAccumulatedDataArrayLengths), reader.readObject(PrivateToAvmAccumulatedData), reader.readObject(PrivateToAvmAccumulatedData), reader.readObject(TreeSnapshots), reader.readObject(Gas), reader.readObject(AvmAccumulatedDataArrayLengths), reader.readObject(AvmAccumulatedData), reader.readObject(Fr), reader.readBoolean());
101
+ return new AvmCircuitPublicInputs(reader.readObject(GlobalVariables), reader.readObject(ProtocolContracts), reader.readObject(TreeSnapshots), reader.readObject(Gas), reader.readObject(GasSettings), reader.readObject(GasFees), reader.readObject(AztecAddress), reader.readObject(Fr), reader.readObject(PublicCallRequestArrayLengths), reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readObject(PublicCallRequest), reader.readObject(PrivateToAvmAccumulatedDataArrayLengths), reader.readObject(PrivateToAvmAccumulatedDataArrayLengths), reader.readObject(PrivateToAvmAccumulatedData), reader.readObject(PrivateToAvmAccumulatedData), reader.readObject(TreeSnapshots), reader.readObject(Gas), reader.readObject(AvmAccumulatedDataArrayLengths), reader.readObject(AvmAccumulatedData), reader.readObject(Fr), reader.readBoolean());
102
102
  }
103
103
  toBuffer() {
104
104
  return serializeToBuffer(this.globalVariables, this.protocolContracts, this.startTreeSnapshots, this.startGasUsed, this.gasSettings, this.effectiveGasFees, this.feePayer, this.proverId, this.publicCallRequestArrayLengths, this.publicSetupCallRequests, this.publicAppLogicCallRequests, this.publicTeardownCallRequest, this.previousNonRevertibleAccumulatedDataArrayLengths, this.previousRevertibleAccumulatedDataArrayLengths, this.previousNonRevertibleAccumulatedData, this.previousRevertibleAccumulatedData, this.endTreeSnapshots, this.endGasUsed, this.accumulatedDataArrayLengths, this.accumulatedData, this.transactionFee, this.reverted);
@@ -111,7 +111,7 @@ export class AvmCircuitPublicInputs {
111
111
  }
112
112
  static fromFields(fields) {
113
113
  const reader = FieldReader.asReader(fields);
114
- return new AvmCircuitPublicInputs(GlobalVariables.fromFields(reader), ProtocolContracts.fromFields(reader), TreeSnapshots.fromFields(reader), Gas.fromFields(reader), GasSettings.fromFields(reader), GasFees.fromFields(reader), AztecAddress.fromFields(reader), reader.readField(), PublicCallRequestArrayLengths.fromFields(reader), reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), PublicCallRequest.fromFields(reader), PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader), PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader), PrivateToAvmAccumulatedData.fromFields(reader), PrivateToAvmAccumulatedData.fromFields(reader), TreeSnapshots.fromFields(reader), Gas.fromFields(reader), AvmAccumulatedDataArrayLengths.fromFields(reader), AvmAccumulatedData.fromFields(reader), reader.readField(), reader.readBoolean());
114
+ return new AvmCircuitPublicInputs(GlobalVariables.fromFields(reader), ProtocolContracts.fromFields(reader), TreeSnapshots.fromFields(reader), Gas.fromFields(reader), GasSettings.fromFields(reader), GasFees.fromFields(reader), AztecAddress.fromFields(reader), reader.readField(), PublicCallRequestArrayLengths.fromFields(reader), reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest), PublicCallRequest.fromFields(reader), PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader), PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader), PrivateToAvmAccumulatedData.fromFields(reader), PrivateToAvmAccumulatedData.fromFields(reader), TreeSnapshots.fromFields(reader), Gas.fromFields(reader), AvmAccumulatedDataArrayLengths.fromFields(reader), AvmAccumulatedData.fromFields(reader), reader.readField(), reader.readBoolean());
115
115
  }
116
116
  toFields() {
117
117
  return [
@@ -2,26 +2,12 @@ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { ZodFor } from '@aztec/foundation/schemas';
3
3
  import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
4
4
  import { inspect } from 'util';
5
- /**
6
- * Tracks which revertible phases of a transaction's public execution reverted.
7
- *
8
- * A transaction executes in three sequential phases:
9
- * 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
10
- * 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
11
- * 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
12
- *
13
- * Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
14
- * entirely.
15
- */
5
+ /** Whether a transaction's public execution reverted. */
16
6
  export declare enum RevertCodeEnum {
17
7
  /** All phases completed successfully; no state was rolled back. */
18
8
  OK = 0,
19
- /** APP_LOGIC reverted; its state changes were discarded. If present, TEARDOWN still ran and succeeded. */
20
- APP_LOGIC_REVERTED = 1,
21
- /** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */
22
- TEARDOWN_REVERTED = 2,
23
- /** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */
24
- BOTH_REVERTED = 3
9
+ /** One or more revertible phases reverted; their state changes were discarded. */
10
+ REVERTED = 1
25
11
  }
26
12
  /**
27
13
  * Wrapper class over a field to safely represent a revert code.
@@ -30,8 +16,12 @@ export declare class RevertCode {
30
16
  private code;
31
17
  private constructor();
32
18
  static readonly OK: RevertCode;
19
+ static readonly REVERTED: RevertCode;
20
+ /** @deprecated Use REVERTED instead. */
33
21
  static readonly APP_LOGIC_REVERTED: RevertCode;
22
+ /** @deprecated Use REVERTED instead. */
34
23
  static readonly TEARDOWN_REVERTED: RevertCode;
24
+ /** @deprecated Use REVERTED instead. */
35
25
  static readonly BOTH_REVERTED: RevertCode;
36
26
  getCode(): RevertCodeEnum;
37
27
  equals(other: RevertCode): boolean;
@@ -67,4 +57,4 @@ export declare class RevertCode {
67
57
  static random(): RevertCode;
68
58
  [inspect.custom](): string;
69
59
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0X2NvZGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vcmV2ZXJ0X2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQjs7Ozs7Ozs7OztHQVVHO0FBQ0gsb0JBQVksY0FBYztJQUN4QixtRUFBbUU7SUFDbkUsRUFBRSxJQUFJO0lBQ04sMEdBQTBHO0lBQzFHLGtCQUFrQixJQUFJO0lBQ3RCLGdGQUFnRjtJQUNoRixpQkFBaUIsSUFBSTtJQUNyQix5RUFBeUU7SUFDekUsYUFBYSxJQUFJO0NBQ2xCO0FBV0Q7O0dBRUc7QUFDSCxxQkFBYSxVQUFVO0lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQVM7SUFDckIsT0FBTyxlQUVOO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFxQztJQUNuRSxNQUFNLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBcUQ7SUFDbkcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLENBQW9EO0lBQ2pHLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBZ0Q7SUFFbEYsT0FBTyxJQUFJLGNBQWMsQ0FFL0I7SUFFTSxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBRXhDO0lBRU0sSUFBSSxJQUFJLE9BQU8sQ0FFckI7SUFFTSxjQUFjLFdBYXBCO0lBRU0sTUFBTSxXQUVaO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLENBRXRDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFVBQVUsQ0FTM0M7SUFFRDs7Ozs7T0FLRztJQUVILE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFNO0lBQzdDLGNBQWMsSUFBSSxNQUFNLENBRzlCO0lBRUQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUs7SUFDMUMsUUFBUSxJQUFJLE1BQU0sQ0FJeEI7SUFFTSxPQUFPLElBQUksRUFBRSxDQUVuQjtJQUVNLG1CQUFtQixJQUFJLE1BQU0sQ0FFbkM7SUFFRCxPQUFjLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FLakQ7SUFFRCxPQUFjLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLFVBQVUsQ0FFN0M7SUFFRCxPQUFjLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFVBQVUsQ0FHL0Q7SUFFRCxPQUFjLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxVQUFVLENBSWxFO0lBRUQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFLO0lBQ3hDLE1BQU0sQ0FBQyxNQUFNLElBQUksVUFBVSxDQUUxQjtJQUVELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUVmO0NBQ0YifQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0X2NvZGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vcmV2ZXJ0X2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQix5REFBeUQ7QUFDekQsb0JBQVksY0FBYztJQUN4QixtRUFBbUU7SUFDbkUsRUFBRSxJQUFJO0lBQ04sa0ZBQWtGO0lBQ2xGLFFBQVEsSUFBSTtDQUNiO0FBT0Q7O0dBRUc7QUFDSCxxQkFBYSxVQUFVO0lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQVM7SUFDckIsT0FBTyxlQUVOO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFxQztJQUNuRSxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQTJDO0lBQy9FLHdDQUF3QztJQUN4QyxNQUFNLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBdUI7SUFDckUsd0NBQXdDO0lBQ3hDLE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUF1QjtJQUNwRSx3Q0FBd0M7SUFDeEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUF1QjtJQUV6RCxPQUFPLElBQUksY0FBYyxDQUUvQjtJQUVNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FFeEM7SUFFTSxJQUFJLElBQUksT0FBTyxDQUVyQjtJQUVNLGNBQWMsV0FTcEI7SUFFTSxNQUFNLFdBRVo7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FNdEM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsVUFBVSxDQVMzQztJQUVEOzs7OztPQUtHO0lBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQU07SUFDN0MsY0FBYyxJQUFJLE1BQU0sQ0FHOUI7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBSztJQUMxQyxRQUFRLElBQUksTUFBTSxDQUl4QjtJQUVNLE9BQU8sSUFBSSxFQUFFLENBRW5CO0lBRU0sbUJBQW1CLElBQUksTUFBTSxDQUVuQztJQUVELE9BQWMsVUFBVSxDQUFDLElBQUksRUFBRSxNQUFNLEdBQUcsVUFBVSxDQUtqRDtJQUVELE9BQWMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUU3QztJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLEdBQUcsVUFBVSxDQUcvRDtJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFVBQVUsQ0FJbEU7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUs7SUFDeEMsTUFBTSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBRTFCO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBRWY7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"revert_code.d.ts","sourceRoot":"","sources":["../../src/avm/revert_code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B;;;;;;;;;;GAUG;AACH,oBAAY,cAAc;IACxB,mEAAmE;IACnE,EAAE,IAAI;IACN,0GAA0G;IAC1G,kBAAkB,IAAI;IACtB,gFAAgF;IAChF,iBAAiB,IAAI;IACrB,yEAAyE;IACzE,aAAa,IAAI;CAClB;AAWD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,eAEN;IACD,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAqC;IACnE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAqD;IACnG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAoD;IACjG,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAgD;IAElF,OAAO,IAAI,cAAc,CAE/B;IAEM,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAExC;IAEM,IAAI,IAAI,OAAO,CAErB;IAEM,cAAc,WAapB;IAEM,MAAM,WAEZ;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,CAEtC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAS3C;IAED;;;;;OAKG;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IAC7C,cAAc,IAAI,MAAM,CAG9B;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAK;IAC1C,QAAQ,IAAI,MAAM,CAIxB;IAEM,OAAO,IAAI,EAAE,CAEnB;IAEM,mBAAmB,IAAI,MAAM,CAEnC;IAED,OAAc,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAKjD;IAED,OAAc,SAAS,CAAC,KAAK,EAAE,EAAE,GAAG,UAAU,CAE7C;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,UAAU,CAG/D;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAIlE;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IACxC,MAAM,CAAC,MAAM,IAAI,UAAU,CAE1B;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
1
+ {"version":3,"file":"revert_code.d.ts","sourceRoot":"","sources":["../../src/avm/revert_code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,yDAAyD;AACzD,oBAAY,cAAc;IACxB,mEAAmE;IACnE,EAAE,IAAI;IACN,kFAAkF;IAClF,QAAQ,IAAI;CACb;AAOD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,eAEN;IACD,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAqC;IACnE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAA2C;IAC/E,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAuB;IACrE,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAuB;IACpE,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAuB;IAEzD,OAAO,IAAI,cAAc,CAE/B;IAEM,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAExC;IAEM,IAAI,IAAI,OAAO,CAErB;IAEM,cAAc,WASpB;IAEM,MAAM,WAEZ;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,CAMtC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAS3C;IAED;;;;;OAKG;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IAC7C,cAAc,IAAI,MAAM,CAG9B;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAK;IAC1C,QAAQ,IAAI,MAAM,CAIxB;IAEM,OAAO,IAAI,EAAE,CAEnB;IAEM,mBAAmB,IAAI,MAAM,CAEnC;IAED,OAAc,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAKjD;IAED,OAAc,SAAS,CAAC,KAAK,EAAE,EAAE,GAAG,UAAU,CAE7C;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,UAAU,CAG/D;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAIlE;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IACxC,MAAM,CAAC,MAAM,IAAI,UAAU,CAE1B;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
@@ -3,25 +3,13 @@ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
4
4
  import { inspect } from 'util';
5
5
  import { z } from 'zod';
6
- /**
7
- * Tracks which revertible phases of a transaction's public execution reverted.
8
- *
9
- * A transaction executes in three sequential phases:
10
- * 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
11
- * 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
12
- * 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
13
- *
14
- * Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
15
- * entirely.
16
- */ export var RevertCodeEnum = /*#__PURE__*/ function(RevertCodeEnum) {
6
+ /** Whether a transaction's public execution reverted. */ export var RevertCodeEnum = /*#__PURE__*/ function(RevertCodeEnum) {
17
7
  /** All phases completed successfully; no state was rolled back. */ RevertCodeEnum[RevertCodeEnum["OK"] = 0] = "OK";
18
- /** APP_LOGIC reverted; its state changes were discarded. If present, TEARDOWN still ran and succeeded. */ RevertCodeEnum[RevertCodeEnum["APP_LOGIC_REVERTED"] = 1] = "APP_LOGIC_REVERTED";
19
- /** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */ RevertCodeEnum[RevertCodeEnum["TEARDOWN_REVERTED"] = 2] = "TEARDOWN_REVERTED";
20
- /** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */ RevertCodeEnum[RevertCodeEnum["BOTH_REVERTED"] = 3] = "BOTH_REVERTED";
8
+ /** One or more revertible phases reverted; their state changes were discarded. */ RevertCodeEnum[RevertCodeEnum["REVERTED"] = 1] = "REVERTED";
21
9
  return RevertCodeEnum;
22
10
  }({});
23
- function isRevertCodeEnum(value) {
24
- return value === 0 || value === 1 || value === 2 || value === 3;
11
+ /** Returns a valid RevertCodeEnum, coercing any value >= 1 to REVERTED. */ function toRevertCodeEnum(value) {
12
+ return value >= 1 ? 1 : 0;
25
13
  }
26
14
  _computedKey = inspect.custom;
27
15
  /**
@@ -32,9 +20,10 @@ _computedKey = inspect.custom;
32
20
  this.code = e.valueOf();
33
21
  }
34
22
  static OK = new RevertCode(0);
35
- static APP_LOGIC_REVERTED = new RevertCode(1);
36
- static TEARDOWN_REVERTED = new RevertCode(2);
37
- static BOTH_REVERTED = new RevertCode(3);
23
+ static REVERTED = new RevertCode(1);
24
+ /** @deprecated Use REVERTED instead. */ static APP_LOGIC_REVERTED = RevertCode.REVERTED;
25
+ /** @deprecated Use REVERTED instead. */ static TEARDOWN_REVERTED = RevertCode.REVERTED;
26
+ /** @deprecated Use REVERTED instead. */ static BOTH_REVERTED = RevertCode.REVERTED;
38
27
  getCode() {
39
28
  return this.code;
40
29
  }
@@ -49,11 +38,7 @@ _computedKey = inspect.custom;
49
38
  case 0:
50
39
  return 'OK';
51
40
  case 1:
52
- return 'Application logic reverted';
53
- case 2:
54
- return 'Teardown reverted';
55
- case 3:
56
- return 'Both reverted';
41
+ return 'Reverted';
57
42
  default:
58
43
  return `Unknown RevertCode: ${this.code}`;
59
44
  }
@@ -62,7 +47,7 @@ _computedKey = inspect.custom;
62
47
  return this.code;
63
48
  }
64
49
  static get schema() {
65
- return z.nativeEnum(RevertCodeEnum).transform((value)=>new RevertCode(value));
50
+ return z.number().int().min(0).transform((value)=>new RevertCode(toRevertCodeEnum(value)));
66
51
  }
67
52
  /**
68
53
  * Creates a RevertCode from a plain object without Zod validation.
@@ -75,10 +60,10 @@ _computedKey = inspect.custom;
75
60
  return obj;
76
61
  }
77
62
  const code = typeof obj === 'number' ? obj : obj.code ?? obj;
78
- if (!isRevertCodeEnum(code)) {
63
+ if (typeof code !== 'number' || code < 0) {
79
64
  throw new Error(`Invalid RevertCode: ${code}`);
80
65
  }
81
- return new RevertCode(code);
66
+ return new RevertCode(toRevertCodeEnum(code));
82
67
  }
83
68
  /**
84
69
  * Having different serialization methods allows for
@@ -106,10 +91,10 @@ _computedKey = inspect.custom;
106
91
  return this.toBuffer().length;
107
92
  }
108
93
  static fromNumber(code) {
109
- if (!isRevertCodeEnum(code)) {
94
+ if (code < 0) {
110
95
  throw new Error(`Invalid RevertCode: ${code}`);
111
96
  }
112
- return new RevertCode(code);
97
+ return new RevertCode(toRevertCodeEnum(code));
113
98
  }
114
99
  static fromField(field) {
115
100
  return RevertCode.fromNumber(field.toNumber());
@@ -123,7 +108,7 @@ _computedKey = inspect.custom;
123
108
  const code = reader.readBytes(RevertCode.PACKED_SIZE_IN_BYTES).readUInt8(0);
124
109
  return RevertCode.fromNumber(code);
125
110
  }
126
- static NUM_OPTIONS = 4;
111
+ static NUM_OPTIONS = 2;
127
112
  static random() {
128
113
  return new RevertCode(Math.floor(Math.random() * RevertCode.NUM_OPTIONS));
129
114
  }
@@ -51,9 +51,8 @@ export interface L2BlockSource {
51
51
  */
52
52
  getCheckpointedL2BlockNumber(): Promise<BlockNumber>;
53
53
  /**
54
- * Computes the finalized block number based on the proven block number.
55
- * A block is considered finalized when it's 2 epochs behind the proven block.
56
- * TODO(#13569): Compute proper finalized block number based on L1 finalized block.
54
+ * Returns the finalized L2 block number. A block is finalized when it was proven
55
+ * in an L1 block that has itself been finalized on Ethereum.
57
56
  * @returns The finalized block number.
58
57
  */
59
58
  getFinalizedL2BlockNumber(): Promise<BlockNumber>;
@@ -143,13 +142,17 @@ export interface L2BlockSource {
143
142
  */
144
143
  getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
145
144
  /**
146
- * Returns the current L2 slot number based on the currently synced L1 timestamp.
145
+ * Returns the last L2 slot number for which we have all L1 data needed to build the next checkpoint.
146
+ * Determined by the max of two signals: L1 block sync progress and latest synced checkpoint slot.
147
+ * The checkpoint signal handles missed L1 blocks, since a published checkpoint seals the message tree
148
+ * for the next checkpoint via the inbox LAG mechanism.
147
149
  */
148
- getL2SlotNumber(): Promise<SlotNumber | undefined>;
150
+ getSyncedL2SlotNumber(): Promise<SlotNumber | undefined>;
149
151
  /**
150
- * Returns the current L2 epoch number based on the currently synced L1 timestamp.
152
+ * Returns the last L2 epoch number that has been fully synchronized from L1.
153
+ * An epoch is fully synced when all its L2 slots have been fully synced.
151
154
  */
152
- getL2EpochNumber(): Promise<EpochNumber | undefined>;
155
+ getSyncedL2EpochNumber(): Promise<EpochNumber | undefined>;
153
156
  /**
154
157
  * Returns all checkpointed block headers for a given epoch.
155
158
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
@@ -556,4 +559,4 @@ export type InvalidCheckpointDetectedEvent = {
556
559
  type: 'invalidCheckpointDetected';
557
560
  validationResult: ValidateCheckpointNegativeResult;
558
561
  };
559
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8s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
562
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8s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
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_source.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"l2_block_source.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_source.ts"],"names":[],"mappings":"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"}