In brief
Transaction evidence moves through layers: wallet intent, node or mempool response, block inclusion, virtual processing, and accepted UTXO effects.
What this page explains#
Transaction contributors need a guided source order so a change does not silently break hashing, signing, mempool policy, RPC, or accepted evidence. This page sits in Transactions, UTXO, Fees, And Mempool. It gives the topic a plain-language handle first, then shows the working idea, the mechanism, the source trail, and any limits that still matter. This category follows a transaction from ownership model to structure, signing, validation, mempool admission, template selection, and accepted-state evidence. The main danger it prevents is collapsing all transaction states into one word.
The writing follows a simple Kaspa documentation pattern: answer the practical question first, then link outward for details. The closest public sources for this page are RK-TX, RK-TX-SERDE, RK-HASH-TX, RK-SIGHASH, RK-SIGHASH-TYPE. Local notes can help choose what to explain, but public-facing references resolve to upstream websites, repositories, papers, release pages, or docs.
How to think about it#
The practical model starts by naming the layer that owns the topic: wallet use, node operation, consensus, transaction validation, Toccata script behavior, tooling, or research. From there, the page shows which public source can support the explanation and where the explanation becomes incomplete.
For Source Path For Transaction Contributors, the model is built around these anchors: read structs before serialization; read hashing before wallet/indexer identity assumptions; read sighash before signing workflow claims; read validation and mempool together for admission behavior; read virtual processing and acceptance data before accepted-evidence claims. This model is useful, but it does not encode every constant, branch, error type, or edge case. Those details belong in the source path and the source notes.
How it works#
1. read structs before serialization. Transaction structure is the field map other layers depend on. Version, inputs, outputs, lock time, subnetwork ID, gas, payload, storage mass, and serialization all affect how validation, hashing, signing, RPC, wallets, and indexers interpret the object. The page therefore treats each field as a commitment surface rather than a display detail.
2. read hashing before wallet/indexer identity assumptions. Developer integration pages explain an interface by naming the source object behind it. API, RPC, wRPC, SDK, wallet, and indexer surfaces are useful only when they preserve the fields and evidence that the protocol layer actually defines. Accepted-state evidence, replay behavior, schema choices, and endpoint disagreement must be checked separately.
3. read sighash before signing workflow claims. Signing is a commitment boundary. A wallet or SDK can construct intent, but a signature only authorizes the fields covered by the signing algorithm and available UTXO context. The review must confirm that versioned fields, previous outputs, sequences, payloads, gas, covenant data, scripts, values, and hash-type choices are not silently lost before or after signing.
4. read validation and mempool together for admission behavior. Mempool and relay behavior describe what a node is willing to hold, replace, forward, or package; they are not final acceptance. Block templates are candidate work for miners, and they can change as node state or policy changes. The guide names each stage separately: built, signed, submitted, admitted, relayed, templated, mined, and accepted.
5. read virtual processing and acceptance data before accepted-evidence claims. Virtual state is the bridge from ordered consensus consequences into the state surfaces that tools can inspect. Mempool visibility says a node is considering a transaction; accepted evidence says the transaction was incorporated through consensus processing. UTXO diffs, accepting data, and indexer replay are the review trail for applications that need durable state.
This mechanism section follows a transaction through construction, identity, signing, validation, mempool policy, block templates, and accepted evidence. The stage must be named before the claim is reused.
How to check it#
| Step | Check | Evidence gate |
|---|---|---|
| 1 | Check read structs before serialization. | Use RK-TX, RK-TX-SERDE, RK-HASH-TX; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 2 | Check read hashing before wallet/indexer identity assumptions. | Use RK-TX, RK-TX-SERDE, RK-HASH-TX; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 3 | Check read sighash before signing workflow claims. | Use RK-TX, RK-TX-SERDE, RK-HASH-TX; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 4 | Check read validation and mempool together for admission behavior. | Use RK-TX, RK-TX-SERDE, RK-HASH-TX; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 5 | Check read virtual processing and acceptance data before accepted-evidence claims. | Use RK-TX, RK-TX-SERDE, RK-HASH-TX; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
When using this page for a transaction claim, name the stage precisely: built, signed, validated, admitted to a mempool, included in a template, mined, accepted, or reflected in a UTXO change. Each stage has a different evidence surface and should not be collapsed into a single success word.
Related Pages#
- 11-rpc-and-indexer-representations
- transactions-utxo-mempool