refactor: unify Resolved*Range over ScanBounds<P> 4/5 - #27754
Merged
wlmyng merged 4 commits intoAug 20, 2026
Conversation
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 01:54 — with
GitHub Actions
Active
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This was referenced Aug 19, 2026
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 19, 2026 05:19
7c04da7 to
1959b84
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 05:19 — with
GitHub Actions
Active
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 19, 2026 05:26
1959b84 to
d98f0b1
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 05:26 — with
GitHub Actions
Active
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 19, 2026 05:38
d98f0b1 to
48282aa
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 05:38 — with
GitHub Actions
Active
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 05:38 — with
GitHub Actions
Active
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 19, 2026 05:46
48282aa to
a923475
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 05:46 — with
GitHub Actions
Active
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 19, 2026 06:24
a923475 to
a4c6490
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 06:24 — with
GitHub Actions
Active
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 06:24 — with
GitHub Actions
Active
wlmyng
marked this pull request as ready for review
August 19, 2026 06:32
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 19, 2026 06:32 — with
GitHub Actions
Active
nickvikeras
approved these changes
Aug 20, 2026
One record and one cursor-application body for both lanes: ResolvedScan<P> with a three-function ScanPosition seam (from_tx, cursor_position, resume_lo). resume_lo canonicalizes the dense u64 lane's Item cursor to its inclusive successor, which keeps the generic emptiness lattice exact and confines the +1/u64::MAX arithmetic to ScanBounds<u64>::to_range at the store edge. Scalar callers read the store range via .range().
All four scalar endpoint resolvers use the same one-line resolve + apply_cursor_bounds shape as events; with_range and the per-endpoint empty branches are deleted (empties ride the total path — apply is identity on them). Ride-along: scalar descending-empty records get the normalized entry = terminal instead of the end-1 formula, matching the intra-tx lane; wire-invisible since empty terminal frames never read entry.
Post-unify both lanes run the one ResolvedScan cursor-application body, so scalar tests that only re-exercise it through the u64 seam duplicate their intra-tx twins. Deleted the structural twins (before-arm tighten/fold/empty, rejected no-ops, entry folds, crossed attribution, empty passthrough); kept the lane-divergent scalar tests: resume_lo successor canonicalization, raw-echo vs scan-start terminals, u64::MAX saturation, and the after/before Item-offset asymmetry. The one twin-missing scenario (before-claim overriding an eagerly written after terminal) is ported into crossed_cursors_descending_attribution.
resolve() takes the scan window in position space and applies cursor bounds itself; callers interpret their own row windows (the event lane via IntraTxCoordinate::tx_window). The row-embedding hook (from_tx), tx_span, and the unused ResolvedScan::empty_at are deleted. The remaining lane seam is ScanCursor<P> on CursorToken — coordinate and resume_lo — since how cursors read is the one thing the lanes actually disagree about.
wlmyng
force-pushed
the
wlmyng/resolved-range-unify
branch
from
August 20, 2026 23:01
a4c6490 to
d866e52
Compare
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 20, 2026 23:01 — with
GitHub Actions
Active
wlmyng
deployed
to
sui-typescript-aws-kms-test-env
August 20, 2026 23:01 — with
GitHub Actions
Active
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.
Description
Generalize
ResolvedRangeandResolvedIntraTxRangeoverScanBounds<P>asResolvedScan<P>.Test plan
No behavior change; the prior PRs' characterization and per-arm tests pass unchanged, and
cargo check --workspacecovers out-of-crate consumers of the removed twin types.Release notes