Skip to content

M7: Wrap transcript and timeline lines instead of clipping them #288

Description

@Sandstorm831

Parent

Spec #276; implementation sub-issue of M7 #275.

What to build

Long lines in the Session transcript view wrap at the view width and are never cut, because the Projection already carries full content. Timeline rows wrap instead of clipping at the terminal width; rows that advertise truncation, such as names, paths, and statuses, keep clipping with a trailing …. The timeline scroll reducer stays the owner of scroll, live edge, anchor, and new-activity count and counts display lines, so a wrapped row keeps its anchor and the count stays correct; wrapping is recomputed on resize. The Application's 160-character one-line detail cap stays (ADR 0039 replaces those rows later). If the reducer's seam changes to count display lines, the TUI guidance names the change (stories 77–79, 86).

Acceptance criteria

  • Renderer tests prove Session transcript and timeline wrap, resize recomputation, and that scrolling, live-edge following, anchor, and new-activity count stay correct over wrapped rows.
  • Rows that advertise truncation still clip with ….
  • The one-line detail cap is unchanged.
  • Prototype Crucible's launch and Run information architecture #23 evidence: keymap and focus, small terminals and resize, large content, interaction tuning, meaning without colour, and renderer and platform evidence, each shown by testRender frames with the fake Renderer Port.
  • CI scenario: the transcript and timeline renderer tests are green on Windows x64, macOS arm64, and Linux x64.

Blocked by

Implementation packet

Owner: TUI presentation (Session transcript view, timeline rows, timeline scroll reducer)

Ratchet: renderer tests for wrap, resize, anchor, and new-activity count

Deletes: clipping of transcript and timeline content at the terminal width

Gate: ADR 0027 three-OS CI and recorded human evidence, with the slice scenario above.

Dependencies: no new runtime dependency

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    ready-for-agentFully specified and ready for an AFK agent

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions