Error Reference

Obelisk Contract

Mining Errors

ErrorCause
Obelisk_InvalidMintLength()Duration is 0 or exceeds 280 days
Obelisk_InvalidMintPower()Mint power is not 25, 50, or 100
Obelisk_NoMintExists()Mint ID doesn’t exist for this user
Obelisk_MintHasClaimed()Mint already claimed
Obelisk_MintNotMature()Claiming before maturity
Obelisk_MintHasBurned()Mint already burned
Obelisk_MaxedWalletMints()Reached 1,000 mint limit
Obelisk_InvalidBatchCount()Batch count is 0 or exceeds 100

Staking Errors

ErrorCause
Obelisk_InvalidStakeLength()Duration below 28 or exceeds 3,500 days
Obelisk_RequireOneMinimumShare()Stake amount too small to produce 1 share
Obelisk_NoStakeExists()Stake ID doesn’t exist
Obelisk_StakeHasEnded()Stake already ended
Obelisk_StakeNotMatured()endStakeForOthers on unmatured stake
Obelisk_StakeHasBurned()Stake already burned
Obelisk_MaxedWalletStakes()Reached 1,000 stake limit
Obelisk_AtLeastHalfMaturity()Emergency end stake before 50% maturity

General Errors

ErrorCause
Obelisk_InvalidAmount()Amount is zero
Obelisk_InsufficientBalance()Not enough LODE
Obelisk_InsufficientProtocolFees()msg.value below mint cost
Obelisk_FailedToSendAmount()ETH transfer failed
Obelisk_NotAllowed()Caller not authorized (not BuyAndBurn or genesis)
Obelisk_InvalidAddress()Zero address provided
Obelisk_NotOnwer()Caller is not the contract owner

Payout Errors

ErrorCause
Obelisk_NoCycleRewardToClaim()No unclaimed ETH payout available
Obelisk_NoSharesExist()triggerPayouts called with no active shares
Obelisk_EmptyUndistributeFees()distributeETH called with no fees

Burn Errors

ErrorCause
Obelisk_NotSupportedContract()Project doesn’t implement IObeliskOnBurn + IERC165
Obelisk_InvalidBurnRewardPercent()Combined rebate + builder fee exceeds 8%
Obelisk_InsufficientBurnAllowance()Project doesn’t have enough burn allowance
Obelisk_LPTokensHasMinted()LP tokens already minted
Obelisk_ReserveAlreadyMinted()Reserve mint already used

Referral Errors

ErrorCause
Obelisk_InvalidCode()Referral code is empty
Obelisk_InvalidClaim()Code doesn’t exist or user already has a referral
Obelisk_CodeAlreadyClaimed()Code already registered by someone else
Obelisk_CodeTooLong()Code exceeds 32 bytes
Obelisk_UserAlreadyClaimed()User already has a registered code
Obelisk_ReferralLocked()Minting locked and user has no referral

BuyAndBurn Contract

BuyAndBurn uses require with string messages:
MessageCause
"InvalidAddress"Address is zero
"InvalidCaller"Caller is not the owner
"CannotResetAddress"LODE address already set
"NeedInitialLP"buynBurn called before LP exists
"ReachMaxGlobalCap"Global WETH cap reached
"NoAvailableFunds"No WETH balance to swap
"PoolHasCreated"Pool already exists
"InvalidLodeAddress"LODE address not set
"Need8WETH"Not enough WETH for initial liquidity
"WrongPool"Swap callback from unexpected pool
"MustBeGreaterAmount"New cap must exceed current
"Min1WETH"Per-swap cap below minimum

PrelodeBurnRedeemer Contract

Error / MessageCause
"Invalid LODE address"Zero address for LODE token in constructor
"Root cannot be zero"Attempting to set zero Merkle root
"Rate must be positive"Exchange rate set to 0
"Rate too large"Exchange rate exceeds 1e18
"No Merkle root set"Claiming before any root is posted
"Invalid Merkle proof"Proof doesn’t verify against current root
"Nothing to claim"All burns already claimed at current rate
"LODE transfer failed"Insufficient LODE balance in contract