Skip to content

diagnose

Read-only collection of cross-cutting context across a target repo: current phase, open milestones, recent decisions, recent findings, failing CI checks. Returns a structured report consumable by other verbs (notably propose_fix) or by humans/agents directly.

Upholds: (read-only) Side effects: None. Read-only.

  • REPO_IN_REGISTRY — target_repo must appear in registry.yaml.
  • scope string enum: full, phase, decisions, findings, ci
  • sinceIsoDate — Lower bound for time-windowed sections (decisions, findings). Default: 30 days before now.
  • repoRepoSlug (required)
  • scanned_atIsoDate (required)
  • diagnosis_id string — Stable ID of this diagnosis run. Required input to propose_fix.
  • current_phase object
    • id string
    • status string enum: open, closed
    • opened_atIsoDate
  • open_milestones array
    • items:
      • idMilestoneId
      • title string
      • blocked_by array
  • recent_decisions array
    • items:
      • path string
      • dateIsoDate
      • status string enum: open, closed, superseded
      • title string
  • recent_findings array
    • items:
      • path string
      • timestampIsoDate
      • title string
  • ci object
    • default_branch_status string enum: success, failure, pending, unknown
    • failing_checks array
      • items:
        • name string
        • url string

Input:

{
"envelope": {
"verb": "diagnose",
"target_repo": "kahn-hq",
"idempotency_key": "0000000000000000000000000000000000000000000000000000000000000000",
"dry_run": false,
"actor": "fleet:kahn-diagnostics",
"triggered_by": {
"kind": "schedule",
"ref": "cron:hourly"
}
},
"params": {
"scope": "full",
"since": "2026-04-01"
}
}

Output (output_applied):

{
"envelope": {
"verb": "diagnose",
"status": "applied",
"idempotency_key": "0000000000000000000000000000000000000000000000000000000000000000",
"mr_citations": []
},
"result": {
"repo": "kahn-hq",
"scanned_at": "2026-04-29T14:30:00Z",
"diagnosis_id": "diag-a3f29c4b1e8d7602",
"current_phase": {
"id": "Phase-7",
"status": "closed",
"opened_at": "2026-04-28"
},
"open_milestones": [
{
"id": "M7.8.2",
"title": "Operator-driven post-Phase-7 re-probe",
"blocked_by": []
}
],
"recent_decisions": [],
"recent_findings": [],
"ci": {
"default_branch_status": "success",
"failing_checks": []
}
}
}

(no recipe yet — see SKILL guide)