Skip to content

bug(cli): doctor CRLF repair hint is unavailable to installed users #2363

Open

Description

@tamirdresher

Bug

The working-tree line-ending doctor check tells users to run npm run fix:crlf. That script exists only in the Squad source repository and is unavailable to consumers of npm or standalone installs.

Expected

Doctor should provide an install-aware recovery path, for example a supported squad doctor --fix-crlf command or a safe Git command sequence that works in the user's repository. The hint must not assume the Squad development checkout or its package scripts are present.

Add coverage for npm-global and standalone invocation text.

Activity

  1. shryssssss-maker commented on Nov 8, 2026

    @shryssssss-maker

    Hi @bradygaster and @tamirdresher I'd be interested in working on this issue if it's available.
    I looked into the current implementation in packages/squad-cli/src/cli/commands/doctor.ts and noticed that the CRLF diagnostic recommends npm run fix:crlf, while the underlying repair script lives at the repository root and isn't available to users of the published CLI.
    I also noticed that test/scripts/crlf-worktree-repair.test.ts currently asserts this command.
    My proposed approach would be to provide an installation-independent repair path, potentially through squad doctor --fix-crlf, while preserving the existing safety guarantees, particularly avoiding overwriting files with genuine uncommitted changes. I'd also update the diagnostic and add regression tests covering npm-global and standalone installations.
    I noticed the issue is included in wave1:P7, so I wanted to check whether it's already being handled as part of that work group or if it's available for an external contributor.
    If it's available, I'd be happy to take ownership and submit a focused PR following the repository's contribution guidelines.
    Thanks!

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

    wave1:P7Wave 1 PR group P7wave:1-nextWave 1 — immediate next sprint

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions