cryptofoundry

Contact cryptofoundry

Tell us what you want to build or automate.

Dev Guidelines & Docs

ADAMANT Docs & Schema: Top Accounts, Client WebSocket Events, and Consensus Visibility

dev-adamant-imFrom the foundry ↗

The ADAMANT documentation and schema repositories have been aligned with the current node API surface. All changes are additive and backward-compatible — no consensus fork or wire-format break. Live documentation is available at https://docs.adamant.im, with the OpenAPI bundle at https://schema.adamant.im.

Top Accounts API

GET /api/accounts/top is now part of the public contract. Ordering is deterministic: balance DESC, then address ASC. The endpoint supports limit and offset pagination, an optional isDelegate filter, response metadata (count), and limit=0 for count-only requests. The legacy topAccounts configuration switch has been removed — the endpoint is registered on every node.

Client WebSocket: newBlock and balances/change

The client Socket.IO interface gained opt-in compact newBlock events and field-level balances/change payloads, which can include balance, unconfirmedBalance, or both. Subscriptions are indexed by address, types, assetChatTypes, balances, and blocks. Delivery remains best-effort and non-durable: consumers must reconnect, re-subscribe, and reconcile critical state via REST. The OpenAPI package documents this under x-client-websocket with dedicated schemas in specification/websocket/.

Status Schedules and Delegate forged

Public status APIs now expose the effective consensus activation schedule and the full block-reward milestone schedule, including consensusCodeName, consensusSchedule.activationHeights, and milestoneSchedule (comprising offset, distance, and milestones). Delegate list and get responses now include lifetime forged as a base-10 integer string in base units. Next-forger projection uses the next block height at round boundaries. The schema also corrected producedlocks to producedblocks and completed query-parameter coverage for peers, queued and unconfirmed transactions, and delegate search and orderBy.

Blocks API Alignment

GET /api/blocks query semantics are now aligned with actual node behavior. numberOfTransactions=0 works correctly, and orderBy, amount filters, and offset-after-ordering are documented accurately. The schema adds full parameter coverage and generatorPublicKey on BlockInfoDto. Incorrect timestampMs examples were removed from the docs.

Operator Recovery: Mem-Table Checkpoints

Persisted rotating mem_* checkpoints are documented for crash recovery. The feature is controlled by loading.memCheckpoints.enabled and is on by default. The documentation covers SHA-256 verification, fail-closed restore, fallback to full deterministic rebuild, storage impact, and graceful shutdown behavior (SIGINT/SIGTERM → wait for Cleaned up successfully). Checkpoints serve as a local recovery cache; canonical blocks remain the source of truth.

Release Context

These updates target ADAMANT node v0.10.2. Downstream consumers — especially adamant-api-jsclient — should regenerate types from the updated OpenAPI bundle. Relevant pull requests span the docs, schema, and node repositories.