Whitepaper

OHWOO Protocol Architecture & Mechanics

OHWOO Protocol (token symbol: OHO) is a Solana mainnet wealth aggregation and redistribution protocol powered by on-chain state machines, event-triggered rounds, verifiable randomness, and keeper-assisted automation.

Last Updated: 2026-02-13
Version: v1.0
Executive Summary

Protocol Objective

OHWOO continuously captures protocol value flow, routes it through deterministic smart-contract modules, and redistributes incentives through event-triggered rounds.

Selection is verifiable: a submitted Merkle snapshot defines eligible weighted holders, and on-chain randomness resolves a deterministic winning index.

From meme attention to programmable redistribution.

Design Principles

System Principles

  • On-chain finality for round-critical state and settlement.
  • Deterministic accounting for all split and payout paths.
  • Composable off-chain automation without bypassing authority checks.
  • Auditable proof path: snapshot root + interval check + Merkle proof.
  • Operational resilience through fallback draw and timeout reset paths.
Architecture

Three-Layer Model

On-Chain
Programs own vault custody, state machine, and validation.
Keeper
Scheduler automates harvest, swap, split, snapshot, draw, and claim.
DApp
Frontend reads keeper API + on-chain data for real-time protocol visibility.
Mermaid / Architecture Graph
flowchart LR
  subgraph C[On-Chain Programs]
    H[ohwoo_harvest]
    S[ohwoo_swap]
    D[ohwoo_distributor]
    P[ohwoo_pool]
    K[ohwoo_staking]
    L[ohwoo_lp_manager]
  end

  subgraph O[Keeper Off-Chain]
    SCH[Scheduler Cron]
    PS[PoolService]
    SS[SwapService/CPMM]
    DS[DistributorService]
    HS[HarvestService]
    LS[LiquidityService]
    API[HTTP API Server]
    IDX[Indexer + Stores]
  end

  subgraph F[DApp Frontend]
    HOME[Home]
    STAKE[Staking]
    HOOKS[Hooks/API Clients]
  end

  SCH --> HS --> H
  SCH --> SS --> S
  SCH --> DS --> D
  SCH --> PS --> P
  SCH --> LS --> L
  IDX --> API
  API --> HOOKS --> HOME
  API --> HOOKS --> STAKE
Module Map

Program Responsibilities

ohwoo_harvest

Harvests Token-2022 withheld transfer fees and routes tax flow into swap tax vault.

ohwoo_swap

Handles USDC forwarding with min-interval and threshold checks after keeper-side swap execution.

ohwoo_distributor

Splits USDC by BPS into prize/staking/liquidity/v2/ops and manages staging release into pool vault.

ohwoo_pool

Owns round state machine, snapshot root, draw trigger, VRF fulfillment, proof verification, and payout.

ohwoo_staking

Tracks staking positions, lockup windows, and reward-per-token accounting for USDC rewards.

ohwoo_lp_manager

Executes Raydium CPMM liquidity injection from protocol vaults with slippage caps and PDA authority.

Contract / PDAAddress
Pool Programoho63UvjRqStVqSZjMYZYfXSUubTAacHFkYdeEKNY3L
Distributor Programoho3tqbU2FQDcngMqnU8uGyfj2xQD6KZ6cHp1UBJ9HG
Harvest Programoho1YinN7pMfvDUhunvB8NZnz9nUiQPoU3Bkgo2J5Ve
Swap Programoho2ZBYfZ4YvLVFKtL9fvqs7Bwmqb7viAHDhDTqSiL9
LP Manager Programoho5AWU1ZWEzohCema1pyDst5Wo6Snz1jEhPJcZmAUA
OHO MintoHo3ssTsm9bxtegyRMpYsvASVGQAF2SYqeX1JjJWXRA
sOHO MintsoHo7hDQoVgy6cRCFxDREXurcSwS6fJAyaDCRDq3RmE
USDC MintEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Prize Pool VaultADgRJNUaeCWdRZ71RG5gjNEetGN5ZKAvBh1caGBEuMEz
Prize Staging Vaultwpyv8RwEHLMxkQnRAcoqrzJQ53H2ys2qfQepanePNas
End-to-End Flow

From Tax Capture to Winner Settlement

  1. Harvest Token-2022 withheld taxes into swap tax vault.
  2. Keeper executes swap path and forwards USDC to distributor.
  3. Distributor splits USDC by configured BPS buckets.
  4. Prize staging funds move into pool vault in valid pool window.
  5. Snapshot locks round and stores Merkle root + total weight.
  6. Draw request transitions to VRF waiting state.
  7. VRF fulfillment writes winning index.
  8. Claim verifies proof and settles winner/triggerer payout.
Mermaid / Sequence Flow
sequenceDiagram
  participant U as Users
  participant H as Harvest
  participant SW as Swap + Keeper
  participant D as Distributor
  participant P as Pool
  participant V as VRF

  U->>H: Transfer activity accumulates withheld tax
  H->>SW: Harvest to swap_tax_vault
  SW->>SW: Keeper executes OHO -> USDC swap
  SW->>D: forward_usdc to distributor_vault
  D->>D: Split by BPS
  D->>P: staging -> pool vault
  P->>P: submit_snapshot
  P->>P: draw_winner / keeperDraw
  P->>V: request randomness
  V->>P: fulfill_randomness
  P->>P: claim_prize + advance_round
Round State Machine

Pool Round Lifecycle

Only one state path is valid per round: Open, SnapshotLocked, WaitingForVrf, ReadyToClaim.

On successful claim, the protocol advances round id and resets round-scoped fields such as Merkle root, winning index, triggerer, and deadline.

Mermaid / State Diagram
stateDiagram-v2
  [*] --> Open
  Open --> SnapshotLocked: submit_snapshot
  SnapshotLocked --> WaitingForVrf: draw_winner / keeperDraw
  WaitingForVrf --> ReadyToClaim: fulfill_randomness
  ReadyToClaim --> Open: claim_prize / claim_prize_no_triggerer
  WaitingForVrf --> Open: reset_pool (timeout)
Core Formulas

Math and Accounting

Snapshot Weight
weight_i = OHO_i + sOHO_i * m
m comes from STAKING_WEIGHT_MULTIPLIER (env).
Winner Index
winning_index = random_u128 mod W
W is total snapshot weight.
Winner Interval
cum_i <= winning_index < cum_i + weight_i
On-chain verifies interval and Merkle proof.
Trigger Split
triggerer_share = V * fee_bps_triggerer / 10000
V is pool vault amount at claim time.
Winner Share
winner_share = V - triggerer_share
If no triggerer, winner gets full V.
Distributor Split
prize/staking/liquidity/v2 = T * bps / 10000; ops = remainder
T is distributor vault amount.
Staking Reward
reward_per_token += delta_rewards * 1e18 / total_staked
pending updates by accrued - reward_debt.
Market Cap
market_cap = total_supply_OHO * (USDC_reserve / OHO_reserve)
Price sourced from LP reserve ratio.
Keeper Automation

Scheduler and Execution Policy

Keeper orchestrates harvest, swap, distribute, liquidity, event checks, draw checks, and staking reward checks by cron-configured loops.

Event-driven snapshots can be triggered by holder growth, market cap growth, prize threshold, manual signal, or fallback timeout.

Community-first logic: when state enters SnapshotLocked, keeper waits `KEEPER_DRAW_DELAY_SEC` before fallback draw.

Window Semantics

Draw Window vs Claim Window

Draw Window

`KEEPER_DRAW_DELAY_SEC` is off-chain policy that leaves first trigger rights to community users.

Claim Window

`CLAIM_WINDOW_SECONDS` is on-chain configuration for how long claim remains valid after randomness is fulfilled.

Security & Risks

Risk Model and Mitigations

  • Strict state gating in pool instructions prevents invalid transition calls.
  • PDA and mint ownership checks protect vault routing paths.
  • Merkle proof length cap and deterministic hashing reduce proof abuse.
  • Under high network load, API updates may lag temporarily; on-chain transaction records remain the source of truth.
  • Keeper restarts clear memory-only timers; persisted stores reduce disruption impact.
Draw Mechanism

How a Winner Address Is Selected

Think of every eligible wallet as owning a segment on one long number line. The segment length is that wallet's snapshot weight.

The protocol then generates one verifiable random number and drops it onto this number line. Whichever wallet segment contains that random index becomes the winner for the round.

Simple Visual Example

Total snapshot weight = 100
Wallet A: [0, 40)
Wallet B: [40, 70)
Wallet C: [70, 100)
If random index = 56, it lands in Wallet B's range, so Wallet B wins.

This is why higher snapshot weight increases winning probability, while final selection remains random and verifiable on-chain.

Product Narrative

Protocol Positioning

OHWOO does not promise fixed yield.

It offers transparent value routing, verifiable random selection, and auditable redistribution as a long-running on-chain experiment.

Convert attention into transparent, programmable incentive cycles.

Roadmap

Progressive Decentralization Plan

V1 - Launch and Prize Engine

Core contracts deployed, fair launch completed, and the event-triggered surprise prize pool brought fully online, targeting a potential 1,000,000 USDCsingle-winner milestone.

V2 - Staking and NFT Ecosystem

Staking opens to OHO holders: staking can earn protocol reward distribution while increasing snapshot weight. An NFT ecosystem layer is introduced to expand community participation and identity.

V3 - Governance and Full Community Control

Community governance framework and governance token launched. Operational scheduling, dApp evolution, and policy direction transition to community-managed processes with the goal of stronger decentralization and censorship resistance.

Initial Allocation & Tax Split

Token Initial Allocation and Revenue Routing

Initial Allocation
Protocol Name: ohwoo protocol | Symbol: OHO | Total Supply: 10,000,000,000 | Trading Tax: 5%
Allocation BucketShare
Initial Liquidity20%
PDA Treasury (Protocol Managed)60%
Team & Contributors (Locked)20%
Tax / Revenue Distribution - V1
BucketBPSShare
Prize Pool500050%
LP Injection300030%
V2 Fund100010%
Operations100010%

Formula: `amount_bucket = total_distributor_amount * bps_bucket / 10000`.

Tax / Revenue Distribution - V2 Target
BucketBPSShare
Prize Pool500050%
LP Injection100010%
Staking Rewards300030%
Operations100010%

Phase switch from V1 to V2 is governed by protocol policy and on-chain parameter update transactions.

V1 Workflow Diagram
OHWOO V1 workflow diagram
Critical Disclaimer

Critical Disclaimer & Risk Notice

Please read and fully understand the following before participating:

Not investment advice: OHO and this protocol are provided for informational and experimental purposes. Nothing here constitutes investment, legal, or tax advice, and there are no profit guarantees.

Not gambling: The community incentive mechanism is not a lottery or gambling. It is a technical experiment to increase participation and community activity. Participants should not expect guaranteed returns.

No warranties: The protocol is provided “as is,” without any express or implied warranties, including merchantability or fitness for a particular purpose.

High risk: Crypto markets are highly volatile. Participation carries significant risks, including smart-contract vulnerabilities, technical failures, or regulatory changes, and may result in total loss. You assume all risks and responsibilities.

Jurisdiction and compliance: Access to this protocol may be restricted in some jurisdictions. You are solely responsible for ensuring your use complies with all applicable laws and regulations in your location.

Limitation of liability: To the maximum extent permitted by law, creators, contributors, and affiliates are not liable for any direct, indirect, incidental, or consequential damages arising from use of this protocol or OHO.

Before participating, ensure you understand crypto and smart-contract risks and consult independent professional advisors.