@aztec/ethereum 0.0.1-commit.03f7ef2 → 0.0.1-commit.1142ef1
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/config.d.ts +4 -1
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +6 -0
- package/dest/contracts/fee_asset_handler.d.ts +6 -5
- package/dest/contracts/fee_asset_handler.d.ts.map +1 -1
- package/dest/contracts/fee_asset_handler.js +9 -9
- package/dest/contracts/governance_proposer.js +382 -8
- package/dest/contracts/inbox.d.ts +5 -1
- package/dest/contracts/inbox.d.ts.map +1 -1
- package/dest/contracts/inbox.js +4 -0
- package/dest/contracts/index.d.ts +2 -1
- package/dest/contracts/index.d.ts.map +1 -1
- package/dest/contracts/index.js +1 -0
- package/dest/contracts/outbox.d.ts +41 -0
- package/dest/contracts/outbox.d.ts.map +1 -0
- package/dest/contracts/outbox.js +86 -0
- package/dest/contracts/rollup.d.ts +128 -95
- package/dest/contracts/rollup.d.ts.map +1 -1
- package/dest/contracts/rollup.js +602 -127
- package/dest/deploy_aztec_l1_contracts.d.ts +12 -2
- package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -1
- package/dest/deploy_aztec_l1_contracts.js +61 -11
- package/dest/l1_artifacts.d.ts +3550 -1102
- package/dest/l1_artifacts.d.ts.map +1 -1
- package/dest/l1_tx_utils/fee-strategies/index.d.ts +3 -2
- package/dest/l1_tx_utils/fee-strategies/index.d.ts.map +1 -1
- package/dest/l1_tx_utils/fee-strategies/index.js +2 -1
- package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts +2 -12
- package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts.map +1 -1
- package/dest/l1_tx_utils/fee-strategies/p75_competitive.js +35 -17
- package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts +2 -11
- package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts.map +1 -1
- package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.js +36 -18
- package/dest/l1_tx_utils/fee-strategies/types.d.ts +14 -27
- package/dest/l1_tx_utils/fee-strategies/types.d.ts.map +1 -1
- package/dest/l1_tx_utils/fee-strategies/types.js +0 -21
- package/dest/l1_tx_utils/l1_fee_analyzer.d.ts +2 -2
- package/dest/l1_tx_utils/l1_fee_analyzer.d.ts.map +1 -1
- package/dest/l1_tx_utils/l1_fee_analyzer.js +3 -3
- package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts +1 -5
- package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts.map +1 -1
- package/dest/l1_tx_utils/readonly_l1_tx_utils.js +14 -51
- package/dest/queries.d.ts +1 -1
- package/dest/queries.d.ts.map +1 -1
- package/dest/queries.js +8 -3
- package/dest/test/chain_monitor.js +1 -2
- package/dest/test/rollup_cheat_codes.d.ts +2 -1
- package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
- package/dest/test/rollup_cheat_codes.js +9 -1
- package/package.json +5 -5
- package/src/config.ts +8 -0
- package/src/contracts/fee_asset_handler.ts +8 -7
- package/src/contracts/inbox.ts +5 -0
- package/src/contracts/index.ts +1 -0
- package/src/contracts/outbox.ts +98 -0
- package/src/contracts/rollup.ts +240 -92
- package/src/deploy_aztec_l1_contracts.ts +62 -13
- package/src/l1_tx_utils/fee-strategies/index.ts +1 -1
- package/src/l1_tx_utils/fee-strategies/p75_competitive.ts +45 -41
- package/src/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.ts +48 -44
- package/src/l1_tx_utils/fee-strategies/types.ts +14 -46
- package/src/l1_tx_utils/l1_fee_analyzer.ts +2 -3
- package/src/l1_tx_utils/readonly_l1_tx_utils.ts +20 -59
- package/src/queries.ts +8 -2
- package/src/test/chain_monitor.ts +1 -1
- package/src/test/rollup_cheat_codes.ts +10 -1
|
@@ -27,9 +27,17 @@ export interface ValidatorJson {
|
|
|
27
27
|
publicKeyInG2: G2PointJson;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
* Gets the path to the l1-contracts directory.
|
|
30
|
+
* Gets the path to the l1-contracts foundry artifacts directory.
|
|
31
|
+
* These are copied from l1-contracts to yarn-project/l1-artifacts/l1-contracts
|
|
32
|
+
* during build to make yarn-project self-contained.
|
|
31
33
|
*/
|
|
32
34
|
export declare function getL1ContractsPath(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Prepares a temp directory for forge deployment.
|
|
37
|
+
* Copies all artifacts with preserved timestamps (required for forge cache validity).
|
|
38
|
+
* A fresh broadcast/ directory is created for deployment outputs.
|
|
39
|
+
*/
|
|
40
|
+
export declare function prepareL1ContractsForDeployment(): string;
|
|
33
41
|
/**
|
|
34
42
|
* Computes the validator data for passing to Solidity.
|
|
35
43
|
* Only computes the G2 public key (which requires scalar multiplication on G2, not available in EVM).
|
|
@@ -191,6 +199,7 @@ export declare function getDeployAztecL1ContractsEnvVars(args: DeployAztecL1Cont
|
|
|
191
199
|
readonly AZTEC_TARGET_COMMITTEE_SIZE: string;
|
|
192
200
|
readonly AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: string;
|
|
193
201
|
readonly AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: string;
|
|
202
|
+
readonly AZTEC_INBOX_LAG: string;
|
|
194
203
|
readonly AZTEC_PROOF_SUBMISSION_EPOCHS: string;
|
|
195
204
|
readonly AZTEC_LOCAL_EJECTION_THRESHOLD: string;
|
|
196
205
|
readonly AZTEC_SLASHING_LIFETIME_IN_ROUNDS: string;
|
|
@@ -219,6 +228,7 @@ export declare function getDeployRollupForUpgradeEnvVars(args: Omit<DeployAztecL
|
|
|
219
228
|
readonly AZTEC_TARGET_COMMITTEE_SIZE: string;
|
|
220
229
|
readonly AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: string;
|
|
221
230
|
readonly AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: string;
|
|
231
|
+
readonly AZTEC_INBOX_LAG: string;
|
|
222
232
|
readonly AZTEC_PROOF_SUBMISSION_EPOCHS: string;
|
|
223
233
|
readonly AZTEC_LOCAL_EJECTION_THRESHOLD: string;
|
|
224
234
|
readonly AZTEC_SLASHING_LIFETIME_IN_ROUNDS: string;
|
|
@@ -242,4 +252,4 @@ export declare const deployRollupForUpgrade: (privateKey: `0x${string}`, rpcUrl:
|
|
|
242
252
|
rollup: RollupContract;
|
|
243
253
|
slashFactoryAddress: `0x${string}`;
|
|
244
254
|
}>;
|
|
245
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2F6dGVjX2wxX2NvbnRyYWN0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2RlcGxveV9henRlY19sMV9jb250cmFjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBd0IsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJM0QsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJcEQsT0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU0zQyxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLaEMsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFnRTNELE1BQU0sV0FBVyxXQUFXO0lBQzFCLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWCxFQUFFLEVBQUUsTUFBTSxDQUFDO0lBQ1gsRUFBRSxFQUFFLE1BQU0sQ0FBQztJQUNYLEVBQUUsRUFBRSxNQUFNLENBQUM7Q0FDWjtBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxhQUFhO0lBQzVCLFFBQVEsRUFBRSxNQUFNLENBQUM7SUFDakIsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUNuQixxQ0FBcUM7SUFDckMsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUNuQixrRUFBa0U7SUFDbEUsYUFBYSxFQUFFLFdBQVcsQ0FBQztDQUM1QjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0Isa0JBQWtCLElBQUksTUFBTSxDQUszQztBQWdCRDs7OztHQUlHO0FBQ0gsd0JBQWdCLCtCQUErQixJQUFJLE1BQU0sQ0E0QnhEO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxHQUFHLGFBQWEsQ0FvQnRFO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsc0JBQXNCO0lBQ3JDLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIsZUFBZSxFQUFFLE1BQU0sQ0FBQztJQUN4QixtQkFBbUIsRUFBRSxNQUFNLENBQUM7SUFDNUIsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLHFCQUFxQixFQUFFLE1BQU0sQ0FBQztJQUM5QixhQUFhLEVBQUUsTUFBTSxDQUFDO0NBQ3ZCO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsd0JBQXdCO0lBQ3ZDLGFBQWEsRUFBRSxHQUFHLENBQUM7SUFDbkIsZUFBZSxFQUFFLEdBQUcsQ0FBQztJQUNyQixtQkFBbUIsRUFBRSxHQUFHLENBQUM7SUFDekIsWUFBWSxFQUFFLEdBQUcsQ0FBQztJQUNsQixhQUFhLEVBQUUsR0FBRyxDQUFDO0lBQ25CLHFCQUFxQixFQUFFLEdBQUcsQ0FBQztJQUMzQixhQUFhLEVBQUUsTUFBTSxDQUFDO0NBQ3ZCO0FBRUQsTUFBTSxXQUFXLDRCQUE2QixTQUFRLHdCQUF3QjtJQUM1RSxlQUFlLEVBQUUsR0FBRyxDQUFDO0lBQ3JCLGVBQWUsRUFBRSxHQUFHLENBQUM7SUFDckIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDO0lBQ3pCLFVBQVUsQ0FBQyxFQUFFLEdBQUcsQ0FBQztJQUNqQix3QkFBd0IsRUFBRSxHQUFHLENBQUM7SUFDOUIsaUJBQWlCLEVBQUUsR0FBRyxDQUFDO0lBQ3ZCLHlCQUF5QixFQUFFLEdBQUcsQ0FBQztJQUMvQixpQkFBaUIsRUFBRSxHQUFHLENBQUM7SUFDdkIsdUJBQXVCLENBQUMsRUFBRSxHQUFHLENBQUM7SUFDOUIsc0JBQXNCLENBQUMsRUFBRSxHQUFHLENBQUM7SUFDN0IsMEJBQTBCLENBQUMsRUFBRSxHQUFHLENBQUM7SUFDakMseUJBQXlCLENBQUMsRUFBRSxHQUFHLENBQUM7Q0FDakM7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILHdCQUFzQixzQkFBc0IsQ0FDMUMsTUFBTSxFQUFFLE1BQU0sRUFDZCxVQUFVLEVBQUUsS0FBSyxNQUFNLEVBQUUsRUFDekIsT0FBTyxFQUFFLE1BQU0sRUFDZixJQUFJLEVBQUUsMEJBQTBCLEdBQy9CLE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQXlJM0M7QUFFRCxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsR0FBa0QsQ0FBQztBQUVsRixNQUFNLE1BQU0sUUFBUSxHQUFHO0lBQ3JCLFFBQVEsRUFBRSxVQUFVLENBQUM7SUFDckIsVUFBVSxFQUFFLFVBQVUsQ0FBQztJQUN2QixjQUFjLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ3JDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sTUFBTSxnQ0FBZ0MsR0FBRztJQUM3QyxtQ0FBbUM7SUFDbkMsUUFBUSxFQUFFLHdCQUF3QixDQUFDO0lBQ25DLG1EQUFtRDtJQUNuRCxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQztJQUN6Qyw4Q0FBOEM7SUFDOUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztDQUN2QixDQUFDO0FBRUYsTUFBTSxXQUFXLGNBQWM7SUFDN0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxHQUFHO1FBQ2xCLENBQUMsWUFBWSxFQUFFLE1BQU0sR0FBRyxhQUFhLENBQUM7WUFDcEMsS0FBSyxFQUFFLE1BQU0sQ0FBQztZQUNkLE1BQU0sRUFBRSxNQUFNLENBQUM7U0FDaEIsQ0FBQyxDQUFDO0tBQ0osQ0FBQztDQUNIO0FBRUQsTUFBTSxXQUFXLFNBQVM7SUFDeEIsY0FBYyxFQUFFLGNBQWMsQ0FBQztJQUMvQixXQUFXLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0NBQ2hEO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsaUJBQWlCLENBQUMsSUFBSSxTQUFTLEdBQUcsR0FBRyxTQUFTLE9BQU8sRUFBRSxHQUFHLEdBQUc7SUFDNUU7O09BRUc7SUFDSCxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2I7O09BRUc7SUFDSCxXQUFXLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCOztPQUVHO0lBQ0gsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDO0lBQ3RCOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDO0NBQ3ZCO0FBRUQsTUFBTSxNQUFNLHdCQUF3QixHQUFHO0lBQ3JDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLE9BQU8sRUFBRSxNQUFNLENBQUM7Q0FDakIsQ0FBQztBQUVGLE1BQU0sTUFBTSxrQkFBa0IsR0FBRztJQUMvQixJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUNoQixrQkFBa0IsRUFBRSxHQUFHLENBQUM7SUFDeEIsU0FBUyxFQUFFLHdCQUF3QixFQUFFLENBQUM7Q0FDdkMsQ0FBQztBQUVGLE1BQU0sV0FBVywwQkFBMkIsU0FBUSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7SUFDaEcsd0JBQXdCO0lBQ3hCLFVBQVUsRUFBRSxFQUFFLENBQUM7SUFDZiwwQ0FBMEM7SUFDMUMscUJBQXFCLEVBQUUsRUFBRSxDQUFDO0lBQzFCLDRDQUE0QztJQUM1QyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7SUFDdkIsc0RBQXNEO0lBQ3RELGlCQUFpQixDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDL0IsaUhBQWlIO0lBQ2pILDRCQUE0QixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3RDLCtEQUErRDtJQUMvRCxZQUFZLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDdkIsMkJBQTJCO0lBQzNCLGNBQWMsQ0FBQyxFQUFFLGNBQWMsQ0FBQztJQUNoQyxxRkFBcUY7SUFDckYsb0JBQW9CLENBQUMsRUFBRSxVQUFVLENBQUM7Q0FDbkM7QUFFRCxNQUFNLFdBQVcsY0FBYztJQUM3QiwwQ0FBMEM7SUFDMUMsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDMUIscURBQXFEO0lBQ3JELGVBQWUsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUMxQjtBQUdELHdCQUFnQixnQ0FBZ0MsQ0FBQyxJQUFJLEVBQUUsMEJBQTBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVdoRjtBQUdELHdCQUFnQixnQ0FBZ0MsQ0FDOUMsSUFBSSxFQUFFLElBQUksQ0FDUiwwQkFBMEIsRUFDeEIsMEJBQTBCLEdBQzFCLDZCQUE2QixHQUM3QixtQkFBbUIsR0FDbkIscUJBQXFCLEdBQ3JCLG1CQUFtQixDQUN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlDRjtBQUVEOztHQUVHO0FBQ0gsZUFBTyxNQUFNLHNCQUFzQjs7O0VBcURsQyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_aztec_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_aztec_l1_contracts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAwB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAI3D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AAIpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy_aztec_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_aztec_l1_contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,9 @@ import { promiseWithResolvers } from '@aztec/foundation/promise';
|
|
|
7
7
|
import { fileURLToPath } from '@aztec/foundation/url';
|
|
8
8
|
import { bn254 } from '@noble/curves/bn254';
|
|
9
9
|
import { spawn } from 'child_process';
|
|
10
|
-
import {
|
|
10
|
+
import { cpSync, existsSync, mkdirSync, mkdtempSync, readdirSync, rmSync } from 'fs';
|
|
11
|
+
import { tmpdir } from 'os';
|
|
12
|
+
import { dirname, join, resolve } from 'path';
|
|
11
13
|
import readline from 'readline';
|
|
12
14
|
import { foundry, mainnet, sepolia } from 'viem/chains';
|
|
13
15
|
import { createEthereumChain, isAnvilTestChain } from './chain.js';
|
|
@@ -78,14 +80,63 @@ async function maybeForgeForceProductionBuild(l1ContractsPath, script, chainId)
|
|
|
78
80
|
}
|
|
79
81
|
}
|
|
80
82
|
/**
|
|
81
|
-
* Gets the path to the l1-contracts directory.
|
|
83
|
+
* Gets the path to the l1-contracts foundry artifacts directory.
|
|
84
|
+
* These are copied from l1-contracts to yarn-project/l1-artifacts/l1-contracts
|
|
85
|
+
* during build to make yarn-project self-contained.
|
|
82
86
|
*/ export function getL1ContractsPath() {
|
|
83
|
-
// Try to find l1-contracts relative to this file
|
|
84
87
|
const currentDir = dirname(fileURLToPath(import.meta.url));
|
|
85
|
-
// Go up from yarn-project/ethereum/
|
|
86
|
-
const l1ContractsPath = resolve(currentDir, '..', '..', '
|
|
88
|
+
// Go up from yarn-project/ethereum/dest to yarn-project, then to l1-artifacts/l1-contracts
|
|
89
|
+
const l1ContractsPath = resolve(currentDir, '..', '..', 'l1-artifacts', 'l1-contracts');
|
|
87
90
|
return l1ContractsPath;
|
|
88
91
|
}
|
|
92
|
+
// Cached deployment directory
|
|
93
|
+
let preparedDeployDir;
|
|
94
|
+
function cleanupDeployDir() {
|
|
95
|
+
if (preparedDeployDir) {
|
|
96
|
+
try {
|
|
97
|
+
rmSync(preparedDeployDir, {
|
|
98
|
+
recursive: true,
|
|
99
|
+
force: true
|
|
100
|
+
});
|
|
101
|
+
} catch {
|
|
102
|
+
// ignore cleanup errors
|
|
103
|
+
}
|
|
104
|
+
preparedDeployDir = undefined;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Prepares a temp directory for forge deployment.
|
|
109
|
+
* Copies all artifacts with preserved timestamps (required for forge cache validity).
|
|
110
|
+
* A fresh broadcast/ directory is created for deployment outputs.
|
|
111
|
+
*/ export function prepareL1ContractsForDeployment() {
|
|
112
|
+
if (preparedDeployDir && existsSync(preparedDeployDir)) {
|
|
113
|
+
return preparedDeployDir;
|
|
114
|
+
}
|
|
115
|
+
const basePath = getL1ContractsPath();
|
|
116
|
+
const tempDir = mkdtempSync(join(tmpdir(), '.foundry-deploy-'));
|
|
117
|
+
preparedDeployDir = tempDir;
|
|
118
|
+
process.on('exit', cleanupDeployDir);
|
|
119
|
+
// Copy all dirs with preserved timestamps (required for forge cache validity)
|
|
120
|
+
const copyOpts = {
|
|
121
|
+
recursive: true,
|
|
122
|
+
preserveTimestamps: true
|
|
123
|
+
};
|
|
124
|
+
cpSync(join(basePath, 'out'), join(tempDir, 'out'), copyOpts);
|
|
125
|
+
cpSync(join(basePath, 'lib'), join(tempDir, 'lib'), copyOpts);
|
|
126
|
+
cpSync(join(basePath, 'cache'), join(tempDir, 'cache'), copyOpts);
|
|
127
|
+
cpSync(join(basePath, 'src'), join(tempDir, 'src'), copyOpts);
|
|
128
|
+
cpSync(join(basePath, 'script'), join(tempDir, 'script'), copyOpts);
|
|
129
|
+
cpSync(join(basePath, 'generated'), join(tempDir, 'generated'), copyOpts);
|
|
130
|
+
cpSync(join(basePath, 'foundry.toml'), join(tempDir, 'foundry.toml'));
|
|
131
|
+
cpSync(join(basePath, 'foundry.lock'), join(tempDir, 'foundry.lock'));
|
|
132
|
+
for (const file of readdirSync(basePath)){
|
|
133
|
+
if (file.startsWith('solc-')) {
|
|
134
|
+
cpSync(join(basePath, file), join(tempDir, file));
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
mkdirSync(join(tempDir, 'broadcast'));
|
|
138
|
+
return tempDir;
|
|
139
|
+
}
|
|
89
140
|
/**
|
|
90
141
|
* Computes the validator data for passing to Solidity.
|
|
91
142
|
* Only computes the G2 public key (which requires scalar multiplication on G2, not available in EVM).
|
|
@@ -125,7 +176,6 @@ async function maybeForgeForceProductionBuild(l1ContractsPath, script, chainId)
|
|
|
125
176
|
if (args.initialValidators && args.initialValidators.length > 0 && args.existingTokenAddress) {
|
|
126
177
|
throw new Error('Cannot deploy with both initialValidators and existingTokenAddress. ' + 'Initial validator funding requires minting tokens, which is not possible with an external token.');
|
|
127
178
|
}
|
|
128
|
-
const currentDir = dirname(fileURLToPath(import.meta.url));
|
|
129
179
|
const chain = createEthereumChain([
|
|
130
180
|
rpcUrl
|
|
131
181
|
], chainId);
|
|
@@ -155,8 +205,8 @@ async function maybeForgeForceProductionBuild(l1ContractsPath, script, chainId)
|
|
|
155
205
|
logger.error(`Error setting block interval: ${e}`);
|
|
156
206
|
}
|
|
157
207
|
}
|
|
158
|
-
//
|
|
159
|
-
const l1ContractsPath =
|
|
208
|
+
// Use foundry-artifacts from l1-artifacts package
|
|
209
|
+
const l1ContractsPath = prepareL1ContractsForDeployment();
|
|
160
210
|
const FORGE_SCRIPT = 'script/deploy/DeployAztecL1Contracts.s.sol';
|
|
161
211
|
await maybeForgeForceProductionBuild(l1ContractsPath, FORGE_SCRIPT, chainId);
|
|
162
212
|
// Verify contracts on Etherscan when on mainnet/sepolia and ETHERSCAN_API_KEY is available.
|
|
@@ -276,6 +326,7 @@ export function getDeployRollupForUpgradeEnvVars(args) {
|
|
|
276
326
|
AZTEC_TARGET_COMMITTEE_SIZE: args.aztecTargetCommitteeSize.toString(),
|
|
277
327
|
AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: args.lagInEpochsForValidatorSet.toString(),
|
|
278
328
|
AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: args.lagInEpochsForRandao.toString(),
|
|
329
|
+
AZTEC_INBOX_LAG: args.inboxLag?.toString(),
|
|
279
330
|
AZTEC_PROOF_SUBMISSION_EPOCHS: args.aztecProofSubmissionEpochs.toString(),
|
|
280
331
|
AZTEC_LOCAL_EJECTION_THRESHOLD: args.localEjectionThreshold.toString(),
|
|
281
332
|
AZTEC_SLASHING_LIFETIME_IN_ROUNDS: args.slashingLifetimeInRounds.toString(),
|
|
@@ -296,9 +347,8 @@ export function getDeployRollupForUpgradeEnvVars(args) {
|
|
|
296
347
|
/**
|
|
297
348
|
* Deploys a new rollup, using the existing canonical version to derive certain values (addresses of assets etc).
|
|
298
349
|
*/ export const deployRollupForUpgrade = async (privateKey, rpcUrl, chainId, registryAddress, args)=>{
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
const l1ContractsPath = resolve(currentDir, '..', '..', '..', 'l1-contracts');
|
|
350
|
+
// Use foundry-artifacts from l1-artifacts package
|
|
351
|
+
const l1ContractsPath = prepareL1ContractsForDeployment();
|
|
302
352
|
const FORGE_SCRIPT = 'script/deploy/DeployRollupForUpgrade.s.sol';
|
|
303
353
|
await maybeForgeForceProductionBuild(l1ContractsPath, FORGE_SCRIPT, chainId);
|
|
304
354
|
const forgeArgs = [
|