Repository navigation
Conversation
Submission READMEKaspa chain adapter for XChain Platform — submissionCopyright © 2025–2026 Dankest, LLC · SPDX-License-Identifier: AGPL-3.0-or-later This folder is the complete, self-contained submission for adding Kaspa support to XChain: Everything below is measured. Where something is not verified, it says so. 1. What this isXChain is a metalayer: it reads and writes structured data on existing blockchains without changing
Kaspa is a Rust full node ( 2. What was done, and what it cost to learnTwelve defects were found and fixed while building this, each caught by a check that did not exist
Two more were found on the live chain: a wasm SDK refusal arrives as a bare string, so the 3. What is verified, and howRun it yourself — every claim below has a command. # unit + integration (decoder family, builder, node module)
cd src/xchain-decoder && node ../xchain-node/node_modules/mocha/bin/mocha.js test/unit/chain/kaspa/*.test.js
cd src/xchain-encoder && node ../xchain-node/node_modules/mocha/bin/mocha.js test/unit/build/kaspa_tx_builder.test.js
cd src/xchain-node && node node_modules/mocha/bin/mocha.js test/unit/crypto_nodes/kaspa.test.js
# the database write path, against a REAL MariaDB (skips loudly when there is none)
cd src/xchain-decoder && node ../xchain-node/node_modules/mocha/bin/mocha.js \
test/integration/kaspa/decoder_db_write.test.js
# mutation testing over the family (Stryker, thresholds matching xchain-node's config)
cd src/xchain-decoder && ./node_modules/.bin/stryker run stryker.kaspa.config.json
Real-chain evidence (scripts under
4. What is NOT verified (read this before believing anything else)
5. Wiring points in existing filesSection C of
Two conventions were followed deliberately and are worth a reviewer's attention:
MANIFEST (per-file line counts + md5, computed from the current commits)xchain-decoderxchain-encoderxchain-nodexchain-hubxchain-indexerxchain-explorer |
ab68b9b to
d12797c
Compare
|
/recheck |
|
recheck |
f30ea2e to
1b21419
Compare
|
Thanks again for this work. One process note: contributions to XChain Platform go to Because |
eaa44f6 to
eaa5058
Compare
Adds Kaspa to xchain-decoder: 23 new file(s) and 7 existing file(s) touched for registration/wiring - no behaviour change for other chains. Satisfies the repository's eslint config; the coin file's role addresses are placeholders, not a personal wallet. Tests are in place (decoder family 91 / integration 2 against a real MariaDB / encoder 21 / node 20). The pull request description states what was verified and what was not.
4d89f6b to
9929b10
Compare
What this changes
Adds Kaspa support to
xchain-decoder: 23 new file(s) and 7 existing file(s) touched for registration/wiring.The existing files are registrations and interface substitutions only — no behaviour change for other chains.
How it was verified
The full submission README (what was done, what was verified, what was not) and the
manifest with per-file line counts + md5 are in a comment on #26. Nothing else to open.
SEND|0|XCHAIN|1was published and read backbyte-for-byte by this same decoder — the on-chain payload is 19 bytes of ciphertext
(tx
4a75ff5d149b79aed03c3bb9bcf95a4be939bf51466e1c446b7ce2118f323157, block014e03ad…);on-chain settlement reconciled to the sompi against the fee the builder reported (671,320 sompi).
action-roundtrip-golden.jsonsurvive unchanged.chaos 40 reorg sequences / 0 failures · benchmarks · e2e (skip-guarded). Twelve defects found and
fixed while building this; each is pinned by a test, and the pin names the check that caught it.
Not verified from here, stated plainly: your indexer has never consumed a database this adapter
wrote. README section 4 lists that plus five smaller items. Point us at a branch and we will close it.
CI note:
test/integration,test/fuzz,test/chaos,test/benchmarksandtest/e2earestandalone entries with their own seeds; integration and e2e skip loudly without a database or a node.
Contributor License Agreement