epoch system

veCUBE distributes rewards in time-locked periods called epochs. Rewards accrue during an epoch but cannot be claimed until it ends.

Epoch 0 Overview

Property
Value

Epoch Number

0

Start Date

March 1, 2026

End Date

March 31, 2026

Duration

30 days

APR (CUBE)

10%

APR (BMC)

10%

Total BMC Pool

10,000,000,000,000 (10T)

Registered Vaults

132

How Epochs Work

EPOCH 0 (Mar 01 → Mar 31)
├── Rewards accrue daily for all registered vaults
├── pendingRewards() shows amounts but claiming is LOCKED
└── On Mar 31: advanceEpoch() is called

EPOCH 1 BEGINS
├── Epoch 0 rewards become CLAIMABLE
├── Call claimAll(veCube, tokenId, 0) to claim epoch 0
└── New rewards start accruing for epoch 1

Claiming Rules

  • You can only claim for completed epochs (currentEpoch - 1)

  • While currentEpoch === 0, the claim button is blocked

  • After advanceEpoch() is called, all holders can claim immediately

  • There is no expiry on unclaimed rewards from past epochs

Reward Calculation

Rewards are calculated based on your vault's share of the total pool.

USD value displayed in the UI:

Oracle Prices

Live prices are sourced from the on-chain Oracle contract:

Token
Price
Contract

CUBE

$0.0010

0xEa1644...7A2

BMC

$0.0500

0xEa1644...7A2

MON

$0.0208

0xEa1644...7A2

Epoch Progress Bar

The UI shows a live progress bar tracking Epoch 0:

The countdown timer shows exact time remaining in days / hours / minutes / seconds.

advanceEpoch()

When Epoch 0 ends on March 31, 2026, the contract owner calls advanceEpoch() on the Rewards contract. This:

1

Closes Epoch 0 reward accrual

Epoch 0 stops accruing rewards.

2

Makes Epoch 0 rewards claimable for all holders

Rewards accrued during Epoch 0 become claimable.

3

Opens Epoch 1 and begins new reward accrual

Epoch 1 starts and new rewards begin accruing.

4

Increments currentEpoch() from 0 to 1

The contract's currentEpoch() value increases from 0 to 1.

Was this helpful?