ADAMANT Explorer v2.0.0は、v1.3.0以来の初の安定版リリースです。既存の公開ページURLやディープリンクの互換性を維持しつつ、Explorerのフロントエンド、バックエンド、ライブ監視、セキュリティ境界、依存関係、テスト、および運用ドキュメントを現代的な仕様に刷新しました。
フロントエンドはVue 3、Pinia、Vue Router 5、Vite 8で再構築され、従来のAngularJS、Bootstrap 3、Webpackスタックから移行しました。すべての公開Explorerページは、デスクトップ、タブレット、モバイルに対応したレスポンシブレイアウトを採用し、ライト/ダークテーマの保持、アクセシブルなコントロール、モバイル用トランザクションカード、安全なツールチップ、コピー時のフィードバック改善を実現しています。トランザクションの文脈に応じたセマンティクスとして、送金、投票および投票取り消し、DApp操作、取引所アクティビティ、ウェルカムボーナスに関する表示が追加されました。
バックエンドでは、ADAMANT Nodeへのアクセスをadamant-api 3.1.0ベースで再構築し、準備完了ゲート、フェイルオーバー、境界付きページネーション、正規化されたエラー処理、リクエスト層とハンドラー層の分離を実装しました。Explorer UIに必要な12の同一オリジンルートは維持され、新たにGET /api/networkHealthルートが追加されました。厳格なルートおよびクエリ検証、決定論的なトランザクション順序付け、送金フィルタリングの修正、トップアカウントのページネーション、ライブ確認、およびADMのフル精度フォーマットが導入されています。Redisはコア提供においてオプションとなりましたが、堅牢なAPIキャッシュや、ローリングブロックおよびピア統計の機能は維持されています。
ライブ監視機能は、ヘッダー、デリゲートモニター、ネットワークモニター、およびActivity Graph Socket.IOのライフサイクル全体で安定化され、シリアル化されたポーリングと回数制限付きの再試行が実装されました。ブロック駆動のページ更新と、コンパクトなWebSocketブロック通知のための境界付きREST確認機能が追加されています。デリゲートスケジュール、フォージング状態、報酬、手数料、ピア統計、バージョン順序付け、ラウンド境界の動作がすべて改善されました。Freegeoipの統合はオプションのGeoJSピア地理位置情報に置き換えられ、同一オリジンで検証済み、キャッシュ可能、かつレート制限されたOpenStreetMapタイルプロキシが導入されました。
セキュリティと信頼性の向上として、ワイルドカードCORSの削除およびサポートされていない16のレガシーExplorer APIエンドポイントの廃止を行いました。プロキシ対応のAPIレート制限、検証済み信頼プロキシ、セキュリティヘッダー、制約付きCSP、安定したエラー処理、明示的なHTTPタイムアウトが追加されています。リクエストログはクエリ文字列を除外することで最小化され、信頼できないノード、ピア、プロキシ、Redis、地理位置情報、ブラウザオリジンのデータはすべて検証されます。リポジトリの脅威モデル、セキュリティおよび信頼性のレビュー、公開境界とライブモニター状態に対する広範なユニットテストが追加されました。
サポートされるランタイムはNode.js ^22.18.0 || >=24.11.0に更新されました。Express、Redis、Socket.IO、Axios、Vue、Vite、Pinia、Vue Router、ESLint、Mocha、Chai、Supertestおよびその他の依存関係も更新されています。レガシーなGrunt、Protractor、Cucumber、Jenkins、Travis、Webpack/Babel、および廃止されたMarket Watcherや取引所統合は削除されました。43のNode専用ユニットテストモジュールが追加され、ライブTestnetフィクスチャが更新され、API、セキュリティ、スケジューリング、データ整形、フロントエンドユーティリティのテストカバレッジが拡大されました。README.mdは、最新のコントリビューターおよびAIエージェント向けの運用ガイドに刷新されました。
検証プロセスでは、ESLintおよびPrettierチェックの合格、6,337モジュールを変換するプロダクションビルド、226テストのユニットスイート、リリースソースツリー上での41テストからなるライブTestnet APIスイート、脆弱性0を報告する依存関係監査、およびコンソールエラーや水平方向のオーバーフローなしにデスクトップ、タブレット、モバイル解像度で13ルートをカバーするブラウザスモークチェックを実施しました。
破壊的変更
Node.jsは^22.18.0 || >=24.11.0へアップグレードする必要があります。デプロイメント設定は新しいconfig.default.jsoncから作成し、nodes_adm、trustedProxies、redis、geoLocation、exchangeRates、log_levelを確認してください。ADAMANT Node v0.10.2以降が必須であり、独立して運用される複数のHTTPSノードの使用が推奨されます。削除されたFreegeoip統合は、オプションのGeoJS設定に置き換えてください。地理位置情報を無効にしても、地図や国旗は表示されませんが、ピアおよびホスト名データは利用可能です。削除されたExplorer APIルートを使用している外部コンシューマーはadamant-api-jsclientへ移行し、運用監視にはGET /api/networkHealthを使用してください。同一オリジンの/osm-tiles/パスは、リバースプロキシおよびファイアウォールルールで許可する必要があります。無視されるpublic/バンドルは、デプロイ時にnpm run buildでビルドしてください。開発時は、バックエンドとViteスタックを組み合わせたnpm run dev、またはViteのみのnpm run dev:frontendを使用してください。既存のExplorerページルートとディープリンクは互換性を維持しており、Redisは推奨されますが、コアHTTPおよび静的コンテンツの提供には必須ではなくなりました。