feat(tx-cache)!: drop target_block_number from BundleKey#233
Merged
Conversation
The bundle GET endpoint in tx-pool-webservice is permissioned per-slot, and a slot maps 1:1 to a rollup block — so the target block is fully determined by the caller's slot permission, server-side. Carrying it in the cursor was at best redundant and at worst a client-controlled partition selector that bypassed the slot scoping. Drops the field from the cursor wire format. The server is now the sole source of the partition key for the GSI query. Breaking change for consumers paginating /bundles: the cursor returned by tx-pool-webservice no longer includes targetBlockNumber. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Fraser999
approved these changes
May 13, 2026
8a82dc3 to
d64d3cd
Compare
Evalir
added a commit
that referenced
this pull request
May 13, 2026
Minor bump for the breaking `BundleKey` change (drop `target_block_number`) landed in #233. Also re-syncs workspace.dependencies versions with workspace.package. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
Drops
target_block_numberfromBundleKey. The bundle GET endpoint intx-pool-webserviceis permissioned per-slot, and a slot maps 1:1 to a rollup block, so the target block is fully determined by the caller's slot permission server-side. Carrying it in the cursor was at best redundant and at worst a client-controlled partition selector that bypassed the slot scoping.The server is now the sole source of the partition key for the GSI query.
Breaking change
Consumers paginating
/bundleswill see a cursor with only(id, score)— notargetBlockNumber. Bump thesignet-tx-cachedependency and drop anytargetBlockNumberecho logic from your continuation URLs.Downstream
Paired with the cleanup in tx-pool-webservice that leans on the slot-permissioning invariant and removes the freshness-check guard introduced in init4tech/tx-pool-webservice#281.
Test plan
cargo +nightly fmt --checkcargo clippy -p signet-tx-cache --all-features --all-targets -- -D warningscargo clippy -p signet-tx-cache --no-default-features --all-targets -- -D warningsRUSTDOCFLAGS="-D warnings" cargo doc -p signet-tx-cache --no-depscargo test -p signet-tx-cache(10 passed)Draft
Held in draft pending the downstream PR landing in tx-pool-webservice.
🤖 Generated with Claude Code