Skip to content

feat(cli): add cougr doctor environment validation command - #307

Open
notoflagosola-wq wants to merge 1 commit into
salazarsebas:mainfrom
notoflagosola-wq:feat/cougr-doctor-297
Open

feat(cli): add cougr doctor environment validation command#307
notoflagosola-wq wants to merge 1 commit into
salazarsebas:mainfrom
notoflagosola-wq:feat/cougr-doctor-297

Conversation

@notoflagosola-wq

Copy link
Copy Markdown

Implements the cougr doctor subcommand that checks the local development environment and reports pass/fail per requirement with an actionable fix command for each failure.

Checks performed:

  • cargo present on PATH (sanity check)
  • Rust toolchain >= 1.70.0 (from workspace Cargo.toml rust-version)
  • wasm32v1-none target installed (via rustup target list --installed)
  • Stellar CLI >= 21.0.0 present on PATH

Each failure prints the exact fix command, e.g.:
rustup target add wasm32v1-none cargo install --locked stellar-cli

A summary line N/M checks passed is printed; the command exits non-zero if any check fails.

cougr doctor is also invoked non-fatally (as a warning) at the start of cougr new so environment problems are surfaced before the developer hits a confusing downstream build error.

Closes #297

Implements the `cougr doctor` subcommand that checks the local
development environment and reports pass/fail per requirement with
an actionable fix command for each failure.

Checks performed:
- cargo present on PATH (sanity check)
- Rust toolchain >= 1.70.0 (from workspace Cargo.toml rust-version)
- wasm32v1-none target installed (via rustup target list --installed)
- Stellar CLI >= 21.0.0 present on PATH

Each failure prints the exact fix command, e.g.:
  rustup target add wasm32v1-none
  cargo install --locked stellar-cli

A summary line N/M checks passed is printed; the command exits
non-zero if any check fails.

`cougr doctor` is also invoked non-fatally (as a warning) at the
start of `cougr new` so environment problems are surfaced before the
developer hits a confusing downstream build error.

Closes salazarsebas#297
@drips-wave

drips-wave Bot commented Aug 25, 2026

Copy link
Copy Markdown

@notoflagosola-wq Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@salazarsebas salazarsebas left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Implementation looks solid — clear separation between checks, good fix-command messaging, decent test coverage on version parsing. cargo fmt --check is failing in CI on two spots in doctor.rs (lines ~186 and ~453). Can you run cargo fmt and push? Once that's green this is good to merge from my side.

@salazarsebas

Copy link
Copy Markdown
Owner

Hey @notoflagosola-wq , what are the updates on this pull request?

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(cli): implement 'cougr doctor' toolchain diagnostics

2 participants