@codeyam/codeyam-cli 0.1.0-staging.8e7b1bd → 0.1.0-staging.b8a55ba

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 (385) 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/package.json +1 -1
  5. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +2 -0
  6. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +22 -0
  7. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +23 -1
  8. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +401 -106
  9. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +60 -0
  10. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +661 -50
  11. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +14 -2
  12. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +715 -0
  13. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +123 -1
  14. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +19 -1
  15. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +23 -1
  16. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +23 -0
  17. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +34 -1
  18. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +236 -24
  19. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +18 -1
  20. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +37 -4
  21. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +5 -0
  22. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +213 -12
  23. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +11 -15
  24. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +114 -11
  25. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +143 -31
  26. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  27. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +7 -0
  28. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +42 -2
  29. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +38 -2
  30. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  31. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +5 -0
  32. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +8 -1
  33. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +339 -145
  34. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +20 -0
  35. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +8 -1
  36. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +158 -0
  37. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +107 -18
  38. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  39. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +223 -103
  40. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +10 -5
  41. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +172 -83
  42. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +2 -5
  43. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +97 -27
  44. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  45. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  46. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  47. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  48. package/analyzer-template/packages/aws/package.json +1 -1
  49. package/analyzer-template/packages/aws/s3/index.ts +1 -0
  50. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  51. package/analyzer-template/packages/database/src/lib/kysely/db.ts +4 -4
  52. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +2 -2
  53. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +20 -9
  54. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +3 -2
  55. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +9 -4
  56. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +26 -1
  57. package/analyzer-template/packages/generate/src/lib/getComponentScenarioPath.ts +8 -3
  58. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -2
  59. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +2 -2
  60. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +2 -2
  61. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +8 -1
  62. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -1
  63. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +14 -7
  64. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -1
  65. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  66. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  67. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +1 -1
  68. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -1
  69. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -1
  70. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +4 -2
  71. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  72. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  73. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  74. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  75. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  76. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +27 -1
  77. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  78. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.d.ts.map +1 -1
  79. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js +7 -3
  80. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  81. package/analyzer-template/packages/github/dist/types/index.d.ts +4 -3
  82. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  83. package/analyzer-template/packages/github/dist/types/index.js +1 -0
  84. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  85. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +31 -1
  86. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  87. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +51 -1
  88. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  89. package/analyzer-template/packages/github/dist/types/src/types/Scenario.js +21 -1
  90. package/analyzer-template/packages/github/dist/types/src/types/Scenario.js.map +1 -1
  91. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +48 -0
  92. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  93. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  94. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js +26 -2
  95. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  96. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  97. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  98. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  99. package/analyzer-template/packages/types/index.ts +8 -0
  100. package/analyzer-template/packages/types/src/types/Analysis.ts +32 -1
  101. package/analyzer-template/packages/types/src/types/Scenario.ts +75 -6
  102. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +49 -0
  103. package/analyzer-template/packages/ui-components/package.json +4 -4
  104. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  105. package/analyzer-template/packages/utils/dist/types/index.d.ts +4 -3
  106. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  107. package/analyzer-template/packages/utils/dist/types/index.js +1 -0
  108. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  109. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +31 -1
  110. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  111. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +51 -1
  112. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  113. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.js +21 -1
  114. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.js.map +1 -1
  115. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +48 -0
  116. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  117. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  118. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js +26 -2
  119. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  120. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  121. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  122. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  123. package/analyzer-template/packages/utils/src/lib/applyUniversalMocks.ts +28 -2
  124. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +27 -0
  125. package/analyzer-template/playwright/takeElementScreenshot.ts +26 -11
  126. package/analyzer-template/playwright/takeScreenshot.ts +9 -7
  127. package/analyzer-template/project/TESTING.md +83 -0
  128. package/analyzer-template/project/constructMockCode.ts +151 -30
  129. package/analyzer-template/project/loadReadyToBeCaptured.ts +17 -1
  130. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +16 -9
  131. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +77 -37
  132. package/analyzer-template/project/reconcileMockDataKeys.ts +104 -3
  133. package/analyzer-template/project/runMultiScenarioServer.ts +11 -10
  134. package/analyzer-template/project/serverOnlyModules.ts +288 -0
  135. package/analyzer-template/project/start.ts +10 -0
  136. package/analyzer-template/project/startScenarioCapture.ts +73 -41
  137. package/analyzer-template/project/writeMockDataTsx.ts +103 -40
  138. package/analyzer-template/project/writeScenarioComponents.ts +1162 -203
  139. package/analyzer-template/project/writeSimpleRoot.ts +26 -4
  140. package/analyzer-template/project/writeUniversalMocks.ts +32 -11
  141. package/background/src/lib/virtualized/project/constructMockCode.js +132 -25
  142. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  143. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +15 -1
  144. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  145. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +11 -6
  146. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  147. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +67 -32
  148. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  149. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +65 -4
  150. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  151. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +11 -9
  152. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  153. package/background/src/lib/virtualized/project/serverOnlyModules.js +235 -0
  154. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -0
  155. package/background/src/lib/virtualized/project/start.js +6 -0
  156. package/background/src/lib/virtualized/project/start.js.map +1 -1
  157. package/background/src/lib/virtualized/project/startScenarioCapture.js +54 -31
  158. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  159. package/background/src/lib/virtualized/project/writeMockDataTsx.js +87 -34
  160. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  161. package/background/src/lib/virtualized/project/writeScenarioComponents.js +852 -133
  162. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  163. package/background/src/lib/virtualized/project/writeSimpleRoot.js +25 -2
  164. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  165. package/background/src/lib/virtualized/project/writeUniversalMocks.js +27 -12
  166. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  167. package/codeyam-cli/scripts/fixtures/formbricks/universal-mocks/apps/web/lib/instance/service.js +7 -0
  168. package/codeyam-cli/scripts/fixtures/formbricks/universal-mocks/apps/web/lib/instance/service.js.map +1 -0
  169. package/codeyam-cli/src/cli.js +2 -0
  170. package/codeyam-cli/src/cli.js.map +1 -1
  171. package/codeyam-cli/src/commands/debug.js +14 -2
  172. package/codeyam-cli/src/commands/debug.js.map +1 -1
  173. package/codeyam-cli/src/commands/recapture.js +215 -0
  174. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  175. package/codeyam-cli/src/commands/report.js +26 -23
  176. package/codeyam-cli/src/commands/report.js.map +1 -1
  177. package/codeyam-cli/src/utils/backgroundServer.js +2 -2
  178. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  179. package/codeyam-cli/src/utils/generateReport.js +252 -106
  180. package/codeyam-cli/src/utils/generateReport.js.map +1 -1
  181. package/codeyam-cli/src/utils/install-skills.js +2 -7
  182. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  183. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +38 -0
  184. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  185. package/codeyam-cli/src/utils/queue/job.js +140 -16
  186. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  187. package/codeyam-cli/src/utils/queue/manager.js +19 -7
  188. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  189. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  190. package/codeyam-cli/src/webserver/app/lib/database.js +47 -0
  191. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  192. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  193. package/codeyam-cli/src/webserver/backgroundServer.js +5 -10
  194. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  195. package/codeyam-cli/src/webserver/bootstrap.js +9 -0
  196. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  197. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-wXL1Z2Aq.js +1 -0
  198. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-DQeyk25_.js → EntityTypeBadge-CzGX-miz.js} +1 -1
  199. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-CXFKsCOD.js +41 -0
  200. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-D-9pXIaY.js +25 -0
  201. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CBQPrpT0.js +3 -0
  202. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-D1CdlbrV.js +6 -0
  203. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-wDPcZNKx.js +3 -0
  204. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-4lcOlid-.js +11 -0
  205. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BfmDgXxG.js +1 -0
  206. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-CUxUNEEC.js +15 -0
  207. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-ayCJdUAc.js → TruncatedFilePath-6J7zDUD5.js} +1 -1
  208. package/codeyam-cli/src/webserver/build/client/assets/_index-DHImXdXq.js +11 -0
  209. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-2mG6mjVb.js +32 -0
  210. package/codeyam-cli/src/webserver/build/client/assets/api.link-scenario-value-l0sNRNKZ.js +1 -0
  211. package/codeyam-cli/src/webserver/build/client/assets/api.update-key-attributes-l0sNRNKZ.js +1 -0
  212. package/codeyam-cli/src/webserver/build/client/assets/api.update-valid-values-l0sNRNKZ.js +1 -0
  213. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-BYimnrHg.js +6 -0
  214. package/codeyam-cli/src/webserver/build/client/assets/chunk-JMJ3UQ3L-BambyYE_.js +51 -0
  215. package/codeyam-cli/src/webserver/build/client/assets/circle-check-CaVsIRxt.js +6 -0
  216. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CgUsG7ib.js +21 -0
  217. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-CKnwPCDr.js +1 -0
  218. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DW_hdGUc.js +1 -0
  219. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-FHOVOgFN.js → entity._sha._-zUEpfPsu.js} +22 -15
  220. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DyB90fWk.js +1 -0
  221. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-D_3ero5o.js +1 -0
  222. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-CfLCUi9S.js +5 -0
  223. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DKJyZfAY.js +29 -0
  224. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-DAtOlaWE.js +1 -0
  225. package/codeyam-cli/src/webserver/build/client/assets/files-ClR0d32A.js +1 -0
  226. package/codeyam-cli/src/webserver/build/client/assets/git-D62Lxxmv.js +15 -0
  227. package/codeyam-cli/src/webserver/build/client/assets/globals-C6vQASxy.css +1 -0
  228. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  229. package/codeyam-cli/src/webserver/build/client/assets/index-BosqDOlH.js +3 -0
  230. package/codeyam-cli/src/webserver/build/client/assets/index-CzNNiTkw.js +9 -0
  231. package/codeyam-cli/src/webserver/build/client/assets/keyAttributeCoverage-CTlFMihX.js +1 -0
  232. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-CNp9QFCX.js +6 -0
  233. package/codeyam-cli/src/webserver/build/client/assets/manifest-09d684be.js +1 -0
  234. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  235. package/codeyam-cli/src/webserver/build/client/assets/root-BxJUvKau.js +56 -0
  236. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  237. package/codeyam-cli/src/webserver/build/client/assets/search-DDGjYAMJ.js +6 -0
  238. package/codeyam-cli/src/webserver/build/client/assets/settings-DgTyB-Wg.js +1 -0
  239. package/codeyam-cli/src/webserver/build/client/assets/simulations-CoNWGt0K.js +1 -0
  240. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-CBc5dE1s.js +6 -0
  241. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-BMIGFP-m.js +1 -0
  242. package/codeyam-cli/src/webserver/build/client/assets/useInteractiveMode-Dk_FQqWJ.js +1 -0
  243. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-DOGXmJcI.js → useLastLogLine-BqPPNjAl.js} +1 -1
  244. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-DsJbgMY9.js +1 -0
  245. package/codeyam-cli/src/webserver/build/client/assets/{useToast-C07gRg7Z.js → useToast-DWHcCcl1.js} +1 -1
  246. package/codeyam-cli/src/webserver/build/server/assets/index-CV6i1S1A.js +1 -0
  247. package/codeyam-cli/src/webserver/build/server/assets/server-build-BDlyhfrv.js +175 -0
  248. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  249. package/codeyam-cli/src/webserver/build-info.json +5 -5
  250. package/codeyam-cli/src/webserver/devServer.js +1 -3
  251. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  252. package/codeyam-cli/templates/debug-codeyam.md +620 -0
  253. package/package.json +14 -14
  254. package/packages/ai/src/lib/analyzeScope.js +2 -0
  255. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  256. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +16 -0
  257. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  258. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +16 -0
  259. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  260. package/packages/ai/src/lib/astScopes/processExpression.js +305 -88
  261. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  262. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +523 -42
  263. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  264. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +12 -2
  265. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  266. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +454 -0
  267. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  268. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +103 -1
  269. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  270. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +16 -1
  271. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  272. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +19 -1
  273. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  274. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +20 -0
  275. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  276. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +28 -2
  277. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  278. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +179 -17
  279. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +1 -1
  280. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +6 -0
  281. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +1 -1
  282. package/packages/ai/src/lib/generateChangesEntityScenarios.js +37 -4
  283. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  284. package/packages/ai/src/lib/generateEntityDataStructure.js +4 -0
  285. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  286. package/packages/ai/src/lib/generateEntityKeyAttributes.js +176 -9
  287. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +1 -1
  288. package/packages/ai/src/lib/generateEntityScenarioData.js +11 -15
  289. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  290. package/packages/ai/src/lib/generateEntityScenarios.js +105 -9
  291. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  292. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +84 -14
  293. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  294. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  295. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  296. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +6 -0
  297. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  298. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +38 -2
  299. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  300. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +38 -2
  301. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  302. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  303. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  304. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  305. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +4 -0
  306. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  307. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +258 -110
  308. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  309. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +18 -0
  310. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  311. package/packages/analyze/src/lib/files/getImportedExports.js +6 -1
  312. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  313. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +125 -0
  314. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  315. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +74 -19
  316. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  317. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  318. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  319. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +175 -58
  320. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  321. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +10 -5
  322. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +1 -1
  323. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +127 -69
  324. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  325. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +2 -5
  326. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  327. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +74 -23
  328. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  329. package/packages/database/src/lib/kysely/db.js +2 -2
  330. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  331. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  332. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +4 -2
  333. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  334. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  335. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  336. package/packages/generate/src/lib/deepMerge.js +27 -1
  337. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  338. package/packages/generate/src/lib/getComponentScenarioPath.js +7 -3
  339. package/packages/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  340. package/packages/types/index.js +1 -0
  341. package/packages/types/index.js.map +1 -1
  342. package/packages/types/src/types/Scenario.js +21 -1
  343. package/packages/types/src/types/Scenario.js.map +1 -1
  344. package/packages/utils/src/lib/applyUniversalMocks.js +26 -2
  345. package/packages/utils/src/lib/applyUniversalMocks.js.map +1 -1
  346. package/packages/utils/src/lib/lightweightEntityExtractor.js +25 -0
  347. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  348. package/scripts/finalize-analyzer.cjs +3 -1
  349. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-CWKV2GEz.js +0 -1
  350. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-D2hFeDeg.js +0 -1
  351. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-C8K-4kKP.js +0 -26
  352. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DgXLv61M.js +0 -3
  353. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-DFdLQbPS.js +0 -3
  354. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-DlRDjT4h.js +0 -1
  355. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-7UkVL-UI.js +0 -1
  356. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-XjtsGuPo.js +0 -5
  357. package/codeyam-cli/src/webserver/build/client/assets/_index-D2eJjWLf.js +0 -1
  358. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-w6sbwlOd.js +0 -7
  359. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-BBNQ8hup.js +0 -1
  360. package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-Bex4RrGs.js +0 -26
  361. package/codeyam-cli/src/webserver/build/client/assets/circle-check-cdhjVtom.js +0 -1
  362. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-DkgmwwRC.js +0 -1
  363. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-CwLmCS0J.js +0 -1
  364. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-YZ-kM3ZG.js +0 -1
  365. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BeQlz94_.js +0 -5
  366. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DN2XXM7Z.js +0 -5
  367. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-CUeAIQNI.js +0 -1
  368. package/codeyam-cli/src/webserver/build/client/assets/files-ccMQfhGf.js +0 -1
  369. package/codeyam-cli/src/webserver/build/client/assets/git-JmESAHx5.js +0 -12
  370. package/codeyam-cli/src/webserver/build/client/assets/globals-CO-U8Bpo.css +0 -1
  371. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-XQCGvadH.js +0 -5
  372. package/codeyam-cli/src/webserver/build/client/assets/index-DsL9BiOc.js +0 -8
  373. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-COYCR2oZ.js +0 -1
  374. package/codeyam-cli/src/webserver/build/client/assets/manifest-90adba57.js +0 -1
  375. package/codeyam-cli/src/webserver/build/client/assets/root-DfbVEEjF.js +0 -16
  376. package/codeyam-cli/src/webserver/build/client/assets/search-DvK9iMBu.js +0 -1
  377. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  378. package/codeyam-cli/src/webserver/build/client/assets/settings-9LTbit4Z.js +0 -1
  379. package/codeyam-cli/src/webserver/build/client/assets/simulations-BrxN5ZtV.js +0 -1
  380. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-Iv0p8T-1.js +0 -1
  381. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-BWmSRPH6.js +0 -1
  382. package/codeyam-cli/src/webserver/build/server/assets/index-CE_1qXCG.js +0 -1
  383. package/codeyam-cli/src/webserver/build/server/assets/server-build-BY_VDhiD.js +0 -166
  384. package/codeyam-cli/templates/debug-command.md +0 -141
  385. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
@@ -2,6 +2,7 @@ import { convertDotNotation, fillInDirectSchemaGapsAndUnknowns, deduplicateFunct
2
2
  import mergeInDependentDataStructure from "./mergeInDependentDataStructure.js";
3
3
  import { awsLog } from "../../../../../../packages/utils/index.js";
4
4
  import gatherDataForMocks from "./gatherDataForMocks.js";
5
+ import enrichArrayTypesFromChildSignatures from "./enrichArrayTypesFromChildSignatures.js";
5
6
  export default function generateDataStructure({ entity, dependentAnalyses, analysis, }) {
6
7
  try {
7
8
  if (!['visual', 'library'].includes(entity.entityType))
@@ -66,36 +67,6 @@ export default function generateDataStructure({ entity, dependentAnalyses, analy
66
67
  importedExport.resolvedFilePath) ||
67
68
  importedExport.filePath;
68
69
  const relevantDependencyAnalysis = dependentAnalyses[lookupPath]?.[importedExport.name];
69
- // DEBUG: Track buildBranchFileMap and fileComparisons
70
- if (importedExport.name === 'buildBranchFileMap' ||
71
- entity.name === 'GitView') {
72
- console.log('🔍 DEBUG generateDataStructure:', {
73
- entityName: entity.name,
74
- importedExportName: importedExport.name,
75
- lookupPath,
76
- hasAnalysis: !!relevantDependencyAnalysis,
77
- signatureSchema: relevantDependencyAnalysis?.metadata?.mergedDataStructure
78
- ?.signatureSchema,
79
- dependencySchemas: relevantDependencyAnalysis?.metadata
80
- ?.mergedDataStructure?.dependencySchemas
81
- ? Object.keys(relevantDependencyAnalysis.metadata.mergedDataStructure
82
- .dependencySchemas)
83
- : null,
84
- });
85
- if (relevantDependencyAnalysis?.metadata?.mergedDataStructure
86
- ?.signatureSchema) {
87
- const sig = relevantDependencyAnalysis.metadata.mergedDataStructure
88
- .signatureSchema;
89
- console.log('🔍 DEBUG buildBranchFileMap signature keys:', Object.keys(sig));
90
- // Look for fileComparisons in the signature
91
- for (const key of Object.keys(sig)) {
92
- if (key.includes('fileComparisons') ||
93
- key.includes('entityDiff')) {
94
- console.log('🔍 DEBUG Found relevant key:', key, '=', JSON.stringify(sig[key], null, 2));
95
- }
96
- }
97
- }
98
- }
99
70
  if (!relevantDependencyAnalysis) {
100
71
  // console.info(
101
72
  // 'CodeYam Warn: No relevant dependency analysis found for importedExport',
@@ -138,6 +109,160 @@ export default function generateDataStructure({ entity, dependentAnalyses, analy
138
109
  relevantDependencyAnalysis;
139
110
  return acc;
140
111
  }, {});
112
+ // For non-mocked child components (like visual components), include their mocked
113
+ // dependencies in allImportedExports. This ensures that when a parent component
114
+ // renders a child that uses the same hook with different destructure patterns,
115
+ // both patterns get separate mock data keys.
116
+ //
117
+ // Example: DashboardPage uses QuotesTableCompact (child, not mocked).
118
+ // Both use useFlags hook but destructure different properties:
119
+ // - DashboardPage: const { enableNewAdminDashboard } = useFlags()
120
+ // - QuotesTableCompact: const { flagShowReferenceIdOnQuoteTable } = useFlags()
121
+ // We need mock data keys for BOTH destructure patterns.
122
+ //
123
+ // We need to traverse the ENTIRE dependency tree recursively because nested
124
+ // child components (e.g., QuotesTableCompact inside AdminDashboard inside
125
+ // DashboardPage) also have mocked dependencies that need mock data keys.
126
+ // Helper function to add mocked imports from an entity to allImportedExports
127
+ const addMockedImportsFromEntity = (childEntity) => {
128
+ if (!childEntity?.metadata)
129
+ return;
130
+ // Add child's mocked nodeModuleImports
131
+ const childNodeModuleImports = childEntity.metadata.nodeModuleImports;
132
+ if (childNodeModuleImports) {
133
+ for (const moduleName of Object.keys(childNodeModuleImports)) {
134
+ const moduleImports = childNodeModuleImports[moduleName] || [];
135
+ for (const imported of moduleImports) {
136
+ if (!imported.isMocked)
137
+ continue;
138
+ // Check if this import already exists in allImportedExports
139
+ const existingImport = allImportedExports.find((existing) => existing.filePath === moduleName &&
140
+ existing.name === imported.name);
141
+ if (existingImport) {
142
+ // Merge callVariableNames if the same dependency exists with different patterns
143
+ if (imported.callVariableNames && imported.calls) {
144
+ existingImport.calls = existingImport.calls || [];
145
+ existingImport.callVariableNames =
146
+ existingImport.callVariableNames || [];
147
+ // Add each call/variable pair that doesn't already exist
148
+ for (let i = 0; i < imported.calls.length; i++) {
149
+ const call = imported.calls[i];
150
+ const varName = imported.callVariableNames[i];
151
+ if (!varName)
152
+ continue;
153
+ // Check if this specific callVariableName already exists
154
+ if (!existingImport.callVariableNames.includes(varName)) {
155
+ existingImport.calls.push(call);
156
+ existingImport.callVariableNames.push(varName);
157
+ }
158
+ }
159
+ }
160
+ }
161
+ else {
162
+ // Add new import
163
+ allImportedExports.push({
164
+ filePath: moduleName,
165
+ name: imported.name,
166
+ isDefault: imported.isDefault,
167
+ isMocked: imported.isMocked,
168
+ calls: imported.calls ? [...imported.calls] : undefined,
169
+ callVariableNames: imported.callVariableNames
170
+ ? [...imported.callVariableNames]
171
+ : undefined,
172
+ });
173
+ }
174
+ }
175
+ }
176
+ }
177
+ // Add child's mocked importedExports
178
+ const childImportedExports = childEntity.metadata.importedExports;
179
+ if (childImportedExports) {
180
+ for (const imported of childImportedExports) {
181
+ if (!imported.isMocked)
182
+ continue;
183
+ // Check if this import already exists in allImportedExports
184
+ const existingImport = allImportedExports.find((existing) => existing.filePath === imported.filePath &&
185
+ existing.name === imported.name);
186
+ if (existingImport) {
187
+ // Merge callVariableNames if the same dependency exists with different patterns
188
+ if (imported.callVariableNames && imported.calls) {
189
+ existingImport.calls = existingImport.calls || [];
190
+ existingImport.callVariableNames =
191
+ existingImport.callVariableNames || [];
192
+ // Add each call/variable pair that doesn't already exist
193
+ for (let i = 0; i < imported.calls.length; i++) {
194
+ const call = imported.calls[i];
195
+ const varName = imported.callVariableNames[i];
196
+ if (!varName)
197
+ continue;
198
+ // Check if this specific callVariableName already exists
199
+ if (!existingImport.callVariableNames.includes(varName)) {
200
+ existingImport.calls.push(call);
201
+ existingImport.callVariableNames.push(varName);
202
+ }
203
+ }
204
+ }
205
+ }
206
+ else {
207
+ // Add new import
208
+ allImportedExports.push({
209
+ filePath: imported.filePath,
210
+ name: imported.name,
211
+ isDefault: imported.isDefault,
212
+ isMocked: imported.isMocked,
213
+ calls: imported.calls ? [...imported.calls] : undefined,
214
+ callVariableNames: imported.callVariableNames
215
+ ? [...imported.callVariableNames]
216
+ : undefined,
217
+ });
218
+ }
219
+ }
220
+ }
221
+ };
222
+ // Recursive function to traverse the dependency tree
223
+ const processedAnalyses = new Set();
224
+ const traverseDependencyTree = (analyses) => {
225
+ for (const filePath in analyses) {
226
+ for (const name in analyses[filePath]) {
227
+ const analysisKey = `${filePath}:${name}`;
228
+ if (processedAnalyses.has(analysisKey))
229
+ continue;
230
+ processedAnalyses.add(analysisKey);
231
+ const childAnalysis = analyses[filePath][name];
232
+ const childEntity = childAnalysis?.entity;
233
+ // Add mocked imports from this child entity
234
+ addMockedImportsFromEntity(childEntity);
235
+ // Recursively process this child's non-mocked children
236
+ // via their mergedDataStructure's nested dependentAnalyses
237
+ const childMergedDataStructure = childAnalysis?.metadata?.mergedDataStructure;
238
+ if (childMergedDataStructure?.dependencySchemas) {
239
+ // We need to find non-mocked child components in the dependency tree
240
+ // These would be in the child's importedExports that are NOT mocked
241
+ const childImportedExports = childEntity?.metadata?.importedExports ?? [];
242
+ const nonMockedChildDeps = {};
243
+ for (const dep of childImportedExports) {
244
+ if (dep.isMocked)
245
+ continue;
246
+ if (dep.entityType !== 'visual')
247
+ continue;
248
+ // Try to find this dependency in dependentAnalyses
249
+ const depFilePath = dep.resolvedFilePath ?? dep.filePath;
250
+ const depName = dep.resolvedName ?? dep.name;
251
+ if (dependentAnalyses[depFilePath]?.[depName]) {
252
+ nonMockedChildDeps[depFilePath] || (nonMockedChildDeps[depFilePath] = {});
253
+ nonMockedChildDeps[depFilePath][depName] =
254
+ dependentAnalyses[depFilePath][depName];
255
+ }
256
+ }
257
+ if (Object.keys(nonMockedChildDeps).length > 0) {
258
+ traverseDependencyTree(nonMockedChildDeps);
259
+ }
260
+ }
261
+ }
262
+ }
263
+ };
264
+ // Start traversal from direct non-mocked children
265
+ traverseDependencyTree(nonMockedDependentAnalyses);
141
266
  // console.info(
142
267
  // 'CODEYAM DEBUG: start merge',
143
268
  // JSON.stringify(
@@ -167,22 +292,6 @@ export default function generateDataStructure({ entity, dependentAnalyses, analy
167
292
  },
168
293
  dependencySchemas: isolatedDataStructure?.dependencySchemas || {},
169
294
  });
170
- // DEBUG: Check merged result for GitView
171
- if (entity.name === 'GitView') {
172
- console.log('🔍 DEBUG GitView mergedDataStructure dependency schemas:', Object.keys(mergedDataStructure.dependencySchemas || {}));
173
- for (const filePath of Object.keys(mergedDataStructure.dependencySchemas || {})) {
174
- for (const depName of Object.keys(mergedDataStructure.dependencySchemas[filePath] || {})) {
175
- const depSchema = mergedDataStructure.dependencySchemas[filePath][depName];
176
- console.log(`🔍 DEBUG Merged dep ${filePath}/${depName} signature keys:`, Object.keys(depSchema.signatureSchema || {}));
177
- // Look for fileComparisons
178
- for (const key of Object.keys(depSchema.signatureSchema || {})) {
179
- if (key.includes('fileComparisons') || key.includes('entityDiff')) {
180
- console.log('🔍 DEBUG MERGED Found relevant key:', key, '=', JSON.stringify(depSchema.signatureSchema[key], null, 2));
181
- }
182
- }
183
- }
184
- }
185
- }
186
295
  mergedDataStructure.environmentVariables =
187
296
  isolatedDataStructure.environmentVariables || [];
188
297
  // console.info(
@@ -220,18 +329,26 @@ export default function generateDataStructure({ entity, dependentAnalyses, analy
220
329
  }
221
330
  analysis.metadata || (analysis.metadata = {});
222
331
  analysis.metadata.mergedDataStructure = mergedDataStructure;
223
- const dataForMocks = gatherDataForMocks(allImportedExports, mergedDataStructure.dependencySchemas);
224
- // DEBUG: Check dataForMocks for GitView
225
- if (entity.name === 'GitView') {
226
- console.log('🔍 DEBUG GitView dataForMocks keys:', Object.keys(dataForMocks));
227
- for (const key of Object.keys(dataForMocks)) {
228
- if (key.includes('buildBranchFileMap') ||
229
- key.includes('fileComparisons') ||
230
- key.includes('entityDiff')) {
231
- console.log('🔍 DEBUG dataForMocks relevant key:', key, '=', JSON.stringify(dataForMocks[key], null, 2));
232
- }
233
- }
234
- }
332
+ // Enrich mocked dependency array types with fields from child component signatures
333
+ // This ensures that when getSurveysAction returns { data: array }, and SurveyCard
334
+ // expects survey.updatedAt, the array element type includes updatedAt
335
+ enrichArrayTypesFromChildSignatures(allImportedExports, mergedDataStructure.dependencySchemas);
336
+ // DEBUG: Log nodeModuleImports with isMocked status
337
+ const nodeModuleImportsFlattened = Object.entries(entity.metadata.nodeModuleImports ?? {}).flatMap(([moduleName, imports]) => imports.map((i) => ({ moduleName, name: i.name, isMocked: i.isMocked })));
338
+ console.log('CodeYam DEBUG generateDataStructure:', JSON.stringify({
339
+ entityName: entity.name,
340
+ nodeModuleImportsFlattened,
341
+ dependencySchemasKeys: Object.keys(mergedDataStructure.dependencySchemas ?? {}),
342
+ dependencySchemasForRemix: mergedDataStructure.dependencySchemas?.['@remix-run/react']
343
+ ? Object.keys(mergedDataStructure.dependencySchemas['@remix-run/react'])
344
+ : null,
345
+ }, null, 2));
346
+ const dataForMocks = gatherDataForMocks(allImportedExports, mergedDataStructure.dependencySchemas, { entityName: entity.name });
347
+ // DEBUG: Log the resulting dataForMocks
348
+ console.log('CodeYam DEBUG generateDataStructure dataForMocks result:', JSON.stringify({
349
+ entityName: entity.name,
350
+ dataForMocksKeys: Object.keys(dataForMocks),
351
+ }, null, 2));
235
352
  // console.info(
236
353
  // 'CODEYAM DEBUG: dataForMocks',
237
354
  // JSON.stringify(
@@ -1 +1 @@
1
- {"version":3,"file":"generateDataStructure.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateDataStructure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateDataStructure.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateDataStructure.ts"],"names":[],"mappings":"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"}
@@ -8,13 +8,10 @@ export default async function generateKeyAttributes({ entity, analysis, dependen
8
8
  var _a;
9
9
  if (!['visual', 'library'].includes(entity.entityType))
10
10
  return;
11
- // Merge direct dataForMocks with recursively gathered data from dependencies
11
+ // Gather all mock data, consolidated under the root entity name
12
12
  const structure = {
13
13
  arguments: analysis.metadata.scenariosDataStructure?.arguments ?? [],
14
- dataForMocks: {
15
- ...(analysis.metadata.scenariosDataStructure?.dataForMocks ?? {}),
16
- ...gatherDataForMocks(analysis, dependentAnalyses),
17
- },
14
+ dataForMocks: gatherDataForMocks(analysis, dependentAnalyses, entity.name),
18
15
  };
19
16
  awsLog(`🔮 Generating ${error ? 'error ' : ''}scenarios for`, {
20
17
  filePath: entity.filePath,
@@ -58,6 +55,14 @@ export default async function generateKeyAttributes({ entity, analysis, dependen
58
55
  ...(ka.dependencies && {
59
56
  dependencies: ka.dependencies.map((dep) => ({ ...dep })),
60
57
  }),
58
+ // Convert readonly sourceLocations array to mutable if present
59
+ ...(ka.sourceLocations && {
60
+ sourceLocations: ka.sourceLocations.map((loc) => ({ ...loc })),
61
+ }),
62
+ // Convert readonly compoundConditionalIds array to mutable if present
63
+ ...(ka.compoundConditionalIds && {
64
+ compoundConditionalIds: [...ka.compoundConditionalIds],
65
+ }),
61
66
  })),
62
67
  ].filter((ka, index, self) => self.findIndex((k) => k.internalPath === ka.internalPath) === index);
63
68
  if (keyAttributesLLMCall) {
@@ -1 +1 @@
1
- {"version":3,"file":"generateKeyAttributes.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateKeyAttributes.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,136 @@ import measureAndReportExecutionTime from "../../utils/measureAndReportExecution
2
2
  import { generateEntityScenarioData, mergeJsonTypeDefinitions, } from "../../../../../../packages/ai/index.js";
3
3
  import findScenarioData from "../findScenarioData.js";
4
4
  import { awsLog } from "../../../../../../packages/utils/index.js";
5
- export function gatherDataForMocks(analysis, dependentAnalyses) {
5
+ /**
6
+ * Extract the hook/function name from any mock data key format.
7
+ * Supports:
8
+ * - Canonical: "EntityName::hookName::index" -> "hookName"
9
+ * - Variable-qualified: "varName <- funcName" -> "funcName"
10
+ * - Simple with parens: "funcName()" -> "funcName"
11
+ * - Simple: "funcName" -> "funcName"
12
+ */
13
+ function extractHookName(key) {
14
+ // Canonical: "EntityName::hookName::index"
15
+ const canonicalMatch = key.match(/^[^:]+::([^:]+)::\d+$/);
16
+ if (canonicalMatch)
17
+ return canonicalMatch[1];
18
+ // Variable-qualified: "varName <- funcName"
19
+ const varQualMatch = key.match(/<- (\w+)$/);
20
+ if (varQualMatch)
21
+ return varQualMatch[1];
22
+ // Simple with parens: "funcName()" -> "funcName"
23
+ const simpleParensMatch = key.match(/^(\w+)\(\)$/);
24
+ if (simpleParensMatch)
25
+ return simpleParensMatch[1];
26
+ // Simple: "funcName" (alphanumeric only)
27
+ const simpleMatch = key.match(/^(\w+)$/);
28
+ if (simpleMatch)
29
+ return simpleMatch[1];
30
+ return null;
31
+ }
32
+ /**
33
+ * Check if two schemas are structurally equivalent (same shape).
34
+ * Uses JSON.stringify for deep comparison.
35
+ */
36
+ function schemasMatch(a, b) {
37
+ return JSON.stringify(a) === JSON.stringify(b);
38
+ }
39
+ export function gatherDataForMocks(analysis, dependentAnalyses, rootEntityName) {
6
40
  const dataForMocks = {};
7
41
  const analysesGathered = new Set();
42
+ // Track hook indices for assigning new indices when schemas differ
43
+ const hookIndices = {};
44
+ /**
45
+ * Find an existing key in dataForMocks that has the same hook name
46
+ * and matching schema. Returns the key if found, null otherwise.
47
+ */
48
+ const findMatchingKey = (hookName, schema) => {
49
+ for (const existingKey of Object.keys(dataForMocks)) {
50
+ const existingHook = extractHookName(existingKey);
51
+ if (existingHook === hookName &&
52
+ schemasMatch(dataForMocks[existingKey], schema)) {
53
+ return existingKey;
54
+ }
55
+ }
56
+ return null;
57
+ };
58
+ /**
59
+ * Add mock data, consolidating by hook name and schema when rootEntityName is provided.
60
+ * - Same hook + same schema = merge into existing key
61
+ * - Same hook + different schema = new key with incremented index
62
+ * - All keys normalized to "RootEntity::hookName::index" format when rootEntityName provided
63
+ */
64
+ const addMockData = (originalKey, schema) => {
65
+ // Skip if schema is empty object
66
+ if (typeof schema === 'object' &&
67
+ schema !== null &&
68
+ !Array.isArray(schema) &&
69
+ Object.keys(schema).length === 0) {
70
+ return;
71
+ }
72
+ // Skip null/undefined
73
+ if (schema === null || schema === undefined) {
74
+ return;
75
+ }
76
+ const typedSchema = schema;
77
+ // Helper to merge schemas (only works for objects, otherwise just returns new value)
78
+ const mergeSchemas = (existing, incoming) => {
79
+ // Only merge if both are objects (not arrays, not primitives)
80
+ if (typeof existing === 'object' &&
81
+ existing !== null &&
82
+ !Array.isArray(existing) &&
83
+ typeof incoming === 'object' &&
84
+ incoming !== null &&
85
+ !Array.isArray(incoming)) {
86
+ return mergeJsonTypeDefinitions(existing, incoming);
87
+ }
88
+ // For primitives/arrays, just use the incoming value
89
+ return incoming;
90
+ };
91
+ // If no rootEntityName, use legacy behavior (preserve original key)
92
+ if (!rootEntityName) {
93
+ if (dataForMocks?.[originalKey]) {
94
+ dataForMocks[originalKey] = mergeSchemas(dataForMocks[originalKey], typedSchema);
95
+ }
96
+ else if (dataForMocks) {
97
+ dataForMocks[originalKey] = typedSchema;
98
+ }
99
+ return;
100
+ }
101
+ // Extract hook name for consolidation
102
+ const hookName = extractHookName(originalKey);
103
+ if (!hookName) {
104
+ // Can't parse - preserve original key
105
+ if (dataForMocks?.[originalKey]) {
106
+ dataForMocks[originalKey] = mergeSchemas(dataForMocks[originalKey], typedSchema);
107
+ }
108
+ else if (dataForMocks) {
109
+ dataForMocks[originalKey] = typedSchema;
110
+ }
111
+ return;
112
+ }
113
+ // Look for existing key with same hook and matching schema
114
+ const matchingKey = findMatchingKey(hookName, typedSchema);
115
+ if (matchingKey && dataForMocks) {
116
+ // Same hook + same schema - merge into existing key
117
+ dataForMocks[matchingKey] = mergeSchemas(dataForMocks[matchingKey], typedSchema);
118
+ }
119
+ else if (dataForMocks) {
120
+ // Different schema or first occurrence - create new canonical key
121
+ const index = hookIndices[hookName] ?? 0;
122
+ hookIndices[hookName] = index + 1;
123
+ const targetKey = `${rootEntityName}::${hookName}::${index}`;
124
+ dataForMocks[targetKey] = typedSchema;
125
+ }
126
+ };
8
127
  // inner recursive function to gather data for mocks
9
128
  const gatherDataForMocksRecursive = (activeAnalysis) => {
129
+ // First, process ALL keys from this analysis's dataForMocks
130
+ const localDataForMocks = activeAnalysis.metadata?.scenariosDataStructure?.dataForMocks ?? {};
131
+ for (const [key, schema] of Object.entries(localDataForMocks)) {
132
+ addMockData(key, schema);
133
+ }
134
+ // Then, recurse into dependent analyses based on imports
10
135
  const allImportedExports = [
11
136
  ...(activeAnalysis.entity?.metadata.importedExports ?? []),
12
137
  ...Object.keys(activeAnalysis.entity?.metadata.nodeModuleImports ?? {}).flatMap((moduleName) => (activeAnalysis.entity?.metadata.nodeModuleImports?.[moduleName] || []).map((imported) => ({
@@ -14,56 +139,7 @@ export function gatherDataForMocks(analysis, dependentAnalyses) {
14
139
  ...imported,
15
140
  }))),
16
141
  ];
17
- // console.info('CODEYAM DEBUG: gatherDataForMocksRecursive START', {
18
- // filePath: activeAnalysis.filePath,
19
- // analysisEntityName: activeAnalysis.entityName,
20
- // analysisId: activeAnalysis.id,
21
- // entity: !!activeAnalysis.entity,
22
- // entityName: activeAnalysis.entity?.name,
23
- // allImportedExports: allImportedExports.map((ie) => ({
24
- // filePath: ie.filePath,
25
- // name: ie.name,
26
- // })),
27
- // });
28
142
  for (const importedExport of allImportedExports) {
29
- const localDataForMocks = activeAnalysis.metadata?.scenariosDataStructure?.dataForMocks ?? {};
30
- // Find relevant keys - handle both old format (starts with name)
31
- // and new variable-qualified format ("varName <- functionName")
32
- const relevantKeys = Object.keys(localDataForMocks).filter((key) => key.startsWith(importedExport.name) ||
33
- key.endsWith(` <- ${importedExport.name}`));
34
- // console.info('CODEYAM DEBUG: Processing import', {
35
- // importedExportName: importedExport.name,
36
- // importedExportFilePath: importedExport.filePath,
37
- // relevantKeys,
38
- // hasLocalDataForMocks: Object.keys(localDataForMocks).length > 0,
39
- // localDataForMocksKeys: Object.keys(localDataForMocks),
40
- // });
41
- // First, if we have local data for this mock, add it
42
- for (const relevantKey of relevantKeys) {
43
- const localDataForMock = localDataForMocks[relevantKey];
44
- // console.info('CODEYAM DEBUG: Found relevantKey', {
45
- // relevantKey,
46
- // localDataForMockType: typeof localDataForMock,
47
- // localDataForMockValue: localDataForMock,
48
- // isObject: typeof localDataForMock === 'object',
49
- // objectKeysLength:
50
- // typeof localDataForMock === 'object' && localDataForMock !== null
51
- // ? Object.keys(localDataForMock).length
52
- // : 'N/A',
53
- // });
54
- if (Object.keys(localDataForMock).length > 0) {
55
- if (dataForMocks[relevantKey]) {
56
- dataForMocks[relevantKey] = mergeJsonTypeDefinitions(dataForMocks[relevantKey], localDataForMock);
57
- }
58
- else {
59
- dataForMocks[relevantKey] = localDataForMock;
60
- }
61
- }
62
- }
63
- // ALWAYS check for dependent analysis to gather nested dependencies,
64
- // regardless of whether we found a relevantKey above.
65
- // This ensures transitive dependencies are included.
66
- // For example: Activity -> CurrentActivityTab -> useLastLogLine
67
143
  // Use resolvedFilePath when available (for re-exports from index files)
68
144
  const lookupPath = ('resolvedFilePath' in importedExport &&
69
145
  importedExport.resolvedFilePath) ||
@@ -74,26 +150,8 @@ export function gatherDataForMocks(analysis, dependentAnalyses) {
74
150
  gatherDataForMocksRecursive(dependentAnalysis);
75
151
  }
76
152
  }
77
- // console.info('CODEYAM DEBUG: gatherDataForMocksRecursive END', {
78
- // filePath: activeAnalysis.filePath,
79
- // entityName: activeAnalysis.entityName,
80
- // currentDataForMocksKeys: Object.keys(dataForMocks),
81
- // });
82
153
  };
83
154
  gatherDataForMocksRecursive(analysis);
84
- // console.info(
85
- // 'CODEYAM DEBUG: gatherDataForMocks FINAL RESULT',
86
- // JSON.stringify(
87
- // {
88
- // filePath: analysis.filePath,
89
- // entityName: analysis.entityName,
90
- // dataForMocksKeys: Object.keys(dataForMocks),
91
- // dataForMocks,
92
- // },
93
- // null,
94
- // 2,
95
- // ),
96
- // );
97
155
  return dataForMocks;
98
156
  }
99
157
  export default async function generateScenarioData({ entity, analysis, dependentAnalyses, model, updateProgress, }) {
@@ -102,7 +160,7 @@ export default async function generateScenarioData({ entity, analysis, dependent
102
160
  return;
103
161
  const structure = {
104
162
  arguments: analysis.metadata.scenariosDataStructure?.arguments ?? [],
105
- dataForMocks: gatherDataForMocks(analysis, dependentAnalyses),
163
+ dataForMocks: gatherDataForMocks(analysis, dependentAnalyses, entity.name),
106
164
  };
107
165
  const scenarios = analysis.scenarios;
108
166
  awsLog('CodeYam: Generating scenario data for', JSON.stringify({
@@ -1 +1 @@
1
- {"version":3,"file":"generateScenarioData.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateScenarioData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateScenarioData.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/generateScenarioData.ts"],"names":[],"mappings":"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"}