Trust Architecture โ Who Can Do What
The honest answer to "who controls DHP": on vaults, nobody. At the factory, nobody (ownership renounced on all five chains). The only live administrative surface in the entire protocol is the fee collector's sweep โ and its policy is fixed in public.
| Component | Admin surface | Status on all 5 mainnets |
|---|---|---|
| DHPVault (every clone) | None โ no pause, no setter, no upgrade, no owner functions | Permanently key-less |
| DHPFactory | Owner could set curator / curation flag / CRDD tier โ renounced 2026-09-22 | owner = 0x000โฆ000 โ immutable |
| DHPFeeCollector | Owner may sweep to treasury and re-point the treasury | Held by deployer; policy: transfer to DAO Safe, never renounce |
Why the factory renounce is safe โ and the collector renounce never isโ
Renouncing the factory only freezes curation cosmetics and tier config; permissionless createVault() works forever. The collector is the opposite: sweep() is its only path from "fees accumulated" to "treasury funded", so renouncing would brick every future DAO fee inside the contract (audit finding M-NEW-1, v1.2.2).
The two contracts deliberately have opposite governance endgames โ this asymmetry is a documented design decision, not an oversight. See Renounce Transactions for the verifiable on-chain txs.
Free market, one curatorโ
- Anyone can create a vault for any qualifying token โ including duplicates of existing vaults. The first vault per token is canonical forever; duplicates can never overwrite it.
- The DAO curator (a single fixed address) is the only wallet capped at one vault per token โ the curated tier visible in the app cannot be squatted, including by the curator themselves.
- The factory's
isVerifiedflag is presentation-only curation (now frozen); it gates nothing on-chain. Unverified vaults work identically. - CRDD tier (#28): once wired, holders of a threshold balance of CRDD mint vaults fee-free. Dormant (
crddToken = 0x0); wiring it required an owner call that no longer exists post-renounce โ the tier stays dormant until a factory redeploy deliberately re-enables it.
Token eligibilityโ
On-chain gate (enforced by the factory):
- Token exposes
decimals()โ [0, 18] - No canonical vault exists for the token yet (first-vault-wins registry)
- Exact 0.004 ETH creation fee (no refund path โ prevents griefing via bad-receive contracts)
Off-chain gate (the app checks before creation):
- GoPlus honeypot check clean (
buy_tax=0,sell_tax=0,cannot_buy=0) - Meaningful DEX liquidity (default โฅ $5,000 on Uniswap V3)
- Minimum holder count (default โฅ 100)
- Token source verified
The layered gate keeps the free market open while making junk vaults economically pointless (0.004 ETH each).