Skip to content

🤖 fix: release settled /btw transcript holds#3345

Open
ammar-agent wants to merge 1 commit into
mainfrom
transcript-qa-rc44
Open

🤖 fix: release settled /btw transcript holds#3345
ammar-agent wants to merge 1 commit into
mainfrom
transcript-qa-rc44

Conversation

@ammar-agent
Copy link
Copy Markdown
Collaborator

Summary

Fixes /btw side-question scroll holds so the side Q&A can no longer remain stuck to the bottom of the transcript as permanent visual clutter.

Background

/btw intentionally hands scroll ownership from bottom-lock to the side branch when main-agent output continues below the aside. The previous hold kept re-aligning through the answer lifecycle, but did not distinguish a real start-aligned branch from a browser bottom-clamp caused by insufficient content below it.

Implementation

  • Detect whether scrollIntoView({ block: "start" }) is still bottom-clamped using transcript/target geometry.
  • Keep the temporary side-question hold only while the side answer is streaming or while the attempted start alignment is still clamped to the bottom.
  • Release settled holds once the branch can align at the transcript viewport start.
  • Preserve fallback answer-row handling for side answers whose user row is unavailable.

Validation

  • bun test src/browser/components/ChatPane/sideQuestionScrollHold.test.ts
  • bun test src/browser/utils/messages/StreamingMessageAggregator.sideQuestion.test.ts src/browser/stores/WorkspaceStore.test.ts --test-name-pattern "/btw|side-question|Side question|side answer"
  • bun run typecheck
  • make fmt-check
  • make lint
  • make static-check

Risks

Low-to-moderate. The change touches transcript scroll ownership, but it is limited to /btw side-question hold release logic and covered by targeted unit tests for streaming, settled, fallback-row, and geometry cases.


Generated with mux • Model: openai:gpt-5.5 • Thinking: xhigh • Cost: $7.88

@ammar-agent
Copy link
Copy Markdown
Collaborator Author

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 789e01b476

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/browser/components/ChatPane/sideQuestionScrollHold.ts Outdated
Keep /btw side-question scroll ownership temporary by releasing settled holds once geometry shows the branch can align at the top of the transcript viewport. Preserve the hold only while the answer is streaming or while start alignment is still bottom-clamped, so the side Q&A cannot become permanent bottom clutter.\n\n---\n\n_Generated with `mux` • Model: `openai:gpt-5.5` • Thinking: `xhigh` • Cost: `.88`_\n\n<!-- mux-attribution: model=openai:gpt-5.5 thinking=xhigh costs=7.88 -->
@ammar-agent ammar-agent force-pushed the transcript-qa-rc44 branch from 789e01b to be0eb33 Compare May 20, 2026 22:12
@ammar-agent
Copy link
Copy Markdown
Collaborator Author

@codex review
Please take another look. I updated the clamp check to compare against the transcript scrollport padding edge instead of the container border top, and added coverage for padded alignment.

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Swish!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant