@aztec/stdlib 0.0.1-commit.1bea0213 → 0.0.1-commit.21ecf947b

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 (282) hide show
  1. package/dest/abi/function_call.d.ts +39 -9
  2. package/dest/abi/function_call.d.ts.map +1 -1
  3. package/dest/abi/function_call.js +20 -3
  4. package/dest/auth_witness/auth_witness.js +3 -3
  5. package/dest/block/block_hash.d.ts +14 -17
  6. package/dest/block/block_hash.d.ts.map +1 -1
  7. package/dest/block/block_hash.js +21 -34
  8. package/dest/block/block_parameter.d.ts +2 -2
  9. package/dest/block/block_parameter.d.ts.map +1 -1
  10. package/dest/block/in_block.d.ts +5 -5
  11. package/dest/block/in_block.js +2 -2
  12. package/dest/block/l2_block.d.ts +3 -2
  13. package/dest/block/l2_block.d.ts.map +1 -1
  14. package/dest/block/l2_block.js +2 -3
  15. package/dest/block/l2_block_source.d.ts +5 -4
  16. package/dest/block/l2_block_source.d.ts.map +1 -1
  17. package/dest/checkpoint/checkpoint.d.ts +16 -7
  18. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  19. package/dest/checkpoint/checkpoint.js +19 -9
  20. package/dest/checkpoint/published_checkpoint.d.ts +7 -1
  21. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  22. package/dest/config/index.d.ts +2 -1
  23. package/dest/config/index.d.ts.map +1 -1
  24. package/dest/config/index.js +1 -0
  25. package/dest/config/sequencer-config.d.ts +10 -0
  26. package/dest/config/sequencer-config.d.ts.map +1 -0
  27. package/dest/config/sequencer-config.js +12 -0
  28. package/dest/contract/contract_address.js +4 -4
  29. package/dest/contract/contract_class_id.d.ts +2 -2
  30. package/dest/contract/contract_class_id.d.ts.map +1 -1
  31. package/dest/contract/contract_class_id.js +6 -5
  32. package/dest/contract/interfaces/node-info.d.ts +3 -1
  33. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  34. package/dest/contract/interfaces/node-info.js +2 -1
  35. package/dest/contract/private_function.js +2 -2
  36. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  37. package/dest/contract/private_function_membership_proof.js +1 -1
  38. package/dest/database-version/database_version.d.ts +58 -0
  39. package/dest/database-version/database_version.d.ts.map +1 -0
  40. package/dest/database-version/database_version.js +69 -0
  41. package/dest/database-version/version_manager.d.ts +2 -50
  42. package/dest/database-version/version_manager.d.ts.map +1 -1
  43. package/dest/database-version/version_manager.js +1 -66
  44. package/dest/epoch-helpers/index.d.ts +7 -1
  45. package/dest/epoch-helpers/index.d.ts.map +1 -1
  46. package/dest/epoch-helpers/index.js +8 -2
  47. package/dest/hash/hash.d.ts +2 -1
  48. package/dest/hash/hash.d.ts.map +1 -1
  49. package/dest/hash/hash.js +16 -10
  50. package/dest/hash/map_slot.d.ts +1 -1
  51. package/dest/hash/map_slot.d.ts.map +1 -1
  52. package/dest/hash/map_slot.js +4 -3
  53. package/dest/interfaces/archiver.d.ts +1 -1
  54. package/dest/interfaces/archiver.d.ts.map +1 -1
  55. package/dest/interfaces/archiver.js +4 -3
  56. package/dest/interfaces/aztec-node-admin.d.ts +17 -2
  57. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  58. package/dest/interfaces/aztec-node-admin.js +3 -1
  59. package/dest/interfaces/aztec-node.d.ts +31 -52
  60. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  61. package/dest/interfaces/aztec-node.js +3 -7
  62. package/dest/interfaces/block-builder.d.ts +10 -4
  63. package/dest/interfaces/block-builder.d.ts.map +1 -1
  64. package/dest/interfaces/block-builder.js +7 -0
  65. package/dest/interfaces/get_logs_response.d.ts +14 -7
  66. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  67. package/dest/interfaces/p2p.d.ts +2 -2
  68. package/dest/interfaces/p2p.d.ts.map +1 -1
  69. package/dest/interfaces/prover-broker.d.ts +16 -1
  70. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  71. package/dest/interfaces/prover-broker.js +4 -1
  72. package/dest/interfaces/prover-client.d.ts +6 -1
  73. package/dest/interfaces/prover-client.d.ts.map +1 -1
  74. package/dest/interfaces/prover-client.js +5 -0
  75. package/dest/interfaces/proving-job.d.ts +202 -202
  76. package/dest/interfaces/slasher.d.ts +9 -1
  77. package/dest/interfaces/slasher.d.ts.map +1 -1
  78. package/dest/interfaces/slasher.js +2 -0
  79. package/dest/interfaces/validator.d.ts +50 -4
  80. package/dest/interfaces/validator.d.ts.map +1 -1
  81. package/dest/interfaces/validator.js +4 -1
  82. package/dest/kernel/hints/index.d.ts +2 -2
  83. package/dest/kernel/hints/index.js +2 -2
  84. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  85. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  86. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  87. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  88. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  89. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  90. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  91. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  92. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  93. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  94. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  95. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  96. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  97. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  98. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  99. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +3 -3
  100. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  101. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
  102. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  103. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  104. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  105. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  106. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  107. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  108. package/dest/kernel/private_validation_requests.d.ts +3 -3
  109. package/dest/kernel/private_validation_requests.js +9 -9
  110. package/dest/keys/derivation.d.ts +3 -3
  111. package/dest/keys/derivation.js +15 -15
  112. package/dest/keys/key_types.d.ts +3 -3
  113. package/dest/keys/key_types.d.ts.map +1 -1
  114. package/dest/keys/public_keys.js +2 -2
  115. package/dest/keys/utils.d.ts +1 -1
  116. package/dest/keys/utils.d.ts.map +1 -1
  117. package/dest/keys/utils.js +8 -4
  118. package/dest/l1-contracts/slash_factory.d.ts +1 -1
  119. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  120. package/dest/l1-contracts/slash_factory.js +1 -0
  121. package/dest/logs/extended_public_log.d.ts +12 -6
  122. package/dest/logs/extended_public_log.d.ts.map +1 -1
  123. package/dest/logs/log_id.d.ts +13 -10
  124. package/dest/logs/log_id.d.ts.map +1 -1
  125. package/dest/logs/log_id.js +17 -14
  126. package/dest/logs/siloed_tag.d.ts +1 -1
  127. package/dest/logs/siloed_tag.d.ts.map +1 -1
  128. package/dest/logs/siloed_tag.js +2 -5
  129. package/dest/messaging/l2_to_l1_membership.d.ts +2 -2
  130. package/dest/messaging/l2_to_l1_membership.js +3 -3
  131. package/dest/note/index.d.ts +1 -2
  132. package/dest/note/index.d.ts.map +1 -1
  133. package/dest/note/index.js +0 -1
  134. package/dest/p2p/block_proposal.d.ts +10 -3
  135. package/dest/p2p/block_proposal.d.ts.map +1 -1
  136. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  137. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  138. package/dest/p2p/checkpoint_attestation.js +1 -1
  139. package/dest/p2p/checkpoint_proposal.d.ts +26 -7
  140. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  141. package/dest/p2p/checkpoint_proposal.js +29 -15
  142. package/dest/p2p/consensus_payload.d.ts +12 -3
  143. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  144. package/dest/p2p/consensus_payload.js +22 -15
  145. package/dest/p2p/constants.d.ts +3 -1
  146. package/dest/p2p/constants.d.ts.map +1 -1
  147. package/dest/p2p/constants.js +1 -0
  148. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
  149. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  150. package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
  151. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
  152. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  153. package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
  154. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  155. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  156. package/dest/slashing/empire.d.ts +1 -1
  157. package/dest/slashing/empire.d.ts.map +1 -1
  158. package/dest/slashing/empire.js +2 -0
  159. package/dest/slashing/helpers.d.ts +2 -2
  160. package/dest/slashing/helpers.d.ts.map +1 -1
  161. package/dest/slashing/helpers.js +6 -0
  162. package/dest/slashing/tally.d.ts +2 -1
  163. package/dest/slashing/tally.d.ts.map +1 -1
  164. package/dest/slashing/tally.js +6 -2
  165. package/dest/slashing/types.d.ts +7 -3
  166. package/dest/slashing/types.d.ts.map +1 -1
  167. package/dest/slashing/types.js +13 -1
  168. package/dest/stats/stats.d.ts +1 -3
  169. package/dest/stats/stats.d.ts.map +1 -1
  170. package/dest/tests/factories.js +13 -13
  171. package/dest/tests/mocks.d.ts +9 -2
  172. package/dest/tests/mocks.d.ts.map +1 -1
  173. package/dest/tests/mocks.js +18 -12
  174. package/dest/timetable/index.d.ts +37 -0
  175. package/dest/timetable/index.d.ts.map +1 -0
  176. package/dest/timetable/index.js +39 -0
  177. package/dest/trees/public_data_leaf.d.ts +2 -1
  178. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  179. package/dest/trees/public_data_leaf.js +7 -6
  180. package/dest/tx/block_header.js +3 -3
  181. package/dest/tx/in_tx.d.ts +2 -2
  182. package/dest/tx/indexed_tx_effect.d.ts +3 -3
  183. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  184. package/dest/tx/indexed_tx_effect.js +2 -1
  185. package/dest/tx/protocol_contracts.d.ts +1 -1
  186. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  187. package/dest/tx/protocol_contracts.js +2 -2
  188. package/dest/tx/tx_request.js +2 -2
  189. package/dest/tx/validator/empty_validator.d.ts +2 -2
  190. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  191. package/dest/tx/validator/error_texts.d.ts +1 -1
  192. package/dest/tx/validator/error_texts.js +1 -1
  193. package/dest/tx/validator/tx_validator.d.ts +2 -2
  194. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  195. package/dest/validators/schemas.d.ts +30 -30
  196. package/dest/validators/schemas.d.ts.map +1 -1
  197. package/dest/validators/schemas.js +4 -3
  198. package/dest/validators/types.d.ts +3 -3
  199. package/dest/validators/types.d.ts.map +1 -1
  200. package/package.json +24 -12
  201. package/src/abi/function_call.ts +25 -3
  202. package/src/auth_witness/auth_witness.ts +3 -3
  203. package/src/block/block_hash.ts +25 -50
  204. package/src/block/in_block.ts +2 -2
  205. package/src/block/l2_block.ts +3 -3
  206. package/src/block/l2_block_source.ts +4 -3
  207. package/src/checkpoint/checkpoint.ts +27 -11
  208. package/src/config/index.ts +1 -0
  209. package/src/config/sequencer-config.ts +19 -0
  210. package/src/contract/contract_address.ts +4 -4
  211. package/src/contract/contract_class_id.ts +6 -5
  212. package/src/contract/interfaces/node-info.ts +3 -0
  213. package/src/contract/private_function.ts +2 -2
  214. package/src/contract/private_function_membership_proof.ts +1 -1
  215. package/src/database-version/database_version.ts +87 -0
  216. package/src/database-version/version_manager.ts +1 -77
  217. package/src/epoch-helpers/index.ts +12 -0
  218. package/src/hash/hash.ts +14 -10
  219. package/src/hash/map_slot.ts +3 -2
  220. package/src/interfaces/archiver.ts +4 -3
  221. package/src/interfaces/aztec-node-admin.ts +3 -2
  222. package/src/interfaces/aztec-node.ts +38 -89
  223. package/src/interfaces/block-builder.ts +13 -2
  224. package/src/interfaces/p2p.ts +1 -1
  225. package/src/interfaces/prover-broker.ts +22 -0
  226. package/src/interfaces/prover-client.ts +7 -0
  227. package/src/interfaces/slasher.ts +4 -0
  228. package/src/interfaces/validator.ts +12 -3
  229. package/src/kernel/hints/index.ts +2 -2
  230. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  231. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  232. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  233. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  234. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  235. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
  236. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  237. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  238. package/src/kernel/private_validation_requests.ts +8 -8
  239. package/src/keys/derivation.ts +15 -15
  240. package/src/keys/key_types.ts +6 -2
  241. package/src/keys/public_keys.ts +2 -2
  242. package/src/keys/utils.ts +8 -4
  243. package/src/l1-contracts/slash_factory.ts +1 -0
  244. package/src/logs/log_id.ts +17 -13
  245. package/src/logs/siloed_tag.ts +2 -2
  246. package/src/messaging/l2_to_l1_membership.ts +3 -3
  247. package/src/note/index.ts +0 -1
  248. package/src/p2p/block_proposal.ts +9 -2
  249. package/src/p2p/checkpoint_attestation.ts +6 -1
  250. package/src/p2p/checkpoint_proposal.ts +54 -15
  251. package/src/p2p/consensus_payload.ts +25 -12
  252. package/src/p2p/constants.ts +3 -0
  253. package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
  254. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  255. package/src/slashing/empire.ts +3 -1
  256. package/src/slashing/helpers.ts +8 -0
  257. package/src/slashing/tally.ts +8 -2
  258. package/src/slashing/types.ts +14 -0
  259. package/src/stats/stats.ts +0 -2
  260. package/src/tests/factories.ts +17 -17
  261. package/src/tests/mocks.ts +27 -14
  262. package/src/timetable/index.ts +66 -0
  263. package/src/trees/public_data_leaf.ts +11 -5
  264. package/src/tx/block_header.ts +4 -4
  265. package/src/tx/indexed_tx_effect.ts +2 -1
  266. package/src/tx/protocol_contracts.ts +2 -2
  267. package/src/tx/tx_request.ts +2 -2
  268. package/src/tx/validator/empty_validator.ts +1 -1
  269. package/src/tx/validator/error_texts.ts +1 -1
  270. package/src/tx/validator/tx_validator.ts +1 -1
  271. package/src/validators/schemas.ts +8 -1
  272. package/src/validators/types.ts +5 -4
  273. package/dest/database-version/index.d.ts +0 -2
  274. package/dest/database-version/index.d.ts.map +0 -1
  275. package/dest/database-version/index.js +0 -1
  276. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  277. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  278. package/dest/note/notes_filter.d.ts +0 -27
  279. package/dest/note/notes_filter.d.ts.map +0 -1
  280. package/dest/note/notes_filter.js +0 -11
  281. package/src/database-version/index.ts +0 -1
  282. package/src/note/notes_filter.ts +0 -38
@@ -1,40 +1,40 @@
1
1
  import { z } from 'zod';
2
- export declare const ValidatorStatusInSlotSchema: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
2
+ export declare const ValidatorStatusInSlotSchema: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
3
3
  export declare const ValidatorStatusHistorySchema: z.ZodArray<z.ZodObject<{
4
4
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
5
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
5
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
6
6
  }, "strip", z.ZodTypeAny, {
7
7
  slot: number & {
8
8
  _branding: "SlotNumber";
9
9
  };
10
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
10
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
11
11
  }, {
12
12
  slot: string | number | bigint;
13
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
13
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
14
14
  }>, "many">;
15
15
  export declare const ValidatorStatusHistorySchemaArray: z.ZodArray<z.ZodArray<z.ZodObject<{
16
16
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
17
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
17
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
18
18
  }, "strip", z.ZodTypeAny, {
19
19
  slot: number & {
20
20
  _branding: "SlotNumber";
21
21
  };
22
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
22
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
23
23
  }, {
24
24
  slot: string | number | bigint;
25
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
25
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
26
26
  }>, "many">, "many">;
27
27
  export declare const ValidatorStatusHistorySchemaMap: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodArray<z.ZodObject<{
28
28
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
29
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
29
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
30
30
  }, "strip", z.ZodTypeAny, {
31
31
  slot: number & {
32
32
  _branding: "SlotNumber";
33
33
  };
34
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
34
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
35
35
  }, {
36
36
  slot: string | number | bigint;
37
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
37
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
38
38
  }>, "many">, "many">>;
39
39
  export declare const ValidatorStatsSchema: z.ZodObject<{
40
40
  address: z.ZodType<import("@aztec/foundation/eth-address").EthAddress, any, string>;
@@ -103,15 +103,15 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
103
103
  }>;
104
104
  history: z.ZodArray<z.ZodObject<{
105
105
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
106
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
106
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
107
107
  }, "strip", z.ZodTypeAny, {
108
108
  slot: number & {
109
109
  _branding: "SlotNumber";
110
110
  };
111
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
111
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
112
112
  }, {
113
113
  slot: string | number | bigint;
114
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
114
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
115
115
  }>, "many">;
116
116
  }, "strip", z.ZodTypeAny, {
117
117
  address: import("@aztec/foundation/eth-address").EthAddress;
@@ -146,7 +146,7 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
146
146
  slot: number & {
147
147
  _branding: "SlotNumber";
148
148
  };
149
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
149
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
150
150
  }[];
151
151
  }, {
152
152
  address: string;
@@ -175,7 +175,7 @@ export declare const ValidatorStatsSchema: z.ZodObject<{
175
175
  };
176
176
  history: {
177
177
  slot: string | number | bigint;
178
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
178
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
179
179
  }[];
180
180
  }>;
181
181
  export declare const ValidatorsStatsSchema: z.ZodObject<{
@@ -246,15 +246,15 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
246
246
  }>;
247
247
  history: z.ZodArray<z.ZodObject<{
248
248
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
249
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
249
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
250
250
  }, "strip", z.ZodTypeAny, {
251
251
  slot: number & {
252
252
  _branding: "SlotNumber";
253
253
  };
254
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
254
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
255
255
  }, {
256
256
  slot: string | number | bigint;
257
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
257
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
258
258
  }>, "many">;
259
259
  }, "strip", z.ZodTypeAny, {
260
260
  address: import("@aztec/foundation/eth-address").EthAddress;
@@ -289,7 +289,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
289
289
  slot: number & {
290
290
  _branding: "SlotNumber";
291
291
  };
292
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
292
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
293
293
  }[];
294
294
  }, {
295
295
  address: string;
@@ -318,7 +318,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
318
318
  };
319
319
  history: {
320
320
  slot: string | number | bigint;
321
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
321
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
322
322
  }[];
323
323
  }>>;
324
324
  lastProcessedSlot: z.ZodOptional<z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>>;
@@ -358,7 +358,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
358
358
  slot: number & {
359
359
  _branding: "SlotNumber";
360
360
  };
361
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
361
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
362
362
  }[];
363
363
  }>;
364
364
  lastProcessedSlot?: import("@aztec/foundation/schemas").SlotNumber | undefined;
@@ -392,7 +392,7 @@ export declare const ValidatorsStatsSchema: z.ZodObject<{
392
392
  };
393
393
  history: {
394
394
  slot: string | number | bigint;
395
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
395
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
396
396
  }[];
397
397
  }>;
398
398
  lastProcessedSlot?: string | number | bigint | undefined;
@@ -467,15 +467,15 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
467
467
  }>;
468
468
  history: z.ZodArray<z.ZodObject<{
469
469
  slot: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/schemas").SlotNumber, string | number | bigint>;
470
- status: z.ZodEnum<["block-mined", "block-proposed", "block-missed", "attestation-sent", "attestation-missed"]>;
470
+ status: z.ZodEnum<["checkpoint-mined", "checkpoint-proposed", "checkpoint-missed", "blocks-missed", "attestation-sent", "attestation-missed"]>;
471
471
  }, "strip", z.ZodTypeAny, {
472
472
  slot: number & {
473
473
  _branding: "SlotNumber";
474
474
  };
475
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
475
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
476
476
  }, {
477
477
  slot: string | number | bigint;
478
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
478
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
479
479
  }>, "many">;
480
480
  }, "strip", z.ZodTypeAny, {
481
481
  address: import("@aztec/foundation/eth-address").EthAddress;
@@ -510,7 +510,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
510
510
  slot: number & {
511
511
  _branding: "SlotNumber";
512
512
  };
513
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
513
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
514
514
  }[];
515
515
  }, {
516
516
  address: string;
@@ -539,7 +539,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
539
539
  };
540
540
  history: {
541
541
  slot: string | number | bigint;
542
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
542
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
543
543
  }[];
544
544
  }>;
545
545
  allTimeProvenPerformance: z.ZodArray<z.ZodObject<{
@@ -594,7 +594,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
594
594
  slot: number & {
595
595
  _branding: "SlotNumber";
596
596
  };
597
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
597
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
598
598
  }[];
599
599
  };
600
600
  allTimeProvenPerformance: {
@@ -635,7 +635,7 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
635
635
  };
636
636
  history: {
637
637
  slot: string | number | bigint;
638
- status: "attestation-missed" | "attestation-sent" | "block-mined" | "block-missed" | "block-proposed";
638
+ status: "attestation-missed" | "attestation-sent" | "blocks-missed" | "checkpoint-mined" | "checkpoint-missed" | "checkpoint-proposed";
639
639
  }[];
640
640
  };
641
641
  allTimeProvenPerformance: {
@@ -647,4 +647,4 @@ export declare const SingleValidatorStatsSchema: z.ZodObject<{
647
647
  initialSlot?: string | number | bigint | undefined;
648
648
  slotWindow: string | number | bigint;
649
649
  }>;
650
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhbGlkYXRvcnMvc2NoZW1hcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBV3hCLGVBQU8sTUFBTSwyQkFBMkIsd0dBRXZDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7OztXQU94QyxDQUFDO0FBRUYsZUFBTyxNQUFNLGlDQUFpQzs7Ozs7Ozs7Ozs7b0JBQXdDLENBQUM7QUFFdkYsZUFBTyxNQUFNLCtCQUErQjs7Ozs7Ozs7Ozs7cUJBQThDLENBQUM7QUFpQjNGLGVBQU8sTUFBTSxvQkFBb0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVVoQyxDQUFDO0FBRUYsZUFBTyxNQUFNLHFCQUFxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQU9qQyxDQUFDO0FBRUYsZUFBTyxNQUFNLDBCQUEwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWN0QyxDQUFDIn0=
650
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhbGlkYXRvcnMvc2NoZW1hcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBV3hCLGVBQU8sTUFBTSwyQkFBMkIsd0lBU3ZDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7OztXQU94QyxDQUFDO0FBRUYsZUFBTyxNQUFNLGlDQUFpQzs7Ozs7Ozs7Ozs7b0JBQXdDLENBQUM7QUFFdkYsZUFBTyxNQUFNLCtCQUErQjs7Ozs7Ozs7Ozs7cUJBQThDLENBQUM7QUFpQjNGLGVBQU8sTUFBTSxvQkFBb0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVVoQyxDQUFDO0FBRUYsZUFBTyxNQUFNLHFCQUFxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQU9qQyxDQUFDO0FBRUYsZUFBTyxNQUFNLDBCQUEwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWN0QyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validators/schemas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,2BAA2B,wGAEvC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;WAOxC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;oBAAwC,CAAC;AAEvF,eAAO,MAAM,+BAA+B;;;;;;;;;;;qBAA8C,CAAC;AAiB3F,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EActC,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/validators/schemas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,2BAA2B,wIASvC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;WAOxC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;oBAAwC,CAAC;AAEvF,eAAO,MAAM,+BAA+B;;;;;;;;;;;qBAA8C,CAAC;AAiB3F,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EActC,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { schemas, zodFor } from '@aztec/foundation/schemas';
2
2
  import { z } from 'zod';
3
3
  export const ValidatorStatusInSlotSchema = zodFor()(z.enum([
4
- 'block-mined',
5
- 'block-proposed',
6
- 'block-missed',
4
+ 'checkpoint-mined',
5
+ 'checkpoint-proposed',
6
+ 'checkpoint-missed',
7
+ 'blocks-missed',
7
8
  'attestation-sent',
8
9
  'attestation-missed'
9
10
  ]));
@@ -1,7 +1,7 @@
1
1
  import type { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import type { EthAddress } from '@aztec/foundation/eth-address';
3
- export type ValidatorStatusType = 'block' | 'attestation';
4
- export type ValidatorStatusInSlot = 'block-mined' | 'block-proposed' | 'block-missed' | 'attestation-sent' | 'attestation-missed';
3
+ export type ValidatorStatusType = 'proposer' | 'attestation';
4
+ export type ValidatorStatusInSlot = 'checkpoint-mined' | 'checkpoint-proposed' | 'checkpoint-missed' | 'blocks-missed' | 'attestation-sent' | 'attestation-missed';
5
5
  export type ValidatorStatusHistory = {
6
6
  slot: SlotNumber;
7
7
  status: ValidatorStatusInSlot;
@@ -50,4 +50,4 @@ export type SingleValidatorStats = {
50
50
  initialSlot?: SlotNumber;
51
51
  slotWindow: number;
52
52
  };
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0b3JzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxNQUFNLE1BQU0sbUJBQW1CLEdBQUcsT0FBTyxHQUFHLGFBQWEsQ0FBQztBQUUxRCxNQUFNLE1BQU0scUJBQXFCLEdBQzdCLGFBQWEsR0FDYixnQkFBZ0IsR0FDaEIsY0FBYyxHQUNkLGtCQUFrQixHQUNsQixvQkFBb0IsQ0FBQztBQUV6QixNQUFNLE1BQU0sc0JBQXNCLEdBQUc7SUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDO0lBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFBO0NBQUUsRUFBRSxDQUFDO0FBRTNGLE1BQU0sTUFBTSxvQkFBb0IsR0FBRztJQUNqQyxhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNkLEtBQUssRUFBRSxNQUFNLENBQUM7SUFDZCxLQUFLLEVBQUUsTUFBTSxDQUFDO0NBQ2YsQ0FBQztBQUVGLE1BQU0sTUFBTSxjQUFjLEdBQUc7SUFDM0IsT0FBTyxFQUFFLFVBQVUsQ0FBQztJQUNwQixZQUFZLENBQUMsRUFBRTtRQUFFLFNBQVMsRUFBRSxNQUFNLENBQUM7UUFBQyxJQUFJLEVBQUUsVUFBVSxDQUFDO1FBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBQUM7SUFDckUsZUFBZSxDQUFDLEVBQUU7UUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDO1FBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQztRQUFDLElBQUksRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0lBQ3hFLFVBQVUsRUFBRSxNQUFNLENBQUM7SUFDbkIsZUFBZSxFQUFFLG9CQUFvQixDQUFDO0lBQ3RDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDO0lBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsQ0FBQztDQUNqQyxDQUFDO0FBRUYsTUFBTSxNQUFNLGVBQWUsR0FBRztJQUM1QixLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN0QyxpQkFBaUIsQ0FBQyxFQUFFLFVBQVUsQ0FBQztJQUMvQixXQUFXLENBQUMsRUFBRSxVQUFVLENBQUM7SUFDekIsVUFBVSxFQUFFLE1BQU0sQ0FBQztDQUNwQixDQUFDO0FBRUYsTUFBTSxNQUFNLDBCQUEwQixHQUFHLE1BQU0sQ0FBQyxLQUFLLE1BQU0sRUFBRSxFQUFFO0lBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUFDLEtBQUssRUFBRSxNQUFNLENBQUE7Q0FBRSxDQUFDLENBQUM7QUFFbEcsTUFBTSxNQUFNLG9CQUFvQixHQUFHO0lBQ2pDLFNBQVMsRUFBRSxjQUFjLENBQUM7SUFDMUIsd0JBQXdCLEVBQUU7UUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztRQUFDLEtBQUssRUFBRSxXQUFXLENBQUE7S0FBRSxFQUFFLENBQUM7SUFDbEYsaUJBQWlCLENBQUMsRUFBRSxVQUFVLENBQUM7SUFDL0IsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUM7Q0FDcEIsQ0FBQyJ9
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0b3JzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxNQUFNLE1BQU0sbUJBQW1CLEdBQUcsVUFBVSxHQUFHLGFBQWEsQ0FBQztBQUU3RCxNQUFNLE1BQU0scUJBQXFCLEdBQzdCLGtCQUFrQixHQUNsQixxQkFBcUIsR0FDckIsbUJBQW1CLEdBQ25CLGVBQWUsR0FDZixrQkFBa0IsR0FDbEIsb0JBQW9CLENBQUM7QUFFekIsTUFBTSxNQUFNLHNCQUFzQixHQUFHO0lBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQztJQUFDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQTtDQUFFLEVBQUUsQ0FBQztBQUUzRixNQUFNLE1BQU0sb0JBQW9CLEdBQUc7SUFDakMsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixJQUFJLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDZCxLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2QsS0FBSyxFQUFFLE1BQU0sQ0FBQztDQUNmLENBQUM7QUFFRixNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLE9BQU8sRUFBRSxVQUFVLENBQUM7SUFDcEIsWUFBWSxDQUFDLEVBQUU7UUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDO1FBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQztRQUFDLElBQUksRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0lBQ3JFLGVBQWUsQ0FBQyxFQUFFO1FBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQztRQUFDLElBQUksRUFBRSxVQUFVLENBQUM7UUFBQyxJQUFJLEVBQUUsTUFBTSxDQUFBO0tBQUUsQ0FBQztJQUN4RSxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztJQUN0QyxrQkFBa0IsRUFBRSxvQkFBb0IsQ0FBQztJQUN6QyxPQUFPLEVBQUUsc0JBQXNCLENBQUM7Q0FDakMsQ0FBQztBQUVGLE1BQU0sTUFBTSxlQUFlLEdBQUc7SUFDNUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEMsaUJBQWlCLENBQUMsRUFBRSxVQUFVLENBQUM7SUFDL0IsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxNQUFNLENBQUM7Q0FDcEIsQ0FBQztBQUVGLE1BQU0sTUFBTSwwQkFBMEIsR0FBRyxNQUFNLENBQUMsS0FBSyxNQUFNLEVBQUUsRUFBRTtJQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsQ0FBQyxDQUFDO0FBRWxHLE1BQU0sTUFBTSxvQkFBb0IsR0FBRztJQUNqQyxTQUFTLEVBQUUsY0FBYyxDQUFDO0lBQzFCLHdCQUF3QixFQUFFO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7UUFBQyxLQUFLLEVBQUUsV0FBVyxDQUFBO0tBQUUsRUFBRSxDQUFDO0lBQ2xGLGlCQUFpQixDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQy9CLFdBQVcsQ0FBQyxFQUFFLFVBQVUsQ0FBQztJQUN6QixVQUFVLEVBQUUsTUFBTSxDQUFDO0NBQ3BCLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,aAAa,CAAC;AAE1D,MAAM,MAAM,qBAAqB,GAC7B,aAAa,GACb,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,EAAE,CAAC;AAE3F,MAAM,MAAM,oBAAoB,GAAG;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,UAAU,CAAC;IACpB,YAAY,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,eAAe,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,oBAAoB,CAAC;IACtC,kBAAkB,EAAE,oBAAoB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAElG,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,cAAc,CAAC;IAC1B,wBAAwB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,EAAE,CAAC;IAClF,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,aAAa,CAAC;AAE7D,MAAM,MAAM,qBAAqB,GAC7B,kBAAkB,GAClB,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,EAAE,CAAC;AAE3F,MAAM,MAAM,oBAAoB,GAAG;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,UAAU,CAAC;IACpB,YAAY,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,eAAe,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,oBAAoB,CAAC;IACtC,kBAAkB,EAAE,oBAAoB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,KAAK,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAElG,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,cAAc,CAAC;IAC1B,wBAAwB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,EAAE,CAAC;IAClF,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "0.0.1-commit.1bea0213",
3
+ "version": "0.0.1-commit.21ecf947b",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -52,7 +52,8 @@
52
52
  "./epoch-helpers": "./dest/epoch-helpers/index.js",
53
53
  "./config": "./dest/config/index.js",
54
54
  "./testing/jest": "./dest/tests/jest.js",
55
- "./database-version": "./dest/database-version/index.js",
55
+ "./database-version/version": "./dest/database-version/database_version.js",
56
+ "./database-version/manager": "./dest/database-version/version_manager.js",
56
57
  "./validators": "./dest/validators/index.js",
57
58
  "./file-store": "./dest/file-store/index.js",
58
59
  "./snapshots": "./dest/snapshots/index.js",
@@ -60,11 +61,22 @@
60
61
  "./zkpassport": "./dest/zkpassport/index.js",
61
62
  "./slashing": "./dest/slashing/index.js",
62
63
  "./l1-contracts": "./dest/l1-contracts/index.js",
63
- "./world-state": "./dest/world-state/index.js"
64
+ "./world-state": "./dest/world-state/index.js",
65
+ "./timetable": "./dest/timetable/index.js"
64
66
  },
65
67
  "typedocOptions": {
66
68
  "entryPoints": [
67
- "./src/index.ts"
69
+ "./src/abi/index.ts",
70
+ "./src/aztec-address/index.ts",
71
+ "./src/block/index.ts",
72
+ "./src/contract/index.ts",
73
+ "./src/gas/index.ts",
74
+ "./src/hash/index.ts",
75
+ "./src/keys/index.ts",
76
+ "./src/logs/index.ts",
77
+ "./src/note/index.ts",
78
+ "./src/proofs/index.ts",
79
+ "./src/tx/index.ts"
68
80
  ],
69
81
  "name": "stdlib",
70
82
  "tsconfig": "./tsconfig.json"
@@ -78,14 +90,14 @@
78
90
  },
79
91
  "dependencies": {
80
92
  "@aws-sdk/client-s3": "^3.892.0",
81
- "@aztec/bb.js": "0.0.1-commit.1bea0213",
82
- "@aztec/blob-lib": "0.0.1-commit.1bea0213",
83
- "@aztec/constants": "0.0.1-commit.1bea0213",
84
- "@aztec/ethereum": "0.0.1-commit.1bea0213",
85
- "@aztec/foundation": "0.0.1-commit.1bea0213",
86
- "@aztec/l1-artifacts": "0.0.1-commit.1bea0213",
87
- "@aztec/noir-noirc_abi": "0.0.1-commit.1bea0213",
88
- "@aztec/validator-ha-signer": "0.0.1-commit.1bea0213",
93
+ "@aztec/bb.js": "0.0.1-commit.21ecf947b",
94
+ "@aztec/blob-lib": "0.0.1-commit.21ecf947b",
95
+ "@aztec/constants": "0.0.1-commit.21ecf947b",
96
+ "@aztec/ethereum": "0.0.1-commit.21ecf947b",
97
+ "@aztec/foundation": "0.0.1-commit.21ecf947b",
98
+ "@aztec/l1-artifacts": "0.0.1-commit.21ecf947b",
99
+ "@aztec/noir-noirc_abi": "0.0.1-commit.21ecf947b",
100
+ "@aztec/validator-ha-signer": "0.0.1-commit.21ecf947b",
89
101
  "@google-cloud/storage": "^7.15.0",
90
102
  "axios": "^1.12.0",
91
103
  "json-stringify-deterministic": "1.0.12",
@@ -1,8 +1,11 @@
1
1
  import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { FieldsOf } from '@aztec/foundation/types';
3
3
 
4
+ import { z } from 'zod';
5
+
4
6
  import { AztecAddress } from '../aztec-address/index.js';
5
- import { type AbiType, FunctionType } from './abi.js';
7
+ import { schemas } from '../schemas/index.js';
8
+ import { type AbiType, AbiTypeSchema, FunctionType } from './abi.js';
6
9
  import { FunctionSelector } from './function_selector.js';
7
10
 
8
11
  /** A request to call a function on a contract. */
@@ -43,12 +46,31 @@ export class FunctionCall {
43
46
  return new FunctionCall(...FunctionCall.getFields(fields));
44
47
  }
45
48
 
49
+ static get schema() {
50
+ return z
51
+ .object({
52
+ name: z.string(),
53
+ to: schemas.AztecAddress,
54
+ selector: schemas.FunctionSelector,
55
+ type: z.nativeEnum(FunctionType),
56
+ isStatic: z.boolean(),
57
+ hideMsgSender: z.boolean(),
58
+ args: z.array(schemas.Fr),
59
+ returnTypes: z.array(AbiTypeSchema),
60
+ })
61
+ .transform(FunctionCall.from);
62
+ }
63
+
64
+ public isPublicStatic(): boolean {
65
+ return this.type === FunctionType.PUBLIC && this.isStatic;
66
+ }
67
+
46
68
  /**
47
69
  * Creates an empty function call.
48
70
  * @returns an empty function call.
49
71
  */
50
72
  public static empty() {
51
- return {
73
+ return FunctionCall.from({
52
74
  name: '',
53
75
  to: AztecAddress.ZERO,
54
76
  selector: FunctionSelector.empty(),
@@ -57,6 +79,6 @@ export class FunctionCall {
57
79
  isStatic: false,
58
80
  args: [],
59
81
  returnTypes: [],
60
- };
82
+ });
61
83
  }
62
84
  }
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -61,7 +61,7 @@ export class AuthWitness {
61
61
  * @returns The inner hash for the witness
62
62
  */
63
63
  export const computeInnerAuthWitHash = (args: Fr[]) => {
64
- return poseidon2HashWithSeparator(args, GeneratorIndex.AUTHWIT_INNER);
64
+ return poseidon2HashWithSeparator(args, DomainSeparator.AUTHWIT_INNER);
65
65
  };
66
66
 
67
67
  /**
@@ -77,5 +77,5 @@ export const computeInnerAuthWitHash = (args: Fr[]) => {
77
77
  * @returns The outer hash for the witness
78
78
  */
79
79
  export const computeOuterAuthWitHash = (consumer: AztecAddress, chainId: Fr, version: Fr, innerHash: Fr) => {
80
- return poseidon2HashWithSeparator([consumer.toField(), chainId, version, innerHash], GeneratorIndex.AUTHWIT_OUTER);
80
+ return poseidon2HashWithSeparator([consumer.toField(), chainId, version, innerHash], DomainSeparator.AUTHWIT_OUTER);
81
81
  };
@@ -1,70 +1,45 @@
1
- import { Buffer32 } from '@aztec/foundation/buffer';
2
1
  import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { BufferReader } from '@aztec/foundation/serialize';
2
+ import type { ZodFor } from '@aztec/foundation/schemas';
4
3
 
5
- import { schemas } from '../schemas/schemas.js';
4
+ import { inspect } from 'util';
6
5
 
7
- /** Hash of an L2 block. */
8
- export class BlockHash extends Buffer32 {
9
- constructor(
10
- /** The buffer containing the hash. */
11
- hash: Buffer,
12
- ) {
13
- super(hash);
14
- }
6
+ import { hexSchemaFor } from '../schemas/schemas.js';
15
7
 
16
- /**
17
- * Type guard that checks if a value is an BlockHash instance.
18
- * Uses duck typing to handle cases where instanceof fails due to module duplication.
19
- * Checks for Buffer32-like structure with a 32-byte buffer.
20
- */
21
- static isL2BlockHash(value: unknown): value is BlockHash {
22
- if (value instanceof BlockHash) {
23
- return true;
24
- }
25
- // Duck typing fallback: check if it looks like a Buffer32 with a 32-byte buffer
26
- // This helps when instanceof fails due to module duplication
27
- return (
28
- typeof value === 'object' &&
29
- value !== null &&
30
- 'buffer' in value &&
31
- Buffer.isBuffer((value as Buffer32).buffer) &&
32
- (value as Buffer32).buffer.length === 32 &&
33
- 'toBuffer' in value &&
34
- typeof (value as Buffer32).toBuffer === 'function'
35
- );
36
- }
8
+ const BLOCK_HASH_BRAND = Symbol.for('aztec.BlockHash');
37
9
 
38
- static override random() {
39
- return new BlockHash(Fr.random().toBuffer());
40
- }
10
+ /** Hash of an L2 block. */
11
+ export class BlockHash extends Fr {
12
+ readonly [BLOCK_HASH_BRAND] = true as const;
41
13
 
42
- static override fromNumber(num: number): BlockHash {
43
- return new BlockHash(super.fromNumber(num).toBuffer());
14
+ constructor(hash: Fr) {
15
+ super(hash);
44
16
  }
45
17
 
46
- static override fromBuffer(buffer: Buffer | BufferReader) {
47
- const reader = BufferReader.asReader(buffer);
48
- return new BlockHash(reader.readBytes(BlockHash.SIZE));
18
+ override [inspect.custom]() {
19
+ return `BlockHash<${this.toString()}>`;
49
20
  }
50
21
 
51
- static override fromString(str: string): BlockHash {
52
- return new BlockHash(super.fromString(str).toBuffer());
22
+ toFr(): Fr {
23
+ return new Fr(this.toBigInt());
53
24
  }
54
25
 
55
- static get schema() {
56
- return schemas.BufferHex.transform(value => new BlockHash(value));
26
+ /**
27
+ * Type guard that checks if a value is a BlockHash instance.
28
+ * Uses Symbol.for to ensure cross-module compatibility.
29
+ */
30
+ static isBlockHash(value: unknown): value is BlockHash {
31
+ return typeof value === 'object' && value !== null && BLOCK_HASH_BRAND in value;
57
32
  }
58
33
 
59
- static zero() {
60
- return new BlockHash(Buffer32.ZERO.toBuffer());
34
+ static override random() {
35
+ return new BlockHash(Fr.random());
61
36
  }
62
37
 
63
- static override fromField(hash: Fr) {
64
- return new BlockHash(hash.toBuffer());
38
+ static override fromString(str: string): BlockHash {
39
+ return new BlockHash(Fr.fromString(str));
65
40
  }
66
41
 
67
- toField(): Fr {
68
- return Fr.fromBuffer(this.toBuffer());
42
+ static override get schema() {
43
+ return hexSchemaFor(BlockHash) as ZodFor<BlockHash>;
69
44
  }
70
45
  }
@@ -17,7 +17,7 @@ export type DataInBlock<T> = {
17
17
 
18
18
  export function randomInBlock(): InBlock {
19
19
  return {
20
- l2BlockNumber: BlockNumber(Math.floor(Math.random() * 1000)),
20
+ l2BlockNumber: BlockNumber(Math.floor(Math.random() * 1000) + 1),
21
21
  l2BlockHash: BlockHash.random(),
22
22
  };
23
23
  }
@@ -33,7 +33,7 @@ export async function wrapDataInBlock<T>(data: T, block: L2Block): Promise<DataI
33
33
  return {
34
34
  data,
35
35
  l2BlockNumber: block.number,
36
- l2BlockHash: BlockHash.fromField(await block.hash()),
36
+ l2BlockHash: await block.hash(),
37
37
  };
38
38
  }
39
39
 
@@ -15,6 +15,7 @@ import { z } from 'zod';
15
15
  import type { PrivateLog } from '../logs/private_log.js';
16
16
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
17
17
  import { BlockHeader } from '../tx/block_header.js';
18
+ import type { BlockHash } from './block_hash.js';
18
19
  import { Body } from './body.js';
19
20
  import type { L2BlockInfo } from './l2_block_info.js';
20
21
 
@@ -89,9 +90,8 @@ export class L2Block {
89
90
  * Returns the block's hash (hash of block header).
90
91
  * @returns The block's hash.
91
92
  */
92
- public async hash(): Promise<Fr> {
93
- const blockHash = await this.header.hash();
94
- return blockHash.toField();
93
+ public hash(): Promise<BlockHash> {
94
+ return this.header.hash();
95
95
  }
96
96
 
97
97
  /**
@@ -20,6 +20,7 @@ import type { BlockHeader } from '../tx/block_header.js';
20
20
  import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
21
21
  import type { TxHash } from '../tx/tx_hash.js';
22
22
  import type { TxReceipt } from '../tx/tx_receipt.js';
23
+ import type { BlockHash } from './block_hash.js';
23
24
  import type { CheckpointedL2Block } from './checkpointed_l2_block.js';
24
25
  import type { L2Block } from './l2_block.js';
25
26
  import type { ValidateCheckpointNegativeResult, ValidateCheckpointResult } from './validate_block_result.js';
@@ -102,7 +103,7 @@ export interface L2BlockSource {
102
103
  * @param blockHash - The block hash to retrieve.
103
104
  * @returns The requested block header (or undefined if not found).
104
105
  */
105
- getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
106
+ getBlockHeaderByHash(blockHash: BlockHash): Promise<BlockHeader | undefined>;
106
107
 
107
108
  /**
108
109
  * Gets a block header by its archive root.
@@ -123,7 +124,7 @@ export interface L2BlockSource {
123
124
  * @param blockHash - The block hash to retrieve.
124
125
  * @returns The requested L2 block (or undefined if not found).
125
126
  */
126
- getL2BlockByHash(blockHash: Fr): Promise<L2Block | undefined>;
127
+ getL2BlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
127
128
 
128
129
  /**
129
130
  * Gets an L2 block by its archive root.
@@ -228,7 +229,7 @@ export interface L2BlockSource {
228
229
  * @param blockHash - The block hash to retrieve.
229
230
  * @returns The requested block (or undefined if not found).
230
231
  */
231
- getCheckpointedBlockByHash(blockHash: Fr): Promise<CheckpointedL2Block | undefined>;
232
+ getCheckpointedBlockByHash(blockHash: BlockHash): Promise<CheckpointedL2Block | undefined>;
232
233
 
233
234
  /**
234
235
  * Gets a checkpointed block by its archive root.