specweave 0.1.9 → 0.3.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 (293) hide show
  1. package/CLAUDE.md +600 -0
  2. package/README.md +245 -81
  3. package/bin/install-all.sh +1 -1
  4. package/bin/install-commands.sh +3 -3
  5. package/bin/specweave.js +39 -9
  6. package/dist/adapters/adapter-base.d.ts +1 -1
  7. package/dist/adapters/adapter-base.d.ts.map +1 -1
  8. package/dist/adapters/adapter-base.js +6 -41
  9. package/dist/adapters/adapter-base.js.map +1 -1
  10. package/dist/adapters/adapter-interface.js +1 -2
  11. package/dist/adapters/adapter-interface.js.map +1 -1
  12. package/dist/adapters/adapter-loader.d.ts +86 -0
  13. package/dist/adapters/adapter-loader.d.ts.map +1 -0
  14. package/dist/adapters/adapter-loader.js +216 -0
  15. package/dist/adapters/adapter-loader.js.map +1 -0
  16. package/dist/adapters/agents-md-generator.d.ts +48 -0
  17. package/dist/adapters/agents-md-generator.d.ts.map +1 -0
  18. package/dist/adapters/agents-md-generator.js +132 -0
  19. package/dist/adapters/agents-md-generator.js.map +1 -0
  20. package/dist/adapters/claude/adapter.d.ts +2 -2
  21. package/dist/adapters/claude/adapter.d.ts.map +1 -1
  22. package/dist/adapters/claude/adapter.js +5 -42
  23. package/dist/adapters/claude/adapter.js.map +1 -1
  24. package/dist/adapters/claude-md-generator.d.ts +78 -0
  25. package/dist/adapters/claude-md-generator.d.ts.map +1 -0
  26. package/dist/adapters/claude-md-generator.js +246 -0
  27. package/dist/adapters/claude-md-generator.js.map +1 -0
  28. package/dist/adapters/codex/adapter.d.ts +50 -0
  29. package/dist/adapters/codex/adapter.d.ts.map +1 -0
  30. package/dist/adapters/codex/adapter.js +316 -0
  31. package/dist/adapters/codex/adapter.js.map +1 -0
  32. package/dist/adapters/copilot/adapter.d.ts +10 -9
  33. package/dist/adapters/copilot/adapter.d.ts.map +1 -1
  34. package/dist/adapters/copilot/adapter.js +35 -100
  35. package/dist/adapters/copilot/adapter.js.map +1 -1
  36. package/dist/adapters/cursor/adapter.d.ts +8 -6
  37. package/dist/adapters/cursor/adapter.d.ts.map +1 -1
  38. package/dist/adapters/cursor/adapter.js +47 -130
  39. package/dist/adapters/cursor/adapter.js.map +1 -1
  40. package/dist/adapters/doc-generator.d.ts +69 -0
  41. package/dist/adapters/doc-generator.d.ts.map +1 -0
  42. package/dist/adapters/doc-generator.js +247 -0
  43. package/dist/adapters/doc-generator.js.map +1 -0
  44. package/dist/adapters/gemini/adapter.d.ts +50 -0
  45. package/dist/adapters/gemini/adapter.d.ts.map +1 -0
  46. package/dist/adapters/gemini/adapter.js +281 -0
  47. package/dist/adapters/gemini/adapter.js.map +1 -0
  48. package/dist/adapters/generic/adapter.d.ts +7 -4
  49. package/dist/adapters/generic/adapter.d.ts.map +1 -1
  50. package/dist/adapters/generic/adapter.js +60 -59
  51. package/dist/adapters/generic/adapter.js.map +1 -1
  52. package/dist/cli/commands/init.d.ts +3 -1
  53. package/dist/cli/commands/init.d.ts.map +1 -1
  54. package/dist/cli/commands/init.js +272 -170
  55. package/dist/cli/commands/init.js.map +1 -1
  56. package/dist/cli/commands/install.d.ts.map +1 -1
  57. package/dist/cli/commands/install.js +22 -58
  58. package/dist/cli/commands/install.js.map +1 -1
  59. package/dist/cli/commands/list.d.ts.map +1 -1
  60. package/dist/cli/commands/list.js +27 -64
  61. package/dist/cli/commands/list.js.map +1 -1
  62. package/dist/core/credentials-manager.d.ts +90 -0
  63. package/dist/core/credentials-manager.d.ts.map +1 -0
  64. package/dist/core/credentials-manager.js +271 -0
  65. package/dist/core/credentials-manager.js.map +1 -0
  66. package/dist/core/project-structure-detector.d.ts +92 -0
  67. package/dist/core/project-structure-detector.d.ts.map +1 -0
  68. package/dist/core/project-structure-detector.js +289 -0
  69. package/dist/core/project-structure-detector.js.map +1 -0
  70. package/dist/core/rfc-generator-v2.d.ts +149 -0
  71. package/dist/core/rfc-generator-v2.d.ts.map +1 -0
  72. package/dist/core/rfc-generator-v2.js +399 -0
  73. package/dist/core/rfc-generator-v2.js.map +1 -0
  74. package/dist/core/rfc-generator.d.ts +147 -0
  75. package/dist/core/rfc-generator.d.ts.map +1 -0
  76. package/dist/core/rfc-generator.js +434 -0
  77. package/dist/core/rfc-generator.js.map +1 -0
  78. package/dist/integrations/ado/ado-client.d.ts +123 -0
  79. package/dist/integrations/ado/ado-client.d.ts.map +1 -0
  80. package/dist/integrations/ado/ado-client.js +398 -0
  81. package/dist/integrations/ado/ado-client.js.map +1 -0
  82. package/dist/integrations/jira/jira-client.d.ts +139 -0
  83. package/dist/integrations/jira/jira-client.d.ts.map +1 -0
  84. package/dist/integrations/jira/jira-client.js +386 -0
  85. package/dist/integrations/jira/jira-client.js.map +1 -0
  86. package/dist/integrations/jira/jira-incremental-mapper.d.ts +75 -0
  87. package/dist/integrations/jira/jira-incremental-mapper.d.ts.map +1 -0
  88. package/dist/integrations/jira/jira-incremental-mapper.js +474 -0
  89. package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -0
  90. package/dist/integrations/jira/jira-mapper.d.ts +105 -0
  91. package/dist/integrations/jira/jira-mapper.d.ts.map +1 -0
  92. package/dist/integrations/jira/jira-mapper.js +494 -0
  93. package/dist/integrations/jira/jira-mapper.js.map +1 -0
  94. package/dist/testing/test-generator.d.ts +117 -0
  95. package/dist/testing/test-generator.d.ts.map +1 -0
  96. package/dist/testing/test-generator.js +370 -0
  97. package/dist/testing/test-generator.js.map +1 -0
  98. package/dist/utils/auto-install.d.ts +3 -0
  99. package/dist/utils/auto-install.d.ts.map +1 -1
  100. package/dist/utils/auto-install.js +16 -82
  101. package/dist/utils/auto-install.js.map +1 -1
  102. package/dist/utils/esm-helpers.d.ts +50 -0
  103. package/dist/utils/esm-helpers.d.ts.map +1 -0
  104. package/dist/utils/esm-helpers.js +57 -0
  105. package/dist/utils/esm-helpers.js.map +1 -0
  106. package/package.json +16 -7
  107. package/src/adapters/README.md +1 -2
  108. package/src/adapters/adapter-base.ts +6 -3
  109. package/src/adapters/adapter-loader.ts +261 -0
  110. package/src/adapters/agents-md-generator.ts +162 -0
  111. package/src/adapters/claude/README.md +6 -14
  112. package/src/adapters/claude/adapter.ts +4 -4
  113. package/src/adapters/claude-md-generator.ts +311 -0
  114. package/src/adapters/codex/README.md +105 -0
  115. package/src/adapters/codex/adapter.ts +333 -0
  116. package/src/adapters/copilot/adapter.ts +36 -65
  117. package/src/adapters/cursor/README.md +0 -2
  118. package/src/adapters/cursor/adapter.ts +46 -92
  119. package/src/adapters/doc-generator.ts +331 -0
  120. package/src/adapters/gemini/README.md +97 -0
  121. package/src/adapters/gemini/adapter.ts +298 -0
  122. package/src/adapters/generic/adapter.ts +61 -57
  123. package/src/adapters/registry.yaml +86 -25
  124. package/src/agents/devops/AGENT.md +16 -18
  125. package/src/agents/docs-writer/AGENT.md +2 -2
  126. package/src/agents/pm/AGENT.md +1 -50
  127. package/src/commands/README.md +134 -111
  128. package/src/commands/{build.md → specweave.do.md} +141 -69
  129. package/src/commands/{done.md → specweave.done.md} +3 -3
  130. package/src/commands/{inc.md → specweave.inc.md} +4 -4
  131. package/src/commands/{increment.md → specweave.increment.md} +143 -76
  132. package/src/commands/specweave.md +430 -0
  133. package/src/commands/specweave.next.md +495 -0
  134. package/src/commands/{progress.md → specweave.progress.md} +12 -12
  135. package/src/commands/specweave.sync-docs.md +665 -0
  136. package/src/commands/specweave.sync-github.md +269 -0
  137. package/src/commands/specweave.sync-jira.md +197 -0
  138. package/src/commands/{validate.md → specweave.validate.md} +4 -4
  139. package/src/hooks/README.md +19 -29
  140. package/src/hooks/post-task-completion.sh +25 -30
  141. package/src/skills/ado-sync/README.md +1 -36
  142. package/src/skills/bmad-method-expert/SKILL.md +1 -3
  143. package/src/skills/brownfield-analyzer/SKILL.md +429 -23
  144. package/src/skills/brownfield-onboarder/SKILL.md +221 -8
  145. package/src/skills/context-loader/SKILL.md +239 -617
  146. package/src/skills/context-optimizer/SKILL.md +0 -30
  147. package/src/skills/github-sync/SKILL.md +1 -19
  148. package/src/skills/increment-planner/SKILL.md +64 -18
  149. package/src/skills/increment-quality-judge/SKILL.md +1 -36
  150. package/src/skills/jira-sync/README.md +1 -38
  151. package/src/skills/role-orchestrator/README.md +1 -22
  152. package/src/skills/role-orchestrator/SKILL.md +1 -59
  153. package/src/skills/skill-router/SKILL.md +0 -18
  154. package/src/skills/spec-kit-expert/SKILL.md +1 -3
  155. package/src/skills/specweave-detector/SKILL.md +225 -275
  156. package/src/skills/task-builder/README.md +1 -7
  157. package/src/templates/AGENTS.md.template +334 -0
  158. package/src/templates/CLAUDE.md.template +131 -298
  159. package/src/templates/README.md.template +115 -23
  160. package/src/templates/environments/minimal/README.md +0 -1
  161. package/INSTALL.md +0 -848
  162. package/SPECWEAVE.md +0 -743
  163. package/src/adapters/copilot/.github/copilot/instructions.md +0 -376
  164. package/src/adapters/cursor/.cursorrules +0 -325
  165. package/src/adapters/generic/SPECWEAVE-MANUAL.md +0 -676
  166. package/src/commands/create-project.md +0 -528
  167. package/src/commands/generate-docs.md +0 -623
  168. package/src/commands/review-docs.md +0 -331
  169. package/src/commands/sync-github.md +0 -115
  170. package/src/skills/ado-sync/test-cases/test-1.yaml +0 -9
  171. package/src/skills/ado-sync/test-cases/test-2.yaml +0 -8
  172. package/src/skills/ado-sync/test-cases/test-3.yaml +0 -9
  173. package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +0 -12
  174. package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +0 -12
  175. package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +0 -12
  176. package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +0 -48
  177. package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +0 -12
  178. package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +0 -12
  179. package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +0 -12
  180. package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +0 -12
  181. package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +0 -12
  182. package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +0 -12
  183. package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +0 -12
  184. package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +0 -12
  185. package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +0 -39
  186. package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +0 -44
  187. package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +0 -45
  188. package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +0 -97
  189. package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +0 -109
  190. package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +0 -98
  191. package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +0 -75
  192. package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +0 -52
  193. package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +0 -63
  194. package/src/skills/cost-optimizer/test-results/README.md +0 -46
  195. package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +0 -23
  196. package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +0 -24
  197. package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +0 -23
  198. package/src/skills/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -13
  199. package/src/skills/diagrams-architect/test-cases/test-2-sequence-diagram.yaml +0 -13
  200. package/src/skills/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -13
  201. package/src/skills/diagrams-generator/test-cases/test-1.yaml +0 -9
  202. package/src/skills/diagrams-generator/test-cases/test-2.yaml +0 -9
  203. package/src/skills/diagrams-generator/test-cases/test-3.yaml +0 -8
  204. package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +0 -12
  205. package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +0 -12
  206. package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +0 -12
  207. package/src/skills/dotnet-backend/test-cases/test-1-rest-api.yaml +0 -14
  208. package/src/skills/dotnet-backend/test-cases/test-2-authentication.yaml +0 -13
  209. package/src/skills/dotnet-backend/test-cases/test-3-minimal-api.yaml +0 -13
  210. package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +0 -54
  211. package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +0 -64
  212. package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +0 -74
  213. package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +0 -98
  214. package/src/skills/figma-designer/test-cases/test-1-design-system.yaml +0 -13
  215. package/src/skills/figma-designer/test-cases/test-2-component-library.yaml +0 -13
  216. package/src/skills/figma-designer/test-cases/test-3-responsive-layout.yaml +0 -13
  217. package/src/skills/figma-implementer/test-cases/test-1-design-to-react.yaml +0 -13
  218. package/src/skills/figma-implementer/test-cases/test-2-storybook.yaml +0 -13
  219. package/src/skills/figma-implementer/test-cases/test-3-design-tokens.yaml +0 -13
  220. package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +0 -22
  221. package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +0 -21
  222. package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +0 -18
  223. package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +0 -29
  224. package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +0 -27
  225. package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +0 -28
  226. package/src/skills/frontend/test-cases/test-1-react-component.yaml +0 -13
  227. package/src/skills/frontend/test-cases/test-2-form-validation.yaml +0 -13
  228. package/src/skills/frontend/test-cases/test-3-state-management.yaml +0 -13
  229. package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +0 -12
  230. package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +0 -12
  231. package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +0 -12
  232. package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +0 -71
  233. package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +0 -85
  234. package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +0 -126
  235. package/src/skills/hetzner-provisioner/test-results/README.md +0 -259
  236. package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +0 -27
  237. package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +0 -30
  238. package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +0 -24
  239. package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +0 -95
  240. package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +0 -108
  241. package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +0 -87
  242. package/src/skills/jira-sync/test-cases/test-1.yaml +0 -9
  243. package/src/skills/jira-sync/test-cases/test-2.yaml +0 -9
  244. package/src/skills/jira-sync/test-cases/test-3.yaml +0 -10
  245. package/src/skills/nextjs/test-cases/test-1-app-router.yaml +0 -13
  246. package/src/skills/nextjs/test-cases/test-2-server-actions.yaml +0 -13
  247. package/src/skills/nextjs/test-cases/test-3-api-routes.yaml +0 -13
  248. package/src/skills/nodejs-backend/test-cases/test-1-express-api.yaml +0 -13
  249. package/src/skills/nodejs-backend/test-cases/test-2-prisma-orm.yaml +0 -13
  250. package/src/skills/nodejs-backend/test-cases/test-3-authentication.yaml +0 -13
  251. package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +0 -12
  252. package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +0 -12
  253. package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +0 -12
  254. package/src/skills/python-backend/test-cases/test-1-fastapi-crud.yaml +0 -13
  255. package/src/skills/python-backend/test-cases/test-2-sqlalchemy.yaml +0 -13
  256. package/src/skills/python-backend/test-cases/test-3-authentication.yaml +0 -13
  257. package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +0 -98
  258. package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +0 -73
  259. package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +0 -121
  260. package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +0 -145
  261. package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +0 -149
  262. package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +0 -12
  263. package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +0 -12
  264. package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +0 -12
  265. package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +0 -33
  266. package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +0 -42
  267. package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +0 -50
  268. package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +0 -148
  269. package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +0 -190
  270. package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +0 -233
  271. package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +0 -212
  272. package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +0 -461
  273. package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +0 -366
  274. package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +0 -12
  275. package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +0 -12
  276. package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +0 -12
  277. package/src/skills/specweave-ado-mapper/test-cases/test-1-export-to-ado.yaml +0 -13
  278. package/src/skills/specweave-ado-mapper/test-cases/test-2-import-from-ado.yaml +0 -13
  279. package/src/skills/specweave-ado-mapper/test-cases/test-3-bidirectional-sync.yaml +0 -13
  280. package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +0 -37
  281. package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +0 -37
  282. package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +0 -34
  283. package/src/skills/specweave-jira-mapper/test-cases/test-1-export-to-jira.yaml +0 -13
  284. package/src/skills/specweave-jira-mapper/test-cases/test-2-import-from-jira.yaml +0 -13
  285. package/src/skills/specweave-jira-mapper/test-cases/test-3-sync-status.yaml +0 -13
  286. package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +0 -12
  287. package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +0 -12
  288. package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +0 -12
  289. package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +0 -12
  290. package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +0 -12
  291. package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +0 -12
  292. package/src/templates/config.yaml +0 -351
  293. /package/src/commands/{list-increments.md → specweave.list-increments.md} +0 -0
@@ -1,39 +0,0 @@
1
- ---
2
- name: "Basic Context Loading from Manifest"
3
- description: "Tests if context-loader can load specifications from a context manifest file"
4
- input:
5
- prompt: "Load context for feature 001"
6
- files:
7
- - "features/001-skills-framework/context-manifest.yaml"
8
- manifest_content:
9
- spec_sections:
10
- - "specifications/modules/core/skills-system.md"
11
- - "specifications/modules/core/context-loading.md"
12
- documentation:
13
- - ".specweave/docs/architecture/skills-system.md"
14
- max_context_tokens: 10000
15
- priority: high
16
- expected_output:
17
- type: "context_loaded"
18
- files_loaded:
19
- - "specifications/modules/core/skills-system.md"
20
- - "specifications/modules/core/context-loading.md"
21
- - ".specweave/docs/architecture/skills-system.md"
22
- tokens_used: 7500
23
- within_budget: true
24
- contains:
25
- - "Loaded 3 files"
26
- - "Token usage: 7500/10000"
27
- - "Context ready"
28
- validation:
29
- - "Parses context-manifest.yaml correctly"
30
- - "Loads all specified files"
31
- - "Respects token budget (7500 < 10000)"
32
- - "Returns loaded content"
33
- - "No errors or warnings"
34
- success_criteria:
35
- - "All files loaded successfully"
36
- - "Token budget respected"
37
- - "Content accessible to calling skill"
38
- - "Performance <500ms"
39
- ---
@@ -1,44 +0,0 @@
1
- ---
2
- name: "Token Budget Exceeded Handling"
3
- description: "Tests context-loader behavior when requested files exceed token budget"
4
- input:
5
- prompt: "Load context for large feature"
6
- files:
7
- - "features/002-large-feature/context-manifest.yaml"
8
- manifest_content:
9
- spec_sections:
10
- - "specifications/modules/payments/**/*.md" # Large module
11
- - "specifications/modules/auth/**/*.md" # Another large module
12
- max_context_tokens: 5000
13
- priority: high
14
- estimated_tokens:
15
- payments: 6000 # Exceeds budget alone
16
- auth: 4000
17
- total: 10000 # Far exceeds budget
18
- expected_output:
19
- type: "error_with_suggestions"
20
- files_loaded: []
21
- tokens_used: 0
22
- within_budget: false
23
- error_message: "Token budget exceeded: estimated 10000 tokens, budget is 5000"
24
- suggestions:
25
- - "Increase max_context_tokens in manifest"
26
- - "Use more specific glob patterns"
27
- - "Load sections with anchors (e.g., #specific-section)"
28
- - "Split into multiple manifests"
29
- contains:
30
- - "Token budget exceeded"
31
- - "Estimated: 10000"
32
- - "Budget: 5000"
33
- validation:
34
- - "Detects token budget violation BEFORE loading"
35
- - "Provides clear error message"
36
- - "Suggests actionable solutions"
37
- - "Does not partially load (all-or-nothing)"
38
- - "No crash or silent failure"
39
- success_criteria:
40
- - "Pre-flight token estimation works"
41
- - "Budget enforcement works"
42
- - "Helpful error messages"
43
- - "Actionable recommendations"
44
- ---
@@ -1,45 +0,0 @@
1
- ---
2
- name: "Load Specific Sections with Anchors"
3
- description: "Tests context-loader's ability to load only specific sections using markdown anchors"
4
- input:
5
- prompt: "Load only the authentication flow section"
6
- files:
7
- - "features/003-auth-feature/context-manifest.yaml"
8
- manifest_content:
9
- spec_sections:
10
- - "specifications/modules/auth/authentication.md#oauth-flow"
11
- - "specifications/modules/auth/authentication.md#session-management"
12
- documentation:
13
- - ".specweave/docs/architecture/api-design.md#authentication-endpoints"
14
- max_context_tokens: 3000
15
- priority: high
16
- expected_output:
17
- type: "section_loaded"
18
- files_loaded:
19
- - path: "specifications/modules/auth/authentication.md"
20
- sections:
21
- - "oauth-flow"
22
- - "session-management"
23
- - path: ".specweave/docs/architecture/api-design.md"
24
- sections:
25
- - "authentication-endpoints"
26
- full_files_loaded: false
27
- sections_only: true
28
- tokens_used: 1500
29
- within_budget: true
30
- contains:
31
- - "Loaded 2 sections from authentication.md"
32
- - "Loaded 1 section from api-design.md"
33
- - "Token usage: 1500/3000"
34
- validation:
35
- - "Parses markdown anchor syntax (#section-name)"
36
- - "Loads ONLY specified sections, not full files"
37
- - "Correctly extracts section content"
38
- - "Token usage significantly reduced vs full file"
39
- - "Preserves section context (headings)"
40
- success_criteria:
41
- - "Anchor parsing works"
42
- - "Selective section loading works"
43
- - "70%+ token reduction vs full file"
44
- - "Section boundaries correct"
45
- ---
@@ -1,97 +0,0 @@
1
- ---
2
- name: "Bug Fix Optimization - Narrow Scope"
3
- description: "Optimize context for a focused bug fix in authentication"
4
- skill: context-optimizer
5
- priority: P1
6
- estimated_time: "1-2 minutes"
7
-
8
- input:
9
- prompt: "Fix login bug where JWT expires too early"
10
-
11
- loaded_context:
12
- total_tokens: 45000
13
- specs:
14
- - name: "auth-spec.md"
15
- tokens: 12000
16
- domain: "auth"
17
-
18
- - name: "payment-spec.md"
19
- tokens: 9000
20
- domain: "payment"
21
-
22
- - name: "user-management-spec.md"
23
- tokens: 7000
24
- domain: "users"
25
-
26
- agents:
27
- - name: "pm-agent"
28
- tokens: 2000
29
-
30
- - name: "nodejs-backend"
31
- tokens: 8000
32
-
33
- - name: "frontend"
34
- tokens: 5000
35
-
36
- - name: "devops-agent"
37
- tokens: 2000
38
-
39
- expected_output:
40
- task_analysis:
41
- task_type: "bug-fix"
42
- domains: ["auth", "backend"]
43
- scope: "narrow"
44
- needs_full_context: false
45
- confidence: 0.85-0.95
46
-
47
- optimization_result:
48
- tokens_before: 45000
49
- tokens_after: 25000-28000
50
- reduction_percentage: 38-44
51
- total_reduction: 82 # From original 150k
52
-
53
- removed_sections:
54
- specs:
55
- - "payment-spec.md (9000 tokens) - Unrelated domain"
56
- - "user-management-spec.md (7000 tokens) - Unrelated domain"
57
-
58
- agents:
59
- - "pm-agent (2000 tokens) - Not needed for bug fix"
60
- - "frontend (5000 tokens) - Backend bug"
61
- - "devops-agent (2000 tokens) - Not deploying"
62
-
63
- kept_sections:
64
- specs:
65
- - "auth-spec.md (12000 tokens) - Core domain"
66
-
67
- agents:
68
- - "nodejs-backend (8000 tokens) - Implementation"
69
-
70
- additional:
71
- - "architecture/security/jwt-handling.md (5000 tokens est.)"
72
- - "Tech Lead agent (2000 tokens est.) - Code review"
73
-
74
- rationale:
75
- - "Bug fix requires only authentication domain knowledge"
76
- - "Backend implementation skill sufficient"
77
- - "PM agent not needed (requirements already defined)"
78
- - "DevOps not needed (not deploying fix immediately)"
79
-
80
- validation:
81
- - "Task type detected as 'bug-fix'"
82
- - "Domains detected: auth, backend"
83
- - "Scope: narrow"
84
- - "Token reduction >= 35%"
85
- - "Total reduction from original >= 80%"
86
- - "All unrelated domains removed"
87
- - "Core auth spec retained"
88
- - "Backend implementation skill retained"
89
- - "Confidence >= 0.85"
90
-
91
- success_criteria:
92
- - "Correct task type identification"
93
- - "Appropriate domain filtering"
94
- - "Significant token reduction without losing needed context"
95
- - "Clear rationale for removals"
96
- - "High confidence in analysis"
97
- ---
@@ -1,109 +0,0 @@
1
- ---
2
- name: "Feature Development - Focused Scope"
3
- description: "Optimize context for adding subscription billing feature"
4
- skill: context-optimizer
5
- priority: P1
6
- estimated_time: "1-2 minutes"
7
-
8
- input:
9
- prompt: "Add subscription billing with monthly/annual plans to payment module"
10
-
11
- loaded_context:
12
- total_tokens: 45000
13
- specs:
14
- - name: "auth-spec.md"
15
- tokens: 12000
16
- domain: "auth"
17
-
18
- - name: "payment-spec.md"
19
- tokens: 9000
20
- domain: "payment"
21
-
22
- - name: "user-management-spec.md"
23
- tokens: 7000
24
- domain: "users"
25
-
26
- docs:
27
- - name: "architecture/payment-integration.md"
28
- tokens: 6000
29
- domain: "payment"
30
-
31
- - name: "architecture/auth-design.md"
32
- tokens: 5000
33
- domain: "auth"
34
-
35
- - name: "architecture/adr/0015-payment-provider.md"
36
- tokens: 3000
37
- domain: "payment"
38
-
39
- agents:
40
- - name: "pm-agent"
41
- tokens: 2000
42
-
43
- - name: "nodejs-backend"
44
- tokens: 8000
45
-
46
- - name: "tech-lead-agent"
47
- tokens: 2000
48
-
49
- expected_output:
50
- task_analysis:
51
- task_type: "feature"
52
- domains: ["payment", "backend"]
53
- scope: "focused"
54
- needs_full_context: false
55
- confidence: 0.90-0.95
56
-
57
- optimization_result:
58
- tokens_before: 45000
59
- tokens_after: 28000-32000
60
- reduction_percentage: 29-38
61
- total_reduction: 79-81 # From original 150k
62
-
63
- removed_sections:
64
- specs:
65
- - "auth-spec.md (12000 tokens) - Unrelated to payment feature"
66
- - "user-management-spec.md (7000 tokens) - Not involved in billing"
67
-
68
- docs:
69
- - "architecture/auth-design.md (5000 tokens) - Different domain"
70
-
71
- kept_sections:
72
- specs:
73
- - "payment-spec.md (9000 tokens) - Core domain"
74
-
75
- docs:
76
- - "architecture/payment-integration.md (6000 tokens) - Integration context"
77
- - "architecture/adr/0015-payment-provider.md (3000 tokens) - Provider decisions"
78
-
79
- agents:
80
- - "pm-agent (2000 tokens) - Requirements clarification"
81
- - "nodejs-backend (8000 tokens) - Implementation"
82
- - "tech-lead-agent (2000 tokens) - Planning and review"
83
-
84
- rationale:
85
- - "Feature development in payment domain only"
86
- - "PM agent kept for requirements refinement"
87
- - "Tech Lead kept for planning and architecture"
88
- - "Payment integration docs provide integration points"
89
- - "ADR provides context on payment provider choice"
90
-
91
- validation:
92
- - "Task type detected as 'feature'"
93
- - "Domains detected: payment, backend"
94
- - "Scope: focused"
95
- - "Token reduction >= 25%"
96
- - "Total reduction from original >= 78%"
97
- - "Payment domain specs/docs retained"
98
- - "Auth domain removed"
99
- - "PM and Tech Lead agents retained (planning needed)"
100
- - "Confidence >= 0.90"
101
-
102
- success_criteria:
103
- - "Feature development pattern recognized"
104
- - "Domain filtering appropriate for focused scope"
105
- - "Planning agents kept (PM, Tech Lead)"
106
- - "Integration docs retained for context"
107
- - "Unrelated domains removed"
108
- - "High confidence in analysis"
109
- ---
@@ -1,98 +0,0 @@
1
- ---
2
- name: "Architecture Review - Broad Scope (Skip Optimization)"
3
- description: "Context optimizer should skip optimization for broad architectural reviews"
4
- skill: context-optimizer
5
- priority: P1
6
- estimated_time: "1-2 minutes"
7
-
8
- input:
9
- prompt: "Review overall system architecture and identify integration issues"
10
-
11
- loaded_context:
12
- total_tokens: 45000
13
- specs:
14
- - name: "auth-spec.md"
15
- tokens: 12000
16
- domain: "auth"
17
-
18
- - name: "payment-spec.md"
19
- tokens: 9000
20
- domain: "payment"
21
-
22
- - name: "user-management-spec.md"
23
- tokens: 7000
24
- domain: "users"
25
-
26
- - name: "notification-spec.md"
27
- tokens: 6000
28
- domain: "notifications"
29
-
30
- docs:
31
- - name: "architecture/system-overview.md"
32
- tokens: 4000
33
- domain: "all"
34
-
35
- - name: "architecture/integration-patterns.md"
36
- tokens: 3000
37
- domain: "all"
38
-
39
- - name: "architecture/data-flow.md"
40
- tokens: 4000
41
- domain: "all"
42
-
43
- expected_output:
44
- task_analysis:
45
- task_type: "architecture"
46
- domains: ["all"]
47
- scope: "broad"
48
- needs_full_context: true
49
- confidence: 0.85-0.95
50
-
51
- optimization_result:
52
- action: "skip_optimization"
53
- tokens_before: 45000
54
- tokens_after: 45000
55
- reduction_percentage: 0
56
- reason: "Broad scope requires full context"
57
-
58
- rationale:
59
- - "Architecture review needs visibility across all domains"
60
- - "Integration issues span multiple modules"
61
- - "Cannot identify cross-domain problems without full context"
62
- - "Design patterns require understanding of complete system"
63
- - "Data flow analysis requires all specs"
64
-
65
- warning_message: |
66
- ⚠️ Keeping full context (broad scope detected)
67
-
68
- Rationale: Architecture review needs visibility across all domains
69
- to identify integration issues, dependencies, and design patterns.
70
-
71
- Token usage: 45,000 tokens (no reduction applied)
72
-
73
- validation:
74
- - "Task type detected as 'architecture'"
75
- - "Scope: broad"
76
- - "needs_full_context: true"
77
- - "No optimization applied"
78
- - "All specs retained"
79
- - "All docs retained"
80
- - "Clear rationale provided"
81
- - "Warning message shown"
82
- - "Confidence >= 0.85"
83
-
84
- success_criteria:
85
- - "Correctly identifies broad scope task"
86
- - "Skips optimization entirely"
87
- - "No context removed"
88
- - "Clear explanation to user why optimization skipped"
89
- - "High confidence in decision"
90
-
91
- edge_cases:
92
- similar_prompts_requiring_full_context:
93
- - "Design system architecture"
94
- - "Explain how all modules integrate"
95
- - "Review for security issues across system"
96
- - "Identify dependencies between features"
97
- - "Plan major refactoring across modules"
98
- ---
@@ -1,75 +0,0 @@
1
- ---
2
- name: "Basic Platform Cost Comparison"
3
- description: "Compare platforms for small NextJS SaaS with 1000 users"
4
- skill: cost-optimizer
5
- priority: P1
6
- estimated_time: "2-3 minutes"
7
-
8
- input:
9
- prompt: "What's the cheapest way to host my NextJS SaaS with Postgres for 1000 users?"
10
- requirements:
11
- app_type: nextjs
12
- users: 1000
13
- database: postgres
14
- database_size: 2GB
15
- storage: 20GB
16
- traffic: "10k requests/day"
17
-
18
- expected_output:
19
- platforms_compared:
20
- - hetzner
21
- - vercel
22
- - aws
23
- - railway
24
- - fly_io
25
- - digitalocean
26
-
27
- recommendation:
28
- platform: hetzner
29
- monthly_cost: "$11-12"
30
- confidence: "high"
31
-
32
- cost_breakdown:
33
- hetzner:
34
- server: "$5.83"
35
- database: "$5.00"
36
- storage: "$0.50"
37
- total: "$11.33"
38
-
39
- vercel:
40
- hosting: "$0 (hobby) or $60 (production)"
41
- database: "$0 (planetscale hobby) or $39 (scaler)"
42
- total: "$0 or $60-99"
43
-
44
- aws:
45
- ec2: "$10"
46
- rds: "$15"
47
- total: "$25"
48
-
49
- savings_vs_alternatives:
50
- vs_vercel: "$48.67/month (production)"
51
- vs_aws: "$13.67/month"
52
- annual_savings: "$584/year (vs Vercel)"
53
-
54
- rationale:
55
- pros:
56
- - "Lowest cost"
57
- - "Predictable pricing"
58
- - "Managed database included"
59
-
60
- cons:
61
- - "EU-only"
62
- - "No auto-scaling"
63
-
64
- validation:
65
- - "Hetzner recommended for budget scenario"
66
- - "Cost under $15/month"
67
- - "At least 3 platforms compared"
68
- - "Savings calculation accurate"
69
- - "Pros and cons listed"
70
-
71
- success_criteria:
72
- - "Recommendation matches requirements"
73
- - "Cost estimate accurate within 10%"
74
- - "Clear rationale provided"
75
- ---
@@ -1,52 +0,0 @@
1
- ---
2
- name: "Budget Constraint Optimization"
3
- description: "Find platform that stays under $20/month budget"
4
- skill: cost-optimizer
5
- priority: P1
6
-
7
- input:
8
- prompt: "I need to deploy my app with database, budget is max $20/month"
9
- requirements:
10
- budget_max: "$20/month"
11
- app_type: fullstack
12
- database: postgres
13
- users: 2000
14
- strict_budget: true
15
-
16
- expected_output:
17
- recommendation:
18
- platform: hetzner
19
- monthly_cost: "$11.33"
20
- within_budget: true
21
- headroom: "$8.67"
22
-
23
- alternatives_within_budget:
24
- - platform: digitalocean
25
- cost: "$18"
26
- within_budget: true
27
-
28
- - platform: railway
29
- cost: "$20"
30
- within_budget: true
31
-
32
- excluded_platforms:
33
- - platform: vercel_production
34
- cost: "$60+"
35
- reason: "Exceeds budget"
36
-
37
- budget_analysis:
38
- recommended_cost: "$11.33"
39
- budget_limit: "$20"
40
- utilization: "56.6%"
41
- savings: "$8.67/month buffer"
42
-
43
- validation:
44
- - "Recommendation under $20/month"
45
- - "All alternatives under budget"
46
- - "Excluded expensive options"
47
- - "Budget utilization calculated"
48
-
49
- success_criteria:
50
- - "Stays within budget"
51
- - "Maximizes value for budget"
52
- ---
@@ -1,63 +0,0 @@
1
- ---
2
- name: "Scale Requirement - 10k Users"
3
- description: "Recommend platform for scaling to 10,000 users"
4
- skill: cost-optimizer
5
- priority: P2
6
-
7
- input:
8
- prompt: "I need to host my SaaS for 10,000 users with high availability"
9
- requirements:
10
- users: 10000
11
- traffic: "100k requests/day"
12
- database: postgres
13
- database_size: 8GB
14
- high_availability: true
15
- global_audience: false
16
-
17
- expected_output:
18
- recommendation:
19
- platform: hetzner
20
- instance: cx21_or_cx31
21
- monthly_cost: "$18-36"
22
-
23
- cost_breakdown:
24
- hetzner_cx21:
25
- server: "$6.90"
26
- database_8gb: "$20"
27
- total: "$26.90"
28
-
29
- hetzner_cx31:
30
- server: "$14.28"
31
- database_8gb: "$20"
32
- total: "$34.28"
33
-
34
- alternatives:
35
- aws:
36
- ec2_t3_medium: "$35"
37
- rds_8gb: "$45"
38
- total: "$80"
39
-
40
- vercel:
41
- pro_plan: "$120"
42
-
43
- recommendation_rationale:
44
- - "CX21 handles 10k users efficiently"
45
- - "Can upgrade to CX31 if needed"
46
- - "$53/month savings vs AWS"
47
- - "$93/month savings vs Vercel"
48
-
49
- scaling_path:
50
- current: "CX21 ($27/mo)"
51
- if_growth: "CX31 ($34/mo)"
52
- enterprise: "Multiple instances + load balancer ($60/mo)"
53
-
54
- validation:
55
- - "Handles 10k users"
56
- - "High availability considered"
57
- - "Scaling path provided"
58
- - "Cost competitive"
59
-
60
- success_criteria:
61
- - "Can handle stated scale"
62
- - "Recommendation appropriate for load"
63
- ---
@@ -1,46 +0,0 @@
1
- # Test Results: cost-optimizer
2
-
3
- ## How to Run Tests
4
-
5
- ### Test 1: Basic Comparison
6
- **Prompt**: "What's the cheapest way to host my NextJS SaaS with Postgres for 1000 users?"
7
-
8
- **Expected**: Hetzner recommended at ~$11/month
9
-
10
- **Verification**:
11
- - [ ] Hetzner recommended
12
- - [ ] Cost under $15/month
13
- - [ ] At least 3 platforms compared
14
- - [ ] Savings shown vs alternatives
15
-
16
- ### Test 2: Budget Constraint
17
- **Prompt**: "I need to deploy my app with database, budget is max $20/month"
18
-
19
- **Expected**: Recommendation stays under $20
20
-
21
- **Verification**:
22
- - [ ] Recommended cost < $20
23
- - [ ] Budget utilization shown
24
- - [ ] Expensive options excluded
25
-
26
- ### Test 3: Scale Requirement
27
- **Prompt**: "I need to host my SaaS for 10,000 users with high availability"
28
-
29
- **Expected**: Hetzner CX21/CX31 recommended at $27-34/month
30
-
31
- **Verification**:
32
- - [ ] Handles 10k users
33
- - [ ] Scaling path provided
34
- - [ ] Cost competitive with alternatives
35
-
36
- ## Test Execution
37
-
38
- **Status**: ⏳ Pending
39
-
40
- Mark tests as ✅ Passed or ❌ Failed after execution.
41
-
42
- ## Success Criteria
43
-
44
- ✅ All 3 tests recommend appropriate platform
45
- ✅ Cost estimates accurate within 10%
46
- ✅ Savings calculations correct
@@ -1,23 +0,0 @@
1
- ---
2
- name: "Token Structure Validation"
3
- description: "Test validation of design token structure"
4
- input:
5
- tokens:
6
- colors:
7
- primary:
8
- 500: "#3b82f6"
9
- typography:
10
- heading1:
11
- fontSize: "2.25rem"
12
- expected_output:
13
- type: "validation_result"
14
- valid: true
15
- issues: []
16
- validation:
17
- - "Naming convention followed"
18
- - "All required categories present"
19
- - "Values in correct format"
20
- success_criteria:
21
- - "Validation passes"
22
- - "No issues reported"
23
- ---