specforge-mcp 0.11.0 → 0.12.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 (431) hide show
  1. package/dist/engine/agent-generator.test.d.ts +2 -0
  2. package/dist/engine/agent-generator.test.d.ts.map +1 -0
  3. package/dist/engine/agent-generator.test.js +556 -0
  4. package/dist/engine/agent-generator.test.js.map +1 -0
  5. package/dist/engine/analyzer.test.d.ts +2 -0
  6. package/dist/engine/analyzer.test.d.ts.map +1 -0
  7. package/dist/engine/analyzer.test.js +1461 -0
  8. package/dist/engine/analyzer.test.js.map +1 -0
  9. package/dist/engine/auditor.test.d.ts +2 -0
  10. package/dist/engine/auditor.test.d.ts.map +1 -0
  11. package/dist/engine/auditor.test.js +2075 -0
  12. package/dist/engine/auditor.test.js.map +1 -0
  13. package/dist/engine/context-budget/checkpoint.d.ts +8 -0
  14. package/dist/engine/context-budget/checkpoint.d.ts.map +1 -0
  15. package/dist/engine/context-budget/checkpoint.js +79 -0
  16. package/dist/engine/context-budget/checkpoint.js.map +1 -0
  17. package/dist/engine/context-budget/compressor.d.ts +20 -0
  18. package/dist/engine/context-budget/compressor.d.ts.map +1 -0
  19. package/dist/engine/context-budget/compressor.js +122 -0
  20. package/dist/engine/context-budget/compressor.js.map +1 -0
  21. package/dist/engine/context-budget/index.d.ts +5 -0
  22. package/dist/engine/context-budget/index.d.ts.map +1 -0
  23. package/dist/engine/context-budget/index.js +6 -0
  24. package/dist/engine/context-budget/index.js.map +1 -0
  25. package/dist/engine/context-budget/optimizer.d.ts +8 -0
  26. package/dist/engine/context-budget/optimizer.d.ts.map +1 -0
  27. package/dist/engine/context-budget/optimizer.js +87 -0
  28. package/dist/engine/context-budget/optimizer.js.map +1 -0
  29. package/dist/engine/context-budget/tracker.d.ts +19 -0
  30. package/dist/engine/context-budget/tracker.d.ts.map +1 -0
  31. package/dist/engine/context-budget/tracker.js +113 -0
  32. package/dist/engine/context-budget/tracker.js.map +1 -0
  33. package/dist/engine/doc-generator.test.d.ts +2 -0
  34. package/dist/engine/doc-generator.test.d.ts.map +1 -0
  35. package/dist/engine/doc-generator.test.js +961 -0
  36. package/dist/engine/doc-generator.test.js.map +1 -0
  37. package/dist/engine/estimator.test.d.ts +2 -0
  38. package/dist/engine/estimator.test.d.ts.map +1 -0
  39. package/dist/engine/estimator.test.js +334 -0
  40. package/dist/engine/estimator.test.js.map +1 -0
  41. package/dist/engine/skill-generator.test.d.ts +2 -0
  42. package/dist/engine/skill-generator.test.d.ts.map +1 -0
  43. package/dist/engine/skill-generator.test.js +742 -0
  44. package/dist/engine/skill-generator.test.js.map +1 -0
  45. package/dist/engine/test-spec-generator/criterion-parser.d.ts +6 -0
  46. package/dist/engine/test-spec-generator/criterion-parser.d.ts.map +1 -0
  47. package/dist/engine/test-spec-generator/criterion-parser.js +96 -0
  48. package/dist/engine/test-spec-generator/criterion-parser.js.map +1 -0
  49. package/dist/engine/{test-spec-generator.d.ts → test-spec-generator/index.d.ts} +5 -2
  50. package/dist/engine/test-spec-generator/index.d.ts.map +1 -0
  51. package/dist/engine/test-spec-generator/index.js +29 -0
  52. package/dist/engine/test-spec-generator/index.js.map +1 -0
  53. package/dist/engine/test-spec-generator/labels.d.ts +5 -0
  54. package/dist/engine/test-spec-generator/labels.d.ts.map +1 -0
  55. package/dist/engine/test-spec-generator/labels.js +62 -0
  56. package/dist/engine/test-spec-generator/labels.js.map +1 -0
  57. package/dist/engine/test-spec-generator/scenario-builders.d.ts +3 -0
  58. package/dist/engine/test-spec-generator/scenario-builders.d.ts.map +1 -0
  59. package/dist/engine/test-spec-generator/scenario-builders.js +184 -0
  60. package/dist/engine/test-spec-generator/scenario-builders.js.map +1 -0
  61. package/dist/engine/validator.test.d.ts +2 -0
  62. package/dist/engine/validator.test.d.ts.map +1 -0
  63. package/dist/engine/validator.test.js +2371 -0
  64. package/dist/engine/validator.test.js.map +1 -0
  65. package/dist/engine/web-fetcher.test.d.ts +2 -0
  66. package/dist/engine/web-fetcher.test.d.ts.map +1 -0
  67. package/dist/engine/web-fetcher.test.js +360 -0
  68. package/dist/engine/web-fetcher.test.js.map +1 -0
  69. package/dist/i18n/index.test.d.ts +2 -0
  70. package/dist/i18n/index.test.d.ts.map +1 -0
  71. package/dist/i18n/index.test.js +375 -0
  72. package/dist/i18n/index.test.js.map +1 -0
  73. package/dist/index.js +0 -0
  74. package/dist/index.test.d.ts +2 -0
  75. package/dist/index.test.d.ts.map +1 -0
  76. package/dist/index.test.js +124 -0
  77. package/dist/index.test.js.map +1 -0
  78. package/dist/resources/patterns.test.d.ts +2 -0
  79. package/dist/resources/patterns.test.d.ts.map +1 -0
  80. package/dist/resources/patterns.test.js +142 -0
  81. package/dist/resources/patterns.test.js.map +1 -0
  82. package/dist/resources/process.test.d.ts +2 -0
  83. package/dist/resources/process.test.d.ts.map +1 -0
  84. package/dist/resources/process.test.js +48 -0
  85. package/dist/resources/process.test.js.map +1 -0
  86. package/dist/resources/registry.test.d.ts +2 -0
  87. package/dist/resources/registry.test.d.ts.map +1 -0
  88. package/dist/resources/registry.test.js +138 -0
  89. package/dist/resources/registry.test.js.map +1 -0
  90. package/dist/resources/specs.test.d.ts +2 -0
  91. package/dist/resources/specs.test.d.ts.map +1 -0
  92. package/dist/resources/specs.test.js +130 -0
  93. package/dist/resources/specs.test.js.map +1 -0
  94. package/dist/resources/templates.test.d.ts +2 -0
  95. package/dist/resources/templates.test.d.ts.map +1 -0
  96. package/dist/resources/templates.test.js +119 -0
  97. package/dist/resources/templates.test.js.map +1 -0
  98. package/dist/smoke.test.d.ts +2 -0
  99. package/dist/smoke.test.d.ts.map +1 -0
  100. package/dist/smoke.test.js +229 -0
  101. package/dist/smoke.test.js.map +1 -0
  102. package/dist/storage/base-store.test.d.ts +2 -0
  103. package/dist/storage/base-store.test.d.ts.map +1 -0
  104. package/dist/storage/base-store.test.js +180 -0
  105. package/dist/storage/base-store.test.js.map +1 -0
  106. package/dist/storage/checkpoint-store.d.ts +12 -0
  107. package/dist/storage/checkpoint-store.d.ts.map +1 -0
  108. package/dist/storage/checkpoint-store.js +85 -0
  109. package/dist/storage/checkpoint-store.js.map +1 -0
  110. package/dist/storage/global-store.test.d.ts +2 -0
  111. package/dist/storage/global-store.test.d.ts.map +1 -0
  112. package/dist/storage/global-store.test.js +327 -0
  113. package/dist/storage/global-store.test.js.map +1 -0
  114. package/dist/storage/index.test.d.ts +2 -0
  115. package/dist/storage/index.test.d.ts.map +1 -0
  116. package/dist/storage/index.test.js +56 -0
  117. package/dist/storage/index.test.js.map +1 -0
  118. package/dist/storage/knowledge-store.test.d.ts +2 -0
  119. package/dist/storage/knowledge-store.test.d.ts.map +1 -0
  120. package/dist/storage/knowledge-store.test.js +368 -0
  121. package/dist/storage/knowledge-store.test.js.map +1 -0
  122. package/dist/storage/metrics-store.test.d.ts +2 -0
  123. package/dist/storage/metrics-store.test.d.ts.map +1 -0
  124. package/dist/storage/metrics-store.test.js +212 -0
  125. package/dist/storage/metrics-store.test.js.map +1 -0
  126. package/dist/storage/pattern-store.test.d.ts +2 -0
  127. package/dist/storage/pattern-store.test.d.ts.map +1 -0
  128. package/dist/storage/pattern-store.test.js +224 -0
  129. package/dist/storage/pattern-store.test.js.map +1 -0
  130. package/dist/storage/spec-store.test.d.ts +2 -0
  131. package/dist/storage/spec-store.test.d.ts.map +1 -0
  132. package/dist/storage/spec-store.test.js +227 -0
  133. package/dist/storage/spec-store.test.js.map +1 -0
  134. package/dist/tools/audit.test.d.ts +2 -0
  135. package/dist/tools/audit.test.d.ts.map +1 -0
  136. package/dist/tools/audit.test.js +169 -0
  137. package/dist/tools/audit.test.js.map +1 -0
  138. package/dist/tools/challenge-spec.test.d.ts +2 -0
  139. package/dist/tools/challenge-spec.test.d.ts.map +1 -0
  140. package/dist/tools/challenge-spec.test.js +782 -0
  141. package/dist/tools/challenge-spec.test.js.map +1 -0
  142. package/dist/tools/check-versions.test.d.ts +2 -0
  143. package/dist/tools/check-versions.test.d.ts.map +1 -0
  144. package/dist/tools/check-versions.test.js +214 -0
  145. package/dist/tools/check-versions.test.js.map +1 -0
  146. package/dist/tools/clarify-requirements.test.d.ts +2 -0
  147. package/dist/tools/clarify-requirements.test.d.ts.map +1 -0
  148. package/dist/tools/clarify-requirements.test.js +161 -0
  149. package/dist/tools/clarify-requirements.test.js.map +1 -0
  150. package/dist/tools/consult-docs.test.d.ts +2 -0
  151. package/dist/tools/consult-docs.test.d.ts.map +1 -0
  152. package/dist/tools/consult-docs.test.js +140 -0
  153. package/dist/tools/consult-docs.test.js.map +1 -0
  154. package/dist/tools/context-budget.d.ts +3 -0
  155. package/dist/tools/context-budget.d.ts.map +1 -0
  156. package/dist/tools/context-budget.js +131 -0
  157. package/dist/tools/context-budget.js.map +1 -0
  158. package/dist/tools/create-spec.test.d.ts +2 -0
  159. package/dist/tools/create-spec.test.d.ts.map +1 -0
  160. package/dist/tools/create-spec.test.js +233 -0
  161. package/dist/tools/create-spec.test.js.map +1 -0
  162. package/dist/tools/define-ui-contract.test.d.ts +2 -0
  163. package/dist/tools/define-ui-contract.test.d.ts.map +1 -0
  164. package/dist/tools/define-ui-contract.test.js +479 -0
  165. package/dist/tools/define-ui-contract.test.js.map +1 -0
  166. package/dist/tools/design-schema.test.d.ts +2 -0
  167. package/dist/tools/design-schema.test.d.ts.map +1 -0
  168. package/dist/tools/design-schema.test.js +301 -0
  169. package/dist/tools/design-schema.test.js.map +1 -0
  170. package/dist/tools/detect-agent.test.d.ts +2 -0
  171. package/dist/tools/detect-agent.test.d.ts.map +1 -0
  172. package/dist/tools/detect-agent.test.js +133 -0
  173. package/dist/tools/detect-agent.test.js.map +1 -0
  174. package/dist/tools/detect-drift.test.d.ts +2 -0
  175. package/dist/tools/detect-drift.test.d.ts.map +1 -0
  176. package/dist/tools/detect-drift.test.js +312 -0
  177. package/dist/tools/detect-drift.test.js.map +1 -0
  178. package/dist/tools/discover-mcps.test.d.ts +2 -0
  179. package/dist/tools/discover-mcps.test.d.ts.map +1 -0
  180. package/dist/tools/discover-mcps.test.js +345 -0
  181. package/dist/tools/discover-mcps.test.js.map +1 -0
  182. package/dist/tools/estimate.test.d.ts +2 -0
  183. package/dist/tools/estimate.test.d.ts.map +1 -0
  184. package/dist/tools/estimate.test.js +137 -0
  185. package/dist/tools/estimate.test.js.map +1 -0
  186. package/dist/tools/generate-adr.test.d.ts +2 -0
  187. package/dist/tools/generate-adr.test.d.ts.map +1 -0
  188. package/dist/tools/generate-adr.test.js +206 -0
  189. package/dist/tools/generate-adr.test.js.map +1 -0
  190. package/dist/tools/generate-checklist.test.d.ts +2 -0
  191. package/dist/tools/generate-checklist.test.d.ts.map +1 -0
  192. package/dist/tools/generate-checklist.test.js +201 -0
  193. package/dist/tools/generate-checklist.test.js.map +1 -0
  194. package/dist/tools/generate-docs.test.d.ts +2 -0
  195. package/dist/tools/generate-docs.test.d.ts.map +1 -0
  196. package/dist/tools/generate-docs.test.js +183 -0
  197. package/dist/tools/generate-docs.test.js.map +1 -0
  198. package/dist/tools/generate-execution-plan.test.d.ts +2 -0
  199. package/dist/tools/generate-execution-plan.test.d.ts.map +1 -0
  200. package/dist/tools/generate-execution-plan.test.js +643 -0
  201. package/dist/tools/generate-execution-plan.test.js.map +1 -0
  202. package/dist/tools/generate-rules.test.d.ts +2 -0
  203. package/dist/tools/generate-rules.test.d.ts.map +1 -0
  204. package/dist/tools/generate-rules.test.js +148 -0
  205. package/dist/tools/generate-rules.test.js.map +1 -0
  206. package/dist/tools/generate-skill.test.d.ts +2 -0
  207. package/dist/tools/generate-skill.test.d.ts.map +1 -0
  208. package/dist/tools/generate-skill.test.js +138 -0
  209. package/dist/tools/generate-skill.test.js.map +1 -0
  210. package/dist/tools/generate-sub-agent.test.d.ts +2 -0
  211. package/dist/tools/generate-sub-agent.test.d.ts.map +1 -0
  212. package/dist/tools/generate-sub-agent.test.js +162 -0
  213. package/dist/tools/generate-sub-agent.test.js.map +1 -0
  214. package/dist/tools/generate-tests/dispatchers/ai-ml-dispatcher.d.ts +3 -0
  215. package/dist/tools/generate-tests/dispatchers/ai-ml-dispatcher.d.ts.map +1 -0
  216. package/dist/tools/generate-tests/dispatchers/ai-ml-dispatcher.js +33 -0
  217. package/dist/tools/generate-tests/dispatchers/ai-ml-dispatcher.js.map +1 -0
  218. package/dist/tools/generate-tests/dispatchers/database-security-dispatcher.d.ts +5 -0
  219. package/dist/tools/generate-tests/dispatchers/database-security-dispatcher.d.ts.map +1 -0
  220. package/dist/tools/generate-tests/dispatchers/database-security-dispatcher.js +25 -0
  221. package/dist/tools/generate-tests/dispatchers/database-security-dispatcher.js.map +1 -0
  222. package/dist/tools/generate-tests/dispatchers/distributed-dispatcher.d.ts +3 -0
  223. package/dist/tools/generate-tests/dispatchers/distributed-dispatcher.d.ts.map +1 -0
  224. package/dist/tools/generate-tests/dispatchers/distributed-dispatcher.js +29 -0
  225. package/dist/tools/generate-tests/dispatchers/distributed-dispatcher.js.map +1 -0
  226. package/dist/tools/generate-tests/dispatchers/frontend-dispatcher.d.ts +3 -0
  227. package/dist/tools/generate-tests/dispatchers/frontend-dispatcher.d.ts.map +1 -0
  228. package/dist/tools/generate-tests/dispatchers/frontend-dispatcher.js +34 -0
  229. package/dist/tools/generate-tests/dispatchers/frontend-dispatcher.js.map +1 -0
  230. package/dist/tools/generate-tests/dispatchers/infra-dispatcher.d.ts +3 -0
  231. package/dist/tools/generate-tests/dispatchers/infra-dispatcher.d.ts.map +1 -0
  232. package/dist/tools/generate-tests/dispatchers/infra-dispatcher.js +37 -0
  233. package/dist/tools/generate-tests/dispatchers/infra-dispatcher.js.map +1 -0
  234. package/dist/tools/generate-tests/dispatchers/protocols-dispatcher.d.ts +3 -0
  235. package/dist/tools/generate-tests/dispatchers/protocols-dispatcher.d.ts.map +1 -0
  236. package/dist/tools/generate-tests/dispatchers/protocols-dispatcher.js +27 -0
  237. package/dist/tools/generate-tests/dispatchers/protocols-dispatcher.js.map +1 -0
  238. package/dist/tools/generate-tests/generators/database/detectors.d.ts +6 -0
  239. package/dist/tools/generate-tests/generators/database/detectors.d.ts.map +1 -0
  240. package/dist/tools/generate-tests/generators/database/detectors.js +36 -0
  241. package/dist/tools/generate-tests/generators/database/detectors.js.map +1 -0
  242. package/dist/tools/generate-tests/generators/database/index.d.ts +8 -0
  243. package/dist/tools/generate-tests/generators/database/index.d.ts.map +1 -0
  244. package/dist/tools/generate-tests/generators/database/index.js +29 -0
  245. package/dist/tools/generate-tests/generators/database/index.js.map +1 -0
  246. package/dist/tools/generate-tests/generators/database/python-scaffold.d.ts +2 -0
  247. package/dist/tools/generate-tests/generators/database/python-scaffold.d.ts.map +1 -0
  248. package/dist/tools/generate-tests/generators/database/python-scaffold.js +104 -0
  249. package/dist/tools/generate-tests/generators/database/python-scaffold.js.map +1 -0
  250. package/dist/tools/generate-tests/generators/database/test-defs.d.ts +3 -0
  251. package/dist/tools/generate-tests/generators/database/test-defs.d.ts.map +1 -0
  252. package/dist/tools/generate-tests/generators/database/test-defs.js +57 -0
  253. package/dist/tools/generate-tests/generators/database/test-defs.js.map +1 -0
  254. package/dist/tools/generate-tests/generators/database/ts-scaffold.d.ts +2 -0
  255. package/dist/tools/generate-tests/generators/database/ts-scaffold.d.ts.map +1 -0
  256. package/dist/tools/generate-tests/generators/database/ts-scaffold.js +118 -0
  257. package/dist/tools/generate-tests/generators/database/ts-scaffold.js.map +1 -0
  258. package/dist/tools/generate-tests/generators/microservices/detectors.d.ts +5 -0
  259. package/dist/tools/generate-tests/generators/microservices/detectors.d.ts.map +1 -0
  260. package/dist/tools/generate-tests/generators/microservices/detectors.js +47 -0
  261. package/dist/tools/generate-tests/generators/microservices/detectors.js.map +1 -0
  262. package/dist/tools/generate-tests/generators/microservices/index.d.ts +8 -0
  263. package/dist/tools/generate-tests/generators/microservices/index.d.ts.map +1 -0
  264. package/dist/tools/generate-tests/generators/microservices/index.js +26 -0
  265. package/dist/tools/generate-tests/generators/microservices/index.js.map +1 -0
  266. package/dist/tools/generate-tests/generators/microservices/python-scaffold.d.ts +2 -0
  267. package/dist/tools/generate-tests/generators/microservices/python-scaffold.d.ts.map +1 -0
  268. package/dist/tools/generate-tests/generators/microservices/python-scaffold.js +98 -0
  269. package/dist/tools/generate-tests/generators/microservices/python-scaffold.js.map +1 -0
  270. package/dist/tools/generate-tests/generators/microservices/test-defs.d.ts +3 -0
  271. package/dist/tools/generate-tests/generators/microservices/test-defs.d.ts.map +1 -0
  272. package/dist/tools/generate-tests/generators/microservices/test-defs.js +61 -0
  273. package/dist/tools/generate-tests/generators/microservices/test-defs.js.map +1 -0
  274. package/dist/tools/generate-tests/generators/microservices/ts-scaffold.d.ts +2 -0
  275. package/dist/tools/generate-tests/generators/microservices/ts-scaffold.d.ts.map +1 -0
  276. package/dist/tools/generate-tests/generators/microservices/ts-scaffold.js +123 -0
  277. package/dist/tools/generate-tests/generators/microservices/ts-scaffold.js.map +1 -0
  278. package/dist/tools/generate-tests/generators/security/detectors.d.ts +8 -0
  279. package/dist/tools/generate-tests/generators/security/detectors.d.ts.map +1 -0
  280. package/dist/tools/generate-tests/generators/security/detectors.js +61 -0
  281. package/dist/tools/generate-tests/generators/security/detectors.js.map +1 -0
  282. package/dist/tools/generate-tests/generators/security/index.d.ts +8 -0
  283. package/dist/tools/generate-tests/generators/security/index.d.ts.map +1 -0
  284. package/dist/tools/generate-tests/generators/security/index.js +28 -0
  285. package/dist/tools/generate-tests/generators/security/index.js.map +1 -0
  286. package/dist/tools/generate-tests/generators/security/python-scaffold.d.ts +2 -0
  287. package/dist/tools/generate-tests/generators/security/python-scaffold.d.ts.map +1 -0
  288. package/dist/tools/generate-tests/generators/security/python-scaffold.js +89 -0
  289. package/dist/tools/generate-tests/generators/security/python-scaffold.js.map +1 -0
  290. package/dist/tools/generate-tests/generators/security/test-defs.d.ts +3 -0
  291. package/dist/tools/generate-tests/generators/security/test-defs.d.ts.map +1 -0
  292. package/dist/tools/generate-tests/generators/security/test-defs.js +48 -0
  293. package/dist/tools/generate-tests/generators/security/test-defs.js.map +1 -0
  294. package/dist/tools/generate-tests/generators/security/ts-scaffold.d.ts +2 -0
  295. package/dist/tools/generate-tests/generators/security/ts-scaffold.d.ts.map +1 -0
  296. package/dist/tools/generate-tests/generators/security/ts-scaffold.js +107 -0
  297. package/dist/tools/generate-tests/generators/security/ts-scaffold.js.map +1 -0
  298. package/dist/tools/generate-tests/spec-dispatcher.d.ts.map +1 -1
  299. package/dist/tools/generate-tests/spec-dispatcher.js +14 -166
  300. package/dist/tools/generate-tests/spec-dispatcher.js.map +1 -1
  301. package/dist/tools/generate-tests.test.d.ts +2 -0
  302. package/dist/tools/generate-tests.test.d.ts.map +1 -0
  303. package/dist/tools/generate-tests.test.js +222 -0
  304. package/dist/tools/generate-tests.test.js.map +1 -0
  305. package/dist/tools/init-constitution.test.d.ts +2 -0
  306. package/dist/tools/init-constitution.test.d.ts.map +1 -0
  307. package/dist/tools/init-constitution.test.js +398 -0
  308. package/dist/tools/init-constitution.test.js.map +1 -0
  309. package/dist/tools/init-project.test.d.ts +2 -0
  310. package/dist/tools/init-project.test.d.ts.map +1 -0
  311. package/dist/tools/init-project.test.js +158 -0
  312. package/dist/tools/init-project.test.js.map +1 -0
  313. package/dist/tools/integrate-pm.test.d.ts +2 -0
  314. package/dist/tools/integrate-pm.test.d.ts.map +1 -0
  315. package/dist/tools/integrate-pm.test.js +558 -0
  316. package/dist/tools/integrate-pm.test.js.map +1 -0
  317. package/dist/tools/learn.test.d.ts +2 -0
  318. package/dist/tools/learn.test.d.ts.map +1 -0
  319. package/dist/tools/learn.test.js +123 -0
  320. package/dist/tools/learn.test.js.map +1 -0
  321. package/dist/tools/list-specs.test.d.ts +2 -0
  322. package/dist/tools/list-specs.test.d.ts.map +1 -0
  323. package/dist/tools/list-specs.test.js +110 -0
  324. package/dist/tools/list-specs.test.js.map +1 -0
  325. package/dist/tools/manage-context.test.d.ts +2 -0
  326. package/dist/tools/manage-context.test.d.ts.map +1 -0
  327. package/dist/tools/manage-context.test.js +359 -0
  328. package/dist/tools/manage-context.test.js.map +1 -0
  329. package/dist/tools/manage-git.test.d.ts +2 -0
  330. package/dist/tools/manage-git.test.d.ts.map +1 -0
  331. package/dist/tools/manage-git.test.js +882 -0
  332. package/dist/tools/manage-git.test.js.map +1 -0
  333. package/dist/tools/orchestrate.test.d.ts +2 -0
  334. package/dist/tools/orchestrate.test.d.ts.map +1 -0
  335. package/dist/tools/orchestrate.test.js +1117 -0
  336. package/dist/tools/orchestrate.test.js.map +1 -0
  337. package/dist/tools/reconcile-spec.test.d.ts +2 -0
  338. package/dist/tools/reconcile-spec.test.d.ts.map +1 -0
  339. package/dist/tools/reconcile-spec.test.js +259 -0
  340. package/dist/tools/reconcile-spec.test.js.map +1 -0
  341. package/dist/tools/register-platform-tools/lifecycle-infra-tools.d.ts.map +1 -1
  342. package/dist/tools/register-platform-tools/lifecycle-infra-tools.js +37 -1
  343. package/dist/tools/register-platform-tools/lifecycle-infra-tools.js.map +1 -1
  344. package/dist/tools/register-platform-tools.test.d.ts +2 -0
  345. package/dist/tools/register-platform-tools.test.d.ts.map +1 -0
  346. package/dist/tools/register-platform-tools.test.js +404 -0
  347. package/dist/tools/register-platform-tools.test.js.map +1 -0
  348. package/dist/tools/register-spec-tools/analysis-tools.d.ts.map +1 -1
  349. package/dist/tools/register-spec-tools/analysis-tools.js +1 -0
  350. package/dist/tools/register-spec-tools/analysis-tools.js.map +1 -1
  351. package/dist/tools/register-spec-tools.test.d.ts +2 -0
  352. package/dist/tools/register-spec-tools.test.d.ts.map +1 -0
  353. package/dist/tools/register-spec-tools.test.js +407 -0
  354. package/dist/tools/register-spec-tools.test.js.map +1 -0
  355. package/dist/tools/reverse-engineer.test.d.ts +2 -0
  356. package/dist/tools/reverse-engineer.test.d.ts.map +1 -0
  357. package/dist/tools/reverse-engineer.test.js +206 -0
  358. package/dist/tools/reverse-engineer.test.js.map +1 -0
  359. package/dist/tools/schemas/index.d.ts +1 -1
  360. package/dist/tools/schemas/index.d.ts.map +1 -1
  361. package/dist/tools/schemas/index.js +1 -1
  362. package/dist/tools/schemas/index.js.map +1 -1
  363. package/dist/tools/schemas/infra.d.ts +8 -0
  364. package/dist/tools/schemas/infra.d.ts.map +1 -1
  365. package/dist/tools/schemas/infra.js +3 -0
  366. package/dist/tools/schemas/infra.js.map +1 -1
  367. package/dist/tools/schemas.d.ts +20 -0
  368. package/dist/tools/schemas.d.ts.map +1 -0
  369. package/dist/tools/schemas.js +133 -0
  370. package/dist/tools/schemas.js.map +1 -0
  371. package/dist/tools/schemas.test.d.ts +2 -0
  372. package/dist/tools/schemas.test.d.ts.map +1 -0
  373. package/dist/tools/schemas.test.js +245 -0
  374. package/dist/tools/schemas.test.js.map +1 -0
  375. package/dist/tools/set-locale.test.d.ts +2 -0
  376. package/dist/tools/set-locale.test.d.ts.map +1 -0
  377. package/dist/tools/set-locale.test.js +74 -0
  378. package/dist/tools/set-locale.test.js.map +1 -0
  379. package/dist/tools/suggest-mcps.test.d.ts +2 -0
  380. package/dist/tools/suggest-mcps.test.d.ts.map +1 -0
  381. package/dist/tools/suggest-mcps.test.js +198 -0
  382. package/dist/tools/suggest-mcps.test.js.map +1 -0
  383. package/dist/tools/suggest-stack.test.d.ts +2 -0
  384. package/dist/tools/suggest-stack.test.d.ts.map +1 -0
  385. package/dist/tools/suggest-stack.test.js +181 -0
  386. package/dist/tools/suggest-stack.test.js.map +1 -0
  387. package/dist/tools/suggest-tooling.test.d.ts +2 -0
  388. package/dist/tools/suggest-tooling.test.d.ts.map +1 -0
  389. package/dist/tools/suggest-tooling.test.js +213 -0
  390. package/dist/tools/suggest-tooling.test.js.map +1 -0
  391. package/dist/tools/summarize-spec.test.d.ts +2 -0
  392. package/dist/tools/summarize-spec.test.d.ts.map +1 -0
  393. package/dist/tools/summarize-spec.test.js +180 -0
  394. package/dist/tools/summarize-spec.test.js.map +1 -0
  395. package/dist/tools/update-status.test.d.ts +2 -0
  396. package/dist/tools/update-status.test.d.ts.map +1 -0
  397. package/dist/tools/update-status.test.js +142 -0
  398. package/dist/tools/update-status.test.js.map +1 -0
  399. package/dist/tools/validate.test.d.ts +2 -0
  400. package/dist/tools/validate.test.d.ts.map +1 -0
  401. package/dist/tools/validate.test.js +137 -0
  402. package/dist/tools/validate.test.js.map +1 -0
  403. package/dist/types/context-budget.d.ts +90 -0
  404. package/dist/types/context-budget.d.ts.map +1 -0
  405. package/dist/types/context-budget.js +3 -0
  406. package/dist/types/context-budget.js.map +1 -0
  407. package/dist/types/index.d.ts +1 -0
  408. package/dist/types/index.d.ts.map +1 -1
  409. package/dist/types/index.js +1 -0
  410. package/dist/types/index.js.map +1 -1
  411. package/dist/types/testing.d.ts +10 -0
  412. package/dist/types/testing.d.ts.map +1 -1
  413. package/package.json +1 -1
  414. package/src/i18n/messages/en.json +8 -2
  415. package/src/i18n/messages/es.json +8 -2
  416. package/src/i18n/messages/pt.json +6 -0
  417. package/dist/engine/test-spec-generator.d.ts.map +0 -1
  418. package/dist/engine/test-spec-generator.js +0 -348
  419. package/dist/engine/test-spec-generator.js.map +0 -1
  420. package/dist/tools/generate-tests/generators/database-test-generator.d.ts +0 -11
  421. package/dist/tools/generate-tests/generators/database-test-generator.d.ts.map +0 -1
  422. package/dist/tools/generate-tests/generators/database-test-generator.js +0 -329
  423. package/dist/tools/generate-tests/generators/database-test-generator.js.map +0 -1
  424. package/dist/tools/generate-tests/generators/microservices-test-generator.d.ts +0 -10
  425. package/dist/tools/generate-tests/generators/microservices-test-generator.d.ts.map +0 -1
  426. package/dist/tools/generate-tests/generators/microservices-test-generator.js +0 -341
  427. package/dist/tools/generate-tests/generators/microservices-test-generator.js.map +0 -1
  428. package/dist/tools/generate-tests/generators/security-test-generator.d.ts +0 -11
  429. package/dist/tools/generate-tests/generators/security-test-generator.d.ts.map +0 -1
  430. package/dist/tools/generate-tests/generators/security-test-generator.js +0 -318
  431. package/dist/tools/generate-tests/generators/security-test-generator.js.map +0 -1
@@ -0,0 +1,25 @@
1
+ // dispatchers/database-security-dispatcher.ts — Database, Security, API Contract dispatches
2
+ import { buildContractTestFile, buildMockServerFile, } from '../adapters/contract-testing-adapter.js';
3
+ import { isDatabaseTestProject, generateDatabaseTestDefs, generateDatabaseTestFiles, } from '../generators/database/index.js';
4
+ import { isSecurityTestProject, generateSecurityTestDefs, generateSecurityTestFiles, } from '../generators/security/index.js';
5
+ export function dispatchDatabaseSecurity(spec, knowledge, testDir, testFramework, slug, autoGenerate, testExt, _unitTests, integrationTests, testFiles) {
6
+ // SPEC-058b: Database & Data Layer
7
+ if (isDatabaseTestProject(knowledge)) {
8
+ const dbDefs = generateDatabaseTestDefs(spec.title, testDir, testExt, knowledge);
9
+ integrationTests.push(...dbDefs);
10
+ testFiles.push(...generateDatabaseTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate, knowledge));
11
+ }
12
+ // SPEC-058b: Security Testing
13
+ if (isSecurityTestProject(knowledge)) {
14
+ const secDefs = generateSecurityTestDefs(spec.title, testDir, testExt, knowledge);
15
+ integrationTests.push(...secDefs);
16
+ testFiles.push(...generateSecurityTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate, knowledge));
17
+ }
18
+ const isApiSpec = spec.target === 'backend' || spec.target === 'fullstack';
19
+ if (isApiSpec) {
20
+ testFiles.push(buildContractTestFile(spec.title, slug, knowledge, autoGenerate));
21
+ testFiles.push(buildMockServerFile(spec.title, slug, knowledge, autoGenerate));
22
+ }
23
+ return { isApiSpec };
24
+ }
25
+ //# sourceMappingURL=database-security-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-security-dispatcher.js","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/database-security-dispatcher.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAG5F,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AAEzC,MAAM,UAAU,wBAAwB,CACtC,IAAU,EACV,SAA2B,EAC3B,OAAe,EACf,aAAqB,EACrB,IAAY,EACZ,YAAqB,EACrB,OAAe,EACf,UAA4B,EAC5B,gBAAkC,EAClC,SAAqB;IAErB,mCAAmC;IACnC,IAAI,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACjF,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QACjC,SAAS,CAAC,IAAI,CACZ,GAAG,yBAAyB,CAC1B,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,EACZ,SAAS,CACV,CACF,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,IAAI,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAClF,gBAAgB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAClC,SAAS,CAAC,IAAI,CACZ,GAAG,yBAAyB,CAC1B,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,EACZ,SAAS,CACV,CACF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;IAC3E,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;QACjF,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Spec, ProjectKnowledge, TestDefinition, TestFile } from '../../../types/index.js';
2
+ export declare function dispatchDistributed(spec: Spec, knowledge: ProjectKnowledge, testDir: string, testFramework: string, slug: string, autoGenerate: boolean, testExt: string, unitTests: TestDefinition[], integrationTests: TestDefinition[], testFiles: TestFile[]): void;
3
+ //# sourceMappingURL=distributed-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distributed-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/distributed-dispatcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAoBhG,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,cAAc,EAAE,EAC3B,gBAAgB,EAAE,cAAc,EAAE,EAClC,SAAS,EAAE,QAAQ,EAAE,GACpB,IAAI,CAwDN"}
@@ -0,0 +1,29 @@
1
+ // dispatchers/distributed-dispatcher.ts — Event, Concurrency, Pact, Microservices dispatches
2
+ import { isEventProject, generateEventTestDefs, generateEventTestFiles, } from '../generators/event-test-generator.js';
3
+ import { isConcurrencyProject, isMicroserviceProject, generateConcurrencyTestDefs, generateConcurrencyTestFiles, generatePactTestDefs, generatePactTestFiles, } from '../generators/concurrency-test-generator.js';
4
+ import { isMicroservicesTestProject, generateMicroservicesTestDefs, generateMicroservicesTestFiles, } from '../generators/microservices/index.js';
5
+ export function dispatchDistributed(spec, knowledge, testDir, testFramework, slug, autoGenerate, testExt, unitTests, integrationTests, testFiles) {
6
+ if (isEventProject(knowledge)) {
7
+ const eventDefs = generateEventTestDefs(spec.title, testDir, knowledge);
8
+ unitTests.push(...eventDefs.filter((d) => d.type === 'unit'));
9
+ integrationTests.push(...eventDefs.filter((d) => d.type === 'integration'));
10
+ testFiles.push(...generateEventTestFiles(spec, testDir, testFramework, knowledge.language, knowledge, autoGenerate));
11
+ }
12
+ if (isConcurrencyProject(knowledge)) {
13
+ const concurrencyDefs = generateConcurrencyTestDefs(spec.title, testDir, knowledge.language);
14
+ unitTests.push(...concurrencyDefs.filter((d) => d.type === 'unit'));
15
+ integrationTests.push(...concurrencyDefs.filter((d) => d.type === 'integration'));
16
+ testFiles.push(...generateConcurrencyTestFiles(spec, testDir, testFramework, knowledge.language, knowledge, autoGenerate));
17
+ }
18
+ if (isMicroserviceProject(knowledge)) {
19
+ integrationTests.push(...generatePactTestDefs(spec.title, testDir));
20
+ testFiles.push(...generatePactTestFiles(spec, testDir, testFramework, knowledge.language, autoGenerate));
21
+ }
22
+ // SPEC-058b: Microservices & Distributed Systems
23
+ if (isMicroservicesTestProject(knowledge)) {
24
+ const msDefs = generateMicroservicesTestDefs(spec.title, testDir, testExt, knowledge);
25
+ integrationTests.push(...msDefs);
26
+ testFiles.push(...generateMicroservicesTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate, knowledge));
27
+ }
28
+ }
29
+ //# sourceMappingURL=distributed-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distributed-dispatcher.js","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/distributed-dispatcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Spec, ProjectKnowledge, TestDefinition, TestFile } from '../../../types/index.js';
2
+ export declare function dispatchFrontend(spec: Spec, knowledge: ProjectKnowledge, testDir: string, testFramework: string, slug: string, autoGenerate: boolean, testExt: string, unitTests: TestDefinition[], integrationTests: TestDefinition[], testFiles: TestFile[]): void;
3
+ //# sourceMappingURL=frontend-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontend-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/frontend-dispatcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAgBhG,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,cAAc,EAAE,EAC3B,gBAAgB,EAAE,cAAc,EAAE,EAClC,SAAS,EAAE,QAAQ,EAAE,GACpB,IAAI,CAuCN"}
@@ -0,0 +1,34 @@
1
+ // dispatchers/frontend-dispatcher.ts — A11y, Game, Visual Regression dispatches
2
+ import { isGameProject, generateGameTestDefs, generateGameTestContent, } from '../generators/game-tests-generator.js';
3
+ import { generateA11yTestDefs, generateA11yTestContent, } from '../generators/a11y-tests-generator.js';
4
+ import { isVisualRegressionProject, generateVisualRegressionTestDefs, generateVisualRegressionTestFiles, } from '../generators/visual-regression-generator.js';
5
+ export function dispatchFrontend(spec, knowledge, testDir, testFramework, slug, autoGenerate, testExt, unitTests, integrationTests, testFiles) {
6
+ if (spec.target === 'frontend' || spec.target === 'fullstack') {
7
+ const a11yTests = generateA11yTestDefs(spec.title, testDir);
8
+ unitTests.push(...a11yTests);
9
+ testFiles.push({
10
+ path: `${testDir}/a11y/${slug}.a11y.test.${testExt}`,
11
+ framework: testFramework,
12
+ content: generateA11yTestContent(spec.title, testFramework, knowledge.language),
13
+ ready: autoGenerate,
14
+ });
15
+ }
16
+ if (isGameProject(knowledge)) {
17
+ const gameDefs = generateGameTestDefs(spec.title, testDir, knowledge);
18
+ unitTests.push(...gameDefs.filter((d) => d.type === 'unit'));
19
+ integrationTests.push(...gameDefs.filter((d) => d.type === 'integration'));
20
+ testFiles.push({
21
+ path: `${testDir}/unit/game-logic/${slug}.game.test.${testExt}`,
22
+ framework: testFramework,
23
+ content: generateGameTestContent(spec.title, knowledge.framework ?? 'phaser', testFramework),
24
+ ready: autoGenerate,
25
+ });
26
+ }
27
+ if (isVisualRegressionProject(knowledge)) {
28
+ const vrDefs = generateVisualRegressionTestDefs(slug, testDir, testExt);
29
+ unitTests.push(...vrDefs.filter((d) => d.type === 'unit'));
30
+ integrationTests.push(...vrDefs.filter((d) => d.type === 'integration'));
31
+ testFiles.push(...generateVisualRegressionTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate));
32
+ }
33
+ }
34
+ //# sourceMappingURL=frontend-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontend-dispatcher.js","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/frontend-dispatcher.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAGhF,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,iCAAiC,GAClC,MAAM,8CAA8C,CAAC;AAEtD,MAAM,UAAU,gBAAgB,CAC9B,IAAU,EACV,SAA2B,EAC3B,OAAe,EACf,aAAqB,EACrB,IAAY,EACZ,YAAqB,EACrB,OAAe,EACf,SAA2B,EAC3B,gBAAkC,EAClC,SAAqB;IAErB,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAC9D,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5D,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,GAAG,OAAO,SAAS,IAAI,cAAc,OAAO,EAAE;YACpD,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,QAAQ,CAAC;YAC/E,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACtE,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAC7D,gBAAgB,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC;QAC3E,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,GAAG,OAAO,oBAAoB,IAAI,cAAc,OAAO,EAAE;YAC/D,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,IAAI,QAAQ,EAAE,aAAa,CAAC;YAC5F,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,gCAAgC,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACxE,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAC3D,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC;QACzE,SAAS,CAAC,IAAI,CACZ,GAAG,iCAAiC,CAClC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,CACb,CACF,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Spec, ProjectKnowledge, TestDefinition, TestFile } from '../../../types/index.js';
2
+ export declare function dispatchInfra(spec: Spec, knowledge: ProjectKnowledge, testDir: string, _testFramework: string, _slug: string, autoGenerate: boolean, _testExt: string, unitTests: TestDefinition[], integrationTests: TestDefinition[], testFiles: TestFile[]): void;
3
+ //# sourceMappingURL=infra-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infra-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/infra-dispatcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AA2BhG,wBAAgB,aAAa,CAC3B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,cAAc,EAAE,EAC3B,gBAAgB,EAAE,cAAc,EAAE,EAClC,SAAS,EAAE,QAAQ,EAAE,GACpB,IAAI,CAuCN"}
@@ -0,0 +1,37 @@
1
+ // dispatchers/infra-dispatcher.ts — OTel, Supply Chain, LLM Security, Local-First, Advanced Testing
2
+ import { isOtelProject, generateOtelTestDefs, generateOtelTestFiles, } from '../generators/otel-test-generator.js';
3
+ import { isSupplyChainProject, generateSupplyChainTestDefs, generateSupplyChainTestFiles, } from '../generators/supply-chain-test-generator.js';
4
+ import { isLlmSecurityProject, generateLlmSecurityTestDefs, generateLlmSecurityTestFiles, } from '../generators/llm-security-test-generator.js';
5
+ import { isLocalFirstProject, generateLocalFirstTestDefs, generateLocalFirstTestFiles, } from '../generators/local-first-test-generator.js';
6
+ import { isAdvancedTestingProject, generateAdvancedTestingDefs, generateAdvancedTestingFiles, } from '../generators/advanced-testing-generator.js';
7
+ export function dispatchInfra(spec, knowledge, testDir, _testFramework, _slug, autoGenerate, _testExt, unitTests, integrationTests, testFiles) {
8
+ if (isOtelProject(knowledge)) {
9
+ const otelDefs = generateOtelTestDefs(spec.title, testDir);
10
+ unitTests.push(...otelDefs.filter((d) => d.type === 'unit'));
11
+ integrationTests.push(...otelDefs.filter((d) => d.type === 'integration'));
12
+ testFiles.push(...generateOtelTestFiles(spec, testDir, knowledge.language, autoGenerate));
13
+ }
14
+ if (isSupplyChainProject(knowledge)) {
15
+ integrationTests.push(...generateSupplyChainTestDefs(spec.title, testDir));
16
+ testFiles.push(...generateSupplyChainTestFiles(spec, testDir, knowledge.language, autoGenerate));
17
+ }
18
+ if (isLlmSecurityProject(knowledge)) {
19
+ const llmDefs = generateLlmSecurityTestDefs(spec.title, testDir);
20
+ unitTests.push(...llmDefs.filter((d) => d.type === 'unit'));
21
+ integrationTests.push(...llmDefs.filter((d) => d.type === 'integration'));
22
+ testFiles.push(...generateLlmSecurityTestFiles(spec, testDir, knowledge.language, autoGenerate));
23
+ }
24
+ if (isLocalFirstProject(knowledge)) {
25
+ const localFirstDefs = generateLocalFirstTestDefs(spec.title, testDir);
26
+ unitTests.push(...localFirstDefs.filter((d) => d.type === 'unit'));
27
+ integrationTests.push(...localFirstDefs.filter((d) => d.type === 'integration'));
28
+ testFiles.push(...generateLocalFirstTestFiles(spec, testDir, knowledge.language, autoGenerate));
29
+ }
30
+ if (isAdvancedTestingProject(spec, knowledge)) {
31
+ const advancedDefs = generateAdvancedTestingDefs(spec, testDir);
32
+ unitTests.push(...advancedDefs.filter((d) => d.type === 'unit'));
33
+ integrationTests.push(...advancedDefs.filter((d) => d.type === 'integration'));
34
+ testFiles.push(...generateAdvancedTestingFiles(spec, testDir, knowledge.language, knowledge, autoGenerate));
35
+ }
36
+ }
37
+ //# sourceMappingURL=infra-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infra-dispatcher.js","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/infra-dispatcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Spec, ProjectKnowledge, TestDefinition, TestFile } from '../../../types/index.js';
2
+ export declare function dispatchProtocols(spec: Spec, knowledge: ProjectKnowledge, testDir: string, testFramework: string, slug: string, autoGenerate: boolean, testExt: string, _unitTests: TestDefinition[], integrationTests: TestDefinition[], testFiles: TestFile[]): void;
3
+ //# sourceMappingURL=protocols-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocols-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/protocols-dispatcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAsBhG,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,cAAc,EAAE,EAC5B,gBAAgB,EAAE,cAAc,EAAE,EAClC,SAAS,EAAE,QAAQ,EAAE,GACpB,IAAI,CAkDN"}
@@ -0,0 +1,27 @@
1
+ // dispatchers/protocols-dispatcher.ts — GraphQL, gRPC, WebSocket, Hypermedia dispatches
2
+ import { isHypermediaProject, generateHypermediaTestDefs, generateHypermediaTestFiles, } from '../generators/hypermedia-generator.js';
3
+ import { isGraphqlProject, generateGraphqlTestDefs, generateGraphqlTestFiles, } from '../generators/graphql-test-generator.js';
4
+ import { isGrpcProject, generateGrpcTestDefs, generateGrpcTestFiles, } from '../generators/grpc-test-generator.js';
5
+ import { isWebSocketProject, generateWebSocketTestDefs, generateWebSocketTestFiles, } from '../generators/websocket-test-generator.js';
6
+ export function dispatchProtocols(spec, knowledge, testDir, testFramework, slug, autoGenerate, testExt, _unitTests, integrationTests, testFiles) {
7
+ if (isHypermediaProject(knowledge)) {
8
+ integrationTests.push(...generateHypermediaTestDefs(spec.title, testDir));
9
+ testFiles.push(...generateHypermediaTestFiles(spec, testDir, knowledge.language, autoGenerate));
10
+ }
11
+ if (isGraphqlProject(knowledge)) {
12
+ const gqlDefs = generateGraphqlTestDefs(spec.title, testDir, testExt);
13
+ integrationTests.push(...gqlDefs);
14
+ testFiles.push(...generateGraphqlTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate));
15
+ }
16
+ if (isGrpcProject(knowledge)) {
17
+ const grpcDefs = generateGrpcTestDefs(spec.title, testDir, testExt);
18
+ integrationTests.push(...grpcDefs);
19
+ testFiles.push(...generateGrpcTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate));
20
+ }
21
+ if (isWebSocketProject(knowledge)) {
22
+ const wsDefs = generateWebSocketTestDefs(spec.title, testDir, testExt);
23
+ integrationTests.push(...wsDefs);
24
+ testFiles.push(...generateWebSocketTestFiles({ title: spec.title, slug }, testDir, testFramework, knowledge.language, testExt, autoGenerate));
25
+ }
26
+ }
27
+ //# sourceMappingURL=protocols-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocols-dispatcher.js","sourceRoot":"","sources":["../../../../src/tools/generate-tests/dispatchers/protocols-dispatcher.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAGxF,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,2CAA2C,CAAC;AAEnD,MAAM,UAAU,iBAAiB,CAC/B,IAAU,EACV,SAA2B,EAC3B,OAAe,EACf,aAAqB,EACrB,IAAY,EACZ,YAAqB,EACrB,OAAe,EACf,UAA4B,EAC5B,gBAAkC,EAClC,SAAqB;IAErB,IAAI,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,gBAAgB,CAAC,IAAI,CAAC,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1E,SAAS,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,IAAI,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACtE,gBAAgB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAClC,SAAS,CAAC,IAAI,CACZ,GAAG,wBAAwB,CACzB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,CACb,CACF,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpE,gBAAgB,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QACnC,SAAS,CAAC,IAAI,CACZ,GAAG,qBAAqB,CACtB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,CACb,CACF,CAAC;IACJ,CAAC;IAED,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACvE,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QACjC,SAAS,CAAC,IAAI,CACZ,GAAG,0BAA0B,CAC3B,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAC3B,OAAO,EACP,aAAa,EACb,SAAS,CAAC,QAAQ,EAClB,OAAO,EACP,YAAY,CACb,CACF,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ProjectKnowledge } from '../../../../types/index.js';
2
+ export declare function detectCaching(knowledge: ProjectKnowledge): string | null;
3
+ export declare function detectSearchEngine(knowledge: ProjectKnowledge): string | null;
4
+ export declare function hasOrm(knowledge: ProjectKnowledge): boolean;
5
+ export declare function isDatabaseTestProject(knowledge: ProjectKnowledge): boolean;
6
+ //# sourceMappingURL=detectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectors.d.ts","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/detectors.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAYnE,wBAAgB,aAAa,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAQ7E;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAE3D;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAE1E"}
@@ -0,0 +1,36 @@
1
+ // tools/generate-tests/generators/database/detectors.ts
2
+ // Signal constants and detection helpers for database-related tech stack.
3
+ const CACHE_SIGNALS = ['redis', 'memcached', 'node-cache', 'caffeine', 'ehcache', 'valkey'];
4
+ const SEARCH_SIGNALS = [
5
+ 'elasticsearch',
6
+ 'meilisearch',
7
+ 'algolia',
8
+ 'opensearch',
9
+ 'solr',
10
+ 'typesense',
11
+ ];
12
+ export function detectCaching(knowledge) {
13
+ const stackLower = knowledge.stack.map((s) => s.toLowerCase());
14
+ for (const sig of CACHE_SIGNALS) {
15
+ if (stackLower.some((s) => s.includes(sig))) {
16
+ return sig;
17
+ }
18
+ }
19
+ return null;
20
+ }
21
+ export function detectSearchEngine(knowledge) {
22
+ const stackLower = knowledge.stack.map((s) => s.toLowerCase());
23
+ for (const sig of SEARCH_SIGNALS) {
24
+ if (stackLower.some((s) => s.includes(sig))) {
25
+ return sig;
26
+ }
27
+ }
28
+ return null;
29
+ }
30
+ export function hasOrm(knowledge) {
31
+ return knowledge.orm !== null && knowledge.orm !== 'unknown';
32
+ }
33
+ export function isDatabaseTestProject(knowledge) {
34
+ return knowledge.database !== 'unknown';
35
+ }
36
+ //# sourceMappingURL=detectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/detectors.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,0EAA0E;AAI1E,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAC5F,MAAM,cAAc,GAAG;IACrB,eAAe;IACf,aAAa;IACb,SAAS;IACT,YAAY;IACZ,MAAM;IACN,WAAW;CACZ,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,SAA2B;IACvD,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/D,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5C,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAA2B;IAC5D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/D,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5C,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,SAA2B;IAChD,OAAO,SAAS,CAAC,GAAG,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,SAA2B;IAC/D,OAAO,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { TestFile, ProjectKnowledge } from '../../../../types/index.js';
2
+ export declare function generateDatabaseTestFiles(spec: {
3
+ title: string;
4
+ slug: string;
5
+ }, testDir: string, framework: string, language: string, testExt: string, autoGenerate: boolean, knowledge: ProjectKnowledge): TestFile[];
6
+ export { detectCaching, detectSearchEngine, hasOrm, isDatabaseTestProject } from './detectors.js';
7
+ export { generateDatabaseTestDefs } from './test-defs.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAK7E,wBAAgB,yBAAyB,CACvC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACrC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,EACrB,SAAS,EAAE,gBAAgB,GAC1B,QAAQ,EAAE,CAoBZ;AAED,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,29 @@
1
+ // tools/generate-tests/generators/database/index.ts
2
+ // Entry point for the database test generator module.
3
+ // Orchestrates detection, test definitions, and scaffold generation.
4
+ import { detectCaching, detectSearchEngine, hasOrm } from './detectors.js';
5
+ import { buildTsDatabaseTest } from './ts-scaffold.js';
6
+ import { buildPythonDatabaseTest } from './python-scaffold.js';
7
+ export function generateDatabaseTestFiles(spec, testDir, framework, language, testExt, autoGenerate, knowledge) {
8
+ const cache = detectCaching(knowledge);
9
+ const search = detectSearchEngine(knowledge);
10
+ const orm = hasOrm(knowledge);
11
+ const db = knowledge.database;
12
+ const isPython = language === 'python';
13
+ const ext = isPython ? 'py' : testExt;
14
+ const fw = isPython ? 'pytest' : framework;
15
+ const content = isPython
16
+ ? buildPythonDatabaseTest(spec.title, db, orm, cache, search)
17
+ : buildTsDatabaseTest(spec.title, db, orm, cache, search);
18
+ return [
19
+ {
20
+ path: `${testDir}/database/${spec.slug}.database.test.${ext}`,
21
+ framework: fw,
22
+ content,
23
+ ready: autoGenerate,
24
+ },
25
+ ];
26
+ }
27
+ export { detectCaching, detectSearchEngine, hasOrm, isDatabaseTestProject } from './detectors.js';
28
+ export { generateDatabaseTestDefs } from './test-defs.js';
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/index.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,sDAAsD;AACtD,qEAAqE;AAGrE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,UAAU,yBAAyB,CACvC,IAAqC,EACrC,OAAe,EACf,SAAiB,EACjB,QAAgB,EAChB,OAAe,EACf,YAAqB,EACrB,SAA2B;IAE3B,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9B,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC;IAC9B,MAAM,QAAQ,GAAG,QAAQ,KAAK,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ;QACtB,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC;QAC7D,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE5D,OAAO;QACL;YACE,IAAI,EAAE,GAAG,OAAO,aAAa,IAAI,CAAC,IAAI,kBAAkB,GAAG,EAAE;YAC7D,SAAS,EAAE,EAAE;YACb,OAAO;YACP,KAAK,EAAE,YAAY;SACpB;KACF,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function buildPythonDatabaseTest(title: string, db: string, orm: boolean, cache: string | null, search: string | null): string;
2
+ //# sourceMappingURL=python-scaffold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-scaffold.d.ts","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/python-scaffold.ts"],"names":[],"mappings":"AAGA,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAuGR"}
@@ -0,0 +1,104 @@
1
+ // tools/generate-tests/generators/database/python-scaffold.ts
2
+ // Builds Python/pytest database test scaffold content.
3
+ export function buildPythonDatabaseTest(title, db, orm, cache, search) {
4
+ const cls = title.replace(/[^a-zA-Z0-9]/g, '');
5
+ const ormSection = orm
6
+ ? `
7
+ def test_transaction_commits_on_success(self) -> None:
8
+ """Transaction commits all changes on success."""
9
+ pass
10
+
11
+ def test_transaction_rolls_back_on_error(self) -> None:
12
+ """Transaction rolls back on exception."""
13
+ pass
14
+
15
+ def test_optimistic_locking_conflict(self) -> None:
16
+ """Concurrent update with stale version raises conflict."""
17
+ pass
18
+ `
19
+ : '';
20
+ const cacheSection = cache
21
+ ? `
22
+ def test_cache_hit_returns_value(self) -> None:
23
+ """Cache returns stored value on hit."""
24
+ pass
25
+
26
+ def test_cache_miss_returns_none(self) -> None:
27
+ """Cache returns None on miss."""
28
+ pass
29
+
30
+ def test_cache_ttl_expiration(self) -> None:
31
+ """Cache entry expires after TTL."""
32
+ pass
33
+
34
+ def test_cache_invalidation_on_update(self) -> None:
35
+ """Cache is invalidated when underlying data changes."""
36
+ pass
37
+ `
38
+ : '';
39
+ const searchSection = search
40
+ ? `
41
+ def test_index_document_searchable(self) -> None:
42
+ """Indexed document is returned by search query."""
43
+ pass
44
+
45
+ def test_query_relevance_ranking(self) -> None:
46
+ """Results are ranked by relevance score."""
47
+ pass
48
+
49
+ def test_fuzzy_matching_for_typos(self) -> None:
50
+ """Fuzzy search finds results despite typos."""
51
+ pass
52
+ `
53
+ : '';
54
+ return `"""Database & Data Layer tests for: ${title}
55
+ Generated by SpecForge SDD MCP Server (SPEC-058b).
56
+ Database: ${db}
57
+ """
58
+ import pytest
59
+
60
+
61
+ class Test${cls}Database:
62
+ """Database test suite for ${title} (${db})."""
63
+
64
+ def test_migration_up_applies_cleanly(self) -> None:
65
+ """Schema migration up creates expected tables."""
66
+ # TODO: result = alembic.command.upgrade(config, 'head')
67
+ pass
68
+
69
+ def test_migration_down_reverts_cleanly(self) -> None:
70
+ """Schema migration down removes tables cleanly."""
71
+ pass
72
+
73
+ def test_data_integrity_after_migration(self) -> None:
74
+ """Existing data is preserved after migration."""
75
+ pass
76
+
77
+ def test_rollback_safety(self) -> None:
78
+ """Rollback does not lose existing data."""
79
+ pass
80
+
81
+ def test_create_record(self) -> None:
82
+ """Creates a record and returns its id."""
83
+ # TODO: user = repo.create(name='Test', email='test@example.com')
84
+ # assert user.id is not None
85
+ pass
86
+
87
+ def test_read_record_by_id(self) -> None:
88
+ """Reads a record by primary key."""
89
+ pass
90
+
91
+ def test_update_record(self) -> None:
92
+ """Updates a record field."""
93
+ pass
94
+
95
+ def test_delete_record(self) -> None:
96
+ """Deletes a record."""
97
+ pass
98
+
99
+ def test_read_nonexistent_returns_none(self) -> None:
100
+ """Reading a non-existent record returns None."""
101
+ pass
102
+ ${ormSection}${cacheSection}${searchSection}`;
103
+ }
104
+ //# sourceMappingURL=python-scaffold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-scaffold.js","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/python-scaffold.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,uDAAuD;AAEvD,MAAM,UAAU,uBAAuB,CACrC,KAAa,EACb,EAAU,EACV,GAAY,EACZ,KAAoB,EACpB,MAAqB;IAErB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,GAAG;QACpB,CAAC,CAAC;;;;;;;;;;;;CAYL;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,YAAY,GAAG,KAAK;QACxB,CAAC,CAAC;;;;;;;;;;;;;;;;CAgBL;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,aAAa,GAAG,MAAM;QAC1B,CAAC,CAAC;;;;;;;;;;;;CAYL;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,uCAAuC,KAAK;;YAEzC,EAAE;;;;;YAKF,GAAG;iCACkB,KAAK,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwC3C,UAAU,GAAG,YAAY,GAAG,aAAa,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TestDefinition, ProjectKnowledge } from '../../../../types/index.js';
2
+ export declare function generateDatabaseTestDefs(title: string, testDir: string, _testExt: string, knowledge: ProjectKnowledge): TestDefinition[];
3
+ //# sourceMappingURL=test-defs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-defs.d.ts","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/test-defs.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGnF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,gBAAgB,GAC1B,cAAc,EAAE,CAwDlB"}
@@ -0,0 +1,57 @@
1
+ // tools/generate-tests/generators/database/test-defs.ts
2
+ // Generates TestDefinition entries for database & data layer test suites.
3
+ import { detectCaching, detectSearchEngine, hasOrm } from './detectors.js';
4
+ export function generateDatabaseTestDefs(title, testDir, _testExt, knowledge) {
5
+ const defs = [
6
+ {
7
+ name: `${title} — migration: schema up/down and rollback safety`,
8
+ type: 'integration',
9
+ file: `${testDir}/database/`,
10
+ description: 'Verify schema migrations run up/down cleanly and preserve data integrity',
11
+ priority: 'critical',
12
+ automatable: true,
13
+ },
14
+ {
15
+ name: `${title} — repository: CRUD operations on ${knowledge.database}`,
16
+ type: 'integration',
17
+ file: `${testDir}/database/`,
18
+ description: 'Verify create, read, update, delete operations on the data layer',
19
+ priority: 'high',
20
+ automatable: true,
21
+ },
22
+ ];
23
+ if (hasOrm(knowledge)) {
24
+ defs.push({
25
+ name: `${title} — transactions and optimistic locking`,
26
+ type: 'integration',
27
+ file: `${testDir}/database/`,
28
+ description: 'Verify transaction commit/rollback and optimistic locking conflict detection',
29
+ priority: 'high',
30
+ automatable: true,
31
+ });
32
+ }
33
+ const cache = detectCaching(knowledge);
34
+ if (cache !== null) {
35
+ defs.push({
36
+ name: `${title} — caching (${cache}): hit/miss, TTL, invalidation`,
37
+ type: 'integration',
38
+ file: `${testDir}/database/`,
39
+ description: 'Verify cache hit/miss behavior, TTL expiration, and invalidation patterns',
40
+ priority: 'high',
41
+ automatable: true,
42
+ });
43
+ }
44
+ const search = detectSearchEngine(knowledge);
45
+ if (search !== null) {
46
+ defs.push({
47
+ name: `${title} — full-text search (${search}): indexing and query relevance`,
48
+ type: 'integration',
49
+ file: `${testDir}/database/`,
50
+ description: 'Verify document indexing, query relevance ranking, and fuzzy matching',
51
+ priority: 'medium',
52
+ automatable: true,
53
+ });
54
+ }
55
+ return defs;
56
+ }
57
+ //# sourceMappingURL=test-defs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-defs.js","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/test-defs.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,0EAA0E;AAG1E,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE3E,MAAM,UAAU,wBAAwB,CACtC,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,SAA2B;IAE3B,MAAM,IAAI,GAAqB;QAC7B;YACE,IAAI,EAAE,GAAG,KAAK,kDAAkD;YAChE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,GAAG,OAAO,YAAY;YAC5B,WAAW,EAAE,0EAA0E;YACvF,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,IAAI;SAClB;QACD;YACE,IAAI,EAAE,GAAG,KAAK,qCAAqC,SAAS,CAAC,QAAQ,EAAE;YACvE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,GAAG,OAAO,YAAY;YAC5B,WAAW,EAAE,kEAAkE;YAC/E,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE,IAAI;SAClB;KACF,CAAC;IAEF,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,GAAG,KAAK,wCAAwC;YACtD,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,GAAG,OAAO,YAAY;YAC5B,WAAW,EAAE,8EAA8E;YAC3F,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,GAAG,KAAK,eAAe,KAAK,gCAAgC;YAClE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,GAAG,OAAO,YAAY;YAC5B,WAAW,EAAE,2EAA2E;YACxF,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,GAAG,KAAK,wBAAwB,MAAM,iCAAiC;YAC7E,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,GAAG,OAAO,YAAY;YAC5B,WAAW,EAAE,uEAAuE;YACpF,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function buildTsDatabaseTest(title: string, db: string, orm: boolean, cache: string | null, search: string | null): string;
2
+ //# sourceMappingURL=ts-scaffold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-scaffold.d.ts","sourceRoot":"","sources":["../../../../../src/tools/generate-tests/generators/database/ts-scaffold.ts"],"names":[],"mappings":"AAGA,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAqHR"}