Skip to main content

analyzing-evals

Use to explain a codegen eval result under evals/codegen/.runs/: why an attempt lost points, the root cause, and what to optimize in skills, assets, CLIs or agent code. Writes a Claude Doc with proof, root cause and fix location.

Datos de origen

Repositorio
wso2/labs-agentic-engineer
Última actividad en el origen
4 de octubre de 2026 a las 10:40
Idioma detectado de SKILL.md
inglés
Estrellas
25
Forks
24

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
analyzing-evals
description
Use to explain a codegen eval result under evals/codegen/.runs/: why an attempt lost points, the root cause, and what to optimize in skills, assets, CLIs or agent code. Writes a Claude Doc with proof, root cause and fix location.
# Analyzing evals Find the cause of each lost point. Then find the location of the fix. Do not fix anything with this skill: it gives the evidence for a skill change (`writing-skills`) or a code change. The archive layout and the commands are in `evals/codegen/README.md`. The location of each fact of a coding run is in `playground/AGENTS.md`, section "Examine the run". ## 1. Read the result 1. Read the sweep's `report.md`. Select each attempt with a low score, a hard fail or a harness error. 2. For each attempt, read `attempt.json`. A hard fail has no walk and no verdict: read its `symptom`, `wire/wire.log` and `coding/play.log`, then go to step 2. 3. Read `judge/verdict.json` and `walk/result.json`. The items are in `checklist.yaml` of the attempt, not of the case: the case's file can change after the sweep. An older attempt has no `checklist.yaml`. Then get the item text from `walk/result.json`, and say so in the analysis. 4. Open the screenshot of each failed item in `walk/shots/`. 5. If the sweep has repeats, group each failed item across the attempts of the same case and config. A failure in most attempts is a pattern. A failure in one attempt is a suspicion. Find the root cause of patterns first. For a large sweep, give each case to a subagent that uses this skill. Then merge their findings into one doc. ## 2. Classify each failure Do this before you look for a root cause. A fix in the wrong system breaks a correct one. | Class | Signal | Owner of the fix | | --- | --- | --- | | Eval defect | The item asks for a control that `wireframes.dsl` does not draw, or a state that wired mode cannot show. Or the walker misread the page. | The case's `checklist.yaml`, or the planner (`evals/codegen/src/planner.ts`, `wired-auth.ts`) | | Harness defect | A `harness-error`, or wire, Docker or the walker failed for a reason outside the generated code. | `evals/codegen` or `playground` code | | Spec defect | The case's `specs/` contradict each other, or cannot make the precondition. The checklist's gaps header names these. | The design skill that wrote that artifact | | Fixture defect | The case's input is not what production sends. For example, production derives a field (such as `wiring` in `design.json`) that the playground does not. | The playground, or `eval-save` | | Generator defect | The generated app does not do what the specs say. | Step 3 | To confirm an eval defect, change the checklist and run `rewalk`. Do not start a new coding run for it. ## 3. Find the root cause of a generator defect 1. Find the wrong file in `project/`. For a failed request, read `wire/logs/services.log`. 2. Find the tool call that wrote the file: `make eval-codegen ARGS="log --attempt <attempt dir>"`. Search the output for the file name. 3. Read the reasoning near that call. Add `--thinking`. 4. Find the instructions that the agent had: the skills in `project/.claude/skills/` (the exact text of that run), the system prompt in `coding/<run>/.logs/prompt-appendix.md`, and the `Skill` lines in the log. The report that each subagent gave the lead is a `task_notification` line in `.logs/runtime.log`. It often names a gap that the agent saw. 5. Compare that text with HEAD. `provenance.json` and `skills.diff` show the uncommitted edits that the run used. 6. Put the cause in one location: - No skill has the rule. - A skill has the rule, but the agent did not load it (description, audience, or not pinned). - The agent loaded the rule but did not obey it. The rule is outside the numbered steps, or a different rule overrides it. - Two skills tell different things. - A tool's `--help` or output misled the agent. - A boilerplate asset is wrong. - The agent or runner code is wrong. ## 4. Find what to optimize Read the coding run with `log --attempt <attempt dir>` and with `--slow`. Measure each candidate. Then give it an owner. | Signal | Measure | Usual owner | | --- | --- | --- | | A slow call or a long gap | seconds | the tool, or the skill step | | A command fails, then the agent tries again | count | the tool's `--help`, or the skill step | | The agent reads the same file again | count | the skill: state the fact one time, where the agent needs it | | A large tool result | characters | the CLI output | | The same hand-written code in each run | lines | an asset of the stack skill | | Mock-verification items that the walk fixed | items | the build skill that missed them | | Time and tokens of each subagent | `log --attempt <attempt dir> --usage` | the fan-out step | ## 5. Write the analysis as a Claude Doc Write the result in a Claude Doc. If the docs connector is not available, write it as an HTML artifact. Start with a table of all findings: class, symptom, root cause location, fix location, confidence. Then write one section for each finding: - **Symptom**: what the user sees, or the measure. Give the item id or the signal. - **Proof**: the data that shows the cause. Quote the log lines with their `seq` (reasoning: its line in `runtime.log`), the code with its file and line, and the skill text. Upload the screenshot of a failed item into the doc. - **Root cause**: the chain from the instruction to the wrong result, and the location from step 2 or step 3. - **Fix location**: the file, and the section in it, that must change. Tell why the fix goes there and not where the symptom is. - **Confidence**: one attempt gives a suspicion only. To confirm, use `--repeats 3`, a `rewalk`, or the same case in an earlier sweep. A finding about a skill is the Evidence section of a `writing-skills` proposal.
Ver en GitHub