Skip to content

v0.3.0

Compare
Choose a tag to compare
@github-actions github-actions released this 17 Jun 16:39
· 265 commits to main since this release

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)