@aztec/world-state 0.87.7 → 1.0.0-nightly.20250604

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.
@@ -0,0 +1,23 @@
1
+ import { MerkleTreeId } from '@aztec/stdlib/trees';
2
+ export declare enum InsertionType {
3
+ BATCH = 0,
4
+ SEQUENTIAL = 1
5
+ }
6
+ export declare enum DataRetrievalType {
7
+ SIBLING_PATH = 0,
8
+ LEAF_PREIMAGE = 1,
9
+ LEAF_VALUE = 2,
10
+ LEAF_INDICES = 3,
11
+ LOW_LEAF = 4
12
+ }
13
+ export declare class NativeBenchMetics {
14
+ private blockSyncMetrics;
15
+ private insertionMetrics;
16
+ private dataRetrievalMetrics;
17
+ toPrettyString(): string;
18
+ addBlockSyncMetric(numTxs: number, numLeaves: number, value: number): void;
19
+ addInsertionMetric(treeId: MerkleTreeId, insertionType: InsertionType, numLeaves: number, value: number): void;
20
+ addDataRetrievalMetric(retrievalType: DataRetrievalType, value: number): void;
21
+ toGithubActionBenchmarkJSON(indent?: number): string;
22
+ }
23
+ //# sourceMappingURL=bench_metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bench_metrics.d.ts","sourceRoot":"","sources":["../../src/native/bench_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAQnD,oBAAY,aAAa;IACvB,KAAK,IAAA;IACL,UAAU,IAAA;CACX;AASD,oBAAY,iBAAiB;IAC3B,YAAY,IAAA;IACZ,aAAa,IAAA;IACb,UAAU,IAAA;IACV,YAAY,IAAA;IACZ,QAAQ,IAAA;CACT;AAOD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,oBAAoB,CAA8B;IAEnD,cAAc;IAiBd,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGnE,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAGvG,sBAAsB,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM;IAItE,2BAA2B,CAAC,MAAM,SAAI;CAyB9C"}
@@ -0,0 +1,81 @@
1
+ import { MerkleTreeId } from '@aztec/stdlib/trees';
2
+ export var InsertionType = /*#__PURE__*/ function(InsertionType) {
3
+ InsertionType[InsertionType["BATCH"] = 0] = "BATCH";
4
+ InsertionType[InsertionType["SEQUENTIAL"] = 1] = "SEQUENTIAL";
5
+ return InsertionType;
6
+ }({});
7
+ export var DataRetrievalType = /*#__PURE__*/ function(DataRetrievalType) {
8
+ DataRetrievalType[DataRetrievalType["SIBLING_PATH"] = 0] = "SIBLING_PATH";
9
+ DataRetrievalType[DataRetrievalType["LEAF_PREIMAGE"] = 1] = "LEAF_PREIMAGE";
10
+ DataRetrievalType[DataRetrievalType["LEAF_VALUE"] = 2] = "LEAF_VALUE";
11
+ DataRetrievalType[DataRetrievalType["LEAF_INDICES"] = 3] = "LEAF_INDICES";
12
+ DataRetrievalType[DataRetrievalType["LOW_LEAF"] = 4] = "LOW_LEAF";
13
+ return DataRetrievalType;
14
+ }({});
15
+ export class NativeBenchMetics {
16
+ blockSyncMetrics = [];
17
+ insertionMetrics = [];
18
+ dataRetrievalMetrics = [];
19
+ toPrettyString() {
20
+ let pretty = '';
21
+ pretty += `Block sync metrics:\n`;
22
+ for (const metric of this.blockSyncMetrics){
23
+ pretty += ` ${metric.numTxs} txs, ${metric.numLeaves} leaves: ${metric.value} ms\n`;
24
+ }
25
+ pretty += `Insertion metrics:\n`;
26
+ for (const metric of this.insertionMetrics){
27
+ pretty += ` ${MerkleTreeId[metric.treeType]}: ${InsertionType[metric.insertionType]} (${metric.numLeaves} leaves): ${metric.value} ms\n`;
28
+ }
29
+ pretty += `Data retrieval metrics:\n`;
30
+ for (const metric of this.dataRetrievalMetrics){
31
+ pretty += ` ${DataRetrievalType[metric.retrievalType]}: ${metric.value} us\n`;
32
+ }
33
+ return pretty;
34
+ }
35
+ addBlockSyncMetric(numTxs, numLeaves, value) {
36
+ this.blockSyncMetrics.push({
37
+ numTxs,
38
+ numLeaves,
39
+ value
40
+ });
41
+ }
42
+ addInsertionMetric(treeId, insertionType, numLeaves, value) {
43
+ this.insertionMetrics.push({
44
+ treeType: treeId,
45
+ insertionType,
46
+ numLeaves,
47
+ value
48
+ });
49
+ }
50
+ addDataRetrievalMetric(retrievalType, value) {
51
+ this.dataRetrievalMetrics.push({
52
+ retrievalType,
53
+ value: value
54
+ });
55
+ }
56
+ toGithubActionBenchmarkJSON(indent = 2) {
57
+ const data = [];
58
+ for (const blockSync of this.blockSyncMetrics){
59
+ data.push({
60
+ name: `blockSync/${blockSync.numTxs}/${blockSync.numLeaves}`,
61
+ value: blockSync.value,
62
+ unit: 'ms'
63
+ });
64
+ }
65
+ for (const insertion of this.insertionMetrics){
66
+ data.push({
67
+ name: `${MerkleTreeId[insertion.treeType]}/${InsertionType[insertion.insertionType]}/${insertion.numLeaves}`,
68
+ value: insertion.value,
69
+ unit: 'ms'
70
+ });
71
+ }
72
+ for (const retrieval of this.dataRetrievalMetrics){
73
+ data.push({
74
+ name: `dataRetrieval/${DataRetrievalType[retrieval.retrievalType]}`,
75
+ value: retrieval.value,
76
+ unit: 'us'
77
+ });
78
+ }
79
+ return JSON.stringify(data, null, indent);
80
+ }
81
+ }
@@ -12,6 +12,7 @@ export declare class MerkleTreesFacade implements MerkleTreeReadOperations {
12
12
  constructor(instance: NativeWorldStateInstance, initialHeader: BlockHeader, revision: WorldStateRevision);
13
13
  getInitialHeader(): BlockHeader;
14
14
  findLeafIndices(treeId: MerkleTreeId, values: MerkleTreeLeafType<MerkleTreeId>[]): Promise<(bigint | undefined)[]>;
15
+ findSiblingPaths<N extends number>(treeId: MerkleTreeId, values: MerkleTreeLeafType<MerkleTreeId>[]): Promise<(SiblingPath<N> | undefined)[]>;
15
16
  findLeafIndicesAfter(treeId: MerkleTreeId, leaves: MerkleTreeLeafType<MerkleTreeId>[], startIndex: bigint): Promise<(bigint | undefined)[]>;
16
17
  getLeafPreimage(treeId: IndexedTreeId, leafIndex: bigint): Promise<IndexedTreeLeafPreimage | undefined>;
17
18
  getLeafValue<ID extends MerkleTreeId>(treeId: ID, leafIndex: bigint): Promise<MerkleTreeLeafType<ID> | undefined>;
@@ -35,6 +36,8 @@ export declare class MerkleTreesForkFacade extends MerkleTreesFacade implements
35
36
  createCheckpoint(): Promise<void>;
36
37
  commitCheckpoint(): Promise<void>;
37
38
  revertCheckpoint(): Promise<void>;
39
+ commitAllCheckpoints(): Promise<void>;
40
+ revertAllCheckpoints(): Promise<void>;
38
41
  }
39
42
  export declare function serializeLeaf(leaf: Fr | NullifierLeaf | PublicDataTreeLeaf): SerializedLeafValue;
40
43
  //# sourceMappingURL=merkle_trees_facade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"merkle_trees_facade.d.ts","sourceRoot":"","sources":["../../src/native/merkle_trees_facade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merkle_trees_facade.d.ts","sourceRoot":"","sources":["../../src/native/merkle_trees_facade.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,19 @@ export class MerkleTreesFacade {
20
20
  findLeafIndices(treeId, values) {
21
21
  return this.findLeafIndicesAfter(treeId, values, 0n);
22
22
  }
23
+ async findSiblingPaths(treeId, values) {
24
+ const response = await this.instance.call(WorldStateMessageType.FIND_SIBLING_PATHS, {
25
+ leaves: values.map((leaf)=>serializeLeaf(hydrateLeaf(treeId, leaf))),
26
+ revision: this.revision,
27
+ treeId
28
+ });
29
+ return response.paths.map((path)=>{
30
+ if (!path) {
31
+ return undefined;
32
+ }
33
+ return new SiblingPath(path.length, path);
34
+ });
35
+ }
23
36
  async findLeafIndicesAfter(treeId, leaves, startIndex) {
24
37
  const response = await this.instance.call(WorldStateMessageType.FIND_LEAF_INDICES, {
25
38
  leaves: leaves.map((leaf)=>serializeLeaf(hydrateLeaf(treeId, leaf))),
@@ -194,6 +207,18 @@ export class MerkleTreesForkFacade extends MerkleTreesFacade {
194
207
  forkId: this.revision.forkId
195
208
  });
196
209
  }
210
+ async commitAllCheckpoints() {
211
+ assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
212
+ await this.instance.call(WorldStateMessageType.COMMIT_ALL_CHECKPOINTS, {
213
+ forkId: this.revision.forkId
214
+ });
215
+ }
216
+ async revertAllCheckpoints() {
217
+ assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
218
+ await this.instance.call(WorldStateMessageType.REVERT_ALL_CHECKPOINTS, {
219
+ forkId: this.revision.forkId
220
+ });
221
+ }
197
222
  }
198
223
  function hydrateLeaf(treeId, leaf) {
199
224
  if (leaf instanceof Fr) {
@@ -13,23 +13,26 @@ export declare enum WorldStateMessageType {
13
13
  GET_BLOCK_NUMBERS_FOR_LEAF_INDICES = 106,
14
14
  FIND_LEAF_INDICES = 107,
15
15
  FIND_LOW_LEAF = 108,
16
- APPEND_LEAVES = 109,
17
- BATCH_INSERT = 110,
18
- SEQUENTIAL_INSERT = 111,
19
- UPDATE_ARCHIVE = 112,
20
- COMMIT = 113,
21
- ROLLBACK = 114,
22
- SYNC_BLOCK = 115,
23
- CREATE_FORK = 116,
24
- DELETE_FORK = 117,
25
- FINALISE_BLOCKS = 118,
26
- UNWIND_BLOCKS = 119,
27
- REMOVE_HISTORICAL_BLOCKS = 120,
28
- GET_STATUS = 121,
29
- CREATE_CHECKPOINT = 122,
30
- COMMIT_CHECKPOINT = 123,
31
- REVERT_CHECKPOINT = 124,
32
- COPY_STORES = 125,
16
+ FIND_SIBLING_PATHS = 109,
17
+ APPEND_LEAVES = 110,
18
+ BATCH_INSERT = 111,
19
+ SEQUENTIAL_INSERT = 112,
20
+ UPDATE_ARCHIVE = 113,
21
+ COMMIT = 114,
22
+ ROLLBACK = 115,
23
+ SYNC_BLOCK = 116,
24
+ CREATE_FORK = 117,
25
+ DELETE_FORK = 118,
26
+ FINALISE_BLOCKS = 119,
27
+ UNWIND_BLOCKS = 120,
28
+ REMOVE_HISTORICAL_BLOCKS = 121,
29
+ GET_STATUS = 122,
30
+ CREATE_CHECKPOINT = 123,
31
+ COMMIT_CHECKPOINT = 124,
32
+ REVERT_CHECKPOINT = 125,
33
+ COMMIT_ALL_CHECKPOINTS = 126,
34
+ REVERT_ALL_CHECKPOINTS = 127,
35
+ COPY_STORES = 128,
33
36
  CLOSE = 999
34
37
  }
35
38
  interface WithTreeId {
@@ -200,6 +203,11 @@ interface FindLeafIndicesRequest extends WithTreeId, WithLeafValues, WithWorldSt
200
203
  interface FindLeafIndicesResponse {
201
204
  indices: bigint[];
202
205
  }
206
+ interface FindSiblingPathsRequest extends WithTreeId, WithLeafValues, WithWorldStateRevision {
207
+ }
208
+ interface FindSiblingPathsResponse {
209
+ paths: Buffer[][];
210
+ }
203
211
  interface FindLowLeafRequest extends WithTreeId, WithWorldStateRevision {
204
212
  key: Fr;
205
213
  }
@@ -275,6 +283,7 @@ export type WorldStateRequest = {
275
283
  [WorldStateMessageType.GET_BLOCK_NUMBERS_FOR_LEAF_INDICES]: GetBlockNumbersForLeafIndicesRequest;
276
284
  [WorldStateMessageType.FIND_LEAF_INDICES]: FindLeafIndicesRequest;
277
285
  [WorldStateMessageType.FIND_LOW_LEAF]: FindLowLeafRequest;
286
+ [WorldStateMessageType.FIND_SIBLING_PATHS]: FindSiblingPathsRequest;
278
287
  [WorldStateMessageType.APPEND_LEAVES]: AppendLeavesRequest;
279
288
  [WorldStateMessageType.BATCH_INSERT]: BatchInsertRequest;
280
289
  [WorldStateMessageType.SEQUENTIAL_INSERT]: SequentialInsertRequest;
@@ -291,6 +300,8 @@ export type WorldStateRequest = {
291
300
  [WorldStateMessageType.CREATE_CHECKPOINT]: WithForkId;
292
301
  [WorldStateMessageType.COMMIT_CHECKPOINT]: WithForkId;
293
302
  [WorldStateMessageType.REVERT_CHECKPOINT]: WithForkId;
303
+ [WorldStateMessageType.COMMIT_ALL_CHECKPOINTS]: WithForkId;
304
+ [WorldStateMessageType.REVERT_ALL_CHECKPOINTS]: WithForkId;
294
305
  [WorldStateMessageType.COPY_STORES]: CopyStoresRequest;
295
306
  [WorldStateMessageType.CLOSE]: WithCanonicalForkId;
296
307
  };
@@ -304,6 +315,7 @@ export type WorldStateResponse = {
304
315
  [WorldStateMessageType.GET_BLOCK_NUMBERS_FOR_LEAF_INDICES]: GetBlockNumbersForLeafIndicesResponse;
305
316
  [WorldStateMessageType.FIND_LEAF_INDICES]: FindLeafIndicesResponse;
306
317
  [WorldStateMessageType.FIND_LOW_LEAF]: FindLowLeafResponse;
318
+ [WorldStateMessageType.FIND_SIBLING_PATHS]: FindSiblingPathsResponse;
307
319
  [WorldStateMessageType.APPEND_LEAVES]: void;
308
320
  [WorldStateMessageType.BATCH_INSERT]: BatchInsertResponse;
309
321
  [WorldStateMessageType.SEQUENTIAL_INSERT]: SequentialInsertResponse;
@@ -320,6 +332,8 @@ export type WorldStateResponse = {
320
332
  [WorldStateMessageType.CREATE_CHECKPOINT]: void;
321
333
  [WorldStateMessageType.COMMIT_CHECKPOINT]: void;
322
334
  [WorldStateMessageType.REVERT_CHECKPOINT]: void;
335
+ [WorldStateMessageType.COMMIT_ALL_CHECKPOINTS]: void;
336
+ [WorldStateMessageType.REVERT_ALL_CHECKPOINTS]: void;
323
337
  [WorldStateMessageType.COPY_STORES]: void;
324
338
  [WorldStateMessageType.CLOSE]: void;
325
339
  };
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/native/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/native/message.ts"],"names":[],"mappings":"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"}
@@ -10,23 +10,26 @@ export var WorldStateMessageType = /*#__PURE__*/ function(WorldStateMessageType)
10
10
  WorldStateMessageType[WorldStateMessageType["GET_BLOCK_NUMBERS_FOR_LEAF_INDICES"] = 106] = "GET_BLOCK_NUMBERS_FOR_LEAF_INDICES";
11
11
  WorldStateMessageType[WorldStateMessageType["FIND_LEAF_INDICES"] = 107] = "FIND_LEAF_INDICES";
12
12
  WorldStateMessageType[WorldStateMessageType["FIND_LOW_LEAF"] = 108] = "FIND_LOW_LEAF";
13
- WorldStateMessageType[WorldStateMessageType["APPEND_LEAVES"] = 109] = "APPEND_LEAVES";
14
- WorldStateMessageType[WorldStateMessageType["BATCH_INSERT"] = 110] = "BATCH_INSERT";
15
- WorldStateMessageType[WorldStateMessageType["SEQUENTIAL_INSERT"] = 111] = "SEQUENTIAL_INSERT";
16
- WorldStateMessageType[WorldStateMessageType["UPDATE_ARCHIVE"] = 112] = "UPDATE_ARCHIVE";
17
- WorldStateMessageType[WorldStateMessageType["COMMIT"] = 113] = "COMMIT";
18
- WorldStateMessageType[WorldStateMessageType["ROLLBACK"] = 114] = "ROLLBACK";
19
- WorldStateMessageType[WorldStateMessageType["SYNC_BLOCK"] = 115] = "SYNC_BLOCK";
20
- WorldStateMessageType[WorldStateMessageType["CREATE_FORK"] = 116] = "CREATE_FORK";
21
- WorldStateMessageType[WorldStateMessageType["DELETE_FORK"] = 117] = "DELETE_FORK";
22
- WorldStateMessageType[WorldStateMessageType["FINALISE_BLOCKS"] = 118] = "FINALISE_BLOCKS";
23
- WorldStateMessageType[WorldStateMessageType["UNWIND_BLOCKS"] = 119] = "UNWIND_BLOCKS";
24
- WorldStateMessageType[WorldStateMessageType["REMOVE_HISTORICAL_BLOCKS"] = 120] = "REMOVE_HISTORICAL_BLOCKS";
25
- WorldStateMessageType[WorldStateMessageType["GET_STATUS"] = 121] = "GET_STATUS";
26
- WorldStateMessageType[WorldStateMessageType["CREATE_CHECKPOINT"] = 122] = "CREATE_CHECKPOINT";
27
- WorldStateMessageType[WorldStateMessageType["COMMIT_CHECKPOINT"] = 123] = "COMMIT_CHECKPOINT";
28
- WorldStateMessageType[WorldStateMessageType["REVERT_CHECKPOINT"] = 124] = "REVERT_CHECKPOINT";
29
- WorldStateMessageType[WorldStateMessageType["COPY_STORES"] = 125] = "COPY_STORES";
13
+ WorldStateMessageType[WorldStateMessageType["FIND_SIBLING_PATHS"] = 109] = "FIND_SIBLING_PATHS";
14
+ WorldStateMessageType[WorldStateMessageType["APPEND_LEAVES"] = 110] = "APPEND_LEAVES";
15
+ WorldStateMessageType[WorldStateMessageType["BATCH_INSERT"] = 111] = "BATCH_INSERT";
16
+ WorldStateMessageType[WorldStateMessageType["SEQUENTIAL_INSERT"] = 112] = "SEQUENTIAL_INSERT";
17
+ WorldStateMessageType[WorldStateMessageType["UPDATE_ARCHIVE"] = 113] = "UPDATE_ARCHIVE";
18
+ WorldStateMessageType[WorldStateMessageType["COMMIT"] = 114] = "COMMIT";
19
+ WorldStateMessageType[WorldStateMessageType["ROLLBACK"] = 115] = "ROLLBACK";
20
+ WorldStateMessageType[WorldStateMessageType["SYNC_BLOCK"] = 116] = "SYNC_BLOCK";
21
+ WorldStateMessageType[WorldStateMessageType["CREATE_FORK"] = 117] = "CREATE_FORK";
22
+ WorldStateMessageType[WorldStateMessageType["DELETE_FORK"] = 118] = "DELETE_FORK";
23
+ WorldStateMessageType[WorldStateMessageType["FINALISE_BLOCKS"] = 119] = "FINALISE_BLOCKS";
24
+ WorldStateMessageType[WorldStateMessageType["UNWIND_BLOCKS"] = 120] = "UNWIND_BLOCKS";
25
+ WorldStateMessageType[WorldStateMessageType["REMOVE_HISTORICAL_BLOCKS"] = 121] = "REMOVE_HISTORICAL_BLOCKS";
26
+ WorldStateMessageType[WorldStateMessageType["GET_STATUS"] = 122] = "GET_STATUS";
27
+ WorldStateMessageType[WorldStateMessageType["CREATE_CHECKPOINT"] = 123] = "CREATE_CHECKPOINT";
28
+ WorldStateMessageType[WorldStateMessageType["COMMIT_CHECKPOINT"] = 124] = "COMMIT_CHECKPOINT";
29
+ WorldStateMessageType[WorldStateMessageType["REVERT_CHECKPOINT"] = 125] = "REVERT_CHECKPOINT";
30
+ WorldStateMessageType[WorldStateMessageType["COMMIT_ALL_CHECKPOINTS"] = 126] = "COMMIT_ALL_CHECKPOINTS";
31
+ WorldStateMessageType[WorldStateMessageType["REVERT_ALL_CHECKPOINTS"] = 127] = "REVERT_ALL_CHECKPOINTS";
32
+ WorldStateMessageType[WorldStateMessageType["COPY_STORES"] = 128] = "COPY_STORES";
30
33
  WorldStateMessageType[WorldStateMessageType["CLOSE"] = 999] = "CLOSE";
31
34
  return WorldStateMessageType;
32
35
  }({});
@@ -1 +1 @@
1
- {"version":3,"file":"server_world_state_synchronizer.d.ts","sourceRoot":"","sources":["../../src/synchronizer/server_world_state_synchronizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server_world_state_synchronizer.d.ts","sourceRoot":"","sources":["../../src/synchronizer/server_world_state_synchronizer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { L1_TO_L2_MSG_SUBTREE_HEIGHT } from '@aztec/constants';
2
+ import { SHA256Trunc } from '@aztec/foundation/crypto';
2
3
  import { createLogger } from '@aztec/foundation/log';
3
4
  import { promiseWithResolvers } from '@aztec/foundation/promise';
4
5
  import { elapsed } from '@aztec/foundation/timer';
5
6
  import { MerkleTreeCalculator } from '@aztec/foundation/trees';
6
- import { SHA256Trunc } from '@aztec/merkle-tree';
7
7
  import { WorldStateRunningState } from '@aztec/stdlib/interfaces/server';
8
8
  import { MerkleTreeId } from '@aztec/stdlib/trees';
9
9
  import { TraceableL2BlockStream, getTelemetryClient } from '@aztec/telemetry-client';
@@ -2,7 +2,7 @@ import { Fr } from '@aztec/foundation/fields';
2
2
  import { L2Block } from '@aztec/stdlib/block';
3
3
  import type { MerkleTreeReadOperations, MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
4
4
  import type { NativeWorldStateService } from '../native/native_world_state.js';
5
- export declare function mockBlock(blockNum: number, size: number, fork: MerkleTreeWriteOperations): Promise<{
5
+ export declare function mockBlock(blockNum: number, size: number, fork: MerkleTreeWriteOperations, maxEffects?: number | undefined): Promise<{
6
6
  block: L2Block;
7
7
  messages: Fr[];
8
8
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/test/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAG3G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE/E,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB;;;GA+C9F;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB;;;GAiDrF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB;;;GAchH;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,iBAQrG;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,iBAYlG"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/test/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAEV,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE/E,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,yBAAyB,EAC/B,UAAU,GAAE,MAAM,GAAG,SAAqB;;;GAsD3C;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB;;;GAiDrF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB;;;GAchH;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,iBAQrG;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,iBAYlG"}
@@ -3,24 +3,27 @@ import { padArrayEnd } from '@aztec/foundation/collection';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  import { L2Block } from '@aztec/stdlib/block';
5
5
  import { AppendOnlyTreeSnapshot, MerkleTreeId } from '@aztec/stdlib/trees';
6
- export async function mockBlock(blockNum, size, fork) {
7
- const l2Block = await L2Block.random(blockNum, size);
6
+ export async function mockBlock(blockNum, size, fork, maxEffects = undefined) {
7
+ const l2Block = await L2Block.random(blockNum, size, maxEffects);
8
8
  const l1ToL2Messages = Array(16).fill(0).map(Fr.random);
9
- // Sync the append only trees
10
9
  {
10
+ const insertData = async (treeId, data, subTreeHeight, fork)=>{
11
+ for (const dataBatch of data){
12
+ await fork.batchInsert(treeId, dataBatch, subTreeHeight);
13
+ }
14
+ };
15
+ const publicDataInsert = insertData(MerkleTreeId.PUBLIC_DATA_TREE, l2Block.body.txEffects.map((txEffect)=>txEffect.publicDataWrites.map((write)=>write.toBuffer())), 0, fork);
16
+ const nullifierInsert = insertData(MerkleTreeId.NULLIFIER_TREE, l2Block.body.txEffects.map((txEffect)=>padArrayEnd(txEffect.nullifiers, Fr.ZERO, MAX_NULLIFIERS_PER_TX).map((nullifier)=>nullifier.toBuffer())), NULLIFIER_SUBTREE_HEIGHT, fork);
11
17
  const noteHashesPadded = l2Block.body.txEffects.flatMap((txEffect)=>padArrayEnd(txEffect.noteHashes, Fr.ZERO, MAX_NOTE_HASHES_PER_TX));
12
- await fork.appendLeaves(MerkleTreeId.NOTE_HASH_TREE, noteHashesPadded);
13
18
  const l1ToL2MessagesPadded = padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
14
- await fork.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, l1ToL2MessagesPadded);
15
- }
16
- // Sync the indexed trees
17
- {
18
- // We insert the public data tree leaves with one batch per tx to avoid updating the same key twice
19
- for (const txEffect of l2Block.body.txEffects){
20
- await fork.batchInsert(MerkleTreeId.PUBLIC_DATA_TREE, txEffect.publicDataWrites.map((write)=>write.toBuffer()), 0);
21
- const nullifiersPadded = padArrayEnd(txEffect.nullifiers, Fr.ZERO, MAX_NULLIFIERS_PER_TX);
22
- await fork.batchInsert(MerkleTreeId.NULLIFIER_TREE, nullifiersPadded.map((nullifier)=>nullifier.toBuffer()), NULLIFIER_SUBTREE_HEIGHT);
23
- }
19
+ const noteHashInsert = fork.appendLeaves(MerkleTreeId.NOTE_HASH_TREE, noteHashesPadded);
20
+ const messageInsert = fork.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, l1ToL2MessagesPadded);
21
+ await Promise.all([
22
+ publicDataInsert,
23
+ nullifierInsert,
24
+ noteHashInsert,
25
+ messageInsert
26
+ ]);
24
27
  }
25
28
  const state = await fork.getStateReference();
26
29
  l2Block.header.state = state;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/world-state",
3
- "version": "0.87.7",
3
+ "version": "1.0.0-nightly.20250604",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./dest/index.js",
@@ -60,19 +60,19 @@
60
60
  ]
61
61
  },
62
62
  "dependencies": {
63
- "@aztec/constants": "0.87.7",
64
- "@aztec/foundation": "0.87.7",
65
- "@aztec/kv-store": "0.87.7",
66
- "@aztec/merkle-tree": "0.87.7",
67
- "@aztec/native": "0.87.7",
68
- "@aztec/protocol-contracts": "0.87.7",
69
- "@aztec/stdlib": "0.87.7",
70
- "@aztec/telemetry-client": "0.87.7",
63
+ "@aztec/constants": "1.0.0-nightly.20250604",
64
+ "@aztec/foundation": "1.0.0-nightly.20250604",
65
+ "@aztec/kv-store": "1.0.0-nightly.20250604",
66
+ "@aztec/merkle-tree": "1.0.0-nightly.20250604",
67
+ "@aztec/native": "1.0.0-nightly.20250604",
68
+ "@aztec/protocol-contracts": "1.0.0-nightly.20250604",
69
+ "@aztec/stdlib": "1.0.0-nightly.20250604",
70
+ "@aztec/telemetry-client": "1.0.0-nightly.20250604",
71
71
  "tslib": "^2.4.0",
72
72
  "zod": "^3.23.8"
73
73
  },
74
74
  "devDependencies": {
75
- "@aztec/archiver": "0.87.7",
75
+ "@aztec/archiver": "1.0.0-nightly.20250604",
76
76
  "@jest/globals": "^29.5.0",
77
77
  "@types/jest": "^29.5.0",
78
78
  "@types/node": "^22.15.17",
@@ -0,0 +1,91 @@
1
+ import { MerkleTreeId } from '@aztec/stdlib/trees';
2
+
3
+ type BlockSyncMetrics = {
4
+ numTxs: number;
5
+ numLeaves: number;
6
+ value: number;
7
+ };
8
+
9
+ export enum InsertionType {
10
+ BATCH,
11
+ SEQUENTIAL,
12
+ }
13
+
14
+ type InsertionMetrics = {
15
+ treeType: MerkleTreeId;
16
+ insertionType: InsertionType;
17
+ numLeaves: number;
18
+ value: number;
19
+ };
20
+
21
+ export enum DataRetrievalType {
22
+ SIBLING_PATH,
23
+ LEAF_PREIMAGE,
24
+ LEAF_VALUE,
25
+ LEAF_INDICES,
26
+ LOW_LEAF,
27
+ }
28
+
29
+ type DataRetrievalMetrics = {
30
+ retrievalType: DataRetrievalType;
31
+ value: number;
32
+ };
33
+
34
+ export class NativeBenchMetics {
35
+ private blockSyncMetrics: BlockSyncMetrics[] = [];
36
+ private insertionMetrics: InsertionMetrics[] = [];
37
+ private dataRetrievalMetrics: DataRetrievalMetrics[] = [];
38
+
39
+ public toPrettyString() {
40
+ let pretty = '';
41
+ pretty += `Block sync metrics:\n`;
42
+ for (const metric of this.blockSyncMetrics) {
43
+ pretty += ` ${metric.numTxs} txs, ${metric.numLeaves} leaves: ${metric.value} ms\n`;
44
+ }
45
+ pretty += `Insertion metrics:\n`;
46
+ for (const metric of this.insertionMetrics) {
47
+ pretty += ` ${MerkleTreeId[metric.treeType]}: ${InsertionType[metric.insertionType]} (${metric.numLeaves} leaves): ${metric.value} ms\n`;
48
+ }
49
+ pretty += `Data retrieval metrics:\n`;
50
+ for (const metric of this.dataRetrievalMetrics) {
51
+ pretty += ` ${DataRetrievalType[metric.retrievalType]}: ${metric.value} us\n`;
52
+ }
53
+ return pretty;
54
+ }
55
+
56
+ public addBlockSyncMetric(numTxs: number, numLeaves: number, value: number) {
57
+ this.blockSyncMetrics.push({ numTxs, numLeaves, value });
58
+ }
59
+ public addInsertionMetric(treeId: MerkleTreeId, insertionType: InsertionType, numLeaves: number, value: number) {
60
+ this.insertionMetrics.push({ treeType: treeId, insertionType, numLeaves, value });
61
+ }
62
+ public addDataRetrievalMetric(retrievalType: DataRetrievalType, value: number) {
63
+ this.dataRetrievalMetrics.push({ retrievalType, value: value });
64
+ }
65
+
66
+ public toGithubActionBenchmarkJSON(indent = 2) {
67
+ const data = [];
68
+ for (const blockSync of this.blockSyncMetrics) {
69
+ data.push({
70
+ name: `blockSync/${blockSync.numTxs}/${blockSync.numLeaves}`,
71
+ value: blockSync.value,
72
+ unit: 'ms',
73
+ });
74
+ }
75
+ for (const insertion of this.insertionMetrics) {
76
+ data.push({
77
+ name: `${MerkleTreeId[insertion.treeType]}/${InsertionType[insertion.insertionType]}/${insertion.numLeaves}`,
78
+ value: insertion.value,
79
+ unit: 'ms',
80
+ });
81
+ }
82
+ for (const retrieval of this.dataRetrievalMetrics) {
83
+ data.push({
84
+ name: `dataRetrieval/${DataRetrievalType[retrieval.retrievalType]}`,
85
+ value: retrieval.value,
86
+ unit: 'us',
87
+ });
88
+ }
89
+ return JSON.stringify(data, null, indent);
90
+ }
91
+ }
@@ -46,6 +46,24 @@ export class MerkleTreesFacade implements MerkleTreeReadOperations {
46
46
  return this.findLeafIndicesAfter(treeId, values, 0n);
47
47
  }
48
48
 
49
+ async findSiblingPaths<N extends number>(
50
+ treeId: MerkleTreeId,
51
+ values: MerkleTreeLeafType<MerkleTreeId>[],
52
+ ): Promise<(SiblingPath<N> | undefined)[]> {
53
+ const response = await this.instance.call(WorldStateMessageType.FIND_SIBLING_PATHS, {
54
+ leaves: values.map(leaf => serializeLeaf(hydrateLeaf(treeId, leaf))),
55
+ revision: this.revision,
56
+ treeId,
57
+ });
58
+
59
+ return response.paths.map(path => {
60
+ if (!path) {
61
+ return undefined;
62
+ }
63
+ return new SiblingPath(path.length, path) as any;
64
+ });
65
+ }
66
+
49
67
  async findLeafIndicesAfter(
50
68
  treeId: MerkleTreeId,
51
69
  leaves: MerkleTreeLeafType<MerkleTreeId>[],
@@ -277,6 +295,16 @@ export class MerkleTreesForkFacade extends MerkleTreesFacade implements MerkleTr
277
295
  assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
278
296
  await this.instance.call(WorldStateMessageType.REVERT_CHECKPOINT, { forkId: this.revision.forkId });
279
297
  }
298
+
299
+ public async commitAllCheckpoints(): Promise<void> {
300
+ assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
301
+ await this.instance.call(WorldStateMessageType.COMMIT_ALL_CHECKPOINTS, { forkId: this.revision.forkId });
302
+ }
303
+
304
+ public async revertAllCheckpoints(): Promise<void> {
305
+ assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
306
+ await this.instance.call(WorldStateMessageType.REVERT_ALL_CHECKPOINTS, { forkId: this.revision.forkId });
307
+ }
280
308
  }
281
309
 
282
310
  function hydrateLeaf<ID extends MerkleTreeId>(treeId: ID, leaf: Fr | Buffer) {
@@ -16,6 +16,7 @@ export enum WorldStateMessageType {
16
16
 
17
17
  FIND_LEAF_INDICES,
18
18
  FIND_LOW_LEAF,
19
+ FIND_SIBLING_PATHS,
19
20
 
20
21
  APPEND_LEAVES,
21
22
  BATCH_INSERT,
@@ -40,6 +41,8 @@ export enum WorldStateMessageType {
40
41
  CREATE_CHECKPOINT,
41
42
  COMMIT_CHECKPOINT,
42
43
  REVERT_CHECKPOINT,
44
+ COMMIT_ALL_CHECKPOINTS,
45
+ REVERT_ALL_CHECKPOINTS,
43
46
 
44
47
  COPY_STORES,
45
48
 
@@ -350,6 +353,11 @@ interface FindLeafIndicesResponse {
350
353
  indices: bigint[];
351
354
  }
352
355
 
356
+ interface FindSiblingPathsRequest extends WithTreeId, WithLeafValues, WithWorldStateRevision {}
357
+ interface FindSiblingPathsResponse {
358
+ paths: Buffer[][];
359
+ }
360
+
353
361
  interface FindLowLeafRequest extends WithTreeId, WithWorldStateRevision {
354
362
  key: Fr;
355
363
  }
@@ -446,6 +454,7 @@ export type WorldStateRequest = {
446
454
 
447
455
  [WorldStateMessageType.FIND_LEAF_INDICES]: FindLeafIndicesRequest;
448
456
  [WorldStateMessageType.FIND_LOW_LEAF]: FindLowLeafRequest;
457
+ [WorldStateMessageType.FIND_SIBLING_PATHS]: FindSiblingPathsRequest;
449
458
 
450
459
  [WorldStateMessageType.APPEND_LEAVES]: AppendLeavesRequest;
451
460
  [WorldStateMessageType.BATCH_INSERT]: BatchInsertRequest;
@@ -470,6 +479,8 @@ export type WorldStateRequest = {
470
479
  [WorldStateMessageType.CREATE_CHECKPOINT]: WithForkId;
471
480
  [WorldStateMessageType.COMMIT_CHECKPOINT]: WithForkId;
472
481
  [WorldStateMessageType.REVERT_CHECKPOINT]: WithForkId;
482
+ [WorldStateMessageType.COMMIT_ALL_CHECKPOINTS]: WithForkId;
483
+ [WorldStateMessageType.REVERT_ALL_CHECKPOINTS]: WithForkId;
473
484
 
474
485
  [WorldStateMessageType.COPY_STORES]: CopyStoresRequest;
475
486
 
@@ -488,6 +499,7 @@ export type WorldStateResponse = {
488
499
 
489
500
  [WorldStateMessageType.FIND_LEAF_INDICES]: FindLeafIndicesResponse;
490
501
  [WorldStateMessageType.FIND_LOW_LEAF]: FindLowLeafResponse;
502
+ [WorldStateMessageType.FIND_SIBLING_PATHS]: FindSiblingPathsResponse;
491
503
 
492
504
  [WorldStateMessageType.APPEND_LEAVES]: void;
493
505
  [WorldStateMessageType.BATCH_INSERT]: BatchInsertResponse;
@@ -512,6 +524,8 @@ export type WorldStateResponse = {
512
524
  [WorldStateMessageType.CREATE_CHECKPOINT]: void;
513
525
  [WorldStateMessageType.COMMIT_CHECKPOINT]: void;
514
526
  [WorldStateMessageType.REVERT_CHECKPOINT]: void;
527
+ [WorldStateMessageType.COMMIT_ALL_CHECKPOINTS]: void;
528
+ [WorldStateMessageType.REVERT_ALL_CHECKPOINTS]: void;
515
529
 
516
530
  [WorldStateMessageType.COPY_STORES]: void;
517
531
 
@@ -1,10 +1,10 @@
1
1
  import { L1_TO_L2_MSG_SUBTREE_HEIGHT } from '@aztec/constants';
2
+ import { SHA256Trunc } from '@aztec/foundation/crypto';
2
3
  import type { Fr } from '@aztec/foundation/fields';
3
4
  import { type Logger, createLogger } from '@aztec/foundation/log';
4
5
  import { promiseWithResolvers } from '@aztec/foundation/promise';
5
6
  import { elapsed } from '@aztec/foundation/timer';
6
7
  import { MerkleTreeCalculator } from '@aztec/foundation/trees';
7
- import { SHA256Trunc } from '@aztec/merkle-tree';
8
8
  import type {
9
9
  L2Block,
10
10
  L2BlockId,
package/src/test/utils.ts CHANGED
@@ -7,44 +7,59 @@ import {
7
7
  import { padArrayEnd } from '@aztec/foundation/collection';
8
8
  import { Fr } from '@aztec/foundation/fields';
9
9
  import { L2Block } from '@aztec/stdlib/block';
10
- import type { MerkleTreeReadOperations, MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
10
+ import type {
11
+ IndexedTreeId,
12
+ MerkleTreeReadOperations,
13
+ MerkleTreeWriteOperations,
14
+ } from '@aztec/stdlib/interfaces/server';
11
15
  import { AppendOnlyTreeSnapshot, MerkleTreeId } from '@aztec/stdlib/trees';
12
16
 
13
17
  import type { NativeWorldStateService } from '../native/native_world_state.js';
14
18
 
15
- export async function mockBlock(blockNum: number, size: number, fork: MerkleTreeWriteOperations) {
16
- const l2Block = await L2Block.random(blockNum, size);
19
+ export async function mockBlock(
20
+ blockNum: number,
21
+ size: number,
22
+ fork: MerkleTreeWriteOperations,
23
+ maxEffects: number | undefined = undefined,
24
+ ) {
25
+ const l2Block = await L2Block.random(blockNum, size, maxEffects);
17
26
  const l1ToL2Messages = Array(16).fill(0).map(Fr.random);
18
27
 
19
- // Sync the append only trees
20
28
  {
29
+ const insertData = async (
30
+ treeId: IndexedTreeId,
31
+ data: Buffer[][],
32
+ subTreeHeight: number,
33
+ fork: MerkleTreeWriteOperations,
34
+ ) => {
35
+ for (const dataBatch of data) {
36
+ await fork.batchInsert(treeId, dataBatch, subTreeHeight);
37
+ }
38
+ };
39
+
40
+ const publicDataInsert = insertData(
41
+ MerkleTreeId.PUBLIC_DATA_TREE,
42
+ l2Block.body.txEffects.map(txEffect => txEffect.publicDataWrites.map(write => write.toBuffer())),
43
+ 0,
44
+ fork,
45
+ );
46
+ const nullifierInsert = insertData(
47
+ MerkleTreeId.NULLIFIER_TREE,
48
+ l2Block.body.txEffects.map(txEffect =>
49
+ padArrayEnd(txEffect.nullifiers, Fr.ZERO, MAX_NULLIFIERS_PER_TX).map(nullifier => nullifier.toBuffer()),
50
+ ),
51
+ NULLIFIER_SUBTREE_HEIGHT,
52
+ fork,
53
+ );
21
54
  const noteHashesPadded = l2Block.body.txEffects.flatMap(txEffect =>
22
55
  padArrayEnd(txEffect.noteHashes, Fr.ZERO, MAX_NOTE_HASHES_PER_TX),
23
56
  );
24
- await fork.appendLeaves(MerkleTreeId.NOTE_HASH_TREE, noteHashesPadded);
25
57
 
26
58
  const l1ToL2MessagesPadded = padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
27
- await fork.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, l1ToL2MessagesPadded);
28
- }
29
-
30
- // Sync the indexed trees
31
- {
32
- // We insert the public data tree leaves with one batch per tx to avoid updating the same key twice
33
- for (const txEffect of l2Block.body.txEffects) {
34
- await fork.batchInsert(
35
- MerkleTreeId.PUBLIC_DATA_TREE,
36
- txEffect.publicDataWrites.map(write => write.toBuffer()),
37
- 0,
38
- );
39
-
40
- const nullifiersPadded = padArrayEnd(txEffect.nullifiers, Fr.ZERO, MAX_NULLIFIERS_PER_TX);
41
59
 
42
- await fork.batchInsert(
43
- MerkleTreeId.NULLIFIER_TREE,
44
- nullifiersPadded.map(nullifier => nullifier.toBuffer()),
45
- NULLIFIER_SUBTREE_HEIGHT,
46
- );
47
- }
60
+ const noteHashInsert = fork.appendLeaves(MerkleTreeId.NOTE_HASH_TREE, noteHashesPadded);
61
+ const messageInsert = fork.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, l1ToL2MessagesPadded);
62
+ await Promise.all([publicDataInsert, nullifierInsert, noteHashInsert, messageInsert]);
48
63
  }
49
64
 
50
65
  const state = await fork.getStateReference();