@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
@@ -1 +1 @@
1
- import{Y as G,M as H,N as I,W as J,O as K,R as L,T as Z,V as _,U as $,X as rr,Q as tr}from"./assets/server-build-DGGis3OZ.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"react-resizable";import"openai";import"p-queue";import"p-retry";import"child_process";import"util";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"dotenv";import"events";import"uuid";import"url";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"v8";import"react-diff-viewer-continued";export{G as assets,H as assetsBuildDirectory,I as basename,J as entry,K as future,L as isSpaMode,Z as prerender,_ as publicPath,$ as routeDiscovery,rr as routes,tr as ssr};
1
+ import{Y as G,M as H,N as I,W as J,O as K,R as L,T as Z,V as _,U as $,X as rr,Q as tr}from"./assets/server-build-vwbN7n65.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"react-resizable";import"openai";import"p-queue";import"p-retry";import"child_process";import"util";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"dotenv";import"events";import"uuid";import"url";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"v8";import"react-diff-viewer-continued";export{G as assets,H as assetsBuildDirectory,I as basename,J as entry,K as future,L as isSpaMode,Z as prerender,_ as publicPath,$ as routeDiscovery,rr as routes,tr as ssr};
@@ -1,7 +1,7 @@
1
1
  {
2
- "buildTimestamp": "2025-12-11T19:58:35.368Z",
3
- "buildTime": 1765483115368,
4
- "buildNumber": 71,
5
- "semanticVersion": "0.1.71",
6
- "version": "0.1.71 (2025-12-11T19:58)"
2
+ "buildTimestamp": "2025-12-16T20:02:18.891Z",
3
+ "buildTime": 1765915338891,
4
+ "buildNumber": 100,
5
+ "semanticVersion": "0.1.100",
6
+ "version": "0.1.100 (2025-12-16T20:02)"
7
7
  }
@@ -5,8 +5,9 @@ description: |
5
5
  Use this skill when the user asks to "setup CodeYam" or needs to configure CodeYam for their project.
6
6
  This skill guides you through:
7
7
  - Configuring the dev server start command
8
- - Testing that the project starts correctly in isolation
9
- - Creating universal mocks for dependencies that prevent startup
8
+ - Creating a sandbox to iterate on startup fixes directly
9
+ - Writing universal mocks for dependencies that prevent startup
10
+ - Verifying with test-startup at the end
10
11
  Use when: User runs `codeyam init` and wants to complete the setup process
11
12
  ---
12
13
 
@@ -173,61 +174,81 @@ architecture).
173
174
  codeyam update-config
174
175
  ```
175
176
 
176
- ### Step 2: Test Startup for Selected Webapps
177
+ ### Step 2: Setup Sandbox and Fix Startup Errors
177
178
 
178
- **IMPORTANT: You must test EVERY webapp selected in Step 1**
179
+ After configuring startCommands, create a sandbox to iterate on fixes directly.
179
180
 
180
- **ACTION 1:** Get the selected webapps from config:
181
+ **2A. Tell the user what's happening**
182
+
183
+ Before running `setup-sandbox`, inform the user:
184
+
185
+ ```
186
+ Now I need to test that your app can start without real environment variables and
187
+ no access to external services such as the database.
188
+
189
+ I'll clone your project to a temporary directory and try running the dev server.
190
+ Any code that fails due to missing env vars or external dependencies will need
191
+ to be mocked. This may take a few iterations.
192
+ ```
193
+
194
+ **2B. Create the sandbox**
181
195
 
182
196
  ```bash
183
- cat .codeyam/config.json | grep -A 100 '"webapps"'
197
+ codeyam setup-sandbox
184
198
  ```
185
199
 
186
- Or read `.codeyam/config.json` directly and note all webapp paths.
200
+ This:
187
201
 
188
- **ACTION 2:** Test each webapp individually using `--webappPath`:
202
+ - Copies the project to `/tmp/codeyam/local-dev/{slug}/project`
203
+ - Sanitizes env files (replaces real values with dummies)
204
+ - Applies any existing universal mocks
205
+ - Shows start commands for each webapp
189
206
 
190
- For a project with webapps at paths `apps/web` and `apps/admin`:
207
+ **2C. Start a server in the sandbox**
191
208
 
192
- ```bash
193
- # Test first webapp
194
- codeyam test-startup --webappPath apps/web --debug
209
+ Use one of the start commands shown by setup-sandbox. Run in background:
195
210
 
196
- # Test second webapp (only after first succeeds or is fixed)
197
- codeyam test-startup --webappPath apps/admin --debug
211
+ ```bash
212
+ cd /tmp/codeyam/local-dev/{slug}/project && pnpm dev --port 9999 &
198
213
  ```
199
214
 
200
- For a single webapp at root (path is `.`):
215
+ **2D. Test the page**
201
216
 
202
217
  ```bash
203
- codeyam test-startup --webappPath . --debug
218
+ curl http://localhost:9999
204
219
  ```
205
220
 
206
- **ACTION 3:** Track progress for each webapp:
221
+ Or use WebFetch to see the response and any errors.
207
222
 
208
- - Keep a checklist of all webapps
209
- - Mark each as passing or failing
210
- - ALL selected webapps must pass before proceeding to Step 4
223
+ **2E. Fix ALL errors in the sandbox first**
211
224
 
212
- **Flow for each webapp:**
225
+ **IMPORTANT:** Fix all errors directly in the sandbox before writing anything to `.codeyam/universal-mocks/`. This is more efficient than re-running `setup-sandbox` after each fix.
213
226
 
214
- - If success Move to next webapp
215
- - If error → Go to Step 3, create mocks, re-test THIS webapp until it passes
216
- - Only after ALL selected webapps pass → Go to Step 4
227
+ **Iteration loop (stay in sandbox):**
217
228
 
218
- ### Step 3: Fix Errors (Environment Variables or Mocks)
229
+ 1. **Read the error** to identify the failing file (look for file paths in stack traces)
230
+ 2. **Read the file** in the sandbox: `/tmp/codeyam/local-dev/{slug}/project/{path}`
231
+ 3. **Edit the file** in the sandbox to fix the error with minimal mock code
232
+ 4. **Restart the server**: `pkill -f "next dev\|remix dev\|vite" ; cd /tmp/codeyam/local-dev/{slug}/project && <start-command> &`
233
+ 5. **Test again** with curl/fetch
234
+ 6. **Repeat steps 1-5** for each new error until the page loads successfully
219
235
 
220
- **Note:** Apply this step to whichever webapp(s) failed. Fixes apply to ALL webapps.
236
+ **Once the page loads successfully in the sandbox:**
221
237
 
222
- **3A. Analyze the error**
238
+ 7. **Write ALL fixes** to `.codeyam/universal-mocks/{path}` in the original project
239
+ 8. **Validate each mock**: `codeyam validate-mock .codeyam/universal-mocks/{path}`
240
+ 9. **Re-run setup-sandbox** to verify mocks apply correctly: `codeyam setup-sandbox`
241
+ 10. **Start server and test** one more time to confirm
223
242
 
224
- Read the error output from the failing webapp. Identify:
243
+ **Key principles for fixes:**
225
244
 
226
- - What is causing the error?
227
- - Is it a missing environment variable? Use **3B (Environment Variables)**
228
- - Is it a database/API client initializing? Use **3C (Mocks)**
245
+ - Only modify CODE files (.ts, .tsx, .js, .jsx), never config files
246
+ - Mock at the source (the function that fails, not its callers)
247
+ - Keep fixes minimal - replace functions/methods with simple return values
248
+ - Match the expected return type (null, [], {}, etc.)
249
+ - Track which files you modified in the sandbox so you can write them all to universal-mocks at the end
229
250
 
230
- **3B. Add Environment Variables (if needed)**
251
+ **2F. Environment Variables (if needed)**
231
252
 
232
253
  For errors about missing env vars (e.g., `NEXT_PUBLIC_API_URL is undefined`), add them to `.codeyam/config.json`:
233
254
 
@@ -236,71 +257,29 @@ For errors about missing env vars (e.g., `NEXT_PUBLIC_API_URL is undefined`), ad
236
257
  {
237
258
  "key": "NEXT_PUBLIC_API_URL",
238
259
  "value": "http://localhost:3000"
239
- },
240
- {
241
- "key": "DATABASE_URL",
242
- "value": "postgresql://mock:mock@localhost:5432/mock"
243
260
  }
244
261
  ]
245
262
  ```
246
263
 
247
- Then sync and re-test:
248
-
249
- ```bash
250
- codeyam update-config && codeyam test-startup --webappPath <path> --debug
251
- ```
252
-
253
- **Note:** These are safe dummy values - they won't connect to real services.
264
+ Then run `codeyam update-config` to sync. These are safe dummy values.
254
265
 
255
- **3C. Determine if a mock is needed**
266
+ ### Step 3: Final Verification
256
267
 
257
- For errors from code trying to connect to external services (databases, APIs), create mocks.
268
+ Once all webapps work in the sandbox AND fixes have been written to `.codeyam/universal-mocks/`:
258
269
 
259
- Read the error output. Identify:
260
-
261
- - What file is throwing the error?
262
- - What dependency is it trying to use?
263
-
264
- **3D. Determine mock path**
265
-
266
- Use the decision tree above:
267
-
268
- - Error from `@prisma/client`? → `.codeyam/universal-mocks/node_modules/@prisma/client.ts`
269
- - Error from `lib/supabase.ts`? → `.codeyam/universal-mocks/lib/supabase.ts`
270
- - Error from `packages/prisma/index.ts`? → `.codeyam/universal-mocks/packages/prisma/index.ts`
271
-
272
- **3E. Read the original file**
273
-
274
- ALWAYS read the original file before creating a mock. Note:
275
-
276
- - What names are exported?
277
- - Are they `export const`, `export function`, `export default`?
278
-
279
- **3F. Write the mock**
280
-
281
- Create a minimal mock that:
282
-
283
- - Exports the SAME names as the original
284
- - Has ALL code inlined in exports
285
- - Returns simple values (null, [], {}, 0)
286
-
287
- **3G. Validate before retrying**
270
+ **Test each webapp with test-startup:**
288
271
 
289
272
  ```bash
290
- codeyam validate-mock .codeyam/universal-mocks/{path-to-mock}
273
+ codeyam test-startup --webappPath <path> --debug
291
274
  ```
292
275
 
293
- Fix any errors shown, then re-test the specific webapp that failed:
294
-
295
- ```bash
296
- codeyam test-startup --webappPath <failing-webapp-path> --debug
297
- ```
276
+ This verifies the mocks work correctly in the standard CodeYam flow.
298
277
 
299
- Repeat until the webapp passes, then continue testing remaining webapps.
278
+ **ALL webapps must pass test-startup before proceeding to Step 4.**
300
279
 
301
280
  ### Step 4: Success
302
281
 
303
- Once `test-startup` passes for ALL selected webapps:
282
+ Once `test-startup` passes for ALL webapps:
304
283
 
305
284
  1. Run `codeyam suggest --limit 1 --verbose` (timeout: 5 minutes)
306
285
  2. Tell user CodeYam is ready
@@ -447,9 +426,10 @@ export const prisma = {
447
426
 
448
427
  Setup is complete when:
449
428
 
450
- - ✅ Selected `webapps` configured in `.codeyam/config.json` with startCommand **including `$PORT` placeholder**
451
- - ✅ `environmentVariables` added to config (if required for startup)
452
- - ✅ `codeyam test-startup --webappPath <path> --debug` passes for all SELECTED webapps
429
+ - ✅ `webapps` configured in `.codeyam/config.json` with startCommand **including `$PORT` placeholder**
430
+ - ✅ Sandbox created and all webapps start successfully with fixes applied
431
+ - ✅ All fixes written to `.codeyam/universal-mocks/`
432
+ - ✅ `codeyam test-startup --webappPath <path> --debug` passes for ALL webapps
453
433
  - ✅ User knows how to use CodeYam (analyze, test)
454
434
 
455
435
  **CRITICAL:** The startCommand must include `$PORT` in the args (e.g., `["dev", "--port", "$PORT"]`) or env (e.g., `{"PORT": "$PORT"}`). Without this, CodeYam cannot start the server on the required port for capture.
@@ -0,0 +1,125 @@
1
+ # Debug Scenario or Analysis
2
+
3
+ When a user asks to debug a scenario or analysis (e.g., `/debug [ID]`), use this systematic process. The `codeyam debug` command auto-detects whether you've provided a scenario ID or analysis ID.
4
+
5
+ ## Step 1: Run Debug Command
6
+
7
+ Set up the debug environment with the ID provided:
8
+
9
+ ```bash
10
+ cd ../PROJECT_NAME
11
+ codeyam debug ID
12
+ ```
13
+
14
+ The command auto-detects whether the ID is a scenario or analysis.
15
+
16
+ The output includes:
17
+
18
+ 1. **Project path**: `/tmp/codeyam/local-dev/{slug}/project`
19
+ 2. **Start command**: The exact `cd ... && pnpm dev` command to run
20
+ 3. **URL**: `http://localhost:3112/static/codeyam-sample`
21
+ 4. **Log path**: Where to watch for errors
22
+
23
+ ---
24
+
25
+ ## Step 2: Manual Debugging in /tmp
26
+
27
+ Work directly in the Tmp Project at `/tmp/codeyam/local-dev/{slug}/project`.
28
+
29
+ ### 2.1 Start the development server
30
+
31
+ Copy the start command from the debug output and run it:
32
+
33
+ ```bash
34
+ cd /tmp/codeyam/local-dev/{slug}/project && pnpm dev
35
+ # Or the framework-specific command shown in the debug output
36
+ ```
37
+
38
+ ### 2.2 Verify the page loads with curl
39
+
40
+ **CRITICAL: Server starting is NOT sufficient verification.**
41
+
42
+ ```bash
43
+ curl -s http://localhost:3112/static/codeyam-sample | head -50
44
+ ```
45
+
46
+ **What to look for:**
47
+
48
+ - **Success**: HTML with `<div>` elements, no error messages
49
+ - **Failure**: Look for `"statusCode":500` or `"err":` in the JSON
50
+
51
+ ### 2.3 Verification checklist
52
+
53
+ Before declaring "it works", confirm ALL of these:
54
+
55
+ - [ ] Server process started without crashing
56
+ - [ ] `curl` returns clean HTML (no `statusCode:500` or error messages)
57
+ - [ ] Browser shows the component rendering (not blank/error)
58
+ - [ ] No errors in browser console (DevTools > Console)
59
+
60
+ **If ANY of these fail, the bug is NOT fixed. Keep iterating.**
61
+
62
+ ### 2.4 Identify and fix the issue
63
+
64
+ Common failure points:
65
+
66
+ 1. **Server fails to start**: JSON parse errors, missing dependencies, port in use
67
+ 2. **Page fails to compile**: Missing exports in mock files, import resolution failures
68
+ 3. **Page loads but component doesn't render**: ReferenceError, missing mock data
69
+
70
+ **Fix the issue directly in the Tmp Project files.** Iterate until all verification checks pass.
71
+
72
+ ---
73
+
74
+ ## Step 3: Document the Fix
75
+
76
+ Once verified (all checklist items pass):
77
+
78
+ 1. **What file(s) did you edit?**
79
+ 2. **What was the change?**
80
+ 3. **Why was the original code wrong?**
81
+
82
+ Categorize the fix:
83
+
84
+ - **Mock content issue**: The generated mock had wrong exports or missing values
85
+ - **Scenario file issue**: The scenario component file had incorrect structure
86
+ - **Import rewriting issue**: An import was incorrectly rewritten or not rewritten
87
+ - **Package.json corruption**: JSON files were incorrectly modified
88
+ - **Missing dependency**: A required package wasn't installed
89
+
90
+ ---
91
+
92
+ ## Step 4: Create a Failing Test (in CodeYam Repo)
93
+
94
+ Write a test that fails without the fix:
95
+
96
+ | Bug type | Test location |
97
+ | ------------------------ | ---------------------------------------------------------------------------------- |
98
+ | Scenario file generation | `background/src/lib/virtualized/project/__tests__/writeScenarioComponents.test.ts` |
99
+ | Universal mocks | `background/src/lib/virtualized/project/__tests__/writeUniversalMocks.test.ts` |
100
+ | Mock generation | `background/src/lib/virtualized/project/__tests__/constructMockCode.test.ts` |
101
+ | Entity analysis | `packages/analyze/src/lib/files/__tests__/*.test.ts` |
102
+ | Scope analysis | `packages/ai/src/lib/astScopes/__tests__/*.test.ts` |
103
+
104
+ ---
105
+
106
+ ## Step 5: Implement the Fix
107
+
108
+ 1. Edit the source file in the CodeYam Repo
109
+ 2. Run the test to confirm it passes
110
+ 3. Rebuild the CLI: `pnpm cli`
111
+ 4. Clear the cached project: `rm -rf /tmp/codeyam/local-dev/{slug}/project`
112
+ 5. Re-run debug: `codeyam debug ID`
113
+ 6. **Run the full verification checklist** - server starts, page loads, component renders
114
+
115
+ ---
116
+
117
+ ## Key Source Files
118
+
119
+ | Purpose | File |
120
+ | --------------------- | ------------------------------------------------------------------- |
121
+ | Universal mocks | `background/src/lib/virtualized/project/writeUniversalMocks.ts` |
122
+ | Scenario file writing | `background/src/lib/virtualized/project/writeScenarioComponents.ts` |
123
+ | Mock code generation | `background/src/lib/virtualized/project/constructMockCode.ts` |
124
+ | Entity analysis | `packages/analyze/src/lib/files/analyzeEntity.ts` |
125
+ | Data structure | `packages/ai/src/lib/generateEntityDataStructure.ts` |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codeyam/codeyam-cli",
3
- "version": "0.1.0-staging.09652b8",
3
+ "version": "0.1.0-staging.28f73cf",
4
4
  "description": "Local development CLI for CodeYam analysis",
5
5
  "type": "module",
6
6
  "bin": {
@@ -13,6 +13,7 @@
13
13
  "@anthropic-ai/claude-code": "^2.0.22",
14
14
  "@anthropic-ai/sdk": "^0.71.0",
15
15
  "@aws-sdk/client-dynamodb": "^3.899.0",
16
+ "@aws-sdk/s3-request-presigner": "^3.899.0",
16
17
  "@aws-sdk/util-dynamodb": "^3.902.0",
17
18
  "@modelcontextprotocol/sdk": "^1.24.0",
18
19
  "@octokit/auth-app": "^8.1.0",
@@ -34,8 +35,8 @@
34
35
  "get-port": "^7.1.0",
35
36
  "htmlparser2": "^10.0.0",
36
37
  "isbot": "^4",
37
- "jest": "^30.2.0",
38
- "jsdom": "^26.1.0",
38
+ "jsdom": "^27.3.0",
39
+ "json5": "^2.2.3",
39
40
  "jsonc-parser": "^3.2.1",
40
41
  "kysely": "^0.28.5",
41
42
  "lru-cache": "^11.2.4",
@@ -43,7 +44,6 @@
43
44
  "openai": "^6.9.0",
44
45
  "p-queue": "^8.1.0",
45
46
  "p-retry": "^6.2.1",
46
- "patch-package": "^8.0.0",
47
47
  "pg": "^8.16.3",
48
48
  "piscina": "^5.1.4",
49
49
  "pixelmatch": "^5.3.0",
@@ -57,10 +57,8 @@
57
57
  "react-syntax-highlighter": "^15.5.13",
58
58
  "sharp": "^0.34.5",
59
59
  "simple-git": "^3.28.0",
60
- "tailwindcss": "^4.1.16",
61
60
  "typescript": "^5.9.3",
62
61
  "uuid": "^11.1.0",
63
- "vite": "^7.2.6",
64
62
  "yargs": "^18.0.0",
65
63
  "zod": "^4.1.11"
66
64
  },
@@ -38,7 +38,7 @@ export { fillInDirectSchemaGapsAndUnknowns } from "./src/lib/dataStructure/helpe
38
38
  export { default as deduplicateFunctionSchemas } from "./src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js";
39
39
  export { default as gatherRelevantDependentKeyAttributes } from "./src/lib/gatherRelevantDependentKeyAttributes.js";
40
40
  export { default as getConditionalUsagesFromCode } from "./src/lib/getConditionalUsagesFromCode.js";
41
- export { getExternalFunctionCallInfo, getFunctionSignature, getReturnValue, getUsageEquivalencies, getSourceEquivalencies, getEquivalentSignatureVariables, } from "./src/lib/worker/SerializableDataStructure.js";
41
+ export { getExternalFunctionCallInfo, getFunctionSignature, getReturnValue, getUsageEquivalencies, getSourceEquivalencies, getEquivalentSignatureVariables, getConditionalUsages, } from "./src/lib/worker/SerializableDataStructure.js";
42
42
  export { parseJsonSafe } from "./src/lib/parsers/parseJsonSafe.js";
43
43
  export { default as completionCall } from "./src/lib/completionCall.js";
44
44
  // Wrapper detection
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/ai/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,8CAA8C,CAAC;AAC7G,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EACL,OAAO,IAAI,0BAA0B,EACrC,uBAAuB,GACxB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,0CAA0C,CAAC;AACrG,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,6CAA6C,CAAC;AAC3G,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,8CAA8C,CAAC;AAC7G,OAAO,EACL,OAAO,IAAI,yBAAyB,GAErC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,OAAO,IAAI,gCAAgC,GAE5C,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,0CAA0C,EAAE,MAAM,sDAAsD,CAAC;AAC7H,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EACL,OAAO,IAAI,uBAAuB,EAClC,gCAAgC,EAChC,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,oCAAoC,EAAE,MAAM,2DAA2D,CAAC;AACjH,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAC;AACrG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,4DAA4D,CAAC;AACnH,OAAO,EAAE,OAAO,IAAI,oCAAoC,EAAE,MAAM,gDAAgD,CAAC;AACjH,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAYjG,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAErE,oBAAoB;AACpB,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAGnF,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAE3C,2CAA2C;AAC3C,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/ai/index.ts"],"names":[],"mappings":"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"}
@@ -112,10 +112,19 @@ export async function analyzeScopeLocal({ entity, fileAnalyzer, scope, scopeData
112
112
  }));
113
113
  const llmCalls = [];
114
114
  const allEnvironmentVariables = new Set();
115
+ // Collect conditional usages from all statement analyses
116
+ const allConditionalUsages = {};
115
117
  const astAnalysisResultWithStatements = statementScopes.map((statementScope) => {
116
118
  const astAnalysisResult = analyzeScopeWithAst(fileAnalyzer, statementScope);
117
119
  // Collect environment variables from AST analysis
118
120
  astAnalysisResult.environmentVariables.forEach((envVar) => allEnvironmentVariables.add(envVar));
121
+ // Collect conditional usages from AST analysis
122
+ for (const [path, usages] of Object.entries(astAnalysisResult.conditionalUsages)) {
123
+ if (!allConditionalUsages[path]) {
124
+ allConditionalUsages[path] = [];
125
+ }
126
+ allConditionalUsages[path].push(...usages);
127
+ }
119
128
  return {
120
129
  statementScope,
121
130
  astAnalysisResult,
@@ -306,6 +315,10 @@ export async function analyzeScopeLocal({ entity, fileAnalyzer, scope, scopeData
306
315
  else {
307
316
  scopeDataStructure.addScopeAnalysis(scope.name, scope.text, scopeAnalysis, parentScopeName, scope.isStatic);
308
317
  }
318
+ // Add conditional usages from this scope's analysis
319
+ if (Object.keys(allConditionalUsages).length > 0) {
320
+ scopeDataStructure.addConditionalUsages(allConditionalUsages);
321
+ }
309
322
  await Promise.all(Object.values(scope.childScopes).map(async (childScope) => {
310
323
  // This is awkward but need to identify class scopes
311
324
  if (Object.values(isolatedStructure).some((val) => val === 'class')) {
@@ -1 +1 @@
1
- {"version":3,"file":"analyzeScope.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/analyzeScope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyzeScope.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/analyzeScope.ts"],"names":[],"mappings":"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"}
@@ -571,6 +571,9 @@ export function processExpression({ node, context, targetPath, typeHint, }) {
571
571
  else {
572
572
  resultType = rightType || 'unknown';
573
573
  }
574
+ // For || and ??, create an equivalence to the left side
575
+ // This ensures the equivalency chain is preserved through fallback expressions
576
+ // e.g., `const tab = segments[0] || 'default'` should trace tab back to segments[0]
574
577
  if (operatorKind === ts.SyntaxKind.QuestionQuestionToken) {
575
578
  // specifically for ?? we create an equivalence to the left side
576
579
  if (targetPath) {
@@ -582,6 +585,15 @@ export function processExpression({ node, context, targetPath, typeHint, }) {
582
585
  resultPath = StructuredPath.fromNode(unwrappedNode.left, context.sourceFile);
583
586
  }
584
587
  }
588
+ else if (operatorKind === ts.SyntaxKind.BarBarToken) {
589
+ // For ||, also create an equivalence to the left side
590
+ // This enables data flow tracing through fallback expressions
591
+ if (targetPath) {
592
+ resultPath = StructuredPath.fromNode(unwrappedNode.left, context.sourceFile);
593
+ }
594
+ // Note: Unlike ??, we don't set targetPath when there's no target
595
+ // because || is often used in boolean contexts where the full expression matters
596
+ }
585
597
  }
586
598
  else if (operatorKind === ts.SyntaxKind.InstanceOfKeyword) {
587
599
  resultType = 'boolean';