diff --git a/AGENTS.md b/AGENTS.md index 0b5a38e..502ecae 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,6 +8,7 @@ Choose the entry that matches the requested task before installing dependencies | Read documentation from Python through MCP | [Python MCP example](examples/mcp_docs.py) and the README section “Read documentation from a Python agent”; `--query` searches before reading in the selected language. | | Check a chain's identity with Python | [Standard-library public reader](examples/public_chain.py) and the README section “Python standard-library entry”. | | Check chain identity and read the latest block number | [Public TypeScript reader](src/public-read-cli.ts) and the README section “Start with a keyless read”. | +| Inspect a saved BSC receipt and fixed-block logs offline | [Pinned BSC event sample](https://gist.github.com/gjwang/5a8f80f5e441a5701e2e01ae73f187bf/0f680ce849c78375537fce5ed1ce9e447fe2f341) and the README section “Check a saved BSC receipt and its logs”; Node.js 22+, no account or key. | | Create or reuse an account/key, then call Data API | [Full onboarding example](src/index.ts); read the wallet, SIWE and key-provisioning steps in the README first. | Use [README.md](README.md) or [README.zh.md](README.zh.md) for prerequisites, commands and each example's request limits. The documentation skill owns the documentation-reading instructions; follow its source and citation rules rather than treating this routing table as API documentation. diff --git a/README.md b/README.md index de95fa6..a8bbe1d 100644 --- a/README.md +++ b/README.md @@ -108,6 +108,20 @@ Beyond the keyless read, the full example covers: 4. **JSON-RPC execution**: Reads the active chain directory from `GET https://api.blockvectra.com/v1/chains`, selects the unique `robinhood_mainnet` entry with numeric chain ID `4663`, verifies `eth_chainId` on that endpoint, then executes `eth_blockNumber` using the API key. 5. **Data API query**: Calls the read-only dataset freshness endpoint (`GET /v1/data/{chain}/status/freshness`) defined in the OpenAPI specification. +## Check a saved BSC receipt and its logs + +For a concrete event check, start with the [pinned BSC receipt/log sample](https://gist.github.com/gjwang/5a8f80f5e441a5701e2e01ae73f187bf/0f680ce849c78375537fce5ed1ce9e447fe2f341). Download its linked ZIP, extract it, and run with Node.js 22+: + +```sh +node verify-sample.mjs observed-sample.json +``` + +No npm installation, account or key is needed. After the download, the checker runs offline. Expected output: `PASS 1 receipt event matched among 4 returned logs`. + +The saved observation is from **2026-10-25, 13:26:17–13:26:21 UTC**, BSC mainnet (`56`), block `129476271`. It compares one receipt event with the fixed-block logs across eight fields. It checks consistency in that saved observation, not current availability, independent canonicality or complete history. + +The same bundle includes `bsc-compare-provider.mjs` for an optional comparison using your own BSC endpoint. Follow its private environment setup; it makes at most three serial RPC requests with no retries or broadcasts and may consume provider quota. These diagnostic requests carry `BlockVectraQA/1` and are separate from customer traffic. The comparison client was tested with synthetic transport; those tests are separate from the original saved live responses. + ## URL-only clients: AgentOS BlockVectra already supports [JSON-RPC authentication with a key in the URL path](https://docs.blockvectra.com/en/guides/robinhood-chain/#network-information-and-endpoints). AgentOS can use it without a header-auth patch or a local proxy. Supply `BLOCKVECTRA_API_KEY` privately in the AgentOS process environment, then set: diff --git a/README.zh.md b/README.zh.md index cb111a3..4daa3d2 100644 --- a/README.zh.md +++ b/README.zh.md @@ -108,6 +108,20 @@ for network, expected_id, endpoint in ( 4. **JSON-RPC 调用**:从 `GET https://api.blockvectra.com/v1/chains` 获取当前链目录及策略,精确选择唯一且数字链 ID 为 `4663` 的 `robinhood_mainnet`,先验证该端点的 `eth_chainId`,再使用 API Key 调用 `eth_blockNumber`。 5. **Data API 查询**:根据 OpenAPI 规范调用只读的数据新鲜度接口(`GET /v1/data/{chain}/status/freshness`)。 +## 核对已保存的 BSC 收据与日志 + +想核对一个具体事件,可以从[固定版本的 BSC 收据/日志样例](https://gist.github.com/gjwang/5a8f80f5e441a5701e2e01ae73f187bf/0f680ce849c78375537fce5ed1ce9e447fe2f341)开始。下载页面中的 ZIP、解压后,用 Node.js 22+ 运行: + +```sh +node verify-sample.mjs observed-sample.json +``` + +无需安装 npm 依赖、注册或 key。下载完成后,核验过程不联网。预期输出:`PASS 1 receipt event matched among 4 returned logs`。 + +原观测时间是 **2026-10-25 13:26:17–13:26:21 UTC**,BSC 主网(`56`),区块 `129476271`。核验器按八个字段比较一个收据事件与固定区块日志,只证明这份存档内部一致,不证明当前可用性、独立 canonical 性或完整历史。 + +同一压缩包还包含 `bsc-compare-provider.mjs`,可选用自己的 BSC 端点进行对比。请按其说明私密配置环境变量;最多串行发送三次 RPC 请求,无重试或广播,可能消耗供应商额度。这些诊断请求带 `BlockVectraQA/1`,与客户流量分开统计。对比客户端使用合成传输测试,与原始保存的真实响应分列。 + ## 只接受 URL 的客户端:AgentOS BlockVectra 已支持 [JSON-RPC URL 路径带 key 鉴权](https://docs.blockvectra.com/en/guides/robinhood-chain/#network-information-and-endpoints)。AgentOS 无需修改 header 鉴权代码或运行本地代理。请先通过私密方式为 AgentOS 进程环境提供 `BLOCKVECTRA_API_KEY`,再设置: