@aztec/prover-node 0.72.1 → 0.74.0
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/bond/escrow-contract.d.ts +2 -5
- package/dest/bond/escrow-contract.d.ts.map +1 -1
- package/dest/bond/escrow-contract.js +1 -1
- package/dest/bond/factory.d.ts +3 -6
- package/dest/bond/factory.d.ts.map +1 -1
- package/dest/bond/factory.js +2 -4
- package/dest/bond/token-contract.d.ts +2 -5
- package/dest/bond/token-contract.d.ts.map +1 -1
- package/dest/bond/token-contract.js +1 -1
- package/dest/factory.d.ts +4 -2
- package/dest/factory.d.ts.map +1 -1
- package/dest/factory.js +13 -9
- package/dest/index.d.ts +3 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +4 -3
- package/dest/job/epoch-proving-job.d.ts +2 -2
- package/dest/job/epoch-proving-job.d.ts.map +1 -1
- package/dest/job/epoch-proving-job.js +14 -8
- package/dest/metrics.d.ts +13 -1
- package/dest/metrics.d.ts.map +1 -1
- package/dest/metrics.js +74 -2
- package/dest/monitors/claims-monitor.d.ts +2 -2
- package/dest/monitors/claims-monitor.d.ts.map +1 -1
- package/dest/monitors/claims-monitor.js +1 -1
- package/dest/prover-node-publisher.d.ts +67 -0
- package/dest/prover-node-publisher.d.ts.map +1 -0
- package/dest/prover-node-publisher.js +185 -0
- package/dest/prover-node.d.ts +3 -3
- package/dest/prover-node.d.ts.map +1 -1
- package/dest/prover-node.js +1 -1
- package/dest/test/index.d.ts +2 -2
- package/dest/test/index.d.ts.map +1 -1
- package/package.json +18 -18
- package/src/bond/escrow-contract.ts +2 -15
- package/src/bond/factory.ts +4 -24
- package/src/bond/token-contract.ts +2 -15
- package/src/factory.ts +16 -9
- package/src/index.ts +3 -2
- package/src/job/epoch-proving-job.ts +15 -9
- package/src/metrics.ts +107 -1
- package/src/monitors/claims-monitor.ts +3 -2
- package/src/prover-node-publisher.ts +281 -0
- package/src/prover-node.ts +2 -2
- package/src/test/index.ts +2 -2
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/circuits.js';
|
|
2
|
-
import { type
|
|
2
|
+
import { type L1Clients } from '@aztec/ethereum';
|
|
3
3
|
export declare class EscrowContract {
|
|
4
4
|
private readonly client;
|
|
5
5
|
private escrow;
|
|
6
|
-
constructor(client:
|
|
7
|
-
...WalletRpcSchema,
|
|
8
|
-
...PublicRpcSchema
|
|
9
|
-
], PublicActions<HttpTransport, Chain> & WalletActions<Chain, PrivateKeyAccount>>, address: EthAddress);
|
|
6
|
+
constructor(client: L1Clients['walletClient'], address: EthAddress);
|
|
10
7
|
/** Returns the deposit of the publisher sender address on the proof commitment escrow contract. */
|
|
11
8
|
getProverDeposit(): Promise<bigint>;
|
|
12
9
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escrow-contract.d.ts","sourceRoot":"","sources":["../../src/bond/escrow-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"escrow-contract.d.ts","sourceRoot":"","sources":["../../src/bond/escrow-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAYjD,qBAAa,cAAc;IAMb,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,OAAO,CAAC,MAAM,CAGZ;gBAE2B,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,UAAU;IAInF,mGAAmG;IACtF,gBAAgB;IAI7B;;;OAGG;IACU,iBAAiB,CAAC,MAAM,EAAE,MAAM;IAK7C,iDAAiD;IAC1C,gBAAgB,IAAI,UAAU;IAI9B,gBAAgB,IAAI,UAAU;IAIxB,eAAe,IAAI,OAAO,CAAC,UAAU,CAAC;CAGpD"}
|
|
@@ -29,4 +29,4 @@ export class EscrowContract {
|
|
|
29
29
|
return EthAddress.fromString(await this.escrow.read.token());
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNjcm93LWNvbnRyYWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2JvbmQvZXNjcm93LWNvbnRyYWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRSxPQUFPLEVBTUwsV0FBVyxHQUNaLE1BQU0sTUFBTSxDQUFDO0FBRWQsTUFBTSxPQUFPLGNBQWM7SUFNekIsWUFBNkIsTUFBaUMsRUFBRSxPQUFtQjtRQUF0RCxXQUFNLEdBQU4sTUFBTSxDQUEyQjtRQUM1RCxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVELG1HQUFtRztJQUM1RixLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8sTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFjO1FBQzNDLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN2RCxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxpREFBaUQ7SUFDMUMsZ0JBQWdCO1FBQ3JCLE9BQU8sVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE9BQU8sVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRiJ9
|
package/dest/bond/factory.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import { type
|
|
1
|
+
import { type EthAddress } from '@aztec/circuits.js';
|
|
2
|
+
import { type L1Clients } from '@aztec/ethereum';
|
|
3
3
|
import { BondManager } from './bond-manager.js';
|
|
4
4
|
import { type ProverBondManagerConfig } from './config.js';
|
|
5
|
-
export declare function createBondManager(
|
|
6
|
-
...WalletRpcSchema,
|
|
7
|
-
...PublicRpcSchema
|
|
8
|
-
], PublicActions<HttpTransport, Chain> & WalletActions<Chain, PrivateKeyAccount>>, overrides?: Partial<ProverBondManagerConfig>): Promise<BondManager>;
|
|
5
|
+
export declare function createBondManager(escrowContractAddress: EthAddress, client: L1Clients['walletClient'], overrides?: Partial<ProverBondManagerConfig>): Promise<BondManager>;
|
|
9
6
|
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/bond/factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/bond/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,uBAAuB,EAAqC,MAAM,aAAa,CAAC;AAI9F,wBAAsB,iBAAiB,CACrC,qBAAqB,EAAE,UAAU,EACjC,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EACjC,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,wBAejD"}
|
package/dest/bond/factory.js
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import { EthAddress } from '@aztec/circuits.js';
|
|
2
1
|
import { compact } from '@aztec/foundation/collection';
|
|
3
2
|
import { BondManager } from './bond-manager.js';
|
|
4
3
|
import { getProverBondManagerConfigFromEnv } from './config.js';
|
|
5
4
|
import { EscrowContract } from './escrow-contract.js';
|
|
6
5
|
import { TokenContract } from './token-contract.js';
|
|
7
|
-
export async function createBondManager(
|
|
6
|
+
export async function createBondManager(escrowContractAddress, client, overrides = {}) {
|
|
8
7
|
const config = { ...getProverBondManagerConfigFromEnv(), ...compact(overrides) };
|
|
9
8
|
const { proverMinimumEscrowAmount: minimumStake, proverTargetEscrowAmount: maybeTargetStake } = config;
|
|
10
9
|
const targetStake = maybeTargetStake ?? minimumStake * 2n;
|
|
11
|
-
const escrowContractAddress = EthAddress.fromString(await rollupContract.read.PROOF_COMMITMENT_ESCROW());
|
|
12
10
|
const escrow = new EscrowContract(client, escrowContractAddress);
|
|
13
11
|
const tokenContractAddress = await escrow.getTokenAddress();
|
|
14
12
|
const token = new TokenContract(client, tokenContractAddress);
|
|
@@ -16,4 +14,4 @@ export async function createBondManager(rollupContract, client, overrides = {})
|
|
|
16
14
|
await token.ensureBalance(targetStake * 2n);
|
|
17
15
|
return new BondManager(token, escrow, minimumStake, targetStake);
|
|
18
16
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ib25kL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQWdDLGlDQUFpQyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsTUFBTSxDQUFDLEtBQUssVUFBVSxpQkFBaUIsQ0FDckMscUJBQWlDLEVBQ2pDLE1BQWlDLEVBQ2pDLFlBQThDLEVBQUU7SUFFaEQsTUFBTSxNQUFNLEdBQUcsRUFBRSxHQUFHLGlDQUFpQyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztJQUNqRixNQUFNLEVBQUUseUJBQXlCLEVBQUUsWUFBWSxFQUFFLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQ3ZHLE1BQU0sV0FBVyxHQUFHLGdCQUFnQixJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7SUFFMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFFakUsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM1RCxNQUFNLEtBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztJQUU5RCx5R0FBeUc7SUFDekcsTUFBTSxLQUFLLENBQUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUU1QyxPQUFPLElBQUksV0FBVyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQ25FLENBQUMifQ==
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/circuits.js';
|
|
2
|
-
import { type
|
|
2
|
+
import { type L1Clients } from '@aztec/ethereum';
|
|
3
3
|
export declare class TokenContract {
|
|
4
4
|
private readonly client;
|
|
5
5
|
private token;
|
|
6
6
|
private logger;
|
|
7
|
-
constructor(client:
|
|
8
|
-
...WalletRpcSchema,
|
|
9
|
-
...PublicRpcSchema
|
|
10
|
-
], PublicActions<HttpTransport, Chain> & WalletActions<Chain, PrivateKeyAccount>>, address: EthAddress);
|
|
7
|
+
constructor(client: L1Clients['walletClient'], address: EthAddress);
|
|
11
8
|
/**
|
|
12
9
|
* Ensures the allowed address has near-maximum allowance, or sets it otherwise.
|
|
13
10
|
* Returns once allowance tx is mined successfully.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-contract.d.ts","sourceRoot":"","sources":["../../src/bond/token-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"token-contract.d.ts","sourceRoot":"","sources":["../../src/bond/token-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAgBjD,qBAAa,aAAa;IAIZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,OAAO,CAAC,KAAK,CAAiG;IAC9G,OAAO,CAAC,MAAM,CAA8C;gBAE/B,MAAM,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,UAAU;IAInF;;;;OAIG;IACU,eAAe,CAAC,OAAO,EAAE,UAAU;IAShD;;;;;OAKG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM;IAiBzC,kCAAkC;IAC3B,gBAAgB,IAAI,UAAU;IAIrC,yCAAyC;IAC5B,UAAU;CAGxB"}
|
|
@@ -55,4 +55,4 @@ export class TokenContract {
|
|
|
55
55
|
return await this.token.read.balanceOf([this.getSenderAddress().toString()]);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tY29udHJhY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYm9uZC90b2tlbi1jb250cmFjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFOUQsT0FBTyxFQU1MLFdBQVcsR0FDWixNQUFNLE1BQU0sQ0FBQztBQUVkLE1BQU0sYUFBYSxHQUFHLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUN4QyxNQUFNLGFBQWEsR0FBRyxFQUFFLElBQUksSUFBSSxDQUFDO0FBRWpDLE1BQU0sT0FBTyxhQUFhO0lBSXhCLFlBQTZCLE1BQWlDLEVBQUUsT0FBbUI7UUFBdEQsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFGdEQsV0FBTSxHQUFHLFlBQVksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBRzFELElBQUksQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQW1CO1FBQzlDLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1RyxJQUFJLFNBQVMsR0FBRyxhQUFhLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsTUFB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
|
package/dest/factory.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { type Archiver } from '@aztec/archiver';
|
|
2
2
|
import { type BlobSinkClientInterface } from '@aztec/blob-sink/client';
|
|
3
3
|
import { type ProverCoordination, type ProvingJobBroker } from '@aztec/circuit-types';
|
|
4
|
+
import { L1TxUtils } from '@aztec/ethereum';
|
|
4
5
|
import { type Logger } from '@aztec/foundation/log';
|
|
5
6
|
import { type DataStoreConfig } from '@aztec/kv-store/config';
|
|
6
|
-
import { L1Publisher } from '@aztec/sequencer-client';
|
|
7
7
|
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
8
8
|
import { type ProverNodeConfig } from './config.js';
|
|
9
|
+
import { ProverNodePublisher } from './prover-node-publisher.js';
|
|
9
10
|
import { ProverNode } from './prover-node.js';
|
|
10
11
|
/** Creates a new prover node given a config. */
|
|
11
12
|
export declare function createProverNode(config: ProverNodeConfig & DataStoreConfig, deps?: {
|
|
@@ -13,8 +14,9 @@ export declare function createProverNode(config: ProverNodeConfig & DataStoreCon
|
|
|
13
14
|
log?: Logger;
|
|
14
15
|
aztecNodeTxProvider?: ProverCoordination;
|
|
15
16
|
archiver?: Archiver;
|
|
16
|
-
publisher?:
|
|
17
|
+
publisher?: ProverNodePublisher;
|
|
17
18
|
blobSinkClient?: BlobSinkClientInterface;
|
|
18
19
|
broker?: ProvingJobBroker;
|
|
20
|
+
l1TxUtils?: L1TxUtils;
|
|
19
21
|
}): Promise<ProverNode>;
|
|
20
22
|
//# sourceMappingURL=factory.d.ts.map
|
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;AAChE,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEtF,OAAO,EAAE,SAAS,EAAwD,MAAM,iBAAiB,CAAC;AAGlG,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAMnF,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,aAAa,CAAC;AAI9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAA0B,MAAM,kBAAkB,CAAC;AAKtE,gDAAgD;AAChD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,gBAAgB,GAAG,eAAe,EAC1C,IAAI,GAAE;IACJ,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;CAClB,uBAsEP"}
|
package/dest/factory.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { createArchiver } from '@aztec/archiver';
|
|
2
2
|
import { createBlobSinkClient } from '@aztec/blob-sink/client';
|
|
3
3
|
import { EpochCache } from '@aztec/epoch-cache';
|
|
4
|
-
import { createEthereumChain } from '@aztec/ethereum';
|
|
4
|
+
import { L1TxUtils, RollupContract, createEthereumChain, createL1Clients } from '@aztec/ethereum';
|
|
5
5
|
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
6
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
6
7
|
import { createLogger } from '@aztec/foundation/log';
|
|
7
8
|
import { RollupAbi } from '@aztec/l1-artifacts';
|
|
8
9
|
import { createProverClient } from '@aztec/prover-client';
|
|
9
10
|
import { createAndStartProvingBroker } from '@aztec/prover-client/broker';
|
|
10
|
-
import { L1Publisher } from '@aztec/sequencer-client';
|
|
11
11
|
import { getTelemetryClient } from '@aztec/telemetry-client';
|
|
12
12
|
import { createWorldStateSynchronizer } from '@aztec/world-state';
|
|
13
13
|
import { createPublicClient, getAddress, getContract, http } from 'viem';
|
|
@@ -15,6 +15,7 @@ import { createBondManager } from './bond/factory.js';
|
|
|
15
15
|
import { ClaimsMonitor } from './monitors/claims-monitor.js';
|
|
16
16
|
import { EpochMonitor } from './monitors/epoch-monitor.js';
|
|
17
17
|
import { createProverCoordination } from './prover-coordination/factory.js';
|
|
18
|
+
import { ProverNodePublisher } from './prover-node-publisher.js';
|
|
18
19
|
import { ProverNode } from './prover-node.js';
|
|
19
20
|
import { HttpQuoteProvider } from './quote-provider/http.js';
|
|
20
21
|
import { SimpleQuoteProvider } from './quote-provider/simple.js';
|
|
@@ -22,7 +23,7 @@ import { QuoteSigner } from './quote-signer.js';
|
|
|
22
23
|
/** Creates a new prover node given a config. */
|
|
23
24
|
export async function createProverNode(config, deps = {}) {
|
|
24
25
|
const telemetry = deps.telemetry ?? getTelemetryClient();
|
|
25
|
-
const blobSinkClient = deps.blobSinkClient ?? createBlobSinkClient(config
|
|
26
|
+
const blobSinkClient = deps.blobSinkClient ?? createBlobSinkClient(config);
|
|
26
27
|
const log = deps.log ?? createLogger('prover-node');
|
|
27
28
|
const archiver = deps.archiver ?? (await createArchiver(config, blobSinkClient, { blockUntilSync: true }, telemetry));
|
|
28
29
|
log.verbose(`Created archiver and synced to block ${await archiver.getBlockNumber()}`);
|
|
@@ -31,8 +32,12 @@ export async function createProverNode(config, deps = {}) {
|
|
|
31
32
|
await worldStateSynchronizer.start();
|
|
32
33
|
const broker = deps.broker ?? (await createAndStartProvingBroker(config, telemetry));
|
|
33
34
|
const prover = await createProverClient(config, worldStateSynchronizer, broker, telemetry);
|
|
34
|
-
|
|
35
|
-
const
|
|
35
|
+
const { l1RpcUrl: rpcUrl, l1ChainId: chainId, publisherPrivateKey } = config;
|
|
36
|
+
const chain = createEthereumChain(rpcUrl, chainId);
|
|
37
|
+
const { publicClient, walletClient } = createL1Clients(rpcUrl, publisherPrivateKey, chain.chainInfo);
|
|
38
|
+
const rollupContract = new RollupContract(publicClient, config.l1Contracts.rollupAddress.toString());
|
|
39
|
+
const l1TxUtils = deps.l1TxUtils ?? new L1TxUtils(publicClient, walletClient, log, config);
|
|
40
|
+
const publisher = deps.publisher ?? new ProverNodePublisher(config, { telemetry, rollupContract, l1TxUtils });
|
|
36
41
|
const epochCache = await EpochCache.create(config.l1Contracts.rollupAddress, config);
|
|
37
42
|
// If config.p2pEnabled is true, createProverCoordination will create a p2p client where quotes will be shared and tx's requested
|
|
38
43
|
// If config.p2pEnabled is false, createProverCoordination request information from the AztecNode
|
|
@@ -55,9 +60,8 @@ export async function createProverNode(config, deps = {}) {
|
|
|
55
60
|
};
|
|
56
61
|
const claimsMonitor = new ClaimsMonitor(publisher, proverNodeConfig, telemetry);
|
|
57
62
|
const epochMonitor = new EpochMonitor(archiver, proverNodeConfig, telemetry);
|
|
58
|
-
const
|
|
59
|
-
const
|
|
60
|
-
const bondManager = await createBondManager(rollupContract, walletClient, config);
|
|
63
|
+
const escrowContractAddress = await rollupContract.getProofCommitmentEscrow();
|
|
64
|
+
const bondManager = await createBondManager(EthAddress.fromString(escrowContractAddress), walletClient, config);
|
|
61
65
|
return new ProverNode(prover, publisher, archiver, archiver, archiver, worldStateSynchronizer, proverCoordination, quoteProvider, quoteSigner, claimsMonitor, epochMonitor, bondManager, proverNodeConfig, telemetry);
|
|
62
66
|
}
|
|
63
67
|
function createQuoteProvider(config) {
|
|
@@ -75,4 +79,4 @@ function createQuoteSigner(config) {
|
|
|
75
79
|
const privateKey = config.publisherPrivateKey;
|
|
76
80
|
return QuoteSigner.new(Buffer32.fromString(privateKey), rollupContract);
|
|
77
81
|
}
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEUsT0FBTyxFQUFnQyxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTdGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBZSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUUsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25GLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFN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
|
package/dest/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export * from './factory.js';
|
|
2
1
|
export * from './config.js';
|
|
3
|
-
export * from './
|
|
2
|
+
export * from './factory.js';
|
|
4
3
|
export * from './http.js';
|
|
4
|
+
export * from './prover-node-publisher.js';
|
|
5
|
+
export * from './prover-node.js';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
package/dest/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export * from './factory.js';
|
|
2
1
|
export * from './config.js';
|
|
3
|
-
export * from './
|
|
2
|
+
export * from './factory.js';
|
|
4
3
|
export * from './http.js';
|
|
5
|
-
|
|
4
|
+
export * from './prover-node-publisher.js';
|
|
5
|
+
export * from './prover-node.js';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGtCQUFrQixDQUFDIn0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type EpochProver, type EpochProvingJobState, type ForkMerkleTreeOperations, type L1ToL2MessageSource, type L2Block, type L2BlockSource, type Tx } from '@aztec/circuit-types';
|
|
2
|
-
import { type L1Publisher } from '@aztec/sequencer-client';
|
|
3
2
|
import { type PublicProcessorFactory } from '@aztec/simulator/server';
|
|
4
3
|
import { type Traceable, type Tracer } from '@aztec/telemetry-client';
|
|
5
4
|
import { type ProverNodeMetrics } from '../metrics.js';
|
|
5
|
+
import { type ProverNodePublisher } from '../prover-node-publisher.js';
|
|
6
6
|
/**
|
|
7
7
|
* Job that grabs a range of blocks from the unfinalised chain from L1, gets their txs given their hashes,
|
|
8
8
|
* re-executes their public calls, generates a rollup proof, and submits it to L1. This job will update the
|
|
@@ -28,7 +28,7 @@ export declare class EpochProvingJob implements Traceable {
|
|
|
28
28
|
private runPromise;
|
|
29
29
|
private deadlineTimeoutHandler;
|
|
30
30
|
readonly tracer: Tracer;
|
|
31
|
-
constructor(dbProvider: ForkMerkleTreeOperations, epochNumber: bigint, blocks: L2Block[], txs: Tx[], prover: EpochProver, publicProcessorFactory: PublicProcessorFactory, publisher:
|
|
31
|
+
constructor(dbProvider: ForkMerkleTreeOperations, epochNumber: bigint, blocks: L2Block[], txs: Tx[], prover: EpochProver, publicProcessorFactory: PublicProcessorFactory, publisher: ProverNodePublisher, l2BlockSource: L2BlockSource, l1ToL2MessageSource: L1ToL2MessageSource, metrics: ProverNodeMetrics, deadline: Date | undefined, config?: {
|
|
32
32
|
parallelBlockLimit: number;
|
|
33
33
|
}, cleanUp?: (job: EpochProvingJob) => Promise<void>);
|
|
34
34
|
getId(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epoch-proving-job.d.ts","sourceRoot":"","sources":["../../src/job/epoch-proving-job.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAEzB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,KAAK,aAAa,EAElB,KAAK,EAAE,EACR,MAAM,sBAAsB,CAAC;AAK9B,OAAO,
|
|
1
|
+
{"version":3,"file":"epoch-proving-job.d.ts","sourceRoot":"","sources":["../../src/job/epoch-proving-job.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAEzB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,KAAK,aAAa,EAElB,KAAK,EAAE,EACR,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EAAwB,KAAK,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAC5F,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,MAAM,EAAa,MAAM,yBAAyB,CAAC;AAI7F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEvE;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAW7C,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,sBAAsB;IAC9B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IAtBjB,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,GAAG,CAAiD;IAC5D,OAAO,CAAC,IAAI,CAAS;IAErB,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,sBAAsB,CAA6B;IAE3D,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAGrB,UAAU,EAAE,wBAAwB,EACpC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,EAAE,EACjB,GAAG,EAAE,EAAE,EAAE,EACT,MAAM,EAAE,WAAW,EACnB,sBAAsB,EAAE,sBAAsB,EAC9C,SAAS,EAAE,mBAAmB,EAC9B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,IAAI,GAAG,SAAS,EAC1B,MAAM,GAAE;QAAE,kBAAkB,EAAE,MAAM,CAAA;KAA+B,EACnE,OAAO,GAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAA2B;IAM7E,KAAK,IAAI,MAAM;IAIf,QAAQ,IAAI,oBAAoB;IAIvC;;OAEG;IAIU,GAAG;IAgGhB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,UAAU;IAML,IAAI,CAAC,KAAK,GAAE,oBAAgC;IASzD,OAAO,CAAC,oBAAoB;YAqBd,cAAc;YAOd,MAAM;IAQpB,OAAO,CAAC,iBAAiB;YAIX,UAAU;CAgBzB;AASD,OAAO,EAAE,KAAK,oBAAoB,EAAE,CAAC"}
|
|
@@ -63,16 +63,16 @@ let EpochProvingJob = (() => {
|
|
|
63
63
|
this.runPromise = promise;
|
|
64
64
|
try {
|
|
65
65
|
this.prover.startNewEpoch(epochNumber, fromBlock, epochSizeBlocks);
|
|
66
|
-
this.prover.startTubeCircuits(this.txs);
|
|
66
|
+
await this.prover.startTubeCircuits(this.txs);
|
|
67
67
|
await asyncPool(this.config.parallelBlockLimit, this.blocks, async (block) => {
|
|
68
68
|
this.checkState();
|
|
69
69
|
const globalVariables = block.header.globalVariables;
|
|
70
|
-
const txs = this.getTxs(block);
|
|
70
|
+
const txs = await this.getTxs(block);
|
|
71
71
|
const l1ToL2Messages = await this.getL1ToL2Messages(block);
|
|
72
72
|
const previousHeader = (await this.getBlockHeader(block.number - 1));
|
|
73
73
|
this.log.verbose(`Starting processing block ${block.number}`, {
|
|
74
74
|
number: block.number,
|
|
75
|
-
blockHash: block.hash().toString(),
|
|
75
|
+
blockHash: (await block.hash()).toString(),
|
|
76
76
|
lastArchive: block.header.lastArchive.root,
|
|
77
77
|
noteHashTreeRoot: block.header.state.partial.noteHashTree.root,
|
|
78
78
|
nullifierTreeRoot: block.header.state.partial.nullifierTree.root,
|
|
@@ -91,7 +91,7 @@ let EpochProvingJob = (() => {
|
|
|
91
91
|
await db.close();
|
|
92
92
|
this.log.verbose(`Processed all ${txs.length} txs for block ${block.number}`, {
|
|
93
93
|
blockNumber: block.number,
|
|
94
|
-
blockHash: block.hash().toString(),
|
|
94
|
+
blockHash: (await block.hash()).toString(),
|
|
95
95
|
uuid: this.uuid,
|
|
96
96
|
});
|
|
97
97
|
// Mark block as completed to pad it
|
|
@@ -106,7 +106,10 @@ let EpochProvingJob = (() => {
|
|
|
106
106
|
if (!success) {
|
|
107
107
|
throw new Error('Failed to submit epoch proof to L1');
|
|
108
108
|
}
|
|
109
|
-
this.log.info(`Submitted proof for epoch
|
|
109
|
+
this.log.info(`Submitted proof for epoch ${epochNumber} (blocks ${fromBlock} to ${toBlock})`, {
|
|
110
|
+
epochNumber,
|
|
111
|
+
uuid: this.uuid,
|
|
112
|
+
});
|
|
110
113
|
this.state = 'completed';
|
|
111
114
|
this.metrics.recordProvingJob(executionTime, timer.ms(), epochSizeBlocks, epochSizeTxs);
|
|
112
115
|
}
|
|
@@ -167,9 +170,12 @@ let EpochProvingJob = (() => {
|
|
|
167
170
|
}
|
|
168
171
|
return this.l2BlockSource.getBlockHeader(blockNumber);
|
|
169
172
|
}
|
|
170
|
-
getTxs(block) {
|
|
173
|
+
async getTxs(block) {
|
|
171
174
|
const txHashes = block.body.txEffects.map(tx => tx.txHash.toBigInt());
|
|
172
|
-
|
|
175
|
+
const txsAndHashes = await Promise.all(this.txs.map(async (tx) => ({ tx, hash: await tx.getTxHash() })));
|
|
176
|
+
return txsAndHashes
|
|
177
|
+
.filter(txAndHash => txHashes.includes(txAndHash.hash.toBigInt()))
|
|
178
|
+
.map(txAndHash => txAndHash.tx);
|
|
173
179
|
}
|
|
174
180
|
getL1ToL2Messages(block) {
|
|
175
181
|
return this.l1ToL2MessageSource.getL1ToL2Messages(BigInt(block.number));
|
|
@@ -203,4 +209,4 @@ class HaltExecutionError extends Error {
|
|
|
203
209
|
this.name = 'HaltExecutionError';
|
|
204
210
|
}
|
|
205
211
|
}
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2gtcHJvdmluZy1qb2IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvam9iL2Vwb2NoLXByb3Zpbmctam9iLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsNEJBQTRCLEdBTzdCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHaEQsT0FBTyxFQUFFLFVBQVUsRUFBK0IsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0YsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFJdEM7Ozs7R0FJRztJQUNVLGVBQWU7Ozs7c0JBQWYsZUFBZTtZQVUxQixZQUNVLFVBQW9DLEVBQ3BDLFdBQW1CLEVBQ25CLE1BQWlCLEVBQ2pCLEdBQVMsRUFDVCxNQUFtQixFQUNuQixzQkFBOEMsRUFDOUMsU0FBc0IsRUFDdEIsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLE9BQTBCLEVBQzFCLFFBQTBCLEVBQzFCLFNBQXlDLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxFQUFFLEVBQ25FLFVBQW1ELEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7Z0JBWjFFLGVBQVUsSUFYVCxtREFBZSxFQVdoQixVQUFVLEVBQTBCO2dCQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtnQkFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBVztnQkFDakIsUUFBRyxHQUFILEdBQUcsQ0FBTTtnQkFDVCxXQUFNLEdBQU4sTUFBTSxDQUFhO2dCQUNuQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO2dCQUM5QyxjQUFTLEdBQVQs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
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2gtcHJvdmluZy1qb2IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvam9iL2Vwb2NoLXByb3Zpbmctam9iLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsNEJBQTRCLEdBTzdCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFVBQVUsRUFBK0IsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0YsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFLdEM7Ozs7R0FJRztJQUNVLGVBQWU7Ozs7c0JBQWYsZUFBZTtZQVUxQixZQUNVLFVBQW9DLEVBQ3BDLFdBQW1CLEVBQ25CLE1BQWlCLEVBQ2pCLEdBQVMsRUFDVCxNQUFtQixFQUNuQixzQkFBOEMsRUFDOUMsU0FBOEIsRUFDOUIsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLE9BQTBCLEVBQzFCLFFBQTBCLEVBQzFCLFNBQXlDLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxFQUFFLEVBQ25FLFVBQW1ELEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7Z0JBWjFFLGVBQVUsSUFYVCxtREFBZSxFQVdoQixVQUFVLEVBQTBCO2dCQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtnQkFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBVztnQkFDakIsUUFBRyxHQUFILEdBQUcsQ0FBTTtnQkFDVCxXQUFNLEdBQU4sTUFBTSxDQUFhO2dCQUNuQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO2dCQUM5QyxjQUFTLEdBQVQs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
|
package/dest/metrics.d.ts
CHANGED
|
@@ -1,11 +1,23 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type L1PublishProofStats } from '@aztec/circuit-types/stats';
|
|
2
|
+
import { type Histogram, type TelemetryClient, type UpDownCounter } from '@aztec/telemetry-client';
|
|
2
3
|
export declare class ProverNodeMetrics {
|
|
3
4
|
readonly client: TelemetryClient;
|
|
4
5
|
proverEpochExecutionDuration: Histogram;
|
|
5
6
|
provingJobDuration: Histogram;
|
|
6
7
|
provingJobBlocks: Histogram;
|
|
7
8
|
provingJobTransactions: Histogram;
|
|
9
|
+
gasPrice: Histogram;
|
|
10
|
+
txCount: UpDownCounter;
|
|
11
|
+
txDuration: Histogram;
|
|
12
|
+
txGas: Histogram;
|
|
13
|
+
txCalldataSize: Histogram;
|
|
14
|
+
txCalldataGas: Histogram;
|
|
15
|
+
txBlobDataGasUsed: Histogram;
|
|
16
|
+
txBlobDataGasCost: Histogram;
|
|
8
17
|
constructor(client: TelemetryClient, name?: string);
|
|
18
|
+
recordFailedTx(): void;
|
|
19
|
+
recordSubmitProof(durationMs: number, stats: L1PublishProofStats): void;
|
|
9
20
|
recordProvingJob(executionTimeMs: number, totalTimeMs: number, numBlocks: number, numTxs: number): void;
|
|
21
|
+
private recordTx;
|
|
10
22
|
}
|
|
11
23
|
//# sourceMappingURL=metrics.d.ts.map
|
package/dest/metrics.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAuB,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAEL,KAAK,SAAS,EAEd,KAAK,eAAe,EACpB,KAAK,aAAa,EAEnB,MAAM,yBAAyB,CAAC;AAIjC,qBAAa,iBAAiB;aAeA,MAAM,EAAE,eAAe;IAdnD,4BAA4B,EAAE,SAAS,CAAC;IACxC,kBAAkB,EAAE,SAAS,CAAC;IAC9B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,sBAAsB,EAAE,SAAS,CAAC;IAElC,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,UAAU,EAAE,SAAS,CAAC;IACtB,KAAK,EAAE,SAAS,CAAC;IACjB,cAAc,EAAE,SAAS,CAAC;IAC1B,aAAa,EAAE,SAAS,CAAC;IACzB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,iBAAiB,EAAE,SAAS,CAAC;gBAED,MAAM,EAAE,eAAe,EAAE,IAAI,SAAe;IAoExE,cAAc;IAOd,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB;IAIzD,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAOvG,OAAO,CAAC,QAAQ;CA6BjB"}
|
package/dest/metrics.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Metrics, ValueType } from '@aztec/telemetry-client';
|
|
1
|
+
import { Attributes, Metrics, ValueType, } from '@aztec/telemetry-client';
|
|
2
|
+
import { formatEther } from 'viem';
|
|
2
3
|
export class ProverNodeMetrics {
|
|
3
4
|
constructor(client, name = 'ProverNode') {
|
|
4
5
|
this.client = client;
|
|
@@ -21,6 +22,53 @@ export class ProverNodeMetrics {
|
|
|
21
22
|
description: 'Number of transactions in a proven epoch',
|
|
22
23
|
valueType: ValueType.INT,
|
|
23
24
|
});
|
|
25
|
+
this.gasPrice = meter.createHistogram(Metrics.L1_PUBLISHER_GAS_PRICE, {
|
|
26
|
+
description: 'The gas price used for transactions',
|
|
27
|
+
unit: 'gwei',
|
|
28
|
+
valueType: ValueType.DOUBLE,
|
|
29
|
+
});
|
|
30
|
+
this.txCount = meter.createUpDownCounter(Metrics.L1_PUBLISHER_TX_COUNT, {
|
|
31
|
+
description: 'The number of transactions processed',
|
|
32
|
+
});
|
|
33
|
+
this.txDuration = meter.createHistogram(Metrics.L1_PUBLISHER_TX_DURATION, {
|
|
34
|
+
description: 'The duration of transaction processing',
|
|
35
|
+
unit: 'ms',
|
|
36
|
+
valueType: ValueType.INT,
|
|
37
|
+
});
|
|
38
|
+
this.txGas = meter.createHistogram(Metrics.L1_PUBLISHER_TX_GAS, {
|
|
39
|
+
description: 'The gas consumed by transactions',
|
|
40
|
+
unit: 'gas',
|
|
41
|
+
valueType: ValueType.INT,
|
|
42
|
+
});
|
|
43
|
+
this.txCalldataSize = meter.createHistogram(Metrics.L1_PUBLISHER_TX_CALLDATA_SIZE, {
|
|
44
|
+
description: 'The size of the calldata in transactions',
|
|
45
|
+
unit: 'By',
|
|
46
|
+
valueType: ValueType.INT,
|
|
47
|
+
});
|
|
48
|
+
this.txCalldataGas = meter.createHistogram(Metrics.L1_PUBLISHER_TX_CALLDATA_GAS, {
|
|
49
|
+
description: 'The gas consumed by the calldata in transactions',
|
|
50
|
+
unit: 'gas',
|
|
51
|
+
valueType: ValueType.INT,
|
|
52
|
+
});
|
|
53
|
+
this.txBlobDataGasUsed = meter.createHistogram(Metrics.L1_PUBLISHER_TX_BLOBDATA_GAS_USED, {
|
|
54
|
+
description: 'The amount of blob gas used in transactions',
|
|
55
|
+
unit: 'gas',
|
|
56
|
+
valueType: ValueType.INT,
|
|
57
|
+
});
|
|
58
|
+
this.txBlobDataGasCost = meter.createHistogram(Metrics.L1_PUBLISHER_TX_BLOBDATA_GAS_COST, {
|
|
59
|
+
description: 'The gas cost of blobs in transactions',
|
|
60
|
+
unit: 'gwei',
|
|
61
|
+
valueType: ValueType.INT,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
recordFailedTx() {
|
|
65
|
+
this.txCount.add(1, {
|
|
66
|
+
[Attributes.L1_TX_TYPE]: 'submitProof',
|
|
67
|
+
[Attributes.OK]: false,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
recordSubmitProof(durationMs, stats) {
|
|
71
|
+
this.recordTx(durationMs, stats);
|
|
24
72
|
}
|
|
25
73
|
recordProvingJob(executionTimeMs, totalTimeMs, numBlocks, numTxs) {
|
|
26
74
|
this.proverEpochExecutionDuration.record(Math.ceil(executionTimeMs));
|
|
@@ -28,5 +76,29 @@ export class ProverNodeMetrics {
|
|
|
28
76
|
this.provingJobBlocks.record(Math.floor(numBlocks));
|
|
29
77
|
this.provingJobTransactions.record(Math.floor(numTxs));
|
|
30
78
|
}
|
|
79
|
+
recordTx(durationMs, stats) {
|
|
80
|
+
const attributes = {
|
|
81
|
+
[Attributes.L1_TX_TYPE]: 'submitProof',
|
|
82
|
+
[Attributes.L1_SENDER]: stats.sender,
|
|
83
|
+
};
|
|
84
|
+
this.txCount.add(1, {
|
|
85
|
+
...attributes,
|
|
86
|
+
[Attributes.OK]: true,
|
|
87
|
+
});
|
|
88
|
+
this.txDuration.record(Math.ceil(durationMs), attributes);
|
|
89
|
+
this.txGas.record(
|
|
90
|
+
// safe to downcast - total block limit is 30M gas which fits in a JS number
|
|
91
|
+
Number(stats.gasUsed), attributes);
|
|
92
|
+
this.txCalldataGas.record(stats.calldataGas, attributes);
|
|
93
|
+
this.txCalldataSize.record(stats.calldataSize, attributes);
|
|
94
|
+
this.txBlobDataGasCost.record(Number(stats.blobDataGas), attributes);
|
|
95
|
+
this.txBlobDataGasUsed.record(Number(stats.blobGasUsed), attributes);
|
|
96
|
+
try {
|
|
97
|
+
this.gasPrice.record(parseInt(formatEther(stats.gasPrice, 'gwei'), 10));
|
|
98
|
+
}
|
|
99
|
+
catch (e) {
|
|
100
|
+
// ignore
|
|
101
|
+
}
|
|
102
|
+
}
|
|
31
103
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRyaWNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxVQUFVLEVBRVYsT0FBTyxFQUdQLFNBQVMsR0FDVixNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkMsTUFBTSxPQUFPLGlCQUFpQjtJQWU1QixZQUE0QixNQUF1QixFQUFFLElBQUksR0FBRyxZQUFZO1FBQTVDLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBQ2pELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLDRCQUE0QixHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLDhCQUE4QixFQUFFO1lBQ2hHLFdBQVcsRUFBRSxpREFBaUQ7WUFDOUQsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsU0FBUyxDQUFDLEdBQUc7U0FDekIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFO1lBQ2hGLFdBQVcsRUFBRSx5QkFBeUI7WUFDdEMsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsU0FBUyxDQUFDLEdBQUc7U0FDekIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFO1lBQzVFLFdBQVcsRUFBRSxvQ0FBb0M7WUFDakQsU0FBUyxFQUFFLFNBQVMsQ0FBQyxHQUFHO1NBQ3pCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsRUFBRTtZQUN4RixXQUFXLEVBQUUsMENBQTBD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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type EpochProofClaim } from '@aztec/circuit-types';
|
|
2
2
|
import { type EthAddress } from '@aztec/circuits.js';
|
|
3
|
-
import { type L1Publisher } from '@aztec/sequencer-client';
|
|
4
3
|
import { type TelemetryClient, type Traceable, type Tracer } from '@aztec/telemetry-client';
|
|
4
|
+
import { type ProverNodePublisher } from '../prover-node-publisher.js';
|
|
5
5
|
export interface ClaimsMonitorHandler {
|
|
6
6
|
handleClaim(proofClaim: EpochProofClaim): Promise<void>;
|
|
7
7
|
}
|
|
@@ -13,7 +13,7 @@ export declare class ClaimsMonitor implements Traceable {
|
|
|
13
13
|
private handler;
|
|
14
14
|
private lastClaimEpochNumber;
|
|
15
15
|
readonly tracer: Tracer;
|
|
16
|
-
constructor(l1Publisher:
|
|
16
|
+
constructor(l1Publisher: ProverNodePublisher, options: {
|
|
17
17
|
pollingIntervalMs: number;
|
|
18
18
|
}, telemetry?: TelemetryClient);
|
|
19
19
|
start(handler: ClaimsMonitorHandler): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claims-monitor.d.ts","sourceRoot":"","sources":["../../src/monitors/claims-monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,
|
|
1
|
+
{"version":3,"file":"claims-monitor.d.ts","sourceRoot":"","sources":["../../src/monitors/claims-monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD;AAED,qBAAa,aAAc,YAAW,SAAS;IAU3C,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,OAAO;IAVjB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,GAAG,CAA8C;IAEzD,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,oBAAoB,CAAqB;IAEjD,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAGZ,WAAW,EAAE,mBAAmB,EACzC,OAAO,EAAE;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,EAC9C,SAAS,GAAE,eAAsC;IAM5C,KAAK,CAAC,OAAO,EAAE,oBAAoB;IAM7B,IAAI;IAOJ,IAAI;IAgBjB,SAAS,CAAC,gBAAgB,IAAI,UAAU;CAGzC"}
|