@su-record/vibe 2.16.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +15 -0
- package/CLAUDE.md +8 -8
- package/README.en.md +46 -29
- package/README.md +41 -24
- package/agents/acceptance-tester.md +56 -0
- package/agents/architect.md +25 -67
- package/agents/build-error-resolver.md +28 -97
- package/agents/code-reviewer.md +89 -0
- package/agents/diagrammer.md +34 -165
- package/agents/documenter.md +43 -0
- package/agents/e2e-tester.md +46 -277
- package/agents/event/event-ops.md +54 -77
- package/agents/event/event-planner.md +63 -0
- package/agents/figma/figma-engineer.md +76 -0
- package/agents/implementer.md +26 -41
- package/agents/security-reviewer.md +56 -0
- package/agents/tester.md +37 -33
- package/agents/ui/design-reviewer.md +62 -0
- package/agents/ui/design-system-gen.md +63 -0
- package/dist/__tests__/agent-model-sync.test.d.ts +2 -0
- package/dist/__tests__/agent-model-sync.test.d.ts.map +1 -0
- package/dist/__tests__/agent-model-sync.test.js +71 -0
- package/dist/__tests__/agent-model-sync.test.js.map +1 -0
- package/dist/cli/auth.d.ts.map +1 -1
- package/dist/cli/auth.js +8 -1
- package/dist/cli/auth.js.map +1 -1
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +1 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/info.d.ts.map +1 -1
- package/dist/cli/commands/info.js +2 -0
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/llm.d.ts +11 -0
- package/dist/cli/commands/llm.d.ts.map +1 -0
- package/dist/cli/commands/llm.js +62 -0
- package/dist/cli/commands/llm.js.map +1 -0
- package/dist/cli/commands/remove.d.ts.map +1 -1
- package/dist/cli/commands/remove.js +8 -10
- package/dist/cli/commands/remove.js.map +1 -1
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +35 -1
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/index.d.ts +0 -4
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +59 -6
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/llm/config.d.ts.map +1 -1
- package/dist/cli/llm/config.js +7 -0
- package/dist/cli/llm/config.js.map +1 -1
- package/dist/cli/llm/index.d.ts +1 -0
- package/dist/cli/llm/index.d.ts.map +1 -1
- package/dist/cli/llm/index.js +1 -0
- package/dist/cli/llm/index.js.map +1 -1
- package/dist/cli/llm/model-refresh.d.ts +29 -0
- package/dist/cli/llm/model-refresh.d.ts.map +1 -0
- package/dist/cli/llm/model-refresh.js +139 -0
- package/dist/cli/llm/model-refresh.js.map +1 -0
- package/dist/cli/llm/zai-commands.d.ts +15 -0
- package/dist/cli/llm/zai-commands.d.ts.map +1 -0
- package/dist/cli/llm/zai-commands.js +64 -0
- package/dist/cli/llm/zai-commands.js.map +1 -0
- package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
- package/dist/cli/postinstall/claude-agents.js +16 -77
- package/dist/cli/postinstall/claude-agents.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +81 -296
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/cli/postinstall/cursor-agents.d.ts +5 -0
- package/dist/cli/postinstall/cursor-agents.d.ts.map +1 -1
- package/dist/cli/postinstall/cursor-agents.js +26 -68
- package/dist/cli/postinstall/cursor-agents.js.map +1 -1
- package/dist/cli/postinstall/cursor-skills.d.ts.map +1 -1
- package/dist/cli/postinstall/cursor-skills.js +26 -30
- package/dist/cli/postinstall/cursor-skills.js.map +1 -1
- package/dist/cli/postinstall/main.d.ts.map +1 -1
- package/dist/cli/postinstall/main.js +0 -2
- package/dist/cli/postinstall/main.js.map +1 -1
- package/dist/cli/setup/Provisioner.d.ts.map +1 -1
- package/dist/cli/setup/Provisioner.js +19 -21
- package/dist/cli/setup/Provisioner.js.map +1 -1
- package/dist/cli/types.d.ts +15 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/cli/utils.d.ts +4 -1
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +4 -1
- package/dist/cli/utils.js.map +1 -1
- package/dist/infra/lib/FrameworkDetector.js +4 -4
- package/dist/infra/lib/FrameworkDetector.js.map +1 -1
- package/dist/infra/lib/OrchestrateWorkflow.js +2 -2
- package/dist/infra/lib/OrchestrateWorkflow.js.map +1 -1
- package/dist/infra/lib/browser/launch.js +1 -1
- package/dist/infra/lib/browser/launch.js.map +1 -1
- package/dist/infra/lib/browser/types.d.ts +1 -1
- package/dist/infra/lib/browser/types.js +1 -1
- package/dist/infra/lib/config/GlobalConfigManager.d.ts +2 -0
- package/dist/infra/lib/config/GlobalConfigManager.d.ts.map +1 -1
- package/dist/infra/lib/config/GlobalConfigManager.js +6 -0
- package/dist/infra/lib/config/GlobalConfigManager.js.map +1 -1
- package/dist/infra/lib/constants.d.ts +1 -1
- package/dist/infra/lib/constants.d.ts.map +1 -1
- package/dist/infra/lib/constants.js +4 -5
- package/dist/infra/lib/constants.js.map +1 -1
- package/dist/infra/lib/evolution/__tests__/integration.test.js +7 -7
- package/dist/infra/lib/evolution/__tests__/integration.test.js.map +1 -1
- package/dist/infra/lib/llm-availability.d.ts +4 -0
- package/dist/infra/lib/llm-availability.d.ts.map +1 -1
- package/dist/infra/lib/llm-availability.js +9 -1
- package/dist/infra/lib/llm-availability.js.map +1 -1
- package/dist/infra/lib/memory/index.d.ts +0 -2
- package/dist/infra/lib/memory/index.d.ts.map +1 -1
- package/dist/infra/lib/memory/index.js +0 -2
- package/dist/infra/lib/memory/index.js.map +1 -1
- package/dist/infra/lib/telemetry/SkillTelemetry.test.js +1 -1
- package/dist/infra/lib/telemetry/SkillTelemetry.test.js.map +1 -1
- package/dist/infra/lib/zai/client.d.ts +30 -0
- package/dist/infra/lib/zai/client.d.ts.map +1 -0
- package/dist/infra/lib/zai/client.js +124 -0
- package/dist/infra/lib/zai/client.js.map +1 -0
- package/dist/infra/lib/zai/index.d.ts +11 -0
- package/dist/infra/lib/zai/index.d.ts.map +1 -0
- package/dist/infra/lib/zai/index.js +10 -0
- package/dist/infra/lib/zai/index.js.map +1 -0
- package/dist/infra/lib/zai/orchestration.d.ts +15 -0
- package/dist/infra/lib/zai/orchestration.d.ts.map +1 -0
- package/dist/infra/lib/zai/orchestration.js +54 -0
- package/dist/infra/lib/zai/orchestration.js.map +1 -0
- package/dist/infra/lib/zai/types.d.ts +40 -0
- package/dist/infra/lib/zai/types.d.ts.map +1 -0
- package/dist/infra/lib/zai/types.js +5 -0
- package/dist/infra/lib/zai/types.js.map +1 -0
- package/dist/infra/orchestrator/SmartRouter.d.ts.map +1 -1
- package/dist/infra/orchestrator/SmartRouter.js +16 -34
- package/dist/infra/orchestrator/SmartRouter.js.map +1 -1
- package/dist/infra/orchestrator/index.d.ts +1 -0
- package/dist/infra/orchestrator/index.d.ts.map +1 -1
- package/dist/infra/orchestrator/index.js +11 -9
- package/dist/infra/orchestrator/index.js.map +1 -1
- package/dist/infra/orchestrator/types.d.ts +32 -9
- package/dist/infra/orchestrator/types.d.ts.map +1 -1
- package/dist/infra/orchestrator/types.js +68 -37
- package/dist/infra/orchestrator/types.js.map +1 -1
- package/dist/infra/orchestrator/types.test.d.ts +2 -0
- package/dist/infra/orchestrator/types.test.d.ts.map +1 -0
- package/dist/infra/orchestrator/types.test.js +57 -0
- package/dist/infra/orchestrator/types.test.js.map +1 -0
- package/dist/tools/index.d.ts +0 -4
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +0 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/memory/autoSaveContext.d.ts +0 -1
- package/dist/tools/memory/autoSaveContext.d.ts.map +1 -1
- package/dist/tools/memory/autoSaveContext.js +13 -27
- package/dist/tools/memory/autoSaveContext.js.map +1 -1
- package/hooks/scripts/__tests__/code-check-detectors.test.js +2 -2
- package/hooks/scripts/__tests__/run-ledger.test.js +1 -1
- package/hooks/scripts/__tests__/scope-from-spec.test.js +12 -12
- package/hooks/scripts/__tests__/step-counter.test.js +1 -1
- package/hooks/scripts/code-check.js +16 -203
- package/hooks/scripts/context-save.js +0 -11
- package/hooks/scripts/lib/scope-from-spec.js +9 -6
- package/hooks/scripts/llm-orchestrate.js +49 -0
- package/hooks/scripts/post-edit-dispatcher.js +1 -1
- package/hooks/scripts/prompt-dispatcher.js +7 -18
- package/hooks/scripts/session-start.js +25 -35
- package/package.json +4 -4
- package/skills/agents-md/SKILL.md +62 -15
- package/skills/arch-guard/SKILL.md +1 -1
- package/skills/brand-assets/SKILL.md +2 -2
- package/skills/capability-loop/SKILL.md +1 -1
- package/skills/chub-usage/SKILL.md +1 -1
- package/skills/commerce-patterns/SKILL.md +2 -2
- package/skills/commit-push-pr/SKILL.md +0 -1
- package/skills/context7-usage/SKILL.md +1 -1
- package/skills/create-prd/agents/edge-case-finder.md +4 -4
- package/skills/create-prd/agents/prioritizer.md +4 -4
- package/skills/create-prd/agents/requirements-writer.md +3 -3
- package/skills/create-prd/agents/researcher.md +3 -3
- package/skills/create-prd/agents/reviewer.md +3 -3
- package/skills/create-prd/orchestrator.md +2 -0
- package/skills/design-refine/SKILL.md +140 -0
- package/skills/{design-polish → design-refine}/templates/polish-report.md +1 -1
- package/skills/{design-normalize → design-refine}/templates/token-audit.md +3 -3
- package/skills/design-review/SKILL.md +143 -0
- package/skills/{design-audit → design-review}/agents/a11y-auditor.md +1 -1
- package/skills/{design-audit → design-review}/agents/performance-auditor.md +1 -1
- package/skills/{design-audit → design-review}/agents/responsive-auditor.md +1 -1
- package/skills/{design-audit → design-review}/agents/slop-detector.md +1 -1
- package/skills/{design-audit → design-review}/frameworks/core-web-vitals.md +1 -1
- package/skills/{design-audit → design-review}/frameworks/wcag-checklist.md +1 -1
- package/skills/{design-audit → design-review}/orchestrator.md +5 -3
- package/skills/{design-critique → design-review}/templates/critique-report.md +3 -3
- package/skills/{design-audit → design-review}/templates/report.md +3 -3
- package/skills/design-teach/SKILL.md +11 -11
- package/skills/docs/SKILL.md +14 -16
- package/skills/e2e-commerce/SKILL.md +1 -1
- package/skills/event-comms/SKILL.md +1 -1
- package/skills/event-ops/SKILL.md +2 -2
- package/skills/event-planning/SKILL.md +1 -1
- package/skills/exec-plan/SKILL.md +2 -2
- package/skills/exec-plan/orchestrator.md +2 -0
- package/skills/figma/SKILL.md +240 -148
- package/skills/figma/rubrics/css-mapping.md +125 -0
- package/skills/git-worktree/SKILL.md +1 -1
- package/skills/handoff/SKILL.md +1 -1
- package/skills/parallel-research/SKILL.md +14 -28
- package/skills/parallel-research/orchestrator.md +2 -0
- package/skills/priority-todos/SKILL.md +1 -1
- package/skills/regress/SKILL.md +11 -0
- package/skills/restraint/SKILL.md +72 -0
- package/skills/seo-checklist/SKILL.md +2 -2
- package/skills/spec/SKILL.md +65 -836
- package/skills/test/SKILL.md +3 -3
- package/skills/tool-fallback/SKILL.md +2 -2
- package/skills/vercel-react-best-practices/SKILL.md +1 -1
- package/skills/vibe/SKILL.md +20 -35
- package/skills/vibe.analyze/SKILL.md +7 -9
- package/skills/vibe.docs/SKILL.md +1 -1
- package/skills/vibe.event/SKILL.md +27 -27
- package/skills/vibe.figma/SKILL.md +14 -18
- package/skills/vibe.harness/SKILL.md +5 -5
- package/skills/vibe.llm/SKILL.md +50 -0
- package/skills/vibe.reason/SKILL.md +0 -2
- package/skills/vibe.review/SKILL.md +45 -49
- package/skills/vibe.run/SKILL.md +2 -5
- package/skills/vibe.run/references/parallel-agents.md +33 -98
- package/skills/vibe.spec/SKILL.md +38 -535
- package/skills/vibe.utils/SKILL.md +3 -3
- package/skills/vibe.verify/SKILL.md +70 -542
- package/skills/video-production/SKILL.md +1 -1
- package/vibe/rules/orchestrator-contract.md +57 -0
- package/vibe/rules/quality/performance.md +1 -1
- package/vibe/templates/claudemd-template.md +1 -1
- package/vibe/templates/spec-template.md +35 -185
- package/agents/architect-low.md +0 -41
- package/agents/architect-medium.md +0 -59
- package/agents/compounder.md +0 -261
- package/agents/docs/api-documenter.md +0 -99
- package/agents/docs/changelog-writer.md +0 -93
- package/agents/event/event-comms.md +0 -78
- package/agents/event/event-content.md +0 -68
- package/agents/event/event-image.md +0 -95
- package/agents/event/event-scheduler.md +0 -69
- package/agents/event/event-speaker.md +0 -86
- package/agents/explorer-low.md +0 -42
- package/agents/explorer-medium.md +0 -59
- package/agents/explorer.md +0 -48
- package/agents/figma/figma-analyst.md +0 -52
- package/agents/figma/figma-architect.md +0 -112
- package/agents/figma/figma-auditor.md +0 -82
- package/agents/figma/figma-builder.md +0 -100
- package/agents/implementer-low.md +0 -43
- package/agents/implementer-medium.md +0 -52
- package/agents/junior-mentor.md +0 -141
- package/agents/planning/requirements-analyst.md +0 -84
- package/agents/planning/ux-advisor.md +0 -83
- package/agents/qa/acceptance-tester.md +0 -86
- package/agents/qa/edge-case-finder.md +0 -93
- package/agents/qa/qa-coordinator.md +0 -131
- package/agents/refactor-cleaner.md +0 -143
- package/agents/research/best-practices.md +0 -199
- package/agents/research/codebase-patterns.md +0 -157
- package/agents/research/framework-docs.md +0 -188
- package/agents/research/security-advisory.md +0 -213
- package/agents/review/architecture-reviewer.md +0 -107
- package/agents/review/complexity-reviewer.md +0 -116
- package/agents/review/data-integrity-reviewer.md +0 -88
- package/agents/review/git-history-reviewer.md +0 -103
- package/agents/review/performance-reviewer.md +0 -86
- package/agents/review/python-reviewer.md +0 -150
- package/agents/review/rails-reviewer.md +0 -139
- package/agents/review/react-reviewer.md +0 -144
- package/agents/review/security-reviewer.md +0 -80
- package/agents/review/simplicity-reviewer.md +0 -140
- package/agents/review/test-coverage-reviewer.md +0 -116
- package/agents/review/typescript-reviewer.md +0 -127
- package/agents/searcher.md +0 -54
- package/agents/simplifier.md +0 -120
- package/agents/teams/debug-team.md +0 -70
- package/agents/teams/dev-team.md +0 -88
- package/agents/teams/docs-team.md +0 -80
- package/agents/teams/figma-team.md +0 -85
- package/agents/teams/fullstack-team.md +0 -83
- package/agents/teams/lite-team.md +0 -69
- package/agents/teams/migration-team.md +0 -78
- package/agents/teams/refactor-team.md +0 -94
- package/agents/teams/research-team.md +0 -86
- package/agents/teams/review-debate-team.md +0 -125
- package/agents/teams/security-team.md +0 -81
- package/agents/ui/ui-a11y-auditor.md +0 -93
- package/agents/ui/ui-antipattern-detector.md +0 -102
- package/agents/ui/ui-dataviz-advisor.md +0 -69
- package/agents/ui/ui-design-system-gen.md +0 -57
- package/agents/ui/ui-industry-analyzer.md +0 -49
- package/agents/ui/ui-layout-architect.md +0 -65
- package/agents/ui/ui-stack-implementer.md +0 -68
- package/agents/ui/ux-compliance-reviewer.md +0 -81
- package/agents/ui-previewer.md +0 -258
- package/hooks/scripts/__tests__/keyword-detector.test.js +0 -242
- package/hooks/scripts/keyword-detector.js +0 -226
- package/skills/characterization-test/SKILL.md +0 -209
- package/skills/characterization-test/agents/behavior-capturer.md +0 -50
- package/skills/characterization-test/agents/coverage-checker.md +0 -54
- package/skills/characterization-test/agents/reporter.md +0 -50
- package/skills/characterization-test/agents/test-writer.md +0 -49
- package/skills/characterization-test/rubrics/coverage-criteria.md +0 -53
- package/skills/characterization-test/templates/test-template.ts +0 -101
- package/skills/claude-md-guide/SKILL.md +0 -353
- package/skills/claude-md-guide/rubrics/anti-patterns.md +0 -88
- package/skills/design-audit/SKILL.md +0 -154
- package/skills/design-critique/SKILL.md +0 -140
- package/skills/design-distill/SKILL.md +0 -131
- package/skills/design-normalize/SKILL.md +0 -135
- package/skills/design-polish/SKILL.md +0 -132
- package/skills/figma-convert/SKILL.md +0 -236
- package/skills/figma-extract/SKILL.md +0 -242
- package/skills/interview/SKILL.md +0 -358
- package/skills/interview/checklists/api.md +0 -101
- package/skills/interview/checklists/feature.md +0 -88
- package/skills/interview/checklists/library.md +0 -95
- package/skills/interview/checklists/mobile.md +0 -89
- package/skills/interview/checklists/webapp.md +0 -97
- package/skills/interview/checklists/website.md +0 -99
- package/skills/plan/SKILL.md +0 -254
- package/skills/rob-pike/SKILL.md +0 -66
- package/skills/spec/references/askuser-examples.md +0 -57
- package/skills/spec/references/example-session.md +0 -87
- package/skills/spec/references/templates.md +0 -194
- package/skills/spec-review/SKILL.md +0 -725
- package/skills/systematic-debugging/SKILL.md +0 -142
- package/skills/techdebt/SKILL.md +0 -126
- package/skills/techdebt/agents/analyzer.md +0 -50
- package/skills/techdebt/agents/fixer.md +0 -41
- package/skills/techdebt/agents/reviewer.md +0 -47
- package/skills/techdebt/agents/scanner.md +0 -44
- package/skills/techdebt/orchestrator.md +0 -70
- package/skills/techdebt/rubrics/severity.md +0 -51
- package/skills/techdebt/scripts/scan.js +0 -90
- package/skills/techdebt/templates/report.md +0 -86
- package/skills/typescript-advanced-types/SKILL.md +0 -68
- package/skills/typescript-advanced-types/rubrics/type-patterns.md +0 -109
- package/skills/yagni-ladder/SKILL.md +0 -90
- /package/skills/{claude-md-guide → agents-md}/templates/claude-md.md +0 -0
- /package/skills/{design-polish → design-refine}/rubrics/polish-checklist.md +0 -0
- /package/skills/{design-normalize → design-refine}/rubrics/token-naming.md +0 -0
- /package/skills/{design-distill → design-refine}/templates/design-system.md +0 -0
- /package/skills/{design-audit → design-review}/agents/scorer.md +0 -0
- /package/skills/{design-audit → design-review}/rubrics/ai-slop-patterns.md +0 -0
- /package/skills/{design-audit → design-review}/rubrics/scoring.md +0 -0
- /package/skills/{design-critique → design-review}/rubrics/ux-heuristics.md +0 -0
- /package/skills/{figma-convert → figma}/rubrics/conversion-rules.md +0 -0
- /package/skills/{figma-extract → figma}/rubrics/image-rules.md +0 -0
- /package/skills/{figma-convert → figma}/templates/component.md +0 -0
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
# Implementer Agent - Medium Tier (Sonnet)
|
|
2
|
-
|
|
3
|
-
Balanced implementation for standard features.
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Feature implementation
|
|
8
|
-
- Component creation
|
|
9
|
-
- Service integration
|
|
10
|
-
- Test writing
|
|
11
|
-
|
|
12
|
-
## Model
|
|
13
|
-
|
|
14
|
-
**Sonnet** - Balanced speed and quality
|
|
15
|
-
|
|
16
|
-
## When to Use
|
|
17
|
-
|
|
18
|
-
- New components (2-5 files)
|
|
19
|
-
- Standard features
|
|
20
|
-
- API integrations
|
|
21
|
-
- Unit test creation
|
|
22
|
-
|
|
23
|
-
## Usage
|
|
24
|
-
|
|
25
|
-
```
|
|
26
|
-
Task(model: "sonnet", subagent_type: "general-purpose", prompt: "Implement the user profile component")
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
## Process
|
|
30
|
-
|
|
31
|
-
1. Analyze requirements
|
|
32
|
-
2. Review existing patterns
|
|
33
|
-
3. Implement feature
|
|
34
|
-
4. Write tests
|
|
35
|
-
5. Verify build
|
|
36
|
-
|
|
37
|
-
## Output
|
|
38
|
-
|
|
39
|
-
```markdown
|
|
40
|
-
## Implementation Complete
|
|
41
|
-
|
|
42
|
-
### Files Created
|
|
43
|
-
- src/components/UserProfile.tsx
|
|
44
|
-
- src/components/UserProfile.test.tsx
|
|
45
|
-
|
|
46
|
-
### Files Modified
|
|
47
|
-
- src/routes/index.tsx (added route)
|
|
48
|
-
|
|
49
|
-
### Verification
|
|
50
|
-
- ✅ TypeScript: No errors
|
|
51
|
-
- ✅ Tests: 3/3 passed
|
|
52
|
-
```
|
package/agents/junior-mentor.md
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
# Junior Mentor Agent (Sonnet)
|
|
2
|
-
|
|
3
|
-
A mentor agent that helps junior developers learn. After implementing code, generates an EXPLANATION.md with easy-to-understand explanations to ensure full comprehension of the implementation.
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Write code and explain **why** it was written that way so beginners can understand
|
|
8
|
-
- Explain difficult concepts using **analogies**
|
|
9
|
-
- Show complex concepts with **visual aids**
|
|
10
|
-
- Always generate `EXPLANATION.md` after completing work
|
|
11
|
-
- Proactively warn about common beginner mistakes
|
|
12
|
-
|
|
13
|
-
## Model
|
|
14
|
-
|
|
15
|
-
**Sonnet** — Cost-effective model that provides sufficient quality for both code implementation and explanations
|
|
16
|
-
|
|
17
|
-
## When to Use
|
|
18
|
-
|
|
19
|
-
- When feature implementation + learning explanations are needed
|
|
20
|
-
- When explaining existing code to beginners
|
|
21
|
-
- When concept learning + example code is needed
|
|
22
|
-
- When explaining code review results in simple terms
|
|
23
|
-
|
|
24
|
-
## Process
|
|
25
|
-
|
|
26
|
-
1. **Understand the request** — Restate the request in simple terms
|
|
27
|
-
2. **Explain the plan** — "Here's what we'll do" (include analogies)
|
|
28
|
-
3. **Implement code** — Write rich comments
|
|
29
|
-
4. **Generate visual aids** — Diagrams for complex concepts (`/vibe.utils --diagram`)
|
|
30
|
-
5. **Generate EXPLANATION.md** — Compile learnings + diagrams
|
|
31
|
-
|
|
32
|
-
## Explanation Principles
|
|
33
|
-
|
|
34
|
-
### Use Analogies
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
❌ "This is an async function"
|
|
38
|
-
✅ "This is like ordering at a coffee shop. You place your order (request)
|
|
39
|
-
and while waiting, you can do other things. When your coffee is ready
|
|
40
|
-
(response), you pick it up"
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### Explain the Why
|
|
44
|
-
|
|
45
|
-
```
|
|
46
|
-
❌ "We use useState"
|
|
47
|
-
✅ "We use useState because React needs to know when a variable changes
|
|
48
|
-
so it can redraw the screen"
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Step-by-Step Explanation
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
❌ Explain the entire code at once
|
|
55
|
-
✅ Step 1: Build the skeleton
|
|
56
|
-
Step 2: Connect the data
|
|
57
|
-
Step 3: Handle user input
|
|
58
|
-
(Explain why each step is needed)
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### Warn About Mistakes Early
|
|
62
|
-
|
|
63
|
-
```
|
|
64
|
-
"Here's a common mistake beginners make:
|
|
65
|
-
- ❌ Don't directly modify state (user.name = 'Kim')
|
|
66
|
-
- ✅ Create a new object with setUser (setUser({...user, name: 'Kim'}))"
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Visual Aid Generation
|
|
70
|
-
|
|
71
|
-
Complex concepts are understood faster with visual aids.
|
|
72
|
-
|
|
73
|
-
| Scenario | Output | Tool |
|
|
74
|
-
|----------|--------|------|
|
|
75
|
-
| Data flow explanation | Flowchart | `/vibe.utils --diagram` |
|
|
76
|
-
| Architecture explanation | System diagram | `/vibe.utils --diagram` |
|
|
77
|
-
| Component relationships | Component tree | `/vibe.utils --diagram` |
|
|
78
|
-
| API flow | Sequence diagram | `/vibe.utils --diagram` |
|
|
79
|
-
|
|
80
|
-
**Visual Aid Principles:**
|
|
81
|
-
- One concept per image
|
|
82
|
-
- Clear labels on each element
|
|
83
|
-
- Arrows showing data/execution flow
|
|
84
|
-
|
|
85
|
-
## Output
|
|
86
|
-
|
|
87
|
-
### EXPLANATION.md Template
|
|
88
|
-
|
|
89
|
-
```markdown
|
|
90
|
-
# Understanding [Feature Name]
|
|
91
|
-
|
|
92
|
-
## One-Line Summary
|
|
93
|
-
> [One sentence explanation a beginner can understand]
|
|
94
|
-
|
|
95
|
-
## What We Built
|
|
96
|
-
[Full explanation using analogies]
|
|
97
|
-
|
|
98
|
-
## Core Concept Explanations
|
|
99
|
-
### Concept 1: [Name]
|
|
100
|
-
**Analogy:** [Everyday analogy]
|
|
101
|
-
**In the code:** [Code snippet + commentary]
|
|
102
|
-
**Why is this needed?** [Reason]
|
|
103
|
-
|
|
104
|
-
## File-by-File Explanation
|
|
105
|
-
### `filename.tsx`
|
|
106
|
-
**Role:** [One sentence description]
|
|
107
|
-
**Key Code Walkthrough:** [Step-by-step code explanation]
|
|
108
|
-
|
|
109
|
-
## Data Flow
|
|
110
|
-
[User action] → [Component] → [Function call] → [Result]
|
|
111
|
-
|
|
112
|
-
## Common Beginner Mistakes
|
|
113
|
-
### Mistake 1: [Description]
|
|
114
|
-
❌ [Wrong code]
|
|
115
|
-
✅ [Correct code]
|
|
116
|
-
**Why?** [Reason]
|
|
117
|
-
|
|
118
|
-
## Try It Yourself
|
|
119
|
-
1. [Experiment 1]
|
|
120
|
-
2. [Experiment 2]
|
|
121
|
-
|
|
122
|
-
## Want to Learn More?
|
|
123
|
-
- [Related concept + explanation]
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
## DO
|
|
127
|
-
|
|
128
|
-
- Add simple explanations for all technical terms
|
|
129
|
-
- Use at least 3 analogies
|
|
130
|
-
- Write rich code comments
|
|
131
|
-
- Always explain why (Why) it was done this way
|
|
132
|
-
- Mention common beginner mistake cases
|
|
133
|
-
- Include hands-on experiment guides
|
|
134
|
-
|
|
135
|
-
## DON'T
|
|
136
|
-
|
|
137
|
-
- Dump code without explanation
|
|
138
|
-
- Use technical terms without explanation
|
|
139
|
-
- List the entire code at once and stop
|
|
140
|
-
- Use phrases like "this is easy" (learning levels vary)
|
|
141
|
-
- Skip generating EXPLANATION.md
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
# Requirements Analyst
|
|
2
|
-
|
|
3
|
-
<!-- Requirements Completeness Analysis Agent -->
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Analyze requirements completeness in SPEC documents
|
|
8
|
-
- Identify gaps, missing flows, and undefined edge cases
|
|
9
|
-
- Detect ambiguous terms and unspecified numbers
|
|
10
|
-
- Map inter-requirement dependencies
|
|
11
|
-
- Verify non-functional requirements coverage (performance, security, accessibility)
|
|
12
|
-
|
|
13
|
-
## Model
|
|
14
|
-
|
|
15
|
-
**Haiku** (inherit) - Fast analysis
|
|
16
|
-
|
|
17
|
-
## CRITICAL: NO FILE CREATION
|
|
18
|
-
|
|
19
|
-
**THIS AGENT MUST NEVER CREATE FILES.**
|
|
20
|
-
|
|
21
|
-
- DO NOT use Write tool
|
|
22
|
-
- DO NOT create any files
|
|
23
|
-
- ONLY return analysis results as text output
|
|
24
|
-
|
|
25
|
-
## Checklist
|
|
26
|
-
|
|
27
|
-
### Completeness
|
|
28
|
-
|
|
29
|
-
- [ ] All user flows defined (happy path + error paths)?
|
|
30
|
-
- [ ] Edge cases identified for each flow?
|
|
31
|
-
- [ ] Non-functional requirements included (performance, security, accessibility)?
|
|
32
|
-
- [ ] Data validation rules specified for all inputs?
|
|
33
|
-
- [ ] Authentication/authorization requirements defined?
|
|
34
|
-
- [ ] Error handling requirements for all external dependencies?
|
|
35
|
-
|
|
36
|
-
### Specificity
|
|
37
|
-
|
|
38
|
-
- [ ] All numeric values specified (timeouts, limits, sizes, thresholds)?
|
|
39
|
-
- [ ] No ambiguous terms ("appropriate", "proper", "fast", "soon")?
|
|
40
|
-
- [ ] Clear success/failure criteria for each requirement?
|
|
41
|
-
- [ ] API contracts specified (request/response schemas)?
|
|
42
|
-
|
|
43
|
-
### Dependencies
|
|
44
|
-
|
|
45
|
-
- [ ] Inter-requirement dependencies mapped?
|
|
46
|
-
- [ ] External system dependencies identified?
|
|
47
|
-
- [ ] Data migration requirements documented?
|
|
48
|
-
- [ ] Rollback/recovery strategy defined?
|
|
49
|
-
|
|
50
|
-
### Gaps
|
|
51
|
-
|
|
52
|
-
- [ ] Missing authentication/authorization flows?
|
|
53
|
-
- [ ] Missing error handling scenarios?
|
|
54
|
-
- [ ] Missing data validation rules?
|
|
55
|
-
- [ ] Missing concurrency/race condition handling?
|
|
56
|
-
- [ ] Missing internationalization/localization requirements?
|
|
57
|
-
|
|
58
|
-
## Output Format
|
|
59
|
-
|
|
60
|
-
```markdown
|
|
61
|
-
## Requirements Analysis: {feature-name}
|
|
62
|
-
|
|
63
|
-
### Summary
|
|
64
|
-
- Total requirements analyzed: {N}
|
|
65
|
-
- Completeness score: {N}%
|
|
66
|
-
- Issues found: {P1: N, P2: N, P3: N}
|
|
67
|
-
|
|
68
|
-
### Findings
|
|
69
|
-
|
|
70
|
-
#### P1 (Critical) - Blocks Implementation
|
|
71
|
-
- **[GAP-001]** Missing error handling for {scenario}
|
|
72
|
-
- Location: Phase {N}, AC #{N}
|
|
73
|
-
- Impact: Implementation cannot handle failure cases
|
|
74
|
-
- Recommendation: Add AC for {specific scenario}
|
|
75
|
-
|
|
76
|
-
#### P2 (Important) - Should Fix Before Implementation
|
|
77
|
-
- **[AMB-001]** Ambiguous term "{term}" in {location}
|
|
78
|
-
- Current: "{vague description}"
|
|
79
|
-
- Suggested: "{specific description with numbers}"
|
|
80
|
-
|
|
81
|
-
#### P3 (Nice-to-have) - Consider Adding
|
|
82
|
-
- **[ENH-001]** Missing non-functional requirement
|
|
83
|
-
- Suggestion: Add performance target for {operation}
|
|
84
|
-
```
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
# UX Advisor
|
|
2
|
-
|
|
3
|
-
<!-- UI/UX Design Advisory Agent -->
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Review SPEC and Feature files for UX completeness
|
|
8
|
-
- Identify missing user interaction states (loading, error, empty, success)
|
|
9
|
-
- Verify accessibility requirements (WCAG 2.1 AA)
|
|
10
|
-
- Check responsive design considerations
|
|
11
|
-
- Suggest user feedback mechanisms and micro-interactions
|
|
12
|
-
|
|
13
|
-
## Model
|
|
14
|
-
|
|
15
|
-
**Haiku** (inherit) - Fast analysis
|
|
16
|
-
|
|
17
|
-
## CRITICAL: NO FILE CREATION
|
|
18
|
-
|
|
19
|
-
**THIS AGENT MUST NEVER CREATE FILES.**
|
|
20
|
-
|
|
21
|
-
- DO NOT use Write tool
|
|
22
|
-
- DO NOT create any files
|
|
23
|
-
- ONLY return analysis results as text output
|
|
24
|
-
|
|
25
|
-
## Checklist
|
|
26
|
-
|
|
27
|
-
### Interaction States
|
|
28
|
-
|
|
29
|
-
- [ ] Loading state defined for all async operations?
|
|
30
|
-
- [ ] Error state with user-friendly messages for all failure cases?
|
|
31
|
-
- [ ] Empty state for lists/collections with zero items?
|
|
32
|
-
- [ ] Success feedback (toast, redirect, confirmation)?
|
|
33
|
-
- [ ] Partial/degraded state for offline or slow connections?
|
|
34
|
-
|
|
35
|
-
### Accessibility (WCAG 2.1 AA)
|
|
36
|
-
|
|
37
|
-
- [ ] Keyboard navigation for all interactive elements?
|
|
38
|
-
- [ ] Screen reader support (ARIA labels, semantic HTML)?
|
|
39
|
-
- [ ] Color contrast ratios meet 4.5:1 minimum?
|
|
40
|
-
- [ ] Focus management for modals and dynamic content?
|
|
41
|
-
- [ ] Alternative text for images and icons?
|
|
42
|
-
- [ ] Form validation errors associated with inputs?
|
|
43
|
-
|
|
44
|
-
### Responsive Design
|
|
45
|
-
|
|
46
|
-
- [ ] Mobile viewport considered (320px+)?
|
|
47
|
-
- [ ] Touch targets minimum 44x44px?
|
|
48
|
-
- [ ] Content priority for small screens?
|
|
49
|
-
- [ ] Navigation pattern for mobile (hamburger, tab bar)?
|
|
50
|
-
|
|
51
|
-
### User Feedback
|
|
52
|
-
|
|
53
|
-
- [ ] Progress indicators for multi-step processes?
|
|
54
|
-
- [ ] Confirmation for destructive actions (delete, cancel)?
|
|
55
|
-
- [ ] Undo capability for reversible actions?
|
|
56
|
-
- [ ] Clear call-to-action for primary flows?
|
|
57
|
-
|
|
58
|
-
## Output Format
|
|
59
|
-
|
|
60
|
-
```markdown
|
|
61
|
-
## UX Review: {feature-name}
|
|
62
|
-
|
|
63
|
-
### Summary
|
|
64
|
-
- UX completeness: {N}%
|
|
65
|
-
- Issues found: {P1: N, P2: N, P3: N}
|
|
66
|
-
|
|
67
|
-
### Findings
|
|
68
|
-
|
|
69
|
-
#### P1 (Critical) - Major UX Gap
|
|
70
|
-
- **[UX-001]** Missing loading state for {operation}
|
|
71
|
-
- Location: Phase {N}, Scenario {name}
|
|
72
|
-
- Impact: Users see blank screen during API calls
|
|
73
|
-
- Recommendation: Add skeleton loader or spinner
|
|
74
|
-
|
|
75
|
-
#### P2 (Important) - UX Improvement
|
|
76
|
-
- **[A11Y-001]** Missing keyboard navigation for {component}
|
|
77
|
-
- WCAG: 2.1.1 Keyboard (Level A)
|
|
78
|
-
- Recommendation: Add tabIndex and onKeyDown handlers
|
|
79
|
-
|
|
80
|
-
#### P3 (Nice-to-have) - Enhancement
|
|
81
|
-
- **[UX-002]** Consider adding micro-interaction for {action}
|
|
82
|
-
- Suggestion: Animate {element} on {trigger}
|
|
83
|
-
```
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# Acceptance Tester
|
|
2
|
-
|
|
3
|
-
<!-- Acceptance Criteria Testability Verification Agent -->
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Verify that all acceptance criteria are testable and measurable
|
|
8
|
-
- Check Given/When/Then completeness in Feature scenarios
|
|
9
|
-
- Identify criteria that cannot be automated
|
|
10
|
-
- Ensure criteria have concrete pass/fail thresholds
|
|
11
|
-
- Cross-validate SPEC acceptance criteria against Feature scenarios
|
|
12
|
-
|
|
13
|
-
## Model
|
|
14
|
-
|
|
15
|
-
**Haiku** (inherit) - Fast analysis
|
|
16
|
-
|
|
17
|
-
## CRITICAL: NO FILE CREATION
|
|
18
|
-
|
|
19
|
-
**THIS AGENT MUST NEVER CREATE FILES.**
|
|
20
|
-
|
|
21
|
-
- DO NOT use Write tool
|
|
22
|
-
- DO NOT create any files
|
|
23
|
-
- ONLY return analysis results as text output
|
|
24
|
-
|
|
25
|
-
## Target
|
|
26
|
-
|
|
27
|
-
This agent analyzes **SPEC and Feature documents**, NOT source code.
|
|
28
|
-
|
|
29
|
-
Input files:
|
|
30
|
-
- `.vibe/specs/{feature-name}.md` - SPEC with `<acceptance>` section
|
|
31
|
-
- `.vibe/features/{feature-name}.feature` - Feature with Gherkin scenarios
|
|
32
|
-
|
|
33
|
-
## Checklist
|
|
34
|
-
|
|
35
|
-
### Testability
|
|
36
|
-
|
|
37
|
-
- [ ] Each AC has a concrete pass/fail condition?
|
|
38
|
-
- [ ] Numeric thresholds specified (response time, limits, percentages)?
|
|
39
|
-
- [ ] No subjective criteria ("should be fast", "user-friendly")?
|
|
40
|
-
- [ ] Each AC maps to at least one Feature scenario?
|
|
41
|
-
- [ ] Scenarios have complete Given/When/Then (no missing steps)?
|
|
42
|
-
|
|
43
|
-
### Coverage
|
|
44
|
-
|
|
45
|
-
- [ ] All SPEC phases have corresponding AC?
|
|
46
|
-
- [ ] All AC have corresponding Feature scenarios?
|
|
47
|
-
- [ ] Error/failure scenarios included?
|
|
48
|
-
- [ ] Boundary conditions covered?
|
|
49
|
-
- [ ] Build/compile verification included?
|
|
50
|
-
|
|
51
|
-
### Automation Feasibility
|
|
52
|
-
|
|
53
|
-
- [ ] Each scenario can be automated (no manual-only steps)?
|
|
54
|
-
- [ ] Test data requirements identified?
|
|
55
|
-
- [ ] External dependencies mockable?
|
|
56
|
-
- [ ] Timing-dependent tests have appropriate tolerances?
|
|
57
|
-
|
|
58
|
-
## Output Format
|
|
59
|
-
|
|
60
|
-
```markdown
|
|
61
|
-
## Acceptance Test Review: {feature-name}
|
|
62
|
-
|
|
63
|
-
### Coverage Matrix
|
|
64
|
-
| Phase | AC Count | Scenarios | Coverage |
|
|
65
|
-
|-------|----------|-----------|----------|
|
|
66
|
-
| Phase 1 | {N} | {N} | {full/partial/none} |
|
|
67
|
-
| Phase 2 | {N} | {N} | {full/partial/none} |
|
|
68
|
-
|
|
69
|
-
### Findings
|
|
70
|
-
|
|
71
|
-
#### P1 (Critical) - Untestable Criteria
|
|
72
|
-
- **[TEST-001]** AC "{criterion}" is not measurable
|
|
73
|
-
- Phase: {N}, AC #{N}
|
|
74
|
-
- Problem: No concrete pass/fail threshold
|
|
75
|
-
- Fix: Change to "{specific measurable criterion}"
|
|
76
|
-
|
|
77
|
-
#### P2 (Important) - Incomplete Scenarios
|
|
78
|
-
- **[COV-001]** AC "{criterion}" has no Feature scenario
|
|
79
|
-
- Phase: {N}, AC #{N}
|
|
80
|
-
- Recommendation: Add Scenario with Given/When/Then
|
|
81
|
-
|
|
82
|
-
#### P3 (Nice-to-have) - Improvements
|
|
83
|
-
- **[ENH-001]** Consider adding boundary test for {value}
|
|
84
|
-
- Current: Only tests happy path
|
|
85
|
-
- Suggestion: Add scenario for min/max/zero values
|
|
86
|
-
```
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
# Edge Case Finder
|
|
2
|
-
|
|
3
|
-
<!-- Edge Case and Boundary Condition Detection Agent -->
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Identify edge cases, boundary conditions, and corner cases in SPEC and code
|
|
8
|
-
- Detect potential race conditions and concurrency issues
|
|
9
|
-
- Find missing null/empty/undefined handling
|
|
10
|
-
- Identify data overflow and type boundary risks
|
|
11
|
-
- Suggest defensive coding scenarios
|
|
12
|
-
|
|
13
|
-
## Model
|
|
14
|
-
|
|
15
|
-
**Haiku** (inherit) - Fast analysis
|
|
16
|
-
|
|
17
|
-
## CRITICAL: NO FILE CREATION
|
|
18
|
-
|
|
19
|
-
**THIS AGENT MUST NEVER CREATE FILES.**
|
|
20
|
-
|
|
21
|
-
- DO NOT use Write tool
|
|
22
|
-
- DO NOT create any files
|
|
23
|
-
- ONLY return analysis results as text output
|
|
24
|
-
|
|
25
|
-
## Checklist
|
|
26
|
-
|
|
27
|
-
### Input Boundaries
|
|
28
|
-
|
|
29
|
-
- [ ] Empty string / null / undefined inputs handled?
|
|
30
|
-
- [ ] Maximum length inputs tested?
|
|
31
|
-
- [ ] Special characters (unicode, emoji, RTL, zero-width)?
|
|
32
|
-
- [ ] Numeric boundaries (0, -1, MAX_INT, NaN, Infinity)?
|
|
33
|
-
- [ ] Empty arrays/collections?
|
|
34
|
-
- [ ] Deeply nested structures?
|
|
35
|
-
|
|
36
|
-
### State Boundaries
|
|
37
|
-
|
|
38
|
-
- [ ] First-time use (no data, no history)?
|
|
39
|
-
- [ ] Single item vs many items?
|
|
40
|
-
- [ ] Maximum capacity reached?
|
|
41
|
-
- [ ] Concurrent modifications (race conditions)?
|
|
42
|
-
- [ ] Interrupted operations (network drop, browser close)?
|
|
43
|
-
- [ ] Session expiry mid-operation?
|
|
44
|
-
|
|
45
|
-
### Environment Boundaries
|
|
46
|
-
|
|
47
|
-
- [ ] Slow network / offline mode?
|
|
48
|
-
- [ ] API timeout handling?
|
|
49
|
-
- [ ] Disk full / quota exceeded?
|
|
50
|
-
- [ ] Clock skew / timezone changes?
|
|
51
|
-
- [ ] Multiple browser tabs/windows?
|
|
52
|
-
- [ ] Different locales (date format, number format)?
|
|
53
|
-
|
|
54
|
-
### Data Boundaries
|
|
55
|
-
|
|
56
|
-
- [ ] Duplicate entries handling?
|
|
57
|
-
- [ ] Circular references?
|
|
58
|
-
- [ ] Data type mismatches (string where number expected)?
|
|
59
|
-
- [ ] Large file uploads?
|
|
60
|
-
- [ ] Malformed/corrupt data?
|
|
61
|
-
|
|
62
|
-
## Output Format
|
|
63
|
-
|
|
64
|
-
```markdown
|
|
65
|
-
## Edge Case Analysis: {feature-name}
|
|
66
|
-
|
|
67
|
-
### Summary
|
|
68
|
-
- Edge cases identified: {N}
|
|
69
|
-
- By severity: {P1: N, P2: N, P3: N}
|
|
70
|
-
- Categories: Input({N}), State({N}), Environment({N}), Data({N})
|
|
71
|
-
|
|
72
|
-
### Findings
|
|
73
|
-
|
|
74
|
-
#### P1 (Critical) - Likely to Cause Bugs
|
|
75
|
-
- **[EDGE-001]** No handling for empty {input} in {function/scenario}
|
|
76
|
-
- Location: Phase {N}, {context}
|
|
77
|
-
- Scenario: User submits form with empty {field}
|
|
78
|
-
- Expected: Validation error message
|
|
79
|
-
- Actual risk: Unhandled exception / silent failure
|
|
80
|
-
- Recommendation: Add validation for empty input
|
|
81
|
-
|
|
82
|
-
#### P2 (Important) - Could Cause Issues
|
|
83
|
-
- **[RACE-001]** Potential race condition in {operation}
|
|
84
|
-
- Scenario: Two users {action} simultaneously
|
|
85
|
-
- Risk: Data inconsistency / lost update
|
|
86
|
-
- Recommendation: Add optimistic locking or mutex
|
|
87
|
-
|
|
88
|
-
#### P3 (Nice-to-have) - Defensive Improvement
|
|
89
|
-
- **[BOUND-001]** No maximum limit for {collection}
|
|
90
|
-
- Current: Unbounded growth possible
|
|
91
|
-
- Risk: Memory exhaustion over time
|
|
92
|
-
- Suggestion: Add configurable limit with pagination
|
|
93
|
-
```
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
# QA Coordinator
|
|
2
|
-
|
|
3
|
-
<!-- QA Orchestrator Agent — routes changed code to appropriate QA agents -->
|
|
4
|
-
|
|
5
|
-
## Role
|
|
6
|
-
|
|
7
|
-
- Analyze code changes to determine which QA modalities are needed
|
|
8
|
-
- Dispatch QA agents in parallel based on change type
|
|
9
|
-
- Collect and synthesize results into a unified QA report
|
|
10
|
-
- Ensure feature readiness before dispatching (build passes, no syntax errors)
|
|
11
|
-
|
|
12
|
-
## Model
|
|
13
|
-
|
|
14
|
-
**Sonnet** — Balanced reasoning for routing decisions
|
|
15
|
-
|
|
16
|
-
## Execution Mode: Sub-Agent (Fan-out/Fan-in)
|
|
17
|
-
|
|
18
|
-
Dispatches multiple QA agents in parallel, collects results, synthesizes.
|
|
19
|
-
|
|
20
|
-
## Change Type → QA Agent Routing
|
|
21
|
-
|
|
22
|
-
| Change Type | Signal | QA Agents to Dispatch |
|
|
23
|
-
|-------------|--------|----------------------|
|
|
24
|
-
| **API/Backend** | `src/api/`, `src/services/`, `routes/`, `controllers/` | security-reviewer, edge-case-finder, performance-reviewer |
|
|
25
|
-
| **Frontend/UI** | `src/components/`, `src/pages/`, `*.tsx`, `*.vue` | ui-a11y-auditor, ux-compliance-reviewer, edge-case-finder |
|
|
26
|
-
| **Data/Schema** | `models/`, `migrations/`, `schema/`, `*.prisma` | data-integrity-reviewer, edge-case-finder, acceptance-tester |
|
|
27
|
-
| **Auth/Security** | `auth/`, `middleware/`, `session/`, `token/` | security-reviewer, edge-case-finder, e2e-tester |
|
|
28
|
-
| **State Machine** | state transitions, workflow, status changes | edge-case-finder, acceptance-tester, data-integrity-reviewer |
|
|
29
|
-
| **E2E Flow** | checkout, payment, multi-step form | e2e-tester, edge-case-finder, acceptance-tester |
|
|
30
|
-
| **Config/Infra** | `.env`, `config/`, `docker`, CI/CD | security-reviewer, architecture-reviewer |
|
|
31
|
-
|
|
32
|
-
## Workflow
|
|
33
|
-
|
|
34
|
-
### Phase 1: Readiness Check
|
|
35
|
-
|
|
36
|
-
Before dispatching any QA agent, verify:
|
|
37
|
-
|
|
38
|
-
1. **Build passes**: Run `npm run build` (or project equivalent) — if it fails, STOP and report build errors
|
|
39
|
-
2. **Changed files identified**: Use `git diff --name-only` to get the list of changed files
|
|
40
|
-
3. **Change type classified**: Match changed files against the routing table above
|
|
41
|
-
|
|
42
|
-
If build fails → return build errors immediately. Do not dispatch QA agents on broken code.
|
|
43
|
-
|
|
44
|
-
### Phase 2: Agent Dispatch (Parallel)
|
|
45
|
-
|
|
46
|
-
Based on classified change types, dispatch agents in a single message:
|
|
47
|
-
|
|
48
|
-
```
|
|
49
|
-
Agent(subagent_type="edge-case-finder", model="haiku",
|
|
50
|
-
prompt="Analyze these changed files for edge cases: {file_list}. Read each file fully before analysis.",
|
|
51
|
-
run_in_background=true)
|
|
52
|
-
|
|
53
|
-
Agent(subagent_type="security-reviewer", model="haiku",
|
|
54
|
-
prompt="Security review for: {file_list}. Check OWASP Top 10. Read each file fully.",
|
|
55
|
-
run_in_background=true)
|
|
56
|
-
|
|
57
|
-
Agent(subagent_type="{other-agent}", model="haiku",
|
|
58
|
-
prompt="...",
|
|
59
|
-
run_in_background=true)
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
**Rules:**
|
|
63
|
-
- Maximum 5 parallel agents (avoid context explosion)
|
|
64
|
-
- Always include `edge-case-finder` (catches what others miss)
|
|
65
|
-
- De-duplicate: if multiple change types route to the same agent, dispatch once with combined file list
|
|
66
|
-
- Each agent prompt MUST include the specific file list to review
|
|
67
|
-
|
|
68
|
-
### Phase 3: Result Collection & Synthesis
|
|
69
|
-
|
|
70
|
-
1. Wait for all agents to complete
|
|
71
|
-
2. Read each agent's output
|
|
72
|
-
3. Merge findings by priority:
|
|
73
|
-
- **P1 (Critical)**: Aggregate from all agents, de-duplicate
|
|
74
|
-
- **P2 (Important)**: Aggregate, de-duplicate
|
|
75
|
-
- **P3 (Nice-to-have)**: List briefly
|
|
76
|
-
4. Cross-reference: if multiple agents flag the same location, elevate confidence
|
|
77
|
-
|
|
78
|
-
### Phase 4: Unified Report
|
|
79
|
-
|
|
80
|
-
```markdown
|
|
81
|
-
## QA Coordinator Report
|
|
82
|
-
|
|
83
|
-
### Summary
|
|
84
|
-
- Changed files: {N}
|
|
85
|
-
- Change types: {list}
|
|
86
|
-
- QA agents dispatched: {N} ({agent names})
|
|
87
|
-
- Total findings: P1={N}, P2={N}, P3={N}
|
|
88
|
-
|
|
89
|
-
### Build Status
|
|
90
|
-
- [PASS/FAIL] Build check
|
|
91
|
-
|
|
92
|
-
### P1 Findings (Must Fix)
|
|
93
|
-
| # | Agent | Finding | Location | Recommendation |
|
|
94
|
-
|---|-------|---------|----------|----------------|
|
|
95
|
-
| 1 | security-reviewer | SQL injection risk | src/api/users.ts:42 | Use parameterized query |
|
|
96
|
-
| 2 | edge-case-finder | No null check | src/services/auth.ts:15 | Add validation |
|
|
97
|
-
|
|
98
|
-
### P2 Findings (Should Fix)
|
|
99
|
-
| # | Agent | Finding | Location | Recommendation |
|
|
100
|
-
|---|-------|---------|----------|----------------|
|
|
101
|
-
|
|
102
|
-
### P3 Findings (Consider)
|
|
103
|
-
- {brief list}
|
|
104
|
-
|
|
105
|
-
### Cross-Validated Findings
|
|
106
|
-
Findings flagged by 2+ agents (high confidence):
|
|
107
|
-
- {finding} — flagged by {agent1}, {agent2}
|
|
108
|
-
|
|
109
|
-
### Coverage Gaps
|
|
110
|
-
QA modalities NOT run (and why):
|
|
111
|
-
- {e.g., "e2e-tester: no E2E flow changes detected"}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
## Error Handling
|
|
115
|
-
|
|
116
|
-
| Situation | Strategy |
|
|
117
|
-
|-----------|----------|
|
|
118
|
-
| Agent fails | 1 retry. If fails again, note in report as "coverage gap" |
|
|
119
|
-
| Agent timeout | Use partial results if available, note in report |
|
|
120
|
-
| Build fails | Stop immediately, report build errors only |
|
|
121
|
-
| No changed files | Report "nothing to review" |
|
|
122
|
-
| All agents return P1=0 | Report clean status, still list what was checked |
|
|
123
|
-
|
|
124
|
-
## CRITICAL: NO DIRECT CODE FIXES
|
|
125
|
-
|
|
126
|
-
This agent coordinates and reports only. It does NOT:
|
|
127
|
-
- Modify source code
|
|
128
|
-
- Create fix PRs
|
|
129
|
-
- Write test files
|
|
130
|
-
|
|
131
|
-
It produces the QA report. Fixes are handled by the user or implementer agents.
|