P02-L07 · P02 · P02-M02
Distinguish node state indexer latency and absent evidence
Prerequisites: P02-L06
Learning objectives
- Distinguish node state indexer latency and absent evidence
- Distinguish null, transport error and measured zero.
- Explain indexer coverage and timing limits.
- Formulate a targeted missing-data check.
EN source master · P02-L07 · 30 minutes estimated · needs_review
Read-only study. No wallet connection, real money, seed phrase, private key, signature or live trade. Duration is an editorial estimate; visual assets are specifications, not deployed components.
Why this matters
A blank screen is not evidence that nothing happened. The observation path can fail or lag independently of the ledger event being investigated.
Explanation
Trace the observation path
A node API returns data under a method's parameters and the node's available state. An indexer builds another view for search or aggregation. An interface displays that view. A missing result may arise at different layers; do not collapse them into one chain-level conclusion.
Solana getTransaction can return null when the transaction is not found at the requested commitment [SOLRPC]. Ethereum receipt methods also distinguish available receipts from missing results [RPC]. The exact method and context matter more than the generic word ‘empty’.
Four superficially similar outputs
Zero is a returned measurement under a defined query. Null is an unavailable/not-found result under method semantics. An empty list is no returned rows under its filters and coverage. A timeout is a communication outcome. None is interchangeable without additional evidence.
An indexer may have processed only through a stated block. A query about a later event then cannot establish absence. Do not invent the missing row; report the coverage gap. A later recheck should preserve the original request and compare equivalent parameters.
Diagnose with the smallest useful record
Record network, identifier, method, parameters, commitment/block, source and retrieval marker. Then ask for the missing layer: current indexed-through context, node status, archival availability or the exact transaction record. Repeating an unchanged query indefinitely does not add evidence.
Preserve uncertainty in the report
Use ‘not returned by source S under query Q’ instead of ‘does not exist’. If a supplied node packet includes a record but an indexer stops earlier, lag is a reasonable explanation within that fixture. It remains an inference with a stated coverage basis, not proof that every blank UI is harmless.
Do not classify an asset as safe or a person as inactive from missing observations. Completeness is a property that must be supported, not inferred from an empty page.
Evidence-state classification
OBSERVED in the fixture: supplied node record, indexer coverage, empty response, timeout and scoped zero balance. INFERRED: the coverage gap makes I1 compatible with N1 under the stated context. UNKNOWN: N2's fee and earlier holdings. INSUFFICIENT EVIDENCE: an empty list, timeout or one zero snapshot proves complete historical absence.
Key terms
- RPC (remote procedure call): method-based request to a node or provider.
- Commitment: the requested level of network confirmation for an observation; its meaning is network-specific.
- Indexer: derived searchable data service.
- Coverage: what a source includes.
- Null: missing result under method-specific semantics.
Historical example
ILLUSTRATIVE. N1 supplies SIM-TX-Z in block120, execution success. I1 indexedThrough=118 and returns empty for Z. N2 times out. B1 returns balance0 for ACCOUNT-Q at block119. All are SIM-NET; markers are fictional.
Visual specifications
Evidence panel with N1 block120, I1 coverage118, N2 timeout, B1 zero119. Alt: missing/indexed data and a measured zero answer different questions.
What the evidence proves
The fixture's distinct response types and bounded coverage explanation.
What the evidence does not prove
Global transaction absence, complete history, source authenticity or live service health.
Common mistakes
- Null equals zero.
- Empty indexer means no transaction.
- Timeout means no fee.
Practical exercise
Classify each result and draft a missing-observation note. Does I1 contradict N1? Does N2 establish no fee? Can B1 establish that Q never held assets?
Submit a short evidence table and reasoning, using only the provided material. Suggested allocation: study 12 min, inspection/calculation 8 min, correction/quiz 10 min.
Show worked correction
N1 is a supplied inclusion record. I1 has a coverage gap for120, so its empty response does not contradict N1; lag is INFERRED under the stated coverage. N2 gives no execution/fee measurement. B1 is a measured zero at119 only, not a complete history. Fee at N2 and Q's earlier holdings remain UNKNOWN.
Review rubric: 1 point each for exact scope, source/fixture provenance, correct reasoning, explicit limitations and safe offline handling (5 total). An invented observation or unsupported human attribution requires correction regardless of score. This is formative feedback, not certification.
Checklist
- Method and parameters.
- Returned result type.
- Indexed-through/block/commitment.
- Coverage gap.
- Targeted next request.
Summary
A blank screen is not evidence that nothing happened. The observation path can fail or lag independently of the ledger event being investigated. The supplied material supports the fixture's distinct response types and bounded coverage explanation. It does not establish global transaction absence, complete history, source authenticity or live service health.
Summary
- Distinguish null, transport error and measured zero.
- Explain indexer coverage and timing limits.
- Formulate a targeted missing-data check.
Next lesson
P02-L08 after reviewing this exercise and its prerequisites.
Tools
NONE. The authoritative catalog requires no product access for this lesson. Use the frozen/offline material.
Sources & claim boundaries
- [RPC] Ethereum JSON-RPC — Receipt status, block context and network-scoped API results. Checked 2026-10-01.
- [SOLRPC] Solana getTransaction — Commitment-scoped results and null when not found/confirmed. Checked 2026-10-01.
Synthetic values are author-created exercise inputs. Historical values, if any, must use the linked dataset and its narrower provenance. Source inspection is not independent editorial acceptance.
Visual specifications
P02-L07-V01
Distinguish node state indexer latency and absent evidence
Illustrative teaching data; not a live screen
Evidence panel with N1 block120, I1 coverage118, N2 timeout, B1 zero119. Alt: missing/indexed data and a measured zero answer different questions.
missing/indexed data and a measured zero answer different questions.
390px stacked rows with complete text equivalent; 768px/desktop render acceptance pending
RTL prose; identifiers and number units remain LTR; preserve factual arrow directions
FIX-P02-L07
Sources & claim boundaries
RPC · PRIMARY_DOCUMENTATION
Ethereum JSON-RPC
- Supported claim
- Receipt status, block context and network-scoped API results.
- Verification boundary
- Primary page inspected for the stated mechanism or attributed publication; does not authenticate illustrative data.
- Checked at
- 2026-10-01
https://ethereum.org/en/developers/docs/apis/json-rpc/
SOLRPC · PRIMARY_DOCUMENTATION
Solana getTransaction
- Supported claim
- Commitment-scoped results and null when not found/confirmed.
- Verification boundary
- Primary page inspected for the stated mechanism or attributed publication; does not authenticate illustrative data.
- Checked at
- 2026-10-01
https://solana.com/docs/rpc/http/gettransaction
Dataset provenance
id: FIX-P02-L07
dataStatus: ILLUSTRATIVE
source: Original teaching fixture embedded below; not externally observed
observedAt: null
timeBasis: SIM/T markers are fictional; no real timestamp or chain observation
scope: Invalid training labels; no usable wallet, key or signature