The examples/ before/after blocks were authored by hand, not produced by a
model. Issue #127 correctly noted that nobody hand-rolls quicksort for "sort
this array" - every model just calls .sort(). Regenerate all examples verbatim
from a real benchmark run (Claude Haiku 4.5, no-skill arm vs ponytail arm,
benchmarks/output.json) so the before/after is reproducible, not authored:
email 75->3, debounce 116->10, csv 20->3, countdown 267->9, rate-limit 128->10 LOC
- Delete sorting.md (pure strawman) plus the other hand-written caricatures
(api-endpoint, caching, date-picker)
- Add benchmarks/generate-examples.mjs to regenerate examples from any run
- examples/README.md indexes the set and documents how to reproduce
Closes#127
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Swap em dashes for commas/colons/periods in the README, skills, AGENTS.md and
its five rule copies, examples, command files, and benchmark README. Rule
copies stay in sync (same edit applied to all) and the invariant guard passes.
Left untouched on purpose: the vendored caveman SKILL.md (verbatim third-party
text), the dated benchmark writeups in results/ (historical records), and
.js code comments.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The ponytail API example returned the raw ORM model, which exposes every
column. Restore a response_model whitelist (the trust boundary) while still
cutting the repository/service/exception ceremony. Matches the skill's own
'never cut security' rule.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>