Parameters
Covenant's behavior is fully described by a handful of compile-time constants. They are part of the immutable hook — there are no setters and no governance to change them.
Core parameters
| Parameter | Constant | Value | Meaning |
|---|---|---|---|
| Sell retention | RETENTION_BPS | 2000 (20%) | Share of the net-of-tax sell retained as a covenant. |
| Base discount | BASE_DISCOUNT_BPS | 500 (5%) | Absorption discount floor. |
| Max discount | MAX_DISCOUNT_BPS | 2000 (20%) | Absorption discount cap under covenant stress. |
| Creator tax | TAX_BPS | 300 (3%) | Flat tax on every buy & sell, taken in ETH. |
| Basis | BPS | 10000 | Basis-points denominator. |
| Covenant duration | covenantDuration() | 7 days | Time from creation to expiry. Fixed, no extensions. |
Derived behavior
- Discount range — a covenant's discount is set at creation somewhere in
[5%, 20%]based on covenant stress (how much open debt is in the queue), then frozen for that covenant's life. - Expiry destination — settlement targets
LOCKED_LP(0) normally, orPROTOCOL_RESERVE(1) as a fallback. - Swap direction —
zeroForOne == trueis a buy (ETH → CVN);falseis a sell (CVN → ETH).currency0is native ETH,currency1is CVN. - Swap type — exact-input only.
Token
| Property | Value |
|---|---|
| Symbol | CVN |
| Decimals | 18 |
| Pair | CVN / ETH (Uniswap v4) |
Immutability
There is no admin key that can change any of the above. The creator address (creator) and the pool
initializer (poolInitializer) are set once at deployment and are immutable. Changing any parameter
would mean deploying a new set of contracts.
For the deployed addresses on each network, see Deployments.