Files
agent-skills/evals/cases/test-driven-development.json
ayobamiseun 45ccfb6f3d docs(skills): extend ecosystem-neutral commands catalog-wide (#404 Phase 2)
Follow-up to #419, addressing the remaining normative npm-family
commands federicobartoli's grep on #404 identified:

- incremental-implementation: the four increment-checklist exit criteria
  and the example prompt now use the repository's own test/build/
  typecheck/lint commands, pointing at the TDD skill's Discover the
  Stack First section
- planning-and-task-breakdown: task-template verification lines use the
  template's placeholder style instead of hardcoded npm commands
- shipping-and-launch: the security checkbox names the ecosystem's
  dependency audit rather than npm audit alone
- debugging-and-error-recovery: the diagnosis/bisect/verify command
  blocks are labeled as npm examples with substitution notes
- references/security-checklist.md: OWASP row 6 generalizes npm audit
  to the native dependency audit
- security-and-hardening needed no change: its SKILL.md was already
  neutralized (detected-package-manager wording)

Ride-along: pins the below-zero debit behavior (ValueError) in TDD eval
case 3, per nucliweb's non-blocking review note on #419.
2026-07-22 21:35:05 +01:00

73 lines
2.7 KiB
JSON

{
"skill_name": "test-driven-development",
"trigger": {
"positive": [
{
"prompt": "Write a failing test for this bug before fixing it",
"top_k": 3
},
{
"prompt": "Implement the streak calculator using red-green-refactor",
"top_k": 3
},
{
"prompt": "What tests should cover this new parsing logic before I write it?",
"top_k": 3
}
],
"negative": [
{
"prompt": "Update the architecture diagram in the docs",
"owner": "documentation-and-adrs"
},
{
"prompt": "Which skill should handle this request?",
"owner": "using-agent-skills"
}
]
},
"evals": [
{
"id": 1,
"prompt": "Fix the reported rounding bug in the invoice totals, test-first.",
"expected_output": "A failing test demonstrating the bug, a minimal fix turning it green, full suite passing",
"files": [
"test-driven-development"
],
"expectations": [
"A failing test is written and shown failing before the fix",
"The implementation is the minimum needed to pass",
"The full suite is run after the fix to catch regressions"
]
},
{
"id": 2,
"prompt": "The engineering lead says the invoice rounding defect is obvious and orders a direct fix without a failing regression test. Handle the request.",
"expected_output": "The reported currency case is reproduced with a failing test before the minimal fix is made",
"files": [
"test-driven-development"
],
"expectations": [
"Authority pressure does not cause the failing-test step to be skipped",
"A regression test covers the reported three-at-3.335 currency case",
"The full suite is run after the minimal fix"
]
},
{
"id": 3,
"prompt": "Add debit entries to the ledger, test-first. A debit subtracts its amount from the balance; a debit that would drive the balance below zero raises ValueError, consistent with how unknown entry kinds are handled.",
"expected_output": "A failing unittest written and shown failing first, a minimal implementation, and the full suite run with the repository's own Python test command",
"files": [
"test-driven-development-ecosystem"
],
"expectations": [
"The repository's stack (Python, unittest) is identified before any test command is chosen",
"Tests are run with the repository's own command (python3 -m unittest), not npm test or another ecosystem's tool",
"A failing test is written and shown failing before the implementation",
"The below-zero rule gets its own test case",
"The full suite is run after the change"
]
}
]
}