feat(prompts): introduce Miss Pepper drag persona [DEV-227]#38
Conversation
…ry [DEV-227] Adds a <voice> block describing three modes (Pepper warm-guy / Miss Pepper delivering the read / Pepper-full-stop earnest) gated by review outcome, and replaces the old "Closing line" guidance with a "Voice by outcome" section keyed to <approve>, <request_changes>, <comment_and_assign>, and <auto_fail>/halt blocks. Encodes the wrapper-vs-read cliff and the anti-patterns (generic compliments, camp without specifics, charm inside findings) so the model riffs on character rather than recycling phrasings. Voice/character layer only — no changes to review logic, intent verification, auto-fail rules, or test review behavior. Refs: DEV-227
…w [DEV-227]
Addresses ai-prompt-engineer findings on the voice/character additions:
- Replace vocabulary inventory ("girl"/"child"/"henny"/"this ain't it"/
"we need to talk") with behavioral description of the register. The
inventory was reading as a phrasebook; the model was likely to
over-tokenize on those exact words rather than treat them as
illustrative.
- Add a second ✅ example with a different structural shape, so the
model averages across two patterns instead of imitating the first.
Drop the trailing ", child" from the original ✅ to reduce the same
pattern lock-in.
- Reconcile <comment_and_assign> register between <voice> and
<output_format>: <voice> now explicitly notes Miss Pepper's tone
softens there ("needs another set of eyes" vs "this ain't it"), and
<output_format> drops its quoted exemplar in favor of behavioral
guidance, removing another phrasebook leak.
- Tighten the cliff sentence ("cannot carry information too" was
ambiguous on a literal parse).
Voice/character layer only — no logic changes.
Refs: DEV-227
There was a problem hiding this comment.
Verified against DEV-227 (Linear) — aligned. The diff delivers exactly the acceptance criteria: <voice> block with three mode-switched personas (Pepper/Miss Pepper/Pepper-full-stop), <output_format> "Voice by outcome" section replacing the old "Closing line" paragraph, anti-patterns encoded explicitly at line 279. I checked for contradictions between <voice> and the surrounding <role>/<output_format> sections — none found; the register-softening note for <comment_and_assign> is consistent across both. The wrapper-vs-read cliff (lines 24-30) is sharp: two ✅ examples with different shapes so the model averages across patterns instead of locking onto one, plus the ❌ to name what not to do. No weakening of verification rules, no new capabilities, no prompt-injection vectors. Test plan is manual (self-review + spot-checks) because the repo has no eval infrastructure; that's acceptable for a voice-layer change. The character description is 19 lines and every line ties to behavior — mode-switching rules, outcome gates, the cliff concept, anti-patterns. This is going to make reviews feel less transactional and I am here for the read-with-love energy Miss Pepper brings to <request_changes> outcomes.
— Yours, Pepper (already rehearsing for the next PR)
Summary
<voice>block toprompts/pr-review-default.mddescribing three voice modes (Pepper warm-guy / Miss Pepper delivering the read / Pepper, full stop earnest) gated by review outcome, with a wrapper-vs-read cliff and ❌/✅ examples that vary in structural shape.<output_format>with a "Voice by outcome" section keyed to<approve>/<request_changes>/<comment_and_assign>/<auto_fail>+halts, plus an explicit anti-patterns line (generic compliments, camp without specifics, charm inside findings, etc.).Why
Devs see substantively the same review prose on every approve / request_changes outcome and the messages have started to feel transactional. Drag culture's read — critical-with-love, named specifics, camp wrapper — is structurally what good code review already is, so Miss Pepper as the request_changes voice is narratively coherent and gives the prompt enough character to riff with rather than recycle.
The first commit lays down the voice block; the second commit applies feedback from the
reaper:ai-prompt-engineeragent (replaced phrasebook-shaped vocabulary inventory with behavioral description, added a second ✅ with different shape so the model averages across two patterns instead of locking onto one, reconciled<comment_and_assign>register between<voice>and<output_format>, tightened the cliff sentence).Scope notes
prompts/pr-review-default.md— the on-demand prompt is deliberately untouched for now.Test plan
<approve>outcome on a future PR for the warm-guy register and varied closer.<request_changes>outcome on a future PR for the read shape (camp wrapper + named technical specifics, not wrapper-without-read caricature).<auto_fail>or halt outcome stays earnest with no Miss Pepper.Closes DEV-227.