--- name: evals-specify description: Use when you want guided bottom-up error analysis, structured failure taxonomy discovery, or comprehensive trace coding before documenting eval criteria. Optional for routine capture — team-boot writes lightweight eval drafts directly. disable-model-invocation: true --- # evals-specify ## What this skill does Conducts **bottom-up error analysis** following **EDD Principles III & IX** (Error Analysis & Test Data as Code) to discover and document draft evaluation criteria from human observation of system failures. **Output**: 1. **Draft Eval Records** - Individual `EVAL-*.md` files in `.adlc/drafts/evals/` with open coding notes 2. **Error Pattern Documentation** - Bottom-up failure taxonomy from actual traces 3. **Pass/Fail Examples** - Real examples that should pass/fail each criterion 4. **Auto-handoff** to `/evals-clarify` for axial coding and clustering **Key EDD Principles Applied**: - **Principle III**: Error Analysis & Pattern Discovery - Open coding → failure taxonomy - **Principle IX**: Test Data as Code - Dataset planning and coverage analysis - **Principle II**: Binary Pass/Fail - Maintain strict binary pass/fail conditions - **Principle V**: Trajectory Observability - Track full multi-turn conversation traces ## When to use > **Note**: Routine decision capture is handled by team-boot's continuous > capture mechanism, which writes lightweight drafts directly to > `.adlc/drafts/`. This skill is for **interactive deep-dive exploration** > — when you want guided trade-off analysis, multi-option comparison, or > structured decision facilitation before documenting. - **Starting evaluation development**: No existing criteria, need discovery from failure logs - **Production incident analysis**: Recent failures require systematic analysis - **Quality assessment**: Discovering and codifying boundary conditions from failures ## When NOT to use - **No failure traces/specs**: Generate synthetic traces first, or use `/evals-init` to set up security baselines - **Known criteria already exist**: Use `/evals-clarify` to refine or `/evals-implement` to generate code ## Process ### User Input ```text $ARGUMENTS ``` Treat user input as specific failure areas or error patterns to analyze (e.g., "authentication bypass", "RAG irrelevant results"). - `--traces N` — Number of traces to analyze (default: 20, min for theoretical saturation) - `--source SOURCE` — Trace source location (e.g., logs, support tickets) ### Execution Steps #### Phase 1: Open Coding Analysis - Reviews the user-provided failure logs or spec requirements. - Conducts open coding of traces to discover recurring failure patterns (EDD Principle III). - Identifies: core problem, causal conditions, and consequences. #### Phase 2: Create Draft Criteria Group patterns into draft criteria. For each: - Define strict **Pass Condition** (observable, binary yes/no) - Define strict **Fail Condition** (observable, binary yes/no) - Document real pass/fail examples directly from traces #### Phase 3: Create Draft Files - Copy `skills/evals/evals-templates/eval-criterion-template.md` to `.adlc/drafts/evals/EVAL-{NNN}.md`. - Populate metadata and error analysis notes. - Regenerate index at `.adlc/drafts/evals/evals.md`. #### Phase 4: Auto-Handoff Trigger `/evals-clarify` for axial coding and clustering. ## Verification - Draft files created at `.adlc/drafts/evals/EVAL-*.md` - Index file `.adlc/drafts/evals/evals.md` updated with draft summaries - Each draft contains: status "draft", pass/fail conditions, trace sources, and concrete examples - Auto-handoff context produced with list of created drafts