Skip to main content

MinterUpgradeable

0x1ece73AB8F26a1207E4e4E7A479C423b99A9a70A

Mints the weekly BARK emission and splits it between gauge emissions (via VoterV4) and the veNFT rebase (via RewardsDistributor). The emission decays over time on a fixed schedule. Source: bark_contracts/ve3/contracts/MinterUpgradeable.sol.

Epoch advancement

FunctionDescription
update_period() → uint256If a new weekly epoch has started, mint the period's emission and fund the voter + rewards distributor. Idempotent within an epoch.
active_period() → uint256The timestamp of the current active epoch (week-aligned).
check() → boolWhether a new period can be started.

update_period() is normally triggered indirectly by VoterV4.distributeAll(), which an off-chain keeper calls once per epoch.

Emission parameters

FunctionDescription
weekly_emission() → uint256The BARK amount minted for the current week.
circulating_supply() → uint256BARK in circulation (total supply minus locked).
calculate_growth(uint256 _minted) → uint256The rebase amount routed to veNFT holders.

Key events

  • Mint(address indexed sender, uint256 weekly, uint256 circulating_supply, uint256 circulating_emission)