Bounty 33: sealed prove step (TEE spike)
A revealed attempt was proven PASS and the contract paid on that proof.
Reward
0.1 NEARAttempts
1 maxWindow
1 dOverview
What happened
From a fix to a proven payment
Bounty created and funded
The vendor locked the reward. Every hash, the windows, K and the check size were fixed on chain. The bounty starts closed.
Opened by Proof 0
The vendor proved its own reference fix passes the full check. The contract verified that Groth16 proof itself, so the bounty could open.
An attempt commits a fingerprint
Attempt committed. Only a fingerprint of the patch goes on chain, with the attempt fee from credit.
The attempt reveals its patch
Attempt revealed. The patch became public on chain. The block seed chose the hidden fairness inputs, and the verdict window started.
A proof of the attempt was accepted
Proof of an attempt sent. The contract checked the Groth16 proof itself and applied its verdict.
Attempts on chain
1 of 1 attempts used.
| Attempt | State | Fee | Payout | Revealed | Next deadline |
|---|---|---|---|---|---|
| #0 | Proof verified | 0.01 NEAR | skarbnik-mcp-2fe414.testnet | 2026-10-29 23:44 UTC | none |
Transactions (5)
Transactions
5 recorded calls on the contract
Open any of them on the explorer. Refused calls stay in the list.
| Step | Method | What it did | Result | Transaction |
|---|---|---|---|---|
| 1 | create_bounty | Bounty created | Succeeded | 5kDG7MMa…9tnN |
| 2 | open_with_groth16 | Opened with its Proof 0 | Succeeded | 2c5HgCeL…dJD7 |
| 3 | commit | Attempt committed | Succeeded | 8Bs9mYwh…iYnQ |
| 4 | reveal | Attempt revealed | Succeeded | 6hxzXjga…8i2d |
| 5 | submit_groth16 | Proof of an attempt sent | Succeeded | Gg81ZZgd…izmS |
Recorded in docs/evidence/tee_spike/transactions.tsv.
Rules and timing
Rules and timing
The rules of this bounty
A 1 day verdict window
It starts at the reveal. A proof for the attempt must reach the contract before it ends.
Late proofs are refused
After the window the contract answers “verdict window has closed”.
Anyone can claim
claim_timeout splits the bounty equally among revealed attempts still undecided.
The fix is never read
A timeout pays whatever was revealed, even junk. That is why it is never called proof.
Fees, windows and limits
- Fee rule
- 0.01 NEAR + 0.005 NEARper earlier attempt
- Patch size limit
- 1,024 bytesthis bounty’s limit (max_patch_bytes); the checker allows up to 2,048 bytes
- Attempts
- 1 of 1 used
- Per-account cap
- none on this bounty
- Reveal
- after 1 min, within 1 hour of the commit
- Verdict window
- 1 day from the reveal
- Commits accepted until
- 2026-10-31 22:42 UTC
- Expires
- 2026-11-01 23:42 UTC
- Created
- 2026-10-29 23:42 UTC
Privacy and evidence
Privacy and evidence
What is recorded, and what is not claimed
Sealed: only the commitment of the secret input is on chain. On private bounties, researchers and the public never see the secret input. Demo bounties use a public input so anyone can check them.
- Checker image id
dd6c5f42…a2fcThe published checkerOn the allowlist- Check size
- 16 fresh inputs, 32 variants of the secret input
- Exploit commitment
c4060093…49f5- Proof 0 journal hash
f1cf08cf…6e4d- Proof 0 receipt hash
46a461ad…8afe- Reference fix hash
42edaaf5…dc97- Reference fix module
- kept by the vendor, never on chain