Repository navigation
This draft contains the reproducible waved and wavecli
archives and their manifest. Before publishing it, maintainers
must sign manifest-v0.2.1.txt and attach the
detached manifest-<username>-v0.2.1.sig
signatures.
Verifying the release
Use the repository's verification helper to check the signatures
and the downloaded binary or archive:
./scripts/verify-install.sh v0.2.1 <path>The binaries are built with Go 1.27.3. Linux users
can reproduce all archives with:
make release tag=v0.2.1On macOS and other BSD platforms, use the pinned Docker builder:
make docker-release tag=v0.2.1See the reproducible build guide
for the complete signing and verification process.
Release notes
Wavelength v0.2.1 strengthens transaction validation and expiry monitoring, improves swap and exit recovery, and reduces daemon overhead. These notes cover changes since v0.2.0.
Stronger transaction and network safeguards
Clients now validate Ark transaction inputs before accepting out-of-round transfers. Linux builds also disable MPTCP listeners by default; this mitigation does not replace installing a patched kernel. (#1453, #1490)
Reliable expiry monitoring
Received VTXOs and indexed expiry queries now derive timing from locally confirmed chain evidence. Previously stored, inconsistent creation heights are repaired after verification, restoring automatic refresh and critical-expiry monitoring. (#1473, #1474, #1486)
Safer swaps and clearer payment outcomes
Pay swaps reject excessive refund timelocks before funding. Temporary backend outages remain retryable, refund intent survives interruptions, and payments that would leave unusably small change fail promptly. Internal swap funding no longer appears as a duplicate send in transaction history. (#1472, #1457, #1448, #1466)
More reliable exits and fee bumps
Exit recovery preserves the correct spending policy and funding proofs. Fee-bump retries reuse wallet destinations, while uncertain rebroadcast results retain the pending transaction and its confirmation watch. (#1456, #1451, #1465)
Lower daemon overhead
LND-backed wallets share one block-notification stream instead of opening one per subscriber. VTXO metrics use a single aggregate database query, reducing work as wallet history grows. (#1482, #1480)
Clearer status and more resilient browser startup
GetInfo reflects live gRPC operator connectivity, authentication failures return appropriate RPC and HTTP status codes, and browser wallets retry temporary database locks during startup. (#1468, #1477, #1046)
Compatibility: Operators must provide complete, co-signed Ark transaction packages. Applications using indexed expiry must treat a zero deadline as unverified timing. (#1453, #1473)
Contributors
Thanks to everyone represented in the commits, co-author credits, and merged pull requests: