@aztec/ethereum 2.0.0-rc.3 → 2.0.0-rc.30
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.map +1 -1
- package/dest/config.js +100 -32
- package/dest/contracts/empire_slashing_proposer.d.ts +1 -1
- package/dest/contracts/empire_slashing_proposer.d.ts.map +1 -1
- package/dest/contracts/empire_slashing_proposer.js +1 -1
- package/dest/contracts/rollup.d.ts +8 -5
- package/dest/contracts/rollup.d.ts.map +1 -1
- package/dest/contracts/rollup.js +30 -21
- package/dest/deploy_l1_contracts.js +2 -2
- package/dest/l1_artifacts.d.ts +59 -27
- package/dest/l1_artifacts.d.ts.map +1 -1
- package/dest/l1_tx_utils.d.ts +4 -2
- package/dest/l1_tx_utils.d.ts.map +1 -1
- package/dest/l1_tx_utils.js +21 -13
- package/dest/l1_tx_utils_with_blobs.d.ts +2 -1
- package/dest/l1_tx_utils_with_blobs.d.ts.map +1 -1
- package/dest/l1_tx_utils_with_blobs.js +7 -5
- package/dest/queries.d.ts.map +1 -1
- package/dest/queries.js +3 -10
- package/dest/test/chain_monitor.d.ts +4 -0
- package/dest/test/chain_monitor.d.ts.map +1 -1
- package/dest/test/chain_monitor.js +55 -9
- package/dest/utils.d.ts.map +1 -1
- package/dest/utils.js +10 -161
- package/dest/zkPassportVerifierAddress.js +1 -1
- package/package.json +5 -5
- package/src/config.ts +109 -32
- package/src/contracts/empire_slashing_proposer.ts +6 -2
- package/src/contracts/rollup.ts +39 -20
- package/src/deploy_l1_contracts.ts +2 -2
- package/src/l1_tx_utils.ts +28 -9
- package/src/l1_tx_utils_with_blobs.ts +8 -2
- package/src/queries.ts +3 -7
- package/src/test/chain_monitor.ts +62 -6
- package/src/utils.ts +13 -185
- package/src/zkPassportVerifierAddress.ts +1 -1
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAOlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,KAAK,eAAe,EAA2B,MAAM,kBAAkB,CAAC;AAEjF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,yCAAyC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uFAAuF;IACvF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,wBAAwB,EAAE,MAAM,CAAC;IACjC,+EAA+E;IAC/E,0BAA0B,EAAE,MAAM,CAAC;IACnC,yCAAyC;IACzC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wKAAwK;IACxK,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,yBAAyB,EAAE,MAAM,CAAC;IAClC,gGAAgG;IAChG,wBAAwB,EAAE,MAAM,CAAC;IACjC,yGAAyG;IACzG,8BAA8B,EAAE,MAAM,CAAC;IACvC,yEAAyE;IACzE,cAAc,EAAE,UAAU,CAAC;IAC3B,4IAA4I;IAC5I,sBAAsB,EAAE,MAAM,CAAC;IAC/B,+BAA+B;IAC/B,aAAa,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC3C,2DAA2D;IAC3D,gBAAgB,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qEAAqE;IACrE,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sCAAsC;IACtC,2BAA2B,EAAE,MAAM,CAAC;IACpC,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;CAqBR,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAOlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,KAAK,eAAe,EAA2B,MAAM,kBAAkB,CAAC;AAEjF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,yCAAyC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uFAAuF;IACvF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2CAA2C;IAC3C,wBAAwB,EAAE,MAAM,CAAC;IACjC,+EAA+E;IAC/E,0BAA0B,EAAE,MAAM,CAAC;IACnC,yCAAyC;IACzC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wKAAwK;IACxK,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,yBAAyB,EAAE,MAAM,CAAC;IAClC,gGAAgG;IAChG,wBAAwB,EAAE,MAAM,CAAC;IACjC,yGAAyG;IACzG,8BAA8B,EAAE,MAAM,CAAC;IACvC,yEAAyE;IACzE,cAAc,EAAE,UAAU,CAAC;IAC3B,4IAA4I;IAC5I,sBAAsB,EAAE,MAAM,CAAC;IAC/B,+BAA+B;IAC/B,aAAa,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC3C,2DAA2D;IAC3D,gBAAgB,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qEAAqE;IACrE,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sCAAsC;IACtC,2BAA2B,EAAE,MAAM,CAAC;IACpC,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;CAqBR,CAAC;AA2D9B,eAAO,MAAM,0BAA0B,GAAI,aAAa,YAAY;;;;;;;;;;;;CAanE,CAAC;AAsBF,eAAO,MAAM,mBAAmB,GAAI,aAAa,YAAY;;;CAa5D,CAAC;AAaF,eAAO,MAAM,eAAe,GAAI,aAAa,YAAY;;;;;CAUxD,CAAC;AAkCF,eAAO,MAAM,oBAAoB,GAAI,aAAa,YAAY;;;;;;CAa7D,CAAC;AAmCF,eAAO,MAAM,mBAAmB,GAAI,aAAa,YAAY;;;;;;CAa5D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,CAAC,iBAAiB,CAkH3E,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,kBAAkB,CAAC,kBAAkB,CAW7E,CAAC;AAEF,wBAAgB,2BAA2B,IAAI,iBAAiB,CAE/D;AAED,wBAAgB,4BAA4B,IAAI,kBAAkB,CAEjE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,eAAe,CAAC,GAAG,IAAI,CAmH3F"}
|
package/dest/config.js
CHANGED
|
@@ -36,6 +36,19 @@ const LocalGovernanceConfiguration = {
|
|
|
36
36
|
requiredYeaMargin: 4n * 10n ** 16n,
|
|
37
37
|
minimumVotes: 400n * 10n ** 18n
|
|
38
38
|
};
|
|
39
|
+
const StagingPublicGovernanceConfiguration = {
|
|
40
|
+
proposeConfig: {
|
|
41
|
+
lockDelay: 60n * 60n * 24n * 30n,
|
|
42
|
+
lockAmount: DefaultL1ContractsConfig.activationThreshold * 100n
|
|
43
|
+
},
|
|
44
|
+
votingDelay: 60n,
|
|
45
|
+
votingDuration: 60n * 60n,
|
|
46
|
+
executionDelay: 60n,
|
|
47
|
+
gracePeriod: 60n * 60n * 24n * 7n,
|
|
48
|
+
quorum: 3n * 10n ** 17n,
|
|
49
|
+
requiredYeaMargin: 4n * 10n ** 16n,
|
|
50
|
+
minimumVotes: DefaultL1ContractsConfig.ejectionThreshold * 200n
|
|
51
|
+
};
|
|
39
52
|
const TestnetGovernanceConfiguration = {
|
|
40
53
|
proposeConfig: {
|
|
41
54
|
lockDelay: 60n * 60n * 24n,
|
|
@@ -49,46 +62,67 @@ const TestnetGovernanceConfiguration = {
|
|
|
49
62
|
requiredYeaMargin: 4n * 10n ** 16n,
|
|
50
63
|
minimumVotes: DefaultL1ContractsConfig.ejectionThreshold * 200n
|
|
51
64
|
};
|
|
65
|
+
const StagingIgnitionGovernanceConfiguration = {
|
|
66
|
+
proposeConfig: {
|
|
67
|
+
lockDelay: 60n * 60n * 24n * 30n,
|
|
68
|
+
lockAmount: DefaultL1ContractsConfig.activationThreshold * 100n
|
|
69
|
+
},
|
|
70
|
+
votingDelay: 60n,
|
|
71
|
+
votingDuration: 60n * 60n,
|
|
72
|
+
executionDelay: 60n,
|
|
73
|
+
gracePeriod: 60n * 60n * 24n * 7n,
|
|
74
|
+
quorum: 3n * 10n ** 17n,
|
|
75
|
+
requiredYeaMargin: 4n * 10n ** 16n,
|
|
76
|
+
minimumVotes: DefaultL1ContractsConfig.ejectionThreshold * 200n
|
|
77
|
+
};
|
|
52
78
|
export const getGovernanceConfiguration = (networkName)=>{
|
|
53
79
|
switch(networkName){
|
|
54
|
-
case 'alpha-testnet':
|
|
55
|
-
case 'testnet':
|
|
56
|
-
return TestnetGovernanceConfiguration;
|
|
57
80
|
case 'local':
|
|
58
81
|
return LocalGovernanceConfiguration;
|
|
82
|
+
case 'staging-public':
|
|
83
|
+
return StagingPublicGovernanceConfiguration;
|
|
84
|
+
case 'testnet':
|
|
85
|
+
return TestnetGovernanceConfiguration;
|
|
86
|
+
case 'staging-ignition':
|
|
87
|
+
return StagingIgnitionGovernanceConfiguration;
|
|
59
88
|
default:
|
|
60
|
-
throw new Error(
|
|
89
|
+
throw new Error(`Unrecognized network name: ${networkName}`);
|
|
61
90
|
}
|
|
62
91
|
};
|
|
63
|
-
const
|
|
92
|
+
const LocalGSEConfiguration = {
|
|
64
93
|
activationThreshold: BigInt(100e18),
|
|
65
94
|
ejectionThreshold: BigInt(50e18)
|
|
66
95
|
};
|
|
67
|
-
const
|
|
96
|
+
const StagingPublicGSEConfiguration = {
|
|
97
|
+
activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
98
|
+
ejectionThreshold: DefaultL1ContractsConfig.ejectionThreshold
|
|
99
|
+
};
|
|
100
|
+
const TestnetGSEConfiguration = {
|
|
68
101
|
activationThreshold: BigInt(100e18),
|
|
69
102
|
ejectionThreshold: BigInt(50e18)
|
|
70
103
|
};
|
|
104
|
+
const StagingIgnitionGSEConfiguration = {
|
|
105
|
+
activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
106
|
+
ejectionThreshold: DefaultL1ContractsConfig.ejectionThreshold
|
|
107
|
+
};
|
|
71
108
|
export const getGSEConfiguration = (networkName)=>{
|
|
72
109
|
switch(networkName){
|
|
73
|
-
case 'alpha-testnet':
|
|
74
|
-
case 'testnet':
|
|
75
|
-
return TestnetGSEConfiguration;
|
|
76
110
|
case 'local':
|
|
77
111
|
return LocalGSEConfiguration;
|
|
112
|
+
case 'staging-public':
|
|
113
|
+
return StagingPublicGSEConfiguration;
|
|
114
|
+
case 'testnet':
|
|
115
|
+
return TestnetGSEConfiguration;
|
|
116
|
+
case 'staging-ignition':
|
|
117
|
+
return StagingIgnitionGSEConfiguration;
|
|
78
118
|
default:
|
|
79
|
-
throw new Error(
|
|
119
|
+
throw new Error(`Unrecognized network name: ${networkName}`);
|
|
80
120
|
}
|
|
81
121
|
};
|
|
82
122
|
// Making a default config here as we are only using it thought the deployment
|
|
83
123
|
// and do not expect to be using different setups, so having environment variables
|
|
84
124
|
// for it seems overkill
|
|
85
|
-
const
|
|
86
|
-
sequencerBps: 5000,
|
|
87
|
-
rewardDistributor: EthAddress.ZERO.toString(),
|
|
88
|
-
booster: EthAddress.ZERO.toString(),
|
|
89
|
-
blockReward: BigInt(50e18)
|
|
90
|
-
};
|
|
91
|
-
const TestnetRewardConfig = {
|
|
125
|
+
const DefaultRewardConfig = {
|
|
92
126
|
sequencerBps: 5000,
|
|
93
127
|
rewardDistributor: EthAddress.ZERO.toString(),
|
|
94
128
|
booster: EthAddress.ZERO.toString(),
|
|
@@ -96,13 +130,13 @@ const TestnetRewardConfig = {
|
|
|
96
130
|
};
|
|
97
131
|
export const getRewardConfig = (networkName)=>{
|
|
98
132
|
switch(networkName){
|
|
99
|
-
case 'alpha-testnet':
|
|
100
|
-
case 'testnet':
|
|
101
|
-
return TestnetRewardConfig;
|
|
102
133
|
case 'local':
|
|
103
|
-
|
|
134
|
+
case 'staging-public':
|
|
135
|
+
case 'testnet':
|
|
136
|
+
case 'staging-ignition':
|
|
137
|
+
return DefaultRewardConfig;
|
|
104
138
|
default:
|
|
105
|
-
throw new Error(
|
|
139
|
+
throw new Error(`Unrecognized network name: ${networkName}`);
|
|
106
140
|
}
|
|
107
141
|
};
|
|
108
142
|
const LocalRewardBoostConfig = {
|
|
@@ -112,6 +146,13 @@ const LocalRewardBoostConfig = {
|
|
|
112
146
|
k: 1000000,
|
|
113
147
|
minimum: 100000
|
|
114
148
|
};
|
|
149
|
+
const StagingPublicRewardBoostConfig = {
|
|
150
|
+
increment: 200000,
|
|
151
|
+
maxScore: 5000000,
|
|
152
|
+
a: 5000,
|
|
153
|
+
k: 1000000,
|
|
154
|
+
minimum: 100000
|
|
155
|
+
};
|
|
115
156
|
const TestnetRewardBoostConfig = {
|
|
116
157
|
increment: 125000,
|
|
117
158
|
maxScore: 15000000,
|
|
@@ -119,15 +160,25 @@ const TestnetRewardBoostConfig = {
|
|
|
119
160
|
k: 1000000,
|
|
120
161
|
minimum: 100000
|
|
121
162
|
};
|
|
163
|
+
const StagingIgnitionRewardBoostConfig = {
|
|
164
|
+
increment: 200000,
|
|
165
|
+
maxScore: 5000000,
|
|
166
|
+
a: 5000,
|
|
167
|
+
k: 1000000,
|
|
168
|
+
minimum: 100000
|
|
169
|
+
};
|
|
122
170
|
export const getRewardBoostConfig = (networkName)=>{
|
|
123
171
|
switch(networkName){
|
|
124
|
-
case 'alpha-testnet':
|
|
125
|
-
case 'testnet':
|
|
126
|
-
return TestnetRewardBoostConfig;
|
|
127
172
|
case 'local':
|
|
128
173
|
return LocalRewardBoostConfig;
|
|
174
|
+
case 'staging-public':
|
|
175
|
+
return StagingPublicRewardBoostConfig;
|
|
176
|
+
case 'testnet':
|
|
177
|
+
return TestnetRewardBoostConfig;
|
|
178
|
+
case 'staging-ignition':
|
|
179
|
+
return StagingIgnitionRewardBoostConfig;
|
|
129
180
|
default:
|
|
130
|
-
throw new Error(
|
|
181
|
+
throw new Error(`Unrecognized network name: ${networkName}`);
|
|
131
182
|
}
|
|
132
183
|
};
|
|
133
184
|
// Similar to the above, no need for environment variables for this.
|
|
@@ -136,24 +187,41 @@ const LocalEntryQueueConfig = {
|
|
|
136
187
|
bootstrapFlushSize: 0n,
|
|
137
188
|
normalFlushSizeMin: 48n,
|
|
138
189
|
normalFlushSizeQuotient: 2n,
|
|
139
|
-
maxQueueFlushSize:
|
|
190
|
+
maxQueueFlushSize: 32n
|
|
191
|
+
};
|
|
192
|
+
const StagingPublicEntryQueueConfig = {
|
|
193
|
+
bootstrapValidatorSetSize: 48n,
|
|
194
|
+
bootstrapFlushSize: 32n,
|
|
195
|
+
normalFlushSizeMin: 32n,
|
|
196
|
+
normalFlushSizeQuotient: 2475n,
|
|
197
|
+
maxQueueFlushSize: 32n
|
|
140
198
|
};
|
|
141
199
|
const TestnetEntryQueueConfig = {
|
|
142
200
|
bootstrapValidatorSetSize: 750n,
|
|
143
|
-
bootstrapFlushSize:
|
|
201
|
+
bootstrapFlushSize: 48n,
|
|
202
|
+
normalFlushSizeMin: 1n,
|
|
203
|
+
normalFlushSizeQuotient: 2475n,
|
|
204
|
+
maxQueueFlushSize: 32n
|
|
205
|
+
};
|
|
206
|
+
const StagingIgnitionEntryQueueConfig = {
|
|
207
|
+
bootstrapValidatorSetSize: 750n,
|
|
208
|
+
bootstrapFlushSize: 48n,
|
|
144
209
|
normalFlushSizeMin: 1n,
|
|
145
210
|
normalFlushSizeQuotient: 2475n,
|
|
146
211
|
maxQueueFlushSize: 32n
|
|
147
212
|
};
|
|
148
213
|
export const getEntryQueueConfig = (networkName)=>{
|
|
149
214
|
switch(networkName){
|
|
150
|
-
case 'alpha-testnet':
|
|
151
|
-
case 'testnet':
|
|
152
|
-
return TestnetEntryQueueConfig;
|
|
153
215
|
case 'local':
|
|
154
216
|
return LocalEntryQueueConfig;
|
|
217
|
+
case 'staging-public':
|
|
218
|
+
return StagingPublicEntryQueueConfig;
|
|
219
|
+
case 'testnet':
|
|
220
|
+
return TestnetEntryQueueConfig;
|
|
221
|
+
case 'staging-ignition':
|
|
222
|
+
return StagingIgnitionEntryQueueConfig;
|
|
155
223
|
default:
|
|
156
|
-
throw new Error(
|
|
224
|
+
throw new Error(`Unrecognized network name: ${networkName}`);
|
|
157
225
|
}
|
|
158
226
|
};
|
|
159
227
|
export const l1ContractsConfigMappings = {
|
|
@@ -12,7 +12,7 @@ export declare class EmpireSlashingProposerContract extends EventEmitter impleme
|
|
|
12
12
|
private readonly logger;
|
|
13
13
|
private readonly proposer;
|
|
14
14
|
readonly type: "empire";
|
|
15
|
-
constructor(client: ViemClient, address: Hex);
|
|
15
|
+
constructor(client: ViemClient, address: Hex | EthAddress);
|
|
16
16
|
get address(): EthAddress;
|
|
17
17
|
getQuorumSize(): Promise<bigint>;
|
|
18
18
|
getRoundSize(): Promise<bigint>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empire_slashing_proposer.d.ts","sourceRoot":"","sources":["../../src/contracts/empire_slashing_proposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAK3D,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EAGL,KAAK,GAAG,EACR,KAAK,GAAG,EACR,KAAK,mBAAmB,EAGzB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,KAAK,WAAW,EAA8D,MAAM,kBAAkB,CAAC;AAEhH,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,KAAK,EAAE,MAAM;CAG1B;AAED,qBAAa,8BAA+B,SAAQ,YAAa,YAAW,WAAW;aAOnE,MAAM,EAAE,UAAU;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+D;IACtF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAE/F,SAAgB,IAAI,EAAG,QAAQ,CAAU;gBAGvB,MAAM,EAAE,UAAU,EAClC,OAAO,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"empire_slashing_proposer.d.ts","sourceRoot":"","sources":["../../src/contracts/empire_slashing_proposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAK3D,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EAGL,KAAK,GAAG,EACR,KAAK,GAAG,EACR,KAAK,mBAAmB,EAGzB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,KAAK,WAAW,EAA8D,MAAM,kBAAkB,CAAC;AAEhH,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,KAAK,EAAE,MAAM;CAG1B;AAED,qBAAa,8BAA+B,SAAQ,YAAa,YAAW,WAAW;aAOnE,MAAM,EAAE,UAAU;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+D;IACtF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAE/F,SAAgB,IAAI,EAAG,QAAQ,CAAU;gBAGvB,MAAM,EAAE,UAAU,EAClC,OAAO,EAAE,GAAG,GAAG,UAAU;IAU3B,IAAW,OAAO,eAEjB;IAEM,aAAa;IAIb,YAAY;IAIZ,mBAAmB;IAInB,yBAAyB;IAIzB,eAAe;IAIf,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI3C,WAAW;IAIL,YAAY,CACvB,aAAa,EAAE,GAAG,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,sBAAsB,EAAE,GAAG,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAI/E,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAInF,mBAAmB,CAAC,OAAO,EAAE,GAAG,GAAG,WAAW;IAOxC,gCAAgC,CAC3C,OAAO,EAAE,GAAG,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,GAAG,EAClB,MAAM,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,GACjD,OAAO,CAAC,WAAW,CAAC;IAehB,2BAA2B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO;IAiBlG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;KAAE,KAAK,OAAO;IAgB/F,oBAAoB,CACzB,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAA;KAAE,KAAK,OAAO;IAiBjG,6EAA6E;IACtE,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAW3D,qEAAqE;IAC9D,+BAA+B,CAAC,IAAI,EAAE,GAAG,EAAE;;;;;;;IAIlD;;;;;;OAMG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,sBAAsB,GAAE,MAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAe3E,YAAY,CACvB,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,MAAM,GAAG,MAAM,GACrB,UAAU,CAAC,OAAO,OAAO,CAAC,yBAAyB,CAAC;CAiDxD"}
|
|
@@ -19,7 +19,7 @@ export class EmpireSlashingProposerContract extends EventEmitter {
|
|
|
19
19
|
constructor(client, address){
|
|
20
20
|
super(), this.client = client, this.logger = createLogger('ethereum:contracts:empire_slashing_proposer'), this.type = 'empire';
|
|
21
21
|
this.proposer = getContract({
|
|
22
|
-
address,
|
|
22
|
+
address: typeof address === 'string' ? address : address.toString(),
|
|
23
23
|
abi: EmpireSlashingProposerAbi,
|
|
24
24
|
client
|
|
25
25
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
2
|
import type { ViemSignature } from '@aztec/foundation/eth-signature';
|
|
3
3
|
import { RollupAbi } from '@aztec/l1-artifacts/RollupAbi';
|
|
4
|
-
import { type Account, type GetContractReturnType, type Hex, type StateOverride } from 'viem';
|
|
4
|
+
import { type Account, type GetContractReturnType, type Hex, type StateOverride, type WatchContractEventReturnType } from 'viem';
|
|
5
5
|
import type { DeployL1ContractsReturnType } from '../deploy_l1_contracts.js';
|
|
6
6
|
import type { L1ContractAddresses } from '../l1_contract_addresses.js';
|
|
7
7
|
import type { L1ReaderConfig } from '../l1_reader.js';
|
|
@@ -101,11 +101,11 @@ export declare class RollupContract {
|
|
|
101
101
|
epochDuration: number;
|
|
102
102
|
proofSubmissionEpochs: number;
|
|
103
103
|
}>;
|
|
104
|
-
|
|
104
|
+
getSlasherAddress(): Promise<`0x${string}`>;
|
|
105
105
|
/**
|
|
106
106
|
* Returns a SlasherContract instance for interacting with the slasher contract.
|
|
107
107
|
*/
|
|
108
|
-
getSlasherContract(): Promise<SlasherContract>;
|
|
108
|
+
getSlasherContract(): Promise<SlasherContract | undefined>;
|
|
109
109
|
getOwner(): Promise<`0x${string}`>;
|
|
110
110
|
getActiveAttesterCount(): Promise<bigint>;
|
|
111
111
|
getSlashingProposerAddress(): Promise<EthAddress>;
|
|
@@ -244,7 +244,10 @@ export declare class RollupContract {
|
|
|
244
244
|
listenToSlasherChanged(callback: (args: {
|
|
245
245
|
oldSlasher: `0x${string}`;
|
|
246
246
|
newSlasher: `0x${string}`;
|
|
247
|
-
}) => unknown):
|
|
247
|
+
}) => unknown): WatchContractEventReturnType;
|
|
248
|
+
listenToBlockInvalidated(callback: (args: {
|
|
249
|
+
blockNumber: bigint;
|
|
250
|
+
}) => unknown): WatchContractEventReturnType;
|
|
248
251
|
getSlashEvents(l1BlockHash: Hex): Promise<{
|
|
249
252
|
amount: bigint;
|
|
250
253
|
attester: EthAddress;
|
|
@@ -252,6 +255,6 @@ export declare class RollupContract {
|
|
|
252
255
|
listenToSlash(callback: (args: {
|
|
253
256
|
amount: bigint;
|
|
254
257
|
attester: EthAddress;
|
|
255
|
-
}) => unknown):
|
|
258
|
+
}) => unknown): WatchContractEventReturnType;
|
|
256
259
|
}
|
|
257
260
|
//# sourceMappingURL=rollup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":"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"}
|
package/dest/contracts/rollup.js
CHANGED
|
@@ -8,9 +8,8 @@ import { memoize } from '@aztec/foundation/decorators';
|
|
|
8
8
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
9
9
|
import { RollupAbi } from '@aztec/l1-artifacts/RollupAbi';
|
|
10
10
|
import { RollupStorage } from '@aztec/l1-artifacts/RollupStorage';
|
|
11
|
-
import { SlasherAbi } from '@aztec/l1-artifacts/SlasherAbi';
|
|
12
11
|
import chunk from 'lodash.chunk';
|
|
13
|
-
import { encodeFunctionData,
|
|
12
|
+
import { encodeFunctionData, getContract, hexToBigInt, keccak256 } from 'viem';
|
|
14
13
|
import { getPublicClient } from '../client.js';
|
|
15
14
|
import { formatViemError } from '../utils.js';
|
|
16
15
|
import { EmpireSlashingProposerContract } from './empire_slashing_proposer.js';
|
|
@@ -68,16 +67,11 @@ export class RollupContract {
|
|
|
68
67
|
return this.rollup;
|
|
69
68
|
}
|
|
70
69
|
async getSlashingProposer() {
|
|
71
|
-
const
|
|
72
|
-
if (
|
|
70
|
+
const slasher = await this.getSlasherContract();
|
|
71
|
+
if (!slasher) {
|
|
73
72
|
return undefined;
|
|
74
73
|
}
|
|
75
|
-
const
|
|
76
|
-
address: slasherAddress,
|
|
77
|
-
abi: SlasherAbi,
|
|
78
|
-
client: this.client
|
|
79
|
-
});
|
|
80
|
-
const proposerAddress = await slasher.read.PROPOSER();
|
|
74
|
+
const proposerAddress = await slasher.getProposer();
|
|
81
75
|
const proposerAbi = [
|
|
82
76
|
{
|
|
83
77
|
type: 'function',
|
|
@@ -94,7 +88,7 @@ export class RollupContract {
|
|
|
94
88
|
}
|
|
95
89
|
];
|
|
96
90
|
const proposer = getContract({
|
|
97
|
-
address: proposerAddress,
|
|
91
|
+
address: proposerAddress.toString(),
|
|
98
92
|
abi: proposerAbi,
|
|
99
93
|
client: this.client
|
|
100
94
|
});
|
|
@@ -175,14 +169,17 @@ export class RollupContract {
|
|
|
175
169
|
proofSubmissionEpochs: Number(proofSubmissionEpochs)
|
|
176
170
|
};
|
|
177
171
|
}
|
|
178
|
-
|
|
172
|
+
getSlasherAddress() {
|
|
179
173
|
return this.rollup.read.getSlasher();
|
|
180
174
|
}
|
|
181
175
|
/**
|
|
182
176
|
* Returns a SlasherContract instance for interacting with the slasher contract.
|
|
183
177
|
*/ async getSlasherContract() {
|
|
184
|
-
const slasherAddress = await this.
|
|
185
|
-
|
|
178
|
+
const slasherAddress = EthAddress.fromString(await this.getSlasherAddress());
|
|
179
|
+
if (slasherAddress.isZero()) {
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
return new SlasherContract(this.client, slasherAddress);
|
|
186
183
|
}
|
|
187
184
|
getOwner() {
|
|
188
185
|
return this.rollup.read.owner();
|
|
@@ -191,13 +188,11 @@ export class RollupContract {
|
|
|
191
188
|
return this.rollup.read.getActiveAttesterCount();
|
|
192
189
|
}
|
|
193
190
|
async getSlashingProposerAddress() {
|
|
194
|
-
const
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
});
|
|
200
|
-
return EthAddress.fromString(await slasher.read.PROPOSER());
|
|
191
|
+
const slasher = await this.getSlasherContract();
|
|
192
|
+
if (!slasher) {
|
|
193
|
+
return EthAddress.ZERO;
|
|
194
|
+
}
|
|
195
|
+
return await slasher.getProposer();
|
|
201
196
|
}
|
|
202
197
|
getBlockReward() {
|
|
203
198
|
return this.rollup.read.getBlockReward();
|
|
@@ -631,6 +626,20 @@ export class RollupContract {
|
|
|
631
626
|
}
|
|
632
627
|
});
|
|
633
628
|
}
|
|
629
|
+
listenToBlockInvalidated(callback) {
|
|
630
|
+
return this.rollup.watchEvent.BlockInvalidated({}, {
|
|
631
|
+
onLogs: (logs)=>{
|
|
632
|
+
for (const log of logs){
|
|
633
|
+
const args = log.args;
|
|
634
|
+
if (args.blockNumber !== undefined) {
|
|
635
|
+
callback({
|
|
636
|
+
blockNumber: args.blockNumber
|
|
637
|
+
});
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
});
|
|
642
|
+
}
|
|
634
643
|
async getSlashEvents(l1BlockHash) {
|
|
635
644
|
const events = await this.rollup.getEvents.Slashed({}, {
|
|
636
645
|
blockHash: l1BlockHash,
|
|
@@ -22,7 +22,7 @@ import { ZK_PASSPORT_DOMAIN, ZK_PASSPORT_SCOPE, ZK_PASSPORT_VERIFIER_ADDRESS } f
|
|
|
22
22
|
export const DEPLOYER_ADDRESS = '0x4e59b44847b379578588920cA78FbF26c0B4956C';
|
|
23
23
|
const networkName = getActiveNetworkName();
|
|
24
24
|
export const deploySharedContracts = async (l1Client, deployer, args, logger)=>{
|
|
25
|
-
logger.info(`Deploying shared contracts for network
|
|
25
|
+
logger.info(`Deploying shared contracts for network configuration: ${networkName}`);
|
|
26
26
|
const txHashes = [];
|
|
27
27
|
const feeAssetAddress = await deployer.deploy(FeeAssetArtifact, [
|
|
28
28
|
'FeeJuice',
|
|
@@ -814,7 +814,7 @@ export const cheat_initializeFeeAssetHandler = async (extendedClient, deployer,
|
|
|
814
814
|
});
|
|
815
815
|
// Include Slasher and SlashingProposer (if deployed) in verification data
|
|
816
816
|
try {
|
|
817
|
-
const slasherAddrHex = await rollup.
|
|
817
|
+
const slasherAddrHex = await rollup.getSlasherAddress();
|
|
818
818
|
const slasherAddr = EthAddress.fromString(slasherAddrHex);
|
|
819
819
|
if (!slasherAddr.isZero()) {
|
|
820
820
|
// Slasher constructor: (address _vetoer, address _governance)
|
package/dest/l1_artifacts.d.ts
CHANGED
|
@@ -50485,6 +50485,18 @@ export declare const StakingAssetHandlerArtifact: {
|
|
|
50485
50485
|
readonly type: "error";
|
|
50486
50486
|
readonly name: "Inbox__Unauthorized";
|
|
50487
50487
|
readonly inputs: readonly [];
|
|
50488
|
+
}, {
|
|
50489
|
+
readonly type: "error";
|
|
50490
|
+
readonly name: "InvalidAge";
|
|
50491
|
+
readonly inputs: readonly [];
|
|
50492
|
+
}, {
|
|
50493
|
+
readonly type: "error";
|
|
50494
|
+
readonly name: "InvalidCountry";
|
|
50495
|
+
readonly inputs: readonly [];
|
|
50496
|
+
}, {
|
|
50497
|
+
readonly type: "error";
|
|
50498
|
+
readonly name: "InvalidCurrentDate";
|
|
50499
|
+
readonly inputs: readonly [];
|
|
50488
50500
|
}, {
|
|
50489
50501
|
readonly type: "error";
|
|
50490
50502
|
readonly name: "InvalidDomain";
|
|
@@ -50685,6 +50697,26 @@ export declare const StakingAssetHandlerArtifact: {
|
|
|
50685
50697
|
readonly internalType: "uint256";
|
|
50686
50698
|
}];
|
|
50687
50699
|
readonly stateMutability: "view";
|
|
50700
|
+
}, {
|
|
50701
|
+
readonly type: "function";
|
|
50702
|
+
readonly name: "maxAge";
|
|
50703
|
+
readonly inputs: readonly [];
|
|
50704
|
+
readonly outputs: readonly [{
|
|
50705
|
+
readonly name: "";
|
|
50706
|
+
readonly type: "uint256";
|
|
50707
|
+
readonly internalType: "uint256";
|
|
50708
|
+
}];
|
|
50709
|
+
readonly stateMutability: "view";
|
|
50710
|
+
}, {
|
|
50711
|
+
readonly type: "function";
|
|
50712
|
+
readonly name: "minAge";
|
|
50713
|
+
readonly inputs: readonly [];
|
|
50714
|
+
readonly outputs: readonly [{
|
|
50715
|
+
readonly name: "";
|
|
50716
|
+
readonly type: "uint256";
|
|
50717
|
+
readonly internalType: "uint256";
|
|
50718
|
+
}];
|
|
50719
|
+
readonly stateMutability: "view";
|
|
50688
50720
|
}, {
|
|
50689
50721
|
readonly type: "function";
|
|
50690
50722
|
readonly name: "mintInterval";
|
|
@@ -51930,6 +51962,30 @@ export declare const StakingAssetHandlerArtifact: {
|
|
|
51930
51962
|
readonly type: "uint256";
|
|
51931
51963
|
readonly internalType: "uint256";
|
|
51932
51964
|
}];
|
|
51965
|
+
}, {
|
|
51966
|
+
readonly type: "error";
|
|
51967
|
+
readonly name: "InvalidBoundAddress";
|
|
51968
|
+
readonly inputs: readonly [{
|
|
51969
|
+
readonly name: "_expected";
|
|
51970
|
+
readonly type: "address";
|
|
51971
|
+
readonly internalType: "address";
|
|
51972
|
+
}, {
|
|
51973
|
+
readonly name: "_received";
|
|
51974
|
+
readonly type: "address";
|
|
51975
|
+
readonly internalType: "address";
|
|
51976
|
+
}];
|
|
51977
|
+
}, {
|
|
51978
|
+
readonly type: "error";
|
|
51979
|
+
readonly name: "InvalidChainId";
|
|
51980
|
+
readonly inputs: readonly [{
|
|
51981
|
+
readonly name: "_expected";
|
|
51982
|
+
readonly type: "uint256";
|
|
51983
|
+
readonly internalType: "uint256";
|
|
51984
|
+
}, {
|
|
51985
|
+
readonly name: "_received";
|
|
51986
|
+
readonly type: "uint256";
|
|
51987
|
+
readonly internalType: "uint256";
|
|
51988
|
+
}];
|
|
51933
51989
|
}, {
|
|
51934
51990
|
readonly type: "error";
|
|
51935
51991
|
readonly name: "Outbox__AlreadyNullified";
|
|
@@ -52005,30 +52061,6 @@ export declare const StakingAssetHandlerArtifact: {
|
|
|
52005
52061
|
readonly type: "uint256";
|
|
52006
52062
|
readonly internalType: "Timestamp";
|
|
52007
52063
|
}];
|
|
52008
|
-
}, {
|
|
52009
|
-
readonly type: "error";
|
|
52010
|
-
readonly name: "ProofNotBoundToAddress";
|
|
52011
|
-
readonly inputs: readonly [{
|
|
52012
|
-
readonly name: "_expected";
|
|
52013
|
-
readonly type: "address";
|
|
52014
|
-
readonly internalType: "address";
|
|
52015
|
-
}, {
|
|
52016
|
-
readonly name: "_received";
|
|
52017
|
-
readonly type: "address";
|
|
52018
|
-
readonly internalType: "address";
|
|
52019
|
-
}];
|
|
52020
|
-
}, {
|
|
52021
|
-
readonly type: "error";
|
|
52022
|
-
readonly name: "ProofNotBoundToChainId";
|
|
52023
|
-
readonly inputs: readonly [{
|
|
52024
|
-
readonly name: "_expected";
|
|
52025
|
-
readonly type: "uint256";
|
|
52026
|
-
readonly internalType: "uint256";
|
|
52027
|
-
}, {
|
|
52028
|
-
readonly name: "_received";
|
|
52029
|
-
readonly type: "uint256";
|
|
52030
|
-
readonly internalType: "uint256";
|
|
52031
|
-
}];
|
|
52032
52064
|
}, {
|
|
52033
52065
|
readonly type: "error";
|
|
52034
52066
|
readonly name: "RewardDistributor__InvalidCaller";
|
|
@@ -52842,7 +52874,7 @@ export declare const StakingAssetHandlerArtifact: {
|
|
|
52842
52874
|
readonly type: "uint256[]";
|
|
52843
52875
|
readonly internalType: "uint256[]";
|
|
52844
52876
|
}, {
|
|
52845
|
-
readonly name: "
|
|
52877
|
+
readonly name: "validityPeriodInSeconds";
|
|
52846
52878
|
readonly type: "uint256";
|
|
52847
52879
|
readonly internalType: "uint256";
|
|
52848
52880
|
}, {
|
|
@@ -62286,7 +62318,7 @@ export declare const MockZkPassportVerifierArtifact: {
|
|
|
62286
62318
|
readonly type: "uint256[]";
|
|
62287
62319
|
readonly internalType: "uint256[]";
|
|
62288
62320
|
}, {
|
|
62289
|
-
readonly name: "
|
|
62321
|
+
readonly name: "validityPeriodInSeconds";
|
|
62290
62322
|
readonly type: "uint256";
|
|
62291
62323
|
readonly internalType: "uint256";
|
|
62292
62324
|
}, {
|
|
@@ -68033,7 +68065,7 @@ export declare const mockVerifiers: {
|
|
|
68033
68065
|
readonly type: "uint256[]";
|
|
68034
68066
|
readonly internalType: "uint256[]";
|
|
68035
68067
|
}, {
|
|
68036
|
-
readonly name: "
|
|
68068
|
+
readonly name: "validityPeriodInSeconds";
|
|
68037
68069
|
readonly type: "uint256";
|
|
68038
68070
|
readonly internalType: "uint256";
|
|
68039
68071
|
}, {
|