Kaspa One Stop

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#

Virtual processing walkthroughs show how accepted transactions and UTXO diffs become application-visible evidence. This page sits in Core Contributor Guide. 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 gives contributors a repeatable source-review method. A strong page traces a claim through source owner, data structure, serialization, validation, tests, release context, and Open Questions.

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-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF, KIP-0015, RK-INDEXES. 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 Virtual Processing And Accepted Transactions, the model is built around these anchors: resolve virtual state; calculate UTXO state; commit virtual state; find accepting data; connect indexer observation to source details. 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. resolve virtual state. This is a source checking path through virtual processing and accepted evidence. Start from the virtual processor, then follow acceptance data, UTXO diff calculation, state commitment, and any index or notification surface that exposes the result. Record whether the source proves accepted transaction data, spendable-state change, index observation, or only a local application interpretation.

2. calculate UTXO state. This is a source checking path through virtual processing and accepted evidence. Start from the virtual processor, then follow acceptance data, UTXO diff calculation, state commitment, and any index or notification surface that exposes the result. Record whether the source proves accepted transaction data, spendable-state change, index observation, or only a local application interpretation.

3. commit virtual state. This is a source checking path through virtual processing and accepted evidence. Start from the virtual processor, then follow acceptance data, UTXO diff calculation, state commitment, and any index or notification surface that exposes the result. Record whether the source proves accepted transaction data, spendable-state change, index observation, or only a local application interpretation.

4. find accepting data. This is a source checking path through virtual processing and accepted evidence. Start from the virtual processor, then follow acceptance data, UTXO diff calculation, state commitment, and any index or notification surface that exposes the result. Record whether the source proves accepted transaction data, spendable-state change, index observation, or only a local application interpretation.

5. connect indexer observation to source details. This is a source checking path through virtual processing and accepted evidence. Start from the virtual processor, then follow acceptance data, UTXO diff calculation, state commitment, and any index or notification surface that exposes the result. Record whether the source proves accepted transaction data, spendable-state change, index observation, or only a local application interpretation.

This mechanism section turns the wiki into a review workflow: identify the claim class, find the subsystem, read the source, check tests and releases, then mark the remaining gap.

How to check it#

StepCheckEvidence gate
1Check resolve virtual state.Use RK-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF; keep unsupported material in Open Questions.
2Check calculate UTXO state.Use RK-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF; keep unsupported material in Open Questions.
3Check commit virtual state.Use RK-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF; keep unsupported material in Open Questions.
4Check find accepting data.Use RK-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF; keep unsupported material in Open Questions.
5Check connect indexer observation to source details.Use RK-VIRTUAL-PIPELINE, RK-ACCEPTANCE-DATA, RK-UTXO-DIFF; keep unsupported material in Open Questions.

When using this page for source review, start with the claim class, then read the owner module, tests, KIP or release context, and any dependent interface. Record what the source proves and what it does not prove before strengthening wiki wording.

  • ghostdag-function-walkthrough
  • core-contributor-guide
  • transaction-validation-function-walkthrough
Source-linkedReviewed 2026-07-09 · 6 public sourcesEvidence and sources
Evidence and sources6 public sources · reviewed 2026-07-09
Rusty Kaspa Acceptance DataRusty Kaspa source
github.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/src/pipeline/virtual_processor/processor.rsgithub.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/core/src/acceptance_data.rsgithub.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/src/model/stores/acceptance_data.rs
Technical details

Reference key: RK-ACCEPTANCE-DATA

Recheck this public source before relying on exact current details.