Skip to main content
The DarkPool Move package ships 7 modules plus a templated per-market binary package. Built clean (sui move build), unit-tested (sui move test → 17/17 pass), pinned to the DeepBook Predict predict-testnet-4-16 branch.

The 7 modules

ModuleLinesJob
predict_facade~150Attribution events alongside cross-package predict::* calls
market~140MarketLink registry distinguishing price (kind=0) vs OO (kind=1) markets
settlement~120AutoRedeemQueue + distribute_fees (1% / 0.5% / 0.5%)
seal_policy~80AccessPolicy (still used as opaque arg by dark_pool::deposit)
agent~190TradeAgent identity + signed-PnL + PLP score
oo_resolution~290Optimistic oracle (propose → dispute → vote → finalize)
dark_pool~415DarkPoolVault<T>. BalanceManager + TradeCap ids, deposit / pull_for_mint / record_mint / receive_settlement / redeem

Per-market scaffolded packages

In binary-market-template/:
  • yes.move. Coin<YES> OTW + TreasuryCap
  • no.move. Coin<NO> OTW + TreasuryCap
  • settlement.move. Settlement<COLLATERAL> shared object, ResolverCap, mint_pair / burn_pair / mark_resolved / redeem_{yes,no}
Materialised + published once per market by scripts/create-binary-market.ts.

Build + test

cd packages/move
sui move build      # clean
sui move test       # 17/17 pass

Modules deleted in the V3 pivot

  • outcome_market.move (internal AMM). V3 pools are the trading engine now.
  • position.move (Seal-encrypted intent ledger). User chose vault-based privacy (k-anonymity) over Seal note encryption.
Both lived in v0.2 source; both are gone from v0.3 and the deployed package.

Live deployment

Package 0x21c96c85907b9aabaf770d4b663874d6fa35175176765512cac1d77d969ec5df contains all 7 modules. See Live Testnet IDs for the full shared-object table.