@codeyam/codeyam-cli 0.1.0-staging.09652b8 → 0.1.0-staging.28f73cf

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 (287) 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 +7 -6
  4. package/analyzer-template/packages/ai/index.ts +2 -0
  5. package/analyzer-template/packages/ai/package.json +2 -2
  6. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +24 -0
  7. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +14 -0
  8. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +1402 -546
  9. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.ts +138 -0
  10. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +1 -1
  11. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +139 -0
  12. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/DebugTracer.ts +224 -0
  13. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/PathManager.ts +203 -0
  14. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/README.md +294 -0
  15. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +161 -0
  16. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.ts +235 -0
  17. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +2 -0
  18. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/selectBestValue.ts +70 -0
  19. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.ts +113 -0
  20. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +36 -0
  21. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +32 -8
  22. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +27 -6
  23. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +42 -4
  24. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +39 -0
  25. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +18 -6
  26. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +2 -1
  27. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +8 -10
  28. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +6 -1
  29. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +8 -6
  30. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +5 -13
  31. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +34 -15
  32. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +17 -3
  33. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +35 -16
  34. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +7 -1
  35. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +9 -1
  36. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +6 -1
  37. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +9 -1
  38. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts +23 -0
  39. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts.map +1 -0
  40. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js +30 -0
  41. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js.map +1 -0
  42. package/analyzer-template/packages/aws/package.json +5 -4
  43. package/analyzer-template/packages/aws/s3/index.ts +4 -0
  44. package/analyzer-template/packages/aws/src/lib/s3/getPresignedUrl.ts +62 -0
  45. package/analyzer-template/packages/generate/src/lib/scenarioComponent.ts +6 -3
  46. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.d.ts.map +1 -1
  47. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js +5 -3
  48. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js.map +1 -1
  49. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts +2 -0
  50. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts.map +1 -1
  51. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js +3 -0
  52. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js.map +1 -1
  53. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts +2 -0
  54. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts.map +1 -1
  55. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/debugReportsTable.d.ts +37 -0
  56. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -0
  57. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/debugReportsTable.js +27 -0
  58. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  59. package/analyzer-template/packages/github/dist/utils/index.d.ts +1 -0
  60. package/analyzer-template/packages/github/dist/utils/index.d.ts.map +1 -1
  61. package/analyzer-template/packages/github/dist/utils/index.js +1 -0
  62. package/analyzer-template/packages/github/dist/utils/index.js.map +1 -1
  63. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts +25 -0
  64. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  65. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js +40 -0
  66. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js.map +1 -0
  67. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  68. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  69. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  70. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  71. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  72. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  73. package/analyzer-template/packages/supabase/src/lib/kysely/db.ts +6 -0
  74. package/analyzer-template/packages/supabase/src/lib/kysely/tableRelations.ts +3 -0
  75. package/analyzer-template/packages/supabase/src/lib/kysely/tables/debugReportsTable.ts +61 -0
  76. package/analyzer-template/packages/utils/dist/utils/index.d.ts +1 -0
  77. package/analyzer-template/packages/utils/dist/utils/index.d.ts.map +1 -1
  78. package/analyzer-template/packages/utils/dist/utils/index.js +1 -0
  79. package/analyzer-template/packages/utils/dist/utils/index.js.map +1 -1
  80. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts +25 -0
  81. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  82. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js +40 -0
  83. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js.map +1 -0
  84. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  85. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  86. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  87. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  88. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  89. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  90. package/analyzer-template/packages/utils/index.ts +1 -0
  91. package/analyzer-template/packages/utils/src/lib/Semaphore.ts +42 -0
  92. package/analyzer-template/packages/utils/src/lib/frameworks/getRemixRoutePath.ts +2 -1
  93. package/analyzer-template/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.ts +1 -0
  94. package/analyzer-template/project/constructMockCode.ts +170 -6
  95. package/analyzer-template/project/reconcileMockDataKeys.ts +13 -0
  96. package/analyzer-template/project/start.ts +1 -11
  97. package/analyzer-template/project/writeMockDataTsx.ts +32 -1
  98. package/analyzer-template/project/writeScenarioComponents.ts +164 -18
  99. package/analyzer-template/project/writeUniversalMocks.ts +66 -8
  100. package/background/src/lib/virtualized/project/constructMockCode.js +158 -7
  101. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  102. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +12 -0
  103. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  104. package/background/src/lib/virtualized/project/start.js +1 -8
  105. package/background/src/lib/virtualized/project/start.js.map +1 -1
  106. package/background/src/lib/virtualized/project/writeMockDataTsx.js +25 -1
  107. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  108. package/background/src/lib/virtualized/project/writeScenarioComponents.js +129 -17
  109. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  110. package/background/src/lib/virtualized/project/writeUniversalMocks.js +56 -7
  111. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  112. package/codeyam-cli/src/cli.js +6 -0
  113. package/codeyam-cli/src/cli.js.map +1 -1
  114. package/codeyam-cli/src/codeyam-cli.js +0 -0
  115. package/codeyam-cli/src/commands/debug.js +221 -0
  116. package/codeyam-cli/src/commands/debug.js.map +1 -0
  117. package/codeyam-cli/src/commands/report.js +102 -0
  118. package/codeyam-cli/src/commands/report.js.map +1 -0
  119. package/codeyam-cli/src/commands/setup-sandbox.js +164 -0
  120. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -0
  121. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js +6 -6
  122. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js.map +1 -1
  123. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +8 -0
  124. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  125. package/codeyam-cli/src/utils/analyzer.js +30 -0
  126. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  127. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js +2 -2
  128. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js.map +1 -1
  129. package/codeyam-cli/src/utils/generateReport.js +219 -0
  130. package/codeyam-cli/src/utils/generateReport.js.map +1 -0
  131. package/codeyam-cli/src/utils/install-skills.js +7 -0
  132. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  133. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js +1 -0
  134. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js.map +1 -1
  135. package/codeyam-cli/src/utils/queue/job.js +5 -1
  136. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  137. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +4 -0
  138. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  139. package/codeyam-cli/src/webserver/app/lib/database.js +50 -2
  140. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  141. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-D5ZHFomX.js +1 -0
  142. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CDnfNKKQ.js → InteractivePreview-XDSzQLOY.js} +2 -2
  143. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-DUS-3h7I.js → LibraryFunctionPreview-BYVx9KFp.js} +1 -1
  144. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-TJzDQku1.js → LogViewer-CRcT5fOZ.js} +1 -1
  145. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-BORLgi0X.js +1 -0
  146. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-BgdlWM6p.js → SafeScreenshot-Bual6h18.js} +1 -1
  147. package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-Bi-YUMa-.js +6 -0
  148. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-4D2vLLJz.js +5 -0
  149. package/codeyam-cli/src/webserver/build/client/assets/_index-BC200mfN.js +1 -0
  150. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-CxvZPkCv.js +10 -0
  151. package/codeyam-cli/src/webserver/build/client/assets/api.generate-report-l0sNRNKZ.js +1 -0
  152. package/codeyam-cli/src/webserver/build/client/assets/chart-column-B8fb6wnw.js +1 -0
  153. package/codeyam-cli/src/webserver/build/client/assets/{chunk-WWGJGFF6-DvL0YqDJ.js → chunk-WWGJGFF6-De6i8FUT.js} +1 -1
  154. package/codeyam-cli/src/webserver/build/client/assets/circle-alert-IdsgAK39.js +1 -0
  155. package/codeyam-cli/src/webserver/build/client/assets/circle-check-BACUUf75.js +1 -0
  156. package/codeyam-cli/src/webserver/build/client/assets/clock-vWeoCemX.js +1 -0
  157. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CS7XDrKv.js +1 -0
  158. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DIOEw_3i.js +1 -0
  159. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-3bYjyojg.js → entity._sha._-8Els_3Wb.js} +10 -10
  160. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-DtfwpN9J.js → entity._sha_.create-scenario-C3FZJx1w.js} +1 -1
  161. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-YJz_igar.js +5 -0
  162. package/codeyam-cli/src/webserver/build/client/assets/entityStatus-BEqj2qBy.js +1 -0
  163. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DiP0q291.js +5 -0
  164. package/codeyam-cli/src/webserver/build/client/assets/file-text-LM0mgxXE.js +1 -0
  165. package/codeyam-cli/src/webserver/build/client/assets/files-Dxh9CcaV.js +1 -0
  166. package/codeyam-cli/src/webserver/build/client/assets/{git-WoKohOtW.js → git-BXmqrWCH.js} +10 -10
  167. package/codeyam-cli/src/webserver/build/client/assets/globals-BGS74ED-.css +1 -0
  168. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-XQCGvadH.js +5 -0
  169. package/codeyam-cli/src/webserver/build/client/assets/{index-Vvbl94Xc.js → index-D-zYbzFZ.js} +2 -2
  170. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-BXPKbHEb.js +1 -0
  171. package/codeyam-cli/src/webserver/build/client/assets/manifest-1af162d4.js +1 -0
  172. package/codeyam-cli/src/webserver/build/client/assets/root-DB7VgjCY.js +16 -0
  173. package/codeyam-cli/src/webserver/build/client/assets/settings-5zF_GOcS.js +1 -0
  174. package/codeyam-cli/src/webserver/build/client/assets/{settings-LuiJ1UIm.js → settings-Dc4MlMpK.js} +1 -1
  175. package/codeyam-cli/src/webserver/build/client/assets/simulations-BQ-02-jB.js +1 -0
  176. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-D7k-ArFa.js +1 -0
  177. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-CpUcCv1V.js → useLastLogLine-AlhS7g5F.js} +1 -1
  178. package/codeyam-cli/src/webserver/build/client/assets/useToast-Ddo4UQv7.js +1 -0
  179. package/codeyam-cli/src/webserver/build/client/assets/zap-_jw-9DCp.js +1 -0
  180. package/codeyam-cli/src/webserver/build/server/assets/{index-DzbqTxoN.js → index-D4JpXSIO.js} +1 -1
  181. package/codeyam-cli/src/webserver/build/server/assets/server-build-vwbN7n65.js +169 -0
  182. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  183. package/codeyam-cli/src/webserver/build-info.json +5 -5
  184. package/codeyam-cli/templates/codeyam-setup-skill.md +65 -85
  185. package/codeyam-cli/templates/debug-command.md +125 -0
  186. package/package.json +4 -6
  187. package/packages/ai/index.js +1 -1
  188. package/packages/ai/index.js.map +1 -1
  189. package/packages/ai/src/lib/analyzeScope.js +13 -0
  190. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  191. package/packages/ai/src/lib/astScopes/processExpression.js +12 -0
  192. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  193. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +1023 -405
  194. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  195. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js +137 -1
  196. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js.map +1 -1
  197. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +1 -1
  198. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  199. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +112 -0
  200. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -0
  201. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js +176 -0
  202. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js.map +1 -0
  203. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js +178 -0
  204. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js.map +1 -0
  205. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +138 -0
  206. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -0
  207. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js +199 -0
  208. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js.map +1 -0
  209. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +2 -0
  210. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  211. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js +62 -0
  212. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js.map +1 -0
  213. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js +90 -0
  214. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js.map +1 -0
  215. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +22 -0
  216. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +1 -1
  217. package/packages/ai/src/lib/generateEntityKeyAttributes.js +32 -8
  218. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +1 -1
  219. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +13 -8
  220. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  221. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +36 -3
  222. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  223. package/packages/ai/src/lib/worker/SerializableDataStructure.js +7 -0
  224. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  225. package/packages/analyze/src/lib/FileAnalyzer.js +17 -5
  226. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  227. package/packages/analyze/src/lib/asts/nodes/index.js +2 -1
  228. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  229. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +6 -8
  230. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  231. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +5 -1
  232. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  233. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +8 -2
  234. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  235. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +5 -8
  236. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  237. package/packages/analyze/src/lib/files/analyzeChange.js +21 -9
  238. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  239. package/packages/analyze/src/lib/files/analyzeEntity.js +10 -4
  240. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  241. package/packages/analyze/src/lib/files/analyzeInitial.js +21 -9
  242. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  243. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +6 -1
  244. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  245. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +9 -1
  246. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +1 -1
  247. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +5 -1
  248. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  249. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +9 -1
  250. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  251. package/packages/generate/src/lib/scenarioComponent.js +5 -3
  252. package/packages/generate/src/lib/scenarioComponent.js.map +1 -1
  253. package/packages/supabase/src/lib/kysely/db.js +3 -0
  254. package/packages/supabase/src/lib/kysely/db.js.map +1 -1
  255. package/packages/supabase/src/lib/kysely/tables/debugReportsTable.js +27 -0
  256. package/packages/supabase/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  257. package/packages/utils/index.js +1 -0
  258. package/packages/utils/index.js.map +1 -1
  259. package/packages/utils/src/lib/Semaphore.js +40 -0
  260. package/packages/utils/src/lib/Semaphore.js.map +1 -0
  261. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  262. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  263. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  264. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  265. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-B9Sf8e9w.js +0 -1
  266. package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-Bl6GY-OE.js +0 -6
  267. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-BDq8RX50.js +0 -5
  268. package/codeyam-cli/src/webserver/build/client/assets/_index-Bh3y3Wsl.js +0 -1
  269. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-tq7Bl6-t.js +0 -10
  270. package/codeyam-cli/src/webserver/build/client/assets/chart-column-q9_nHfwv.js +0 -1
  271. package/codeyam-cli/src/webserver/build/client/assets/circle-alert-CKMpA1v_.js +0 -1
  272. package/codeyam-cli/src/webserver/build/client/assets/clock-Wnfog8Qw.js +0 -1
  273. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-C_ixaqqh.js +0 -1
  274. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-QecTs_sq.js +0 -5
  275. package/codeyam-cli/src/webserver/build/client/assets/entry.client-hnkEgHrC.js +0 -5
  276. package/codeyam-cli/src/webserver/build/client/assets/file-text-CvCVdKLW.js +0 -1
  277. package/codeyam-cli/src/webserver/build/client/assets/files-DgUCYhbd.js +0 -1
  278. package/codeyam-cli/src/webserver/build/client/assets/globals-DZfbt0u5.css +0 -1
  279. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-Bxm63UxG.js +0 -1
  280. package/codeyam-cli/src/webserver/build/client/assets/manifest-c90b8608.js +0 -1
  281. package/codeyam-cli/src/webserver/build/client/assets/root-DrVZQamX.js +0 -16
  282. package/codeyam-cli/src/webserver/build/client/assets/search-CJkk16Ct.js +0 -1
  283. package/codeyam-cli/src/webserver/build/client/assets/settings-ConzHeiL.js +0 -1
  284. package/codeyam-cli/src/webserver/build/client/assets/simulations-B9LRwAej.js +0 -1
  285. package/codeyam-cli/src/webserver/build/client/assets/useToast-DOxmMaSg.js +0 -1
  286. package/codeyam-cli/src/webserver/build/client/assets/zap-D5R1FAcH.js +0 -1
  287. package/codeyam-cli/src/webserver/build/server/assets/server-build-DGGis3OZ.js +0 -166
@@ -0,0 +1,221 @@
1
+ import * as path from 'path';
2
+ import * as fs from 'fs';
3
+ import { error, header, info, success } from "../utils/progress.js";
4
+ import { getProjectRoot } from "../state.js";
5
+ import { initializeEnvironment, requireBranchAndProject, } from "../utils/database.js";
6
+ import { getDatabase, loadAnalysis, updateFreshAnalysisStatus, } from "../../../packages/supabase/index.js";
7
+ import { ProjectFramework } from "../../../packages/types/index.js";
8
+ import { isServerRunning } from "../utils/serverState.js";
9
+ import { startBackgroundServer } from "../utils/backgroundServer.js";
10
+ import { ensureFreshAnalyzer, resetProject } from "../utils/analyzer.js";
11
+ const debugCommand = {
12
+ command: 'debug <id>',
13
+ describe: 'Setup debug environment for a specific analysis or scenario (auto-detects ID type)',
14
+ builder: {
15
+ id: {
16
+ type: 'string',
17
+ describe: 'The analysis ID or scenario ID to debug',
18
+ demandOption: true,
19
+ },
20
+ },
21
+ handler: async (argv) => {
22
+ header('CodeYam Debug Setup');
23
+ const { id } = argv;
24
+ let analysisId;
25
+ let scenarioId;
26
+ // Find project root directory
27
+ const projectRoot = getProjectRoot();
28
+ if (!projectRoot) {
29
+ error('Not in a CodeYam project. Run: codeyam init');
30
+ return;
31
+ }
32
+ try {
33
+ await initializeEnvironment();
34
+ // Auto-detect whether the ID is a scenario or analysis
35
+ info(`Detecting ID type for ${id}...`);
36
+ const db = getDatabase();
37
+ // First check if it's a scenario ID
38
+ const scenarioRow = await db
39
+ .selectFrom('scenarios')
40
+ .select(['id', 'analysis_id'])
41
+ .where('id', '=', id)
42
+ .executeTakeFirst();
43
+ if (scenarioRow) {
44
+ scenarioId = id;
45
+ analysisId = scenarioRow.analysis_id;
46
+ info(`Found scenario, using analysis ${analysisId}`);
47
+ }
48
+ else {
49
+ // Check if it's an analysis ID
50
+ const analysisRow = await db
51
+ .selectFrom('analyses')
52
+ .select(['id'])
53
+ .where('id', '=', id)
54
+ .executeTakeFirst();
55
+ if (analysisRow) {
56
+ analysisId = id;
57
+ info(`Found analysis ${analysisId}`);
58
+ }
59
+ else {
60
+ error(`ID ${id} not found as either a scenario or analysis`);
61
+ return;
62
+ }
63
+ }
64
+ // Load the analysis
65
+ info(`Loading analysis ${analysisId}...`);
66
+ const analysis = await loadAnalysis({
67
+ id: analysisId,
68
+ includeScenarios: true,
69
+ includeCommitAndBranch: true,
70
+ });
71
+ if (!analysis) {
72
+ error(`Analysis ${analysisId} not found`);
73
+ return;
74
+ }
75
+ if (!analysis.commit) {
76
+ error(`Commit not found for analysis ${analysisId}`);
77
+ return;
78
+ }
79
+ info(`Found analysis for entity: ${analysis.entityName}`);
80
+ info(`File: ${analysis.filePath}`);
81
+ // Get project configuration
82
+ const configPath = path.join(projectRoot, '.codeyam', 'config.json');
83
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
84
+ const { projectSlug } = config;
85
+ if (!projectSlug) {
86
+ error('Project slug not found in config');
87
+ return;
88
+ }
89
+ // Reset project cache to ensure clean state (no leftover mocks from setup-sandbox)
90
+ info('Resetting project cache...');
91
+ await resetProject(projectSlug);
92
+ // Ensure analyzer is up-to-date before debug setup
93
+ info('Checking analyzer...');
94
+ await ensureFreshAnalyzer(projectSlug, {
95
+ update: (message) => info(message),
96
+ });
97
+ // Clear log file before starting debug setup
98
+ const logPath = `/tmp/codeyam/local-dev/${projectSlug}/codeyam/log.txt`;
99
+ try {
100
+ fs.writeFileSync(logPath, '', 'utf8');
101
+ }
102
+ catch {
103
+ // Log file might not exist yet, that's fine
104
+ }
105
+ const { project } = await requireBranchAndProject(projectSlug);
106
+ const packageManager = project.metadata?.packageManager || 'npm';
107
+ const framework = project.metadata?.webapps?.[0]?.framework ?? ProjectFramework.Next;
108
+ const port = 3112;
109
+ const projectPath = `/tmp/codeyam/local-dev/${projectSlug}/project`;
110
+ // Reset scenario capture status
111
+ info('Resetting scenario status...');
112
+ await updateFreshAnalysisStatus(analysisId, (freshStatus) => {
113
+ if (!freshStatus)
114
+ return;
115
+ freshStatus.readyToBeCaptured = true;
116
+ if (freshStatus.scenarios) {
117
+ for (const scenario of freshStatus.scenarios) {
118
+ if (!scenarioId || scenario.name === scenarioId) {
119
+ delete scenario.screenshotStartedAt;
120
+ delete scenario.screenshotFinishedAt;
121
+ delete scenario.interactiveStartedAt;
122
+ delete scenario.interactiveFinishedAt;
123
+ delete scenario.error;
124
+ delete scenario.errorStack;
125
+ }
126
+ }
127
+ }
128
+ });
129
+ // Ensure web server is running
130
+ const { running, state } = isServerRunning();
131
+ let serverUrl;
132
+ if (running && state) {
133
+ serverUrl = state.url;
134
+ info(`Using web server at ${serverUrl}`);
135
+ }
136
+ else {
137
+ info('Starting web server...');
138
+ const { project: dbProject, branch } = await requireBranchAndProject(projectSlug);
139
+ const { url } = await startBackgroundServer({
140
+ port: 3111,
141
+ rootPath: projectRoot,
142
+ project: dbProject,
143
+ branch,
144
+ });
145
+ serverUrl = url;
146
+ info(`Web server started at ${serverUrl}`);
147
+ }
148
+ info('Queueing debug setup job...');
149
+ // Enqueue the job via HTTP API
150
+ const enqueueResponse = await fetch(`${serverUrl}/api/queue`, {
151
+ method: 'POST',
152
+ headers: { 'Content-Type': 'application/json' },
153
+ body: JSON.stringify({
154
+ action: 'enqueue',
155
+ type: 'debug-setup',
156
+ commitSha: analysis.commit.sha,
157
+ projectSlug,
158
+ analysisId,
159
+ scenarioId,
160
+ prepOnly: true,
161
+ }),
162
+ });
163
+ if (!enqueueResponse.ok) {
164
+ const errData = await enqueueResponse.json();
165
+ error(`Failed to enqueue job: ${errData.error || enqueueResponse.statusText}`);
166
+ return;
167
+ }
168
+ const { jobId } = await enqueueResponse.json();
169
+ info(`Job queued: ${jobId.substring(0, 8)}`);
170
+ info('');
171
+ info('Waiting for setup to complete...');
172
+ info('(This may take a minute as files are prepared)');
173
+ info('');
174
+ // Poll for job completion via HTTP API
175
+ const pollInterval = 1000;
176
+ let completed = false;
177
+ while (!completed) {
178
+ await new Promise((resolve) => setTimeout(resolve, pollInterval));
179
+ const statusResponse = await fetch(`${serverUrl}/api/queue?queryType=job&jobId=${encodeURIComponent(jobId)}`);
180
+ if (!statusResponse.ok) {
181
+ error(`Failed to check job status: ${statusResponse.statusText}`);
182
+ return;
183
+ }
184
+ const statusData = await statusResponse.json();
185
+ if (statusData.status === 'failed') {
186
+ error(`Debug setup failed: ${statusData.error || 'Unknown error'}`);
187
+ return;
188
+ }
189
+ if (statusData.status === 'completed') {
190
+ completed = true;
191
+ }
192
+ }
193
+ success('Debug environment ready!');
194
+ info('');
195
+ info('=== Next Steps ===');
196
+ info('');
197
+ info('1. Inspect the generated scenario files:');
198
+ info(` ${projectPath}`);
199
+ info('');
200
+ info('2. Look at the generated layout/component files:');
201
+ info(` ls ${projectPath}/app/static/`);
202
+ info('');
203
+ info('3. Start the development server:');
204
+ const startCmd = packageManager === 'npm'
205
+ ? `cd ${projectPath} && npm run dev`
206
+ : `cd ${projectPath} && ${packageManager} dev`;
207
+ info(` ${startCmd}`);
208
+ info('');
209
+ info(`4. View in browser: http://localhost:${port}/static/codeyam-sample`);
210
+ info('');
211
+ info('5. Check logs for errors:');
212
+ info(` tail -f ${logPath}`);
213
+ }
214
+ catch (err) {
215
+ error(`Debug setup failed: ${err.message}`);
216
+ console.error(err);
217
+ }
218
+ },
219
+ };
220
+ export default debugCommand;
221
+ //# sourceMappingURL=debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../../src/commands/debug.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { error, header, info, ProgressReporter, success, warn, } from "../utils/progress.js";
4
+ import { getProjectRoot } from "../state.js";
5
+ import { generateReportArchive, uploadReport, formatBytes, } from "../utils/generateReport.js";
6
+ const reportCommand = {
7
+ command: 'report',
8
+ describe: 'Create a debug report archive for sharing with the CodeYam team',
9
+ builder: {
10
+ output: {
11
+ type: 'string',
12
+ alias: 'o',
13
+ describe: 'Output path for the report archive (default: /tmp/codeyam/report-*.tar.gz)',
14
+ },
15
+ upload: {
16
+ type: 'boolean',
17
+ alias: 'u',
18
+ default: false,
19
+ describe: 'Upload the report to CodeYam servers after creating it',
20
+ },
21
+ },
22
+ handler: async (argv) => {
23
+ header('CodeYam Report');
24
+ const progress = new ProgressReporter();
25
+ const projectRoot = getProjectRoot();
26
+ if (!projectRoot) {
27
+ error('Not in a CodeYam project. Run: codeyam init');
28
+ return;
29
+ }
30
+ const configPath = path.join(projectRoot, '.codeyam', 'config.json');
31
+ try {
32
+ // Load project configuration
33
+ progress.start('Loading project configuration...');
34
+ if (!fs.existsSync(configPath)) {
35
+ progress.fail('No CodeYam configuration found');
36
+ error('Run: codeyam init');
37
+ return;
38
+ }
39
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
40
+ const { projectSlug } = config;
41
+ if (!projectSlug) {
42
+ progress.fail('Invalid project configuration');
43
+ error('Missing project slug. Try reinitializing with: codeyam init --force');
44
+ return;
45
+ }
46
+ progress.succeed('Loaded project configuration');
47
+ // Generate report archive
48
+ const result = await generateReportArchive({
49
+ projectRoot,
50
+ projectSlug,
51
+ outputPath: argv.output,
52
+ feedback: { source: 'cli', issueType: 'other' },
53
+ onProgress: (message) => {
54
+ progress.start(message);
55
+ },
56
+ });
57
+ progress.succeed('Created archive');
58
+ // Success!
59
+ console.log();
60
+ success('Report created successfully');
61
+ info(`Path: ${result.path}`);
62
+ info(`Size: ${formatBytes(result.size)}`);
63
+ if (result.metadata.git.isDirty) {
64
+ warn('Note: Working directory has uncommitted changes');
65
+ }
66
+ // Upload if requested
67
+ if (argv.upload) {
68
+ console.log();
69
+ try {
70
+ const uploadResult = await uploadReport({
71
+ archivePath: result.path,
72
+ projectSlug,
73
+ metadata: result.metadata,
74
+ onProgress: (message) => {
75
+ progress.start(message);
76
+ },
77
+ });
78
+ progress.succeed('Upload confirmed');
79
+ console.log();
80
+ success(`Report uploaded! ID: ${uploadResult.reportId}`);
81
+ }
82
+ catch (uploadError) {
83
+ progress.fail('Upload failed');
84
+ error(uploadError.message);
85
+ info('The local report file is still available at the path above.');
86
+ }
87
+ }
88
+ else {
89
+ console.log();
90
+ info('Share this file with the CodeYam team for debugging assistance.');
91
+ info('Or use --upload to upload directly to CodeYam servers.');
92
+ }
93
+ }
94
+ catch (err) {
95
+ progress.fail('Report generation failed');
96
+ error(err.message);
97
+ process.exit(1);
98
+ }
99
+ },
100
+ };
101
+ export default reportCommand;
102
+ //# sourceMappingURL=report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../src/commands/report.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,164 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { error, header, info, success, ProgressReporter, } from "../utils/progress.js";
4
+ import { initializeEnvironment, requireBranchAndProject, } from "../utils/database.js";
5
+ import { findProjectRoot } from "../utils/project.js";
6
+ import { setProjectRoot } from "../state.js";
7
+ import { copyNodeRepoQuickly, sanitizeEnvFiles } from "../../../packages/utils/server.js";
8
+ import { applyUniversalMocks } from "../../../packages/utils/index.js";
9
+ const DEFAULT_PORT = 9999;
10
+ const setupSandboxCommand = {
11
+ command: 'setup-sandbox',
12
+ describe: 'Create a sandbox copy of the project for iterating on startup fixes',
13
+ builder: {
14
+ port: {
15
+ type: 'number',
16
+ alias: 'p',
17
+ describe: 'Port to suggest for dev servers',
18
+ default: DEFAULT_PORT,
19
+ },
20
+ },
21
+ handler: async (argv) => {
22
+ header('Setting up sandbox environment');
23
+ const projectRoot = findProjectRoot();
24
+ if (!projectRoot) {
25
+ error('Not in a CodeYam project. Run "codeyam init" first.');
26
+ process.exit(1);
27
+ }
28
+ setProjectRoot(projectRoot);
29
+ const progress = new ProgressReporter();
30
+ try {
31
+ // Read project configuration
32
+ progress.start('Loading project configuration...');
33
+ const configPath = path.join(projectRoot, '.codeyam', 'config.json');
34
+ if (!fs.existsSync(configPath)) {
35
+ progress.fail('Configuration file not found');
36
+ error('Run "codeyam init" to initialize the project first');
37
+ return;
38
+ }
39
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
40
+ const { projectSlug } = config;
41
+ if (!projectSlug) {
42
+ progress.fail('Project slug not found in config');
43
+ return;
44
+ }
45
+ progress.succeed('Configuration loaded');
46
+ // Initialize environment
47
+ progress.start('Initializing environment...');
48
+ await initializeEnvironment();
49
+ progress.succeed('Environment initialized');
50
+ // Get project from database
51
+ progress.start('Loading project from database...');
52
+ const { project } = await requireBranchAndProject(projectSlug);
53
+ progress.succeed('Project loaded');
54
+ const packageManager = project.metadata?.packageManager || 'npm';
55
+ const webapps = project.metadata?.webapps || [];
56
+ const sandboxPath = `/tmp/codeyam/local-dev/${projectSlug}/project`;
57
+ const port = argv.port || DEFAULT_PORT;
58
+ progress.start('Copying project to sandbox...');
59
+ // Copy project to temp directory
60
+ await fs.promises.mkdir(path.dirname(sandboxPath), { recursive: true });
61
+ await copyNodeRepoQuickly({
62
+ sourcePath: projectRoot,
63
+ destinationPath: sandboxPath,
64
+ excludes: ['.codeyam'],
65
+ silent: true,
66
+ });
67
+ progress.succeed('Project copied');
68
+ // Sanitize env files - replace real values with dummies
69
+ progress.start('Sanitizing environment files...');
70
+ const envResult = await sanitizeEnvFiles({
71
+ projectPath: sandboxPath,
72
+ });
73
+ if (envResult.createdFiles.length > 0 ||
74
+ envResult.sanitizedFiles.length > 0) {
75
+ const created = envResult.createdFiles.length;
76
+ const sanitized = envResult.sanitizedFiles.length;
77
+ progress.succeed(`Sanitized env files (${created} created, ${sanitized} sanitized)`);
78
+ }
79
+ else {
80
+ progress.succeed('No env files to sanitize');
81
+ }
82
+ // Apply universal mocks to the sandbox
83
+ const universalMocks = project.metadata?.universalMocks ?? [];
84
+ if (universalMocks.length > 0) {
85
+ progress.start(`Applying ${universalMocks.length} universal mock(s)...`);
86
+ const mockResult = await applyUniversalMocks({
87
+ mocks: universalMocks,
88
+ projectPath: sandboxPath,
89
+ log: (msg) => info(msg),
90
+ });
91
+ if (mockResult.failed > 0) {
92
+ progress.fail(`Failed to apply ${mockResult.failed} mock(s)`);
93
+ for (const err of mockResult.errors) {
94
+ error(` ${err.filePath}:${err.entityName} - ${err.error}`);
95
+ }
96
+ }
97
+ else {
98
+ progress.succeed(`Applied ${mockResult.applied} universal mock(s)`);
99
+ }
100
+ }
101
+ // Output success message with instructions
102
+ console.log();
103
+ console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
104
+ success('SANDBOX READY');
105
+ console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
106
+ console.log();
107
+ info(`Sandbox path: ${sandboxPath}`);
108
+ console.log();
109
+ // Show start commands for each webapp
110
+ if (webapps.length > 0) {
111
+ console.log('Configured webapps:');
112
+ for (const webapp of webapps) {
113
+ const webappName = webapp.path === '.' ? 'Root' : webapp.path;
114
+ console.log(` - ${webappName} (${webapp.framework})`);
115
+ if (webapp.startCommand) {
116
+ const cmd = webapp.startCommand.command || packageManager;
117
+ let args = webapp.startCommand.args || ['dev'];
118
+ // Substitute $PORT
119
+ args = args.map((arg) => arg.includes('$PORT')
120
+ ? arg.replace('$PORT', port.toString())
121
+ : arg);
122
+ // Build env prefix
123
+ const envVars = [];
124
+ if (webapp.startCommand.env) {
125
+ for (const [key, value] of Object.entries(webapp.startCommand.env)) {
126
+ if (typeof value === 'string' && value.includes('$PORT')) {
127
+ envVars.push(`${key}=${value.replace('$PORT', port.toString())}`);
128
+ }
129
+ else {
130
+ envVars.push(`${key}=${value}`);
131
+ }
132
+ }
133
+ }
134
+ const envPrefix = envVars.length > 0 ? envVars.join(' ') + ' ' : '';
135
+ console.log(` Start: cd ${sandboxPath} && ${envPrefix}${cmd} ${args.join(' ')}`);
136
+ }
137
+ else {
138
+ console.log(` Start: (no startCommand configured)`);
139
+ }
140
+ }
141
+ console.log();
142
+ }
143
+ console.log('To test, start a server and then:');
144
+ console.log(` curl http://localhost:${port}`);
145
+ console.log();
146
+ console.log('Fix any errors directly in the sandbox files.');
147
+ console.log('Once each fix works, also write it to .codeyam/universal-mocks/');
148
+ console.log();
149
+ console.log('When done, verify all webapps with:');
150
+ for (const webapp of webapps) {
151
+ console.log(` codeyam test-startup --webappPath ${webapp.path} --debug`);
152
+ }
153
+ console.log();
154
+ }
155
+ catch (err) {
156
+ progress.fail('Setup failed');
157
+ const message = err instanceof Error ? err.message : String(err);
158
+ error(message);
159
+ process.exit(1);
160
+ }
161
+ },
162
+ };
163
+ export default setupSandboxCommand;
164
+ //# sourceMappingURL=setup-sandbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-sandbox.js","sourceRoot":"","sources":["../../../../src/commands/setup-sandbox.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,MAAM,mBAAmB,GAA4C;IACnE,OAAO,EAAE,eAAe;IACxB,QAAQ,EACN,qEAAqE;IACvE,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,iCAAiC;YAC3C,OAAO,EAAE,YAAY;SACtB;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,CAAC,gCAAgC,CAAC,CAAC;QAEzC,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,qDAAqD,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,cAAc,CAAC,WAAW,CAAC,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAExC,IAAI,CAAC;YACH,6BAA6B;YAC7B,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;YACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/B,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAC9C,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBAC5D,OAAO;YACT,CAAC;YAED,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,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBAClD,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YAEzC,yBAAyB;YACzB,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC9C,MAAM,qBAAqB,EAAE,CAAC;YAC9B,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;YAE5C,4BAA4B;YAC5B,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACnD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;YAC/D,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAEnC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,cAAc,IAAI,KAAK,CAAC;YACjE,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;YAChD,MAAM,WAAW,GAAG,0BAA0B,WAAW,UAAU,CAAC;YACpE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC;YAEvC,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAEhD,iCAAiC;YACjC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxE,MAAM,mBAAmB,CAAC;gBACxB,UAAU,EAAE,WAAW;gBACvB,eAAe,EAAE,WAAW;gBAC5B,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAEnC,wDAAwD;YACxD,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC;gBACvC,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;YAEH,IACE,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;gBACjC,SAAS,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EACnC,CAAC;gBACD,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC9C,MAAM,SAAS,GAAG,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC;gBAClD,QAAQ,CAAC,OAAO,CACd,wBAAwB,OAAO,aAAa,SAAS,aAAa,CACnE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAC/C,CAAC;YAED,uCAAuC;YACvC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,cAAc,IAAI,EAAE,CAAC;YAC9D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,KAAK,CACZ,YAAY,cAAc,CAAC,MAAM,uBAAuB,CACzD,CAAC;gBAEF,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC;oBAC3C,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,WAAW;oBACxB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;iBACxB,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,UAAU,CAAC,MAAM,UAAU,CAAC,CAAC;oBAC9D,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;wBACpC,KAAK,CAAC,KAAK,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,OAAO,CAAC,WAAW,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;YACzE,OAAO,CAAC,eAAe,CAAC,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;YACzE,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,sCAAsC;YACtC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBACnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC9D,OAAO,CAAC,GAAG,CAAC,OAAO,UAAU,KAAK,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;oBAEvD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;wBACxB,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,IAAI,cAAc,CAAC;wBAC1D,IAAI,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;wBAE/C,mBAAmB;wBACnB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE,CAC9B,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;4BACnB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACvC,CAAC,CAAC,GAAG,CACR,CAAC;wBAEF,mBAAmB;wBACnB,MAAM,OAAO,GAAa,EAAE,CAAC;wBAC7B,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;4BAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CACvC,MAAM,CAAC,YAAY,CAAC,GAAG,CACxB,EAAE,CAAC;gCACF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oCACzD,OAAO,CAAC,IAAI,CACV,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,CACpD,CAAC;gCACJ,CAAC;qCAAM,CAAC;oCACN,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;gCAClC,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpE,OAAO,CAAC,GAAG,CACT,iBAAiB,WAAW,OAAO,SAAS,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACvE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;YACF,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CACT,uCAAuC,MAAM,CAAC,IAAI,UAAU,CAC7D,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,KAAK,CAAC,OAAO,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -114,7 +114,7 @@ describe('cleanupAnalysisFiles', () => {
114
114
  };
115
115
  mockFs.existsSync.mockReturnValue(true);
116
116
  mockFs.unlinkSync.mockImplementation(() => { });
117
- mockFs.rmdirSync.mockImplementation(() => { });
117
+ mockFs.rmSync.mockImplementation(() => { });
118
118
  deleteAnalysisFiles(projectSlug, analysis);
119
119
  expect(mockFs.unlinkSync).toHaveBeenCalledTimes(2);
120
120
  });
@@ -133,14 +133,14 @@ describe('cleanupAnalysisFiles', () => {
133
133
  };
134
134
  mockFs.existsSync.mockReturnValue(true);
135
135
  mockFs.unlinkSync.mockImplementation(() => { });
136
- mockFs.rmdirSync.mockImplementation(() => { });
136
+ mockFs.rmSync.mockImplementation(() => { });
137
137
  deleteAnalysisFiles(projectSlug, analysis);
138
138
  const screenshotsDir = path.join(projectRoot, '.codeyam', 'captures', 'screenshots', projectSlug, analysisId);
139
139
  const staticDir = path.join(projectRoot, '.codeyam', 'captures', 'static', projectSlug, analysisId);
140
- expect(mockFs.rmdirSync).toHaveBeenCalledWith(screenshotsDir, {
140
+ expect(mockFs.rmSync).toHaveBeenCalledWith(screenshotsDir, {
141
141
  recursive: true,
142
142
  });
143
- expect(mockFs.rmdirSync).toHaveBeenCalledWith(staticDir, {
143
+ expect(mockFs.rmSync).toHaveBeenCalledWith(staticDir, {
144
144
  recursive: true,
145
145
  });
146
146
  });
@@ -167,7 +167,7 @@ describe('cleanupAnalysisFiles', () => {
167
167
  };
168
168
  mockFs.existsSync.mockReturnValue(true);
169
169
  mockFs.unlinkSync.mockImplementation(() => { });
170
- mockFs.rmdirSync.mockImplementation(() => {
170
+ mockFs.rmSync.mockImplementation(() => {
171
171
  throw new Error('Directory not empty');
172
172
  });
173
173
  // Should not throw
@@ -206,7 +206,7 @@ describe('cleanupAnalysisFiles', () => {
206
206
  ];
207
207
  mockFs.existsSync.mockReturnValue(true);
208
208
  mockFs.unlinkSync.mockImplementation(() => { });
209
- mockFs.rmdirSync.mockImplementation(() => { });
209
+ mockFs.rmSync.mockImplementation(() => { });
210
210
  deleteMultipleAnalysesFiles(projectSlug, analyses);
211
211
  expect(mockFs.unlinkSync).toHaveBeenCalledTimes(2);
212
212
  });
@@ -1 +1 @@
1
- {"version":3,"file":"cleanupAnalysisFiles.test.js","sourceRoot":"","sources":["../../../../../src/utils/__tests__/cleanupAnalysisFiles.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,oBAAoB;AACpB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAEzB,MAAM,MAAM,GAAG,EAA4B,CAAC;AAC5C,MAAM,kBAAkB,GAAG,cAE1B,CAAC;AAEF,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,MAAM,WAAW,GAAG,qBAAqB,CAAC;IAC1C,MAAM,WAAW,GAAG,cAAc,CAAC;IACnC,MAAM,UAAU,GAAG,cAAc,CAAC;IAElC,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,kBAAkB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACpC,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE;oBACR,eAAe,EAAE;wBACf,GAAG,WAAW,IAAI,UAAU,kBAAkB;wBAC9C,GAAG,WAAW,IAAI,UAAU,kBAAkB;qBAC/C;iBACF;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAE/C,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,QAAoB,CAAC,CAAC;YAEnE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAC5C,IAAI,CAAC,IAAI,CACP,WAAW,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAC/C,CACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAC5C,IAAI,CAAC,IAAI,CACP,WAAW,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAC/C,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC7C,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE;oBACR,sBAAsB,EAAE,GAAG,WAAW,IAAI,UAAU,eAAe;iBACpE;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAE/C,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,QAAoB,CAAC,CAAC;YAEnE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAC5C,IAAI,CAAC,IAAI,CACP,WAAW,EACX,UAAU,EACV,UAAU,EACV,QAAQ,EACR,GAAG,WAAW,IAAI,UAAU,eAAe,CAC5C,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC5C,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE;oBACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAAC;iBAClE;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAEzC,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,QAAoB,CAAC,CAAC;YAEnE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC1C,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE;oBACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,iBAAiB,CAAC;iBACjE;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,mBAAmB;YACnB,MAAM,CAAC,GAAG,EAAE;gBACV,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,QAAoB,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC7C,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAEzC,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE;oBACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,iBAAiB,CAAC;iBACjE;aACF,CAAC;YAEF,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,QAAoB,CAAC,CAAC;YAEnE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,UAAU;gBACd,SAAS,EAAE;oBACT;wBACE,EAAE,EAAE,YAAY;wBAChB,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE;4BACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAAC;yBAClE;qBACK;oBACR;wBACE,EAAE,EAAE,YAAY;wBAChB,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE;4BACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAAC;yBAClE;qBACK;iBACT;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAE9C,mBAAmB,CAAC,WAAW,EAAE,QAAoB,CAAC,CAAC;YAEvD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACnD,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,UAAU;gBACd,SAAS,EAAE;oBACT;wBACE,EAAE,EAAE,YAAY;wBAChB,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE;4BACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAAC;yBAClE;qBACK;iBACT;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAE9C,mBAAmB,CAAC,WAAW,EAAE,QAAoB,CAAC,CAAC;YAEvD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAC9B,WAAW,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,WAAW,EACX,UAAU,CACX,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,WAAW,EACX,UAAU,EACV,UAAU,EACV,QAAQ,EACR,WAAW,EACX,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,cAAc,EAAE;gBAC5D,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE;gBACvD,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,UAAU;gBACd,SAAS,EAAE,EAAE;aACd,CAAC;YAEF,mBAAmB,CAAC,WAAW,EAAE,QAAoB,CAAC,CAAC;YAEvD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,QAAQ,GAAsB;gBAClC,EAAE,EAAE,UAAU;gBACd,SAAS,EAAE;oBACT;wBACE,EAAE,EAAE,YAAY;wBAChB,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE;4BACR,eAAe,EAAE,CAAC,GAAG,WAAW,IAAI,UAAU,kBAAkB,CAAC;yBAClE;qBACK;iBACT;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,mBAAmB;YACnB,MAAM,CAAC,GAAG,EAAE;gBACV,mBAAmB,CAAC,WAAW,EAAE,QAAoB,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC/C,MAAM,QAAQ,GAAwB;gBACpC;oBACE,EAAE,EAAE,YAAY;oBAChB,SAAS,EAAE;wBACT;4BACE,EAAE,EAAE,YAAY;4BAChB,IAAI,EAAE,YAAY;4BAClB,QAAQ,EAAE;gCACR,eAAe,EAAE,CAAC,GAAG,WAAW,6BAA6B,CAAC;6BAC/D;yBACK;qBACT;iBACF;gBACD;oBACE,EAAE,EAAE,YAAY;oBAChB,SAAS,EAAE;wBACT;4BACE,EAAE,EAAE,YAAY;4BAChB,IAAI,EAAE,YAAY;4BAClB,QAAQ,EAAE;gCACR,eAAe,EAAE,CAAC,GAAG,WAAW,6BAA6B,CAAC;6BAC/D;yBACK;qBACT;iBACF;aACF,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAE9C,2BAA2B,CAAC,WAAW,EAAE,QAAsB,CAAC,CAAC;YAEjE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,2BAA2B,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAE7C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cleanupAnalysisFiles.test.js","sourceRoot":"","sources":["../../../../../src/utils/__tests__/cleanupAnalysisFiles.test.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,10 @@ describe('setupClaudeCodeSettings', () => {
114
114
  'Edit(.codeyam/**)',
115
115
  'Write(.codeyam/**)',
116
116
  'Glob(.codeyam/**)',
117
+ 'Read(/tmp/codeyam/**)',
118
+ 'Edit(/tmp/codeyam/**)',
119
+ 'Write(/tmp/codeyam/**)',
120
+ 'Glob(/tmp/codeyam/**)',
117
121
  'other-tool',
118
122
  ],
119
123
  },
@@ -202,6 +206,10 @@ describe('setupClaudeCodeSettings', () => {
202
206
  'Edit(.codeyam/**)',
203
207
  'Write(.codeyam/**)',
204
208
  'Glob(.codeyam/**)',
209
+ 'Read(/tmp/codeyam/**)',
210
+ 'Edit(/tmp/codeyam/**)',
211
+ 'Write(/tmp/codeyam/**)',
212
+ 'Glob(/tmp/codeyam/**)',
205
213
  ],
206
214
  },
207
215
  }));