@aztec/prover-client 0.0.1-commit.5daedc8 → 0.0.1-commit.6c91f13
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/block-factory/light.d.ts +2 -2
- package/dest/block-factory/light.d.ts.map +1 -1
- package/dest/block-factory/light.js +1 -1
- package/dest/config.d.ts +2 -2
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +1 -1
- package/dest/light/index.d.ts +2 -0
- package/dest/light/index.d.ts.map +1 -0
- package/dest/light/index.js +1 -0
- package/dest/light/lightweight_checkpoint_builder.d.ts +21 -13
- package/dest/light/lightweight_checkpoint_builder.d.ts.map +1 -1
- package/dest/light/lightweight_checkpoint_builder.js +55 -15
- package/dest/mocks/fixtures.js +4 -4
- package/dest/mocks/test_context.d.ts +2 -2
- package/dest/mocks/test_context.d.ts.map +1 -1
- package/dest/mocks/test_context.js +12 -9
- package/dest/orchestrator/block-building-helpers.d.ts +4 -4
- package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
- package/dest/orchestrator/block-building-helpers.js +3 -2
- package/dest/orchestrator/block-proving-state.d.ts +5 -4
- package/dest/orchestrator/block-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/block-proving-state.js +1 -1
- package/dest/orchestrator/checkpoint-proving-state.d.ts +6 -5
- package/dest/orchestrator/checkpoint-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/checkpoint-proving-state.js +6 -4
- package/dest/orchestrator/epoch-proving-state.d.ts +5 -5
- package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/epoch-proving-state.js +1 -1
- package/dest/orchestrator/orchestrator.d.ts +7 -7
- package/dest/orchestrator/orchestrator.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator.js +8 -29
- package/dest/orchestrator/orchestrator_metrics.d.ts +1 -3
- package/dest/orchestrator/orchestrator_metrics.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator_metrics.js +0 -9
- package/dest/orchestrator/tx-proving-state.d.ts +2 -2
- package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/tx-proving-state.js +3 -3
- package/dest/prover-client/factory.d.ts +3 -3
- package/dest/prover-client/factory.d.ts.map +1 -1
- package/dest/prover-client/prover-client.d.ts +3 -3
- package/dest/prover-client/prover-client.d.ts.map +1 -1
- package/dest/prover-client/server-epoch-prover.d.ts +5 -5
- package/dest/prover-client/server-epoch-prover.d.ts.map +1 -1
- package/dest/proving_broker/broker_prover_facade.d.ts +2 -2
- package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -1
- package/dest/proving_broker/broker_prover_facade.js +3 -10
- package/dest/proving_broker/config.d.ts +2 -2
- package/dest/proving_broker/config.d.ts.map +1 -1
- package/dest/proving_broker/config.js +1 -1
- package/dest/proving_broker/fixtures.js +1 -1
- package/dest/proving_broker/proving_broker.d.ts +1 -1
- package/dest/proving_broker/proving_broker.d.ts.map +1 -1
- package/dest/proving_broker/proving_broker.js +3 -0
- package/dest/proving_broker/proving_job_controller.d.ts +1 -1
- package/dest/proving_broker/proving_job_controller.d.ts.map +1 -1
- package/dest/proving_broker/proving_job_controller.js +2 -3
- package/dest/test/mock_prover.d.ts +2 -2
- package/dest/test/mock_prover.d.ts.map +1 -1
- package/dest/test/mock_prover.js +1 -1
- package/package.json +19 -17
- package/src/block-factory/light.ts +1 -1
- package/src/config.ts +1 -1
- package/src/light/index.ts +1 -0
- package/src/light/lightweight_checkpoint_builder.ts +79 -23
- package/src/mocks/fixtures.ts +4 -4
- package/src/mocks/test_context.ts +15 -10
- package/src/orchestrator/block-building-helpers.ts +3 -2
- package/src/orchestrator/block-proving-state.ts +3 -2
- package/src/orchestrator/checkpoint-proving-state.ts +9 -7
- package/src/orchestrator/epoch-proving-state.ts +8 -5
- package/src/orchestrator/orchestrator.ts +14 -38
- package/src/orchestrator/orchestrator_metrics.ts +1 -20
- package/src/orchestrator/tx-proving-state.ts +4 -5
- package/src/prover-client/factory.ts +6 -2
- package/src/prover-client/prover-client.ts +3 -2
- package/src/prover-client/server-epoch-prover.ts +4 -4
- package/src/proving_broker/broker_prover_facade.ts +2 -11
- package/src/proving_broker/config.ts +1 -1
- package/src/proving_broker/fixtures.ts +1 -1
- package/src/proving_broker/proving_broker.ts +3 -0
- package/src/proving_broker/proving_job_controller.ts +2 -3
- package/src/test/mock_prover.ts +1 -6
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Fr } from '@aztec/foundation/
|
|
1
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
2
|
import { L2Block } from '@aztec/stdlib/block';
|
|
3
3
|
import type { IBlockFactory, MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
4
4
|
import { type GlobalVariables, type ProcessedTx } from '@aztec/stdlib/tx';
|
|
@@ -35,4 +35,4 @@ export declare class LightweightBlockFactory implements IBlockFactory {
|
|
|
35
35
|
* @param db - A db fork to use for block building which WILL BE MODIFIED.
|
|
36
36
|
*/
|
|
37
37
|
export declare function buildBlockWithCleanDB(txs: ProcessedTx[], globalVariables: GlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeWriteOperations, telemetry?: TelemetryClient): Promise<L2Block>;
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9jay1mYWN0b3J5L2xpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQUUsT0FBTyxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBR2hHLE9BQU8sRUFBcUIsS0FBSyxlQUFlLEVBQUUsS0FBSyxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RixPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXNCLE1BQU0seUJBQXlCLENBQUM7QUFRbkY7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILHFCQUFhLHVCQUF3QixZQUFXLGFBQWE7SUFRekQsT0FBTyxDQUFDLEVBQUU7SUFDVixPQUFPLENBQUMsU0FBUztJQVJuQixPQUFPLENBQUMsZUFBZSxDQUFDLENBQWtCO0lBQzFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBTztJQUM5QixPQUFPLENBQUMsR0FBRyxDQUE0QjtJQUV2QyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBNkM7SUFFcEUsWUFDVSxFQUFFLEVBQUUseUJBQXlCLEVBQzdCLFNBQVMsR0FBRSxlQUFzQyxFQUN2RDtJQUVFLGFBQWEsQ0FBQyxlQUFlLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBT3pGO0lBRUQsTUFBTSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBU3hDO0lBRUQsaUJBQWlCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUVwQztZQUVhLFVBQVU7Q0E4Q3pCO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQXNCLHFCQUFxQixDQUN6QyxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQ2xCLGVBQWUsRUFBRSxlQUFlLEVBQ2hDLGNBQWMsRUFBRSxFQUFFLEVBQUUsRUFDcEIsRUFBRSxFQUFFLHlCQUF5QixFQUM3QixTQUFTLEdBQUUsZUFBc0Msb0JBV2xEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light.d.ts","sourceRoot":"","sources":["../../src/block-factory/light.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"light.d.ts","sourceRoot":"","sources":["../../src/block-factory/light.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAiB,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAGhG,OAAO,EAAqB,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAQnF;;;;;;;;;;;;;GAaG;AACH,qBAAa,uBAAwB,YAAW,aAAa;IAQzD,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,SAAS;IARnB,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAO;IAC9B,OAAO,CAAC,GAAG,CAA4B;IAEvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6C;IAEpE,YACU,EAAE,EAAE,yBAAyB,EAC7B,SAAS,GAAE,eAAsC,EACvD;IAEE,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAOzF;IAED,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CASxC;IAED,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpC;YAEa,UAAU;CA8CzB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAAE,EAClB,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,EAAE,EAAE,yBAAyB,EAC7B,SAAS,GAAE,eAAsC,oBAWlD"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SpongeBlob, computeBlobsHashFromBlobs, encodeCheckpointEndMarker, getBlobsPerL1Block } from '@aztec/blob-lib';
|
|
2
2
|
import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
|
|
3
3
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
4
|
-
import { Fr } from '@aztec/foundation/
|
|
4
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
5
|
import { createLogger } from '@aztec/foundation/log';
|
|
6
6
|
import { L2Block, L2BlockHeader } from '@aztec/stdlib/block';
|
|
7
7
|
import { computeBlockOutHash, computeInHashFromL1ToL2Messages } from '@aztec/stdlib/messaging';
|
package/dest/config.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ACVMConfig, BBConfig } from '@aztec/bb-prover';
|
|
2
2
|
import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
3
|
-
import { type ProverConfig } from '@aztec/stdlib/interfaces/
|
|
3
|
+
import { type ProverConfig } from '@aztec/stdlib/interfaces/prover-config';
|
|
4
4
|
import { type ProverAgentConfig, type ProverBrokerConfig } from './proving_broker/config.js';
|
|
5
5
|
/** The prover configuration as defined by the user. */
|
|
6
6
|
export type ProverClientUserConfig = ProverConfig & ProverAgentConfig & ProverBrokerConfig & BBConfig & ACVMConfig;
|
|
@@ -14,4 +14,4 @@ export declare const proverClientConfigMappings: ConfigMappingsType<ProverClient
|
|
|
14
14
|
* @returns The prover configuration.
|
|
15
15
|
*/
|
|
16
16
|
export declare function getProverEnvVars(): ProverClientUserConfig;
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsS0FBSyxrQkFBa0IsRUFJeEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsS0FBSyxZQUFZLEVBQXdCLE1BQU0sd0NBQXdDLENBQUM7QUFFakcsT0FBTyxFQUNMLEtBQUssaUJBQWlCLEVBQ3RCLEtBQUssa0JBQWtCLEVBR3hCLE1BQU0sNEJBQTRCLENBQUM7QUFFcEMsdURBQXVEO0FBQ3ZELE1BQU0sTUFBTSxzQkFBc0IsR0FBRyxZQUFZLEdBQUcsaUJBQWlCLEdBQUcsa0JBQWtCLEdBQUcsUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUVuSCxpRUFBaUU7QUFDakUsTUFBTSxNQUFNLGtCQUFrQixHQUFHLHNCQUFzQixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUU3RyxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FnQ3RFLENBQUM7QUFFRixlQUFPLE1BQU0sMEJBQTBCLEVBQUUsa0JBQWtCLENBQUMsc0JBQXNCLENBS2pGLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsd0JBQWdCLGdCQUFnQixJQUFJLHNCQUFzQixDQUV6RCJ9
|
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,wCAAwC,CAAC;AAEjG,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAGxB,MAAM,4BAA4B,CAAC;AAEpC,uDAAuD;AACvD,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEnH,iEAAiE;AACjE,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC,CAAC;AAE7G,eAAO,MAAM,gBAAgB,EAAE,kBAAkB,CAAC,QAAQ,GAAG,UAAU,CAgCtE,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,kBAAkB,CAAC,sBAAsB,CAKjF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,sBAAsB,CAEzD"}
|
package/dest/config.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { booleanConfigHelper, getConfigFromMappings, numberConfigHelper } from '@aztec/foundation/config';
|
|
2
|
-
import { proverConfigMappings } from '@aztec/stdlib/interfaces/
|
|
2
|
+
import { proverConfigMappings } from '@aztec/stdlib/interfaces/prover-config';
|
|
3
3
|
import { proverAgentConfigMappings, proverBrokerConfigMappings } from './proving_broker/config.js';
|
|
4
4
|
export const bbConfigMappings = {
|
|
5
5
|
acvmWorkingDirectory: {
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './lightweight_checkpoint_builder.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWdodC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFDQUFxQyxDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/light/index.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lightweight_checkpoint_builder.js';
|
|
@@ -1,28 +1,36 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
3
|
import { L2BlockNew } from '@aztec/stdlib/block';
|
|
3
4
|
import { Checkpoint } from '@aztec/stdlib/checkpoint';
|
|
4
5
|
import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
5
|
-
import {
|
|
6
|
-
import { type GlobalVariables, type ProcessedTx, StateReference } from '@aztec/stdlib/tx';
|
|
6
|
+
import { type CheckpointGlobalVariables, type GlobalVariables, type ProcessedTx, StateReference } from '@aztec/stdlib/tx';
|
|
7
7
|
/**
|
|
8
8
|
* Builds a checkpoint and its header and the blocks in it from a set of processed tx without running any circuits.
|
|
9
9
|
*
|
|
10
|
-
* It updates the l1-to-l2 message tree when starting a new checkpoint,
|
|
11
|
-
*
|
|
10
|
+
* It updates the l1-to-l2 message tree when starting a new checkpoint, and then updates the archive tree when each block is added.
|
|
11
|
+
* Finally completes the checkpoint by computing its header.
|
|
12
12
|
*/
|
|
13
13
|
export declare class LightweightCheckpointBuilder {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
readonly checkpointNumber: CheckpointNumber;
|
|
15
|
+
readonly constants: CheckpointGlobalVariables;
|
|
16
|
+
readonly l1ToL2Messages: Fr[];
|
|
17
|
+
readonly db: MerkleTreeWriteOperations;
|
|
18
18
|
private readonly logger;
|
|
19
19
|
private lastArchives;
|
|
20
20
|
private spongeBlob;
|
|
21
21
|
private blocks;
|
|
22
22
|
private blobFields;
|
|
23
|
-
constructor(checkpointNumber:
|
|
24
|
-
static startNewCheckpoint(checkpointNumber:
|
|
25
|
-
|
|
23
|
+
constructor(checkpointNumber: CheckpointNumber, constants: CheckpointGlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeWriteOperations);
|
|
24
|
+
static startNewCheckpoint(checkpointNumber: CheckpointNumber, constants: CheckpointGlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeWriteOperations): Promise<LightweightCheckpointBuilder>;
|
|
25
|
+
/**
|
|
26
|
+
* Adds a new block to the checkpoint. The tx effects must have already been inserted into the db if
|
|
27
|
+
* this is called after tx processing, if that's not the case, then set `insertTxsEffects` to true.
|
|
28
|
+
*/
|
|
29
|
+
addBlock(globalVariables: GlobalVariables, txs: ProcessedTx[], opts?: {
|
|
30
|
+
insertTxsEffects?: boolean;
|
|
31
|
+
expectedEndState?: StateReference;
|
|
32
|
+
}): Promise<L2BlockNew>;
|
|
26
33
|
completeCheckpoint(): Promise<Checkpoint>;
|
|
34
|
+
clone(): LightweightCheckpointBuilder;
|
|
27
35
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHR3ZWlnaHRfY2hlY2twb2ludF9idWlsZGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGlnaHQvbGlnaHR3ZWlnaHRfY2hlY2twb2ludF9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFeEUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEQsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUlqRixPQUFPLEVBQ0wsS0FBSyx5QkFBeUIsRUFFOUIsS0FBSyxlQUFlLEVBQ3BCLEtBQUssV0FBVyxFQUNoQixjQUFjLEVBQ2YsTUFBTSxrQkFBa0IsQ0FBQztBQVExQjs7Ozs7R0FLRztBQUNILHFCQUFhLDRCQUE0QjthQVNyQixnQkFBZ0IsRUFBRSxnQkFBZ0I7YUFDbEMsU0FBUyxFQUFFLHlCQUF5QjthQUNwQyxjQUFjLEVBQUUsRUFBRSxFQUFFO2FBQ3BCLEVBQUUsRUFBRSx5QkFBeUI7SUFYL0MsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQWtEO0lBRXpFLE9BQU8sQ0FBQyxZQUFZLENBQWdDO0lBQ3BELE9BQU8sQ0FBQyxVQUFVLENBQWE7SUFDL0IsT0FBTyxDQUFDLE1BQU0sQ0FBb0I7SUFDbEMsT0FBTyxDQUFDLFVBQVUsQ0FBWTtJQUU5QixZQUNrQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsU0FBUyxFQUFFLHlCQUF5QixFQUNwQyxjQUFjLEVBQUUsRUFBRSxFQUFFLEVBQ3BCLEVBQUUsRUFBRSx5QkFBeUIsRUFJOUM7SUFFRCxPQUFhLGtCQUFrQixDQUM3QixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsU0FBUyxFQUFFLHlCQUF5QixFQUNwQyxjQUFjLEVBQUUsRUFBRSxFQUFFLEVBQ3BCLEVBQUUsRUFBRSx5QkFBeUIsR0FDNUIsT0FBTyxDQUFDLDRCQUE0QixDQUFDLENBUXZDO0lBRUQ7OztPQUdHO0lBQ1UsUUFBUSxDQUNuQixlQUFlLEVBQUUsZUFBZSxFQUNoQyxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQ2xCLElBQUksR0FBRTtRQUFFLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxDQUFDO1FBQUMsZ0JBQWdCLENBQUMsRUFBRSxjQUFjLENBQUE7S0FBTyxHQUMzRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBaUVyQjtJQUVLLGtCQUFrQixJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0EwQzlDO0lBRUQsS0FBSyxpQ0FZSjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lightweight_checkpoint_builder.d.ts","sourceRoot":"","sources":["../../src/light/lightweight_checkpoint_builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lightweight_checkpoint_builder.d.ts","sourceRoot":"","sources":["../../src/light/lightweight_checkpoint_builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAIjF,OAAO,EACL,KAAK,yBAAyB,EAE9B,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAQ1B;;;;;GAKG;AACH,qBAAa,4BAA4B;aASrB,gBAAgB,EAAE,gBAAgB;aAClC,SAAS,EAAE,yBAAyB;aACpC,cAAc,EAAE,EAAE,EAAE;aACpB,EAAE,EAAE,yBAAyB;IAX/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;IAEzE,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,UAAU,CAAY;IAE9B,YACkB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,yBAAyB,EACpC,cAAc,EAAE,EAAE,EAAE,EACpB,EAAE,EAAE,yBAAyB,EAI9C;IAED,OAAa,kBAAkB,CAC7B,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,yBAAyB,EACpC,cAAc,EAAE,EAAE,EAAE,EACpB,EAAE,EAAE,yBAAyB,GAC5B,OAAO,CAAC,4BAA4B,CAAC,CAQvC;IAED;;;OAGG;IACU,QAAQ,CACnB,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,WAAW,EAAE,EAClB,IAAI,GAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,cAAc,CAAA;KAAO,GAC3E,OAAO,CAAC,UAAU,CAAC,CAiErB;IAEK,kBAAkB,IAAI,OAAO,CAAC,UAAU,CAAC,CA0C9C;IAED,KAAK,iCAYJ;CACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SpongeBlob, computeBlobsHashFromBlobs, encodeCheckpointEndMarker, getBlobsPerL1Block } from '@aztec/blob-lib';
|
|
2
2
|
import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
|
|
3
3
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
4
|
-
import { Fr } from '@aztec/foundation/
|
|
4
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
5
|
import { createLogger } from '@aztec/foundation/log';
|
|
6
6
|
import { L2BlockNew } from '@aztec/stdlib/block';
|
|
7
7
|
import { Checkpoint } from '@aztec/stdlib/checkpoint';
|
|
@@ -13,8 +13,8 @@ import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffects } from '.
|
|
|
13
13
|
/**
|
|
14
14
|
* Builds a checkpoint and its header and the blocks in it from a set of processed tx without running any circuits.
|
|
15
15
|
*
|
|
16
|
-
* It updates the l1-to-l2 message tree when starting a new checkpoint,
|
|
17
|
-
*
|
|
16
|
+
* It updates the l1-to-l2 message tree when starting a new checkpoint, and then updates the archive tree when each block is added.
|
|
17
|
+
* Finally completes the checkpoint by computing its header.
|
|
18
18
|
*/ export class LightweightCheckpointBuilder {
|
|
19
19
|
checkpointNumber;
|
|
20
20
|
constants;
|
|
@@ -36,7 +36,7 @@ import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffects } from '.
|
|
|
36
36
|
this.blobFields = [];
|
|
37
37
|
this.spongeBlob = SpongeBlob.init();
|
|
38
38
|
this.logger.debug('Starting new checkpoint', {
|
|
39
|
-
constants
|
|
39
|
+
constants,
|
|
40
40
|
l1ToL2Messages
|
|
41
41
|
});
|
|
42
42
|
}
|
|
@@ -45,20 +45,43 @@ import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffects } from '.
|
|
|
45
45
|
await db.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP));
|
|
46
46
|
return new LightweightCheckpointBuilder(checkpointNumber, constants, l1ToL2Messages, db);
|
|
47
47
|
}
|
|
48
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Adds a new block to the checkpoint. The tx effects must have already been inserted into the db if
|
|
50
|
+
* this is called after tx processing, if that's not the case, then set `insertTxsEffects` to true.
|
|
51
|
+
*/ async addBlock(globalVariables, txs, opts = {}) {
|
|
49
52
|
const isFirstBlock = this.blocks.length === 0;
|
|
53
|
+
// Empty blocks are only allowed as the first block in a checkpoint
|
|
54
|
+
if (!isFirstBlock && txs.length === 0) {
|
|
55
|
+
throw new Error('Cannot add empty block that is not the first block in the checkpoint.');
|
|
56
|
+
}
|
|
50
57
|
if (isFirstBlock) {
|
|
51
58
|
this.lastArchives.push(await getTreeSnapshot(MerkleTreeId.ARCHIVE, this.db));
|
|
52
59
|
}
|
|
53
60
|
const lastArchive = this.lastArchives.at(-1);
|
|
54
|
-
|
|
55
|
-
|
|
61
|
+
if (opts.insertTxsEffects) {
|
|
62
|
+
this.logger.debug(`Inserting side effects for ${txs.length} txs for block ${globalVariables.blockNumber} into db`, {
|
|
63
|
+
txs: txs.map((tx)=>tx.hash.toString())
|
|
64
|
+
});
|
|
65
|
+
for (const tx of txs){
|
|
66
|
+
await insertSideEffects(tx, this.db);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const endState = await this.db.getStateReference();
|
|
70
|
+
if (opts.expectedEndState && !endState.equals(opts.expectedEndState)) {
|
|
71
|
+
this.logger.error('End state after processing txs does not match expected end state', {
|
|
72
|
+
globalVariables: globalVariables.toInspect(),
|
|
73
|
+
expectedEndState: opts.expectedEndState.toInspect(),
|
|
74
|
+
actualEndState: endState.toInspect()
|
|
75
|
+
});
|
|
76
|
+
throw new Error(`End state does not match expected end state when building block ${globalVariables.blockNumber}`);
|
|
56
77
|
}
|
|
57
78
|
const { header, body, blockBlobFields } = await buildHeaderAndBodyFromTxs(txs, lastArchive, endState, globalVariables, this.spongeBlob, isFirstBlock);
|
|
79
|
+
header.state.validate();
|
|
58
80
|
await this.db.updateArchive(header);
|
|
59
81
|
const newArchive = await getTreeSnapshot(MerkleTreeId.ARCHIVE, this.db);
|
|
60
82
|
this.lastArchives.push(newArchive);
|
|
61
|
-
const
|
|
83
|
+
const indexWithinCheckpoint = this.blocks.length;
|
|
84
|
+
const block = new L2BlockNew(newArchive, header, body, this.checkpointNumber, indexWithinCheckpoint);
|
|
62
85
|
this.blocks.push(block);
|
|
63
86
|
await this.spongeBlob.absorb(blockBlobFields);
|
|
64
87
|
this.blobFields.push(...blockBlobFields);
|
|
@@ -73,7 +96,7 @@ import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffects } from '.
|
|
|
73
96
|
}
|
|
74
97
|
async completeCheckpoint() {
|
|
75
98
|
if (!this.blocks.length) {
|
|
76
|
-
throw new Error('
|
|
99
|
+
throw new Error('Cannot complete a checkpoint with no blocks');
|
|
77
100
|
}
|
|
78
101
|
const numBlobFields = this.blobFields.length + 1; // +1 for the checkpoint end marker.
|
|
79
102
|
const checkpointEndMarker = encodeCheckpointEndMarker({
|
|
@@ -87,21 +110,38 @@ import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffects } from '.
|
|
|
87
110
|
const blobsHash = computeBlobsHashFromBlobs(blobs);
|
|
88
111
|
const inHash = computeInHashFromL1ToL2Messages(this.l1ToL2Messages);
|
|
89
112
|
const outHash = computeCheckpointOutHash(blocks.map((block)=>block.body.txEffects.map((tx)=>tx.l2ToL1Msgs)));
|
|
90
|
-
const
|
|
113
|
+
const { slotNumber, coinbase, feeRecipient, gasFees } = this.constants;
|
|
114
|
+
// TODO(palla/mbps): Should we source this from the constants instead?
|
|
91
115
|
// timestamp of a checkpoint is the timestamp of the last block in the checkpoint.
|
|
92
116
|
const timestamp = blocks[blocks.length - 1].timestamp;
|
|
93
117
|
const totalManaUsed = blocks.reduce((acc, block)=>acc.add(block.header.totalManaUsed), Fr.ZERO);
|
|
94
118
|
const header = CheckpointHeader.from({
|
|
95
119
|
lastArchiveRoot: this.lastArchives[0].root,
|
|
96
|
-
blockHeadersHash,
|
|
97
120
|
contentCommitment: new ContentCommitment(blobsHash, inHash, outHash),
|
|
98
|
-
|
|
121
|
+
blockHeadersHash,
|
|
122
|
+
slotNumber,
|
|
99
123
|
timestamp,
|
|
100
|
-
coinbase
|
|
101
|
-
feeRecipient
|
|
102
|
-
gasFees
|
|
124
|
+
coinbase,
|
|
125
|
+
feeRecipient,
|
|
126
|
+
gasFees,
|
|
103
127
|
totalManaUsed
|
|
104
128
|
});
|
|
105
129
|
return new Checkpoint(newArchive, header, blocks, this.checkpointNumber);
|
|
106
130
|
}
|
|
131
|
+
clone() {
|
|
132
|
+
const clone = new LightweightCheckpointBuilder(this.checkpointNumber, this.constants, [
|
|
133
|
+
...this.l1ToL2Messages
|
|
134
|
+
], this.db);
|
|
135
|
+
clone.lastArchives = [
|
|
136
|
+
...this.lastArchives
|
|
137
|
+
];
|
|
138
|
+
clone.spongeBlob = this.spongeBlob.clone();
|
|
139
|
+
clone.blocks = [
|
|
140
|
+
...this.blocks
|
|
141
|
+
];
|
|
142
|
+
clone.blobFields = [
|
|
143
|
+
...this.blobFields
|
|
144
|
+
];
|
|
145
|
+
return clone;
|
|
146
|
+
}
|
|
107
147
|
}
|
package/dest/mocks/fixtures.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
-
import { randomBytes } from '@aztec/foundation/crypto';
|
|
1
|
+
import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
import { randomBytes } from '@aztec/foundation/crypto/random';
|
|
3
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
5
5
|
import { fileURLToPath } from '@aztec/foundation/url';
|
|
6
6
|
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
|
|
7
7
|
import { protocolContractsHash } from '@aztec/protocol-contracts';
|
|
@@ -70,7 +70,7 @@ export const makeGlobals = (blockNumber, slotNumber = blockNumber, overrides = {
|
|
|
70
70
|
return GlobalVariables.from({
|
|
71
71
|
chainId: checkpointConstants.chainId,
|
|
72
72
|
version: checkpointConstants.version,
|
|
73
|
-
blockNumber,
|
|
73
|
+
blockNumber: BlockNumber(blockNumber),
|
|
74
74
|
slotNumber: SlotNumber(slotNumber),
|
|
75
75
|
timestamp: BigInt(blockNumber * 123),
|
|
76
76
|
coinbase: checkpointConstants.coinbase,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BBProverConfig } from '@aztec/bb-prover';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import type { Logger } from '@aztec/foundation/log';
|
|
4
4
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
5
5
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
@@ -61,4 +61,4 @@ declare class TestProvingOrchestrator extends ProvingOrchestrator {
|
|
|
61
61
|
protected verifyBuiltBlockAgainstSyncedState(provingState: BlockProvingState): Promise<void>;
|
|
62
62
|
}
|
|
63
63
|
export {};
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jb250ZXh0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9ja3MvdGVzdF9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBS3ZELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUt4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHM0QsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RyxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RCxPQUFPLEVBQ0wsS0FBSyxXQUFXLEVBQ2hCLEtBQUssZUFBZSxFQUNwQixLQUFLLFdBQVcsRUFHakIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBV2xFLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBR3BELHFCQUFhLFdBQVc7SUFTYixVQUFVLEVBQUUsdUJBQXVCO0lBQ25DLE1BQU0sRUFBRSxtQkFBbUI7SUFDM0IsTUFBTSxFQUFFLFVBQVU7SUFDbEIsa0JBQWtCLEVBQUUseUJBQXlCO0lBQzdDLFlBQVksRUFBRSx1QkFBdUI7SUFDNUMsT0FBTyxDQUFDLFFBQVE7SUFFaEIsT0FBTyxDQUFDLG9CQUFvQjtJQUM1QixPQUFPLENBQUMsTUFBTTtJQWhCaEIsT0FBTyxDQUFDLE9BQU8sQ0FBdUM7SUFDdEQsT0FBTyxDQUFDLFdBQVcsQ0FBb0I7SUFDdkMsT0FBTyxDQUFDLG1CQUFtQixDQUFLO0lBQ2hDLE9BQU8sQ0FBQyxlQUFlLENBQUs7SUFDNUIsT0FBTyxDQUFDLFdBQVcsQ0FBSztJQUN4QixPQUFPLENBQUMsZUFBZSxDQUFLO0lBRTVCLFlBQ1MsVUFBVSxFQUFFLHVCQUF1QixFQUNuQyxNQUFNLEVBQUUsbUJBQW1CLEVBQzNCLE1BQU0sRUFBRSxVQUFVLEVBQ2xCLGtCQUFrQixFQUFFLHlCQUF5QixFQUM3QyxZQUFZLEVBQUUsdUJBQXVCLEVBQ3BDLFFBQVEsRUFBRSxZQUFZLEVBQzlCLHNCQUFzQixFQUFFLEVBQUUsRUFDbEIsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEVBQzlCLE1BQU0sRUFBRSxNQUFNLEVBR3ZCO0lBRUQsSUFBVyxXQUFXLDRCQUVyQjtJQUVELE9BQWEsR0FBRyxDQUNkLE1BQU0sRUFBRSxNQUFNLEVBQ2QsRUFDRSxXQUFlLEVBQ2YsWUFBOEcsRUFDL0csR0FBRTtRQUNELFdBQVcsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNyQixZQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxjQUFjLEtBQUssT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7S0FDdEUsd0JBdURQO0lBRU0sT0FBTyx1Q0FFYjtJQUVLLE9BQU8sa0JBVVo7SUFFTSxhQUFhLFNBSW5CO0lBR00sYUFBYSxXQUVuQjtJQUVZLHNCQUFzQixtRkFHbEM7SUFFWSxjQUFjLENBQ3pCLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLEVBQ0UsY0FBa0IsRUFDbEIsaUJBQXFCLEVBQ3JCLG1CQUFnQyxFQUNoQyxHQUFHLFlBQVksRUFDaEIsR0FBRTtRQUNELGNBQWMsQ0FBQyxFQUFFLE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQztRQUNuQyxpQkFBaUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUMzQixtQkFBbUIsQ0FBQyxFQUFFLENBQ3BCLG9CQUFvQixFQUFFLGVBQWUsRUFDckMsT0FBTyxFQUFFLE1BQU0sS0FDWixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRCxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsQ0FBTTs7Ozs7Ozs7O09BbUduRDtZQUVhLGVBQWU7SUFvQjdCLE9BQU8sQ0FBQyxjQUFjO1lBU1IsV0FBVztDQThCMUI7QUFFRCxjQUFNLHVCQUF3QixTQUFRLG1CQUFtQjtJQUNoRCwyQ0FBMkMsVUFBUztJQUkzRCxVQUFtQixrQ0FBa0MsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUtwRztDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test_context.d.ts","sourceRoot":"","sources":["../../src/mocks/test_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"test_context.d.ts","sourceRoot":"","sources":["../../src/mocks/test_context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { TestCircuitProver } from '@aztec/bb-prover';
|
|
2
2
|
import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
|
|
3
|
+
import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
3
4
|
import { padArrayEnd, times, timesAsync } from '@aztec/foundation/collection';
|
|
4
|
-
import { Fr } from '@aztec/foundation/
|
|
5
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
6
|
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
|
|
6
7
|
import { ProtocolContractsList } from '@aztec/protocol-contracts';
|
|
7
8
|
import { computeFeePayerBalanceLeafSlot } from '@aztec/protocol-contracts/fee-juice';
|
|
@@ -125,7 +126,7 @@ export class TestContext {
|
|
|
125
126
|
throw new Error('Cannot make a checkpoint with 0 blocks. Crate an empty block (numTxsPerBlock = 0) if there are no txs.');
|
|
126
127
|
}
|
|
127
128
|
const checkpointIndex = this.nextCheckpointIndex++;
|
|
128
|
-
const checkpointNumber = checkpointIndex + 1;
|
|
129
|
+
const checkpointNumber = CheckpointNumber(checkpointIndex + 1);
|
|
129
130
|
const slotNumber = checkpointNumber * 15; // times an arbitrary number to make it different to the checkpoint number
|
|
130
131
|
const constants = makeCheckpointConstants(slotNumber, constantOpts);
|
|
131
132
|
const fork = await this.worldState.fork();
|
|
@@ -134,7 +135,7 @@ export class TestContext {
|
|
|
134
135
|
await fork.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP));
|
|
135
136
|
const newL1ToL2Snapshot = await getTreeSnapshot(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, fork);
|
|
136
137
|
const startBlockNumber = this.nextBlockNumber;
|
|
137
|
-
const previousBlockHeader = this.getBlockHeader(startBlockNumber - 1);
|
|
138
|
+
const previousBlockHeader = this.getBlockHeader(BlockNumber(startBlockNumber - 1));
|
|
138
139
|
// Build global variables.
|
|
139
140
|
const blockGlobalVariables = times(numBlocks, (i)=>makeGlobals(startBlockNumber + i, slotNumber, {
|
|
140
141
|
coinbase: constants.coinbase,
|
|
@@ -166,14 +167,16 @@ export class TestContext {
|
|
|
166
167
|
// Add tx effects to db and build block headers.
|
|
167
168
|
const blocks = [];
|
|
168
169
|
for(let i = 0; i < numBlocks; i++){
|
|
169
|
-
const isFirstBlock = i === 0;
|
|
170
170
|
const txs = blockTxs[i];
|
|
171
171
|
const state = blockEndStates[i];
|
|
172
|
-
const block = await builder.addBlock(blockGlobalVariables[i],
|
|
172
|
+
const block = await builder.addBlock(blockGlobalVariables[i], txs, {
|
|
173
|
+
expectedEndState: state,
|
|
174
|
+
insertTxsEffects: true
|
|
175
|
+
});
|
|
173
176
|
const header = block.header;
|
|
174
177
|
this.headers.set(block.number, header);
|
|
175
|
-
const blockMsgs =
|
|
176
|
-
await this.worldState.handleL2BlockAndMessages(block, blockMsgs
|
|
178
|
+
const blockMsgs = block.indexWithinCheckpoint === 0 ? l1ToL2Messages : [];
|
|
179
|
+
await this.worldState.handleL2BlockAndMessages(block, blockMsgs);
|
|
177
180
|
blocks.push({
|
|
178
181
|
header,
|
|
179
182
|
txs
|
|
@@ -206,10 +209,10 @@ export class TestContext {
|
|
|
206
209
|
return tx;
|
|
207
210
|
}
|
|
208
211
|
getBlockHeader(blockNumber) {
|
|
209
|
-
if (blockNumber > 0 && blockNumber >= this.nextBlockNumber) {
|
|
212
|
+
if (Number(blockNumber) > 0 && Number(blockNumber) >= this.nextBlockNumber) {
|
|
210
213
|
throw new Error(`Block header not built for block number ${blockNumber}.`);
|
|
211
214
|
}
|
|
212
|
-
return blockNumber === 0 ? this.worldState.getCommitted().getInitialHeader() : this.headers.get(blockNumber);
|
|
215
|
+
return Number(blockNumber) === 0 ? this.worldState.getCommitted().getInitialHeader() : this.headers.get(Number(blockNumber));
|
|
213
216
|
}
|
|
214
217
|
async updateTrees(txs, fork) {
|
|
215
218
|
let startStateReference = await fork.getStateReference();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BatchedBlobAccumulator, SpongeBlob } from '@aztec/blob-lib';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { type Bufferable } from '@aztec/foundation/serialize';
|
|
4
4
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
5
5
|
import { Body } from '@aztec/stdlib/block';
|
|
@@ -22,10 +22,10 @@ export declare const insertSideEffects: (tx: ProcessedTx, db: MerkleTreeWriteOpe
|
|
|
22
22
|
nullifierInsertionResult: import("@aztec/stdlib/trees").BatchInsertionResult<number, number>;
|
|
23
23
|
publicDataInsertionResult: import("@aztec/stdlib/trees").SequentialInsertionResult<number>;
|
|
24
24
|
}>;
|
|
25
|
-
export declare function getChonkProofFromTx(tx: Tx | ProcessedTx): RecursiveProof<
|
|
25
|
+
export declare function getChonkProofFromTx(tx: Tx | ProcessedTx): RecursiveProof<1963>;
|
|
26
26
|
export declare function getPublicChonkVerifierPrivateInputsFromTx(tx: Tx | ProcessedTx, proverId: Fr): PublicChonkVerifierPrivateInputs;
|
|
27
27
|
export declare const buildBlobHints: (blobFields: Fr[]) => {
|
|
28
|
-
blobCommitments: import("
|
|
28
|
+
blobCommitments: import("../../../foundation/dest/curves/bls12/point.js").BLS12Point[];
|
|
29
29
|
blobs: import("@aztec/blob-lib").Blob[];
|
|
30
30
|
blobsHash: Fr;
|
|
31
31
|
};
|
|
@@ -59,4 +59,4 @@ export declare function validatePartialState(partialState: PartialStateReference
|
|
|
59
59
|
export declare function validateTx(tx: ProcessedTx): void;
|
|
60
60
|
export declare function toProofData<T extends Bufferable, PROOF_LENGTH extends number>({ inputs, proof, verificationKey }: PublicInputsAndRecursiveProof<T, PROOF_LENGTH>, vkIndex?: number): ProofData<T, PROOF_LENGTH>;
|
|
61
61
|
export {};
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stYnVpbGRpbmctaGVscGVycy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29yY2hlc3RyYXRvci9ibG9jay1idWlsZGluZy1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsVUFBVSxFQUtYLE1BQU0saUJBQWlCLENBQUM7QUFpQnpCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxVQUFVLEVBQWdDLE1BQU0sNkJBQTZCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJNUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFaEgsT0FBTyxFQUFTLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsZ0NBQWdDLEVBRWpDLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixZQUFZLEVBSWIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsV0FBVyxFQUNYLGVBQWUsRUFDZixxQkFBcUIsRUFDckIsS0FBSyxXQUFXLEVBQ2hCLGNBQWMsRUFDZCxFQUFFLEVBQ0gsTUFBTSxrQkFBa0IsQ0FBQztBQUcxQixPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5FOztHQUVHO0FBQ0gsS0FBSyxhQUFhLEdBQUcsY0FBYyxHQUFHLGNBQWMsR0FBRyxlQUFlLEdBQUcsZ0JBQWdCLENBQUM7QUFDMUY7O0dBRUc7QUFDSCxNQUFNLE1BQU0sU0FBUyxHQUFHLGFBQWEsR0FBRyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7QUFHeEUsZUFBTyxNQUFNLHdDQUF3QyxtUEEwSHBELENBQUM7QUFFRixlQUFPLE1BQU0saUJBQWlCOzs7RUFvQzdCLENBQUM7QUFFRix3QkFBZ0IsbUJBQW1CLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLHdCQVF2RDtBQUVELHdCQUFnQix5Q0FBeUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxvQ0FPM0Y7QUFLRCxlQUFPLE1BQU0sY0FBYzs7OztDQUsxQixDQUFDO0FBRUYsZUFBTyxNQUFNLHdCQUF3QixxR0FFcEMsQ0FBQztBQUVGLGVBQU8sTUFBTSxlQUFlLHFHQU8zQixDQUFDO0FBRUYsZUFBTyxNQUFNLDZCQUE2QiwwRUEyQnpDLENBQUM7QUFFRixlQUFPLE1BQU0seUJBQXlCOzs7O0VBMERyQyxDQUFDO0FBRUYsd0JBQXNCLGtCQUFrQixDQUFDLEdBQUcsU0FBUyxZQUFZLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsd0JBQXdCOzs7Ozs7U0FJM0c7QUFFRCx3QkFBc0Isc0JBQXNCLENBQUMsR0FBRyxTQUFTLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSx3QkFBd0I7Ozs7OztTQUkvRztBQUVELHdCQUFzQixlQUFlLENBQUMsRUFBRSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsd0JBQXdCLEdBQUcsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBR3JIO0FBRUQsd0JBQWdCLDBCQUEwQixDQUFDLENBQUMsU0FBUyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsd0JBTXJFO0FBRUQsd0JBQXNCLHFCQUFxQixDQUN6QyxNQUFNLEVBQUUsWUFBWSxFQUNwQixhQUFhLEVBQUUsTUFBTSxFQUNyQixFQUFFLEVBQUUsd0JBQXdCLEdBQzNCLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQU1mO0FBR0Qsd0JBQXNCLHVCQUF1QixDQUFDLENBQUMsU0FBUyxNQUFNLEVBQzVELEtBQUssRUFBRSxFQUFFLEVBQ1QsTUFBTSxFQUFFLFlBQVksRUFDcEIsTUFBTSxFQUFFLENBQUMsRUFDVCxFQUFFLEVBQUUsd0JBQXdCLEdBQzNCLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQVkvQjtBQUVELHdCQUFnQixvQkFBb0IsQ0FDbEMsWUFBWSxFQUFFLHFCQUFxQixFQUNuQyxhQUFhLEVBQUUsR0FBRyxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQyxRQVN6RDtBQXFCRCx3QkFBZ0IsVUFBVSxDQUFDLEVBQUUsRUFBRSxXQUFXLFFBY3pDO0FBRUQsd0JBQWdCLFdBQVcsQ0FBQyxDQUFDLFNBQVMsVUFBVSxFQUFFLFlBQVksU0FBUyxNQUFNLEVBQzNFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsRUFBRSw2QkFBNkIsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLEVBQ2xGLE9BQU8sQ0FBQyxFQUFFLE1BQU0sOEJBS2pCIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-building-helpers.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-building-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,UAAU,EAKX,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"block-building-helpers.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-building-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { BatchedBlobAccumulator, computeBlobsHashFromBlobs, encodeBlockBlobData, getBlobCommitmentsFromBlobs, getBlobsPerL1Block } from '@aztec/blob-lib';
|
|
2
2
|
import { ARCHIVE_HEIGHT, CHONK_PROOF_LENGTH, MAX_CONTRACT_CLASS_LOGS_PER_TX, MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX, NOTE_HASH_SUBTREE_HEIGHT, NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, NULLIFIER_SUBTREE_HEIGHT, NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, NULLIFIER_TREE_HEIGHT, PUBLIC_DATA_TREE_HEIGHT } from '@aztec/constants';
|
|
3
3
|
import { makeTuple } from '@aztec/foundation/array';
|
|
4
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
5
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
5
|
-
import { Fr } from '@aztec/foundation/
|
|
6
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
6
7
|
import { assertLength, toFriendlyJSON } from '@aztec/foundation/serialize';
|
|
7
8
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
8
9
|
import { getVkData } from '@aztec/noir-protocol-circuits-types/server/vks';
|
|
@@ -137,7 +138,7 @@ export const buildHeaderFromCircuitOutputs = runInSpan('BlockBuilderHelpers', 'b
|
|
|
137
138
|
const globalVariables = GlobalVariables.from({
|
|
138
139
|
chainId: constants.chainId,
|
|
139
140
|
version: constants.version,
|
|
140
|
-
blockNumber: blockRootRollupOutput.previousArchive.nextAvailableLeafIndex,
|
|
141
|
+
blockNumber: BlockNumber(blockRootRollupOutput.previousArchive.nextAvailableLeafIndex),
|
|
141
142
|
timestamp: blockRootRollupOutput.endTimestamp,
|
|
142
143
|
slotNumber: constants.slotNumber,
|
|
143
144
|
coinbase: constants.coinbase,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type BlockBlobData, type BlockEndBlobData, type SpongeBlob } from '@aztec/blob-lib';
|
|
2
2
|
import { type ARCHIVE_HEIGHT, type L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, type NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH } from '@aztec/constants';
|
|
3
|
-
import {
|
|
3
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
5
|
import { type Tuple } from '@aztec/foundation/serialize';
|
|
5
6
|
import { type TreeNodeLocation } from '@aztec/foundation/trees';
|
|
6
7
|
import type { PublicInputsAndRecursiveProof } from '@aztec/stdlib/interfaces/server';
|
|
@@ -22,7 +23,7 @@ export type ProofState<T, PROOF_LENGTH extends number> = {
|
|
|
22
23
|
export declare class BlockProvingState {
|
|
23
24
|
#private;
|
|
24
25
|
readonly index: number;
|
|
25
|
-
readonly blockNumber:
|
|
26
|
+
readonly blockNumber: BlockNumber;
|
|
26
27
|
readonly totalNumTxs: number;
|
|
27
28
|
private readonly constants;
|
|
28
29
|
private readonly timestamp;
|
|
@@ -44,7 +45,7 @@ export declare class BlockProvingState {
|
|
|
44
45
|
private txs;
|
|
45
46
|
private isFirstBlock;
|
|
46
47
|
private error;
|
|
47
|
-
constructor(index: number, blockNumber:
|
|
48
|
+
constructor(index: number, blockNumber: BlockNumber, totalNumTxs: number, constants: CheckpointConstantData, timestamp: UInt64, lastArchiveTreeSnapshot: AppendOnlyTreeSnapshot, lastArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, lastL1ToL2MessageTreeSnapshot: AppendOnlyTreeSnapshot, lastL1ToL2MessageSubtreeRootSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH>, newL1ToL2MessageTreeSnapshot: AppendOnlyTreeSnapshot, headerOfLastBlockInPreviousCheckpoint: BlockHeader, startSpongeBlob: SpongeBlob, parentCheckpoint: CheckpointProvingState);
|
|
48
49
|
get epochNumber(): number;
|
|
49
50
|
addNewTx(tx: TxProvingState): number;
|
|
50
51
|
isAcceptingTxs(): boolean;
|
|
@@ -94,4 +95,4 @@ export declare class BlockProvingState {
|
|
|
94
95
|
getError(): string | undefined;
|
|
95
96
|
reject(reason: string): void;
|
|
96
97
|
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stcHJvdmluZy1zdGF0ZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29yY2hlc3RyYXRvci9ibG9jay1wcm92aW5nLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBRSxLQUFLLGdCQUFnQixFQUFFLEtBQUssVUFBVSxFQUEwQixNQUFNLGlCQUFpQixDQUFDO0FBQ3JILE9BQU8sRUFDTCxLQUFLLGNBQWMsRUFDbkIsS0FBSyw2Q0FBNkMsRUFFbEQsS0FBSyx5Q0FBeUMsRUFFL0MsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxLQUFLLEtBQUssRUFBZ0IsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBdUIsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRixPQUFPLEtBQUssRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEYsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix3Q0FBd0MsRUFFeEMsNEJBQTRCLEVBRTVCLG9DQUFvQyxFQUNwQyxzQkFBc0IsRUFDdEIsMEJBQTBCLEVBQzFCLEtBQUssb0JBQW9CLEVBQzFCLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBbUIsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEYsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHbEQsT0FBTyxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCxNQUFNLE1BQU0sVUFBVSxDQUFDLENBQUMsRUFBRSxZQUFZLFNBQVMsTUFBTSxJQUFJO0lBQ3ZELGFBQWEsQ0FBQyxFQUFFLDZCQUE2QixDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMvRCxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDckIsQ0FBQztBQUVGOzs7R0FHRztBQUNILHFCQUFhLGlCQUFpQjs7YUFvQlYsS0FBSyxFQUFFLE1BQU07YUFDYixXQUFXLEVBQUUsV0FBVzthQUN4QixXQUFXLEVBQUUsTUFBTTtJQUNuQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVM7SUFDMUIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTO2FBQ1YsdUJBQXVCLEVBQUUsc0JBQXNCO0lBQy9ELE9BQU8sQ0FBQyxRQUFRLENBQUMsc0JBQXNCO0lBQ3ZDLE9BQU8sQ0FBQyxRQUFRLENBQUMsNkJBQTZCO0lBQzlDLE9BQU8sQ0FBQyxRQUFRLENBQUMsdUNBQXVDO2FBSXhDLDRCQUE0QixFQUFFLHNCQUFzQjtJQUNwRSxPQUFPLENBQUMsUUFBUSxDQUFDLHFDQUFxQztJQUN0RCxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWU7SUFDekIsZ0JBQWdCLEVBQUUsc0JBQXNCO0lBbENqRCxPQUFPLENBQUMsaUJBQWlCLENBRU07SUFDL0IsT0FBTyxDQUFDLGdCQUFnQixDQUdDO0lBQ3pCLE9BQU8sQ0FBQyxlQUFlLENBQW1GO0lBQzFHLE9BQU8sQ0FBQyxjQUFjLENBRVI7SUFDZCxPQUFPLENBQUMsZ0JBQWdCLENBQTBCO0lBQ2xELE9BQU8sQ0FBQyxRQUFRLENBQTZCO0lBQzdDLE9BQU8sQ0FBQyxhQUFhLENBQXlCO0lBQzlDLE9BQU8sQ0FBQyxHQUFHLENBQXdCO0lBQ25DLE9BQU8sQ0FBQyxZQUFZLENBQVU7SUFDOUIsT0FBTyxDQUFDLEtBQUssQ0FBcUI7SUFFbEMsWUFDa0IsS0FBSyxFQUFFLE1BQU0sRUFDYixXQUFXLEVBQUUsV0FBVyxFQUN4QixXQUFXLEVBQUUsTUFBTSxFQUNsQixTQUFTLEVBQUUsc0JBQXNCLEVBQ2pDLFNBQVMsRUFBRSxNQUFNLEVBQ2xCLHVCQUF1QixFQUFFLHNCQUFzQixFQUM5QyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLE9BQU8sY0FBYyxDQUFDLEVBQ3hELDZCQUE2QixFQUFFLHNCQUFzQixFQUNyRCx1Q0FBdUMsRUFBRSxLQUFLLENBQzdELEVBQUUsRUFDRixPQUFPLDZDQUE2QyxDQUNyRCxFQUNlLDRCQUE0QixFQUFFLHNCQUFzQixFQUNuRCxxQ0FBcUMsRUFBRSxXQUFXLEVBQ2xELGVBQWUsRUFBRSxVQUFVLEVBQ3JDLGdCQUFnQixFQUFFLHNCQUFzQixFQVFoRDtJQUVELElBQVcsV0FBVyxJQUFJLE1BQU0sQ0FFL0I7SUFHTSxRQUFRLENBQUMsRUFBRSxFQUFFLGNBQWMsVUFPakM7SUFFTSxjQUFjLFlBRXBCO0lBRU0sZUFBZSw2Q0FFckI7SUFFTSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxXQU96QztJQUVNLGtCQUFrQixDQUN2QixPQUFPLEVBQUUsTUFBTSxFQUNmLGFBQWEsRUFBRSw2QkFBNkIsQ0FDMUMsb0JBQW9CLEVBQ3BCLE9BQU8seUNBQXlDLENBQ2pELEdBQ0EsZ0JBQWdCLENBRWxCO0lBRU0sb0JBQW9CLENBQUMsUUFBUSxFQUFFLGdCQUFnQixXQU9yRDtJQUVNLG1CQUFtQixDQUN4QixRQUFRLEVBQUUsZ0JBQWdCLEVBQzFCLGFBQWEsRUFBRSw2QkFBNkIsQ0FDMUMsb0JBQW9CLEVBQ3BCLE9BQU8seUNBQXlDLENBQ2pELFFBR0Y7SUFFTSx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxXQU83QztJQUdNLGtCQUFrQixDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLDZCQUE2QixDQUFDLGtCQUFrQixDQUFDLFFBT3hHO0lBRU0seUJBQXlCLFlBTy9CO0lBRU0sa0JBQWtCLENBQUMsYUFBYSxFQUFFLDZCQUE2QixDQUFDLGtCQUFrQixDQUFDLFFBRXpGO0lBRU0sd0JBQXdCLFlBTzlCO0lBRU0sdUJBQXVCLENBQzVCLGFBQWEsRUFBRSw2QkFBNkIsQ0FDMUMsdUJBQXVCLEVBQ3ZCLE9BQU8seUNBQXlDLENBQ2pELEdBQ0EsZ0JBQWdCLENBR2xCO0lBRU0sd0JBQXdCLHdDQUU5QjtJQUVZLGdCQUFnQix5QkF3QjVCO0lBRU0sbUJBQW1CLDRCQUV6QjtJQUVNLGtCQUFrQixlQUV4QjtJQUVNLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLFFBRWhEO0lBRU0sZ0JBQWdCLDJCQUV0QjtJQUVNLFdBQVcsQ0FBQyxRQUFRLEVBQUUsY0FBYyxRQUUxQztJQUVNLFdBQVcsWUFFakI7SUFFTSxxQkFBcUIsSUFBSSxFQUFFLEVBQUUsQ0FFbkM7SUFFRCxtQkFBbUIsSUFBSSxnQkFBZ0IsQ0F5QnRDO0lBRU0sZ0JBQWdCLElBQUksYUFBYSxDQUt2QztJQUVNLFlBQVksMENBRWxCO0lBRU0saUJBQWlCLENBQUMsUUFBUSxFQUFFLGdCQUFnQixvQkFFbEQ7SUFFTSxvQkFBb0IsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLDhCQU8xRDtJQUVNLCtCQUErQjs7Ozs7Ozs7O01Bd0JyQztJQThDTSxtQkFBbUIsNEJBUXpCO0lBR00saUJBQWlCLENBQUMsT0FBTyxFQUFFLE1BQU0sa0JBRXZDO0lBRVksNkJBQTZCLHlCQU16QztJQUVNLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsV0FFdEQ7SUFHTSx5QkFBeUIsWUFHL0I7SUFHTSxvQkFBb0IsWUFFMUI7SUFFTSxVQUFVLFlBRWhCO0lBRU0sV0FBVyxZQUVqQjtJQUVNLFFBQVEsdUJBRWQ7SUFFTSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sUUFHM0I7Q0F3Q0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,KAAK,UAAU,EAA0B,MAAM,iBAAiB,CAAC;AACrH,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,6CAA6C,EAElD,KAAK,yCAAyC,EAE/C,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"block-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-proving-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { encodeBlockEndBlobData } from '@aztec/blob-lib';
|
|
2
2
|
import { NUM_BASE_PARITY_PER_ROOT_PARITY } from '@aztec/constants';
|
|
3
|
-
import { Fr } from '@aztec/foundation/
|
|
3
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
4
|
import { assertLength } from '@aztec/foundation/serialize';
|
|
5
5
|
import { UnbalancedTreeStore } from '@aztec/foundation/trees';
|
|
6
6
|
import { ParityRootPrivateInputs } from '@aztec/stdlib/parity';
|