Who Pays the Gas Fees?¶
Every on-chain tx is paid by the foundation (owner/treasury). The staker pays nothing until they claim rewards.
┌───────────────────┬──────────────────────────────────────────────────────────┬──────────────────────────────────────────────────┬─────────────┐ │ Step │ Operation │ Who signs (pays gas) │ CTN cost │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 1. Deploy vault │ seat create-with-vault │ VAULT_DEPLOYER_PRIVATE_KEY (falls back to owner │ Gas only │ │ │ │ key) │ │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 2. Allowlist │ seat approve --send │ OWNER_PRIVATE_KEY │ Gas only │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 3. Deposit │ seat deposit --send │ DEPOSITOR_PRIVATE_KEY (falls back to owner key) │ 32 CTN + │ │ │ │ │ gas │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 4. Settlement │ seat settle --send / auto-settle │ OWNER_PRIVATE_KEY (treasury) │ Gas only │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 5. Force-exit │ seat force-exit --send (EIP-7002) │ OWNER_PRIVATE_KEY (treasury) │ Gas + fee │ │ (if needed) │ │ │ │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 6. Claim │ Treasury calls claimPrincipal() │ OWNER_PRIVATE_KEY (treasury) │ Gas only │ │ principal │ │ │ │ ├───────────────────┼──────────────────────────────────────────────────────────┼──────────────────────────────────────────────────┼─────────────┤ │ 7. Claim rewards │ Beneficiary calls initiateClaimRewards → │ The staker (beneficiary) │ Gas only │ │ │ finalizeClaimRewards │ │ │ └───────────────────┴──────────────────────────────────────────────────────────┴──────────────────────────────────────────────────┴─────────────┘
When you onboard a staker, you pay:
- Vault deployment gas (step 1)
- Allowlist gas (step 2)
- 32 CTN + deposit gas (step 3)
- Settlement gas when the validator exits (step 4)
- Force-exit gas + EIP-7002 fee if needed (step 5)
- Principal recovery gas (step 6)
The staker pays gas only when they claim their rewards (step 7). In ExitSettlement phase the staker's claim is instant (one tx). In Running phase it's two txs (initiate + finalize after CLAIM_DELAY).
Net economics per seat: You put up 32 CTN, you get 32 CTN back via claimPrincipal() after exit settlement, and you eat all the gas for steps 1-6. The staker gets the rewards above 32 CTN.