Fix reading position and composer caret on channel return - #411
Merged
Merged
Conversation
Signed-off-by: Carl <32a2e2c9d428ee08902cab75d956da2c1d235a22d4766b0dd4138bf6e2e5db1d@buzz.block.builderlab.xyz>
wesbillman
marked this pull request as ready for review
September 29, 2026 16:07
kalvinnchau
reviewed
Sep 29, 2026
kalvinnchau
left a comment
Contributor
There was a problem hiding this comment.
🤖 No new actionable defects found, but I am not recommending approval yet. The reported WebKit cold-reload result displaced the saved reading anchor by 650px against the <4px contract (tests/browser/scroll.spec.mjs:155). A subsequent exact-head Chromium/WebKit run passed 16/16 tests, but does not explain that failure. Please isolate the cause or explicitly accept the residual risk before merging; a causal production regression has not been established.
johnmatthewtennant
pushed a commit
that referenced
this pull request
Sep 29, 2026
…t-update-drafts * commit '0a4982797f38164d75e3e8f48e58fabb9dd59e66': (66 commits) Show saved local and relay inventory while retaining existing import controls (#286) feat(channels): edit channel details with confirmed saves (#369) test(channels): discover the hoverable width for activity corners (#416) Fix flaky WebKit menu focus browser test (#409) Test Goose connections and fix Pi test false failures (#383) feat: open threads with verified newest-first windows (#154) Add agent conversation context selection (#382) test: keep behavioral coverage without cosmetic matrices (#410) Fix reading position and composer caret on channel return (#411) fix(channels): prevent clipped activity rows and remove separators (#377) ci: publish signed macOS updater artifacts in prereleases (#387) feat(messages): add jump to latest controls (#374) Align reply summaries with message content (#408) Add centered thinking pills to agent avatars (#351) Keep focus where the user moved it when a menu finishes closing (#355) Browse legacy identities without a destination and review text before cloning (#285) Show separate identity cards and prevent duplicate imports (#225) Polish message and thread spacing, grouping, and typography (#364) Remove the Away avatar badge stroke (#395) fix(profiles): hide activity on human profiles (#391) ... Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>
johnmatthewtennant
pushed a commit
that referenced
this pull request
Sep 29, 2026
* origin/main: (25 commits) Show saved local and relay inventory while retaining existing import controls (#286) feat(channels): edit channel details with confirmed saves (#369) test(channels): discover the hoverable width for activity corners (#416) Fix flaky WebKit menu focus browser test (#409) Test Goose connections and fix Pi test false failures (#383) feat: open threads with verified newest-first windows (#154) Add agent conversation context selection (#382) test: keep behavioral coverage without cosmetic matrices (#410) Fix reading position and composer caret on channel return (#411) fix(channels): prevent clipped activity rows and remove separators (#377) ci: publish signed macOS updater artifacts in prereleases (#387) feat(messages): add jump to latest controls (#374) Align reply summaries with message content (#408) Add centered thinking pills to agent avatars (#351) Keep focus where the user moved it when a menu finishes closing (#355) Browse legacy identities without a destination and review text before cloning (#285) Show separate identity cards and prevent duplicate imports (#225) Polish message and thread spacing, grouping, and typography (#364) Remove the Away avatar badge stroke (#395) fix(profiles): hide activity on human profiles (#391) ... Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz> # Conflicts: # src/bundled/agents/AgentsPage.test.tsx # src/bundled/agents/AgentsPage.tsx
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.
Opened by Brain on Wes's behalf; implementation and commit by Carl.
Summary
Draft gate
An existing WebKit no-send cold-reload check failed on this tree:
tests/browser/scroll.spec.mjs:155, same message ID but 650px Y displacement (contract: <4px). It passed in the one unchanged-production baseline comparison, so this is not established as unrelated or pre-existing. No retry-to-green, relaxed assertion, or out-of-scope reflow repair. Resolve this evidence gap before ready/merge; CI and required human/code-owner approval also remain gates.Review and validation
Checked base
14a2e7ed585b130315629ded39d1b83b05eb2a53; headddd51669d11b65412a9025f75a60cb69e68da9b7.Coverage and reproduction
Two browser cases added, none removed. Existing DM case strengthened; component coverage adds StrictMode end selection and deliberate-selection preservation, and enables StrictMode in the explicit focus-handoff guard. Browser-only justification: native DOM selection/keyboard insertion and real wheel/Virtua geometry cannot be proved by jsdom. Existing
developmentReactfixture option is reused, with one opt-in agent-peer roster/profile fixture input.Local macOS arm64, Chromium 153.0.8010.12 / WebKit 26.6; new scroll cases 4.8s/4.9s, caret cases 2.0s/2.4s. No CI performance claim.
Originating conversation: buzz://message?channel=2174385b-ca3b-4b31-8ad6-846f10fae18f&id=81c4995799ba210c745a999187c547e4fc87a1cbe544b10ef0f6df5206f5de03