Acme Lend drill 2026-11-09
Overview
- Project
- acme.antibody.testnet, account: acme.antibody.testnet · our fixture project
- Description
An automated daily drill on a fresh Acme Lend instance (DELIBERATELY VULNERABLE TEST FIXTURE): the one moment, run again.
as written in the committed manifest- Program key
- bounty.
antibody. testnet/15, program key: bounty.antibody.testnet/15 - Phase
- Open round 0this round since
- Created
- HbRxz1zD…, NEAR transaction: HbRxz1zDEV7DWvRqGuZYzuVzRTgnDMqLExVxn9bX7DZy, opens an explorer in a new tab
- Opened
- 4EC1CJbx…, NEAR transaction: 4EC1CJbxcRDE3nbbStko2kSXc4K2PZrYH6kSz7Ayvfyu, opens an explorer in a new tab
- Terms sha256
- 3a9c40175b7ae46a…, terms sha256: 3a9c40175b7ae46a342566111ba65ca4a420c8ff2289eb7b08c8759b5125a34d
- Manifest sha256
- 37c11f590e58889c…, manifest sha256: 37c11f590e58889cc703034603d51d45db0c1fb14aa90021fcfe45e8fa35e5fcUploaded in NEAR transaction A1uNzD8TPw…, NEAR transaction: A1uNzD8TPwtYKXRWzfS8rCDiKQW8ayJPJD889yeVkEbW, opens an explorer in a new tab by acme.antibody.testnet
- Sealing key
- e39b7eba14a8b026…, sealing public key: e39b7eba14a8b026476722b0f898c993beb4f38fd1eaaf3ea2fe24930600fc1dProofs are sealed to it. It counts only once its activation run (run 220) is attested on NEAR: 7euj22wu…, NEAR transaction: 7euj22wuVB65MRtT33jTefwcwkatiSxcQRoRdMTqj9DD, opens an explorer in a new tab
Its record
- At stake
- 0.3wNEAR available now
- Verified attempts
- 1
- Paid findings
- 1
- First claim
- 46 safter it opened
- Claimed in the first hour
- 25%of the escrow
- Open for
- 13.8 h
Holds if: the manifest hash shown here, as near-antibody stores it
antibody judge --program 15The rules as code
| Rule | Severity | Payout | Budget per round | Source |
|---|---|---|---|---|
solvencybit 0an attested proof pauses Lender claims are covered at the committed reference price. | Critical | 0.1 wNEAR | 0.4 wNEAR | |
fees_to_treasurybit 1 Accrued fees plus the treasury balance never decrease. | High | 0.03 wNEAR | 0.4 wNEAR | |
share_pricebit 2 The vault's share price never falls for the remaining holders. | Medium | 0.01 wNEAR | 0.4 wNEAR |
The budget caps what one rule pays per round, so many entry points into one root cause cannot drain the escrow. A finding's key is the rule and the entry point that broke it (by default, the target and function): the first proof of each key is paid.
The targets (9) on Sepolia
- AcmeGuard0x59a36c72…6b37, AcmeGuard address: 0x59a36c72633eaafcafc6d740ca080349d5516b37, opens an explorer in a new tab
- acUSD0x2ab8edfc…504f, acUSD address: 0x2ab8edfcef80f8bde71b703514c574db063b504f, opens an explorer in a new tab
- acETH0x89135065…47d6, acETH address: 0x89135065795bc58b62db5873d8304d2e080547d6, opens an explorer in a new tab
- AcmePool0x5669aefb…9b06, AcmePool address: 0x5669aefb0a858f2a79071d9cd4a4b866adf09b06, opens an explorer in a new tab
- AcmeLend0x87d79e6b…7331, AcmeLend address: 0x87d79e6b404448ce7a5bb54ff5972e1b89777331, opens an explorer in a new tab
- AcmeLendImpl0xc6add9b4…0c2a, AcmeLendImpl address: 0xc6add9b4cf014110138587d096cd69507f7f0c2a, opens an explorer in a new tab
- AcmeVault0x8ca35393…d443, AcmeVault address: 0x8ca353934be0b59447c74f567a5efd694d60d443, opens an explorer in a new tab
- AcmeVaultImpl0x726131ee…0a0e, AcmeVaultImpl address: 0x726131ee9813d1b6dd36395e11067df908840a0e, opens an explorer in a new tab
- AcmeTreasury0x2395f28c…c53d, AcmeTreasury address: 0x2395f28c47c98c41a15446c906d4539b40a4c53d, opens an explorer in a new tab
The terms
Payouts
| Severity | Payout | Rules |
|---|---|---|
| Critical | 0.1 wNEAR | solvency |
| High | 0.03 wNEAR | fees_to_treasury |
| Medium | 0.01 wNEAR | share_price |
| Low | none | none |
- Bond per commit
- 0.001 wNEAR · refunded, or forfeited to this program's escrow when the proof breaks nothing
- Instant payments
- up to 0.1 wNEAR
When a payout is instant
Paid in seconds when the verdict is attested on NEAR, within 0.15 wNEAR per 1 h. Otherwise a payout waits the challenge window; above the cap it also needs an agreeing second run.
- Challenge bond
- 0.005 wNEAR
- Protocol fee
- none · pinned at 0 for this program
- Release fee
- none · pinned at 0 for this program
- Verification deposit
- 0.03 NEAR per run, paid by whoever asks for it; OutLayer refunds the unused part
The escrow against the largest payout
The available escrow over the largest payout. Below 1× the status page raises an alert; a payout the escrow cannot cover is queued as debt, in commit order.
- Pauses
- An attested proof of solvency, on a light-client anchor, pauses the protocol on every chain the project registered (one pause ticket per round), with no minimum impact.
- Known issues
- At most 4, sealed before open, their base payouts at most 50% of the escrow.
- Gap lane
- A proof that breaks no rule but harms a declared protected account by more than $100 is refunded and recorded as a gap claim, with 0.01 wNEAR reserved. It is paid if a later round adds a rule its proof breaks.
- Unevaluable
- A proof the rules cannot evaluate (check() reverts or runs out of gas) is refunded.
The windows
| Window | Length | What it bounds |
|---|---|---|
Reveal | 10 min | A commit is revealed within this, or it expires and its bond goes to the escrow. |
Challenge window | 60 s | A verdict that is not paid instantly is final after this; anyone may challenge it within it, with the challenge bond. |
Resolve | 5 min | A challenge with no attested result within this voids the verdict; both bonds are refunded. |
Run timeout | 4 min | A run that never answered is void after this. |
Infrastructure grace | 10 min | An infrastructure failure is retried this long, then the commit closes with a refund. |
Round minimum | 2 min | A round runs at least this long before the next one opens. |
Re-run window | 10 min | Re-runs at a proposed fix may be asked for within this of its confirmed check. |
Disclosure delay | 10 min | A paid proof becomes public at most this long after its claim. |
Exit grace | 60 s | After the deadline plus this, anyone may settle the program (exit). |
Deadline | No commit is accepted after it. |
The anchor
- Chain
- Sepolia (11155111)
- Block
- 12094722 (opens an explorer)
- Hash
- 0x2d16b753103396f77924ebae8d8a11fb505cfbd64d002c51b5671bb300424926
- Its check
- confirmed by the light clientnear-antibody compared the hash with client-eth2.sepolia.testnet when the program was created.anchor_checked (LightClient): HbRxz1zD…, NEAR transaction: HbRxz1zDEV7DWvRqGuZYzuVzRTgnDMqLExVxn9bX7DZy, opens an explorer in a new tab
- Base witness
- The anchor state the rules and the round-0 checks read, proven against the anchor and pinned at activation.72ff2bbe1d113643…, base witness sha256: 72ff2bbe1d113643132cdd41694d5b7cedb9647006909c4aed7b5e0cc94e7929Uploaded in NEAR transaction 4hsrR5EDnj…, NEAR transaction: 4hsrR5EDnjrEHu2XEazwk4oS4oKpPMuaCMnCue8LGHjp, opens an explorer in a new tab by acme.antibody.testnet
Check the hash yourself
Expected: byte 0 is 1 (the client holds the block), then 32 bytes equal to the anchor hash.
The same check from a terminal, and the one that also hashes the block header from a Sepolia RPC:
antibody judge --program 15antibody anchor-check --block 12094722Known issues
The chains
The sealed feed
| Commit | Who | When | State | Verdict | Keys | Payout |
|---|---|---|---|---|---|---|
Commit 100#0 · round 0 | agent-a.antibody.testnet, account: agent-a.antibody.testnetour fixture agent A | Paid | ViolationAttested on NEAR | solvency139ddd4b…, tag of solvency: 139ddd4b9ceadee62cac5d2ea379c5b29a4899f2cca77042fae7eec29e2da407 |
A key is a rule and the entry point that broke it: the first proof of each key is paid; a later one is a duplicate that keeps its own proof record. Each commit's page shows its proof card and how to check it.
antibody status --program 15Rounds and the release gate
The ledger
Where the escrow is
| Available | 0.300 |
|---|---|
| Reserved | 0.000 |
| Paid | 0.100 |
| Fees | 0.000 |
| Returned | 0.000 |
| Funded | 0.400 |
What came in
| Deposits | 0.400 |
|---|---|
| Forfeited bonds | 0.000 |
| Challenge bonds | 0.000 |
| Funded | 0.400 |
Forfeited bonds go to this program's escrow, where they pay future findings: never to us.
The audit
- Accounted
- 0.4
- Reservations
- 0 · held by the commits; equals reserved when it balances
- Debt
- 0 · owed and not yet funded, queued in commit order
- Defaulted
- 0
Holds if: ok: true (funded equals accounted, and reserved equals the commits' reservations)
antibody view --contract bounty.antibody.testnet --method audit --args '{"program_id":15}'