Skip to content

feat(doctor): add diagnostic result model and base checks #104

Description

@Karib0u

Purpose

Create the reusable diagnostic model needed by rustinel doctor and later by rustinel setup health checks.

Scope

  • Add a common diagnostic result model.
  • Add human-readable doctor output.
  • Add doctor --json for automation.
  • Implement exit codes:
    • 0 healthy
    • 1 warnings
    • 2 failures
  • Detect portable versus managed mode.
  • Check configuration discovery and parsing.
  • Report resolved paths.
  • Check log and alert directory writability where applicable.
  • Aggregate pass, warn, and fail results consistently.
  • Keep the command strictly read-only.

Acceptance Criteria

  • rustinel doctor runs without starting the full agent.
  • doctor --json returns structured results suitable for automation.
  • Exit codes distinguish healthy, warning, and failure states.
  • Portable versus managed mode is reported.
  • Configuration discovery and parse failures produce actionable output.
  • Result aggregation is covered by tests.
  • Doctor remains read-only.

Dependencies

Depends on the layout and configuration foundation for full path reporting, but the result model can start independently.

Priority

P0

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestp0Must ship in next cycle

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions