Skip to content

feat(doctor): add --json output for machine-readable diagnostics #23

Description

@alimaandev

ripple doctor currently prints a human report only. Add --json so CI and tools can consume the diagnostics programmatically.

Acceptance criteria

  • ripple doctor --json emits the same fields as the terminal report (config path, cache status, discovery stats, errors) in the stable JSON envelope (tool, version, command, ...) used by analyze/graph.
  • A --format terminal|json flag (alias -f) matching the other commands, with --format in the help text.
  • JSON output is byte-deterministic for the same project (no timestamps beyond durationMs).

Where to look

  • src/commands/doctor.ts (current report), src/formatter/ (existing formatters to copy the envelope from), tests/integration/cli.test.ts (test pattern for other --format json commands).
  • Existing style: see src/formatter/json.ts.

Out of scope

  • Changing what doctor checks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions