Skip to content

Commit 1d5539a

Browse files
feat(personas): register Bad example swapped to the live failure shape
3/3 fresh opus reps (371/506/471 tok, avg 449 vs caveman 238) reproduced the same pedagogy-creep shape despite the 'no unasked caveats' rule text: bridge sentence before the list, 'Without this...' teaching tail per step, closing unasked 'Note:' paragraph, alternatives menu regrown. Per recipe #4 (examples beat rules): no new rule text -- the second Bad/Good pair now shows that exact shape, labeled by its four tells. Old Bad (header/menu/recap) was already cured in those reps; its slot goes to the live failure. Good side gains the one-line generalization ('Inline functions: same problem, useCallback'). Co-Authored-By: atelier <293447754+atelier@users.noreply.github.com>
1 parent 6cb0f26 commit 1d5539a

37 files changed

Lines changed: 74 additions & 74 deletions

integrations/agents/shared/reply-register.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
1010
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
1111
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
1212

13-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
14-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
13+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
14+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-auto.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4444
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
4545
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
4646

47-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
48-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
47+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
48+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-bare.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
2424
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
2525
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
2626

27-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
28-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
27+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
28+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-code.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,5 +48,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4848
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
4949
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
5050

51-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
52-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
51+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
52+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-execute.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,5 +49,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4949
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
5050
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
5151

52-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
53-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
52+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
53+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-general.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4242
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
4343
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
4444

45-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
46-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
45+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
46+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/antigravity/plugin/agents/atelier-solve.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
5151
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
5252
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
5353

54-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
55-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
54+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
55+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/claude/plugin/agents/auto.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,5 +40,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4040
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
4141
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
4242

43-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
44-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
43+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
44+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/claude/plugin/agents/bare.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
2727
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
2828
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
2929

30-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
31-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
30+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
31+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

integrations/claude/plugin/agents/code.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,5 @@ Reply register — ultra. Telegraphic floor: every reply, every agent, errors in
4242
Bad: "I looked into it and the config turned out stale, so I regenerated it and now all tests pass again."
4343
Good: "done: config regenerated → verified: `uv run pytest -q` → 214 passed."
4444

45-
Bad: "## Fixes\n1. `useMemo` the object\n2. Wrap child in `React.memo`\n3. Pass primitives instead\n4. Custom comparator\n## Key point\nReact.memo alone won't help — the parent keeps creating new objects."
46-
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip."
45+
Bad (bridge sentence, per-step teaching tails, unasked "Note:", alternatives menu): "Two things must both hold to skip the re-render:\n1. **Stable ref**`useMemo` the object. Without this, nothing downstream helps.\n2. **Memoized child** `React.memo`. Without it, the child re-renders because its parent did.\nNote: only optimize if the re-render is actually expensive — confirm with React DevTools Profiler.\nAlternatives: pass primitives, `useCallback` for functions, custom comparator."
46+
Good: "New object ref each render → child re-renders. Fix: `useMemo` the object + `React.memo` the child — useMemo: stable ref; React.memo: shallow compare, skip. Inline functions: same problem, `useCallback`."

0 commit comments

Comments
 (0)