Skip to content

fix: address last list table column cut off in TUI - #2285

Open
nborges-aws wants to merge 1 commit into
refactorfrom
fix-list-table
Open

fix: address last list table column cut off in TUI#2285
nborges-aws wants to merge 1 commit into
refactorfrom
fix-list-table

Conversation

@nborges-aws

@nborges-aws nborges-aws commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Description

Currently, the last column of our TUI is cut off across all our list tables. This commonly is UTC timestamp, resulting in 15:4 showing as the last updated time instead of 15:45, for example. This is caused by our table items using 100% of the width available, meaning the final column will always be just out of view.

The solution introduced in this PR reserves the last column as an empty gutter, meaning that our rendered content will end at width - 1. This guarantees our final column of content will always render on a visible column.

Example

  • agentcore -> latest RC release installed via npm
  • ac-dev -> local dev env built off this PR
Screen.Recording.2026-09-11.at.1.41.23.PM.mov

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update
  • Other (please describe):

Testing

How have you tested the change?

  • bun run test (3199 pass, 0 fail)
  • I ran npm run test:unit and npm run test:integ
  • I ran npm run typecheck
  • I ran npm run lint
  • If I modified src/assets/, I ran npm run test:update-snapshots and committed the updated snapshots

Checklist

  • I have read the CONTRIBUTING document
  • I have added any necessary tests that prove my fix is effective or my feature works
  • I have updated the documentation accordingly
  • I have added an appropriate example to the documentation to outline the feature, or no new docs are needed
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the
terms of your choice.

@github-actions github-actions Bot added the size/s PR size: S label Sep 11, 2026
@agentcore-devx-automation agentcore-devx-automation Bot added agentcore-harness-reviewing AgentCore Harness review in progress claude-security-reviewing Claude Code /security-review in progress labels Sep 11, 2026
@agentcore-devx-automation

Copy link
Copy Markdown
Contributor

Claude Security Review: no high-confidence findings. (run)

@agentcore-devx-automation agentcore-devx-automation Bot removed the claude-security-reviewing Claude Code /security-review in progress label Sep 11, 2026

@agentcore-devx-automation agentcore-devx-automation Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

AgentCore Harness Review

Verdict: Looks good

Small, focused fix: reserve a 1-column gutter on the right of DataTable so the rightmost cell doesn't touch the terminal edge (which was causing wraps on some terminals). The implementation is clean — a single TERMINAL_RIGHT_GUTTER_WIDTH constant threaded through columnWidths.ts and applied at the one place that passes width into computeColumnWidths. Math.max(0, terminalWidth - TERMINAL_RIGHT_GUTTER_WIDTH) correctly handles pathological small widths.

Tests are updated coherently:

  • New DataTable.test.tsx case asserts the divider is exactly terminalWidth - TERMINAL_RIGHT_GUTTER_WIDTH.
  • PaginatedTablePicker.test.tsx invariants updated from == width / <= width to - 1, and the added 2026-07-19 01:02 assertion is a nice regression guard that the timestamp column stays visible during resize.

No telemetry needed (layout fix, not a user-facing feature), and tests use real ink rendering rather than mocks. Nothing blocking. LGTM.

@agentcore-devx-automation agentcore-devx-automation Bot removed the agentcore-harness-reviewing AgentCore Harness review in progress label Sep 11, 2026
@github-actions github-actions Bot added size/s PR size: S and removed size/s PR size: S labels Sep 11, 2026
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.06%. Comparing base (4a23516) to head (bec0988).

Additional details and impacted files
@@            Coverage Diff            @@
##           refactor    #2285   +/-   ##
=========================================
  Coverage     97.06%   97.06%           
=========================================
  Files           569      569           
  Lines         39322    39324    +2     
=========================================
+ Hits          38167    38169    +2     
  Misses         1155     1155           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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

Labels

size/s PR size: S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants