@aztec/prover-client 0.73.0 → 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2
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/bin/get-proof-inputs.js +18 -16
- package/dest/block_builder/index.js +0 -1
- package/dest/block_builder/light.js +23 -13
- package/dest/config.js +9 -11
- package/dest/index.js +0 -1
- package/dest/mocks/fixtures.js +28 -26
- package/dest/mocks/test_context.js +55 -31
- package/dest/orchestrator/block-building-helpers.js +90 -90
- package/dest/orchestrator/block-proving-state.js +95 -70
- package/dest/orchestrator/epoch-proving-state.js +53 -40
- package/dest/orchestrator/index.js +0 -1
- package/dest/orchestrator/orchestrator.js +649 -653
- package/dest/orchestrator/orchestrator_metrics.js +4 -3
- package/dest/orchestrator/tx-proving-state.js +52 -51
- package/dest/prover-agent/index.js +0 -1
- package/dest/prover-agent/memory-proving-queue.js +237 -248
- package/dest/prover-agent/prover-agent.js +184 -187
- package/dest/prover-agent/proving-error.js +0 -1
- package/dest/prover-agent/queue_metrics.js +6 -5
- package/dest/prover-agent/rpc.js +6 -4
- package/dest/prover-client/factory.js +0 -1
- package/dest/prover-client/index.js +0 -1
- package/dest/prover-client/prover-client.js +30 -25
- package/dest/prover-client/server-epoch-prover.js +4 -4
- package/dest/proving_broker/broker_prover_facade.js +70 -59
- package/dest/proving_broker/config.js +22 -37
- package/dest/proving_broker/factory.js +1 -2
- package/dest/proving_broker/fixtures.js +0 -1
- package/dest/proving_broker/index.js +0 -1
- package/dest/proving_broker/proof_store/factory.js +9 -12
- package/dest/proving_broker/proof_store/gcs_proof_store.js +11 -7
- package/dest/proving_broker/proof_store/index.js +0 -1
- package/dest/proving_broker/proof_store/inline_proof_store.js +11 -7
- package/dest/proving_broker/proof_store/proof_store.js +3 -2
- package/dest/proving_broker/proving_agent.js +121 -110
- package/dest/proving_broker/proving_agent_instrumentation.js +3 -3
- package/dest/proving_broker/proving_broker.js +491 -451
- package/dest/proving_broker/proving_broker_database/memory.js +19 -13
- package/dest/proving_broker/proving_broker_database/persisted.js +41 -21
- package/dest/proving_broker/proving_broker_database.js +3 -2
- package/dest/proving_broker/proving_broker_instrumentation.js +28 -21
- package/dest/proving_broker/proving_job_controller.js +81 -62
- package/dest/proving_broker/rpc.js +23 -15
- package/dest/test/mock_prover.js +11 -9
- package/package.json +13 -11
- package/src/index.ts +1 -1
- package/src/orchestrator/block-building-helpers.ts +1 -1
- package/src/proving_broker/proving_agent.ts +30 -11
- package/src/proving_broker/proving_broker.ts +53 -27
- package/src/proving_broker/rpc.ts +8 -2
- package/dest/bin/get-proof-inputs.d.ts +0 -2
- package/dest/bin/get-proof-inputs.d.ts.map +0 -1
- package/dest/block_builder/index.d.ts +0 -6
- package/dest/block_builder/index.d.ts.map +0 -1
- package/dest/block_builder/light.d.ts +0 -31
- package/dest/block_builder/light.d.ts.map +0 -1
- package/dest/config.d.ts +0 -17
- package/dest/config.d.ts.map +0 -1
- package/dest/index.d.ts +0 -4
- package/dest/index.d.ts.map +0 -1
- package/dest/mocks/fixtures.d.ts +0 -19
- package/dest/mocks/fixtures.d.ts.map +0 -1
- package/dest/mocks/test_context.d.ts +0 -49
- package/dest/mocks/test_context.d.ts.map +0 -1
- package/dest/orchestrator/block-building-helpers.d.ts +0 -50
- package/dest/orchestrator/block-building-helpers.d.ts.map +0 -1
- package/dest/orchestrator/block-proving-state.d.ts +0 -71
- package/dest/orchestrator/block-proving-state.d.ts.map +0 -1
- package/dest/orchestrator/epoch-proving-state.d.ts +0 -56
- package/dest/orchestrator/epoch-proving-state.d.ts.map +0 -1
- package/dest/orchestrator/index.d.ts +0 -2
- package/dest/orchestrator/index.d.ts.map +0 -1
- package/dest/orchestrator/orchestrator.d.ts +0 -108
- package/dest/orchestrator/orchestrator.d.ts.map +0 -1
- package/dest/orchestrator/orchestrator_metrics.d.ts +0 -8
- package/dest/orchestrator/orchestrator_metrics.d.ts.map +0 -1
- package/dest/orchestrator/tx-proving-state.d.ts +0 -31
- package/dest/orchestrator/tx-proving-state.d.ts.map +0 -1
- package/dest/prover-agent/index.d.ts +0 -4
- package/dest/prover-agent/index.d.ts.map +0 -1
- package/dest/prover-agent/memory-proving-queue.d.ts +0 -82
- package/dest/prover-agent/memory-proving-queue.d.ts.map +0 -1
- package/dest/prover-agent/prover-agent.d.ts +0 -43
- package/dest/prover-agent/prover-agent.d.ts.map +0 -1
- package/dest/prover-agent/proving-error.d.ts +0 -5
- package/dest/prover-agent/proving-error.d.ts.map +0 -1
- package/dest/prover-agent/queue_metrics.d.ts +0 -10
- package/dest/prover-agent/queue_metrics.d.ts.map +0 -1
- package/dest/prover-agent/rpc.d.ts +0 -11
- package/dest/prover-agent/rpc.d.ts.map +0 -1
- package/dest/prover-client/factory.d.ts +0 -6
- package/dest/prover-client/factory.d.ts.map +0 -1
- package/dest/prover-client/index.d.ts +0 -3
- package/dest/prover-client/index.d.ts.map +0 -1
- package/dest/prover-client/prover-client.d.ts +0 -42
- package/dest/prover-client/prover-client.d.ts.map +0 -1
- package/dest/prover-client/server-epoch-prover.d.ts +0 -25
- package/dest/prover-client/server-epoch-prover.d.ts.map +0 -1
- package/dest/proving_broker/broker_prover_facade.d.ts +0 -39
- package/dest/proving_broker/broker_prover_facade.d.ts.map +0 -1
- package/dest/proving_broker/config.d.ts +0 -61
- package/dest/proving_broker/config.d.ts.map +0 -1
- package/dest/proving_broker/factory.d.ts +0 -5
- package/dest/proving_broker/factory.d.ts.map +0 -1
- package/dest/proving_broker/fixtures.d.ts +0 -5
- package/dest/proving_broker/fixtures.d.ts.map +0 -1
- package/dest/proving_broker/index.d.ts +0 -10
- package/dest/proving_broker/index.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/factory.d.ts +0 -6
- package/dest/proving_broker/proof_store/factory.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts +0 -13
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/index.d.ts +0 -4
- package/dest/proving_broker/proof_store/index.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts +0 -14
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/proof_store.d.ts +0 -35
- package/dest/proving_broker/proof_store/proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proving_agent.d.ts +0 -44
- package/dest/proving_broker/proving_agent.d.ts.map +0 -1
- package/dest/proving_broker/proving_agent_instrumentation.d.ts +0 -8
- package/dest/proving_broker/proving_agent_instrumentation.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker.d.ts +0 -75
- package/dest/proving_broker/proving_broker.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database/memory.d.ts +0 -16
- package/dest/proving_broker/proving_broker_database/memory.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database/persisted.d.ts +0 -21
- package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database.d.ts +0 -39
- package/dest/proving_broker/proving_broker_database.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_instrumentation.d.ts +0 -25
- package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +0 -1
- package/dest/proving_broker/proving_job_controller.d.ts +0 -31
- package/dest/proving_broker/proving_job_controller.d.ts.map +0 -1
- package/dest/proving_broker/rpc.d.ts +0 -11
- package/dest/proving_broker/rpc.d.ts.map +0 -1
- package/dest/test/mock_prover.d.ts +0 -33
- package/dest/test/mock_prover.d.ts.map +0 -1
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import { __classPrivateFieldGet } from "tslib";
|
|
3
|
-
import { BLOBS_PER_BLOCK, FIELDS_PER_BLOB, Fr, MembershipWitness, NUM_BASE_PARITY_PER_ROOT_PARITY, RootParityInput, RootParityInputs, StateReference, VK_TREE_HEIGHT, } from '@aztec/circuits.js';
|
|
1
|
+
import { BLOBS_PER_BLOCK, FIELDS_PER_BLOB, Fr, MembershipWitness, NUM_BASE_PARITY_PER_ROOT_PARITY, RootParityInput, RootParityInputs, StateReference, VK_TREE_HEIGHT } from '@aztec/circuits.js';
|
|
4
2
|
import { SpongeBlob } from '@aztec/circuits.js/blobs';
|
|
5
|
-
import { BlockRootRollupBlobData, BlockRootRollupData, BlockRootRollupInputs, ConstantRollupData, EmptyBlockRootRollupInputs, MergeRollupInputs, PreviousRollupData, SingleTxBlockRootRollupInputs
|
|
3
|
+
import { BlockRootRollupBlobData, BlockRootRollupData, BlockRootRollupInputs, ConstantRollupData, EmptyBlockRootRollupInputs, MergeRollupInputs, PreviousRollupData, SingleTxBlockRootRollupInputs } from '@aztec/circuits.js/rollup';
|
|
6
4
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
7
5
|
import { UnbalancedTreeStore } from '@aztec/foundation/trees';
|
|
8
6
|
import { getVKIndex, getVKSiblingPath, getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vks';
|
|
@@ -11,10 +9,27 @@ import { buildBlobHints, buildHeaderFromCircuitOutputs } from './block-building-
|
|
|
11
9
|
/**
|
|
12
10
|
* The current state of the proving schedule for a given block. Managed by ProvingState.
|
|
13
11
|
* Contains the raw inputs and intermediate state to generate every constituent proof in the tree.
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
*/ export class BlockProvingState {
|
|
13
|
+
index;
|
|
14
|
+
globalVariables;
|
|
15
|
+
newL1ToL2Messages;
|
|
16
|
+
l1ToL2MessageSubtreeSiblingPath;
|
|
17
|
+
l1ToL2MessageTreeSnapshotAfterInsertion;
|
|
18
|
+
lastArchiveSnapshot;
|
|
19
|
+
newArchiveSiblingPath;
|
|
20
|
+
previousBlockHeader;
|
|
21
|
+
parentEpoch;
|
|
22
|
+
baseOrMergeProvingOutputs;
|
|
23
|
+
baseParityProvingOutputs;
|
|
24
|
+
rootParityProvingOutput;
|
|
25
|
+
blockRootProvingOutput;
|
|
26
|
+
blockRootRollupStarted;
|
|
27
|
+
block;
|
|
28
|
+
spongeBlobState;
|
|
29
|
+
totalNumTxs;
|
|
30
|
+
txs;
|
|
31
|
+
error;
|
|
32
|
+
constructor(index, globalVariables, newL1ToL2Messages, l1ToL2MessageSubtreeSiblingPath, l1ToL2MessageTreeSnapshotAfterInsertion, lastArchiveSnapshot, newArchiveSiblingPath, previousBlockHeader, parentEpoch){
|
|
18
33
|
this.index = index;
|
|
19
34
|
this.globalVariables = globalVariables;
|
|
20
35
|
this.newL1ToL2Messages = newL1ToL2Messages;
|
|
@@ -27,7 +42,9 @@ export class BlockProvingState {
|
|
|
27
42
|
this.baseOrMergeProvingOutputs = new UnbalancedTreeStore(0);
|
|
28
43
|
this.blockRootRollupStarted = false;
|
|
29
44
|
this.txs = [];
|
|
30
|
-
this.baseParityProvingOutputs = Array.from({
|
|
45
|
+
this.baseParityProvingOutputs = Array.from({
|
|
46
|
+
length: NUM_BASE_PARITY_PER_ROOT_PARITY
|
|
47
|
+
}).map((_)=>undefined);
|
|
31
48
|
this.totalNumTxs = 0;
|
|
32
49
|
}
|
|
33
50
|
get blockNumber() {
|
|
@@ -75,8 +92,7 @@ export class BlockProvingState {
|
|
|
75
92
|
get allTxs() {
|
|
76
93
|
return this.txs;
|
|
77
94
|
}
|
|
78
|
-
/** Returns the block number as an epoch number. Used for prioritizing proof requests. */
|
|
79
|
-
get epochNumber() {
|
|
95
|
+
/** Returns the block number as an epoch number. Used for prioritizing proof requests. */ get epochNumber() {
|
|
80
96
|
return this.parentEpoch.epochNumber;
|
|
81
97
|
}
|
|
82
98
|
getParentLocation(location) {
|
|
@@ -87,46 +103,48 @@ export class BlockProvingState {
|
|
|
87
103
|
if (!left || !right) {
|
|
88
104
|
throw new Error('At lease one child is not ready.');
|
|
89
105
|
}
|
|
90
|
-
return new MergeRollupInputs([
|
|
106
|
+
return new MergeRollupInputs([
|
|
107
|
+
await this.#getPreviousRollupData(left),
|
|
108
|
+
await this.#getPreviousRollupData(right)
|
|
109
|
+
]);
|
|
91
110
|
}
|
|
92
111
|
async getBlockRootRollupTypeAndInputs(proverId) {
|
|
93
112
|
if (!this.rootParityProvingOutput) {
|
|
94
113
|
throw new Error('Root parity is not ready.');
|
|
95
114
|
}
|
|
96
|
-
const proofs =
|
|
97
|
-
const nonEmptyProofs = proofs.filter(p
|
|
115
|
+
const proofs = this.#getChildProofsForBlockRoot();
|
|
116
|
+
const nonEmptyProofs = proofs.filter((p)=>!!p);
|
|
98
117
|
if (proofs.length !== nonEmptyProofs.length) {
|
|
99
118
|
throw new Error('At lease one child is not ready for the block root.');
|
|
100
119
|
}
|
|
101
|
-
const data = await
|
|
120
|
+
const data = await this.#getBlockRootRollupData(proverId);
|
|
102
121
|
if (this.totalNumTxs === 0) {
|
|
103
122
|
const constants = ConstantRollupData.from({
|
|
104
123
|
lastArchive: this.lastArchiveSnapshot,
|
|
105
124
|
globalVariables: this.globalVariables,
|
|
106
125
|
vkTreeRoot: await getVKTreeRoot(),
|
|
107
|
-
protocolContractTreeRoot
|
|
126
|
+
protocolContractTreeRoot
|
|
108
127
|
});
|
|
109
128
|
return {
|
|
110
129
|
rollupType: 'empty-block-root-rollup',
|
|
111
130
|
inputs: EmptyBlockRootRollupInputs.from({
|
|
112
131
|
data,
|
|
113
132
|
constants,
|
|
114
|
-
isPadding: false
|
|
115
|
-
})
|
|
133
|
+
isPadding: false
|
|
134
|
+
})
|
|
116
135
|
};
|
|
117
136
|
}
|
|
118
|
-
const previousRollupData = await Promise.all(nonEmptyProofs.map(p
|
|
119
|
-
const blobData = await
|
|
137
|
+
const previousRollupData = await Promise.all(nonEmptyProofs.map((p)=>this.#getPreviousRollupData(p)));
|
|
138
|
+
const blobData = await this.#getBlockRootRollupBlobData();
|
|
120
139
|
if (previousRollupData.length === 1) {
|
|
121
140
|
return {
|
|
122
141
|
rollupType: 'single-tx-block-root-rollup',
|
|
123
|
-
inputs: new SingleTxBlockRootRollupInputs(previousRollupData, data, blobData)
|
|
142
|
+
inputs: new SingleTxBlockRootRollupInputs(previousRollupData, data, blobData)
|
|
124
143
|
};
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
144
|
+
} else {
|
|
127
145
|
return {
|
|
128
146
|
rollupType: 'block-root-rollup',
|
|
129
|
-
inputs: new BlockRootRollupInputs(previousRollupData, data, blobData)
|
|
147
|
+
inputs: new BlockRootRollupInputs(previousRollupData, data, blobData)
|
|
130
148
|
};
|
|
131
149
|
}
|
|
132
150
|
}
|
|
@@ -138,29 +156,29 @@ export class BlockProvingState {
|
|
|
138
156
|
const newBlockHeader = await this.buildHeaderFromProvingOutputs();
|
|
139
157
|
const newArchive = this.blockRootProvingOutput.inputs.newArchive;
|
|
140
158
|
const data = BlockRootRollupData.from({
|
|
141
|
-
l1ToL2Roots: await
|
|
159
|
+
l1ToL2Roots: await this.#getRootParityData(this.rootParityProvingOutput),
|
|
142
160
|
l1ToL2MessageSubtreeSiblingPath: this.l1ToL2MessageSubtreeSiblingPath,
|
|
143
161
|
newArchiveSiblingPath: this.newArchiveSiblingPath,
|
|
144
162
|
previousBlockHeader: newBlockHeader,
|
|
145
|
-
proverId
|
|
163
|
+
proverId
|
|
146
164
|
});
|
|
147
165
|
const constants = ConstantRollupData.from({
|
|
148
166
|
lastArchive: newArchive,
|
|
149
167
|
globalVariables: this.globalVariables,
|
|
150
168
|
vkTreeRoot: await getVKTreeRoot(),
|
|
151
|
-
protocolContractTreeRoot
|
|
169
|
+
protocolContractTreeRoot
|
|
152
170
|
});
|
|
153
171
|
return EmptyBlockRootRollupInputs.from({
|
|
154
172
|
data,
|
|
155
173
|
constants,
|
|
156
|
-
isPadding: true
|
|
174
|
+
isPadding: true
|
|
157
175
|
});
|
|
158
176
|
}
|
|
159
177
|
async getRootParityInputs() {
|
|
160
|
-
if (!this.baseParityProvingOutputs.every(p
|
|
178
|
+
if (!this.baseParityProvingOutputs.every((p)=>!!p)) {
|
|
161
179
|
throw new Error('At lease one base parity is not ready.');
|
|
162
180
|
}
|
|
163
|
-
const children = await Promise.all(this.baseParityProvingOutputs.map(p
|
|
181
|
+
const children = await Promise.all(this.baseParityProvingOutputs.map((p)=>this.#getRootParityData(p)));
|
|
164
182
|
return new RootParityInputs(children);
|
|
165
183
|
}
|
|
166
184
|
// Returns a specific transaction proving state
|
|
@@ -168,12 +186,10 @@ export class BlockProvingState {
|
|
|
168
186
|
return this.txs[txIndex];
|
|
169
187
|
}
|
|
170
188
|
async buildHeaderFromProvingOutputs(logger) {
|
|
171
|
-
const previousRollupData = this.totalNumTxs === 0
|
|
172
|
-
? []
|
|
173
|
-
: await Promise.all(__classPrivateFieldGet(this, _BlockProvingState_instances, "m", _BlockProvingState_getChildProofsForBlockRoot).call(this).map(p => __classPrivateFieldGet(this, _BlockProvingState_instances, "m", _BlockProvingState_getPreviousRollupData).call(this, p)));
|
|
189
|
+
const previousRollupData = this.totalNumTxs === 0 ? [] : await Promise.all(this.#getChildProofsForBlockRoot().map((p)=>this.#getPreviousRollupData(p)));
|
|
174
190
|
let endPartialState = this.previousBlockHeader.state.partial;
|
|
175
191
|
if (this.totalNumTxs !== 0) {
|
|
176
|
-
const previousRollupData =
|
|
192
|
+
const previousRollupData = this.#getChildProofsForBlockRoot();
|
|
177
193
|
const lastRollup = previousRollupData[previousRollupData.length - 1];
|
|
178
194
|
if (!lastRollup) {
|
|
179
195
|
throw new Error('End state of the block is not available. Last rollup is not ready yet.');
|
|
@@ -181,19 +197,19 @@ export class BlockProvingState {
|
|
|
181
197
|
endPartialState = lastRollup.inputs.end;
|
|
182
198
|
}
|
|
183
199
|
const endState = new StateReference(this.l1ToL2MessageTreeSnapshotAfterInsertion, endPartialState);
|
|
184
|
-
return buildHeaderFromCircuitOutputs(previousRollupData.map(d
|
|
200
|
+
return buildHeaderFromCircuitOutputs(previousRollupData.map((d)=>d.baseOrMergeRollupPublicInputs), this.rootParityProvingOutput.inputs, this.blockRootProvingOutput.inputs, endState, logger);
|
|
185
201
|
}
|
|
186
202
|
isReadyForMergeRollup(location) {
|
|
187
203
|
return this.baseOrMergeProvingOutputs.getSibling(location) !== undefined;
|
|
188
204
|
}
|
|
189
205
|
// Returns true if we have sufficient inputs to execute the block root rollup
|
|
190
206
|
isReadyForBlockRootRollup() {
|
|
191
|
-
const childProofs =
|
|
192
|
-
return this.block !== undefined && this.rootParityProvingOutput !== undefined && childProofs.every(p
|
|
207
|
+
const childProofs = this.#getChildProofsForBlockRoot();
|
|
208
|
+
return this.block !== undefined && this.rootParityProvingOutput !== undefined && childProofs.every((p)=>!!p);
|
|
193
209
|
}
|
|
194
210
|
// Returns true if we have sufficient root parity inputs to execute the root parity circuit
|
|
195
211
|
isReadyForRootParity() {
|
|
196
|
-
return this.baseParityProvingOutputs.every(p
|
|
212
|
+
return this.baseParityProvingOutputs.every((p)=>!!p);
|
|
197
213
|
}
|
|
198
214
|
isComplete() {
|
|
199
215
|
return !!this.blockRootProvingOutput;
|
|
@@ -206,36 +222,45 @@ export class BlockProvingState {
|
|
|
206
222
|
this.error = reason;
|
|
207
223
|
this.parentEpoch.reject(reason);
|
|
208
224
|
}
|
|
225
|
+
async #getBlockRootRollupData(proverId) {
|
|
226
|
+
return BlockRootRollupData.from({
|
|
227
|
+
l1ToL2Roots: await this.#getRootParityData(this.rootParityProvingOutput),
|
|
228
|
+
l1ToL2MessageSubtreeSiblingPath: this.l1ToL2MessageSubtreeSiblingPath,
|
|
229
|
+
newArchiveSiblingPath: this.newArchiveSiblingPath,
|
|
230
|
+
previousBlockHeader: this.previousBlockHeader,
|
|
231
|
+
proverId
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
async #getBlockRootRollupBlobData() {
|
|
235
|
+
const txEffects = this.txs.map((txProvingState)=>txProvingState.processedTx.txEffect);
|
|
236
|
+
const { blobFields, blobCommitments, blobsHash } = await buildBlobHints(txEffects);
|
|
237
|
+
return BlockRootRollupBlobData.from({
|
|
238
|
+
blobFields: padArrayEnd(blobFields, Fr.ZERO, FIELDS_PER_BLOB * BLOBS_PER_BLOCK),
|
|
239
|
+
blobCommitments: padArrayEnd(blobCommitments, [
|
|
240
|
+
Fr.ZERO,
|
|
241
|
+
Fr.ZERO
|
|
242
|
+
], BLOBS_PER_BLOCK),
|
|
243
|
+
blobsHash
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
#getChildProofsForBlockRoot() {
|
|
247
|
+
if (this.totalNumTxs === 0) {
|
|
248
|
+
return [];
|
|
249
|
+
}
|
|
250
|
+
const rootLocation = {
|
|
251
|
+
level: 0,
|
|
252
|
+
index: 0
|
|
253
|
+
};
|
|
254
|
+
// If there's only 1 tx, its base rollup proof will be stored at the root.
|
|
255
|
+
return this.totalNumTxs === 1 ? [
|
|
256
|
+
this.baseOrMergeProvingOutputs.getNode(rootLocation)
|
|
257
|
+
] : this.baseOrMergeProvingOutputs.getChildren(rootLocation);
|
|
258
|
+
}
|
|
259
|
+
async #getPreviousRollupData({ inputs, proof, verificationKey }) {
|
|
260
|
+
const leafIndex = await getVKIndex(verificationKey.keyAsFields);
|
|
261
|
+
return new PreviousRollupData(inputs, proof, verificationKey.keyAsFields, new MembershipWitness(VK_TREE_HEIGHT, BigInt(leafIndex), await getVKSiblingPath(leafIndex)));
|
|
262
|
+
}
|
|
263
|
+
async #getRootParityData({ inputs, proof, verificationKey }) {
|
|
264
|
+
return new RootParityInput(proof, verificationKey.keyAsFields, await getVKSiblingPath(await getVKIndex(verificationKey)), inputs);
|
|
265
|
+
}
|
|
209
266
|
}
|
|
210
|
-
_BlockProvingState_instances = new WeakSet(), _BlockProvingState_getBlockRootRollupData = async function _BlockProvingState_getBlockRootRollupData(proverId) {
|
|
211
|
-
return BlockRootRollupData.from({
|
|
212
|
-
l1ToL2Roots: await __classPrivateFieldGet(this, _BlockProvingState_instances, "m", _BlockProvingState_getRootParityData).call(this, this.rootParityProvingOutput),
|
|
213
|
-
l1ToL2MessageSubtreeSiblingPath: this.l1ToL2MessageSubtreeSiblingPath,
|
|
214
|
-
newArchiveSiblingPath: this.newArchiveSiblingPath,
|
|
215
|
-
previousBlockHeader: this.previousBlockHeader,
|
|
216
|
-
proverId,
|
|
217
|
-
});
|
|
218
|
-
}, _BlockProvingState_getBlockRootRollupBlobData = async function _BlockProvingState_getBlockRootRollupBlobData() {
|
|
219
|
-
const txEffects = this.txs.map(txProvingState => txProvingState.processedTx.txEffect);
|
|
220
|
-
const { blobFields, blobCommitments, blobsHash } = await buildBlobHints(txEffects);
|
|
221
|
-
return BlockRootRollupBlobData.from({
|
|
222
|
-
blobFields: padArrayEnd(blobFields, Fr.ZERO, FIELDS_PER_BLOB * BLOBS_PER_BLOCK),
|
|
223
|
-
blobCommitments: padArrayEnd(blobCommitments, [Fr.ZERO, Fr.ZERO], BLOBS_PER_BLOCK),
|
|
224
|
-
blobsHash,
|
|
225
|
-
});
|
|
226
|
-
}, _BlockProvingState_getChildProofsForBlockRoot = function _BlockProvingState_getChildProofsForBlockRoot() {
|
|
227
|
-
if (this.totalNumTxs === 0) {
|
|
228
|
-
return [];
|
|
229
|
-
}
|
|
230
|
-
const rootLocation = { level: 0, index: 0 };
|
|
231
|
-
// If there's only 1 tx, its base rollup proof will be stored at the root.
|
|
232
|
-
return this.totalNumTxs === 1
|
|
233
|
-
? [this.baseOrMergeProvingOutputs.getNode(rootLocation)]
|
|
234
|
-
: this.baseOrMergeProvingOutputs.getChildren(rootLocation);
|
|
235
|
-
}, _BlockProvingState_getPreviousRollupData = async function _BlockProvingState_getPreviousRollupData({ inputs, proof, verificationKey, }) {
|
|
236
|
-
const leafIndex = await getVKIndex(verificationKey.keyAsFields);
|
|
237
|
-
return new PreviousRollupData(inputs, proof, verificationKey.keyAsFields, new MembershipWitness(VK_TREE_HEIGHT, BigInt(leafIndex), await getVKSiblingPath(leafIndex)));
|
|
238
|
-
}, _BlockProvingState_getRootParityData = async function _BlockProvingState_getRootParityData({ inputs, proof, verificationKey }) {
|
|
239
|
-
return new RootParityInput(proof, verificationKey.keyAsFields, await getVKSiblingPath(await getVKIndex(verificationKey)), inputs);
|
|
240
|
-
};
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stcHJvdmluZy1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcmNoZXN0cmF0b3IvYmxvY2stcHJvdmluZy1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE9BQU8sRUFHTCxlQUFlLEVBRWYsZUFBZSxFQUNmLEVBQUUsRUFHRixpQkFBaUIsRUFFakIsK0JBQStCLEVBRy9CLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGNBQWMsR0FDZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBR0wsdUJBQXVCLEVBQ3ZCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLDBCQUEwQixFQUMxQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLDZCQUE2QixHQUM5QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUczRCxPQUFPLEVBQXlCLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckYsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFNNUY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQWdCNUIsWUFDa0IsS0FBYSxFQUNiLGVBQWdDLEVBQ2hDLGlCQUF1QixFQUN0QiwrQkFBMkYsRUFDM0YsdUNBQStELEVBQy9ELG1CQUEyQyxFQUMzQyxxQkFBdUQsRUFDdkQsbUJBQWdDLEVBQ2hDLFdBQThCOztRQVIvQixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2Isb0JB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
|
|
@@ -1,33 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import { MembershipWitness, VK_TREE_HEIGHT, } from '@aztec/circuits.js';
|
|
4
|
-
import { BlockMergeRollupInputs, PreviousRollupBlockData, RootRollupInputs, } from '@aztec/circuits.js/rollup';
|
|
1
|
+
import { MembershipWitness, VK_TREE_HEIGHT } from '@aztec/circuits.js';
|
|
2
|
+
import { BlockMergeRollupInputs, PreviousRollupBlockData, RootRollupInputs } from '@aztec/circuits.js/rollup';
|
|
5
3
|
import { UnbalancedTreeStore } from '@aztec/foundation/trees';
|
|
6
4
|
import { getVKIndex, getVKSiblingPath } from '@aztec/noir-protocol-circuits-types/vks';
|
|
7
5
|
import { BlockProvingState } from './block-proving-state.js';
|
|
8
|
-
var PROVING_STATE_LIFECYCLE
|
|
9
|
-
(function (PROVING_STATE_LIFECYCLE) {
|
|
6
|
+
var PROVING_STATE_LIFECYCLE = /*#__PURE__*/ function(PROVING_STATE_LIFECYCLE) {
|
|
10
7
|
PROVING_STATE_LIFECYCLE[PROVING_STATE_LIFECYCLE["PROVING_STATE_CREATED"] = 0] = "PROVING_STATE_CREATED";
|
|
11
8
|
PROVING_STATE_LIFECYCLE[PROVING_STATE_LIFECYCLE["PROVING_STATE_FULL"] = 1] = "PROVING_STATE_FULL";
|
|
12
9
|
PROVING_STATE_LIFECYCLE[PROVING_STATE_LIFECYCLE["PROVING_STATE_RESOLVED"] = 2] = "PROVING_STATE_RESOLVED";
|
|
13
10
|
PROVING_STATE_LIFECYCLE[PROVING_STATE_LIFECYCLE["PROVING_STATE_REJECTED"] = 3] = "PROVING_STATE_REJECTED";
|
|
14
|
-
|
|
11
|
+
return PROVING_STATE_LIFECYCLE;
|
|
12
|
+
}(PROVING_STATE_LIFECYCLE || {});
|
|
15
13
|
/**
|
|
16
14
|
* The current state of the proving schedule for an epoch.
|
|
17
15
|
* Contains the raw inputs and intermediate state to generate every constituent proof in the tree.
|
|
18
16
|
* Carries an identifier so we can identify if the proving state is discarded and a new one started.
|
|
19
17
|
* Captures resolve and reject callbacks to provide a promise base interface to the consumer of our proving.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
18
|
+
*/ export class EpochProvingState {
|
|
19
|
+
epochNumber;
|
|
20
|
+
firstBlockNumber;
|
|
21
|
+
totalNumBlocks;
|
|
22
|
+
completionCallback;
|
|
23
|
+
rejectionCallback;
|
|
24
|
+
blockRootOrMergeProvingOutputs;
|
|
25
|
+
paddingBlockRootProvingOutput;
|
|
26
|
+
rootRollupProvingOutput;
|
|
27
|
+
provingStateLifecycle;
|
|
28
|
+
// Map from tx hash to tube proof promise. Used when kickstarting tube proofs before tx processing.
|
|
29
|
+
cachedTubeProofs;
|
|
30
|
+
blocks;
|
|
31
|
+
constructor(epochNumber, firstBlockNumber, totalNumBlocks, completionCallback, rejectionCallback){
|
|
24
32
|
this.epochNumber = epochNumber;
|
|
25
33
|
this.firstBlockNumber = firstBlockNumber;
|
|
26
34
|
this.totalNumBlocks = totalNumBlocks;
|
|
27
35
|
this.completionCallback = completionCallback;
|
|
28
36
|
this.rejectionCallback = rejectionCallback;
|
|
29
|
-
this.provingStateLifecycle =
|
|
30
|
-
// Map from tx hash to tube proof promise. Used when kickstarting tube proofs before tx processing.
|
|
37
|
+
this.provingStateLifecycle = 0;
|
|
31
38
|
this.cachedTubeProofs = new Map();
|
|
32
39
|
this.blocks = [];
|
|
33
40
|
this.blockRootOrMergeProvingOutputs = new UnbalancedTreeStore(totalNumBlocks);
|
|
@@ -38,19 +45,18 @@ export class EpochProvingState {
|
|
|
38
45
|
const index = globalVariables.blockNumber.toNumber() - this.firstBlockNumber;
|
|
39
46
|
const block = new BlockProvingState(index, globalVariables, l1ToL2Messages, l1ToL2MessageSubtreeSiblingPath, l1ToL2MessageTreeSnapshotAfterInsertion, lastArchiveSnapshot, newArchiveSiblingPath, previousBlockHeader, this);
|
|
40
47
|
this.blocks[index] = block;
|
|
41
|
-
if (this.blocks.filter(b
|
|
42
|
-
this.provingStateLifecycle =
|
|
48
|
+
if (this.blocks.filter((b)=>!!b).length === this.totalNumBlocks) {
|
|
49
|
+
this.provingStateLifecycle = 1;
|
|
43
50
|
}
|
|
44
51
|
return block;
|
|
45
52
|
}
|
|
46
53
|
// Returns true if this proving state is still valid, false otherwise
|
|
47
54
|
verifyState() {
|
|
48
|
-
return
|
|
49
|
-
this.provingStateLifecycle === PROVING_STATE_LIFECYCLE.PROVING_STATE_FULL);
|
|
55
|
+
return this.provingStateLifecycle === 0 || this.provingStateLifecycle === 1;
|
|
50
56
|
}
|
|
51
57
|
// Returns true if we are still able to accept blocks, false otherwise
|
|
52
58
|
isAcceptingBlocks() {
|
|
53
|
-
return this.provingStateLifecycle ===
|
|
59
|
+
return this.provingStateLifecycle === 0;
|
|
54
60
|
}
|
|
55
61
|
setBlockRootRollupProof(blockIndex, proof) {
|
|
56
62
|
return this.blockRootOrMergeProvingOutputs.setLeaf(blockIndex, proof);
|
|
@@ -73,18 +79,21 @@ export class EpochProvingState {
|
|
|
73
79
|
throw new Error('At lease one child is not ready.');
|
|
74
80
|
}
|
|
75
81
|
return new BlockMergeRollupInputs([
|
|
76
|
-
await
|
|
77
|
-
await
|
|
82
|
+
await this.#getPreviousRollupData(left),
|
|
83
|
+
await this.#getPreviousRollupData(right)
|
|
78
84
|
]);
|
|
79
85
|
}
|
|
80
86
|
async getRootRollupInputs(proverId) {
|
|
81
|
-
const [left, right] =
|
|
87
|
+
const [left, right] = this.#getChildProofsForRoot();
|
|
82
88
|
if (!left || !right) {
|
|
83
89
|
throw new Error('At lease one child is not ready.');
|
|
84
90
|
}
|
|
85
91
|
return RootRollupInputs.from({
|
|
86
|
-
previousRollupData: [
|
|
87
|
-
|
|
92
|
+
previousRollupData: [
|
|
93
|
+
await this.#getPreviousRollupData(left),
|
|
94
|
+
await this.#getPreviousRollupData(right)
|
|
95
|
+
],
|
|
96
|
+
proverId
|
|
88
97
|
});
|
|
89
98
|
}
|
|
90
99
|
getPaddingBlockRootInputs(proverId) {
|
|
@@ -95,7 +104,7 @@ export class EpochProvingState {
|
|
|
95
104
|
}
|
|
96
105
|
// Returns a specific transaction proving state
|
|
97
106
|
getBlockProvingStateByBlockNumber(blockNumber) {
|
|
98
|
-
return this.blocks.find(block
|
|
107
|
+
return this.blocks.find((block)=>block?.blockNumber === blockNumber);
|
|
99
108
|
}
|
|
100
109
|
getEpochProofResult() {
|
|
101
110
|
if (!this.rootRollupProvingOutput) {
|
|
@@ -103,7 +112,7 @@ export class EpochProvingState {
|
|
|
103
112
|
}
|
|
104
113
|
return {
|
|
105
114
|
proof: this.rootRollupProvingOutput.proof.binaryProof,
|
|
106
|
-
publicInputs: this.rootRollupProvingOutput.inputs
|
|
115
|
+
publicInputs: this.rootRollupProvingOutput.inputs
|
|
107
116
|
};
|
|
108
117
|
}
|
|
109
118
|
isReadyForBlockMerge(location) {
|
|
@@ -111,8 +120,8 @@ export class EpochProvingState {
|
|
|
111
120
|
}
|
|
112
121
|
// Returns true if we have sufficient inputs to execute the block root rollup
|
|
113
122
|
isReadyForRootRollup() {
|
|
114
|
-
const childProofs =
|
|
115
|
-
return childProofs.every(p
|
|
123
|
+
const childProofs = this.#getChildProofsForRoot();
|
|
124
|
+
return childProofs.every((p)=>!!p);
|
|
116
125
|
}
|
|
117
126
|
// Attempts to reject the proving state promise with a reason of 'cancelled'
|
|
118
127
|
cancel() {
|
|
@@ -124,7 +133,7 @@ export class EpochProvingState {
|
|
|
124
133
|
if (!this.verifyState()) {
|
|
125
134
|
return;
|
|
126
135
|
}
|
|
127
|
-
this.provingStateLifecycle =
|
|
136
|
+
this.provingStateLifecycle = 3;
|
|
128
137
|
this.rejectionCallback(reason);
|
|
129
138
|
}
|
|
130
139
|
// Attempts to resolve the proving state promise with the given result
|
|
@@ -133,18 +142,22 @@ export class EpochProvingState {
|
|
|
133
142
|
if (!this.verifyState()) {
|
|
134
143
|
return;
|
|
135
144
|
}
|
|
136
|
-
this.provingStateLifecycle =
|
|
145
|
+
this.provingStateLifecycle = 2;
|
|
137
146
|
this.completionCallback(result);
|
|
138
147
|
}
|
|
148
|
+
#getChildProofsForRoot() {
|
|
149
|
+
const rootLocation = {
|
|
150
|
+
level: 0,
|
|
151
|
+
index: 0
|
|
152
|
+
};
|
|
153
|
+
// If there's only 1 block, its block root proof will be stored at the root.
|
|
154
|
+
return this.totalNumBlocks === 1 ? [
|
|
155
|
+
this.blockRootOrMergeProvingOutputs.getNode(rootLocation),
|
|
156
|
+
this.paddingBlockRootProvingOutput
|
|
157
|
+
] : this.blockRootOrMergeProvingOutputs.getChildren(rootLocation);
|
|
158
|
+
}
|
|
159
|
+
async #getPreviousRollupData({ inputs, proof, verificationKey }) {
|
|
160
|
+
const leafIndex = await getVKIndex(verificationKey.keyAsFields);
|
|
161
|
+
return new PreviousRollupBlockData(inputs, proof, verificationKey.keyAsFields, new MembershipWitness(VK_TREE_HEIGHT, BigInt(leafIndex), await getVKSiblingPath(leafIndex)));
|
|
162
|
+
}
|
|
139
163
|
}
|
|
140
|
-
_EpochProvingState_instances = new WeakSet(), _EpochProvingState_getChildProofsForRoot = function _EpochProvingState_getChildProofsForRoot() {
|
|
141
|
-
const rootLocation = { level: 0, index: 0 };
|
|
142
|
-
// If there's only 1 block, its block root proof will be stored at the root.
|
|
143
|
-
return this.totalNumBlocks === 1
|
|
144
|
-
? [this.blockRootOrMergeProvingOutputs.getNode(rootLocation), this.paddingBlockRootProvingOutput]
|
|
145
|
-
: this.blockRootOrMergeProvingOutputs.getChildren(rootLocation);
|
|
146
|
-
}, _EpochProvingState_getPreviousRollupData = async function _EpochProvingState_getPreviousRollupData({ inputs, proof, verificationKey, }) {
|
|
147
|
-
const leafIndex = await getVKIndex(verificationKey.keyAsFields);
|
|
148
|
-
return new PreviousRollupBlockData(inputs, proof, verificationKey.keyAsFields, new MembershipWitness(VK_TREE_HEIGHT, BigInt(leafIndex), await getVKSiblingPath(leafIndex)));
|
|
149
|
-
};
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2gtcHJvdmluZy1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcmNoZXN0cmF0b3IvZXBvY2gtcHJvdmluZy1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUtBLE9BQU8sRUFPTCxpQkFBaUIsRUFHakIsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLHNCQUFzQixFQUV0Qix1QkFBdUIsRUFDdkIsZ0JBQWdCLEdBRWpCLE1BQU0sMkJBQTJCLENBQUM7QUFFbkMsT0FBTyxFQUF5QixtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUV2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUk3RCxJQUFLLHVCQUtKO0FBTEQsV0FBSyx1QkFBdUI7SUFDMUIsdUdBQXFCLENBQUE7SUFDckIsaUdBQWtCLENBQUE7SUFDbEIseUdBQXNCLENBQUE7SUFDdEIseUdBQXNCLENBQUE7QUFDeEIsQ0FBQyxFQUxJLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFLM0I7QUFJRDs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFlNUIsWUFDa0IsV0FBbUIsRUFDbkIsZ0JBQXdCLEVBQ3hCLGNBQXNCLEVBQzlCLGtCQUFtRCxFQUNuRCxpQkFBMkM7O1FBSm5DLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUM5Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWlDO1FBQ25ELHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFaN0MsMEJBQXFCLEdBQUcsdUJBQXVCLENBQUMscUJBQXFCLENBQUM7UUFFOUUsbUdBQW1HO1FBQ25GLHFCQUFnQixHQUFHLElBQUks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
|
|
@@ -1,2 +1 @@
|
|
|
1
1
|
export { ProvingOrchestrator } from './orchestrator.js';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3JjaGVzdHJhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDIn0=
|