Skip to content

Keep delegated workspace clone logs out of user-facing failure details #2095

Description

@codeforester

Goal

Keep timestamped delegated Base log records out of the user-facing failure-detail block rendered by basectl workspace clone.

Background

workspace clone now renders failures beneath the repository/action/result row. Its clone_detail() helper currently concatenates the delegated basectl repo clone stderr and stdout verbatim. When the child emits a timestamped logger line such as ... ERROR subcommands/repo.sh:2179 ..., that internal log record is treated as ordinary detail and receives table indentation. The result is visually misleading and makes the failure block harder to scan.

Scope

  • Filter timestamped Base logger records from normal workspace-clone failure details.
  • Preserve actionable child diagnostics such as authentication guidance and provider responses.
  • Keep complete delegated stdout/stderr available through debug logging or the existing command log path.
  • Add regression coverage for mixed diagnostic output and logger lines.
  • Update the workspace clone output documentation if needed.

Acceptance Criteria

  • A failed delegated clone does not render timestamped DEBUG, INFO, WARN, or ERROR records as indented user-facing detail.
  • The result row remains aligned and actionable, including provider errors, recovery guidance, and exit codes.
  • Existing clone, optional-repository, dry-run, redaction, return-code, and aggregate-summary behavior remains unchanged.
  • Raw delegated output remains available through the debug/diagnostic path.
  • Focused workspace tests, git diff --check, and the full Base validation gate pass.

Validation

  • Add a regression fixture containing a provider diagnostic, recovery guidance, a timestamped Base logger record, and ordinary stdout.
  • Assert the actionable diagnostics remain visible and the timestamped logger record is absent from normal output.
  • Run focused workspace-clone and repository-URL tests.
  • Run the workspace BATS tests.
  • Run ./bin/base-test with the documented writable cache/source environment.
  • Run git diff --check.

Non-Goals

  • Do not change clone authentication or GitHub API behavior.
  • Do not change the delegated basectl repo clone command or logger format.
  • Do not redesign the workspace result table or add a machine-readable format.
  • Do not suppress provider diagnostics needed for recovery.

Project Fields

  • Status: In Progress
  • Priority: P2
  • Area: Workspace
  • Initiative: Workspace Handling
  • Size: S
  • Milestone: v1.9.0

Agent Assignment

Implement in one canonical issue worktree, keep the change limited to clone failure-detail normalization, and open a linked PR after validation.

Activity

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

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