Start with a precise definition
“Preconfirmation” is used for different kinds of early signals and commitments. Before integrating a feed, ask who produces the signal, what event triggers it, whether it is authenticated, and what happens if the transaction fails or the chain changes.
This is an educational guide. Lumios is not advertising a preconfirmation service or a guaranteed inclusion or execution outcome here.
Separate observation, execution, and finality
A submission response can acknowledge that a node received a transaction. An observed transaction message gives your consumer information about the transaction. An execution update can include a result. A commitment level describes how the network has established confidence in the block.
These are different inputs to your application. Name them separately in storage and in the interface so a fast observation cannot accidentally become a “payment complete” event.
- Observed: save the signature, source, slot if supplied, and local receive time.
- Execution result: record success or error from a source that exposes it.
- Confirmation: check the status against the level your workflow requires.
- Reconciliation: resolve missing, conflicting, or superseded observations.
Read the commitment level explicitly
Solana RPC exposes processed, confirmed, and finalized commitment levels. Processed reflects a node’s processed state; confirmed reflects a supermajority vote; finalized is the strongest finality level exposed by these RPC semantics.
Use getSignatureStatuses to inspect a signature’s confirmationStatus and err. A null result means no status was found in the queried scope, not proof that the transaction succeeded or failed. Recent-cache lookup and history lookup have different coverage.
Evaluate a signal with a small, auditable experiment
Log timestamps from one clock and compare the same signatures across your early feed and your confirmation source. Include missed events, duplicates, errors, and outcomes during disconnections. Report the distribution rather than only the fastest sample.
Write a recovery rule before going live. For example, an observation may update a provisional chart, while a balance credit waits for successful execution at the required commitment. The decision should be visible in the code and in the product wording.
Common questions
Does a faster feed change Solana finality?
No. Faster delivery can reduce how long your consumer waits to see information. It does not change what the underlying event proves.
Can gRPC carry pre-execution data?
Some Yellowstone feed modes support deshred transaction updates. Support depends on the endpoint and subscription. Do not infer the event stage from the gRPC transport alone.
Sources & documentation
Consult the current specifications for endpoint behavior and supported features.