Skip to content

Long file paths in the Changes panel are clipped instead of truncated #4154

Description

@liuxiaocs7

What happened

In the workbar 变更 / Changes panel (SessionReviewPanel), when a changed file has a long, deeply-nested path, the row does not truncate the path. Instead the path overflows the narrow panel and pushes the change counts (新增 N / 删除 N) and the collapse chevron off the right edge, where they get clipped by the panel. For the longest paths even the path text itself is cut mid-word, with no ellipsis.

Expected: the file path ellipsizes to fit the panel width, and the change counts + chevron stay visible on the right — as already happens for short paths.

Root cause: each row is rendered with Astryx Collapsible, whose trigger wraps the row content in a flex <span>. That span keeps the browser default min-width: auto, so it refuses to shrink below the full (nowrap) path width and overflows the button; the list's overflow: hidden then clips it. The panel's own truncation chain (.maka-session-review-file-path with min-width: 0; flex: 1 + Text maxLines={1}) never receives a width constraint because it stops at that intermediate span.

How to reproduce

  1. Open a session whose Git working tree has many changes, including files with long, deeply-nested paths (e.g. .scratch/pyclient/gen/client/Comparator_pb2.py).
  2. Open the 任务工作栏 → 变更 tab (dock it on the right so the panel is at its narrower width).
  3. Observe rows with long paths: the path runs off the right edge and the 新增 N count and chevron are clipped, instead of the path truncating with .

Environment

  • Maka commit: b16376d78
  • OS and version: macOS (Darwin 24.6.0)
  • Surface: Desktop
  • Node.js version: v24.14.0

Logs, screenshots, or additional context

Reproduced in the Product/Session Workbar → Changes Storybook story once a long-path file is present in the fixture. Screenshot showing the clipping is available and can be attached to this issue. A fix is in progress.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions