@aztec/pxe 0.0.1-commit.29c6b1a3 → 0.0.1-commit.2b2662070

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 (253) hide show
  1. package/dest/bin/check_oracle_version.js +4 -4
  2. package/dest/block_synchronizer/block_synchronizer.d.ts +5 -3
  3. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  4. package/dest/block_synchronizer/block_synchronizer.js +15 -3
  5. package/dest/config/index.d.ts +2 -2
  6. package/dest/config/index.d.ts.map +1 -1
  7. package/dest/config/index.js +8 -15
  8. package/dest/config/package_info.js +1 -1
  9. package/dest/contract_function_simulator/contract_function_simulator.d.ts +63 -31
  10. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  11. package/dest/contract_function_simulator/contract_function_simulator.js +205 -74
  12. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  13. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  14. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  15. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -7
  16. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  17. package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -11
  18. package/dest/contract_function_simulator/index.d.ts +2 -1
  19. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  20. package/dest/contract_function_simulator/index.js +1 -0
  21. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +4 -6
  22. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  23. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +8 -10
  24. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +1 -1
  25. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +1 -1
  26. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +2 -2
  27. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  28. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +2 -4
  29. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +4 -7
  30. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  31. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +6 -11
  32. package/dest/contract_function_simulator/oracle/interfaces.d.ts +61 -45
  33. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  34. package/dest/contract_function_simulator/oracle/legacy_oracle_mappings.d.ts +9 -0
  35. package/dest/contract_function_simulator/oracle/legacy_oracle_mappings.d.ts.map +1 -0
  36. package/dest/contract_function_simulator/oracle/legacy_oracle_mappings.js +47 -0
  37. package/dest/contract_function_simulator/oracle/oracle.d.ts +75 -44
  38. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  39. package/dest/contract_function_simulator/oracle/oracle.js +305 -108
  40. package/dest/contract_function_simulator/oracle/private_execution.js +5 -3
  41. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +53 -79
  42. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  43. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +110 -87
  44. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +126 -67
  45. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  46. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +328 -140
  47. package/dest/contract_function_simulator/pick_notes.d.ts +1 -1
  48. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  49. package/dest/contract_function_simulator/pick_notes.js +9 -2
  50. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +1 -1
  51. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
  52. package/dest/contract_function_simulator/proxied_contract_data_source.js +3 -0
  53. package/dest/contract_logging.d.ts +27 -0
  54. package/dest/contract_logging.d.ts.map +1 -0
  55. package/dest/contract_logging.js +38 -0
  56. package/dest/contract_sync/contract_sync_service.d.ts +44 -0
  57. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -0
  58. package/dest/contract_sync/contract_sync_service.js +116 -0
  59. package/dest/contract_sync/helpers.d.ts +28 -0
  60. package/dest/contract_sync/helpers.d.ts.map +1 -0
  61. package/dest/contract_sync/{index.js → helpers.js} +19 -13
  62. package/dest/debug/pxe_debug_utils.d.ts +14 -10
  63. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  64. package/dest/debug/pxe_debug_utils.js +16 -15
  65. package/dest/entrypoints/client/bundle/index.d.ts +3 -1
  66. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  67. package/dest/entrypoints/client/bundle/index.js +2 -0
  68. package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
  69. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  70. package/dest/entrypoints/client/bundle/utils.js +23 -9
  71. package/dest/entrypoints/client/lazy/index.d.ts +3 -1
  72. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  73. package/dest/entrypoints/client/lazy/index.js +2 -0
  74. package/dest/entrypoints/client/lazy/utils.d.ts +3 -3
  75. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  76. package/dest/entrypoints/client/lazy/utils.js +24 -10
  77. package/dest/entrypoints/pxe_creation_options.d.ts +5 -2
  78. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  79. package/dest/entrypoints/pxe_creation_options.js +3 -1
  80. package/dest/entrypoints/server/index.d.ts +4 -3
  81. package/dest/entrypoints/server/index.d.ts.map +1 -1
  82. package/dest/entrypoints/server/index.js +3 -2
  83. package/dest/entrypoints/server/utils.d.ts +2 -2
  84. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  85. package/dest/entrypoints/server/utils.js +30 -11
  86. package/dest/events/event_service.d.ts +5 -5
  87. package/dest/events/event_service.d.ts.map +1 -1
  88. package/dest/events/event_service.js +20 -9
  89. package/dest/job_coordinator/job_coordinator.d.ts +3 -2
  90. package/dest/job_coordinator/job_coordinator.d.ts.map +1 -1
  91. package/dest/job_coordinator/job_coordinator.js +3 -2
  92. package/dest/logs/log_service.d.ts +10 -9
  93. package/dest/logs/log_service.d.ts.map +1 -1
  94. package/dest/logs/log_service.js +41 -61
  95. package/dest/messages/message_context_service.d.ts +17 -0
  96. package/dest/messages/message_context_service.d.ts.map +1 -0
  97. package/dest/messages/message_context_service.js +36 -0
  98. package/dest/notes/note_service.d.ts +7 -8
  99. package/dest/notes/note_service.d.ts.map +1 -1
  100. package/dest/notes/note_service.js +23 -14
  101. package/dest/notes_filter.d.ts +24 -0
  102. package/dest/notes_filter.d.ts.map +1 -0
  103. package/dest/notes_filter.js +4 -0
  104. package/dest/oracle_version.d.ts +4 -3
  105. package/dest/oracle_version.d.ts.map +1 -1
  106. package/dest/oracle_version.js +20 -10
  107. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  108. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  109. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  110. package/dest/private_kernel/hints/index.d.ts +1 -1
  111. package/dest/private_kernel/hints/index.js +1 -1
  112. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
  113. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  114. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +129 -68
  115. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  116. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  117. package/dest/private_kernel/hints/test_utils.js +203 -0
  118. package/dest/private_kernel/private_kernel_execution_prover.d.ts +3 -2
  119. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  120. package/dest/private_kernel/private_kernel_execution_prover.js +21 -13
  121. package/dest/private_kernel/private_kernel_oracle.d.ts +6 -2
  122. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  123. package/dest/private_kernel/private_kernel_oracle.js +7 -3
  124. package/dest/pxe.d.ts +74 -24
  125. package/dest/pxe.d.ts.map +1 -1
  126. package/dest/pxe.js +136 -76
  127. package/dest/storage/address_store/address_store.d.ts +1 -1
  128. package/dest/storage/address_store/address_store.d.ts.map +1 -1
  129. package/dest/storage/address_store/address_store.js +12 -11
  130. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -1
  131. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -1
  132. package/dest/storage/anchor_block_store/anchor_block_store.js +8 -1
  133. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  134. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  135. package/dest/storage/capsule_store/capsule_service.js +50 -0
  136. package/dest/storage/capsule_store/capsule_store.d.ts +9 -9
  137. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -1
  138. package/dest/storage/capsule_store/capsule_store.js +39 -36
  139. package/dest/storage/capsule_store/index.d.ts +2 -1
  140. package/dest/storage/capsule_store/index.d.ts.map +1 -1
  141. package/dest/storage/capsule_store/index.js +1 -0
  142. package/dest/storage/contract_store/contract_store.d.ts +42 -15
  143. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  144. package/dest/storage/contract_store/contract_store.js +157 -72
  145. package/dest/storage/metadata.d.ts +1 -1
  146. package/dest/storage/metadata.js +1 -1
  147. package/dest/storage/note_store/note_store.d.ts +13 -3
  148. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  149. package/dest/storage/note_store/note_store.js +147 -107
  150. package/dest/storage/private_event_store/private_event_store.d.ts +1 -1
  151. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
  152. package/dest/storage/private_event_store/private_event_store.js +84 -61
  153. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  154. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  155. package/dest/storage/tagging_store/recipient_tagging_store.js +31 -19
  156. package/dest/storage/tagging_store/sender_address_book_store.d.ts +1 -1
  157. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +1 -1
  158. package/dest/storage/tagging_store/sender_address_book_store.js +20 -14
  159. package/dest/storage/tagging_store/sender_tagging_store.d.ts +29 -28
  160. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  161. package/dest/storage/tagging_store/sender_tagging_store.js +233 -137
  162. package/dest/tagging/get_all_logs_by_tags.d.ts +1 -1
  163. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  164. package/dest/tagging/get_all_logs_by_tags.js +17 -3
  165. package/dest/tagging/index.d.ts +3 -3
  166. package/dest/tagging/index.d.ts.map +1 -1
  167. package/dest/tagging/index.js +1 -1
  168. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +4 -5
  169. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -1
  170. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +7 -21
  171. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +2 -2
  172. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +6 -7
  173. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -1
  174. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +12 -11
  175. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +4 -8
  176. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  177. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +13 -7
  178. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +4 -3
  179. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -1
  180. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +20 -10
  181. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +5 -7
  182. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  183. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +36 -24
  184. package/package.json +25 -16
  185. package/src/bin/check_oracle_version.ts +4 -4
  186. package/src/block_synchronizer/block_synchronizer.ts +27 -12
  187. package/src/config/index.ts +3 -9
  188. package/src/config/package_info.ts +1 -1
  189. package/src/contract_function_simulator/contract_function_simulator.ts +365 -133
  190. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  191. package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -14
  192. package/src/contract_function_simulator/index.ts +1 -0
  193. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +9 -9
  194. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +1 -1
  195. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +2 -5
  196. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +4 -10
  197. package/src/contract_function_simulator/oracle/interfaces.ts +88 -60
  198. package/src/contract_function_simulator/oracle/legacy_oracle_mappings.ts +104 -0
  199. package/src/contract_function_simulator/oracle/oracle.ts +385 -144
  200. package/src/contract_function_simulator/oracle/private_execution.ts +4 -4
  201. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +136 -184
  202. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +543 -169
  203. package/src/contract_function_simulator/pick_notes.ts +9 -2
  204. package/src/contract_function_simulator/proxied_contract_data_source.ts +8 -1
  205. package/src/contract_logging.ts +52 -0
  206. package/src/contract_sync/contract_sync_service.ts +176 -0
  207. package/src/contract_sync/{index.ts → helpers.ts} +22 -22
  208. package/src/debug/pxe_debug_utils.ts +48 -18
  209. package/src/entrypoints/client/bundle/index.ts +2 -0
  210. package/src/entrypoints/client/bundle/utils.ts +18 -18
  211. package/src/entrypoints/client/lazy/index.ts +2 -0
  212. package/src/entrypoints/client/lazy/utils.ts +19 -18
  213. package/src/entrypoints/pxe_creation_options.ts +9 -1
  214. package/src/entrypoints/server/index.ts +3 -2
  215. package/src/entrypoints/server/utils.ts +24 -29
  216. package/src/events/event_service.ts +21 -10
  217. package/src/job_coordinator/job_coordinator.ts +4 -3
  218. package/src/logs/log_service.ts +77 -105
  219. package/src/messages/message_context_service.ts +44 -0
  220. package/src/notes/note_service.ts +24 -15
  221. package/src/notes_filter.ts +24 -0
  222. package/src/oracle_version.ts +20 -10
  223. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  224. package/src/private_kernel/hints/index.ts +1 -1
  225. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +164 -117
  226. package/src/private_kernel/hints/test_utils.ts +325 -0
  227. package/src/private_kernel/private_kernel_execution_prover.ts +25 -15
  228. package/src/private_kernel/private_kernel_oracle.ts +7 -7
  229. package/src/pxe.ts +252 -129
  230. package/src/storage/address_store/address_store.ts +15 -15
  231. package/src/storage/anchor_block_store/anchor_block_store.ts +8 -0
  232. package/src/storage/capsule_store/capsule_service.ts +90 -0
  233. package/src/storage/capsule_store/capsule_store.ts +42 -34
  234. package/src/storage/capsule_store/index.ts +1 -0
  235. package/src/storage/contract_store/contract_store.ts +186 -76
  236. package/src/storage/metadata.ts +1 -1
  237. package/src/storage/note_store/note_store.ts +166 -132
  238. package/src/storage/private_event_store/private_event_store.ts +102 -81
  239. package/src/storage/tagging_store/recipient_tagging_store.ts +38 -24
  240. package/src/storage/tagging_store/sender_address_book_store.ts +20 -14
  241. package/src/storage/tagging_store/sender_tagging_store.ts +287 -156
  242. package/src/tagging/get_all_logs_by_tags.ts +28 -4
  243. package/src/tagging/index.ts +2 -2
  244. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +9 -24
  245. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
  246. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +10 -15
  247. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +23 -10
  248. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +26 -11
  249. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +27 -26
  250. package/dest/contract_sync/index.d.ts +0 -23
  251. package/dest/contract_sync/index.d.ts.map +0 -1
  252. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  253. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { BlockNumber } from '@aztec/foundation/branded-types';
2
- import { type Logger, createLogger } from '@aztec/foundation/log';
2
+ import { type Logger, type LoggerBindings, createLogger } from '@aztec/foundation/log';
3
3
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
4
4
  import type { L2TipsKVStore } from '@aztec/kv-store/stores';
5
5
  import { BlockHash, L2BlockStream, type L2BlockStreamEvent, type L2BlockStreamEventHandler } from '@aztec/stdlib/block';
@@ -7,6 +7,7 @@ import type { AztecNode } from '@aztec/stdlib/interfaces/client';
7
7
  import type { BlockHeader } from '@aztec/stdlib/tx';
8
8
 
9
9
  import type { BlockSynchronizerConfig } from '../config/index.js';
10
+ import type { ContractSyncService } from '../contract_sync/contract_sync_service.js';
10
11
  import type { AnchorBlockStore } from '../storage/anchor_block_store/anchor_block_store.js';
11
12
  import type { NoteStore } from '../storage/note_store/note_store.js';
12
13
  import type { PrivateEventStore } from '../storage/private_event_store/private_event_store.js';
@@ -28,23 +29,27 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
28
29
  private noteStore: NoteStore,
29
30
  private privateEventStore: PrivateEventStore,
30
31
  private l2TipsStore: L2TipsKVStore,
32
+ private contractSyncService: ContractSyncService,
31
33
  private config: Partial<BlockSynchronizerConfig> = {},
32
- loggerOrSuffix?: string | Logger,
34
+ bindings?: LoggerBindings,
33
35
  ) {
34
- this.log =
35
- !loggerOrSuffix || typeof loggerOrSuffix === 'string'
36
- ? createLogger(loggerOrSuffix ? `pxe:block_synchronizer:${loggerOrSuffix}` : `pxe:block_synchronizer`)
37
- : loggerOrSuffix;
36
+ this.log = createLogger('pxe:block_synchronizer', bindings);
38
37
  this.blockStream = this.createBlockStream(config);
39
38
  }
40
39
 
41
40
  protected createBlockStream(config: Partial<BlockSynchronizerConfig>): L2BlockStream {
42
- return new L2BlockStream(this.node, this.l2TipsStore, this, createLogger('pxe:block_stream'), {
43
- batchSize: config.l2BlockBatchSize,
44
- // Skipping finalized blocks makes us sync much faster - we only need to download blocks other than the latest one
45
- // in order to detect reorgs, and there can be no reorgs on finalized block, making this safe.
46
- skipFinalized: true,
47
- });
41
+ return new L2BlockStream(
42
+ this.node,
43
+ this.l2TipsStore,
44
+ this,
45
+ createLogger('pxe:block_stream', this.log.getBindings()),
46
+ {
47
+ batchSize: config.l2BlockBatchSize,
48
+ // Skipping finalized blocks makes us sync much faster - we only need to download blocks other than the latest one
49
+ // in order to detect reorgs, and there can be no reorgs on finalized block, making this safe.
50
+ skipFinalized: true,
51
+ },
52
+ );
48
53
  }
49
54
 
50
55
  /** Handle events emitted by the block stream. */
@@ -72,6 +77,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
72
77
  const blockHeader = await this.node.getBlockHeader(BlockNumber(event.block.number));
73
78
  if (blockHeader) {
74
79
  await this.updateAnchorBlockHeader(blockHeader);
80
+ } else {
81
+ this.log.warn(`Block header not found for proven block ${event.block.number}, skipping anchor update`);
75
82
  }
76
83
  }
77
84
  break;
@@ -81,6 +88,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
81
88
  const blockHeader = await this.node.getBlockHeader(BlockNumber(event.block.number));
82
89
  if (blockHeader) {
83
90
  await this.updateAnchorBlockHeader(blockHeader);
91
+ } else {
92
+ this.log.warn(`Block header not found for finalized block ${event.block.number}, skipping anchor update`);
84
93
  }
85
94
  }
86
95
  break;
@@ -122,6 +131,10 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
122
131
 
123
132
  /** Updates the anchor block header to the target block */
124
133
  private async updateAnchorBlockHeader(blockHeader: BlockHeader) {
134
+ // Whenever the anchor block header is updated, we need to synchronize the private state of contracts again.
135
+ // Therefore, we clear the contract synchronization cache here such that the sync is re-triggered upon new
136
+ // execution.
137
+ this.contractSyncService.wipe();
125
138
  this.log.verbose(`Updated pxe last block to ${blockHeader.getBlockNumber()}`, blockHeader.toInspect());
126
139
  await this.anchorBlockStore.setHeader(blockHeader);
127
140
  }
@@ -143,6 +156,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
143
156
  }
144
157
 
145
158
  this.log.debug(`Syncing PXE with the node`);
159
+ // Capture the promise locally so we always await the exact promise we created, even if this.isSyncing is modified
160
+ // between assignment and await (e.g. due to future refactors introducing a yield point).
146
161
  const isSyncing = this.doSync();
147
162
  this.isSyncing = isSyncing;
148
163
  try {
@@ -1,12 +1,13 @@
1
1
  import {
2
2
  type ConfigMappingsType,
3
3
  booleanConfigHelper,
4
+ enumConfigHelper,
4
5
  getConfigFromMappings,
5
6
  numberConfigHelper,
6
7
  parseBooleanEnv,
7
8
  } from '@aztec/foundation/config';
8
- import { type DataStoreConfig, dataConfigMappings } from '@aztec/kv-store/config';
9
9
  import { type ChainConfig, chainConfigMappings } from '@aztec/stdlib/config';
10
+ import { type DataStoreConfig, dataConfigMappings } from '@aztec/stdlib/kv-store';
10
11
 
11
12
  export { getPackageInfo } from './package_info.js';
12
13
 
@@ -58,14 +59,7 @@ export const pxeConfigMappings: ConfigMappingsType<PXEConfig> = {
58
59
  syncChainTip: {
59
60
  env: 'PXE_SYNC_CHAIN_TIP',
60
61
  description: 'Which chain tip to sync to (proposed, checkpointed, proven, finalized)',
61
- defaultValue: 'proposed',
62
- parseEnv: (val: string) => {
63
- const allowedValues = ['proposed', 'checkpointed', 'proven', 'finalized'];
64
- if (allowedValues.includes(val)) {
65
- return val;
66
- }
67
- throw new Error(`Invalid value for PXE_SYNC_CHAIN_TIP: ${val}. Allowed values are: ${allowedValues.join(', ')}`);
68
- },
62
+ ...enumConfigHelper(['proposed', 'checkpointed', 'proven', 'finalized'], 'proposed'),
69
63
  },
70
64
  };
71
65
 
@@ -1,3 +1,3 @@
1
1
  export function getPackageInfo() {
2
- return { version: '4.0.0', name: '@aztec/pxe' };
2
+ return { version: '5.0.0', name: '@aztec/pxe' };
3
3
  }