SettleKit docs

What is SettleKit?

A zero-authority settlement engine on Solana. FinalWhistle is the flagship market built on it.

SettleKit (the fw-settle program) turns cryptographically signed sports data into on-chain truth that moves money. A market, an insurance policy, or any other contract settles if and only if a Merkle proof of the relevant stat verifies against a root that TxODDS has already anchored on Solana.

FinalWhistle is the flagship consumer: World Cup prediction markets where escrow is released by proof of the score — no admin key, no oracle vote, no claim button. One team, one submission, two layers:

LayerProgramWhat it does
Enginefw-settle (SettleKit)Verifies TxLINE Merkle proofs on-chain and records immutable Verdict / MatchFacts accounts
Marketsfw-marketsAn LMSR market maker — eight market types, all settled by reading SettleKit accounts
Composability proofgoalshield-miniParametric match insurance in ~260 lines; its whole oracle integration is one account check

The trust model, one sentence

TxODDS is the sole data authority via the Merkle roots it posts on-chain; SettleKit is a pure deterministic verifier and bookkeeper; the keeper that ferries proofs is an untrusted courier anyone can replace.

Why it exists

In 2026 Polymarket logged 1,150+ disputed markets — contested outcomes go to a token-holder vote, not a court of facts. SettleKit removes the human from settlement entirely:

  • No admin key. The engine has no authority accounts, no config, no pause switch. Every instruction is permissionless.
  • Proofs, not identity. A settlement account can only come into existence through a verified Merkle proof. There is no code path — for any signer — that sets an outcome without one.
  • Two verifications, no shared trust point. Each flagship verdict is checked by CPI into TxODDS's on-chain validator and by an independent sha256 Merkle reproduction (dual attestation).

Where to go next