Skip to content

Releases: primev/mev-commit

v0.5.3

12 Sep 08:35
9407e4b
Compare
Choose a tag to compare

This patch release implements a Holesky contract upgrade for the MevCommitAVS contract to emit event data in a more desirable manner.

Changelog

  • 92b1efb feat: upgrade MevCommitAVS to v2 on Holesky (repeat) (#394)
  • 9407e4b feat: upgrade MevCommitAVS to v3 on Holesky (#399)

v0.5.2

09 Sep 21:23
c6c374b
Compare
Choose a tag to compare

This patch release fixes the stability of the websocket event subscription and also an issue related to the Provider API not having the transaction payload and reverting transaction hashes populated correctly.

Changelog

  • 93ef274 fix: retry on failed event subscription (#386)
  • c6c374b fix: send payloads and reverting txns on API (#390)

v0.5.1

03 Sep 19:27
7a76390
Compare
Choose a tag to compare

This patch release includes a new feature that allows transaction payloads to be sent in the bidding process and increases the default gas amount used for transactions.

Changelog

v0.5.0

08 Aug 21:29
aeb9ec0
Compare
Choose a tag to compare

The team is happy to announce the next release of testnet. The main focus of this release has been to add a number of new features and harden the existing ones.

Embedded Storage: Introduction of persistent storage for mev-commit that helps retain certain state across restarts.

Health Check: mev-commit and oracle now expose a /health endpoint that helps determine the health of the running node by the state of important subsystems.

New Oracle API: A new authenticated API for registering provider graffiti along with their addresses has been introduced for oracle.

New Provider API: A new withdrawal API for providers to withdraw their stake from the contract.

New Bidder API: A new validator API for bidders to get information on whether the running node is opted into a validator that proposes blocks in the next epoch.

Increase of Slashing Penalty: The slashing penalty has been increased by 5% on top of the decayed bid amount (removed from the provider's share). 100% of the decayed bid is given to the bidder, and the additional 5% goes to the protocol treasury.

Window Offset Change: This change allows a deposit to be withdrawn 1 window earlier and to deposit 3 times the window amount for automatic deposit instead of 4 times.

In addition, several small fixes and improvements have been made. See the changelog and documentation for more information.

Changelog

v0.4.3

17 Jul 15:17
Compare
Choose a tag to compare

This patch release includes several fixes to improve functionality. The launchscript now always loads the latest released version and uses WebSocket instead of HTTP to communicate with the RPC settlement endpoint. The bidder auto-deposit API has been updated to provide a more ergonomic user experience.

Changelog

v0.4.2

15 Jul 11:51
Compare
Choose a tag to compare

This patch release includes several updates and fixes to improve functionality and security. A new API for provider registration has been added to streamline the registration process. Additional information is now included in the auto-deposit response to improve the detail. Furthermore, an issue causing a panic in the bidder has been fixed to ensure stable operation.

Changelog

  • d5a2c7b feat: add auth_token as a new type of secret artifact (#232)
  • be998f7 feat: add new API for provider registration (#229)
  • d4beae5 feat: added additional info for the autodeposit (#228)
  • e458905 fix: added description for the autodeposit response (#231)
  • 413038a fix: override oracle winners for devenv only (#225)
  • 3a54f57 fix: real-bidder panic (#219)

v0.4.1

10 Jul 21:57
01ddada
Compare
Choose a tag to compare

This release is a patch release to ensure that the bidder RPC API does not drop the reverting transaction list on the response from the provider, and to prevent the use of the canceled context in the withdrawal. Additionally, the faucet time has been changed to one minute.

Changelog

v0.4.0

10 Jul 19:09
Compare
Choose a tag to compare

The team is happy to announce the next release of testnet. The main focus of this release was a set of new features to improve the user experience.

Automatic Bidder Deposits: Bidders can now configure a fixed amount to be automatically deposited into the Bidder Registry contract using the new configuration options. This feature will move the required funds from the bidder's balance on the settlement chain to the Bidder Registry contract. Once enabled, bidders will automatically have funds available to bid on subsequent windows as long as they have sufficient funds in their wallets.

Provider Whitelisting: Bidders can now configure a subset of providers on the mev-commit chain that will be able to see their bids. If configured, they will only receive pre-confirmations from the subset of providers. All other providers will reject the bids.

Transaction bids for execution preconfirmations: All transactions included in the transaction hash list are now considered bids for execution preconfirmations. These transactions must be successfully executed to satisfy preconfirmation requirements.

Reverting Transactions: Allow bidders to specify a subset of transaction hashes that they are willing to allow to be reverted.

In addition, several small fixes and improvements have been made. See the changelog and documentation for more information.

Changelog

  • 92cf968 Adds reverting Txn list (#171)
  • 6bb93c5 chore(infra): print runner CPU & MEM info (#207)
  • 64bc907 chore: blocks per window (#146)
  • f0332f8 chore: moved from uint64 to uint256 (#157)
  • 743896b chore: remove contracts docs dir (#215)
  • 83ee671 chore: update genesis timestamp and contracts addresses
  • 5db20d4 feat: add option to build artifacts for every arch and os target (#178)
  • 83a543e feat: add option to configure provider whitelist (#192)
  • de14df8 feat: add subdomains to nginx conf (#177)
  • a6094d7 feat: adds execution enforcement to preconfirmations (#161)
  • 3946648 feat: autodeposit bidder balance (#211)
  • 2838db7 feat: check deployed service status (#165)
  • 1abbbfd feat: collect infrastructure cluster logs on failure (#197)
  • 0ad75c4 feat: mev-commit AVS for validator opt-in (#176)
  • ceb8279 feat: productionize validator registry v1 (#169)
  • beb6d99 feat: updates error for window balance (#198)
  • e837334 feat: upload built artifacts to the target machine (#170)
  • 03b9f39 fix(infra): ensure kernel bridge module is loaded (#201)
  • 27ff161 fix(infra): secrets.json dbg message (#212)
  • 3e104d4 fix(infra): secrets.json payload encoding (#202)
  • b8280df fix: contracts deployer nodeJS binary arch (#187)
  • 2214c27 fix: core contracts now inherit from UUPSUpgradeable (#168)
  • 9d26bb3 fix: empty tx hash (#220)
  • e0705e5 fix: exclude problematic chars from passphrase (#196)
  • 1ffcb06 fix: fixed incorrect event parsing (#218)
  • 32da5a3 fix: forge build now specifies correct script directory (#174)
  • 176a255 fix: infrastructure workflow duration measurement (#162)
  • 3573c09 fix: make genesis timestamp fixed for testenv (#167)
  • 9c72fd2 fix: providers specify BLS pubkey during registration (#214)
  • 9099c9c fix: remove special characters from passphrase generation (#199)
  • 7d3be27 fix: resource allocation for oracle db (#158)
  • 8eeefbf fix: use forge clean with snapshot and coverage ci (#181)
  • 4d1129f fix: validator registry contract import (#173)
  • 10b6452 refactor(infra): debug secrets.json (#206)
  • ea52eaa refactor(infra): include built artifacts into upload path (#216)
  • 1778696 refactor(infra): increase ssh connection persistence to 1h (#203)
  • 6f88412 refactor(infra): update the list of target machines (#200)
  • bd0df4d refactor: double nomad decompression file count limit (#184)
  • f63a404 refactor: expose secrets.json for devenv (#210)
  • 9a5f741 refactor: fail fast on build artifacts error (#204)
  • d019d80 refactor: get arch and os info from target machine (#182)
  • db6f3b7 refactor: integrate infrastructure workflow into ci workflow (#193)
  • 440f4c7 refactor: link meta.json to artifacts (#183)
  • 870452a refactor: slim infrastructure ci profile (#186)
  • 8760588 refactor: val reg v1 now uses explicit "exist" fields (#172)

v0.3.1

21 Jun 16:09
Compare
Choose a tag to compare

This release is a patch release that fixes missing L1 blocks in Oracle.

Changelog

  • 7982d76 chore: ensures l1 blocks are processed sequentially (#163)
  • 5ab4c47 fix: changed to not start from 0 (#166)

v0.3.0

17 Jun 16:39
Compare
Choose a tag to compare

The team is pleased to announce the next release of testnet. The main goal of this release was to improve efficiency, privacy, and security.

Efficiency and privacy see major improvements in this update. Key exchange now supports encrypted timestamp message distribution and verification, while the preconfirmation protocol introduces robust bid encryption and deposit management. The preconfirmation tracker implements an event-driven architecture for tracking blockchain bid commitments, and the preconfirmation encryptor enhances bid data encryption, verification, and storage with an LRU cache. Smart contract updates also enhance privacy by storing encrypted commitments, prevent double spending, and streamline bid deposit and fund management workflows.

A significant addition is the Bid Decay mechanism, designed to increase the efficiency and predictability of bids. Bids now decrease in value over time, encouraging early confirmations. Each bid is assigned a dispatch and expiry timestamp, with its value decreasing linearly until expiry. A commitment timestamp set by providers within a specified interval ensures fairness. This mechanism offers predictability, public verifiability, and independence from L1 slot time, optimizing the bidding process.

The Faucet is now hosted within our testnet, improving accessibility. Contract deployment processes have been refined to use secure keystores instead of default unsecured accounts, and contracts are now upgrade-compatible. The validator registry has also been moved from the mev-commit chain to Holesky.

Private keys and passwords are now securely stored in password-protected keystores throughout the system and managed by the secrets vault.

In addition, the previous repositories have been merged into one monorepo that hosts all the necessary components. For more information, see the changelog and documentation.

Changelog

  • c26da63 Initial commit
  • cc9c314 chore: add logs around deposits (#62)
  • 99f18f5 chore: add missing artifacts to goreleaser (#31)
  • 9a54b40 chore: add more UX logs (#142)
  • 22ed2ee chore: additional checks and optimizations (#87)
  • 0aa267c chore: deleted geth logs (#152)
  • 936c828 chore: encryptor optimizations (#83)
  • 5d46e50 chore: extend infrastructure workflow statistics (#117)
  • 6904516 chore: improve init.yml ansible playbook (#52)
  • cb442cb chore: include keystores in geth release (#36)
  • 2fe7bb9 chore: introduce contracts-abi parity check (#9)
  • 62c191f chore: introduce local build of artifacts (#47)
  • 5266b68 chore: introduce protobuf gen parity CI check (#61)
  • 927df9a chore: introduce s3 GitHub workflow (#29)
  • af0a038 chore: make forge-std a git submodule (#13)
  • 04658a3 chore: moved block per window init to node init (#134)
  • 4ecdeed chore: sending pre-conf before saving to sc (#78)
  • 86a3b53 chore: set last block (#124)
  • 16e93c1 chore: updated foundry (#82)
  • b22bb96 feat(privacy): improvements to store and deposit manager (#53)
  • b2eff5b feat(transactor, txmonitor): add tx management (#33)
  • c6e770e feat(x): add metrics to common libs (#111)
  • 8d0fab0 feat: add forge clean (#71)
  • d012193 feat: add new x module to house common libs (#30)
  • 7a40b17 feat: add stressnet profile with more nodes (#123)
  • 4290a91 feat: bumps foundry in infra (#64)
  • 99a9eab feat: enable infrastructure workflow slack notifications (#102)
  • f28e345 feat: enumerable map for validator registry (#28)
  • ded033f feat: improve build and security (#135)
  • c72521d feat: improve validator registry for migration to holesky (#147)
  • 5a59116 feat: integrate faucet with nomad cluster (#116)
  • 5d2d4b6 feat: introduce ansible playbooks wrapper script (#66)
  • 5a53834 feat: introduce deployment release flag (#145)
  • 0204284 feat: introduce log-fmt and log-tags flags to the provider (#110)
  • a7f56be feat: introduce nomad cluster GH workflow (#81)
  • 9def6a6 feat: introduce the use of dispatch timestamp (#12)
  • f8ad5e6 feat: introduce validator registry (#15)
  • 17fef83 feat: keystore optimization (#136)
  • 6abcf63 feat: manual invocation of infrastructure workflow (#84)
  • 138c282 feat: migrate existing repositories
  • 18244fc feat: migrate infrastructure repository (#19)
  • 0ad0ff7 feat: privacy e2e
  • c5e16a3 feat: specify gas params for core contract deploy (#72)
  • 4b374d9 feat: updated infra privacy to support privacy set up (#56)
  • d3b1667 feat: updates geth to master (#41)
  • 5974d42 feat: upgradable contracts (#55)
  • 8689624 feat: use abigen code for contracts and add debug service (#80)
  • 73c3cbf feat: use keystore for contract deployer (#89)
  • e580e62 fix(nomad): add external dns server ip (#59)
  • 09c7b45 fix: allow nomad system gc run only once (#103)
  • dd98c45 fix: contract addresses (#106)
  • f35d755 fix: contracts build in deploy-contracts job (#96)
  • 19e7356 fix: deleted address checker (#144)
  • aec8e80 fix: deploy workflow target machine dns lookup (#92)
  • 41d9b98 fix: destroy ansible playbook (#118)
  • 2a7956f fix: double spend per block (#140)
  • c692b79 fix: enable oracle metrics in nomad (#120)
  • 718e3f4 fix: fixed withdraw request definition (#119)
  • 9705644 fix: foundry GH workflow step (#50)
  • 3b05c20 fix: geth goreleaser name templates (#49)
  • 5c6197d fix: github mev-commit-infra workflow (#3)
  • 868a145 fix: goreleaser name templates (#48)
  • 18ff50c fix: import oracle keystore (#107)
  • 44e7f5e fix: include deploy_contract.sh in bridge release (#42)
  • 68894a3 fix: infra workflow (#37)
  • b3a1858 fix: infrastructure workflow invocation (#85)
  • 92c7213 fix: keystore contract deployment (#100)
  • 96f60fe fix: limits for postgres connections (#139)
  • 53b0b32 fix: manual infrastructure deployment Go version (#95)
  • b8c58a3 fix: moved commitments count (#114)
  • 3c45197 fix: nomad cluster contracts deployment (#79)
  • 240320e fix: oracle postgres db running check (#155)
  • bcf5aba fix: protobuf generated code parity (#76)
  • b67d384 fix: run make bufgen (#133)
  • eb89ebc fix: set static ips for bidder/provider (#25)
  • 893f41f fix: stressnet bidder emulator count (#150)
  • 33587ca fix: update hardcoded contract addrs (#23)
  • f7c5de9 fix: updated entrypoint (#74)
  • abc057e fix: use triggering workflow branch for infra workflow (#27)
  • f10bea2 perf: allocate more resources for oracle db testnet (#151)
  • 276d450 perf: build binaries only for target machine architecture (#121)
  • 83cf622 perf: cache infra workflow dependencies (#122)
  • dc596a1 perf: execute deploy playbook tasks asynchronously (#115)
  • c55127a perf: specify resource allocation for different profiles (#149)
  • 6909046 refactor: add more target machines to infrastructure workflow (#108)
  • 19f041d refactor: cleanup ansible playbooks (#54)
  • 67392ea refactor: generate nomad scripts from templates (#34)
  • e4e95c9 refactor: improve GitHub workflows (#88)
  • 4c02c37 refactor: improve infrastructure playbook scripts (#105)
  • 05ce6ed refactor: infrastructure cleanup (#73)
  • 542f808 refactor: infrastructure improvement and cleanup (#104)
  • 5cdab95 refactor: keykeeper refactoring (#69)
  • 2d34cfe refactor: make debug mandatory for infrastructure workflow (#91)
  • cff5c34 refactor: rename repository (#60)
  • 36a2ab1 refactor: switch L1 to holesky (#148)
  • 9bf81ab refactor: update testnet contracts addresses (#156)