v0.14.0
XChain Platform v0.14.0.
A consensus train. src/release-manifest.json pins xchain-node, xchain-hub and xchain-indexer at v0.14.0 and the other ten components at the tags they already carry, unchanged. A component's version is the platform version at which it last changed, so a gap means unchanged that release, not skipped. xchain-documentation is tagged v0.14.0 with the train.
Activation
Attestation responsible-set widening activates on Bitcoin testnet at block 150780 and on regtest from genesis. Mainnet is unratified and the rule is inert there. Below the height, and on an unratified network, behaviour is byte-for-byte unchanged. This train changes state derived from existing bytes, so an indexer or hub on either side of the height judges attestation responses differently once a widened one lands: update every indexer and hub.
Verifying this release
gpg --verify SHA256SUMS.asc SHA256SUMS
shasum -a 256 -c SHA256SUMSThe signing key is published at xchain-documentation/operations/release-signing.md and in tools/release/ in every train repo. Any other key is not an official release.
Installing this exact set
xchain-node install v0.14.0 <service> <coin> <network>What is in this train
- An attestation request's responsible set was drawn from on-chain STAKE alone, with no liveness input, so a validator that was staked and served nothing kept its slot forever, and a set holding one such member could never produce the signatures finalization needs. Every attestation request on Bitcoin testnet was expiring with zero responses. A stalled request now widens its responsible set as its own window elapses, the hub signs from the widened set and the indexer accepts from it, and the fulfilled fee split follows the same set. The ladder constants are consensus-fixed, not hub tunables, because they decide who may sign.
- Validators gossip a consensus-rules digest on the heartbeat and warn when a peer, or this node itself, is applying different flag-day heights; the indexer publishes the same digest on its health endpoint so it can be compared against the federation it follows.
install <ref> xchain-hubno longer fails with HTTP 401 on a host provisioned by the runbook: the CLI now sends the hub API key thatvalidator initgenerated.- The checkpoint config block ships
hub_urlbesideself_sync, so a fresh install resolves its checkpoint peer, and checkpoint self-sync resolves once per push so every installed coin gets a checkpoint block. xchain-node rollbackprints the recovery path and exits 1 rather than hanging in the precheck.
Full per-component detail is in each repository's CHANGELOG at its tag.