BlockReq
返回全部文章

Rpc Tutorials

Agave 六周发版盯盘:RPC 兼容自检

节点就绪后把 endpoint 填进环境变量即可开跑:对齐 Anza 六周稳定发版节奏,盯 tip/slot + 关键 program/log 差,一页兼容清单(节点能力 / 订阅健康)。注册每月免费 3M 请求。

BlockReq Engineering2026年9月11日5 分钟阅读

Agave 六周发版盯盘:RPC 兼容自检

Anza 以 六周稳定发版 节奏推进 Agave:RPC 提供方与应用侧按 tip/slot 对齐发版窗,并对关键 program / log 做 pre/post 差分。本篇先把 一页兼容清单(节点能力 / 订阅健康) 配方预埋好——浏览器侧留 SOLANA_HTTPS / SOLANA_WSS 占位,节点就绪后把 endpoint 填进环境变量即可开跑

公共端点开跑 · blockreq.com 注册每月免费 3M 请求

用途Endpoint(占位)
HTTPSprocess.env.SOLANA_HTTPS(节点就绪后填入)
WSSprocess.env.SOLANA_WSS(节点就绪后填入)
私有末尾 public{API_KEY}(Key 放本地)

链:Solana / Agave。配方走 tip/slot 探针 → 关键 program logsSubscribe → pre/post 差分卡 → 兼容清单。浏览器 demo 先展示 UI + sample 行,endpoint 一就绪即换真值续听。公开端点 · 套餐 · 注册

热源:anza_xyz 六周发版推文。与 Changelog filter 订阅同构叠层:本篇落在发版窗 tip/slot + 兼容自检;filter 线见 Changelog RPC filter 订阅

1. Hook:六周发版怎么盯

盘面语感链上信号你盯什么
发版窗对齐tip / slot 越过发版锚点tipSlot / releaseTag
program 差关键 program log pre/postprogramDiff / logDelta
订阅健康logsSubscribe 心跳 + 延迟subLag / lastPushTs
节点换端env 换真 WSS 即续听SOLANA_WSS 一填开跑

语感:六周一拍,先把 tip/slot 与关键 program 差分预埋成一页清单——发版窗一开,兼容自检直接刷卡。

2. 事件:tip/slot + program/log 差分

环境变量先放 SOLANA_HTTPS / SOLANA_WSS / WATCH_PROGRAMS / RELEASE_ANCHOR_SLOT / COMPAT_CHECKS。节点就绪后只改 endpoint,探针与订阅体原样沿用。

Step A · tip/slot 探针

{
  "jsonrpc": "2.0", "id": 1, "method": "getSlot",
  "params": [{ "commitment": "confirmed" }]
}
  • HTTPS 轮询 getSlot / getLatestBlockhash → 写入 tipSlot / tipHash
  • RELEASE_ANCHOR_SLOT = 发版窗锚点(可编辑);tipSlot ≥ anchor → 进入 post 窗,切换差分基线。

Step B · 关键 program logsSubscribe

{
  "jsonrpc": "2.0", "id": 2, "method": "logsSubscribe",
  "params": [
    { "mentions": ["WATCH_PROGRAMS"] },
    { "commitment": "confirmed" }
  ]
}
  • mentions = process.env.WATCH_PROGRAMS(可编辑关键 program 表)。
  • pre 窗累计 log 指纹;post 窗同指纹对照 → programDiff / logDelta
  • HTTPS getTransactionencoding: "jsonParsed")补齐指令名与账户差分。

Step C · 一页兼容清单

COMPAT_CHECKS = [
  nodeCapability   → getVersion / getHealth shape OK
  tipAligned       → tipSlot tracked vs RELEASE_ANCHOR_SLOT
  subHealthy       → logsSubscribe lag within budget
  programDiffReady → pre/post fingerprints written
]
hit = all checks green  →  write compatState

兼容卡字段:

{ pad: "agave-compat", releaseTag, tipSlot, programDiff, subLag, checks, ts }

releaseTag / tipSlot 去重;滑动窗合并同窗重复推送。

3. 浏览器 demo

浏览器连 SOLANA_WSS 占位,填 WATCH_PROGRAMS + RELEASE_ANCHOR_SLOT + COMPAT_CHECKS,点 Start:UI 先刷 sample tip/slot 与 pre/post 差分行,兼容清单并排;节点就绪后换真 endpoint,同一套探针直接续听。

:::pages-demo https://blockreq.com/demos1/anza-agave-rpc-compat-watch/zh/ title: Agave 6-week RPC compat watch height: 520 :::

env  → SOLANA_HTTPS · SOLANA_WSS · WATCH_PROGRAMS · RELEASE_ANCHOR_SLOT · COMPAT_CHECKS
WSS  → process.env.SOLANA_WSS
HTTPS→ process.env.SOLANA_HTTPS

路径:/demos1/anza-agave-rpc-compat-watch/zh/ · /demos1/anza-agave-rpc-compat-watch/en/。换 keyed:WSS 末尾 public{API_KEY}

开跑配额:blockreq.com 注册每月免费 3M 请求

4. 告警节奏

  1. tip/slot 越过锚点 → 切换 post 窗,出站 Agave release · tag=… · tip=…
  2. program/log 差分就绪 → 叠 programDiff 色块。
  3. 兼容清单全绿 → 出站 compat OK · checks=… · lag=…
  4. 去重 → 同 releaseTag / tipSlot 只推一次。

断线后重连并重新 logsSubscribe;空窗用 HTTPS getSlot + getSignaturesForAddress + getTransaction 按 slot 段回补。POST → process.env.SOLANA_HTTPS

5. 小结 + CTA

  1. 粒度:六周盯盘 = tip/slot 对齐 + 关键 program/log 差分 + 兼容清单。
  2. 配方SOLANA_WSS + WATCH_PROGRAMS + RELEASE_ANCHOR_SLOT + COMPAT_CHECKS → 兼容卡。
  3. 可跑:浏览器预埋占位 + sample 行;节点就绪后把 endpoint 填进环境变量即可开跑
  4. 开跑公开端点 + blockreq.com 注册每月免费 3M 请求

下一步:固化发版锚点表 → Webhook → 与 Changelog filter 订阅叠层对照。文档 · 定价 · 注册