Diagnoses Sigra's optional-dependency wiring and prints a per-feature status matrix showing which optional features are missing, available (loaded but unconfigured), loaded and active, or configured-but-broken.
Usage
mix sigra.doctor [--quiet]Flags
--quiet— suppress per-row hints. The verdict line and the misconfig error report are always printed regardless of--quiet. The exit gate fires on misconfiguration regardless of this flag.
Examples
# Standard run:
mix sigra.doctor
# Suppress per-row hints (useful when the matrix itself is enough):
mix sigra.doctor --quiet
# CI usage — non-zero exit on misconfiguration, zero on clean:
mix sigra.doctor && echo "wiring OK" || echo "misconfigured — see above"Behavior
Delegates to Sigra.Doctor.run/1 after parsing flags and starting the
application. All diagnostic logic (matrix build, wiring checks, verdict)
lives in the versioned library so fixes ship via mix deps.update.
On a clean install (no configured features, no optional deps loaded), the command exits 0 — making it safe to run unconditionally in dep-off CI lanes.
On detected misconfiguration (a configured feature has broken wiring), the command prints the full matrix and error report, then exits with code 1 — functioning as a CI / pre-deploy gate.
Exit Codes
- 0 — all configured features are properly wired (or no features are configured). Absent optional deps are not an error.
- 1 — at least one configured feature has broken wiring (e.g. async email enabled but Oban not supervised).