@aztec/prover-node 0.85.0-nightly.20250421 → 0.85.0-nightly.20250423
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prover-node-publisher.d.ts","sourceRoot":"","sources":["../src/prover-node-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjE,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;AAIzD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC/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;AAMnF;;GAEG;AACH,sEAAsE;AACtE,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,EAAE,CAAC;IACpB,UAAU,EAAE,EAAE,CAAC;IACf,
|
|
1
|
+
{"version":3,"file":"prover-node-publisher.d.ts","sourceRoot":"","sources":["../src/prover-node-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjE,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;AAIzD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC/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;AAMnF;;GAEG;AACH,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,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAS;IAC5B,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;IAYI,iBAAiB;IAIxB;;;;;OAKG;IACI,SAAS;IAKhB,wDAAwD;IACjD,OAAO;IAIP,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;KACd,GAAG,OAAO,CAAC,OAAO,CAAC;YA+CN,4BAA4B;YA+C5B,sBAAsB;IAmDpC,OAAO,CAAC,uBAAuB;cA4Bf,kBAAkB;CAGnC"}
|
|
@@ -103,23 +103,16 @@ export class ProverNodePublisher {
|
|
|
103
103
|
if (toBlock > pending) {
|
|
104
104
|
throw new Error(`Cannot submit epoch proof for ${fromBlock}-${toBlock} as pending block is ${pending}`);
|
|
105
105
|
}
|
|
106
|
-
// Check the
|
|
106
|
+
// Check the archive for the immediate block before the epoch
|
|
107
107
|
const blockLog = await this.rollupContract.getBlock(BigInt(fromBlock - 1));
|
|
108
108
|
if (publicInputs.previousArchive.root.toString() !== blockLog.archive) {
|
|
109
109
|
throw new Error(`Previous archive root mismatch: ${publicInputs.previousArchive.root.toString()} !== ${blockLog.archive}`);
|
|
110
110
|
}
|
|
111
|
-
//
|
|
112
|
-
if (blockLog.blockHash !== Fr.ZERO.toString() && publicInputs.previousBlockHash.toString() !== blockLog.blockHash) {
|
|
113
|
-
throw new Error(`Previous block hash mismatch: ${publicInputs.previousBlockHash.toString()} !== ${blockLog.blockHash}`);
|
|
114
|
-
}
|
|
115
|
-
// Check the block hash and archive for the last block in the epoch
|
|
111
|
+
// Check the archive for the last block in the epoch
|
|
116
112
|
const endBlockLog = await this.rollupContract.getBlock(BigInt(toBlock));
|
|
117
113
|
if (publicInputs.endArchive.root.toString() !== endBlockLog.archive) {
|
|
118
114
|
throw new Error(`End archive root mismatch: ${publicInputs.endArchive.root.toString()} !== ${endBlockLog.archive}`);
|
|
119
115
|
}
|
|
120
|
-
if (publicInputs.endBlockHash.toString() !== endBlockLog.blockHash) {
|
|
121
|
-
throw new Error(`End block hash mismatch: ${publicInputs.endBlockHash.toString()} !== ${endBlockLog.blockHash}`);
|
|
122
|
-
}
|
|
123
116
|
// Compare the public inputs computed by the contract with the ones injected
|
|
124
117
|
const rollupPublicInputs = await this.rollupContract.getEpochProofPublicInputs(this.getSubmitEpochProofArgs(args));
|
|
125
118
|
const argsPublicInputs = [
|
|
@@ -176,8 +169,6 @@ export class ProverNodePublisher {
|
|
|
176
169
|
{
|
|
177
170
|
previousArchive: args.publicInputs.previousArchive.root.toString(),
|
|
178
171
|
endArchive: args.publicInputs.endArchive.root.toString(),
|
|
179
|
-
previousBlockHash: args.publicInputs.previousBlockHash.toString(),
|
|
180
|
-
endBlockHash: args.publicInputs.endBlockHash.toString(),
|
|
181
172
|
endTimestamp: args.publicInputs.endTimestamp.toBigInt(),
|
|
182
173
|
outHash: args.publicInputs.outHash.toString(),
|
|
183
174
|
proverId: EthAddress.fromField(args.publicInputs.proverId).toString()
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/prover-node",
|
|
3
|
-
"version": "0.85.0-nightly.
|
|
3
|
+
"version": "0.85.0-nightly.20250423",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -51,25 +51,25 @@
|
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@aztec/archiver": "0.85.0-nightly.
|
|
55
|
-
"@aztec/bb-prover": "0.85.0-nightly.
|
|
56
|
-
"@aztec/blob-sink": "0.85.0-nightly.
|
|
57
|
-
"@aztec/constants": "0.85.0-nightly.
|
|
58
|
-
"@aztec/epoch-cache": "0.85.0-nightly.
|
|
59
|
-
"@aztec/ethereum": "0.85.0-nightly.
|
|
60
|
-
"@aztec/foundation": "0.85.0-nightly.
|
|
61
|
-
"@aztec/kv-store": "0.85.0-nightly.
|
|
62
|
-
"@aztec/l1-artifacts": "0.85.0-nightly.
|
|
63
|
-
"@aztec/node-lib": "0.85.0-nightly.
|
|
64
|
-
"@aztec/noir-protocol-circuits-types": "0.85.0-nightly.
|
|
65
|
-
"@aztec/p2p": "0.85.0-nightly.
|
|
66
|
-
"@aztec/protocol-contracts": "0.85.0-nightly.
|
|
67
|
-
"@aztec/prover-client": "0.85.0-nightly.
|
|
68
|
-
"@aztec/sequencer-client": "0.85.0-nightly.
|
|
69
|
-
"@aztec/simulator": "0.85.0-nightly.
|
|
70
|
-
"@aztec/stdlib": "0.85.0-nightly.
|
|
71
|
-
"@aztec/telemetry-client": "0.85.0-nightly.
|
|
72
|
-
"@aztec/world-state": "0.85.0-nightly.
|
|
54
|
+
"@aztec/archiver": "0.85.0-nightly.20250423",
|
|
55
|
+
"@aztec/bb-prover": "0.85.0-nightly.20250423",
|
|
56
|
+
"@aztec/blob-sink": "0.85.0-nightly.20250423",
|
|
57
|
+
"@aztec/constants": "0.85.0-nightly.20250423",
|
|
58
|
+
"@aztec/epoch-cache": "0.85.0-nightly.20250423",
|
|
59
|
+
"@aztec/ethereum": "0.85.0-nightly.20250423",
|
|
60
|
+
"@aztec/foundation": "0.85.0-nightly.20250423",
|
|
61
|
+
"@aztec/kv-store": "0.85.0-nightly.20250423",
|
|
62
|
+
"@aztec/l1-artifacts": "0.85.0-nightly.20250423",
|
|
63
|
+
"@aztec/node-lib": "0.85.0-nightly.20250423",
|
|
64
|
+
"@aztec/noir-protocol-circuits-types": "0.85.0-nightly.20250423",
|
|
65
|
+
"@aztec/p2p": "0.85.0-nightly.20250423",
|
|
66
|
+
"@aztec/protocol-contracts": "0.85.0-nightly.20250423",
|
|
67
|
+
"@aztec/prover-client": "0.85.0-nightly.20250423",
|
|
68
|
+
"@aztec/sequencer-client": "0.85.0-nightly.20250423",
|
|
69
|
+
"@aztec/simulator": "0.85.0-nightly.20250423",
|
|
70
|
+
"@aztec/stdlib": "0.85.0-nightly.20250423",
|
|
71
|
+
"@aztec/telemetry-client": "0.85.0-nightly.20250423",
|
|
72
|
+
"@aztec/world-state": "0.85.0-nightly.20250423",
|
|
73
73
|
"source-map-support": "^0.5.21",
|
|
74
74
|
"tslib": "^2.4.0",
|
|
75
75
|
"viem": "2.23.7"
|
|
@@ -27,8 +27,6 @@ export type L1SubmitEpochProofArgs = {
|
|
|
27
27
|
epochSize: number;
|
|
28
28
|
previousArchive: Fr;
|
|
29
29
|
endArchive: Fr;
|
|
30
|
-
previousBlockHash: Fr;
|
|
31
|
-
endBlockHash: Fr;
|
|
32
30
|
endTimestamp: Fr;
|
|
33
31
|
outHash: Fr;
|
|
34
32
|
proverId: Fr;
|
|
@@ -162,30 +160,21 @@ export class ProverNodePublisher {
|
|
|
162
160
|
throw new Error(`Cannot submit epoch proof for ${fromBlock}-${toBlock} as pending block is ${pending}`);
|
|
163
161
|
}
|
|
164
162
|
|
|
165
|
-
// Check the
|
|
163
|
+
// Check the archive for the immediate block before the epoch
|
|
166
164
|
const blockLog = await this.rollupContract.getBlock(BigInt(fromBlock - 1));
|
|
167
165
|
if (publicInputs.previousArchive.root.toString() !== blockLog.archive) {
|
|
168
166
|
throw new Error(
|
|
169
167
|
`Previous archive root mismatch: ${publicInputs.previousArchive.root.toString()} !== ${blockLog.archive}`,
|
|
170
168
|
);
|
|
171
169
|
}
|
|
172
|
-
// TODO: Remove zero check once we inject the proper zero blockhash
|
|
173
|
-
if (blockLog.blockHash !== Fr.ZERO.toString() && publicInputs.previousBlockHash.toString() !== blockLog.blockHash) {
|
|
174
|
-
throw new Error(
|
|
175
|
-
`Previous block hash mismatch: ${publicInputs.previousBlockHash.toString()} !== ${blockLog.blockHash}`,
|
|
176
|
-
);
|
|
177
|
-
}
|
|
178
170
|
|
|
179
|
-
// Check the
|
|
171
|
+
// Check the archive for the last block in the epoch
|
|
180
172
|
const endBlockLog = await this.rollupContract.getBlock(BigInt(toBlock));
|
|
181
173
|
if (publicInputs.endArchive.root.toString() !== endBlockLog.archive) {
|
|
182
174
|
throw new Error(
|
|
183
175
|
`End archive root mismatch: ${publicInputs.endArchive.root.toString()} !== ${endBlockLog.archive}`,
|
|
184
176
|
);
|
|
185
177
|
}
|
|
186
|
-
if (publicInputs.endBlockHash.toString() !== endBlockLog.blockHash) {
|
|
187
|
-
throw new Error(`End block hash mismatch: ${publicInputs.endBlockHash.toString()} !== ${endBlockLog.blockHash}`);
|
|
188
|
-
}
|
|
189
178
|
|
|
190
179
|
// Compare the public inputs computed by the contract with the ones injected
|
|
191
180
|
const rollupPublicInputs = await this.rollupContract.getEpochProofPublicInputs(this.getSubmitEpochProofArgs(args));
|
|
@@ -262,8 +251,6 @@ export class ProverNodePublisher {
|
|
|
262
251
|
{
|
|
263
252
|
previousArchive: args.publicInputs.previousArchive.root.toString(),
|
|
264
253
|
endArchive: args.publicInputs.endArchive.root.toString(),
|
|
265
|
-
previousBlockHash: args.publicInputs.previousBlockHash.toString(),
|
|
266
|
-
endBlockHash: args.publicInputs.endBlockHash.toString(),
|
|
267
254
|
endTimestamp: args.publicInputs.endTimestamp.toBigInt(),
|
|
268
255
|
outHash: args.publicInputs.outHash.toString(),
|
|
269
256
|
proverId: EthAddress.fromField(args.publicInputs.proverId).toString(),
|