@aztec/ethereum 0.0.1-commit.e0f15ab9b → 0.0.1-commit.e304674f1
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 +6 -6
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +5 -9
- package/dest/contracts/inbox.d.ts +3 -3
- package/dest/contracts/inbox.d.ts.map +1 -1
- package/dest/contracts/inbox.js +5 -6
- package/dest/contracts/index.d.ts +2 -3
- package/dest/contracts/index.d.ts.map +1 -1
- package/dest/contracts/index.js +1 -2
- package/dest/contracts/rollup.d.ts +28 -11
- package/dest/contracts/rollup.d.ts.map +1 -1
- package/dest/contracts/rollup.js +152 -41
- package/dest/contracts/{tally_slashing_proposer.d.ts → slashing_proposer.d.ts} +3 -4
- package/dest/contracts/slashing_proposer.d.ts.map +1 -0
- package/dest/contracts/{tally_slashing_proposer.js → slashing_proposer.js} +13 -15
- package/dest/deploy_aztec_l1_contracts.d.ts +3 -6
- package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -1
- package/dest/deploy_aztec_l1_contracts.js +2 -4
- package/dest/generated/l1-contracts-defaults.d.ts +1 -1
- package/dest/generated/l1-contracts-defaults.js +1 -1
- package/dest/l1_artifacts.d.ts +8176 -15179
- package/dest/l1_artifacts.d.ts.map +1 -1
- package/dest/l1_artifacts.js +9 -24
- package/dest/l1_contract_addresses.d.ts +1 -5
- package/dest/l1_contract_addresses.d.ts.map +1 -1
- package/dest/l1_contract_addresses.js +0 -6
- package/dest/l1_tx_utils/l1_tx_utils.d.ts +3 -1
- package/dest/l1_tx_utils/l1_tx_utils.d.ts.map +1 -1
- package/dest/l1_tx_utils/l1_tx_utils.js +34 -26
- package/dest/queries.js +3 -3
- package/package.json +5 -5
- package/src/config.ts +9 -13
- package/src/contracts/inbox.ts +4 -4
- package/src/contracts/index.ts +1 -2
- package/src/contracts/rollup.ts +171 -35
- package/src/contracts/{tally_slashing_proposer.ts → slashing_proposer.ts} +14 -16
- package/src/deploy_aztec_l1_contracts.ts +1 -5
- package/src/generated/l1-contracts-defaults.ts +1 -1
- package/src/l1_artifacts.ts +12 -35
- package/src/l1_contract_addresses.ts +0 -7
- package/src/l1_tx_utils/l1_tx_utils.ts +24 -14
- package/src/queries.ts +3 -3
- package/dest/contracts/empire_slashing_proposer.d.ts +0 -69
- package/dest/contracts/empire_slashing_proposer.d.ts.map +0 -1
- package/dest/contracts/empire_slashing_proposer.js +0 -216
- package/dest/contracts/tally_slashing_proposer.d.ts.map +0 -1
- package/src/contracts/empire_slashing_proposer.ts +0 -265
package/dest/contracts/rollup.js
CHANGED
|
@@ -376,25 +376,19 @@ import { Buffer32 } from '@aztec/foundation/buffer';
|
|
|
376
376
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
377
377
|
import { memoize } from '@aztec/foundation/decorators';
|
|
378
378
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
379
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
379
380
|
import { makeBackoff, retry } from '@aztec/foundation/retry';
|
|
380
381
|
import { EscapeHatchAbi } from '@aztec/l1-artifacts/EscapeHatchAbi';
|
|
381
382
|
import { RollupAbi } from '@aztec/l1-artifacts/RollupAbi';
|
|
382
383
|
import { RollupStorage } from '@aztec/l1-artifacts/RollupStorage';
|
|
383
384
|
import chunk from 'lodash.chunk';
|
|
384
|
-
import { encodeFunctionData, getContract, hexToBigInt, keccak256 } from 'viem';
|
|
385
|
+
import { encodeAbiParameters, encodeFunctionData, getContract, hexToBigInt, keccak256 } from 'viem';
|
|
385
386
|
import { getPublicClient } from '../client.js';
|
|
386
387
|
import { formatViemError } from '../utils.js';
|
|
387
|
-
import { EmpireSlashingProposerContract } from './empire_slashing_proposer.js';
|
|
388
388
|
import { GSEContract } from './gse.js';
|
|
389
389
|
import { SlasherContract } from './slasher_contract.js';
|
|
390
|
-
import {
|
|
390
|
+
import { SlashingProposerContract } from './slashing_proposer.js';
|
|
391
391
|
import { checkBlockTag } from './utils.js';
|
|
392
|
-
export var SlashingProposerType = /*#__PURE__*/ function(SlashingProposerType) {
|
|
393
|
-
SlashingProposerType[SlashingProposerType["None"] = 0] = "None";
|
|
394
|
-
SlashingProposerType[SlashingProposerType["Tally"] = 1] = "Tally";
|
|
395
|
-
SlashingProposerType[SlashingProposerType["Empire"] = 2] = "Empire";
|
|
396
|
-
return SlashingProposerType;
|
|
397
|
-
}({});
|
|
398
392
|
/**
|
|
399
393
|
* Status of a validator/attester in the staking system.
|
|
400
394
|
* Matches the Status enum in StakingLib.sol
|
|
@@ -517,6 +511,7 @@ export class RollupContract {
|
|
|
517
511
|
], []));
|
|
518
512
|
}
|
|
519
513
|
rollup;
|
|
514
|
+
logger;
|
|
520
515
|
static cachedStfStorageSlot;
|
|
521
516
|
cachedEscapeHatch;
|
|
522
517
|
static get checkBlobStorageSlot() {
|
|
@@ -540,7 +535,7 @@ export class RollupContract {
|
|
|
540
535
|
}
|
|
541
536
|
constructor(client, address){
|
|
542
537
|
this.client = client;
|
|
543
|
-
_initProto(this);
|
|
538
|
+
this.logger = (_initProto(this), createLogger('ethereum:rollup'));
|
|
544
539
|
if (address instanceof EthAddress) {
|
|
545
540
|
address = address.toString();
|
|
546
541
|
}
|
|
@@ -565,34 +560,10 @@ export class RollupContract {
|
|
|
565
560
|
return undefined;
|
|
566
561
|
}
|
|
567
562
|
const proposerAddress = await slasher.getProposer();
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
type: 'function',
|
|
571
|
-
name: 'SLASHING_PROPOSER_TYPE',
|
|
572
|
-
inputs: [],
|
|
573
|
-
outputs: [
|
|
574
|
-
{
|
|
575
|
-
name: '',
|
|
576
|
-
type: 'uint8',
|
|
577
|
-
internalType: 'enum SlasherFlavor'
|
|
578
|
-
}
|
|
579
|
-
],
|
|
580
|
-
stateMutability: 'view'
|
|
581
|
-
}
|
|
582
|
-
];
|
|
583
|
-
const proposer = getContract({
|
|
584
|
-
address: proposerAddress.toString(),
|
|
585
|
-
abi: proposerAbi,
|
|
586
|
-
client: this.client
|
|
587
|
-
});
|
|
588
|
-
const proposerType = await proposer.read.SLASHING_PROPOSER_TYPE();
|
|
589
|
-
if (proposerType === 1..valueOf()) {
|
|
590
|
-
return new TallySlashingProposerContract(this.client, proposerAddress);
|
|
591
|
-
} else if (proposerType === 2..valueOf()) {
|
|
592
|
-
return new EmpireSlashingProposerContract(this.client, proposerAddress);
|
|
593
|
-
} else {
|
|
594
|
-
throw new Error(`Unknown slashing proposer type: ${proposerType}`);
|
|
563
|
+
if (proposerAddress.isZero()) {
|
|
564
|
+
return undefined;
|
|
595
565
|
}
|
|
566
|
+
return new SlashingProposerContract(this.client, proposerAddress);
|
|
596
567
|
}
|
|
597
568
|
getL1StartBlock() {
|
|
598
569
|
return this.rollup.read.L1_BLOCK_AT_GENESIS();
|
|
@@ -733,7 +704,11 @@ export class RollupContract {
|
|
|
733
704
|
BigInt(epoch)
|
|
734
705
|
]);
|
|
735
706
|
return isOpen;
|
|
736
|
-
} catch
|
|
707
|
+
} catch (err) {
|
|
708
|
+
this.logger.warn('isEscapeHatchOpen failed (treating as closed); RPC or contract error may cause liveness risk', {
|
|
709
|
+
epoch: Number(epoch),
|
|
710
|
+
error: err
|
|
711
|
+
});
|
|
737
712
|
return false;
|
|
738
713
|
}
|
|
739
714
|
}
|
|
@@ -969,6 +944,7 @@ export class RollupContract {
|
|
|
969
944
|
*/ async canProposeAt(archive, account, timestamp, opts = {}) {
|
|
970
945
|
const timeOfNextL1Slot = timestamp;
|
|
971
946
|
const who = typeof account === 'string' ? account : account.address;
|
|
947
|
+
const stateOverride = RollupContract.mergeStateOverrides(await this.makePendingCheckpointNumberOverride(opts.forcePendingCheckpointNumber), opts.forceArchive ? this.makeArchiveOverride(opts.forceArchive.checkpointNumber, opts.forceArchive.archive) : []);
|
|
972
948
|
try {
|
|
973
949
|
const { result: [slot, checkpointNumber] } = await this.client.simulateContract({
|
|
974
950
|
address: this.address,
|
|
@@ -980,7 +956,7 @@ export class RollupContract {
|
|
|
980
956
|
who
|
|
981
957
|
],
|
|
982
958
|
account,
|
|
983
|
-
stateOverride
|
|
959
|
+
stateOverride
|
|
984
960
|
});
|
|
985
961
|
return {
|
|
986
962
|
slot: SlotNumber.fromBigInt(slot),
|
|
@@ -1018,6 +994,139 @@ export class RollupContract {
|
|
|
1018
994
|
}
|
|
1019
995
|
];
|
|
1020
996
|
}
|
|
997
|
+
/**
|
|
998
|
+
* Returns a state override that sets tempCheckpointLogs[checkpointNumber].feeHeader to the compressed fee header.
|
|
999
|
+
* Used when simulating a propose call where the parent checkpoint hasn't landed on L1 yet (pipelining).
|
|
1000
|
+
*/ async makeFeeHeaderOverride(checkpointNumber, feeHeader) {
|
|
1001
|
+
const { epochDuration, proofSubmissionEpochs } = await this.getRollupConstants();
|
|
1002
|
+
const roundaboutSize = BigInt(epochDuration * (proofSubmissionEpochs + 1) + 1);
|
|
1003
|
+
const circularIndex = BigInt(checkpointNumber) % roundaboutSize;
|
|
1004
|
+
// tempCheckpointLogs is at offset 2 in RollupStore
|
|
1005
|
+
const tempCheckpointLogsMappingBase = hexToBigInt(RollupContract.stfStorageSlot) + 2n;
|
|
1006
|
+
// Solidity mapping slot: keccak256(abi.encode(key, baseSlot))
|
|
1007
|
+
const structBaseSlot = hexToBigInt(keccak256(encodeAbiParameters([
|
|
1008
|
+
{
|
|
1009
|
+
type: 'uint256'
|
|
1010
|
+
},
|
|
1011
|
+
{
|
|
1012
|
+
type: 'uint256'
|
|
1013
|
+
}
|
|
1014
|
+
], [
|
|
1015
|
+
circularIndex,
|
|
1016
|
+
tempCheckpointLogsMappingBase
|
|
1017
|
+
])));
|
|
1018
|
+
// feeHeader is the 7th field (offset 6) in CompressedTempCheckpointLog
|
|
1019
|
+
const feeHeaderSlot = structBaseSlot + 6n;
|
|
1020
|
+
const compressed = RollupContract.compressFeeHeader(feeHeader);
|
|
1021
|
+
return [
|
|
1022
|
+
{
|
|
1023
|
+
address: this.address,
|
|
1024
|
+
stateDiff: [
|
|
1025
|
+
{
|
|
1026
|
+
slot: `0x${feeHeaderSlot.toString(16).padStart(64, '0')}`,
|
|
1027
|
+
value: `0x${compressed.toString(16).padStart(64, '0')}`
|
|
1028
|
+
}
|
|
1029
|
+
]
|
|
1030
|
+
}
|
|
1031
|
+
];
|
|
1032
|
+
}
|
|
1033
|
+
/**
|
|
1034
|
+
* Returns a state override that sets archives[checkpointNumber] to the given archive value.
|
|
1035
|
+
* Used when simulating a canProposeAtTime call where the local archive differs from L1
|
|
1036
|
+
* (e.g. pipelining where the parent checkpoint hasn't landed on L1 yet).
|
|
1037
|
+
*/ makeArchiveOverride(checkpointNumber, archive) {
|
|
1038
|
+
const archivesMappingBase = hexToBigInt(RollupContract.stfStorageSlot) + 1n;
|
|
1039
|
+
const archiveSlot = hexToBigInt(keccak256(encodeAbiParameters([
|
|
1040
|
+
{
|
|
1041
|
+
type: 'uint256'
|
|
1042
|
+
},
|
|
1043
|
+
{
|
|
1044
|
+
type: 'uint256'
|
|
1045
|
+
}
|
|
1046
|
+
], [
|
|
1047
|
+
BigInt(checkpointNumber),
|
|
1048
|
+
archivesMappingBase
|
|
1049
|
+
])));
|
|
1050
|
+
return [
|
|
1051
|
+
{
|
|
1052
|
+
address: this.address,
|
|
1053
|
+
stateDiff: [
|
|
1054
|
+
{
|
|
1055
|
+
slot: `0x${archiveSlot.toString(16).padStart(64, '0')}`,
|
|
1056
|
+
value: archive.toString()
|
|
1057
|
+
}
|
|
1058
|
+
]
|
|
1059
|
+
}
|
|
1060
|
+
];
|
|
1061
|
+
}
|
|
1062
|
+
/** Merges multiple StateOverride arrays, combining stateDiff entries for the same address. */ static mergeStateOverrides(...overrides) {
|
|
1063
|
+
const byAddress = new Map();
|
|
1064
|
+
for (const override of overrides){
|
|
1065
|
+
for (const entry of override){
|
|
1066
|
+
const key = entry.address.toLowerCase();
|
|
1067
|
+
const existing = byAddress.get(key);
|
|
1068
|
+
if (existing) {
|
|
1069
|
+
existing.stateDiff.push(...entry.stateDiff ?? []);
|
|
1070
|
+
if (entry.balance !== undefined) {
|
|
1071
|
+
existing.balance = entry.balance;
|
|
1072
|
+
}
|
|
1073
|
+
} else {
|
|
1074
|
+
byAddress.set(key, {
|
|
1075
|
+
address: entry.address,
|
|
1076
|
+
balance: entry.balance,
|
|
1077
|
+
stateDiff: [
|
|
1078
|
+
...entry.stateDiff ?? []
|
|
1079
|
+
]
|
|
1080
|
+
});
|
|
1081
|
+
}
|
|
1082
|
+
}
|
|
1083
|
+
}
|
|
1084
|
+
return [
|
|
1085
|
+
...byAddress.values()
|
|
1086
|
+
];
|
|
1087
|
+
}
|
|
1088
|
+
/** Compresses a FeeHeader into a uint256 matching FeeHeaderLib.compress() in FeeStructs.sol. */ static compressFeeHeader(feeHeader) {
|
|
1089
|
+
const MASK_48_BITS = (1n << 48n) - 1n;
|
|
1090
|
+
const MASK_64_BITS = (1n << 64n) - 1n;
|
|
1091
|
+
const MASK_63_BITS = (1n << 63n) - 1n;
|
|
1092
|
+
let value = BigInt(feeHeader.manaUsed) & (1n << 32n) - 1n; // bits [0:31]
|
|
1093
|
+
value |= (feeHeader.excessMana < MASK_48_BITS ? feeHeader.excessMana : MASK_48_BITS) << 32n; // bits [32:79]
|
|
1094
|
+
value |= (BigInt(feeHeader.ethPerFeeAsset) & MASK_48_BITS) << 80n; // bits [80:127]
|
|
1095
|
+
value |= (feeHeader.congestionCost < MASK_64_BITS ? feeHeader.congestionCost : MASK_64_BITS) << 128n; // bits [128:191]
|
|
1096
|
+
value |= (feeHeader.proverCost < MASK_63_BITS ? feeHeader.proverCost : MASK_63_BITS) << 192n; // bits [192:254]
|
|
1097
|
+
value |= 1n << 255n; // preheat flag
|
|
1098
|
+
return value;
|
|
1099
|
+
}
|
|
1100
|
+
/** Computes the fee header for a child checkpoint given parent fee header and child data.
|
|
1101
|
+
* Must stay in sync with Solidity FeeLib.sol (computeNewEthPerFeeAsset, clampedAdd). */ static computeChildFeeHeader(parentFeeHeader, childManaUsed, feeAssetPriceModifier, manaTarget) {
|
|
1102
|
+
const MIN_ETH_PER_FEE_ASSET = 100n;
|
|
1103
|
+
const MAX_ETH_PER_FEE_ASSET = 100_000_000_000_000n; // 1e14, matches FeeLib.sol
|
|
1104
|
+
// excessMana = clampedAdd(parent.excessMana + parent.manaUsed, -manaTarget)
|
|
1105
|
+
const sum = parentFeeHeader.excessMana + parentFeeHeader.manaUsed;
|
|
1106
|
+
const excessMana = sum > manaTarget ? sum - manaTarget : 0n;
|
|
1107
|
+
// ethPerFeeAsset = computeNewEthPerFeeAsset(max(parent.ethPerFeeAsset, MIN), modifier)
|
|
1108
|
+
const parentPrice = parentFeeHeader.ethPerFeeAsset > MIN_ETH_PER_FEE_ASSET ? parentFeeHeader.ethPerFeeAsset : MIN_ETH_PER_FEE_ASSET;
|
|
1109
|
+
let newPrice;
|
|
1110
|
+
if (feeAssetPriceModifier >= 0n) {
|
|
1111
|
+
newPrice = parentPrice * (10_000n + feeAssetPriceModifier) / 10_000n;
|
|
1112
|
+
} else {
|
|
1113
|
+
const absMod = -feeAssetPriceModifier;
|
|
1114
|
+
newPrice = parentPrice * (10_000n - absMod) / 10_000n;
|
|
1115
|
+
}
|
|
1116
|
+
if (newPrice < MIN_ETH_PER_FEE_ASSET) {
|
|
1117
|
+
newPrice = MIN_ETH_PER_FEE_ASSET;
|
|
1118
|
+
}
|
|
1119
|
+
if (newPrice > MAX_ETH_PER_FEE_ASSET) {
|
|
1120
|
+
newPrice = MAX_ETH_PER_FEE_ASSET;
|
|
1121
|
+
}
|
|
1122
|
+
return {
|
|
1123
|
+
excessMana,
|
|
1124
|
+
manaUsed: childManaUsed,
|
|
1125
|
+
ethPerFeeAsset: newPrice,
|
|
1126
|
+
congestionCost: 0n,
|
|
1127
|
+
proverCost: 0n
|
|
1128
|
+
};
|
|
1129
|
+
}
|
|
1021
1130
|
/** Creates a request to Rollup#invalidateBadAttestation to be simulated or sent */ buildInvalidateBadAttestationRequest(checkpointNumber, attestationsAndSigners, committee, invalidIndex) {
|
|
1022
1131
|
return {
|
|
1023
1132
|
to: this.address,
|
|
@@ -1059,11 +1168,13 @@ export class RollupContract {
|
|
|
1059
1168
|
prover
|
|
1060
1169
|
]);
|
|
1061
1170
|
}
|
|
1062
|
-
getManaMinFeeAt(timestamp, inFeeAsset) {
|
|
1171
|
+
getManaMinFeeAt(timestamp, inFeeAsset, stateOverride) {
|
|
1063
1172
|
return this.rollup.read.getManaMinFeeAt([
|
|
1064
1173
|
timestamp,
|
|
1065
1174
|
inFeeAsset
|
|
1066
|
-
]
|
|
1175
|
+
], {
|
|
1176
|
+
stateOverride
|
|
1177
|
+
});
|
|
1067
1178
|
}
|
|
1068
1179
|
async getManaMinFeeComponentsAt(timestamp, inFeeAsset) {
|
|
1069
1180
|
const result = await this.rollup.read.getManaMinFeeComponentsAt([
|
|
@@ -5,13 +5,12 @@ import { Buffer32 } from '@aztec/foundation/buffer';
|
|
|
5
5
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
6
6
|
import { type Hex, type Log, type TypedDataDefinition } from 'viem';
|
|
7
7
|
/**
|
|
8
|
-
* Wrapper around the
|
|
8
|
+
* Wrapper around the SlashingProposer contract that provides
|
|
9
9
|
* a TypeScript interface for interacting with the consensus-based slashing system.
|
|
10
10
|
*/
|
|
11
|
-
export declare class
|
|
11
|
+
export declare class SlashingProposerContract {
|
|
12
12
|
readonly client: ViemClient;
|
|
13
13
|
private readonly contract;
|
|
14
|
-
readonly type: "tally";
|
|
15
14
|
constructor(client: ViemClient, address: Hex | EthAddress);
|
|
16
15
|
get address(): EthAddress;
|
|
17
16
|
getQuorumSize(): Promise<bigint>;
|
|
@@ -137,4 +136,4 @@ export declare class TallySlashingProposerContract {
|
|
|
137
136
|
* @returns An array of numbers representing the slash votes
|
|
138
137
|
*/
|
|
139
138
|
export declare function decodeSlashConsensusVotes(buffer: Buffer): number[];
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhc2hpbmdfcHJvcG9zZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdHMvc2xhc2hpbmdfcHJvcG9zZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFNM0QsT0FBTyxFQUVMLEtBQUssR0FBRyxFQUNSLEtBQUssR0FBRyxFQUNSLEtBQUssbUJBQW1CLEVBR3pCLE1BQU0sTUFBTSxDQUFDO0FBRWQ7OztHQUdHO0FBQ0gscUJBQWEsd0JBQXdCO2FBSWpCLE1BQU0sRUFBRSxVQUFVO0lBSHBDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFnRTtJQUV6RixZQUNrQixNQUFNLEVBQUUsVUFBVSxFQUNsQyxPQUFPLEVBQUUsR0FBRyxHQUFHLFVBQVUsRUFPMUI7SUFFRCxJQUFXLE9BQU8sZUFFakI7SUFFTSxhQUFhLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUV0QztJQUVNLFlBQVksSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBRXJDO0lBRU0sZ0JBQWdCLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUV6QztJQUVNLG9CQUFvQixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FFN0M7SUFFTSxtQkFBbUIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBRTVDO0lBRU0seUJBQXlCLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUVsRDtJQUVNLGtCQUFrQixJQUFJLE9BQU8sQ0FBQyxDQUFD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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slashing_proposer.d.ts","sourceRoot":"","sources":["../../src/contracts/slashing_proposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,19 @@ import { EthAddress } from '@aztec/foundation/eth-address';
|
|
|
4
4
|
import { Signature } from '@aztec/foundation/eth-signature';
|
|
5
5
|
import { hexToBuffer } from '@aztec/foundation/string';
|
|
6
6
|
import { SlasherAbi } from '@aztec/l1-artifacts/SlasherAbi';
|
|
7
|
-
import {
|
|
7
|
+
import { SlashingProposerAbi } from '@aztec/l1-artifacts/SlashingProposerAbi';
|
|
8
8
|
import { encodeFunctionData, getContract } from 'viem';
|
|
9
9
|
/**
|
|
10
|
-
* Wrapper around the
|
|
10
|
+
* Wrapper around the SlashingProposer contract that provides
|
|
11
11
|
* a TypeScript interface for interacting with the consensus-based slashing system.
|
|
12
|
-
*/ export class
|
|
12
|
+
*/ export class SlashingProposerContract {
|
|
13
13
|
client;
|
|
14
14
|
contract;
|
|
15
|
-
type;
|
|
16
15
|
constructor(client, address){
|
|
17
16
|
this.client = client;
|
|
18
|
-
this.type = 'tally';
|
|
19
17
|
this.contract = getContract({
|
|
20
18
|
address: typeof address === 'string' ? address : address.toString(),
|
|
21
|
-
abi:
|
|
19
|
+
abi: SlashingProposerAbi,
|
|
22
20
|
client
|
|
23
21
|
});
|
|
24
22
|
}
|
|
@@ -118,10 +116,10 @@ import { encodeFunctionData, getContract } from 'viem';
|
|
|
118
116
|
}));
|
|
119
117
|
}
|
|
120
118
|
/** Tries to extract a VoteCast event from the given logs. */ tryExtractVoteCastEvent(logs) {
|
|
121
|
-
return tryExtractEvent(logs, this.address.toString(),
|
|
119
|
+
return tryExtractEvent(logs, this.address.toString(), SlashingProposerAbi, 'VoteCast');
|
|
122
120
|
}
|
|
123
121
|
/** Tries to extract a RoundExecuted event from the given logs. */ tryExtractRoundExecutedEvent(logs) {
|
|
124
|
-
return tryExtractEvent(logs, this.address.toString(),
|
|
122
|
+
return tryExtractEvent(logs, this.address.toString(), SlashingProposerAbi, 'RoundExecuted');
|
|
125
123
|
}
|
|
126
124
|
/**
|
|
127
125
|
* Create a transaction to vote for slashing offenses
|
|
@@ -134,9 +132,9 @@ import { encodeFunctionData, getContract } from 'viem';
|
|
|
134
132
|
const signature = Signature.fromString(await signer(typedData));
|
|
135
133
|
return {
|
|
136
134
|
to: this.contract.address,
|
|
137
|
-
abi:
|
|
135
|
+
abi: SlashingProposerAbi,
|
|
138
136
|
data: encodeFunctionData({
|
|
139
|
-
abi:
|
|
137
|
+
abi: SlashingProposerAbi,
|
|
140
138
|
functionName: 'vote',
|
|
141
139
|
args: [
|
|
142
140
|
votes,
|
|
@@ -147,7 +145,7 @@ import { encodeFunctionData, getContract } from 'viem';
|
|
|
147
145
|
}
|
|
148
146
|
/** Returns the typed data definition to EIP712-sign for voting */ buildVoteTypedData(votes, slot) {
|
|
149
147
|
const domain = {
|
|
150
|
-
name: '
|
|
148
|
+
name: 'SlashingProposer',
|
|
151
149
|
version: '1',
|
|
152
150
|
chainId: this.client.chain.id,
|
|
153
151
|
verifyingContract: this.contract.address
|
|
@@ -206,9 +204,9 @@ import { encodeFunctionData, getContract } from 'viem';
|
|
|
206
204
|
*/ buildVoteRequestWithSignature(votes, signature) {
|
|
207
205
|
return {
|
|
208
206
|
to: this.contract.address,
|
|
209
|
-
abi:
|
|
207
|
+
abi: SlashingProposerAbi,
|
|
210
208
|
data: encodeFunctionData({
|
|
211
|
-
abi:
|
|
209
|
+
abi: SlashingProposerAbi,
|
|
212
210
|
functionName: 'vote',
|
|
213
211
|
args: [
|
|
214
212
|
votes,
|
|
@@ -226,11 +224,11 @@ import { encodeFunctionData, getContract } from 'viem';
|
|
|
226
224
|
return {
|
|
227
225
|
to: this.contract.address,
|
|
228
226
|
abi: mergeAbis([
|
|
229
|
-
|
|
227
|
+
SlashingProposerAbi,
|
|
230
228
|
SlasherAbi
|
|
231
229
|
]),
|
|
232
230
|
data: encodeFunctionData({
|
|
233
|
-
abi:
|
|
231
|
+
abi: SlashingProposerAbi,
|
|
234
232
|
functionName: 'executeRound',
|
|
235
233
|
args: [
|
|
236
234
|
round,
|
|
@@ -49,7 +49,6 @@ export declare function computeValidatorData(operator: Operator): ValidatorJson;
|
|
|
49
49
|
export interface RollupUpgradeAddresses {
|
|
50
50
|
rollupAddress: string;
|
|
51
51
|
verifierAddress: string;
|
|
52
|
-
slashFactoryAddress: string;
|
|
53
52
|
inboxAddress: string;
|
|
54
53
|
outboxAddress: string;
|
|
55
54
|
feeJuicePortalAddress: string;
|
|
@@ -61,7 +60,6 @@ export interface RollupUpgradeAddresses {
|
|
|
61
60
|
export interface ForgeRollupUpgradeResult {
|
|
62
61
|
rollupAddress: Hex;
|
|
63
62
|
verifierAddress: Hex;
|
|
64
|
-
slashFactoryAddress: Hex;
|
|
65
63
|
inboxAddress: Hex;
|
|
66
64
|
outboxAddress: Hex;
|
|
67
65
|
feeJuicePortalAddress: Hex;
|
|
@@ -210,7 +208,7 @@ export declare function getDeployAztecL1ContractsEnvVars(args: DeployAztecL1Cont
|
|
|
210
208
|
readonly AZTEC_EXIT_DELAY_SECONDS: string;
|
|
211
209
|
readonly AZTEC_PROVING_COST_PER_MANA: string;
|
|
212
210
|
readonly AZTEC_INITIAL_ETH_PER_FEE_ASSET: string;
|
|
213
|
-
readonly
|
|
211
|
+
readonly AZTEC_SLASHER_ENABLED: "false" | "true";
|
|
214
212
|
readonly AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: string;
|
|
215
213
|
readonly AZTEC_SLASHING_QUORUM: string | undefined;
|
|
216
214
|
readonly AZTEC_SLASHING_OFFSET_IN_ROUNDS: string;
|
|
@@ -241,7 +239,7 @@ export declare function getDeployRollupForUpgradeEnvVars(args: Omit<DeployAztecL
|
|
|
241
239
|
readonly AZTEC_EXIT_DELAY_SECONDS: string;
|
|
242
240
|
readonly AZTEC_PROVING_COST_PER_MANA: string;
|
|
243
241
|
readonly AZTEC_INITIAL_ETH_PER_FEE_ASSET: string;
|
|
244
|
-
readonly
|
|
242
|
+
readonly AZTEC_SLASHER_ENABLED: "false" | "true";
|
|
245
243
|
readonly AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: string;
|
|
246
244
|
readonly AZTEC_SLASHING_QUORUM: string | undefined;
|
|
247
245
|
readonly AZTEC_SLASHING_OFFSET_IN_ROUNDS: string;
|
|
@@ -254,6 +252,5 @@ export declare function getDeployRollupForUpgradeEnvVars(args: Omit<DeployAztecL
|
|
|
254
252
|
*/
|
|
255
253
|
export declare const deployRollupForUpgrade: (privateKey: `0x${string}`, rpcUrl: string, chainId: number, registryAddress: EthAddress, args: Omit<DeployAztecL1ContractsArgs, "activationThreshold" | "ejectionThreshold" | "governanceProposerQuorum" | "governanceProposerRoundSize" | "zkPassportArgs">) => Promise<{
|
|
256
254
|
rollup: RollupContract;
|
|
257
|
-
slashFactoryAddress: `0x${string}`;
|
|
258
255
|
}>;
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
256
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2F6dGVjX2wxX2NvbnRyYWN0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2RlcGxveV9henRlY19sMV9jb250cmFjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBd0IsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJM0QsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJcEQsT0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU0zQyxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLaEMsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUErRTNELE1BQU0sV0FBVyxXQUFXO0lBQzFCLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWCxFQUFFLEVBQUUsTUFBTSxDQUFDO0lBQ1gsRUFBRSxFQUFFLE1BQU0sQ0FBQztJQUNYLEVBQUUsRUFBRSxNQUFNLENBQUM7Q0FDWjtBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxhQUFhO0lBQzVCLFFBQVEsRUFBRSxNQUFNLENBQUM7SUFDakIsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUNuQixxQ0FBcUM7SUFDckMsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUNuQixrRUFBa0U7SUFDbEUsYUFBYSxFQUFFLFdBQVcsQ0FBQztDQUM1QjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0Isa0JBQWtCLElBQUks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
|
|
@@ -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;AAM3C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAKhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AA+E3D,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,aAAa,EAAE,WAAW,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAK3C;AAgBD;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CA0CxD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,CAoBtE;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"deploy_aztec_l1_contracts.d.ts","sourceRoot":"","sources":["../src/deploy_aztec_l1_contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -310,7 +310,6 @@ function cleanupDeployDir() {
|
|
|
310
310
|
governanceProposerAddress: EthAddress.fromString(result.governanceProposerAddress),
|
|
311
311
|
governanceAddress: EthAddress.fromString(result.governanceAddress),
|
|
312
312
|
stakingAssetAddress: EthAddress.fromString(result.stakingAssetAddress),
|
|
313
|
-
slashFactoryAddress: result.slashFactoryAddress ? EthAddress.fromString(result.slashFactoryAddress) : undefined,
|
|
314
313
|
feeAssetHandlerAddress: result.feeAssetHandlerAddress ? EthAddress.fromString(result.feeAssetHandlerAddress) : undefined,
|
|
315
314
|
stakingAssetHandlerAddress: result.stakingAssetHandlerAddress ? EthAddress.fromString(result.stakingAssetHandlerAddress) : undefined,
|
|
316
315
|
zkPassportVerifierAddress: result.zkPassportVerifierAddress ? EthAddress.fromString(result.zkPassportVerifierAddress) : undefined,
|
|
@@ -361,7 +360,7 @@ export function getDeployRollupForUpgradeEnvVars(args) {
|
|
|
361
360
|
AZTEC_EXIT_DELAY_SECONDS: args.exitDelaySeconds.toString(),
|
|
362
361
|
AZTEC_PROVING_COST_PER_MANA: args.provingCostPerMana.toString(),
|
|
363
362
|
AZTEC_INITIAL_ETH_PER_FEE_ASSET: args.initialEthPerFeeAsset.toString(),
|
|
364
|
-
|
|
363
|
+
AZTEC_SLASHER_ENABLED: args.slasherEnabled ? 'true' : 'false',
|
|
365
364
|
AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: args.slashingRoundSizeInEpochs.toString(),
|
|
366
365
|
AZTEC_SLASHING_QUORUM: args.slashingQuorum?.toString(),
|
|
367
366
|
AZTEC_SLASHING_OFFSET_IN_ROUNDS: args.slashingOffsetInRounds.toString(),
|
|
@@ -407,7 +406,6 @@ export function getDeployRollupForUpgradeEnvVars(args) {
|
|
|
407
406
|
// Create RollupContract wrapper for the deployed rollup
|
|
408
407
|
const rollup = new RollupContract(extendedClient, result.rollupAddress);
|
|
409
408
|
return {
|
|
410
|
-
rollup
|
|
411
|
-
slashFactoryAddress: result.slashFactoryAddress
|
|
409
|
+
rollup
|
|
412
410
|
};
|
|
413
411
|
};
|
|
@@ -15,7 +15,7 @@ export declare const l1ContractsDefaultEnv: {
|
|
|
15
15
|
readonly AZTEC_MANA_TARGET: 100000000;
|
|
16
16
|
readonly AZTEC_PROVING_COST_PER_MANA: 100;
|
|
17
17
|
readonly AZTEC_INITIAL_ETH_PER_FEE_ASSET: 10000000;
|
|
18
|
-
readonly
|
|
18
|
+
readonly AZTEC_SLASHER_ENABLED: true;
|
|
19
19
|
readonly AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: 4;
|
|
20
20
|
readonly AZTEC_SLASHING_LIFETIME_IN_ROUNDS: 5;
|
|
21
21
|
readonly AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS: 0;
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
AZTEC_MANA_TARGET: 100000000,
|
|
17
17
|
AZTEC_PROVING_COST_PER_MANA: 100,
|
|
18
18
|
AZTEC_INITIAL_ETH_PER_FEE_ASSET: 10000000,
|
|
19
|
-
|
|
19
|
+
AZTEC_SLASHER_ENABLED: true,
|
|
20
20
|
AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: 4,
|
|
21
21
|
AZTEC_SLASHING_LIFETIME_IN_ROUNDS: 5,
|
|
22
22
|
AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS: 0,
|