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 validation is layered, and each layer rejects different classes of mistakes. 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-VALIDATION, RK-TX, RK-MASS, RK-TXSCRIPT, RK-UTXO-ENTRY. 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 Transaction Validation Layers, the model is built around these anchors: isolation checks version-specific fields, size, and local transaction shape; header context covers lock time, version rules, and signature-script length constraints; UTXO context checks spendability, sums, fees, sequence locks, maturity, mass commitment, and covenant context; script execution validates authorization and covenant rules; errors should be traced to the layer that owns them. 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. isolation checks version-specific fields, size, and local transaction shape. 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. header context covers lock time, version rules, and signature-script length constraints. Transaction pages mention covenants only as fields, scripts, signing commitments, or validation context. The transaction layer must preserve or check the relevant data, then route state-machine design to the covenant section and proof binding to the ZK section.
3. UTXO context checks spendability, sums, fees, sequence locks, maturity, mass commitment, and covenant context. Transaction pages mention covenants only as fields, scripts, signing commitments, or validation context. The transaction layer must preserve or check the relevant data, then route state-machine design to the covenant section and proof binding to the ZK section.
4. script execution validates authorization and covenant rules. Transaction pages mention covenants only as fields, scripts, signing commitments, or validation context. The transaction layer must preserve or check the relevant data, then route state-machine design to the covenant section and proof binding to the ZK section.
5. errors should be traced to the layer that owns them. Validation pages separate layers that are often confused. Shape checks, activation context, UTXO context, mass/resource checks, script execution, covenant context, and error ownership each reject different mistakes. A useful guide traces the rejected transaction to the layer that owns the failure.
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 isolation checks version-specific fields, size, and local transaction shape. | Use RK-TX-VALIDATION, RK-TX, RK-MASS; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 2 | Check header context covers lock time, version rules, and signature-script length constraints. | Use RK-TX-VALIDATION, RK-TX, RK-MASS; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 3 | Check UTXO context checks spendability, sums, fees, sequence locks, maturity, mass commitment, and covenant context. | Use RK-TX-VALIDATION, RK-TX, RK-MASS; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 4 | Check script execution validates authorization and covenant rules. | Use RK-TX-VALIDATION, RK-TX, RK-MASS; name the stage: built, signed, validated, admitted, templated, mined, or accepted. |
| 5 | Check errors should be traced to the layer that owns them. | Use RK-TX-VALIDATION, RK-TX, RK-MASS; 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#
- 06-mass-fees-and-storage-mass
- transactions-utxo-mempool
- 08-mempool-policy