When our number and theirs disagree, we sign the disagreement
Every yield aggregator publishes a rate. So do we, and sometimes they differ. The usual response is for each side to argue the other is mistaken. We do something narrower: we record both figures, the window they cover, the endpoint we read and the difference between them, and we sign that record. It says the two numbers disagreed. It does not say who is right.
What one of these records
- Our figure, derived from two signed measurements, with both attestation hashes so you can verify our side without trusting the comparison.
- Their figure, time-weighted over the same window from their own published history, with a count of the samples used and the samples skipped.
- The endpoint we read, verbatim, so you can fetch it yourself and disagree with us.
- The difference in basis points, and whether that is inside a tolerance stated on the record rather than chosen by whoever reads it.
Verify one, in this browser
Seven checks. The first five are what any signed artifact needs. The last two are why this page does arithmetic rather than just a signature check: a signature proves the issuer signed those bytes, and nothing about whether the conclusion follows from them. A record could carry a valid signature over a preimage claiming the figures agree while the figures inside it differ by three percentage points. So we recompute the subtraction and the verdict from the signed rates, and report any disagreement with what the record states.
Nothing has been checked yet.
Check your own
Paste an observation as JSON. The page reads the payload out of canonical_json, never out of the surrounding record, because the surrounding record is a copy and a copy is what drifts. An observation could state one verdict at the record level over signed bytes that say another, and every check reading the record would agree with itself.
No production observation has been published yet
Producing one is a controller-only call that spends cycles on an outbound HTTPS request, and nothing on this page can trigger it: an open endpoint making a paid request for anyone who clicks is a drain with a button on it. So what runs above is signed in your own browser, by a key generated in your own tab, which is why the origin check correctly fails on it.
That failure is the demonstration. The five checks before it pass on a record we manufactured seconds ago: the bytes hash to their own fingerprint, the signature is valid, the arithmetic holds. Internal consistency is cheap and anyone can produce it. The one check that separates a real DeltaRates observation from a well-made fake asks whether the signing key is our key, and that key is pinned in this page's source rather than read from the artifact.
What a cross-check does not settle
- Which figure is correct. Two honest methods over the same market can differ: different windows, different treatment of compounding, different handling of a day the market did not trade. The record gives you both and the inputs to judge them.
- Whether the two sides are even measuring the same quantity. This is the caveat that matters most and it is easy to miss. Our figure is a realized return: how much the lending index actually grew between two signed measurements, annualised. The reference publishes a spot rate each day, and we take the time-weighted mean of those readings across the same window. Those are different estimators of the same market, and some of any difference between them is that, rather than either side being wrong. Measured on this series on 9 September 2026: the reference's most recent daily reading was 3.62773% and our realized figure for the window was 3.6268%, inside a basis point of each other, while the time-weighted mean of its daily readings across that window sat 31 basis points lower. Both of those facts are true at once, and a record reporting only the 31 would be telling you half of it.
- What the other side's window was. We time-weight their published samples across the window ours covered, and report how many samples we used and how many we skipped. If their history is sparse across that window, the count says so.
- Anything about a moment we did not measure. The comparison lives inside the window our own two signed endpoints cover, and never reaches outside it.