Skip to content

Session Info: rows fade at the scroll edges instead of a hard cut - #31741

Merged
teamleaderleo merged 1 commit into
feat-cmux-nextfrom
lane/session-info-edge-fade
Nov 2, 2026
Merged

teamleaderleo merged 1 commit into
feat-cmux-nextfrom
lane/session-info-edge-fade

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator

Session Info: rows scrolled past the panel body's top or bottom now fade into the glass at that edge instead of a hard cut through a row.

Leo-ask: ask-b29e245e8e

We should have a bit of that, like blur fading thing for this area as well. Just a little bit. I also feel like, you know, is it? Is there a way to, like... well, I suppose, like, in most areas we have a pretty unobtrusive, but I wonder, like, how much more, like, subtle but nice but integrated we can get the whole, like, blur fade type situation.

The area is Session Info's Outputs list scrolled under the panel's top edge.

  • SessionInfo.tsx: the body follows its scroll edges with the shared useScrollEdges (summary/scrollEdges.ts), the same hook the Summary card, the + menu and the palette use. It marks data-fade-top / data-fade-bottom only while rows are past that edge.
  • sessionInfo.css: a mask fades those edges (12px top, 16px bottom, a little shorter than the Summary card's 14/22 so it stays quiet). It turns on or off per edge with no animated in-between state. Reduce Transparency drops it.
  • Perf: no per-scroll layout work beyond the existing hook (one passive scroll listener toggling two attributes, plus a ResizeObserver/MutationObserver pair). All of these are disconnected when the body unmounts (the callback ref gets null). No per-token work.
  • Risk: small. CSS plus one callback ref, confined to one component. Design spec: leo-workspace design/motion-and-polish.md rule 15 (scroll edges use the shared blur-fade, kept subtle).

🤖 Generated with Claude Code
Agent session: agent session


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Session Info's Outputs list no longer hard-cuts through rows scrolled under the panel's top or bottom edge; rows now fade into the glass at those edges.

  • Reuses the shared useScrollEdges hook with a CSS mask that fades 12px at the top and 16px at the bottom, and drops under reduced transparency.
  • The mask toggles per edge without animation, adds no per-scroll layout work, and its listeners disconnect when the panel body unmounts.

Written for commit 796ffb9. Summary will update on new commits.

View guided diff Turn on auto-fix

Leo-ask: ask-b29e245e8e

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?id=aid-08c5855b83ffa16d6231
@github-actions

github-actions Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 796ffb9: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr31741 -f ref=lane/session-info-edge-fade -f platform=macos -f backend_mode=local

Gallery before/after for 796ffb9: 16 states rendered, 12 images differ, 1592 more touched states not rendered. Images are in the run's artifact, not on this public PR; the independent review of this head reads them on its own, so the PR needs no hand-made screenshots of these states.

gh run download 41384280367 -R manaflow-ai/cmux -n gallery-advisory-31741-796ffb9a0dc239a26ebb82f5179925bc5eb6f72e (then read gallery-review.json)

States
State Theme Status Diff Picked by
agent-pane.background-activity/duration-columns Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/duration-columns Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/pinned-live-tail-light Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/pinned-live-tail-light Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/pinned-live-tail-dark Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/pinned-live-tail-dark Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/after-latest-message-light Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/after-latest-message-light Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/after-latest-message-dark Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/after-latest-message-dark Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/compact-pill-light Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/compact-pill-light Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/compact-pill-dark Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/compact-pill-dark Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.background-activity/side-panel-light Apple System Colors Light unchanged 0% own sessionInfo.css
agent-pane.background-activity/side-panel-light Apple System Colors unchanged 0% own sessionInfo.css
agent-pane.chat-inspector/full Apple System Colors Light changed 0.128% own SessionInfo.tsx
agent-pane.chat-inspector/full Apple System Colors changed 0.127% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-running Apple System Colors Light changed 0.0082% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-running Apple System Colors changed 0.0063% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-finished Apple System Colors Light unchanged 0% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-finished Apple System Colors unchanged 0% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-failed Apple System Colors Light unchanged 0% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-failed Apple System Colors unchanged 0% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-compact Apple System Colors Light changed 0.0069% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-compact Apple System Colors changed 0.0069% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-detail Apple System Colors Light changed 0.0069% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-detail Apple System Colors changed 0.0057% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-grid Apple System Colors Light changed 0.0066% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-grid Apple System Colors changed 0.0059% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-narrow Apple System Colors Light changed 0.0071% own SessionInfo.tsx
agent-pane.chat-inspector/workflow-agent-row-narrow Apple System Colors changed 0.0057% own SessionInfo.tsx

Pick other states with a Gallery: entry.id, entry.id/variant line in the PR body.

red: cmux-next checks (god files, concurrency, crash safety, l10n); no finished base run on 6730339 to compare; do not merge until green; see lane-rules

Shipped in:

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (subagent claude-opus-5-5 medium): SHIP at 796ffb9
Follow-ups:

  • [follow-up] light()'s scrollIntoView({block:"nearest"}) can leave a lit section inside the 16px bottom fade; a scroll-margin on [data-section] would clear it (cosmetic).
  • [follow-up] Summary card and Session Info repeat the mask block with different sizes; a shared fade class would dedupe.

@github-actions github-actions Bot added the risk:normal Risk tier (docs/ci/risk-tiers.md) label Nov 2, 2026
@blacksmith-sh

blacksmith-sh Bot commented Nov 2, 2026

Copy link
Copy Markdown

Found 6 test failures on Blacksmith runners:

Failures

Test View Logs
/tmp/tmp0bn07icq/summary-fail.json (live):/summary-fail.json (live): View Logs
/tmp/tmpu_cld537/summary-missing.json (live):/summary-missing.json (live): View Logs
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows/
[new_workspaces] debug.new_workspace timed 0 of 50 new workspace rows
View Logs
[new_workspaces] the window draws no frames/[new_workspaces] the window draws no frames View Logs
[tabs] debug.tab_switch timed 0 of 40 switches/
[tabs] debug.tab_switch timed 0 of 40 switches
View Logs
[tabs] the window draws no frames/[tabs] the window draws no frames View Logs

Fix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@teamleaderleo
teamleaderleo merged commit c9ef2c3 into feat-cmux-next Nov 2, 2026
180 of 201 checks passed
@teamleaderleo
teamleaderleo deleted the lane/session-info-edge-fade branch November 2, 2026 04:27

This branch was previously deployed

1 inactive deployment
ci-routing-agent — 796ffb9a Deployed Nov 2, 2026 by teamleaderleo via wait for same-key tree publisher #98970
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:normal Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant