fix(desktop): retain live rows after window exhaustion#1810
Merged
Conversation
wpfleger96
approved these changes
Jul 13, 2026
881ec9c to
f4dac25
Compare
A completed short channel window has no unloaded lower boundary, so keep same-second live events regardless of their ID position relative to the current tail. Continue deferring older live rows while pagination remains. Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co> Signed-off-by: Wes <wesbillman@users.noreply.github.com>
f4dac25 to
1e59629
Compare
brow
pushed a commit
that referenced
this pull request
Jul 14, 2026
…image-paste * origin/main: refactor(clients): standardize product naming on community (#1858) fix(desktop): retain live rows after window exhaustion (#1810) Add private product feedback sidecar (#1857) fix(desktop): resolve Doctor install shell and command detection on Windows (#1854) fix(desktop): navigate to channel from inbox thread header (#1847) feat(desktop): surface needsRestart badge on live UI surfaces (#1853) fix(desktop): prevent menu-to-dialog UI lockups (#1839) feat(relay): add durable community archival (#1834) feat(desktop): add conversation-style DM composer (#1768) feat(push): add public APNs gateway (#1770) feat(relay): add atomic community ownership transfer (#1845) fix(desktop): stabilize agent identity restore (#1831) fix(buzz-acp): distinguish idle vs hard-cap timeout, dead-letter hard kills immediately (#1844) fix(observer): align scroll-anchor ids with transcript display-block keys (#1849) [codex] Add view activity label to agent popover (#1748) ci(desktop): surface flaky E2E tests instead of retry-masking them (#1838) fix(desktop): treat channel creator as member before 39002 provisioning (#1830) fix(mobile): mirror app bar title padding when actions are empty (#1832) Co-authored-by: npub1shglkdhngx3hrnhf4gf8vhpqdrmeludctechdvpwd3988zzs7ncq2cmtxu <85d1fb36f341a371cee9aa12765c2068f79ff1b85e7176b02e6c4a738850f4f0@sprout-oss.stage.blox.sqprod.co> Signed-off-by: npub1shglkdhngx3hrnhf4gf8vhpqdrmeludctechdvpwd3988zzs7ncq2cmtxu <85d1fb36f341a371cee9aa12765c2068f79ff1b85e7176b02e6c4a738850f4f0@sprout-oss.stage.blox.sqprod.co>
tlongwell-block
pushed a commit
that referenced
this pull request
Jul 14, 2026
* origin/main: fix(desktop): retain live rows after window exhaustion (#1810)
tlongwell-block
pushed a commit
that referenced
this pull request
Jul 14, 2026
* origin/main: fix(desktop): retain live rows after window exhaustion (#1810) Co-authored-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co> Signed-off-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co>
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
Why
mergeLiveChannelWindowEventtreated the last loaded row as an exclusion boundary even when the relay had reportedhasMore: false. In short newly-created channels, live messages sharing the same second could therefore be discarded based only on ID order. This produced the repeated missing-final-seed failures instream.spec.tsafter #1802.Validation
channelWindowStore.test.mjs(25/25)pnpm --dir desktop typecheck