@valve-tech/chain-source 0.11.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,34 @@ this file.
6
6
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
7
7
  and this project adheres to [Semantic Versioning](https://semver.org/).
8
8
 
9
+ ## [0.12.0] — 2026-05-11
10
+
11
+ ### Added
12
+
13
+ - `ChainSource.getBlockByHash(hash)` — on-demand fetch of a block by
14
+ its hash. Companion to `getBlock(tag)`, but returns the block at
15
+ the hash even if it's no longer canonical. Required for any
16
+ consumer that walks a reorged-away branch via parentHash chains
17
+ (`@valve-tech/gas-oracle`'s reorg-side backfill in v0.12.0 uses
18
+ it). `safeRequest`-shaped — returns `null` on transport error or
19
+ if the upstream no longer carries the hash (deep reorg, pruned
20
+ archive).
21
+ - `fetchBlockByHash(client, hash, onError?)` — top-level transport
22
+ helper for direct use (mirrors `fetchBlock`). Exported from the
23
+ package root for replay harnesses and tests that bypass the
24
+ full source.
25
+
26
+ ## [0.11.2] — 2026-05-11
27
+
28
+ ### Notes
29
+
30
+ - Synchronized release — no changes to this package. Republished at
31
+ 0.11.2 alongside the rest of the toolkit; the substantive fix is
32
+ in `@valve-tech/tx-tracker` (posture-consistency follow-up to
33
+ v0.11.1 — two additional strict-null read sites on persisted
34
+ `TxStatus` fields tightened defensively). See
35
+ `@valve-tech/tx-tracker`'s CHANGELOG for details.
36
+
9
37
  ## [0.11.1] — 2026-05-11
10
38
 
11
39
  ### Notes
package/dist/index.d.ts CHANGED
@@ -28,6 +28,6 @@ export type { ChainSource, CreateChainSourceOptions } from './source.js';
28
28
  export { Subscriptions } from './subscriptions.js';
29
29
  export { normalizeMempool } from './mempool.js';
30
30
  export { probeCapabilities } from './capabilities.js';
31
- export { safeRequest, fetchBlock, fetchHeadBlockNumber, fetchFeeHistory, fetchTxPool, fetchReceipt, fetchTransaction, zeroHash, } from './transport.js';
31
+ export { safeRequest, fetchBlock, fetchBlockByHash, fetchHeadBlockNumber, fetchFeeHistory, fetchTxPool, fetchReceipt, fetchTransaction, zeroHash, } from './transport.js';
32
32
  export type { BlockResult, Capabilities, EventSource, FeeHistoryResult, NormalizedMempool, PollOptions, RawTx, TransactionReceipt, TxPoolContent, } from './types.js';
33
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,YAAY,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EACL,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,QAAQ,GACT,MAAM,gBAAgB,CAAA;AAEvB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,kBAAkB,EAClB,aAAa,GACd,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,YAAY,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EACL,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,QAAQ,GACT,MAAM,gBAAgB,CAAA;AAEvB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,kBAAkB,EAClB,aAAa,GACd,MAAM,YAAY,CAAA"}
package/dist/index.js CHANGED
@@ -27,5 +27,5 @@ export { createChainSource } from './source.js';
27
27
  export { Subscriptions } from './subscriptions.js';
28
28
  export { normalizeMempool } from './mempool.js';
29
29
  export { probeCapabilities } from './capabilities.js';
30
- export { safeRequest, fetchBlock, fetchHeadBlockNumber, fetchFeeHistory, fetchTxPool, fetchReceipt, fetchTransaction, zeroHash, } from './transport.js';
30
+ export { safeRequest, fetchBlock, fetchBlockByHash, fetchHeadBlockNumber, fetchFeeHistory, fetchTxPool, fetchReceipt, fetchTransaction, zeroHash, } from './transport.js';
31
31
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EACL,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,QAAQ,GACT,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EACL,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,QAAQ,GACT,MAAM,gBAAgB,CAAA"}
package/dist/source.d.ts CHANGED
@@ -101,6 +101,15 @@ export interface ChainSource {
101
101
  subscribeMempool: (cb: (snapshot: NormalizedMempool) => void) => () => void;
102
102
  /** On-demand: fetch a single block (full transactions). */
103
103
  getBlock: (tag: 'latest' | bigint) => Promise<BlockResult | null>;
104
+ /**
105
+ * On-demand: fetch a block by its hash (full transactions). Used by
106
+ * consumers that need to walk a reorged-away branch — `getBlock`
107
+ * by number returns whatever block is now canonical at that height,
108
+ * which is the wrong answer when the goal is "the block that was
109
+ * once at this hash." Returns `null` on transport error or if the
110
+ * upstream no longer carries the hash (deep reorg, pruned archive).
111
+ */
112
+ getBlockByHash: (hash: string) => Promise<BlockResult | null>;
104
113
  /** On-demand: fee history. */
105
114
  getFeeHistory: (blockCount: number, percentiles: number[]) => Promise<FeeHistoryResult | null>;
106
115
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAaxC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,kBAAkB,EACnB,MAAM,YAAY,CAAA;AAoBnB,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,MAAM,EAAE,YAAY,CAAA;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,uCAAuC;IACvC,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,+EAA+E;IAC/E,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB;;;;;;;;;;OAUG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,mEAAmE;IACnE,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IACjE,oEAAoE;IACpE,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IAC3E,2DAA2D;IAC3D,QAAQ,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,KAAK,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACjE,8BAA8B;IAC9B,aAAa,EAAE,CACb,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,KAClB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IACrC;;;;;OAKG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAA;IAC3D,qCAAqC;IACrC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;IAChE,4EAA4E;IAC5E,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;IACvD,yCAAyC;IACzC,YAAY,EAAE,MAAM,YAAY,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,wBAAwB,KAChC,WAgUF,CAAA"}
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAcxC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,kBAAkB,EACnB,MAAM,YAAY,CAAA;AAoBnB,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,MAAM,EAAE,YAAY,CAAA;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,uCAAuC;IACvC,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,+EAA+E;IAC/E,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB;;;;;;;;;;OAUG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,mEAAmE;IACnE,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IACjE,oEAAoE;IACpE,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,KAAK,MAAM,IAAI,CAAA;IAC3E,2DAA2D;IAC3D,QAAQ,EAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,KAAK,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACjE;;;;;;;OAOG;IACH,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IAC7D,8BAA8B;IAC9B,aAAa,EAAE,CACb,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,KAClB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IACrC;;;;;OAKG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAA;IAC3D,qCAAqC;IACrC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;IAChE,4EAA4E;IAC5E,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;IACvD,yCAAyC;IACzC,YAAY,EAAE,MAAM,YAAY,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,wBAAwB,KAChC,WAmUF,CAAA"}
package/dist/source.js CHANGED
@@ -48,7 +48,7 @@
48
48
  import { probeCapabilities } from './capabilities.js';
49
49
  import { normalizeMempool } from './mempool.js';
50
50
  import { Subscriptions } from './subscriptions.js';
51
- import { fetchBlock, fetchFeeHistory, fetchHeadBlockNumber, fetchReceipt, fetchTransaction, fetchTxPool, } from './transport.js';
51
+ import { fetchBlock, fetchBlockByHash, fetchFeeHistory, fetchHeadBlockNumber, fetchReceipt, fetchTransaction, fetchTxPool, } from './transport.js';
52
52
  const DEFAULT_POLL_INTERVAL_MS = 10000;
53
53
  /**
54
54
  * Conservative capability default returned by `capabilities()` before
@@ -356,6 +356,7 @@ export const createChainSource = (options) => {
356
356
  subscribeBlocks: (cb) => blockSubs.subscribe(cb),
357
357
  subscribeMempool: (cb) => mempoolSubs.subscribe(cb),
358
358
  getBlock: (tag) => fetchBlock(options.client, tag, errSink('eth_getBlockByNumber')),
359
+ getBlockByHash: (hash) => fetchBlockByHash(options.client, hash, errSink('eth_getBlockByHash')),
359
360
  getFeeHistory: (blockCount, percentiles) => fetchFeeHistory(options.client, blockCount, percentiles, errSink('eth_feeHistory')),
360
361
  getMempoolSnapshot: async () => {
361
362
  const txPool = await fetchTxPool(options.client, errSink('txpool_content'));
@@ -1 +1 @@
1
- {"version":3,"file":"source.js","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,20 @@ export declare const fetchHeadBlockNumber: (client: PublicClient, onError?: (err
56
56
  * numeric fields untouched) or `null` if the upstream failed.
57
57
  */
58
58
  export declare const fetchBlock: (client: PublicClient, tag: "latest" | bigint, onError?: (err: unknown) => void) => Promise<BlockResult | null>;
59
+ /**
60
+ * Fetch a block by its hash (full transactions). Companion to
61
+ * `fetchBlock(tag)` — the by-hash variant is needed when walking
62
+ * a reorged-away branch (`parentHash` → `parentHash`) past blocks
63
+ * that have been replaced at their canonical heights. `eth_get-
64
+ * BlockByHash` returns the block at the hash even if it's no
65
+ * longer canonical; the by-number lookup at the same height would
66
+ * instead return whatever canonical block lives there now, which
67
+ * is the wrong answer for ring backfill.
68
+ *
69
+ * Returns `null` on RPC failure (transport error, gated method,
70
+ * not-found). `safeRequest`-shaped — never throws.
71
+ */
72
+ export declare const fetchBlockByHash: (client: PublicClient, hash: string, onError?: (err: unknown) => void) => Promise<BlockResult | null>;
59
73
  /**
60
74
  * Fetch fee history. `blockCount` is hex-encoded per the spec; the
61
75
  * latest block is the implicit upper bound. `percentiles` is passed
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,KAAK,EACL,kBAAkB,EAClB,aAAa,EACd,MAAM,YAAY,CAAA;AAEnB,uEAAuE;AACvE,eAAO,MAAM,QAAQ,QAAyB,CAAA;AAE9C;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAU,CAAC,EACjC,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,QAAQ,OAAO,EAAE,EACjB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,CAAC,GAAG,IAAI,CAWlB,CAAA;AAKD;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,YAAY,EACpB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,MAAM,GAAG,IAAI,CAQvB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,QAAQ,YAAY,EACpB,KAAK,QAAQ,GAAG,MAAM,EACtB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,WAAW,GAAG,IAAI,CAM1B,CAAA;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,YAAY,EACpB,YAAY,MAAM,EAClB,aAAa,MAAM,EAAE,EACrB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAM/B,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,YAAY,EACpB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,aAAa,GAAG,IAAI,CACoC,CAAA;AAEnE;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,YAAY,EACpB,MAAM,MAAM,EACZ,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAMjC,CAAA;AAEH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,YAAY,EACpB,MAAM,MAAM,EACZ,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,KAAK,GAAG,IAAI,CACkD,CAAA"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,KAAK,EACL,kBAAkB,EAClB,aAAa,EACd,MAAM,YAAY,CAAA;AAEnB,uEAAuE;AACvE,eAAO,MAAM,QAAQ,QAAyB,CAAA;AAE9C;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAU,CAAC,EACjC,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,QAAQ,OAAO,EAAE,EACjB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,CAAC,GAAG,IAAI,CAWlB,CAAA;AAKD;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,YAAY,EACpB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,MAAM,GAAG,IAAI,CAQvB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,QAAQ,YAAY,EACpB,KAAK,QAAQ,GAAG,MAAM,EACtB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,WAAW,GAAG,IAAI,CAM1B,CAAA;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,YAAY,EACpB,MAAM,MAAM,EACZ,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,WAAW,GAAG,IAAI,CAM1B,CAAA;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,YAAY,EACpB,YAAY,MAAM,EAClB,aAAa,MAAM,EAAE,EACrB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAM/B,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,YAAY,EACpB,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,aAAa,GAAG,IAAI,CACoC,CAAA;AAEnE;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,YAAY,EACpB,MAAM,MAAM,EACZ,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAMjC,CAAA;AAEH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,YAAY,EACpB,MAAM,MAAM,EACZ,UAAU,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAC/B,OAAO,CAAC,KAAK,GAAG,IAAI,CACkD,CAAA"}
package/dist/transport.js CHANGED
@@ -78,6 +78,20 @@ export const fetchHeadBlockNumber = async (client, onError) => {
78
78
  * numeric fields untouched) or `null` if the upstream failed.
79
79
  */
80
80
  export const fetchBlock = async (client, tag, onError) => safeRequest(client, 'eth_getBlockByNumber', [blockTagOf(tag), true], onError);
81
+ /**
82
+ * Fetch a block by its hash (full transactions). Companion to
83
+ * `fetchBlock(tag)` — the by-hash variant is needed when walking
84
+ * a reorged-away branch (`parentHash` → `parentHash`) past blocks
85
+ * that have been replaced at their canonical heights. `eth_get-
86
+ * BlockByHash` returns the block at the hash even if it's no
87
+ * longer canonical; the by-number lookup at the same height would
88
+ * instead return whatever canonical block lives there now, which
89
+ * is the wrong answer for ring backfill.
90
+ *
91
+ * Returns `null` on RPC failure (transport error, gated method,
92
+ * not-found). `safeRequest`-shaped — never throws.
93
+ */
94
+ export const fetchBlockByHash = async (client, hash, onError) => safeRequest(client, 'eth_getBlockByHash', [hash, true], onError);
81
95
  /**
82
96
  * Fetch fee history. `blockCount` is hex-encoded per the spec; the
83
97
  * latest block is the implicit upper bound. `percentiles` is passed
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAYH,uEAAuE;AACvE,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,MAAoB,EACpB,MAAc,EACd,MAAiB,EACjB,OAAgC,EACb,EAAE;IACrB,IAAI,CAAC;QACH,+DAA+D;QAC/D,8DAA8D;QAC9D,yDAAyD;QACzD,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAW,CAAC,CAAM,CAAA;QACvE,OAAO,MAAM,IAAI,IAAI,CAAA;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,GAAsB,EAAU,EAAE,CACpD,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAA;AAEvD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,MAAoB,EACpB,OAAgC,EACR,EAAE;IAC1B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAS,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;IAC9E,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC9B,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,MAAoB,EACpB,GAAsB,EACtB,OAAgC,EACH,EAAE,CAC/B,WAAW,CACT,MAAM,EACN,sBAAsB,EACtB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EACvB,OAAO,CACR,CAAA;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAoB,EACpB,UAAkB,EAClB,WAAqB,EACrB,OAAgC,EACE,EAAE,CACpC,WAAW,CACT,MAAM,EACN,gBAAgB,EAChB,CAAC,KAAK,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,EACvD,OAAO,CACR,CAAA;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,MAAoB,EACpB,OAAgC,EACD,EAAE,CACjC,WAAW,CAAgB,MAAM,EAAE,gBAAgB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AAEnE;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAoB,EACpB,IAAY,EACZ,OAAgC,EACI,EAAE,CACtC,WAAW,CACT,MAAM,EACN,2BAA2B,EAC3B,CAAC,IAAI,CAAC,EACN,OAAO,CACR,CAAA;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,MAAoB,EACpB,IAAY,EACZ,OAAgC,EACT,EAAE,CACzB,WAAW,CAAQ,MAAM,EAAE,0BAA0B,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@valve-tech/chain-source",
3
- "version": "0.11.1",
3
+ "version": "0.12.0",
4
4
  "description": "Canonical EVM chain-observation primitive: a unified push-or-poll source for new blocks, mempool snapshots, on-demand receipt + tx lookups, and capability disclosure (HTTP / WS / per-method gating). Used as the shared foundation by @valve-tech/gas-oracle and @valve-tech/tx-tracker; consumable directly by anyone building their own derived view on chain state. viem-native. Part of the valve-tech/evm-toolkit synchronized release line — implementation lands in subsequent 0.3.x releases per docs/tx-tracker-spec.md.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/valve-tech/evm-toolkit/tree/main/packages/chain-source#readme",