How Accelerate works
Accelerate is an autonomous ecosystem incubator for Elysium by Kinetiq, an Arbitrum Orbit L2 settling to HyperEVM with HYPE as gas token. Trading fees fund a treasury; the treasury funds builders according to measured contribution, holds what it buys, and deploys part of it into approved liquidity and staking strategies. Realized revenue is reinvested in the next generation of projects.
Status: contracts implemented and tested locally, not audited, not deployed on any chain.
Fees and the split
ACC/L has no transfer tax. Fees are earned at the venue: protocol-owned liquidity accrues swap fees that a fee-source adapter harvests into the FeeCollector (never the principal). Anyone can call distribute(asset).
investment 65% [40%..80%] -> INVESTMENT bucket reserve 20% [10%..40%] -> RESERVE bucket (+ rounding dust) grants 10% [ 0%..20%] -> GRANTS bucket operations 5% [ 0%..10%] -> operations multisig
Honest limitation: anyone can open a cheaper ACC/L pool, and fees are only earned on volume that trades against protocol-owned liquidity.
Treasury buckets and NAV
- Holdings: Ecosystem project tokens acquired by the treasury.
- Reserve: Liquid reserves, protected by the minimum reserve limit.
- Investment: Budget for ecosystem acquisitions: fee share plus reinvested revenue.
- Strategy: Capital earmarked for liquidity and staking, not yet deployed.
- Grants: Builder grants, paid only by governance through the timelock.
- Revenue: Realized strategy revenue waiting for a reinvestment epoch.
The vault has no generic withdraw. Assets leave through four paths only: releaseForInvestment (InvestmentExecutor), releaseToStrategy (StrategyManager), payGrant (governance) and executeMigration (governance, 14 days after proposal, guardian can cancel). The two outflow roles are granted only after a delay of 14 days that the guardian can cancel.
NAV = Σ tracked assets (vault ledger + strategy underlying) × value × (1 − haircut) value = oracle price for reserve assets value = min(oracle, avg. cost) for project tokens ACC/L is excluded. LP tokens and staking receipts are never counted on top of their underlying.
Treasury targets (not quotas): holdings 40%, liquidity 20%, staking 15%, reserves 25%. Capital stays idle when no approved opportunity meets the limits.
Project lifecycle
Pending ──verify──▶ Verified ──eligible──▶ Eligible ──first grant / acquisition──▶ Funded exits: Suspended (reviewer, guardian or governance; governance reinstates) · Rejected
Changing app contracts or the token returns a verified project to Pending. While Suspended, a project cannot be edited (only transferBuilder works). Token investment also needs tokenApproved, which only governance sets, naming the exact token it reviewed. Governance can forceRelease a squatted registration so its domain (and token, unless funded) can be registered again.
Domain verification
Domains are lowercase LDH hostnames (a–z, 0–9, hyphen; labels ≤ 63; total 3–253; at least one dot). Prove control with either:
DNS TXT on <domain>: accelerate-verify=<projectId>:<builderAddress>
HTTPS file: https://<domain>/.well-known/accelerate.json
{ "accelerate-verify": "<projectId>:<builderAddress>", "chainId": 99801 }A reviewer, who can never be the builder, checks the proof and anchors its hash with verifyProject. Register on the Builders page.
Contribution Score
The Ecosystem Contribution Score (ECS, 0–1000) is computed offchain from onchain activity first, Sybil-filtered, with a published dataRoot so each builder can verify its record.
- User acquisition 25%
New, Sybil-filtered wallets interacting with registered contracts - Retention 20%
Share of wallets still active after 30 days - Economic activity 25%
Volume and protocol fees routed through the app - Integrations 15%
Calls from other registered projects' contracts - Growth momentum 10%
Change of the metrics above across rolling windows - Reliability 5%
Server-side uptime probes and failed-transaction rate
Client SDK data is supporting evidence only: it can add a small bounded bonus, never lower a score.
Allocation formula
The allocator publishes scores; the AllocationController computes budgets itself, deterministically:
priority_i = (5000·ECS_i + 3000·Growth_i + 2000·Quality_i) / 10000 (0..1000) weight_i = priority_i² × riskFactor_i (0 if ECS_i < 400) budget_i = min(B × weight_i / Σ weight, B × 25%) B ≤ maxEpochBudget (10,000 WHYPE) and ≤ the INVESTMENT bucket. Capped excess stays in the treasury.
Each proposal waits through a challenge window of 2 days. Builders of active projects can dispute once per epoch; a reviewer resolves, and an upheld dispute vetoes the epoch. Governance, the guardian, reviewers and the allocator can veto before finalization. Anyone can finalize afterwards; budgets then stay valid for 14 days.
Investment execution
Two keys: the allocation service signs an EIP-712 order, a separate keeper submits it. Neither can act alone, and the builder of a project can never be either for its own token. Every order must also pass:
- a finalized, unexpired epoch budget for that project;
- tranche ≤ 20% of the project budget, ≥ 2 h between tranches;
- order lifetime ≤ 15 min, deadline and single-use nonce;
- a governance-approved adapter wrapping one fixed router;
- output ≥ max(signed minimum, oracle minimum at ≤ 1% slippage), measured as the vault's balance change;
- a post-trade RiskController check.
Secondary-market purchases pay sellers, not builders. Direct builder funding comes from grants.
Risk limits
project exposure (holdings + strategy underlying, full price) ≤ 10% of NAV (ceiling 10%) single LP position ≤ 5% of NAV (ceiling 5%) exposure per external protocol ≤ 10% of NAV (ceiling 10%) RESERVE bucket, after haircut ≥ 15% of NAV (range 10%..50%)
Every check reverts if a price is stale or feeds disagree: risk-increasing actions fail closed.
Strategies
Four classes: Stable/Stable, HYPE/Stable, Project/HYPE liquidity and HYPE staking. Each ships disabled, and an adapter is registered only after its external contracts are verified on Elysium. No leverage, no borrowing; harvests credit REVENUE only, losses are recovered before reinvestment, and realized revenue is reinvested 50% investment / 30% strategies / 20% reserves. See Strategies.
Governance and guardian
The GovernanceTimelock is governance for every module: roles, parameters, token approvals and grants wait at least 2 days. Proposer: the governance multisig (later an ACC/L Governor). Executor: anyone after the delay.
The guardian multisig can pause, revoke and cancel (including queued timelock operations, through the EmergencyGuardian), never spend, grant or unpause. The rotator can replace the guardian after 7 days, so a rogue guardian cannot freeze the protocol permanently. Details on Governance.
Data modes
Preview a deterministic simulated dataset of a hypothetical six-month scenario. A banner stays on screen and every figure carries a “Simulated” label. Books reconcile: buckets sum to NAV, budgets follow the onchain formula, tranches respect caps.
Live reads Elysium Testnet (chain 99801) through viem with the shared ABIs and the deployment registry. It fails closed: no deployment means empty states, a failed read or stale price means no figures, and it never falls back to preview data. Figures that only the indexer can produce are marked unavailable. Choose the default with NEXT_PUBLIC_DATA_MODE.
ACC/L token rights
Holding ACC/L gives governance voting power only. It does not give ownership of treasury assets, redemption rights, distributions, a claim on revenue or a price floor. Treasury NAV is an operational metric, not a promise about the market price of ACC/L.
Contracts
- AccelerateTokenFixed 1B supply, ERC20Votes, Permit, Burnable. No owner, mint, tax, blacklist or pause.
- GovernanceTimelockOpenZeppelin TimelockController with a delay floor of 2 days. Self-administered.
- EmergencyGuardianPause registry and the timelock's canceller; guardian rotation by the rotator after 7 days.
- FeeCollectorWraps native HYPE, splits fees inside hard bounds, optional burn of ACC/L-denominated fees.
- TreasuryVaultCustody and bucket ledger, cost basis per holding, balance-backed credits, delayed outflow roles, migration hatch.
- ProjectRegistryIdentity and lifecycle, EIP-712/ERC-1271 relayed registration, unique domain and token.
- AllocationControllerEpoch scores, onchain budgets, challenge window, disputes, veto, finalization.
- InvestmentExecutorTwo-key signed orders, tranches, oracle-bounded swaps, post-trade risk check.
- RiskControllerNAV, aggregated exposure, LP and protocol limits, reserve floor.
- PriceOraclePrimary + independent secondary feed, staleness and deviation checks, fail closed.
- StrategyManagerLiquidity and staking adapters (none registered), underlying-only accounting.
- ReinvestmentControllerDistributes realized revenue in epochs after losses are recovered.
Deployment on Elysium Testnet: none published yet.
Known limitations
- Not audited. Static analysis not yet complete.
- Single-signer ECDSA for orders; a threshold signer would be stronger.
- Exposure limits are checked after trades; price moves alone can push exposure above a limit (further buys then revert). No automatic rebalancing.
- Project tokens cannot be bought until an independent TWAP feed exists for them.
- Grant amounts are bounded only by the GRANTS bucket and the timelock.
- Elysium mainnet parameters were not published at the time of writing.