cryptofoundry

联系 cryptofoundry

告诉我们您想构建或自动化的内容。

adamant

ADAMANT Node v0.10.2

al-onyxprotocol来自铸造工坊 ↗

ADAMANT 区块链节点 v0.10.2 是一次面向节点运营者、代表、浏览器、消息应用及服务开发者的可靠性、恢复与 API 能力更新。它帮助节点从同步停滞和中途中断中恢复,新增更丰富的 REST 与 Socket.IO 数据访问,修复代表 API 回退,优化大型数据库查询,并更新依赖与运营指南。建议升级以提升可靠性、恢复时间、安全维护与 API 能力,但并非网络兼容性的强制要求。本次发布不引入共识分叉,也不改变区块或交易序列化、签名、代表排序、奖励、手续费、激活高度、时间槽定时或确定性重放。

API 更新包括新增顶级账户 API,支持确定性排序、分页、isDelegate 过滤、响应元数据以及仅计数请求。代表排名正确性已恢复,代表投票者 API 已修复,防止回退到所有账户,同时新增地址列表过滤。通过状态 API 暴露有效共识激活计划和完整区块奖励里程碑计划,提升了共识可见性。响应中新增代表锻造金额,下一锻造者预测在轮次边界处已稳定,区块过滤现在正确支持零交易查询。

客户端 WebSocket API 新增可选的紧凑 newBlock 事件,以及针对 balance、unconfirmedBalance 或两者的余额/变更事件。区块、交易和余额订阅现已建立索引,避免扫描无关客户端。受影响账户的读取在区块应用/回滚时进行批处理,发布失败与共识状态变更隔离。投递仍为尽力而为且非持久化,因此客户端应在重连后恢复订阅,并通过 REST 对关键状态进行对账。

协议与共识规则保持不变,但有效激活计划和当前活跃共识代号现已可通过公开状态 API 观察。下一锻造者修复仅纠正了轮次边界处此前不正确的公开 API 预测。本次发布不改变任何共识规则、激活高度、交易或区块字节、ID、签名、奖励、手续费、轮次结算或重放行为。

可靠性与恢复改进包括同步看门狗,可检测五分钟内无区块高度进展的同步运行,安全中止停滞的运行并允许自动恢复。PostgreSQL 拒绝现在通过区块验证和加载进行传播,而非静默挂起回调链。新增持久化内存表检查点,包含三个轮换的、经 SHA-256 验证的槽位,用于派生状态。恢复采用失败关闭策略,仅恢复通过所有检查的检查点,若验证失败则回退到完整的确定性重建。规范区块和确定性重放仍为唯一真实来源。

安全更新包括在当前主版本内更新依赖,并移除一个未使用的直接 npm 运行时依赖。新增一个窄范围的兼容 grunt 到 js-yaml 覆盖,将审计依赖图减少至零中等、高或严重发现。不引入任何签名、助记词、交易验证、节点握手或加密协议行为变更。

网络、数据库与性能改进包括用于确定性顶级账户查询的部分余额索引。区块生成器哈希索引已替换为复合 B-tree 索引,避免对未知生成器进行全表扫描。带索引的 Socket.IO 订阅和批处理的最终状态读取减少了不必要的客户端扫描和账户查询,轮换的检查点存储可更快地从不一致的派生状态中恢复。

面向节点运营与工具方面,持久化内存状态检查点默认启用,同时保留对无效或过期检查点的完整重建回退。优雅关闭流程已明确,需等待活跃处理排空并出现”Cleaned up successfully”消息后再重启。原生 pg-native 和 libpq Node ABI 重建路径已文档化,Node.js 要求仍为 22.13.0 或更高版本。

开发者体验改进扩展了同步恢复、检查点、账户、代表、区块、状态 API 和 Socket.IO 流程的测试覆盖。README 已重新组织,配套文档和 OpenAPI 变更已与更新后的 API 对齐。

升级到本版本的运营者应使用 Node.js 22.13.0 或更高版本并备份数据库。优雅停止节点,等待”Cleaned up successfully”消息出现后再部署 v0.10.2。首次启动将需要额外时间和磁盘空间以完成所有迁移、创建检查点存储并构建新索引。启动后,请验证节点状态、同步进度、实时区块处理以及您的服务所使用的任何 REST 或 Socket.IO 能力。

破坏性变更

v0.10.2 中没有协议、共识、线路格式或 API 合约的破坏性变更。新的 REST 字段和 Socket.IO 订阅为增量式且向后兼容。旧版 topAccounts 配置开关已移除,GET /api/accounts/top 端点现在在每个节点上一致注册。本次发布添加了仅向前的数据库迁移,意味着升级后的首次启动可能需要额外时间和磁盘空间来创建检查点存储以及账户/区块索引。