Parent phase: #234
Parent roadmap: #127
Problem
Doctor should be the miner first-run checklist, not just a diagnostics dump. It needs to tell a miner exactly what is configured, what is missing, and the next command to run.
Acceptance criteria
- Doctor groups checks into auth, API compatibility, local repo readiness, scorer availability, output safety, and next command.
- Human output stays concise and action-oriented.
- JSON output is stable enough for app/Raycast/automation consumers.
- Unsupported source upload is explicit and fails closed.
Validation expected
- CLI unit tests cover healthy, unauthenticated, stale API, missing repo, and unsupported upload states.
- Snapshot or schema tests cover JSON output shape.
MCP/CLI acceptance criteria
- Machine-readable JSON output is available where automation needs it.
- Token, wallet/hotkey, and local absolute-path redaction are covered by tests.
- Source-upload behavior remains explicit and fails closed where upload is unsupported.
Cross-cutting acceptance criteria
- Preserve the repo quality gate:
npm run test:ci, 97%+ global coverage, and the local branch coverage target for touched code.
- Keep public/private boundaries explicit. Public GitHub output must not expose wallets, hotkeys, reward estimates, raw trust scores, public score predictions, private reviewability, private scoreability context, or farming language.
- Add/update focused tests for the changed behavior instead of relying on green checks alone.
Parent phase: #234
Parent roadmap: #127
Problem
Doctor should be the miner first-run checklist, not just a diagnostics dump. It needs to tell a miner exactly what is configured, what is missing, and the next command to run.
Acceptance criteria
Validation expected
MCP/CLI acceptance criteria
Cross-cutting acceptance criteria
npm run test:ci, 97%+ global coverage, and the local branch coverage target for touched code.