cryptofoundry

联系 cryptofoundry

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

adamant

ADAMANT Node v0.10.0

al-onyxprotocol来自铸造工坊 ↗

ADAMANT 区块链节点 v0.10.0 是面向运营者、代表和客户端开发者的重大维护与功能更新。它改进了面向信使的 API,新增 WebSocket 节点传输,增强诊断与安装工具,更新依赖项,并在 P2P 边界强化交易准入机制。cryptofoundry 建议代表和节点运行者升级以提升可靠性、安全性和与新客户端的兼容性。该版本不会为已同步的网络引入强制性的共识分叉,因为基于高度的协议行为仍由配置驱动,并在激活高度前保持向后兼容。

该版本为交易引入了带共识验证和响应处理的 timestampMs 字段。新增 ?returnUnconfirmed=1 标志,用于交易、聊天、状态和聊天室,并添加了更多明确的未确认字段。includeDirectTransfers 参数取代了已弃用的 withoutDirectTransfers,适用于聊天和聊天室。默认排序现使用 timestamp:desc,优先使用 timestampMs 进行基于时间戳的排序。查询解析已修复,支持事务 API 查询中的括号式 types[] 过滤器。过去时间戳的准入现仅限于聊天和状态交易,而转账允许更宽的离线钱包时间窗口。出于安全考虑,已禁用对锻造列表端点的公共访问。

为 fairSystem 和 spaceship 添加了带高度控制行为的共识激活高度配置。timestampMs 协议规则得以保留,维持 ADAMANT-epoch 毫秒、派生的 timestamp 以及激活边界测试。现有链可继续确定性重放,但建议运营者在未来的激活里程碑前完成升级。

P2P 时间戳准入强化确保了公共 API 使用的未来和过去时间戳检查现在也在 P2P 广播路径上强制执行,填补了远未来交易可能通过节点中继绕过 publish() 的池污染漏洞。重放和同步的 verify() 路径保持不变,不构成共识破坏。原生 Ed25519 验证现通过 sodium-native 处理,缓存和请求限制配置也已优化。

网络与性能改进包括节点间的 WebSocket 节点传输,支持连接轮换和节点优先级,以及改进的 WebSocket 日志记录。区块同步健壮性可防止同步期间出现陈旧区块积压。已应用聊天室 SQL 优化,交易池已使用 Map 重写,提升删除和索引性能。区块和交易元数据现持久化并暴露 height 和 blockTimestamp。

节点操作与工具已现代化,新增适用于 Ubuntu/Debian 和 CentOS/RHEL 8–10 的安装脚本,支持 Node.js 22/24/26、PostgreSQL 处理、基于 wget 的引导、改进的提示和日志记录。fix_node.sh 脚本已更新,用于支持运营者恢复流程。现可通过 CLI 和 JSON 文件进行配置覆盖,并包含不安全密钥验证。新增用于 start、stop、status 和 drop 的本地网络脚本,以及用于测试网和本地网络的实时场景测试运行器。包含测试网引导辅助工具、默认节点列表维护,以及在启动时从 config.default.json 填充缺失配置值。已提供优雅关闭和内存表安全性的文档。

开发者体验改进包括带轮转的结构化日志、彩色日志级别和同步进度诊断。贡献指南已扩展,包含实时测试场景和报告说明。维护者和代理工作流程指南已文档化。单元测试和 API 测试覆盖率以及开发者测试流程均得到改进。GitHub Wiki 不再作为文档来源,verifyOnLoading 配置选项已被移除。

运营者在部署前应将 Node.js 升级至 22.13.0 或更高版本。建议使用此发布版本中的官方安装和修复脚本。运营者应查阅 config.default.json 以了解新选项,如 wsNode、日志记录和共识激活高度。应使用 Ctrl+C 而非 kill -9 优雅地停止节点。升级后,运营者应验证 /api/node/status 以及通过 HTTP 和 WebSocket 的节点连接性。

破坏性变更

Node.js 18 不再受支持,需使用 22.13.0 或更高版本的引擎。已弃用的 HTTP 端点已被移除,包括包含助记词的路由、未使用的聊天辅助工具、/delegates/fee、/normalize 及相关旧版处理器。count 字段现以数字形式在受影响的列表端点中返回。withoutDirectTransfers 过滤器已弃用,由 includeDirectTransfers 取代。密码学栈已从 sodium 包装器迁移到原生 sodium-native 绑定。