Skip to content

Releases: stakewise/v3-operator

v4.2.3

Choose a tag to compare

@cyc60 cyc60 released this 11 Aug 09:52
982ebe4

Release summary

Mostly polish around funding, withdrawals and consolidations — tighter checks and a few edge cases handled.

Added new env-vars command. Run it to see every environment variable the operator supports. Handy for advanced tuning — for example, setting the event log window length for eth_getLogs.

What's Changed

  • Exclude CL-invisible validators without 0x02 pending deposits from funding by @cyc60 in #784
  • Fix partial withdrawal activation epoch boundary by @cyc60 in #795
  • Fix partial capacity accounting for non-compounding validator exits by @cyc60 in #796
  • Add env-vars command listing supported environment variables by @evgeny-stakewise in #776
  • Exclude consolidation source validators from withdrawal selection by @cyc60 in #797
  • Resolve pending consolidations against all vault validators by @cyc60 in #800
  • Cache withdrawals block fallback by @evgeny-stakewise in #791
  • Reject pending validators as consolidation targets by @cyc60 in #803
  • Verify source withdrawal address matches the vault by @cyc60 in #804
  • Defer funding instead of blocking registration when interval has not passed by @cyc60 in #785
  • Reject empty source public keys file in consolidate command by @cyc60 in #801
  • Handle consolidation errors raised during manager creation by @cyc60 in #802
  • Add withdrawals tests by @cyc60 in #806
  • Release v4.2.3 by @cyc60 in #805

Full Changelog: v4.2.2...v4.2.3

v4.2.2

Choose a tag to compare

@cyc60 cyc60 released this 05 Aug 09:46
823f73a

Release highlights

Fix eth_getLogs failures on Nethermind 1.39.3+

Nethermind 1.39.3 changed eth_getLogs handling: a filter without an explicit toBlock is no longer accepted. Some of the operator's log queries omitted it.

Those queries now go through the shared chunked log helper, which always sets toBlock and pages by EVENTS_BLOCKS_RANGE_INTERVAL. This also fixes hosted RPC providers that cap the block range per logs request.

No configuration change is needed — upgrading is enough.

(#792)

What's Changed

Full Changelog: v4.2.1...v4.2.2

v5.0.0.dev5

v5.0.0.dev5 Pre-release
Pre-release

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 04 Aug 09:09
529c0a5

What's Changed

Full Changelog: v4.2.1...v5.0.0.dev5

v4.2.1

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 31 Jul 12:02
cd76823

Release highlights

Pending deposits are now taken into account when selecting validators to exit

When the operator needs to exit validators to cover withdrawals, it picks the ones with the
lowest balance first, so that as little stake as possible leaves the beacon chain.

After Pectra, a top-up deposit does not show up in the validator balance right away — it waits
in the beacon chain deposit queue. A validator with a large queued top-up therefore looked like
an ordinary 32 ETH validator and could be exited first. Its queued funds were later returned to
the vault and had to go through the deposit queue again from the very beginning.

If, for example, a validator has a large top-up waiting in the queue while its consensus balance
is still ~32 ETH, it could be exited before validators that hold no queued funds at all — and the
queued amount would lose its place in line.

The operator now adds pending deposits to the balance it sorts by, so validators with queued
top-ups are exited last. They are still exitable if nothing else is available. Exit queue
accounting is unchanged — an exit still counts only the currently active balance.

(#777)

Default max validator balance reduced: 1945 ETH → 300 ETH

The default cap on how much a single 0x02 validator is topped up to is now 300 ETH on Ethereum
(previously 1945 ETH). Assets above the cap go to the next validator, so vault stake is spread
across more validators instead of being concentrated in a few large ones.

The benefit is a smaller impact on the vault APR when a validator exits: the assets of an exited
validator have to pass through the deposit queue again, and a smaller validator means a smaller
amount waiting there.

You can still choose your own limit with the --max-validator-balance-gwei option or the
MAX_VALIDATOR_BALANCE_GWEI environment variable — raise it as your vault grows, so you don't
end up running more validators than you need.

The Gnosis default (1800 mGNO) is unchanged.

(#779)

What's Changed

Full Changelog: v4.2.0...v4.2.1

v4.2.0

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 13 Jul 08:18
c1d1713

Release Summary

Meta vault support has been updated for the v5 contracts release, which lets any user run their own meta vaults.

More reliable transaction handling — a new transaction manager prevents nonce collisions and stalled transactions from silently blocking the operator, so your vault keeps running without manual intervention.

What's Changed

Full Changelog: v4.1.14...v4.2.0

v4.1.14

Choose a tag to compare

@cyc60 cyc60 released this 30 May 09:14
0804e14

Summary

Fixed a bug where the operator would register a brand-new validator instead of topping up one that had just been registered.

The operator is supposed to fund freshly registered 0x02 (compounding) validators while their deposits are still being processed by the CL pending deposits queue. Due to a bug, those validators were being silently skipped — so instead of topping them up, the operator would register an additional new validator.

Affected: operators running 0x02 validators. Upgrade recommended.

What's Changed

  • Allow funding for unregistered consensus validators by @cyc60 in #735
  • Release v4.1.14 by @cyc60 in #736

Full Changelog: v4.1.13...v4.1.14

v4.1.13

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 25 May 09:34
b42b462

Summary

This release focuses on restoring binary builds, which broke starting with v4.1.11 and are now fixed.

What's Changed

Full Changelog: v4.1.12...v4.1.13

v4.1.12

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 19 May 18:24
84ca354

Summary

This release fixes the process-meta-vaults command for legacy meta vaults — those still on a version below 6, which do not yet have a sub-vaults registry. Meta vaults on version 6 or later require operator release v4.2.0 or above.

What's Changed

Full Changelog: v4.1.11...v4.1.12

v5.0.0.dev3

v5.0.0.dev3 Pre-release
Pre-release

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 07 May 10:01
15a7eea

What's Changed

Full Changelog: v5.0.0.dev2...v5.0.0.dev3

v4.1.11

Choose a tag to compare

@evgeny-stakewise evgeny-stakewise released this 05 May 15:19
60aedd6

This release brings a handful of minor improvements, but there’s one update we think you’ll find particularly useful: the new exception_count metric!

When something goes wrong inside the Operator, the process won’t crash. Instead, it logs the error and moves on to the next block. The exception_count metric helps you keep an eye on these errors — if you notice a spike, it could be a sign of trouble.

Use this metric to enhance your monitoring and set up alerts to catch potential issues early.

What's Changed

Full Changelog: v4.1.10...v4.1.11