@aztec/prover-node 3.0.0-nightly.20251026 → 3.0.0-nightly.20251031
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/factory.d.ts.map +1 -1
- package/dest/factory.js +1 -1
- package/dest/job/epoch-proving-job.js +2 -2
- package/dest/prover-node-publisher.d.ts +1 -1
- package/dest/prover-node-publisher.d.ts.map +1 -1
- package/dest/prover-node-publisher.js +3 -3
- package/package.json +22 -22
- package/src/factory.ts +1 -0
- package/src/job/epoch-proving-job.ts +2 -2
- package/src/prover-node-publisher.ts +4 -3
package/dest/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,SAAS,EAAyD,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,cAAc,EAAkD,MAAM,sBAAsB,CAAC;AAM3G,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAa,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAK9F,OAAO,EAAE,KAAK,gBAAgB,EAA2B,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,gDAAgD;AAChD,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,gBAAgB,GAAG,eAAe,GAAG,cAAc,EAC/D,IAAI,GAAE,cAAmB,EACzB,OAAO,GAAE;IACP,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACvC,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,SAAS,EAAyD,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,cAAc,EAAkD,MAAM,sBAAsB,CAAC;AAM3G,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAa,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAK9F,OAAO,EAAE,KAAK,gBAAgB,EAA2B,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,gDAAgD;AAChD,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,gBAAgB,GAAG,eAAe,GAAG,cAAc,EAC/D,IAAI,GAAE,cAAmB,EACzB,OAAO,GAAE;IACP,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACvC,uBAyKP"}
|
package/dest/factory.js
CHANGED
|
@@ -113,7 +113,7 @@ import { ProverPublisherFactory } from './prover-publisher-factory.js';
|
|
|
113
113
|
});
|
|
114
114
|
await p2pClient.start();
|
|
115
115
|
const proverNodeConfig = {
|
|
116
|
-
...pick(config, 'proverNodeMaxPendingJobs', 'proverNodeMaxParallelBlocksPerEpoch', 'proverNodePollingIntervalMs', 'proverNodeEpochProvingDelayMs', 'txGatheringMaxParallelRequests', 'txGatheringIntervalMs', 'txGatheringTimeoutMs', 'proverNodeFailedEpochStore', 'dataDirectory', 'l1ChainId', 'rollupVersion')
|
|
116
|
+
...pick(config, 'proverNodeMaxPendingJobs', 'proverNodeMaxParallelBlocksPerEpoch', 'proverNodePollingIntervalMs', 'proverNodeEpochProvingDelayMs', 'txGatheringMaxParallelRequests', 'txGatheringIntervalMs', 'txGatheringTimeoutMs', 'proverNodeFailedEpochStore', 'proverNodeDisableProofPublish', 'dataDirectory', 'l1ChainId', 'rollupVersion')
|
|
117
117
|
};
|
|
118
118
|
const epochMonitor = await EpochMonitor.create(archiver, {
|
|
119
119
|
pollingIntervalMs: config.proverNodePollingIntervalMs,
|
|
@@ -111,13 +111,13 @@ import { validateEpochProvingJobData } from './epoch-proving-job-data.js';
|
|
|
111
111
|
const { promise, resolve } = promiseWithResolvers();
|
|
112
112
|
this.runPromise = promise;
|
|
113
113
|
try {
|
|
114
|
-
const blobFieldsPerCheckpoint = this.blocks.map((block)=>block.
|
|
114
|
+
const blobFieldsPerCheckpoint = this.blocks.map((block)=>block.getCheckpointBlobFields());
|
|
115
115
|
const finalBlobBatchingChallenges = await buildFinalBlobChallenges(blobFieldsPerCheckpoint);
|
|
116
116
|
// TODO(#17027): Enable multiple blocks per checkpoint.
|
|
117
117
|
// Total number of checkpoints equals number of blocks because we currently build a checkpoint with only one block.
|
|
118
118
|
const totalNumCheckpoints = epochSizeBlocks;
|
|
119
119
|
this.prover.startNewEpoch(epochNumber, totalNumCheckpoints, finalBlobBatchingChallenges);
|
|
120
|
-
await this.prover.
|
|
120
|
+
await this.prover.startChonkVerifierCircuits(Array.from(this.txs.values()));
|
|
121
121
|
await asyncPool(this.config.parallelBlockLimit ?? 32, this.blocks, async (block)=>{
|
|
122
122
|
this.checkState();
|
|
123
123
|
const globalVariables = block.header.globalVariables;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { BatchedBlob } from '@aztec/blob-lib';
|
|
2
2
|
import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
|
|
3
3
|
import type { L1TxUtils, RollupContract, ViemCommitteeAttestation } from '@aztec/ethereum';
|
|
4
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prover-node-publisher.d.ts","sourceRoot":"","sources":["../src/prover-node-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"prover-node-publisher.d.ts","sourceRoot":"","sources":["../src/prover-node-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAG3F,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAGzD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE/E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEjF,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAOnF,sEAAsE;AACtE,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,EAAE,CAAC;IACpB,UAAU,EAAE,EAAE,CAAC;IACf,YAAY,EAAE,EAAE,CAAC;IACjB,OAAO,EAAE,EAAE,CAAC;IACZ,QAAQ,EAAE,EAAE,CAAC;IACb,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,wBAAwB,CAAC,CAAC;IAC3D,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAA6B;IAE5C,SAAS,CAAC,GAAG,yCAA+C;IAE5D,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAEzC,SAAgB,SAAS,EAAE,SAAS,CAAC;gBAGnC,MAAM,EAAE,cAAc,GAAG,eAAe,EACxC,IAAI,EAAE;QACJ,cAAc,EAAE,cAAc,CAAC;QAC/B,SAAS,EAAE,SAAS,CAAC;QACrB,SAAS,CAAC,EAAE,eAAe,CAAC;KAC7B;IAUI,iBAAiB;IAIxB;;;;;OAKG;IACI,SAAS;IAKhB,wDAAwD;IACjD,OAAO;IAKP,gBAAgB;IAIV,gBAAgB,CAAC,IAAI,EAAE;QAClC,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,sBAAsB,CAAC;QACrC,KAAK,EAAE,KAAK,CAAC;QACb,iBAAiB,EAAE,WAAW,CAAC;QAC/B,YAAY,EAAE,wBAAwB,EAAE,CAAC;KAC1C,GAAG,OAAO,CAAC,OAAO,CAAC;YAkDN,4BAA4B;YA2D5B,sBAAsB;IAyCpC,OAAO,CAAC,6BAA6B;IAyBrC,OAAO,CAAC,uBAAuB;CAuBhC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { FinalBlobAccumulator } from '@aztec/blob-lib';
|
|
2
1
|
import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
|
|
3
2
|
import { makeTuple } from '@aztec/foundation/array';
|
|
4
3
|
import { areArraysEqual } from '@aztec/foundation/collection';
|
|
@@ -113,8 +112,9 @@ export class ProverNodePublisher {
|
|
|
113
112
|
throw new Error(`End archive root mismatch: ${publicInputs.endArchiveRoot.toString()} !== ${endBlockLog.archive}`);
|
|
114
113
|
}
|
|
115
114
|
// Check the batched blob inputs from the root rollup against the batched blob computed in ts
|
|
116
|
-
|
|
117
|
-
|
|
115
|
+
const finalBlobAccumulator = batchedBlobInputs.toFinalBlobAccumulator();
|
|
116
|
+
if (!publicInputs.blobPublicInputs.equals(finalBlobAccumulator)) {
|
|
117
|
+
throw new Error(`Batched blob mismatch: ${inspect(publicInputs.blobPublicInputs)} !== ${inspect(finalBlobAccumulator)}`);
|
|
118
118
|
}
|
|
119
119
|
// Compare the public inputs computed by the contract with the ones injected
|
|
120
120
|
const rollupPublicInputs = await this.rollupContract.getEpochProofPublicInputs(this.getEpochProofPublicInputsArgs(args));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/prover-node",
|
|
3
|
-
"version": "3.0.0-nightly.
|
|
3
|
+
"version": "3.0.0-nightly.20251031",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -56,27 +56,27 @@
|
|
|
56
56
|
]
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@aztec/archiver": "3.0.0-nightly.
|
|
60
|
-
"@aztec/bb-prover": "3.0.0-nightly.
|
|
61
|
-
"@aztec/blob-lib": "3.0.0-nightly.
|
|
62
|
-
"@aztec/blob-sink": "3.0.0-nightly.
|
|
63
|
-
"@aztec/constants": "3.0.0-nightly.
|
|
64
|
-
"@aztec/epoch-cache": "3.0.0-nightly.
|
|
65
|
-
"@aztec/ethereum": "3.0.0-nightly.
|
|
66
|
-
"@aztec/foundation": "3.0.0-nightly.
|
|
67
|
-
"@aztec/kv-store": "3.0.0-nightly.
|
|
68
|
-
"@aztec/l1-artifacts": "3.0.0-nightly.
|
|
69
|
-
"@aztec/node-keystore": "3.0.0-nightly.
|
|
70
|
-
"@aztec/node-lib": "3.0.0-nightly.
|
|
71
|
-
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.
|
|
72
|
-
"@aztec/p2p": "3.0.0-nightly.
|
|
73
|
-
"@aztec/protocol-contracts": "3.0.0-nightly.
|
|
74
|
-
"@aztec/prover-client": "3.0.0-nightly.
|
|
75
|
-
"@aztec/sequencer-client": "3.0.0-nightly.
|
|
76
|
-
"@aztec/simulator": "3.0.0-nightly.
|
|
77
|
-
"@aztec/stdlib": "3.0.0-nightly.
|
|
78
|
-
"@aztec/telemetry-client": "3.0.0-nightly.
|
|
79
|
-
"@aztec/world-state": "3.0.0-nightly.
|
|
59
|
+
"@aztec/archiver": "3.0.0-nightly.20251031",
|
|
60
|
+
"@aztec/bb-prover": "3.0.0-nightly.20251031",
|
|
61
|
+
"@aztec/blob-lib": "3.0.0-nightly.20251031",
|
|
62
|
+
"@aztec/blob-sink": "3.0.0-nightly.20251031",
|
|
63
|
+
"@aztec/constants": "3.0.0-nightly.20251031",
|
|
64
|
+
"@aztec/epoch-cache": "3.0.0-nightly.20251031",
|
|
65
|
+
"@aztec/ethereum": "3.0.0-nightly.20251031",
|
|
66
|
+
"@aztec/foundation": "3.0.0-nightly.20251031",
|
|
67
|
+
"@aztec/kv-store": "3.0.0-nightly.20251031",
|
|
68
|
+
"@aztec/l1-artifacts": "3.0.0-nightly.20251031",
|
|
69
|
+
"@aztec/node-keystore": "3.0.0-nightly.20251031",
|
|
70
|
+
"@aztec/node-lib": "3.0.0-nightly.20251031",
|
|
71
|
+
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.20251031",
|
|
72
|
+
"@aztec/p2p": "3.0.0-nightly.20251031",
|
|
73
|
+
"@aztec/protocol-contracts": "3.0.0-nightly.20251031",
|
|
74
|
+
"@aztec/prover-client": "3.0.0-nightly.20251031",
|
|
75
|
+
"@aztec/sequencer-client": "3.0.0-nightly.20251031",
|
|
76
|
+
"@aztec/simulator": "3.0.0-nightly.20251031",
|
|
77
|
+
"@aztec/stdlib": "3.0.0-nightly.20251031",
|
|
78
|
+
"@aztec/telemetry-client": "3.0.0-nightly.20251031",
|
|
79
|
+
"@aztec/world-state": "3.0.0-nightly.20251031",
|
|
80
80
|
"source-map-support": "^0.5.21",
|
|
81
81
|
"tslib": "^2.4.0",
|
|
82
82
|
"viem": "npm:@spalladino/viem@2.38.2-eip7594.0"
|
package/src/factory.ts
CHANGED
|
@@ -132,7 +132,7 @@ export class EpochProvingJob implements Traceable {
|
|
|
132
132
|
this.runPromise = promise;
|
|
133
133
|
|
|
134
134
|
try {
|
|
135
|
-
const blobFieldsPerCheckpoint = this.blocks.map(block => block.
|
|
135
|
+
const blobFieldsPerCheckpoint = this.blocks.map(block => block.getCheckpointBlobFields());
|
|
136
136
|
const finalBlobBatchingChallenges = await buildFinalBlobChallenges(blobFieldsPerCheckpoint);
|
|
137
137
|
|
|
138
138
|
// TODO(#17027): Enable multiple blocks per checkpoint.
|
|
@@ -140,7 +140,7 @@ export class EpochProvingJob implements Traceable {
|
|
|
140
140
|
const totalNumCheckpoints = epochSizeBlocks;
|
|
141
141
|
|
|
142
142
|
this.prover.startNewEpoch(epochNumber, totalNumCheckpoints, finalBlobBatchingChallenges);
|
|
143
|
-
await this.prover.
|
|
143
|
+
await this.prover.startChonkVerifierCircuits(Array.from(this.txs.values()));
|
|
144
144
|
|
|
145
145
|
await asyncPool(this.config.parallelBlockLimit ?? 32, this.blocks, async block => {
|
|
146
146
|
this.checkState();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { BatchedBlob } from '@aztec/blob-lib';
|
|
2
2
|
import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
|
|
3
3
|
import type { L1TxUtils, RollupContract, ViemCommitteeAttestation } from '@aztec/ethereum';
|
|
4
4
|
import { makeTuple } from '@aztec/foundation/array';
|
|
@@ -180,9 +180,10 @@ export class ProverNodePublisher {
|
|
|
180
180
|
}
|
|
181
181
|
|
|
182
182
|
// Check the batched blob inputs from the root rollup against the batched blob computed in ts
|
|
183
|
-
|
|
183
|
+
const finalBlobAccumulator = batchedBlobInputs.toFinalBlobAccumulator();
|
|
184
|
+
if (!publicInputs.blobPublicInputs.equals(finalBlobAccumulator)) {
|
|
184
185
|
throw new Error(
|
|
185
|
-
`Batched blob mismatch: ${inspect(publicInputs.blobPublicInputs)} !== ${inspect(
|
|
186
|
+
`Batched blob mismatch: ${inspect(publicInputs.blobPublicInputs)} !== ${inspect(finalBlobAccumulator)}`,
|
|
186
187
|
);
|
|
187
188
|
}
|
|
188
189
|
|