gentle-ai-bench
Installation
SKILL.md
Activation Contract
Load when touching bench/ in gentle-ai, adding or changing a journey, changing a product semantic a journey might pin, or diagnosing a bench failure in CI's Unit Tests job.
Hard Rules
go test ./benchvalidates corpus declarations only. It does NOT execute journeys. The only driven proof is building the harness and the product binary and running the harness against it; a greengo test ./benchclaims nothing about execution.- Reproduce CI, do not guess invocations: read the Unit Tests step in
.github/workflows/ci.ymland copy its exact build andgentle-ai-bench run --binary ...commands. Use--only <journey-id>to drive one journey. - Journey IDs are unique across every
journeys_*.gofile. The collision guard fails loudly naming both files; pick an unused ID by reading the corpus, never reuse a retired one. - Every
executetransition must carry a runnable command; the dead-execute guard fails the run otherwise. - When a ratified product semantic changes, grep the corpus for journeys pinning the OLD behavior before shipping. The corpus is a second test surface beyond unit tests; a journey asserting the defect keeps the defect green.
dead_endprintsn/aunless the run actually measured one. Never fabricate a value to move the column.- A
by_designexemption costs a shape from the closed vocabulary plus a verified quote of the product's own next-action text. If the quote no longer tells the operator what to do, it is a defect wearing an exemption. - Prefer a NEW
journeys_*.gofile when the shared ones are owned by open PRs; bump the core journey-count pin in the same change.