This page is the point-in-time revision record for Solana (SOL). Our collectors snapshot Solana's public endpoints — the Solana mainnet RPC (api.mainnet-beta.solana.com), CoinGecko, DefiLlama's fees and chain summaries — on a fixed cadence and keep every observation we have ever recorded, including values that were later replaced upstream. When an upstream source replaces the value of an already-observed date, the detector writes one row to the revision ledger: the before-value, the after-value, both stamps, and the URL you can verify the current value against. Every other vendor overwrites; the before simply ceases to exist. Here it is the product.
Queried live at generation time: default.depin_revision_ledger
holds zero rows for SOL. This is a measured property of the
2026-08-22–2026-09-24 archive, not a scope gap: the detector grades all six
declared-cumulative Solana series it watches, and every one of them has been
monotonic across the whole archive. Upstream Solana endpoints have not (yet)
rewritten any historical value we hold.
fees_alltime_usd — 34 snapshots (2026-08-23 → 2026-09-24), 0 backward moves, latest 1,603,003,647solana_absolute_slot — 31 snapshots (2026-08-25 → 2026-09-24), 0 backward moves, latest 450,176,102solana_block_height — 31 snapshots (2026-08-25 → 2026-09-24), 0 backward moves, latest 428,216,119solana_current_slot — 31 snapshots (2026-08-25 → 2026-09-24), 0 backward moves, latest 450,176,129solana_epoch — 31 snapshots (2026-08-25 → 2026-09-24), 0 backward moves, latest 1,042solana_transaction_count — 31 snapshots (2026-08-25 → 2026-09-24), 0 backward moves, latest 552,273,967,886POST /v1/alerts/subscribe with symbol=SOL and
event=revision_restate.Proof query (run it yourself against the live feed):
curl -s "https://kairossignal.com/v1/revisions?symbol=SOL"
The detector only judges series that are cumulative by construction: a block height, an alltime fee counter, a transaction counter, an absolute slot. A gauge (active validators, price, market cap) legitimately falls when capacity or markets churn — that is not a revision and is never recorded as one. For every SOL series we hold, this is its measured state across the full archive, queried live:
| metric | snapshots | first | latest | max value | detector scope | monotonicity | source | verify |
|---|---|---|---|---|---|---|---|---|
active_validators | 31 | 2026-08-25 | 2026-09-24 | 687 | ℹ️ 9 downward move(s) (gauge) | solana_rpc | verify | |
avg_tps_recent | 31 | 2026-08-25 | 2026-09-24 | 1,473.6 | ℹ️ 14 downward move(s) (gauge) | solana_rpc | verify | |
circulating_supply | 35 | 2026-08-22 | 2026-09-24 | 587,648,080.718419 | ℹ️ 8 downward move(s) (gauge) | solana_rpc | verify | |
cluster_node_count | 31 | 2026-08-25 | 2026-09-24 | 3,819 | ℹ️ 12 downward move(s) (gauge) | solana_rpc | verify | |
cluster_node_versions | 31 | 2026-08-25 | 2026-09-24 | 64 | ℹ️ 13 downward move(s) (gauge) | solana_rpc | verify | |
delinquent_validators | 31 | 2026-08-25 | 2026-09-24 | 20 | ℹ️ 12 downward move(s) (gauge) | solana_rpc | verify | |
fees_1y_usd | 34 | 2026-08-23 | 2026-09-24 | 256,328,354 | ℹ️ 30 downward move(s) (gauge) | DefiLlama /overview/fees | verify | |
fees_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 1,188,125 | ℹ️ 16 downward move(s) (gauge) | DefiLlama /overview/fees | verify | |
fees_30d_usd | 35 | 2026-08-22 | 2026-09-24 | 24,060,316 | ℹ️ 7 downward move(s) (gauge) | DefiLlama /overview/fees | verify | |
fees_7d_usd | 35 | 2026-08-22 | 2026-09-24 | 6,596,440 | ℹ️ 13 downward move(s) (gauge) | DefiLlama /overview/fees | verify | |
fees_alltime_usd | 34 | 2026-08-23 | 2026-09-24 | 1,603,003,647 | detector-graded | ✅ monotonic | DefiLlama /overview/fees | verify |
fully_diluted_valuation_usd | 35 | 2026-08-22 | 2026-09-24 | 75,251,690,739 | ℹ️ 16 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
inflation_foundation | 30 | 2026-08-27 | 2026-09-24 | 0 | ℹ️ all-zero as published (see caveat) | solana_rpc | verify | |
inflation_total | 31 | 2026-08-25 | 2026-09-24 | 0.036794 | ℹ️ 20 downward move(s) (gauge) | solana_rpc | verify | |
inflation_validator | 31 | 2026-08-25 | 2026-09-24 | 0.036794 | ℹ️ 20 downward move(s) (gauge) | solana_rpc | verify | |
market_cap_change_24h_pct | 35 | 2026-08-22 | 2026-09-24 | 11.07457 | ℹ️ 11 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
market_cap_change_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 6,605,447,305 | ℹ️ 11 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
market_cap_rank | 35 | 2026-08-22 | 2026-09-24 | 7 | ✅ monotonic in archive | CoinGecko /coins/markets | verify | |
market_cap_usd | 35 | 2026-08-22 | 2026-09-24 | 69,675,163,466 | ℹ️ 16 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
non_circulating_supply | 31 | 2026-08-25 | 2026-09-24 | 49,483,861.020279 | ℹ️ 12 downward move(s) (gauge) | solana_rpc | verify | |
onchain_total_supply | 31 | 2026-08-25 | 2026-09-24 | 634,686,692.868274 | ℹ️ 9 downward move(s) (gauge) | solana_rpc | verify | |
price_ath_usd | 35 | 2026-08-22 | 2026-09-24 | 293.31 | ✅ monotonic in archive | CoinGecko /coins/markets | verify | |
price_atl_usd | 35 | 2026-08-22 | 2026-09-24 | 0.500801 | ✅ monotonic in archive | CoinGecko /coins/markets | verify | |
price_change_14d_pct | 35 | 2026-08-22 | 2026-09-24 | 43.4 | ℹ️ 13 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_1h_pct | 35 | 2026-08-22 | 2026-09-24 | 1.5 | ℹ️ 12 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_1y_pct | 35 | 2026-08-22 | 2026-09-24 | -44.9539 | ✅ monotonic in archive | CoinGecko /coins/markets | verify | |
price_change_200d_pct | 35 | 2026-08-22 | 2026-09-24 | 42.0562 | ℹ️ 14 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_24h_pct | 35 | 2026-08-22 | 2026-09-24 | 11.05526 | ℹ️ 10 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 11.23 | ℹ️ 11 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_30d_pct | 35 | 2026-08-22 | 2026-09-24 | 47.4 | ℹ️ 18 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_change_7d_pct | 35 | 2026-08-22 | 2026-09-24 | 28.7 | ℹ️ 15 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_from_ath_pct | 35 | 2026-08-22 | 2026-09-24 | -59.55521 | ✅ monotonic in archive | CoinGecko /coins/markets | verify | |
price_from_atl_pct | 35 | 2026-08-22 | 2026-09-24 | 23,587.92602 | ℹ️ 16 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_high_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 119.9 | ℹ️ 20 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_low_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 115.58 | ℹ️ 15 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
price_usd | 35 | 2026-08-22 | 2026-09-24 | 118.63 | ℹ️ 16 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
revenue_24h_usd | 34 | 2026-08-23 | 2026-09-24 | 117,138 | ℹ️ 16 downward move(s) (gauge) | DefiLlama /overview/fees | verify | |
revenue_30d_usd | 34 | 2026-08-23 | 2026-09-24 | 2,718,282 | ✅ monotonic in archive | DefiLlama /overview/fees | verify | |
solana_absolute_slot | 31 | 2026-08-25 | 2026-09-24 | 450,176,102 | detector-graded | ✅ monotonic | solana_rpc | verify |
solana_block_height | 31 | 2026-08-25 | 2026-09-24 | 428,216,119 | detector-graded | ✅ monotonic | solana_rpc | verify |
solana_current_slot | 31 | 2026-08-25 | 2026-09-24 | 450,176,129 | detector-graded | ✅ monotonic | solana_rpc | verify |
solana_epoch | 31 | 2026-08-25 | 2026-09-24 | 1,042 | detector-graded | ✅ monotonic | solana_rpc | verify |
solana_first_available_block | 31 | 2026-08-25 | 2026-09-24 | 0 | ℹ️ all-zero as published (see caveat) | solana_rpc | verify | |
solana_slot_index | 31 | 2026-08-25 | 2026-09-24 | 431,641 | ℹ️ resets each epoch (intra-epoch position, not a counter) | solana_rpc | verify | |
solana_slots_in_epoch | 31 | 2026-08-25 | 2026-09-24 | 432,000 | ✅ monotonic in archive | solana_rpc | verify | |
solana_transaction_count | 31 | 2026-08-25 | 2026-09-24 | 552,273,967,886 | detector-graded | ✅ monotonic | solana_rpc | verify |
test_sol_deep | 1 | 2026-08-25 | 2026-08-25 | 1.23 | ✅ monotonic in archive | |||
total_supply | 35 | 2026-08-22 | 2026-09-24 | 634,686,673.839694 | ℹ️ 11 downward move(s) (gauge) | CoinGecko /coins/markets | verify | |
volume_24h_usd | 35 | 2026-08-22 | 2026-09-24 | 7,533,684,331 | ℹ️ 16 downward move(s) (gauge) | CoinGecko /coins/markets | verify |
Solana is the chain itself, so its first-party source is the Solana public
RPC, which this estate collects from directly. Every row they wrote carries its
own source, as_of and verify_url; this
table is the live rollup of that.
| Source | Rows held | Series | Rows w/ verify_url | Window (UTC) | Sample origin |
|---|---|---|---|---|---|
| CoinGecko /coins/markets | 18,262 | 23 | 18,262 | 2026-08-22 13:21:20 → 2026-09-25 16:50:20 | sample origin ↗ |
| deep_stats_solana_rpc | 11,984 | 16 | 11,984 | 2026-08-25 14:41:01 → 2026-09-25 17:41:01 | sample origin ↗ |
| solana_rpc | 10,838 | 19 | 9,986 | 2026-09-01 23:10:28 → 2026-09-25 18:23:02 | sample origin ↗ |
| DefiLlama /overview/fees | 2,813 | 7 | 2,813 | 2026-08-22 22:58:02 → 2026-09-25 16:58:01 | sample origin ↗ |
| DefiLlama /stablecoinchains | 401 | 1 | 401 | 2026-08-23 02:56:30 → 2026-09-25 16:58:01 | sample origin ↗ |
| DefiLlama /v2/chains | 400 | 1 | 400 | 2026-08-23 02:56:30 → 2026-09-25 16:58:01 | sample origin ↗ |
inflation_foundation is all-zero — as publishedEvery held row of this series is 0, exactly as the
Solana RPC publishes it for the current epoch. The same RPC response
yields non-zero inflation_total and inflation_validator
(held beside it), so the zero is the upstream's own answer about foundation
inflation this epoch — not a collection failure, not a silent fill. Held as
published, per the estate's zero-is-a-real-observation rule.
| snapshot | value | source |
|---|---|---|
| 2026-08-27 | 0 | solana_rpc |
| 2026-08-28 | 0 | solana_rpc |
| 2026-08-29 | 0 | solana_rpc |
| 2026-08-30 | 0 | solana_rpc |
| 2026-08-31 | 0 | solana_rpc |
| 2026-09-01 | 0 | solana_rpc |
| 2026-09-02 | 0 | solana_rpc |
| 2026-09-03 | 0 | solana_rpc |
| 2026-09-04 | 0 | solana_rpc |
| 2026-09-05 | 0 | solana_rpc |
| 2026-09-06 | 0 | solana_rpc |
| 2026-09-07 | 0 | solana_rpc |
| 2026-09-08 | 0 | solana_rpc |
| 2026-09-09 | 0 | solana_rpc |
| 2026-09-10 | 0 | solana_rpc |
| 2026-09-11 | 0 | solana_rpc |
| 2026-09-12 | 0 | solana_rpc |
| 2026-09-13 | 0 | solana_rpc |
| 2026-09-14 | 0 | solana_rpc |
| 2026-09-15 | 0 | solana_rpc |
| 2026-09-16 | 0 | solana_rpc |
| 2026-09-17 | 0 | solana_rpc |
| 2026-09-18 | 0 | solana_rpc |
| 2026-09-19 | 0 | solana_rpc |
| 2026-09-20 | 0 | solana_rpc |
| 2026-09-21 | 0 | solana_rpc |
| 2026-09-22 | 0 | solana_rpc |
| 2026-09-23 | 0 | solana_rpc |
| 2026-09-24 | 0 | solana_rpc |
solana_first_available_block is all-zero — as publishedThe RPC's oldest-available-block field reads 0 on every snapshot we hold
(the RPC node prunes its ledger depth; the field is not populated by the
public endpoint). The same response yields the non-zero
solana_block_height and solana_absolute_slot series
held beside it. Held as published; the caveat ships with the series.
| snapshot | value | source |
|---|---|---|
| 2026-08-25 | 0 | solana_rpc |
| 2026-08-27 | 0 | solana_rpc |
| 2026-08-28 | 0 | solana_rpc |
| 2026-08-29 | 0 | solana_rpc |
| 2026-08-30 | 0 | solana_rpc |
| 2026-08-31 | 0 | solana_rpc |
| 2026-09-01 | 0 | solana_rpc |
| 2026-09-02 | 0 | solana_rpc |
| 2026-09-03 | 0 | solana_rpc |
| 2026-09-04 | 0 | solana_rpc |
| 2026-09-05 | 0 | solana_rpc |
| 2026-09-06 | 0 | solana_rpc |
| 2026-09-07 | 0 | solana_rpc |
| 2026-09-08 | 0 | solana_rpc |
| 2026-09-09 | 0 | solana_rpc |
| 2026-09-10 | 0 | solana_rpc |
| 2026-09-11 | 0 | solana_rpc |
| 2026-09-12 | 0 | solana_rpc |
| 2026-09-13 | 0 | solana_rpc |
| 2026-09-14 | 0 | solana_rpc |
| 2026-09-15 | 0 | solana_rpc |
| 2026-09-16 | 0 | solana_rpc |
| 2026-09-17 | 0 | solana_rpc |
| 2026-09-18 | 0 | solana_rpc |
| 2026-09-19 | 0 | solana_rpc |
| 2026-09-20 | 0 | solana_rpc |
| 2026-09-21 | 0 | solana_rpc |
| 2026-09-22 | 0 | solana_rpc |
| 2026-09-23 | 0 | solana_rpc |
| 2026-09-24 | 0 | solana_rpc |
SOL is currently the clean case. These networks are not: upstream sources for AR, ATH, AUKI, EIGEN, FLOCK, GRT, NODE, OBOT, OPEN, OVPP, R1, SOGNI, STORJ replaced already-published values after we recorded the original. Sorted by severity (most negative first). Same detector, same schema, zero human review:
| detected (UTC) | network | metric | was | became | Δ% | kind | verify |
|---|---|---|---|---|---|---|---|
| 2026-09-25 01:15 | AR | BLOCKS |
2,007,210 | 1,702,218 | -15.195% | backward_revision | |
| 2026-09-24 01:15 | AR | BLOCKS |
2,001,736 | 1,702,218 | -14.963% | backward_revision | |
| 2026-09-24 01:15 | AR | BLOCKS |
1,999,726 | 1,702,218 | -14.877% | backward_revision | |
| 2026-09-24 01:15 | AR | BLOCKS |
1,995,677 | 1,702,218 | -14.705% | backward_revision | |
| 2026-09-24 01:15 | AR | BLOCKS |
1,992,299 | 1,702,218 | -14.560% | backward_revision | |
| 2026-09-25 01:15 | AR | BLOCKS |
1,988,930 | 1,702,206 | -14.416% | backward_revision | |
| 2026-09-25 01:15 | AR | BLOCKS |
1,986,220 | 1,702,204 | -14.299% | backward_revision | |
| 2026-09-25 01:15 | AR | BLOCKS |
1,982,176 | 1,702,204 | -14.124% | backward_revision | |
| 2026-09-25 01:15 | AR | BLOCKS |
1,980,116 | 1,702,204 | -14.035% | backward_revision | |
| 2026-09-25 01:15 | STORJ | DISQUALIFIED_NODES |
80,238 | 79,569 | -0.834% | backward_revision | |
| 2026-09-05 01:15 | SOGNI | token_transfers_total |
1,177,219 | 1,174,145 | -0.261% | backward_revision | verify |
| 2026-09-24 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,431,295.44 | 1,428,351.44 | -0.206% | backward_revision | |
| 2026-09-24 01:15 | OPEN | DL_FEES_ALLTIME_USD |
272,079 | 271,588 | -0.180% | backward_revision | |
| 2026-09-05 01:15 | OVPP | token_transfers_total |
1,356,749 | 1,354,903 | -0.136% | backward_revision | verify |
| 2026-09-05 01:15 | AUKI | token_transfers_total |
1,230,167 | 1,228,860 | -0.106% | backward_revision | verify |
| 2026-09-24 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,424,316 | 1,423,345 | -0.068% | backward_revision | |
| 2026-09-05 01:15 | GRT | fees_alltime_usd |
1,424,302 | 1,423,345 | -0.067% | backward_revision | verify |
| 2026-09-25 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,415,054 | 1,414,119 | -0.066% | backward_revision | |
| 2026-09-05 01:15 | R1 | token_transfers_total |
194,634 | 194,527 | -0.055% | backward_revision | verify |
| 2026-09-24 01:15 | ATH | DL_FEES_ALLTIME_USD |
180,402,699.27 | 180,348,562.27 | -0.030% | backward_revision | |
| 2026-09-05 01:15 | R1 | token_transfers_total |
194,390 | 194,337 | -0.027% | backward_revision | verify |
| 2026-09-05 01:15 | NODE | fees_alltime_usd |
804,574 | 804,388 | -0.023% | backward_revision | verify |
| 2026-09-24 01:15 | NODE | DL_FEES_ALLTIME_USD |
804,574 | 804,388 | -0.023% | backward_revision | |
| 2026-09-05 01:15 | OBOT | token_transfers_total |
40,253 | 40,246 | -0.017% | backward_revision | verify |
| 2026-09-25 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,419,566 | 1,419,322 | -0.017% | backward_revision | |
| 2026-09-05 01:15 | GRT | fees_alltime_usd |
1,419,558 | 1,419,328 | -0.016% | backward_revision | verify |
| 2026-09-05 01:15 | EIGEN | fees_alltime_usd |
161,955,683.53 | 161,932,203.53 | -0.014% | backward_revision | verify |
| 2026-09-05 01:15 | GRT | fees_alltime_usd |
1,419,328 | 1,419,152 | -0.012% | backward_revision | verify |
| 2026-09-25 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,419,322 | 1,419,152 | -0.012% | backward_revision | |
| 2026-09-24 01:15 | GRT | DL_FEES_ALLTIME_USD |
1,433,230.44 | 1,433,068.44 | -0.011% | backward_revision | |
| 2026-09-24 01:15 | AUKI | DL_FEES_ALLTIME_USD |
248,389 | 248,364 | -0.010% | backward_revision | |
| 2026-09-24 01:15 | AUKI | DL_FEES_ALLTIME_USD |
249,318 | 249,293 | -0.010% | backward_revision | |
| 2026-08-13 15:35 | FLOCK | DL_FEES_ALLTIME_USD |
1,170,614.6 | 1,170,544.16 | -0.006% | sub_noise | verify |
The detector (propintel/revision_ledger.py) diffs every daily
snapshot this estate holds of every cumulative-by-construction series —
counters that cannot decrease unless upstream rewrote them (alltime fees,
token transfers, block heights). A row enters
default.depin_revision_ledger iff two snapshots disagree for an
already-observed date; zero human judgement. Population gauges (node counts,
TVL, prices) legitimately move both ways and are deliberately excluded — a drop
there is a real population change, not a rewrite. Honest boundary: this catches
value-history rewrites ex-post; identical-schema semantic drift with plausible
values is what the hash-pinned derivation_replay layer is for.
No account, no key, no trust required. Commands 1–2 hit this estate's public API (the same rows this page queried — every row carries source / as_of / verify_url); command 3 hits Solana's own public RPC, the first-party source this archive came from; command 4 is the estate's graded network row; command 5 is the frozen daily snapshot of the ledger. One polite call per endpoint, no hammering.
# 1) The served revision feed for SOL — the same rows this page queried, live:
curl -s "https://kairossignal.com/v1/revisions?symbol=SOL" | python3 -m json.tool
# 2) The estate-wide feed (every network, both sides of every diff):
curl -s "https://kairossignal.com/v1/revisions" | python3 -m json.tool | head -80
# 3) Solana's own public RPC (the first-party source this archive came from):
curl -s -H "User-Agent: kairos-check" "https://api.mainnet-beta.solana.com" \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"getBlockHeight"}'
# 4) This estate's public API row for SOL (grades + provenance):
curl -s "https://kairossignal.com/v1/network/SOL" | python3 -m json.tool | head -60
# 5) The public daily snapshot of the ledger (frozen copy):
curl -s -o /dev/null -w "%{http_code}\n" "https://kairossignal.com/revision-ledger/REVISIONS_20260902.json"