Contract Architecture

System Diagram

Contracts

ContractSolidityRole
Obelisk^0.8.0Core ERC-20 token with all protocol logic: mint, stake, burn, payouts, referrals
BuyAndBurn^0.7.6Manages Uniswap V3 LP position, swaps WETH for LODE, burns purchased LODE
PrelodeBurnRedeemer^0.8.20Verifies Merkle proofs of Solana PRELODE burns, distributes LODE to claimants

Obelisk Inheritance

Obelisk inherits from six abstract modules:
ModuleResponsibility
GlobalInfoDaily update loop, cycle payout state, share rate, mint cost
MintInfoMint creation, claiming, batch operations, tRank tracking
StakeInfoStake lifecycle, share calculation, penalties
BurnInfoBurn tracking, cycle-28 burn pool accounting
OwnerInfoOwnership with explicit initialOwner (not deployer)
ReferralInfoReferral codes, lock modifier, reward tracking
Plus: ERC20 (custom Solmate-derived, no EIP-2612) and ReentrancyGuard (OpenZeppelin).

Security Model

  • No upgradeability: All contracts are immutable after deployment
  • No admin pause: There is no pause mechanism
  • Explicit ownership: Constructors accept initialOwner — the deployer does not become owner
  • Reentrancy protection: All state-changing user functions use nonReentrant
  • Permissionless operations: distributeETH, triggerPayouts, buynBurn, collectFees are callable by anyone (incentivized by 0.33% fee)

Dependencies

ContractOpenZeppelinForge Std
Obeliskv5.0.1v1.9.7
BuyAndBurnv3.4.0-solc-0.7v1.7.4
PrelodeBurnRedeemerv5.0.1v1.9.7