@codeyam/codeyam-cli 0.1.0-staging.79ef713 → 0.1.0-staging.7baa6db

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 (292) hide show
  1. package/analyzer-template/.build-info.json +7 -7
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +1 -1
  4. package/analyzer-template/packages/ai/index.ts +1 -0
  5. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +14 -0
  6. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +101 -0
  7. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  8. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +6 -0
  9. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +176 -8
  10. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +70 -19
  11. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +40 -13
  12. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +32 -5
  13. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +134 -2
  14. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +359 -142
  15. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  16. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  17. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +24 -4
  18. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +18 -0
  19. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +50 -25
  20. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +153 -76
  21. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
  22. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
  23. package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
  24. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
  25. package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
  26. package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
  27. package/analyzer-template/packages/database/src/lib/kysely/db.ts +6 -0
  28. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +1 -1
  29. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  30. package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
  31. package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
  32. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
  33. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
  34. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
  35. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
  36. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
  37. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
  38. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
  39. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
  40. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
  41. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
  42. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
  43. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
  44. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
  45. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
  46. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -0
  47. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
  48. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +3 -0
  49. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
  50. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +1 -1
  51. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  52. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  53. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  54. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  55. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
  56. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
  57. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
  58. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
  59. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
  60. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -1
  61. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +4 -0
  62. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  63. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +7 -1
  64. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +4 -0
  65. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  66. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  67. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +93 -2
  68. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  69. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +108 -2
  70. package/analyzer-template/project/constructMockCode.ts +2 -2
  71. package/analyzer-template/project/writeScenarioComponents.ts +14 -0
  72. package/background/src/lib/local/createLocalAnalyzer.js +1 -1
  73. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  74. package/background/src/lib/virtualized/project/constructMockCode.js +2 -2
  75. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  76. package/background/src/lib/virtualized/project/writeScenarioComponents.js +10 -0
  77. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  78. package/codeyam-cli/scripts/apply-setup.js +1 -1
  79. package/codeyam-cli/src/cli.js +2 -0
  80. package/codeyam-cli/src/cli.js.map +1 -1
  81. package/codeyam-cli/src/codeyam-cli.js +18 -2
  82. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  83. package/codeyam-cli/src/commands/analyze.js +4 -2
  84. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  85. package/codeyam-cli/src/commands/baseline.js +2 -0
  86. package/codeyam-cli/src/commands/baseline.js.map +1 -1
  87. package/codeyam-cli/src/commands/debug.js +2 -0
  88. package/codeyam-cli/src/commands/debug.js.map +1 -1
  89. package/codeyam-cli/src/commands/default.js +31 -20
  90. package/codeyam-cli/src/commands/default.js.map +1 -1
  91. package/codeyam-cli/src/commands/detect-universal-mocks.js +2 -0
  92. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +1 -1
  93. package/codeyam-cli/src/commands/init.js +49 -257
  94. package/codeyam-cli/src/commands/init.js.map +1 -1
  95. package/codeyam-cli/src/commands/memory.js +70 -27
  96. package/codeyam-cli/src/commands/memory.js.map +1 -1
  97. package/codeyam-cli/src/commands/recapture.js +2 -0
  98. package/codeyam-cli/src/commands/recapture.js.map +1 -1
  99. package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
  100. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  101. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  102. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  103. package/codeyam-cli/src/commands/test-startup.js +2 -0
  104. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  105. package/codeyam-cli/src/commands/verify.js +14 -2
  106. package/codeyam-cli/src/commands/verify.js.map +1 -1
  107. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +179 -0
  108. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -0
  109. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +128 -86
  110. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  111. package/codeyam-cli/src/utils/analyzer.js +7 -0
  112. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  113. package/codeyam-cli/src/utils/backgroundServer.js +90 -23
  114. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  115. package/codeyam-cli/src/utils/generateReport.js +2 -2
  116. package/codeyam-cli/src/utils/install-skills.js +43 -63
  117. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  118. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  119. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  120. package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
  121. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -0
  122. package/codeyam-cli/src/utils/progress.js +7 -0
  123. package/codeyam-cli/src/utils/progress.js.map +1 -1
  124. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  125. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  126. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +4 -4
  127. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -1
  128. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +1 -1
  129. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -1
  130. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +0 -1
  131. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -1
  132. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +97 -6
  133. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -1
  134. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +6 -5
  135. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -1
  136. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +3 -3
  137. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -1
  138. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +23 -23
  139. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -1
  140. package/codeyam-cli/src/utils/rules/parser.js +5 -0
  141. package/codeyam-cli/src/utils/rules/parser.js.map +1 -1
  142. package/codeyam-cli/src/utils/rules/ruleState.js +10 -10
  143. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -1
  144. package/codeyam-cli/src/utils/rules/staleness.js +6 -6
  145. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -1
  146. package/codeyam-cli/src/utils/serverState.js +37 -10
  147. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  148. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +21 -44
  149. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  150. package/codeyam-cli/src/utils/versionInfo.js +25 -0
  151. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  152. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
  153. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
  154. package/codeyam-cli/src/webserver/app/lib/database.js +14 -3
  155. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  156. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  157. package/codeyam-cli/src/webserver/backgroundServer.js +50 -0
  158. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  159. package/codeyam-cli/src/webserver/bootstrap.js +11 -0
  160. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -1
  161. package/codeyam-cli/src/webserver/build/client/assets/{CopyButton-CA3JxPb7.js → CopyButton-jNYXRRNI.js} +1 -1
  162. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-B86KKU7e.js → EntityItem-bwuHPyTa.js} +1 -1
  163. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-B5ctlSYt.js → EntityTypeBadge-CvzqMxcu.js} +1 -1
  164. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-BqY8gDAW.js → EntityTypeIcon-BH0XDim7.js} +1 -1
  165. package/codeyam-cli/src/webserver/build/client/assets/{InlineSpinner-ClaLpuOo.js → InlineSpinner-EhOseatT.js} +1 -1
  166. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-BDhPilK7.js → InteractivePreview-yjIHlOGa.js} +2 -2
  167. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-VeqEBv9v.js → LibraryFunctionPreview-Cq5o8jL4.js} +1 -1
  168. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-Bs7Nn1Jr.js → LoadingDots-BvMu2i-g.js} +1 -1
  169. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-Bm3PmcCz.js → LogViewer-kgBTLoJD.js} +1 -1
  170. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-C6PKeMYR.js → ReportIssueModal-BzPgx-xO.js} +2 -2
  171. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-Gq3Ocjo6.js → SafeScreenshot-CwZrv-Ok.js} +1 -1
  172. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-BNLaXBHR.js → ScenarioViewer-BX2Ny2Qj.js} +2 -2
  173. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-CiwXDxLh.js → TruncatedFilePath-CDpEprKa.js} +1 -1
  174. package/codeyam-cli/src/webserver/build/client/assets/{_index-B3TDXxnk.js → _index-BRx8ZGZo.js} +1 -1
  175. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BtBFH820.js → activity.(_tab)-4S4yPfFw.js} +1 -1
  176. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-DHKuQSmR.js +17 -0
  177. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  178. package/codeyam-cli/src/webserver/build/client/assets/{book-open-PttOB2SF.js → book-open-D4IPYH_y.js} +1 -1
  179. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-TJp6ofnp.js → chevron-down-CG65viiV.js} +1 -1
  180. package/codeyam-cli/src/webserver/build/client/assets/{chunk-JZWAC4HX-JE9ZIoBl.js → chunk-JZWAC4HX-DB3aFuEO.js} +9 -9
  181. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-CXhHQYrI.js → circle-check-igfMr5DY.js} +1 -1
  182. package/codeyam-cli/src/webserver/build/client/assets/{copy-6y9ALfGT.js → copy-Coc4o_8c.js} +1 -1
  183. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-Ca9fAY46.js → createLucideIcon-D1zB-pYc.js} +1 -1
  184. package/codeyam-cli/src/webserver/build/client/assets/{dev.empty-C5lqplTC.js → dev.empty-JTAjQ54M.js} +1 -1
  185. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-n38keI1k.js → entity._sha._-B0h9AqE6.js} +2 -2
  186. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-CBoafmVs.js → entity._sha.scenarios._scenarioId.fullscreen-DjLxr2JB.js} +1 -1
  187. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-DGgZjdFg.js → entity._sha_.create-scenario-CtYowLOt.js} +1 -1
  188. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-38yPijoD.js → entity._sha_.edit._scenarioId-PePWg17F.js} +1 -1
  189. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-BSHEfydn.js → entry.client-I-Wo99C_.js} +1 -1
  190. package/codeyam-cli/src/webserver/build/client/assets/{fileTableUtils-DCPhhSMo.js → fileTableUtils-9sMMAiWJ.js} +1 -1
  191. package/codeyam-cli/src/webserver/build/client/assets/{files-0N0YJQv7.js → files-Co65J0s3.js} +1 -1
  192. package/codeyam-cli/src/webserver/build/client/assets/{git-DXnyr8uP.js → git-BdHOxVfg.js} +1 -1
  193. package/codeyam-cli/src/webserver/build/client/assets/globals-OvbPxnso.css +1 -0
  194. package/codeyam-cli/src/webserver/build/client/assets/{index-ChN9-fAY.js → index-CUM5iXwc.js} +1 -1
  195. package/codeyam-cli/src/webserver/build/client/assets/{index-CcsFv748.js → index-_417gcQW.js} +1 -1
  196. package/codeyam-cli/src/webserver/build/client/assets/labs-BK0C1H1T.js +1 -0
  197. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-CTqLEAGU.js → loader-circle-TzRHMVog.js} +1 -1
  198. package/codeyam-cli/src/webserver/build/client/assets/manifest-1dde4642.js +1 -0
  199. package/codeyam-cli/src/webserver/build/client/assets/memory-CSehFhoZ.js +92 -0
  200. package/codeyam-cli/src/webserver/build/client/assets/{pause-D6vreykR.js → pause-hjzB7t2z.js} +1 -1
  201. package/codeyam-cli/src/webserver/build/client/assets/root-WysVEEJs.js +62 -0
  202. package/codeyam-cli/src/webserver/build/client/assets/{search-B8VUL8nl.js → search-DcAwD_Ln.js} +1 -1
  203. package/codeyam-cli/src/webserver/build/client/assets/settings-CclxrcPK.js +1 -0
  204. package/codeyam-cli/src/webserver/build/client/assets/{simulations-CPoAg7Zo.js → simulations-DVNJVQgD.js} +1 -1
  205. package/codeyam-cli/src/webserver/build/client/assets/{terminal-BrCP7uQo.js → terminal-DbEAHMbA.js} +1 -1
  206. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-BZz2NjYa.js → triangle-alert-CAD5b1o_.js} +1 -1
  207. package/codeyam-cli/src/webserver/build/client/assets/{useCustomSizes-DNwUduNu.js → useCustomSizes-BqgrAzs3.js} +1 -1
  208. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-COky1GVF.js → useLastLogLine-DAFqfEDH.js} +1 -1
  209. package/codeyam-cli/src/webserver/build/client/assets/{useReportContext-CpZgwliL.js → useReportContext-DZlYx2c4.js} +1 -1
  210. package/codeyam-cli/src/webserver/build/client/assets/{useToast-Bv9JFvUO.js → useToast-ihdMtlf6.js} +1 -1
  211. package/codeyam-cli/src/webserver/build/server/assets/{index-9ox9LcrG.js → index-Bs3qItZt.js} +1 -1
  212. package/codeyam-cli/src/webserver/build/server/assets/server-build-CqaV_Zaw.js +273 -0
  213. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  214. package/codeyam-cli/src/webserver/build-info.json +5 -5
  215. package/codeyam-cli/templates/{codeyam:debug.md → codeyam-debug.md} +1 -1
  216. package/codeyam-cli/templates/codeyam-diagnose.md +481 -0
  217. package/codeyam-cli/templates/codeyam-memory-hook.sh +14 -14
  218. package/codeyam-cli/templates/{codeyam:memory.md → codeyam-memory.md} +16 -24
  219. package/codeyam-cli/templates/{codeyam:new-rule.md → codeyam-new-rule.md} +1 -1
  220. package/codeyam-cli/templates/{codeyam:setup.md → codeyam-setup.md} +13 -1
  221. package/codeyam-cli/templates/{codeyam:sim.md → codeyam-sim.md} +1 -1
  222. package/codeyam-cli/templates/{codeyam:test.md → codeyam-test.md} +1 -1
  223. package/codeyam-cli/templates/{codeyam:verify.md → codeyam-verify.md} +1 -1
  224. package/codeyam-cli/templates/rule-reflection-hook.py +64 -27
  225. package/codeyam-cli/templates/rules-instructions.md +50 -41
  226. package/package.json +8 -8
  227. package/packages/ai/index.js +1 -1
  228. package/packages/ai/index.js.map +1 -1
  229. package/packages/ai/src/lib/analyzeScope.js +14 -0
  230. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  231. package/packages/ai/src/lib/astScopes/processExpression.js +78 -1
  232. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  233. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  234. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  235. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +128 -7
  236. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  237. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +59 -17
  238. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  239. package/packages/ai/src/lib/dataStructureChunking.js +30 -11
  240. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
  241. package/packages/ai/src/lib/generateEntityScenarioData.js +22 -3
  242. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  243. package/packages/ai/src/lib/generateExecutionFlows.js +97 -2
  244. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
  245. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +242 -81
  246. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -1
  247. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  248. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  249. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  250. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  251. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +17 -2
  252. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  253. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +11 -1
  254. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  255. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +42 -13
  256. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  257. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +123 -67
  258. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  259. package/packages/database/src/lib/analysisBranchToDb.js +1 -1
  260. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
  261. package/packages/database/src/lib/analysisToDb.js +1 -1
  262. package/packages/database/src/lib/analysisToDb.js.map +1 -1
  263. package/packages/database/src/lib/branchToDb.js +1 -1
  264. package/packages/database/src/lib/branchToDb.js.map +1 -1
  265. package/packages/database/src/lib/commitBranchToDb.js +1 -1
  266. package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
  267. package/packages/database/src/lib/commitToDb.js +1 -1
  268. package/packages/database/src/lib/commitToDb.js.map +1 -1
  269. package/packages/database/src/lib/fileToDb.js +1 -1
  270. package/packages/database/src/lib/fileToDb.js.map +1 -1
  271. package/packages/database/src/lib/kysely/db.js +3 -0
  272. package/packages/database/src/lib/kysely/db.js.map +1 -1
  273. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  274. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  275. package/packages/database/src/lib/projectToDb.js +1 -1
  276. package/packages/database/src/lib/projectToDb.js.map +1 -1
  277. package/packages/database/src/lib/saveFiles.js +1 -1
  278. package/packages/database/src/lib/saveFiles.js.map +1 -1
  279. package/packages/database/src/lib/scenarioToDb.js +1 -1
  280. package/packages/database/src/lib/scenarioToDb.js.map +1 -1
  281. package/packages/utils/src/lib/fs/rsyncCopy.js +93 -2
  282. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  283. package/scripts/finalize-analyzer.cjs +8 -76
  284. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-DfKzxuoe.js +0 -11
  285. package/codeyam-cli/src/webserver/build/client/assets/globals-Bh6jH0cL.css +0 -1
  286. package/codeyam-cli/src/webserver/build/client/assets/labs-CdVUfvji.js +0 -1
  287. package/codeyam-cli/src/webserver/build/client/assets/manifest-87319d0f.js +0 -1
  288. package/codeyam-cli/src/webserver/build/client/assets/memory-CPIDnDEj.js +0 -76
  289. package/codeyam-cli/src/webserver/build/client/assets/root-D6oziHts.js +0 -62
  290. package/codeyam-cli/src/webserver/build/client/assets/settings-eBI36Yv5.js +0 -1
  291. package/codeyam-cli/src/webserver/build/server/assets/server-build-Cq5Vqcob.js +0 -260
  292. package/codeyam-cli/templates/codeyam:diagnose.md +0 -803
@@ -1,20 +1,17 @@
1
1
  import * as fs from 'fs';
2
2
  import * as path from 'path';
3
+ import chalk from 'chalk';
3
4
  import { error, withoutSpinner } from "../utils/progress.js";
4
5
  import { requireBranchAndProject, testEnvironment } from "../utils/database.js";
5
6
  import { startBackgroundServer } from "../utils/backgroundServer.js";
7
+ import { installClaudeCodeSkills } from "../utils/install-skills.js";
8
+ import initCommand from "./init.js";
6
9
  import { getProjectRoot } from "../state.js";
7
10
  function logStartMessage(state) {
8
11
  console.log();
9
- console.log(`CodeYam is running a local server on port ${state.port}`);
10
- console.log();
11
- console.log('Run "codeyam stop" to stop this server from running');
12
- console.log();
13
- console.log('Run "codeyam help" for other CLI commands');
14
- console.log();
15
- console.log('Run "codeyam" at any time to display this information or re-open the local server');
16
- console.log();
17
- console.log(`Visit ${state.url} for the full CodeYam experience`);
12
+ console.log(` Dashboard: ${state.url}`);
13
+ console.log(' Run "codeyam --help" for all commands');
14
+ console.log(chalk.bold(' Run "codeyam" to launch the dashboard at any time'));
18
15
  console.log();
19
16
  }
20
17
  const defaultCommand = {
@@ -29,11 +26,19 @@ const defaultCommand = {
29
26
  },
30
27
  },
31
28
  handler: async (argv) => {
32
- // Find project root directory
33
- const projectRoot = getProjectRoot();
29
+ // Find project root directory, auto-initializing if needed
30
+ let projectRoot = getProjectRoot();
34
31
  if (!projectRoot) {
35
- error('Not in a CodeYam project. Run: codeyam init');
36
- return;
32
+ await initCommand.handler({
33
+ force: false,
34
+ autoInit: true,
35
+ $0: '',
36
+ _: [],
37
+ });
38
+ projectRoot = getProjectRoot();
39
+ if (!projectRoot) {
40
+ return;
41
+ }
37
42
  }
38
43
  const configPath = path.join(projectRoot, '.codeyam', 'config.json');
39
44
  try {
@@ -52,22 +57,28 @@ const defaultCommand = {
52
57
  }
53
58
  // Load project and branch from database
54
59
  const { project, branch } = await requireBranchAndProject(projectSlug);
60
+ // Ensure skills/hooks are up to date with this CLI version
61
+ const simulationsEnabled = project.metadata?.labs?.simulations ?? false;
62
+ await installClaudeCodeSkills(projectRoot, {
63
+ mode: simulationsEnabled ? 'full' : 'memory',
64
+ });
55
65
  // Start background server
56
- const { url, wasAlreadyRunning } = await startBackgroundServer({
66
+ const { url } = await startBackgroundServer({
57
67
  port: argv.port || 3111,
58
68
  rootPath: projectRoot,
59
69
  project,
60
70
  branch,
61
71
  });
62
- if (!wasAlreadyRunning) {
63
- console.log();
64
- console.log(`✅ Started CodeYam server in background`);
65
- }
66
- logStartMessage({ port: argv.port || 3111, url, pid: process.pid });
72
+ logStartMessage({ url });
67
73
  // Auto-open browser
68
74
  try {
69
75
  const { execSync } = await import('child_process');
70
- execSync(`open "${url}"`, { stdio: 'ignore' });
76
+ const openCommand = process.platform === 'darwin'
77
+ ? 'open'
78
+ : process.platform === 'win32'
79
+ ? 'start ""'
80
+ : 'xdg-open';
81
+ execSync(`${openCommand} "${url}"`, { stdio: 'ignore' });
71
82
  }
72
83
  catch (e) {
73
84
  // Silently fail if open command doesn't work
@@ -1 +1 @@
1
- {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../src/commands/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM1C,SAAS,eAAe,CAAC,KAAiD;IACxE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,6CAA6C,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,mFAAmF,CACpF,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,kCAAkC,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,cAAc,GAAwC;IAC1D,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,aAAa;IACvB,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,+BAA+B;YACzC,OAAO,EAAE,IAAI;SACd;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,8BAA8B;QAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;QAErE,IAAI,CAAC;YACH,6BAA6B;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/D,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;YAE/B,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,KAAK,CACH,qEAAqE,CACtE,CAAC;gBACF,OAAO;YACT,CAAC;YAED,2BAA2B;YAC3B,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;YAED,wCAAwC;YACxC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;YAEvE,0BAA0B;YAC1B,MAAM,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,MAAM,qBAAqB,CAAC;gBAC7D,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;gBACvB,QAAQ,EAAE,WAAW;gBACrB,OAAO;gBACP,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YACxD,CAAC;YAED,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAEpE,oBAAoB;YACpB,IAAI,CAAC;gBACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;gBACnD,QAAQ,CAAC,SAAS,GAAG,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,6CAA6C;YAC/C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACxC,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../src/commands/default.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,13 @@ import { detectUniversalMocks } from "../utils/universal-mocks.js";
6
6
  import { loadProject, upsertProjects } from "../../../packages/database/index.js";
7
7
  import { writeMocksToFiles } from "../utils/syncUniversalMocks.js";
8
8
  import { getProjectRoot } from "../state.js";
9
+ import { requireSimulations } from "../utils/requireSimulations.js";
9
10
  const UNIVERSAL_MOCKS_DIR = 'universal-mocks';
10
11
  const detectUniversalMocksCommand = {
11
12
  command: 'detect-universal-mocks',
12
13
  describe: 'Analyze codebase to detect universal mocks needed for unconfigured startup',
13
14
  handler: async () => {
15
+ requireSimulations();
14
16
  header('CodeYam Universal Mocks Detection');
15
17
  const progress = new ProgressReporter();
16
18
  // Find project root directory
@@ -1 +1 @@
1
- {"version":3,"file":"detect-universal-mocks.js","sourceRoot":"","sources":["../../../../src/commands/detect-universal-mocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detect-universal-mocks.js","sourceRoot":"","sources":["../../../../src/commands/detect-universal-mocks.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,12 @@ import * as fs from 'fs/promises';
2
2
  import * as fsSync from 'fs';
3
3
  import * as path from 'path';
4
4
  import { execSync } from 'child_process';
5
+ import chalk from 'chalk';
5
6
  import { error, header, info, ProgressReporter, success, withoutSpinner, } from "../utils/progress.js";
6
7
  import { ensureLocalBranch, ensureProject, getSqlitePath, testEnvironment, } from "../utils/database.js";
7
- import { createAnalyzer, getProjectPath } from "../utils/analyzer.js";
8
- import { ProjectAnalyzer } from "../../../packages/analyze/index.js";
9
- import prepareRepo from "../../../background/src/lib/virtualized/project/prepareRepo.js";
10
- import { createSqliteSchema, getSqliteDatabase, loadAnalyses, loadEntities, loadFiles, } from "../../../packages/database/index.js";
11
- import getFilesWithEntitiesFromRepo from "../../../background/src/lib/virtualized/project/getFilesWithEntitiesFromRepo.js";
12
- import createEntitiesAndSortFiles from "../../../background/src/lib/virtualized/project/createEntitiesAndSortFiles.js";
8
+ import { createSqliteSchema, getSqliteDatabase, updateProjectMetadata, } from "../../../packages/database/index.js";
13
9
  import { findProjectRoot } from "../utils/project.js";
14
10
  import { setProjectRoot } from "../state.js";
15
- import { populateEntityMetadata } from "../utils/entityMetadata.js";
16
11
  import { installClaudeCodeSkills } from "../utils/install-skills.js";
17
12
  import { setupClaudeCodeSettings } from "../utils/setupClaudeCodeSettings.js";
18
13
  import { getUnapprovedPathsWithGitignore } from "../utils/defaultUnapprovedPaths.js";
@@ -42,14 +37,8 @@ const initCommand = {
42
37
  }
43
38
  setProjectRoot(projectRoot);
44
39
  // Stop any running CodeYam server before reinitializing
45
- const { running, state, pids } = isServerRunning();
40
+ const { running } = isServerRunning();
46
41
  if (running) {
47
- if (state) {
48
- info(`Stopping running CodeYam server (PID: ${state.pid})...`);
49
- }
50
- else if (pids && pids.length > 0) {
51
- info(`Stopping ${pids.length} running CodeYam server process${pids.length > 1 ? 'es' : ''} (PID${pids.length > 1 ? 's' : ''}: ${pids.join(', ')})...`);
52
- }
53
42
  const stopped = killServer();
54
43
  if (stopped) {
55
44
  success('CodeYam server stopped');
@@ -62,194 +51,98 @@ const initCommand = {
62
51
  const configPath = path.join(codeyamDir, 'config.json');
63
52
  const progress = new ProgressReporter();
64
53
  try {
65
- // Create directory structure
66
- progress.start('Creating .codeyam directory structure...');
54
+ // Create .codeyam dir + .gitignore entry
55
+ progress.start('Setting up project scaffolding...');
67
56
  await fs.mkdir(codeyamDir, { recursive: true });
68
- await fs.mkdir(path.join(codeyamDir, 'results'), { recursive: true });
69
- await fs.mkdir(path.join(codeyamDir, 'captures'), { recursive: true });
70
- await fs.mkdir(path.join(codeyamDir, 'universal-mocks'), {
71
- recursive: true,
72
- });
73
- progress.succeed('Created .codeyam directory structure');
74
- // Add .codeyam to .gitignore to prevent committing secrets
75
- progress.start('Updating .gitignore...');
76
57
  await ensureGitignoreEntry(projectRoot, '.codeyam');
77
- progress.succeed('Updated .gitignore');
78
- // Generate project slug
79
- progress.start('Detecting project configuration...');
58
+ progress.succeed('Project scaffolding ready');
80
59
  const projectSlug = generateProjectSlug(projectRoot);
81
60
  const packageManager = detectPackageManager(projectRoot);
82
- progress.succeed('Detected project configuration');
83
- // Detect webapps in the project
84
- progress.start('Detecting web applications...');
85
- const detectedWebapps = detectWebApps(projectRoot);
86
- if (detectedWebapps.length === 0) {
87
- progress.fail('No web applications found');
88
- error('CodeYam only supports web applications (Next.js, Remix, CRA)');
89
- info('Make sure your project has a package.json with React dependencies');
90
- return;
61
+ // Detect webapps (soft — doesn't block init for non-webapp projects)
62
+ let detectedWebapps = [];
63
+ try {
64
+ detectedWebapps = detectWebApps(projectRoot);
65
+ }
66
+ catch {
67
+ // Webapp detection is best-effort
91
68
  }
92
- progress.succeed(`Found ${detectedWebapps.length} web application${detectedWebapps.length > 1 ? 's' : ''}`);
93
- // Display detected webapps
94
- for (const webapp of detectedWebapps) {
95
- info(` • ${webapp.path === '.' ? 'Root' : webapp.path}: ${webapp.framework}`);
69
+ if (detectedWebapps.length > 0) {
70
+ const webappSummary = detectedWebapps
71
+ .map((w) => `${w.path === '.' ? 'Root' : w.path} (${w.framework})`)
72
+ .join(', ');
73
+ info(`Found ${detectedWebapps.length} web application${detectedWebapps.length > 1 ? 's' : ''}: ${webappSummary}`);
96
74
  }
97
- // ADMIN: commenting out for now as it's not working very well...
98
- // // Detect files that use environment variables (only in webapp directories)
99
- // progress.start('Scanning for files that use environment variables...');
100
- // const webappPaths = detectedWebapps.map((w) => w.path);
101
- // const detectedEnvVars = await detectEnvironmentVariables(
102
- // projectRoot,
103
- // webappPaths
104
- // );
105
- // if (detectedEnvVars.length > 0) {
106
- // progress.succeed(
107
- // `Found ${detectedEnvVars.length} file${detectedEnvVars.length > 1 ? 's' : ''} in webapp${webappPaths.length > 1 ? 's' : ''} using environment variables`
108
- // );
109
- // info(` These files will need simple mocks during setup`);
110
- // } else {
111
- // progress.succeed('No files in webapps using environment variables');
112
- // }
113
- // Create config.json
114
- progress.start('Writing configuration file...');
75
+ // Config, database, environment validation, and project creation
76
+ progress.start('Configuring project...');
115
77
  const config = {
116
78
  projectSlug,
117
79
  packageManager,
118
80
  webapps: detectedWebapps,
119
- environmentVariables: [], //detectedEnvVars,
81
+ environmentVariables: [],
120
82
  createdAt: new Date().toISOString(),
121
83
  };
122
84
  await fs.writeFile(configPath, JSON.stringify(config, null, 2));
123
- progress.succeed('Created configuration file');
124
85
  const sqlitePath = getSqlitePath();
125
86
  if (!fsSync.existsSync(sqlitePath)) {
126
- progress.start('Creating local database...');
127
87
  const newDatabase = getSqliteDatabase(sqlitePath);
128
88
  await createSqliteSchema(newDatabase);
129
- progress.succeed('Local database ready');
130
89
  }
131
- // Test database connection and create project
132
- progress.start('Validating environment...');
133
90
  const connectionOk = await withoutSpinner(() => testEnvironment());
134
91
  if (!connectionOk) {
135
92
  progress.fail('Environment validation failed');
136
93
  return;
137
94
  }
138
- progress.succeed('Environment validated');
139
- // Create project in database
140
- progress.start('Validating project and analyzer...');
141
95
  try {
142
- const { project, created: projectCreated } = await ensureProject({
96
+ const { project } = await ensureProject({
143
97
  slug: projectSlug,
144
98
  packageManager,
145
99
  unapprovedPaths: getUnapprovedPathsWithGitignore(projectRoot),
146
100
  webapps: detectedWebapps,
147
101
  });
148
- progress.succeed(projectCreated ? 'Created new project' : 'Loaded existing project');
149
- info(`Database ID: ${project?.id}`);
150
- // Install Claude Code skills for guided setup
102
+ progress.succeed('Project configured');
103
+ // Skills, local branch, and auto-approval
151
104
  progress.start('Installing Claude Code skills...');
152
- const skillsResult = await installClaudeCodeSkills(projectRoot);
105
+ const skillsResult = await installClaudeCodeSkills(projectRoot, {
106
+ mode: 'memory',
107
+ });
108
+ const { branch: localBranch } = await ensureLocalBranch(project);
109
+ config.branchId = localBranch.id;
110
+ await fs.writeFile(configPath, JSON.stringify(config, null, 2));
111
+ setupClaudeCodeSettings(projectRoot, { mode: 'memory' });
153
112
  if (skillsResult.success) {
154
- progress.succeed(`Installed skills to ${skillsResult.skillsPath}/`);
113
+ progress.succeed('Claude Code skills installed');
155
114
  }
156
115
  else {
157
116
  progress.warn('Could not install skills');
158
- info(`Reason: ${skillsResult.error}`);
159
117
  }
160
- // Create _local branch for local development
161
- progress.start('Creating local development branch...');
162
- const { branch: localBranch, created: branchCreated } = await ensureLocalBranch(project);
163
- if (branchCreated) {
164
- progress.succeed('Created _local branch');
118
+ // Disable simulations by default enable via Labs page or `codeyam setup-simulations`
119
+ try {
120
+ await updateProjectMetadata({
121
+ projectSlug,
122
+ metadataUpdate: { labs: { simulations: false } },
123
+ });
165
124
  }
166
- // Create baseline entities in database
167
- progress.start('Analyzing project and creating baseline entities...');
168
- await createBaselineEntities(project, localBranch, projectRoot);
169
- progress.succeed('Baseline entities created');
170
- // Update config with branch ID for future reference
171
- config.branchId = localBranch.id;
172
- await fs.writeFile(configPath, JSON.stringify(config, null, 2));
173
- // Warm analyzer cache for faster first analysis
174
- progress.start('Setting up analyzer...');
175
- await createAnalyzer(projectSlug);
176
- progress.succeed('Analyzer ready for fast analysis');
177
- // Cache project for faster subsequent runs
178
- progress.start('Caching project files...');
179
- await prepareRepo({
180
- absoluteProjectRootPath: getProjectPath(projectSlug),
181
- localProjectPath: projectRoot,
182
- silent: true,
183
- });
184
- progress.succeed('Project cache ready');
185
- // // Install Claude Code skills for guided setup
186
- // progress.start('Installing Claude Code skills...');
187
- // const skillsResult = await installClaudeCodeSkills(projectRoot);
188
- // if (skillsResult.success) {
189
- // progress.succeed(`Installed skills to ${skillsResult.skillsPath}/ (templates from ${skillsResult.templatesDir})`);
190
- // } else {
191
- // progress.warn('Could not install skills');
192
- // info(`Reason: ${skillsResult.error}`);
193
- // }
194
- // Configure auto-approval for CodeYam commands and skills
195
- progress.start('Configuring auto-approval permissions...');
196
- const permissionsConfigured = setupClaudeCodeSettings(projectRoot);
197
- if (permissionsConfigured) {
198
- progress.succeed('Auto-approval configured for CodeYam commands and skills');
199
- }
200
- else {
201
- progress.warn('Could not configure auto-approval');
202
- info('You may need to approve CodeYam commands manually');
125
+ catch {
126
+ // Non-fatal simulations will default to enabled in the UI if this fails
203
127
  }
204
128
  // AI Mode: Default to interactive (Claude Code)
205
- // API key support exists but is not exposed in init flow yet
206
129
  config.aiMode = 'interactive';
207
130
  }
208
131
  catch (err) {
209
- progress.fail('Failed to create project and analyzer');
132
+ progress.fail('Failed to create project');
210
133
  error(err.message);
211
134
  return;
212
135
  }
136
+ const frameworkInfo = detectedWebapps.length > 0
137
+ ? `, ${detectedWebapps.map((w) => w.framework).join(', ')}`
138
+ : '';
213
139
  console.log();
214
- success(`Initialized project: ${projectSlug}`);
215
- info(`Package Manager: ${packageManager}`);
216
- if (detectedWebapps.length === 1) {
217
- info(`Framework: ${detectedWebapps[0].framework}`);
218
- if (detectedWebapps[0].path !== '.') {
219
- info(`Webapp Path: ${detectedWebapps[0].path}`);
220
- }
221
- }
222
- else {
223
- info(`Web Applications: ${detectedWebapps.length}`);
224
- for (const webapp of detectedWebapps) {
225
- info(` • ${webapp.path === '.' ? 'Root' : webapp.path}: ${webapp.framework}`);
226
- }
140
+ success(`✨ Initialized ${projectSlug} (${packageManager}${frameworkInfo})`);
141
+ if (!argv.autoInit) {
142
+ console.log();
143
+ console.log(chalk.bold(' Run "codeyam" to start the dashboard'));
144
+ console.log(' Run "codeyam --help" for all commands');
227
145
  }
228
- console.log();
229
- console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
230
- console.log();
231
- success('✨ CodeYam initialization complete!');
232
- console.log();
233
- console.log('📋 Next step: Complete setup with Claude Code');
234
- console.log();
235
- console.log(' 1. Open this project in Claude Code');
236
- console.log(' 2. Say to Claude:');
237
- console.log();
238
- console.log(' "Claude, can you setup CodeYam?"');
239
- console.log();
240
- console.log(' Claude will guide you through:');
241
- console.log(' • Detecting your project start command');
242
- console.log(' • Finding dependencies that need mocking');
243
- console.log(' • Configuring CodeYam to run your project');
244
- console.log();
245
- console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
246
- console.log();
247
- console.log('💡 Tips:');
248
- console.log(' • Run "codeyam" to start the dashboard');
249
- console.log(' • Run "codeyam --help" for all commands');
250
- console.log(' • Run "codeyam stop" to stop the background server');
251
- console.log(' • Edit mock files in .codeyam/universal-mocks/');
252
- console.log();
253
146
  }
254
147
  catch (err) {
255
148
  progress.fail('Failed to initialize project');
@@ -288,107 +181,6 @@ function detectPackageManager(projectPath) {
288
181
  return 'npm';
289
182
  return 'npm'; // default fallback
290
183
  }
291
- /**
292
- * Create baseline entities for a project during initialization
293
- * This populates the database so that subsequent status/analyze commands
294
- * only show actual changes, not every file as "new"
295
- */
296
- async function createBaselineEntities(project, branch, projectRootPath) {
297
- // Load project with files to populate project.files
298
- if (!project.files) {
299
- project.files = await loadFiles({ projectId: project.id });
300
- }
301
- // Load existing entities to preserve version tracking
302
- const existingEntities = await loadEntities({
303
- projectId: project.id,
304
- branchId: branch.id,
305
- });
306
- // Create a map of existing entities by (filePath, name)
307
- const existingEntityMap = new Map();
308
- if (existingEntities) {
309
- for (const entity of existingEntities) {
310
- const key = `${entity.filePath}:${entity.name}`;
311
- if (!existingEntityMap.has(key)) {
312
- existingEntityMap.set(key, new Map());
313
- }
314
- existingEntityMap.get(key).set(entity.sha, entity);
315
- }
316
- }
317
- // Load analyses for existing entities
318
- const existingAnalysesMap = new Map();
319
- if (existingEntities && existingEntities.length > 0) {
320
- const analyses = await loadAnalyses({
321
- entityShas: existingEntities.map((e) => e.sha),
322
- });
323
- if (analyses) {
324
- for (const analysis of analyses) {
325
- if (!existingAnalysesMap.has(analysis.entitySha)) {
326
- existingAnalysesMap.set(analysis.entitySha, []);
327
- }
328
- existingAnalysesMap.get(analysis.entitySha).push(analysis);
329
- }
330
- }
331
- }
332
- // Initialize ProjectAnalyzer and populate project.files with entities
333
- const projectAnalyzer = await ProjectAnalyzer.from({
334
- project,
335
- dirPath: projectRootPath,
336
- });
337
- await getFilesWithEntitiesFromRepo({
338
- project: project,
339
- projectAnalyzer,
340
- silent: true,
341
- });
342
- // Now create and persist all entities to database
343
- const { entityMap } = await createEntitiesAndSortFiles({
344
- project,
345
- branch,
346
- projectAnalyzer,
347
- });
348
- // Populate project.files with the created entities so populateEntityMetadata can process them
349
- for (const file of project.files) {
350
- file.entities = [];
351
- if (entityMap[file.path]) {
352
- // Deduplicate entities by SHA (aliases like 'default' can point to same entity)
353
- const entitiesBySha = new Map();
354
- Object.values(entityMap[file.path]).forEach((entity) => {
355
- entitiesBySha.set(entity.sha, entity);
356
- });
357
- file.entities = Array.from(entitiesBySha.values());
358
- // Preserve version tracking for each entity
359
- for (const entity of file.entities) {
360
- const key = `${entity.filePath}:${entity.name}`;
361
- const existingVersions = existingEntityMap.get(key);
362
- if (existingVersions) {
363
- // Check if this exact SHA already exists
364
- const exactMatch = existingVersions.get(entity.sha);
365
- if (exactMatch) {
366
- // Exact match - preserve all metadata and analyses
367
- entity.metadata = exactMatch.metadata;
368
- entity.analyses = existingAnalysesMap.get(exactMatch.sha) || [];
369
- continue;
370
- }
371
- // Different SHA - check if any previous version has analyses
372
- const versionWithAnalyses = Array.from(existingVersions.values()).find((v) => existingAnalysesMap.has(v.sha));
373
- if (versionWithAnalyses) {
374
- // Set previousVersionWithAnalyses to track where analyses came from
375
- entity.metadata = entity.metadata || {};
376
- entity.metadata.previousVersionWithAnalyses =
377
- versionWithAnalyses.sha;
378
- entity.metadata.previousCommittedSha =
379
- versionWithAnalyses.metadata?.isUncommitted === false
380
- ? versionWithAnalyses.sha
381
- : versionWithAnalyses.metadata?.previousCommittedSha;
382
- // Inherit analyses for display
383
- entity.analyses =
384
- existingAnalysesMap.get(versionWithAnalyses.sha) || [];
385
- }
386
- }
387
- }
388
- }
389
- }
390
- await populateEntityMetadata(project.files, projectRootPath, projectAnalyzer);
391
- }
392
184
  /**
393
185
  * Ensure a given entry exists in the project's .gitignore file
394
186
  * Creates the .gitignore if it doesn't exist
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,IAAI,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,gBAAgB,EAChB,OAAO,EACP,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAOnE,MAAM,WAAW,GAAoC;IACnD,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,+CAA+C;IACzD,OAAO,EAAE;QACP,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,sDAAsD;YAChE,OAAO,EAAE,KAAK;SACf;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAE3C,IAAI,WAAW,GAAG,eAAe,EAAE,CAAC;QACpC,+BAA+B;QAC/B,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC/B,OAAO,CAAC,2DAA2D,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC9B,CAAC;QACD,cAAc,CAAC,WAAW,CAAC,CAAC;QAE5B,wDAAwD;QACxD,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;YAC7B,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,wBAAwB,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAExC,IAAI,CAAC;YACH,yCAAyC;YACzC,QAAQ,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACpD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,oBAAoB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACpD,QAAQ,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;YAE9C,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACrD,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAEzD,qEAAqE;YACrE,IAAI,eAAe,GAAqC,EAAE,CAAC;YAC3D,IAAI,CAAC;gBACH,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,kCAAkC;YACpC,CAAC;YAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,eAAe;qBAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC;qBAClE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,CACF,SAAS,eAAe,CAAC,MAAM,mBAAmB,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,EAAE,CAC5G,CAAC;YACJ,CAAC;YAED,iEAAiE;YACjE,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACzC,MAAM,MAAM,GAAwB;gBAClC,WAAW;gBACX,cAAc;gBACd,OAAO,EAAE,eAAe;gBACxB,oBAAoB,EAAE,EAAE;gBACxB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAEhE,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACnC,MAAM,WAAW,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAClD,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACxC,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC;oBACtC,IAAI,EAAE,WAAW;oBACjB,cAAc;oBACd,eAAe,EAAE,+BAA+B,CAAC,WAAW,CAAC;oBAC7D,OAAO,EAAE,eAAe;iBACzB,CAAC,CAAC;gBACH,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;gBAEvC,0CAA0C;gBAC1C,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACnD,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,WAAW,EAAE;oBAC9D,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;gBAEH,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBACjE,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC;gBACjC,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEhE,uBAAuB,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAEzD,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,QAAQ,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAC5C,CAAC;gBAED,uFAAuF;gBACvF,IAAI,CAAC;oBACH,MAAM,qBAAqB,CAAC;wBAC1B,WAAW;wBACX,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;qBACjD,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACP,0EAA0E;gBAC5E,CAAC;gBAED,gDAAgD;gBAChD,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAC1C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GACjB,eAAe,CAAC,MAAM,GAAG,CAAC;gBACxB,CAAC,CAAC,KAAK,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CACL,iBAAiB,WAAW,KAAK,cAAc,GAAG,aAAa,GAAG,CACnE,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC9C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF,CAAC;AAEF,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,IAAI,CAAC;QACH,8BAA8B;QAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC,oCAAoC,EAAE;YAC/D,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,uFAAuF;QACvF,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CACjC,6CAA6C,CAC9C,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,yDAAyD;IAC3D,CAAC;IAED,uCAAuC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC;IACpE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC3C,OAAO,SAAS,QAAQ,IAAI,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAmB;IAC/C,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAChB,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IAC1E,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAChE,OAAO,KAAK,CAAC;IAEf,OAAO,KAAK,CAAC,CAAC,mBAAmB;AACnC,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CACjC,WAAmB,EACnB,KAAa;IAEb,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC3D,IAAI,gBAAgB,GAAG,EAAE,CAAC;IAE1B,wCAAwC;IACxC,IAAI,CAAC;QACH,gBAAgB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,qCAAqC;IACvC,CAAC;IAED,gCAAgC;IAChC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC5B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,KAAK,EAAE,CAC/D,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,2BAA2B;QAC3B,MAAM,UAAU,GACd,gBAAgB;YAChB,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,iEAAiE;YACjE,YAAY,CAAC;QAEf,MAAM,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,eAAe,WAAW,CAAC"}