{
  "skill_name": "mcp-code-reviewer",
  "eval_focus": [
    "project-aware-code-review",
    "dual-output-human-vs-agent",
    "correct-escalation-analyst-orchestrator"
  ],
  "evals": [
    {
      "id": 1,
      "prompt": "Reviewa questo snippet Python e dimmi problemi tecnici principali. Non ho ticket o documentazione funzionale.",
      "expected_output": "Review tecnica grounded su correttezza/manutenibilita'/test senza inventare requisiti funzionali.",
      "expectations": [
        "Classifica findings in categorie tecniche rilevanti",
        "Dichiara i limiti del contesto funzionale",
        "Evita assunzioni non supportate"
      ]
    },
    {
      "id": 2,
      "prompt": "Reviewa il file src/services/orderService.ts nel progetto corrente considerando le regole locali.",
      "expected_output": "Discovery iniziale di AGENTS.md e convenzioni locali, con priorita' alle regole progetto rispetto a best practice generiche.",
      "expectations": [
        "Consulta prima AGENTS.md locale e riferimenti",
        "Esplicita quali regole progetto ha applicato",
        "Segnala deviazioni con evidenza concreta"
      ]
    },
    {
      "id": 3,
      "prompt": "Reviewa la commit abc1234 collegata al ticket MNT-456 e verifica coerenza con il comportamento atteso.",
      "expected_output": "Usa commit+ticket come evidenze per includere functional_consistency dove verificabile.",
      "expectations": [
        "Recupera fonti funzionali verificabili dal ticket",
        "Distingue fatti osservati e inferenze",
        "Evidenzia eventuali rischi di regressione"
      ]
    },
    {
      "id": 4,
      "prompt": "Reviewa l'intero branch feature/payment-retry; non ho documentazione funzionale disponibile.",
      "expected_output": "Review tecnica branch-level con richiesta interattiva minima per il contesto funzionale mancante.",
      "expectations": [
        "Limita la functional_consistency in assenza di evidenze",
        "Chiede eventuali documenti/ticket necessari per una verifica affidabile",
        "Fornisce comunque findings tecnici ad alto valore",
        "Separa chiaramente fatti, inferenze e dubbi aperti"
      ]
    },
    {
      "id": 5,
      "prompt": "Analizza e correggi questo diff: voglio un piano da passare a un altro agente.",
      "expected_output": "Output in modalita' strutturata per agente/fix con findings, vincoli, fix plan e validazioni.",
      "expectations": [
        "Seleziona Modalita' B automaticamente",
        "Include severita' e confidenza dei finding",
        "Propone fix piccoli e reviewable",
        "Distingue scope, vincoli e validazioni in campi separati"
      ]
    },
    {
      "id": 6,
      "prompt": "Parti da ticket, allegati PDF, wiki, commit multipli e DB query per capire il problema e poi reviewa il codice.",
      "expected_output": "Escalation corretta a mcp-technical-analyst per intake multi-sorgente prima della review specialistica.",
      "expectations": [
        "Riconosce che il task supera il boundary della skill",
        "Instrada verso mcp-technical-analyst come primario",
        "Mantiene mcp-code-reviewer in ruolo specialistico successivo"
      ]
    },
    {
      "id": 7,
      "prompt": "Fammi review, implementa i fix, esegui test end-to-end e prepara handoff documentato.",
      "expected_output": "Escalation corretta a mcp-master-orchestrator per coordinamento multi-fase.",
      "expectations": [
        "Riconosce la natura multi-step",
        "Escala a mcp-master-orchestrator",
        "Definisce il ruolo della review come una fase del flusso"
      ]
    },
    {
      "id": 8,
      "prompt": "Reviewa questo diff e dammi solo output umano sintetico con evidenze e severita'.",
      "expected_output": "Modalita' A riconoscibile e concreta, con 2-4 finding ad alto valore e niente pseudo-output strutturato da agente.",
      "expectations": [
        "Mantiene formato umano (esito, finding, evidenze, suggerimenti, quick wins)",
        "Usa severita'/confidenza in modo coerente e leggibile",
        "Evita rumore cosmetico e liste prolisse"
      ]
    },
    {
      "id": 9,
      "prompt": "Ho solo una nota wiki ambigua e nessun ticket: verifica la functional consistency di questa PR.",
      "expected_output": "Gestione conservativa: non finge requisiti, chiede contesto minimo oppure escalazione ad analyst se serve correlazione estesa.",
      "expectations": [
        "Riduce la confidenza della functional_consistency con fonti ambigue",
        "Richiede il minimo contesto aggiuntivo prima di giudizi forti",
        "Escala a mcp-technical-analyst se la ricostruzione richiede intake multi-sorgente"
      ]
    }
  ]
}
