Node Sync

Compare public nodes without blindly trusting them

Vorliq node sync compares registry heartbeat data with the trusted public chain height, latest hash, signed snapshot hash, and signature verification status. It helps operators spot lag, stale heartbeats, unreachable diagnostics, and possible forks.

Synced

synced means the node is active, reports a valid chain, has the same height as the trusted public chain, and reports the same latest block hash.

Behind

behind means the node reports a valid chain but its height is lower than the trusted public chain. Operators should check heartbeat, update code, and wait for safe sync.

Ahead

ahead means the node reports a higher height than the trusted public chain. Vorliq does not automatically trust ahead nodes. A higher height can be a real new block, a local fork, a reporting bug, or unverified state until signed snapshot and audit paths agree.

Forked

forked means a node is active or recently seen but its latest hash does not match the trusted chain at the comparable position. Do not sync from a forked node without recovery checks.

Stale

stale means the last heartbeat is outside the active window. Restart heartbeat and confirm the public URL can reach HTTPS endpoints.

Unreachable or Unknown

unreachable means diagnostics could not be checked. unknown means the heartbeat is missing enough safe height, hash, or validity data to compare confidently.

Why signed snapshots and audit exports matter

Heartbeat data is a signal from a registered node. The trusted public chain is backed by signed snapshots and audit exports so operators can verify height, latest hash, chain export hash, and public metadata without exposing secrets. Ahead nodes should be treated as warnings until that verification path agrees.

Fix a stale node

sudo systemctl restart vorliq-heartbeat.service
curl -I https://node.example.org/api/health
node tools/node_doctor.js --base-url http://127.0.0.1:5000 --public-url https://node.example.org --trusted-node https://vorliq.org

Also check DNS, HTTPS certificates, backend service state, and the configured public node URL.

Recover a forked node safely

Do not manually edit chain.json, rewrite historical blocks, or change block hashes. First run verified bootstrap in dry-run mode. Only write chain data on a new node or after a deliberate backup and a clean verification report.

python3.12 tools/bootstrap_chain_from_public_node.py --trusted-node https://vorliq.org --data-dir ./blockchain/data
node tools/bootstrap_verify_node.js https://vorliq.org
node tools/node_doctor.js --base-url http://127.0.0.1:5000 --trusted-node https://vorliq.org

Network monitor

The network monitor turns sync comparison into ok, warning, or critical status. Stale old community nodes are warning-only by default, while active forks and trusted public node failures are critical.

Registry lifecycle metadata separates live network visibility from historical transparency. active, stale, and inactive nodes remain visible in lifecycle-aware views. archived and retired records are preserved for history but hidden from default live network views. Learn the safe flow in Node Lifecycle.

Public endpoints

Use GET https://vorliq.org/api/nodes/compare for public-safe comparison JSON and GET https://vorliq.org/api/nodes/monitor for monitor status and safe operator actions. Operators with the admin token can use GET /api/admin/nodes/compare and GET /api/admin/nodes/monitor for safe extra diagnostics. These endpoints do not return private keys, admin tokens, raw logs, server paths, raw IPs, or raw user agents.