Kerne Logo

Kerne Honesty Index

Resolv wstUSR

In recovery . ethereum . 0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055

What this vault advertises, against what it actually paid, measured from its own share price on chain over a 30 day window. Everything below is recomputed hourly and every figure on this page comes from the snapshot named at the bottom. Nothing here is typed by hand.

Advertised

none published

Realized

0.00%

30 day window

Gap

no claim to compare

this protocol advertises no yield figure.

What Resolv published.

Resolv publishes no yield figure we can record for wstUSR on a first-party surface, so this row carries a realized reading and no comparison. That is a description of what is published, not an accusation.

Recompute it yourself.

The realized figure is two calls and one exponent. Both calls are pinned to a block height, so they return the same values for you as they did for us, forever. Use any archive endpoint. We deliberately do not name one: a reproduction that runs on our RPC is not a reproduction.

The call

Chain

ethereum

Contract

0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055

Method

convertToAssets(uint256)

Argument

1000000000000000000 (one whole wstUSR share, 18 decimals)

eth_call data

0x07a2d13a0000000000000000000000000000000000000000000000000de0b6b3a7640000

Returns

USR, 18 decimals

The argument is one whole share in the SHARE token's own decimals, which is not always eighteen. Kerne's own skUSD reports twenty four, so calling it with 1e18 returns a millionth of the right answer. Ask the vault for its decimals rather than assuming, exactly as our collector does.

At the start of the window

Block

25539888 (0x185b530)

Timestamp

1784140607 (2026-07-15 18:36 UTC)

Share price returned

1.132966158918315225

At the end of the window

Block

25755112 (0x188fde8)

Timestamp

1786732607 (2026-08-14 18:36 UTC)

Share price returned

1.132966158918315225

Start of window, cast

RPC_URL=... cast call 0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055 "convertToAssets(uint256)(uint256)" 1000000000000000000 --block 25539888 --rpc-url "$RPC_URL"

End of window, cast

RPC_URL=... cast call 0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055 "convertToAssets(uint256)(uint256)" 1000000000000000000 --block 25755112 --rpc-url "$RPC_URL"

Start of window, raw JSON-RPC

{"jsonrpc":"2.0","id":1,"method":"eth_call","params":[{"to":"0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055","data":"0x07a2d13a0000000000000000000000000000000000000000000000000de0b6b3a7640000"},"0x185b530"]}

End of window, raw JSON-RPC

{"jsonrpc":"2.0","id":1,"method":"eth_call","params":[{"to":"0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055","data":"0x07a2d13a0000000000000000000000000000000000000000000000000de0b6b3a7640000"},"0x188fde8"]}

Both calls return an integer in the smallest unit of USR. Divide by 10 ** 18 to get the share price printed above. Set RPC_URL to any archive endpoint you trust.

The arithmetic

growth = 1.132966158918315225 / 1.132966158918315225

elapsed = 1786732607 - 1784140607 = 2592000 seconds

annualized = (growth ^ (31536000 / 2592000) - 1) * 100

= 0% (0% over the window)

Simple compounding at the observed rate, on a 365 day year. No fee assumption, no reinvestment assumption, no smoothing. If your arithmetic lands somewhere else, that disagreement is the finding and we want it: liam@kerne.fi.

Context for this row.

In recovery, and publishing no yield figure at all. Resolv disclosed a security incident involving unauthorized minting of USR and states that most protocol operations are paused. Its own staking APR endpoints now return "Deprecated: staking APR is not available", so there is no advertised number to compare against. A recovery framework is running with claims open until 2026-08-26. The share price has not moved since 2026-03-22, which is the date of the incident named in Resolv own postmortem. Reading this row as deception would be wrong: a paused protocol that stops accruing and stops advertising is behaving correctly.

Read the realized column for this row with care. A share price is denominated in the underlying, and the underlying here is USR, which traded near 0.13 dollars on 2026-08-12 rather than at 1. wstUSR holding steady in USR terms says nothing about the dollar outcome for a holder.

This page measures one axis and one only: advertised yield against realized yield. It is not a rating, not an audit, and it says nothing about whether Resolv is safe or whether its reserves are what it says they are. A protocol in an announced wind down paying nothing is behaving correctly. The reserve axis is a different page, at the reserve transparency scorecard.

Take this row with you.

This page

https://kerne.fi/honesty-index/resolv-wstusr

Citation

Kerne Honesty Index, 2026-08-14: Resolv (wstUSR) advertised none published, realized 0.00% from on-chain share-price growth, gap no claim to compare (this protocol advertises no yield figure). Source: https://kerne.fi/honesty-index#row-resolv-wstusr

Badge, markdown

[![Kerne Honesty Index](https://kerne.fi/honesty-badge.svg?row=resolv-wstusr)](https://kerne.fi/honesty-index#row-resolv-wstusr)

Badge, HTML

<a href="https://kerne.fi/honesty-index#row-resolv-wstusr"><img src="https://kerne.fi/honesty-badge.svg?row=resolv-wstusr" width="360" height="112" loading="lazy" alt="Kerne Honesty Index: advertised versus realized yield"></a>

Row in the API

https://kerne.fi/api/honesty-index/row/resolv-wstusr
Kerne Honesty Index badge for Resolv

Where these numbers came from.

Snapshot generated

2026-08-14 18:37 UTC

Snapshot source

live store

Signature

verified, signer 0x84949170e0ad0f9bd8686a4aa4922c10f5fdc4ea

Row key

resolv-wstusr

The signature is checked on every render rather than assumed from the presence of a field. A snapshot that does not verify is served with that said plainly instead of borrowing the word.

Board last read 2026-08-14. Every figure on this page is regenerated from https://kerne.fi/honesty-index and none of them is stored in this file.