ADAMANT Forging Pool v3.1.0は、プール運営者向けの推奨アップデートです。このリリースでは、報酬計算およびスケジュールされた支払い処理のバグ修正と堅牢性の強化が行われ、本番環境のプールをアップグレードする前に確認すべきいくつかの構造的変更が導入されています。
アップグレードの理由
最も重要な変更は、支払いの安全性、運営者のセキュリティ、および長期的な保守性の向上を目的としています。保留中の報酬は、支払い処理前に正規化されるようになり、投票者ごとの報酬進捗が生成されたブロックに対して永続化されるようになりました。リトライおよびクラッシュ時の処理パスでは、重複した報酬更新に対する耐性が向上しています。支払い処理、ブロック解析、ストア処理の各パスには、より焦点を絞ったテストが追加され、運用上の障害発生時のログおよび通知も明確になっています。
ストレージと移行
プールのストレージは、MongoDBベースになりました。このリリースには、scripts/migrate-lowdb-mongodb/ に配置された、旧式のLowDBベースのプールデータを移行するためのツールが含まれています。これには移行テスト、MongoDBインデックスのセットアップ、更新された設定リファレンス、およびREADME内の移行ガイドラインも含まれます。運営者は、既存のプールデータをバックアップし、コピー上で移行をテストした上で、本番環境の支払いをアップグレード済みプールに切り替える前に、保留中および受領済み報酬の合計を確認する必要があります。
運営者のセキュリティ
v3.1.0では、パスフレーズの暗号化サポートがオプションで追加されました。既存の平文パスフレーズ設定は引き続きサポートされますが、運営者は現在、委任者(delegate)のパスフレーズを暗号化し、支払いを有効にするときだけ実行中のプールをロック解除できるようになりました:
npm run adm-pool encrypt
npm run adm-pool unlock
npm run adm-pool lock
npm run adm-pool status
制御インターフェースは、ローカルの所有者専用Unixソケットを使用します。パスフレーズが暗号化されている場合、プールはロックされた状態で起動できます。ブロック同期、ダッシュボード、パブリックAPIは利用可能のまま維持されますが、ロック解除されるまで支払いおよびADM通知は一時停止されたままになります。
監視とダッシュボード
このリリースでは、秘密情報なしで外部監視可能な/api/healthエンドポイントが追加され、ダッシュボードには支払いロック状態の表示が追加されました。アドレスまたは名前による投票者およびトランザクションのフィルタリングが現在サポートされており、利用可能な場合はアドレスの下に委任者および投票者の名前が表示されます。数値のソート修正、エクスプローラーリンクの改善、ダッシュボードレイアウトの改良も含まれます。
実行時およびアップグレードに関する注意点
実行環境のベースラインは、Node.js 22.13.0+およびnpm 10+に更新されました。README、CONTRIBUTING、リポジトリのガイドラインも、セットアップ、移行、監視、秘密情報の安全確保、および貢献フローに関して更新されています。
アップグレード前に、設定ファイルおよび報酬履歴をバックアップし、config.default.jsonc内のMongoDB設定を確認した上で、データのコピーを使用してLowDBからMongoDBへの移行をテストしてください。移行後は、保留中および受領済み報酬の合計を確認し、支払いおよびメンテナンス用ウォレットの設定を見直し、ダッシュボードをビルドしてスモークテストを実施し、/api/healthを確認してください。起動ログおよびプールのステータスを確認した後でのみ、支払いをロック解除してください。
リリースおよびリポジトリ:github.com/Adamant-im/pool