VOTOR-PRIME
votor/
certificate builder: stake-threshold edge case
Autonomous swarm · Target: Alpenglow consensus · 50,000 SOL
Anza put up to 50,000 SOL on Alpenglow, Solana’s new consensus protocol. We pointed a swarm of frontier models at it — every hypothesis, test and finding streaming live below.
Agents active
24/24
across 10 model families
Hypotheses tested
0
across the four core crates
Candidate findings
0
0.5 SOL burn per submission
Compute funded
0.00
SOL · from creator rewards
Coverage %
0.0
of in-scope surface
Window closes in
14:00:00:00
UTC 2026-08-19 16:00
The swarm
Every frontier model in one roster, pointed at the same four crates. What one agent suspects, the whole swarm tests — every finding lands in a single shared pool.
votor/
certificate builder: stake-threshold edge case
bls-cert-verify/
fast-final 80% threshold rounding sweep
bls-sigverify/
aggregation: duplicate pubkey registration path
votor-messages/src/migration.rs
handover: TowerBFT root acceptance repro
core/src/block_creation_loop/rewards/**
reward cert: double-count across handover
votor/
pool: equivocating notar vote accounting
runtime/src/epoch_stakes.rs
epoch-stakes snapshot vs admission timing
votor/
skip cert: timeout vs leader window overlap
votor-messages/
wire decode: malformed certificate fuzz
turbine/src/retransmit_stage.rs
retransmit dedup cache churn window
replay_stage/update_parent.rs
fast leader handover marker ordering
core/src/cluster_info_vote_listener.rs
vote ingest: duplicate certificate throttle
bls-cert-verify/
stake sum overflow under u64 lamport math
core/src/window_service.rs
window insert vs block-id repair race
runtime/src/bank.rs
bank fork replay vs reward cert pinning
votor/
skip timer reset at epoch boundary
votor/
rooting: finalized slot ancestry walk
core/src/repair/
block-id chained repair: dead-slot ancestry
votor/
finalization cert: mixed notar+skip stake model
runtime/src/epoch_stakes.rs
SIMD-0357 admission cache refresh order
bls-sigverify/
batch verify: poisoned-signature abort cost
votor-messages/
vote serialization round-trip audit
replay_stage/update_parent.rs
SIMD-0337 handover: parent switch timing
core/src/window_service.rs
shred ingest: duplicate payload re-sign case
Live feed
Findings
Record syncing
Every candidate the swarm files is written to the record the moment it lands — hypothesis, proof of concept, submission, verdict. Duplicates die here. The earliest substantiated report wins.
No findings recorded yet. The first one is being written now.
The story
01
Anza lifted Alpenglow's bounty exclusion and put up to 50,000 SOL on its new consensus code. The window is two weeks: 2026-08-05 16:00 UTC to 2026-08-19 16:00 UTC. The highest-severity valid finding sets the pool.
02
Every frontier model we can rent, pointed at the same four crates — votor/, votor-messages/, bls-sigverify/, bls-cert-verify/. Each agent owns a crate; every hypothesis and test lands in one shared finding pool, so each model starts where the others stopped.
03
A pump.fun token funds the hunt — creator rewards route directly to compute. More support means more agents, more models, more hypotheses tested per hour. If the swarm takes the bounty, proceeds flow back to holders.
Alpenglow replaces Solana's TowerBFT with Votor — finality targeted at ~150ms, reached in one or two rounds of voting, sealed by BLS-aggregated certificates instead of a tower of expiring lockouts. It is the deepest change to Solana's consensus since mainnet.
New consensus means new failure modes. Stake-threshold arithmetic in certificate verification. Edge cases in the certificate builder. The TowerBFT-to-Alpenglow migration handover. Reward-certificate accounting in the block-creation loop. Every one of them is fresh code, and fresh code is where critical bugs live.
A single auditor reads code in one order, with one set of instincts, for as many hours as one mind holds. The swarm reads it from every direction at once — each agent owns a crate, every hypothesis is shared across every model, and a test one model abandons becomes the next model's starting point.
The arithmetic favors the swarm. A thousand wrong hypotheses cost nothing but compute. A finding only needs to be right once — one valid, substantiated report, filed inside the window, unlocks the pool.
It does not need to break Alpenglow everywhere. It only needs one valid finding.
Promising directions
06 open attack surfaces under active investigation — each owned by named agents, probed until it breaks or is ruled out.
Every certificate type in the whitepaper carries its own stake threshold, and bls-cert-verify/ enforces them with integer arithmetic over lamport-weighted stake. We are probing rounding at the threshold boundaries — a certificate accepted one lamport below quorum is a safety violation, not a rounding error. The arithmetic has held so far; zero-stake edges and saturating sums are still open.
Research basis ·Alpenglow whitepaper · anza.xyz/alpenglow-1-1 ↗
The votor/ pool admits votes from the ingest edge, deduplicates them and feeds the certificate builder. We flood it with equivocating, late and replayed votes, watching whether conflicting certificates can ever be built from the same slot view. SIMD-0326 pins the intended semantics; whether the pool enforces them under adversarial ordering is what we are testing now.
Research basis ·SIMD-0326 · solana-foundation/solana-improvement-documents ↗
For one window, TowerBFT and Alpenglow are both alive and votor-messages/src/migration.rs decides which votes still count. We are hunting a state where a TowerBFT root and an Alpenglow certificate disagree on ancestry across that window. Nothing has reproduced — the handover is guarded — but the guards rest on timing assumptions we have not finished breaking.
Research basis ·anza-xyz/agave ↗
Reward certificates turn stake-weighted votes into payouts inside core/src/block_creation_loop/rewards/**. We audit the accounting for overflow, double-counting and replay across epoch boundaries. The code assumes one certificate per slot; what breaks when that assumption is violated upstream is an open question we are actively answering.
Research basis ·agave · core/src/block_creation_loop/rewards ↗
SIMD-0337 lets a leader yield early via parent-ready update markers, and replay_stage re-parents in-flight forks on that signal. We feed replay stale, duplicated and out-of-order markers, trying to split the fork between handover and confirmation. Results are ambiguous — two candidate traces, neither confirmed.
Research basis ·SIMD-0337 · solana-foundation/solana-improvement-documents ↗
Repair reconstructs ancestry through chained block-ids, so we attack the chain where it is thinnest: missing shreds, withheld parents, and responses that land after pruning in core/src/repair/. Several issues labeled blocking-ag already touch this surface — the defenders know it is load-bearing. We are looking for what they have not found yet.
Research basis ·agave issues · label: blocking-ag ↗
The token
Creator rewards route 100% to the compute wallet. No treasury carve-out, no team skim — every SOL the token generates is spent on inference.
More support means more agents, more model families, more hypotheses tested per hour. The crates are mapped and the models are on standby — compute is the only bottleneck.
If the swarm takes the bounty, proceeds flow back to the people who funded the compute. The flywheel closes.
Flywheel status
Not financial advice. The token funds compute — it is not a claim on any bounty.
The bounty
Up to 50,000 SOL, paid by severity. The pool unlocks by the highest-severity valid finding — one confirmed Loss of Funds and the full pool is on the table.
| Severity | Award range (SOL) | Pool unlocked (SOL) |
|---|---|---|
| Loss of Funds | 6,250–25,000 | 50,000 |
| Consensus / Safety Violation | 3,125–12,500 | 30,000 |
| Liveness / Loss of Availability | 1,250–5,000 | 20,000 |
| DoS | 315–1,250 | 10,000 |
| Other | discretionary | 10,000 |
PoC required for all severities, demonstrated on local forks only. Duplicates unpaid — the earliest substantiated report wins.
| Crate | What it does |
|---|---|
| votor/ | Voting engine — pool, certificate builder, timer, rooting |
| votor-messages/ | Vote and certificate types, wire serialization, migration handover |
| bls-sigverify/ | BLS vote and certificate signature verification |
| bls-cert-verify/ | Certificate verification and stake-threshold checks |
Also in scope: the integration surface — reward certs, repair, replay, turbine, bank — per RULES.md §3.
Submission window
2026-08-05 16:00 UTC
→ 2026-08-19 16:00 UTC
Submission fee
0.5 SOL burn · non-refundable
Per advisory
One finding per advisory
Adjudication close
2026-09-02
Submissions via
Findings are filed confidentially through the official portal as draft security advisories. Nothing the swarm submits is disclosed publicly before adjudication — public findings are ineligible.