@aztec/stdlib 4.0.0-nightly.20260112 → 4.0.0-nightly.20260114

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 (219) hide show
  1. package/dest/abi/utils.d.ts +7 -1
  2. package/dest/abi/utils.d.ts.map +1 -1
  3. package/dest/abi/utils.js +7 -0
  4. package/dest/avm/avm.d.ts +300 -300
  5. package/dest/block/attestation_info.d.ts +5 -5
  6. package/dest/block/attestation_info.d.ts.map +1 -1
  7. package/dest/block/attestation_info.js +4 -4
  8. package/dest/block/body.d.ts +1 -1
  9. package/dest/block/body.d.ts.map +1 -1
  10. package/dest/block/body.js +2 -1
  11. package/dest/block/checkpointed_l2_block.d.ts +1 -1
  12. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  13. package/dest/block/checkpointed_l2_block.js +5 -4
  14. package/dest/block/l2_block.d.ts +6 -3
  15. package/dest/block/l2_block.d.ts.map +1 -1
  16. package/dest/block/l2_block.js +3 -3
  17. package/dest/block/l2_block_code_to_purge.d.ts +1 -1
  18. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  19. package/dest/block/l2_block_code_to_purge.js +1 -1
  20. package/dest/block/l2_block_header.d.ts +6 -2
  21. package/dest/block/l2_block_header.d.ts.map +1 -1
  22. package/dest/block/l2_block_header.js +14 -7
  23. package/dest/block/l2_block_new.d.ts +1 -2
  24. package/dest/block/l2_block_new.d.ts.map +1 -1
  25. package/dest/block/l2_block_new.js +4 -1
  26. package/dest/block/l2_block_source.d.ts +247 -42
  27. package/dest/block/l2_block_source.d.ts.map +1 -1
  28. package/dest/block/l2_block_source.js +23 -5
  29. package/dest/block/l2_block_stream/index.d.ts +2 -1
  30. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  31. package/dest/block/l2_block_stream/index.js +1 -0
  32. package/dest/block/l2_block_stream/interfaces.d.ts +16 -5
  33. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  34. package/dest/block/l2_block_stream/l2_block_stream.d.ts +4 -2
  35. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  36. package/dest/block/l2_block_stream/l2_block_stream.js +102 -30
  37. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  38. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  39. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  40. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  41. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  42. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  43. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  44. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  45. package/dest/block/test/l2_tips_store_test_suite.js +483 -38
  46. package/dest/block/validate_block_result.d.ts +24 -24
  47. package/dest/block/validate_block_result.d.ts.map +1 -1
  48. package/dest/block/validate_block_result.js +18 -17
  49. package/dest/checkpoint/checkpoint.d.ts +2 -1
  50. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  51. package/dest/checkpoint/checkpoint.js +11 -1
  52. package/dest/checkpoint/checkpoint_info.d.ts +32 -3
  53. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  54. package/dest/checkpoint/checkpoint_info.js +34 -1
  55. package/dest/checkpoint/index.d.ts +2 -1
  56. package/dest/checkpoint/index.d.ts.map +1 -1
  57. package/dest/checkpoint/index.js +1 -0
  58. package/dest/checkpoint/published_checkpoint.d.ts +1 -1
  59. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  60. package/dest/checkpoint/published_checkpoint.js +4 -3
  61. package/dest/contract/index.d.ts +1 -3
  62. package/dest/contract/index.d.ts.map +1 -1
  63. package/dest/contract/index.js +0 -2
  64. package/dest/deserialization/index.d.ts +11 -0
  65. package/dest/deserialization/index.d.ts.map +1 -0
  66. package/dest/deserialization/index.js +10 -0
  67. package/dest/interfaces/api_limit.d.ts +2 -1
  68. package/dest/interfaces/api_limit.d.ts.map +1 -1
  69. package/dest/interfaces/api_limit.js +1 -0
  70. package/dest/interfaces/archiver.d.ts +6 -6
  71. package/dest/interfaces/archiver.d.ts.map +1 -1
  72. package/dest/interfaces/archiver.js +6 -4
  73. package/dest/interfaces/aztec-node-admin.d.ts +12 -9
  74. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  75. package/dest/interfaces/aztec-node-admin.js +2 -2
  76. package/dest/interfaces/aztec-node.d.ts +2 -2
  77. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  78. package/dest/interfaces/aztec-node.js +8 -3
  79. package/dest/interfaces/block-builder.d.ts +2 -2
  80. package/dest/interfaces/block-builder.d.ts.map +1 -1
  81. package/dest/interfaces/configs.d.ts +6 -1
  82. package/dest/interfaces/configs.d.ts.map +1 -1
  83. package/dest/interfaces/configs.js +2 -1
  84. package/dest/interfaces/p2p.d.ts +7 -9
  85. package/dest/interfaces/p2p.d.ts.map +1 -1
  86. package/dest/interfaces/p2p.js +3 -4
  87. package/dest/interfaces/validator.d.ts +41 -15
  88. package/dest/interfaces/validator.d.ts.map +1 -1
  89. package/dest/interfaces/validator.js +3 -2
  90. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  91. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  92. package/dest/kernel/hints/build_note_hash_read_request_hints.js +5 -6
  93. package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
  94. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  95. package/dest/messaging/l2_to_l1_membership.js +5 -3
  96. package/dest/messaging/out_hash.d.ts +41 -4
  97. package/dest/messaging/out_hash.d.ts.map +1 -1
  98. package/dest/messaging/out_hash.js +52 -26
  99. package/dest/note/note_dao.d.ts +8 -5
  100. package/dest/note/note_dao.d.ts.map +1 -1
  101. package/dest/note/note_dao.js +15 -12
  102. package/dest/p2p/attestation_utils.d.ts +3 -3
  103. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  104. package/dest/p2p/attestation_utils.js +1 -1
  105. package/dest/p2p/block_proposal.d.ts +85 -21
  106. package/dest/p2p/block_proposal.d.ts.map +1 -1
  107. package/dest/p2p/block_proposal.js +126 -38
  108. package/dest/p2p/checkpoint_attestation.d.ts +78 -0
  109. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  110. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  111. package/dest/p2p/checkpoint_proposal.d.ts +155 -0
  112. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  113. package/dest/p2p/checkpoint_proposal.js +222 -0
  114. package/dest/p2p/consensus_payload.d.ts +5 -2
  115. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  116. package/dest/p2p/consensus_payload.js +3 -2
  117. package/dest/p2p/index.d.ts +4 -2
  118. package/dest/p2p/index.d.ts.map +1 -1
  119. package/dest/p2p/index.js +3 -1
  120. package/dest/p2p/signature_utils.d.ts +5 -3
  121. package/dest/p2p/signature_utils.d.ts.map +1 -1
  122. package/dest/p2p/signature_utils.js +3 -1
  123. package/dest/p2p/signed_txs.d.ts +40 -0
  124. package/dest/p2p/signed_txs.d.ts.map +1 -0
  125. package/dest/p2p/signed_txs.js +75 -0
  126. package/dest/p2p/topic_type.d.ts +3 -2
  127. package/dest/p2p/topic_type.d.ts.map +1 -1
  128. package/dest/p2p/topic_type.js +8 -2
  129. package/dest/rollup/block_headers_hash.js +1 -1
  130. package/dest/rollup/block_rollup_public_inputs.d.ts +2 -2
  131. package/dest/rollup/block_rollup_public_inputs.js +2 -2
  132. package/dest/rollup/checkpoint_header.d.ts +16 -2
  133. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  134. package/dest/rollup/checkpoint_header.js +25 -5
  135. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +11 -6
  136. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  137. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -6
  138. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +14 -3
  139. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  140. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  141. package/dest/rollup/root_rollup_public_inputs.d.ts +5 -2
  142. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  143. package/dest/rollup/root_rollup_public_inputs.js +4 -1
  144. package/dest/tests/factories.d.ts +13 -1
  145. package/dest/tests/factories.d.ts.map +1 -1
  146. package/dest/tests/factories.js +53 -3
  147. package/dest/tests/mocks.d.ts +55 -9
  148. package/dest/tests/mocks.d.ts.map +1 -1
  149. package/dest/tests/mocks.js +84 -35
  150. package/dest/tx/private_execution_result.d.ts +1 -5
  151. package/dest/tx/private_execution_result.d.ts.map +1 -1
  152. package/dest/tx/private_execution_result.js +3 -20
  153. package/dest/tx/tx_effect.d.ts +1 -6
  154. package/dest/tx/tx_effect.d.ts.map +1 -1
  155. package/dest/tx/tx_effect.js +0 -7
  156. package/package.json +9 -8
  157. package/src/abi/utils.ts +17 -0
  158. package/src/block/attestation_info.ts +9 -6
  159. package/src/block/body.ts +2 -1
  160. package/src/block/checkpointed_l2_block.ts +5 -4
  161. package/src/block/l2_block.ts +4 -3
  162. package/src/block/l2_block_code_to_purge.ts +1 -0
  163. package/src/block/l2_block_header.ts +13 -0
  164. package/src/block/l2_block_new.ts +5 -1
  165. package/src/block/l2_block_source.ts +69 -17
  166. package/src/block/l2_block_stream/index.ts +1 -0
  167. package/src/block/l2_block_stream/interfaces.ts +16 -4
  168. package/src/block/l2_block_stream/l2_block_stream.ts +121 -38
  169. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  170. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  171. package/src/block/test/l2_tips_store_test_suite.ts +485 -36
  172. package/src/block/validate_block_result.ts +40 -35
  173. package/src/checkpoint/checkpoint.ts +12 -1
  174. package/src/checkpoint/checkpoint_info.ts +45 -2
  175. package/src/checkpoint/index.ts +1 -0
  176. package/src/checkpoint/published_checkpoint.ts +4 -3
  177. package/src/contract/index.ts +0 -2
  178. package/src/deserialization/index.ts +21 -0
  179. package/src/interfaces/api_limit.ts +1 -0
  180. package/src/interfaces/archiver.ts +14 -6
  181. package/src/interfaces/aztec-node-admin.ts +5 -2
  182. package/src/interfaces/aztec-node.ts +30 -3
  183. package/src/interfaces/block-builder.ts +1 -0
  184. package/src/interfaces/configs.ts +5 -0
  185. package/src/interfaces/p2p.ts +8 -12
  186. package/src/interfaces/validator.ts +57 -11
  187. package/src/kernel/hints/build_note_hash_read_request_hints.ts +5 -8
  188. package/src/messaging/l2_to_l1_membership.ts +5 -3
  189. package/src/messaging/out_hash.ts +60 -29
  190. package/src/note/note_dao.ts +18 -13
  191. package/src/p2p/attestation_utils.ts +3 -3
  192. package/src/p2p/block_proposal.ts +191 -42
  193. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +31 -25
  194. package/src/p2p/checkpoint_proposal.ts +342 -0
  195. package/src/p2p/consensus_payload.ts +5 -2
  196. package/src/p2p/index.ts +3 -1
  197. package/src/p2p/signature_utils.ts +3 -1
  198. package/src/p2p/signed_txs.ts +88 -0
  199. package/src/p2p/topic_type.ts +3 -2
  200. package/src/rollup/block_headers_hash.ts +1 -1
  201. package/src/rollup/block_rollup_public_inputs.ts +2 -2
  202. package/src/rollup/checkpoint_header.ts +33 -0
  203. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -6
  204. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  205. package/src/rollup/root_rollup_public_inputs.ts +4 -1
  206. package/src/tests/factories.ts +46 -2
  207. package/src/tests/mocks.ts +146 -50
  208. package/src/tx/private_execution_result.ts +0 -15
  209. package/src/tx/tx_effect.ts +0 -9
  210. package/dest/contract/contract_class_metadata.d.ts +0 -8
  211. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  212. package/dest/contract/contract_class_metadata.js +0 -1
  213. package/dest/contract/contract_metadata.d.ts +0 -7
  214. package/dest/contract/contract_metadata.d.ts.map +0 -1
  215. package/dest/contract/contract_metadata.js +0 -1
  216. package/dest/p2p/block_attestation.d.ts +0 -77
  217. package/dest/p2p/block_attestation.d.ts.map +0 -1
  218. package/src/contract/contract_class_metadata.ts +0 -8
  219. package/src/contract/contract_metadata.ts +0 -7
@@ -1,6 +1,6 @@
1
1
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
+ import { Checkpoint } from '../checkpoint/checkpoint.js';
2
3
  import { ConsensusPayload } from '../p2p/consensus_payload.js';
3
- import type { L2Block } from './l2_block.js';
4
4
  import type { CommitteeAttestation } from './proposal/committee_attestation.js';
5
5
  /**
6
6
  * Status indicating how the attestation address was determined
@@ -21,12 +21,12 @@ export type AttestationInfo = {
21
21
  status: Extract<AttestationStatus, 'provided-as-address' | 'recovered-from-signature'>;
22
22
  };
23
23
  /**
24
- * Extracts attestation information from a published L2 block.
24
+ * Extracts attestation information from a published checkpoint.
25
25
  * Returns info for each attestation, preserving array indices.
26
26
  */
27
- export declare function getAttestationInfoFromPublishedL2Block(block: {
27
+ export declare function getAttestationInfoFromPublishedCheckpoint(block: {
28
28
  attestations: CommitteeAttestation[];
29
- block: L2Block;
29
+ checkpoint: Checkpoint;
30
30
  }): AttestationInfo[];
31
31
  export declare function getAttestationInfoFromPayload(payload: ConsensusPayload, attestations: CommitteeAttestation[]): AttestationInfo[];
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0ZXN0YXRpb25faW5mby5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2F0dGVzdGF0aW9uX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFL0QsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFaEY7O0dBRUc7QUFDSCxNQUFNLE1BQU0saUJBQWlCLEdBQUcsMEJBQTBCLEdBQUcscUJBQXFCLEdBQUcsbUJBQW1CLEdBQUcsT0FBTyxDQUFDO0FBRW5IOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGVBQWUsR0FDdkI7SUFDRSwrRUFBK0U7SUFDL0UsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDO0lBQ3BCLGlEQUFpRDtJQUNqRCxNQUFNLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxDQUFDO0NBQ25FLEdBQ0Q7SUFDRSw4QkFBOEI7SUFDOUIsT0FBTyxFQUFFLFVBQVUsQ0FBQztJQUNwQixpREFBaUQ7SUFDakQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxxQkFBcUIsR0FBRywwQkFBMEIsQ0FBQyxDQUFDO0NBQ3hGLENBQUM7QUFFTjs7O0dBR0c7QUFDSCx3QkFBZ0Isc0NBQXNDLENBQUMsS0FBSyxFQUFFO0lBQzVELFlBQVksRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ3JDLEtBQUssRUFBRSxPQUFPLENBQUM7Q0FDaEIsR0FBRyxlQUFlLEVBQUUsQ0FHcEI7QUFFRCx3QkFBZ0IsNkJBQTZCLENBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFDekIsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQ25DLGVBQWUsRUFBRSxDQXVCbkIifQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0ZXN0YXRpb25faW5mby5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2F0dGVzdGF0aW9uX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRS9ELE9BQU8sS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFaEY7O0dBRUc7QUFDSCxNQUFNLE1BQU0saUJBQWlCLEdBQUcsMEJBQTBCLEdBQUcscUJBQXFCLEdBQUcsbUJBQW1CLEdBQUcsT0FBTyxDQUFDO0FBRW5IOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGVBQWUsR0FDdkI7SUFDRSwrRUFBK0U7SUFDL0UsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDO0lBQ3BCLGlEQUFpRDtJQUNqRCxNQUFNLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxDQUFDO0NBQ25FLEdBQ0Q7SUFDRSw4QkFBOEI7SUFDOUIsT0FBTyxFQUFFLFVBQVUsQ0FBQztJQUNwQixpREFBaUQ7SUFDakQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxxQkFBcUIsR0FBRywwQkFBMEIsQ0FBQyxDQUFDO0NBQ3hGLENBQUM7QUFFTjs7O0dBR0c7QUFDSCx3QkFBZ0IseUNBQXlDLENBQUMsS0FBSyxFQUFFO0lBQy9ELFlBQVksRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ3JDLFVBQVUsRUFBRSxVQUFVLENBQUM7Q0FDeEIsR0FBRyxlQUFlLEVBQUUsQ0FHcEI7QUFFRCx3QkFBZ0IsNkJBQTZCLENBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFDekIsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQ25DLGVBQWUsRUFBRSxDQTBCbkIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"attestation_info.d.ts","sourceRoot":"","sources":["../../src/block/attestation_info.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,0BAA0B,GAAG,qBAAqB,GAAG,mBAAmB,GAAG,OAAO,CAAC;AAEnH;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IACE,+EAA+E;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC,iBAAiB,EAAE,mBAAmB,GAAG,OAAO,CAAC,CAAC;CACnE,GACD;IACE,8BAA8B;IAC9B,OAAO,EAAE,UAAU,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC,iBAAiB,EAAE,qBAAqB,GAAG,0BAA0B,CAAC,CAAC;CACxF,CAAC;AAEN;;;GAGG;AACH,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC5D,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,eAAe,EAAE,CAGpB;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,oBAAoB,EAAE,GACnC,eAAe,EAAE,CAuBnB"}
1
+ {"version":3,"file":"attestation_info.d.ts","sourceRoot":"","sources":["../../src/block/attestation_info.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,0BAA0B,GAAG,qBAAqB,GAAG,mBAAmB,GAAG,OAAO,CAAC;AAEnH;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IACE,+EAA+E;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC,iBAAiB,EAAE,mBAAmB,GAAG,OAAO,CAAC,CAAC;CACnE,GACD;IACE,8BAA8B;IAC9B,OAAO,EAAE,UAAU,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC,iBAAiB,EAAE,qBAAqB,GAAG,0BAA0B,CAAC,CAAC;CACxF,CAAC;AAEN;;;GAGG;AACH,wBAAgB,yCAAyC,CAAC,KAAK,EAAE;IAC/D,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,UAAU,EAAE,UAAU,CAAC;CACxB,GAAG,eAAe,EAAE,CAGpB;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,oBAAoB,EAAE,GACnC,eAAe,EAAE,CA0BnB"}
@@ -2,14 +2,14 @@ import { recoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
2
2
  import { ConsensusPayload } from '../p2p/consensus_payload.js';
3
3
  import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '../p2p/signature_utils.js';
4
4
  /**
5
- * Extracts attestation information from a published L2 block.
5
+ * Extracts attestation information from a published checkpoint.
6
6
  * Returns info for each attestation, preserving array indices.
7
- */ export function getAttestationInfoFromPublishedL2Block(block) {
8
- const payload = ConsensusPayload.fromBlock(block.block);
7
+ */ export function getAttestationInfoFromPublishedCheckpoint(block) {
8
+ const payload = ConsensusPayload.fromCheckpoint(block.checkpoint);
9
9
  return getAttestationInfoFromPayload(payload, block.attestations);
10
10
  }
11
11
  export function getAttestationInfoFromPayload(payload, attestations) {
12
- const hashedPayload = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
12
+ const hashedPayload = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.checkpointAttestation);
13
13
  return attestations.map((attestation)=>{
14
14
  // If signature is empty, check if we have an address directly
15
15
  if (attestation.signature.isEmpty()) {
@@ -33,4 +33,4 @@ export declare class Body {
33
33
  } & Partial<Parameters<typeof TxEffect.random>[0]>): Promise<Body>;
34
34
  static empty(): Body;
35
35
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9keS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2JvZHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRy9CLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxxQkFBYSxJQUFJO0lBQ0ksU0FBUyxFQUFFLFFBQVEsRUFBRTtJQUF4QyxZQUFtQixTQUFTLEVBQUUsUUFBUSxFQUFFLEVBQUk7SUFFNUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLFdBSWpCO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBTWhDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxZQUFZLFFBSTNDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLElBQUksVUFBVSxFQUFFLENBRTNCO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBR3BEO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBSWY7SUFFRCxPQUFhLE1BQU0sQ0FBQyxFQUNsQixXQUFlLEVBQ2YsYUFBMEIsRUFDMUIsR0FBRyxlQUFlLEVBQ25CLEdBQUU7UUFDRCxXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDckIsYUFBYSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxLQUFLLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRixHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQU0saUJBTXREO0lBRUQsTUFBTSxDQUFDLEtBQUssU0FFWDtDQUNGIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9keS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2JvZHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSS9CLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxxQkFBYSxJQUFJO0lBQ0ksU0FBUyxFQUFFLFFBQVEsRUFBRTtJQUF4QyxZQUFtQixTQUFTLEVBQUUsUUFBUSxFQUFFLEVBQUk7SUFFNUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLFdBSWpCO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBTWhDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxZQUFZLFFBSTNDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLElBQUksVUFBVSxFQUFFLENBRTNCO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBR3BEO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBSWY7SUFFRCxPQUFhLE1BQU0sQ0FBQyxFQUNsQixXQUFlLEVBQ2YsYUFBMEIsRUFDMUIsR0FBRyxlQUFlLEVBQ25CLEdBQUU7UUFDRCxXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDckIsYUFBYSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxLQUFLLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRixHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQU0saUJBTXREO0lBRUQsTUFBTSxDQUFDLEtBQUssU0FFWDtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../src/block/body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,qBAAa,IAAI;IACI,SAAS,EAAE,QAAQ,EAAE;IAAxC,YAAmB,SAAS,EAAE,QAAQ,EAAE,EAAI;IAE5C,MAAM,CAAC,KAAK,EAAE,IAAI,WAIjB;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAMhC;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,QAI3C;IAED;;OAEG;IACH,YAAY,IAAI,UAAU,EAAE,CAE3B;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAGpD;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAIf;IAED,OAAa,MAAM,CAAC,EAClB,WAAe,EACf,aAA0B,EAC1B,GAAG,eAAe,EACnB,GAAE;QACD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACrF,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAM,iBAMtD;IAED,MAAM,CAAC,KAAK,SAEX;CACF"}
1
+ {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../src/block/body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,qBAAa,IAAI;IACI,SAAS,EAAE,QAAQ,EAAE;IAAxC,YAAmB,SAAS,EAAE,QAAQ,EAAE,EAAI;IAE5C,MAAM,CAAC,KAAK,EAAE,IAAI,WAIjB;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAMhC;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,QAI3C;IAED;;OAEG;IACH,YAAY,IAAI,UAAU,EAAE,CAE3B;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAGpD;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAIf;IAED,OAAa,MAAM,CAAC,EAClB,WAAe,EACf,aAA0B,EAC1B,GAAG,eAAe,EACnB,GAAE;QACD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACrF,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAM,iBAMtD;IAED,MAAM,CAAC,KAAK,SAEX;CACF"}
@@ -3,6 +3,7 @@ import { timesParallel } from '@aztec/foundation/collection';
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { inspect } from 'util';
5
5
  import { z } from 'zod';
6
+ import { MAX_TX_EFFECTS_PER_BODY } from '../deserialization/index.js';
6
7
  import { TxEffect } from '../tx/tx_effect.js';
7
8
  _computedKey = inspect.custom;
8
9
  export class Body {
@@ -29,7 +30,7 @@ export class Body {
29
30
  * @returns A deserialized L2 block.
30
31
  */ static fromBuffer(buf) {
31
32
  const reader = BufferReader.asReader(buf);
32
- return new this(reader.readVector(TxEffect));
33
+ return new this(reader.readVector(TxEffect, MAX_TX_EFFECTS_PER_BODY));
33
34
  }
34
35
  /**
35
36
  * Returns a flat packed array of fields of all tx effects - used for blobs.
@@ -264,4 +264,4 @@ export declare class PublishedL2Block {
264
264
  toPublishedCheckpoint(): PublishedCheckpoint;
265
265
  static fromPublishedCheckpoint(checkpoint: PublishedCheckpoint): PublishedL2Block;
266
266
  }
267
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludGVkX2wyX2Jsb2NrLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svY2hlY2twb2ludGVkX2wyX2Jsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRixPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBQzlFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTNFOztHQUVHO0FBQ0gscUJBQWEsbUJBQW1CO0lBRXJCLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxLQUFLLEVBQUUsVUFBVTtJQUNqQixFQUFFLEVBQUUsZUFBZTtJQUNuQixZQUFZLEVBQUUsb0JBQW9CLEVBQUU7SUFKN0MsWUFDUyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsS0FBSyxFQUFFLFVBQVUsRUFDakIsRUFBRSxFQUFFLGVBQWUsRUFDbkIsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEVBQ3pDO0lBQ0osTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVNoQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsbUJBQW1CLENBYzVFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLG1CQUFtQixDQUFDLHVCQU90RDtJQUVNLFFBQVEsSUFBSSxNQUFNLENBU3hCO0NBQ0Y7QUFFRCxxQkFBYSxnQkFBZ0I7SUFFbEIsS0FBSyxFQUFFLE9BQU87SUFDZCxFQUFFLEVBQUUsZUFBZTtJQUNuQixZQUFZLEVBQUUsb0JBQW9CLEVBQUU7SUFIN0MsWUFDUyxLQUFLLEVBQUUsT0FBTyxFQUNkLEVBQUUsRUFBRSxlQUFlLEVBQ25CLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxFQUN6QztJQUVKLE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BUWhCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxnQkFBZ0IsQ0FRekU7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsb0JBRW5EO0lBRU0sUUFBUSxJQUFJLE1BQU0sQ0FTeEI7SUFFTSxxQkFBcUIsd0JBRTNCO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsRUFBRSxtQkFBbUIsb0JBRTdEO0NBQ0YifQ==
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludGVkX2wyX2Jsb2NrLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svY2hlY2twb2ludGVkX2wyX2Jsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRixPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBQzlFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTdGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTNFOztHQUVHO0FBQ0gscUJBQWEsbUJBQW1CO0lBRXJCLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxLQUFLLEVBQUUsVUFBVTtJQUNqQixFQUFFLEVBQUUsZUFBZTtJQUNuQixZQUFZLEVBQUUsb0JBQW9CLEVBQUU7SUFKN0MsWUFDUyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsS0FBSyxFQUFFLFVBQVUsRUFDakIsRUFBRSxFQUFFLGVBQWUsRUFDbkIsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEVBQ3pDO0lBQ0osTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVNoQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsbUJBQW1CLENBYzVFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLG1CQUFtQixDQUFDLHVCQU90RDtJQUVNLFFBQVEsSUFBSSxNQUFNLENBU3hCO0NBQ0Y7QUFFRCxxQkFBYSxnQkFBZ0I7SUFFbEIsS0FBSyxFQUFFLE9BQU87SUFDZCxFQUFFLEVBQUUsZUFBZTtJQUNuQixZQUFZLEVBQUUsb0JBQW9CLEVBQUU7SUFIN0MsWUFDUyxLQUFLLEVBQUUsT0FBTyxFQUNkLEVBQUUsRUFBRSxlQUFlLEVBQ25CLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxFQUN6QztJQUVKLE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BUWhCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxnQkFBZ0IsQ0FRekU7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsb0JBRW5EO0lBRU0sUUFBUSxJQUFJLE1BQU0sQ0FTeEI7SUFFTSxxQkFBcUIsd0JBRTNCO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsRUFBRSxtQkFBbUIsb0JBRTdEO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"checkpointed_l2_block.d.ts","sourceRoot":"","sources":["../../src/block/checkpointed_l2_block.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;GAEG;AACH,qBAAa,mBAAmB;IAErB,gBAAgB,EAAE,gBAAgB;IAClC,KAAK,EAAE,UAAU;IACjB,EAAE,EAAE,eAAe;IACnB,YAAY,EAAE,oBAAoB,EAAE;IAJ7C,YACS,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,UAAU,EACjB,EAAE,EAAE,eAAe,EACnB,YAAY,EAAE,oBAAoB,EAAE,EACzC;IACJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,mBAAmB,CAc5E;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC,uBAOtD;IAEM,QAAQ,IAAI,MAAM,CASxB;CACF;AAED,qBAAa,gBAAgB;IAElB,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,eAAe;IACnB,YAAY,EAAE,oBAAoB,EAAE;IAH7C,YACS,KAAK,EAAE,OAAO,EACd,EAAE,EAAE,eAAe,EACnB,YAAY,EAAE,oBAAoB,EAAE,EACzC;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB,CAQzE;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,oBAEnD;IAEM,QAAQ,IAAI,MAAM,CASxB;IAEM,qBAAqB,wBAE3B;IAED,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,mBAAmB,oBAE7D;CACF"}
1
+ {"version":3,"file":"checkpointed_l2_block.d.ts","sourceRoot":"","sources":["../../src/block/checkpointed_l2_block.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE7F,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;GAEG;AACH,qBAAa,mBAAmB;IAErB,gBAAgB,EAAE,gBAAgB;IAClC,KAAK,EAAE,UAAU;IACjB,EAAE,EAAE,eAAe;IACnB,YAAY,EAAE,oBAAoB,EAAE;IAJ7C,YACS,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,UAAU,EACjB,EAAE,EAAE,eAAe,EACnB,YAAY,EAAE,oBAAoB,EAAE,EACzC;IACJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,mBAAmB,CAc5E;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC,uBAOtD;IAEM,QAAQ,IAAI,MAAM,CASxB;CACF;AAED,qBAAa,gBAAgB;IAElB,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,eAAe;IACnB,YAAY,EAAE,oBAAoB,EAAE;IAH7C,YACS,KAAK,EAAE,OAAO,EACd,EAAE,EAAE,eAAe,EACnB,YAAY,EAAE,oBAAoB,EAAE,EACzC;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB,CAQzE;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,oBAEnD;IAEM,QAAQ,IAAI,MAAM,CASxB;IAEM,qBAAqB,wBAE3B;IAED,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,mBAAmB,oBAE7D;CACF"}
@@ -3,6 +3,7 @@ import { CheckpointNumber, CheckpointNumberSchema } from '@aztec/foundation/bran
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { z } from 'zod';
5
5
  import { L1PublishedData, PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
6
+ import { MAX_BLOCK_HASH_STRING_LENGTH, MAX_COMMITTEE_SIZE } from '../deserialization/index.js';
6
7
  import { L2Block } from './l2_block.js';
7
8
  import { L2BlockNew } from './l2_block_new.js';
8
9
  import { CommitteeAttestation } from './proposal/committee_attestation.js';
@@ -32,9 +33,9 @@ import { CommitteeAttestation } from './proposal/committee_attestation.js';
32
33
  const checkpointNumber = reader.readNumber();
33
34
  const block = reader.readObject(L2BlockNew);
34
35
  const l1BlockNumber = reader.readBigInt();
35
- const l1BlockHash = reader.readString();
36
+ const l1BlockHash = reader.readString(MAX_BLOCK_HASH_STRING_LENGTH);
36
37
  const l1Timestamp = reader.readBigInt();
37
- const attestations = reader.readVector(CommitteeAttestation);
38
+ const attestations = reader.readVector(CommitteeAttestation, MAX_COMMITTEE_SIZE);
38
39
  return new CheckpointedL2Block(CheckpointNumber(checkpointNumber), block, new L1PublishedData(l1BlockNumber, l1Timestamp, l1BlockHash), attestations);
39
40
  }
40
41
  static fromFields(fields) {
@@ -64,9 +65,9 @@ export class PublishedL2Block {
64
65
  const reader = BufferReader.asReader(bufferOrReader);
65
66
  const block = reader.readObject(L2Block);
66
67
  const l1BlockNumber = reader.readBigInt();
67
- const l1BlockHash = reader.readString();
68
+ const l1BlockHash = reader.readString(MAX_BLOCK_HASH_STRING_LENGTH);
68
69
  const l1Timestamp = reader.readBigInt();
69
- const attestations = reader.readVector(CommitteeAttestation);
70
+ const attestations = reader.readVector(CommitteeAttestation, MAX_COMMITTEE_SIZE);
70
71
  return new PublishedL2Block(block, new L1PublishedData(l1BlockNumber, l1Timestamp, l1BlockHash), attestations);
71
72
  }
72
73
  static fromFields(fields) {
@@ -1,5 +1,5 @@
1
1
  import { type BlockBlobData } from '@aztec/blob-lib/encoding';
2
- import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
+ import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { BufferReader } from '@aztec/foundation/serialize';
5
5
  import { z } from 'zod';
@@ -113,7 +113,10 @@ export declare class L2Block {
113
113
  */
114
114
  getCheckpointHeader(): import("../rollup/checkpoint_header.js").CheckpointHeader;
115
115
  getBlockHeader(): BlockHeader;
116
- toL2Block(): L2BlockNew;
116
+ toL2Block(args?: {
117
+ checkpointNumber?: CheckpointNumber;
118
+ indexWithinCheckpoint?: number;
119
+ }): L2BlockNew;
117
120
  toCheckpoint(): Checkpoint;
118
121
  static fromCheckpoint(checkpoint: Checkpoint): L2Block;
119
122
  /**
@@ -140,4 +143,4 @@ export declare class L2Block {
140
143
  toBlockInfo(): L2BlockInfo;
141
144
  equals(other: L2Block): boolean;
142
145
  }
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2suZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9jay9sMl9ibG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQTJELE1BQU0sMEJBQTBCLENBQUM7QUFDdkgsT0FBTyxFQUFFLFdBQVcsRUFBb0IsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFHOUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVqQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRS9DOzs7O0dBSUc7QUFDSCxxQkFBYSxPQUFPO0lBR1QsT0FBTyxFQUFFLHNCQUFzQjtJQUUvQixNQUFNLEVBQUUsYUFBYTtJQUVyQixJQUFJLEVBQUUsSUFBSTtJQUNqQixPQUFPLENBQUMsU0FBUztJQVBuQjtJQUNFLDJEQUEyRDtJQUNwRCxPQUFPLEVBQUUsc0JBQXNCO0lBQ3RDLHVCQUF1QjtJQUNoQixNQUFNLEVBQUUsYUFBYTtJQUM1QixxQkFBcUI7SUFDZCxJQUFJLEVBQUUsSUFBSSxFQUNULFNBQVMsR0FBRSxFQUFFLEdBQUcsU0FBcUIsRUFDM0M7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVFoQjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxZQUFZLFdBTzNDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUV0QztJQUVEOzs7T0FHRztJQUNILFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxPQUFhLE1BQU0sQ0FDakIsVUFBVSxFQUFFLFdBQVcsRUFDdkIsV0FBVyxTQUFJLEVBQ2YsbUJBQW1CLFNBQUksRUFDdkIsb0JBQW9CLFNBQUksRUFDeEIsTUFBTSxHQUFFLEVBQUUsR0FBRyxTQUFxQixFQUNsQyxVQUFVLEdBQUUsTUFBTSxHQUFHLFNBQXFCLEVBQzFDLFVBQVUsR0FBRSxNQUFNLEdBQUcsU0FBcUIsR0FDekMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQVFsQjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUV0QjtJQUVELElBQUksTUFBTSxJQUFJLFdBQVcsQ0FFeEI7SUFFRCxJQUFJLElBQUksSUFBSSxVQUFVLENBRXJCO0lBRUQsSUFBSSxTQUFTLElBQUksTUFBTSxDQUV0QjtJQUVEOzs7T0FHRztJQUNVLElBQUksSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBSy9CO0lBRUQ7Ozs7T0FJRztJQUNJLG1CQUFtQiw4REFFekI7SUFHTSxjQUFjLElBQUksV0FBVyxDQUVuQztJQUVNLFNBQVMsZUFRZjtJQUVNLFlBQVksZUFPbEI7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLFdBZTNDO0lBRUQ7Ozs7T0FJRztJQUNJLHVCQUF1QixTQUc3QjtJQUVNLFlBQVksSUFBSSxFQUFFLEVBQUUsQ0FHMUI7SUFFTSxlQUFlLElBQUksYUFBYSxDQXVCdEM7SUFFRDs7O09BR0c7SUFDSCxRQUFROzs7Ozs7OztNQXFCUDtJQUVELFdBQVcsSUFBSSxXQUFXLENBVXpCO0lBRUQsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLFdBRXBCO0NBQ0YifQ==
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2suZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9jay9sMl9ibG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQTJELE1BQU0sMEJBQTBCLENBQUM7QUFDdkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUc5RSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFL0M7Ozs7R0FJRztBQUNILHFCQUFhLE9BQU87SUFHVCxPQUFPLEVBQUUsc0JBQXNCO0lBRS9CLE1BQU0sRUFBRSxhQUFhO0lBRXJCLElBQUksRUFBRSxJQUFJO0lBQ2pCLE9BQU8sQ0FBQyxTQUFTO0lBUG5CO0lBQ0UsMkRBQTJEO0lBQ3BELE9BQU8sRUFBRSxzQkFBc0I7SUFDdEMsdUJBQXVCO0lBQ2hCLE1BQU0sRUFBRSxhQUFhO0lBQzVCLHFCQUFxQjtJQUNkLElBQUksRUFBRSxJQUFJLEVBQ1QsU0FBUyxHQUFFLEVBQUUsR0FBRyxTQUFxQixFQUMzQztJQUVKLE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BUWhCO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLFlBQVksV0FPM0M7SUFFRDs7O09BR0c7SUFDSCxRQUFRLDRCQUVQO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBRXRDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILE9BQWEsTUFBTSxDQUNqQixVQUFVLEVBQUUsV0FBVyxFQUN2QixXQUFXLFNBQUksRUFDZixtQkFBbUIsU0FBSSxFQUN2QixvQkFBb0IsU0FBSSxFQUN4QixNQUFNLEdBQUUsRUFBRSxHQUFHLFNBQXFCLEVBQ2xDLFVBQVUsR0FBRSxNQUFNLEdBQUcsU0FBcUIsRUFDMUMsVUFBVSxHQUFFLE1BQU0sR0FBRyxTQUFxQixHQUN6QyxPQUFPLENBQUMsT0FBTyxDQUFDLENBUWxCO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEtBQUssSUFBSSxPQUFPLENBRXRCO0lBRUQsSUFBSSxNQUFNLElBQUksV0FBVyxDQUV4QjtJQUVELElBQUksSUFBSSxJQUFJLFVBQVUsQ0FFckI7SUFFRCxJQUFJLFNBQVMsSUFBSSxNQUFNLENBRXRCO0lBRUQ7OztPQUdHO0lBQ1UsSUFBSSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FLL0I7SUFFRDs7OztPQUlHO0lBQ0ksbUJBQW1CLDhEQUV6QjtJQUdNLGNBQWMsSUFBSSxXQUFXLENBRW5DO0lBRU0sU0FBUyxDQUFDLElBQUksR0FBRTtRQUFFLGdCQUFnQixDQUFDLEVBQUUsZ0JBQWdCLENBQUM7UUFBQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQTtLQUFPLEdBQUcsVUFBVSxDQVEvRztJQUVNLFlBQVksZUFPbEI7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxVQUFVLFdBZ0IzQztJQUVEOzs7O09BSUc7SUFDSSx1QkFBdUIsU0FHN0I7SUFFTSxZQUFZLElBQUksRUFBRSxFQUFFLENBRzFCO0lBRU0sZUFBZSxJQUFJLGFBQWEsQ0F1QnRDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUTs7Ozs7Ozs7TUFxQlA7SUFFRCxXQUFXLElBQUksV0FBVyxDQVV6QjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxXQUVwQjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block.d.ts","sourceRoot":"","sources":["../../src/block/l2_block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAA2D,MAAM,0BAA0B,CAAC;AACvH,OAAO,EAAE,WAAW,EAAoB,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C;;;;GAIG;AACH,qBAAa,OAAO;IAGT,OAAO,EAAE,sBAAsB;IAE/B,MAAM,EAAE,aAAa;IAErB,IAAI,EAAE,IAAI;IACjB,OAAO,CAAC,SAAS;IAPnB;IACE,2DAA2D;IACpD,OAAO,EAAE,sBAAsB;IACtC,uBAAuB;IAChB,MAAM,EAAE,aAAa;IAC5B,qBAAqB;IACd,IAAI,EAAE,IAAI,EACT,SAAS,GAAE,EAAE,GAAG,SAAqB,EAC3C;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,WAO3C;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtC;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED;;;;;;;;OAQG;IACH,OAAa,MAAM,CACjB,UAAU,EAAE,WAAW,EACvB,WAAW,SAAI,EACf,mBAAmB,SAAI,EACvB,oBAAoB,SAAI,EACxB,MAAM,GAAE,EAAE,GAAG,SAAqB,EAClC,UAAU,GAAE,MAAM,GAAG,SAAqB,EAC1C,UAAU,GAAE,MAAM,GAAG,SAAqB,GACzC,OAAO,CAAC,OAAO,CAAC,CAQlB;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAK/B;IAED;;;;OAIG;IACI,mBAAmB,8DAEzB;IAGM,cAAc,IAAI,WAAW,CAEnC;IAEM,SAAS,eAQf;IAEM,YAAY,eAOlB;IAED,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,WAe3C;IAED;;;;OAIG;IACI,uBAAuB,SAG7B;IAEM,YAAY,IAAI,EAAE,EAAE,CAG1B;IAEM,eAAe,IAAI,aAAa,CAuBtC;IAED;;;OAGG;IACH,QAAQ;;;;;;;;MAqBP;IAED,WAAW,IAAI,WAAW,CAUzB;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;CACF"}
1
+ {"version":3,"file":"l2_block.d.ts","sourceRoot":"","sources":["../../src/block/l2_block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAA2D,MAAM,0BAA0B,CAAC;AACvH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C;;;;GAIG;AACH,qBAAa,OAAO;IAGT,OAAO,EAAE,sBAAsB;IAE/B,MAAM,EAAE,aAAa;IAErB,IAAI,EAAE,IAAI;IACjB,OAAO,CAAC,SAAS;IAPnB;IACE,2DAA2D;IACpD,OAAO,EAAE,sBAAsB;IACtC,uBAAuB;IAChB,MAAM,EAAE,aAAa;IAC5B,qBAAqB;IACd,IAAI,EAAE,IAAI,EACT,SAAS,GAAE,EAAE,GAAG,SAAqB,EAC3C;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,WAO3C;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtC;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED;;;;;;;;OAQG;IACH,OAAa,MAAM,CACjB,UAAU,EAAE,WAAW,EACvB,WAAW,SAAI,EACf,mBAAmB,SAAI,EACvB,oBAAoB,SAAI,EACxB,MAAM,GAAE,EAAE,GAAG,SAAqB,EAClC,UAAU,GAAE,MAAM,GAAG,SAAqB,EAC1C,UAAU,GAAE,MAAM,GAAG,SAAqB,GACzC,OAAO,CAAC,OAAO,CAAC,CAQlB;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAK/B;IAED;;;;OAIG;IACI,mBAAmB,8DAEzB;IAGM,cAAc,IAAI,WAAW,CAEnC;IAEM,SAAS,CAAC,IAAI,GAAE;QAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,UAAU,CAQ/G;IAEM,YAAY,eAOlB;IAED,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,WAgB3C;IAED;;;;OAIG;IACI,uBAAuB,SAG7B;IAEM,YAAY,IAAI,EAAE,EAAE,CAG1B;IAEM,eAAe,IAAI,aAAa,CAuBtC;IAED;;;OAGG;IACH,QAAQ;;;;;;;;MAqBP;IAED,WAAW,IAAI,WAAW,CAUzB;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;CACF"}
@@ -114,8 +114,8 @@ import { L2BlockNew } from './l2_block_new.js';
114
114
  getBlockHeader() {
115
115
  return this.header.toBlockHeader();
116
116
  }
117
- toL2Block() {
118
- return new L2BlockNew(this.archive, this.getBlockHeader(), this.body, CheckpointNumber.fromBlockNumber(this.number), 0);
117
+ toL2Block(args = {}) {
118
+ return new L2BlockNew(this.archive, this.getBlockHeader(), this.body, args?.checkpointNumber ?? CheckpointNumber.fromBlockNumber(this.number), args?.indexWithinCheckpoint ?? 0);
119
119
  }
120
120
  toCheckpoint() {
121
121
  return new Checkpoint(this.archive, this.getCheckpointHeader(), [
@@ -125,7 +125,7 @@ import { L2BlockNew } from './l2_block_new.js';
125
125
  static fromCheckpoint(checkpoint) {
126
126
  const checkpointHeader = checkpoint.header;
127
127
  const block = checkpoint.blocks.at(-1);
128
- const header = new L2BlockHeader(new AppendOnlyTreeSnapshot(checkpointHeader.lastArchiveRoot, block.number), checkpointHeader.blobsHash, checkpointHeader.inHash, block.header.state, block.header.globalVariables, block.header.totalFees, checkpointHeader.totalManaUsed, block.header.spongeBlobHash, checkpointHeader.blockHeadersHash);
128
+ const header = new L2BlockHeader(new AppendOnlyTreeSnapshot(checkpointHeader.lastArchiveRoot, block.number), checkpointHeader.blobsHash, checkpointHeader.inHash, checkpointHeader.epochOutHash, block.header.state, block.header.globalVariables, block.header.totalFees, checkpointHeader.totalManaUsed, block.header.spongeBlobHash, checkpointHeader.blockHeadersHash);
129
129
  return new L2Block(checkpoint.archive, header, block.body);
130
130
  }
131
131
  /**
@@ -8,4 +8,4 @@ export declare function makeL2BlockHeader(seed?: number, blockNumber?: number, s
8
8
  * @returns An append only tree snapshot.
9
9
  */
10
10
  export declare function makeAppendOnlyTreeSnapshot(seed?: number): AppendOnlyTreeSnapshot;
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfY29kZV90b19wdXJnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2NvZGVfdG9fcHVyZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJL0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELHdCQUFnQixpQkFBaUIsQ0FDL0IsSUFBSSxTQUFJLEVBQ1IsV0FBVyxDQUFDLEVBQUUsTUFBTSxFQUNwQixVQUFVLENBQUMsRUFBRSxNQUFNLEVBQ25CLFNBQVMsR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQWdCakQ7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLElBQUksU0FBSSxHQUFHLHNCQUFzQixDQUUzRSJ9
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfY29kZV90b19wdXJnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2NvZGVfdG9fcHVyZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJL0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELHdCQUFnQixpQkFBaUIsQ0FDL0IsSUFBSSxTQUFJLEVBQ1IsV0FBVyxDQUFDLEVBQUUsTUFBTSxFQUNwQixVQUFVLENBQUMsRUFBRSxNQUFNLEVBQ25CLFNBQVMsR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQWlCakQ7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLElBQUksU0FBSSxHQUFHLHNCQUFzQixDQUUzRSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_code_to_purge.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_code_to_purge.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,iBAAiB,CAC/B,IAAI,SAAI,EACR,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAgBjD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,SAAI,GAAG,sBAAsB,CAE3E"}
1
+ {"version":3,"file":"l2_block_code_to_purge.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_code_to_purge.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,iBAAiB,CAC/B,IAAI,SAAI,EACR,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAiBjD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,SAAI,GAAG,sBAAsB,CAE3E"}
@@ -10,7 +10,7 @@ import { PartialStateReference } from '../tx/partial_state_reference.js';
10
10
  import { StateReference } from '../tx/state_reference.js';
11
11
  import { L2BlockHeader } from './l2_block_header.js';
12
12
  export function makeL2BlockHeader(seed = 0, blockNumber, slotNumber, overrides = {}) {
13
- return new L2BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), overrides.blobsHash ?? new Fr(seed + 0x200), overrides.inHash ?? new Fr(seed + 0x300), overrides.state ?? makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
13
+ return new L2BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), overrides.blobsHash ?? new Fr(seed + 0x200), overrides.inHash ?? new Fr(seed + 0x300), overrides.epochOutHash ?? new Fr(seed + 0x400), overrides.state ?? makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
14
14
  ...blockNumber ? {
15
15
  blockNumber: BlockNumber(blockNumber)
16
16
  } : {},
@@ -20,6 +20,7 @@ export declare class L2BlockHeader {
20
20
  lastArchive: AppendOnlyTreeSnapshot;
21
21
  blobsHash: Fr;
22
22
  inHash: Fr;
23
+ epochOutHash: Fr;
23
24
  state: StateReference;
24
25
  globalVariables: GlobalVariables;
25
26
  totalFees: Fr;
@@ -29,6 +30,8 @@ export declare class L2BlockHeader {
29
30
  constructor(
30
31
  /** Snapshot of archive before the block is applied. */
31
32
  lastArchive: AppendOnlyTreeSnapshot, blobsHash: Fr, inHash: Fr,
33
+ /** Root of the epoch out hash tree. Leaves are the out hashes of this block and all previous blocks in the epoch. */
34
+ epochOutHash: Fr,
32
35
  /** State reference. */
33
36
  state: StateReference,
34
37
  /** Global variables of an L2 block. */
@@ -42,7 +45,7 @@ export declare class L2BlockHeader {
42
45
  /** Hash of the block headers in the checkpoint. */
43
46
  blockHeadersHash: Fr);
44
47
  static get schema(): ZodFor<L2BlockHeader>;
45
- static getFields(fields: FieldsOf<L2BlockHeader>): readonly [AppendOnlyTreeSnapshot, Fr, Fr, StateReference, GlobalVariables, Fr, Fr, Fr, Fr];
48
+ static getFields(fields: FieldsOf<L2BlockHeader>): readonly [AppendOnlyTreeSnapshot, Fr, Fr, Fr, StateReference, GlobalVariables, Fr, Fr, Fr, Fr];
46
49
  static from(fields: FieldsOf<L2BlockHeader>): L2BlockHeader;
47
50
  getSlot(): SlotNumber;
48
51
  getBlockNumber(): import("@aztec/foundation/branded-types").BlockNumber;
@@ -66,6 +69,7 @@ export declare class L2BlockHeader {
66
69
  lastArchive: `0x${string}`;
67
70
  blobsHash: `0x${string}`;
68
71
  inHash: `0x${string}`;
72
+ epochOutHash: `0x${string}`;
69
73
  state: {
70
74
  l1ToL2MessageTree: `0x${string}`;
71
75
  noteHashTree: `0x${string}`;
@@ -91,4 +95,4 @@ export declare class L2BlockHeader {
91
95
  [inspect.custom](): string;
92
96
  equals(other: this): boolean;
93
97
  }
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaGVhZGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfaGVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RTs7Ozs7Ozs7R0FRRztBQUNILHFCQUFhLGFBQWE7SUFHZixXQUFXLEVBQUUsc0JBQXNCO0lBQ25DLFNBQVMsRUFBRSxFQUFFO0lBQ2IsTUFBTSxFQUFFLEVBQUU7SUFFVixLQUFLLEVBQUUsY0FBYztJQUVyQixlQUFlLEVBQUUsZUFBZTtJQUVoQyxTQUFTLEVBQUUsRUFBRTtJQUViLGFBQWEsRUFBRSxFQUFFO0lBRWpCLGNBQWMsRUFBRSxFQUFFO0lBRWxCLGdCQUFnQixFQUFFLEVBQUU7SUFoQjdCO0lBQ0UsdURBQXVEO0lBQ2hELFdBQVcsRUFBRSxzQkFBc0IsRUFDbkMsU0FBUyxFQUFFLEVBQUUsRUFDYixNQUFNLEVBQUUsRUFBRTtJQUNqQix1QkFBdUI7SUFDaEIsS0FBSyxFQUFFLGNBQWM7SUFDNUIsdUNBQXVDO0lBQ2hDLGVBQWUsRUFBRSxlQUFlO0lBQ3ZDLG1FQUFtRTtJQUM1RCxTQUFTLEVBQUUsRUFBRTtJQUNwQix3RUFBd0U7SUFDakUsYUFBYSxFQUFFLEVBQUU7SUFDeEIsNENBQTRDO0lBQ3JDLGNBQWMsRUFBRSxFQUFFO0lBQ3pCLG1EQUFtRDtJQUM1QyxnQkFBZ0IsRUFBRSxFQUFFLEVBQ3pCO0lBRUosTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLENBY3pDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyw4RkFZL0M7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLGlCQUUxQztJQUVELE9BQU8sSUFBSSxVQUFVLENBRXBCO0lBRUQsY0FBYywwREFFYjtJQUVELE9BQU8sV0FZTjtJQUVELFFBQVEsNEJBRVA7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRCxLQUFLLGtCQUVKO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksaUJBYzlDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxpQkFjM0M7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQWF6RDtJQUVELE9BQU8sSUFBSSxPQUFPLENBWWpCO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxrQkFFZDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0saUJBRTVCO0lBRUQsa0JBQWtCLHFCQWFqQjtJQUVELGFBQWEsZ0JBU1o7SUFFRCxTQUFTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BWVI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FlZjtJQUVNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLE9BQU8sQ0FZbEM7Q0FDRiJ9
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaGVhZGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfaGVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RTs7Ozs7Ozs7R0FRRztBQUNILHFCQUFhLGFBQWE7SUFHZixXQUFXLEVBQUUsc0JBQXNCO0lBQ25DLFNBQVMsRUFBRSxFQUFFO0lBQ2IsTUFBTSxFQUFFLEVBQUU7SUFFVixZQUFZLEVBQUUsRUFBRTtJQUVoQixLQUFLLEVBQUUsY0FBYztJQUVyQixlQUFlLEVBQUUsZUFBZTtJQUVoQyxTQUFTLEVBQUUsRUFBRTtJQUViLGFBQWEsRUFBRSxFQUFFO0lBRWpCLGNBQWMsRUFBRSxFQUFFO0lBRWxCLGdCQUFnQixFQUFFLEVBQUU7SUFsQjdCO0lBQ0UsdURBQXVEO0lBQ2hELFdBQVcsRUFBRSxzQkFBc0IsRUFDbkMsU0FBUyxFQUFFLEVBQUUsRUFDYixNQUFNLEVBQUUsRUFBRTtJQUNqQixxSEFBcUg7SUFDOUcsWUFBWSxFQUFFLEVBQUU7SUFDdkIsdUJBQXVCO0lBQ2hCLEtBQUssRUFBRSxjQUFjO0lBQzVCLHVDQUF1QztJQUNoQyxlQUFlLEVBQUUsZUFBZTtJQUN2QyxtRUFBbUU7SUFDNUQsU0FBUyxFQUFFLEVBQUU7SUFDcEIsd0VBQXdFO0lBQ2pFLGFBQWEsRUFBRSxFQUFFO0lBQ3hCLDRDQUE0QztJQUNyQyxjQUFjLEVBQUUsRUFBRTtJQUN6QixtREFBbUQ7SUFDNUMsZ0JBQWdCLEVBQUUsRUFBRSxFQUN6QjtJQUVKLE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQWV6QztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsa0dBYS9DO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxpQkFFMUM7SUFFRCxPQUFPLElBQUksVUFBVSxDQUVwQjtJQUVELGNBQWMsMERBRWI7SUFFRCxPQUFPLFdBYU47SUFFRCxRQUFRLDRCQUVQO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsS0FBSyxrQkFFSjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLGlCQWU5QztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsaUJBZTNDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBTSxpQkFjekQ7SUFFRCxPQUFPLElBQUksT0FBTyxDQWFqQjtJQUVEOzs7T0FHRztJQUNJLFFBQVEsa0JBRWQ7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLGlCQUU1QjtJQUVELGtCQUFrQixxQkFjakI7SUFFRCxhQUFhLGdCQVNaO0lBRUQsU0FBUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFhUjtJQUVELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQWdCZjtJQUVNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLE9BQU8sQ0FhbEM7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_header.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAE9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9E;;;;;;;;GAQG;AACH,qBAAa,aAAa;IAGf,WAAW,EAAE,sBAAsB;IACnC,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,EAAE;IAEV,KAAK,EAAE,cAAc;IAErB,eAAe,EAAE,eAAe;IAEhC,SAAS,EAAE,EAAE;IAEb,aAAa,EAAE,EAAE;IAEjB,cAAc,EAAE,EAAE;IAElB,gBAAgB,EAAE,EAAE;IAhB7B;IACE,uDAAuD;IAChD,WAAW,EAAE,sBAAsB,EACnC,SAAS,EAAE,EAAE,EACb,MAAM,EAAE,EAAE;IACjB,uBAAuB;IAChB,KAAK,EAAE,cAAc;IAC5B,uCAAuC;IAChC,eAAe,EAAE,eAAe;IACvC,mEAAmE;IAC5D,SAAS,EAAE,EAAE;IACpB,wEAAwE;IACjE,aAAa,EAAE,EAAE;IACxB,4CAA4C;IACrC,cAAc,EAAE,EAAE;IACzB,mDAAmD;IAC5C,gBAAgB,EAAE,EAAE,EACzB;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,CAczC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,8FAY/C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,iBAE1C;IAED,OAAO,IAAI,UAAU,CAEpB;IAED,cAAc,0DAEb;IAED,OAAO,WAYN;IAED,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,kBAEJ;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,iBAc9C;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,iBAc3C;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAazD;IAED,OAAO,IAAI,OAAO,CAYjB;IAED;;;OAGG;IACI,QAAQ,kBAEd;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,iBAE5B;IAED,kBAAkB,qBAajB;IAED,aAAa,gBASZ;IAED,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;MAYR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAef;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAYlC;CACF"}
1
+ {"version":3,"file":"l2_block_header.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAE9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9E;;;;;;;;GAQG;AACH,qBAAa,aAAa;IAGf,WAAW,EAAE,sBAAsB;IACnC,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,EAAE;IAEV,YAAY,EAAE,EAAE;IAEhB,KAAK,EAAE,cAAc;IAErB,eAAe,EAAE,eAAe;IAEhC,SAAS,EAAE,EAAE;IAEb,aAAa,EAAE,EAAE;IAEjB,cAAc,EAAE,EAAE;IAElB,gBAAgB,EAAE,EAAE;IAlB7B;IACE,uDAAuD;IAChD,WAAW,EAAE,sBAAsB,EACnC,SAAS,EAAE,EAAE,EACb,MAAM,EAAE,EAAE;IACjB,qHAAqH;IAC9G,YAAY,EAAE,EAAE;IACvB,uBAAuB;IAChB,KAAK,EAAE,cAAc;IAC5B,uCAAuC;IAChC,eAAe,EAAE,eAAe;IACvC,mEAAmE;IAC5D,SAAS,EAAE,EAAE;IACpB,wEAAwE;IACjE,aAAa,EAAE,EAAE;IACxB,4CAA4C;IACrC,cAAc,EAAE,EAAE;IACzB,mDAAmD;IAC5C,gBAAgB,EAAE,EAAE,EACzB;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,CAezC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,kGAa/C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,iBAE1C;IAED,OAAO,IAAI,UAAU,CAEpB;IAED,cAAc,0DAEb;IAED,OAAO,WAaN;IAED,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,kBAEJ;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,iBAe9C;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,iBAe3C;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAczD;IAED,OAAO,IAAI,OAAO,CAajB;IAED;;;OAGG;IACI,QAAQ,kBAEd;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,iBAE5B;IAED,kBAAkB,qBAcjB;IAED,aAAa,gBASZ;IAED,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;MAaR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAgBf;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAalC;CACF"}
@@ -21,16 +21,18 @@ _computedKey = inspect.custom;
21
21
  lastArchive;
22
22
  blobsHash;
23
23
  inHash;
24
+ epochOutHash;
24
25
  state;
25
26
  globalVariables;
26
27
  totalFees;
27
28
  totalManaUsed;
28
29
  spongeBlobHash;
29
30
  blockHeadersHash;
30
- constructor(/** Snapshot of archive before the block is applied. */ lastArchive, blobsHash, inHash, /** State reference. */ state, /** Global variables of an L2 block. */ globalVariables, /** Total fees in the block, computed by the root rollup circuit */ totalFees, /** Total mana used in the block, computed by the root rollup circuit */ totalManaUsed, /** Hash of the sponge blob of the block. */ spongeBlobHash, /** Hash of the block headers in the checkpoint. */ blockHeadersHash){
31
+ constructor(/** Snapshot of archive before the block is applied. */ lastArchive, blobsHash, inHash, /** Root of the epoch out hash tree. Leaves are the out hashes of this block and all previous blocks in the epoch. */ epochOutHash, /** State reference. */ state, /** Global variables of an L2 block. */ globalVariables, /** Total fees in the block, computed by the root rollup circuit */ totalFees, /** Total mana used in the block, computed by the root rollup circuit */ totalManaUsed, /** Hash of the sponge blob of the block. */ spongeBlobHash, /** Hash of the block headers in the checkpoint. */ blockHeadersHash){
31
32
  this.lastArchive = lastArchive;
32
33
  this.blobsHash = blobsHash;
33
34
  this.inHash = inHash;
35
+ this.epochOutHash = epochOutHash;
34
36
  this.state = state;
35
37
  this.globalVariables = globalVariables;
36
38
  this.totalFees = totalFees;
@@ -43,6 +45,7 @@ _computedKey = inspect.custom;
43
45
  lastArchive: AppendOnlyTreeSnapshot.schema,
44
46
  blobsHash: schemas.Fr,
45
47
  inHash: schemas.Fr,
48
+ epochOutHash: schemas.Fr,
46
49
  state: StateReference.schema,
47
50
  globalVariables: GlobalVariables.schema,
48
51
  totalFees: schemas.Fr,
@@ -56,6 +59,7 @@ _computedKey = inspect.custom;
56
59
  fields.lastArchive,
57
60
  fields.blobsHash,
58
61
  fields.inHash,
62
+ fields.epochOutHash,
59
63
  fields.state,
60
64
  fields.globalVariables,
61
65
  fields.totalFees,
@@ -74,7 +78,7 @@ _computedKey = inspect.custom;
74
78
  return this.globalVariables.blockNumber;
75
79
  }
76
80
  getSize() {
77
- return this.lastArchive.getSize() + this.blobsHash.size + this.inHash.size + this.state.getSize() + this.globalVariables.getSize() + this.totalFees.size + this.totalManaUsed.size + this.spongeBlobHash.size + this.blockHeadersHash.size;
81
+ return this.lastArchive.getSize() + this.blobsHash.size + this.inHash.size + this.epochOutHash.size + this.state.getSize() + this.globalVariables.getSize() + this.totalFees.size + this.totalManaUsed.size + this.spongeBlobHash.size + this.blockHeadersHash.size;
78
82
  }
79
83
  toBuffer() {
80
84
  return serializeToBuffer(...L2BlockHeader.getFields(this));
@@ -87,17 +91,18 @@ _computedKey = inspect.custom;
87
91
  }
88
92
  static fromBuffer(buffer) {
89
93
  const reader = BufferReader.asReader(buffer);
90
- return new L2BlockHeader(reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(StateReference), reader.readObject(GlobalVariables), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr));
94
+ return new L2BlockHeader(reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(StateReference), reader.readObject(GlobalVariables), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr));
91
95
  }
92
96
  static fromFields(fields) {
93
97
  const reader = FieldReader.asReader(fields);
94
- return new L2BlockHeader(AppendOnlyTreeSnapshot.fromFields(reader), reader.readField(), reader.readField(), StateReference.fromFields(reader), GlobalVariables.fromFields(reader), reader.readField(), reader.readField(), reader.readField(), reader.readField());
98
+ return new L2BlockHeader(AppendOnlyTreeSnapshot.fromFields(reader), reader.readField(), reader.readField(), reader.readField(), StateReference.fromFields(reader), GlobalVariables.fromFields(reader), reader.readField(), reader.readField(), reader.readField(), reader.readField());
95
99
  }
96
100
  static empty(fields = {}) {
97
101
  return L2BlockHeader.from({
98
102
  lastArchive: AppendOnlyTreeSnapshot.empty(),
99
103
  blobsHash: Fr.ZERO,
100
104
  inHash: Fr.ZERO,
105
+ epochOutHash: Fr.ZERO,
101
106
  state: StateReference.empty(),
102
107
  globalVariables: GlobalVariables.empty(),
103
108
  totalFees: Fr.ZERO,
@@ -108,7 +113,7 @@ _computedKey = inspect.custom;
108
113
  });
109
114
  }
110
115
  isEmpty() {
111
- return this.lastArchive.isEmpty() && this.blobsHash.isZero() && this.inHash.isZero() && this.state.isEmpty() && this.globalVariables.isEmpty() && this.totalFees.isZero() && this.totalManaUsed.isZero() && this.spongeBlobHash.isZero() && this.blockHeadersHash.isZero();
116
+ return this.lastArchive.isEmpty() && this.blobsHash.isZero() && this.inHash.isZero() && this.epochOutHash.isZero() && this.state.isEmpty() && this.globalVariables.isEmpty() && this.totalFees.isZero() && this.totalManaUsed.isZero() && this.spongeBlobHash.isZero() && this.blockHeadersHash.isZero();
112
117
  }
113
118
  /**
114
119
  * Serializes this instance into a string.
@@ -120,7 +125,7 @@ _computedKey = inspect.custom;
120
125
  return L2BlockHeader.fromBuffer(hexToBuffer(str));
121
126
  }
122
127
  toCheckpointHeader() {
123
- return new CheckpointHeader(this.lastArchive.root, this.blockHeadersHash, this.blobsHash, this.inHash, this.globalVariables.slotNumber, this.globalVariables.timestamp, this.globalVariables.coinbase, this.globalVariables.feeRecipient, this.globalVariables.gasFees, this.totalManaUsed);
128
+ return new CheckpointHeader(this.lastArchive.root, this.blockHeadersHash, this.blobsHash, this.inHash, this.epochOutHash, this.globalVariables.slotNumber, this.globalVariables.timestamp, this.globalVariables.coinbase, this.globalVariables.feeRecipient, this.globalVariables.gasFees, this.totalManaUsed);
124
129
  }
125
130
  toBlockHeader() {
126
131
  return new BlockHeader(this.lastArchive, this.state, this.spongeBlobHash, this.globalVariables, this.totalFees, this.totalManaUsed);
@@ -130,6 +135,7 @@ _computedKey = inspect.custom;
130
135
  lastArchive: this.lastArchive.root.toString(),
131
136
  blobsHash: this.blobsHash.toString(),
132
137
  inHash: this.inHash.toString(),
138
+ epochOutHash: this.epochOutHash.toString(),
133
139
  state: this.state.toInspect(),
134
140
  globalVariables: this.globalVariables.toInspect(),
135
141
  totalFees: this.totalFees.toBigInt(),
@@ -143,6 +149,7 @@ _computedKey = inspect.custom;
143
149
  lastArchive: ${inspect(this.lastArchive)},
144
150
  blobsHash: ${inspect(this.blobsHash)},
145
151
  inHash: ${inspect(this.inHash)},
152
+ epochOutHash: ${inspect(this.epochOutHash)},
146
153
  state.l1ToL2MessageTree: ${inspect(this.state.l1ToL2MessageTree)},
147
154
  state.noteHashTree: ${inspect(this.state.partial.noteHashTree)},
148
155
  state.nullifierTree: ${inspect(this.state.partial.nullifierTree)},
@@ -155,6 +162,6 @@ _computedKey = inspect.custom;
155
162
  }`;
156
163
  }
157
164
  equals(other) {
158
- return this.lastArchive.equals(other.lastArchive) && this.blobsHash.equals(other.blobsHash) && this.inHash.equals(other.inHash) && this.state.equals(other.state) && this.globalVariables.equals(other.globalVariables) && this.totalFees.equals(other.totalFees) && this.totalManaUsed.equals(other.totalManaUsed) && this.spongeBlobHash.equals(other.spongeBlobHash) && this.blockHeadersHash.equals(other.blockHeadersHash);
165
+ return this.lastArchive.equals(other.lastArchive) && this.blobsHash.equals(other.blobsHash) && this.inHash.equals(other.inHash) && this.epochOutHash.equals(other.epochOutHash) && this.state.equals(other.state) && this.globalVariables.equals(other.globalVariables) && this.totalFees.equals(other.totalFees) && this.totalManaUsed.equals(other.totalManaUsed) && this.spongeBlobHash.equals(other.spongeBlobHash) && this.blockHeadersHash.equals(other.blockHeadersHash);
159
166
  }
160
167
  }
@@ -10,7 +10,6 @@ import { Body } from './body.js';
10
10
  import type { L2BlockInfo } from './l2_block_info.js';
11
11
  /**
12
12
  * An L2 block with a header and a body.
13
- * TODO: Delete the existing `L2Block` class and rename this to `L2Block`.
14
13
  */
15
14
  export declare class L2BlockNew {
16
15
  archive: AppendOnlyTreeSnapshot;
@@ -132,4 +131,4 @@ export declare class L2BlockNew {
132
131
  getPrivateLogs(): PrivateLog[];
133
132
  toBlockInfo(): L2BlockInfo;
134
133
  }
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfbmV3LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfbmV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBdUIsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUEwQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDakMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQ7OztHQUdHO0FBQ0gscUJBQWEsVUFBVTtJQUdaLE9BQU8sRUFBRSxzQkFBc0I7SUFFL0IsTUFBTSxFQUFFLFdBQVc7SUFFbkIsSUFBSSxFQUFFLElBQUk7SUFFVixnQkFBZ0IsRUFBRSxnQkFBZ0I7SUFFbEMscUJBQXFCLEVBQUUsTUFBTTtJQVZ0QztJQUNFLDJEQUEyRDtJQUNwRCxPQUFPLEVBQUUsc0JBQXNCO0lBQ3RDLDJCQUEyQjtJQUNwQixNQUFNLEVBQUUsV0FBVztJQUMxQixxQkFBcUI7SUFDZCxJQUFJLEVBQUUsSUFBSTtJQUNqQiwwREFBMEQ7SUFDbkQsZ0JBQWdCLEVBQUUsZ0JBQWdCO0lBQ3pDLGdEQUFnRDtJQUN6QyxxQkFBcUIsRUFBRSxNQUFNLEVBQ2xDO0lBRUosSUFBSSxNQUFNLElBQUksV0FBVyxDQUV4QjtJQUVELElBQUksU0FBUyxJQUFJLE1BQU0sQ0FFdEI7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FhaEI7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsWUFBWSxjQVMzQztJQUVEOzs7T0FHRztJQUNILFFBQVEsNEJBRVA7SUFFRDs7O09BR0c7SUFDSSxJQUFJLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6QjtJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksR0FBRyxPQUFPLENBUWxDO0lBRU0sWUFBWSxJQUFJLEVBQUUsRUFBRSxDQUcxQjtJQUVNLGVBQWUsSUFBSSxhQUFhLENBc0J0QztJQUVELE1BQU0sQ0FBQyxLQUFLLGVBRVg7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILE9BQWEsTUFBTSxDQUNqQixXQUFXLEVBQUUsV0FBVyxFQUN4QixFQUNFLGdCQUF3RCxFQUN4RCxxQkFBeUIsRUFDekIsV0FBZSxFQUNmLFNBQWMsRUFDZCxhQUFhLEVBQ2IsR0FBRyxvQkFBb0IsRUFDeEIsR0FBRTtRQUNELGdCQUFnQixDQUFDLEVBQUUsZ0JBQWdCLENBQUM7UUFDcEMscUJBQXFCLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDL0IsV0FBVyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3JCLFNBQVMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2RCxhQUFhLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLEtBQUssT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pGLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBTSxHQUN6RCxPQUFPLENBQUMsVUFBVSxDQUFDLENBS3JCO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUTs7Ozs7Ozs7TUFxQlA7SUFFRCxjQUFjLElBQUksVUFBVSxFQUFFLENBRTdCO0lBRUQsV0FBVyxJQUFJLFdBQVcsQ0FTekI7Q0FDRiJ9
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfbmV3LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfbmV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBdUIsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUEwQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDakMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFPdEQ7O0dBRUc7QUFDSCxxQkFBYSxVQUFVO0lBR1osT0FBTyxFQUFFLHNCQUFzQjtJQUUvQixNQUFNLEVBQUUsV0FBVztJQUVuQixJQUFJLEVBQUUsSUFBSTtJQUVWLGdCQUFnQixFQUFFLGdCQUFnQjtJQUVsQyxxQkFBcUIsRUFBRSxNQUFNO0lBVnRDO0lBQ0UsMkRBQTJEO0lBQ3BELE9BQU8sRUFBRSxzQkFBc0I7SUFDdEMsMkJBQTJCO0lBQ3BCLE1BQU0sRUFBRSxXQUFXO0lBQzFCLHFCQUFxQjtJQUNkLElBQUksRUFBRSxJQUFJO0lBQ2pCLDBEQUEwRDtJQUNuRCxnQkFBZ0IsRUFBRSxnQkFBZ0I7SUFDekMsZ0RBQWdEO0lBQ3pDLHFCQUFxQixFQUFFLE1BQU0sRUFDbEM7SUFFSixJQUFJLE1BQU0sSUFBSSxXQUFXLENBRXhCO0lBRUQsSUFBSSxTQUFTLElBQUksTUFBTSxDQUV0QjtJQUVELE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWFoQjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxZQUFZLGNBUzNDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVEOzs7T0FHRztJQUNJLElBQUksSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXpCO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLE9BQU8sQ0FRbEM7SUFFTSxZQUFZLElBQUksRUFBRSxFQUFFLENBRzFCO0lBRU0sZUFBZSxJQUFJLGFBQWEsQ0FzQnRDO0lBRUQsTUFBTSxDQUFDLEtBQUssZUFFWDtJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsT0FBYSxNQUFNLENBQ2pCLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLEVBQ0UsZ0JBQXdELEVBQ3hELHFCQUF5QixFQUN6QixXQUFlLEVBQ2YsU0FBYyxFQUNkLGFBQWEsRUFDYixHQUFHLG9CQUFvQixFQUN4QixHQUFFO1FBQ0QsZ0JBQWdCLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQztRQUNwQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUMvQixXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDckIsU0FBUyxDQUFDLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELGFBQWEsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sS0FBSyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDakYsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFNLEdBQ3pELE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FLckI7SUFFRDs7O09BR0c7SUFDSCxRQUFROzs7Ozs7OztNQXFCUDtJQUVELGNBQWMsSUFBSSxVQUFVLEVBQUUsQ0FFN0I7SUFFRCxXQUFXLElBQUksV0FBVyxDQVN6QjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_new.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAA0B,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,qBAAa,UAAU;IAGZ,OAAO,EAAE,sBAAsB;IAE/B,MAAM,EAAE,WAAW;IAEnB,IAAI,EAAE,IAAI;IAEV,gBAAgB,EAAE,gBAAgB;IAElC,qBAAqB,EAAE,MAAM;IAVtC;IACE,2DAA2D;IACpD,OAAO,EAAE,sBAAsB;IACtC,2BAA2B;IACpB,MAAM,EAAE,WAAW;IAC1B,qBAAqB;IACd,IAAI,EAAE,IAAI;IACjB,0DAA0D;IACnD,gBAAgB,EAAE,gBAAgB;IACzC,gDAAgD;IACzC,qBAAqB,EAAE,MAAM,EAClC;IAEJ,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAahB;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,cAS3C;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;OAGG;IACI,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAEzB;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAQlC;IAEM,YAAY,IAAI,EAAE,EAAE,CAG1B;IAEM,eAAe,IAAI,aAAa,CAsBtC;IAED,MAAM,CAAC,KAAK,eAEX;IAED;;;;;;;;OAQG;IACH,OAAa,MAAM,CACjB,WAAW,EAAE,WAAW,EACxB,EACE,gBAAwD,EACxD,qBAAyB,EACzB,WAAe,EACf,SAAc,EACd,aAAa,EACb,GAAG,oBAAoB,EACxB,GAAE;QACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACjF,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAM,GACzD,OAAO,CAAC,UAAU,CAAC,CAKrB;IAED;;;OAGG;IACH,QAAQ;;;;;;;;MAqBP;IAED,cAAc,IAAI,UAAU,EAAE,CAE7B;IAED,WAAW,IAAI,WAAW,CASzB;CACF"}
1
+ {"version":3,"file":"l2_block_new.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAA0B,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOtD;;GAEG;AACH,qBAAa,UAAU;IAGZ,OAAO,EAAE,sBAAsB;IAE/B,MAAM,EAAE,WAAW;IAEnB,IAAI,EAAE,IAAI;IAEV,gBAAgB,EAAE,gBAAgB;IAElC,qBAAqB,EAAE,MAAM;IAVtC;IACE,2DAA2D;IACpD,OAAO,EAAE,sBAAsB;IACtC,2BAA2B;IACpB,MAAM,EAAE,WAAW;IAC1B,qBAAqB;IACd,IAAI,EAAE,IAAI;IACjB,0DAA0D;IACnD,gBAAgB,EAAE,gBAAgB;IACzC,gDAAgD;IACzC,qBAAqB,EAAE,MAAM,EAClC;IAEJ,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAahB;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,cAS3C;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;OAGG;IACI,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAEzB;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAQlC;IAEM,YAAY,IAAI,EAAE,EAAE,CAG1B;IAEM,eAAe,IAAI,aAAa,CAsBtC;IAED,MAAM,CAAC,KAAK,eAEX;IAED;;;;;;;;OAQG;IACH,OAAa,MAAM,CACjB,WAAW,EAAE,WAAW,EACxB,EACE,gBAAwD,EACxD,qBAAyB,EACzB,WAAe,EACf,SAAc,EACd,aAAa,EACb,GAAG,oBAAoB,EACxB,GAAE;QACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACjF,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAM,GACzD,OAAO,CAAC,UAAU,CAAC,CAKrB;IAED;;;OAGG;IACH,QAAQ;;;;;;;;MAqBP;IAED,cAAc,IAAI,UAAU,EAAE,CAE7B;IAED,WAAW,IAAI,WAAW,CASzB;CACF"}
@@ -6,9 +6,12 @@ import { z } from 'zod';
6
6
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
7
7
  import { BlockHeader } from '../tx/block_header.js';
8
8
  import { Body } from './body.js';
9
+ // TODO(palla/mbps): Delete the existing `L2Block` class and rename this to `L2Block`.
10
+ // TODO(palla/mbps): Consider moving the checkpointNumber and indexWithinCheckpoint to the header:
11
+ // if the blockNumber is there, why not these as well? Consider whether they should be part of the
12
+ // circuits structs though.
9
13
  /**
10
14
  * An L2 block with a header and a body.
11
- * TODO: Delete the existing `L2Block` class and rename this to `L2Block`.
12
15
  */ export class L2BlockNew {
13
16
  archive;
14
17
  header;