In brief
Kaspa keeps nearby valid blocks in a blockDAG and uses consensus rules to reason about ordering and accepted effects.
What this page explains#
The GHOSTDAG walkthrough turns consensus vocabulary into function-level review. 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-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET, PAPER-GHOSTDAG, RK-TESTS. 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 GHOSTDAG Function Walkthrough, the model is built around these anchors: trace selected parent selection; trace blue candidate checks; trace mergeset ordering; trace blue score/work consequences; compare paper vocabulary to implementation names. 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. trace selected parent selection. This is a source checking path through the GHOSTDAG module family. Start with the GHOSTDAG process entry points, then read the selected-parent ordering path, the protocol comparison rules, the mergeset construction views, and the tests or paper vocabulary that explain why a term appears. Record whether the source proves ordering, selected-parent choice, mergeset view, blue score/work consequence, or only research terminology.
2. trace blue candidate checks. This is a source checking path through the GHOSTDAG module family. Start with the GHOSTDAG process entry points, then read the selected-parent ordering path, the protocol comparison rules, the mergeset construction views, and the tests or paper vocabulary that explain why a term appears. Record whether the source proves ordering, selected-parent choice, mergeset view, blue score/work consequence, or only research terminology.
3. trace mergeset ordering. This is a source checking path through the GHOSTDAG module family. Start with the GHOSTDAG process entry points, then read the selected-parent ordering path, the protocol comparison rules, the mergeset construction views, and the tests or paper vocabulary that explain why a term appears. Record whether the source proves ordering, selected-parent choice, mergeset view, blue score/work consequence, or only research terminology.
4. trace blue score/work consequences. This is a source checking path through the GHOSTDAG module family. Start with the GHOSTDAG process entry points, then read the selected-parent ordering path, the protocol comparison rules, the mergeset construction views, and the tests or paper vocabulary that explain why a term appears. Record whether the source proves ordering, selected-parent choice, mergeset view, blue score/work consequence, or only research terminology.
5. compare paper vocabulary to implementation names. This is a source checking path through the GHOSTDAG module family. Start with the GHOSTDAG process entry points, then read the selected-parent ordering path, the protocol comparison rules, the mergeset construction views, and the tests or paper vocabulary that explain why a term appears. Record whether the source proves ordering, selected-parent choice, mergeset view, blue score/work consequence, or only research terminology.
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#
| Step | Check | Evidence gate |
|---|---|---|
| 1 | Check trace selected parent selection. | Use RK-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET; keep unsupported material in Open Questions. |
| 2 | Check trace blue candidate checks. | Use RK-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET; keep unsupported material in Open Questions. |
| 3 | Check trace mergeset ordering. | Use RK-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET; keep unsupported material in Open Questions. |
| 4 | Check trace blue score/work consequences. | Use RK-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET; keep unsupported material in Open Questions. |
| 5 | Check compare paper vocabulary to implementation names. | Use RK-GHOSTDAG, RK-GHOSTDAG-ORDERING, RK-GHOSTDAG-MERGESET; 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.
Related Pages#
- transaction-field-trace
- core-contributor-guide
- virtual-processing-and-accepted-transactions