@lssm/bundle.contractspec-workspace 0.0.0-canary-20251217080011 → 0.0.0-canary-20251219202229

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 (502) hide show
  1. package/LICENSE +21 -0
  2. package/dist/adapters/ai.d.ts +7 -8
  3. package/dist/adapters/ai.d.ts.map +1 -0
  4. package/dist/adapters/factory.d.ts +20 -21
  5. package/dist/adapters/factory.d.ts.map +1 -0
  6. package/dist/adapters/fs.d.ts +6 -7
  7. package/dist/adapters/fs.d.ts.map +1 -0
  8. package/dist/adapters/git.d.ts +6 -7
  9. package/dist/adapters/git.d.ts.map +1 -0
  10. package/dist/adapters/index.d.ts +11 -0
  11. package/dist/adapters/index.d.ts.map +1 -0
  12. package/dist/adapters/logger.d.ts +9 -8
  13. package/dist/adapters/logger.d.ts.map +1 -0
  14. package/dist/adapters/watcher.d.ts +6 -7
  15. package/dist/adapters/watcher.d.ts.map +1 -0
  16. package/dist/adapters/workspace.d.ts +37 -39
  17. package/dist/adapters/workspace.d.ts.map +1 -0
  18. package/dist/ai/agents/claude-code-agent.d.ts +20 -20
  19. package/dist/ai/agents/claude-code-agent.d.ts.map +1 -0
  20. package/dist/ai/agents/cursor-agent.d.ts +66 -66
  21. package/dist/ai/agents/cursor-agent.d.ts.map +1 -0
  22. package/dist/ai/agents/index.d.ts +10 -0
  23. package/dist/ai/agents/index.d.ts.map +1 -0
  24. package/dist/ai/agents/openai-codex-agent.d.ts +20 -20
  25. package/dist/ai/agents/openai-codex-agent.d.ts.map +1 -0
  26. package/dist/ai/agents/orchestrator.d.ts +48 -48
  27. package/dist/ai/agents/orchestrator.d.ts.map +1 -0
  28. package/dist/ai/agents/simple-agent.d.ts +15 -15
  29. package/dist/ai/agents/simple-agent.d.ts.map +1 -0
  30. package/dist/ai/agents/types.d.ts +26 -28
  31. package/dist/ai/agents/types.d.ts.map +1 -0
  32. package/dist/ai/client.d.ts +74 -78
  33. package/dist/ai/client.d.ts.map +1 -0
  34. package/dist/ai/index.d.ts +8 -16
  35. package/dist/ai/index.d.ts.map +1 -0
  36. package/dist/ai/prompts/code-generation.d.ts +6 -10
  37. package/dist/ai/prompts/code-generation.d.ts.map +1 -0
  38. package/dist/ai/prompts/index.d.ts +6 -9
  39. package/dist/ai/prompts/index.d.ts.map +1 -0
  40. package/dist/ai/prompts/spec-creation.d.ts +7 -13
  41. package/dist/ai/prompts/spec-creation.d.ts.map +1 -0
  42. package/dist/ai/providers.d.ts +13 -12
  43. package/dist/ai/providers.d.ts.map +1 -0
  44. package/dist/formatters/index.d.ts +7 -10
  45. package/dist/formatters/index.d.ts.map +1 -0
  46. package/dist/formatters/json.d.ts +65 -63
  47. package/dist/formatters/json.d.ts.map +1 -0
  48. package/dist/formatters/sarif.d.ts +77 -72
  49. package/dist/formatters/sarif.d.ts.map +1 -0
  50. package/dist/formatters/text.d.ts +21 -19
  51. package/dist/formatters/text.d.ts.map +1 -0
  52. package/dist/index.d.ts +14 -66
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +4531 -81
  55. package/dist/ports/ai.d.ts +41 -38
  56. package/dist/ports/ai.d.ts.map +1 -0
  57. package/dist/ports/fs.d.ts +63 -65
  58. package/dist/ports/fs.d.ts.map +1 -0
  59. package/dist/ports/git.d.ts +19 -21
  60. package/dist/ports/git.d.ts.map +1 -0
  61. package/dist/ports/index.d.ts +10 -0
  62. package/dist/ports/index.d.ts.map +1 -0
  63. package/dist/ports/logger.d.ts +58 -65
  64. package/dist/ports/logger.d.ts.map +1 -0
  65. package/dist/ports/watcher.d.ts +24 -26
  66. package/dist/ports/watcher.d.ts.map +1 -0
  67. package/dist/services/agent-guide/adapters/claude-code.d.ts +30 -28
  68. package/dist/services/agent-guide/adapters/claude-code.d.ts.map +1 -0
  69. package/dist/services/agent-guide/adapters/cursor-cli.d.ts +34 -32
  70. package/dist/services/agent-guide/adapters/cursor-cli.d.ts.map +1 -0
  71. package/dist/services/agent-guide/adapters/generic-mcp.d.ts +47 -45
  72. package/dist/services/agent-guide/adapters/generic-mcp.d.ts.map +1 -0
  73. package/dist/services/agent-guide/adapters/index.d.ts +15 -13
  74. package/dist/services/agent-guide/adapters/index.d.ts.map +1 -0
  75. package/dist/services/agent-guide/agent-guide-service.d.ts +48 -45
  76. package/dist/services/agent-guide/agent-guide-service.d.ts.map +1 -0
  77. package/dist/services/agent-guide/index.d.ts +12 -0
  78. package/dist/services/agent-guide/index.d.ts.map +1 -0
  79. package/dist/services/agent-guide/types.d.ts +46 -47
  80. package/dist/services/agent-guide/types.d.ts.map +1 -0
  81. package/dist/services/build.d.ts +41 -39
  82. package/dist/services/build.d.ts.map +1 -0
  83. package/dist/services/ci-check/ci-check-service.d.ts +13 -11
  84. package/dist/services/ci-check/ci-check-service.d.ts.map +1 -0
  85. package/dist/services/ci-check/index.d.ts +6 -0
  86. package/dist/services/ci-check/index.d.ts.map +1 -0
  87. package/dist/services/ci-check/types.d.ts +100 -102
  88. package/dist/services/ci-check/types.d.ts.map +1 -0
  89. package/dist/services/clean.d.ts +38 -37
  90. package/dist/services/clean.d.ts.map +1 -0
  91. package/dist/services/config.d.ts +14 -15
  92. package/dist/services/config.d.ts.map +1 -0
  93. package/dist/services/deps.d.ts +29 -30
  94. package/dist/services/deps.d.ts.map +1 -0
  95. package/dist/services/diff.d.ts +20 -21
  96. package/dist/services/diff.d.ts.map +1 -0
  97. package/dist/services/doctor/checks/ai.d.ts +10 -0
  98. package/dist/services/doctor/checks/ai.d.ts.map +1 -0
  99. package/dist/services/doctor/checks/cli.d.ts +10 -0
  100. package/dist/services/doctor/checks/cli.d.ts.map +1 -0
  101. package/dist/services/doctor/checks/config.d.ts +10 -0
  102. package/dist/services/doctor/checks/config.d.ts.map +1 -0
  103. package/dist/services/doctor/checks/deps.d.ts +10 -0
  104. package/dist/services/doctor/checks/deps.d.ts.map +1 -0
  105. package/dist/services/doctor/checks/index.d.ts +10 -0
  106. package/dist/services/doctor/checks/index.d.ts.map +1 -0
  107. package/dist/services/doctor/checks/mcp.d.ts +10 -0
  108. package/dist/services/doctor/checks/mcp.d.ts.map +1 -0
  109. package/dist/services/doctor/checks/workspace.d.ts +12 -0
  110. package/dist/services/doctor/checks/workspace.d.ts.map +1 -0
  111. package/dist/services/doctor/doctor-service.d.ts +14 -13
  112. package/dist/services/doctor/doctor-service.d.ts.map +1 -0
  113. package/dist/services/doctor/index.d.ts +8 -0
  114. package/dist/services/doctor/index.d.ts.map +1 -0
  115. package/dist/services/doctor/types.d.ts +70 -72
  116. package/dist/services/doctor/types.d.ts.map +1 -0
  117. package/dist/services/implementation/discovery.d.ts +16 -14
  118. package/dist/services/implementation/discovery.d.ts.map +1 -0
  119. package/dist/services/implementation/index.d.ts +7 -0
  120. package/dist/services/implementation/index.d.ts.map +1 -0
  121. package/dist/services/implementation/resolver.d.ts +31 -27
  122. package/dist/services/implementation/resolver.d.ts.map +1 -0
  123. package/dist/services/implementation/types.d.ts +55 -56
  124. package/dist/services/implementation/types.d.ts.map +1 -0
  125. package/dist/services/index.d.ts +28 -0
  126. package/dist/services/index.d.ts.map +1 -0
  127. package/dist/services/integrity-diagram.d.ts +29 -25
  128. package/dist/services/integrity-diagram.d.ts.map +1 -0
  129. package/dist/services/integrity.d.ts +100 -96
  130. package/dist/services/integrity.d.ts.map +1 -0
  131. package/dist/services/list.d.ts +18 -19
  132. package/dist/services/list.d.ts.map +1 -0
  133. package/dist/services/openapi/export-service.d.ts +39 -40
  134. package/dist/services/openapi/export-service.d.ts.map +1 -0
  135. package/dist/services/openapi/import-service.d.ts +10 -11
  136. package/dist/services/openapi/import-service.d.ts.map +1 -0
  137. package/dist/services/openapi/index.d.ts +10 -0
  138. package/dist/services/openapi/index.d.ts.map +1 -0
  139. package/dist/services/openapi/sync-service.d.ts +12 -13
  140. package/dist/services/openapi/sync-service.d.ts.map +1 -0
  141. package/dist/services/openapi/types.d.ts +141 -143
  142. package/dist/services/openapi/types.d.ts.map +1 -0
  143. package/dist/services/openapi/validate-service.d.ts +10 -11
  144. package/dist/services/openapi/validate-service.d.ts.map +1 -0
  145. package/dist/services/regenerator.d.ts +18 -16
  146. package/dist/services/regenerator.d.ts.map +1 -0
  147. package/dist/services/registry.d.ts +25 -26
  148. package/dist/services/registry.d.ts.map +1 -0
  149. package/dist/services/setup/config-generators.d.ts +14 -13
  150. package/dist/services/setup/config-generators.d.ts.map +1 -0
  151. package/dist/services/setup/file-merger.d.ts +5 -7
  152. package/dist/services/setup/file-merger.d.ts.map +1 -0
  153. package/dist/services/setup/index.d.ts +10 -0
  154. package/dist/services/setup/index.d.ts.map +1 -0
  155. package/dist/services/setup/setup-service.d.ts +10 -8
  156. package/dist/services/setup/setup-service.d.ts.map +1 -0
  157. package/dist/services/setup/targets/agents-md.d.ts +12 -0
  158. package/dist/services/setup/targets/agents-md.d.ts.map +1 -0
  159. package/dist/services/setup/targets/cli-config.d.ts +12 -0
  160. package/dist/services/setup/targets/cli-config.d.ts.map +1 -0
  161. package/dist/services/setup/targets/cursor-rules.d.ts +10 -0
  162. package/dist/services/setup/targets/cursor-rules.d.ts.map +1 -0
  163. package/dist/services/setup/targets/index.d.ts +10 -0
  164. package/dist/services/setup/targets/index.d.ts.map +1 -0
  165. package/dist/services/setup/targets/mcp-claude.d.ts +11 -0
  166. package/dist/services/setup/targets/mcp-claude.d.ts.map +1 -0
  167. package/dist/services/setup/targets/mcp-cursor.d.ts +10 -0
  168. package/dist/services/setup/targets/mcp-cursor.d.ts.map +1 -0
  169. package/dist/services/setup/targets/vscode-settings.d.ts +13 -0
  170. package/dist/services/setup/targets/vscode-settings.d.ts.map +1 -0
  171. package/dist/services/setup/types.d.ts +51 -53
  172. package/dist/services/setup/types.d.ts.map +1 -0
  173. package/dist/services/sync.d.ts +37 -35
  174. package/dist/services/sync.d.ts.map +1 -0
  175. package/dist/services/test.d.ts +15 -13
  176. package/dist/services/test.d.ts.map +1 -0
  177. package/dist/services/validate-implementation.d.ts +30 -28
  178. package/dist/services/validate-implementation.d.ts.map +1 -0
  179. package/dist/services/validate.d.ts +23 -24
  180. package/dist/services/validate.d.ts.map +1 -0
  181. package/dist/services/verification-cache/adapters/filesystem.d.ts +40 -38
  182. package/dist/services/verification-cache/adapters/filesystem.d.ts.map +1 -0
  183. package/dist/services/verification-cache/adapters/in-memory.d.ts +21 -19
  184. package/dist/services/verification-cache/adapters/in-memory.d.ts.map +1 -0
  185. package/dist/services/verification-cache/adapters/index.d.ts +7 -0
  186. package/dist/services/verification-cache/adapters/index.d.ts.map +1 -0
  187. package/dist/services/verification-cache/adapters/workspace-state.d.ts +39 -37
  188. package/dist/services/verification-cache/adapters/workspace-state.d.ts.map +1 -0
  189. package/dist/services/verification-cache/cache-service.d.ts +55 -53
  190. package/dist/services/verification-cache/cache-service.d.ts.map +1 -0
  191. package/dist/services/verification-cache/index.d.ts +7 -0
  192. package/dist/services/verification-cache/index.d.ts.map +1 -0
  193. package/dist/services/verification-cache/types.d.ts +84 -85
  194. package/dist/services/verification-cache/types.d.ts.map +1 -0
  195. package/dist/services/verify/ai-verifier.d.ts +13 -11
  196. package/dist/services/verify/ai-verifier.d.ts.map +1 -0
  197. package/dist/services/verify/behavior-verifier.d.ts +10 -8
  198. package/dist/services/verify/behavior-verifier.d.ts.map +1 -0
  199. package/dist/services/verify/index.d.ts +18 -0
  200. package/dist/services/verify/index.d.ts.map +1 -0
  201. package/dist/services/verify/structure-verifier.d.ts +12 -8
  202. package/dist/services/verify/structure-verifier.d.ts.map +1 -0
  203. package/dist/services/verify/types.d.ts +114 -115
  204. package/dist/services/verify/types.d.ts.map +1 -0
  205. package/dist/services/verify/verify-service.d.ts +51 -49
  206. package/dist/services/verify/verify-service.d.ts.map +1 -0
  207. package/dist/services/watch.d.ts +22 -21
  208. package/dist/services/watch.d.ts.map +1 -0
  209. package/dist/services/workspace-info.d.ts +40 -37
  210. package/dist/services/workspace-info.d.ts.map +1 -0
  211. package/dist/templates/app-config.template.d.ts +3 -6
  212. package/dist/templates/app-config.template.d.ts.map +1 -0
  213. package/dist/templates/data-view.template.d.ts +3 -6
  214. package/dist/templates/data-view.template.d.ts.map +1 -0
  215. package/dist/templates/event.template.d.ts +3 -7
  216. package/dist/templates/event.template.d.ts.map +1 -0
  217. package/dist/templates/experiment.template.d.ts +3 -6
  218. package/dist/templates/experiment.template.d.ts.map +1 -0
  219. package/dist/templates/handler.template.d.ts +4 -6
  220. package/dist/templates/handler.template.d.ts.map +1 -0
  221. package/dist/templates/index.d.ts +17 -20
  222. package/dist/templates/index.d.ts.map +1 -0
  223. package/dist/templates/integration.template.d.ts +3 -6
  224. package/dist/templates/integration.template.d.ts.map +1 -0
  225. package/dist/templates/knowledge.template.d.ts +3 -6
  226. package/dist/templates/knowledge.template.d.ts.map +1 -0
  227. package/dist/templates/migration.template.d.ts +3 -6
  228. package/dist/templates/migration.template.d.ts.map +1 -0
  229. package/dist/templates/operation.template.d.ts +3 -7
  230. package/dist/templates/operation.template.d.ts.map +1 -0
  231. package/dist/templates/operation.template.test.d.ts +2 -0
  232. package/dist/templates/operation.template.test.d.ts.map +1 -0
  233. package/dist/templates/presentation.template.d.ts +3 -7
  234. package/dist/templates/presentation.template.d.ts.map +1 -0
  235. package/dist/templates/telemetry.template.d.ts +3 -6
  236. package/dist/templates/telemetry.template.d.ts.map +1 -0
  237. package/dist/templates/workflow-runner.template.d.ts +7 -13
  238. package/dist/templates/workflow-runner.template.d.ts.map +1 -0
  239. package/dist/templates/workflow.template.d.ts +3 -6
  240. package/dist/templates/workflow.template.d.ts.map +1 -0
  241. package/dist/types/config.d.ts +18 -20
  242. package/dist/types/config.d.ts.map +1 -0
  243. package/dist/types/index.d.ts +5 -0
  244. package/dist/types/index.d.ts.map +1 -0
  245. package/dist/types.d.ts +338 -311
  246. package/dist/types.d.ts.map +1 -0
  247. package/package.json +16 -15
  248. package/dist/_virtual/rolldown_runtime.js +0 -22
  249. package/dist/adapters/ai.js +0 -82
  250. package/dist/adapters/factory.js +0 -36
  251. package/dist/adapters/fs.js +0 -118
  252. package/dist/adapters/git.js +0 -54
  253. package/dist/adapters/index.js +0 -7
  254. package/dist/adapters/logger.js +0 -80
  255. package/dist/adapters/watcher.js +0 -69
  256. package/dist/adapters/workspace.js +0 -190
  257. package/dist/ai/agents/claude-code-agent.js +0 -181
  258. package/dist/ai/agents/cursor-agent.js +0 -437
  259. package/dist/ai/agents/index.js +0 -5
  260. package/dist/ai/agents/openai-codex-agent.js +0 -166
  261. package/dist/ai/agents/orchestrator.js +0 -142
  262. package/dist/ai/agents/simple-agent.js +0 -91
  263. package/dist/ai/client.js +0 -162
  264. package/dist/ai/index.js +0 -27
  265. package/dist/ai/prompts/code-generation.js +0 -142
  266. package/dist/ai/prompts/index.js +0 -12
  267. package/dist/ai/prompts/spec-creation.js +0 -110
  268. package/dist/ai/providers.js +0 -40
  269. package/dist/formatters/index.js +0 -18
  270. package/dist/formatters/json.js +0 -71
  271. package/dist/formatters/sarif.js +0 -163
  272. package/dist/formatters/text.js +0 -208
  273. package/dist/libs/ai-providers/dist/factory.js +0 -154
  274. package/dist/libs/ai-providers/dist/index.js +0 -4
  275. package/dist/libs/ai-providers/dist/legacy.js +0 -72
  276. package/dist/libs/ai-providers/dist/models.js +0 -287
  277. package/dist/libs/ai-providers/dist/validation.js +0 -1
  278. package/dist/libs/contracts/dist/capabilities/openbanking.js +0 -88
  279. package/dist/libs/contracts/dist/client/index.js +0 -5
  280. package/dist/libs/contracts/dist/client/react/feature-render.js +0 -2
  281. package/dist/libs/contracts/dist/client/react/form-render.js +0 -4
  282. package/dist/libs/contracts/dist/client/react/index.js +0 -4
  283. package/dist/libs/contracts/dist/contract-registry/index.js +0 -1
  284. package/dist/libs/contracts/dist/contract-registry/schemas.js +0 -60
  285. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  286. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -16
  287. package/dist/libs/contracts/dist/docs/index.js +0 -29
  288. package/dist/libs/contracts/dist/docs/presentations.js +0 -71
  289. package/dist/libs/contracts/dist/docs/registry.js +0 -44
  290. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  291. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  292. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  293. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  294. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  295. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -80
  296. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -57
  297. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -16
  298. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -357
  299. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -37
  300. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -16
  301. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +0 -20
  302. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -48
  303. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -79
  304. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -84
  305. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -45
  306. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -67
  307. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -40
  308. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -69
  309. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -47
  310. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -62
  311. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -155
  312. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -20
  313. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -101
  314. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +0 -20
  315. package/dist/libs/contracts/dist/events.js +0 -8
  316. package/dist/libs/contracts/dist/experiments/evaluator.js +0 -1
  317. package/dist/libs/contracts/dist/index.js +0 -72
  318. package/dist/libs/contracts/dist/install.js +0 -2
  319. package/dist/libs/contracts/dist/integrations/contracts.js +0 -377
  320. package/dist/libs/contracts/dist/integrations/index.js +0 -18
  321. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -228
  322. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +0 -159
  323. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +0 -3
  324. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -210
  325. package/dist/libs/contracts/dist/integrations/openbanking/models.js +0 -242
  326. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +0 -13
  327. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +0 -52
  328. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +0 -75
  329. package/dist/libs/contracts/dist/integrations/providers/gmail.js +0 -87
  330. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +0 -66
  331. package/dist/libs/contracts/dist/integrations/providers/index.js +0 -11
  332. package/dist/libs/contracts/dist/integrations/providers/mistral.js +0 -68
  333. package/dist/libs/contracts/dist/integrations/providers/postmark.js +0 -68
  334. package/dist/libs/contracts/dist/integrations/providers/powens.js +0 -116
  335. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +0 -73
  336. package/dist/libs/contracts/dist/integrations/providers/registry.js +0 -10
  337. package/dist/libs/contracts/dist/integrations/providers/stripe.js +0 -83
  338. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +0 -61
  339. package/dist/libs/contracts/dist/jsonschema.js +0 -24
  340. package/dist/libs/contracts/dist/knowledge/contracts.js +0 -306
  341. package/dist/libs/contracts/dist/knowledge/index.js +0 -7
  342. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +0 -34
  343. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +0 -34
  344. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +0 -38
  345. package/dist/libs/contracts/dist/knowledge/spaces/index.js +0 -6
  346. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +0 -34
  347. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +0 -37
  348. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -34
  349. package/dist/libs/contracts/dist/llm/exporters.js +0 -352
  350. package/dist/libs/contracts/dist/llm/index.js +0 -2
  351. package/dist/libs/contracts/dist/llm/prompts.js +0 -211
  352. package/dist/libs/contracts/dist/onboarding-base.js +0 -196
  353. package/dist/libs/contracts/dist/openapi.js +0 -75
  354. package/dist/libs/contracts/dist/ownership.js +0 -21
  355. package/dist/libs/contracts/dist/presentations.js +0 -1
  356. package/dist/libs/contracts/dist/presentations.v2.js +0 -11
  357. package/dist/libs/contracts/dist/prompt.js +0 -1
  358. package/dist/libs/contracts/dist/promptRegistry.js +0 -1
  359. package/dist/libs/contracts/dist/regenerator/index.js +0 -2
  360. package/dist/libs/contracts/dist/regenerator/service.js +0 -92
  361. package/dist/libs/contracts/dist/regenerator/utils.js +0 -51
  362. package/dist/libs/contracts/dist/registry.js +0 -208
  363. package/dist/libs/contracts/dist/resources.js +0 -1
  364. package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
  365. package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
  366. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  367. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -34
  368. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  369. package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
  370. package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
  371. package/dist/libs/contracts/dist/schema/dist/index.js +0 -6
  372. package/dist/libs/contracts/dist/server/graphql-pothos.js +0 -6
  373. package/dist/libs/contracts/dist/server/index.js +0 -8
  374. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +0 -4
  375. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +0 -2
  376. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +0 -1
  377. package/dist/libs/contracts/dist/server/mcp/registerResources.js +0 -2
  378. package/dist/libs/contracts/dist/server/mcp/registerTools.js +0 -1
  379. package/dist/libs/contracts/dist/server/provider-mcp.js +0 -1
  380. package/dist/libs/contracts/dist/server/rest-elysia.js +0 -1
  381. package/dist/libs/contracts/dist/server/rest-express.js +0 -1
  382. package/dist/libs/contracts/dist/server/rest-generic.js +0 -1
  383. package/dist/libs/contracts/dist/server/rest-next-app.js +0 -1
  384. package/dist/libs/contracts/dist/server/rest-next-pages.js +0 -1
  385. package/dist/libs/contracts/dist/spec.js +0 -35
  386. package/dist/libs/contracts/dist/telemetry/index.js +0 -1
  387. package/dist/libs/contracts/dist/telemetry/tracker.js +0 -1
  388. package/dist/libs/contracts/dist/tests/index.js +0 -1
  389. package/dist/libs/contracts/dist/tests/runner.js +0 -150
  390. package/dist/libs/contracts/dist/workflow/index.js +0 -1
  391. package/dist/libs/contracts/dist/workflow/runner.js +0 -1
  392. package/dist/libs/contracts-transformers/dist/common/utils.js +0 -47
  393. package/dist/libs/contracts-transformers/dist/openapi/exporter.js +0 -1
  394. package/dist/libs/contracts-transformers/dist/openapi/importer.js +0 -255
  395. package/dist/libs/contracts-transformers/dist/openapi/index.js +0 -4
  396. package/dist/libs/contracts-transformers/dist/openapi/parser.js +0 -231
  397. package/dist/libs/contracts-transformers/dist/openapi/schema-converter.js +0 -201
  398. package/dist/modules/contractspec-workspace/dist/ai/code-generation.js +0 -137
  399. package/dist/modules/contractspec-workspace/dist/ai/spec-creation.js +0 -101
  400. package/dist/modules/contractspec-workspace/dist/analysis/deps/graph.js +0 -84
  401. package/dist/modules/contractspec-workspace/dist/analysis/deps/parse-imports.js +0 -30
  402. package/dist/modules/contractspec-workspace/dist/analysis/diff/semantic.js +0 -96
  403. package/dist/modules/contractspec-workspace/dist/analysis/feature-scan.js +0 -151
  404. package/dist/modules/contractspec-workspace/dist/analysis/spec-scan.js +0 -344
  405. package/dist/modules/contractspec-workspace/dist/analysis/validate/spec-structure.js +0 -122
  406. package/dist/modules/contractspec-workspace/dist/templates/app-config.js +0 -105
  407. package/dist/modules/contractspec-workspace/dist/templates/data-view.js +0 -68
  408. package/dist/modules/contractspec-workspace/dist/templates/event.js +0 -38
  409. package/dist/modules/contractspec-workspace/dist/templates/experiment.js +0 -87
  410. package/dist/modules/contractspec-workspace/dist/templates/handler.js +0 -95
  411. package/dist/modules/contractspec-workspace/dist/templates/integration-utils.js +0 -104
  412. package/dist/modules/contractspec-workspace/dist/templates/integration.js +0 -62
  413. package/dist/modules/contractspec-workspace/dist/templates/knowledge.js +0 -68
  414. package/dist/modules/contractspec-workspace/dist/templates/migration.js +0 -60
  415. package/dist/modules/contractspec-workspace/dist/templates/operation.js +0 -100
  416. package/dist/modules/contractspec-workspace/dist/templates/presentation.js +0 -78
  417. package/dist/modules/contractspec-workspace/dist/templates/telemetry.js +0 -89
  418. package/dist/modules/contractspec-workspace/dist/templates/utils.js +0 -38
  419. package/dist/modules/contractspec-workspace/dist/templates/workflow-runner.js +0 -48
  420. package/dist/modules/contractspec-workspace/dist/templates/workflow.js +0 -67
  421. package/dist/modules/contractspec-workspace/dist/types/generation-types.js +0 -20
  422. package/dist/services/agent-guide/adapters/claude-code.js +0 -144
  423. package/dist/services/agent-guide/adapters/cursor-cli.js +0 -135
  424. package/dist/services/agent-guide/adapters/generic-mcp.js +0 -159
  425. package/dist/services/agent-guide/adapters/index.js +0 -30
  426. package/dist/services/agent-guide/agent-guide-service.js +0 -148
  427. package/dist/services/agent-guide/index.js +0 -5
  428. package/dist/services/build.js +0 -140
  429. package/dist/services/ci-check/ci-check-service.js +0 -393
  430. package/dist/services/ci-check/index.js +0 -2
  431. package/dist/services/ci-check/types.js +0 -28
  432. package/dist/services/clean.js +0 -71
  433. package/dist/services/config.js +0 -76
  434. package/dist/services/deps.js +0 -62
  435. package/dist/services/diff.js +0 -33
  436. package/dist/services/doctor/checks/ai.js +0 -118
  437. package/dist/services/doctor/checks/cli.js +0 -146
  438. package/dist/services/doctor/checks/config.js +0 -170
  439. package/dist/services/doctor/checks/deps.js +0 -180
  440. package/dist/services/doctor/checks/index.js +0 -6
  441. package/dist/services/doctor/checks/mcp.js +0 -144
  442. package/dist/services/doctor/checks/workspace.js +0 -243
  443. package/dist/services/doctor/doctor-service.js +0 -115
  444. package/dist/services/doctor/index.js +0 -2
  445. package/dist/services/doctor/types.js +0 -26
  446. package/dist/services/implementation/discovery.js +0 -143
  447. package/dist/services/implementation/index.js +0 -2
  448. package/dist/services/implementation/resolver.js +0 -223
  449. package/dist/services/index.js +0 -53
  450. package/dist/services/integrity-diagram.js +0 -274
  451. package/dist/services/integrity.js +0 -272
  452. package/dist/services/list.js +0 -35
  453. package/dist/services/openapi/export-service.js +0 -51
  454. package/dist/services/openapi/import-service.js +0 -75
  455. package/dist/services/openapi/index.js +0 -4
  456. package/dist/services/openapi/sync-service.js +0 -121
  457. package/dist/services/openapi/validate-service.js +0 -130
  458. package/dist/services/regenerator.js +0 -23
  459. package/dist/services/registry.js +0 -73
  460. package/dist/services/setup/config-generators.js +0 -237
  461. package/dist/services/setup/file-merger.js +0 -60
  462. package/dist/services/setup/index.js +0 -4
  463. package/dist/services/setup/setup-service.js +0 -95
  464. package/dist/services/setup/targets/agents-md.js +0 -46
  465. package/dist/services/setup/targets/cli-config.js +0 -59
  466. package/dist/services/setup/targets/cursor-rules.js +0 -47
  467. package/dist/services/setup/targets/mcp-claude.js +0 -59
  468. package/dist/services/setup/targets/mcp-cursor.js +0 -58
  469. package/dist/services/setup/targets/vscode-settings.js +0 -62
  470. package/dist/services/setup/types.js +0 -26
  471. package/dist/services/sync.js +0 -62
  472. package/dist/services/test.js +0 -30
  473. package/dist/services/validate-implementation.js +0 -69
  474. package/dist/services/validate.js +0 -47
  475. package/dist/services/verification-cache/adapters/filesystem.js +0 -121
  476. package/dist/services/verification-cache/adapters/in-memory.js +0 -45
  477. package/dist/services/verification-cache/adapters/index.js +0 -3
  478. package/dist/services/verification-cache/adapters/workspace-state.js +0 -90
  479. package/dist/services/verification-cache/cache-service.js +0 -255
  480. package/dist/services/verification-cache/index.js +0 -6
  481. package/dist/services/verification-cache/types.js +0 -15
  482. package/dist/services/verify/ai-verifier.js +0 -403
  483. package/dist/services/verify/behavior-verifier.js +0 -185
  484. package/dist/services/verify/index.js +0 -4
  485. package/dist/services/verify/structure-verifier.js +0 -195
  486. package/dist/services/verify/verify-service.js +0 -203
  487. package/dist/services/watch.js +0 -31
  488. package/dist/services/workspace-info.js +0 -102
  489. package/dist/templates/app-config.template.js +0 -106
  490. package/dist/templates/data-view.template.js +0 -69
  491. package/dist/templates/event.template.js +0 -39
  492. package/dist/templates/experiment.template.js +0 -88
  493. package/dist/templates/handler.template.js +0 -99
  494. package/dist/templates/index.js +0 -36
  495. package/dist/templates/integration.template.js +0 -159
  496. package/dist/templates/knowledge.template.js +0 -74
  497. package/dist/templates/migration.template.js +0 -61
  498. package/dist/templates/operation.template.js +0 -104
  499. package/dist/templates/presentation.template.js +0 -79
  500. package/dist/templates/telemetry.template.js +0 -90
  501. package/dist/templates/workflow-runner.template.js +0 -49
  502. package/dist/templates/workflow.template.js +0 -68
@@ -1,159 +0,0 @@
1
- import { AGENT_SYSTEM_PROMPTS } from "../../../libs/contracts/dist/llm/prompts.js";
2
- import "../../../libs/contracts/dist/llm/index.js";
3
-
4
- //#region src/services/agent-guide/adapters/generic-mcp.ts
5
- /**
6
- * Generic MCP adapter implementation.
7
- * Works with any MCP-compatible agent (Cline, Aider, etc.).
8
- */
9
- var GenericMCPAdapter = class {
10
- agentType = "generic-mcp";
11
- /**
12
- * Format an implementation plan for generic MCP agents.
13
- * Uses a standard markdown format that works across different agents.
14
- */
15
- formatPlan(plan) {
16
- const lines = [];
17
- lines.push(`# Implementation Task: ${plan.target.name}.v${plan.target.version}`);
18
- lines.push("");
19
- lines.push("## Task");
20
- lines.push("");
21
- lines.push(`Implement the ${plan.target.type} \`${plan.target.name}\` version ${plan.target.version}.`);
22
- lines.push("");
23
- lines.push("## Context");
24
- lines.push("");
25
- lines.push(`**Goal:** ${plan.context.goal}`);
26
- lines.push("");
27
- lines.push(`**Description:** ${plan.context.description}`);
28
- lines.push("");
29
- if (plan.context.background) {
30
- lines.push("**Background:**");
31
- lines.push("");
32
- lines.push(plan.context.background);
33
- lines.push("");
34
- }
35
- lines.push("## Specification");
36
- lines.push("");
37
- lines.push(plan.specMarkdown);
38
- lines.push("");
39
- if (plan.fileStructure.length > 0) {
40
- lines.push("## Files");
41
- lines.push("");
42
- lines.push("| Path | Action | Purpose |");
43
- lines.push("|------|--------|---------|");
44
- for (const file of plan.fileStructure) lines.push(`| \`${file.path}\` | ${file.type} | ${file.purpose} |`);
45
- lines.push("");
46
- }
47
- lines.push("## Implementation Steps");
48
- lines.push("");
49
- for (const step of plan.steps) {
50
- lines.push(`### Step ${step.order}: ${step.title}`);
51
- lines.push("");
52
- lines.push(step.description);
53
- lines.push("");
54
- if (step.acceptanceCriteria.length > 0) {
55
- lines.push("**Acceptance Criteria:**");
56
- lines.push("");
57
- for (const criteria of step.acceptanceCriteria) lines.push(`- ${criteria}`);
58
- lines.push("");
59
- }
60
- }
61
- lines.push("## Constraints");
62
- lines.push("");
63
- if (plan.constraints.policy.length > 0) {
64
- lines.push("**Policy:**");
65
- for (const p of plan.constraints.policy) lines.push(`- ${p}`);
66
- lines.push("");
67
- }
68
- if (plan.constraints.security.length > 0) {
69
- lines.push("**Security:**");
70
- for (const s of plan.constraints.security) lines.push(`- ${s}`);
71
- lines.push("");
72
- }
73
- if (plan.constraints.pii.length > 0) {
74
- lines.push("**PII Fields (handle with care):**");
75
- for (const pii of plan.constraints.pii) lines.push(`- \`${pii}\``);
76
- lines.push("");
77
- }
78
- lines.push("## Verification");
79
- lines.push("");
80
- lines.push("After implementation, verify:");
81
- lines.push("");
82
- for (const check of plan.verificationChecklist) lines.push(`- [ ] ${check}`);
83
- lines.push("");
84
- return {
85
- agent: "generic-mcp",
86
- systemPrompt: AGENT_SYSTEM_PROMPTS["generic-mcp"],
87
- taskPrompt: lines.join("\n")
88
- };
89
- }
90
- /**
91
- * Format the plan as an MCP resource.
92
- * Returns JSON that can be served as an MCP resource.
93
- */
94
- formatAsResource(plan) {
95
- return {
96
- uri: `spec://${plan.target.name}/v${plan.target.version}/plan`,
97
- mimeType: "application/json",
98
- data: JSON.stringify({
99
- target: plan.target,
100
- context: plan.context,
101
- fileStructure: plan.fileStructure,
102
- steps: plan.steps,
103
- constraints: plan.constraints,
104
- verificationChecklist: plan.verificationChecklist
105
- }, null, 2)
106
- };
107
- }
108
- /**
109
- * Format the plan as an MCP prompt message.
110
- */
111
- formatAsPromptMessage(plan) {
112
- return {
113
- role: "user",
114
- content: {
115
- type: "text",
116
- text: this.formatPlan(plan).taskPrompt
117
- }
118
- };
119
- }
120
- /**
121
- * Generate configuration (generic markdown for any agent).
122
- */
123
- generateConfig(spec) {
124
- const m = spec.meta;
125
- const lines = [];
126
- lines.push(`# ${m.name} v${m.version}`);
127
- lines.push("");
128
- lines.push(`**Type:** ${m.kind}`);
129
- lines.push(`**Stability:** ${m.stability}`);
130
- lines.push("");
131
- lines.push("## Goal");
132
- lines.push("");
133
- lines.push(m.goal);
134
- lines.push("");
135
- lines.push("## Description");
136
- lines.push("");
137
- lines.push(m.description);
138
- lines.push("");
139
- return lines.join("\n");
140
- }
141
- /**
142
- * Parse agent output - generic implementation.
143
- */
144
- parseOutput(output) {
145
- const codeBlockMatch = output.match(/```(?:typescript|ts|tsx|javascript|js|python|go|rust)?\n([\s\S]*?)\n```/);
146
- if (codeBlockMatch?.[1]) return { code: codeBlockMatch[1] };
147
- try {
148
- const parsed = JSON.parse(output);
149
- if (typeof parsed.code === "string") return { code: parsed.code };
150
- if (typeof parsed.errors === "object") return { errors: Array.isArray(parsed.errors) ? parsed.errors : [String(parsed.errors)] };
151
- } catch {}
152
- return { code: output };
153
- }
154
- };
155
- /** Singleton instance */
156
- const genericMCPAdapter = new GenericMCPAdapter();
157
-
158
- //#endregion
159
- export { GenericMCPAdapter, genericMCPAdapter };
@@ -1,30 +0,0 @@
1
- import { ClaudeCodeAdapter, claudeCodeAdapter } from "./claude-code.js";
2
- import { CursorCLIAdapter, cursorCLIAdapter } from "./cursor-cli.js";
3
- import { GenericMCPAdapter, genericMCPAdapter } from "./generic-mcp.js";
4
-
5
- //#region src/services/agent-guide/adapters/index.ts
6
- /**
7
- * Registry of all available agent adapters.
8
- */
9
- const agentAdapters = {
10
- "claude-code": claudeCodeAdapter,
11
- "cursor-cli": cursorCLIAdapter,
12
- "generic-mcp": genericMCPAdapter
13
- };
14
- /**
15
- * Get an adapter for a specific agent type.
16
- */
17
- function getAgentAdapter(agent) {
18
- const adapter = agentAdapters[agent];
19
- if (!adapter) throw new Error(`Unknown agent type: ${agent}`);
20
- return adapter;
21
- }
22
- /**
23
- * List all available agent types.
24
- */
25
- function listAgentTypes() {
26
- return Object.keys(agentAdapters);
27
- }
28
-
29
- //#endregion
30
- export { agentAdapters, getAgentAdapter, listAgentTypes };
@@ -1,148 +0,0 @@
1
- import { featureToMarkdown, specToAgentPrompt, specToFullMarkdown } from "../../libs/contracts/dist/llm/exporters.js";
2
- import { generateImplementationPlan } from "../../libs/contracts/dist/llm/prompts.js";
3
- import "../../libs/contracts/dist/llm/index.js";
4
- import { getAgentAdapter, listAgentTypes } from "./adapters/index.js";
5
-
6
- //#region src/services/agent-guide/agent-guide-service.ts
7
- const DEFAULT_CONFIG = {
8
- defaultAgent: "generic-mcp",
9
- verbose: false
10
- };
11
- /**
12
- * Agent Guide Service
13
- *
14
- * Main service for generating implementation guidance for AI coding agents.
15
- */
16
- var AgentGuideService = class {
17
- config;
18
- constructor(config = {}) {
19
- this.config = {
20
- ...DEFAULT_CONFIG,
21
- ...config
22
- };
23
- }
24
- /**
25
- * Generate an implementation guide for a spec.
26
- */
27
- generateGuide(spec, options = {}) {
28
- const adapter = getAgentAdapter(options.agent ?? this.config.defaultAgent);
29
- const plan = generateImplementationPlan(spec, {
30
- projectRoot: this.config.projectRoot,
31
- existingFiles: options.targetPath ? [options.targetPath] : void 0
32
- });
33
- return {
34
- plan,
35
- prompt: adapter.formatPlan(plan),
36
- markdown: specToFullMarkdown(spec)
37
- };
38
- }
39
- /**
40
- * Generate a guide for a feature (includes all related specs).
41
- */
42
- generateFeatureGuide(feature, deps, options = {}) {
43
- const adapter = getAgentAdapter(options.agent ?? this.config.defaultAgent);
44
- const firstOp = feature.operations?.[0];
45
- const spec = firstOp ? deps.specs?.getSpec(firstOp.name, firstOp.version) : void 0;
46
- let plan;
47
- if (spec) {
48
- plan = generateImplementationPlan(spec, { projectRoot: this.config.projectRoot });
49
- plan.target = {
50
- type: "feature",
51
- name: feature.meta.key,
52
- version: 1
53
- };
54
- plan.context.goal = feature.meta.description ?? plan.context.goal;
55
- } else plan = {
56
- target: {
57
- type: "feature",
58
- name: feature.meta.key,
59
- version: 1
60
- },
61
- context: {
62
- goal: feature.meta.description ?? `Implement feature ${feature.meta.key}`,
63
- description: feature.meta.title ?? feature.meta.key,
64
- background: ""
65
- },
66
- specMarkdown: featureToMarkdown(feature, deps),
67
- fileStructure: [],
68
- steps: [{
69
- order: 1,
70
- title: "Implement Feature",
71
- description: `Implement the ${feature.meta.key} feature`,
72
- acceptanceCriteria: []
73
- }],
74
- constraints: {
75
- policy: [],
76
- security: [],
77
- pii: []
78
- },
79
- verificationChecklist: []
80
- };
81
- plan.specMarkdown = featureToMarkdown(feature, deps, {
82
- format: "full",
83
- includeRelatedSpecs: true,
84
- includeRelatedEvents: true,
85
- includeRelatedPresentations: true
86
- });
87
- if (feature.operations?.length) plan.steps = feature.operations.map((op, idx) => ({
88
- order: idx + 1,
89
- title: `Implement ${op.name}`,
90
- description: `Implement operation ${op.name}.v${op.version}`,
91
- acceptanceCriteria: [`Operation ${op.name} works as specified`]
92
- }));
93
- const prompt = adapter.formatPlan(plan);
94
- const markdown = featureToMarkdown(feature, deps);
95
- return {
96
- plan,
97
- prompt,
98
- markdown
99
- };
100
- }
101
- /**
102
- * Generate agent-specific configuration (e.g., cursor rules).
103
- */
104
- generateAgentConfig(spec, agent) {
105
- return getAgentAdapter(agent ?? this.config.defaultAgent).generateConfig?.(spec);
106
- }
107
- /**
108
- * Export a spec in a specific format for an agent.
109
- */
110
- exportForAgent(spec, agent, taskType = "implement", existingCode) {
111
- return specToAgentPrompt(spec, {
112
- taskType,
113
- existingCode
114
- });
115
- }
116
- /**
117
- * List available agent types.
118
- */
119
- listAgentTypes() {
120
- return listAgentTypes();
121
- }
122
- /**
123
- * Get the default agent type.
124
- */
125
- getDefaultAgent() {
126
- return this.config.defaultAgent;
127
- }
128
- /**
129
- * Update configuration.
130
- */
131
- configure(config) {
132
- this.config = {
133
- ...this.config,
134
- ...config
135
- };
136
- }
137
- };
138
- /**
139
- * Create a new AgentGuideService instance.
140
- */
141
- function createAgentGuideService(config) {
142
- return new AgentGuideService(config);
143
- }
144
- /** Default singleton instance */
145
- const agentGuideService = new AgentGuideService();
146
-
147
- //#endregion
148
- export { AgentGuideService, agentGuideService, createAgentGuideService };
@@ -1,5 +0,0 @@
1
- import { ClaudeCodeAdapter, claudeCodeAdapter } from "./adapters/claude-code.js";
2
- import { CursorCLIAdapter, cursorCLIAdapter } from "./adapters/cursor-cli.js";
3
- import { GenericMCPAdapter, genericMCPAdapter } from "./adapters/generic-mcp.js";
4
- import { agentAdapters, getAgentAdapter, listAgentTypes } from "./adapters/index.js";
5
- import { AgentGuideService, agentGuideService, createAgentGuideService } from "./agent-guide-service.js";
@@ -1,140 +0,0 @@
1
- import { inferSpecTypeFromFilePath, scanSpecSource } from "../modules/contractspec-workspace/dist/analysis/spec-scan.js";
2
- import { generateComponentTemplate, generateHandlerTemplate, generateTestTemplate } from "../modules/contractspec-workspace/dist/templates/handler.js";
3
-
4
- //#region src/services/build.ts
5
- /**
6
- * Build/scaffold service for generating implementation files from specs.
7
- *
8
- * Uses templates from @lssm/module.contractspec-workspace to generate
9
- * handler, component, and test skeletons without requiring AI.
10
- */
11
- /**
12
- * Build implementation files from a spec.
13
- */
14
- async function buildSpec(specPath, adapters, config, options = {}) {
15
- const { fs, logger } = adapters;
16
- const { targets = detectDefaultTargets(specPath), outputDir = config.outputDir, overwrite = false, dryRun = false } = options;
17
- const specCode = await fs.readFile(specPath);
18
- const specInfo = scanSpecSource(specCode, specPath);
19
- const specType = inferSpecTypeFromFilePath(specPath);
20
- logger.info(`Building from spec: ${specPath}`, { specType });
21
- const results = [];
22
- for (const target of targets) try {
23
- const result = await buildTarget(target, specPath, specCode, specInfo, specType, {
24
- fs,
25
- logger
26
- }, outputDir, overwrite, dryRun);
27
- results.push(result);
28
- } catch (error) {
29
- results.push({
30
- target,
31
- outputPath: "",
32
- success: false,
33
- error: error instanceof Error ? error.message : String(error)
34
- });
35
- }
36
- return {
37
- specPath,
38
- specInfo,
39
- results
40
- };
41
- }
42
- /**
43
- * Build a single target from a spec.
44
- */
45
- async function buildTarget(target, specPath, _specCode, specInfo, specType, adapters, outputDir, overwrite, dryRun) {
46
- const { fs, logger } = adapters;
47
- let code;
48
- let outputPath;
49
- switch (target) {
50
- case "handler": {
51
- if (specType !== "operation") return {
52
- target,
53
- outputPath: "",
54
- success: false,
55
- skipped: true,
56
- error: `Handler generation only supported for operation specs (got ${specType})`
57
- };
58
- const kind = specInfo.kind === "command" || specInfo.kind === "query" ? specInfo.kind : "command";
59
- code = generateHandlerTemplate(specInfo.name ?? "unknown", kind);
60
- outputPath = resolveOutputPath(specPath, outputDir, "handlers", specInfo.name ?? "unknown", ".handler.ts", adapters.fs);
61
- break;
62
- }
63
- case "component":
64
- if (specType !== "presentation") return {
65
- target,
66
- outputPath: "",
67
- success: false,
68
- skipped: true,
69
- error: `Component generation only supported for presentation specs (got ${specType})`
70
- };
71
- code = generateComponentTemplate(specInfo.name ?? "unknown", specInfo.description ?? "");
72
- outputPath = resolveOutputPath(specPath, outputDir, "components", specInfo.name ?? "unknown", ".tsx", adapters.fs);
73
- break;
74
- case "test": {
75
- const testType = specType === "operation" ? "handler" : "component";
76
- code = generateTestTemplate(specInfo.name ?? "unknown", testType);
77
- outputPath = resolveOutputPath(specPath, outputDir, "__tests__", specInfo.name ?? "unknown", ".test.ts", adapters.fs);
78
- break;
79
- }
80
- default: return {
81
- target,
82
- outputPath: "",
83
- success: false,
84
- error: `Unknown target: ${target}`
85
- };
86
- }
87
- if (await fs.exists(outputPath) && !overwrite) return {
88
- target,
89
- outputPath,
90
- success: false,
91
- skipped: true,
92
- error: "File already exists (use overwrite option)"
93
- };
94
- if (dryRun) {
95
- logger.info(`[dry-run] Would write: ${outputPath}`);
96
- return {
97
- target,
98
- outputPath,
99
- success: true
100
- };
101
- }
102
- const dirPath = fs.dirname(outputPath);
103
- await fs.mkdir(dirPath);
104
- await fs.writeFile(outputPath, code);
105
- logger.info(`Generated: ${outputPath}`);
106
- return {
107
- target,
108
- outputPath,
109
- success: true
110
- };
111
- }
112
- /**
113
- * Detect default targets based on spec type.
114
- */
115
- function detectDefaultTargets(specPath) {
116
- switch (inferSpecTypeFromFilePath(specPath)) {
117
- case "operation": return ["handler"];
118
- case "presentation": return ["component"];
119
- default: return [];
120
- }
121
- }
122
- /**
123
- * Resolve output path for generated file.
124
- */
125
- function resolveOutputPath(specPath, outputDir, subdir, specName, extension, fs) {
126
- const sanitizedName = toKebabCase(specName.split(".").pop() ?? "unknown");
127
- let baseDir;
128
- if (outputDir.startsWith(".")) baseDir = fs.resolve(fs.dirname(specPath), "..", outputDir, subdir);
129
- else baseDir = fs.resolve(outputDir, subdir);
130
- return fs.join(baseDir, `${sanitizedName}${extension}`);
131
- }
132
- /**
133
- * Convert string to kebab-case.
134
- */
135
- function toKebabCase(str) {
136
- return str.replace(/\./g, "-").replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
137
- }
138
-
139
- //#endregion
140
- export { buildSpec };