@su-record/vibe 3.2.0 → 3.2.2

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 (286) hide show
  1. package/CLAUDE.md +1 -1
  2. package/README.en.md +7 -6
  3. package/README.md +8 -5
  4. package/dist/__tests__/skill-namespace.test.d.ts +2 -0
  5. package/dist/__tests__/skill-namespace.test.d.ts.map +1 -0
  6. package/dist/__tests__/skill-namespace.test.js +60 -0
  7. package/dist/__tests__/skill-namespace.test.js.map +1 -0
  8. package/dist/__tests__/wiring-integrity.test.js +5 -5
  9. package/dist/__tests__/wiring-integrity.test.js.map +1 -1
  10. package/dist/cli/design/design-md-parser.test.js +2 -2
  11. package/dist/cli/design/design-md-parser.test.js.map +1 -1
  12. package/dist/cli/generate-release-notes.d.ts +3 -0
  13. package/dist/cli/generate-release-notes.d.ts.map +1 -0
  14. package/dist/cli/generate-release-notes.js +47 -0
  15. package/dist/cli/generate-release-notes.js.map +1 -0
  16. package/dist/cli/postinstall/constants.d.ts +6 -6
  17. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  18. package/dist/cli/postinstall/constants.js +114 -46
  19. package/dist/cli/postinstall/constants.js.map +1 -1
  20. package/dist/cli/postinstall/fs-utils.d.ts +1 -0
  21. package/dist/cli/postinstall/fs-utils.d.ts.map +1 -1
  22. package/dist/cli/postinstall/fs-utils.js +25 -0
  23. package/dist/cli/postinstall/fs-utils.js.map +1 -1
  24. package/dist/cli/postinstall/fs-utils.test.js +46 -11
  25. package/dist/cli/postinstall/fs-utils.test.js.map +1 -1
  26. package/dist/cli/postinstall/main.d.ts.map +1 -1
  27. package/dist/cli/postinstall/main.js +3 -2
  28. package/dist/cli/postinstall/main.js.map +1 -1
  29. package/dist/cli/setup/Provisioner.d.ts.map +1 -1
  30. package/dist/cli/setup/Provisioner.js +23 -7
  31. package/dist/cli/setup/Provisioner.js.map +1 -1
  32. package/dist/cli/utils/cli-detector.d.ts +3 -3
  33. package/dist/cli/utils/cli-detector.d.ts.map +1 -1
  34. package/dist/cli/utils/cli-detector.js +7 -27
  35. package/dist/cli/utils/cli-detector.js.map +1 -1
  36. package/dist/cli/utils/cli-detector.test.js +3 -2
  37. package/dist/cli/utils/cli-detector.test.js.map +1 -1
  38. package/dist/infra/lib/llm-availability.d.ts.map +1 -1
  39. package/dist/infra/lib/llm-availability.js +2 -10
  40. package/dist/infra/lib/llm-availability.js.map +1 -1
  41. package/dist/infra/lib/llm-availability.test.js +3 -2
  42. package/dist/infra/lib/llm-availability.test.js.map +1 -1
  43. package/dist/infra/lib/utils.d.ts +6 -0
  44. package/dist/infra/lib/utils.d.ts.map +1 -1
  45. package/dist/infra/lib/utils.js +33 -0
  46. package/dist/infra/lib/utils.js.map +1 -1
  47. package/dist/tests/curated-release-notes.test.d.ts +2 -0
  48. package/dist/tests/curated-release-notes.test.d.ts.map +1 -0
  49. package/dist/tests/curated-release-notes.test.js +106 -0
  50. package/dist/tests/curated-release-notes.test.js.map +1 -0
  51. package/dist/tools/convention/validateCodeQuality.d.ts +1 -0
  52. package/dist/tools/convention/validateCodeQuality.d.ts.map +1 -1
  53. package/dist/tools/convention/validateCodeQuality.js +3 -2
  54. package/dist/tools/convention/validateCodeQuality.js.map +1 -1
  55. package/dist/tools/index.d.ts +2 -2
  56. package/dist/tools/index.d.ts.map +1 -1
  57. package/dist/tools/index.js +2 -0
  58. package/dist/tools/index.js.map +1 -1
  59. package/dist/tools/release/releaseNotes.d.ts +21 -0
  60. package/dist/tools/release/releaseNotes.d.ts.map +1 -0
  61. package/dist/tools/release/releaseNotes.js +105 -0
  62. package/dist/tools/release/releaseNotes.js.map +1 -0
  63. package/dist/tools/spec/executionPacket.d.ts +101 -0
  64. package/dist/tools/spec/executionPacket.d.ts.map +1 -0
  65. package/dist/tools/spec/executionPacket.js +394 -0
  66. package/dist/tools/spec/executionPacket.js.map +1 -0
  67. package/dist/tools/spec/executionPacket.test.d.ts +2 -0
  68. package/dist/tools/spec/executionPacket.test.d.ts.map +1 -0
  69. package/dist/tools/spec/executionPacket.test.js +360 -0
  70. package/dist/tools/spec/executionPacket.test.js.map +1 -0
  71. package/dist/tools/spec/index.d.ts +2 -0
  72. package/dist/tools/spec/index.d.ts.map +1 -1
  73. package/dist/tools/spec/index.js +2 -0
  74. package/dist/tools/spec/index.js.map +1 -1
  75. package/dist/tools/spec/specGenerator.d.ts +12 -0
  76. package/dist/tools/spec/specGenerator.d.ts.map +1 -1
  77. package/dist/tools/spec/specGenerator.js +96 -14
  78. package/dist/tools/spec/specGenerator.js.map +1 -1
  79. package/dist/tools/spec/specGenerator.test.d.ts +2 -0
  80. package/dist/tools/spec/specGenerator.test.d.ts.map +1 -0
  81. package/dist/tools/spec/specGenerator.test.js +130 -0
  82. package/dist/tools/spec/specGenerator.test.js.map +1 -0
  83. package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -3
  84. package/hooks/scripts/__tests__/llm-orchestrate-antigravity.test.js +5 -2
  85. package/hooks/scripts/__tests__/run-ledger-verify-required.test.js +7 -2
  86. package/hooks/scripts/__tests__/run-ledger.test.js +161 -10
  87. package/hooks/scripts/__tests__/utils-npm-root.test.js +5 -4
  88. package/hooks/scripts/lib/run-ledger.js +123 -21
  89. package/hooks/scripts/verify-ledger.js +23 -3
  90. package/package.json +2 -2
  91. package/skills/{agents-md → vibe.agents-md}/SKILL.md +1 -1
  92. package/skills/{brand-assets → vibe.brand-assets}/SKILL.md +1 -1
  93. package/skills/{capability-loop → vibe.capability-loop}/SKILL.md +1 -1
  94. package/skills/{chub-usage → vibe.chub-usage}/SKILL.md +1 -1
  95. package/skills/vibe.clone/SKILL.md +295 -3
  96. package/skills/{commerce-patterns → vibe.commerce-patterns}/SKILL.md +1 -1
  97. package/skills/{commit-push-pr → vibe.commit-push-pr}/SKILL.md +2 -2
  98. package/skills/{context7-usage → vibe.context7-usage}/SKILL.md +1 -1
  99. package/skills/vibe.contract/SKILL.md +162 -1
  100. package/skills/{create-prd → vibe.create-prd}/SKILL.md +2 -2
  101. package/skills/{design-refine → vibe.design-refine}/SKILL.md +1 -1
  102. package/skills/{design-review → vibe.design-review}/SKILL.md +1 -1
  103. package/skills/{design-teach → vibe.design-teach}/SKILL.md +1 -1
  104. package/skills/{devlog → vibe.devlog}/SKILL.md +1 -1
  105. package/skills/vibe.docs/SKILL.md +256 -1
  106. package/skills/{e2e-commerce → vibe.e2e-commerce}/SKILL.md +1 -1
  107. package/skills/vibe.educational-content/SKILL.md +157 -0
  108. package/skills/vibe.educational-content/references/learning-design.md +81 -0
  109. package/skills/vibe.educational-content/references/output-patterns.md +109 -0
  110. package/skills/vibe.educational-content/references/source-method.md +40 -0
  111. package/skills/{event-comms → vibe.event-comms}/SKILL.md +1 -1
  112. package/skills/{event-ops → vibe.event-ops}/SKILL.md +1 -1
  113. package/skills/{event-planning → vibe.event-planning}/SKILL.md +1 -1
  114. package/skills/vibe.figma/SKILL.md +473 -21
  115. package/skills/vibe.figma/references/branch-phases.md +1 -1
  116. package/skills/{git-worktree → vibe.git-worktree}/SKILL.md +1 -1
  117. package/skills/{handoff → vibe.handoff}/SKILL.md +1 -1
  118. package/skills/{parallel-research → vibe.parallel-research}/SKILL.md +2 -2
  119. package/skills/{presentation → vibe.presentation}/SKILL.md +1 -1
  120. package/skills/{prioritization-frameworks → vibe.prioritization}/SKILL.md +2 -2
  121. package/skills/{priority-todos → vibe.priority-todos}/SKILL.md +1 -1
  122. package/skills/{vercel-react-best-practices → vibe.react-best-practices}/SKILL.md +1 -1
  123. package/skills/vibe.regress/SKILL.md +182 -2
  124. package/skills/vibe.run/SKILL.md +417 -7
  125. package/skills/{arch-guard → vibe.run/internal/arch-guard}/templates/violation-report.md +1 -1
  126. package/skills/{seo-checklist → vibe.seo-checklist}/SKILL.md +1 -1
  127. package/skills/vibe.spec/SKILL.md +122 -1
  128. package/skills/vibe.test/SKILL.md +138 -2
  129. package/skills/{tool-fallback → vibe.tool-fallback}/SKILL.md +1 -1
  130. package/skills/vibe.trace/SKILL.md +3 -3
  131. package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/SKILL.md +6 -6
  132. package/skills/{user-personas → vibe.user-personas}/SKILL.md +2 -2
  133. package/skills/vibe.verify/SKILL.md +12 -6
  134. package/skills/{video-production → vibe.video-production}/SKILL.md +1 -1
  135. package/vibe/rules/loop-contract.md +7 -3
  136. package/vibe/templates/spec-template.md +32 -5
  137. package/skills/arch-guard/SKILL.md +0 -183
  138. package/skills/clone/SKILL.md +0 -296
  139. package/skills/contract/SKILL.md +0 -165
  140. package/skills/docs/SKILL.md +0 -259
  141. package/skills/exec-plan/SKILL.md +0 -151
  142. package/skills/figma/SKILL.md +0 -456
  143. package/skills/regress/SKILL.md +0 -184
  144. package/skills/restraint/SKILL.md +0 -72
  145. package/skills/spec/SKILL.md +0 -118
  146. package/skills/test/SKILL.md +0 -140
  147. /package/skills/{agents-md → vibe.agents-md}/rubrics/what-to-keep.md +0 -0
  148. /package/skills/{agents-md → vibe.agents-md}/templates/agents-md.md +0 -0
  149. /package/skills/{agents-md → vibe.agents-md}/templates/claude-md.md +0 -0
  150. /package/skills/{brand-assets → vibe.brand-assets}/rubrics/asset-checklist.md +0 -0
  151. /package/skills/{brand-assets → vibe.brand-assets}/templates/brand-guide.md +0 -0
  152. /package/skills/{capability-loop → vibe.capability-loop}/agents/capability-designer.md +0 -0
  153. /package/skills/{capability-loop → vibe.capability-loop}/agents/failure-analyst.md +0 -0
  154. /package/skills/{capability-loop → vibe.capability-loop}/agents/implementer.md +0 -0
  155. /package/skills/{capability-loop → vibe.capability-loop}/agents/tester.md +0 -0
  156. /package/skills/{capability-loop → vibe.capability-loop}/templates/capability-spec.md +0 -0
  157. /package/skills/{capability-loop → vibe.capability-loop}/templates/failure-analysis.md +0 -0
  158. /package/skills/{clone → vibe.clone}/references/capture-rules.md +0 -0
  159. /package/skills/{clone → vibe.clone}/references/legal-and-error-recovery.md +0 -0
  160. /package/skills/{clone → vibe.clone}/references/refine-rules.md +0 -0
  161. /package/skills/{clone → vibe.clone}/references/scaffold-phases.md +0 -0
  162. /package/skills/{clone → vibe.clone}/references/setup-and-layout.md +0 -0
  163. /package/skills/{commerce-patterns → vibe.commerce-patterns}/rubrics/checkout-flow.md +0 -0
  164. /package/skills/{commerce-patterns → vibe.commerce-patterns}/templates/product-schema.md +0 -0
  165. /package/skills/{commit-push-pr → vibe.commit-push-pr}/agents/change-analyzer.md +0 -0
  166. /package/skills/{commit-push-pr → vibe.commit-push-pr}/agents/message-writer.md +0 -0
  167. /package/skills/{commit-push-pr → vibe.commit-push-pr}/agents/pr-writer.md +0 -0
  168. /package/skills/{commit-push-pr → vibe.commit-push-pr}/agents/reviewer.md +0 -0
  169. /package/skills/{commit-push-pr → vibe.commit-push-pr}/rubrics/commit-message.md +0 -0
  170. /package/skills/{commit-push-pr → vibe.commit-push-pr}/templates/pr-body.md +0 -0
  171. /package/skills/{context7-usage → vibe.context7-usage}/rubrics/when-to-use.md +0 -0
  172. /package/skills/{create-prd → vibe.create-prd}/agents/edge-case-finder.md +0 -0
  173. /package/skills/{create-prd → vibe.create-prd}/agents/prioritizer.md +0 -0
  174. /package/skills/{create-prd → vibe.create-prd}/agents/requirements-writer.md +0 -0
  175. /package/skills/{create-prd → vibe.create-prd}/agents/researcher.md +0 -0
  176. /package/skills/{create-prd → vibe.create-prd}/agents/reviewer.md +0 -0
  177. /package/skills/{create-prd → vibe.create-prd}/frameworks/jobs-to-be-done.md +0 -0
  178. /package/skills/{create-prd → vibe.create-prd}/frameworks/rice-scoring.md +0 -0
  179. /package/skills/{create-prd → vibe.create-prd}/orchestrator.md +0 -0
  180. /package/skills/{create-prd → vibe.create-prd}/rubrics/completeness.md +0 -0
  181. /package/skills/{create-prd → vibe.create-prd}/templates/prd.md +0 -0
  182. /package/skills/{design-refine → vibe.design-refine}/rubrics/polish-checklist.md +0 -0
  183. /package/skills/{design-refine → vibe.design-refine}/rubrics/token-naming.md +0 -0
  184. /package/skills/{design-refine → vibe.design-refine}/templates/design-system.md +0 -0
  185. /package/skills/{design-refine → vibe.design-refine}/templates/polish-report.md +0 -0
  186. /package/skills/{design-refine → vibe.design-refine}/templates/token-audit.md +0 -0
  187. /package/skills/{design-review → vibe.design-review}/agents/a11y-auditor.md +0 -0
  188. /package/skills/{design-review → vibe.design-review}/agents/performance-auditor.md +0 -0
  189. /package/skills/{design-review → vibe.design-review}/agents/responsive-auditor.md +0 -0
  190. /package/skills/{design-review → vibe.design-review}/agents/scorer.md +0 -0
  191. /package/skills/{design-review → vibe.design-review}/agents/slop-detector.md +0 -0
  192. /package/skills/{design-review → vibe.design-review}/frameworks/core-web-vitals.md +0 -0
  193. /package/skills/{design-review → vibe.design-review}/frameworks/wcag-checklist.md +0 -0
  194. /package/skills/{design-review → vibe.design-review}/orchestrator.md +0 -0
  195. /package/skills/{design-review → vibe.design-review}/rubrics/ai-slop-patterns.md +0 -0
  196. /package/skills/{design-review → vibe.design-review}/rubrics/scoring.md +0 -0
  197. /package/skills/{design-review → vibe.design-review}/rubrics/ux-heuristics.md +0 -0
  198. /package/skills/{design-review → vibe.design-review}/templates/critique-report.md +0 -0
  199. /package/skills/{design-review → vibe.design-review}/templates/report.md +0 -0
  200. /package/skills/{design-teach → vibe.design-teach}/rubrics/brand-personality.md +0 -0
  201. /package/skills/{design-teach → vibe.design-teach}/templates/design-context.json +0 -0
  202. /package/skills/{docs → vibe.docs}/references/api-docs-changelog.md +0 -0
  203. /package/skills/{docs → vibe.docs}/references/codemaps-output.md +0 -0
  204. /package/skills/{docs → vibe.docs}/references/diagram-spec.md +0 -0
  205. /package/skills/{docs → vibe.docs}/templates/architecture.md +0 -0
  206. /package/skills/{docs → vibe.docs}/templates/behavioral-principles.md +0 -0
  207. /package/skills/{docs → vibe.docs}/templates/readme.md +0 -0
  208. /package/skills/{docs → vibe.docs}/templates/release-notes.md +0 -0
  209. /package/skills/{e2e-commerce → vibe.e2e-commerce}/templates/test-scenarios.md +0 -0
  210. /package/skills/{event-comms → vibe.event-comms}/templates/email-invite.md +0 -0
  211. /package/skills/{event-comms → vibe.event-comms}/templates/sns-post.md +0 -0
  212. /package/skills/{event-ops → vibe.event-ops}/rubrics/contingency.md +0 -0
  213. /package/skills/{event-ops → vibe.event-ops}/templates/d-day-checklist.md +0 -0
  214. /package/skills/{event-planning → vibe.event-planning}/rubrics/timeline.md +0 -0
  215. /package/skills/{event-planning → vibe.event-planning}/templates/event-plan.md +0 -0
  216. /package/skills/{figma → vibe.figma}/rubrics/conversion-rules.md +0 -0
  217. /package/skills/{figma → vibe.figma}/rubrics/css-mapping.md +0 -0
  218. /package/skills/{figma → vibe.figma}/rubrics/extraction-checklist.md +0 -0
  219. /package/skills/{figma → vibe.figma}/rubrics/image-rules.md +0 -0
  220. /package/skills/{figma → vibe.figma}/templates/component-index.md +0 -0
  221. /package/skills/{figma → vibe.figma}/templates/component-spec.md +0 -0
  222. /package/skills/{figma → vibe.figma}/templates/component.md +0 -0
  223. /package/skills/{figma → vibe.figma}/templates/figma-handoff.md +0 -0
  224. /package/skills/{figma → vibe.figma}/templates/remapped-tree.md +0 -0
  225. /package/skills/{git-worktree → vibe.git-worktree}/rubrics/when-to-use.md +0 -0
  226. /package/skills/{handoff → vibe.handoff}/agents/context-summarizer.md +0 -0
  227. /package/skills/{handoff → vibe.handoff}/agents/document-writer.md +0 -0
  228. /package/skills/{handoff → vibe.handoff}/agents/state-collector.md +0 -0
  229. /package/skills/{handoff → vibe.handoff}/agents/verifier.md +0 -0
  230. /package/skills/{handoff → vibe.handoff}/rubrics/completeness.md +0 -0
  231. /package/skills/{handoff → vibe.handoff}/templates/handoff.md +0 -0
  232. /package/skills/{parallel-research → vibe.parallel-research}/agents/best-practices.md +0 -0
  233. /package/skills/{parallel-research → vibe.parallel-research}/agents/codebase-patterns.md +0 -0
  234. /package/skills/{parallel-research → vibe.parallel-research}/agents/framework-docs.md +0 -0
  235. /package/skills/{parallel-research → vibe.parallel-research}/agents/security-advisory.md +0 -0
  236. /package/skills/{parallel-research → vibe.parallel-research}/agents/synthesizer.md +0 -0
  237. /package/skills/{parallel-research → vibe.parallel-research}/experts/best-practices.md +0 -0
  238. /package/skills/{parallel-research → vibe.parallel-research}/experts/codebase-patterns.md +0 -0
  239. /package/skills/{parallel-research → vibe.parallel-research}/experts/framework-docs.md +0 -0
  240. /package/skills/{parallel-research → vibe.parallel-research}/experts/security-advisory.md +0 -0
  241. /package/skills/{parallel-research → vibe.parallel-research}/orchestrator.md +0 -0
  242. /package/skills/{parallel-research → vibe.parallel-research}/templates/awesome-list.md +0 -0
  243. /package/skills/{parallel-research → vibe.parallel-research}/templates/paper.md +0 -0
  244. /package/skills/{parallel-research → vibe.parallel-research}/templates/synthesis.md +0 -0
  245. /package/skills/{presentation → vibe.presentation}/references/style-presets.md +0 -0
  246. /package/skills/{prioritization-frameworks → vibe.prioritization}/rubrics/frameworks.md +0 -0
  247. /package/skills/{prioritization-frameworks → vibe.prioritization}/templates/scoring-matrix.md +0 -0
  248. /package/skills/{priority-todos → vibe.priority-todos}/rubrics/prioritization.md +0 -0
  249. /package/skills/{priority-todos → vibe.priority-todos}/templates/todo-board.md +0 -0
  250. /package/skills/{vercel-react-best-practices → vibe.react-best-practices}/rubrics/performance.md +0 -0
  251. /package/skills/{vercel-react-best-practices → vibe.react-best-practices}/rubrics/server-components.md +0 -0
  252. /package/skills/{regress → vibe.regress}/templates/bug.md +0 -0
  253. /package/skills/{regress → vibe.regress}/templates/test-jest.md +0 -0
  254. /package/skills/{regress → vibe.regress}/templates/test-vitest.md +0 -0
  255. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/agents/detector.md +0 -0
  256. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/agents/reporter.md +0 -0
  257. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/agents/rule-generator.md +0 -0
  258. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/agents/violation-checker.md +0 -0
  259. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/frameworks/clean-architecture.md +0 -0
  260. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/frameworks/solid.md +0 -0
  261. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/scripts/check-boundaries.js +0 -0
  262. /package/skills/{arch-guard → vibe.run/internal/arch-guard}/templates/arch-rules.json +0 -0
  263. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/agents/decomposer.md +0 -0
  264. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/agents/dependency-mapper.md +0 -0
  265. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/agents/estimator.md +0 -0
  266. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/agents/validator.md +0 -0
  267. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/orchestrator.md +0 -0
  268. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/rubrics/complexity-scoring.md +0 -0
  269. /package/skills/{exec-plan → vibe.run/internal/exec-plan}/templates/plan.md +0 -0
  270. /package/skills/{seo-checklist → vibe.seo-checklist}/frameworks/structured-data.md +0 -0
  271. /package/skills/{seo-checklist → vibe.seo-checklist}/rubrics/content-seo.md +0 -0
  272. /package/skills/{seo-checklist → vibe.seo-checklist}/rubrics/technical-seo.md +0 -0
  273. /package/skills/{tool-fallback → vibe.tool-fallback}/rubrics/fallback-chain.md +0 -0
  274. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/color-and-contrast.md +0 -0
  275. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/interaction-design.md +0 -0
  276. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/motion-design.md +0 -0
  277. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/responsive-design.md +0 -0
  278. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/spatial-design.md +0 -0
  279. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/typography.md +0 -0
  280. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/reference/ux-writing.md +0 -0
  281. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/rubrics/interaction-states.md +0 -0
  282. /package/skills/{ui-ux-pro-max → vibe.ui-ux-pro-max}/rubrics/responsive-breakpoints.md +0 -0
  283. /package/skills/{user-personas → vibe.user-personas}/rubrics/research-methods.md +0 -0
  284. /package/skills/{user-personas → vibe.user-personas}/templates/persona.md +0 -0
  285. /package/skills/{video-production → vibe.video-production}/rubrics/quality-checklist.md +0 -0
  286. /package/skills/{video-production → vibe.video-production}/templates/production-plan.md +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"llm-availability.d.ts","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,oCAAoC;IACpC,GAAG,EAAE,OAAO,CAAC;CACd;AAsBD;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CA4BvD;AAED,wBAAwB;AACxB,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,uBAAuB;AACvB,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED,6BAA6B;AAC7B,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED,6BAA6B;AAC7B,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,oBAAoB;AACpB,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
1
+ {"version":3,"file":"llm-availability.d.ts","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,oCAAoC;IACpC,GAAG,EAAE,OAAO,CAAC;CACd;AAeD;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CA4BvD;AAED,wBAAwB;AACxB,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,uBAAuB;AACvB,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED,6BAA6B;AAC7B,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED,6BAA6B;AAC7B,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,oBAAoB;AACpB,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
@@ -4,25 +4,17 @@
4
4
  * Claude/Codex/Antigravity CLI 활성화 여부를 런타임에 판단.
5
5
  * 결과는 프로세스당 1회 캐시.
6
6
  */
7
- import { execSync } from 'child_process';
8
7
  import path from 'path';
9
8
  import fs from 'fs';
10
9
  import os from 'os';
10
+ import { findExecutableInPath } from './utils.js';
11
11
  import { getZaiApiKey, getZaiCodingApiKey } from './config/GlobalConfigManager.js';
12
12
  let cached = null;
13
13
  function checkCliInstalled(binName, configDir) {
14
14
  const hasDir = fs.existsSync(configDir);
15
15
  if (!/^[a-z]+$/.test(binName))
16
16
  return hasDir;
17
- let hasBin = false;
18
- try {
19
- execSync(`which ${binName}`, { stdio: 'ignore' });
20
- hasBin = true;
21
- }
22
- catch {
23
- // not found
24
- }
25
- return hasBin || hasDir;
17
+ return findExecutableInPath(binName) || hasDir;
26
18
  }
27
19
  function checkAuthExists(configDir, authFileName) {
28
20
  const authPath = path.join(configDir, authFileName);
@@ -1 +1 @@
1
- {"version":3,"file":"llm-availability.js","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-availability.js","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.ts"],"names":[],"mappings":"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"}
@@ -26,8 +26,9 @@ describe('detectLlmAvailability', () => {
26
26
  const binDir = fs.mkdtempSync(path.join(os.tmpdir(), 'vibe-bin-'));
27
27
  tempDirs.push(homeDir, binDir);
28
28
  vi.spyOn(os, 'homedir').mockReturnValue(homeDir);
29
- fs.writeFileSync(path.join(binDir, 'agy'), '#!/bin/sh\nexit 0\n', { mode: 0o755 });
30
- process.env.PATH = `${binDir}:/usr/bin:/bin`;
29
+ const exeName = process.platform === 'win32' ? 'agy.cmd' : 'agy';
30
+ fs.writeFileSync(path.join(binDir, exeName), '#!/bin/sh\nexit 0\n', { mode: 0o755 });
31
+ process.env.PATH = binDir;
31
32
  process.env.ANTIGRAVITY_API_KEY = 'test-key';
32
33
  const availability = detectLlmAvailability();
33
34
  expect(availability.antigravity).toBe(true);
@@ -1 +1 @@
1
- {"version":3,"file":"llm-availability.test.js","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,yBAAyB,EAAE,CAAC;QAC5B,IAAI,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,yBAAyB,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;QAChC,EAAE,CAAC,eAAe,EAAE,CAAC;QACrB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;QACnE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/B,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACjD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,qBAAqB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,MAAM,gBAAgB,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,UAAU,CAAC;QAE7C,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAC;QAE7C,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"llm-availability.test.js","sourceRoot":"","sources":["../../../src/infra/lib/llm-availability.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,yBAAyB,EAAE,CAAC;QAC5B,IAAI,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,yBAAyB,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;QAChC,EAAE,CAAC,eAAe,EAAE,CAAC;QACrB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;QACnE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/B,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QACjE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,UAAU,CAAC;QAE7C,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAC;QAE7C,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -5,6 +5,12 @@
5
5
  * 지정된 시간만큼 대기
6
6
  */
7
7
  export declare function sleep(ms: number): Promise<void>;
8
+ /**
9
+ * PATH에서 실행 파일 존재 여부를 탐색 (which/where 서브프로세스 없이 크로스 플랫폼)
10
+ * - POSIX: 실행 권한(X_OK)까지 확인
11
+ * - Windows: PATHEXT 확장자(.exe/.cmd 등)를 붙여 파일 존재 확인
12
+ */
13
+ export declare function findExecutableInPath(name: string): boolean;
8
14
  export declare function getAgentSdkQuery(): Promise<typeof import("@anthropic-ai/claude-agent-sdk").query | null>;
9
15
  /**
10
16
  * 디버그 로깅 (환경변수로 제어)
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/infra/lib/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAQD,wBAAsB,gBAAgB,0EAUrC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAIlE;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAIjE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAI/D;AAID;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,aAAa,GAAG,WAAW,CAAC;AAElE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAG1D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC7B,IAAI,CAsBN;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAQzF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAGpG"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/infra/lib/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAW1D;AAmBD,wBAAsB,gBAAgB,0EAUrC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAIlE;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAIjE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAI/D;AAID;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,aAAa,GAAG,WAAW,CAAC;AAElE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAG1D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC7B,IAAI,CAsBN;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAQzF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAGpG"}
@@ -1,12 +1,45 @@
1
1
  /**
2
2
  * 공통 유틸리티 함수
3
3
  */
4
+ import fs from 'fs';
5
+ import path from 'path';
4
6
  /**
5
7
  * 지정된 시간만큼 대기
6
8
  */
7
9
  export function sleep(ms) {
8
10
  return new Promise(resolve => setTimeout(resolve, ms));
9
11
  }
12
+ /**
13
+ * PATH에서 실행 파일 존재 여부를 탐색 (which/where 서브프로세스 없이 크로스 플랫폼)
14
+ * - POSIX: 실행 권한(X_OK)까지 확인
15
+ * - Windows: PATHEXT 확장자(.exe/.cmd 등)를 붙여 파일 존재 확인
16
+ */
17
+ export function findExecutableInPath(name) {
18
+ const dirs = (process.env.PATH || '').split(path.delimiter).filter(Boolean);
19
+ const exts = process.platform === 'win32'
20
+ ? (process.env.PATHEXT || '.COM;.EXE;.BAT;.CMD').split(';').filter(Boolean)
21
+ : [''];
22
+ for (const dir of dirs) {
23
+ for (const ext of exts) {
24
+ if (isExecutableFile(path.join(dir, name + ext)))
25
+ return true;
26
+ }
27
+ }
28
+ return false;
29
+ }
30
+ function isExecutableFile(candidate) {
31
+ try {
32
+ const stat = fs.statSync(candidate, { throwIfNoEntry: false });
33
+ if (!stat?.isFile())
34
+ return false;
35
+ if (process.platform !== 'win32')
36
+ fs.accessSync(candidate, fs.constants.X_OK);
37
+ return true;
38
+ }
39
+ catch {
40
+ return false;
41
+ }
42
+ }
10
43
  /**
11
44
  * Agent SDK query 함수 동적 로드
12
45
  * SDK가 설치되지 않은 경우 null 반환
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/infra/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/infra/lib/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=curated-release-notes.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curated-release-notes.test.d.ts","sourceRoot":"","sources":["../../src/tests/curated-release-notes.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,106 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { resolve } from 'node:path';
3
+ import { describe, expect, it } from 'vitest';
4
+ import { classifyCommits, createReleaseNotes, selectPreviousSemanticTag, } from '../tools/release/releaseNotes.js';
5
+ const CLASSIFICATION_CASES = [
6
+ ['feat: add packets', 'Added'],
7
+ ['fix(parser): reject drift', 'Fixed'],
8
+ ['docs: explain packets', 'Documentation'],
9
+ ['refactor: split compiler', 'Internal'],
10
+ ['chore: refresh fixtures', 'Internal'],
11
+ ['perf: cache parsing', 'Changed'],
12
+ ];
13
+ describe('selectPreviousSemanticTag', () => {
14
+ it('REQ-release-notes-001 uses the previous semantic version and ignores log tags', () => {
15
+ const tags = ['log-20260720', 'v3.1.9', 'v3.2.0', 'v3.2.1'];
16
+ expect(selectPreviousSemanticTag(tags, 'v3.2.1')).toBe('v3.2.0');
17
+ });
18
+ });
19
+ describe('REQ-release-notes-003 classifyCommits', () => {
20
+ it.each(CLASSIFICATION_CASES)('REQ-release-notes-003 places %s in %s', (subject, section) => {
21
+ const result = classifyCommits([{ subject, body: '' }]);
22
+ expect(result[section]).toEqual([subject.replace(/^[^:]+:\s*/, '')]);
23
+ });
24
+ it('puts breaking changes first and excludes merge and version commits', () => {
25
+ const result = classifyCommits([
26
+ { subject: 'feat!: replace packet schema', body: '' },
27
+ { subject: 'Merge pull request #45', body: '' },
28
+ { subject: '3.2.1', body: '' },
29
+ ]);
30
+ expect(result.Breaking).toEqual(['replace packet schema']);
31
+ expect(Object.values(result).flat()).not.toContain('Merge pull request #45');
32
+ expect(Object.values(result).flat()).not.toContain('3.2.1');
33
+ });
34
+ });
35
+ describe('createReleaseNotes', () => {
36
+ it('REQ-release-notes-002 includes the SPEC overview and every requirement', () => {
37
+ const spec = `# SPEC: Execution Packets
38
+
39
+ ## 1. Overview / Goal
40
+
41
+ Compile canonical specifications into deterministic execution packets.
42
+
43
+ ## 2. Requirements
44
+
45
+ | ID | Requirement | Done Criteria |
46
+ |----|-------------|---------------|
47
+ | REQ-packet-001 | Preserve every requirement | D1 |
48
+ | REQ-packet-002 | Reject stale packets | D2 |
49
+ `;
50
+ const notes = createReleaseNotes({
51
+ currentTag: 'v3.2.1',
52
+ previousTag: 'v3.2.0',
53
+ specs: [{ path: '.vibe/specs/execution-packet-compiler.md', content: spec }],
54
+ commits: [
55
+ { subject: 'feat: compile execution packets', body: '' },
56
+ { subject: 'fix: reject tampered evidence', body: '' },
57
+ ],
58
+ });
59
+ expect(notes).toContain('## Highlights');
60
+ expect(notes).toContain('Compile canonical specifications into deterministic execution packets.');
61
+ expect(notes).toContain('Preserve every requirement');
62
+ expect(notes).toContain('Reject stale packets');
63
+ expect(notes).toContain('## Added');
64
+ expect(notes).toContain('## Fixed');
65
+ expect(notes).toContain('## Verification');
66
+ expect(notes).toContain('`v3.2.0..v3.2.1`');
67
+ });
68
+ });
69
+ describe('release workflow', () => {
70
+ it('REQ-release-notes-004 checks out full history and publishes a generated notes file', () => {
71
+ const workflow = readFileSync(resolve('.github/workflows/release.yml'), 'utf8');
72
+ expect(workflow).toMatch(/fetch-depth:\s*0/);
73
+ expect(workflow).toContain('generate-release-notes');
74
+ expect(workflow).toContain('--notes-file');
75
+ expect(workflow).not.toContain('--generate-notes');
76
+ });
77
+ it('REQ-release-notes-006 preserves the build and full test gates', () => {
78
+ const workflow = readFileSync(resolve('.github/workflows/release.yml'), 'utf8');
79
+ expect(workflow).toContain('pnpm build');
80
+ expect(workflow).toContain('pnpm test -- --reporter=default');
81
+ });
82
+ });
83
+ describe('published release contract', () => {
84
+ it('REQ-release-notes-005 renders the required public sections', () => {
85
+ const notes = createReleaseNotes({
86
+ currentTag: 'v3.2.1',
87
+ previousTag: 'v3.2.0',
88
+ specs: [{ path: 'feature.md', content: '# SPEC: Feature\n\n## Overview\nUseful change.' }],
89
+ commits: [
90
+ { subject: 'feat: add capability', body: '' },
91
+ { subject: 'fix: correct behavior', body: '' },
92
+ ],
93
+ });
94
+ expect(notes).toContain('## Highlights');
95
+ expect(notes).toContain('## Added');
96
+ expect(notes).toContain('## Fixed');
97
+ expect(notes).toContain('## Verification');
98
+ });
99
+ });
100
+ describe('release notes CLI', () => {
101
+ it('excludes deleted specifications from the current tag lookup', () => {
102
+ const cli = readFileSync(resolve('src/cli/generate-release-notes.ts'), 'utf8');
103
+ expect(cli).toContain("'--diff-filter=AMR'");
104
+ });
105
+ });
106
+ //# sourceMappingURL=curated-release-notes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curated-release-notes.test.js","sourceRoot":"","sources":["../../src/tests/curated-release-notes.test.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare const CODE_QUALITY_METRICS: {
4
4
  maxCyclomaticComplexity: number;
5
5
  maxCognitiveComplexity: number;
6
6
  maxFunctionLines: number;
7
+ maxFileLines: number;
7
8
  maxNestingDepth: number;
8
9
  maxParameters: number;
9
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"validateCodeQuality.d.ts","sourceRoot":"","sources":["../../../src/tools/convention/validateCodeQuality.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAKvE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BhC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,cAqB3C,CAAC;AAmJF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CA8JpL"}
1
+ {"version":3,"file":"validateCodeQuality.d.ts","sourceRoot":"","sources":["../../../src/tools/convention/validateCodeQuality.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAKvE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BhC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,cAqB3C,CAAC;AAmJF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CA8JpL"}
@@ -6,7 +6,8 @@ export const CODE_QUALITY_METRICS = {
6
6
  COMPLEXITY: {
7
7
  maxCyclomaticComplexity: 10,
8
8
  maxCognitiveComplexity: 15,
9
- maxFunctionLines: 20,
9
+ maxFunctionLines: 50,
10
+ maxFileLines: 200,
10
11
  maxNestingDepth: 3,
11
12
  maxParameters: 5
12
13
  },
@@ -93,7 +94,7 @@ function validateSingleFile(code, validateType) {
93
94
  const lines = code.split('\n');
94
95
  const lineCount = lines.length;
95
96
  // Line count check
96
- if (lineCount > CODE_QUALITY_METRICS.COMPLEXITY.maxFunctionLines * 10) {
97
+ if (lineCount > CODE_QUALITY_METRICS.COMPLEXITY.maxFileLines) {
97
98
  score -= 10;
98
99
  issues++;
99
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validateCodeQuality.js","sourceRoot":"","sources":["../../../src/tools/convention/validateCodeQuality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateCodeQuality.js","sourceRoot":"","sources":["../../../src/tools/convention/validateCodeQuality.ts"],"names":[],"mappings":"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"}
@@ -43,8 +43,8 @@ export { MemoryManager } from '../infra/lib/MemoryManager.js';
43
43
  export { ProjectCache } from '../infra/lib/ProjectCache.js';
44
44
  export { CsvDataLoader, Bm25Engine, SearchService, DesignSystemGenerator, } from '../infra/lib/ui-ux/index.js';
45
45
  export type { SearchDomain, StackName, SearchResult, SearchResultItem, DesignSystem, DesignSystemColorPalette, DesignSystemTypography, DesignSystemStyle, DesignSystemLayout, DecisionRules, } from '../infra/lib/ui-ux/types.js';
46
- export { generateRequirementId, generateRequirementIds, validateRequirementId, checkDuplicateId, registerExistingId, registerExistingIds, extractFeatureFromId, extractNumberFromId, getIdsByFeature, getAllUsedIds, resetCounters, getCounterStatus, parsePRD, parsePRDFile, generateSpec, generateTraceabilityMatrix, formatMatrixAsMarkdown, formatMatrixAsHtml, } from './spec/index.js';
47
- export type { Requirement, ParsedPRD, PRDMetadata, SpecGeneratorOptions, GeneratedSpec, TraceItem, TraceabilityMatrix, TraceSummary, TraceMatrixOptions, } from './spec/index.js';
46
+ export { generateRequirementId, generateRequirementIds, validateRequirementId, checkDuplicateId, registerExistingId, registerExistingIds, extractFeatureFromId, extractNumberFromId, getIdsByFeature, getAllUsedIds, resetCounters, getCounterStatus, parsePRD, parsePRDFile, generateSpec, compileExecutionPacket, getHarnessProfile, validateExecutionPacket, writeExecutionPacket, generateTraceabilityMatrix, formatMatrixAsMarkdown, formatMatrixAsHtml, } from './spec/index.js';
47
+ export type { Requirement, ParsedPRD, PRDMetadata, SpecGeneratorOptions, GeneratedSpec, CompileExecutionPacketInput, CompileExecutionPacketResult, ExecutionPacket, ExecutionPacketFileInput, HarnessProfile, HarnessProfileName, PacketError, PacketErrorCode, ValidateExecutionPacketInput, ValidateExecutionPacketResult, WriteExecutionPacketResult, TraceItem, TraceabilityMatrix, TraceSummary, TraceMatrixOptions, } from './spec/index.js';
48
48
  export { LoopBreaker, LOOP_LIMITS } from '../infra/lib/LoopBreaker.js';
49
49
  export type { LoopEvent, LoopBreakResult, LoopCounters, LoopLimitOptions, } from '../infra/lib/LoopBreaker.js';
50
50
  export { DeprecationDetector } from '../infra/lib/evolution/DeprecationDetector.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,8 @@ generateRequirementId, generateRequirementIds, validateRequirementId, checkDupli
56
56
  parsePRD, parsePRDFile,
57
57
  // SPEC Generator
58
58
  generateSpec,
59
+ // Execution Packet Compiler
60
+ compileExecutionPacket, getHarnessProfile, validateExecutionPacket, writeExecutionPacket,
59
61
  // Traceability Matrix
60
62
  generateTraceabilityMatrix, formatMatrixAsMarkdown, formatMatrixAsHtml, } from './spec/index.js';
61
63
  // ─── Loop Breaker ───
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export interface ReleaseCommit {
2
+ subject: string;
3
+ body: string;
4
+ }
5
+ export interface ReleaseSpec {
6
+ path: string;
7
+ content: string;
8
+ }
9
+ export interface ReleaseNotesInput {
10
+ currentTag: string;
11
+ previousTag: string;
12
+ specs: ReleaseSpec[];
13
+ commits: ReleaseCommit[];
14
+ }
15
+ type ReleaseSection = 'Breaking' | 'Added' | 'Fixed' | 'Changed' | 'Documentation' | 'Internal';
16
+ export type ClassifiedCommits = Record<ReleaseSection, string[]>;
17
+ export declare function selectPreviousSemanticTag(tags: string[], currentTag: string): string;
18
+ export declare function classifyCommits(commits: ReleaseCommit[]): ClassifiedCommits;
19
+ export declare function createReleaseNotes(input: ReleaseNotesInput): string;
20
+ export {};
21
+ //# sourceMappingURL=releaseNotes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"releaseNotes.d.ts","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,KAAK,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;AAChG,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;AAmCjE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWpF;AAMD,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAa3E;AA4BD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAkBnE"}
@@ -0,0 +1,105 @@
1
+ const SEMANTIC_TAG = /^v(\d+)\.(\d+)\.(\d+)$/;
2
+ const VERSION_COMMIT = /^(?:v?\d+\.\d+\.\d+|chore(?:\(release\))?:\s*v?\d+\.\d+\.\d+)$/i;
3
+ const CONVENTIONAL_SUBJECT = /^([a-z]+)(?:\([^)]+\))?(!)?:\s*(.+)$/i;
4
+ const SECTION_ORDER = [
5
+ 'Breaking', 'Added', 'Fixed', 'Changed', 'Documentation', 'Internal',
6
+ ];
7
+ const TYPE_TO_SECTION = {
8
+ feat: 'Added',
9
+ fix: 'Fixed',
10
+ docs: 'Documentation',
11
+ refactor: 'Internal',
12
+ chore: 'Internal',
13
+ test: 'Internal',
14
+ ci: 'Internal',
15
+ build: 'Internal',
16
+ perf: 'Changed',
17
+ style: 'Changed',
18
+ };
19
+ function parseTag(tag) {
20
+ const match = SEMANTIC_TAG.exec(tag);
21
+ if (!match)
22
+ return undefined;
23
+ return [Number(match[1]), Number(match[2]), Number(match[3])];
24
+ }
25
+ function compareVersions(left, right) {
26
+ for (let index = 0; index < left.length; index += 1) {
27
+ const difference = left[index] - right[index];
28
+ if (difference !== 0)
29
+ return difference;
30
+ }
31
+ return 0;
32
+ }
33
+ export function selectPreviousSemanticTag(tags, currentTag) {
34
+ const current = parseTag(currentTag);
35
+ if (!current)
36
+ throw new Error(`Invalid release tag: ${currentTag}`);
37
+ const candidates = tags
38
+ .map((tag) => ({ tag, version: parseTag(tag) }))
39
+ .filter((item) => item.version !== undefined && compareVersions(item.version, current) < 0)
40
+ .sort((left, right) => compareVersions(right.version, left.version));
41
+ if (!candidates[0])
42
+ throw new Error(`No previous semantic tag found for ${currentTag}`);
43
+ return candidates[0].tag;
44
+ }
45
+ function emptySections() {
46
+ return { Breaking: [], Added: [], Fixed: [], Changed: [], Documentation: [], Internal: [] };
47
+ }
48
+ export function classifyCommits(commits) {
49
+ return commits.reduce((sections, commit) => {
50
+ if (commit.subject.startsWith('Merge ') || VERSION_COMMIT.test(commit.subject))
51
+ return sections;
52
+ const match = CONVENTIONAL_SUBJECT.exec(commit.subject);
53
+ if (!match) {
54
+ sections.Changed.push(commit.subject);
55
+ return sections;
56
+ }
57
+ const isBreaking = match[2] === '!' || /BREAKING[ -]CHANGE:/i.test(commit.body);
58
+ const section = isBreaking ? 'Breaking' : (TYPE_TO_SECTION[match[1].toLowerCase()] ?? 'Changed');
59
+ sections[section].push(match[3]);
60
+ return sections;
61
+ }, emptySections());
62
+ }
63
+ function extractSection(content, heading) {
64
+ const pattern = new RegExp(`^##\\s+[^\\n]*${heading}[^\\n]*\\n([\\s\\S]*?)(?=^##\\s+|(?![\\s\\S]))`, 'im');
65
+ return pattern.exec(content)?.[1]?.trim() ?? '';
66
+ }
67
+ function extractSpecHighlights(spec) {
68
+ const title = /^#\s+(?:SPEC:\s*)?(.+)$/m.exec(spec.content)?.[1] ?? spec.path;
69
+ const overview = extractSection(spec.content, 'Overview').split(/^###\s+/m)[0].trim();
70
+ const requirements = extractSection(spec.content, 'Requirements')
71
+ .split('\n')
72
+ .filter((line) => /^\|\s*REQ-[^|]+\|/.test(line))
73
+ .map((line) => line.split('|')[2]?.trim())
74
+ .filter((value) => Boolean(value));
75
+ return [`### ${title}`, overview, ...requirements.map((requirement) => `- ${requirement}`)]
76
+ .filter((value) => Boolean(value));
77
+ }
78
+ function renderCommitSections(sections) {
79
+ return SECTION_ORDER.flatMap((section) => {
80
+ const entries = sections[section];
81
+ return entries.length > 0
82
+ ? [`## ${section}`, ...entries.map((entry) => `- ${entry}`)]
83
+ : [];
84
+ });
85
+ }
86
+ export function createReleaseNotes(input) {
87
+ const sections = classifyCommits(input.commits);
88
+ const highlights = input.specs.flatMap(extractSpecHighlights);
89
+ const commitSections = renderCommitSections(sections);
90
+ if (highlights.length === 0 && commitSections.length === 0) {
91
+ throw new Error(`No release changes found in ${input.previousTag}..${input.currentTag}`);
92
+ }
93
+ return [
94
+ `# ${input.currentTag}`,
95
+ '## Highlights',
96
+ ...highlights,
97
+ ...commitSections,
98
+ '## Verification',
99
+ `- Release range: \`${input.previousTag}..${input.currentTag}\``,
100
+ `- Included commits: ${input.commits.length}`,
101
+ '- Generated deterministically from repository history and specifications.',
102
+ '',
103
+ ].join('\n\n');
104
+ }
105
+ //# sourceMappingURL=releaseNotes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"releaseNotes.js","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"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"}