persona-testinglisted
Install: claude install-skill vindm/dotclaude
# Persona testing
A deny-list catches binary phrase violations and the reuse gate catches context-mismatch reuse, but a string can pass both and still feel wrong: written for day-1 enthusiasm it reads condescending on day 30; written in customer-service register it reads performative when the assistant is meant to feel like a peer; written for a stranger it reads patronizing to a user who already knows the app. These aren't specific phrases — they're voice-register failures spread across many words. Three orthogonal tests catch them.
Run this at **both** moments:
- **Design time** — every proposed copy element in the spec passes the triad before the spec is approved.
- **Audit time** — first action when any visible copy element is found on the audited surface; verify the string in source, apply all three tests, and the REWRITE verdict binds regardless of what the spec said. This rerun is the only thing that catches implementation drift: an engineer swapping "Continue" for "Next", a translation file extended by pattern-matching from an adjacent first-touch surface, or an LLM-shaped pipeline emitting a customer-service register that was never in the spec.
## The three tests
Each is orthogonal. A string passes **only if all three PASS** — two-of-three ships drift.
### Test 1 — Frequency-jaded ("day-30")
> "Would this string read OK if the user saw this exact string on day 30? Day 60? Day 365?"
A first-touch string fails instantly: "Hi — I'm your assistant" on day 30 is re