Skip to content

Preserve complete basectl logs paths in terminal tables #1925

Description

@codeforester

Goal

Preserve complete actionable log paths, including filenames, in the interactive basectl logs table.

Evidence

On macOS, basectl logs renders paths such as:

~/Library/Caches/base/base/runs/20260811T132141_20742_18289__workspace/logs/pri…

The path is stored and returned correctly by the logs discovery layer, but the human-readable table truncates it with an ellipsis. That prevents users from locating or opening the exact primary.log file.

Root cause

base_logs.engine.print_log_table uses the shared base_cli.render_records default max_cell_width=80. The history consumer already disables that cap and computes a table width sufficient for complete log paths.

Scope

  • Disable cell truncation for the interactive basectl logs table.
  • Compute the table width from the rendered values while preserving compact ~ home paths.
  • Add regression coverage using a realistic long cache-run log path.

Acceptance Criteria

  • Interactive basectl logs displays the complete compact path and filename.
  • The output contains no ellipsis for a long log path.
  • Existing column alignment and machine-readable output remain unchanged.

Validation

  • Focused base_logs Python tests.
  • logs.bats.
  • Touched-file Pylint.
  • git diff --check.

Non-Goals

  • Do not change log discovery, storage, retention, or path redaction.
  • Do not change basectl logs --latest, --tail, or --open behavior.

Metadata

Metadata

Assignees

Labels

bugSomething is not working

Type

No type

Projects

Status
Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions