@aztec/prover-client 0.65.2 → 0.66.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.
Files changed (78) hide show
  1. package/dest/block_builder/index.d.ts +6 -0
  2. package/dest/block_builder/index.d.ts.map +1 -0
  3. package/dest/block_builder/index.js +2 -0
  4. package/dest/block_builder/light.d.ts +32 -0
  5. package/dest/block_builder/light.d.ts.map +1 -0
  6. package/dest/block_builder/light.js +71 -0
  7. package/dest/index.d.ts +1 -2
  8. package/dest/index.d.ts.map +1 -1
  9. package/dest/index.js +2 -3
  10. package/dest/mocks/fixtures.d.ts +1 -2
  11. package/dest/mocks/fixtures.d.ts.map +1 -1
  12. package/dest/mocks/fixtures.js +3 -7
  13. package/dest/mocks/test_context.d.ts +28 -10
  14. package/dest/mocks/test_context.d.ts.map +1 -1
  15. package/dest/mocks/test_context.js +58 -21
  16. package/dest/orchestrator/epoch-proving-state.d.ts +5 -6
  17. package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -1
  18. package/dest/orchestrator/epoch-proving-state.js +10 -12
  19. package/dest/orchestrator/orchestrator.d.ts +8 -6
  20. package/dest/orchestrator/orchestrator.d.ts.map +1 -1
  21. package/dest/orchestrator/orchestrator.js +83 -72
  22. package/dest/orchestrator/tx-proving-state.d.ts +0 -1
  23. package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
  24. package/dest/orchestrator/tx-proving-state.js +2 -34
  25. package/dest/prover-client/factory.d.ts +6 -0
  26. package/dest/prover-client/factory.d.ts.map +1 -0
  27. package/dest/prover-client/factory.js +6 -0
  28. package/dest/prover-client/index.d.ts +3 -0
  29. package/dest/prover-client/index.d.ts.map +1 -0
  30. package/dest/prover-client/index.js +3 -0
  31. package/dest/{tx-prover/tx-prover.d.ts → prover-client/prover-client.d.ts} +8 -11
  32. package/dest/prover-client/prover-client.d.ts.map +1 -0
  33. package/dest/prover-client/prover-client.js +107 -0
  34. package/dest/proving_broker/factory.d.ts +2 -1
  35. package/dest/proving_broker/factory.d.ts.map +1 -1
  36. package/dest/proving_broker/factory.js +4 -4
  37. package/dest/proving_broker/proving_agent.d.ts +5 -0
  38. package/dest/proving_broker/proving_agent.d.ts.map +1 -1
  39. package/dest/proving_broker/proving_agent.js +13 -2
  40. package/dest/proving_broker/proving_agent_instrumentation.d.ts +8 -0
  41. package/dest/proving_broker/proving_agent_instrumentation.d.ts.map +1 -0
  42. package/dest/proving_broker/proving_agent_instrumentation.js +16 -0
  43. package/dest/proving_broker/proving_broker.d.ts +6 -1
  44. package/dest/proving_broker/proving_broker.d.ts.map +1 -1
  45. package/dest/proving_broker/proving_broker.js +37 -4
  46. package/dest/proving_broker/proving_broker_database/persisted.d.ts +3 -1
  47. package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -1
  48. package/dest/proving_broker/proving_broker_database/persisted.js +10 -2
  49. package/dest/proving_broker/proving_broker_instrumentation.d.ts +25 -0
  50. package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +1 -0
  51. package/dest/proving_broker/proving_broker_instrumentation.js +91 -0
  52. package/dest/test/mock_prover.d.ts +1 -1
  53. package/dest/test/mock_prover.d.ts.map +1 -1
  54. package/dest/test/mock_prover.js +4 -3
  55. package/package.json +14 -13
  56. package/src/block_builder/index.ts +6 -0
  57. package/src/block_builder/light.ts +117 -0
  58. package/src/index.ts +1 -2
  59. package/src/mocks/fixtures.ts +2 -14
  60. package/src/mocks/test_context.ts +80 -24
  61. package/src/orchestrator/epoch-proving-state.ts +10 -13
  62. package/src/orchestrator/orchestrator.ts +97 -77
  63. package/src/orchestrator/tx-proving-state.ts +1 -56
  64. package/src/{tx-prover → prover-client}/factory.ts +4 -3
  65. package/src/prover-client/index.ts +2 -0
  66. package/src/{tx-prover/tx-prover.ts → prover-client/prover-client.ts} +23 -13
  67. package/src/proving_broker/factory.ts +7 -3
  68. package/src/proving_broker/proving_agent.ts +16 -1
  69. package/src/proving_broker/proving_agent_instrumentation.ts +21 -0
  70. package/src/proving_broker/proving_broker.ts +46 -3
  71. package/src/proving_broker/proving_broker_database/persisted.ts +17 -2
  72. package/src/proving_broker/proving_broker_instrumentation.ts +130 -0
  73. package/src/test/mock_prover.ts +3 -2
  74. package/dest/tx-prover/factory.d.ts +0 -6
  75. package/dest/tx-prover/factory.d.ts.map +0 -1
  76. package/dest/tx-prover/factory.js +0 -6
  77. package/dest/tx-prover/tx-prover.d.ts.map +0 -1
  78. package/dest/tx-prover/tx-prover.js +0 -110
@@ -0,0 +1,6 @@
1
+ import { type BlockBuilder, type MerkleTreeReadOperations } from '@aztec/circuit-types';
2
+ export * from './light.js';
3
+ export interface BlockBuilderFactory {
4
+ create(db: MerkleTreeReadOperations): BlockBuilder;
5
+ }
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/block_builder/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAExF,cAAc,YAAY,CAAC;AAC3B,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,EAAE,wBAAwB,GAAG,YAAY,CAAC;CACpD"}
@@ -0,0 +1,2 @@
1
+ export * from './light.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2tfYnVpbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxjQUFjLFlBQVksQ0FBQyJ9
@@ -0,0 +1,32 @@
1
+ import { type BlockBuilder, L2Block, type MerkleTreeWriteOperations, type ProcessedTx } from '@aztec/circuit-types';
2
+ import { Fr, type GlobalVariables } from '@aztec/circuits.js';
3
+ import { type TelemetryClient } from '@aztec/telemetry-client';
4
+ /**
5
+ * Builds a block and its header from a set of processed tx without running any circuits.
6
+ */
7
+ export declare class LightweightBlockBuilder implements BlockBuilder {
8
+ private db;
9
+ private telemetry;
10
+ private numTxs?;
11
+ private globalVariables?;
12
+ private l1ToL2Messages?;
13
+ private readonly txs;
14
+ private readonly logger;
15
+ constructor(db: MerkleTreeWriteOperations, telemetry: TelemetryClient);
16
+ startNewBlock(numTxs: number, globalVariables: GlobalVariables, l1ToL2Messages: Fr[]): Promise<void>;
17
+ addNewTx(tx: ProcessedTx): Promise<void>;
18
+ setBlockCompleted(): Promise<L2Block>;
19
+ private buildBlock;
20
+ }
21
+ export declare class LightweightBlockBuilderFactory {
22
+ private telemetry?;
23
+ constructor(telemetry?: TelemetryClient | undefined);
24
+ create(db: MerkleTreeWriteOperations): BlockBuilder;
25
+ }
26
+ /**
27
+ * Creates a block builder under the hood with the given txs and messages and creates a block.
28
+ * Automatically adds padding txs to get to a minimum of 2 txs in the block.
29
+ * @param db - A db fork to use for block building.
30
+ */
31
+ export declare function buildBlock(txs: ProcessedTx[], globalVariables: GlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeWriteOperations, telemetry?: TelemetryClient): Promise<L2Block>;
32
+ //# sourceMappingURL=light.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"light.d.ts","sourceRoot":"","sources":["../../src/block_builder/light.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,OAAO,EAEP,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EAEjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,EAAE,EAAE,KAAK,eAAe,EAAuC,MAAM,oBAAoB,CAAC;AAKnG,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAW/D;;GAEG;AACH,qBAAa,uBAAwB,YAAW,YAAY;IAS9C,OAAO,CAAC,EAAE;IAA6B,OAAO,CAAC,SAAS;IARpE,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAO;IAE9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAqB;IAEzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmE;gBAEtE,EAAE,EAAE,yBAAyB,EAAU,SAAS,EAAE,eAAe;IAE/E,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpG,QAAQ,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;YAkB7B,UAAU;CAgBzB;AAED,qBAAa,8BAA8B;IAC7B,OAAO,CAAC,SAAS,CAAC;gBAAV,SAAS,CAAC,6BAAiB;IAE/C,MAAM,CAAC,EAAE,EAAE,yBAAyB,GAAG,YAAY;CAGpD;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,WAAW,EAAE,EAClB,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,EAAE,EAAE,yBAAyB,EAC7B,SAAS,GAAE,eAA2C,oBAQvD"}
@@ -0,0 +1,71 @@
1
+ import { L2Block, MerkleTreeId, makeEmptyProcessedTx, } from '@aztec/circuit-types';
2
+ import { Fr, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/circuits.js';
3
+ import { padArrayEnd } from '@aztec/foundation/collection';
4
+ import { createDebugLogger } from '@aztec/foundation/log';
5
+ import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types';
6
+ import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
7
+ import { NoopTelemetryClient } from '@aztec/telemetry-client/noop';
8
+ import { inspect } from 'util';
9
+ import { buildBaseRollupHints, buildHeaderAndBodyFromTxs, getTreeSnapshot, } from '../orchestrator/block-building-helpers.js';
10
+ /**
11
+ * Builds a block and its header from a set of processed tx without running any circuits.
12
+ */
13
+ export class LightweightBlockBuilder {
14
+ constructor(db, telemetry) {
15
+ this.db = db;
16
+ this.telemetry = telemetry;
17
+ this.txs = [];
18
+ this.logger = createDebugLogger('aztec:sequencer-client:block_builder_light');
19
+ }
20
+ async startNewBlock(numTxs, globalVariables, l1ToL2Messages) {
21
+ this.logger.verbose('Starting new block', { numTxs, globalVariables: inspect(globalVariables), l1ToL2Messages });
22
+ this.numTxs = numTxs;
23
+ this.globalVariables = globalVariables;
24
+ this.l1ToL2Messages = padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
25
+ // Update L1 to L2 tree
26
+ await this.db.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, this.l1ToL2Messages);
27
+ }
28
+ async addNewTx(tx) {
29
+ this.logger.verbose('Adding new tx to block', { txHash: tx.hash.toString() });
30
+ this.txs.push(tx);
31
+ await buildBaseRollupHints(tx, this.globalVariables, this.db);
32
+ }
33
+ async setBlockCompleted() {
34
+ const paddingTxCount = this.numTxs - this.txs.length;
35
+ this.logger.verbose(`Setting block as completed and adding ${paddingTxCount} padding txs`);
36
+ for (let i = 0; i < paddingTxCount; i++) {
37
+ await this.addNewTx(makeEmptyProcessedTx(this.db.getInitialHeader(), this.globalVariables.chainId, this.globalVariables.version, getVKTreeRoot(), protocolContractTreeRoot));
38
+ }
39
+ return this.buildBlock();
40
+ }
41
+ async buildBlock() {
42
+ this.logger.verbose(`Finalising block`);
43
+ const { header, body } = await buildHeaderAndBodyFromTxs(this.txs, this.globalVariables, this.l1ToL2Messages, this.db);
44
+ await this.db.updateArchive(header);
45
+ const newArchive = await getTreeSnapshot(MerkleTreeId.ARCHIVE, this.db);
46
+ const block = new L2Block(newArchive, header, body);
47
+ return block;
48
+ }
49
+ }
50
+ export class LightweightBlockBuilderFactory {
51
+ constructor(telemetry) {
52
+ this.telemetry = telemetry;
53
+ }
54
+ create(db) {
55
+ return new LightweightBlockBuilder(db, this.telemetry ?? new NoopTelemetryClient());
56
+ }
57
+ }
58
+ /**
59
+ * Creates a block builder under the hood with the given txs and messages and creates a block.
60
+ * Automatically adds padding txs to get to a minimum of 2 txs in the block.
61
+ * @param db - A db fork to use for block building.
62
+ */
63
+ export async function buildBlock(txs, globalVariables, l1ToL2Messages, db, telemetry = new NoopTelemetryClient()) {
64
+ const builder = new LightweightBlockBuilder(db, telemetry);
65
+ await builder.startNewBlock(Math.max(txs.length, 2), globalVariables, l1ToL2Messages);
66
+ for (const tx of txs) {
67
+ await builder.addNewTx(tx);
68
+ }
69
+ return await builder.setBlockCompleted();
70
+ }
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2tfYnVpbGRlci9saWdodC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsT0FBTyxFQUNQLFlBQVksRUFHWixvQkFBb0IsR0FDckIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsRUFBRSxFQUF3QixtQ0FBbUMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sMkNBQTJDLENBQUM7QUFFbkQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBU2xDLFlBQW9CLEVBQTZCLEVBQVUsU0FBMEI7UUFBakUsT0FBRSxHQUFGLEVBQUUsQ0FBMkI7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQUpwRSxRQUFHLEdBQWtCLEVBQUUsQ0FBQztRQUV4QixXQUFNLEdBQUcsaUJBQWlCLENBQUMsNENBQTRDLENBQUMsQ0FBQztJQUVGLENBQUM7SUFFekYsS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFjLEVBQUUsZUFBZ0MsRUFBRSxjQUFvQjtRQUN4RixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsT0FBTyxD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
package/dest/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  export { EpochProverManager } from '@aztec/circuit-types';
2
- export * from './tx-prover/tx-prover.js';
2
+ export * from './prover-client/index.js';
3
3
  export * from './config.js';
4
- export * from './tx-prover/factory.js';
5
4
  export * from './proving_broker/prover_cache/memory.js';
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,yCAAyC,CAAC"}
package/dest/index.js CHANGED
@@ -1,5 +1,4 @@
1
- export * from './tx-prover/tx-prover.js';
1
+ export * from './prover-client/index.js';
2
2
  export * from './config.js';
3
- export * from './tx-prover/factory.js';
4
3
  export * from './proving_broker/prover_cache/memory.js';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUNBQXlDLENBQUMifQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHlDQUF5QyxDQUFDIn0=
@@ -1,4 +1,4 @@
1
- import { type MerkleTreeReadOperations, type MerkleTreeWriteOperations, type ProcessedTx } from '@aztec/circuit-types';
1
+ import { type MerkleTreeWriteOperations, type ProcessedTx } from '@aztec/circuit-types';
2
2
  import { GlobalVariables } from '@aztec/circuits.js';
3
3
  import { type DebugLogger } from '@aztec/foundation/log';
4
4
  import { type SimulationProvider } from '@aztec/simulator';
@@ -14,7 +14,6 @@ export declare function getSimulationProvider(config: {
14
14
  acvmWorkingDirectory: string | undefined;
15
15
  acvmBinaryPath: string | undefined;
16
16
  }, logger?: DebugLogger): Promise<SimulationProvider>;
17
- export declare const makeBloatedProcessedTxWithVKRoot: (builderDb: MerkleTreeReadOperations, seed?: number) => ProcessedTx;
18
17
  export declare const updateExpectedTreesFromTxs: (db: MerkleTreeWriteOperations, txs: ProcessedTx[]) => Promise<void>;
19
18
  export declare const makeGlobals: (blockNumber: number) => GlobalVariables;
20
19
  //# sourceMappingURL=fixtures.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/mocks/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAKL,eAAe,EAIhB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD,OAAO,EAAuB,KAAK,kBAAkB,EAAiB,MAAM,kBAAkB,CAAC;AAiB/F,eAAO,MAAM,oBAAoB,WAAkB,WAAW;;;;;;;cAkC7D,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,MAAM,EAAE;IAAE,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EACxF,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,eAAO,MAAM,gCAAgC,cAAe,wBAAwB,+BACoB,CAAC;AAGzG,eAAO,MAAM,0BAA0B,OAAc,yBAAyB,OAAO,WAAW,EAAE,kBAiBjG,CAAC;AAEF,eAAO,MAAM,WAAW,gBAAiB,MAAM,oBAW9C,CAAC"}
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/mocks/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,yBAAyB,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAKL,eAAe,EAIhB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAuB,KAAK,kBAAkB,EAAiB,MAAM,kBAAkB,CAAC;AAiB/F,eAAO,MAAM,oBAAoB,WAAkB,WAAW;;;;;;;cAkC7D,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,MAAM,EAAE;IAAE,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EACxF,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAGD,eAAO,MAAM,0BAA0B,OAAc,yBAAyB,OAAO,WAAW,EAAE,kBAgBjG,CAAC;AAEF,eAAO,MAAM,WAAW,gBAAiB,MAAM,oBAW9C,CAAC"}
@@ -1,11 +1,8 @@
1
- import { MerkleTreeId, } from '@aztec/circuit-types';
2
- import { makeBloatedProcessedTx } from '@aztec/circuit-types/test';
1
+ import { MerkleTreeId } from '@aztec/circuit-types';
3
2
  import { AztecAddress, EthAddress, Fr, GasFees, GlobalVariables, MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX, NULLIFIER_TREE_HEIGHT, } from '@aztec/circuits.js';
4
3
  import { padArrayEnd } from '@aztec/foundation/collection';
5
4
  import { randomBytes } from '@aztec/foundation/crypto';
6
5
  import { fileURLToPath } from '@aztec/foundation/url';
7
- import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types';
8
- import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
9
6
  import { NativeACVMSimulator, WASMSimulator } from '@aztec/simulator';
10
7
  import * as fs from 'fs/promises';
11
8
  import path from 'path';
@@ -59,16 +56,15 @@ export async function getSimulationProvider(config, logger) {
59
56
  logger?.info('Using WASM ACVM simulation');
60
57
  return new WASMSimulator();
61
58
  }
62
- export const makeBloatedProcessedTxWithVKRoot = (builderDb, seed = 0x1) => makeBloatedProcessedTx({ db: builderDb, vkTreeRoot: getVKTreeRoot(), protocolContractTreeRoot, seed });
63
59
  // Updates the expectedDb trees based on the new note hashes, contracts, and nullifiers from these txs
64
60
  export const updateExpectedTreesFromTxs = async (db, txs) => {
65
61
  await db.appendLeaves(MerkleTreeId.NOTE_HASH_TREE, txs.flatMap(tx => padArrayEnd(tx.txEffect.noteHashes, Fr.zero(), MAX_NOTE_HASHES_PER_TX)));
66
62
  await db.batchInsert(MerkleTreeId.NULLIFIER_TREE, txs.flatMap(tx => padArrayEnd(tx.txEffect.nullifiers, Fr.zero(), MAX_NULLIFIERS_PER_TX).map(x => x.toBuffer())), NULLIFIER_TREE_HEIGHT);
67
63
  for (const tx of txs) {
68
- await db.batchInsert(MerkleTreeId.PUBLIC_DATA_TREE, tx.txEffect.publicDataWrites.map(write => write.toBuffer()), 0);
64
+ await db.sequentialInsert(MerkleTreeId.PUBLIC_DATA_TREE, tx.txEffect.publicDataWrites.map(write => write.toBuffer()));
69
65
  }
70
66
  };
71
67
  export const makeGlobals = (blockNumber) => {
72
68
  return new GlobalVariables(Fr.ZERO, Fr.ZERO, new Fr(blockNumber) /** block number */, new Fr(blockNumber) /** slot number */, new Fr(blockNumber) /** timestamp */, EthAddress.ZERO, AztecAddress.ZERO, GasFees.empty());
73
69
  };
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9ja3MvZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksR0FJYixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25FLE9BQU8sRUFDTCxZQUFZLEVBQ1osVUFBVSxFQUNWLEVBQUUsRUFDRixPQUFPLEVBQ1AsZUFBZSxFQUNmLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIscUJBQXFCLEdBQ3RCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBMkIsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0YsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRXhCLE1BQU0sRUFDSixjQUFjLEdBQUcsZUFBZSxFQUNoQyxRQUFRLEdBQUcsTUFBTSxFQUNqQixjQUFjLEdBQUcsRUFBRSxFQUNuQixvQkFBb0IsR0FBRyxFQUFFLEVBQ3pCLGVBQWUsR0FBRyxFQUFFLEVBQ3BCLGdCQUFnQixHQUFHLDBCQUEwQixFQUM3QyxnQkFBZ0IsR0FBRyxFQUFFLEVBQ3JCLHNCQUFzQixHQUFHLEVBQUUsR0FDNUIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDO0FBRWhCLGdGQUFnRjtBQUNo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
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9ja3MvZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBb0QsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RyxPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFDVixFQUFFLEVBQ0YsT0FBTyxFQUNQLGVBQWUsRUFDZixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLHFCQUFxQixHQUN0QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBMkIsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0YsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRXhCLE1BQU0sRUFDSixjQUFjLEdBQUcsZUFBZSxFQUNoQyxRQUFRLEdBQUcsTUFBTSxFQUNqQixjQUFjLEdBQUcsRUFBRSxFQUNuQixvQkFBb0IsR0FBRyxFQUFFLEVBQ3pCLGVBQWUsR0FBRyxFQUFFLEVBQ3BCLGdCQUFnQixHQUFHLDBCQUEwQixFQUM3QyxnQkFBZ0IsR0FBRyxFQUFFLEVBQ3JCLHNCQUFzQixHQUFHLEVBQUUsR0FDNUIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDO0FBRWhCLGdGQUFnRjtBQUNoRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLEVBQUUsTUFBbUIsRUFBRSxFQUFFO0lBQ2hFLElBQUksQ0FBQztRQUNILE1BQU0sY0FBYyxHQUFHLGNBQWM7WUFDbkMsQ0FBQyxDQUFDLGNBQWM7WUFDaEIsQ0FBQyxDQUFD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
@@ -1,29 +1,47 @@
1
1
  import { type BBProverConfig } from '@aztec/bb-prover';
2
- import { type MerkleTreeWriteOperations, type ProcessedTx, type ProcessedTxHandler, type ServerCircuitProver, type Tx, type TxValidator } from '@aztec/circuit-types';
3
- import { type GlobalVariables } from '@aztec/circuits.js';
2
+ import { type L2Block, type ProcessedTx, type ProcessedTxHandler, type ServerCircuitProver, type Tx, type TxValidator } from '@aztec/circuit-types';
3
+ import { makeBloatedProcessedTx } from '@aztec/circuit-types/test';
4
+ import { type AppendOnlyTreeSnapshot, type GlobalVariables, Header } from '@aztec/circuits.js';
5
+ import { Fr } from '@aztec/foundation/fields';
4
6
  import { type DebugLogger } from '@aztec/foundation/log';
5
- import { PublicProcessor, PublicTxSimulator, type SimulationProvider, type WorldStateDB } from '@aztec/simulator';
6
- import { type MockProxy } from 'jest-mock-extended';
7
+ import { PublicProcessor, PublicTxSimulator, type SimulationProvider } from '@aztec/simulator';
8
+ import { type MerkleTreeAdminDatabase } from '@aztec/world-state';
7
9
  import { ProvingOrchestrator } from '../orchestrator/index.js';
8
10
  import { ProverAgent } from '../prover-agent/prover-agent.js';
9
11
  export declare class TestContext {
10
12
  publicTxSimulator: PublicTxSimulator;
11
- worldStateDB: MockProxy<WorldStateDB>;
13
+ worldState: MerkleTreeAdminDatabase;
12
14
  publicProcessor: PublicProcessor;
13
15
  simulationProvider: SimulationProvider;
14
16
  globalVariables: GlobalVariables;
15
- actualDb: MerkleTreeWriteOperations;
16
17
  prover: ServerCircuitProver;
17
18
  proverAgent: ProverAgent;
18
- orchestrator: ProvingOrchestrator;
19
+ orchestrator: TestProvingOrchestrator;
19
20
  blockNumber: number;
20
21
  directoriesToCleanup: string[];
21
22
  logger: DebugLogger;
22
- constructor(publicTxSimulator: PublicTxSimulator, worldStateDB: MockProxy<WorldStateDB>, publicProcessor: PublicProcessor, simulationProvider: SimulationProvider, globalVariables: GlobalVariables, actualDb: MerkleTreeWriteOperations, prover: ServerCircuitProver, proverAgent: ProverAgent, orchestrator: ProvingOrchestrator, blockNumber: number, directoriesToCleanup: string[], logger: DebugLogger);
23
- get epochProver(): ProvingOrchestrator;
24
- static new(logger: DebugLogger, worldState?: 'native' | 'legacy', proverCount?: number, createProver?: (bbConfig: BBProverConfig) => Promise<ServerCircuitProver>, blockNumber?: number): Promise<TestContext>;
23
+ private headers;
24
+ constructor(publicTxSimulator: PublicTxSimulator, worldState: MerkleTreeAdminDatabase, publicProcessor: PublicProcessor, simulationProvider: SimulationProvider, globalVariables: GlobalVariables, prover: ServerCircuitProver, proverAgent: ProverAgent, orchestrator: TestProvingOrchestrator, blockNumber: number, directoriesToCleanup: string[], logger: DebugLogger);
25
+ get epochProver(): TestProvingOrchestrator;
26
+ static new(logger: DebugLogger, proverCount?: number, createProver?: (bbConfig: BBProverConfig) => Promise<ServerCircuitProver>, blockNumber?: number): Promise<TestContext>;
27
+ getFork(): Promise<import("@aztec/circuit-types").MerkleTreeWriteOperations>;
28
+ getHeader(blockNumber: 0): Header;
29
+ getHeader(blockNumber: number): Header | undefined;
25
30
  cleanup(): Promise<void>;
31
+ makeProcessedTx(opts?: Parameters<typeof makeBloatedProcessedTx>[0]): ProcessedTx;
32
+ makeProcessedTx(seed?: number): ProcessedTx;
33
+ /** Creates a block with the given number of txs and adds it to world-state */
34
+ makePendingBlock(numTxs: number, numMsgs?: number, blockNumOrGlobals?: GlobalVariables | number, makeProcessedTxOpts?: (index: number) => Partial<Parameters<typeof makeBloatedProcessedTx>[0]>): Promise<{
35
+ block: L2Block;
36
+ txs: ProcessedTx[];
37
+ msgs: Fr[];
38
+ }>;
26
39
  processPublicFunctions(txs: Tx[], maxTransactions: number, txHandler?: ProcessedTxHandler, txValidator?: TxValidator<ProcessedTx>): Promise<[ProcessedTx[], import("@aztec/circuit-types").FailedTx[], import("@aztec/circuit-types").NestedProcessReturnValues[]]>;
27
40
  private processPublicFunctionsWithMockExecutorImplementation;
28
41
  }
42
+ declare class TestProvingOrchestrator extends ProvingOrchestrator {
43
+ isVerifyBuiltBlockAgainstSyncedStateEnabled: boolean;
44
+ protected verifyBuiltBlockAgainstSyncedState(l2Block: L2Block, newArchive: AppendOnlyTreeSnapshot): Promise<void>;
45
+ }
46
+ export {};
29
47
  //# sourceMappingURL=test_context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test_context.d.ts","sourceRoot":"","sources":["../../src/mocks/test_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EAChB,KAAK,kBAAkB,EAEvB,KAAK,mBAAmB,EACxB,KAAK,EAAE,EACP,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAY,KAAK,eAAe,EAAU,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,KAAK,kBAAkB,EAEvB,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAE,KAAK,SAAS,EAAQ,MAAM,oBAAoB,CAAC;AAK1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D,qBAAa,WAAW;IAEb,iBAAiB,EAAE,iBAAiB;IACpC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC;IACrC,eAAe,EAAE,eAAe;IAChC,kBAAkB,EAAE,kBAAkB;IACtC,eAAe,EAAE,eAAe;IAChC,QAAQ,EAAE,yBAAyB;IACnC,MAAM,EAAE,mBAAmB;IAC3B,WAAW,EAAE,WAAW;IACxB,YAAY,EAAE,mBAAmB;IACjC,WAAW,EAAE,MAAM;IACnB,oBAAoB,EAAE,MAAM,EAAE;IAC9B,MAAM,EAAE,WAAW;gBAXnB,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,EACrC,eAAe,EAAE,eAAe,EAChC,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,yBAAyB,EACnC,MAAM,EAAE,mBAAmB,EAC3B,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,mBAAmB,EACjC,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,MAAM,EAAE,EAC9B,MAAM,EAAE,WAAW;IAG5B,IAAW,WAAW,wBAErB;WAEY,GAAG,CACd,MAAM,EAAE,WAAW,EACnB,UAAU,GAAE,QAAQ,GAAG,QAAmB,EAC1C,WAAW,SAAI,EACf,YAAY,GAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,OAAO,CAAC,mBAAmB,CACiB,EACxF,WAAW,SAAI;IA+EX,OAAO;IAOA,sBAAsB,CACjC,GAAG,EAAE,EAAE,EAAE,EACT,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,kBAAkB,EAC9B,WAAW,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC;YAgC1B,oDAAoD;CAiCnE"}
1
+ {"version":3,"file":"test_context.d.ts","sourceRoot":"","sources":["../../src/mocks/test_context.ts"],"names":[],"mappings":"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"}
@@ -1,55 +1,48 @@
1
+ import { makeBloatedProcessedTx } from '@aztec/circuit-types/test';
1
2
  import { Header } from '@aztec/circuits.js';
3
+ import { times } from '@aztec/foundation/collection';
2
4
  import { Fr } from '@aztec/foundation/fields';
3
- import { openTmpStore } from '@aztec/kv-store/utils';
5
+ import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types';
6
+ import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
4
7
  import { PublicProcessor, PublicTxSimulator, WASMSimulator, } from '@aztec/simulator';
5
8
  import { NoopTelemetryClient } from '@aztec/telemetry-client/noop';
6
- import { MerkleTrees } from '@aztec/world-state';
7
9
  import { NativeWorldStateService } from '@aztec/world-state/native';
8
10
  import { jest } from '@jest/globals';
9
11
  import * as fs from 'fs/promises';
10
12
  import { mock } from 'jest-mock-extended';
11
13
  import { TestCircuitProver } from '../../../bb-prover/src/test/test_circuit_prover.js';
12
14
  import { AvmFinalizedCallResult } from '../../../simulator/src/avm/avm_contract_call_result.js';
15
+ import { buildBlock } from '../block_builder/light.js';
13
16
  import { ProvingOrchestrator } from '../orchestrator/index.js';
14
17
  import { MemoryProvingQueue } from '../prover-agent/memory-proving-queue.js';
15
18
  import { ProverAgent } from '../prover-agent/prover-agent.js';
16
19
  import { getEnvironmentConfig, getSimulationProvider, makeGlobals } from './fixtures.js';
17
20
  export class TestContext {
18
- constructor(publicTxSimulator, worldStateDB, publicProcessor, simulationProvider, globalVariables, actualDb, prover, proverAgent, orchestrator, blockNumber, directoriesToCleanup, logger) {
21
+ constructor(publicTxSimulator, worldState, publicProcessor, simulationProvider, globalVariables, prover, proverAgent, orchestrator, blockNumber, directoriesToCleanup, logger) {
19
22
  this.publicTxSimulator = publicTxSimulator;
20
- this.worldStateDB = worldStateDB;
23
+ this.worldState = worldState;
21
24
  this.publicProcessor = publicProcessor;
22
25
  this.simulationProvider = simulationProvider;
23
26
  this.globalVariables = globalVariables;
24
- this.actualDb = actualDb;
25
27
  this.prover = prover;
26
28
  this.proverAgent = proverAgent;
27
29
  this.orchestrator = orchestrator;
28
30
  this.blockNumber = blockNumber;
29
31
  this.directoriesToCleanup = directoriesToCleanup;
30
32
  this.logger = logger;
33
+ this.headers = new Map();
31
34
  }
32
35
  get epochProver() {
33
36
  return this.orchestrator;
34
37
  }
35
- static async new(logger, worldState = 'native', proverCount = 4, createProver = _ => Promise.resolve(new TestCircuitProver(new NoopTelemetryClient(), new WASMSimulator())), blockNumber = 3) {
38
+ static async new(logger, proverCount = 4, createProver = _ => Promise.resolve(new TestCircuitProver(new NoopTelemetryClient(), new WASMSimulator())), blockNumber = 1) {
36
39
  const directoriesToCleanup = [];
37
40
  const globalVariables = makeGlobals(blockNumber);
38
41
  const worldStateDB = mock();
39
42
  const telemetry = new NoopTelemetryClient();
40
43
  // Separated dbs for public processor and prover - see public_processor for context
41
- let publicDb;
42
- let proverDb;
43
- if (worldState === 'native') {
44
- const ws = await NativeWorldStateService.tmp();
45
- publicDb = await ws.fork();
46
- proverDb = await ws.fork();
47
- }
48
- else {
49
- const ws = await MerkleTrees.new(openTmpStore(), telemetry);
50
- publicDb = await ws.getLatest();
51
- proverDb = await ws.getLatest();
52
- }
44
+ const ws = await NativeWorldStateService.tmp();
45
+ const publicDb = await ws.fork();
53
46
  worldStateDB.getMerkleInterface.mockReturnValue(publicDb);
54
47
  const publicTxSimulator = new PublicTxSimulator(publicDb, worldStateDB, telemetry, globalVariables);
55
48
  const processor = new PublicProcessor(publicDb, globalVariables, Header.empty(), worldStateDB, publicTxSimulator, telemetry);
@@ -76,11 +69,17 @@ export class TestContext {
76
69
  directoriesToCleanup.push(config.directoryToCleanup);
77
70
  }
78
71
  const queue = new MemoryProvingQueue(telemetry);
79
- const orchestrator = new ProvingOrchestrator(proverDb, queue, telemetry, Fr.ZERO);
72
+ const orchestrator = new TestProvingOrchestrator(ws, queue, telemetry, Fr.ZERO);
80
73
  const agent = new ProverAgent(localProver, proverCount);
81
74
  queue.start();
82
75
  agent.start(queue);
83
- return new this(publicTxSimulator, worldStateDB, processor, simulationProvider, globalVariables, proverDb, localProver, agent, orchestrator, blockNumber, directoriesToCleanup, logger);
76
+ return new this(publicTxSimulator, ws, processor, simulationProvider, globalVariables, localProver, agent, orchestrator, blockNumber, directoriesToCleanup, logger);
77
+ }
78
+ getFork() {
79
+ return this.worldState.fork();
80
+ }
81
+ getHeader(blockNumber = 0) {
82
+ return blockNumber === 0 ? this.worldState.getCommitted().getInitialHeader() : this.headers.get(blockNumber);
84
83
  }
85
84
  async cleanup() {
86
85
  await this.proverAgent.stop();
@@ -88,6 +87,30 @@ export class TestContext {
88
87
  await fs.rm(dir, { recursive: true, force: true });
89
88
  }
90
89
  }
90
+ makeProcessedTx(seedOrOpts) {
91
+ const opts = typeof seedOrOpts === 'number' ? { seed: seedOrOpts } : seedOrOpts;
92
+ const blockNum = (opts?.globalVariables ?? this.globalVariables).blockNumber.toNumber();
93
+ const header = this.getHeader(blockNum - 1);
94
+ return makeBloatedProcessedTx({
95
+ header,
96
+ vkTreeRoot: getVKTreeRoot(),
97
+ protocolContractTreeRoot,
98
+ globalVariables: this.globalVariables,
99
+ ...opts,
100
+ });
101
+ }
102
+ /** Creates a block with the given number of txs and adds it to world-state */
103
+ async makePendingBlock(numTxs, numMsgs = 0, blockNumOrGlobals = this.globalVariables, makeProcessedTxOpts = () => ({})) {
104
+ const globalVariables = typeof blockNumOrGlobals === 'number' ? makeGlobals(blockNumOrGlobals) : blockNumOrGlobals;
105
+ const blockNum = globalVariables.blockNumber.toNumber();
106
+ const db = await this.worldState.fork();
107
+ const msgs = times(numMsgs, i => new Fr(blockNum * 100 + i));
108
+ const txs = times(numTxs, i => this.makeProcessedTx({ seed: i + blockNum * 1000, globalVariables, ...makeProcessedTxOpts(i) }));
109
+ const block = await buildBlock(txs, globalVariables, msgs, db);
110
+ this.headers.set(blockNum, block.header);
111
+ await this.worldState.handleL2BlockAndMessages(block, msgs);
112
+ return { block, txs, msgs };
113
+ }
91
114
  async processPublicFunctions(txs, maxTransactions, txHandler, txValidator) {
92
115
  const defaultExecutorImplementation = (_stateManager, executionRequest, allocatedGas, _transactionFee, _fnName) => {
93
116
  for (const tx of txs) {
@@ -113,4 +136,18 @@ export class TestContext {
113
136
  return await this.publicProcessor.process(txs, maxTransactions, txHandler, txValidator);
114
137
  }
115
138
  }
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vY2tzL3Rlc3RfY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQWtDLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUNMLGVBQWUsRUFDZixpQkFBaUIsRUFFakIsYUFBYSxHQUVkLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxFQUFrQixJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUVoRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RixNQUFNLE9BQU8sV0FBVztJQUN0QixZQUNTLGlCQUFvQyxF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
139
+ class TestProvingOrchestrator extends ProvingOrchestrator {
140
+ constructor() {
141
+ super(...arguments);
142
+ this.isVerifyBuiltBlockAgainstSyncedStateEnabled = false;
143
+ }
144
+ // Disable this check by default, since it requires seeding world state with the block being built
145
+ // This is only enabled in some tests with multiple blocks that populate the pending chain via makePendingBlock
146
+ verifyBuiltBlockAgainstSyncedState(l2Block, newArchive) {
147
+ if (this.isVerifyBuiltBlockAgainstSyncedStateEnabled) {
148
+ return super.verifyBuiltBlockAgainstSyncedState(l2Block, newArchive);
149
+ }
150
+ return Promise.resolve();
151
+ }
152
+ }
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vY2tzL3Rlc3RfY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQStELE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsaUJBQWlCLEVBRWpCLGFBQWEsR0FFZCxNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUs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
@@ -25,6 +25,7 @@ export type ProvingResult = {
25
25
  */
26
26
  export declare class EpochProvingState {
27
27
  readonly epochNumber: number;
28
+ readonly firstBlockNumber: number;
28
29
  readonly totalNumBlocks: number;
29
30
  private completionCallback;
30
31
  private rejectionCallback;
@@ -32,13 +33,11 @@ export declare class EpochProvingState {
32
33
  private mergeRollupInputs;
33
34
  rootRollupPublicInputs: RootRollupPublicInputs | undefined;
34
35
  finalProof: Proof | undefined;
35
- blocks: BlockProvingState[];
36
- constructor(epochNumber: number, totalNumBlocks: number, completionCallback: (result: ProvingResult) => void, rejectionCallback: (reason: string) => void);
37
- /** Returns the current block proving state */
38
- get currentBlock(): BlockProvingState | undefined;
36
+ blocks: (BlockProvingState | undefined)[];
37
+ constructor(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number, completionCallback: (result: ProvingResult) => void, rejectionCallback: (reason: string) => void);
39
38
  get numMergeLevels(): bigint;
40
39
  findMergeLevel(currentLevel: bigint, currentIndex: bigint): bigint[];
41
- startNewBlock(numTxs: number, globalVariables: GlobalVariables, l1ToL2Messages: Fr[], messageTreeSnapshot: AppendOnlyTreeSnapshot, messageTreeRootSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH>, messageTreeSnapshotAfterInsertion: AppendOnlyTreeSnapshot, archiveTreeSnapshot: AppendOnlyTreeSnapshot, archiveTreeRootSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, previousBlockHash: Fr): number;
40
+ startNewBlock(numTxs: number, globalVariables: GlobalVariables, l1ToL2Messages: Fr[], messageTreeSnapshot: AppendOnlyTreeSnapshot, messageTreeRootSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH>, messageTreeSnapshotAfterInsertion: AppendOnlyTreeSnapshot, archiveTreeSnapshot: AppendOnlyTreeSnapshot, archiveTreeRootSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, previousBlockHash: Fr): BlockProvingState;
42
41
  verifyState(): boolean;
43
42
  isAcceptingBlocks(): boolean;
44
43
  /**
@@ -53,7 +52,7 @@ export declare class EpochProvingState {
53
52
  RecursiveProof<typeof NESTED_RECURSIVE_PROOF_LENGTH>,
54
53
  VerificationKeyAsFields
55
54
  ], indexWithinMerge: number, indexOfMerge: number): boolean;
56
- getBlockProvingState(index: number): BlockProvingState;
55
+ getBlockProvingStateByBlockNumber(blockNumber: number): BlockProvingState | undefined;
57
56
  getMergeInputs(indexOfMerge: number): BlockMergeRollupInputData;
58
57
  isReadyForRootRollup(): boolean;
59
58
  cancel(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"epoch-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/epoch-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EACtC,EAAE,EACF,KAAK,eAAe,EACpB,KAAK,wCAAwC,EAC7C,KAAK,6BAA6B,EAElC,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AAStE,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,CAAC,iCAAiC,GAAG,SAAS,EAAE,iCAAiC,GAAG,SAAS,CAAC,CAAC;IACvG,MAAM,EAAE;QACN,cAAc,CAAC,OAAO,6BAA6B,CAAC,GAAG,SAAS;QAChE,cAAc,CAAC,OAAO,6BAA6B,CAAC,GAAG,SAAS;KACjE,CAAC;IACF,gBAAgB,EAAE,CAAC,uBAAuB,GAAG,SAAS,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAC;CAC9F,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1F;;;;;GAKG;AACH,qBAAa,iBAAiB;aASV,WAAW,EAAE,MAAM;aACnB,cAAc,EAAE,MAAM;IACtC,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,iBAAiB;IAX3B,OAAO,CAAC,qBAAqB,CAAiD;IAE9E,OAAO,CAAC,iBAAiB,CAAmC;IACrD,sBAAsB,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC3D,UAAU,EAAE,KAAK,GAAG,SAAS,CAAC;IAC9B,MAAM,EAAE,iBAAiB,EAAE,CAAM;gBAGtB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EAC9B,kBAAkB,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,EACnD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;IAGrD,8CAA8C;IAC9C,IAAW,YAAY,IAAI,iBAAiB,GAAG,SAAS,CAEvD;IAGD,IAAW,cAAc,WAGxB;IAKM,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IA2BzD,aAAa,CAClB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,mBAAmB,EAAE,sBAAsB,EAC3C,0BAA0B,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,wCAAwC,CAAC,EACtF,iCAAiC,EAAE,sBAAsB,EACzD,mBAAmB,EAAE,sBAAsB,EAC3C,0BAA0B,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,cAAc,CAAC,EAC5D,iBAAiB,EAAE,EAAE;IAuBhB,WAAW;IAQX,iBAAiB;IAIxB;;;;;;OAMG;IACI,gBAAgB,CACrB,WAAW,EAAE;QACX,iCAAiC;QACjC,cAAc,CAAC,OAAO,6BAA6B,CAAC;QACpD,uBAAuB;KACxB,EACD,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM;IAsBf,oBAAoB,CAAC,KAAK,EAAE,MAAM;IAKlC,cAAc,CAAC,YAAY,EAAE,MAAM;IAKnC,oBAAoB;IAKpB,MAAM;IAMN,MAAM,CAAC,MAAM,EAAE,MAAM;IAUrB,OAAO,CAAC,MAAM,EAAE,aAAa;CAOrC"}
1
+ {"version":3,"file":"epoch-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/epoch-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EACtC,EAAE,EACF,KAAK,eAAe,EACpB,KAAK,wCAAwC,EAC7C,KAAK,6BAA6B,EAElC,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AAStE,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,CAAC,iCAAiC,GAAG,SAAS,EAAE,iCAAiC,GAAG,SAAS,CAAC,CAAC;IACvG,MAAM,EAAE;QACN,cAAc,CAAC,OAAO,6BAA6B,CAAC,GAAG,SAAS;QAChE,cAAc,CAAC,OAAO,6BAA6B,CAAC,GAAG,SAAS;KACjE,CAAC;IACF,gBAAgB,EAAE,CAAC,uBAAuB,GAAG,SAAS,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAC;CAC9F,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1F;;;;;GAKG;AACH,qBAAa,iBAAiB;aASV,WAAW,EAAE,MAAM;aACnB,gBAAgB,EAAE,MAAM;aACxB,cAAc,EAAE,MAAM;IACtC,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,iBAAiB;IAZ3B,OAAO,CAAC,qBAAqB,CAAiD;IAE9E,OAAO,CAAC,iBAAiB,CAAmC;IACrD,sBAAsB,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC3D,UAAU,EAAE,KAAK,GAAG,SAAS,CAAC;IAC9B,MAAM,EAAE,CAAC,iBAAiB,GAAG,SAAS,CAAC,EAAE,CAAM;gBAGpC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,EAC9B,kBAAkB,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,EACnD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;IAIrD,IAAW,cAAc,WAGxB;IAKM,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IA2BzD,aAAa,CAClB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,mBAAmB,EAAE,sBAAsB,EAC3C,0BAA0B,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,wCAAwC,CAAC,EACtF,iCAAiC,EAAE,sBAAsB,EACzD,mBAAmB,EAAE,sBAAsB,EAC3C,0BAA0B,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,cAAc,CAAC,EAC5D,iBAAiB,EAAE,EAAE,GACpB,iBAAiB;IAuBb,WAAW;IAQX,iBAAiB;IAIxB;;;;;;OAMG;IACI,gBAAgB,CACrB,WAAW,EAAE;QACX,iCAAiC;QACjC,cAAc,CAAC,OAAO,6BAA6B,CAAC;QACpD,uBAAuB;KACxB,EACD,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM;IAsBf,iCAAiC,CAAC,WAAW,EAAE,MAAM;IAKrD,cAAc,CAAC,YAAY,EAAE,MAAM;IAKnC,oBAAoB;IAKpB,MAAM;IAMN,MAAM,CAAC,MAAM,EAAE,MAAM;IAUrB,OAAO,CAAC,MAAM,EAAE,aAAa;CAOrC"}