@aztec/pxe 0.32.1 → 0.33.0
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.
- package/dest/database/kv_pxe_database.d.ts +1 -1
- package/dest/database/kv_pxe_database.d.ts.map +1 -1
- package/dest/database/pxe_database.d.ts +1 -1
- package/dest/database/pxe_database.d.ts.map +1 -1
- package/dest/kernel_prover/kernel_prover.d.ts +3 -42
- package/dest/kernel_prover/kernel_prover.d.ts.map +1 -1
- package/dest/kernel_prover/kernel_prover.js +9 -37
- package/dest/kernel_prover/proof_creator.d.ts +2 -2
- package/dest/kernel_prover/proof_creator.d.ts.map +1 -1
- package/dest/kernel_prover/proof_creator.js +4 -3
- package/dest/note_processor/note_processor.d.ts +7 -9
- package/dest/note_processor/note_processor.d.ts.map +1 -1
- package/dest/note_processor/note_processor.js +18 -20
- package/dest/pxe_http/pxe_http_server.d.ts.map +1 -1
- package/dest/pxe_http/pxe_http_server.js +3 -3
- package/dest/pxe_service/pxe_service.d.ts +3 -2
- package/dest/pxe_service/pxe_service.d.ts.map +1 -1
- package/dest/pxe_service/pxe_service.js +52 -34
- package/dest/pxe_service/test/pxe_test_suite.js +3 -3
- package/dest/synchronizer/synchronizer.d.ts.map +1 -1
- package/dest/synchronizer/synchronizer.js +9 -13
- package/package.json +22 -16
- package/src/database/kv_pxe_database.ts +1 -1
- package/src/database/pxe_database.ts +1 -1
- package/src/kernel_prover/kernel_prover.ts +22 -88
- package/src/kernel_prover/proof_creator.ts +7 -4
- package/src/note_processor/note_processor.ts +21 -26
- package/src/pxe_http/pxe_http_server.ts +2 -1
- package/src/pxe_service/pxe_service.ts +63 -40
- package/src/pxe_service/test/pxe_test_suite.ts +2 -2
- package/src/synchronizer/synchronizer.ts +9 -15
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
type AztecNode,
|
|
3
3
|
type KeyStore,
|
|
4
|
-
|
|
4
|
+
type L2Block,
|
|
5
5
|
L2BlockL2Logs,
|
|
6
6
|
MerkleTreeId,
|
|
7
7
|
type TxHash,
|
|
@@ -107,17 +107,14 @@ export class Synchronizer {
|
|
|
107
107
|
|
|
108
108
|
const encryptedLogs = blocks.flatMap(block => block.body.encryptedLogs);
|
|
109
109
|
|
|
110
|
-
// Wrap blocks in block contexts & only keep those that match our query
|
|
111
|
-
const blockContexts = blocks.filter(block => block.number >= from).map(block => new L2BlockContext(block));
|
|
112
|
-
|
|
113
110
|
// Update latest tree roots from the most recent block
|
|
114
|
-
const latestBlock =
|
|
111
|
+
const latestBlock = blocks[blocks.length - 1];
|
|
115
112
|
await this.setHeaderFromBlock(latestBlock);
|
|
116
113
|
|
|
117
114
|
const logCount = L2BlockL2Logs.getTotalLogCount(encryptedLogs);
|
|
118
115
|
this.log(`Forwarding ${logCount} encrypted logs and blocks to ${this.noteProcessors.length} note processors`);
|
|
119
116
|
for (const noteProcessor of this.noteProcessors) {
|
|
120
|
-
await noteProcessor.process(
|
|
117
|
+
await noteProcessor.process(blocks, encryptedLogs);
|
|
121
118
|
}
|
|
122
119
|
return true;
|
|
123
120
|
} catch (err) {
|
|
@@ -185,14 +182,12 @@ export class Synchronizer {
|
|
|
185
182
|
|
|
186
183
|
const encryptedLogs = blocks.flatMap(block => block.body.encryptedLogs);
|
|
187
184
|
|
|
188
|
-
const blockContexts = blocks.map(block => new L2BlockContext(block));
|
|
189
|
-
|
|
190
185
|
const logCount = L2BlockL2Logs.getTotalLogCount(encryptedLogs);
|
|
191
186
|
this.log(`Forwarding ${logCount} encrypted logs and blocks to note processors in catch up mode`);
|
|
192
187
|
|
|
193
188
|
for (const noteProcessor of catchUpGroup) {
|
|
194
189
|
// find the index of the first block that the note processor is not yet synced to
|
|
195
|
-
const index =
|
|
190
|
+
const index = blocks.findIndex(block => block.number > noteProcessor.status.syncedToBlock);
|
|
196
191
|
if (index === -1) {
|
|
197
192
|
// Due to the limit, we might not have fetched a new enough block for the note processor.
|
|
198
193
|
// And since the group is sorted, we break as soon as we find a note processor
|
|
@@ -202,10 +197,10 @@ export class Synchronizer {
|
|
|
202
197
|
|
|
203
198
|
this.log.debug(
|
|
204
199
|
`Catching up note processor ${noteProcessor.publicKey.toString()} by processing ${
|
|
205
|
-
|
|
200
|
+
blocks.length - index
|
|
206
201
|
} blocks`,
|
|
207
202
|
);
|
|
208
|
-
await noteProcessor.process(
|
|
203
|
+
await noteProcessor.process(blocks.slice(index), encryptedLogs.slice(index));
|
|
209
204
|
|
|
210
205
|
if (noteProcessor.status.syncedToBlock === toBlockNumber) {
|
|
211
206
|
// Note processor caught up, move it to `noteProcessors` from `noteProcessorsToCatchUp`.
|
|
@@ -231,13 +226,12 @@ export class Synchronizer {
|
|
|
231
226
|
}
|
|
232
227
|
}
|
|
233
228
|
|
|
234
|
-
private async setHeaderFromBlock(latestBlock:
|
|
235
|
-
|
|
236
|
-
if (block.number < this.initialSyncBlockNumber) {
|
|
229
|
+
private async setHeaderFromBlock(latestBlock: L2Block) {
|
|
230
|
+
if (latestBlock.number < this.initialSyncBlockNumber) {
|
|
237
231
|
return;
|
|
238
232
|
}
|
|
239
233
|
|
|
240
|
-
await this.db.setHeader(
|
|
234
|
+
await this.db.setHeader(latestBlock.header);
|
|
241
235
|
}
|
|
242
236
|
|
|
243
237
|
/**
|