PAAL AI (PAAL) — the revision ledger

Generated 2026-09-02T20:14:49Z from live ClickHouse queries against this estate's ledger. Point-in-time archive held for PAAL AI: 7,728 observations · 37 distinct series · 5 upstream sources · first row 2026-08-17 23:01:56 · newest row 2026-09-02 19:49:20 · every one of the 7,728 rows carries a verify_url · 37 series refreshed in the last 24h (794 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 PAAL view of that product: the live ledger for PAAL — currently zero recorded restatements, published exactly as the query found it — 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 PAAL AI's archive comes from

5 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. PAAL AI (the catalog name here is PAAL AI, category Server, AI, chain Ethereum) publishes no first-party stats API; the network-side telemetry this estate holds comes from Ethereum chain reads against the PAAL token contract 0x14fee680690900ba0cccfc76ad70fd1b95d10e16 — eth_calls via this estate's ethereum_rpc collector (onchain total supply, burn-address balance) and the Ethereum Blockscout token read (holder count, transfer counter) — with CoinGecko's market series and DefiLlama's fees and TVL series alongside.

SourceRows heldSeriesRows w/ verify_urlWindow (UTC)Sample origin
CoinGecko /coins/markets6,456246,4562026-08-22 13:21:20 → 2026-09-02 19:49:20sample origin ↗
DefiLlama /overview/fees88878882026-08-22 22:58:02 → 2026-09-02 18:58:01sample origin ↗
DefiLlama /protocols25222522026-08-22 22:58:02 → 2026-09-02 18:58:01sample origin ↗
ethereum_rpc11421142026-08-17 23:01:56 → 2026-09-02 18:19:01sample origin ↗
ethereum_blockscout182182026-08-23 02:59:36 → 2026-09-02 00:19:01sample origin ↗

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

The ledger query ran during generation and returned 0 rows for PAAL. Zero here is the live query result, not a gap — the ledger itself is at /v1/revisions?symbol=PAAL (the same query this page ran, served live), and a restatement would appear on this page the day the detector records one. /v1/revisions cross-check: the estate API's free-tier daily quota answered HTTP 429 at generation time (resets 00:00 UTC); the ledger count on this page is the live ClickHouse result, and the served endpoint was probed and found quota-gated, not missing.

Why zero is the interesting answer. The detector does not skip PAAL — below, the live intersection shows the 2 cumulative-by-construction series the archive holds for this network, each fully diffed across its whole snapshot window (where it has more than one observation), and each rendered here end to end so the monotone runs are visible raw. Nothing moved backward. That is the structural zero: the detector was watching, the counters were fully exposed to it, and upstream did not rewrite history for this network in the window this estate holds. Publishing an empty ledger as a live query result — instead of padding it with gauge noise — is the same retention discipline the ledger exists to sell.

What the detector watches for PAAL AI — the intersection, measured

The detector diffs every daily snapshot of every cumulative-by-construction series. Below is the live intersection of the estate detector's cumulative watchlist — imported directly from propintel/revision_ledger.py (75 declared names, so this page can never drift from the detector) — with what the daily archive holds for PAAL. The two watched series here are DefiLlama's all-time fees counter and the Blockscout transfer counter for the PAAL token contract on Ethereum mainnet.

Watchlist series heldRowsDaysSource
fees_alltime_usd1010DefiLlama /overview/fees
token_transfers_total88ethereum_blockscout

The trails behind the ledger — watched counters, end to end

These are the actual counter trails the detector diffed for PAAL, rendered live from the archive. Each is a series that cannot decrease unless upstream rewrote history — and each is monotonic across its entire held window, which is exactly why the ledger above is empty. The raw runs are the evidence; the reader does not have to trust the summary.

fees_alltime_usd — all-time fees recorded by the PAAL protocol, captured by the estate's DefiLlama collector across all 10 snapshot days:

Snapshot dateAll-time fees (USD)Source
2026-08-2314,267,513DefiLlama /overview/fees
2026-08-2414,267,513DefiLlama /overview/fees
2026-08-2514,267,513DefiLlama /overview/fees
2026-08-2614,267,513DefiLlama /overview/fees
2026-08-2714,267,513DefiLlama /overview/fees
2026-08-2814,267,513DefiLlama /overview/fees
2026-08-2914,267,513DefiLlama /overview/fees
2026-08-3014,267,513DefiLlama /overview/fees
2026-08-3114,267,513DefiLlama /overview/fees
2026-09-0114,267,513DefiLlama /overview/fees

token_transfers_total — the token transfer counter for the PAAL contract, Blockscout origin — 8 snapshot days:

Snapshot dateToken transfers (total)Source
2026-08-231,380,568ethereum_blockscout
2026-08-241,380,886ethereum_blockscout
2026-08-251,381,194ethereum_blockscout
2026-08-261,381,563ethereum_blockscout
2026-08-281,382,186ethereum_blockscout
2026-08-291,382,488ethereum_blockscout
2026-08-301,382,803ethereum_blockscout
2026-08-311,382,986ethereum_blockscout

Gauges that moved backward — deliberately NOT revisions

These series fall outside the detector's cumulative-by-construction class (NOT_TRULY_CUMULATIVE and plain gauges in propintel/revision_ledger.py): a drop there is a real market or wallet change, not upstream rewriting history. For PAAL the market classes dominate this table — price, market cap, FDV, volume and the rolling percentage windows all oscillate across the 16-day archive, and holders_count moves both ways as wallets arrive and leave — that is market revaluation and wallet churn, not a rewrite. Publishing them as "revisions" would be exactly the fake-metric behaviour this product exists to eliminate.

Series (gauge / population)Backward moves observedSnapshot rows held
fully_diluted_valuation_usd711
market_cap_usd711
price_from_atl_pct711
price_usd711
price_change_30d_pct611
staking_tvl_usd610
volume_24h_usd611
price_change_14d_pct511
price_change_7d_pct511
price_high_24h_usd511
price_low_24h_usd511
holders_count48
market_cap_rank311
price_change_1h_pct311

Same-timestamp conflicting values on record for PAAL: 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 PAAL 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.

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 (provider sets, node counts, prices, capacity, rolling windows) legitimately move both ways and are deliberately excluded — a drop there is a real change, not a rewrite; the gauge table 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 and frozen daily at /revision-ledger/REVISIONS_20260902.json.

The snapshot archive the detection runs over

PAAL's slice of depin_daily: 400 rows over 16 snapshot days (2026-08-17 → 2026-09-01), from 5 source families. Each snapshot is a same-day capture of every series the collectors touched; the detector diffs consecutive snapshots of cumulative series across this window. This is the substrate the zero above is measured over — not an assumption, a measured archive.

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); commands 3–5 hit the DefiLlama and Blockscout upstream families the watched counter rows came from; command 6 is the Etherscan origin of the ethereum_rpc supply reads; command 7 is the CoinGecko origin page; command 8 is the estate's graded network row; command 9 is the frozen daily snapshot of the ledger. One polite call per endpoint, no hammering.

# 1) The served revision feed for PAAL — the same rows this page queried, live:
curl -s "https://kairossignal.com/v1/revisions?symbol=PAAL" | 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) DefiLlama fees API for paal-ai (the watched all-time-fees counter origin):
curl -s -H "User-Agent: kairos-check" "https://api.llama.fi/summary/fees/paal-ai" | python3 -m json.tool | head -30
# 4) Blockscout counters for the PAAL token contract (the watched transfer-counter origin):
curl -s -H "User-Agent: kairos-check" "https://eth.blockscout.com/api/v2/tokens/0x14fee680690900ba0cccfc76ad70fd1b95d10e16/counters" | python3 -m json.tool | head -30
# 5) Blockscout token endpoint (the holders/supply origin):
curl -s -H "User-Agent: kairos-check" "https://eth.blockscout.com/api/v2/tokens/0x14fee680690900ba0cccfc76ad70fd1b95d10e16" | python3 -m json.tool | head -30
# 6) Etherscan token page (the ethereum_rpc supply reads' origin):
curl -s -o /dev/null -w "%{http_code}\n" "https://etherscan.io/token/0x14fee680690900ba0cccfc76ad70fd1b95d10e16"
# 7) CoinGecko PAAL page (the market-series origin; browser-verified, bot-walled to curl):
curl -s -o /dev/null -w "%{http_code}\n" "https://www.coingecko.com/en/coins/paal-ai"
# 8) This estate's public API row for PAAL (grades + provenance):
curl -s "https://kairossignal.com/v1/network/PAAL" | python3 -m json.tool | head -60
# 9) 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/PAAL.

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_paal.py and the hourly claim_drift_check.py run grades its claims against the live API like every other published surface. The PAAL revision count is the live result of SELECT count() FROM default.depin_revision_ledger WHERE network='PAAL'; the page refuses to ship if the served /v1/revisions?symbol=PAAL is reachable and disagrees with it (at generation the estate API was answering its free-tier daily-quota 429, so the cross-check ran against ClickHouse as the authority and the endpoint was verified quota-gated, not missing). 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 same-stamp conflict check is the honest live answer: 0 groups in depin_onchain and 0 in depin_daily. Upstream probes ran serially by this generator immediately before rendering: CoinGecko PAAL page (browser-verified origin; 403 here is its bot wall) HTTP 403; DefiLlama fees API for paal-ai (the fees_alltime_usd watched-counter origin) HTTP 200; DefiLlama protocol page for paal-ai (the TVL series origin) HTTP 403; Blockscout token endpoint for the PAAL contract (the holders origin) HTTP 200; Blockscout address counters for the PAAL contract (the transfer-counter origin) HTTP 200; Etherscan token page for the PAAL contract (the ethereum_rpc supply reads' origin) HTTP 200; estate /v1/revisions?symbol=PAAL HTTP 429; estate /v1/network/PAAL HTTP 429.

Machine-generated 2026-09-02T20:14:49Z by propintel/gen_revision_page_paal.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.