Repository navigation
Releases: RunOnFlux/kaspa-core
Releases · RunOnFlux/kaspa-core
Release list
v1.0.0
Pure-TypeScript Kaspa transaction library for SSP and ZelCore. No WASM; two runtime dependencies (@noble/curves, @noble/hashes).
yarn add @runonflux/kaspa-core
npm: https://www.npmjs.com/package/@runonflux/kaspa-core
1.0.0 — 2026-09-25
First stable release. The API is unchanged from 0.3.0.
- Funded mainnet verification (AUDIT.md §6.1). Every flow was run on mainnet and accepted, with node-reported mass identical to ours: single-sig; SSP 2-of-2 through the full co-signer flow; enterprise 2-of-3, 4-of-7, 6-of-10 and 10-of-15 with random signer subsets; consolidation; a message payload; KRC-20 commit/reveal; an Igra bridge entry.
publishConfig.provenanceremoved for the first, local publish; provenance returns with trusted publishing from CI.
0.3.0 — 2026-09-24
ZelCore parity (the WASM can be removed) and a second independent security review (AUDIT.md §4.2).
Added
@runonflux/kaspa-core/wrpc: a pure-TypeScript JSON-wRPC client, replacing the WASMRpcClient.- Resolver or fixed URLs; every node is checked for network, sync state and UTXO index before any request.
- Failover, keepalive that detects dead nodes, reconnect with re-subscription.
- UTXOs, balances, fee estimates, mempool, and submission of every transaction kind (v1, payload, lanes).
- UTXO and DAA-score subscriptions.
- The protocol is documented with live captures in
docs/WRPC_PROTOCOL.md.
- KRC-20:
krc20Transfer,krc20Mint,krc20Inscription(ZelCore's exact script and JSON, validated). - Igra entries:
igraEntryPayload,planIgraEntry,mineIgraEntry(binds the payload to the locked amount),parseIgraEntryPayload. - Amount sources and the ledger:
SignOptions.signedAmounts(ledger),SignOptions.maxFee,OpenBundleOptions.fundingTransactions,entriesFromFundingTransactions, and RESTgetFundingTransaction(proven by transaction ID). SubmitOutcomeUnknownErrorfor REST and wRPC submissions.- REST:
getHistoryByOffsetand theprefixoption. AlsoLocalSigner.destroy(),validateReceivingSpend, and acovenant-outputwarning.
Security
- Breaking:
openSigningBundlerefuses to open without an independent amount source. PasstrustBundleEntries: trueto opt out explicitly. - Transactions without outputs are refused everywhere.
- Signing enforces a fee ceiling (default 5 KAS).
- v1 compute budgets have a floor, the spend's minimum, everywhere.
- Change scripts must be valid and canonical.
- Covenant UTXOs are never selected, and covenant outputs are denied by default.
- Only library-created signers may skip re-verification (a signer's
selfVerifyingflag is no longer trusted). - Digest signers only accept 32-byte digests.
- Key errors never echo the key.
- REST and wRPC UTXOs must match the script of the address they are reported for, and only requested addresses are accepted.
stringifyWithBigIntuses a unique marker and accepts only u64 values.- REST query parameters are allowlisted.
Fixed
- Coinbase maturity is 1,000 DAA, not 200.
- Small change is no longer folded into the fee when keeping it is cheaper.
parseScriptrejects a truncated PUSHDATA length.