Skip to content

v0.7.18: Shred metadata and ordering scope

Choose a tag to compare

@0xfnzero 0xfnzero released this 18 Oct 20:27
· 17 commits to main since this release

v0.7.18 — Shred metadata passthrough and ordering scope

Released 2026-10-19.

RawInstruction and PumpRouteIntent retain the tx_index and receive timestamp supplied to the parser. Parser SDKs expose metadata.tx_index and metadata.grpc_recv_us; streamer exposes metadata.tx_index and metadata.recv_us. Regression assertions use nonzero values and cover the final streamer callback and JSON round trips.

The default Entries clients enumerate transactions within each received Entries message and reset to zero for the next message. This is a local position, not the final transaction index across a slot. Yellowstone supplies a node transaction index. Receive timestamps are local microsecond timestamps, not execution-order guarantees. Use signatures to deduplicate across Shred messages, and instruction_index to order outer instructions within a transaction.

Compatibility

No metadata fields were removed or renamed. Existing values and numbering behavior are unchanged. Low-level/replay callers should provide upstream metadata when available rather than relying on zero defaults. This release adds documentation and regression protection; it does not synthesize a global chain ordering or add execution information to Shred data.

Validation

Nonzero metadata propagation tests pass for Rust parser, sol-shred-sdk, streamer, TypeScript, Python and Go. Existing PumpRouteIntent metadata assertions continue to pass.