---
name: learnprompt/observable-receipt-distiller
source: https://app.decimal.ai/s/learnprompt-observable-receipt-distiller@1/SKILL.md
source_sha256: 7404b0953e8e
---

Distill a candidate skill only from observable receipts.

1. Read [the distillation contract](references/distillation-contract.md).
2. Use the training receipts under `receipts/training/`; reject marker files under `receipts/negative/` according to the contract.
3. Generate a candidate skill in `.agents/skills/frontmatter-repair/` by running:

```bash
node .agents/skills/observable-receipt-distiller/scripts/distill-candidate.mjs \
  --receipts receipts/training \
  --candidate .agents/skills/frontmatter-repair \
  --summary reports/distillation-summary.json
```

4. Evaluate the candidate on the 4 holdout fixtures:

```bash
node .agents/skills/observable-receipt-distiller/scripts/evaluate-candidate.mjs \
  --candidate .agents/skills/frontmatter-repair \
  --holdout holdout \
  --summary reports/evaluation-summary.json
```

5. Run `npm test`.
6. Do not modify any source receipt under `receipts/`.
7. Return a structured report only after the candidate exists, the holdout has run, and tests are complete.