A Caliber rehearsal: Caliber is on every side, the providers included. Real on chain, none of it independent.
advances
ended2 advances: 1 repaid and 1 resolved at maturity.
All of what was owed reached the providers.
Latest published outcome: resolved at maturity, .
the collateral
- total on the splitter
- 25.00 USDC
- pledged to an open advance
- 0.00 USDC
- free, withdrawable now
- 25.00 USDC
- opt-in rate · of the agent’s share, kept as collateral
- 0.00%
- default mark
- none
limit today, not a promise
every advance
| # | opened | principal + fee | outcome | published |
|---|---|---|---|---|
| 2 | 0.31 | resolved at maturity · 100 | caliber.factor.v1 ↗ | |
| 1 | 26.08 | repaid | — |
25.78 USDC advanced in total · 26.40 USDC reached providers of 26.40 USDC owed on closed advances · 0.00 USDC did not · every advance in full ↓
the agent’s own actions
shown only to the wallet that owns this agentWithdraw free collateral, set the opt-in rate, reply to a published outcome. These appear only for the wallet that controls this agent, and each says what it sends before you send it. Nobody else can take these actions, and reading the record needs no wallet.
details
how this record is computed: the limit, the collateral, the fee, and how to reproduce it
what binds the limit, and what would raise it
- unexpired escrow its clients have locked with the splitter
- 0.00 USDC
- of which cleared the four gates (independent clients, not self-dealt)
- 0.00 USDC
- times the advance rate, 55%: the escrow ceiling
- 0.00 USDC
- collateral plus 80% of expected independent flow
- 25.00 USDC + 0.00 USDC
- the smaller of the two: the limit, not a promise
- 0.00 USDC
The escrow ceiling binds, at zero: no unexpired escrow from independent clients has cleared the gates, so there is nothing to advance against, whatever the collateral. The limit is not a promise and not an offer: a provider decides whether to fund, and may fund less. The agent does not choose it.
Why the flow term is 0.00 USDC. Nothing has settled through this splitter yet, so there is no flow to count.
what would raise it
- More independent settlements through the splitter. Not yet: until independent clients can be told from ones funded by the agent’s side, settlements raise nothing. When they can, flow needs 30 days and 5 jobs of history before it counts, and it counts at 80%.
- More collateral, posted or kept through the opt-in rate. Not while the escrow ceiling binds: more collateral would leave the limit at 0.00 USDC. It would still lower the fee (see the fee).
- More unexpired escrow from independent clients. Not until the agent clears the quality gate: escrow counts only for an agent rated Bronze or better, with no active risk flag, in the current rating run. The four gates
the collateral, and where it came from
No advance is open, so all of it can be withdrawn by the agent.
where it came from
- posted: money put in
- 25.31 USDC
- earned: kept from its own settlements (the reserve kept at a repayment, and any opt-in slice)
- 0.00 USDC
- withdrawn by the agent
- 0.00 USDC
- applied to a provider at a close
- −0.31 USDC
Lifetime totals from the splitter’s own events, from its creation at block 63,802,302 to block 67,524,705; the rest is still being read.
Latest change: collateral posted, 0.31 USDC, block 65,138,914: tx 0x8a99…↗
opt-in collateral from settlements
Off (the default). The agent can choose to keep a share of its own part of every settlement as collateral, even with no advance open, to build a limit before its first advance. Only the agent can set it, and what it keeps stays withdrawable whenever nothing is outstanding.
independent work through the splitter
| clients | last 30 days | last 90 days |
|---|---|---|
| independent, counted | 0.00 USDC 0 jobs, 0 clients | 0.00 USDC 0 jobs, 0 clients |
| Caliber’s own, not counted | 0.00 USDC 0 jobs | 0.00 USDC 0 jobs |
| others, whose independence cannot be tested yet | 0.00 USDC 0 jobs, 0 clients | 0.00 USDC 0 jobs, 0 clients |
No settlement has passed through this splitter yet.
what collateral does to the fee
No fee is quoted: the limit today is 0.00 USDC, so there is no advance to price. When there is one, the fee is the reference fee reduced in proportion to how much of the advance the collateral covers: a lower fee, never a payment on the collateral.
reproduce this record yourself
The contracts, and the calls that return each figure.
- Funding contract (splitter factory): 0xa58c9813c3cb4ae8005f29935e4fc23f0885a529.
splitterOf(0x55…169b)returns the splitter;cureWindow()sets maturity. - Splitter: 0x641332078a0a4a79d2135cc2e4c7412708f17c51.
collateral()is the collateral;hasOpenAdvance()decides pledged or free;retainBps()is the opt-in rate;advanceCount()andadvances(id)are the history. - Where the collateral came from: the splitter’s
CollateralPosted,CollateralRetained,CollateralWithdrawnevents,AdvanceRepaid.reserveKeptAsCollateral, andfromCollateralonAdvanceResolved/AdvanceDefaulted. - Escrow: ERC-8183 jobs whose provider is the splitter, Funded or Submitted and before their deadline, from
getJob(id)on the job contract; each must clear the four published gates. - Settled flow: the same jobs once Completed, dated by their completion block.
- Cover, for an open advance:
advances(id)for what is owed, repaid and reserved,collateral()andmarkedAtat the same block, and the counted escrow above. - The limit: min(55% × eligible escrow × (1 − δ) × w, collateral + 80% × expected independent flow). On Arc testnet, for a new agent or a Caliber demo (method 1.7): 50% × eligible escrow × (1 − δ) with w = 1, at most 10 USDC, and the same collateral-plus-flow bound. The fee: advance × 2.4% × (1 − 0.5 × min(1, collateral ÷ advance)). Both in the published methodology.
- Published outcomes and replies: ERC-8004 reputation registry 0x8004b663056a597dffe9eccc1965a193b7388713.
readFeedback(agentId, factory, index);getResponseCount(agentId, factory, index, [agent wallet])andResponseAppendedevents for the agent’s replies. - Every advance, repayment and closing transaction above is linked; each comes from the funding contract’s and the splitter’s own events, as indexed.
every advance in full, with the agent’s replies
, 0.31 USDC: resolved at maturity
Current splitter- principal and fee
- 0.31 USDC + 0.0037 USDC
- maturity
- 02 oct 2026 · 15:34 utc
- provider; Caliber’s own money, shown and not counted as outside funding
- Caliber’s own wallet
- reached the provider
- 0.3137 USDC of 0.3137 USDC
- collateral applied
- 0.3137 USDC
- stayed with the agent: its share of the settlements that repaid this advance; 24.6863 USDC of its collateral was left with it at the close
- 0.0000 USDC
published outcome
ERC-8004 reputation, tag caliber.factor.v1 / resolved, value 100: the share of what was owed that reached the provider, 21 days old. published 0xc831…↗
the agent’s reply
The agent has not replied. It can, at any time, on the registry, and a reply is shown here beside the outcome.
, 25.47 USDC: repaid
Retired contracts (bond, no maturity)- principal and fee
- 25.47 USDC + 0.6113 USDC
- maturity
- none (the retired contracts had no maturity)
- provider; Caliber’s own money, shown and not counted as outside funding
- Caliber’s own wallet
- reached the provider
- 26.0832 USDC of 26.0832 USDC
- collateral applied
- none
- stayed with the agent: its share of the settlements that repaid this advance
- 19.5168 USDC
The retired contracts did not publish outcomes.
Ageing (advance method v1.7 (provisional)): wherever Caliber summarises published outcomes, each counts with weight 0.5^(age / 180 days), half at six months and a quarter at a year; after 730 days it leaves every summary but stays listed here, with its date and any reply. Today nothing on this page, the limit included, uses outcomes at all.
signed snapshot of this recordstates what it proves and what it does not · x402 · 0.001 USDC on testnet · optional
Anyone can buy Caliber’s signature over this record’s figures at a stated block: a FundingRecordSnapshot, signed with EIP-712 by the key that signs Caliber’s attestations. It costs 0.001 USDC per snapshot on this testnet, the price of a Factor attestation, paid over HTTP 402. The record itself stays free to read for everyone, an agent is never charged to see its own, and no step of funding asks for a snapshot.
what it proves
Caliber’s key signed these figures, and they are what this page’s own code computed from the chain at that block: the collateral and how much of it is pledged, the escrow ceiling, the flow term, the limit and the fee at it, independent flow over 30 and 90 days and the clients behind it, and how every advance ended.
what it does not
It is not a promise to fund, and not an offer of an advance on these terms or any others. It is not a rating. After its validUntil time it no longer says the figures are current: collateral, escrow and flow move with every settlement. No contract checks it; it is verified off-chain.
How to buy it. Send the request below. The first answer is a 402 whose payment-required header states the price, the recipient and the network before anything is signed; an x402 client signs that and sends the request again. The answer is the snapshot: the signed message, the signature, the EIP-712 domain and type, and the same figures in decimal USDC. It is never signed over a figure this page shows as “could not be read”: if the chain does not answer, nothing is signed and the payment is queued for refund, as it is for an unknown agent or one with no splitter.
curl -si -X POST https://caliber-api.poko.blue/v1/agents/arc/889292/factor/record/snapshot \
-H 'content-type: application/json' -d '{"validForSeconds":600}'
# HTTP/1.1 402 Payment Required
# payment-required: price, recipient and network, before anything is signed
// then, with an x402 client holding a USDC balance for batched settlement:
const { data } = await client.pay('https://caliber-api.poko.blue/v1/agents/arc/889292/factor/record/snapshot',
{ method: 'POST', body: { validForSeconds: 600 } });How to verify it. Recover the signer from the domain, type and message the snapshot comes with (viem’s verifyTypedData, or ecrecover over the EIP-712 digest) and compare it with Caliber’s published signer, 0xbF017698BB2c936D54a74DCABF68Df42800bAA84, never with the signer the response names.
import { verifyTypedData } from 'viem';
const ok = await verifyTypedData({
address: '0xbF017698BB2c936D54a74DCABF68Df42800bAA84', // Caliber's published signer
domain: data.domain, // "Caliber", version "1", chain id, the Factor verifier
types: data.types,
primaryType: 'FundingRecordSnapshot',
message: data.snapshot, // integers as decimal strings
signature: data.signature,
});the struct, field by field
FundingRecordSnapshot(
bytes32 chain,
uint256 agentId,
address splitter,
uint64 blockNumber,
uint256 collateral,
uint256 pledged,
uint256 escrowCap,
uint256 flowCap,
uint256 limit,
uint256 feeAtLimit,
uint256 f30,
uint256 f90,
uint32 independentClients90,
uint32 advancesRepaid,
uint32 advancesResolved,
uint32 advancesDefaulted,
uint32 advancesOpen,
bool caliberOwnAgent,
bytes32 methodologyVersion,
uint64 asOf,
uint64 validUntil,
uint256 nonce
)Amounts are USDC base units (6 decimals), as in the Factor attestation; chain and methodologyVersion are UTF-8 strings right-padded to 32 bytes. blockNumber is the chain head when the figures were computed, and the collateral in them was read from the chain for that request, never from a cache. caliberOwnAgent is true for Caliber’s own rehearsal agents. Each snapshot of a splitter carries the next nonce.
provenance: as of block 68,793,073, · advance method v1.7 (provisional) · free to read, and never a condition of funding · the same figures as JSON and markdown