@sk8metal/michi-cli 0.0.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +235 -57
  3. package/dist/scripts/__tests__/create-project.test.js +24 -28
  4. package/dist/scripts/__tests__/create-project.test.js.map +1 -1
  5. package/dist/scripts/__tests__/jira-transitions.test.d.ts +5 -0
  6. package/dist/scripts/__tests__/jira-transitions.test.d.ts.map +1 -0
  7. package/dist/scripts/__tests__/jira-transitions.test.js +172 -0
  8. package/dist/scripts/__tests__/jira-transitions.test.js.map +1 -0
  9. package/dist/scripts/__tests__/multi-project-estimate.test.js +14 -15
  10. package/dist/scripts/__tests__/multi-project-estimate.test.js.map +1 -1
  11. package/dist/scripts/__tests__/setup-existing-project.test.js +79 -0
  12. package/dist/scripts/__tests__/setup-existing-project.test.js.map +1 -1
  13. package/dist/scripts/__tests__/setup-interactive.test.js +23 -17
  14. package/dist/scripts/__tests__/setup-interactive.test.js.map +1 -1
  15. package/dist/scripts/__tests__/spec-impl-workflow.test.d.ts +5 -0
  16. package/dist/scripts/__tests__/spec-impl-workflow.test.d.ts.map +1 -0
  17. package/dist/scripts/__tests__/spec-impl-workflow.test.js +321 -0
  18. package/dist/scripts/__tests__/spec-impl-workflow.test.js.map +1 -0
  19. package/dist/scripts/__tests__/spec-loader.test.d.ts +5 -0
  20. package/dist/scripts/__tests__/spec-loader.test.d.ts.map +1 -0
  21. package/dist/scripts/__tests__/spec-loader.test.js +153 -0
  22. package/dist/scripts/__tests__/spec-loader.test.js.map +1 -0
  23. package/dist/scripts/__tests__/validate-phase.test.js +26 -22
  24. package/dist/scripts/__tests__/validate-phase.test.js.map +1 -1
  25. package/dist/scripts/config/config-schema.d.ts +17 -0
  26. package/dist/scripts/config/config-schema.d.ts.map +1 -1
  27. package/dist/scripts/config/config-schema.js +55 -26
  28. package/dist/scripts/config/config-schema.js.map +1 -1
  29. package/dist/scripts/config-interactive.d.ts.map +1 -1
  30. package/dist/scripts/config-interactive.js +53 -38
  31. package/dist/scripts/config-interactive.js.map +1 -1
  32. package/dist/scripts/confluence-sync.d.ts.map +1 -1
  33. package/dist/scripts/confluence-sync.js +0 -11
  34. package/dist/scripts/confluence-sync.js.map +1 -1
  35. package/dist/scripts/constants/__tests__/environments.test.js +39 -5
  36. package/dist/scripts/constants/__tests__/environments.test.js.map +1 -1
  37. package/dist/scripts/constants/environments.d.ts +1 -1
  38. package/dist/scripts/constants/environments.d.ts.map +1 -1
  39. package/dist/scripts/constants/environments.js +22 -7
  40. package/dist/scripts/constants/environments.js.map +1 -1
  41. package/dist/scripts/constants/test-commands.d.ts +36 -0
  42. package/dist/scripts/constants/test-commands.d.ts.map +1 -0
  43. package/dist/scripts/constants/test-commands.js +70 -0
  44. package/dist/scripts/constants/test-commands.js.map +1 -0
  45. package/dist/scripts/jira-sync.d.ts +89 -3
  46. package/dist/scripts/jira-sync.d.ts.map +1 -1
  47. package/dist/scripts/jira-sync.js +366 -96
  48. package/dist/scripts/jira-sync.js.map +1 -1
  49. package/dist/scripts/markdown-to-confluence.js +1 -1
  50. package/dist/scripts/markdown-to-confluence.js.map +1 -1
  51. package/dist/scripts/phase-runner.d.ts +1 -1
  52. package/dist/scripts/phase-runner.d.ts.map +1 -1
  53. package/dist/scripts/phase-runner.js +809 -13
  54. package/dist/scripts/phase-runner.js.map +1 -1
  55. package/dist/scripts/pr-automation.d.ts.map +1 -1
  56. package/dist/scripts/pr-automation.js.map +1 -1
  57. package/dist/scripts/pre-flight-check.js +1 -1
  58. package/dist/scripts/pre-flight-check.js.map +1 -1
  59. package/dist/scripts/setup-existing-project.js +61 -29
  60. package/dist/scripts/setup-existing-project.js.map +1 -1
  61. package/dist/scripts/setup-interactive.js +3 -3
  62. package/dist/scripts/setup-interactive.js.map +1 -1
  63. package/dist/scripts/spec-impl-workflow.d.ts +94 -0
  64. package/dist/scripts/spec-impl-workflow.d.ts.map +1 -0
  65. package/dist/scripts/spec-impl-workflow.js +354 -0
  66. package/dist/scripts/spec-impl-workflow.js.map +1 -0
  67. package/dist/scripts/template/__tests__/renderer.test.js.map +1 -1
  68. package/dist/scripts/test-execution-generator.d.ts +52 -0
  69. package/dist/scripts/test-execution-generator.d.ts.map +1 -0
  70. package/dist/scripts/test-execution-generator.js +576 -0
  71. package/dist/scripts/test-execution-generator.js.map +1 -0
  72. package/dist/scripts/test-interactive.d.ts +10 -0
  73. package/dist/scripts/test-interactive.d.ts.map +1 -0
  74. package/dist/scripts/test-interactive.js +627 -0
  75. package/dist/scripts/test-interactive.js.map +1 -0
  76. package/dist/scripts/test-new-features.d.ts +5 -0
  77. package/dist/scripts/test-new-features.d.ts.map +1 -0
  78. package/dist/scripts/test-new-features.js +145 -0
  79. package/dist/scripts/test-new-features.js.map +1 -0
  80. package/dist/scripts/test-spec-generator.d.ts +29 -0
  81. package/dist/scripts/test-spec-generator.d.ts.map +1 -0
  82. package/dist/scripts/test-spec-generator.js +494 -0
  83. package/dist/scripts/test-spec-generator.js.map +1 -0
  84. package/dist/scripts/test-workflow-stages.d.ts +6 -0
  85. package/dist/scripts/test-workflow-stages.d.ts.map +1 -0
  86. package/dist/scripts/test-workflow-stages.js +43 -0
  87. package/dist/scripts/test-workflow-stages.js.map +1 -0
  88. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts +5 -0
  89. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts.map +1 -0
  90. package/dist/scripts/utils/__tests__/aidlc-parser.test.js +315 -0
  91. package/dist/scripts/utils/__tests__/aidlc-parser.test.js.map +1 -0
  92. package/dist/scripts/utils/__tests__/business-days.test.d.ts +5 -0
  93. package/dist/scripts/utils/__tests__/business-days.test.d.ts.map +1 -0
  94. package/dist/scripts/utils/__tests__/business-days.test.js +171 -0
  95. package/dist/scripts/utils/__tests__/business-days.test.js.map +1 -0
  96. package/dist/scripts/utils/__tests__/config-loader.test.js +1 -1
  97. package/dist/scripts/utils/__tests__/config-loader.test.js.map +1 -1
  98. package/dist/scripts/utils/__tests__/config-validator.test.js +164 -35
  99. package/dist/scripts/utils/__tests__/config-validator.test.js.map +1 -1
  100. package/dist/scripts/utils/__tests__/env-config.test.d.ts +5 -0
  101. package/dist/scripts/utils/__tests__/env-config.test.d.ts.map +1 -0
  102. package/dist/scripts/utils/__tests__/env-config.test.js +218 -0
  103. package/dist/scripts/utils/__tests__/env-config.test.js.map +1 -0
  104. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts +5 -0
  105. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts.map +1 -0
  106. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js +202 -0
  107. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js.map +1 -0
  108. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts +5 -0
  109. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts.map +1 -0
  110. package/dist/scripts/utils/__tests__/tasks-converter.test.js +500 -0
  111. package/dist/scripts/utils/__tests__/tasks-converter.test.js.map +1 -0
  112. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts +5 -0
  113. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts.map +1 -0
  114. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js +314 -0
  115. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js.map +1 -0
  116. package/dist/scripts/utils/__tests__/test-runner.test.d.ts +5 -0
  117. package/dist/scripts/utils/__tests__/test-runner.test.d.ts.map +1 -0
  118. package/dist/scripts/utils/__tests__/test-runner.test.js +64 -0
  119. package/dist/scripts/utils/__tests__/test-runner.test.js.map +1 -0
  120. package/dist/scripts/utils/aidlc-parser.d.ts +86 -0
  121. package/dist/scripts/utils/aidlc-parser.d.ts.map +1 -0
  122. package/dist/scripts/utils/aidlc-parser.js +208 -0
  123. package/dist/scripts/utils/aidlc-parser.js.map +1 -0
  124. package/dist/scripts/utils/business-days.d.ts +52 -0
  125. package/dist/scripts/utils/business-days.d.ts.map +1 -0
  126. package/dist/scripts/utils/business-days.js +98 -0
  127. package/dist/scripts/utils/business-days.js.map +1 -0
  128. package/dist/scripts/utils/ci-generator.d.ts +14 -0
  129. package/dist/scripts/utils/ci-generator.d.ts.map +1 -0
  130. package/dist/scripts/utils/ci-generator.js +61 -0
  131. package/dist/scripts/utils/ci-generator.js.map +1 -0
  132. package/dist/scripts/utils/config-loader.js +2 -2
  133. package/dist/scripts/utils/config-loader.js.map +1 -1
  134. package/dist/scripts/utils/config-validator.d.ts +7 -1
  135. package/dist/scripts/utils/config-validator.d.ts.map +1 -1
  136. package/dist/scripts/utils/config-validator.js +136 -23
  137. package/dist/scripts/utils/config-validator.js.map +1 -1
  138. package/dist/scripts/utils/confluence-approval.d.ts +46 -0
  139. package/dist/scripts/utils/confluence-approval.d.ts.map +1 -0
  140. package/dist/scripts/utils/confluence-approval.js +118 -0
  141. package/dist/scripts/utils/confluence-approval.js.map +1 -0
  142. package/dist/scripts/utils/confluence-hierarchy.d.ts.map +1 -1
  143. package/dist/scripts/utils/confluence-hierarchy.js +1 -1
  144. package/dist/scripts/utils/confluence-hierarchy.js.map +1 -1
  145. package/dist/scripts/utils/docker-generator.d.ts +9 -0
  146. package/dist/scripts/utils/docker-generator.d.ts.map +1 -0
  147. package/dist/scripts/utils/docker-generator.js +132 -0
  148. package/dist/scripts/utils/docker-generator.js.map +1 -0
  149. package/dist/scripts/utils/docker-requirement-detector.d.ts +15 -0
  150. package/dist/scripts/utils/docker-requirement-detector.d.ts.map +1 -0
  151. package/dist/scripts/utils/docker-requirement-detector.js +124 -0
  152. package/dist/scripts/utils/docker-requirement-detector.js.map +1 -0
  153. package/dist/scripts/utils/env-config.d.ts +54 -0
  154. package/dist/scripts/utils/env-config.d.ts.map +1 -0
  155. package/dist/scripts/utils/env-config.js +414 -0
  156. package/dist/scripts/utils/env-config.js.map +1 -0
  157. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts +70 -0
  158. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts.map +1 -0
  159. package/dist/scripts/utils/jira-issue-type-fetcher.js +147 -0
  160. package/dist/scripts/utils/jira-issue-type-fetcher.js.map +1 -0
  161. package/dist/scripts/utils/language-detector.d.ts +14 -0
  162. package/dist/scripts/utils/language-detector.d.ts.map +1 -0
  163. package/dist/scripts/utils/language-detector.js +119 -0
  164. package/dist/scripts/utils/language-detector.js.map +1 -0
  165. package/dist/scripts/utils/markdown-parser.d.ts +55 -0
  166. package/dist/scripts/utils/markdown-parser.d.ts.map +1 -0
  167. package/dist/scripts/utils/markdown-parser.js +289 -0
  168. package/dist/scripts/utils/markdown-parser.js.map +1 -0
  169. package/dist/scripts/utils/project-detector.d.ts +17 -0
  170. package/dist/scripts/utils/project-detector.d.ts.map +1 -0
  171. package/dist/scripts/utils/project-detector.js +166 -0
  172. package/dist/scripts/utils/project-detector.js.map +1 -0
  173. package/dist/scripts/utils/project-finder.js +2 -2
  174. package/dist/scripts/utils/project-finder.js.map +1 -1
  175. package/dist/scripts/utils/release-notes-generator.d.ts +56 -0
  176. package/dist/scripts/utils/release-notes-generator.d.ts.map +1 -0
  177. package/dist/scripts/utils/release-notes-generator.js +162 -0
  178. package/dist/scripts/utils/release-notes-generator.js.map +1 -0
  179. package/dist/scripts/utils/spec-loader.d.ts +79 -0
  180. package/dist/scripts/utils/spec-loader.d.ts.map +1 -0
  181. package/dist/scripts/utils/spec-loader.js +80 -0
  182. package/dist/scripts/utils/spec-loader.js.map +1 -0
  183. package/dist/scripts/utils/spec-updater.d.ts +7 -0
  184. package/dist/scripts/utils/spec-updater.d.ts.map +1 -1
  185. package/dist/scripts/utils/spec-updater.js.map +1 -1
  186. package/dist/scripts/utils/tasks-converter.d.ts +57 -0
  187. package/dist/scripts/utils/tasks-converter.d.ts.map +1 -0
  188. package/dist/scripts/utils/tasks-converter.js +322 -0
  189. package/dist/scripts/utils/tasks-converter.js.map +1 -0
  190. package/dist/scripts/utils/tasks-format-validator.d.ts +36 -0
  191. package/dist/scripts/utils/tasks-format-validator.d.ts.map +1 -0
  192. package/dist/scripts/utils/tasks-format-validator.js +158 -0
  193. package/dist/scripts/utils/tasks-format-validator.js.map +1 -0
  194. package/dist/scripts/utils/template-applier.d.ts +37 -0
  195. package/dist/scripts/utils/template-applier.d.ts.map +1 -0
  196. package/dist/scripts/utils/template-applier.js +129 -0
  197. package/dist/scripts/utils/template-applier.js.map +1 -0
  198. package/dist/scripts/utils/test-config-generator.d.ts +12 -0
  199. package/dist/scripts/utils/test-config-generator.d.ts.map +1 -0
  200. package/dist/scripts/utils/test-config-generator.js +185 -0
  201. package/dist/scripts/utils/test-config-generator.js.map +1 -0
  202. package/dist/scripts/utils/test-runner.d.ts +31 -0
  203. package/dist/scripts/utils/test-runner.d.ts.map +1 -0
  204. package/dist/scripts/utils/test-runner.js +103 -0
  205. package/dist/scripts/utils/test-runner.js.map +1 -0
  206. package/dist/scripts/validate-phase.d.ts +1 -1
  207. package/dist/scripts/validate-phase.d.ts.map +1 -1
  208. package/dist/scripts/validate-phase.js +153 -5
  209. package/dist/scripts/validate-phase.js.map +1 -1
  210. package/dist/scripts/workflow-orchestrator.d.ts +8 -0
  211. package/dist/scripts/workflow-orchestrator.d.ts.map +1 -1
  212. package/dist/scripts/workflow-orchestrator.js +108 -7
  213. package/dist/scripts/workflow-orchestrator.js.map +1 -1
  214. package/dist/src/__tests__/integration/internationalization.test.d.ts +8 -0
  215. package/dist/src/__tests__/integration/internationalization.test.d.ts.map +1 -0
  216. package/dist/src/__tests__/integration/internationalization.test.js +333 -0
  217. package/dist/src/__tests__/integration/internationalization.test.js.map +1 -0
  218. package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts +1 -1
  219. package/dist/src/__tests__/integration/setup/claude-agent.test.js +17 -20
  220. package/dist/src/__tests__/integration/setup/claude-agent.test.js.map +1 -1
  221. package/dist/src/__tests__/integration/setup/cursor.test.js +23 -19
  222. package/dist/src/__tests__/integration/setup/cursor.test.js.map +1 -1
  223. package/dist/src/__tests__/integration/setup/validation.test.js +41 -58
  224. package/dist/src/__tests__/integration/setup/validation.test.js.map +1 -1
  225. package/dist/src/cli.d.ts.map +1 -1
  226. package/dist/src/cli.js +208 -18
  227. package/dist/src/cli.js.map +1 -1
  228. package/dist/src/commands/setup-existing.d.ts +3 -0
  229. package/dist/src/commands/setup-existing.d.ts.map +1 -1
  230. package/dist/src/commands/setup-existing.js +334 -47
  231. package/dist/src/commands/setup-existing.js.map +1 -1
  232. package/docs/README.md +3 -1
  233. package/docs/context.md +59 -0
  234. package/docs/design-issue-55.md +240 -0
  235. package/docs/design-issue-56.md +181 -0
  236. package/docs/michi-development/testing/manual-verification-flow.md +2242 -0
  237. package/docs/michi-development/testing/pre-publish-checklist.md +560 -0
  238. package/docs/plan.md +275 -0
  239. package/docs/user-guide/getting-started/github-token-setup.md +509 -0
  240. package/docs/{getting-started → user-guide/getting-started}/quick-start.md +16 -0
  241. package/docs/{getting-started → user-guide/getting-started}/setup.md +28 -1
  242. package/docs/user-guide/guides/internationalization.md +540 -0
  243. package/docs/{guides → user-guide/guides}/multi-project.md +1 -1
  244. package/docs/{guides → user-guide/guides}/phase-automation.md +67 -9
  245. package/docs/user-guide/guides/workflow.md +582 -0
  246. package/docs/user-guide/hands-on/README.md +142 -0
  247. package/docs/user-guide/hands-on/claude-agent-setup.md +455 -0
  248. package/docs/user-guide/hands-on/claude-setup.md +398 -0
  249. package/docs/user-guide/hands-on/cursor-setup.md +352 -0
  250. package/docs/user-guide/hands-on/troubleshooting.md +964 -0
  251. package/docs/user-guide/hands-on/verification-checklist.md +438 -0
  252. package/docs/user-guide/hands-on/workflow-walkthrough.md +906 -0
  253. package/docs/user-guide/reference/config.md +564 -0
  254. package/docs/{reference → user-guide/reference}/quick-reference.md +53 -40
  255. package/docs/user-guide/release/ci-setup.md +541 -0
  256. package/docs/user-guide/release/release-flow.md +476 -0
  257. package/docs/user-guide/templates/test-specs/README.md +173 -0
  258. package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +547 -0
  259. package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +435 -0
  260. package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +454 -0
  261. package/docs/user-guide/templates/test-specs/security-test-spec-template.md +664 -0
  262. package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +328 -0
  263. package/docs/{testing → user-guide/testing}/integration-tests.md +24 -9
  264. package/docs/user-guide/testing/tdd-cycle.md +349 -0
  265. package/docs/user-guide/testing/test-execution-flow.md +396 -0
  266. package/docs/user-guide/testing/test-failure-handling.md +521 -0
  267. package/docs/user-guide/testing/test-planning-flow.md +181 -0
  268. package/docs/user-guide/testing-strategy.md +185 -0
  269. package/docs/verification-guide.md +518 -0
  270. package/package.json +7 -2
  271. package/scripts/__tests__/create-project.test.ts +67 -49
  272. package/scripts/__tests__/jira-transitions.test.ts +225 -0
  273. package/scripts/__tests__/multi-project-estimate.test.ts +36 -30
  274. package/scripts/__tests__/setup-existing-project.test.ts +98 -1
  275. package/scripts/__tests__/setup-interactive.test.ts +52 -46
  276. package/scripts/__tests__/spec-impl-workflow.test.ts +429 -0
  277. package/scripts/__tests__/spec-loader.test.ts +199 -0
  278. package/scripts/__tests__/validate-phase.test.ts +78 -54
  279. package/scripts/config/config-schema.ts +89 -50
  280. package/scripts/config-interactive.ts +191 -136
  281. package/scripts/confluence-sync.ts +0 -12
  282. package/scripts/constants/__tests__/environments.test.ts +42 -6
  283. package/scripts/constants/environments.ts +33 -13
  284. package/scripts/constants/test-commands.ts +96 -0
  285. package/scripts/jira-sync.ts +767 -232
  286. package/scripts/markdown-to-confluence.ts +1 -1
  287. package/scripts/phase-runner.ts +1056 -63
  288. package/scripts/pr-automation.ts +0 -1
  289. package/scripts/pre-flight-check.ts +1 -1
  290. package/scripts/pre-publish-check.sh +311 -0
  291. package/scripts/quick-verify.sh +115 -0
  292. package/scripts/setup-existing-project.ts +201 -117
  293. package/scripts/setup-interactive.ts +4 -4
  294. package/scripts/spec-impl-workflow.ts +505 -0
  295. package/scripts/template/__tests__/renderer.test.ts +1 -2
  296. package/scripts/test-execution-generator.ts +695 -0
  297. package/scripts/test-interactive.ts +779 -0
  298. package/scripts/test-new-features.ts +168 -0
  299. package/scripts/test-npm-package.sh +345 -0
  300. package/scripts/test-spec-generator.ts +574 -0
  301. package/scripts/test-workflow-stages.ts +53 -0
  302. package/scripts/utils/__tests__/aidlc-parser.test.ts +349 -0
  303. package/scripts/utils/__tests__/business-days.test.ts +214 -0
  304. package/scripts/utils/__tests__/config-loader.test.ts +1 -1
  305. package/scripts/utils/__tests__/config-validator.test.ts +309 -88
  306. package/scripts/utils/__tests__/env-config.test.ts +259 -0
  307. package/scripts/utils/__tests__/jira-issue-type-fetcher.test.ts +272 -0
  308. package/scripts/utils/__tests__/tasks-converter.test.ts +582 -0
  309. package/scripts/utils/__tests__/tasks-format-validator.test.ts +338 -0
  310. package/scripts/utils/__tests__/test-runner.test.ts +77 -0
  311. package/scripts/utils/aidlc-parser.ts +289 -0
  312. package/scripts/utils/business-days.ts +115 -0
  313. package/scripts/utils/ci-generator.ts +84 -0
  314. package/scripts/utils/config-loader.ts +2 -2
  315. package/scripts/utils/config-validator.ts +304 -117
  316. package/scripts/utils/confluence-approval.ts +167 -0
  317. package/scripts/utils/confluence-hierarchy.ts +2 -4
  318. package/scripts/utils/docker-generator.ts +151 -0
  319. package/scripts/utils/docker-requirement-detector.ts +153 -0
  320. package/scripts/utils/env-config.ts +526 -0
  321. package/scripts/utils/jira-issue-type-fetcher.ts +199 -0
  322. package/scripts/utils/language-detector.ts +139 -0
  323. package/scripts/utils/markdown-parser.ts +376 -0
  324. package/scripts/utils/project-detector.ts +192 -0
  325. package/scripts/utils/project-finder.ts +2 -2
  326. package/scripts/utils/release-notes-generator.ts +210 -0
  327. package/scripts/utils/spec-loader.ts +125 -0
  328. package/scripts/utils/spec-updater.ts +8 -1
  329. package/scripts/utils/tasks-converter.ts +601 -0
  330. package/scripts/utils/tasks-format-validator.ts +193 -0
  331. package/scripts/utils/template-applier.ts +202 -0
  332. package/scripts/utils/test-config-generator.ts +210 -0
  333. package/scripts/utils/test-runner.ts +133 -0
  334. package/scripts/validate-phase.ts +186 -9
  335. package/scripts/workflow-orchestrator.ts +130 -12
  336. package/templates/ci/github-actions/java.yml +54 -0
  337. package/templates/ci/github-actions/nodejs.yml +46 -0
  338. package/templates/ci/github-actions/php.yml +52 -0
  339. package/templates/ci/screwdriver/java.yaml +17 -0
  340. package/templates/ci/screwdriver/nodejs.yaml +17 -0
  341. package/templates/ci/screwdriver/php.yaml +20 -0
  342. package/templates/claude/commands/kiro/kiro-spec-impl.md +244 -0
  343. package/templates/claude/commands/kiro/kiro-spec-tasks.md +354 -0
  344. package/templates/claude-agent/README.md +7 -1
  345. package/templates/claude-agent/agents/.gitkeep +0 -0
  346. package/templates/claude-agent/agents/designer.md +79 -0
  347. package/templates/claude-agent/agents/developer.md +68 -0
  348. package/templates/claude-agent/agents/manager-agent.md +59 -0
  349. package/templates/claude-agent/agents/tester.md +101 -0
  350. package/templates/claude-agent/commands/kiro/.gitkeep +0 -0
  351. package/templates/claude-agent/commands/kiro/kiro-spec-impl.md +244 -0
  352. package/templates/claude-agent/commands/kiro/kiro-spec-tasks.md +354 -0
  353. package/templates/cline/rules/atlassian-integration.md +36 -0
  354. package/templates/cline/rules/michi-core.md +56 -0
  355. package/templates/codex/AGENTS.override.md +277 -0
  356. package/templates/codex/prompts/confluence-sync.md +177 -0
  357. package/templates/codex/rules/README.md +210 -0
  358. package/templates/common/.kiro/project.json.template +21 -0
  359. package/templates/cursor/commands/kiro/kiro-spec-impl.md +244 -0
  360. package/templates/cursor/commands/kiro/kiro-spec-tasks.md +354 -0
  361. package/templates/gemini/commands/README.md +41 -0
  362. package/templates/gemini/rules/GEMINI.md +80 -0
  363. package/docs/guides/workflow.md +0 -342
  364. package/docs/reference/config.md +0 -545
  365. package/scripts/setup-existing.sh +0 -279
  366. /package/docs/{contributing → michi-development/contributing}/development.md +0 -0
  367. /package/docs/{contributing → michi-development/contributing}/release.md +0 -0
  368. /package/docs/{testing-strategy.md → michi-development/testing-strategy.md} +0 -0
  369. /package/docs/{getting-started → user-guide/getting-started}/new-repository-setup.md +0 -0
  370. /package/docs/{guides → user-guide/guides}/customization.md +0 -0
  371. /package/docs/{reference → user-guide/reference}/tasks-template.md +0 -0
@@ -0,0 +1,576 @@
1
+ /**
2
+ * テスト実行ファイル生成エンジン
3
+ * Phase Bで選択されたテストタイプに基づいて実行ファイルを生成
4
+ */
5
+ import { readFileSync, writeFileSync, existsSync, mkdirSync, chmodSync } from 'fs';
6
+ import { join } from 'path';
7
+ /**
8
+ * design.mdからエンドポイント情報を抽出
9
+ */
10
+ function extractEndpointsFromDesign(designPath) {
11
+ if (!existsSync(designPath)) {
12
+ return [{ endpoint: '/api/health', method: 'GET', baseUrl: 'http://localhost:8080' }];
13
+ }
14
+ const content = readFileSync(designPath, 'utf-8');
15
+ const endpoints = [];
16
+ // APIエンドポイントのパターンを検索
17
+ const apiPattern = /(?:GET|POST|PUT|DELETE|PATCH)\s+([\w\-/{}]+)/gi;
18
+ let match;
19
+ while ((match = apiPattern.exec(content)) !== null) {
20
+ const method = match[0].split(/\s+/)[0].toUpperCase();
21
+ const endpoint = match[1];
22
+ endpoints.push({
23
+ endpoint,
24
+ method,
25
+ baseUrl: 'http://localhost:8080'
26
+ });
27
+ }
28
+ // デフォルト値
29
+ if (endpoints.length === 0) {
30
+ endpoints.push({ endpoint: '/api/health', method: 'GET', baseUrl: 'http://localhost:8080' });
31
+ }
32
+ return endpoints;
33
+ }
34
+ /**
35
+ * requirements.mdからパフォーマンス要件を抽出
36
+ */
37
+ function extractPerformanceRequirements(requirementsPath) {
38
+ const defaults = {
39
+ targetRps: '100',
40
+ targetResponseTime: '500',
41
+ maxErrorRate: '1'
42
+ };
43
+ if (!existsSync(requirementsPath)) {
44
+ return defaults;
45
+ }
46
+ const content = readFileSync(requirementsPath, 'utf-8');
47
+ // レスポンスタイム要件を検索
48
+ const responseTimeMatch = content.match(/(\d+)\s*(?:ms|ミリ秒)以内/);
49
+ if (responseTimeMatch) {
50
+ defaults.targetResponseTime = responseTimeMatch[1];
51
+ }
52
+ // RPS要件を検索
53
+ const rpsMatch = content.match(/(\d+)\s*(?:RPS|リクエスト\/秒|req\/s)/i);
54
+ if (rpsMatch) {
55
+ defaults.targetRps = rpsMatch[1];
56
+ }
57
+ return defaults;
58
+ }
59
+ /**
60
+ * 負荷テスト(Locust)実行ファイルを生成
61
+ */
62
+ export async function generateLoadTestExecution(options) {
63
+ const { feature, projectRoot = process.cwd() } = options;
64
+ const files = [];
65
+ try {
66
+ const designPath = join(projectRoot, '.kiro', 'specs', feature, 'design.md');
67
+ const requirementsPath = join(projectRoot, '.kiro', 'specs', feature, 'requirements.md');
68
+ const outputDir = join(projectRoot, '.kiro', 'specs', feature, 'test-execution', 'performance');
69
+ mkdirSync(outputDir, { recursive: true });
70
+ // 設計書からエンドポイント情報を抽出
71
+ const endpoints = extractEndpointsFromDesign(designPath);
72
+ const mainEndpoint = endpoints[0];
73
+ // 要件からパフォーマンス要件を抽出
74
+ const perfReqs = extractPerformanceRequirements(requirementsPath);
75
+ // locustfile.py を生成
76
+ const locustContent = generateLocustFile(feature, mainEndpoint, perfReqs);
77
+ const locustPath = join(outputDir, 'locustfile.py');
78
+ writeFileSync(locustPath, locustContent, 'utf-8');
79
+ files.push(locustPath);
80
+ // 負荷テスト計画書を生成
81
+ const planContent = generateLoadTestPlan(feature, mainEndpoint, perfReqs);
82
+ const planPath = join(outputDir, 'load-test-plan.md');
83
+ writeFileSync(planPath, planContent, 'utf-8');
84
+ files.push(planPath);
85
+ return { testType: 'performance', files, success: true };
86
+ }
87
+ catch (error) {
88
+ return {
89
+ testType: 'performance',
90
+ files,
91
+ success: false,
92
+ error: error instanceof Error ? error.message : String(error)
93
+ };
94
+ }
95
+ }
96
+ /**
97
+ * Locustファイルを生成
98
+ */
99
+ function generateLocustFile(feature, endpoint, perfReqs) {
100
+ const methodLower = endpoint.method.toLowerCase();
101
+ const hasBody = ['post', 'put', 'patch'].includes(methodLower);
102
+ const className = feature.replace(/[^a-zA-Z0-9]/g, '');
103
+ let taskCode = '';
104
+ if (hasBody) {
105
+ taskCode = ` self.client.${methodLower}(
106
+ "${endpoint.endpoint}",
107
+ json={},
108
+ headers={"Content-Type": "application/json"}
109
+ )`;
110
+ }
111
+ else {
112
+ taskCode = ` self.client.${methodLower}("${endpoint.endpoint}")`;
113
+ }
114
+ return `"""
115
+ ${feature} 負荷テスト
116
+ 自動生成: michi phase:run ${feature} phase-b
117
+
118
+ 目標:
119
+ - RPS: ${perfReqs.targetRps}
120
+ - 応答時間: ${perfReqs.targetResponseTime}ms以内
121
+ """
122
+
123
+ from locust import HttpUser, task, between
124
+
125
+
126
+ class ${className}User(HttpUser):
127
+ """テスト対象ユーザーシミュレーション"""
128
+
129
+ wait_time = between(1, 3)
130
+ host = "${endpoint.baseUrl}"
131
+
132
+ @task
133
+ def test_endpoint(self):
134
+ """${endpoint.endpoint}への${endpoint.method}リクエスト"""
135
+ ${taskCode}
136
+
137
+
138
+ # 実行方法:
139
+ # locust -f locustfile.py --users 100 --spawn-rate 10 --run-time 5m
140
+ #
141
+ # Web UI: http://localhost:8089
142
+ `;
143
+ }
144
+ /**
145
+ * 負荷テスト計画書を生成
146
+ */
147
+ function generateLoadTestPlan(feature, endpoint, perfReqs) {
148
+ return `# ${feature} 負荷テスト計画
149
+
150
+ ## 概要
151
+
152
+ - **対象**: ${endpoint.endpoint}
153
+ - **HTTPメソッド**: ${endpoint.method}
154
+ - **ベースURL**: ${endpoint.baseUrl}
155
+ - **生成日**: ${new Date().toISOString().split('T')[0]}
156
+
157
+ ## 成功基準
158
+
159
+ | 指標 | 目標値 |
160
+ |------|--------|
161
+ | RPS | ${perfReqs.targetRps} |
162
+ | 平均応答時間 | ${perfReqs.targetResponseTime}ms以内 |
163
+ | P95応答時間 | ${parseInt(perfReqs.targetResponseTime) * 2}ms以内 |
164
+ | P99応答時間 | ${parseInt(perfReqs.targetResponseTime) * 4}ms以内 |
165
+ | エラー率 | ${perfReqs.maxErrorRate}%以下 |
166
+
167
+ ## 実行手順
168
+
169
+ ### 1. 環境準備
170
+
171
+ \`\`\`bash
172
+ # Locustインストール
173
+ pip install locust
174
+
175
+ # テスト対象アプリケーションを起動
176
+ # (別ターミナルで実行)
177
+ \`\`\`
178
+
179
+ ### 2. 負荷テスト実行
180
+
181
+ \`\`\`bash
182
+ # このディレクトリに移動
183
+ cd .kiro/specs/${feature}/test-execution/performance
184
+
185
+ # Locust起動(Web UI)
186
+ locust -f locustfile.py
187
+
188
+ # またはヘッドレス実行
189
+ locust -f locustfile.py --headless \\
190
+ --users 100 \\
191
+ --spawn-rate 10 \\
192
+ --run-time 5m \\
193
+ --html report.html
194
+ \`\`\`
195
+
196
+ ### 3. 結果確認
197
+
198
+ - **Web UI**: http://localhost:8089
199
+ - **HTMLレポート**: report.html
200
+
201
+ ## テスト結果
202
+
203
+ | 項目 | 結果 | 判定 |
204
+ |------|------|------|
205
+ | 平均応答時間 | ___ms | [ ] Pass / [ ] Fail |
206
+ | P95応答時間 | ___ms | [ ] Pass / [ ] Fail |
207
+ | P99応答時間 | ___ms | [ ] Pass / [ ] Fail |
208
+ | エラー率 | __% | [ ] Pass / [ ] Fail |
209
+
210
+ ## 備考
211
+
212
+ `;
213
+ }
214
+ /**
215
+ * セキュリティテスト(OWASP ZAP)実行ファイルを生成
216
+ */
217
+ export async function generateSecurityTestExecution(options) {
218
+ const { feature, projectRoot = process.cwd() } = options;
219
+ const files = [];
220
+ try {
221
+ const designPath = join(projectRoot, '.kiro', 'specs', feature, 'design.md');
222
+ const outputDir = join(projectRoot, '.kiro', 'specs', feature, 'test-execution', 'security');
223
+ mkdirSync(outputDir, { recursive: true });
224
+ // 設計書からエンドポイント情報を抽出
225
+ const endpoints = extractEndpointsFromDesign(designPath);
226
+ const mainEndpoint = endpoints[0];
227
+ // zap-config.yaml を生成
228
+ const zapConfigContent = generateZapConfig(feature, mainEndpoint);
229
+ const zapConfigPath = join(outputDir, 'zap-config.yaml');
230
+ writeFileSync(zapConfigPath, zapConfigContent, 'utf-8');
231
+ files.push(zapConfigPath);
232
+ // run-zap-scan.sh を生成
233
+ const zapScriptContent = generateZapScript(feature, mainEndpoint);
234
+ const zapScriptPath = join(outputDir, 'run-zap-scan.sh');
235
+ writeFileSync(zapScriptPath, zapScriptContent, 'utf-8');
236
+ chmodSync(zapScriptPath, '755');
237
+ files.push(zapScriptPath);
238
+ // セキュリティテスト計画書を生成
239
+ const planContent = generateSecurityTestPlan(feature, mainEndpoint);
240
+ const planPath = join(outputDir, 'security-test-plan.md');
241
+ writeFileSync(planPath, planContent, 'utf-8');
242
+ files.push(planPath);
243
+ return { testType: 'security', files, success: true };
244
+ }
245
+ catch (error) {
246
+ return {
247
+ testType: 'security',
248
+ files,
249
+ success: false,
250
+ error: error instanceof Error ? error.message : String(error)
251
+ };
252
+ }
253
+ }
254
+ /**
255
+ * ZAP設定ファイルを生成
256
+ */
257
+ function generateZapConfig(feature, endpoint) {
258
+ return `# OWASP ZAP設定
259
+ # 自動生成: michi phase:run ${feature} phase-b
260
+
261
+ env:
262
+ contexts:
263
+ - name: "${feature}"
264
+ urls:
265
+ - "${endpoint.baseUrl}"
266
+ excludePaths:
267
+ - "/health.*"
268
+ - "/metrics.*"
269
+
270
+ jobs:
271
+ - type: spider
272
+ parameters:
273
+ context: "${feature}"
274
+ maxDuration: 5
275
+ maxDepth: 5
276
+
277
+ - type: activeScan
278
+ parameters:
279
+ context: "${feature}"
280
+ policy: "Default Policy"
281
+ maxRuleDurationInMins: 5
282
+ maxScanDurationInMins: 30
283
+
284
+ - type: report
285
+ parameters:
286
+ template: "traditional-html"
287
+ reportDir: "./reports"
288
+ reportFile: "zap-report"
289
+ `;
290
+ }
291
+ /**
292
+ * ZAP実行スクリプトを生成
293
+ */
294
+ function generateZapScript(feature, endpoint) {
295
+ return `#!/bin/bash
296
+ # OWASP ZAPセキュリティスキャン実行スクリプト
297
+ # 自動生成: michi phase:run ${feature} phase-b
298
+
299
+ set -e
300
+
301
+ # 変数定義
302
+ TARGET_URL="${endpoint.baseUrl}"
303
+ CONFIG_FILE="zap-config.yaml"
304
+ REPORT_DIR="./reports"
305
+
306
+ # レポートディレクトリ作成
307
+ mkdir -p "\${REPORT_DIR}"
308
+
309
+ echo "🔐 OWASP ZAPセキュリティスキャン開始"
310
+ echo "対象: \${TARGET_URL}"
311
+ echo "設定: \${CONFIG_FILE}"
312
+
313
+ # Docker経由でZAPを実行
314
+ docker run --rm -v "$(pwd):/zap/wrk:rw" \\
315
+ -t ghcr.io/zaproxy/zaproxy:stable \\
316
+ zap.sh -cmd \\
317
+ -autorun /zap/wrk/\${CONFIG_FILE}
318
+
319
+ echo "✅ スキャン完了"
320
+ echo "レポート: \${REPORT_DIR}/zap-report.html"
321
+ `;
322
+ }
323
+ /**
324
+ * セキュリティテスト計画書を生成
325
+ */
326
+ function generateSecurityTestPlan(feature, endpoint) {
327
+ return `# ${feature} セキュリティテスト計画
328
+
329
+ ## 概要
330
+
331
+ - **対象**: ${endpoint.baseUrl}
332
+ - **ツール**: OWASP ZAP
333
+ - **生成日**: ${new Date().toISOString().split('T')[0]}
334
+
335
+ ## 検出対象の脆弱性
336
+
337
+ - SQLインジェクション
338
+ - XSS(クロスサイトスクリプティング)
339
+ - CSRF(クロスサイトリクエストフォージェリ)
340
+ - 認証・認可の問題
341
+ - セキュリティヘッダーの不備
342
+
343
+ ## 実行手順
344
+
345
+ ### 1. 環境準備
346
+
347
+ \`\`\`bash
348
+ # Docker Desktopを起動
349
+
350
+ # テスト対象アプリケーションを起動
351
+ # (別ターミナルで実行)
352
+ \`\`\`
353
+
354
+ ### 2. セキュリティスキャン実行
355
+
356
+ \`\`\`bash
357
+ # このディレクトリに移動
358
+ cd .kiro/specs/${feature}/test-execution/security
359
+
360
+ # スキャン実行
361
+ ./run-zap-scan.sh
362
+ \`\`\`
363
+
364
+ ### 3. 結果確認
365
+
366
+ - **HTMLレポート**: reports/zap-report.html
367
+
368
+ ## テスト結果
369
+
370
+ | 重要度 | 検出数 | 対応状況 |
371
+ |--------|--------|----------|
372
+ | High | ___ | [ ] 対応済み |
373
+ | Medium | ___ | [ ] 対応済み |
374
+ | Low | ___ | [ ] 対応済み |
375
+ | Informational | ___ | - |
376
+
377
+ ## 備考
378
+
379
+ `;
380
+ }
381
+ /**
382
+ * 手動回帰テスト実行ファイルを生成
383
+ */
384
+ export async function generateManualRegressionExecution(options) {
385
+ const { feature, projectRoot = process.cwd() } = options;
386
+ const files = [];
387
+ try {
388
+ const designPath = join(projectRoot, '.kiro', 'specs', feature, 'design.md');
389
+ const outputDir = join(projectRoot, '.kiro', 'specs', feature, 'test-execution', 'manual-regression');
390
+ mkdirSync(outputDir, { recursive: true });
391
+ // 設計書からエンドポイント情報を抽出
392
+ const endpoints = extractEndpointsFromDesign(designPath);
393
+ // 手動回帰テストガイドを生成
394
+ const guideContent = generateManualRegressionGuide(feature, endpoints);
395
+ const guidePath = join(outputDir, 'manual-regression-guide.md');
396
+ writeFileSync(guidePath, guideContent, 'utf-8');
397
+ files.push(guidePath);
398
+ return { testType: 'manual-regression', files, success: true };
399
+ }
400
+ catch (error) {
401
+ return {
402
+ testType: 'manual-regression',
403
+ files,
404
+ success: false,
405
+ error: error instanceof Error ? error.message : String(error)
406
+ };
407
+ }
408
+ }
409
+ /**
410
+ * 手動回帰テストガイドを生成
411
+ */
412
+ function generateManualRegressionGuide(feature, endpoints) {
413
+ let testCases = '';
414
+ let tcCounter = 1;
415
+ for (const ep of endpoints) {
416
+ testCases += `
417
+ ### TC-${String(tcCounter++).padStart(3, '0')}: ${ep.method} ${ep.endpoint}
418
+
419
+ \`\`\`bash
420
+ curl -X ${ep.method} ${ep.baseUrl}${ep.endpoint} \\
421
+ -H "Content-Type: application/json"
422
+ \`\`\`
423
+
424
+ | 項目 | 値 |
425
+ |------|-----|
426
+ | 期待ステータス | 200 |
427
+ | 確認 | [ ] Pass / [ ] Fail |
428
+
429
+ `;
430
+ }
431
+ return `# ${feature} 手動回帰テストガイド
432
+
433
+ ## 概要
434
+
435
+ - **対象**: ${feature}
436
+ - **生成日**: ${new Date().toISOString().split('T')[0]}
437
+
438
+ ## 環境準備
439
+
440
+ \`\`\`bash
441
+ # テスト対象アプリケーションを起動
442
+ # 別ターミナルで実行
443
+ \`\`\`
444
+
445
+ ## テストケース
446
+ ${testCases}
447
+
448
+ ## テスト結果サマリー
449
+
450
+ | 項目 | 結果 |
451
+ |------|------|
452
+ | 総テスト数 | ${endpoints.length} |
453
+ | 成功 | ___ |
454
+ | 失敗 | ___ |
455
+ | 実施日 | ____ |
456
+ | 実施者 | ____ |
457
+
458
+ ## 備考
459
+
460
+ `;
461
+ }
462
+ /**
463
+ * 統合テスト/E2Eテスト実行ファイルを生成
464
+ */
465
+ export async function generateIntegrationE2EExecution(options) {
466
+ const { feature, testType, projectRoot = process.cwd() } = options;
467
+ const files = [];
468
+ try {
469
+ const outputDir = join(projectRoot, '.kiro', 'specs', feature, 'test-execution', testType);
470
+ mkdirSync(outputDir, { recursive: true });
471
+ // チェックリストを生成
472
+ const checklistContent = generateIntegrationE2EChecklist(feature, testType);
473
+ const checklistPath = join(outputDir, `${testType}-checklist.md`);
474
+ writeFileSync(checklistPath, checklistContent, 'utf-8');
475
+ files.push(checklistPath);
476
+ return { testType, files, success: true };
477
+ }
478
+ catch (error) {
479
+ return {
480
+ testType,
481
+ files,
482
+ success: false,
483
+ error: error instanceof Error ? error.message : String(error)
484
+ };
485
+ }
486
+ }
487
+ /**
488
+ * 統合/E2Eテストチェックリストを生成
489
+ */
490
+ function generateIntegrationE2EChecklist(feature, testType) {
491
+ const title = testType === 'integration' ? '統合テスト' : 'E2Eテスト';
492
+ return `# ${feature} ${title}チェックリスト
493
+
494
+ ## 概要
495
+
496
+ - **対象**: ${feature}
497
+ - **テストタイプ**: ${title}
498
+ - **生成日**: ${new Date().toISOString().split('T')[0]}
499
+
500
+ ## 事前準備
501
+
502
+ - [ ] テスト環境が起動している
503
+ - [ ] テストデータが準備されている
504
+ - [ ] 依存サービスが正常に動作している
505
+
506
+ ## テストシナリオ
507
+
508
+ ### シナリオ1: 正常系フロー
509
+
510
+ - [ ] ステップ1: (具体的な操作を記載)
511
+ - [ ] ステップ2: (具体的な操作を記載)
512
+ - [ ] ステップ3: (具体的な操作を記載)
513
+ - [ ] 期待結果の確認
514
+
515
+ ### シナリオ2: 異常系フロー
516
+
517
+ - [ ] エラー条件でのテスト
518
+ - [ ] エラーメッセージの確認
519
+ - [ ] リカバリー処理の確認
520
+
521
+ ## テスト結果
522
+
523
+ | シナリオ | 結果 | 備考 |
524
+ |----------|------|------|
525
+ | シナリオ1 | [ ] Pass / [ ] Fail | |
526
+ | シナリオ2 | [ ] Pass / [ ] Fail | |
527
+
528
+ ## 備考
529
+
530
+ `;
531
+ }
532
+ /**
533
+ * メイン生成関数: テストタイプに応じた実行ファイルを生成
534
+ */
535
+ export async function generateTestExecution(feature, testType, projectRoot = process.cwd()) {
536
+ const options = { feature, projectRoot, testType };
537
+ switch (testType) {
538
+ case 'performance':
539
+ return await generateLoadTestExecution(options);
540
+ case 'security':
541
+ return await generateSecurityTestExecution(options);
542
+ case 'integration':
543
+ return await generateIntegrationE2EExecution({ ...options, testType: 'integration' });
544
+ case 'e2e':
545
+ return await generateIntegrationE2EExecution({ ...options, testType: 'e2e' });
546
+ case 'manual-regression':
547
+ return await generateManualRegressionExecution(options);
548
+ default:
549
+ return {
550
+ testType,
551
+ files: [],
552
+ success: false,
553
+ error: `未対応のテストタイプ: ${testType}(unit, lint, buildはCI/CD設定で対応)`
554
+ };
555
+ }
556
+ }
557
+ /**
558
+ * 選択されたすべてのテストタイプの実行ファイルを生成
559
+ */
560
+ export async function generateAllTestExecutions(feature, projectRoot = process.cwd()) {
561
+ const selectionPath = join(projectRoot, '.kiro', 'specs', feature, 'test-type-selection.json');
562
+ if (!existsSync(selectionPath)) {
563
+ throw new Error('test-type-selection.jsonが存在しません。先にtest-type-selectionフェーズを実行してください');
564
+ }
565
+ const selection = JSON.parse(readFileSync(selectionPath, 'utf-8'));
566
+ const testTypes = selection.selectedTypes || [];
567
+ const results = [];
568
+ // Phase B対象のテストタイプのみを処理(unit, lint, buildはスキップ)
569
+ const phaseBTypes = testTypes.filter(t => !['unit', 'lint', 'build'].includes(t));
570
+ for (const testType of phaseBTypes) {
571
+ const result = await generateTestExecution(feature, testType, projectRoot);
572
+ results.push(result);
573
+ }
574
+ return results;
575
+ }
576
+ //# sourceMappingURL=test-execution-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-execution-generator.js","sourceRoot":"","sources":["../../scripts/test-execution-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * 対話式テスト設定ツール
3
+ * Phase Bテスト(手動回帰、負荷、セキュリティ)を対話的に作成
4
+ */
5
+ /**
6
+ * メイン処理
7
+ */
8
+ declare function main(): Promise<number>;
9
+ export { main as testInteractive };
10
+ //# sourceMappingURL=test-interactive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-interactive.d.ts","sourceRoot":"","sources":["../../scripts/test-interactive.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAupBH;;GAEG;AACH,iBAAe,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAiGrC;AAYD,OAAO,EAAE,IAAI,IAAI,eAAe,EAAE,CAAC"}