Appearance
Governance and limits
Hanok has an owner, but what the owner can do is narrow and bounded by constants in the code. This page lists exactly what is adjustable and what is not.
Fixed forever, per launch
Once a token is launched, none of these can change for it:
- Supply, name, symbol and on-chain metadata
- Bonding curve parameters and the graduation target
- Creator tax rate
- Platform fee rate and the referral, buyback and vesting splits (snapshotted at launch)
- Snipe tax schedule (snapshotted at launch)
- Pool tick spacing
What the creator controls
Exactly two things: where their fees are paid, and whether buyback is on. See creator controls.
What the owner controls
| Setting | Bound |
|---|---|
| Add launch configs | Append-only; existing configs can only be enabled or disabled, never edited |
| Creator tax bounds | Within 0%–10%; the 10% ceiling is a constant |
| Referral share | ≤ 50% of the platform fee |
| Buyback share, vesting split | ≤ 100% |
| Buyback price-impact limit | ≤ 20% |
| Max first buy | ≤ 20% of supply |
| Snipe tax | Start ≤ 99%, window ≤ 30 seconds |
| Launch fee | ≤ 10 ETH |
| Public launching | Open or whitelist-only |
| Treasury and fee-operator addresses | Any address |
| Buyback on a launch | Off only |
| Community takeover | Propose only; executes after a public 3-day delay, expires 3 days later |
What nobody controls
- The platform fee is a compile-time constant (1%).
- Locked liquidity: the locker has no withdraw function.
- Curve reserves: only graduation moves them, and graduation can only send them to the locker.
- Token balances: no mint, freeze, blacklist or transfer tax exists.
- Ownership can be transferred (two-step) but never renounced, because the takeover path needs an owner.
Term pinning
Because the owner can change future-launch settings, launch takes an expectedTerms digest that the caller reads with previewTerms immediately before. If any term changes in between, the launch reverts instead of settling on terms the creator never saw.