Litecoin.watch: two mempool review alerts
Release: mempool-alerts-20261007-v1
Prepared: 7 October 2026

WHAT THIS PACKAGE CONTAINS
Frozen provider observations and a reproducible review of the two archived
mempool flags at 6 October 2026 14:15:02 and 16:00:02 UTC. This is a provider
snapshot study, not a transaction-level confirmation experiment or an attack
investigation. All Unix timestamps use seconds and UTC.

SELECTION AND COVERAGE
The context includes every scheduled 15-minute slot from 5 October 00:00 through
7 October 18:30 UTC inclusive: 267 unique snapshots and 267 elapsed slots. The
last retrieval was 7 October 18:30:02; its provider timestamp was 18:29:20.
October 7 is a partial day; it must not be compared with a 96-slot full day as
if it were complete. All comparisons and summary statistics exclude the single
4 October 23:45 predecessor retained to replay the first in-window change.

observations.csv: 268 rows, including that one predecessor. Selected public
columns are id, retrieval/source timestamps, source, tip height, mempool count,
rolling 24-hour average fee in LTC, and rolling transaction/block counts. Source
timestamps came from the provider cache context; they are not transaction
arrival times. Other market/Dogecoin columns were omitted. No personal sender
or wallet information was collected.

blocks.csv: 1,512 blocks at heights 3,189,722-3,191,233, selected by timestamp
within the context and height no higher than the last selected observed tip.
There are no missing internal heights. Miner-set block_time is not first-seen
or confirmation-observation time. fetched_at is first retrieval; checked_at is
last recheck. The live block table was exported after the 18:45 run and may
include checked_at values after the context cutoff. This is a frozen copy of
that later table, not a reconstruction of its earlier state.

runs.csv: 267 scheduled run records. A valid snapshot run is not by itself a
successful block-window read. The one failed block-window run started at
6 October 13:15:01. Runs at 13:00:01 and 13:30:01 succeeded. All 11 intervening
tip heights 3,190,548-3,190,558 were first retrieved at 13:30:02 and retained.
This recovery establishes archive coverage, not continuous provider service.

quality-flags.csv: the two actual archived records, obtained through SELECT-only
reads of the read-only SQLite archive. analyze.py independently replays them.

provider-checks.csv: 267 same-height hash checks: 263 matched and 4 no-overlap.
The checks at both flagged slots matched. These compare Blockchair and
BlockCypher block hashes; they do not compare mempool counts or validate those
counts with Litecoin Core. Request/source times are separate.

revisions.csv: one recorded provider block-hash replacement, height 3,190,488,
observed at 6 October 10:15:04. No cause, depth or relationship to the later
mempool flags is inferred. The current block extract contains the rechecked
record, not a time series of historical canonical-chain states.

METHOD
Previous unique observation exists; retrieval gap <= 1,800 seconds; current
mempool > max(1,000, 10 * previous mempool). Both comparisons are strict.
Equality at either boundary does not flag. This review rule is a relative
change detector, not a congestion definition. Observations remain in the data.

Daily mean, median, minimum and maximum summarize sampled counts. Quantiles use
linear interpolation at (n-1)*q on sorted values. Samples above a threshold
count records, not the fraction of elapsed time spent above that threshold.

There are no mempool arrival lists, transaction sizes, fee-rate distributions,
eviction logs or broadcaster timestamps in this archive. A lower later count
cannot by itself distinguish confirmations, evictions, replacements or source
visibility changes. No continuous duration, user wait, fee required by a user,
attack, congestion or cause is estimated. Scatter plots have a zero baseline
and place each point at its actual UTC retrieval time without interpolation.

FEES
The upstream Blockchair /litecoin/stats field average_transaction_fee_24h is
divided by 100,000,000 by the normalizer and archived as avg_fee_ltc. It is the
provider rolling 24-hour average confirmed transaction fee in LTC, not a fee
rate or a recommendation. Consecutive windows overlap. Individual underlying
transactions and the precise upstream denominator are not archived, so the
provider's mean is not independently reconstructed as sum/count here. The
small adjacent changes (+0.366% and +0.199%) do not establish that current
payment fees or waits were unchanged. A separate current fee quote cannot
validate fee requirements at the historical alert time; no such claim is made.

HISTORICAL NODE CROSSCHECK
The published Core observer poll schema retains at, state, covered_seconds
and baseline_excluded; it does not retain historical mempool_count. A current
node count cannot validate these older provider observations. No independent
historical mempool comparison is claimed.

REPRODUCTION (Python 3.10+, STANDARD LIBRARY)
1. Keep every file in this folder together.
2. python verify.py
   Verifies the SHA-256 manifest, replays actual archived flags and compares
   the recomputed JSON and summary CSV files byte for byte.
3. python analyze.py reproduced
   Writes results.json, daily-summary.csv and event-summary.csv in reproduced.
   It does not make a network request, query a node or modify site data.
4. Optional chart rebuild: python build-figures.py
   Requires matplotlib >= 3.7; creates SVG and PNG figures from the frozen CSV.
   PNG is the visually inspected rendering of each SVG source. Figure metadata
   has deterministic SVG IDs and no changing generation date.

Files regenerated after a deliberate change need a new release and checksum
manifest. Future rolling API exports can change and are not expected to match
this fixed historical subset. source-records.json identifies retrieval times,
public URLs, exact original HTTP response fingerprints, source code fingerprints
and selection details. The full original 7-day responses are retained in the
local capture workspace; this publication contains the reduced frozen extract.

Preparation used AI-assisted coding, arithmetic replay and visual inspection.
No independent human review or second-node historical replication is claimed.
Corrections: https://litecoin.watch/corrections/

Primary references:
https://litecoin.watch/api/research.php?dataset=observations&days=7&format=json
https://litecoin.watch/api/research.php?dataset=blocks&days=7&format=json
https://litecoin.watch/api/research.php?dataset=runs&days=7&format=json
https://litecoin.watch/methodology/#network
https://litecoin.watch/methodology/#quality
https://litecoin.watch/data-status/
https://blockchair.com/api/docs
