specweave 0.1.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.
Files changed (288) hide show
  1. package/INSTALL.md +848 -0
  2. package/LICENSE +21 -0
  3. package/README.md +675 -0
  4. package/SPECWEAVE.md +665 -0
  5. package/bin/install-agents.sh +57 -0
  6. package/bin/install-all.sh +49 -0
  7. package/bin/install-commands.sh +56 -0
  8. package/bin/install-skills.sh +57 -0
  9. package/bin/specweave.js +81 -0
  10. package/dist/adapters/adapter-base.d.ts +50 -0
  11. package/dist/adapters/adapter-base.d.ts.map +1 -0
  12. package/dist/adapters/adapter-base.js +146 -0
  13. package/dist/adapters/adapter-base.js.map +1 -0
  14. package/dist/adapters/adapter-interface.d.ts +108 -0
  15. package/dist/adapters/adapter-interface.d.ts.map +1 -0
  16. package/dist/adapters/adapter-interface.js +9 -0
  17. package/dist/adapters/adapter-interface.js.map +1 -0
  18. package/dist/adapters/claude/adapter.d.ts +54 -0
  19. package/dist/adapters/claude/adapter.d.ts.map +1 -0
  20. package/dist/adapters/claude/adapter.js +184 -0
  21. package/dist/adapters/claude/adapter.js.map +1 -0
  22. package/dist/adapters/copilot/adapter.d.ts +42 -0
  23. package/dist/adapters/copilot/adapter.d.ts.map +1 -0
  24. package/dist/adapters/copilot/adapter.js +239 -0
  25. package/dist/adapters/copilot/adapter.js.map +1 -0
  26. package/dist/adapters/cursor/adapter.d.ts +42 -0
  27. package/dist/adapters/cursor/adapter.d.ts.map +1 -0
  28. package/dist/adapters/cursor/adapter.js +297 -0
  29. package/dist/adapters/cursor/adapter.js.map +1 -0
  30. package/dist/adapters/generic/adapter.d.ts +40 -0
  31. package/dist/adapters/generic/adapter.d.ts.map +1 -0
  32. package/dist/adapters/generic/adapter.js +155 -0
  33. package/dist/adapters/generic/adapter.js.map +1 -0
  34. package/dist/cli/commands/init.d.ts +6 -0
  35. package/dist/cli/commands/init.d.ts.map +1 -0
  36. package/dist/cli/commands/init.js +247 -0
  37. package/dist/cli/commands/init.js.map +1 -0
  38. package/dist/cli/commands/install.d.ts +7 -0
  39. package/dist/cli/commands/install.d.ts.map +1 -0
  40. package/dist/cli/commands/install.js +160 -0
  41. package/dist/cli/commands/install.js.map +1 -0
  42. package/dist/cli/commands/list.d.ts +6 -0
  43. package/dist/cli/commands/list.d.ts.map +1 -0
  44. package/dist/cli/commands/list.js +154 -0
  45. package/dist/cli/commands/list.js.map +1 -0
  46. package/package.json +90 -0
  47. package/src/adapters/README.md +312 -0
  48. package/src/adapters/adapter-base.ts +146 -0
  49. package/src/adapters/adapter-interface.ts +120 -0
  50. package/src/adapters/claude/README.md +241 -0
  51. package/src/adapters/claude/adapter.ts +157 -0
  52. package/src/adapters/copilot/.github/copilot/instructions.md +376 -0
  53. package/src/adapters/copilot/README.md +200 -0
  54. package/src/adapters/copilot/adapter.ts +210 -0
  55. package/src/adapters/cursor/.cursor/context/docs-context.md +62 -0
  56. package/src/adapters/cursor/.cursor/context/increments-context.md +71 -0
  57. package/src/adapters/cursor/.cursor/context/strategy-context.md +73 -0
  58. package/src/adapters/cursor/.cursor/context/tests-context.md +89 -0
  59. package/src/adapters/cursor/.cursorrules +325 -0
  60. package/src/adapters/cursor/README.md +243 -0
  61. package/src/adapters/cursor/adapter.ts +268 -0
  62. package/src/adapters/generic/README.md +277 -0
  63. package/src/adapters/generic/SPECWEAVE-MANUAL.md +676 -0
  64. package/src/adapters/generic/adapter.ts +159 -0
  65. package/src/adapters/registry.yaml +126 -0
  66. package/src/agents/architect/AGENT.md +416 -0
  67. package/src/agents/devops/AGENT.md +1738 -0
  68. package/src/agents/docs-writer/AGENT.md +239 -0
  69. package/src/agents/performance/AGENT.md +228 -0
  70. package/src/agents/pm/AGENT.md +751 -0
  71. package/src/agents/qa-lead/AGENT.md +150 -0
  72. package/src/agents/security/AGENT.md +179 -0
  73. package/src/agents/sre/AGENT.md +582 -0
  74. package/src/agents/sre/modules/backend-diagnostics.md +481 -0
  75. package/src/agents/sre/modules/database-diagnostics.md +509 -0
  76. package/src/agents/sre/modules/infrastructure.md +561 -0
  77. package/src/agents/sre/modules/monitoring.md +439 -0
  78. package/src/agents/sre/modules/security-incidents.md +421 -0
  79. package/src/agents/sre/modules/ui-diagnostics.md +302 -0
  80. package/src/agents/sre/playbooks/01-high-cpu-usage.md +204 -0
  81. package/src/agents/sre/playbooks/02-database-deadlock.md +241 -0
  82. package/src/agents/sre/playbooks/03-memory-leak.md +252 -0
  83. package/src/agents/sre/playbooks/04-slow-api-response.md +269 -0
  84. package/src/agents/sre/playbooks/05-ddos-attack.md +293 -0
  85. package/src/agents/sre/playbooks/06-disk-full.md +314 -0
  86. package/src/agents/sre/playbooks/07-service-down.md +333 -0
  87. package/src/agents/sre/playbooks/08-data-corruption.md +337 -0
  88. package/src/agents/sre/playbooks/09-cascade-failure.md +430 -0
  89. package/src/agents/sre/playbooks/10-rate-limit-exceeded.md +464 -0
  90. package/src/agents/sre/scripts/health-check.sh +230 -0
  91. package/src/agents/sre/scripts/log-analyzer.py +213 -0
  92. package/src/agents/sre/scripts/metrics-collector.sh +294 -0
  93. package/src/agents/sre/scripts/trace-analyzer.js +257 -0
  94. package/src/agents/sre/templates/incident-report.md +249 -0
  95. package/src/agents/sre/templates/mitigation-plan.md +375 -0
  96. package/src/agents/sre/templates/post-mortem.md +418 -0
  97. package/src/agents/sre/templates/runbook-template.md +412 -0
  98. package/src/agents/tech-lead/AGENT.md +263 -0
  99. package/src/commands/add-tasks.md +176 -0
  100. package/src/commands/close-increment.md +347 -0
  101. package/src/commands/create-increment.md +223 -0
  102. package/src/commands/create-project.md +528 -0
  103. package/src/commands/generate-docs.md +623 -0
  104. package/src/commands/list-increments.md +180 -0
  105. package/src/commands/review-docs.md +331 -0
  106. package/src/commands/start-increment.md +139 -0
  107. package/src/commands/sync-github.md +115 -0
  108. package/src/commands/validate-increment.md +800 -0
  109. package/src/hooks/README.md +252 -0
  110. package/src/hooks/docs-changed.sh +59 -0
  111. package/src/hooks/human-input-required.sh +55 -0
  112. package/src/hooks/post-task-completion.sh +57 -0
  113. package/src/hooks/pre-implementation.sh +47 -0
  114. package/src/skills/ado-sync/README.md +449 -0
  115. package/src/skills/ado-sync/SKILL.md +245 -0
  116. package/src/skills/ado-sync/test-cases/test-1.yaml +9 -0
  117. package/src/skills/ado-sync/test-cases/test-2.yaml +8 -0
  118. package/src/skills/ado-sync/test-cases/test-3.yaml +9 -0
  119. package/src/skills/bmad-method-expert/SKILL.md +628 -0
  120. package/src/skills/bmad-method-expert/scripts/analyze-project.js +318 -0
  121. package/src/skills/bmad-method-expert/scripts/check-setup.js +208 -0
  122. package/src/skills/bmad-method-expert/scripts/generate-template.js +1149 -0
  123. package/src/skills/bmad-method-expert/scripts/validate-documents.js +340 -0
  124. package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +12 -0
  125. package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +12 -0
  126. package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +12 -0
  127. package/src/skills/brownfield-analyzer/SKILL.md +523 -0
  128. package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +48 -0
  129. package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +12 -0
  130. package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +12 -0
  131. package/src/skills/brownfield-onboarder/SKILL.md +625 -0
  132. package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +12 -0
  133. package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +12 -0
  134. package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +12 -0
  135. package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +12 -0
  136. package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +12 -0
  137. package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +12 -0
  138. package/src/skills/context-loader/SKILL.md +734 -0
  139. package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +39 -0
  140. package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +44 -0
  141. package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +45 -0
  142. package/src/skills/context-optimizer/SKILL.md +618 -0
  143. package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +97 -0
  144. package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +109 -0
  145. package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +98 -0
  146. package/src/skills/cost-optimizer/SKILL.md +190 -0
  147. package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +75 -0
  148. package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +52 -0
  149. package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +63 -0
  150. package/src/skills/cost-optimizer/test-results/README.md +46 -0
  151. package/src/skills/design-system-architect/SKILL.md +107 -0
  152. package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +23 -0
  153. package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +24 -0
  154. package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +23 -0
  155. package/src/skills/diagrams-architect/SKILL.md +763 -0
  156. package/src/skills/diagrams-generator/SKILL.md +25 -0
  157. package/src/skills/diagrams-generator/test-cases/test-1.yaml +9 -0
  158. package/src/skills/diagrams-generator/test-cases/test-2.yaml +9 -0
  159. package/src/skills/diagrams-generator/test-cases/test-3.yaml +8 -0
  160. package/src/skills/docs-updater/README.md +48 -0
  161. package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +12 -0
  162. package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +12 -0
  163. package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +12 -0
  164. package/src/skills/dotnet-backend/SKILL.md +250 -0
  165. package/src/skills/e2e-playwright/README.md +506 -0
  166. package/src/skills/e2e-playwright/SKILL.md +457 -0
  167. package/src/skills/e2e-playwright/execute.js +373 -0
  168. package/src/skills/e2e-playwright/lib/utils.js +514 -0
  169. package/src/skills/e2e-playwright/package.json +33 -0
  170. package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +54 -0
  171. package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +64 -0
  172. package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +74 -0
  173. package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +98 -0
  174. package/src/skills/figma-designer/SKILL.md +149 -0
  175. package/src/skills/figma-implementer/SKILL.md +148 -0
  176. package/src/skills/figma-mcp-connector/SKILL.md +136 -0
  177. package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +22 -0
  178. package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +21 -0
  179. package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +18 -0
  180. package/src/skills/figma-to-code/SKILL.md +128 -0
  181. package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +29 -0
  182. package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +27 -0
  183. package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +28 -0
  184. package/src/skills/frontend/SKILL.md +177 -0
  185. package/src/skills/github-sync/SKILL.md +252 -0
  186. package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +12 -0
  187. package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +12 -0
  188. package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +12 -0
  189. package/src/skills/hetzner-provisioner/README.md +308 -0
  190. package/src/skills/hetzner-provisioner/SKILL.md +251 -0
  191. package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +71 -0
  192. package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +85 -0
  193. package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +126 -0
  194. package/src/skills/hetzner-provisioner/test-results/README.md +259 -0
  195. package/src/skills/increment-planner/SKILL.md +889 -0
  196. package/src/skills/increment-planner/scripts/feature-utils.js +250 -0
  197. package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +27 -0
  198. package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +30 -0
  199. package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +24 -0
  200. package/src/skills/increment-quality-judge/SKILL.md +566 -0
  201. package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +95 -0
  202. package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +108 -0
  203. package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +87 -0
  204. package/src/skills/jira-sync/README.md +328 -0
  205. package/src/skills/jira-sync/SKILL.md +209 -0
  206. package/src/skills/jira-sync/test-cases/test-1.yaml +9 -0
  207. package/src/skills/jira-sync/test-cases/test-2.yaml +9 -0
  208. package/src/skills/jira-sync/test-cases/test-3.yaml +10 -0
  209. package/src/skills/nextjs/SKILL.md +176 -0
  210. package/src/skills/nodejs-backend/SKILL.md +181 -0
  211. package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +12 -0
  212. package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +12 -0
  213. package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +12 -0
  214. package/src/skills/python-backend/SKILL.md +226 -0
  215. package/src/skills/role-orchestrator/README.md +197 -0
  216. package/src/skills/role-orchestrator/SKILL.md +1184 -0
  217. package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +98 -0
  218. package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +73 -0
  219. package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +121 -0
  220. package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +145 -0
  221. package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +149 -0
  222. package/src/skills/skill-creator/LICENSE.txt +202 -0
  223. package/src/skills/skill-creator/SKILL.md +209 -0
  224. package/src/skills/skill-creator/scripts/init_skill.py +303 -0
  225. package/src/skills/skill-creator/scripts/package_skill.py +110 -0
  226. package/src/skills/skill-creator/scripts/quick_validate.py +65 -0
  227. package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +12 -0
  228. package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +12 -0
  229. package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +12 -0
  230. package/src/skills/skill-router/SKILL.md +497 -0
  231. package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +33 -0
  232. package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +42 -0
  233. package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +50 -0
  234. package/src/skills/spec-driven-brainstorming/README.md +264 -0
  235. package/src/skills/spec-driven-brainstorming/SKILL.md +439 -0
  236. package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +148 -0
  237. package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +190 -0
  238. package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +233 -0
  239. package/src/skills/spec-driven-debugging/README.md +479 -0
  240. package/src/skills/spec-driven-debugging/SKILL.md +652 -0
  241. package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +212 -0
  242. package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +461 -0
  243. package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +366 -0
  244. package/src/skills/spec-kit-expert/SKILL.md +1012 -0
  245. package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +12 -0
  246. package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +12 -0
  247. package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +12 -0
  248. package/src/skills/specweave-ado-mapper/SKILL.md +501 -0
  249. package/src/skills/specweave-detector/SKILL.md +420 -0
  250. package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +37 -0
  251. package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +37 -0
  252. package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +34 -0
  253. package/src/skills/specweave-jira-mapper/SKILL.md +500 -0
  254. package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +12 -0
  255. package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +12 -0
  256. package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +12 -0
  257. package/src/skills/task-builder/README.md +90 -0
  258. package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +12 -0
  259. package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +12 -0
  260. package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +12 -0
  261. package/src/templates/.env.example +144 -0
  262. package/src/templates/.gitignore.template +81 -0
  263. package/src/templates/CLAUDE.md.template +383 -0
  264. package/src/templates/README.md.template +240 -0
  265. package/src/templates/config.yaml +333 -0
  266. package/src/templates/docs/README.md +124 -0
  267. package/src/templates/docs/adr-template.md +118 -0
  268. package/src/templates/docs/hld-template.md +220 -0
  269. package/src/templates/docs/lld-template.md +580 -0
  270. package/src/templates/docs/prd-template.md +132 -0
  271. package/src/templates/docs/rfc-template.md +229 -0
  272. package/src/templates/docs/runbook-template.md +298 -0
  273. package/src/templates/environments/minimal/.env.production +16 -0
  274. package/src/templates/environments/minimal/README.md +54 -0
  275. package/src/templates/environments/minimal/deploy-production.yml +52 -0
  276. package/src/templates/environments/progressive/.env.qa +28 -0
  277. package/src/templates/environments/progressive/README.md +129 -0
  278. package/src/templates/environments/progressive/deploy-production.yml +93 -0
  279. package/src/templates/environments/progressive/deploy-qa.yml +62 -0
  280. package/src/templates/environments/progressive/deploy-staging.yml +67 -0
  281. package/src/templates/environments/standard/.env.development +20 -0
  282. package/src/templates/environments/standard/.env.production +30 -0
  283. package/src/templates/environments/standard/.env.staging +23 -0
  284. package/src/templates/environments/standard/README.md +97 -0
  285. package/src/templates/environments/standard/deploy-production.yml +68 -0
  286. package/src/templates/environments/standard/deploy-staging.yml +61 -0
  287. package/src/templates/environments/standard/docker-compose.yml +43 -0
  288. package/src/templates/increment-metadata-template.yaml +138 -0
@@ -0,0 +1,98 @@
1
+ ---
2
+ name: "Simple Product Development Orchestration"
3
+ description: "Tests role-orchestrator's ability to coordinate agents for simple product development"
4
+ priority: P1
5
+ test_type: integration
6
+
7
+ input:
8
+ prompt: "Build a simple todo application with React frontend and Node.js backend"
9
+ project_context:
10
+ type: "greenfield"
11
+ has_specs: false
12
+ has_architecture: false
13
+
14
+ expected_behavior:
15
+ - orchestrator_activates: true
16
+ - complexity_analysis:
17
+ scope: "full-product"
18
+ agents_needed: ["pm-agent", "architect-agent", "nodejs-backend", "frontend-agent", "qa-lead-agent", "devops-agent"]
19
+ pattern: "sequential_with_gates"
20
+
21
+ - execution_phases:
22
+ - phase: 1
23
+ name: "Requirements"
24
+ agent: "pm-agent"
25
+ output_files:
26
+ - "specifications/modules/todo-app/overview.md"
27
+ gate: "user_approval"
28
+
29
+ - phase: 2
30
+ name: "Architecture"
31
+ agent: "architect-agent"
32
+ input_from: "pm-agent"
33
+ output_files:
34
+ - ".specweave/docs/architecture/todo-app-design.md"
35
+ gate: "tech_review"
36
+
37
+ - phase: 3
38
+ name: "Feature Planning"
39
+ agent: "increment-planner"
40
+ output_files:
41
+ - "features/001-todo-app/spec.md"
42
+ - "features/001-todo-app/plan.md"
43
+ - "features/001-todo-app/tasks.md"
44
+
45
+ - phase: 4
46
+ name: "Implementation"
47
+ agents: ["nodejs-backend", "frontend-agent"]
48
+ pattern: "parallel"
49
+ output_files:
50
+ - "src/backend/todo-service.ts"
51
+ - "src/frontend/TodoApp.tsx"
52
+
53
+ - phase: 5
54
+ name: "Testing"
55
+ agent: "qa-lead-agent"
56
+ output_files:
57
+ - "features/001-todo-app/tests.md"
58
+ - "tests/e2e/todo-app.spec.ts"
59
+ gate: "test_coverage_80%"
60
+
61
+ - phase: 6
62
+ name: "Deployment"
63
+ agent: "devops-agent"
64
+ output_files:
65
+ - ".github/workflows/deploy.yml"
66
+ gate: "deployment_approval"
67
+
68
+ expected_output:
69
+ success: true
70
+ phases_completed: 6
71
+ gates_passed: 4
72
+ files_created:
73
+ - "specifications/modules/todo-app/overview.md"
74
+ - ".specweave/docs/architecture/todo-app-design.md"
75
+ - "features/001-todo-app/spec.md"
76
+ - "src/backend/todo-service.ts"
77
+ - "src/frontend/TodoApp.tsx"
78
+ - "tests/e2e/todo-app.spec.ts"
79
+
80
+ metrics:
81
+ total_agents_invoked: 6
82
+ parallel_executions: 1
83
+ sequential_phases: 5
84
+ quality_gates_passed: 4
85
+
86
+ validation:
87
+ - "All 6 phases completed in correct order"
88
+ - "Parallel execution of backend and frontend worked"
89
+ - "All quality gates evaluated correctly"
90
+ - "Shared context maintained across agents"
91
+ - "Final output includes all expected files"
92
+
93
+ success_criteria:
94
+ - orchestration_complete: true
95
+ - no_phase_failures: true
96
+ - all_gates_passed: true
97
+ - correct_agent_sequence: true
98
+ ---
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: "Quality Gate Failure Handling"
3
+ description: "Tests role-orchestrator's ability to handle quality gate failures and coordinate remediation"
4
+ priority: P1
5
+ test_type: integration
6
+
7
+ input:
8
+ prompt: "Implement payment processing feature"
9
+ project_context:
10
+ type: "brownfield"
11
+ existing_code: "src/payments/"
12
+ test_coverage: "45%" # Below 80% threshold
13
+
14
+ simulated_scenario:
15
+ - phase: "implementation"
16
+ status: "completed"
17
+ test_coverage_actual: "67%" # Below target of 80%
18
+
19
+ - phase: "qa_gate"
20
+ gate_type: "test_coverage"
21
+ target: "80%"
22
+ actual: "67%"
23
+ status: "failed"
24
+
25
+ expected_behavior:
26
+ - gate_failure_detected: true
27
+ - orchestrator_response:
28
+ - pause_deployment: true
29
+ - invoke_agent: "qa-lead-agent"
30
+ - task: "Analyze test coverage gaps and create additional tests"
31
+
32
+ - qa_lead_analysis:
33
+ files_examined:
34
+ - "src/payments/payment-service.ts"
35
+ - "tests/unit/payment-service.test.ts"
36
+ gaps_identified:
37
+ - "Error handling not tested (15% of code)"
38
+ - "Edge cases missing (10%)"
39
+ - "Integration tests needed (8%)"
40
+
41
+ - orchestrator_next_steps:
42
+ - create_work_items:
43
+ - "work/issues/001-improve-test-coverage/"
44
+ - assign_to: "nodejs-backend"
45
+ - task: "Implement additional test cases"
46
+
47
+ - retry_after_fixes:
48
+ test_coverage_new: "84%"
49
+ gate_status: "passed"
50
+ proceed_to_next_phase: true
51
+
52
+ expected_output:
53
+ gate_failure_handled: true
54
+ remediation_plan_created: true
55
+ work_items_created:
56
+ - "work/issues/001-improve-test-coverage/issue.md"
57
+ final_gate_status: "passed"
58
+ deployment_proceeded: true
59
+
60
+ validation:
61
+ - "Gate failure detected immediately"
62
+ - "Orchestrator paused next phases"
63
+ - "QA Lead agent invoked for analysis"
64
+ - "Work items created for fixes"
65
+ - "After fixes, gate re-evaluated"
66
+ - "Gate passed, deployment proceeded"
67
+
68
+ success_criteria:
69
+ - failure_detection: "immediate"
70
+ - remediation_invoked: true
71
+ - gate_retry_successful: true
72
+ - no_deployment_before_fix: true
73
+ ---
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: "Security Hardening Multi-Agent Workflow"
3
+ description: "Tests role-orchestrator's ability to coordinate security review with multiple agents"
4
+ priority: P1
5
+ test_type: integration
6
+
7
+ input:
8
+ prompt: "Perform security audit and harden our authentication system"
9
+ project_context:
10
+ type: "brownfield"
11
+ existing_system: "src/auth/"
12
+ security_critical: true
13
+ compliance_required: ["OWASP Top 10", "OAuth 2.0"]
14
+
15
+ expected_behavior:
16
+ - orchestrator_pattern: "assess_fix_verify"
17
+
18
+ - execution_phases:
19
+ - phase: 1
20
+ name: "Security Assessment"
21
+ agent: "security-agent"
22
+ task: "Threat modeling and security audit"
23
+ output_files:
24
+ - ".specweave/docs/architecture/security/threat-model.md"
25
+ - ".specweave/docs/architecture/security/vulnerabilities.md"
26
+ findings:
27
+ critical:
28
+ - "SQL injection vulnerability in login endpoint"
29
+ - "Missing rate limiting on password reset"
30
+ high:
31
+ - "Weak password policy"
32
+ - "Session tokens not rotated"
33
+ medium:
34
+ - "HTTPS not enforced on all routes"
35
+
36
+ - phase: 2
37
+ name: "Prioritization"
38
+ agent: "tech-lead-agent"
39
+ input_from: "security-agent"
40
+ task: "Create prioritized fix plan"
41
+ output_files:
42
+ - "work/issues/001-critical-security-fixes/issue.md"
43
+ - "work/issues/002-high-priority-security/issue.md"
44
+
45
+ - phase: 3
46
+ name: "Implementation"
47
+ agents: ["nodejs-backend"] # Since auth is Node.js
48
+ task: "Implement security fixes"
49
+ fixes_implemented:
50
+ - "Parameterized queries for SQL injection"
51
+ - "Rate limiting middleware (express-rate-limit)"
52
+ - "Enhanced password policy (zxcvbn)"
53
+ - "Session token rotation"
54
+ - "HTTPS enforcement"
55
+ output_files:
56
+ - "src/auth/auth-service.ts" # Updated
57
+ - "src/middleware/rate-limiter.ts" # New
58
+ - "src/auth/password-policy.ts" # New
59
+
60
+ - phase: 4
61
+ name: "Security Testing"
62
+ agent: "security-agent"
63
+ task: "Penetration testing"
64
+ tests_performed:
65
+ - "SQL injection attempts"
66
+ - "Brute force attacks"
67
+ - "Session hijacking"
68
+ - "CSRF attacks"
69
+ gate: "no_critical_vulnerabilities"
70
+
71
+ - phase: 5
72
+ name: "Regression Testing"
73
+ agent: "qa-lead-agent"
74
+ task: "Ensure no functionality broken"
75
+ output_files:
76
+ - "tests/security/auth-security.spec.ts"
77
+ gate: "all_tests_pass"
78
+
79
+ - phase: 6
80
+ name: "Deployment"
81
+ agent: "devops-agent"
82
+ task: "Zero-downtime deployment with rollback plan"
83
+ strategy: "blue-green"
84
+ gate: "deployment_approval"
85
+
86
+ expected_output:
87
+ success: true
88
+ vulnerabilities_fixed:
89
+ critical: 2
90
+ high: 2
91
+ medium: 1
92
+
93
+ security_gates_passed:
94
+ - "no_critical_vulnerabilities"
95
+ - "penetration_tests_passed"
96
+ - "regression_tests_passed"
97
+
98
+ files_created:
99
+ - ".specweave/docs/architecture/security/threat-model.md"
100
+ - "work/issues/001-critical-security-fixes/issue.md"
101
+ - "src/middleware/rate-limiter.ts"
102
+ - "tests/security/auth-security.spec.ts"
103
+
104
+ deployment_status: "successful"
105
+ rollback_plan: "documented"
106
+
107
+ validation:
108
+ - "Security agent performed comprehensive audit"
109
+ - "Critical vulnerabilities prioritized first"
110
+ - "All fixes implemented by appropriate agent"
111
+ - "Penetration testing validated fixes"
112
+ - "No regressions introduced"
113
+ - "Deployment successful with rollback plan"
114
+
115
+ success_criteria:
116
+ - all_critical_vulns_fixed: true
117
+ - penetration_tests_passed: true
118
+ - no_regressions: true
119
+ - deployment_successful: true
120
+ - compliance_met: ["OWASP Top 10", "OAuth 2.0"]
121
+ ---
@@ -0,0 +1,145 @@
1
+ ---
2
+ name: "Parallel Agent Execution with Sync Points"
3
+ description: "Tests role-orchestrator's ability to execute agents in parallel and synchronize at key points"
4
+ priority: P2
5
+ test_type: integration
6
+
7
+ input:
8
+ prompt: "Build a real-time chat application with message history and notifications"
9
+ project_context:
10
+ type: "greenfield"
11
+ complexity: "high"
12
+ requires_parallel_work: true
13
+
14
+ expected_behavior:
15
+ - orchestrator_pattern: "parallel_with_sync_points"
16
+
17
+ - execution_phases:
18
+ - phase: 1
19
+ name: "Architecture Design"
20
+ agent: "architect-agent"
21
+ output:
22
+ components:
23
+ - "WebSocket Server (Backend)"
24
+ - "React Chat UI (Frontend)"
25
+ - "Notification Service (Backend)"
26
+ - "Message Storage (Database)"
27
+
28
+ - phase: 2
29
+ name: "Parallel Implementation"
30
+ pattern: "parallel"
31
+ agents:
32
+ - agent: "nodejs-backend"
33
+ task: "Implement WebSocket server and message API"
34
+ files:
35
+ - "src/backend/websocket-server.ts"
36
+ - "src/backend/message-service.ts"
37
+ - "src/backend/message-repository.ts"
38
+
39
+ - agent: "frontend-agent"
40
+ task: "Implement chat UI components"
41
+ files:
42
+ - "src/frontend/components/ChatWindow.tsx"
43
+ - "src/frontend/components/MessageList.tsx"
44
+ - "src/frontend/hooks/useWebSocket.ts"
45
+
46
+ - agent: "nodejs-backend" # Different instance/task
47
+ task: "Implement notification service"
48
+ files:
49
+ - "src/backend/notification-service.ts"
50
+ - "src/backend/notification-queue.ts"
51
+
52
+ sync_point: "api_contract"
53
+ shared_artifacts:
54
+ - "features/002-chat-app/api-contracts.md" # All agents reference this
55
+
56
+ - phase: 3
57
+ name: "Integration Point"
58
+ agent: "tech-lead-agent"
59
+ task: "Verify all components integrate correctly"
60
+ validation:
61
+ - "WebSocket API matches frontend expectations"
62
+ - "Notification service integrates with message service"
63
+ - "Database schema supports all features"
64
+
65
+ - phase: 4
66
+ name: "Parallel Testing"
67
+ pattern: "parallel"
68
+ agents:
69
+ - agent: "qa-lead-agent"
70
+ task: "E2E tests for chat functionality"
71
+ files:
72
+ - "tests/e2e/chat-flow.spec.ts"
73
+
74
+ - agent: "qa-lead-agent" # Different task
75
+ task: "Integration tests for notification service"
76
+ files:
77
+ - "tests/integration/notification.test.ts"
78
+
79
+ - agent: "performance-agent"
80
+ task: "Load testing for WebSocket server"
81
+ files:
82
+ - "tests/performance/websocket-load.test.ts"
83
+
84
+ sync_point: "all_tests_pass"
85
+
86
+ - phase: 5
87
+ name: "Deployment"
88
+ agent: "devops-agent"
89
+ task: "Deploy with infrastructure for WebSocket support"
90
+
91
+ expected_output:
92
+ success: true
93
+ parallel_executions: 2 # Phase 2 and Phase 4
94
+
95
+ phase_2_timing:
96
+ backend_websocket: "started: 0s, completed: 45s"
97
+ frontend_ui: "started: 0s, completed: 40s" # Finished before backend
98
+ backend_notifications: "started: 0s, completed: 35s"
99
+ all_completed: "45s" # Waited for slowest
100
+ time_saved: "80s" # vs sequential (45 + 40 + 35 = 120s)
101
+
102
+ sync_point_1:
103
+ artifact: "features/002-chat-app/api-contracts.md"
104
+ all_agents_referenced: true
105
+ conflicts_detected: false
106
+
107
+ phase_4_timing:
108
+ e2e_tests: "started: 0s, completed: 30s"
109
+ integration_tests: "started: 0s, completed: 20s"
110
+ load_tests: "started: 0s, completed: 40s"
111
+ all_completed: "40s"
112
+ all_tests_passed: true
113
+
114
+ files_created:
115
+ backend:
116
+ - "src/backend/websocket-server.ts"
117
+ - "src/backend/message-service.ts"
118
+ - "src/backend/notification-service.ts"
119
+ frontend:
120
+ - "src/frontend/components/ChatWindow.tsx"
121
+ - "src/frontend/hooks/useWebSocket.ts"
122
+ tests:
123
+ - "tests/e2e/chat-flow.spec.ts"
124
+ - "tests/integration/notification.test.ts"
125
+ - "tests/performance/websocket-load.test.ts"
126
+
127
+ total_time: "~150s"
128
+ time_vs_sequential: "saved ~90s (60% faster)"
129
+
130
+ validation:
131
+ - "Agents started in parallel successfully"
132
+ - "No file conflicts between parallel agents"
133
+ - "Shared API contract respected by all"
134
+ - "Sync points enforced correctly"
135
+ - "All agents waited at sync points"
136
+ - "Integration validated before proceeding"
137
+ - "Parallel execution significantly faster"
138
+
139
+ success_criteria:
140
+ - parallel_execution_successful: true
141
+ - no_conflicts: true
142
+ - sync_points_enforced: true
143
+ - time_savings: ">50%"
144
+ - all_tests_passed: true
145
+ ---
@@ -0,0 +1,149 @@
1
+ ---
2
+ name: "Feedback Loops - PM Agent Auto-Refinement"
3
+ description: "Test automatic quality improvement through iterative refinement with feedback"
4
+ skill: role-orchestrator
5
+ priority: P1
6
+ estimated_time: "5-7 minutes"
7
+
8
+ input:
9
+ user_request: "Create requirements for user authentication feature"
10
+
11
+ config:
12
+ feedback_loops:
13
+ enabled: true
14
+ max_retries: 3
15
+ stop_on_improvement: true
16
+ quality_threshold: 0.80
17
+
18
+ validation:
19
+ use_llm_judge: true
20
+ combine_with_rules: true
21
+ judge_weight: 0.5
22
+
23
+ agent: "pm-agent"
24
+ task: "Define requirements for user authentication"
25
+
26
+ expected_output:
27
+ # Attempt 1: Initial generation (below threshold)
28
+ attempt_1:
29
+ output: "Initial requirements spec"
30
+ validation:
31
+ rule_based_score: 1.00 # All structural rules pass
32
+ llm_judge_score: 0.60-0.70
33
+ combined_score: 0.70-0.85
34
+ threshold: 0.80
35
+
36
+ issues_found:
37
+ - severity: "major"
38
+ description: "Acceptance criteria not testable"
39
+ location: "Success Criteria section"
40
+
41
+ - severity: "major"
42
+ description: "Security requirements too vague"
43
+ location: "Security section"
44
+
45
+ - severity: "minor"
46
+ description: "No rate limiting specified"
47
+ location: "Requirements"
48
+
49
+ below_threshold: true
50
+ triggers_refinement: true
51
+
52
+ # Attempt 2: Refinement with feedback
53
+ attempt_2:
54
+ feedback_provided: |
55
+ Issues from previous attempt:
56
+ • MAJOR: Acceptance criteria not testable
57
+ Location: Success Criteria section
58
+ Suggestion: Use measurable metrics (e.g., "Login completes in <2s")
59
+
60
+ • MAJOR: Security requirements too vague
61
+ Location: Security section
62
+ Suggestion: Specify encryption, hashing, rate limiting
63
+
64
+ • MINOR: No rate limiting specified
65
+ Location: Requirements
66
+ Suggestion: Add brute-force protection (5 attempts, 15min lockout)
67
+
68
+ output: "Improved requirements spec with feedback incorporated"
69
+ validation:
70
+ rule_based_score: 1.00
71
+ llm_judge_score: 0.80-0.90
72
+ combined_score: 0.85-0.95
73
+ threshold: 0.80
74
+
75
+ improvements:
76
+ - "Acceptance criteria now measurable with metrics"
77
+ - "Security requirements detailed (bcrypt, JWT, rate limiting)"
78
+ - "Rate limiting specified (5 attempts, 15min lockout)"
79
+
80
+ above_threshold: true
81
+ stops_refinement: true
82
+
83
+ final_result:
84
+ total_attempts: 2
85
+ final_score: 0.85-0.95
86
+ met_threshold: true
87
+ output_quality: "good"
88
+
89
+ remaining_issues:
90
+ count: 0-1
91
+ severity: "minor"
92
+ examples:
93
+ - "Performance requirements could be more specific (p95/p99 targets)"
94
+
95
+ validation:
96
+ # Attempt 1 validation
97
+ - "Initial attempt produces output"
98
+ - "Rule-based validation passes (1.00)"
99
+ - "LLM judge score < 0.80"
100
+ - "Combined score may or may not be < 0.80 depending on weights"
101
+ - "At least 2 major issues found"
102
+ - "Triggers refinement"
103
+
104
+ # Attempt 2 validation
105
+ - "Feedback generated from issues"
106
+ - "PM agent receives feedback prompt"
107
+ - "Second attempt incorporates feedback"
108
+ - "LLM judge score improves (>= 0.80)"
109
+ - "Combined score >= 0.80"
110
+ - "Stops after reaching threshold"
111
+
112
+ # Overall validation
113
+ - "Total attempts <= 3"
114
+ - "Final score >= 0.80"
115
+ - "Quality improvement measurable"
116
+ - "Progress shown to user"
117
+
118
+ success_criteria:
119
+ - "Feedback loop triggers on low quality"
120
+ - "Agent successfully incorporates feedback"
121
+ - "Quality score improves significantly"
122
+ - "Stops when threshold met (doesn't waste retries)"
123
+ - "User sees progress updates"
124
+ - "Final output meets quality standards"
125
+
126
+ workflow_steps:
127
+ 1. "PM agent generates initial requirements"
128
+ 2. "Validate with rule-based + LLM-as-judge"
129
+ 3. "Detect score below threshold (0.80)"
130
+ 4. "Generate feedback from issues"
131
+ 5. "Reinvoke PM agent with feedback"
132
+ 6. "Validate improved output"
133
+ 7. "Detect score above threshold"
134
+ 8. "Stop refinement, return final output"
135
+
136
+ edge_cases:
137
+ max_retries_reached:
138
+ description: "If quality doesn't improve after 3 attempts"
139
+ expected: "Return best attempt with warning"
140
+
141
+ stop_on_improvement:
142
+ description: "If score improves but doesn't reach threshold"
143
+ config: "stop_on_improvement: true"
144
+ expected: "Stop early if improvement detected"
145
+
146
+ first_attempt_passes:
147
+ description: "If initial attempt >= threshold"
148
+ expected: "No refinement needed, accept immediately"
149
+ ---