@codeyam/codeyam-cli 0.1.0-staging.596f0eb → 0.1.0-staging.6e699e5

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 (696) hide show
  1. package/analyzer-template/.build-info.json +8 -8
  2. package/analyzer-template/common/execAsync.ts +1 -1
  3. package/analyzer-template/log.txt +3 -3
  4. package/analyzer-template/package.json +10 -6
  5. package/analyzer-template/packages/ai/index.ts +10 -3
  6. package/analyzer-template/packages/ai/package.json +1 -1
  7. package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
  8. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +128 -6
  9. package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
  10. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +138 -1
  11. package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
  12. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +140 -6
  13. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
  14. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +38 -1
  15. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
  16. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1239 -104
  17. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +304 -0
  18. package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +29 -10
  19. package/analyzer-template/packages/ai/src/lib/completionCall.ts +216 -36
  20. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +1501 -138
  21. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +2 -1
  22. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
  23. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +243 -77
  24. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +19 -1
  25. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +103 -6
  26. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +23 -0
  27. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
  28. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +42 -2
  29. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
  30. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +156 -0
  31. package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
  32. package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
  33. package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
  34. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +74 -7
  35. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +89 -112
  36. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +6 -0
  37. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1111 -91
  38. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +207 -104
  39. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +570 -0
  40. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
  41. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +1977 -0
  42. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
  43. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +143 -31
  44. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  45. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +276 -3
  46. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +33 -3
  47. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +7 -0
  48. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +1 -1
  49. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +32 -102
  50. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
  51. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
  52. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +90 -6
  53. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +14 -53
  54. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
  55. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  56. package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
  57. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +812 -0
  58. package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
  59. package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
  60. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +123 -0
  61. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +8 -1
  62. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +14 -0
  63. package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
  64. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +1 -0
  65. package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
  66. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +455 -267
  67. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +18 -0
  68. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +3 -0
  69. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -7
  70. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +31 -15
  71. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +11 -7
  72. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +11 -12
  73. package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
  74. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +265 -0
  75. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
  76. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +588 -52
  77. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  78. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
  79. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +336 -133
  80. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +156 -0
  81. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +78 -83
  82. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +4 -8
  83. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +461 -94
  84. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +56 -11
  85. package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
  86. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
  87. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
  88. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
  89. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
  90. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
  91. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
  92. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
  93. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  94. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
  95. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
  96. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
  97. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  98. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  99. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  100. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  101. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  102. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
  103. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
  104. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
  105. package/analyzer-template/packages/aws/package.json +3 -3
  106. package/analyzer-template/packages/aws/s3/index.ts +1 -0
  107. package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
  108. package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
  109. package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
  110. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  111. package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
  112. package/analyzer-template/packages/database/src/lib/kysely/db.ts +4 -4
  113. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +2 -2
  114. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +36 -9
  115. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +7 -3
  116. package/analyzer-template/packages/generate/index.ts +3 -0
  117. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +17 -1
  118. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +193 -0
  119. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
  120. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +9 -4
  121. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +26 -1
  122. package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
  123. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -2
  124. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +2 -2
  125. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +2 -2
  126. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +1 -11
  127. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -1
  128. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +30 -7
  129. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -1
  130. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  131. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  132. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +1 -0
  133. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -1
  134. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +2 -6
  135. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -1
  136. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -1
  137. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +7 -4
  138. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  139. package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
  140. package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
  141. package/analyzer-template/packages/github/dist/generate/index.js +3 -0
  142. package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
  143. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
  144. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  145. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  146. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
  147. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
  148. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
  149. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  150. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
  151. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
  152. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  153. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  154. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  155. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  156. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  157. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  158. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +27 -1
  159. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  160. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
  161. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
  162. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
  163. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  164. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
  165. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +10 -0
  166. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
  167. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
  168. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +3 -0
  169. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
  170. package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
  171. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  172. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  173. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -13
  174. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  175. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +2 -0
  176. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
  177. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +11 -6
  178. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  179. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +196 -0
  180. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  181. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
  182. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  183. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  184. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  185. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  186. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
  187. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  188. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +29 -3
  189. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
  190. package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +14 -0
  191. package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +2 -0
  192. package/analyzer-template/packages/process/index.ts +2 -0
  193. package/analyzer-template/packages/process/package.json +12 -0
  194. package/analyzer-template/packages/process/tsconfig.json +8 -0
  195. package/analyzer-template/packages/types/index.ts +5 -0
  196. package/analyzer-template/packages/types/src/types/Analysis.ts +104 -13
  197. package/analyzer-template/packages/types/src/types/Entity.ts +2 -0
  198. package/analyzer-template/packages/types/src/types/Scenario.ts +11 -10
  199. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +224 -0
  200. package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
  201. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  202. package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
  203. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  204. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  205. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -13
  206. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  207. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +2 -0
  208. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
  209. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +11 -6
  210. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  211. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +196 -0
  212. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  213. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
  214. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  215. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  216. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  217. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  218. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
  219. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  220. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +29 -3
  221. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
  222. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +27 -0
  223. package/analyzer-template/packages/utils/src/lib/safeFileName.ts +48 -3
  224. package/analyzer-template/playwright/capture.ts +37 -18
  225. package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
  226. package/analyzer-template/playwright/takeElementScreenshot.ts +26 -11
  227. package/analyzer-template/playwright/takeScreenshot.ts +9 -7
  228. package/analyzer-template/playwright/waitForServer.ts +21 -6
  229. package/analyzer-template/project/analyzeBaselineCommit.ts +4 -0
  230. package/analyzer-template/project/analyzeBranchCommit.ts +4 -0
  231. package/analyzer-template/project/analyzeFileEntities.ts +4 -0
  232. package/analyzer-template/project/analyzeRegularCommit.ts +4 -0
  233. package/analyzer-template/project/constructMockCode.ts +1181 -160
  234. package/analyzer-template/project/controller/startController.ts +16 -1
  235. package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
  236. package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
  237. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +3 -6
  238. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +82 -36
  239. package/analyzer-template/project/orchestrateCapture.ts +36 -3
  240. package/analyzer-template/project/reconcileMockDataKeys.ts +245 -2
  241. package/analyzer-template/project/runAnalysis.ts +11 -0
  242. package/analyzer-template/project/runMultiScenarioServer.ts +11 -10
  243. package/analyzer-template/project/serverOnlyModules.ts +194 -21
  244. package/analyzer-template/project/start.ts +26 -4
  245. package/analyzer-template/project/startScenarioCapture.ts +79 -41
  246. package/analyzer-template/project/writeMockDataTsx.ts +232 -57
  247. package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
  248. package/analyzer-template/project/writeScenarioComponents.ts +769 -181
  249. package/analyzer-template/project/writeScenarioFiles.ts +26 -0
  250. package/analyzer-template/project/writeSimpleRoot.ts +13 -15
  251. package/analyzer-template/scripts/comboWorkerLoop.cjs +1 -0
  252. package/analyzer-template/scripts/defaultCmd.sh +9 -0
  253. package/analyzer-template/tsconfig.json +2 -1
  254. package/background/src/lib/local/createLocalAnalyzer.js +1 -29
  255. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  256. package/background/src/lib/local/execAsync.js +1 -1
  257. package/background/src/lib/local/execAsync.js.map +1 -1
  258. package/background/src/lib/virtualized/common/execAsync.js +1 -1
  259. package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
  260. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +2 -1
  261. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  262. package/background/src/lib/virtualized/project/analyzeBranchCommit.js +2 -1
  263. package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
  264. package/background/src/lib/virtualized/project/analyzeFileEntities.js +2 -1
  265. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  266. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +2 -1
  267. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  268. package/background/src/lib/virtualized/project/constructMockCode.js +1053 -124
  269. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  270. package/background/src/lib/virtualized/project/controller/startController.js +11 -1
  271. package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
  272. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
  273. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
  274. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
  275. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
  276. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +3 -2
  277. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  278. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +69 -32
  279. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  280. package/background/src/lib/virtualized/project/orchestrateCapture.js +27 -4
  281. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  282. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +204 -2
  283. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  284. package/background/src/lib/virtualized/project/runAnalysis.js +9 -0
  285. package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
  286. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +11 -9
  287. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  288. package/background/src/lib/virtualized/project/serverOnlyModules.js +163 -23
  289. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -1
  290. package/background/src/lib/virtualized/project/start.js +21 -4
  291. package/background/src/lib/virtualized/project/start.js.map +1 -1
  292. package/background/src/lib/virtualized/project/startScenarioCapture.js +61 -31
  293. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  294. package/background/src/lib/virtualized/project/writeMockDataTsx.js +199 -50
  295. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  296. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
  297. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
  298. package/background/src/lib/virtualized/project/writeScenarioComponents.js +552 -125
  299. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  300. package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
  301. package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
  302. package/background/src/lib/virtualized/project/writeSimpleRoot.js +13 -13
  303. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  304. package/codeyam-cli/src/cli.js +7 -1
  305. package/codeyam-cli/src/cli.js.map +1 -1
  306. package/codeyam-cli/src/commands/analyze.js +1 -1
  307. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  308. package/codeyam-cli/src/commands/baseline.js +174 -0
  309. package/codeyam-cli/src/commands/baseline.js.map +1 -0
  310. package/codeyam-cli/src/commands/debug.js +40 -18
  311. package/codeyam-cli/src/commands/debug.js.map +1 -1
  312. package/codeyam-cli/src/commands/default.js +0 -15
  313. package/codeyam-cli/src/commands/default.js.map +1 -1
  314. package/codeyam-cli/src/commands/recapture.js +226 -0
  315. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  316. package/codeyam-cli/src/commands/report.js +72 -24
  317. package/codeyam-cli/src/commands/report.js.map +1 -1
  318. package/codeyam-cli/src/commands/start.js +8 -12
  319. package/codeyam-cli/src/commands/start.js.map +1 -1
  320. package/codeyam-cli/src/commands/status.js +23 -1
  321. package/codeyam-cli/src/commands/status.js.map +1 -1
  322. package/codeyam-cli/src/commands/test-startup.js +1 -1
  323. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  324. package/codeyam-cli/src/commands/wipe.js +108 -0
  325. package/codeyam-cli/src/commands/wipe.js.map +1 -0
  326. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
  327. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
  328. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +31 -27
  329. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  330. package/codeyam-cli/src/utils/analysisRunner.js +8 -13
  331. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  332. package/codeyam-cli/src/utils/backgroundServer.js +14 -4
  333. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  334. package/codeyam-cli/src/utils/database.js +91 -5
  335. package/codeyam-cli/src/utils/database.js.map +1 -1
  336. package/codeyam-cli/src/utils/generateReport.js +253 -106
  337. package/codeyam-cli/src/utils/generateReport.js.map +1 -1
  338. package/codeyam-cli/src/utils/git.js +79 -0
  339. package/codeyam-cli/src/utils/git.js.map +1 -0
  340. package/codeyam-cli/src/utils/install-skills.js +31 -17
  341. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  342. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +38 -0
  343. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  344. package/codeyam-cli/src/utils/queue/job.js +245 -16
  345. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  346. package/codeyam-cli/src/utils/queue/manager.js +25 -7
  347. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  348. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  349. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  350. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +7 -5
  351. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  352. package/codeyam-cli/src/utils/versionInfo.js +25 -19
  353. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  354. package/codeyam-cli/src/utils/wipe.js +128 -0
  355. package/codeyam-cli/src/utils/wipe.js.map +1 -0
  356. package/codeyam-cli/src/webserver/app/lib/database.js +98 -1
  357. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  358. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  359. package/codeyam-cli/src/webserver/backgroundServer.js +5 -10
  360. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  361. package/codeyam-cli/src/webserver/bootstrap.js +49 -0
  362. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  363. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BXhEawa3.js +1 -0
  364. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-efWKDYMr.js → EntityTypeBadge-DLqD3qNt.js} +1 -1
  365. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-Ba2JVPzP.js +41 -0
  366. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-C8lyxW9k.js +34 -0
  367. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-aht4aafF.js +25 -0
  368. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CVtiBnY5.js +3 -0
  369. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-B0GLXMsr.js +6 -0
  370. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-xgeCVgSM.js +3 -0
  371. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-D4TZhLuw.js +21 -0
  372. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DuDvi0jm.js +1 -0
  373. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-DEx02QDa.js +10 -0
  374. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-COPstp9J.js → TruncatedFilePath-DyFZkK0l.js} +1 -1
  375. package/codeyam-cli/src/webserver/build/client/assets/_index-BwqWJOgH.js +11 -0
  376. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-DoLIqZX2.js +37 -0
  377. package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
  378. package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
  379. package/codeyam-cli/src/webserver/build/client/assets/api.rules-l0sNRNKZ.js +1 -0
  380. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-Cx24_aWc.js +6 -0
  381. package/codeyam-cli/src/webserver/build/client/assets/chunk-EPOLDU6W-CXRTFQ3F.js +51 -0
  382. package/codeyam-cli/src/webserver/build/client/assets/circle-check-BOARzkeR.js +6 -0
  383. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-BdhJEx6B.js +21 -0
  384. package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-C1gnJVOL.svg → cy-logo-cli-CCKUIm0S.svg} +2 -2
  385. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
  386. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BRb-0kQl.js +1 -0
  387. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-C2N4Op8e.js +23 -0
  388. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js +6 -0
  389. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-D1T4TGjf.js +6 -0
  390. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-CTBG2mmz.js +5 -0
  391. package/codeyam-cli/src/webserver/build/client/assets/entry.client-CS2cb_eZ.js +29 -0
  392. package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
  393. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-DMJ7zii9.js +1 -0
  394. package/codeyam-cli/src/webserver/build/client/assets/files-Cs4MdYtv.js +1 -0
  395. package/codeyam-cli/src/webserver/build/client/assets/git-B4RJRvYB.js +15 -0
  396. package/codeyam-cli/src/webserver/build/client/assets/git-commit-horizontal-CysbcZxi.js +6 -0
  397. package/codeyam-cli/src/webserver/build/client/assets/globals-DMUaGAqV.css +1 -0
  398. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  399. package/codeyam-cli/src/webserver/build/client/assets/index-B1h680n5.js +9 -0
  400. package/codeyam-cli/src/webserver/build/client/assets/index-lzqtyFU8.js +3 -0
  401. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-B7B9V-bu.js +6 -0
  402. package/codeyam-cli/src/webserver/build/client/assets/manifest-f874c610.js +1 -0
  403. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  404. package/codeyam-cli/src/webserver/build/client/assets/root-Bz5TunQg.js +57 -0
  405. package/codeyam-cli/src/webserver/build/client/assets/rules-hEkvVw2-.js +97 -0
  406. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  407. package/codeyam-cli/src/webserver/build/client/assets/search-CxXUmBSd.js +6 -0
  408. package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +1 -0
  409. package/codeyam-cli/src/webserver/build/client/assets/simulations-DwFIBT09.js +1 -0
  410. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-B6LgvRJg.js +6 -0
  411. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-C1v1PQzo.js +1 -0
  412. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-3pmpUQB-.js → useLastLogLine-aSv48UbS.js} +1 -1
  413. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-DYxHZQuP.js +1 -0
  414. package/codeyam-cli/src/webserver/build/client/assets/{useToast-DEyawJ8r.js → useToast-mBRpZPiu.js} +1 -1
  415. package/codeyam-cli/src/webserver/build/server/assets/index-967OuJoF.js +1 -0
  416. package/codeyam-cli/src/webserver/build/server/assets/server-build-DRTmerg9.js +257 -0
  417. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  418. package/codeyam-cli/src/webserver/build-info.json +5 -5
  419. package/codeyam-cli/src/webserver/devServer.js +1 -3
  420. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  421. package/codeyam-cli/src/webserver/server.js +35 -25
  422. package/codeyam-cli/src/webserver/server.js.map +1 -1
  423. package/codeyam-cli/templates/codeyam-power-rules-hook.sh +200 -0
  424. package/codeyam-cli/templates/{codeyam-debug-skill.md → codeyam:debug.md} +48 -4
  425. package/codeyam-cli/templates/codeyam:diagnose.md +650 -0
  426. package/codeyam-cli/templates/codeyam:new-rule.md +13 -0
  427. package/codeyam-cli/templates/codeyam:power-rules.md +447 -0
  428. package/codeyam-cli/templates/{codeyam-setup-skill.md → codeyam:setup.md} +139 -4
  429. package/codeyam-cli/templates/{codeyam-sim-skill.md → codeyam:sim.md} +1 -1
  430. package/codeyam-cli/templates/{codeyam-test-skill.md → codeyam:test.md} +1 -1
  431. package/codeyam-cli/templates/{codeyam-verify-skill.md → codeyam:verify.md} +1 -1
  432. package/package.json +17 -16
  433. package/packages/ai/index.js +5 -4
  434. package/packages/ai/index.js.map +1 -1
  435. package/packages/ai/src/lib/analyzeScope.js +99 -0
  436. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  437. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
  438. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
  439. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +100 -1
  440. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  441. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
  442. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
  443. package/packages/ai/src/lib/astScopes/methodSemantics.js +97 -6
  444. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  445. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
  446. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
  447. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +23 -0
  448. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  449. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
  450. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
  451. package/packages/ai/src/lib/astScopes/processExpression.js +945 -87
  452. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  453. package/packages/ai/src/lib/checkAllAttributes.js +24 -9
  454. package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
  455. package/packages/ai/src/lib/completionCall.js +178 -31
  456. package/packages/ai/src/lib/completionCall.js.map +1 -1
  457. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +1198 -82
  458. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  459. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +2 -1
  460. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  461. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
  462. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  463. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +180 -56
  464. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  465. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +16 -1
  466. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  467. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +86 -4
  468. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  469. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +20 -0
  470. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  471. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
  472. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
  473. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +34 -3
  474. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  475. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
  476. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
  477. package/packages/ai/src/lib/dataStructureChunking.js +111 -0
  478. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
  479. package/packages/ai/src/lib/deepEqual.js +32 -0
  480. package/packages/ai/src/lib/deepEqual.js.map +1 -0
  481. package/packages/ai/src/lib/e2eDataTracking.js +241 -0
  482. package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
  483. package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
  484. package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
  485. package/packages/ai/src/lib/generateChangesEntityScenarioData.js +62 -5
  486. package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
  487. package/packages/ai/src/lib/generateChangesEntityScenarios.js +81 -90
  488. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  489. package/packages/ai/src/lib/generateEntityDataStructure.js +5 -0
  490. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  491. package/packages/ai/src/lib/generateEntityScenarioData.js +904 -84
  492. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  493. package/packages/ai/src/lib/generateEntityScenarios.js +186 -82
  494. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  495. package/packages/ai/src/lib/generateExecutionFlows.js +392 -0
  496. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
  497. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
  498. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
  499. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1440 -0
  500. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
  501. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
  502. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
  503. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +84 -14
  504. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  505. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  506. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  507. package/packages/ai/src/lib/isolateScopes.js +231 -4
  508. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  509. package/packages/ai/src/lib/mergeStatements.js +26 -3
  510. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  511. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +6 -0
  512. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  513. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +1 -1
  514. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
  515. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +21 -64
  516. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  517. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
  518. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
  519. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +68 -6
  520. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  521. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +10 -34
  522. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  523. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
  524. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
  525. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  526. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  527. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
  528. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
  529. package/packages/ai/src/lib/resolvePathToControllable.js +667 -0
  530. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
  531. package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
  532. package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
  533. package/packages/ai/src/lib/worker/SerializableDataStructure.js +29 -0
  534. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  535. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +4 -0
  536. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  537. package/packages/analyze/src/lib/FileAnalyzer.js +15 -0
  538. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  539. package/packages/analyze/src/lib/analysisContext.js +30 -5
  540. package/packages/analyze/src/lib/analysisContext.js.map +1 -1
  541. package/packages/analyze/src/lib/asts/nodes/index.js +1 -0
  542. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  543. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
  544. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
  545. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +218 -50
  546. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  547. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +10 -0
  548. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  549. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +2 -0
  550. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  551. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -7
  552. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  553. package/packages/analyze/src/lib/files/analyzeChange.js +21 -11
  554. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  555. package/packages/analyze/src/lib/files/analyzeEntity.js +9 -8
  556. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  557. package/packages/analyze/src/lib/files/analyzeInitial.js +9 -10
  558. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  559. package/packages/analyze/src/lib/files/enums/steps.js +1 -1
  560. package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
  561. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +209 -0
  562. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  563. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
  564. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
  565. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +458 -48
  566. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  567. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  568. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  569. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
  570. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
  571. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +264 -78
  572. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  573. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +96 -0
  574. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
  575. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +56 -69
  576. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  577. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +4 -8
  578. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  579. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +372 -89
  580. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  581. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +46 -9
  582. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
  583. package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
  584. package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  585. package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
  586. package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  587. package/packages/database/src/lib/kysely/db.js +2 -2
  588. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  589. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  590. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +7 -4
  591. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  592. package/packages/generate/index.js +3 -0
  593. package/packages/generate/index.js.map +1 -1
  594. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  595. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  596. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
  597. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  598. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  599. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  600. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  601. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  602. package/packages/generate/src/lib/deepMerge.js +27 -1
  603. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  604. package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
  605. package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  606. package/packages/github/src/lib/loadOrCreateCommit.js +10 -0
  607. package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
  608. package/packages/github/src/lib/syncPrimaryBranch.js +3 -0
  609. package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
  610. package/packages/process/index.js +3 -0
  611. package/packages/process/index.js.map +1 -0
  612. package/packages/process/src/GlobalProcessManager.js.map +1 -0
  613. package/{background/src/lib/process → packages/process/src}/ProcessManager.js +1 -1
  614. package/packages/process/src/ProcessManager.js.map +1 -0
  615. package/packages/process/src/index.js.map +1 -0
  616. package/packages/process/src/managedExecAsync.js.map +1 -0
  617. package/packages/types/index.js.map +1 -1
  618. package/packages/utils/src/lib/lightweightEntityExtractor.js +25 -0
  619. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  620. package/packages/utils/src/lib/safeFileName.js +29 -3
  621. package/packages/utils/src/lib/safeFileName.js.map +1 -1
  622. package/scripts/finalize-analyzer.cjs +6 -4
  623. package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
  624. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -197
  625. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -271
  626. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -294
  627. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
  628. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -115
  629. package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
  630. package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
  631. package/analyzer-template/process/README.md +0 -507
  632. package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
  633. package/background/src/lib/process/ProcessManager.js.map +0 -1
  634. package/background/src/lib/process/index.js.map +0 -1
  635. package/background/src/lib/process/managedExecAsync.js.map +0 -1
  636. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
  637. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
  638. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-CVbSvOjo.js +0 -1
  639. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-DcwcHyl5.js +0 -1
  640. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-WgwC1GfJ.js +0 -26
  641. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-IEKom9O2.js +0 -3
  642. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-BYnfxbUG.js +0 -3
  643. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-_lBPJCzG.js +0 -1
  644. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-lHVhvsu_.js +0 -1
  645. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-d_TBk4GQ.js +0 -5
  646. package/codeyam-cli/src/webserver/build/client/assets/_index-kGT7VUqj.js +0 -1
  647. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-DDGmhu7P.js +0 -7
  648. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-n_HPRfM_.js +0 -1
  649. package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-CbVoyx1U.js +0 -26
  650. package/codeyam-cli/src/webserver/build/client/assets/circle-check-D1VOYveA.js +0 -1
  651. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-YR8jjAlu.js +0 -1
  652. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-B8vP3V_s.js +0 -1
  653. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-CN6aLCT1.js +0 -16
  654. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-DA5Jeu2P.js +0 -1
  655. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BTeitalf.js +0 -5
  656. package/codeyam-cli/src/webserver/build/client/assets/entry.client-du6UEYD-.js +0 -13
  657. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-BpjkhMoi.js +0 -1
  658. package/codeyam-cli/src/webserver/build/client/assets/files-BQGvk4lJ.js +0 -1
  659. package/codeyam-cli/src/webserver/build/client/assets/git-DVdYRT-I.js +0 -12
  660. package/codeyam-cli/src/webserver/build/client/assets/globals-CO-U8Bpo.css +0 -1
  661. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-XQCGvadH.js +0 -5
  662. package/codeyam-cli/src/webserver/build/client/assets/index-DCG-vks0.js +0 -1
  663. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-GazdNeLl.js +0 -1
  664. package/codeyam-cli/src/webserver/build/client/assets/manifest-0b694d28.js +0 -1
  665. package/codeyam-cli/src/webserver/build/client/assets/root-D3tQP7hx.js +0 -16
  666. package/codeyam-cli/src/webserver/build/client/assets/search-CIY6XmtE.js +0 -1
  667. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  668. package/codeyam-cli/src/webserver/build/client/assets/settings-CoMDgElu.js +0 -1
  669. package/codeyam-cli/src/webserver/build/client/assets/simulations-agkniXp2.js +0 -1
  670. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-B2VUcygF.js +0 -1
  671. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-EvdK-zXP.js +0 -1
  672. package/codeyam-cli/src/webserver/build/server/assets/index-DGVHQEXD.js +0 -1
  673. package/codeyam-cli/src/webserver/build/server/assets/server-build-CghkTkIL.js +0 -166
  674. package/codeyam-cli/templates/debug-command.md +0 -303
  675. package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
  676. package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
  677. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -136
  678. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
  679. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -220
  680. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
  681. package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -241
  682. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
  683. package/packages/ai/src/lib/isFrontend.js +0 -5
  684. package/packages/ai/src/lib/isFrontend.js.map +0 -1
  685. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
  686. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
  687. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -72
  688. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
  689. /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
  690. /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
  691. /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
  692. /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
  693. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
  694. /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
  695. /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
  696. /package/{background/src/lib/process → packages/process/src}/managedExecAsync.js +0 -0
@@ -5,14 +5,15 @@ import { generateIncompleteSystemMessage, generateSystemMessage, } from "./gener
5
5
  import { saveLlmCall } from "../../../../packages/aws/dynamodb/index.js";
6
6
  import validateJson from "./validateJson.js";
7
7
  import checkAllAttributes from "./checkAllAttributes.js";
8
+ import convertNullToUndefinedBySchema from "./dataStructure/helpers/convertNullToUndefinedBySchema.js";
9
+ import deepEqual from "./deepEqual.js";
8
10
  import { awsLog } from "../../../../packages/utils/index.js";
9
11
  import { parseJsonSafe } from "../../../../packages/ai/index.js";
10
12
  const DEFAULT_SCENARIO_NAME = 'Default Scenario';
11
13
  async function generateChangesDataForScenario({ entity, structure, existingStructure, scenario, defaultScenarioData, existingScenario, analysisId, incompleteResponse, model, }) {
12
- if (structure === existingStructure &&
13
- scenario.metadata.keyAttributeInstructions ===
14
- existingScenario.metadata.keyAttributeInstructions) {
15
- console.log("CodeYam: No changes in scenario's structure or keyAttributeInstructions - returning existing scenario data", {
14
+ if (deepEqual(structure, existingStructure) &&
15
+ deepEqual(scenario.metadata?.coveredFlows, existingScenario?.metadata?.coveredFlows)) {
16
+ console.log("CodeYam: No changes in scenario's structure or coveredFlows - returning existing scenario data", {
16
17
  analysisId: scenario.analysisId,
17
18
  scenarioId: scenario.id,
18
19
  scenarioName: scenario.name,
@@ -32,7 +33,8 @@ async function generateChangesDataForScenario({ entity, structure, existingStruc
32
33
  prompt = generateChangesEntityScenarioDataGenerator(structure, scenario, existingScenario, defaultScenarioData, incompleteResponse);
33
34
  }
34
35
  else {
35
- prompt = generateEntityScenarioDataGenerator(structure, scenario, defaultScenarioData, incompleteResponse);
36
+ prompt = generateEntityScenarioDataGenerator(structure, scenario, undefined, // executionFlows - not available in changes context
37
+ defaultScenarioData, incompleteResponse);
36
38
  }
37
39
  prompt = prompt.replace(/\*functionResponse\*/g, `"*a function that returns*"`);
38
40
  prompt = prompt.replace(/\*function\*/g, `"*a void function*"`);
@@ -134,6 +136,20 @@ async function generateChangesDataForScenario({ entity, structure, existingStruc
134
136
  }
135
137
  }
136
138
  fullScenarioData.data.mockData = checkAllAttributes(fullScenarioData.data.mockData);
139
+ // Convert null values to undefined based on schema type constraints.
140
+ // LLM uses null for "no value" (JSON doesn't support undefined), but TypeScript
141
+ // types like "string | undefined" don't accept null. This converts null→undefined
142
+ // for fields typed as "T | undefined" (but preserves null for "T | null").
143
+ if (structure.dataForMocks && fullScenarioData.data.mockData) {
144
+ convertNullToUndefinedBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
145
+ }
146
+ if (structure.arguments && fullScenarioData.data.argumentsData) {
147
+ for (let i = 0; i < fullScenarioData.data.argumentsData.length; i++) {
148
+ if (structure.arguments[i]) {
149
+ convertNullToUndefinedBySchema(fullScenarioData.data.argumentsData[i], structure.arguments[i]);
150
+ }
151
+ }
152
+ }
137
153
  return {
138
154
  llmCalls: [{ name: scenario.name, id: llmCall.id }],
139
155
  scenarioData: fullScenarioData,
@@ -205,6 +221,47 @@ NEVER include "error" fields in responses. Skip them entirely.
205
221
  - If structure has \`{ data: {...}, error: {...} }\`, only fill \`data\`
206
222
  - Leave out any attribute named "error"—do not set to null, omit entirely
207
223
 
224
+ ## CRITICAL: Preserve Exact Structure
225
+ Your response MUST mirror the EXACT nested structure provided in mockData Structure.
226
+ - Do NOT reorganize, split, or create duplicate keys
227
+ - The hierarchy of nested objects must match exactly what was provided
228
+ - Only change the leaf VALUES (replacing type descriptions like "string" with actual data like "hello")
229
+ - Arrays should have 3-5 items to provide realistic test data variety
230
+
231
+ **Example** - if given this structure:
232
+ \`\`\`json
233
+ {
234
+ "createClient()": {
235
+ "from(\\"users\\")": {
236
+ "select(\\"*\\")": { "data": [{ "id": "string", "name": "string" }] },
237
+ "delete()": { "eq(\\"id\\", id)": {} }
238
+ }
239
+ }
240
+ }
241
+ \`\`\`
242
+
243
+ Return ONE \`from("users")\` key containing BOTH \`select("*")\` and \`delete()\`:
244
+ \`\`\`json
245
+ {
246
+ "createClient()": {
247
+ "from(\\"users\\")": {
248
+ "select(\\"*\\")": { "data": [{ "id": "user-1", "name": "Alice" }, { "id": "user-2", "name": "Bob" }] },
249
+ "delete()": { "eq(\\"id\\", \\"user-1\\")": {} }
250
+ }
251
+ }
252
+ }
253
+ \`\`\`
254
+
255
+ **WRONG** - do NOT create duplicate keys like this:
256
+ \`\`\`json
257
+ {
258
+ "createClient()": {
259
+ "from(\\"users\\")": { "select(\\"*\\")": { ... } },
260
+ "from(\\"users\\")": { "delete()": { ... } }
261
+ }
262
+ }
263
+ \`\`\`
264
+
208
265
  ## Special Markers
209
266
 
210
267
  ### Dynamic Dates (\`~~codeyam-code~~\`)
@@ -1 +1 @@
1
- {"version":3,"file":"generateChangesEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateChangesEntityScenarioData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateChangesEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateChangesEntityScenarioData.ts"],"names":[],"mappings":"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"}
@@ -1,35 +1,36 @@
1
1
  import completionCall from "./completionCall.js";
2
2
  import { saveLlmCall } from "../../../../packages/aws/dynamodb/index.js";
3
3
  import generateChangesEntityScenariosGenerator from "./promptGenerators/generateChangesEntityScenariosGenerator.js";
4
- import findMatchingAttribute from "./findMatchingAttribute.js";
5
4
  import { awsLog } from "../../../../packages/utils/index.js";
6
5
  import { sanitizePlaywrightInstructions } from "./validatePlaywrightInstructions.js";
7
- import gatherRelevantDependentKeyAttributes from "./gatherRelevantDependentKeyAttributes.js";
8
6
  import { DEFAULT_LARGER_MODEL, parseJsonSafe } from "../../../../packages/ai/index.js";
9
7
  const DEFAULT_SCENARIO_NAME = 'Default Scenario';
10
- export default async function generateChangesEntityScenarios({ entity, keyAttributes, addedKeyAttributes, removedKeyAttributes, dependentAnalyses, existingScenarios, commitDiff, analysis, error, model, changedDataStructureFields = [], }) {
11
- const relevantDependentKeyAttributes = gatherRelevantDependentKeyAttributes(entity, analysis.metadata.mergedDataStructure, dependentAnalyses);
12
- if ((!addedKeyAttributes || addedKeyAttributes.length === 0) &&
13
- (!removedKeyAttributes || removedKeyAttributes.length === 0) &&
14
- !existingScenarios.some((s) => s.metadata?.playwrightInstructions) &&
15
- Object.keys(relevantDependentKeyAttributes).length === 0) {
8
+ export default async function generateChangesEntityScenarios({ entity, executionFlows, previousExecutionFlows, existingScenarios, commitDiff, analysis, error, model, changedDataStructureFields = [], }) {
9
+ // Determine added/removed flows
10
+ const currentFlowIds = new Set((executionFlows ?? []).map((f) => f.id));
11
+ const previousFlowIds = new Set((previousExecutionFlows ?? []).map((f) => f.id));
12
+ const addedFlows = executionFlows?.filter((f) => !previousFlowIds.has(f.id)) ?? [];
13
+ const removedFlows = previousExecutionFlows?.filter((f) => !currentFlowIds.has(f.id)) ?? [];
14
+ // If no changes, return existing scenarios
15
+ if (addedFlows.length === 0 &&
16
+ removedFlows.length === 0 &&
17
+ !existingScenarios.some((s) => s.metadata?.playwrightInstructions)) {
16
18
  return { scenarios: existingScenarios };
17
19
  }
18
20
  awsLog(`CodeYam: Generating ${error ? 'error ' : ''}changes entity scenarios`, {
19
21
  filePath: entity.filePath,
20
- entityNam: entity.name,
21
- analysis: analysis.id,
22
- keyAttributes: keyAttributes.map((a) => a.externalPath),
23
- addedKeyAttributes: addedKeyAttributes?.map((a) => a.externalPath),
24
- removedKeyAttributes: removedKeyAttributes?.map((a) => a.externalPath),
22
+ entityName: entity.name,
23
+ analysisId: analysis.id,
24
+ currentFlowCount: executionFlows?.length ?? 0,
25
+ addedFlows: addedFlows.map((f) => f.id),
26
+ removedFlows: removedFlows.map((f) => f.id),
25
27
  });
26
28
  const prompt = generateChangesEntityScenariosGenerator({
27
29
  entity,
28
30
  mergedDataStructure: analysis.metadata.mergedDataStructure,
29
- keyAttributes,
30
- addedKeyAttributes,
31
- removedKeyAttributes,
32
- dependentAnalyses,
31
+ executionFlows,
32
+ addedFlows,
33
+ removedFlows,
33
34
  existingScenarios,
34
35
  commitDiff,
35
36
  error,
@@ -44,7 +45,7 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
44
45
  type: `generate${error ? 'Error' : ''}ChangesEntityScenarios`,
45
46
  systemMessage: error
46
47
  ? ERROR_SYSTEM_MESSAGE
47
- : generateChangesSystemMessage(context, scenarioCount, false),
48
+ : generateChangesSystemMessage(context, scenarioCount),
48
49
  prompt,
49
50
  model: model ?? DEFAULT_LARGER_MODEL,
50
51
  });
@@ -61,28 +62,17 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
61
62
  path: entity.file.path,
62
63
  },
63
64
  },
64
- keyAttributes,
65
- addedKeyAttributes,
66
- removedKeyAttributes,
67
- dependentAnalyses: Object.fromEntries(Object.entries(dependentAnalyses ?? {}).map(([path, analyses]) => [
68
- path,
69
- Object.fromEntries(Object.entries(analyses).map(([name, analysis]) => [
70
- name,
71
- {
72
- metadata: {
73
- keyAttributes: analysis.metadata?.keyAttributes,
74
- },
75
- },
76
- ])),
77
- ])),
65
+ executionFlows,
66
+ addedFlows,
67
+ removedFlows,
78
68
  existingScenarios: existingScenarios.map((s) => ({
79
69
  id: s.id,
80
70
  name: s.name,
81
71
  description: s.description,
82
72
  metadata: {
83
- error: s.metadata.error,
84
- keyAttributeInstructions: s.metadata.keyAttributeInstructions,
85
- playwrightInstructions: s.metadata.playwrightInstructions,
73
+ error: s.metadata?.error,
74
+ coveredFlows: s.metadata?.coveredFlows,
75
+ playwrightInstructions: s.metadata?.playwrightInstructions,
86
76
  },
87
77
  })),
88
78
  commitDiff,
@@ -91,7 +81,7 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
91
81
  metadata: {
92
82
  isolatedDataStructure: {
93
83
  equivalentSignatureVariables: entity.metadata.isolatedDataStructure
94
- .equivalentSignatureVariables,
84
+ ?.equivalentSignatureVariables,
95
85
  },
96
86
  },
97
87
  },
@@ -121,7 +111,7 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
121
111
  for (const scenarioInfo of scenarioInfos) {
122
112
  const previousVersion = existingScenarios.find((s) => s.name === scenarioInfo.name);
123
113
  const revisedFromPreviousVersion = previousVersion
124
- ? !!scenarioInfo.keyAttributeInstructions
114
+ ? !!scenarioInfo.coveredFlows
125
115
  : undefined;
126
116
  const useScenarioData = !previousVersion || revisedFromPreviousVersion;
127
117
  scenarios.push({
@@ -132,45 +122,38 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
132
122
  ? scenarioInfo.description
133
123
  : previousVersion.description,
134
124
  metadata: {
135
- testName: useScenarioData || !previousVersion.metadata.testName
125
+ testName: useScenarioData || !previousVersion?.metadata?.testName
136
126
  ? scenarioInfo.testName
137
127
  : previousVersion.metadata.testName,
138
128
  error,
139
129
  revisedFromPreviousVersion,
140
130
  codeSnippet: useScenarioData
141
131
  ? scenarioInfo.codeSnippet
142
- : previousVersion.metadata.codeSnippet,
143
- fix: useScenarioData ? scenarioInfo.fix : previousVersion.metadata.fix,
132
+ : previousVersion?.metadata?.codeSnippet,
133
+ fix: useScenarioData
134
+ ? scenarioInfo.fix
135
+ : previousVersion?.metadata?.fix,
144
136
  fixSnippet: useScenarioData
145
137
  ? scenarioInfo.fixSnippet
146
- : previousVersion.metadata.fixSnippet,
138
+ : previousVersion?.metadata?.fixSnippet,
147
139
  likelihood: useScenarioData
148
140
  ? scenarioInfo.likelihood
149
- : previousVersion.metadata.likelihood,
141
+ : previousVersion?.metadata?.likelihood,
150
142
  likelihoodDescription: useScenarioData
151
143
  ? scenarioInfo.likelihoodDescription
152
- : previousVersion.metadata.likelihoodDescription,
144
+ : previousVersion?.metadata?.likelihoodDescription,
153
145
  severity: useScenarioData
154
146
  ? scenarioInfo.severity
155
- : previousVersion.metadata.severity,
147
+ : previousVersion?.metadata?.severity,
156
148
  severityDescription: useScenarioData
157
149
  ? scenarioInfo.severityDescription
158
- : previousVersion.metadata.severityDescription,
159
- dataMapping: useScenarioData
160
- ? scenarioInfo.dataMapping
161
- : previousVersion.metadata.dataMapping,
162
- keyAttributeInstructions: useScenarioData
163
- ? Object.keys(scenarioInfo.keyAttributeInstructions).reduce((acc, key) => {
164
- const attributesList = keyAttributes.map((attr) => attr.internalPath);
165
- const matchingKey = findMatchingAttribute(key, attributesList, entity.metadata.isolatedDataStructure
166
- .equivalentSignatureVariables);
167
- acc[matchingKey] = scenarioInfo.keyAttributeInstructions[key];
168
- return acc;
169
- }, {})
170
- : previousVersion.metadata.keyAttributeInstructions,
150
+ : previousVersion?.metadata?.severityDescription,
151
+ coveredFlows: useScenarioData
152
+ ? scenarioInfo.coveredFlows || []
153
+ : previousVersion?.metadata?.coveredFlows || [],
171
154
  playwrightInstructions: useScenarioData
172
155
  ? sanitizePlaywrightInstructions(scenarioInfo.playwrightInstructions || [], entity.name, scenarioInfo.name)
173
- : previousVersion.metadata.playwrightInstructions,
156
+ : previousVersion?.metadata?.playwrightInstructions,
174
157
  },
175
158
  previousVersionId: previousVersion?.id,
176
159
  });
@@ -181,7 +164,7 @@ export default async function generateChangesEntityScenarios({ entity, keyAttrib
181
164
  llmCall,
182
165
  };
183
166
  }
184
- function generateChangesSystemMessage(context, scenarioCount, _isError) {
167
+ function generateChangesSystemMessage(context, scenarioCount) {
185
168
  const contextSection = context
186
169
  ? `## Business Context
187
170
  ${context}
@@ -196,27 +179,35 @@ Focus scenario updates on demonstrating this change.${scenarioCount ? ` Generate
196
179
  : '';
197
180
  return `You are updating data scenarios after a code change. Determine which existing scenarios need updating, which should be removed, and if new ones are needed.
198
181
 
199
- ${contextSection}## Update Rules
182
+ ${contextSection}## Your Goal: Maintain Full Execution Flow Coverage
183
+
184
+ You are given:
185
+ - \`executionFlows\`: All current distinct outcomes/behaviors this component can produce
186
+ - \`addedFlows\`: New flows that didn't exist before
187
+ - \`removedFlows\`: Flows that no longer exist
188
+ - \`existingScenarios\`: Current scenarios with their coveredFlows
189
+
190
+ **Your job**: Update scenarios to maintain coverage of ALL current execution flows.
200
191
 
201
- ### Removed Key Attributes
202
- - Update scenarios using removed attributes—replace with new attributes or remove if no longer relevant
203
- - CRITICAL: "${DEFAULT_SCENARIO_NAME}" must NEVER contain removed attributes—update or replace them
204
- - Try to maintain 3+ scenarios; create replacements if removing too many
192
+ ## Update Rules
205
193
 
206
- ### Added Key Attributes
207
- - Create or update scenarios to demonstrate new behavior
194
+ ### Removed Flows
195
+ - If an existing scenario only covers removed flows, remove the scenario
196
+ - If a scenario covers both removed and current flows, update its coveredFlows to remove the deleted ones
208
197
 
209
- ### Playwright Instructions
210
- - Validate existing instructions still work after code changes
211
- - Update any that reference changed UI elements
198
+ ### Added Flows
199
+ - Create new scenarios or update existing ones to cover new flows
200
+ - Follow the same rules as initial scenario generation:
201
+ - Blocking flows (blocksOtherFlows: true) get their own dedicated scenarios
202
+ - Non-blocking flows can be combined with compatible existing scenarios
212
203
 
213
204
  ### Unchanged Scenarios
214
- - Return name only (no other fields needed)
205
+ - Return name only (no other fields needed) if the scenario's covered flows are all still valid
215
206
 
216
207
  ### Default Scenario
217
208
  - First scenario must be "${DEFAULT_SCENARIO_NAME}" (exact name)
218
209
  - NEVER include playwrightInstructions—captures initial state only
219
- - Must include all current key attributes with valid values
210
+ - Should cover as many non-blocking, non-error flows as possible
220
211
 
221
212
  ## Response Format
222
213
 
@@ -234,27 +225,31 @@ Otherwise:
234
225
  "overview": "Added empty state scenario for new display behavior.",
235
226
  "dataScenarios": [
236
227
  { "name": "${DEFAULT_SCENARIO_NAME}" },
237
- { "name": "Many notifications" },
228
+ { "name": "Settings Modal" },
238
229
  {
239
- "name": "No notifications",
240
- "testName": "it(\\"shows empty message when no notifications\\")",
241
- "description": "User has no notifications.",
242
- "keyAttributeInstructions": {
243
- "notifications[]": { "localVariable": "notifications[]", "instruction": "Empty array" }
244
- }
230
+ "name": "Empty State",
231
+ "testName": "it(\\"shows empty message when no items\\")",
232
+ "description": "User has no items to display.",
233
+ "coveredFlows": ["empty-list"]
245
234
  }
246
235
  ]
247
236
  }
248
237
  \`\`\`
249
238
 
239
+ ## Field Descriptions
240
+
241
+ - **name**: Human-readable scenario name (letters, numbers, spaces only)
242
+ - **testName**: Jest-style test description (only for new/updated scenarios)
243
+ - **description**: What the user sees (only for new/updated scenarios)
244
+ - **coveredFlows**: Array of execution flow IDs this scenario covers (only for new/updated scenarios)
245
+ - **playwrightInstructions**: User interactions needed (only for new/updated scenarios that require interaction)
246
+
250
247
  ## Rules
251
248
  - Scenario names: letters, numbers, spaces only
252
249
  - testName: Jest style with specific expectations
253
- - Use values from \`validValueOptions\` in key attributes list
254
- - Include dependency key attributes if dependencies involved
255
- - React elements: simple only (\`<div>\`, \`<span>\`)
256
- - No external library references—plain JS/TS values
257
- - Relative dates OK: "today", "tomorrow", "last month"
250
+ - All values must be valid JSON
251
+ - EVERY execution flow must be covered by at least one scenario
252
+ - Blocking flows get dedicated scenarios
258
253
  `;
259
254
  }
260
255
  const ERROR_SYSTEM_MESSAGE = `You are reviewing error scenarios after a code change. Determine if the change introduced new potential bugs or fixed existing ones.
@@ -288,27 +283,23 @@ Be conservative with high scores.
288
283
  - No external library references—mock with plain JS
289
284
  - Each scenario causes a DISTINCT error type
290
285
 
291
- Note: In JS/TS, any non-zero value satisfies a boolean check—this won't error.
292
-
293
286
  ## Response Format
294
287
  \`\`\`json
295
288
  {
296
289
  "errorDataScenarios": [
297
290
  { "name": "Existing valid error" },
298
291
  {
299
- "dataMapping": { "notifications array": "props.notifications" },
300
292
  "name": "Non-utf8 encoding error",
301
- "codeSnippet": "const encoded = encodeURIComponent(message);",
293
+ "testName": "it(\\"throws on non-utf8 characters\\")",
302
294
  "description": "encodeURIComponent throws on non-utf8 characters",
295
+ "codeSnippet": "const encoded = encodeURIComponent(message);",
303
296
  "fix": "Wrap in try/catch",
304
297
  "fixSnippet": "try { encoded = encodeURIComponent(message); } catch (e) { ... }",
305
298
  "likelihood": 7,
306
299
  "likelihoodDescription": "International users may input non-utf8 characters",
307
300
  "severity": 2,
308
301
  "severityDescription": "Function throws uncaught error",
309
- "keyAttributeInstructions": {
310
- "notifications[]": "Array with message containing non-utf8 characters"
311
- }
302
+ "coveredFlows": []
312
303
  }
313
304
  ]
314
305
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generateChangesEntityScenarios.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateChangesEntityScenarios.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateChangesEntityScenarios.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateChangesEntityScenarios.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import isolateScopes from "./isolateScopes.js";
2
2
  import analyzeScope from "./analyzeScope.js";
3
+ import { resetScopeDataStructureMetrics } from "./dataStructure/ScopeDataStructure.js";
3
4
  export default async function generateEntityDataStructure({ entity, fileAnalyzer, model, }) {
5
+ // Reset metrics counters to prevent false "infinite loop" detection when
6
+ // processing multiple entities in the same run
7
+ resetScopeDataStructureMetrics();
4
8
  // awsLog('CodeYam: Generating entity data structure', {
5
9
  // filePath: entity.filePath,
6
10
  // entityName: entity.name,
@@ -11,6 +15,7 @@ export default async function generateEntityDataStructure({ entity, fileAnalyzer
11
15
  const fileText = fileAnalyzer.sourceFile.getFullText();
12
16
  const fileScope = isolateScopes(fileText, {
13
17
  entityNames: [entity.name],
18
+ jsxLimit: 10, // Enable gating condition extraction for child component flow merging
14
19
  });
15
20
  let entityScope = fileScope.name === entity.name
16
21
  ? fileScope
@@ -1 +1 @@
1
- {"version":3,"file":"generateEntityDataStructure.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityDataStructure.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAY1C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,EACxD,MAAM,EACN,YAAY,EACZ,KAAK,GAC2B;IAChC,wDAAwD;IACxD,+BAA+B;IAC/B,6BAA6B;IAC7B,iCAAiC;IACjC,MAAM;IAEN,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACvD,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE;QACxC,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IAEH,IAAI,WAAW,GACb,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC5B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9C,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACvD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAClD,CAAC;IACR,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,WAAW,GAAG,SAAS,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9D,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK,IAAI,WAAW,GAAG,CAAC,CAAC,GAAG,CACpD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,eAAe;QACf,gDAAgD;QAChD,MAAM;QACN,iCAAiC;QACjC,+BAA+B;QAC/B,iFAAiF;QACjF,MAAM;QACN,KAAK;QACL,mDAAmD;QACnD,kDAAkD;QAClD,4BAA4B;QAC5B,6CAA6C;QAC7C,OAAO;IACT,CAAC;IAED,MAAM,YAAY,CAAC;QACjB,MAAM;QACN,YAAY;QACZ,KAAK,EAAE,WAAW;QAClB,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,mDAAmD,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,QAAQ,EAAE,CACvF,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,4EAA4E;IAC5E,IAAI,gBAAgB,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;QAClD,OAAO,WAAW,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,WAAW,CAAC,aAAa,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"generateEntityDataStructure.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityDataStructure.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AAUpF,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,EACxD,MAAM,EACN,YAAY,EACZ,KAAK,GAC2B;IAChC,yEAAyE;IACzE,+CAA+C;IAC/C,8BAA8B,EAAE,CAAC;IAEjC,wDAAwD;IACxD,+BAA+B;IAC/B,6BAA6B;IAC7B,iCAAiC;IACjC,MAAM;IAEN,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACvD,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE;QACxC,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1B,QAAQ,EAAE,EAAE,EAAE,sEAAsE;KACrF,CAAC,CAAC;IAEH,IAAI,WAAW,GACb,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC5B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9C,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACvD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAClD,CAAC;IACR,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,WAAW,GAAG,SAAS,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9D,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK,IAAI,WAAW,GAAG,CAAC,CAAC,GAAG,CACpD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,eAAe;QACf,gDAAgD;QAChD,MAAM;QACN,iCAAiC;QACjC,+BAA+B;QAC/B,iFAAiF;QACjF,MAAM;QACN,KAAK;QACL,mDAAmD;QACnD,kDAAkD;QAClD,4BAA4B;QAC5B,6CAA6C;QAC7C,OAAO;IACT,CAAC;IAED,MAAM,YAAY,CAAC;QACjB,MAAM;QACN,YAAY;QACZ,KAAK,EAAE,WAAW;QAClB,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,mDAAmD,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,QAAQ,EAAE,CACvF,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,4EAA4E;IAC5E,IAAI,gBAAgB,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;QAClD,OAAO,WAAW,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,WAAW,CAAC,aAAa,CAAC;AACnC,CAAC"}