Skip to main content

Documentation Index

Fetch the complete documentation index at: https://tech.ramses.xyz/llms.txt

Use this file to discover all available pages before exploring further.

Weekly emissions controller for RAM. The current implementation in Minter.sol is the contract-enforced source of truth for supply caps, multiplier updates, and weekly emissions minting.

Core Functions

kickoff

function kickoff(
    address ram,
    address voter,
    uint256 initialWeeklyEmissions,
    uint256 initialMultiplier,
    address xRam
) external
One-time operator-only initialization. Sets the token and governance addresses, seeds the initial emissions configuration, and mints the INITIAL_SUPPLY to the operator.

initEpoch0

function initEpoch0() external
Starts epoch accounting by setting firstPeriod, activePeriod, and minting the configured week-0 emissions to the operator.

updatePeriod

function updatePeriod() external returns (uint256 period)
Permissionless weekly rollover function. When a new period has started, it:
  1. Computes the next weekly emissions amount
  2. Mints that amount to the Minter contract
  3. Approves the Voter
  4. Calls Voter.notifyRewardAmount()

updatePeriodAndRebase

function updatePeriodAndRebase() external
Convenience entrypoint that advances the period and then calls rebase() on xRAM.

updateEmissionsMultiplier

function updateEmissionsMultiplier(uint256 emissionsMultiplier) external
Governance-only update for the emissions multiplier. The contract enforces a maximum deviation of 25% per update.

calculateWeeklyEmissions

function calculateWeeklyEmissions() external view returns (uint256)
Returns the next emission amount after applying the multiplier and the supply cap.

Key Concepts

  • INITIAL_SUPPLY is 350,000,000e18.
  • MAX_SUPPLY is 1,000,000,000e18.
  • BASIS is 10_000, and MAX_DEVIATION is 2_500, meaning multiplier changes are capped at 25% per update.
  • updatePeriod() returns the active weekly period, not the minted token amount.
  • The Minter is the contract that mints weekly emissions and hands them to Voter; gauges receive those emissions only after the subsequent voter distribution flow.