@agile-vibe-coding/avc 0.1.0 → 0.2.3
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/README.md +2 -0
- package/cli/agent-loader.js +21 -0
- package/cli/agents/agent-selector.md +129 -0
- package/cli/agents/architecture-recommender.md +418 -0
- package/cli/agents/database-deep-dive.md +470 -0
- package/cli/agents/database-recommender.md +634 -0
- package/cli/agents/doc-distributor.md +176 -0
- package/cli/agents/documentation-updater.md +203 -0
- package/cli/agents/epic-story-decomposer.md +280 -0
- package/cli/agents/feature-context-generator.md +91 -0
- package/cli/agents/gap-checker-epic.md +52 -0
- package/cli/agents/impact-checker-story.md +51 -0
- package/cli/agents/migration-guide-generator.md +305 -0
- package/cli/agents/mission-scope-generator.md +79 -0
- package/cli/agents/mission-scope-validator.md +112 -0
- package/cli/agents/project-context-extractor.md +107 -0
- package/cli/agents/project-documentation-creator.json +226 -0
- package/cli/agents/project-documentation-creator.md +595 -0
- package/cli/agents/question-prefiller.md +269 -0
- package/cli/agents/refiner-epic.md +39 -0
- package/cli/agents/refiner-story.md +42 -0
- package/cli/agents/solver-epic-api.json +15 -0
- package/cli/agents/solver-epic-api.md +39 -0
- package/cli/agents/solver-epic-backend.json +15 -0
- package/cli/agents/solver-epic-backend.md +39 -0
- package/cli/agents/solver-epic-cloud.json +15 -0
- package/cli/agents/solver-epic-cloud.md +39 -0
- package/cli/agents/solver-epic-data.json +15 -0
- package/cli/agents/solver-epic-data.md +39 -0
- package/cli/agents/solver-epic-database.json +15 -0
- package/cli/agents/solver-epic-database.md +39 -0
- package/cli/agents/solver-epic-developer.json +15 -0
- package/cli/agents/solver-epic-developer.md +39 -0
- package/cli/agents/solver-epic-devops.json +15 -0
- package/cli/agents/solver-epic-devops.md +39 -0
- package/cli/agents/solver-epic-frontend.json +15 -0
- package/cli/agents/solver-epic-frontend.md +39 -0
- package/cli/agents/solver-epic-mobile.json +15 -0
- package/cli/agents/solver-epic-mobile.md +39 -0
- package/cli/agents/solver-epic-qa.json +15 -0
- package/cli/agents/solver-epic-qa.md +39 -0
- package/cli/agents/solver-epic-security.json +15 -0
- package/cli/agents/solver-epic-security.md +39 -0
- package/cli/agents/solver-epic-solution-architect.json +15 -0
- package/cli/agents/solver-epic-solution-architect.md +39 -0
- package/cli/agents/solver-epic-test-architect.json +15 -0
- package/cli/agents/solver-epic-test-architect.md +39 -0
- package/cli/agents/solver-epic-ui.json +15 -0
- package/cli/agents/solver-epic-ui.md +39 -0
- package/cli/agents/solver-epic-ux.json +15 -0
- package/cli/agents/solver-epic-ux.md +39 -0
- package/cli/agents/solver-story-api.json +15 -0
- package/cli/agents/solver-story-api.md +39 -0
- package/cli/agents/solver-story-backend.json +15 -0
- package/cli/agents/solver-story-backend.md +39 -0
- package/cli/agents/solver-story-cloud.json +15 -0
- package/cli/agents/solver-story-cloud.md +39 -0
- package/cli/agents/solver-story-data.json +15 -0
- package/cli/agents/solver-story-data.md +39 -0
- package/cli/agents/solver-story-database.json +15 -0
- package/cli/agents/solver-story-database.md +39 -0
- package/cli/agents/solver-story-developer.json +15 -0
- package/cli/agents/solver-story-developer.md +39 -0
- package/cli/agents/solver-story-devops.json +15 -0
- package/cli/agents/solver-story-devops.md +39 -0
- package/cli/agents/solver-story-frontend.json +15 -0
- package/cli/agents/solver-story-frontend.md +39 -0
- package/cli/agents/solver-story-mobile.json +15 -0
- package/cli/agents/solver-story-mobile.md +39 -0
- package/cli/agents/solver-story-qa.json +15 -0
- package/cli/agents/solver-story-qa.md +39 -0
- package/cli/agents/solver-story-security.json +15 -0
- package/cli/agents/solver-story-security.md +39 -0
- package/cli/agents/solver-story-solution-architect.json +15 -0
- package/cli/agents/solver-story-solution-architect.md +39 -0
- package/cli/agents/solver-story-test-architect.json +15 -0
- package/cli/agents/solver-story-test-architect.md +39 -0
- package/cli/agents/solver-story-ui.json +15 -0
- package/cli/agents/solver-story-ui.md +39 -0
- package/cli/agents/solver-story-ux.json +15 -0
- package/cli/agents/solver-story-ux.md +39 -0
- package/cli/agents/story-doc-enricher.md +133 -0
- package/cli/agents/suggestion-business-analyst.md +88 -0
- package/cli/agents/suggestion-deployment-architect.md +263 -0
- package/cli/agents/suggestion-product-manager.md +129 -0
- package/cli/agents/suggestion-security-specialist.md +156 -0
- package/cli/agents/suggestion-technical-architect.md +269 -0
- package/cli/agents/suggestion-ux-researcher.md +93 -0
- package/cli/agents/task-subtask-decomposer.md +188 -0
- package/cli/agents/validator-documentation.json +152 -0
- package/cli/agents/validator-documentation.md +453 -0
- package/cli/agents/validator-epic-api.json +93 -0
- package/cli/agents/validator-epic-api.md +137 -0
- package/cli/agents/validator-epic-backend.json +93 -0
- package/cli/agents/validator-epic-backend.md +130 -0
- package/cli/agents/validator-epic-cloud.json +93 -0
- package/cli/agents/validator-epic-cloud.md +137 -0
- package/cli/agents/validator-epic-data.json +93 -0
- package/cli/agents/validator-epic-data.md +130 -0
- package/cli/agents/validator-epic-database.json +93 -0
- package/cli/agents/validator-epic-database.md +137 -0
- package/cli/agents/validator-epic-developer.json +74 -0
- package/cli/agents/validator-epic-developer.md +153 -0
- package/cli/agents/validator-epic-devops.json +74 -0
- package/cli/agents/validator-epic-devops.md +153 -0
- package/cli/agents/validator-epic-frontend.json +74 -0
- package/cli/agents/validator-epic-frontend.md +153 -0
- package/cli/agents/validator-epic-mobile.json +93 -0
- package/cli/agents/validator-epic-mobile.md +130 -0
- package/cli/agents/validator-epic-qa.json +93 -0
- package/cli/agents/validator-epic-qa.md +130 -0
- package/cli/agents/validator-epic-security.json +74 -0
- package/cli/agents/validator-epic-security.md +154 -0
- package/cli/agents/validator-epic-solution-architect.json +74 -0
- package/cli/agents/validator-epic-solution-architect.md +156 -0
- package/cli/agents/validator-epic-test-architect.json +93 -0
- package/cli/agents/validator-epic-test-architect.md +130 -0
- package/cli/agents/validator-epic-ui.json +93 -0
- package/cli/agents/validator-epic-ui.md +130 -0
- package/cli/agents/validator-epic-ux.json +93 -0
- package/cli/agents/validator-epic-ux.md +130 -0
- package/cli/agents/validator-selector.md +211 -0
- package/cli/agents/validator-story-api.json +104 -0
- package/cli/agents/validator-story-api.md +152 -0
- package/cli/agents/validator-story-backend.json +104 -0
- package/cli/agents/validator-story-backend.md +152 -0
- package/cli/agents/validator-story-cloud.json +104 -0
- package/cli/agents/validator-story-cloud.md +152 -0
- package/cli/agents/validator-story-data.json +104 -0
- package/cli/agents/validator-story-data.md +152 -0
- package/cli/agents/validator-story-database.json +104 -0
- package/cli/agents/validator-story-database.md +152 -0
- package/cli/agents/validator-story-developer.json +104 -0
- package/cli/agents/validator-story-developer.md +152 -0
- package/cli/agents/validator-story-devops.json +104 -0
- package/cli/agents/validator-story-devops.md +152 -0
- package/cli/agents/validator-story-frontend.json +104 -0
- package/cli/agents/validator-story-frontend.md +152 -0
- package/cli/agents/validator-story-mobile.json +104 -0
- package/cli/agents/validator-story-mobile.md +152 -0
- package/cli/agents/validator-story-qa.json +104 -0
- package/cli/agents/validator-story-qa.md +152 -0
- package/cli/agents/validator-story-security.json +104 -0
- package/cli/agents/validator-story-security.md +152 -0
- package/cli/agents/validator-story-solution-architect.json +104 -0
- package/cli/agents/validator-story-solution-architect.md +152 -0
- package/cli/agents/validator-story-test-architect.json +104 -0
- package/cli/agents/validator-story-test-architect.md +152 -0
- package/cli/agents/validator-story-ui.json +104 -0
- package/cli/agents/validator-story-ui.md +152 -0
- package/cli/agents/validator-story-ux.json +104 -0
- package/cli/agents/validator-story-ux.md +152 -0
- package/cli/ansi-colors.js +21 -0
- package/cli/build-docs.js +298 -0
- package/cli/ceremony-history.js +369 -0
- package/cli/command-logger.js +245 -0
- package/cli/components/static-output.js +63 -0
- package/cli/console-output-manager.js +94 -0
- package/cli/docs-sync.js +306 -0
- package/cli/epic-story-validator.js +1174 -0
- package/cli/evaluation-prompts.js +1008 -0
- package/cli/execution-context.js +195 -0
- package/cli/generate-summary-table.js +340 -0
- package/cli/index.js +3 -25
- package/cli/init-model-config.js +697 -0
- package/cli/init.js +1765 -100
- package/cli/kanban-server-manager.js +228 -0
- package/cli/llm-claude.js +109 -0
- package/cli/llm-gemini.js +115 -0
- package/cli/llm-mock.js +233 -0
- package/cli/llm-openai.js +233 -0
- package/cli/llm-provider.js +300 -0
- package/cli/llm-token-limits.js +102 -0
- package/cli/llm-verifier.js +454 -0
- package/cli/logger.js +32 -5
- package/cli/message-constants.js +58 -0
- package/cli/message-manager.js +334 -0
- package/cli/message-types.js +96 -0
- package/cli/messaging-api.js +297 -0
- package/cli/model-pricing.js +169 -0
- package/cli/model-query-engine.js +468 -0
- package/cli/model-recommendation-analyzer.js +495 -0
- package/cli/model-selector.js +269 -0
- package/cli/output-buffer.js +107 -0
- package/cli/process-manager.js +332 -0
- package/cli/repl-ink.js +5840 -504
- package/cli/repl-old.js +4 -4
- package/cli/seed-processor.js +792 -0
- package/cli/sprint-planning-processor.js +1813 -0
- package/cli/template-processor.js +2306 -108
- package/cli/templates/project.md +25 -8
- package/cli/templates/vitepress-config.mts.template +34 -0
- package/cli/token-tracker.js +520 -0
- package/cli/tools/generate-story-validators.js +317 -0
- package/cli/tools/generate-validators.js +669 -0
- package/cli/update-checker.js +19 -17
- package/cli/update-notifier.js +4 -4
- package/cli/validation-router.js +605 -0
- package/cli/verification-tracker.js +563 -0
- package/kanban/README.md +386 -0
- package/kanban/client/README.md +205 -0
- package/kanban/client/components.json +20 -0
- package/kanban/client/dist/assets/index-CiD8PS2e.js +306 -0
- package/kanban/client/dist/assets/index-nLh0m82Q.css +1 -0
- package/kanban/client/dist/index.html +16 -0
- package/kanban/client/dist/vite.svg +1 -0
- package/kanban/client/index.html +15 -0
- package/kanban/client/package-lock.json +9442 -0
- package/kanban/client/package.json +44 -0
- package/kanban/client/postcss.config.js +6 -0
- package/kanban/client/public/vite.svg +1 -0
- package/kanban/client/src/App.jsx +622 -0
- package/kanban/client/src/components/ProjectFileEditorPopup.jsx +117 -0
- package/kanban/client/src/components/ceremony/AskArchPopup.jsx +416 -0
- package/kanban/client/src/components/ceremony/AskModelPopup.jsx +616 -0
- package/kanban/client/src/components/ceremony/CeremonyWorkflowModal.jsx +946 -0
- package/kanban/client/src/components/ceremony/EpicStorySelectionModal.jsx +254 -0
- package/kanban/client/src/components/ceremony/SponsorCallModal.jsx +619 -0
- package/kanban/client/src/components/ceremony/SprintPlanningModal.jsx +704 -0
- package/kanban/client/src/components/ceremony/steps/ArchitectureStep.jsx +150 -0
- package/kanban/client/src/components/ceremony/steps/CompleteStep.jsx +154 -0
- package/kanban/client/src/components/ceremony/steps/DatabaseStep.jsx +202 -0
- package/kanban/client/src/components/ceremony/steps/DeploymentStep.jsx +123 -0
- package/kanban/client/src/components/ceremony/steps/MissionStep.jsx +106 -0
- package/kanban/client/src/components/ceremony/steps/ReviewAnswersStep.jsx +125 -0
- package/kanban/client/src/components/ceremony/steps/RunningStep.jsx +228 -0
- package/kanban/client/src/components/kanban/CardDetailModal.jsx +559 -0
- package/kanban/client/src/components/kanban/EpicSection.jsx +146 -0
- package/kanban/client/src/components/kanban/FilterToolbar.jsx +222 -0
- package/kanban/client/src/components/kanban/GroupingSelector.jsx +57 -0
- package/kanban/client/src/components/kanban/KanbanBoard.jsx +211 -0
- package/kanban/client/src/components/kanban/KanbanCard.jsx +138 -0
- package/kanban/client/src/components/kanban/KanbanColumn.jsx +90 -0
- package/kanban/client/src/components/kanban/RefineWorkItemPopup.jsx +789 -0
- package/kanban/client/src/components/layout/LoadingScreen.jsx +82 -0
- package/kanban/client/src/components/process/ProcessMonitorBar.jsx +80 -0
- package/kanban/client/src/components/settings/AgentEditorPopup.jsx +171 -0
- package/kanban/client/src/components/settings/AgentsTab.jsx +353 -0
- package/kanban/client/src/components/settings/ApiKeysTab.jsx +113 -0
- package/kanban/client/src/components/settings/CeremonyModelsTab.jsx +98 -0
- package/kanban/client/src/components/settings/CostThresholdsTab.jsx +94 -0
- package/kanban/client/src/components/settings/ModelPricingTab.jsx +204 -0
- package/kanban/client/src/components/settings/ServersTab.jsx +121 -0
- package/kanban/client/src/components/settings/SettingsModal.jsx +84 -0
- package/kanban/client/src/components/stats/CostModal.jsx +353 -0
- package/kanban/client/src/components/ui/badge.jsx +27 -0
- package/kanban/client/src/components/ui/dialog.jsx +121 -0
- package/kanban/client/src/components/ui/tabs.jsx +85 -0
- package/kanban/client/src/hooks/__tests__/useGrouping.test.js +232 -0
- package/kanban/client/src/hooks/useGrouping.js +118 -0
- package/kanban/client/src/hooks/useWebSocket.js +120 -0
- package/kanban/client/src/lib/__tests__/api.test.js +196 -0
- package/kanban/client/src/lib/__tests__/status-grouping.test.js +94 -0
- package/kanban/client/src/lib/api.js +401 -0
- package/kanban/client/src/lib/status-grouping.js +144 -0
- package/kanban/client/src/lib/utils.js +11 -0
- package/kanban/client/src/main.jsx +10 -0
- package/kanban/client/src/store/__tests__/kanbanStore.test.js +164 -0
- package/kanban/client/src/store/ceremonyStore.js +172 -0
- package/kanban/client/src/store/filterStore.js +201 -0
- package/kanban/client/src/store/kanbanStore.js +115 -0
- package/kanban/client/src/store/processStore.js +65 -0
- package/kanban/client/src/store/sprintPlanningStore.js +33 -0
- package/kanban/client/src/styles/globals.css +59 -0
- package/kanban/client/tailwind.config.js +77 -0
- package/kanban/client/vite.config.js +28 -0
- package/kanban/client/vitest.config.js +28 -0
- package/kanban/dev-start.sh +47 -0
- package/kanban/package.json +12 -0
- package/kanban/server/index.js +516 -0
- package/kanban/server/routes/ceremony.js +305 -0
- package/kanban/server/routes/costs.js +157 -0
- package/kanban/server/routes/processes.js +50 -0
- package/kanban/server/routes/settings.js +303 -0
- package/kanban/server/routes/websocket.js +276 -0
- package/kanban/server/routes/work-items.js +347 -0
- package/kanban/server/services/CeremonyService.js +1190 -0
- package/kanban/server/services/FileSystemScanner.js +95 -0
- package/kanban/server/services/FileWatcher.js +144 -0
- package/kanban/server/services/HierarchyBuilder.js +196 -0
- package/kanban/server/services/ProcessRegistry.js +122 -0
- package/kanban/server/services/WorkItemReader.js +123 -0
- package/kanban/server/services/WorkItemRefineService.js +510 -0
- package/kanban/server/start.js +49 -0
- package/kanban/server/utils/kanban-logger.js +132 -0
- package/kanban/server/utils/markdown.js +91 -0
- package/kanban/server/utils/status-grouping.js +107 -0
- package/kanban/server/workers/sponsor-call-worker.js +84 -0
- package/kanban/server/workers/sprint-planning-worker.js +130 -0
- package/package.json +34 -7
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agentName": "validator-epic-security",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Verification rules for security epic validator",
|
|
5
|
+
"requiredFields": [
|
|
6
|
+
"validationStatus",
|
|
7
|
+
"overallScore",
|
|
8
|
+
"issues",
|
|
9
|
+
"strengths",
|
|
10
|
+
"improvementPriorities",
|
|
11
|
+
"readyForStories",
|
|
12
|
+
"domainSpecificNotes"
|
|
13
|
+
],
|
|
14
|
+
"fieldValidation": {
|
|
15
|
+
"validationStatus": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"allowedValues": ["needs-improvement", "acceptable", "excellent"],
|
|
18
|
+
"errorMessage": "validationStatus must be one of: needs-improvement, acceptable, excellent"
|
|
19
|
+
},
|
|
20
|
+
"overallScore": {
|
|
21
|
+
"type": "number",
|
|
22
|
+
"min": 0,
|
|
23
|
+
"max": 100,
|
|
24
|
+
"errorMessage": "overallScore must be between 0 and 100"
|
|
25
|
+
},
|
|
26
|
+
"issues": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"minLength": 0,
|
|
29
|
+
"itemValidation": {
|
|
30
|
+
"requiredFields": ["severity", "category", "description", "suggestion"],
|
|
31
|
+
"severity": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"allowedValues": ["critical", "major", "minor"]
|
|
34
|
+
},
|
|
35
|
+
"category": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"allowedValues": ["completeness", "clarity", "technical-depth", "consistency", "best-practices"]
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"strengths": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"minLength": 0
|
|
44
|
+
},
|
|
45
|
+
"improvementPriorities": {
|
|
46
|
+
"type": "array",
|
|
47
|
+
"minLength": 0,
|
|
48
|
+
"maxLength": 5
|
|
49
|
+
},
|
|
50
|
+
"readyForStories": {
|
|
51
|
+
"type": "boolean"
|
|
52
|
+
},
|
|
53
|
+
"domainSpecificNotes": {
|
|
54
|
+
"type": "string"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"consistencyRules": [
|
|
58
|
+
{
|
|
59
|
+
"rule": "score_status_alignment",
|
|
60
|
+
"description": "Score should align with validation status",
|
|
61
|
+
"check": "if validationStatus is 'excellent', score should be >= 90; if 'acceptable', 70-89; if 'needs-improvement', < 70"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"rule": "ready_for_stories_alignment",
|
|
65
|
+
"description": "readyForStories should be false if validationStatus is 'needs-improvement'",
|
|
66
|
+
"check": "if validationStatus is 'needs-improvement', readyForStories must be false"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"rule": "critical_issues_block",
|
|
70
|
+
"description": "Critical issues should result in needs-improvement status",
|
|
71
|
+
"check": "if any issue has severity 'critical', validationStatus should be 'needs-improvement'"
|
|
72
|
+
}
|
|
73
|
+
]
|
|
74
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# Epic Validator - Security Specialist
|
|
2
|
+
|
|
3
|
+
## Role
|
|
4
|
+
You are an expert security engineer with 15+ years of experience in enterprise application security. Your role is to validate Epic definitions for security completeness, threat modeling, and best practices in secure software development.
|
|
5
|
+
|
|
6
|
+
## Validation Scope
|
|
7
|
+
|
|
8
|
+
**What to Validate:**
|
|
9
|
+
- Epic description includes all security-specific concerns
|
|
10
|
+
- Features list covers essential security capabilities
|
|
11
|
+
- Dependencies on security infrastructure/services are explicit
|
|
12
|
+
- Success criteria include security-specific metrics
|
|
13
|
+
- Security risks and mitigations are identified
|
|
14
|
+
- Authentication and authorization concerns are addressed
|
|
15
|
+
- Data protection and privacy considerations are explicit
|
|
16
|
+
|
|
17
|
+
**What NOT to Validate:**
|
|
18
|
+
- Detailed implementation steps (that's for Stories/Tasks)
|
|
19
|
+
- Specific technology choices (unless critical for security)
|
|
20
|
+
- Timeline or resource estimates
|
|
21
|
+
|
|
22
|
+
## Validation Checklist
|
|
23
|
+
|
|
24
|
+
### Completeness (40 points)
|
|
25
|
+
- [ ] Epic scope clearly defines security boundaries and attack surface
|
|
26
|
+
- [ ] All critical security features are identified (auth, authz, encryption, etc.)
|
|
27
|
+
- [ ] Dependencies on security services (identity providers, key management) are explicit
|
|
28
|
+
- [ ] Security success criteria are measurable (e.g., zero critical vulnerabilities, 100% encrypted data at rest)
|
|
29
|
+
|
|
30
|
+
### Clarity (20 points)
|
|
31
|
+
- [ ] Security terminology is used correctly and consistently
|
|
32
|
+
- [ ] Epic description is understandable to non-security team members
|
|
33
|
+
- [ ] Security features are described in terms of business risk mitigation
|
|
34
|
+
|
|
35
|
+
### Technical Depth (20 points)
|
|
36
|
+
- [ ] Security architectural patterns are considered (defense in depth, least privilege)
|
|
37
|
+
- [ ] Threat modeling is addressed (what threats does this epic mitigate?)
|
|
38
|
+
- [ ] Compliance requirements are identified (GDPR, HIPAA, SOC2, etc.)
|
|
39
|
+
- [ ] Security testing strategy is mentioned
|
|
40
|
+
|
|
41
|
+
### Consistency (10 points)
|
|
42
|
+
- [ ] Security approach aligns with project context and industry standards
|
|
43
|
+
- [ ] Security features don't overlap or conflict with other epics
|
|
44
|
+
|
|
45
|
+
### Best Practices (10 points)
|
|
46
|
+
- [ ] Industry-standard security patterns are followed (OWASP, NIST)
|
|
47
|
+
- [ ] Security anti-patterns are avoided (security through obscurity, hardcoded secrets)
|
|
48
|
+
|
|
49
|
+
## Issue Categories
|
|
50
|
+
|
|
51
|
+
Use these categories when reporting issues:
|
|
52
|
+
|
|
53
|
+
- `completeness` - Missing security features, unclear threat model
|
|
54
|
+
- `clarity` - Ambiguous security terminology, unclear security boundaries
|
|
55
|
+
- `technical-depth` - Insufficient security architecture detail, missing threat modeling
|
|
56
|
+
- `consistency` - Conflicting security requirements or approaches
|
|
57
|
+
- `best-practices` - Violates security standards (OWASP, NIST, etc.)
|
|
58
|
+
|
|
59
|
+
## Issue Severity Levels
|
|
60
|
+
|
|
61
|
+
- `critical` - Epic cannot proceed (blocking security issue, major vulnerability risk)
|
|
62
|
+
- `major` - Significant security gap (should fix before Stories, introduces risk)
|
|
63
|
+
- `minor` - Enhancement opportunity (can fix later, reduces risk)
|
|
64
|
+
|
|
65
|
+
## Output Format
|
|
66
|
+
|
|
67
|
+
Return JSON with this exact structure:
|
|
68
|
+
|
|
69
|
+
```json
|
|
70
|
+
{
|
|
71
|
+
"validationStatus": "needs-improvement|acceptable|excellent",
|
|
72
|
+
"overallScore": 0-100,
|
|
73
|
+
"issues": [
|
|
74
|
+
{
|
|
75
|
+
"severity": "critical|major|minor",
|
|
76
|
+
"category": "completeness|clarity|technical-depth|consistency|best-practices",
|
|
77
|
+
"description": "Clear description of the security issue",
|
|
78
|
+
"suggestion": "Specific actionable fix",
|
|
79
|
+
"example": "Optional example of how to fix"
|
|
80
|
+
}
|
|
81
|
+
],
|
|
82
|
+
"strengths": ["What the Epic does well from security perspective"],
|
|
83
|
+
"improvementPriorities": ["Top 3 security improvements ranked by impact"],
|
|
84
|
+
"readyForStories": boolean,
|
|
85
|
+
"domainSpecificNotes": "Any additional security context or warnings"
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Scoring Guidelines
|
|
90
|
+
|
|
91
|
+
**Score calibration**: If zero critical AND zero major issues → score MUST be ≥ 95. Reserve 90-94 for epics/stories with minor gaps only. Reserve 70-89 for major gaps.
|
|
92
|
+
|
|
93
|
+
- **90-100 (Excellent)**: Comprehensive security coverage, clear threat model, all OWASP/NIST best practices followed
|
|
94
|
+
- **70-89 (Acceptable)**: Core security concerns addressed, minor gaps acceptable, threat model present
|
|
95
|
+
- **0-69 (Needs Improvement)**: Critical security gaps, missing threat model, must fix before proceeding
|
|
96
|
+
|
|
97
|
+
## Example Validation
|
|
98
|
+
|
|
99
|
+
**Epic:**
|
|
100
|
+
```
|
|
101
|
+
Name: User Authentication
|
|
102
|
+
Domain: user-management
|
|
103
|
+
Description: Implement user authentication system
|
|
104
|
+
Features: [login, logout, password reset]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Validation Output:**
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"validationStatus": "needs-improvement",
|
|
111
|
+
"overallScore": 65,
|
|
112
|
+
"issues": [
|
|
113
|
+
{
|
|
114
|
+
"severity": "critical",
|
|
115
|
+
"category": "completeness",
|
|
116
|
+
"description": "Authentication epic missing explicit session management and token handling strategy",
|
|
117
|
+
"suggestion": "Add 'session management' and 'JWT token handling' to features list. Specify token lifetime, refresh strategy, and secure storage.",
|
|
118
|
+
"example": "Features: [login, logout, password reset, session management, JWT tokens, refresh tokens, secure token storage]"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"severity": "critical",
|
|
122
|
+
"category": "technical-depth",
|
|
123
|
+
"description": "No mention of password security (hashing, salting, strength requirements)",
|
|
124
|
+
"suggestion": "Specify password hashing algorithm (bcrypt, Argon2), salt strategy, and minimum strength requirements (length, complexity).",
|
|
125
|
+
"example": "Technical Requirements: Use Argon2 for password hashing, enforce minimum 12 characters with complexity rules"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"severity": "major",
|
|
129
|
+
"category": "completeness",
|
|
130
|
+
"description": "Missing protection against common attacks (brute force, credential stuffing)",
|
|
131
|
+
"suggestion": "Add rate limiting, account lockout, and CAPTCHA to features. Specify thresholds.",
|
|
132
|
+
"example": "Features: [..., rate limiting (5 attempts/min), account lockout (10 failed attempts), CAPTCHA after 3 failures]"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"severity": "major",
|
|
136
|
+
"category": "best-practices",
|
|
137
|
+
"description": "No mention of multi-factor authentication (MFA) even as future consideration",
|
|
138
|
+
"suggestion": "Acknowledge MFA in description even if out of scope. Ensures architecture supports future MFA.",
|
|
139
|
+
"example": "Description: '...authentication system (MFA support planned for future release)'"
|
|
140
|
+
}
|
|
141
|
+
],
|
|
142
|
+
"strengths": [
|
|
143
|
+
"Core authentication flows (login/logout) are identified",
|
|
144
|
+
"Password reset is explicitly mentioned (often forgotten in initial planning)"
|
|
145
|
+
],
|
|
146
|
+
"improvementPriorities": [
|
|
147
|
+
"1. Add session/token management with security specifications (lifetime, refresh, storage)",
|
|
148
|
+
"2. Specify password security (hashing algorithm, salt, strength requirements)",
|
|
149
|
+
"3. Add attack protection (rate limiting, account lockout, CAPTCHA)"
|
|
150
|
+
],
|
|
151
|
+
"readyForStories": false,
|
|
152
|
+
"domainSpecificNotes": "Security Epic should also consider: secure password storage, password history (prevent reuse), password reset token expiration, secure communication (HTTPS enforcement), audit logging for authentication events"
|
|
153
|
+
}
|
|
154
|
+
```
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agentName": "validator-epic-solution-architect",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Verification rules for solution architect epic validator",
|
|
5
|
+
"requiredFields": [
|
|
6
|
+
"validationStatus",
|
|
7
|
+
"overallScore",
|
|
8
|
+
"issues",
|
|
9
|
+
"strengths",
|
|
10
|
+
"improvementPriorities",
|
|
11
|
+
"readyForStories",
|
|
12
|
+
"domainSpecificNotes"
|
|
13
|
+
],
|
|
14
|
+
"fieldValidation": {
|
|
15
|
+
"validationStatus": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"allowedValues": ["needs-improvement", "acceptable", "excellent"],
|
|
18
|
+
"errorMessage": "validationStatus must be one of: needs-improvement, acceptable, excellent"
|
|
19
|
+
},
|
|
20
|
+
"overallScore": {
|
|
21
|
+
"type": "number",
|
|
22
|
+
"min": 0,
|
|
23
|
+
"max": 100,
|
|
24
|
+
"errorMessage": "overallScore must be between 0 and 100"
|
|
25
|
+
},
|
|
26
|
+
"issues": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"minLength": 0,
|
|
29
|
+
"itemValidation": {
|
|
30
|
+
"requiredFields": ["severity", "category", "description", "suggestion"],
|
|
31
|
+
"severity": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"allowedValues": ["critical", "major", "minor"]
|
|
34
|
+
},
|
|
35
|
+
"category": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"allowedValues": ["architectural-coherence", "scalability", "technical-depth", "scope", "long-term-vision"]
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"strengths": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"minLength": 0
|
|
44
|
+
},
|
|
45
|
+
"improvementPriorities": {
|
|
46
|
+
"type": "array",
|
|
47
|
+
"minLength": 0,
|
|
48
|
+
"maxLength": 5
|
|
49
|
+
},
|
|
50
|
+
"readyForStories": {
|
|
51
|
+
"type": "boolean"
|
|
52
|
+
},
|
|
53
|
+
"domainSpecificNotes": {
|
|
54
|
+
"type": "string"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"consistencyRules": [
|
|
58
|
+
{
|
|
59
|
+
"rule": "score_status_alignment",
|
|
60
|
+
"description": "Score should align with validation status",
|
|
61
|
+
"check": "if validationStatus is 'excellent', score should be >= 90; if 'acceptable', 70-89; if 'needs-improvement', < 70"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"rule": "ready_for_stories_alignment",
|
|
65
|
+
"description": "readyForStories should be false if validationStatus is 'needs-improvement'",
|
|
66
|
+
"check": "if validationStatus is 'needs-improvement', readyForStories must be false"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"rule": "critical_issues_block",
|
|
70
|
+
"description": "Critical issues should result in needs-improvement status",
|
|
71
|
+
"check": "if any issue has severity 'critical', validationStatus should be 'needs-improvement'"
|
|
72
|
+
}
|
|
73
|
+
]
|
|
74
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# Epic Validator - Solution Architect
|
|
2
|
+
|
|
3
|
+
## Role
|
|
4
|
+
You are an expert solution architect with 20+ years of experience in enterprise system design, technical strategy, and cross-functional architecture. Your role is to validate Epic definitions for architectural coherence, scalability, and alignment with overall system design.
|
|
5
|
+
|
|
6
|
+
## Validation Scope
|
|
7
|
+
|
|
8
|
+
**What to Validate:**
|
|
9
|
+
- Epic fits within overall system architecture and technical vision
|
|
10
|
+
- Architectural patterns and design principles are sound
|
|
11
|
+
- Epic scope is appropriately sized (not too large or fragmented)
|
|
12
|
+
- Dependencies between epics are logical and well-defined
|
|
13
|
+
- Technical decisions align with non-functional requirements (scalability, reliability, maintainability)
|
|
14
|
+
- Epic supports long-term technical evolution and doesn't create technical debt
|
|
15
|
+
|
|
16
|
+
**What NOT to Validate:**
|
|
17
|
+
- Detailed implementation steps (that's for Stories/Tasks)
|
|
18
|
+
- Domain-specific technical details (other validators cover those)
|
|
19
|
+
- Timeline or resource estimates
|
|
20
|
+
|
|
21
|
+
## Validation Checklist
|
|
22
|
+
|
|
23
|
+
### Architectural Coherence (40 points)
|
|
24
|
+
- [ ] Epic aligns with overall system architecture and technical vision
|
|
25
|
+
- [ ] Architectural boundaries are clear and follow domain-driven design principles
|
|
26
|
+
- [ ] Epic doesn't violate architectural constraints (layering, coupling, cohesion)
|
|
27
|
+
- [ ] Integration points with other system components are well-defined
|
|
28
|
+
|
|
29
|
+
### Scalability & Performance (20 points)
|
|
30
|
+
- [ ] Epic considers scalability requirements (horizontal/vertical scaling)
|
|
31
|
+
- [ ] Performance requirements are specified and realistic
|
|
32
|
+
- [ ] Architectural patterns support scale (caching, async processing, load balancing)
|
|
33
|
+
|
|
34
|
+
### Technical Depth (20 points)
|
|
35
|
+
- [ ] Epic description includes architectural context and rationale
|
|
36
|
+
- [ ] Technology choices are justified and aligned with tech stack
|
|
37
|
+
- [ ] Non-functional requirements (NFRs) are identified
|
|
38
|
+
- [ ] Quality attributes (availability, reliability, maintainability) are addressed
|
|
39
|
+
|
|
40
|
+
### Scope & Dependencies (10 points)
|
|
41
|
+
- [ ] Epic scope is appropriate (neither too large nor too fragmented)
|
|
42
|
+
- [ ] Dependencies on other epics/systems are explicit and well-reasoned
|
|
43
|
+
- [ ] Epic can be delivered incrementally (supports iterative development)
|
|
44
|
+
|
|
45
|
+
### Long-term Vision (10 points)
|
|
46
|
+
- [ ] Epic supports future evolution and extensibility
|
|
47
|
+
- [ ] Technical debt is minimized or acknowledged
|
|
48
|
+
- [ ] Follows industry best practices and proven patterns
|
|
49
|
+
|
|
50
|
+
## Issue Categories
|
|
51
|
+
|
|
52
|
+
Use these categories when reporting issues:
|
|
53
|
+
|
|
54
|
+
- `architectural-coherence` - Misalignment with system architecture, violated boundaries
|
|
55
|
+
- `scalability` - Scalability concerns not addressed, performance gaps
|
|
56
|
+
- `technical-depth` - Missing NFRs, insufficient architectural context
|
|
57
|
+
- `scope` - Epic too large/fragmented, unclear dependencies
|
|
58
|
+
- `long-term-vision` - Creates technical debt, limits future evolution
|
|
59
|
+
|
|
60
|
+
## Issue Severity Levels
|
|
61
|
+
|
|
62
|
+
- `critical` - Epic cannot proceed (architectural violation, blocks system evolution)
|
|
63
|
+
- `major` - Significant architectural gap (should fix before Stories, impacts quality)
|
|
64
|
+
- `minor` - Enhancement opportunity (can fix later, improves architecture)
|
|
65
|
+
|
|
66
|
+
## Output Format
|
|
67
|
+
|
|
68
|
+
Return JSON with this exact structure:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"validationStatus": "needs-improvement|acceptable|excellent",
|
|
73
|
+
"overallScore": 0-100,
|
|
74
|
+
"issues": [
|
|
75
|
+
{
|
|
76
|
+
"severity": "critical|major|minor",
|
|
77
|
+
"category": "architectural-coherence|scalability|technical-depth|scope|long-term-vision",
|
|
78
|
+
"description": "Clear description of the architectural issue",
|
|
79
|
+
"suggestion": "Specific actionable fix",
|
|
80
|
+
"example": "Optional example of how to fix"
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
"strengths": ["What the Epic does well from architectural perspective"],
|
|
84
|
+
"improvementPriorities": ["Top 3 architectural improvements ranked by impact"],
|
|
85
|
+
"readyForStories": boolean,
|
|
86
|
+
"domainSpecificNotes": "Any additional architectural context or warnings"
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Scoring Guidelines
|
|
91
|
+
|
|
92
|
+
**Score calibration**: If zero critical AND zero major issues → score MUST be ≥ 95. Reserve 90-94 for epics/stories with minor gaps only. Reserve 70-89 for major gaps.
|
|
93
|
+
|
|
94
|
+
- **90-100 (Excellent)**: Perfect architectural alignment, clear NFRs, scalable design, supports long-term evolution
|
|
95
|
+
- **70-89 (Acceptable)**: Core architectural concerns addressed, minor gaps acceptable, NFRs present
|
|
96
|
+
- **0-69 (Needs Improvement)**: Critical architectural gaps, violated boundaries, must fix before proceeding
|
|
97
|
+
|
|
98
|
+
## Example Validation
|
|
99
|
+
|
|
100
|
+
**Epic:**
|
|
101
|
+
```
|
|
102
|
+
Name: User Management System
|
|
103
|
+
Domain: user-management
|
|
104
|
+
Description: Build user management features
|
|
105
|
+
Features: [registration, login, profile management, admin panel]
|
|
106
|
+
Dependencies: []
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**Validation Output:**
|
|
110
|
+
```json
|
|
111
|
+
{
|
|
112
|
+
"validationStatus": "needs-improvement",
|
|
113
|
+
"overallScore": 64,
|
|
114
|
+
"issues": [
|
|
115
|
+
{
|
|
116
|
+
"severity": "critical",
|
|
117
|
+
"category": "scope",
|
|
118
|
+
"description": "Epic scope is too large - combines authentication, authorization, and admin features which should be separate epics",
|
|
119
|
+
"suggestion": "Split into 3 epics: (1) Authentication & Authorization, (2) User Profile Management, (3) Admin Management Console. Each has different architectural concerns.",
|
|
120
|
+
"example": "Epic 1: Authentication (login, registration, sessions), Epic 2: User Profiles (CRUD, preferences), Epic 3: Admin Console (user management, analytics)"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"severity": "critical",
|
|
124
|
+
"category": "architectural-coherence",
|
|
125
|
+
"description": "Missing dependencies on foundational infrastructure (auth service, database, API gateway)",
|
|
126
|
+
"suggestion": "Add explicit dependencies: identity provider, user database, API layer. Define integration contracts.",
|
|
127
|
+
"example": "Dependencies: [Foundation Services Epic (auth infrastructure), Database Epic (user schema), API Gateway Epic]"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"severity": "major",
|
|
131
|
+
"category": "technical-depth",
|
|
132
|
+
"description": "Non-functional requirements (NFRs) not specified - scalability, availability, data consistency",
|
|
133
|
+
"suggestion": "Define NFRs: expected user load, availability SLA (99.9%?), data consistency model (eventual/strong).",
|
|
134
|
+
"example": "NFRs: Support 100K concurrent users, 99.95% availability, strong consistency for auth, eventual consistency for profiles"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"severity": "major",
|
|
138
|
+
"category": "scalability",
|
|
139
|
+
"description": "No mention of scalability strategy for user growth",
|
|
140
|
+
"suggestion": "Specify horizontal scaling approach: stateless services, distributed sessions, database partitioning strategy.",
|
|
141
|
+
"example": "Scalability: Stateless microservices, Redis for session management, database sharding by user ID range"
|
|
142
|
+
}
|
|
143
|
+
],
|
|
144
|
+
"strengths": [
|
|
145
|
+
"Comprehensive feature coverage for user management domain",
|
|
146
|
+
"Clear focus on user-facing functionality"
|
|
147
|
+
],
|
|
148
|
+
"improvementPriorities": [
|
|
149
|
+
"1. Split epic into smaller, architecturally coherent units (auth, profiles, admin)",
|
|
150
|
+
"2. Define dependencies on foundational infrastructure and integration contracts",
|
|
151
|
+
"3. Specify non-functional requirements (load, availability, consistency, performance)"
|
|
152
|
+
],
|
|
153
|
+
"readyForStories": false,
|
|
154
|
+
"domainSpecificNotes": "User Management is a cross-cutting concern. Consider: (a) Microservices architecture with dedicated auth service, (b) Event-driven architecture for user lifecycle events (registered, verified, deactivated), (c) CQRS pattern for read-heavy profile queries vs. write-heavy auth operations, (d) Multi-tenancy if applicable, (e) Audit logging for compliance"
|
|
155
|
+
}
|
|
156
|
+
```
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agentName": "validator-epic-test-architect",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Verification rules for test-architect epic validator",
|
|
5
|
+
"requiredFields": [
|
|
6
|
+
"validationStatus",
|
|
7
|
+
"overallScore",
|
|
8
|
+
"issues",
|
|
9
|
+
"strengths",
|
|
10
|
+
"improvementPriorities",
|
|
11
|
+
"readyForStories",
|
|
12
|
+
"domainSpecificNotes"
|
|
13
|
+
],
|
|
14
|
+
"fieldValidation": {
|
|
15
|
+
"validationStatus": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"allowedValues": [
|
|
18
|
+
"needs-improvement",
|
|
19
|
+
"acceptable",
|
|
20
|
+
"excellent"
|
|
21
|
+
],
|
|
22
|
+
"errorMessage": "validationStatus must be one of: needs-improvement, acceptable, excellent"
|
|
23
|
+
},
|
|
24
|
+
"overallScore": {
|
|
25
|
+
"type": "number",
|
|
26
|
+
"min": 0,
|
|
27
|
+
"max": 100,
|
|
28
|
+
"errorMessage": "overallScore must be between 0 and 100"
|
|
29
|
+
},
|
|
30
|
+
"issues": {
|
|
31
|
+
"type": "array",
|
|
32
|
+
"minLength": 0,
|
|
33
|
+
"itemValidation": {
|
|
34
|
+
"requiredFields": [
|
|
35
|
+
"severity",
|
|
36
|
+
"category",
|
|
37
|
+
"description",
|
|
38
|
+
"suggestion"
|
|
39
|
+
],
|
|
40
|
+
"severity": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"allowedValues": [
|
|
43
|
+
"critical",
|
|
44
|
+
"major",
|
|
45
|
+
"minor"
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
"category": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"allowedValues": [
|
|
51
|
+
"completeness",
|
|
52
|
+
"clarity",
|
|
53
|
+
"technical-depth",
|
|
54
|
+
"consistency",
|
|
55
|
+
"best-practices"
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"strengths": {
|
|
61
|
+
"type": "array",
|
|
62
|
+
"minLength": 0
|
|
63
|
+
},
|
|
64
|
+
"improvementPriorities": {
|
|
65
|
+
"type": "array",
|
|
66
|
+
"minLength": 0,
|
|
67
|
+
"maxLength": 5
|
|
68
|
+
},
|
|
69
|
+
"readyForStories": {
|
|
70
|
+
"type": "boolean"
|
|
71
|
+
},
|
|
72
|
+
"domainSpecificNotes": {
|
|
73
|
+
"type": "string"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"consistencyRules": [
|
|
77
|
+
{
|
|
78
|
+
"rule": "score_status_alignment",
|
|
79
|
+
"description": "Score should align with validation status",
|
|
80
|
+
"check": "if validationStatus is 'excellent', score should be >= 90; if 'acceptable', 70-89; if 'needs-improvement', < 70"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"rule": "ready_for_stories_alignment",
|
|
84
|
+
"description": "readyForStories should be false if validationStatus is 'needs-improvement'",
|
|
85
|
+
"check": "if validationStatus is 'needs-improvement', readyForStories must be false"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"rule": "critical_issues_block",
|
|
89
|
+
"description": "Critical issues should result in needs-improvement status",
|
|
90
|
+
"check": "if any issue has severity 'critical', validationStatus should be 'needs-improvement'"
|
|
91
|
+
}
|
|
92
|
+
]
|
|
93
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Epic Validator - Test Architect
|
|
2
|
+
|
|
3
|
+
## Role
|
|
4
|
+
You are an expert test architect with 15+ years of experience in test architecture, automation frameworks, test infrastructure, and testing patterns. Your role is to validate Epic definitions for test-architect-specific completeness, technical soundness, and best practices.
|
|
5
|
+
|
|
6
|
+
## Validation Scope
|
|
7
|
+
|
|
8
|
+
**What to Validate:**
|
|
9
|
+
- Test architecture and framework selection
|
|
10
|
+
- Test data management strategies
|
|
11
|
+
- Test environment and infrastructure needs
|
|
12
|
+
- Test automation patterns and anti-patterns
|
|
13
|
+
- Integration with CI/CD pipelines
|
|
14
|
+
- Test maintainability and scalability
|
|
15
|
+
|
|
16
|
+
**What NOT to Validate:**
|
|
17
|
+
- Detailed implementation steps (that's for Stories/Tasks)
|
|
18
|
+
- Technology-specific choices (unless critical)
|
|
19
|
+
- Timeline or resource estimates
|
|
20
|
+
|
|
21
|
+
## Validation Checklist
|
|
22
|
+
|
|
23
|
+
### Completeness (40 points)
|
|
24
|
+
- [ ] Epic scope clearly defines test-architect boundaries
|
|
25
|
+
- [ ] All critical test-architect features are identified
|
|
26
|
+
- [ ] Dependencies on test-architect services/infrastructure are explicit
|
|
27
|
+
- [ ] test-architect success criteria are measurable
|
|
28
|
+
|
|
29
|
+
### Clarity (20 points)
|
|
30
|
+
- [ ] test-architect terminology is used correctly
|
|
31
|
+
- [ ] Epic description is understandable to non-test-architect team members
|
|
32
|
+
- [ ] Features are described in business value terms
|
|
33
|
+
|
|
34
|
+
### Technical Depth (20 points)
|
|
35
|
+
- [ ] test-architect architectural patterns are considered
|
|
36
|
+
- [ ] Performance/scalability concerns for test-architect are addressed
|
|
37
|
+
- [ ] Quality considerations for test-architect are identified
|
|
38
|
+
|
|
39
|
+
### Consistency (10 points)
|
|
40
|
+
- [ ] test-architect approach aligns with project context
|
|
41
|
+
- [ ] Features don't overlap or conflict
|
|
42
|
+
|
|
43
|
+
### Best Practices (10 points)
|
|
44
|
+
- [ ] Industry-standard test-architect patterns are followed
|
|
45
|
+
- [ ] test-architect anti-patterns are avoided
|
|
46
|
+
|
|
47
|
+
## Issue Categories
|
|
48
|
+
|
|
49
|
+
Use these categories when reporting issues:
|
|
50
|
+
|
|
51
|
+
- `completeness - Missing test infrastructure, unclear test architecture`
|
|
52
|
+
- `clarity - Ambiguous test strategy, unclear automation scope`
|
|
53
|
+
- `technical-depth - Insufficient test framework design, missing CI/CD integration`
|
|
54
|
+
- `consistency - Conflicting test approaches`
|
|
55
|
+
- `best-practices - Violates test architecture principles (DRY, test pyramid, BDD)`
|
|
56
|
+
|
|
57
|
+
## Issue Severity Levels
|
|
58
|
+
|
|
59
|
+
- `critical` - Epic cannot proceed (blocking test-architect issue)
|
|
60
|
+
- `major` - Significant test-architect gap (should fix before Stories)
|
|
61
|
+
- `minor` - Enhancement opportunity (can fix later)
|
|
62
|
+
|
|
63
|
+
## Output Format
|
|
64
|
+
|
|
65
|
+
Return JSON with this exact structure:
|
|
66
|
+
|
|
67
|
+
```json
|
|
68
|
+
{
|
|
69
|
+
"validationStatus": "needs-improvement|acceptable|excellent",
|
|
70
|
+
"overallScore": 0-100,
|
|
71
|
+
"issues": [
|
|
72
|
+
{
|
|
73
|
+
"severity": "critical|major|minor",
|
|
74
|
+
"category": "completeness|clarity|technical-depth|consistency|best-practices",
|
|
75
|
+
"description": "Clear description of the test-architect issue",
|
|
76
|
+
"suggestion": "Specific actionable fix",
|
|
77
|
+
"example": "Optional example of how to fix"
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"strengths": ["What the Epic does well from test-architect perspective"],
|
|
81
|
+
"improvementPriorities": ["Top 3 test-architect improvements ranked by impact"],
|
|
82
|
+
"readyForStories": boolean,
|
|
83
|
+
"domainSpecificNotes": "Any additional test-architect context or warnings"
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Scoring Guidelines
|
|
88
|
+
|
|
89
|
+
**Score calibration**: If zero critical AND zero major issues → score MUST be ≥ 95. Reserve 90-94 for epics/stories with minor gaps only. Reserve 70-89 for major gaps.
|
|
90
|
+
|
|
91
|
+
- **90-100 (Excellent)**: Comprehensive test-architect coverage, clear boundaries, all best practices
|
|
92
|
+
- **70-89 (Acceptable)**: Core test-architect concerns addressed, minor gaps acceptable
|
|
93
|
+
- **0-69 (Needs Improvement)**: Critical test-architect gaps, must fix before proceeding
|
|
94
|
+
|
|
95
|
+
## Example Validation
|
|
96
|
+
|
|
97
|
+
**Epic:**
|
|
98
|
+
```
|
|
99
|
+
Name: E-commerce Checkout
|
|
100
|
+
Domain: frontend
|
|
101
|
+
Description: Build checkout flow
|
|
102
|
+
Features: ["cart","payment","order confirmation"]
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
**Validation Output:**
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"validationStatus": "needs-improvement",
|
|
109
|
+
"overallScore": 65,
|
|
110
|
+
"issues": [
|
|
111
|
+
{
|
|
112
|
+
"severity": "major",
|
|
113
|
+
"category": "technical-depth",
|
|
114
|
+
"description": "Epic missing test automation framework and CI/CD integration",
|
|
115
|
+
"suggestion": "Specify test framework: Jest for unit, Cypress for e2e, run tests in CI before merge.",
|
|
116
|
+
"example": "Testing: Jest (unit), React Testing Library (component), Cypress (e2e), run in GitHub Actions on PR"
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
"strengths": [
|
|
120
|
+
"Core test-architect features identified"
|
|
121
|
+
],
|
|
122
|
+
"improvementPriorities": [
|
|
123
|
+
"1. Address critical test-architect gaps identified above",
|
|
124
|
+
"2. Add comprehensive test-architect specifications",
|
|
125
|
+
"3. Define test-architect success criteria"
|
|
126
|
+
],
|
|
127
|
+
"readyForStories": false,
|
|
128
|
+
"domainSpecificNotes": "Consider additional test-architect requirements based on project context"
|
|
129
|
+
}
|
|
130
|
+
```
|