git / moonbite-network / docs/ADR-014-founder-vault-time-lock.md · raw
# ADR-014 — Founder rewards locked for 3 years- **Status:** Accepted- **Date:** 2026-10-16, published before the 2026-10-17 07:00 CEST launch- **Related:** ADR-006 (fair launch and founder mining), ADR-011 (fixed cap)Times in this document are Central European time (CET/CEST).## DecisionEvery block the founder mines pays a time-locked vault. Nobody can spend fromit, the founder included, before **2029-10-17 07:00 CEST**, three years afterlaunch. This is enforced by every MoonBite node, not by a promise: the coinsare locked by the script they sit in.The founder chose this over any kind of founder allocation. There is nopremine, no reserve, and no coin the founder holds that was not mined in publicunder the same rules as everyone else; for the first three years those coinscannot move at all.## The vault| | ||---|---|| Vault address | `moon1qw436kfcvdg70qkkl4lfnt7m9qd79mkzl0js5lnjnqyxfkckw4d5sj26lxq` || Unlocks | 2029-10-17 07:00 CEST (Unix 1886907600) || Key that can spend after that | the founder wallet, `moon1q8sv454mnlah3smxelamzjrpk22zr84mjgnyykc` (key hash `3c195a5773ff6f186cd9ff76290c36528433d772`) || Witness script | `04d0ec7770b17576a9143c195a5773ff6f186cd9ff76290c36528433d77288ac` |The witness script reads:```1886907600 OP_CHECKLOCKTIMEVERIFY OP_DROPOP_DUP OP_HASH160 3c195a5773ff6f186cd9ff76290c36528433d772 OP_EQUALVERIFY OP_CHECKSIG```A spend must carry a lock time of at least 1886907600, and nodes only acceptit once the chain's median block time has passed that moment. After that,only a signature from the founder wallet's key can spend. There is no secondkey, recovery path or early-exit clause.## Check it yourselfWith any MoonBite node:```moonbite-cli decodescript 04d0ec7770b17576a9143c195a5773ff6f186cd9ff76290c36528433d77288ac```prints the script above and, under `segwit.addresses`, the vault address.The vault's balance is public on moonbite.org/balance and the explorer. Thesame calculation is in `tools/vault/moonbite-vault.mjs` and`tools/vault/founder-vault.json`.## How it was testedOn a private regtest MoonBite network, with the same script shape:- block rewards mined straight into a vault arrive there;- before the unlock time, a correctly signed spend is refused as "non-final";- a spend claiming an earlier lock time is refused by the script ("Locktime requirement not satisfied");- the wrong recovery phrase cannot produce a valid spend;- after the unlock time, the owner's spend is accepted, confirmed, and the vault is left empty;- a wallet with an extra password (BIP39 passphrase) works the same way.## Unlocking in 2029`node tools/vault/unlock.mjs --to <address>` asks for the founder wallet's 12words (and extra password, if set) without showing them, signs on the localmachine and prints the transaction; `--broadcast` sends it. Before the unlocktime every node refuses it, whoever signs.If the founder's recovery phrase is lost, the coins in the vault are lost withit: nobody can recover them, and that is intended.## Commitments- All founder mining pays this vault until a new ADR, published first, says otherwise.- Coins in the vault cannot move before 2029-10-17 07:00 CEST. After that, any movement of them is announced in a new ADR before it happens.