Puzzle / Bounty Contract Risk
Why this feed exists
Crypto is full of "send the answer, win the ETH" puzzle and
bounty contracts. Two traps hide in them. First, some are funded but the
funds can never leave — there is no payout path in the
bytecode at all, so a correct solution pays you nothing
(the much-shared TeikhosBounty is exactly this). Second, the
ones that do pay typically pay msg.sender on a
calldata condition — so the moment you broadcast the winning transaction
to the public mempool, a generalised front-runner copies your calldata,
bids higher gas, and takes the prize.
This feed classifies a watchlist of puzzle / CTF / bounty contracts so you know before you spend a wei: is it funded? can it pay a solver at all? and if it can, are you exposed to a front-run? When the verdict is frontrun_bait, the fix is the private transaction relay — submit the winning tx privately and skip the mempool.
Contracts watched
Funded right now
ETH locked forever
Verdicts by classification
Every watched contract lands in exactly one class. locked_no_payout = funded but unrecoverable; frontrun_bait = pays the solver but exposed in the mempool; claimable = pays you and is safe to submit normally.
ETH at stake by outcome
Where the funded ETH actually sits: dead (locked), at-risk (front-runnable), or genuinely claimable.
Highest-stake contracts — free teaser
| Contract | Label | Verdict | Balance | Front-run? | Action |
|---|---|---|---|---|---|
| loading… | |||||
Found a payable bounty? Don't broadcast it
A frontrun_bait verdict means the contract will pay you — but a generalised front-runner is watching the public mempool and will copy your calldata the instant you submit. The Seneschal private transaction relay fans your locally-signed claim out only to block builders (Flashbots, Titan + our own rbuilder), never the public mempool, so there is nothing to copy. Sign locally, relay privately, keep the prize.
Unlock the full annotated watchlist
This page shows free aggregates + a teaser. The full set — every contract with its payout-path evidence (verified-source analysis + bytecode value-exit scan), front-run verdict, ETH at stake and claim guidance — is one x402 micropayment away.
Pay-per-call over the x402 protocol. Compatible clients (e.g. @x402/fetch) sign + retry automatically.
GET /v1/premium/puzzle-risk ?classification=frontrun_bait # or locked_no_payout, claimable… &funded_only=1 &limit=1000
How to use it
1. Free summary — counts + ETH rollups + teaser:
curl https://api.seneschal.space/v1/puzzle-risk/summary
2. One-contract verdict — free:
curl 'https://api.seneschal.space/v1/puzzle-risk/lookup\ ?address=0xaec7…'
3. Premium feed — full annotated set (x402):
import { wrapFetchWithPayment } from '@x402/fetch';
const f = wrapFetchWithPayment(fetch, wallet);
const r = await f(
'https://api.seneschal.space/v1/premium/puzzle-risk'
);
4. MCP — for AI agents (Claude/Cursor):
tool: seneschal_puzzle_risk
{ "view": "detail", "classification": "frontrun_bait" }
{ "address": "0xCONTRACT" } # single verdict
Who pays for this & why
- Puzzle / CTF solvers — don't burn weeks on a "bounty" whose funds are mathematically unrecoverable, and don't hand your solution to a front-runner when it is payable.
- Bots & agents — a cheap, pay-per-call
is-this-bounty-real-and-safe?oracle before committing gas to a claim. - Researchers & auditors — a running, evidence-backed census of which on-chain puzzles can actually pay out.
- Anyone holding a winning calldata — pair a frontrun_bait verdict with the private relay and claim without getting sniped.
Every premium row ships its payout-path evidence so you can audit the verdict, not trust a black box. Heuristic — always verify on-chain before acting.