@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.
Files changed (36) hide show
  1. package/dest/config.d.ts.map +1 -1
  2. package/dest/config.js +100 -32
  3. package/dest/contracts/empire_slashing_proposer.d.ts +1 -1
  4. package/dest/contracts/empire_slashing_proposer.d.ts.map +1 -1
  5. package/dest/contracts/empire_slashing_proposer.js +1 -1
  6. package/dest/contracts/rollup.d.ts +8 -5
  7. package/dest/contracts/rollup.d.ts.map +1 -1
  8. package/dest/contracts/rollup.js +30 -21
  9. package/dest/deploy_l1_contracts.js +2 -2
  10. package/dest/l1_artifacts.d.ts +59 -27
  11. package/dest/l1_artifacts.d.ts.map +1 -1
  12. package/dest/l1_tx_utils.d.ts +4 -2
  13. package/dest/l1_tx_utils.d.ts.map +1 -1
  14. package/dest/l1_tx_utils.js +21 -13
  15. package/dest/l1_tx_utils_with_blobs.d.ts +2 -1
  16. package/dest/l1_tx_utils_with_blobs.d.ts.map +1 -1
  17. package/dest/l1_tx_utils_with_blobs.js +7 -5
  18. package/dest/queries.d.ts.map +1 -1
  19. package/dest/queries.js +3 -10
  20. package/dest/test/chain_monitor.d.ts +4 -0
  21. package/dest/test/chain_monitor.d.ts.map +1 -1
  22. package/dest/test/chain_monitor.js +55 -9
  23. package/dest/utils.d.ts.map +1 -1
  24. package/dest/utils.js +10 -161
  25. package/dest/zkPassportVerifierAddress.js +1 -1
  26. package/package.json +5 -5
  27. package/src/config.ts +109 -32
  28. package/src/contracts/empire_slashing_proposer.ts +6 -2
  29. package/src/contracts/rollup.ts +39 -20
  30. package/src/deploy_l1_contracts.ts +2 -2
  31. package/src/l1_tx_utils.ts +28 -9
  32. package/src/l1_tx_utils_with_blobs.ts +8 -2
  33. package/src/queries.ts +3 -7
  34. package/src/test/chain_monitor.ts +62 -6
  35. package/src/utils.ts +13 -185
  36. package/src/zkPassportVerifierAddress.ts +1 -1
@@ -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;AA8B9B,eAAO,MAAM,0BAA0B,GAAI,aAAa,YAAY;;;;;;;;;;;;CAUnE,CAAC;AAYF,eAAO,MAAM,mBAAmB,GAAI,aAAa,YAAY;;;CAU5D,CAAC;AAmBF,eAAO,MAAM,eAAe,GAAI,aAAa,YAAY;;;;;CAUxD,CAAC;AAkBF,eAAO,MAAM,oBAAoB,GAAI,aAAa,YAAY;;;;;;CAU7D,CAAC;AAmBF,eAAO,MAAM,mBAAmB,GAAI,aAAa,YAAY;;;;;;CAU5D,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"}
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('Unrecognized network name: ' + networkName);
89
+ throw new Error(`Unrecognized network name: ${networkName}`);
61
90
  }
62
91
  };
63
- const TestnetGSEConfiguration = {
92
+ const LocalGSEConfiguration = {
64
93
  activationThreshold: BigInt(100e18),
65
94
  ejectionThreshold: BigInt(50e18)
66
95
  };
67
- const LocalGSEConfiguration = {
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('Unrecognized network name: ' + networkName);
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 LocalRewardConfig = {
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
- return LocalRewardConfig;
134
+ case 'staging-public':
135
+ case 'testnet':
136
+ case 'staging-ignition':
137
+ return DefaultRewardConfig;
104
138
  default:
105
- throw new Error('Unrecognized network name: ' + networkName);
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('Unrecognized network name: ' + networkName);
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: 48n
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: 75n,
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('Unrecognized network name: ' + networkName);
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;IAMd,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"}
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
- getSlasher(): Promise<`0x${string}`>;
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): import("viem").WatchContractEventReturnType;
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): import("viem").WatchContractEventReturnType;
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":"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"}
1
+ {"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":"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"}
@@ -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, getAddress, getContract, hexToBigInt, keccak256 } from 'viem';
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 slasherAddress = await this.rollup.read.getSlasher();
72
- if (EthAddress.fromString(slasherAddress).isZero()) {
70
+ const slasher = await this.getSlasherContract();
71
+ if (!slasher) {
73
72
  return undefined;
74
73
  }
75
- const slasher = getContract({
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
- getSlasher() {
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.getSlasher();
185
- return new SlasherContract(this.client, EthAddress.fromString(slasherAddress));
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 slasherAddress = await this.getSlasher();
195
- const slasher = getContract({
196
- address: getAddress(slasherAddress.toString()),
197
- abi: SlasherAbi,
198
- client: this.client
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 configration: ${networkName}`);
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.getSlasher();
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)
@@ -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: "validityPeriodInDays";
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: "validityPeriodInDays";
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: "validityPeriodInDays";
68068
+ readonly name: "validityPeriodInSeconds";
68037
68069
  readonly type: "uint256";
68038
68070
  readonly internalType: "uint256";
68039
68071
  }, {