cleat

Draft. This risk disclosure has not been reviewed by a lawyer. You can lose some or all of your deposit.

Cleat Risk disclosure

Draft for counsel review. Status as of 2026-11-10: prototype only. It runs locally, in simulation and in paper trading, is not on mainnet, holds no user funds and has not been audited.

You can lose some or all of the money you deposit. "Delta-neutral" means the vault tries to cancel out stock-price moves. It does not mean "risk-free", and it does not mean returns are guaranteed. Past or simulated results don't predict future results. Read this whole page before depositing. Source references are explained in README.md.


1. Smart contract risk

  • The vault contracts (DNVault, NavOracle, RiskConfig, Guardian, MetricExecutor, CollateralGateway) are new code and have not been audited. An audit is being booked, but none has been done (packages/contracts/README.md: "no audit").
  • Tests, including fuzz tests, invariant tests and differential tests against the reference model, reduce the chance of bugs but cannot rule them out.
  • The contracts call outside contracts that could fail or behave unexpectedly: the Metric router, stock tokens, USDG, and the collateral route. The Metric router and collateral route interfaces in the repo are placeholders. The real ones still have to be integrated and reviewed (packages/contracts/README.md, "Simulated, not venue facts").
  • Known limitations:
  • Shares sent to the vault's own address are locked forever.
  • The asset must be a plain ERC-20.
  • An epoch is capped at 256 depositors and 256 redeemers (EpochFull).

(Source: packages/contracts/README.md.)

2. Venue risk (Metric, Hyperliquid / trade[XYZ], Robinhood Chain)

  • Outages and halts. Any venue or chain can go down, slow down, or reject trades. Metric pools have stop-loss and price-velocity safeguards that "may reject trades under configured conditions", and swaps should halt when the issuer multiplier feed stalls (project docs METRIC_TRADING_EXECUTION.md §23–24, METRIC_TOKENIZED_STOCKS_ORACLES.md §16). The thresholds are not published in our docs (UNKNOWN / needs-docs). If the vault can't trade one leg, it may be unable to rebalance or exit.
  • Leg risk. Trades on two venues can't be made atomic. If one leg fills and the other doesn't, the vault is exposed until it recovers. It allows at most 30 s unhedged and 3 recovery attempts before escalating (packages/config/src/risk.ts). Recovery itself costs money and can fail during an outage.
  • Pool control. Some Metric pool configurations let a curator or administrator control pricing behaviour (project doc METRIC_ARCHITECTURE.md §9). The launch pools were recorded as having immutable parameters, locked pricing and a verified admin (research/funding-2026-11-09.md). Pool tiers are not endorsements.
  • Liquidity. Measured depth within 0.30% price impact on 2026-11-09 was a few hundred thousand dollars per pool. META's sell side was only about $111k (packages/config/src/pairs/launch.ts). Large exits may be slow or expensive.
  • Venue rule changes. Fees, funding parameters, oracle methods and margin rules can change. The fees doc itself warns that growth-mode status can change (packages/config/src/pairs/launch.ts, citing claude/TRADEXYZ_FEES.md).

3. Oracle and NAV risk

  • Venue prices.
  • trade[XYZ] perps use an oracle from external price data while US markets are open. While they are closed, the oracle follows an internal moving average of the venue's own book (project doc claude/TRADEXYZ_PRICING_ORACLE_MARK_EXTERNAL.md §1–2).
  • Margin and liquidation use a separate mark price (same doc §3).
  • Metric prices come from oracle share feeds × the issuer multiplier (project doc METRIC_TOKENIZED_STOCKS_ORACLES.md §4–5).

Any of these can be wrong, stale or manipulated.

  • Vault NAV.
  • An off-chain attestor computes NAV and posts it on-chain.
  • On-chain checks limit the damage: attestations must be fresh and match the share supply, and NAV/share can't move more than 2% per epoch without a guardian confirming the exact values. The ceiling is 10% (packages/contracts/README.md; packages/contracts/src/RiskConfig.sol).
  • A wrong attestation inside those bounds would still misprice that epoch's deposits and redemptions.
  • Simplifications still in place (research/paper/REPORT.md): the reference price is the Metric pool mid (there is no independent feed yet), and USDG is assumed to equal $1.

4. Funding risk

  • Yield depends mainly on perp longs paying shorts. Funding is variable and can go negative, in which case the short pays (project doc claude/TRADEXYZ_FUNDING.md §1).
  • In the 30-day scan (read 2026-11-09), shorts were paid on most hours, but rates were negative 7% of hours for GOOGL, 6% for META and 9% for SPCX. GOOGL's worst day was −3.9% APR (research/funding-2026-11-09.md). Thirty days is a short sample.
  • A 2026-04-30 oracle change means shorts holding through weekend gaps get much less funding compensation (project doc claude/TRADEXYZ_FUNDING.md §3).
  • The vault exits when funding falls below its thresholds, but exits are triggered by trailing averages, so some losses can happen before an exit. A CORE pair exits only after its 7-day average net funding has been below zero for three days in a row and it has been held at least 7 days, so it can pay negative funding for a week or more first. A faster exit applies only when funding is sharply negative: the pair exits when its 24-hour average net funding is below −15% a year. Between those two rules, a position can still lose money to funding before it exits. Exiting and re-entering also costs fees and spread.

5. Custody risk on the perp venue

  • The short leg and its collateral sit in an account on Hyperliquid's HyperCore, not in the vault contract.
  • The collateral route and the custody setup for that account (who holds its keys or controls it) are not built and not specified in the repo (UNKNOWN / needs-docs; packages/contracts/src/interfaces/ICollateralRoute.sol).
  • Until that design is published and reviewed, assume that the operator controls the off-chain account. That makes it a trust assumption beyond the on-chain protections described in SECURITY.md.

6. Basis risk

  • The stock token and the perp are different instruments. Their prices can drift apart (the "basis") because of venue pricing, sessions, liquidity, dividends, fees or stress.
  • The vault pauses deposits when basis exceeds 5% and begins a controlled unwind above 10% (packages/config/src/risk.ts; packages/execution/src/breakers.ts).
  • Basis losses are realized if the vault must exit while the spread is wide.

7. Liquidation and auto-deleveraging (ADL) risk

  • Liquidation. On trade[XYZ], a position is liquidated when account equity falls below maintenance margin, using the venue's mark price. Maintenance margin is half of initial margin at max leverage, which is 2.5% at 20× (project docs TRADEXYZ_LIQUIDATIONS.md; claude/TRADEXYZ_MARGIN_MODES.md §3).
  • A fast rally in the stock raises the loss on the short. The long gains, but those gains are on a different chain and can't be posted as perp collateral instantly.
  • The vault keeps buffers: margin health ≥ 2.0 at entry, ≥ 25% liquidation distance, and deleveraging below 1.35 (packages/config/src/risk.ts).
  • Gaps, outages or a stuck bridge could still lead to liquidation, with fees and losses.
  • Price bounds outside market hours. Outside external pricing hours, trade[XYZ] bounds how far the mark can move. A position whose liquidation price lies outside the active bounds can't be liquidated while those bounds apply (project doc claude/TRADEXYZ_DISCOVERY_BOUNDS.md §5). When external prices resume, the mark can jump.
  • ADL. If the venue's liquidations and backstop fail, profitable, highly leveraged positions can be force-closed at the previous mark price (project doc TRADEXYZ_ADL.md). If that happens to the vault's short, the long is left unhedged until the vault reacts. The ranking formula's treatment of short positions is an open question (CLAUDE.md).

8. Stock-token risk (issuer and upgradeability)

  • Issuer. Robinhood Stock Tokens are tokenized debt securities issued by Robinhood Assets (Jersey) Limited (packages/config/src/pairs/launch.ts). You are exposed to the issuer, not to the underlying shares. Holding the token does not make you a shareholder.
  • Upgradeability with one shared beacon. The tokens are upgradeable proxies. GOOGL, META and SPCX all point to one beacon (0xe10b6f6b275de231345c20d14ab812db62151b00), so a single upgrade changes all three tokens at once. Who holds the upgrade role has not been identified (CLAUDE.md).
  • An upgrade could change how the tokens behave, for example by freezing transfers, adding restrictions or changing balances.
  • The vault's watcher trips a latched critical breaker when it sees a code change (packages/execution/src/upgradeWatcher.ts), but it cannot prevent or reverse an upgrade.
  • The production fingerprint source is still to be built.
  • Corporate actions.
  • Dividends and splits adjust the token multiplier.
  • On trade[XYZ], a split settles and closes existing perp positions and the market reopens on the new basis (project doc TRADEXYZ_CORPORATE_ACTIONS.md).
  • Perp holders don't receive dividends.
  • Mergers, spin-offs and delistings are handled case by case and can be disruptive.
  • Token holders should not assume they receive 100% of a dividend, because withholding may apply (project doc CORPORATE_ACTIONS.md).
  • Eligibility. Robinhood Assets (Jersey) confirmed to the owner that a contract vault may hold Stock Tokens (CLAUDE.md, 2026-11-09). That confirmation could be withdrawn or changed.

9. Bridge risk

  • Collateral has to move between Robinhood Chain (USDG) and the perp venue (USDC). The plan is to use Across (CLAUDE.md). That route is not built. The repo uses a simulated bridge, and paper trading assumes an instant bridge (research/paper/REPORT.md).
  • Across's fees, limits and failure modes are still to be verified (research/funding-2026-11-09.md).
  • Bridges can be hacked, delayed or paused. A stuck transfer can leave the short under-collateralized or block withdrawals. NAV marks in-transit funds separately and can apply a haircut to them (packages/accounting/src/nav.ts).

10. USDG peg risk

  • The vault's unit of account is USDG (Paxos). Collateral at the perp venue is held in USDC.
  • If USDG loses its peg, the dollar value of your shares falls, and conversions between USDG and USDC can lose value.
  • Deposits and new risk pause automatically when USDG is more than ±0.5% from $1, and a missing price fails closed (STABLECOIN_DEPEG, owner decision D-9). The live USDG price feed is not wired yet: the price is a SIMULATED input today, and paper trading assumes USDG = $1 (CLAUDE.md).

11. Regulatory and geographic risk

  • Not available to U.S. persons, or to people in jurisdictions on Robinhood's Stock Token restricted list. That list includes Canada, the United Kingdom and Switzerland, among others. The full list is still to be added (apps/web/lib/geo.ts).
  • Front-end-only enforcement (owner decision 2026-11-10). The restriction is an IP-based block plus a self-attestation. There is no on-chain allow-list, and shares are freely transferable (CLAUDE.md). The team has recorded this as an accepted risk.
  • Restricted persons could still reach the contracts directly or receive shares by transfer.
  • Regulators may view the vault, its shares or the stock tokens in ways that restrict access, force an unwind, or affect you personally.
  • The legal and tax treatment of the vault shares hasn't been settled by counsel (UNKNOWN / needs counsel). You are responsible for your own compliance and taxes.

12. Points and rewards risk

  • Third-party rewards. Any reward from Hyperliquid (including S3), trade[XYZ] or Metric is potential, unconfirmed and not guaranteed. Programs may not exist, may exclude the vault or its users, or may change. We assign them no value and never include them in APY or NAV (project doc AIRDROPS_INCENTIVES.md §16, §32–34). Who would own any reward the vault receives is not determined (same doc §21).
  • Cleat Points (draft, docs/POINTS_SPEC.md on the agent/points branch).
  • Points have no promised value and are not a token or a claim on one.
  • They can be recalculated, clawed back, changed or discontinued under the published rules.
  • Don't deposit expecting points to be worth anything.
  • No volume farming. The vault never trades to create volume or points (CLAUDE.md). If you want maximum "activity", this product isn't designed for that.

13. Liquidity and withdrawal risk

  • Withdrawals go through an epoch queue and settle at the next epoch's NAV. There is no instant withdrawal (packages/contracts/src/DNVault.sol).
  • If free cash is short, the epoch can't settle until positions are unwound (InsufficientLiquidity). Unwinding can be slowed by:
  • Metric pool depth;
  • closed market sessions (the vault doesn't trade while closed);
  • venue outages;
  • circuit breakers;
  • the bridge.
  • Many people withdrawing at once can push unwind costs onto everyone in that epoch, because all requests settle at the same NAV.
  • Pauses: the Guardian can pause deposits and strategy outflows. Only the timelock (2 days in the local deploy) can unpause (packages/contracts/src/Guardian.sol; packages/contracts/script/DeployLocal.s.sol).

14. Yield and model risk

  • Paper estimates (2026-11-10, CLAUDE.md) put CORE net return on NAV at about 1.3–1.8% a year at the funding floor and about 4% at the 30-day average. The CORE entry hurdle is 1% on capital used, so the vault can be deployed at these rates, but the base return is low and can be zero or negative after costs in a bad period.
  • Several cost inputs are still SIMULATED: gas, the bridge, perp leverage and the reference price (CLAUDE.md). Paper trading has under 7 days of data.
  • Management and performance fees are 0% in the prototype. Production fees are an OWNER DECISION.

15. Operational and key risk

  • Off-chain components run the strategy: the keeper, the attestor and the execution engine. Bugs, downtime, compromised API keys or compromised role keys could cause bad trades, missed rebalances or wrong NAV attestations.
  • In the prototype, the off-chain service stores its state as JSON snapshots. Production PostgreSQL persistence is still to be built (packages/execution/src/persistence.ts; CLAUDE.md).
  • Who holds the production roles (keeper, attestor, guardian, timelock proposer/executor) is an OWNER DECISION. See SECURITY.md.

This disclosure is not exhaustive. It is not legal, tax or investment advice.