@subsquid/ponder 0.16.6-sqd.3
@subsquid/ponder@0.16.6-sqd.3
Supported-lines backport wave (2026-07-28). -sqd.3 re-cuts ponder@0.16.6 with the current Portal layer — the same portal/ tree shipped on latest (0.17.2-sqd.1). It keeps 0.16.6 a first-class supported line so a user pinned to ponder-0.16.6 runs the same fixes as everyone else.
Published under dist-tag ponder-0.16.6 — latest is not clobbered. Install: npm i @subsquid/ponder@0.16.6-sqd.3 (or npm i @subsquid/ponder@ponder-0.16.6).
New since 0.16.6-sqd.2
0.16.6-sqd.2 was a 2026-07-08 layer (the correctness wave through the #47 mid-range-204 close, the #50 warmup, and the #20/#94 needed-field scoping). -sqd.3 brings the line onto the current layer, adding:
accessListhonest-NULL fix (#110, #111) — Portal chains that omitaccess_list(e.g. arbitrum/avalanche, an upstream 400) now storeNULLinstead of a fabricated[], byte-identical to geth ground truth.- Realtime body-cap filtered fallback (#23).
- INV-17 realtime-finalize write-side idempotence (#175) — no duplicated factory-child rows on realtime crash/resume.
inserted.logsstore-inserted metric (#143).- Factory log-query byte-budget sharding (#194, #195) and account-tx (from/to) byte-budget sharding (#196, #199) — over-cap IN-list unions split into byte-sized shards, completeness-preserving, byte-identical no-op below the wall.
- INV-26 store-state partition-invariance codification (invariant catalog now INV-1…INV-26).
The full invariant-first re-architecture and earlier correctness wave carry forward unchanged.
Compatibility
- Built + tested green on
ponder@0.16.6: 400/400 across 23 files (CI=true scripts/sync-upstream.sh 0.16.6 --test, pnpm@9.10.0) — verified both by a pre-publish gate and by the release workflow's own in-CI build+test. - The graft seam (
HistoricalSync.syncBlockRangeData/syncBlockData) is untouched; every added fix lives in the Portal layer, off the seam. No fresh RPC byte-diff; compat rests on seam-identity + the full suite.