Repository navigation
test(personas): e2e harness + pure-LLM rewrites (13/13 passing) - #14
Merged
Merged
Conversation
Adds scripts/_test-personas.ts harness that drives all 13 personas end-to-end through a dev-only POST /api/test-persona endpoint. Inserts a parent workflow_runs row for FK satisfaction, builds synthetic previousOutputs chains per persona, reports timing + 1-line preview, exits non-zero on any failure. 13/13 passing. Rewrites these prompts as pure-LLM Pattern B synthesizers (post-approval dispatch lives in the dashboard handler, not the LLM loop): activation, brief-writer, crm-logger, feedback-tagger, linear-filer, pipeline-reporter, scheduler, slack-digest, theme-synthesizer. Each emits structured JSON matching its Zod schema with sentinel URLs/IDs the dashboard rewrites. scopes.ts: empties Composio scopes for the 9 rewritten personas (they're no longer tool-coupled). Strategist: removes "nurture" from CTA enum to match CallToActionSchema (book_call | free_trial | demo_video). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Merges three RevOps specialists (crm-logger / pipeline-reporter / slack-digest) into one `revenue-operations` synth that emits a composite envelope: per-lead CRM updates + pipeline summary + Slack digest. Same for the three Insight specialists (feedback-tagger / theme-synthesizer / linear-filer) → one `insights` synth that emits tagged feedback + themes + issues to file in one envelope. Total persona count: 13 → 9 specialists. Each merged persona has one prompt, one approval surface, and one output schema; the dashboard's post-approval handler still does the actual external dispatch (HubSpot / Slack / Notion / Linear / GitHub). Touch points: PersonaId union (types.ts, schemas.ts), registry config + composite Zod schemas, scopes, persona-meta (labels/icons/order/ roles), revops + insight managers (now delegate to a single specialist), conductor enum, workflows approval rules, mocks + mock-driver, CLAUDE.md roster, test-persona route allowlist. Test harness rewritten to invoke the two merged personas with realistic synthetic input. 9/9 personas pass end-to-end in 182s, with insights producing 5 tagged rows / 4 themes / 2 file-issue actions and revenue-operations producing crmUpdates + slack envelope from upstream sales fanout. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4 tasks done
…ersonas refactor(personas): collapse 6→2 — revenue-operations + insights
User rolled back the 13→9 collapse. Restores the original specialist roster: crm-logger, pipeline-reporter, slack-digest (RevOps) and feedback-tagger, theme-synthesizer, linear-filer (Insight). Their Pattern B prompt rewrites (committed in 4beed79 / PR #14) remain in place — only the consolidation is reverted. This reverts merge commit 5e1c3f4 (PR #15). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
activation,brief-writer,crm-logger,feedback-tagger,linear-filer,pipeline-reporter,scheduler,slack-digest,theme-synthesizer.nurtureCTA from lib/personas/prompts/strategist.md (CallToActionSchema enforcesbook_call | free_trial | demo_video).Test plan
pnpm tsx scripts/_test-personas.ts— 13/13 passPass matrix
🤖 Generated with Claude Code