Source: src/FeeManager.sol
Responsibility
FeeManager holds the fund’s fee configuration and fee-accounting state, and computes fee accrual at each settlement. It never holds assets or mints shares itself—it returns amounts and recipients, and the Fund does the minting.
All fees are paid in newly minted shares (diluting existing holders), never in assets:
High-water mark (HWM) is tracked on the fee-base-asset share price. First accrual initializes it; afterwards, performance fee only accrues when the new price exceeds the HWM, which ratchets up to the new price.
Fee base asset: management, performance, and protocol fees accrue on the base asset’s report, which is why the Fund always includes
feeBaseAsset in the reported asset set.Protocol fee recipient is not stored here—it is read from the FundManagerDeployer at accrual time. If the resolved recipient is zero, the protocol fee is skipped.
All bps values are capped at 10000 (100%).
Function reference
Fund-only
Admin setters
Roles are checked on the Fund.Views
getFeeConfig(), entryFeeBps, exitFeeBps, managementFeeBps, performanceFeeBps, protocolFeeBps, feeBaseAsset, feeRecipient, highWaterMark, lastFeeAccrual, fund().