TransactionsCore release 0.1.0

Confirmation lifecycle

Distinguish relay submission, Solana processing, confirmation, finalization, failure and unknown SDK outcomes.

A signature is not proof of success. Lethenymous APIs distinguish submission from execution and finality.

Relayer status

The relay endpoint returns after RPC submission. Its status API reports one of:

StatusMeaning
submittedNo signature status is visible yet, or only a submission acknowledgement is known.
processedThe transaction is visible at a processed commitment.
confirmedSolana reports confirmed commitment.
finalizedSolana reports finalized success.
failedSignature status contains an execution error.

An absent RPC status does not prove failure. Status may remain submitted until RPC history exposes the transaction.

SDK outcome union

Lethenymous.buildAndSendOutcome() returns finalized-success, finalized-failed or unknown. The convenience buildAndSend() returns the signature only on finalized success; it throws TransactionFailedError or TransactionUnknownError for the other outcomes.

The shielded wallet journals operation state before proof/submit transitions. After restart, call reconcilePending() before choosing notes for another spend. Unknown is intentionally fail-closed: do not free a reserved note merely because a local timeout elapsed.

prepared → submitted → processed → confirmed → finalized success
                        └───────────────→ finalized failure
Any ambiguous RPC/journal state → unknown until reconciled

See Relayer API and SDK errors & outcomes.

PreviousTransaction size & measurementsNext Integration checklist
Source baseline: frozen Core v0.1.0 / SDK v0.1.1.