@aztec/pxe 0.32.0 → 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/contract_data_oracle/index.d.ts +6 -6
- package/dest/contract_data_oracle/index.d.ts.map +1 -1
- package/dest/contract_data_oracle/index.js +1 -1
- package/dest/contract_data_oracle/private_functions_tree.d.ts +3 -3
- package/dest/contract_data_oracle/private_functions_tree.d.ts.map +1 -1
- package/dest/database/contracts/contract_artifact_db.d.ts +2 -2
- package/dest/database/contracts/contract_artifact_db.d.ts.map +1 -1
- package/dest/database/contracts/contract_instance_db.d.ts +2 -2
- package/dest/database/contracts/contract_instance_db.d.ts.map +1 -1
- package/dest/database/deferred_note_dao.d.ts +1 -1
- package/dest/database/deferred_note_dao.d.ts.map +1 -1
- package/dest/database/deferred_note_dao.js +1 -1
- package/dest/database/kv_pxe_database.d.ts +7 -7
- package/dest/database/kv_pxe_database.d.ts.map +1 -1
- package/dest/database/kv_pxe_database.js +1 -1
- package/dest/database/note_dao.d.ts +2 -2
- package/dest/database/note_dao.d.ts.map +1 -1
- package/dest/database/note_dao.js +1 -1
- package/dest/database/pxe_database.d.ts +11 -11
- package/dest/database/pxe_database.d.ts.map +1 -1
- package/dest/database/pxe_database_test_suite.d.ts +1 -1
- package/dest/database/pxe_database_test_suite.d.ts.map +1 -1
- package/dest/database/pxe_database_test_suite.js +1 -1
- package/dest/kernel_oracle/index.d.ts +4 -4
- package/dest/kernel_oracle/index.d.ts.map +1 -1
- package/dest/kernel_prover/hints_builder.d.ts +3 -3
- package/dest/kernel_prover/hints_builder.d.ts.map +1 -1
- package/dest/kernel_prover/kernel_prover.d.ts +5 -44
- 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 +3 -3
- package/dest/kernel_prover/proof_creator.d.ts.map +1 -1
- package/dest/kernel_prover/proof_creator.js +4 -3
- package/dest/kernel_prover/proving_data_oracle.d.ts +3 -3
- package/dest/kernel_prover/proving_data_oracle.d.ts.map +1 -1
- package/dest/note_processor/note_processor.d.ts +11 -13
- package/dest/note_processor/note_processor.d.ts.map +1 -1
- package/dest/note_processor/note_processor.js +18 -20
- package/dest/note_processor/produce_note_dao.d.ts +3 -3
- package/dest/note_processor/produce_note_dao.d.ts.map +1 -1
- package/dest/note_processor/produce_note_dao.js +1 -1
- package/dest/pxe_http/pxe_http_server.d.ts +1 -1
- 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/create_pxe_service.d.ts +2 -2
- package/dest/pxe_service/create_pxe_service.d.ts.map +1 -1
- package/dest/pxe_service/pxe_service.d.ts +9 -8
- 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.d.ts +1 -1
- package/dest/pxe_service/test/pxe_test_suite.d.ts.map +1 -1
- package/dest/pxe_service/test/pxe_test_suite.js +3 -3
- package/dest/simulator/index.d.ts +2 -2
- package/dest/simulator/index.d.ts.map +1 -1
- package/dest/simulator_oracle/index.d.ts +7 -7
- package/dest/simulator_oracle/index.d.ts.map +1 -1
- package/dest/simulator_oracle/index.js +1 -1
- package/dest/synchronizer/synchronizer.d.ts +4 -4
- package/dest/synchronizer/synchronizer.d.ts.map +1 -1
- package/dest/synchronizer/synchronizer.js +9 -13
- package/package.json +22 -16
- package/src/contract_data_oracle/index.ts +9 -9
- package/src/contract_data_oracle/private_functions_tree.ts +3 -3
- package/src/database/contracts/contract_artifact_db.ts +2 -2
- package/src/database/contracts/contract_instance_db.ts +2 -2
- package/src/database/deferred_note_dao.ts +1 -1
- package/src/database/kv_pxe_database.ts +13 -7
- package/src/database/note_dao.ts +2 -2
- package/src/database/pxe_database.ts +12 -12
- package/src/database/pxe_database_test_suite.ts +3 -3
- package/src/kernel_oracle/index.ts +9 -9
- package/src/kernel_prover/hints_builder.ts +9 -9
- package/src/kernel_prover/kernel_prover.ts +29 -95
- package/src/kernel_prover/proof_creator.ts +15 -12
- package/src/kernel_prover/proving_data_oracle.ts +11 -11
- package/src/note_processor/note_processor.ts +29 -34
- package/src/note_processor/produce_note_dao.ts +3 -3
- package/src/pxe_http/pxe_http_server.ts +3 -2
- package/src/pxe_service/create_pxe_service.ts +2 -2
- package/src/pxe_service/pxe_service.ts +89 -66
- package/src/pxe_service/test/pxe_test_suite.ts +3 -3
- package/src/simulator/index.ts +2 -2
- package/src/simulator_oracle/index.ts +19 -19
- package/src/synchronizer/synchronizer.ts +23 -22
|
@@ -1,13 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import {
|
|
2
|
+
type AztecNode,
|
|
3
|
+
type KeyStore,
|
|
4
|
+
type L2Block,
|
|
5
|
+
L2BlockL2Logs,
|
|
6
|
+
MerkleTreeId,
|
|
7
|
+
type TxHash,
|
|
8
|
+
} from '@aztec/circuit-types';
|
|
9
|
+
import { type NoteProcessorCaughtUpStats } from '@aztec/circuit-types/stats';
|
|
10
|
+
import { type AztecAddress, type Fr, INITIAL_L2_BLOCK_NUM, type PublicKey } from '@aztec/circuits.js';
|
|
11
|
+
import { type SerialQueue } from '@aztec/foundation/fifo';
|
|
12
|
+
import { type DebugLogger, createDebugLogger } from '@aztec/foundation/log';
|
|
6
13
|
import { RunningPromise } from '@aztec/foundation/running-promise';
|
|
7
14
|
|
|
8
|
-
import { DeferredNoteDao } from '../database/deferred_note_dao.js';
|
|
9
|
-
import { PxeDatabase } from '../database/index.js';
|
|
10
|
-
import { NoteDao } from '../database/note_dao.js';
|
|
15
|
+
import { type DeferredNoteDao } from '../database/deferred_note_dao.js';
|
|
16
|
+
import { type PxeDatabase } from '../database/index.js';
|
|
17
|
+
import { type NoteDao } from '../database/note_dao.js';
|
|
11
18
|
import { NoteProcessor } from '../note_processor/index.js';
|
|
12
19
|
|
|
13
20
|
/**
|
|
@@ -100,17 +107,14 @@ export class Synchronizer {
|
|
|
100
107
|
|
|
101
108
|
const encryptedLogs = blocks.flatMap(block => block.body.encryptedLogs);
|
|
102
109
|
|
|
103
|
-
// Wrap blocks in block contexts & only keep those that match our query
|
|
104
|
-
const blockContexts = blocks.filter(block => block.number >= from).map(block => new L2BlockContext(block));
|
|
105
|
-
|
|
106
110
|
// Update latest tree roots from the most recent block
|
|
107
|
-
const latestBlock =
|
|
111
|
+
const latestBlock = blocks[blocks.length - 1];
|
|
108
112
|
await this.setHeaderFromBlock(latestBlock);
|
|
109
113
|
|
|
110
114
|
const logCount = L2BlockL2Logs.getTotalLogCount(encryptedLogs);
|
|
111
115
|
this.log(`Forwarding ${logCount} encrypted logs and blocks to ${this.noteProcessors.length} note processors`);
|
|
112
116
|
for (const noteProcessor of this.noteProcessors) {
|
|
113
|
-
await noteProcessor.process(
|
|
117
|
+
await noteProcessor.process(blocks, encryptedLogs);
|
|
114
118
|
}
|
|
115
119
|
return true;
|
|
116
120
|
} catch (err) {
|
|
@@ -178,14 +182,12 @@ export class Synchronizer {
|
|
|
178
182
|
|
|
179
183
|
const encryptedLogs = blocks.flatMap(block => block.body.encryptedLogs);
|
|
180
184
|
|
|
181
|
-
const blockContexts = blocks.map(block => new L2BlockContext(block));
|
|
182
|
-
|
|
183
185
|
const logCount = L2BlockL2Logs.getTotalLogCount(encryptedLogs);
|
|
184
186
|
this.log(`Forwarding ${logCount} encrypted logs and blocks to note processors in catch up mode`);
|
|
185
187
|
|
|
186
188
|
for (const noteProcessor of catchUpGroup) {
|
|
187
189
|
// find the index of the first block that the note processor is not yet synced to
|
|
188
|
-
const index =
|
|
190
|
+
const index = blocks.findIndex(block => block.number > noteProcessor.status.syncedToBlock);
|
|
189
191
|
if (index === -1) {
|
|
190
192
|
// Due to the limit, we might not have fetched a new enough block for the note processor.
|
|
191
193
|
// And since the group is sorted, we break as soon as we find a note processor
|
|
@@ -195,10 +197,10 @@ export class Synchronizer {
|
|
|
195
197
|
|
|
196
198
|
this.log.debug(
|
|
197
199
|
`Catching up note processor ${noteProcessor.publicKey.toString()} by processing ${
|
|
198
|
-
|
|
200
|
+
blocks.length - index
|
|
199
201
|
} blocks`,
|
|
200
202
|
);
|
|
201
|
-
await noteProcessor.process(
|
|
203
|
+
await noteProcessor.process(blocks.slice(index), encryptedLogs.slice(index));
|
|
202
204
|
|
|
203
205
|
if (noteProcessor.status.syncedToBlock === toBlockNumber) {
|
|
204
206
|
// Note processor caught up, move it to `noteProcessors` from `noteProcessorsToCatchUp`.
|
|
@@ -224,13 +226,12 @@ export class Synchronizer {
|
|
|
224
226
|
}
|
|
225
227
|
}
|
|
226
228
|
|
|
227
|
-
private async setHeaderFromBlock(latestBlock:
|
|
228
|
-
|
|
229
|
-
if (block.number < this.initialSyncBlockNumber) {
|
|
229
|
+
private async setHeaderFromBlock(latestBlock: L2Block) {
|
|
230
|
+
if (latestBlock.number < this.initialSyncBlockNumber) {
|
|
230
231
|
return;
|
|
231
232
|
}
|
|
232
233
|
|
|
233
|
-
await this.db.setHeader(
|
|
234
|
+
await this.db.setHeader(latestBlock.header);
|
|
234
235
|
}
|
|
235
236
|
|
|
236
237
|
/**
|