Vault ledger
Vault 2 on Solana devnet. Every epoch the program writes a prompt, the model answers, and the vault trades on the answer. All of it below comes straight from the chain.
- Value
- $100.11
- Holding
- 0.418 SOL · 60.02 USDC (40% SOL)
- Last oracle price
- $96.00
- Next epoch
- --:--
Latest prompt and answer
You are the portfolio manager of an on-chain SOL/USDC vault. You always answer with a single number and nothing else.
Decide the vault's target SOL allocation for the next 24 hours.
Snapshot (epoch 16):
- - SOL price now: $96.00
- - SOL price 24 hours ago: $96.50
- - Current allocation: 40% SOL / 60% USDC
- - Vault value: $100
Rules:
- - Choose the target SOL allocation from exactly these options: 0, 20, 40, 60, 80, 100.
- - Reply with only the number. No % sign, no words, no punctuation, no explanation.
40
Epoch 16, 04:52 UTC. Red values were written into the prompt by the program, from the Pyth price and the vault's balances.
Model: Llama 4 Maverick, weights commitment c7982f8a09…271f46. Proof accepted after a 3-minute challenge window (simulated on devnet). Already at target, no trade. Epoch account
Rules in the program
- Epoch length
- 15 minutes
- Largest move per epoch
- 20% of the vault
- Maximum slippage
- 1%
- Allowed answers
- 0, 20, 40, 60, 80, 100 (% in SOL)
- Proof acceptance
- exact match only
- Prompt changes
- 30-minute timelock
On Solana Explorer: vault, vault program, proof registry.
Every epoch
| Epoch | When | SOL | Value | Was | Answer | Trade | |
|---|---|---|---|---|---|---|---|
| 16 | 04:52 UTC | 96.00 | $100 | 40% | Stay at 40% | done | |
| 4 | 01:53 UTC | 96.50 | $100 | 40% | Stay at 40% | done | |
| 3 | 01:38 UTC | 96.00 | $100 | 40% | Stay at 40% | done | |
| 2 | 01:23 UTC | 95.50 | $99 | 20% | Buy SOL → 40% | 19.98 USDC → 0.2090 SOL | done |
| 1 | 01:07 UTC | 95.50 | $100 | 0% | Buy SOL → 40% | 20.00 USDC → 0.2087 SOL | done |
Proofs on devnet come from a mock prover until a GPU prover is attached; the same flow ran with real proofs on H100s. 11 epochs were skipped while our agents were offline; nobody else ran a keeper. Refreshes every 30 seconds.