@aztec/ethereum 0.0.1-commit.24de95ac → 0.0.1-commit.2e2504e2

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 (208) hide show
  1. package/dest/account.d.ts +1 -1
  2. package/dest/chain.d.ts +1 -1
  3. package/dest/client.d.ts +1 -1
  4. package/dest/client.js +6 -2
  5. package/dest/config.d.ts +22 -68
  6. package/dest/config.d.ts.map +1 -1
  7. package/dest/config.js +57 -378
  8. package/dest/constants.d.ts +1 -1
  9. package/dest/contracts/empire_base.d.ts +7 -5
  10. package/dest/contracts/empire_base.d.ts.map +1 -1
  11. package/dest/contracts/empire_base.js +1 -1
  12. package/dest/contracts/empire_slashing_proposer.d.ts +6 -4
  13. package/dest/contracts/empire_slashing_proposer.d.ts.map +1 -1
  14. package/dest/contracts/empire_slashing_proposer.js +30 -17
  15. package/dest/contracts/errors.d.ts +1 -1
  16. package/dest/contracts/errors.d.ts.map +1 -1
  17. package/dest/contracts/fee_asset_handler.d.ts +6 -5
  18. package/dest/contracts/fee_asset_handler.d.ts.map +1 -1
  19. package/dest/contracts/fee_asset_handler.js +11 -9
  20. package/dest/contracts/fee_juice.d.ts +1 -1
  21. package/dest/contracts/fee_juice.d.ts.map +1 -1
  22. package/dest/contracts/governance.d.ts +18 -16
  23. package/dest/contracts/governance.d.ts.map +1 -1
  24. package/dest/contracts/governance.js +11 -1
  25. package/dest/contracts/governance_proposer.d.ts +6 -4
  26. package/dest/contracts/governance_proposer.d.ts.map +1 -1
  27. package/dest/contracts/governance_proposer.js +403 -11
  28. package/dest/contracts/gse.d.ts +1 -1
  29. package/dest/contracts/gse.d.ts.map +1 -1
  30. package/dest/contracts/inbox.d.ts +24 -3
  31. package/dest/contracts/inbox.d.ts.map +1 -1
  32. package/dest/contracts/inbox.js +36 -1
  33. package/dest/contracts/index.d.ts +3 -1
  34. package/dest/contracts/index.d.ts.map +1 -1
  35. package/dest/contracts/index.js +2 -0
  36. package/dest/contracts/log.d.ts +13 -0
  37. package/dest/contracts/log.d.ts.map +1 -0
  38. package/dest/contracts/log.js +1 -0
  39. package/dest/contracts/multicall.d.ts +2 -2
  40. package/dest/contracts/multicall.d.ts.map +1 -1
  41. package/dest/contracts/multicall.js +2 -1
  42. package/dest/contracts/outbox.d.ts +41 -0
  43. package/dest/contracts/outbox.d.ts.map +1 -0
  44. package/dest/contracts/outbox.js +86 -0
  45. package/dest/contracts/registry.d.ts +1 -1
  46. package/dest/contracts/registry.d.ts.map +1 -1
  47. package/dest/contracts/rollup.d.ts +194 -123
  48. package/dest/contracts/rollup.d.ts.map +1 -1
  49. package/dest/contracts/rollup.js +750 -184
  50. package/dest/contracts/slasher_contract.d.ts +1 -1
  51. package/dest/contracts/slasher_contract.d.ts.map +1 -1
  52. package/dest/contracts/tally_slashing_proposer.d.ts +9 -7
  53. package/dest/contracts/tally_slashing_proposer.d.ts.map +1 -1
  54. package/dest/contracts/tally_slashing_proposer.js +11 -4
  55. package/dest/contracts/utils.d.ts +1 -1
  56. package/dest/deploy_aztec_l1_contracts.d.ts +260 -0
  57. package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -0
  58. package/dest/deploy_aztec_l1_contracts.js +399 -0
  59. package/dest/deploy_l1_contract.d.ts +68 -0
  60. package/dest/deploy_l1_contract.d.ts.map +1 -0
  61. package/dest/deploy_l1_contract.js +312 -0
  62. package/dest/eth-signer/eth-signer.d.ts +1 -1
  63. package/dest/eth-signer/index.d.ts +1 -1
  64. package/dest/forwarder_proxy.d.ts +32 -0
  65. package/dest/forwarder_proxy.d.ts.map +1 -0
  66. package/dest/forwarder_proxy.js +93 -0
  67. package/dest/generated/l1-contracts-defaults.d.ts +30 -0
  68. package/dest/generated/l1-contracts-defaults.d.ts.map +1 -0
  69. package/dest/generated/l1-contracts-defaults.js +30 -0
  70. package/dest/l1_artifacts.d.ts +6597 -2046
  71. package/dest/l1_artifacts.d.ts.map +1 -1
  72. package/dest/l1_contract_addresses.d.ts +3 -3
  73. package/dest/l1_contract_addresses.d.ts.map +1 -1
  74. package/dest/l1_contract_addresses.js +3 -3
  75. package/dest/l1_reader.d.ts +3 -1
  76. package/dest/l1_reader.d.ts.map +1 -1
  77. package/dest/l1_reader.js +6 -0
  78. package/dest/l1_tx_utils/config.d.ts +5 -5
  79. package/dest/l1_tx_utils/config.d.ts.map +1 -1
  80. package/dest/l1_tx_utils/config.js +30 -7
  81. package/dest/l1_tx_utils/constants.d.ts +8 -2
  82. package/dest/l1_tx_utils/constants.d.ts.map +1 -1
  83. package/dest/l1_tx_utils/constants.js +27 -2
  84. package/dest/l1_tx_utils/factory.d.ts +1 -1
  85. package/dest/l1_tx_utils/fee-strategies/index.d.ts +10 -0
  86. package/dest/l1_tx_utils/fee-strategies/index.d.ts.map +1 -0
  87. package/dest/l1_tx_utils/fee-strategies/index.js +12 -0
  88. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts +8 -0
  89. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts.map +1 -0
  90. package/dest/l1_tx_utils/fee-strategies/p75_competitive.js +129 -0
  91. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts +23 -0
  92. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts.map +1 -0
  93. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.js +191 -0
  94. package/dest/l1_tx_utils/fee-strategies/types.d.ts +51 -0
  95. package/dest/l1_tx_utils/fee-strategies/types.d.ts.map +1 -0
  96. package/dest/l1_tx_utils/fee-strategies/types.js +3 -0
  97. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts +41 -0
  98. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts.map +1 -0
  99. package/dest/l1_tx_utils/forwarder_l1_tx_utils.js +48 -0
  100. package/dest/l1_tx_utils/index-blobs.d.ts +3 -0
  101. package/dest/l1_tx_utils/index-blobs.d.ts.map +1 -0
  102. package/dest/l1_tx_utils/index-blobs.js +2 -0
  103. package/dest/l1_tx_utils/index.d.ts +3 -1
  104. package/dest/l1_tx_utils/index.d.ts.map +1 -1
  105. package/dest/l1_tx_utils/index.js +2 -0
  106. package/dest/l1_tx_utils/interfaces.d.ts +2 -2
  107. package/dest/l1_tx_utils/interfaces.d.ts.map +1 -1
  108. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts +233 -0
  109. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts.map +1 -0
  110. package/dest/l1_tx_utils/l1_fee_analyzer.js +506 -0
  111. package/dest/l1_tx_utils/l1_tx_utils.d.ts +1 -2
  112. package/dest/l1_tx_utils/l1_tx_utils.d.ts.map +1 -1
  113. package/dest/l1_tx_utils/l1_tx_utils.js +23 -10
  114. package/dest/l1_tx_utils/l1_tx_utils_with_blobs.d.ts +1 -1
  115. package/dest/l1_tx_utils/l1_tx_utils_with_blobs.d.ts.map +1 -1
  116. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts +19 -30
  117. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts.map +1 -1
  118. package/dest/l1_tx_utils/readonly_l1_tx_utils.js +55 -163
  119. package/dest/l1_tx_utils/signer.d.ts +1 -1
  120. package/dest/l1_tx_utils/types.d.ts +1 -1
  121. package/dest/l1_tx_utils/types.d.ts.map +1 -1
  122. package/dest/l1_tx_utils/utils.d.ts +1 -1
  123. package/dest/l1_types.d.ts +1 -1
  124. package/dest/publisher_manager.d.ts +3 -2
  125. package/dest/publisher_manager.d.ts.map +1 -1
  126. package/dest/publisher_manager.js +2 -2
  127. package/dest/queries.d.ts +2 -2
  128. package/dest/queries.d.ts.map +1 -1
  129. package/dest/queries.js +16 -6
  130. package/dest/test/chain_monitor.d.ts +27 -24
  131. package/dest/test/chain_monitor.d.ts.map +1 -1
  132. package/dest/test/chain_monitor.js +33 -36
  133. package/dest/test/delayed_tx_utils.d.ts +1 -1
  134. package/dest/test/delayed_tx_utils.d.ts.map +1 -1
  135. package/dest/test/eth_cheat_codes.d.ts +11 -3
  136. package/dest/test/eth_cheat_codes.d.ts.map +1 -1
  137. package/dest/test/eth_cheat_codes.js +11 -3
  138. package/dest/test/eth_cheat_codes_with_state.d.ts +1 -1
  139. package/dest/test/eth_cheat_codes_with_state.d.ts.map +1 -1
  140. package/dest/test/index.d.ts +1 -1
  141. package/dest/test/rollup_cheat_codes.d.ts +17 -13
  142. package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
  143. package/dest/test/rollup_cheat_codes.js +62 -38
  144. package/dest/test/start_anvil.d.ts +4 -1
  145. package/dest/test/start_anvil.d.ts.map +1 -1
  146. package/dest/test/start_anvil.js +3 -2
  147. package/dest/test/tx_delayer.d.ts +1 -1
  148. package/dest/test/tx_delayer.d.ts.map +1 -1
  149. package/dest/test/tx_delayer.js +4 -3
  150. package/dest/test/upgrade_utils.d.ts +1 -1
  151. package/dest/types.d.ts +57 -2
  152. package/dest/types.d.ts.map +1 -1
  153. package/dest/utils.d.ts +16 -3
  154. package/dest/utils.d.ts.map +1 -1
  155. package/dest/utils.js +64 -0
  156. package/dest/zkPassportVerifierAddress.d.ts +1 -1
  157. package/package.json +34 -14
  158. package/src/client.ts +2 -2
  159. package/src/config.ts +71 -458
  160. package/src/contracts/README.md +157 -0
  161. package/src/contracts/empire_base.ts +6 -5
  162. package/src/contracts/empire_slashing_proposer.ts +32 -32
  163. package/src/contracts/fee_asset_handler.ts +10 -7
  164. package/src/contracts/governance.ts +10 -1
  165. package/src/contracts/governance_proposer.ts +20 -6
  166. package/src/contracts/inbox.ts +55 -3
  167. package/src/contracts/index.ts +2 -0
  168. package/src/contracts/log.ts +13 -0
  169. package/src/contracts/multicall.ts +5 -2
  170. package/src/contracts/outbox.ts +98 -0
  171. package/src/contracts/rollup.ts +421 -160
  172. package/src/contracts/tally_slashing_proposer.ts +15 -8
  173. package/src/deploy_aztec_l1_contracts.ts +623 -0
  174. package/src/deploy_l1_contract.ts +362 -0
  175. package/src/forwarder_proxy.ts +108 -0
  176. package/src/generated/l1-contracts-defaults.ts +32 -0
  177. package/src/l1_contract_addresses.ts +22 -20
  178. package/src/l1_reader.ts +8 -0
  179. package/src/l1_tx_utils/config.ts +32 -11
  180. package/src/l1_tx_utils/constants.ts +13 -2
  181. package/src/l1_tx_utils/fee-strategies/index.ts +22 -0
  182. package/src/l1_tx_utils/fee-strategies/p75_competitive.ts +163 -0
  183. package/src/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.ts +245 -0
  184. package/src/l1_tx_utils/fee-strategies/types.ts +56 -0
  185. package/src/l1_tx_utils/forwarder_l1_tx_utils.ts +119 -0
  186. package/src/l1_tx_utils/index-blobs.ts +2 -0
  187. package/src/l1_tx_utils/index.ts +2 -0
  188. package/src/l1_tx_utils/interfaces.ts +1 -1
  189. package/src/l1_tx_utils/l1_fee_analyzer.ts +803 -0
  190. package/src/l1_tx_utils/l1_tx_utils.ts +30 -10
  191. package/src/l1_tx_utils/readonly_l1_tx_utils.ts +69 -209
  192. package/src/publisher_manager.ts +4 -2
  193. package/src/queries.ts +17 -6
  194. package/src/test/chain_monitor.ts +51 -49
  195. package/src/test/eth_cheat_codes.ts +9 -3
  196. package/src/test/rollup_cheat_codes.ts +63 -43
  197. package/src/test/start_anvil.ts +5 -1
  198. package/src/test/tx_delayer.ts +5 -3
  199. package/src/types.ts +62 -0
  200. package/src/utils.ts +83 -1
  201. package/dest/deploy_l1_contracts.d.ts +0 -226
  202. package/dest/deploy_l1_contracts.d.ts.map +0 -1
  203. package/dest/deploy_l1_contracts.js +0 -1473
  204. package/dest/index.d.ts +0 -18
  205. package/dest/index.d.ts.map +0 -1
  206. package/dest/index.js +0 -17
  207. package/src/deploy_l1_contracts.ts +0 -1849
  208. package/src/index.ts +0 -17
@@ -1,8 +1,12 @@
1
- import { type L1TxRequest, type ViemClient, tryExtractEvent } from '@aztec/ethereum';
1
+ import type { L1TxRequest } from '@aztec/ethereum/l1-tx-utils';
2
+ import type { ViemClient } from '@aztec/ethereum/types';
3
+ import { mergeAbis, tryExtractEvent } from '@aztec/ethereum/utils';
4
+ import { SlotNumber } from '@aztec/foundation/branded-types';
2
5
  import { Buffer32 } from '@aztec/foundation/buffer';
3
6
  import { EthAddress } from '@aztec/foundation/eth-address';
4
7
  import { Signature } from '@aztec/foundation/eth-signature';
5
8
  import { hexToBuffer } from '@aztec/foundation/string';
9
+ import { SlasherAbi } from '@aztec/l1-artifacts/SlasherAbi';
6
10
  import { TallySlashingProposerAbi } from '@aztec/l1-artifacts/TallySlashingProposerAbi';
7
11
 
8
12
  import {
@@ -97,8 +101,8 @@ export class TallySlashingProposerContract {
97
101
  * @param slot - The slot number to check at
98
102
  * @returns Whether the round is ready to execute
99
103
  */
100
- public async isRoundReadyToExecute(round: bigint, slot: bigint): Promise<boolean> {
101
- return await this.contract.read.isRoundReadyToExecute([round, slot]);
104
+ public async isRoundReadyToExecute(round: bigint, slot: SlotNumber): Promise<boolean> {
105
+ return await this.contract.read.isRoundReadyToExecute([round, BigInt(slot)]);
102
106
  }
103
107
 
104
108
  /** Returns the slash actions and payload address for a given round (zero if no slash actions) */
@@ -149,7 +153,7 @@ export class TallySlashingProposerContract {
149
153
  */
150
154
  public async buildVoteRequestFromSigner(
151
155
  votes: Hex,
152
- slot: bigint,
156
+ slot: SlotNumber,
153
157
  signer: (msg: TypedDataDefinition) => Promise<Hex>,
154
158
  ): Promise<L1TxRequest> {
155
159
  const typedData = this.buildVoteTypedData(votes, slot);
@@ -157,6 +161,7 @@ export class TallySlashingProposerContract {
157
161
 
158
162
  return {
159
163
  to: this.contract.address,
164
+ abi: TallySlashingProposerAbi,
160
165
  data: encodeFunctionData({
161
166
  abi: TallySlashingProposerAbi,
162
167
  functionName: 'vote',
@@ -166,7 +171,7 @@ export class TallySlashingProposerContract {
166
171
  }
167
172
 
168
173
  /** Returns the typed data definition to EIP712-sign for voting */
169
- public buildVoteTypedData(votes: Hex, slot: bigint): TypedDataDefinition {
174
+ public buildVoteTypedData(votes: Hex, slot: SlotNumber): TypedDataDefinition {
170
175
  const domain = {
171
176
  name: 'TallySlashingProposer',
172
177
  version: '1',
@@ -187,12 +192,12 @@ export class TallySlashingProposerContract {
187
192
  ],
188
193
  };
189
194
 
190
- return { domain, types, primaryType: 'Vote', message: { votes, slot } };
195
+ return { domain, types, primaryType: 'Vote', message: { votes, slot: BigInt(slot) } };
191
196
  }
192
197
 
193
198
  /** Gets the digest to sign for voting directly from the contract */
194
- public async getVoteDataDigest(votes: Hex, slot: bigint): Promise<Buffer32> {
195
- return Buffer32.fromString(await this.contract.read.getVoteSignatureDigest([votes, slot]));
199
+ public async getVoteDataDigest(votes: Hex, slot: SlotNumber): Promise<Buffer32> {
200
+ return Buffer32.fromString(await this.contract.read.getVoteSignatureDigest([votes, BigInt(slot)]));
196
201
  }
197
202
 
198
203
  /**
@@ -204,6 +209,7 @@ export class TallySlashingProposerContract {
204
209
  public buildVoteRequestWithSignature(votes: Hex, signature: { v: number; r: Hex; s: Hex }): L1TxRequest {
205
210
  return {
206
211
  to: this.contract.address,
212
+ abi: TallySlashingProposerAbi,
207
213
  data: encodeFunctionData({
208
214
  abi: TallySlashingProposerAbi,
209
215
  functionName: 'vote',
@@ -221,6 +227,7 @@ export class TallySlashingProposerContract {
221
227
  public buildExecuteRoundRequest(round: bigint, committees: EthAddress[][]): L1TxRequest {
222
228
  return {
223
229
  to: this.contract.address,
230
+ abi: mergeAbis([TallySlashingProposerAbi, SlasherAbi]),
224
231
  data: encodeFunctionData({
225
232
  abi: TallySlashingProposerAbi,
226
233
  functionName: 'executeRound',