cryptofoundry

Contact cryptofoundry

Tell us what you want to build or automate.

adamant

ADAMANT Node v0.10.0

al-onyxprotocolFrom the foundry ↗

ADAMANT blockchain node v0.10.0 is a major maintenance and capability release for operators, delegates, and client developers. It improves messenger-facing APIs, adds WebSocket peer transport, strengthens diagnostics and installation tooling, refreshes dependencies, and hardens transaction admission at the P2P boundary. Delegates and node runners are encouraged by cryptofoundry to upgrade for reliability, security, and compatibility with newer clients. The release does not introduce a mandatory consensus fork for already-synced networks, as height-gated protocol behavior remains configuration-driven and backward-compatible before activation heights.

The release introduces a timestampMs field for transactions with consensus-gated validation and response handling. It adds a ?returnUnconfirmed=1 flag for transactions, chats, states, and chatrooms, along with additional explicit unconfirmed fields. The includeDirectTransfers parameter replaces the deprecated withoutDirectTransfers for chats and chatrooms. Default sorting now uses timestamp:desc, prioritizing timestampMs for timestamp-based ordering. Query parsing has been fixed to support bracket-style types[] filters in transaction API queries. Past-timestamp admission is now limited to chat and state transactions, while transfers allow a wider offline-wallet window. Public access to the forging list endpoint has been disabled for security.

Consensus activation heights configuration for fairSystem and spaceship has been added with height-gated behavior. The timestampMs protocol rules are preserved, maintaining ADAMANT-epoch milliseconds, derived timestamp, and activation-boundary tests. Existing chains continue with deterministic replay, though operators should upgrade before future activation milestones.

P2P timestamp admission hardening ensures that future- and past-timestamp checks used by the Public API are now also enforced on the P2P gossip path, closing a pool-poisoning gap where far-future transactions could bypass publish() via peer relay. Replay and sync verify() paths remain unchanged and are not consensus-breaking. Native Ed25519 verification is now handled via sodium-native, and cache and request-limiter configurations have been improved.

Networking and performance enhancements include WebSocket peer transport between nodes with connection rotation and peer prioritization, along with improved WebSocket logging. Block sync robustness prevents stale block backlog during synchronization. Chatroom SQL optimizations have been applied, and the transaction pool has been rewritten using Map with improved removal and indexing. Block and transaction metadata now persist and expose height and blockTimestamp.

Node operations and tooling have been modernized with installation scripts for Ubuntu/Debian and CentOS/RHEL 8–10, supporting Node.js 22/24/26, PostgreSQL handling, wget-based bootstrap, and improved prompts and logging. The fix_node.sh script has been updated for operator recovery flows. Config overrides are now available via CLI and JSON files with unsafe-key validation. Localnet scripts for start, stop, status, and drop have been added, along with a live scenario testing runner for testnet and localnet. Testnet bootstrapping helpers, default peer list maintenance, and population of missing config values from config.default.json at startup are included. Graceful shutdown and mem-table safety documentation has been provided.

Developer experience improvements feature structured logging with rotation, colored levels, and sync progress diagnostics. Contributing guidelines have been expanded with live test scenarios and reporting. Maintainer and agent workflow guidelines have been documented. Unit and API test coverage along with the developer testing workflow have been improved. The GitHub Wiki is no longer used as a documentation source, and the verifyOnLoading config option has been removed.

Operators should upgrade Node.js to 22.13.0 or newer before deploying. It is recommended to use the official install and repair scripts from this release tag. Operators should review config.default.json for new options such as wsNode, logging, and consensus activation heights. Nodes should be stopped gracefully using Ctrl+C rather than kill -9. After upgrade, operators should verify /api/node/status and peer connectivity over both HTTP and WebSocket.

Breaking changes

Node.js 18 is no longer supported, requiring an engine version of 22.13.0 or newer. Deprecated HTTP endpoints have been removed, including passphrase-bearing routes, unused chat helpers, /delegates/fee, /normalize, and related legacy handlers. The count field is now returned as a number across affected list endpoints. The withoutDirectTransfers filter has been deprecated in favor of includeDirectTransfers. The cryptography stack has been migrated from the sodium wrapper to native sodium-native bindings.