Emergency-drain MAINNET binaries (RFC 002). NOT a normal release — dedicated temporary build operators run only for the drain window; delete after.
Client = zetaclientd-drain, from drain-build/mainnet-client-v37 (off release/zetaclient/v37, -tags pebbledb,ledger,drain), commit f7b593c. Built to match mainnet signers on v37 — go-tss/state compatible.
Server = zetatool, from drain-build/mainnet-server-main (off main).
Mainnet anchors baked & verified (raw-byte, both arches):
- EVM safe receiver:
0x0a538985123729f48D70DBCaE82a7f47f1CbA8f8 - BTC safe receiver:
bc1qkl02lqffhmpf5hn3khnetc0ay9yyk4eajmlefy - Operator pubkey (payload verify):
0x03579d09c8a72ebf96e943c121926f3bfaf7600b9685eda7692786bf3cfca2c9fc(reused from testnet) - Testnet anchors: absent (mainnet-only binary).
glibc: max required 2.28 (built in goreleaser-cross:v1.22.7, same image as real releases — NOT bare ubuntu; avoids the GLIBC_2.38 linker-death that hit the first testnet cut).
Funds can only ever go to the compiled-in receiver — a compromised/spoofed serve-cron can change when the drain fires, never where. Poller stays dormant until ZETACLIENT_DRAIN_URL is set (+ per-operator --drain-armed).
SHA256SUMS attached.