Merge pull request 'fix: KRK fees to feeDestination undocumented (#458)' (#471) from fix/issue-458 into master

This commit is contained in:
johba 2026-03-06 02:01:28 +01:00
commit 1ceb6647f7
2 changed files with 7 additions and 1 deletions

View file

@ -17,7 +17,7 @@ Kraiken.sol (ERC-20 token)
│ ├── Staking positions with tax rates
│ ├── Snatch mechanics (competitive staking)
│ └── getPercentageStaked(), getAverageTaxRate()
└── feeDestination: address (protocol revenue — fees go HERE, not back to holders)
└── feeDestination: address (protocol revenue — both WETH and KRK fees go HERE, not back to holders)
Optimizer.sol (UUPS Upgradeable Proxy)
├── Reads: stake.getPercentageStaked(), stake.getAverageTaxRate()
@ -33,6 +33,9 @@ Optimizer.sol (UUPS Upgradeable Proxy)
- **LiquidityManager → Kraiken**: exclusive minting/burning rights
- **Optimizer → Stake**: reads sentiment data (% staked, avg tax rate)
- **Optimizer upgrades**: UUPS proxy, admin-only `_authorizeUpgrade()`
- **feeDestination receives both WETH and KRK fees**: during `recenter()`, Uniswap V3 fee collection produces both tokens. WETH fees AND KRK fees are forwarded to `feeDestination` (see `LiquidityManager._scrapePositions()`).
- **feeDestination KRK excluded from outstanding supply**: `_getOutstandingSupply()` subtracts `kraiken.balanceOf(feeDestination)` before computing scarcity, because protocol-held KRK cannot be sold into the floor and should not inflate the supply count.
- **Staking pool KRK excluded from outstanding supply**: `_getOutstandingSupply()` also subtracts `kraiken.balanceOf(stakingPoolAddr)`, because staked KRK is locked and similarly cannot be sold into the floor.
## Three-Position Strategy

View file

@ -59,6 +59,9 @@ when the protocol changes — not the marketing copy.
- Trading fees are collected by the LiquidityManager during recenters
- Fees are sent to `feeDestination` (protocol treasury / founders)
- Fee revenue is the protocol's business model
- **Both WETH and KRK fees** from Uniswap V3 positions are forwarded to `feeDestination` — not just ETH/WETH
- KRK held at `feeDestination` is excluded from the outstanding supply calculation, because protocol-held KRK cannot be sold into the floor and should not inflate the scarcity metric
- KRK held in the staking pool is also excluded from the outstanding supply calculation for the same reason — staked KRK is locked and cannot be sold into the floor
❌ **Cannot say:**
- "Fees grow your KRK value" — **FALSE.** Fees go to treasury, not back to holders.