Helium (HNT) — the revision ledger

Generated 2026-09-02T19:05:52Z from live ClickHouse queries against this estate's ledger. Point-in-time archive held for Helium: 9,537 observations · 45 distinct series · 6 upstream sources · first row 2026-08-09 17:15:20 · newest row 2026-09-02 19:03:01 · every one of the 9,537 rows carries a verify_url · 42 series refreshed in the last 24h (857 fresh rows). Nothing on this page is cached, estimated, or remembered.

What this page is. Data vendors restate history: a number they published for a date gets replaced later, silently, and everyone who stored the first answer either never notices or overwrites it. This estate keeps a machine detector over its daily snapshots for every cumulative-by-construction series, records the before-value beside the replacement, and serves the record at /v1/revisions. This page is the Helium (HNT) view of that product: the live ledger for HNT, the estate-wide feed as proof the detector works, the archive the detection runs over, and the exact commands to verify any of it without an account. It does not forecast, rank investment merit, or advise. Where a fact has a caveat, the caveat ships with the fact.

Provenance — where HNT's archive comes from

6 source families feed this network's ledger. Every row they wrote carries its own source, as_of and verify_url; this table is the live rollup of that. The first-party family is Helium's own entities service (https://entities.nft.helium.io/v2/hotspots/pagination-metadata?subnetwork=iot and the MOBILE sibling) — telemetry from the network itself — with the DefiLlama fees family, the Solana SPL-mint chain state, the CoinGecko market reference and the helium GitHub activity series alongside.

SourceRows heldSeriesRows w/ verify_urlWindow (UTC)Sample origin
CoinGecko /coins/markets7,026247,0262026-08-09 17:15:20 → 2026-09-02 18:49:30sample origin ↗
first_party_api1,13021,1302026-08-09 23:28:06 → 2026-09-02 18:34:01sample origin ↗
DefiLlama /overview/fees1,05371,0532026-08-09 17:17:15 → 2026-09-02 18:58:01sample origin ↗
solana_rpc16641662026-08-09 23:12:54 → 2026-09-02 18:00:02sample origin ↗
github12061202026-08-09 23:42:07 → 2026-09-02 18:29:01sample origin ↗
helium_entity_api422422026-09-01 23:10:41 → 2026-09-02 19:03:01sample origin ↗

Revision ledger — 0 backward revision(s) recorded for HNT

The ledger query ran during generation and returned 0 rows for HNT — and for Helium the structural reason is on this page, measured live: the detector only files cumulative-by-construction series (counters that cannot decrease unless upstream rewrote them), and the daily archive this estate holds for HNT — 641 rows over 27 snapshots (2026-08-06 → 2026-09-01) — contains exactly one series of that class: fees_alltime_usd, DefiLlama's all-time fees figure for the Helium network. The detector watched it, and the measured result over all snapshots held is 0 decreases — the series is flat in the held window, so there is nothing to diff and no rewrite occurred. Zero here is the live query result plus the structural reason, not a gap — the ledger itself is at /v1/revisions?symbol=HNT (the same query this page ran, served live), and a restatement would appear on this page the day the detector records one. /v1/revisions?symbol=HNT cross-check passed: the served API reports 0 row(s), matching the ledger count rendered on this page.

Why the ledger is empty for HNT — the detector class, measured

The detector diffs every daily snapshot of every cumulative-by-construction series. The live watchlist below is imported at generation from the detector itself (propintel/revision_ledger.py (live import)). Its intersection with what the daily archive holds for HNT is the table: one watched series is held, the decrease-count over it is the measured zero behind the ledger count above. Where a sibling network (AR) shows a BLOCKS restatement, HNT structurally cannot produce one in this window — its one cumulative-class series never moved. That is the honest answer to "where are HNT's revisions": the watched counter was watched, and it did not change.

Watchlist series heldRowsDaysMin heldMax held
fees_alltime_usd10102,296,6882,296,688

The one watched series, every snapshot held

fees_alltime_usd — DefiLlama's all-time fees figure for the Helium network, snapshotted daily. Across the held window the value runs 2,296,688 → 2,296,688: identical at every snapshot. A constant series cannot produce a history-rewrite event — this flatness, queried live at generation, is the entire structural story behind the zero above.

Snapshot datefees_alltime_usd valueSource
2026-08-232,296,688DefiLlama /overview/fees
2026-08-242,296,688DefiLlama /overview/fees
2026-08-252,296,688DefiLlama /overview/fees
2026-08-262,296,688DefiLlama /overview/fees
2026-08-272,296,688DefiLlama /overview/fees
2026-08-282,296,688DefiLlama /overview/fees
2026-08-292,296,688DefiLlama /overview/fees
2026-08-302,296,688DefiLlama /overview/fees
2026-08-312,296,688DefiLlama /overview/fees
2026-09-012,296,688DefiLlama /overview/fees

Gauges that moved backward — deliberately NOT revisions

These series fall outside the detector's cumulative-by-construction class (NOT_TRULY_CUMULATIVE in propintel/revision_ledger.py): a drop there is a real population or market change, not upstream rewriting history. Publishing them as "revisions" would be exactly the fake-metric behaviour this product exists to eliminate.

Series (gauge / revaluation)Backward moves observedSnapshot rows held
PRICE1327
VELOCITY1327
price_usd817
fully_diluted_valuation_usd717
market_cap_usd717
market_cap_rank611
GH_OPEN_ISSUES527
price_change_7d_pct511
price_high_24h_usd511
price_change_1h_pct411
price_from_atl_pct411
volume_24h_usd411
market_cap_change_24h_pct311
market_cap_change_24h_usd311

The sharpest HNT case: IOT_HOTSPOTS — the LoRaWAN hotspot population from Helium's own entities API. Note what the trail shows: in this 27-day window it only ever grew. A detector that classified by measured monotonicity would admit it as cumulative; this estate's detector classifies by construction — hotspots can go offline, so a drop would be a real population change, not a rewrite. Trending gauges are exactly the case that fools naive monotonicity checks, which is why the exclusion list is explicit.

Snapshot dateIOT_HOTSPOTS valueSource
2026-08-061,035,564depin_first_party
2026-08-071,035,571depin_first_party
2026-08-081,035,572depin_first_party
2026-08-091,035,575depin_first_party
2026-08-101,035,576depin_first_party
2026-08-111,035,577depin_first_party
2026-08-121,035,579depin_first_party
2026-08-131,035,580depin_first_party
2026-08-141,035,582depin_first_party
2026-08-151,035,584depin_first_party
2026-08-161,035,586depin_first_party
2026-08-171,035,590depin_first_party
2026-08-181,035,592depin_first_party
2026-08-191,035,594depin_first_party
2026-08-201,035,594depin_first_party
2026-08-211,035,596depin_first_party
2026-08-221,035,598depin_first_party
2026-08-231,035,598depin_first_party
2026-08-241,035,598depin_first_party
2026-08-251,035,599depin_first_party
2026-08-261,035,600depin_first_party
2026-08-271,035,603depin_first_party
2026-08-281,035,603depin_first_party
2026-08-291,035,605depin_first_party
2026-08-301,035,607depin_first_party
2026-08-311,035,609depin_first_party
2026-09-011,035,619depin_first_party

The 5G-side sibling, MOBILE_HOTSPOTS, from the same first-party service — same classification, same reasoning.

Snapshot dateMOBILE_HOTSPOTS valueSource
2026-08-0656,807depin_first_party
2026-08-0756,810depin_first_party
2026-08-0856,812depin_first_party
2026-08-0956,812depin_first_party
2026-08-1056,812depin_first_party
2026-08-1156,814depin_first_party
2026-08-1256,815depin_first_party
2026-08-1356,815depin_first_party
2026-08-1456,816depin_first_party
2026-08-1556,816depin_first_party
2026-08-1656,817depin_first_party
2026-08-1756,817depin_first_party
2026-08-1856,867depin_first_party
2026-08-1956,868depin_first_party
2026-08-2056,885depin_first_party
2026-08-2156,885depin_first_party
2026-08-2256,885depin_first_party
2026-08-2356,885depin_first_party
2026-08-2457,444depin_first_party
2026-08-2557,452depin_first_party
2026-08-2657,452depin_first_party
2026-08-2757,453depin_first_party
2026-08-2857,455depin_first_party
2026-08-2957,493depin_first_party
2026-08-3057,493depin_first_party
2026-08-3157,493depin_first_party
2026-09-0157,493depin_first_party

Same-timestamp conflicting values on record for HNT: none

The task-level conflict check, run live: any (metric, timestamp) family where this estate recorded two or more different values. The query ran at generation and returned 0 groups in both depin_onchain and depin_daily — every (metric, timestamp) pair the estate holds for HNT carries exactly one value. Zero here is the live query result, not a gap; the archive kept every write it made, and none of them disagree.

The ledger, live — every restatement recorded estate-wide (18 deduped events)

Deduped on revision identity exactly as /v1/revisions dedupes it. This is the same feed a subscriber polls; it is rendered live from ClickHouse at generation, not copied from a snapshot. Each row is an upstream source replacing the value of a (network, metric, date) it had already published — after this estate recorded the original. The superseded value is retained, never deleted; that retention is the only reason a rewrite is detectable, and it is the part every overwriting vendor discards. HNT is absent from this table because its own ledger is empty — the estate-wide rows are the proof the detector fires when a rewrite actually happens.

First detectedNetworkMetricWasBecameΔKindProvenance
2026-09-02 01:15:01GRTdl_fees_alltime_usd1,424,3161,423,345-0.068%backward_revisiondepin_first_party · origin ↗
2026-09-02 01:15:01GRTfees_alltime_usd1,424,3021,423,345-0.067%backward_revisionDefiLlama /overview/fees · origin ↗
2026-09-02 01:15:01OVPPtoken_transfers_total1,356,7491,354,903-0.136%backward_revisionevm_blockscout · origin ↗
2026-09-01 23:34:07ARblocks1,986,2201,702,204-14.299%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:34:07ARblocks1,980,1161,702,204-14.035%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:34:07ARblocks1,988,9301,702,206-14.416%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:34:07ARblocks1,982,1761,702,204-14.124%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:34:07AUKItoken_transfers_total1,230,1671,228,860-0.106%backward_revisionevm_blockscout · origin ↗
2026-09-01 23:34:07EIGENfees_alltime_usd161,955,683.53161,932,203.53-0.014%backward_revisionDefiLlama /overview/fees · origin ↗
2026-09-01 23:34:07GRTfees_alltime_usd1,419,3281,419,152-0.012%backward_revisionDefiLlama /overview/fees · origin ↗
2026-09-01 23:34:07GRTfees_alltime_usd1,419,5581,419,328-0.016%backward_revisionDefiLlama /overview/fees · origin ↗
2026-09-01 23:34:07R1token_transfers_total194,390194,337-0.027%backward_revisionevm_blockscout · origin ↗
2026-09-01 23:34:07SOGNItoken_transfers_total1,177,2191,174,145-0.261%backward_revisionevm_blockscout · origin ↗
2026-09-01 23:33:32GRTdl_fees_alltime_usd1,419,3221,419,152-0.012%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:33:32GRTdl_fees_alltime_usd1,415,0541,414,119-0.066%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:33:32GRTdl_fees_alltime_usd1,419,5661,419,322-0.017%backward_revisiondepin_first_party · origin ↗
2026-09-01 23:33:32STORJdisqualified_nodes80,23879,569-0.834%backward_revisiondepin_first_party · origin ↗
2026-08-13 15:35:15FLOCKdl_fees_alltime_usd1,170,614.61,170,544.16-0.006%sub_noisedefillama_fees · origin ↗

How detection works — and what it cannot see

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 (block heights, transaction and transfer counters, lifetime fees). A row enters default.depin_revision_ledger iff two snapshots disagree for an already-observed date; zero human judgement. Resolution rule: latest observation wins for current-state reads, the superseded value is retained, never deleted. Population gauges (hotspot sets, node counts, prices, capacity) legitimately move both ways and are deliberately excluded — a drop there is a real population change, not a rewrite; the IOT_HOTSPOTS case on this page is the worked example. 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. The detector's full classification is inspectable at /v1/revisions; a frozen daily copy serves at /revision-ledger/REVISIONS_20260902.json.

Estate grades for HNT (graded 2026-08-20 13:54:15.000)

Served by /v1/network/HNT — the same grades a paying agent receives. Scores are the engines' own 0–100 outputs, published exactly as the engines emitted them, unflattering parts included.

EngineGradeScore
Node qualityF0
Dilution riskMINIMAL90
Bot riskB90
Dev velocityA99.388
RevenueF0
Data coverageD15
OverallD43.6888

Verify any cell yourself — the exact commands

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 Helium's own entities service, the first-party source for the hotspot families; command 4 is the DefiLlama series the detector watches; command 5 is the estate's graded network row; command 6 is the frozen daily snapshot of the ledger. One polite call per endpoint, no hammering.

# 1) The served revision feed for HNT — the same rows this page queried, live:
curl -s "https://kairossignal.com/v1/revisions?symbol=HNT" | 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) Helium's own entities API (the first-party family for hotspot telemetry):
curl -s -H "User-Agent: kairos-check" "https://entities.nft.helium.io/v2/hotspots/pagination-metadata?subnetwork=iot" | python3 -m json.tool
# 4) DefiLlama's fees series for Helium (the alltime-fees source the detector watches):
curl -s -H "User-Agent: kairos-check" "https://api.llama.fi/summary/fees/helium-network" | python3 -m json.tool | head -40
# 5) This estate's public API row for HNT (grades + provenance):
curl -s "https://kairossignal.com/v1/network/HNT" | python3 -m json.tool | head -60
# 6) 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"
Get this network as a data feed. Every number here is one API call away, with the same provenance fields — including the revision feed itself. Pricing · Self-register for free $5 API credits — no card, no human · API reference. Machine-readable row for this network: /v1/network/HNT.

Method & honesty notes. All counts are queries against the live ledger at generation time, not restamped copy — this page is regenerated by gen_revision_page_hnt.py and the hourly claim_drift_check.py run grades its claims against the live API like every other published surface. The HNT revision count is the live result of SELECT count() FROM default.depin_revision_ledger WHERE network='HNT'; the page refuses to ship if the served /v1/revisions?symbol=HNT disagrees with it. The 18 estate-wide events shown are deduped on revision identity (deterministic hash of network, metric, current_date, prior_date) exactly as the API dedupes them; detected_at is the first detection and never moves. Series absent from a section are absent, not zero: the daily-snapshot ledger for HNT is genuinely empty today — because the one cumulative-class series the archive holds (fees_alltime_usd) is flat across every snapshot held, a structural fact measured live in the watchlist queries above — and this page says so instead of inventing restatements. The same-stamp conflict check is likewise the honest live answer: 0 groups in both tables. Upstream probes ran serially by this generator immediately before rendering: Helium entities API, IOT subnetwork (first-party upstream) HTTP 200; Helium entities API, MOBILE subnetwork (first-party upstream) HTTP 200; DefiLlama /summary/fees/helium-network (alltime-fees source) HTTP 200; estate /v1/revisions?symbol=HNT HTTP 200; estate /v1/network/HNT HTTP 200; CoinGecko helium page (browser-verified origin; 403 here is its bot wall) HTTP 403; frozen daily ledger snapshot HTTP 200.

Machine-generated 2026-09-02T19:05:52Z by propintel/gen_revision_page_hnt.py · source of truth: default.depin_catalog, default.depin_onchain, default.depin_daily, default.depin_revision_ledger (ClickHouse, live at generation) · Kairos Signal — provenance or silence.