@aztec/stdlib 1.0.0-nightly.20250607 → 1.0.0-nightly.20250610
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/l2_block.js +1 -1
- package/dest/hash/hash.d.ts +8 -2
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +8 -16
- package/dest/interfaces/epoch-prover.d.ts +3 -1
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/proving-job.d.ts +1 -1
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/service.d.ts +1 -1
- package/dest/interfaces/service.d.ts.map +1 -1
- package/dest/kernel/index.d.ts +0 -1
- package/dest/kernel/index.d.ts.map +1 -1
- package/dest/kernel/index.js +0 -1
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +9 -3
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +3 -3
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/base_or_merge_rollup_public_inputs.js +3 -3
- package/dest/rollup/base_rollup_hints.d.ts +15 -14
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.js +13 -12
- package/dest/rollup/block_constant_data.d.ts +37 -0
- package/dest/rollup/block_constant_data.d.ts.map +1 -0
- package/dest/rollup/{constant_rollup_data.js → block_constant_data.js} +10 -13
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +12 -27
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.js +8 -15
- package/dest/rollup/block_root_rollup.d.ts +24 -9
- package/dest/rollup/block_root_rollup.d.ts.map +1 -1
- package/dest/rollup/block_root_rollup.js +15 -7
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts +4 -4
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +1 -1
- package/dest/rollup/empty_block_root_rollup_inputs.js +2 -2
- package/dest/rollup/epoch_constant_data.d.ts +39 -0
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -0
- package/dest/rollup/epoch_constant_data.js +40 -0
- package/dest/rollup/index.d.ts +2 -1
- package/dest/rollup/index.d.ts.map +1 -1
- package/dest/rollup/index.js +2 -1
- package/dest/rollup/root_rollup.d.ts +7 -11
- package/dest/rollup/root_rollup.d.ts.map +1 -1
- package/dest/rollup/root_rollup.js +7 -10
- package/dest/snapshots/types.d.ts +4 -4
- package/dest/tests/factories.d.ts +1 -10
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +23 -36
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +3 -3
- package/dest/trees/append_only_tree_snapshot.d.ts +6 -2
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +17 -2
- package/dest/tx/block_header.js +3 -3
- package/dest/tx/content_commitment.d.ts +3 -0
- package/dest/tx/content_commitment.d.ts.map +1 -1
- package/dest/tx/content_commitment.js +12 -1
- package/dest/tx/global_variables.js +1 -1
- package/dest/tx/index.d.ts +1 -0
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +1 -0
- package/dest/tx/offchain_message.d.ts +15 -0
- package/dest/tx/offchain_message.d.ts.map +1 -0
- package/dest/tx/offchain_message.js +4 -0
- package/dest/tx/partial_state_reference.d.ts +8 -0
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +19 -2
- package/dest/tx/private_execution_result.d.ts +18 -0
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +32 -2
- package/dest/tx/processed_tx.d.ts +2 -3
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +18 -8
- package/dest/tx/proposed_block_header.d.ts +3 -0
- package/dest/tx/proposed_block_header.d.ts.map +1 -1
- package/dest/tx/proposed_block_header.js +19 -1
- package/dest/tx/proven_tx.d.ts +2 -0
- package/dest/tx/proven_tx.d.ts.map +1 -1
- package/dest/tx/proven_tx.js +4 -1
- package/dest/tx/public_simulation_output.d.ts +3 -3
- package/dest/tx/public_simulation_output.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.js +7 -7
- package/dest/tx/state_reference.d.ts +4 -0
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +20 -3
- package/dest/tx/tree_snapshots.js +3 -3
- package/dest/tx/tx.d.ts +1 -1
- package/dest/tx/tx.js +1 -1
- package/dest/tx/tx_hash.d.ts +1 -0
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_hash.js +1 -0
- package/package.json +7 -7
- package/src/block/l2_block.ts +1 -1
- package/src/hash/hash.ts +16 -19
- package/src/interfaces/epoch-prover.ts +8 -2
- package/src/interfaces/service.ts +1 -1
- package/src/kernel/index.ts +0 -1
- package/src/p2p/consensus_payload.ts +13 -3
- package/src/rollup/base_or_merge_rollup_public_inputs.ts +4 -4
- package/src/rollup/base_rollup_hints.ts +12 -11
- package/src/rollup/block_constant_data.ts +63 -0
- package/src/rollup/block_root_or_block_merge_public_inputs.ts +10 -21
- package/src/rollup/block_root_rollup.ts +17 -5
- package/src/rollup/empty_block_root_rollup_inputs.ts +3 -3
- package/src/rollup/epoch_constant_data.ts +44 -0
- package/src/rollup/index.ts +2 -1
- package/src/rollup/root_rollup.ts +10 -12
- package/src/tests/factories.ts +36 -58
- package/src/tests/mocks.ts +3 -2
- package/src/trees/append_only_tree_snapshot.ts +18 -2
- package/src/tx/block_header.ts +3 -3
- package/src/tx/content_commitment.ts +19 -1
- package/src/tx/global_variables.ts +1 -1
- package/src/tx/index.ts +1 -0
- package/src/tx/offchain_message.ts +16 -0
- package/src/tx/partial_state_reference.ts +29 -4
- package/src/tx/private_execution_result.ts +30 -0
- package/src/tx/processed_tx.ts +26 -13
- package/src/tx/proposed_block_header.ts +31 -1
- package/src/tx/proven_tx.ts +10 -1
- package/src/tx/public_simulation_output.ts +5 -5
- package/src/tx/state_reference.ts +22 -3
- package/src/tx/tree_snapshots.ts +9 -9
- package/src/tx/tx.ts +1 -1
- package/src/tx/tx_hash.ts +1 -0
- package/dest/kernel/combined_constant_data.d.ts +0 -71
- package/dest/kernel/combined_constant_data.d.ts.map +0 -1
- package/dest/kernel/combined_constant_data.js +0 -73
- package/dest/rollup/constant_rollup_data.d.ts +0 -45
- package/dest/rollup/constant_rollup_data.d.ts.map +0 -1
- package/src/kernel/combined_constant_data.ts +0 -128
- package/src/rollup/constant_rollup_data.ts +0 -54
package/dest/block/l2_block.js
CHANGED
|
@@ -70,7 +70,7 @@ import { makeAppendOnlyTreeSnapshot, makeHeader } from './l2_block_code_to_purge
|
|
|
70
70
|
* Creates an L2 block containing empty data.
|
|
71
71
|
* @returns The L2 block.
|
|
72
72
|
*/ static empty() {
|
|
73
|
-
return new L2Block(AppendOnlyTreeSnapshot.
|
|
73
|
+
return new L2Block(AppendOnlyTreeSnapshot.empty(), BlockHeader.empty(), Body.empty());
|
|
74
74
|
}
|
|
75
75
|
get number() {
|
|
76
76
|
return this.header.getBlockNumber();
|
package/dest/hash/hash.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
1
2
|
import { Fr } from '@aztec/foundation/fields';
|
|
2
3
|
import type { AztecAddress } from '../aztec-address/index.js';
|
|
3
|
-
import type { ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
|
|
4
4
|
/**
|
|
5
5
|
* Computes a hash of a given verification key.
|
|
6
6
|
* @param vkBuf - The verification key as fields.
|
|
@@ -77,5 +77,11 @@ export declare function computeL1ToL2MessageNullifier(contract: AztecAddress, me
|
|
|
77
77
|
* Calculates a siloed hash of a scoped l2 to l1 message.
|
|
78
78
|
* @returns Fr containing 248 bits of information of sha256 hash.
|
|
79
79
|
*/
|
|
80
|
-
export declare function
|
|
80
|
+
export declare function computeL2ToL1MessageHash({ l2Sender, l1Recipient, content, rollupVersion, chainId, }: {
|
|
81
|
+
l2Sender: AztecAddress;
|
|
82
|
+
l1Recipient: EthAddress;
|
|
83
|
+
content: Fr;
|
|
84
|
+
rollupVersion: Fr;
|
|
85
|
+
chainId: Fr;
|
|
86
|
+
}): Fr;
|
|
81
87
|
//# sourceMappingURL=hash.d.ts.map
|
package/dest/hash/hash.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzD;AAED,wBAAsB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,eAMtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,aAAa,EAAE,EAAE,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC;CACb,MAEA"}
|
package/dest/hash/hash.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { GeneratorIndex } from '@aztec/constants';
|
|
2
|
-
import { poseidon2Hash, poseidon2HashWithSeparator,
|
|
2
|
+
import { poseidon2Hash, poseidon2HashWithSeparator, sha256ToField } from '@aztec/foundation/crypto';
|
|
3
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
4
|
/**
|
|
5
5
|
* Computes a hash of a given verification key.
|
|
@@ -115,20 +115,12 @@ export async function computeL1ToL2MessageNullifier(contract, messageHash, secre
|
|
|
115
115
|
/**
|
|
116
116
|
* Calculates a siloed hash of a scoped l2 to l1 message.
|
|
117
117
|
* @returns Fr containing 248 bits of information of sha256 hash.
|
|
118
|
-
*/ export function
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
l2ToL1Message.message.recipient.toBuffer().copy(paddedRecipient, 12);
|
|
126
|
-
const preimage = Buffer.concat([
|
|
127
|
-
l2ToL1Message.contractAddress.toBuffer(),
|
|
128
|
-
version.toBuffer(),
|
|
129
|
-
paddedRecipient,
|
|
130
|
-
chainId.toBuffer(),
|
|
131
|
-
l2ToL1Message.message.content.toBuffer()
|
|
118
|
+
*/ export function computeL2ToL1MessageHash({ l2Sender, l1Recipient, content, rollupVersion, chainId }) {
|
|
119
|
+
return sha256ToField([
|
|
120
|
+
l2Sender,
|
|
121
|
+
rollupVersion,
|
|
122
|
+
l1Recipient,
|
|
123
|
+
chainId,
|
|
124
|
+
content
|
|
132
125
|
]);
|
|
133
|
-
return Fr.fromBuffer(sha256Trunc(preimage));
|
|
134
126
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BatchedBlob, FinalBlobBatchingChallenges } from '@aztec/blob-lib';
|
|
1
2
|
import type { Fr } from '@aztec/foundation/fields';
|
|
2
3
|
import type { L2Block } from '../block/l2_block.js';
|
|
3
4
|
import type { Proof } from '../proofs/proof.js';
|
|
@@ -13,7 +14,7 @@ export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted'> {
|
|
|
13
14
|
* @param firstBlockNumber - The block number of the first block in the epoch.
|
|
14
15
|
* @param totalNumBlocks - The total number of blocks expected in the epoch (must be at least one).
|
|
15
16
|
**/
|
|
16
|
-
startNewEpoch(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number): void;
|
|
17
|
+
startNewEpoch(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number, finalBlobBatchingChallenges: FinalBlobBatchingChallenges): void;
|
|
17
18
|
/**
|
|
18
19
|
* Kickstarts tube circuits for the specified txs. These will be used during epoch proving.
|
|
19
20
|
* Note that if the tube circuits are not started this way, they will be started nontheless after processing.
|
|
@@ -25,6 +26,7 @@ export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted'> {
|
|
|
25
26
|
finaliseEpoch(): Promise<{
|
|
26
27
|
publicInputs: RootRollupPublicInputs;
|
|
27
28
|
proof: Proof;
|
|
29
|
+
batchedBlobInputs: BatchedBlob;
|
|
28
30
|
}>;
|
|
29
31
|
/** Cancels all proving jobs. */
|
|
30
32
|
cancel(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epoch-prover.d.ts","sourceRoot":"","sources":["../../src/interfaces/epoch-prover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,kDAAkD;AAClD,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC3E;;;;;QAKI;IACJ,aAAa,
|
|
1
|
+
{"version":3,"file":"epoch-prover.d.ts","sourceRoot":"","sources":["../../src/interfaces/epoch-prover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,kDAAkD;AAClD,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC3E;;;;;QAKI;IACJ,aAAa,CACX,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,EACtB,2BAA2B,EAAE,2BAA2B,GACvD,IAAI,CAAC;IAER;;;OAGG;IACH,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C,yBAAyB;IACzB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5F,6GAA6G;IAC7G,aAAa,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,sBAAsB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,iBAAiB,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC;IAEjH,gCAAgC;IAChC,MAAM,IAAI,IAAI,CAAC;IAEf,+DAA+D;IAC/D,WAAW,IAAI,EAAE,CAAC;IAElB,kFAAkF;IAClF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAEjC,mEAAmE;IACnE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
|
|
@@ -5797,7 +5797,7 @@ export declare const ProvingJobInputs: z.ZodDiscriminatedUnion<"type", [z.ZodObj
|
|
|
5797
5797
|
type: ProvingRequestType.TUBE_PROOF;
|
|
5798
5798
|
inputs: string;
|
|
5799
5799
|
}>]>;
|
|
5800
|
-
export declare function getProvingJobInputClassFor(type: ProvingRequestType): typeof AvmCircuitInputs | typeof BaseParityInputs | typeof RootParityInputs | typeof BlockMergeRollupInputs | typeof BlockRootRollupInputs | typeof SingleTxBlockRootRollupInputs | typeof EmptyBlockRootRollupInputs | typeof MergeRollupInputs | typeof PrivateBaseRollupInputs | typeof PublicBaseRollupInputs | typeof
|
|
5800
|
+
export declare function getProvingJobInputClassFor(type: ProvingRequestType): typeof AvmCircuitInputs | typeof BaseParityInputs | typeof RootParityInputs | typeof BlockMergeRollupInputs | typeof BlockRootRollupInputs | typeof SingleTxBlockRootRollupInputs | typeof EmptyBlockRootRollupInputs | typeof MergeRollupInputs | typeof PrivateBaseRollupInputs | typeof PublicBaseRollupInputs | typeof TubeInputs;
|
|
5801
5801
|
export type ProvingJobInputs = z.infer<typeof ProvingJobInputs>;
|
|
5802
5802
|
export type ProvingJobInputsMap = {
|
|
5803
5803
|
[ProvingRequestType.PUBLIC_VM]: AvmCircuitInputs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proving-job.d.ts","sourceRoot":"","sources":["../../src/interfaces/proving-job.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oCAAoC,EACpC,6BAA6B,EAC7B,yCAAyC,EACzC,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAC;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AACtG,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,MAAM,IAAI;IACtD,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,eAAe,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAWF,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,MAAM,EAC1D,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EACxB,eAAe,EAAE,mBAAmB,GACnC,uBAAuB,CAAC,CAAC,CAAC,CAE5B;AAED,MAAM,MAAM,6BAA6B,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,OAAO,6BAA6B,IAAI;IACtG,MAAM,EAAE,CAAC,CAAC;IACV,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,eAAe,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAaF,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,OAAO,6BAA6B,EAC1G,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EACxB,eAAe,EAAE,mBAAmB,GACnC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAErC;AAED,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,CA+B9F;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
|
1
|
+
{"version":3,"file":"proving-job.d.ts","sourceRoot":"","sources":["../../src/interfaces/proving-job.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
|
@@ -12,5 +12,5 @@ export interface Service {
|
|
|
12
12
|
resume(): void;
|
|
13
13
|
}
|
|
14
14
|
/** Tries to call stop on a given object and awaits it. Logs any errors and does not rethrow. */
|
|
15
|
-
export declare function tryStop(service?:
|
|
15
|
+
export declare function tryStop(service?: any, logger?: Logger): Promise<void>;
|
|
16
16
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/interfaces/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,kEAAkE;AAClE,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,yBAAyB;IACzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,+CAA+C;IAC/C,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,gGAAgG;AAChG,wBAAsB,OAAO,CAAC,OAAO,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/interfaces/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,kEAAkE;AAClE,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,yBAAyB;IACzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,+CAA+C;IAC/C,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,gGAAgG;AAChG,wBAAsB,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E"}
|
package/dest/kernel/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kernel/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAC;AACxD,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kernel/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAC;AACxD,cAAc,qDAAqD,CAAC;AACpE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0BAA0B,CAAC;AACzC,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,sCAAsC,CAAC;AACrD,cAAc,iDAAiD,CAAC;AAChE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sCAAsC,CAAC;AACrD,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,qDAAqD,CAAC;AACpE,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,oCAAoC,CAAC;AACnD,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC"}
|
package/dest/kernel/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consensus_payload.d.ts","sourceRoot":"","sources":["../../src/p2p/consensus_payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAE/E,qBAAa,gBAAiB,YAAW,QAAQ;IAI7C,6DAA6D;aAC7C,MAAM,EAAE,mBAAmB;IAC3C,gDAAgD;aAChC,OAAO,EAAE,EAAE;IAC3B,mDAAmD;aACnC,cAAc,EAAE,cAAc;IAC9C,gDAAgD;aAChC,QAAQ,EAAE,MAAM,EAAE;IAVpC,OAAO,CAAC,IAAI,CAAqB;;IAG/B,6DAA6D;IAC7C,MAAM,EAAE,mBAAmB;IAC3C,gDAAgD;IAChC,OAAO,EAAE,EAAE;IAC3B,mDAAmD;IACnC,cAAc,EAAE,cAAc;IAC9C,gDAAgD;IAChC,QAAQ,EAAE,MAAM,EAAE;IAGpC,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC;IAInD,gBAAgB,CAAC,eAAe,EAAE,wBAAwB,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"consensus_payload.d.ts","sourceRoot":"","sources":["../../src/p2p/consensus_payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAE/E,qBAAa,gBAAiB,YAAW,QAAQ;IAI7C,6DAA6D;aAC7C,MAAM,EAAE,mBAAmB;IAC3C,gDAAgD;aAChC,OAAO,EAAE,EAAE;IAC3B,mDAAmD;aACnC,cAAc,EAAE,cAAc;IAC9C,gDAAgD;aAChC,QAAQ,EAAE,MAAM,EAAE;IAVpC,OAAO,CAAC,IAAI,CAAqB;;IAG/B,6DAA6D;IAC7C,MAAM,EAAE,mBAAmB;IAC3C,gDAAgD;IAChC,OAAO,EAAE,EAAE;IAC3B,mDAAmD;IACnC,cAAc,EAAE,cAAc;IAC9C,gDAAgD;IAChC,QAAQ,EAAE,MAAM,EAAE;IAGpC,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC;IAInD,gBAAgB,CAAC,eAAe,EAAE,wBAAwB,GAAG,MAAM;IAwBnE,QAAQ,IAAI,MAAM;IAYlB,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB;IAU/D,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,gBAAgB;IAIvE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB;IASlD,MAAM,CAAC,KAAK,IAAI,gBAAgB;IAIhC;;;OAGG;IACH,OAAO,IAAI,MAAM;IASjB,QAAQ;CAKT"}
|
|
@@ -2,7 +2,7 @@ import { Fr } from '@aztec/foundation/fields';
|
|
|
2
2
|
import { schemas } from '@aztec/foundation/schemas';
|
|
3
3
|
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
4
|
import { hexToBuffer } from '@aztec/foundation/string';
|
|
5
|
-
import { encodeAbiParameters, parseAbiParameters
|
|
5
|
+
import { encodeAbiParameters, parseAbiParameters } from 'viem';
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
import { ProposedBlockHeader, StateReference, TxHash } from '../tx/index.js';
|
|
8
8
|
export class ConsensusPayload {
|
|
@@ -34,9 +34,15 @@ export class ConsensusPayload {
|
|
|
34
34
|
];
|
|
35
35
|
}
|
|
36
36
|
getPayloadToSign(domainSeparator) {
|
|
37
|
-
const abi = parseAbiParameters('uint8,
|
|
37
|
+
const abi = parseAbiParameters('uint8, ' + //domainSeperator
|
|
38
|
+
'(' + 'bytes32, ' + // archive
|
|
39
|
+
'((bytes32,uint32),((bytes32,uint32),(bytes32,uint32),(bytes32,uint32))), ' + // stateReference
|
|
40
|
+
'(int256), ' + // oracleInput
|
|
41
|
+
'bytes32, ' + // headerHash
|
|
42
|
+
'bytes32[]' + // txHashes
|
|
43
|
+
')');
|
|
38
44
|
const archiveRoot = this.archive.toString();
|
|
39
|
-
const stateReference =
|
|
45
|
+
const stateReference = this.stateReference.toAbi();
|
|
40
46
|
const headerHash = this.header.hash().toString();
|
|
41
47
|
const txArray = this.txHashes.map((tx)=>tx.toString());
|
|
42
48
|
const encodedData = encodeAbiParameters(abi, [
|
|
@@ -3,7 +3,7 @@ import { Fr } from '@aztec/foundation/fields';
|
|
|
3
3
|
import { BufferReader } from '@aztec/foundation/serialize';
|
|
4
4
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
5
5
|
import { RollupTypes } from '../types/shared.js';
|
|
6
|
-
import {
|
|
6
|
+
import { BlockConstantData } from './block_constant_data.js';
|
|
7
7
|
/**
|
|
8
8
|
* Output of the base and merge rollup circuits.
|
|
9
9
|
*/
|
|
@@ -19,7 +19,7 @@ export declare class BaseOrMergeRollupPublicInputs {
|
|
|
19
19
|
/**
|
|
20
20
|
* Data which is forwarded through the rollup circuits unchanged.
|
|
21
21
|
*/
|
|
22
|
-
constants:
|
|
22
|
+
constants: BlockConstantData;
|
|
23
23
|
/**
|
|
24
24
|
* Partial state reference at the start of the rollup circuit.
|
|
25
25
|
*/
|
|
@@ -61,7 +61,7 @@ export declare class BaseOrMergeRollupPublicInputs {
|
|
|
61
61
|
/**
|
|
62
62
|
* Data which is forwarded through the rollup circuits unchanged.
|
|
63
63
|
*/
|
|
64
|
-
constants:
|
|
64
|
+
constants: BlockConstantData,
|
|
65
65
|
/**
|
|
66
66
|
* Partial state reference at the start of the rollup circuit.
|
|
67
67
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_or_merge_rollup_public_inputs.d.ts","sourceRoot":"","sources":["../../src/rollup/base_or_merge_rollup_public_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"base_or_merge_rollup_public_inputs.d.ts","sourceRoot":"","sources":["../../src/rollup/base_or_merge_rollup_public_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;GAEG;AACH,qBAAa,6BAA6B;IAEtC;;OAEG;IACI,UAAU,EAAE,WAAW;IAC9B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;;OAEG;IACI,SAAS,EAAE,iBAAiB;IACnC;;OAEG;IACI,KAAK,EAAE,qBAAqB;IACnC;;OAEG;IACI,GAAG,EAAE,qBAAqB;IACjC;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;;OAGG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE;;IAxC9B;;OAEG;IACI,UAAU,EAAE,WAAW;IAC9B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;;OAEG;IACI,SAAS,EAAE,iBAAiB;IACnC;;OAEG;IACI,KAAK,EAAE,qBAAqB;IACnC;;OAEG;IACI,GAAG,EAAE,qBAAqB;IACjC;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;;OAGG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE;IAGhC,iCAAiC;IACjC,MAAM,CAAC,KAAK;IAeZ;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,6BAA6B;IAgB/E;;;OAGG;IACH,QAAQ;IAmBR;;;OAGG;IACH,QAAQ;IAIR;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;IAI7B,8DAA8D;IAC9D,MAAM;IAIN,6CAA6C;IAC7C,MAAM,KAAK,MAAM,sEAEhB;CACF"}
|
|
@@ -5,7 +5,7 @@ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
|
5
5
|
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
6
6
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
7
7
|
import { RollupTypes } from '../types/shared.js';
|
|
8
|
-
import {
|
|
8
|
+
import { BlockConstantData } from './block_constant_data.js';
|
|
9
9
|
/**
|
|
10
10
|
* Output of the base and merge rollup circuits.
|
|
11
11
|
*/ export class BaseOrMergeRollupPublicInputs {
|
|
@@ -53,7 +53,7 @@ import { ConstantRollupData } from './constant_rollup_data.js';
|
|
|
53
53
|
this.accumulatedManaUsed = accumulatedManaUsed;
|
|
54
54
|
}
|
|
55
55
|
/** Returns an empty instance. */ static empty() {
|
|
56
|
-
return new BaseOrMergeRollupPublicInputs(RollupTypes.Base, 0,
|
|
56
|
+
return new BaseOrMergeRollupPublicInputs(RollupTypes.Base, 0, BlockConstantData.empty(), PartialStateReference.empty(), PartialStateReference.empty(), SpongeBlob.empty(), SpongeBlob.empty(), Fr.zero(), Fr.zero(), Fr.zero());
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* Deserializes from a buffer or reader.
|
|
@@ -62,7 +62,7 @@ import { ConstantRollupData } from './constant_rollup_data.js';
|
|
|
62
62
|
* @returns The deserialized public inputs.
|
|
63
63
|
*/ static fromBuffer(buffer) {
|
|
64
64
|
const reader = BufferReader.asReader(buffer);
|
|
65
|
-
return new BaseOrMergeRollupPublicInputs(reader.readNumber(), reader.readNumber(), reader.readObject(
|
|
65
|
+
return new BaseOrMergeRollupPublicInputs(reader.readNumber(), reader.readNumber(), reader.readObject(BlockConstantData), reader.readObject(PartialStateReference), reader.readObject(PartialStateReference), reader.readObject(SpongeBlob), reader.readObject(SpongeBlob), Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
68
|
* Serialize this as a buffer.
|
|
@@ -5,8 +5,9 @@ import { MembershipWitness } from '@aztec/foundation/trees';
|
|
|
5
5
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
6
|
import { PublicDataHint } from '../avm/public_data_hint.js';
|
|
7
7
|
import { ContractClassLogFields } from '../logs/index.js';
|
|
8
|
+
import { AppendOnlyTreeSnapshot } from '../trees/index.js';
|
|
8
9
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
9
|
-
import {
|
|
10
|
+
import { BlockConstantData } from './block_constant_data.js';
|
|
10
11
|
import { PrivateBaseStateDiffHints } from './state_diff_hints.js';
|
|
11
12
|
export type BaseRollupHints = PrivateBaseRollupHints | PublicBaseRollupHints;
|
|
12
13
|
export declare class PrivateBaseRollupHints {
|
|
@@ -37,7 +38,7 @@ export declare class PrivateBaseRollupHints {
|
|
|
37
38
|
/**
|
|
38
39
|
* Data which is not modified by the base rollup circuit.
|
|
39
40
|
*/
|
|
40
|
-
constants:
|
|
41
|
+
constants: BlockConstantData;
|
|
41
42
|
constructor(
|
|
42
43
|
/**
|
|
43
44
|
* Partial state reference at the start of the rollup.
|
|
@@ -66,9 +67,9 @@ export declare class PrivateBaseRollupHints {
|
|
|
66
67
|
/**
|
|
67
68
|
* Data which is not modified by the base rollup circuit.
|
|
68
69
|
*/
|
|
69
|
-
constants:
|
|
70
|
+
constants: BlockConstantData);
|
|
70
71
|
static from(fields: FieldsOf<PrivateBaseRollupHints>): PrivateBaseRollupHints;
|
|
71
|
-
static getFields(fields: FieldsOf<PrivateBaseRollupHints>): readonly [PartialStateReference, SpongeBlob, PrivateBaseStateDiffHints, PublicDataHint, MembershipWitness<29>, [ContractClassLogFields],
|
|
72
|
+
static getFields(fields: FieldsOf<PrivateBaseRollupHints>): readonly [PartialStateReference, SpongeBlob, PrivateBaseStateDiffHints, PublicDataHint, MembershipWitness<29>, [ContractClassLogFields], BlockConstantData];
|
|
72
73
|
/**
|
|
73
74
|
* Serializes the inputs to a buffer.
|
|
74
75
|
* @returns The inputs serialized to a buffer.
|
|
@@ -88,6 +89,10 @@ export declare class PublicBaseRollupHints {
|
|
|
88
89
|
* Sponge state to absorb blob inputs at the start of the rollup.
|
|
89
90
|
*/
|
|
90
91
|
startSpongeBlob: SpongeBlob;
|
|
92
|
+
/**
|
|
93
|
+
* Archive tree snapshot at the very beginning of the block containing this base rollup.
|
|
94
|
+
*/
|
|
95
|
+
lastArchive: AppendOnlyTreeSnapshot;
|
|
91
96
|
/**
|
|
92
97
|
* Membership witnesses of blocks referred by each of the 2 kernels.
|
|
93
98
|
*/
|
|
@@ -96,15 +101,15 @@ export declare class PublicBaseRollupHints {
|
|
|
96
101
|
* Preimages to the kernel's contractClassLogsHashes.
|
|
97
102
|
*/
|
|
98
103
|
contractClassLogsFields: Tuple<ContractClassLogFields, typeof MAX_CONTRACT_CLASS_LOGS_PER_TX>;
|
|
99
|
-
/**
|
|
100
|
-
* Data which is not modified by the base rollup circuit.
|
|
101
|
-
*/
|
|
102
|
-
constants: ConstantRollupData;
|
|
103
104
|
constructor(
|
|
104
105
|
/**
|
|
105
106
|
* Sponge state to absorb blob inputs at the start of the rollup.
|
|
106
107
|
*/
|
|
107
108
|
startSpongeBlob: SpongeBlob,
|
|
109
|
+
/**
|
|
110
|
+
* Archive tree snapshot at the very beginning of the block containing this base rollup.
|
|
111
|
+
*/
|
|
112
|
+
lastArchive: AppendOnlyTreeSnapshot,
|
|
108
113
|
/**
|
|
109
114
|
* Membership witnesses of blocks referred by each of the 2 kernels.
|
|
110
115
|
*/
|
|
@@ -112,13 +117,9 @@ export declare class PublicBaseRollupHints {
|
|
|
112
117
|
/**
|
|
113
118
|
* Preimages to the kernel's contractClassLogsHashes.
|
|
114
119
|
*/
|
|
115
|
-
contractClassLogsFields: Tuple<ContractClassLogFields, typeof MAX_CONTRACT_CLASS_LOGS_PER_TX
|
|
116
|
-
/**
|
|
117
|
-
* Data which is not modified by the base rollup circuit.
|
|
118
|
-
*/
|
|
119
|
-
constants: ConstantRollupData);
|
|
120
|
+
contractClassLogsFields: Tuple<ContractClassLogFields, typeof MAX_CONTRACT_CLASS_LOGS_PER_TX>);
|
|
120
121
|
static from(fields: FieldsOf<PublicBaseRollupHints>): PublicBaseRollupHints;
|
|
121
|
-
static getFields(fields: FieldsOf<PublicBaseRollupHints>): readonly [SpongeBlob, MembershipWitness<29>, [ContractClassLogFields]
|
|
122
|
+
static getFields(fields: FieldsOf<PublicBaseRollupHints>): readonly [SpongeBlob, AppendOnlyTreeSnapshot, MembershipWitness<29>, [ContractClassLogFields]];
|
|
122
123
|
/**
|
|
123
124
|
* Serializes the inputs to a buffer.
|
|
124
125
|
* @returns The inputs serialized to a buffer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_rollup_hints.d.ts","sourceRoot":"","sources":["../../src/rollup/base_rollup_hints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,KAAK,KAAK,EAAqB,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"base_rollup_hints.d.ts","sourceRoot":"","sources":["../../src/rollup/base_rollup_hints.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,9 @@ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
|
6
6
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
7
7
|
import { PublicDataHint } from '../avm/public_data_hint.js';
|
|
8
8
|
import { ContractClassLogFields } from '../logs/index.js';
|
|
9
|
+
import { AppendOnlyTreeSnapshot } from '../trees/index.js';
|
|
9
10
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
10
|
-
import {
|
|
11
|
+
import { BlockConstantData } from './block_constant_data.js';
|
|
11
12
|
import { PrivateBaseStateDiffHints } from './state_diff_hints.js';
|
|
12
13
|
export class PrivateBaseRollupHints {
|
|
13
14
|
start;
|
|
@@ -68,33 +69,33 @@ export class PrivateBaseRollupHints {
|
|
|
68
69
|
}
|
|
69
70
|
static fromBuffer(buffer) {
|
|
70
71
|
const reader = BufferReader.asReader(buffer);
|
|
71
|
-
return new PrivateBaseRollupHints(reader.readObject(PartialStateReference), reader.readObject(SpongeBlob), reader.readObject(PrivateBaseStateDiffHints), reader.readObject(PublicDataHint), MembershipWitness.fromBuffer(reader, ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields)), reader.readObject(
|
|
72
|
+
return new PrivateBaseRollupHints(reader.readObject(PartialStateReference), reader.readObject(SpongeBlob), reader.readObject(PrivateBaseStateDiffHints), reader.readObject(PublicDataHint), MembershipWitness.fromBuffer(reader, ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields)), reader.readObject(BlockConstantData));
|
|
72
73
|
}
|
|
73
74
|
static fromString(str) {
|
|
74
75
|
return PrivateBaseRollupHints.fromBuffer(hexToBuffer(str));
|
|
75
76
|
}
|
|
76
77
|
static empty() {
|
|
77
|
-
return new PrivateBaseRollupHints(PartialStateReference.empty(), SpongeBlob.empty(), PrivateBaseStateDiffHints.empty(), PublicDataHint.empty(), MembershipWitness.empty(ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ContractClassLogFields.empty),
|
|
78
|
+
return new PrivateBaseRollupHints(PartialStateReference.empty(), SpongeBlob.empty(), PrivateBaseStateDiffHints.empty(), PublicDataHint.empty(), MembershipWitness.empty(ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ContractClassLogFields.empty), BlockConstantData.empty());
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
export class PublicBaseRollupHints {
|
|
81
82
|
startSpongeBlob;
|
|
83
|
+
lastArchive;
|
|
82
84
|
archiveRootMembershipWitness;
|
|
83
85
|
contractClassLogsFields;
|
|
84
|
-
constants;
|
|
85
86
|
constructor(/**
|
|
86
87
|
* Sponge state to absorb blob inputs at the start of the rollup.
|
|
87
88
|
*/ startSpongeBlob, /**
|
|
89
|
+
* Archive tree snapshot at the very beginning of the block containing this base rollup.
|
|
90
|
+
*/ lastArchive, /**
|
|
88
91
|
* Membership witnesses of blocks referred by each of the 2 kernels.
|
|
89
92
|
*/ archiveRootMembershipWitness, /**
|
|
90
93
|
* Preimages to the kernel's contractClassLogsHashes.
|
|
91
|
-
*/ contractClassLogsFields
|
|
92
|
-
* Data which is not modified by the base rollup circuit.
|
|
93
|
-
*/ constants){
|
|
94
|
+
*/ contractClassLogsFields){
|
|
94
95
|
this.startSpongeBlob = startSpongeBlob;
|
|
96
|
+
this.lastArchive = lastArchive;
|
|
95
97
|
this.archiveRootMembershipWitness = archiveRootMembershipWitness;
|
|
96
98
|
this.contractClassLogsFields = contractClassLogsFields;
|
|
97
|
-
this.constants = constants;
|
|
98
99
|
}
|
|
99
100
|
static from(fields) {
|
|
100
101
|
return new PublicBaseRollupHints(...PublicBaseRollupHints.getFields(fields));
|
|
@@ -102,9 +103,9 @@ export class PublicBaseRollupHints {
|
|
|
102
103
|
static getFields(fields) {
|
|
103
104
|
return [
|
|
104
105
|
fields.startSpongeBlob,
|
|
106
|
+
fields.lastArchive,
|
|
105
107
|
fields.archiveRootMembershipWitness,
|
|
106
|
-
fields.contractClassLogsFields
|
|
107
|
-
fields.constants
|
|
108
|
+
fields.contractClassLogsFields
|
|
108
109
|
];
|
|
109
110
|
}
|
|
110
111
|
/**
|
|
@@ -121,12 +122,12 @@ export class PublicBaseRollupHints {
|
|
|
121
122
|
}
|
|
122
123
|
static fromBuffer(buffer) {
|
|
123
124
|
const reader = BufferReader.asReader(buffer);
|
|
124
|
-
return new PublicBaseRollupHints(reader.readObject(SpongeBlob), MembershipWitness.fromBuffer(reader, ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields))
|
|
125
|
+
return new PublicBaseRollupHints(reader.readObject(SpongeBlob), reader.readObject(AppendOnlyTreeSnapshot), MembershipWitness.fromBuffer(reader, ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields)));
|
|
125
126
|
}
|
|
126
127
|
static fromString(str) {
|
|
127
128
|
return PublicBaseRollupHints.fromBuffer(hexToBuffer(str));
|
|
128
129
|
}
|
|
129
130
|
static empty() {
|
|
130
|
-
return new PublicBaseRollupHints(SpongeBlob.empty(), MembershipWitness.empty(ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ContractClassLogFields.empty)
|
|
131
|
+
return new PublicBaseRollupHints(SpongeBlob.empty(), AppendOnlyTreeSnapshot.empty(), MembershipWitness.empty(ARCHIVE_HEIGHT), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ContractClassLogFields.empty));
|
|
131
132
|
}
|
|
132
133
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { BufferReader } from '@aztec/foundation/serialize';
|
|
3
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
4
|
+
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
5
|
+
import { GlobalVariables } from '../tx/global_variables.js';
|
|
6
|
+
/**
|
|
7
|
+
* Constants that are the same for the entire block.
|
|
8
|
+
*/
|
|
9
|
+
export declare class BlockConstantData {
|
|
10
|
+
/** Archive tree snapshot at the very beginning of the entire rollup. */
|
|
11
|
+
lastArchive: AppendOnlyTreeSnapshot;
|
|
12
|
+
/** L1 to L2 message tree snapshot at the very beginning of the entire rollup. */
|
|
13
|
+
lastL1ToL2: AppendOnlyTreeSnapshot;
|
|
14
|
+
/** Root of the verification key tree. */
|
|
15
|
+
vkTreeRoot: Fr;
|
|
16
|
+
/** Root of the protocol contract tree. */
|
|
17
|
+
protocolContractTreeRoot: Fr;
|
|
18
|
+
/** Global variables for the block. */
|
|
19
|
+
globalVariables: GlobalVariables;
|
|
20
|
+
constructor(
|
|
21
|
+
/** Archive tree snapshot at the very beginning of the entire rollup. */
|
|
22
|
+
lastArchive: AppendOnlyTreeSnapshot,
|
|
23
|
+
/** L1 to L2 message tree snapshot at the very beginning of the entire rollup. */
|
|
24
|
+
lastL1ToL2: AppendOnlyTreeSnapshot,
|
|
25
|
+
/** Root of the verification key tree. */
|
|
26
|
+
vkTreeRoot: Fr,
|
|
27
|
+
/** Root of the protocol contract tree. */
|
|
28
|
+
protocolContractTreeRoot: Fr,
|
|
29
|
+
/** Global variables for the block. */
|
|
30
|
+
globalVariables: GlobalVariables);
|
|
31
|
+
static from(fields: FieldsOf<BlockConstantData>): BlockConstantData;
|
|
32
|
+
static fromBuffer(buffer: Buffer | BufferReader): BlockConstantData;
|
|
33
|
+
static getFields(fields: FieldsOf<BlockConstantData>): readonly [AppendOnlyTreeSnapshot, AppendOnlyTreeSnapshot, Fr, Fr, GlobalVariables];
|
|
34
|
+
static empty(): BlockConstantData;
|
|
35
|
+
toBuffer(): Buffer<ArrayBufferLike>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=block_constant_data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block_constant_data.d.ts","sourceRoot":"","sources":["../../src/rollup/block_constant_data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D;;GAEG;AACH,qBAAa,iBAAiB;IAE1B,wEAAwE;IACjE,WAAW,EAAE,sBAAsB;IAC1C,iFAAiF;IAC1E,UAAU,EAAE,sBAAsB;IACzC,yCAAyC;IAClC,UAAU,EAAE,EAAE;IACrB,0CAA0C;IACnC,wBAAwB,EAAE,EAAE;IACnC,sCAAsC;IAC/B,eAAe,EAAE,eAAe;;IATvC,wEAAwE;IACjE,WAAW,EAAE,sBAAsB;IAC1C,iFAAiF;IAC1E,UAAU,EAAE,sBAAsB;IACzC,yCAAyC;IAClC,UAAU,EAAE,EAAE;IACrB,0CAA0C;IACnC,wBAAwB,EAAE,EAAE;IACnC,sCAAsC;IAC/B,eAAe,EAAE,eAAe;IAGzC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG,iBAAiB;IAInE,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,iBAAiB;IAWnE,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC;IAUpD,MAAM,CAAC,KAAK;IAUZ,QAAQ;CAGT"}
|
|
@@ -3,43 +3,40 @@ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
|
3
3
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
4
4
|
import { GlobalVariables } from '../tx/global_variables.js';
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
*/ export class
|
|
6
|
+
* Constants that are the same for the entire block.
|
|
7
|
+
*/ export class BlockConstantData {
|
|
8
8
|
lastArchive;
|
|
9
|
+
lastL1ToL2;
|
|
9
10
|
vkTreeRoot;
|
|
10
11
|
protocolContractTreeRoot;
|
|
11
12
|
globalVariables;
|
|
12
|
-
constructor(/** Archive tree snapshot at the very beginning of the entire rollup. */ lastArchive, /**
|
|
13
|
-
* Root of the verification key tree.
|
|
14
|
-
*/ vkTreeRoot, /**
|
|
15
|
-
* Root of the protocol contract tree.
|
|
16
|
-
*/ protocolContractTreeRoot, /**
|
|
17
|
-
* Global variables for the block
|
|
18
|
-
*/ globalVariables){
|
|
13
|
+
constructor(/** Archive tree snapshot at the very beginning of the entire rollup. */ lastArchive, /** L1 to L2 message tree snapshot at the very beginning of the entire rollup. */ lastL1ToL2, /** Root of the verification key tree. */ vkTreeRoot, /** Root of the protocol contract tree. */ protocolContractTreeRoot, /** Global variables for the block. */ globalVariables){
|
|
19
14
|
this.lastArchive = lastArchive;
|
|
15
|
+
this.lastL1ToL2 = lastL1ToL2;
|
|
20
16
|
this.vkTreeRoot = vkTreeRoot;
|
|
21
17
|
this.protocolContractTreeRoot = protocolContractTreeRoot;
|
|
22
18
|
this.globalVariables = globalVariables;
|
|
23
19
|
}
|
|
24
20
|
static from(fields) {
|
|
25
|
-
return new
|
|
21
|
+
return new BlockConstantData(...BlockConstantData.getFields(fields));
|
|
26
22
|
}
|
|
27
23
|
static fromBuffer(buffer) {
|
|
28
24
|
const reader = BufferReader.asReader(buffer);
|
|
29
|
-
return new
|
|
25
|
+
return new BlockConstantData(reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), Fr.fromBuffer(reader), Fr.fromBuffer(reader), reader.readObject(GlobalVariables));
|
|
30
26
|
}
|
|
31
27
|
static getFields(fields) {
|
|
32
28
|
return [
|
|
33
29
|
fields.lastArchive,
|
|
30
|
+
fields.lastL1ToL2,
|
|
34
31
|
fields.vkTreeRoot,
|
|
35
32
|
fields.protocolContractTreeRoot,
|
|
36
33
|
fields.globalVariables
|
|
37
34
|
];
|
|
38
35
|
}
|
|
39
36
|
static empty() {
|
|
40
|
-
return new
|
|
37
|
+
return new BlockConstantData(AppendOnlyTreeSnapshot.empty(), AppendOnlyTreeSnapshot.empty(), Fr.ZERO, Fr.ZERO, GlobalVariables.empty());
|
|
41
38
|
}
|
|
42
39
|
toBuffer() {
|
|
43
|
-
return serializeToBuffer(...
|
|
40
|
+
return serializeToBuffer(...BlockConstantData.getFields(this));
|
|
44
41
|
}
|
|
45
42
|
}
|