@codeyam/codeyam-cli 0.1.0-staging.8aea589 → 0.1.0-staging.8df382d

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 (2390) hide show
  1. package/analyzer-template/.build-info.json +8 -8
  2. package/analyzer-template/common/execAsync.ts +2 -2
  3. package/analyzer-template/log.txt +3 -3
  4. package/analyzer-template/package.json +35 -30
  5. package/analyzer-template/packages/ai/index.ts +27 -7
  6. package/analyzer-template/packages/ai/package.json +6 -6
  7. package/analyzer-template/packages/ai/scripts/ai-test-matrix.mjs +424 -0
  8. package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
  9. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +274 -8
  10. package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
  11. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +245 -40
  12. package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
  13. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +426 -20
  14. package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +42 -3
  15. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  16. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
  17. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +48 -2
  18. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
  19. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1836 -142
  20. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  21. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +328 -5
  22. package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +28 -11
  23. package/analyzer-template/packages/ai/src/lib/completionCall.ts +235 -66
  24. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +4669 -732
  25. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.ts +175 -7
  26. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +21 -4
  27. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
  28. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +249 -81
  29. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +152 -0
  30. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/DebugTracer.ts +224 -0
  31. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/PathManager.ts +203 -0
  32. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/README.md +294 -0
  33. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +163 -0
  34. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.ts +235 -0
  35. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +71 -2
  36. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +229 -21
  37. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  38. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +166 -17
  39. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
  40. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  41. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  42. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +455 -88
  43. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
  44. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.ts +33 -3
  45. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/selectBestValue.ts +70 -0
  46. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.ts +35 -0
  47. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.ts +113 -0
  48. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +183 -0
  49. package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
  50. package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
  51. package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
  52. package/analyzer-template/packages/ai/src/lib/generateChangesEntityDocumentation.ts +20 -2
  53. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +124 -158
  54. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +139 -346
  55. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +70 -7
  56. package/analyzer-template/packages/ai/src/lib/generateEntityDocumentation.ts +16 -2
  57. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1437 -195
  58. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +232 -295
  59. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +710 -0
  60. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
  61. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +2484 -0
  62. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
  63. package/analyzer-template/packages/ai/src/lib/generateStatementAnalysis.ts +49 -72
  64. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +170 -37
  65. package/analyzer-template/packages/ai/src/lib/getLLMCallStats.ts +0 -14
  66. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  67. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +328 -7
  68. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  69. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +135 -7
  70. package/analyzer-template/packages/ai/src/lib/modelInfo.ts +15 -0
  71. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  72. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +150 -31
  73. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.ts +8 -33
  74. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +54 -62
  75. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +77 -150
  76. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
  77. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
  78. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.ts +8 -27
  79. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +139 -40
  80. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +16 -49
  81. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
  82. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  83. package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
  84. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +824 -0
  85. package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
  86. package/analyzer-template/packages/ai/src/lib/types/index.ts +2 -0
  87. package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
  88. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +171 -2
  89. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +121 -2
  90. package/analyzer-template/packages/analyze/index.ts +2 -0
  91. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +230 -54
  92. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +113 -26
  93. package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
  94. package/analyzer-template/packages/analyze/src/lib/asts/nodes/getNodeType.ts +2 -1
  95. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +3 -1
  96. package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
  97. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  98. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  99. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.ts +4 -2
  100. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +49 -9
  101. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  102. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  103. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  104. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +762 -153
  105. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +61 -3
  106. package/analyzer-template/packages/analyze/src/lib/files/analyze/dependencyResolver.ts +6 -0
  107. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +4 -1
  108. package/analyzer-template/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.ts +1 -1
  109. package/analyzer-template/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.ts +1 -1
  110. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +20 -10
  111. package/analyzer-template/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.ts +1 -1
  112. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +5 -13
  113. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -10
  114. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +65 -30
  115. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +29 -11
  116. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +46 -28
  117. package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +1 -1
  118. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +26 -39
  119. package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
  120. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +135 -16
  121. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1315 -0
  122. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +313 -0
  123. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
  124. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +837 -99
  125. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  126. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
  127. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +619 -31
  128. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +264 -0
  129. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +84 -80
  130. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +8 -4
  131. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1144 -129
  132. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +61 -6
  133. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  134. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +3 -2
  135. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  136. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  137. package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
  138. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
  139. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
  140. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
  141. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
  142. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
  143. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
  144. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
  145. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  146. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
  147. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
  148. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
  149. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  150. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  151. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  152. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  153. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  154. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts +23 -0
  155. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts.map +1 -0
  156. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js +30 -0
  157. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js.map +1 -0
  158. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
  159. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
  160. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
  161. package/analyzer-template/packages/aws/package.json +10 -9
  162. package/analyzer-template/packages/aws/s3/index.ts +5 -0
  163. package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
  164. package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
  165. package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
  166. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  167. package/analyzer-template/packages/aws/src/lib/s3/getPresignedUrl.ts +62 -0
  168. package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
  169. package/analyzer-template/packages/database/client.ts +35 -0
  170. package/analyzer-template/packages/database/package.json +31 -0
  171. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +28 -0
  172. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +59 -0
  173. package/analyzer-template/packages/database/src/lib/branchToDb.ts +24 -0
  174. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +20 -0
  175. package/analyzer-template/packages/database/src/lib/commitToDb.ts +47 -0
  176. package/analyzer-template/packages/database/src/lib/fileToDb.ts +17 -0
  177. package/analyzer-template/packages/database/src/lib/kysely/db.ts +495 -0
  178. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +108 -0
  179. package/analyzer-template/packages/database/src/lib/kysely/tables/commitsTable.ts +67 -0
  180. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +88 -0
  181. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  182. package/analyzer-template/packages/database/src/lib/loadAnalyses.ts +275 -0
  183. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +223 -0
  184. package/analyzer-template/packages/database/src/lib/loadBranch.ts +137 -0
  185. package/analyzer-template/packages/database/src/lib/loadCommit.ts +173 -0
  186. package/analyzer-template/packages/database/src/lib/loadCommits.ts +279 -0
  187. package/analyzer-template/packages/database/src/lib/loadEntities.ts +117 -0
  188. package/analyzer-template/packages/database/src/lib/loadEntity.ts +105 -0
  189. package/analyzer-template/packages/database/src/lib/loadEntityBranches.ts +178 -0
  190. package/analyzer-template/packages/database/src/lib/loadFile.ts +42 -0
  191. package/analyzer-template/packages/database/src/lib/loadFiles.ts +134 -0
  192. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +101 -0
  193. package/analyzer-template/packages/database/src/lib/loadStatement.ts +23 -0
  194. package/analyzer-template/packages/database/src/lib/projectToDb.ts +35 -0
  195. package/analyzer-template/packages/database/src/lib/saveEntityStatements.ts +27 -0
  196. package/analyzer-template/packages/database/src/lib/saveFiles.ts +43 -0
  197. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +35 -0
  198. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +180 -0
  199. package/analyzer-template/packages/database/src/lib/updateProjectMetadata.ts +95 -0
  200. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +18 -0
  201. package/analyzer-template/packages/generate/index.ts +3 -0
  202. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +44 -21
  203. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.ts +18 -11
  204. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +193 -0
  205. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
  206. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +9 -4
  207. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +29 -2
  208. package/analyzer-template/packages/generate/src/lib/directExecutionScript.ts +17 -2
  209. package/analyzer-template/packages/generate/src/lib/getComponentScenarioPath.ts +8 -3
  210. package/analyzer-template/packages/generate/src/lib/scenarioComponent.ts +6 -3
  211. package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
  212. package/analyzer-template/packages/github/dist/database/index.d.ts.map +1 -0
  213. package/analyzer-template/packages/github/dist/database/index.js.map +1 -0
  214. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.d.ts.map +1 -0
  215. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +19 -0
  216. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -0
  217. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.d.ts.map +1 -0
  218. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +26 -0
  219. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -0
  220. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.d.ts.map +1 -0
  221. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.js.map +1 -0
  222. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.d.ts.map +1 -0
  223. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +18 -0
  224. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -0
  225. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.d.ts.map +1 -0
  226. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +13 -0
  227. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -0
  228. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.d.ts.map +1 -0
  229. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +26 -0
  230. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -0
  231. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.d.ts.map +1 -0
  232. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  233. package/analyzer-template/packages/github/dist/database/src/lib/createProject.d.ts.map +1 -0
  234. package/analyzer-template/packages/github/dist/database/src/lib/createProject.js.map +1 -0
  235. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.d.ts.map +1 -0
  236. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.js.map +1 -0
  237. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.d.ts.map +1 -0
  238. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.js.map +1 -0
  239. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.d.ts.map +1 -0
  240. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  241. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.d.ts.map +1 -0
  242. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.js.map +1 -0
  243. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.d.ts.map +1 -0
  244. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.js.map +1 -0
  245. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.d.ts.map +1 -0
  246. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.js.map +1 -0
  247. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.d.ts.map +1 -0
  248. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.js.map +1 -0
  249. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.d.ts.map +1 -0
  250. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.js.map +1 -0
  251. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.d.ts.map +1 -0
  252. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.js.map +1 -0
  253. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.d.ts.map +1 -0
  254. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.js.map +1 -0
  255. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.d.ts.map +1 -0
  256. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.js.map +1 -0
  257. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.d.ts.map +1 -0
  258. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.js.map +1 -0
  259. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.d.ts.map +1 -0
  260. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.js.map +1 -0
  261. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.d.ts.map +1 -0
  262. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.js.map +1 -0
  263. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.d.ts.map +1 -0
  264. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.js.map +1 -0
  265. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.d.ts.map +1 -0
  266. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.js.map +1 -0
  267. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.d.ts.map +1 -0
  268. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.js.map +1 -0
  269. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.d.ts.map +1 -0
  270. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.js.map +1 -0
  271. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.d.ts.map +1 -0
  272. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.js.map +1 -0
  273. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.d.ts.map +1 -0
  274. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +14 -0
  275. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -0
  276. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.d.ts.map +1 -0
  277. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.js.map +1 -0
  278. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.d.ts.map +1 -0
  279. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.js.map +1 -0
  280. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.d.ts.map +1 -0
  281. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  282. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +71 -0
  283. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -0
  284. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +373 -0
  285. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -0
  286. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.d.ts.map +1 -0
  287. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  288. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +1 -0
  289. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  290. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +89 -0
  291. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts.map +1 -0
  292. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.js.map +1 -0
  293. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.d.ts.map +1 -0
  294. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  295. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +97 -0
  296. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -0
  297. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  298. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +1 -0
  299. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  300. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +1 -0
  301. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  302. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.d.ts.map +1 -0
  303. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  304. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.d.ts.map +1 -0
  305. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  306. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts +48 -0
  307. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts.map +1 -0
  308. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js +47 -0
  309. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  310. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +60 -0
  311. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -0
  312. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  313. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  314. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +68 -0
  315. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -0
  316. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  317. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.d.ts.map +1 -0
  318. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  319. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.d.ts.map +1 -0
  320. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  321. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.d.ts.map +1 -0
  322. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  323. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +1 -0
  324. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  325. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.d.ts.map +1 -0
  326. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  327. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  328. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  329. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  330. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  331. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.d.ts.map +1 -0
  332. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  333. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +1 -0
  334. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  335. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +61 -0
  336. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -0
  337. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  338. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.d.ts.map +1 -0
  339. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  340. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.d.ts.map +1 -0
  341. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  342. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.d.ts.map +1 -0
  343. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  344. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.d.ts.map +1 -0
  345. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  346. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.d.ts.map +1 -0
  347. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  348. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.d.ts.map +1 -0
  349. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  350. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts +16 -0
  351. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts.map +1 -0
  352. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js +174 -0
  353. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js.map +1 -0
  354. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -0
  355. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +138 -0
  356. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -0
  357. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.d.ts.map +1 -0
  358. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.js.map +1 -0
  359. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.d.ts.map +1 -0
  360. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.js.map +1 -0
  361. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.d.ts.map +1 -0
  362. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js +100 -0
  363. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js.map +1 -0
  364. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.d.ts.map +1 -0
  365. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.js.map +1 -0
  366. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.d.ts.map +1 -0
  367. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js +118 -0
  368. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js.map +1 -0
  369. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.d.ts.map +1 -0
  370. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.js.map +1 -0
  371. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.d.ts.map +1 -0
  372. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.js.map +1 -0
  373. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts +15 -0
  374. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts.map +1 -0
  375. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +209 -0
  376. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js.map +1 -0
  377. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts +13 -0
  378. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -0
  379. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +82 -0
  380. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -0
  381. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -0
  382. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -0
  383. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.d.ts.map +1 -0
  384. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js +123 -0
  385. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js.map +1 -0
  386. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.d.ts.map +1 -0
  387. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.js.map +1 -0
  388. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.d.ts.map +1 -0
  389. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.js.map +1 -0
  390. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +1 -0
  391. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  392. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.d.ts.map +1 -0
  393. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.js.map +1 -0
  394. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -0
  395. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +68 -0
  396. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  397. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.d.ts.map +1 -0
  398. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.js.map +1 -0
  399. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts +3 -0
  400. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts.map +1 -0
  401. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.js.map +1 -0
  402. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.d.ts.map +1 -0
  403. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.js.map +1 -0
  404. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.d.ts.map +1 -0
  405. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +18 -0
  406. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -0
  407. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.d.ts.map +1 -0
  408. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.js.map +1 -0
  409. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.d.ts.map +1 -0
  410. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.js.map +1 -0
  411. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.d.ts.map +1 -0
  412. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +33 -0
  413. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -0
  414. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.d.ts.map +1 -0
  415. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.js.map +1 -0
  416. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.d.ts.map +1 -0
  417. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +18 -0
  418. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -0
  419. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts +4 -0
  420. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts.map +1 -0
  421. package/analyzer-template/packages/github/dist/database/src/lib/supabase.js.map +1 -0
  422. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.d.ts.map +1 -0
  423. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  424. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts +13 -0
  425. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -0
  426. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +101 -0
  427. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -0
  428. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.d.ts.map +1 -0
  429. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.js.map +1 -0
  430. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.d.ts.map +1 -0
  431. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  432. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.d.ts.map +1 -0
  433. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  434. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +1 -0
  435. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  436. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.d.ts.map +1 -0
  437. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.js.map +1 -0
  438. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.d.ts.map +1 -0
  439. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.js.map +1 -0
  440. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.d.ts.map +1 -0
  441. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  442. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.d.ts.map +1 -0
  443. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  444. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.d.ts.map +1 -0
  445. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.js.map +1 -0
  446. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.d.ts.map +1 -0
  447. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.js.map +1 -0
  448. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.d.ts.map +1 -0
  449. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.js.map +1 -0
  450. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.d.ts.map +1 -0
  451. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.js.map +1 -0
  452. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.d.ts.map +1 -0
  453. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.js.map +1 -0
  454. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.d.ts.map +1 -0
  455. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.js.map +1 -0
  456. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.d.ts.map +1 -0
  457. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.js.map +1 -0
  458. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.d.ts.map +1 -0
  459. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.js.map +1 -0
  460. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.d.ts.map +1 -0
  461. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.js.map +1 -0
  462. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.d.ts.map +1 -0
  463. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.js.map +1 -0
  464. package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
  465. package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
  466. package/analyzer-template/packages/github/dist/generate/index.js +3 -0
  467. package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
  468. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
  469. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +43 -21
  470. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  471. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.d.ts.map +1 -1
  472. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
  473. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
  474. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
  475. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
  476. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
  477. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  478. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
  479. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
  480. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  481. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  482. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  483. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  484. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  485. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  486. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +30 -2
  487. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  488. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.d.ts.map +1 -1
  489. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js +10 -1
  490. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js.map +1 -1
  491. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.d.ts.map +1 -1
  492. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js +7 -3
  493. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  494. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.d.ts.map +1 -1
  495. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js +5 -3
  496. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js.map +1 -1
  497. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
  498. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
  499. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
  500. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  501. package/analyzer-template/packages/github/dist/github/src/lib/getCommitsFromGithub.js +1 -1
  502. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
  503. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +11 -1
  504. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
  505. package/analyzer-template/packages/github/dist/github/src/lib/syncBranches.js +1 -1
  506. package/analyzer-template/packages/github/dist/github/src/lib/syncHeadBranches.js +1 -1
  507. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
  508. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +4 -1
  509. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
  510. package/analyzer-template/packages/github/dist/github/src/lib/syncPullRequest.js +1 -1
  511. package/analyzer-template/packages/github/dist/github/src/lib/updateCommitBranchesInDb.js +1 -1
  512. package/analyzer-template/packages/github/dist/github/src/lib/updateFilesInDb.js +1 -1
  513. package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
  514. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  515. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  516. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -9
  517. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  518. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts +2 -0
  519. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts.map +1 -1
  520. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +4 -0
  521. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
  522. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  523. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  524. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +11 -6
  525. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  526. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  527. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  528. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  529. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  530. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
  531. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  532. package/analyzer-template/packages/github/dist/utils/index.d.ts +3 -0
  533. package/analyzer-template/packages/github/dist/utils/index.d.ts.map +1 -1
  534. package/analyzer-template/packages/github/dist/utils/index.js +4 -0
  535. package/analyzer-template/packages/github/dist/utils/index.js.map +1 -1
  536. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts +25 -0
  537. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  538. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js +40 -0
  539. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js.map +1 -0
  540. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  541. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  542. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  543. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  544. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  545. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  546. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  547. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
  548. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  549. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  550. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  551. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  552. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  553. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  554. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  555. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  556. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  557. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  558. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  559. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  560. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +21 -0
  561. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
  562. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  563. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  564. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  565. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  566. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  567. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
  568. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  569. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +32 -3
  570. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
  571. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  572. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  573. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  574. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  575. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  576. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  577. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  578. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  579. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  580. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  581. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js +3 -0
  582. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js.map +1 -0
  583. package/analyzer-template/packages/github/package.json +1 -1
  584. package/analyzer-template/packages/github/src/lib/getCommitsFromGithub.ts +1 -1
  585. package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +15 -1
  586. package/analyzer-template/packages/github/src/lib/syncBranches.ts +1 -1
  587. package/analyzer-template/packages/github/src/lib/syncHeadBranches.ts +1 -1
  588. package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +3 -1
  589. package/analyzer-template/packages/github/src/lib/syncPullRequest.ts +1 -1
  590. package/analyzer-template/packages/github/src/lib/updateCommitBranchesInDb.ts +1 -1
  591. package/analyzer-template/packages/github/src/lib/updateFilesInDb.ts +1 -1
  592. package/analyzer-template/packages/process/index.ts +2 -0
  593. package/analyzer-template/packages/process/package.json +12 -0
  594. package/analyzer-template/packages/process/tsconfig.json +8 -0
  595. package/analyzer-template/packages/types/index.ts +5 -0
  596. package/analyzer-template/packages/types/src/types/Analysis.ts +104 -9
  597. package/analyzer-template/packages/types/src/types/Commit.ts +2 -0
  598. package/analyzer-template/packages/types/src/types/Entity.ts +4 -0
  599. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +7 -0
  600. package/analyzer-template/packages/types/src/types/Scenario.ts +11 -10
  601. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +228 -3
  602. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  603. package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
  604. package/analyzer-template/packages/ui-components/package.json +4 -4
  605. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  606. package/analyzer-template/packages/ui-components/src/scenario-editor/components/DataItemEditor.tsx +1 -1
  607. package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
  608. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  609. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  610. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -9
  611. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  612. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts +2 -0
  613. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts.map +1 -1
  614. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +4 -0
  615. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
  616. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  617. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  618. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +11 -6
  619. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  620. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  621. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  622. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  623. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  624. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
  625. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  626. package/analyzer-template/packages/utils/dist/utils/index.d.ts +3 -0
  627. package/analyzer-template/packages/utils/dist/utils/index.d.ts.map +1 -1
  628. package/analyzer-template/packages/utils/dist/utils/index.js +4 -0
  629. package/analyzer-template/packages/utils/dist/utils/index.js.map +1 -1
  630. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts +25 -0
  631. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  632. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js +40 -0
  633. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js.map +1 -0
  634. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  635. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  636. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  637. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  638. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  639. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  640. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  641. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
  642. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  643. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  644. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  645. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  646. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  647. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  648. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  649. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  650. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  651. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  652. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  653. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  654. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +21 -0
  655. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
  656. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  657. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  658. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  659. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +98 -3
  660. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  661. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  662. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  663. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  664. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
  665. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  666. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +32 -3
  667. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
  668. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  669. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  670. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  671. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  672. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  673. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  674. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  675. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  676. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  677. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  678. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js +3 -0
  679. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js.map +1 -0
  680. package/analyzer-template/packages/utils/index.ts +11 -0
  681. package/analyzer-template/packages/utils/src/lib/Semaphore.ts +42 -0
  682. package/analyzer-template/packages/utils/src/lib/applyUniversalMocks.ts +74 -9
  683. package/analyzer-template/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.ts +20 -1
  684. package/analyzer-template/packages/utils/src/lib/frameworks/getNextRoutePath.ts +2 -1
  685. package/analyzer-template/packages/utils/src/lib/frameworks/getRemixRoutePath.ts +2 -1
  686. package/analyzer-template/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.ts +17 -1
  687. package/analyzer-template/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.ts +1 -0
  688. package/analyzer-template/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.ts +67 -0
  689. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +121 -3
  690. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +43 -0
  691. package/analyzer-template/packages/utils/src/lib/safeFileName.ts +51 -3
  692. package/analyzer-template/packages/utils/src/lib/startCommand/buildStartCommand.ts +63 -0
  693. package/analyzer-template/packages/utils/src/lib/startCommand/getWebappInfo.ts +108 -0
  694. package/analyzer-template/packages/utils/src/lib/startCommand/index.ts +10 -0
  695. package/analyzer-template/playwright/capture.ts +103 -93
  696. package/analyzer-template/playwright/captureFromUrl.ts +48 -17
  697. package/analyzer-template/playwright/captureStatic.ts +2 -2
  698. package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
  699. package/analyzer-template/playwright/takeElementScreenshot.ts +48 -11
  700. package/analyzer-template/playwright/takeScreenshot.ts +38 -10
  701. package/analyzer-template/playwright/updateBackgroundJob.ts +1 -1
  702. package/analyzer-template/playwright/waitForServer.ts +21 -6
  703. package/analyzer-template/project/LazyFileStore.ts +1 -1
  704. package/analyzer-template/project/TESTING.md +83 -0
  705. package/analyzer-template/project/analyzeBaselineCommit.ts +10 -1
  706. package/analyzer-template/project/analyzeBranchCommit.ts +5 -1
  707. package/analyzer-template/project/analyzeFileEntities.ts +5 -1
  708. package/analyzer-template/project/analyzeRegularCommit.ts +10 -1
  709. package/analyzer-template/project/captureLibraryFunctionDirect.ts +30 -27
  710. package/analyzer-template/project/constructMockCode.ts +1739 -92
  711. package/analyzer-template/project/controller/startController.ts +16 -1
  712. package/analyzer-template/project/createEntitiesAndSortFiles.ts +98 -7
  713. package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
  714. package/analyzer-template/project/getFilesWithEntitiesFromRepo.ts +1 -1
  715. package/analyzer-template/project/getScenarioUrl.ts +73 -5
  716. package/analyzer-template/project/loadReadyToBeCaptured.ts +198 -38
  717. package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
  718. package/analyzer-template/project/orchestrateCapture/AwsCaptureTaskRunner.ts +12 -4
  719. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +15 -15
  720. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +97 -67
  721. package/analyzer-template/project/orchestrateCapture/SupabaseAnalysisLoader.ts +6 -6
  722. package/analyzer-template/project/orchestrateCapture/taskRunner.ts +4 -2
  723. package/analyzer-template/project/orchestrateCapture.ts +93 -14
  724. package/analyzer-template/project/prepareRepo.ts +1 -1
  725. package/analyzer-template/project/reconcileMockDataKeys.ts +258 -2
  726. package/analyzer-template/project/runAnalysis.ts +12 -1
  727. package/analyzer-template/project/runMultiScenarioServer.ts +13 -16
  728. package/analyzer-template/project/runScenarioServer.ts +1 -5
  729. package/analyzer-template/project/serverOnlyModules.ts +413 -0
  730. package/analyzer-template/project/start.ts +94 -33
  731. package/analyzer-template/project/startScenarioCapture.ts +103 -41
  732. package/analyzer-template/project/startServer.ts +50 -70
  733. package/analyzer-template/project/trackGeneratedFiles.ts +41 -0
  734. package/analyzer-template/project/updateCommitBackgroundJob.ts +1 -1
  735. package/analyzer-template/project/utils/errorHandling.ts +1 -1
  736. package/analyzer-template/project/writeMockDataTsx.ts +748 -69
  737. package/analyzer-template/project/writeScenario.ts +1 -1
  738. package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
  739. package/analyzer-template/project/writeScenarioComponents.ts +2352 -179
  740. package/analyzer-template/project/writeScenarioFiles.ts +26 -0
  741. package/analyzer-template/project/writeSimpleRoot.ts +125 -2
  742. package/analyzer-template/project/writeUniversalMocks.ts +88 -9
  743. package/analyzer-template/scripts/comboWorkerLoop.cjs +99 -50
  744. package/analyzer-template/scripts/defaultCmd.sh +9 -0
  745. package/analyzer-template/scripts/postbuild.cjs +12 -1
  746. package/analyzer-template/tsconfig.json +2 -1
  747. package/background/src/lib/local/createLocalAnalyzer.js +2 -30
  748. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  749. package/background/src/lib/local/execAsync.js +1 -1
  750. package/background/src/lib/local/execAsync.js.map +1 -1
  751. package/background/src/lib/virtualized/common/execAsync.js +2 -2
  752. package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
  753. package/background/src/lib/virtualized/project/LazyFileStore.js +1 -1
  754. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +8 -2
  755. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  756. package/background/src/lib/virtualized/project/analyzeBranchCommit.js +3 -2
  757. package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
  758. package/background/src/lib/virtualized/project/analyzeFileEntities.js +3 -2
  759. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  760. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +8 -2
  761. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  762. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js +4 -4
  763. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js.map +1 -1
  764. package/background/src/lib/virtualized/project/constructMockCode.js +1518 -64
  765. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  766. package/background/src/lib/virtualized/project/controller/startController.js +11 -1
  767. package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
  768. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js +83 -4
  769. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js.map +1 -1
  770. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
  771. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
  772. package/background/src/lib/virtualized/project/getFilesWithEntitiesFromRepo.js +1 -1
  773. package/background/src/lib/virtualized/project/getScenarioUrl.js +38 -3
  774. package/background/src/lib/virtualized/project/getScenarioUrl.js.map +1 -1
  775. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +108 -6
  776. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  777. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
  778. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
  779. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js +2 -2
  780. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js.map +1 -1
  781. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +13 -7
  782. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  783. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +73 -49
  784. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  785. package/background/src/lib/virtualized/project/orchestrateCapture.js +77 -15
  786. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  787. package/background/src/lib/virtualized/project/prepareRepo.js +1 -1
  788. package/background/src/lib/virtualized/project/prepareRepo.js.map +1 -1
  789. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +216 -2
  790. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  791. package/background/src/lib/virtualized/project/runAnalysis.js +10 -1
  792. package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
  793. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +13 -14
  794. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  795. package/background/src/lib/virtualized/project/serverOnlyModules.js +338 -0
  796. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -0
  797. package/background/src/lib/virtualized/project/start.js +81 -30
  798. package/background/src/lib/virtualized/project/start.js.map +1 -1
  799. package/background/src/lib/virtualized/project/startScenarioCapture.js +79 -31
  800. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  801. package/background/src/lib/virtualized/project/startServer.js +40 -68
  802. package/background/src/lib/virtualized/project/startServer.js.map +1 -1
  803. package/background/src/lib/virtualized/project/trackGeneratedFiles.js +30 -0
  804. package/background/src/lib/virtualized/project/trackGeneratedFiles.js.map +1 -0
  805. package/background/src/lib/virtualized/project/updateCommitBackgroundJob.js +1 -1
  806. package/background/src/lib/virtualized/project/utils/errorHandling.js +1 -1
  807. package/background/src/lib/virtualized/project/writeMockDataTsx.js +640 -60
  808. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  809. package/background/src/lib/virtualized/project/writeScenario.js +1 -1
  810. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
  811. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
  812. package/background/src/lib/virtualized/project/writeScenarioComponents.js +1721 -117
  813. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  814. package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
  815. package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
  816. package/background/src/lib/virtualized/project/writeSimpleRoot.js +113 -2
  817. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  818. package/background/src/lib/virtualized/project/writeUniversalMocks.js +72 -8
  819. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  820. package/codeyam-cli/scripts/apply-setup.js +181 -1
  821. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  822. package/codeyam-cli/scripts/extract-setup.js +1 -1
  823. package/codeyam-cli/scripts/populateEntityTimestamps.js +1 -1
  824. package/codeyam-cli/scripts/populateEntityTimestamps.js.map +1 -1
  825. package/codeyam-cli/src/cli.js +40 -17
  826. package/codeyam-cli/src/cli.js.map +1 -1
  827. package/codeyam-cli/src/codeyam-cli.js +18 -2
  828. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  829. package/codeyam-cli/src/commands/analyze.js +5 -3
  830. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  831. package/codeyam-cli/src/commands/baseline.js +176 -0
  832. package/codeyam-cli/src/commands/baseline.js.map +1 -0
  833. package/codeyam-cli/src/commands/debug.js +253 -0
  834. package/codeyam-cli/src/commands/debug.js.map +1 -0
  835. package/codeyam-cli/src/commands/default.js +30 -34
  836. package/codeyam-cli/src/commands/default.js.map +1 -1
  837. package/codeyam-cli/src/commands/entities.js +1 -1
  838. package/codeyam-cli/src/commands/generate-data-structure.js +17 -8
  839. package/codeyam-cli/src/commands/generate-data-structure.js.map +1 -1
  840. package/codeyam-cli/src/commands/init.js +50 -277
  841. package/codeyam-cli/src/commands/init.js.map +1 -1
  842. package/codeyam-cli/src/commands/memory.js +254 -0
  843. package/codeyam-cli/src/commands/memory.js.map +1 -0
  844. package/codeyam-cli/src/commands/recapture.js +228 -0
  845. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  846. package/codeyam-cli/src/commands/report.js +150 -0
  847. package/codeyam-cli/src/commands/report.js.map +1 -0
  848. package/codeyam-cli/src/commands/setup-sandbox.js +167 -0
  849. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -0
  850. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  851. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  852. package/codeyam-cli/src/commands/start.js +8 -12
  853. package/codeyam-cli/src/commands/start.js.map +1 -1
  854. package/codeyam-cli/src/commands/status.js +23 -1
  855. package/codeyam-cli/src/commands/status.js.map +1 -1
  856. package/codeyam-cli/src/commands/suggest.js +1 -1
  857. package/codeyam-cli/src/commands/test-startup.js +17 -6
  858. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  859. package/codeyam-cli/src/commands/verify.js +14 -2
  860. package/codeyam-cli/src/commands/verify.js.map +1 -1
  861. package/codeyam-cli/src/commands/wipe.js +108 -0
  862. package/codeyam-cli/src/commands/wipe.js.map +1 -0
  863. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js +6 -6
  864. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js.map +1 -1
  865. package/codeyam-cli/src/utils/__tests__/entityVersioning.test.js +2 -2
  866. package/codeyam-cli/src/utils/__tests__/fileWatcher.batch.test.js +2 -2
  867. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js +58 -30
  868. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js.map +1 -1
  869. package/codeyam-cli/src/utils/__tests__/fileWatcher.optimization.test.js +2 -2
  870. package/codeyam-cli/src/utils/__tests__/fileWatcher.versioning.test.js +2 -2
  871. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +185 -0
  872. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -0
  873. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
  874. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
  875. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +128 -74
  876. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  877. package/codeyam-cli/src/utils/analysisRunner.js +32 -17
  878. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  879. package/codeyam-cli/src/utils/analyzer.js +31 -2
  880. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  881. package/codeyam-cli/src/utils/backgroundServer.js +104 -23
  882. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  883. package/codeyam-cli/src/utils/changeDetection.js +1 -1
  884. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js +2 -2
  885. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js.map +1 -1
  886. package/codeyam-cli/src/utils/database.js +92 -6
  887. package/codeyam-cli/src/utils/database.js.map +1 -1
  888. package/codeyam-cli/src/utils/entityCache.js +1 -1
  889. package/codeyam-cli/src/utils/entityMetadata.js +1 -1
  890. package/codeyam-cli/src/utils/entityVersioning.js +1 -1
  891. package/codeyam-cli/src/utils/fileWatcher.js +2 -2
  892. package/codeyam-cli/src/utils/generateReport.js +366 -0
  893. package/codeyam-cli/src/utils/generateReport.js.map +1 -0
  894. package/codeyam-cli/src/utils/git.js +79 -0
  895. package/codeyam-cli/src/utils/git.js.map +1 -0
  896. package/codeyam-cli/src/utils/install-skills.js +78 -37
  897. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  898. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  899. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  900. package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
  901. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -0
  902. package/codeyam-cli/src/utils/progress.js +7 -0
  903. package/codeyam-cli/src/utils/progress.js.map +1 -1
  904. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js +3 -3
  905. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js +3 -2
  906. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js.map +1 -1
  907. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +38 -0
  908. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  909. package/codeyam-cli/src/utils/queue/heartbeat.js +1 -1
  910. package/codeyam-cli/src/utils/queue/heartbeat.js.map +1 -1
  911. package/codeyam-cli/src/utils/queue/job.js +264 -26
  912. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  913. package/codeyam-cli/src/utils/queue/manager.js +103 -7
  914. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  915. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  916. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  917. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  918. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  919. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  920. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +229 -0
  921. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  922. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  923. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  924. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  925. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  926. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  927. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  928. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  929. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  930. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +74 -0
  931. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  932. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +376 -0
  933. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  934. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +113 -0
  935. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  936. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  937. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  938. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  939. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  940. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  941. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  942. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  943. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  944. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  945. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  946. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  947. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  948. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  949. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  950. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js +83 -0
  951. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js.map +1 -0
  952. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js +118 -0
  953. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js.map +1 -0
  954. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js +72 -0
  955. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js.map +1 -0
  956. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  957. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  958. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js +76 -0
  959. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js.map +1 -0
  960. package/codeyam-cli/src/utils/rules/index.js +7 -0
  961. package/codeyam-cli/src/utils/rules/index.js.map +1 -0
  962. package/codeyam-cli/src/utils/rules/parser.js +93 -0
  963. package/codeyam-cli/src/utils/rules/parser.js.map +1 -0
  964. package/codeyam-cli/src/utils/rules/pathMatcher.js +49 -0
  965. package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -0
  966. package/codeyam-cli/src/utils/rules/rulePlacement.js +65 -0
  967. package/codeyam-cli/src/utils/rules/rulePlacement.js.map +1 -0
  968. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  969. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  970. package/codeyam-cli/src/utils/rules/sourceFiles.js +43 -0
  971. package/codeyam-cli/src/utils/rules/sourceFiles.js.map +1 -0
  972. package/codeyam-cli/src/utils/rules/staleness.js +137 -0
  973. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -0
  974. package/codeyam-cli/src/utils/sandbox.js +190 -0
  975. package/codeyam-cli/src/utils/sandbox.js.map +1 -0
  976. package/codeyam-cli/src/utils/serverState.js +37 -10
  977. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  978. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +25 -42
  979. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  980. package/codeyam-cli/src/utils/simulationGateMiddleware.js +159 -0
  981. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -0
  982. package/codeyam-cli/src/utils/syncMocksMiddleware.js +5 -24
  983. package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
  984. package/codeyam-cli/src/utils/syncUncommittedEntities.js +1 -1
  985. package/codeyam-cli/src/utils/syncUniversalMocks.js +1 -1
  986. package/codeyam-cli/src/utils/versionInfo.js +67 -15
  987. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  988. package/codeyam-cli/src/utils/webappDetection.js +2 -1
  989. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  990. package/codeyam-cli/src/utils/wipe.js +128 -0
  991. package/codeyam-cli/src/utils/wipe.js.map +1 -0
  992. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
  993. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
  994. package/codeyam-cli/src/webserver/app/lib/database.js +169 -9
  995. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  996. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js +3 -1
  997. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  998. package/codeyam-cli/src/webserver/app/routes/api.agent-transcripts.js +486 -0
  999. package/codeyam-cli/src/webserver/app/routes/api.agent-transcripts.js.map +1 -0
  1000. package/codeyam-cli/src/webserver/backgroundServer.js +65 -10
  1001. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  1002. package/codeyam-cli/src/webserver/bootstrap.js +60 -0
  1003. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  1004. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-CtmbP4Gl.js +1 -0
  1005. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-DlMph_Hm.js +11 -0
  1006. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-B-0PjGOU.js +1 -0
  1007. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-DN9eiJAO.js +41 -0
  1008. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-C1rIyZdV.js +34 -0
  1009. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-rE_fI2h2.js +25 -0
  1010. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CnatsCw2.js +3 -0
  1011. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-CSP6DZrh.js +6 -0
  1012. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-CMK8Q7yk.js +3 -0
  1013. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-TCV_HBjy.js +11 -0
  1014. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-CG2uh31y.js +1 -0
  1015. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-CU_TDYd8.js +10 -0
  1016. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-D7IoaWUW.js +1 -0
  1017. package/codeyam-cli/src/webserver/build/client/assets/_index-B8z7mjR-.js +11 -0
  1018. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-DZu78RI1.js +27 -0
  1019. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-DxCa1oBt.js +23 -0
  1020. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  1021. package/codeyam-cli/src/webserver/build/client/assets/api.generate-report-l0sNRNKZ.js +1 -0
  1022. package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
  1023. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  1024. package/codeyam-cli/src/webserver/build/client/assets/api.memory-profile-l0sNRNKZ.js +1 -0
  1025. package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
  1026. package/codeyam-cli/src/webserver/build/client/assets/api.rule-path-l0sNRNKZ.js +1 -0
  1027. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  1028. package/codeyam-cli/src/webserver/build/client/assets/book-open-Bp5FLkd4.js +6 -0
  1029. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-DQJA9f4o.js +6 -0
  1030. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-7VptmeIr.js +51 -0
  1031. package/codeyam-cli/src/webserver/build/client/assets/circle-check-B6C4LY9o.js +6 -0
  1032. package/codeyam-cli/src/webserver/build/client/assets/codeyam-name-logo-CvKwUgHo.svg +9 -0
  1033. package/codeyam-cli/src/webserver/build/client/assets/copy-6nzYCu0G.js +11 -0
  1034. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-D-QUFOwe.js +21 -0
  1035. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-CCKUIm0S.svg +4 -0
  1036. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
  1037. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DmzSmblj.js +1 -0
  1038. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._--zvFJ4OH.js +23 -0
  1039. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DVTcUnur.js +6 -0
  1040. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-BVgNO76F.js +6 -0
  1041. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-C7ysA4Jq.js +5 -0
  1042. package/codeyam-cli/src/webserver/build/client/assets/entry.client-CU6EUArK.js +29 -0
  1043. package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
  1044. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-EWpfFU4X.js +1 -0
  1045. package/codeyam-cli/src/webserver/build/client/assets/files-CrxAoWIL.js +1 -0
  1046. package/codeyam-cli/src/webserver/build/client/assets/git-BldHtKeW.js +15 -0
  1047. package/codeyam-cli/src/webserver/build/client/assets/globals-B4MPiL7S.css +1 -0
  1048. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  1049. package/codeyam-cli/src/webserver/build/client/assets/index-7-1FmlHo.js +9 -0
  1050. package/codeyam-cli/src/webserver/build/client/assets/index-DuYcwYp_.js +3 -0
  1051. package/codeyam-cli/src/webserver/build/client/assets/labs-CPPVOSWB.js +1 -0
  1052. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-BnDcD54R.js +6 -0
  1053. package/codeyam-cli/src/webserver/build/client/assets/manifest-c1fc3656.js +1 -0
  1054. package/codeyam-cli/src/webserver/build/client/assets/memory-CfpYxpNu.js +93 -0
  1055. package/codeyam-cli/src/webserver/build/client/assets/pause-DhQX2g22.js +11 -0
  1056. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  1057. package/codeyam-cli/src/webserver/build/client/assets/root-CAAbm4U5.js +62 -0
  1058. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  1059. package/codeyam-cli/src/webserver/build/client/assets/search-DborVoKD.js +6 -0
  1060. package/codeyam-cli/src/webserver/build/client/assets/settings-BpLDWmGh.js +1 -0
  1061. package/codeyam-cli/src/webserver/build/client/assets/simulations-BtrtCYJg.js +1 -0
  1062. package/codeyam-cli/src/webserver/build/client/assets/terminal-Bs4NC-VZ.js +11 -0
  1063. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-DTf3Jojp.js +6 -0
  1064. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-D_bDZyDU.js +1 -0
  1065. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-DZp6rrQD.js +2 -0
  1066. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-BsQb6rFd.js +1 -0
  1067. package/codeyam-cli/src/webserver/build/client/assets/useToast-BOur3mUv.js +1 -0
  1068. package/codeyam-cli/src/webserver/build/server/assets/index-B8A_aaGG.js +1 -0
  1069. package/codeyam-cli/src/webserver/build/server/assets/server-build-69rRZnZo.js +286 -0
  1070. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  1071. package/codeyam-cli/src/webserver/build-info.json +5 -5
  1072. package/codeyam-cli/src/webserver/devServer.js +1 -3
  1073. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  1074. package/codeyam-cli/src/webserver/server.js +35 -25
  1075. package/codeyam-cli/src/webserver/server.js.map +1 -1
  1076. package/codeyam-cli/templates/codeyam-debug.md +601 -0
  1077. package/codeyam-cli/templates/codeyam-diagnose.md +481 -0
  1078. package/codeyam-cli/templates/codeyam-memory-hook.sh +199 -0
  1079. package/codeyam-cli/templates/codeyam-memory.md +396 -0
  1080. package/codeyam-cli/templates/codeyam-new-rule.md +11 -0
  1081. package/codeyam-cli/templates/codeyam-setup.md +600 -0
  1082. package/codeyam-cli/templates/codeyam-sim.md +222 -0
  1083. package/codeyam-cli/templates/codeyam-test.md +178 -0
  1084. package/codeyam-cli/templates/codeyam-verify.md +179 -0
  1085. package/codeyam-cli/templates/hooks/staleness-check.sh +43 -0
  1086. package/codeyam-cli/templates/prompts/conversation-guidance.txt +32 -0
  1087. package/codeyam-cli/templates/prompts/conversation-prompt.txt +28 -0
  1088. package/codeyam-cli/templates/prompts/interruption-prompt.txt +31 -0
  1089. package/codeyam-cli/templates/prompts/stale-rules-prompt.txt +24 -0
  1090. package/codeyam-cli/templates/rule-notification-hook.py +56 -0
  1091. package/codeyam-cli/templates/rule-reflection-hook.py +627 -0
  1092. package/codeyam-cli/templates/rules-instructions.md +77 -0
  1093. package/package.json +29 -28
  1094. package/packages/ai/index.js +9 -8
  1095. package/packages/ai/index.js.map +1 -1
  1096. package/packages/ai/src/lib/analyzeScope.js +211 -6
  1097. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  1098. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
  1099. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
  1100. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +185 -36
  1101. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  1102. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
  1103. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
  1104. package/packages/ai/src/lib/astScopes/methodSemantics.js +308 -20
  1105. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  1106. package/packages/ai/src/lib/astScopes/paths.js +39 -4
  1107. package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
  1108. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  1109. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  1110. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
  1111. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
  1112. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +31 -1
  1113. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  1114. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
  1115. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
  1116. package/packages/ai/src/lib/astScopes/processExpression.js +1401 -102
  1117. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  1118. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  1119. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  1120. package/packages/ai/src/lib/checkAllAttributes.js +23 -10
  1121. package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
  1122. package/packages/ai/src/lib/completionCall.js +178 -36
  1123. package/packages/ai/src/lib/completionCall.js.map +1 -1
  1124. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +3590 -522
  1125. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  1126. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js +164 -2
  1127. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js.map +1 -1
  1128. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +19 -4
  1129. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  1130. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
  1131. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  1132. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +184 -58
  1133. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  1134. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +122 -0
  1135. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -0
  1136. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js +176 -0
  1137. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js.map +1 -0
  1138. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js +178 -0
  1139. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js.map +1 -0
  1140. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +140 -0
  1141. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -0
  1142. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js +199 -0
  1143. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js.map +1 -0
  1144. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +66 -2
  1145. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  1146. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +198 -15
  1147. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  1148. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  1149. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  1150. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +145 -15
  1151. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  1152. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
  1153. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
  1154. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  1155. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  1156. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  1157. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  1158. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +385 -79
  1159. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  1160. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
  1161. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
  1162. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js +28 -3
  1163. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js.map +1 -1
  1164. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js +62 -0
  1165. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js.map +1 -0
  1166. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js +90 -0
  1167. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js.map +1 -0
  1168. package/packages/ai/src/lib/dataStructureChunking.js +130 -0
  1169. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
  1170. package/packages/ai/src/lib/deepEqual.js +32 -0
  1171. package/packages/ai/src/lib/deepEqual.js.map +1 -0
  1172. package/packages/ai/src/lib/e2eDataTracking.js +241 -0
  1173. package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
  1174. package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
  1175. package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
  1176. package/packages/ai/src/lib/generateChangesEntityDocumentation.js +19 -1
  1177. package/packages/ai/src/lib/generateChangesEntityDocumentation.js.map +1 -1
  1178. package/packages/ai/src/lib/generateChangesEntityScenarioData.js +111 -152
  1179. package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
  1180. package/packages/ai/src/lib/generateChangesEntityScenarios.js +131 -322
  1181. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  1182. package/packages/ai/src/lib/generateEntityDataStructure.js +56 -6
  1183. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  1184. package/packages/ai/src/lib/generateEntityDocumentation.js +15 -1
  1185. package/packages/ai/src/lib/generateEntityDocumentation.js.map +1 -1
  1186. package/packages/ai/src/lib/generateEntityScenarioData.js +1138 -181
  1187. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  1188. package/packages/ai/src/lib/generateEntityScenarios.js +209 -269
  1189. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  1190. package/packages/ai/src/lib/generateExecutionFlows.js +495 -0
  1191. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
  1192. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
  1193. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
  1194. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1807 -0
  1195. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
  1196. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
  1197. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
  1198. package/packages/ai/src/lib/generateStatementAnalysis.js +47 -72
  1199. package/packages/ai/src/lib/generateStatementAnalysis.js.map +1 -1
  1200. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +97 -22
  1201. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  1202. package/packages/ai/src/lib/getLLMCallStats.js +0 -14
  1203. package/packages/ai/src/lib/getLLMCallStats.js.map +1 -1
  1204. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  1205. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  1206. package/packages/ai/src/lib/isolateScopes.js +270 -7
  1207. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  1208. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  1209. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  1210. package/packages/ai/src/lib/mergeStatements.js +104 -6
  1211. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  1212. package/packages/ai/src/lib/modelInfo.js +15 -0
  1213. package/packages/ai/src/lib/modelInfo.js.map +1 -1
  1214. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  1215. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  1216. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +118 -23
  1217. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  1218. package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js +8 -33
  1219. package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js.map +1 -1
  1220. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +36 -42
  1221. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
  1222. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +49 -99
  1223. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  1224. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
  1225. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
  1226. package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js +8 -27
  1227. package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js.map +1 -1
  1228. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +103 -29
  1229. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  1230. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +12 -31
  1231. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  1232. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
  1233. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
  1234. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  1235. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  1236. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
  1237. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
  1238. package/packages/ai/src/lib/resolvePathToControllable.js +677 -0
  1239. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
  1240. package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
  1241. package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
  1242. package/packages/ai/src/lib/types/index.js +2 -0
  1243. package/packages/ai/src/lib/types/index.js.map +1 -1
  1244. package/packages/ai/src/lib/worker/SerializableDataStructure.js +36 -0
  1245. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  1246. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +98 -1
  1247. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  1248. package/packages/analyze/index.js +1 -0
  1249. package/packages/analyze/index.js.map +1 -1
  1250. package/packages/analyze/src/lib/FileAnalyzer.js +196 -41
  1251. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  1252. package/packages/analyze/src/lib/ProjectAnalyzer.js +96 -26
  1253. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  1254. package/packages/analyze/src/lib/analysisContext.js +30 -5
  1255. package/packages/analyze/src/lib/analysisContext.js.map +1 -1
  1256. package/packages/analyze/src/lib/asts/nodes/getNodeType.js +2 -1
  1257. package/packages/analyze/src/lib/asts/nodes/getNodeType.js.map +1 -1
  1258. package/packages/analyze/src/lib/asts/nodes/index.js +3 -1
  1259. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  1260. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
  1261. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
  1262. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  1263. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  1264. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  1265. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  1266. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js +3 -2
  1267. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js.map +1 -1
  1268. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +41 -9
  1269. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  1270. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  1271. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  1272. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  1273. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  1274. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  1275. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  1276. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +594 -105
  1277. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  1278. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +48 -3
  1279. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  1280. package/packages/analyze/src/lib/files/analyze/dependencyResolver.js +5 -0
  1281. package/packages/analyze/src/lib/files/analyze/dependencyResolver.js.map +1 -1
  1282. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +3 -1
  1283. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  1284. package/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.js +1 -1
  1285. package/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.js +1 -1
  1286. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +15 -3
  1287. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  1288. package/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.js +1 -1
  1289. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +5 -8
  1290. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  1291. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -10
  1292. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  1293. package/packages/analyze/src/lib/files/analyzeChange.js +42 -20
  1294. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  1295. package/packages/analyze/src/lib/files/analyzeEntity.js +20 -13
  1296. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  1297. package/packages/analyze/src/lib/files/analyzeInitial.js +30 -19
  1298. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  1299. package/packages/analyze/src/lib/files/analyzeNextRoute.js +1 -1
  1300. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +22 -26
  1301. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  1302. package/packages/analyze/src/lib/files/enums/steps.js +1 -1
  1303. package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
  1304. package/packages/analyze/src/lib/files/getImportedExports.js +103 -8
  1305. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  1306. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +880 -0
  1307. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  1308. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +255 -0
  1309. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  1310. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
  1311. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
  1312. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +646 -72
  1313. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  1314. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  1315. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  1316. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
  1317. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
  1318. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +454 -30
  1319. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  1320. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +144 -0
  1321. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
  1322. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +61 -67
  1323. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  1324. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +8 -4
  1325. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  1326. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +936 -105
  1327. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  1328. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +49 -6
  1329. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
  1330. package/packages/analyze/src/lib/files/setImportedExports.js +3 -2
  1331. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  1332. package/packages/analyze/src/lib/index.js +1 -0
  1333. package/packages/analyze/src/lib/index.js.map +1 -1
  1334. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  1335. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  1336. package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
  1337. package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  1338. package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
  1339. package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  1340. package/packages/database/index.js.map +1 -0
  1341. package/packages/database/src/lib/analysisBranchToDb.js +19 -0
  1342. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -0
  1343. package/packages/database/src/lib/analysisToDb.js +26 -0
  1344. package/packages/database/src/lib/analysisToDb.js.map +1 -0
  1345. package/packages/database/src/lib/backgroundJobToDb.js.map +1 -0
  1346. package/packages/database/src/lib/branchToDb.js +18 -0
  1347. package/packages/database/src/lib/branchToDb.js.map +1 -0
  1348. package/packages/database/src/lib/commitBranchToDb.js +13 -0
  1349. package/packages/database/src/lib/commitBranchToDb.js.map +1 -0
  1350. package/packages/database/src/lib/commitToDb.js +26 -0
  1351. package/packages/database/src/lib/commitToDb.js.map +1 -0
  1352. package/packages/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  1353. package/packages/database/src/lib/createProject.js.map +1 -0
  1354. package/packages/database/src/lib/createRetryFetch.js.map +1 -0
  1355. package/packages/database/src/lib/dbToAnalysis.js.map +1 -0
  1356. package/packages/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  1357. package/packages/database/src/lib/dbToBackgroundJob.js.map +1 -0
  1358. package/packages/database/src/lib/dbToBranch.js.map +1 -0
  1359. package/packages/database/src/lib/dbToCommit.js.map +1 -0
  1360. package/packages/database/src/lib/dbToCommitBranch.js.map +1 -0
  1361. package/packages/database/src/lib/dbToEntity.js.map +1 -0
  1362. package/packages/database/src/lib/dbToEntityBranch.js.map +1 -0
  1363. package/packages/database/src/lib/dbToFile.js.map +1 -0
  1364. package/packages/database/src/lib/dbToProject.js.map +1 -0
  1365. package/packages/database/src/lib/dbToScenario.js.map +1 -0
  1366. package/packages/database/src/lib/dbToScenarioComment.js.map +1 -0
  1367. package/packages/database/src/lib/dbToUserScenario.js.map +1 -0
  1368. package/packages/database/src/lib/deleteBranch.js.map +1 -0
  1369. package/packages/database/src/lib/deleteEntities.js.map +1 -0
  1370. package/packages/database/src/lib/deleteFile.js.map +1 -0
  1371. package/packages/database/src/lib/deleteScenarios.js.map +1 -0
  1372. package/packages/database/src/lib/entityToDb.js.map +1 -0
  1373. package/packages/database/src/lib/fileToDb.js +14 -0
  1374. package/packages/database/src/lib/fileToDb.js.map +1 -0
  1375. package/packages/database/src/lib/generateSha.js.map +1 -0
  1376. package/packages/database/src/lib/jsonUpdateUtils.js.map +1 -0
  1377. package/packages/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  1378. package/packages/database/src/lib/kysely/db.js +373 -0
  1379. package/packages/database/src/lib/kysely/db.js.map +1 -0
  1380. package/packages/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  1381. package/packages/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  1382. package/packages/database/src/lib/kysely/tableRelations.js.map +1 -0
  1383. package/packages/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  1384. package/packages/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  1385. package/packages/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  1386. package/packages/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  1387. package/packages/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  1388. package/packages/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  1389. package/packages/database/src/lib/kysely/tables/commitsTable.js +47 -0
  1390. package/packages/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  1391. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  1392. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  1393. package/packages/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  1394. package/packages/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  1395. package/packages/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  1396. package/packages/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  1397. package/packages/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  1398. package/packages/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  1399. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  1400. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  1401. package/packages/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  1402. package/packages/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  1403. package/packages/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  1404. package/packages/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  1405. package/packages/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  1406. package/packages/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  1407. package/packages/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  1408. package/packages/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  1409. package/packages/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  1410. package/packages/database/src/lib/loadAnalyses.js +174 -0
  1411. package/packages/database/src/lib/loadAnalyses.js.map +1 -0
  1412. package/packages/database/src/lib/loadAnalysis.js +138 -0
  1413. package/packages/database/src/lib/loadAnalysis.js.map +1 -0
  1414. package/packages/database/src/lib/loadAnalysisBranches.js.map +1 -0
  1415. package/packages/database/src/lib/loadBackgroundJob.js.map +1 -0
  1416. package/packages/database/src/lib/loadBranch.js +100 -0
  1417. package/packages/database/src/lib/loadBranch.js.map +1 -0
  1418. package/packages/database/src/lib/loadBranches.js.map +1 -0
  1419. package/packages/database/src/lib/loadCommit.js +118 -0
  1420. package/packages/database/src/lib/loadCommit.js.map +1 -0
  1421. package/packages/database/src/lib/loadCommitBranches.js.map +1 -0
  1422. package/packages/database/src/lib/loadCommitMetadata.js.map +1 -0
  1423. package/packages/database/src/lib/loadCommits.js +209 -0
  1424. package/packages/database/src/lib/loadCommits.js.map +1 -0
  1425. package/packages/database/src/lib/loadEntities.js +82 -0
  1426. package/packages/database/src/lib/loadEntities.js.map +1 -0
  1427. package/packages/database/src/lib/loadEntity.js.map +1 -0
  1428. package/packages/database/src/lib/loadEntityBranches.js +123 -0
  1429. package/packages/database/src/lib/loadEntityBranches.js.map +1 -0
  1430. package/packages/database/src/lib/loadFile.js.map +1 -0
  1431. package/packages/database/src/lib/loadFiles.js.map +1 -0
  1432. package/packages/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  1433. package/packages/database/src/lib/loadProject.js.map +1 -0
  1434. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +68 -0
  1435. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  1436. package/packages/database/src/lib/loadScenario.js.map +1 -0
  1437. package/packages/database/src/lib/loadStatement.js.map +1 -0
  1438. package/packages/database/src/lib/nullsToUndefines.js.map +1 -0
  1439. package/packages/database/src/lib/projectToDb.js +18 -0
  1440. package/packages/database/src/lib/projectToDb.js.map +1 -0
  1441. package/packages/database/src/lib/saveBackgroundEvent.js.map +1 -0
  1442. package/packages/database/src/lib/saveEntityStatements.js.map +1 -0
  1443. package/packages/database/src/lib/saveFiles.js +33 -0
  1444. package/packages/database/src/lib/saveFiles.js.map +1 -0
  1445. package/packages/database/src/lib/saveStatement.js.map +1 -0
  1446. package/packages/database/src/lib/scenarioToDb.js +18 -0
  1447. package/packages/database/src/lib/scenarioToDb.js.map +1 -0
  1448. package/packages/database/src/lib/supabase.js.map +1 -0
  1449. package/packages/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  1450. package/packages/database/src/lib/updateCommitMetadata.js +101 -0
  1451. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -0
  1452. package/packages/database/src/lib/updateEntityBranch.js.map +1 -0
  1453. package/packages/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  1454. package/packages/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  1455. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  1456. package/packages/database/src/lib/updateProjectMetadata.js.map +1 -0
  1457. package/packages/database/src/lib/upsertAnalyses.js.map +1 -0
  1458. package/packages/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  1459. package/packages/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  1460. package/packages/database/src/lib/upsertBackgroundJob.js.map +1 -0
  1461. package/packages/database/src/lib/upsertBranches.js.map +1 -0
  1462. package/packages/database/src/lib/upsertCommitBranches.js.map +1 -0
  1463. package/packages/database/src/lib/upsertCommits.js.map +1 -0
  1464. package/packages/database/src/lib/upsertEntities.js.map +1 -0
  1465. package/packages/database/src/lib/upsertEntityBranches.js.map +1 -0
  1466. package/packages/database/src/lib/upsertFiles.js.map +1 -0
  1467. package/packages/database/src/lib/upsertGithubUser.js.map +1 -0
  1468. package/packages/database/src/lib/upsertProjects.js.map +1 -0
  1469. package/packages/database/src/lib/upsertScenarios.js.map +1 -0
  1470. package/packages/generate/index.js +3 -0
  1471. package/packages/generate/index.js.map +1 -1
  1472. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +43 -21
  1473. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  1474. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
  1475. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
  1476. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
  1477. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  1478. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  1479. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  1480. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
  1481. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  1482. package/packages/generate/src/lib/deepMerge.js +30 -2
  1483. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  1484. package/packages/generate/src/lib/directExecutionScript.js +10 -1
  1485. package/packages/generate/src/lib/directExecutionScript.js.map +1 -1
  1486. package/packages/generate/src/lib/getComponentScenarioPath.js +7 -3
  1487. package/packages/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  1488. package/packages/generate/src/lib/scenarioComponent.js +5 -3
  1489. package/packages/generate/src/lib/scenarioComponent.js.map +1 -1
  1490. package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
  1491. package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  1492. package/packages/github/src/lib/getCommitsFromGithub.js +1 -1
  1493. package/packages/github/src/lib/loadOrCreateCommit.js +11 -1
  1494. package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
  1495. package/packages/github/src/lib/syncHeadBranches.js +1 -1
  1496. package/packages/github/src/lib/syncPrimaryBranch.js +4 -1
  1497. package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
  1498. package/packages/github/src/lib/syncPullRequest.js +1 -1
  1499. package/packages/github/src/lib/updateCommitBranchesInDb.js +1 -1
  1500. package/packages/github/src/lib/updateFilesInDb.js +1 -1
  1501. package/packages/process/index.js +3 -0
  1502. package/packages/process/index.js.map +1 -0
  1503. package/packages/process/src/GlobalProcessManager.js.map +1 -0
  1504. package/packages/process/src/ProcessManager.js +244 -0
  1505. package/packages/process/src/ProcessManager.js.map +1 -0
  1506. package/packages/process/src/index.js.map +1 -0
  1507. package/packages/process/src/managedExecAsync.js.map +1 -0
  1508. package/packages/types/index.js.map +1 -1
  1509. package/packages/utils/index.js +4 -0
  1510. package/packages/utils/index.js.map +1 -1
  1511. package/packages/utils/src/lib/Semaphore.js +40 -0
  1512. package/packages/utils/src/lib/Semaphore.js.map +1 -0
  1513. package/packages/utils/src/lib/applyUniversalMocks.js +65 -7
  1514. package/packages/utils/src/lib/applyUniversalMocks.js.map +1 -1
  1515. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  1516. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  1517. package/packages/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  1518. package/packages/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  1519. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  1520. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  1521. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  1522. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  1523. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  1524. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  1525. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  1526. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  1527. package/packages/utils/src/lib/fs/rsyncCopy.js +98 -3
  1528. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  1529. package/packages/utils/src/lib/lightweightEntityExtractor.js +42 -0
  1530. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  1531. package/packages/utils/src/lib/safeFileName.js +32 -3
  1532. package/packages/utils/src/lib/safeFileName.js.map +1 -1
  1533. package/packages/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  1534. package/packages/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  1535. package/packages/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  1536. package/packages/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  1537. package/packages/utils/src/lib/startCommand/index.js +3 -0
  1538. package/packages/utils/src/lib/startCommand/index.js.map +1 -0
  1539. package/scripts/finalize-analyzer.cjs +8 -74
  1540. package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
  1541. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -149
  1542. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -235
  1543. package/analyzer-template/packages/ai/src/lib/generateEntityDataMap.ts +0 -375
  1544. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -227
  1545. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
  1546. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -101
  1547. package/analyzer-template/packages/github/dist/supabase/index.d.ts.map +0 -1
  1548. package/analyzer-template/packages/github/dist/supabase/index.js.map +0 -1
  1549. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.d.ts.map +0 -1
  1550. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js +0 -19
  1551. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  1552. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.d.ts.map +0 -1
  1553. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js +0 -26
  1554. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js.map +0 -1
  1555. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.d.ts.map +0 -1
  1556. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  1557. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.d.ts.map +0 -1
  1558. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js +0 -18
  1559. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js.map +0 -1
  1560. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.d.ts.map +0 -1
  1561. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js +0 -13
  1562. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js.map +0 -1
  1563. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.d.ts.map +0 -1
  1564. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js +0 -26
  1565. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js.map +0 -1
  1566. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.d.ts.map +0 -1
  1567. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  1568. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.d.ts.map +0 -1
  1569. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.js.map +0 -1
  1570. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.d.ts.map +0 -1
  1571. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.js.map +0 -1
  1572. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.d.ts.map +0 -1
  1573. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.js.map +0 -1
  1574. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.d.ts.map +0 -1
  1575. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  1576. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.d.ts.map +0 -1
  1577. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  1578. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.d.ts.map +0 -1
  1579. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.js.map +0 -1
  1580. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.d.ts.map +0 -1
  1581. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.js.map +0 -1
  1582. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.d.ts.map +0 -1
  1583. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  1584. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.d.ts.map +0 -1
  1585. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.js.map +0 -1
  1586. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.d.ts.map +0 -1
  1587. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  1588. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.d.ts.map +0 -1
  1589. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.js.map +0 -1
  1590. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.d.ts.map +0 -1
  1591. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.js.map +0 -1
  1592. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.d.ts.map +0 -1
  1593. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.js.map +0 -1
  1594. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.d.ts.map +0 -1
  1595. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  1596. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.d.ts.map +0 -1
  1597. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.js.map +0 -1
  1598. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.d.ts.map +0 -1
  1599. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.js.map +0 -1
  1600. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.d.ts.map +0 -1
  1601. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.js.map +0 -1
  1602. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.d.ts.map +0 -1
  1603. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.js.map +0 -1
  1604. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.d.ts.map +0 -1
  1605. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.js.map +0 -1
  1606. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.d.ts.map +0 -1
  1607. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.js.map +0 -1
  1608. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.d.ts.map +0 -1
  1609. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js +0 -14
  1610. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js.map +0 -1
  1611. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.d.ts.map +0 -1
  1612. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.js.map +0 -1
  1613. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.d.ts.map +0 -1
  1614. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  1615. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.d.ts.map +0 -1
  1616. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  1617. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts +0 -67
  1618. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts.map +0 -1
  1619. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js +0 -360
  1620. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js.map +0 -1
  1621. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.d.ts.map +0 -1
  1622. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  1623. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +0 -1
  1624. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  1625. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts +0 -87
  1626. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts.map +0 -1
  1627. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  1628. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.d.ts.map +0 -1
  1629. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  1630. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts +0 -105
  1631. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts.map +0 -1
  1632. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  1633. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +0 -1
  1634. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  1635. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +0 -1
  1636. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  1637. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.d.ts.map +0 -1
  1638. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  1639. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.d.ts.map +0 -1
  1640. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  1641. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts +0 -47
  1642. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts.map +0 -1
  1643. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  1644. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  1645. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts +0 -65
  1646. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts.map +0 -1
  1647. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  1648. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.d.ts.map +0 -1
  1649. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  1650. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.d.ts.map +0 -1
  1651. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  1652. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.d.ts.map +0 -1
  1653. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  1654. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +0 -1
  1655. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  1656. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.d.ts.map +0 -1
  1657. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  1658. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.d.ts.map +0 -1
  1659. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  1660. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +0 -1
  1661. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  1662. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts +0 -65
  1663. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts.map +0 -1
  1664. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  1665. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.d.ts.map +0 -1
  1666. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  1667. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.d.ts.map +0 -1
  1668. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  1669. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.d.ts.map +0 -1
  1670. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  1671. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.d.ts.map +0 -1
  1672. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  1673. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.d.ts.map +0 -1
  1674. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  1675. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.d.ts.map +0 -1
  1676. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  1677. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts +0 -14
  1678. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts.map +0 -1
  1679. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js +0 -131
  1680. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js.map +0 -1
  1681. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.d.ts.map +0 -1
  1682. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js +0 -130
  1683. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js.map +0 -1
  1684. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.d.ts.map +0 -1
  1685. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  1686. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.d.ts.map +0 -1
  1687. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  1688. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.d.ts.map +0 -1
  1689. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js +0 -90
  1690. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js.map +0 -1
  1691. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.d.ts.map +0 -1
  1692. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.js.map +0 -1
  1693. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.d.ts.map +0 -1
  1694. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js +0 -111
  1695. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js.map +0 -1
  1696. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.d.ts.map +0 -1
  1697. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.js.map +0 -1
  1698. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.d.ts.map +0 -1
  1699. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  1700. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts +0 -13
  1701. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts.map +0 -1
  1702. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js +0 -188
  1703. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js.map +0 -1
  1704. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts +0 -11
  1705. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts.map +0 -1
  1706. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js +0 -63
  1707. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js.map +0 -1
  1708. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.d.ts.map +0 -1
  1709. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.js.map +0 -1
  1710. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.d.ts.map +0 -1
  1711. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js +0 -114
  1712. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js.map +0 -1
  1713. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.d.ts.map +0 -1
  1714. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.js.map +0 -1
  1715. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.d.ts.map +0 -1
  1716. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.js.map +0 -1
  1717. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +0 -1
  1718. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  1719. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.d.ts.map +0 -1
  1720. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.js.map +0 -1
  1721. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +0 -1
  1722. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  1723. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  1724. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.d.ts.map +0 -1
  1725. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.js.map +0 -1
  1726. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts +0 -3
  1727. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts.map +0 -1
  1728. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.js.map +0 -1
  1729. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.d.ts.map +0 -1
  1730. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.js.map +0 -1
  1731. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.d.ts.map +0 -1
  1732. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js +0 -18
  1733. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js.map +0 -1
  1734. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.d.ts.map +0 -1
  1735. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  1736. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.d.ts.map +0 -1
  1737. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.js.map +0 -1
  1738. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.d.ts.map +0 -1
  1739. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js +0 -33
  1740. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js.map +0 -1
  1741. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.d.ts.map +0 -1
  1742. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.js.map +0 -1
  1743. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.d.ts.map +0 -1
  1744. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js +0 -18
  1745. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js.map +0 -1
  1746. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts +0 -4
  1747. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts.map +0 -1
  1748. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.js.map +0 -1
  1749. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.d.ts.map +0 -1
  1750. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  1751. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts +0 -13
  1752. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts.map +0 -1
  1753. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js +0 -100
  1754. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  1755. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.d.ts.map +0 -1
  1756. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.js.map +0 -1
  1757. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.d.ts.map +0 -1
  1758. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  1759. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.d.ts.map +0 -1
  1760. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  1761. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +0 -1
  1762. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  1763. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.d.ts.map +0 -1
  1764. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  1765. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.d.ts.map +0 -1
  1766. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.js.map +0 -1
  1767. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.d.ts.map +0 -1
  1768. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  1769. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.d.ts.map +0 -1
  1770. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  1771. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.d.ts.map +0 -1
  1772. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  1773. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.d.ts.map +0 -1
  1774. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.js.map +0 -1
  1775. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.d.ts.map +0 -1
  1776. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  1777. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.d.ts.map +0 -1
  1778. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.js.map +0 -1
  1779. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.d.ts.map +0 -1
  1780. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.js.map +0 -1
  1781. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.d.ts.map +0 -1
  1782. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  1783. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.d.ts.map +0 -1
  1784. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.js.map +0 -1
  1785. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.d.ts.map +0 -1
  1786. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.js.map +0 -1
  1787. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.d.ts.map +0 -1
  1788. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.js.map +0 -1
  1789. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.d.ts.map +0 -1
  1790. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.js.map +0 -1
  1791. package/analyzer-template/packages/supabase/client.ts +0 -35
  1792. package/analyzer-template/packages/supabase/package.json +0 -31
  1793. package/analyzer-template/packages/supabase/src/lib/analysisBranchToDb.ts +0 -28
  1794. package/analyzer-template/packages/supabase/src/lib/analysisToDb.ts +0 -59
  1795. package/analyzer-template/packages/supabase/src/lib/branchToDb.ts +0 -24
  1796. package/analyzer-template/packages/supabase/src/lib/commitBranchToDb.ts +0 -20
  1797. package/analyzer-template/packages/supabase/src/lib/commitToDb.ts +0 -47
  1798. package/analyzer-template/packages/supabase/src/lib/fileToDb.ts +0 -17
  1799. package/analyzer-template/packages/supabase/src/lib/kysely/db.ts +0 -476
  1800. package/analyzer-template/packages/supabase/src/lib/kysely/tableRelations.ts +0 -105
  1801. package/analyzer-template/packages/supabase/src/lib/kysely/tables/commitsTable.ts +0 -61
  1802. package/analyzer-template/packages/supabase/src/lib/loadAnalyses.ts +0 -218
  1803. package/analyzer-template/packages/supabase/src/lib/loadAnalysis.ts +0 -210
  1804. package/analyzer-template/packages/supabase/src/lib/loadBranch.ts +0 -122
  1805. package/analyzer-template/packages/supabase/src/lib/loadCommit.ts +0 -163
  1806. package/analyzer-template/packages/supabase/src/lib/loadCommits.ts +0 -251
  1807. package/analyzer-template/packages/supabase/src/lib/loadEntities.ts +0 -94
  1808. package/analyzer-template/packages/supabase/src/lib/loadEntity.ts +0 -110
  1809. package/analyzer-template/packages/supabase/src/lib/loadEntityBranches.ts +0 -166
  1810. package/analyzer-template/packages/supabase/src/lib/loadFile.ts +0 -47
  1811. package/analyzer-template/packages/supabase/src/lib/loadFiles.ts +0 -137
  1812. package/analyzer-template/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.ts +0 -76
  1813. package/analyzer-template/packages/supabase/src/lib/loadStatement.ts +0 -23
  1814. package/analyzer-template/packages/supabase/src/lib/projectToDb.ts +0 -35
  1815. package/analyzer-template/packages/supabase/src/lib/saveEntityStatements.ts +0 -28
  1816. package/analyzer-template/packages/supabase/src/lib/saveFiles.ts +0 -43
  1817. package/analyzer-template/packages/supabase/src/lib/scenarioToDb.ts +0 -34
  1818. package/analyzer-template/packages/supabase/src/lib/updateCommitMetadata.ts +0 -188
  1819. package/analyzer-template/packages/supabase/src/lib/updateProjectMetadata.ts +0 -96
  1820. package/analyzer-template/packages/supabase/src/lib/userScenarioToDb.ts +0 -18
  1821. package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
  1822. package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
  1823. package/analyzer-template/process/README.md +0 -507
  1824. package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
  1825. package/background/src/lib/process/ProcessManager.js +0 -244
  1826. package/background/src/lib/process/ProcessManager.js.map +0 -1
  1827. package/background/src/lib/process/index.js.map +0 -1
  1828. package/background/src/lib/process/managedExecAsync.js.map +0 -1
  1829. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
  1830. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
  1831. package/codeyam-cli/src/commands/detect-universal-mocks.js +0 -118
  1832. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +0 -1
  1833. package/codeyam-cli/src/commands/list.js +0 -31
  1834. package/codeyam-cli/src/commands/list.js.map +0 -1
  1835. package/codeyam-cli/src/utils/universal-mocks.js +0 -152
  1836. package/codeyam-cli/src/utils/universal-mocks.js.map +0 -1
  1837. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-rqv54FUY.js +0 -1
  1838. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-B0oiPem-.js +0 -26
  1839. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DqXXjAJ7.js +0 -3
  1840. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-BKKG1s2B.js +0 -3
  1841. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DU_jxCPD.js +0 -1
  1842. package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-5DY-YIxu.js +0 -6
  1843. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-DmjXUj6m.js +0 -5
  1844. package/codeyam-cli/src/webserver/build/client/assets/_index-DvSrcxsk.js +0 -1
  1845. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-CsaMd9mb.js +0 -10
  1846. package/codeyam-cli/src/webserver/build/client/assets/chart-column-VXBS6qOn.js +0 -1
  1847. package/codeyam-cli/src/webserver/build/client/assets/circle-alert-n5GUC2AS.js +0 -1
  1848. package/codeyam-cli/src/webserver/build/client/assets/clock-DKqtX8js.js +0 -1
  1849. package/codeyam-cli/src/webserver/build/client/assets/components-Dj-Ggnl2.js +0 -40
  1850. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-C1gnJVOL.svg +0 -4
  1851. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BbR3FwNc.js +0 -1
  1852. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-BHiWkb_W.js +0 -11
  1853. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-L7M9Vr5z.js +0 -1
  1854. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-C9w-q7P3.js +0 -5
  1855. package/codeyam-cli/src/webserver/build/client/assets/entityVersioning-Bk_YB1jM.js +0 -1
  1856. package/codeyam-cli/src/webserver/build/client/assets/entry.client-CdGoUs8A.js +0 -1
  1857. package/codeyam-cli/src/webserver/build/client/assets/file-text-B6Er7j5k.js +0 -1
  1858. package/codeyam-cli/src/webserver/build/client/assets/files-KcDVw1FY.js +0 -1
  1859. package/codeyam-cli/src/webserver/build/client/assets/git-B9uZ8eSJ.js +0 -12
  1860. package/codeyam-cli/src/webserver/build/client/assets/globals-B0f88RTV.css +0 -1
  1861. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-v3c6DFp4.js +0 -1
  1862. package/codeyam-cli/src/webserver/build/client/assets/manifest-fca08d7e.js +0 -1
  1863. package/codeyam-cli/src/webserver/build/client/assets/root-Cf8VBqIb.js +0 -16
  1864. package/codeyam-cli/src/webserver/build/client/assets/search-DA14wXpu.js +0 -1
  1865. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  1866. package/codeyam-cli/src/webserver/build/client/assets/settings-COJUrwGu.js +0 -1
  1867. package/codeyam-cli/src/webserver/build/client/assets/settings-NU_ZquhK.js +0 -1
  1868. package/codeyam-cli/src/webserver/build/client/assets/simulations-CNaMJ-nR.js +0 -1
  1869. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-Lumm1t01.js +0 -2
  1870. package/codeyam-cli/src/webserver/build/client/assets/useToast-BRShB17p.js +0 -1
  1871. package/codeyam-cli/src/webserver/build/client/assets/zap-BvukH0eN.js +0 -1
  1872. package/codeyam-cli/src/webserver/build/client/cy-logo-cli.svg +0 -13
  1873. package/codeyam-cli/src/webserver/build/client/favicon.svg +0 -13
  1874. package/codeyam-cli/src/webserver/build/server/assets/index-DHr4rT4u.js +0 -1
  1875. package/codeyam-cli/src/webserver/build/server/assets/server-build-Bi1mj14J.js +0 -166
  1876. package/codeyam-cli/src/webserver/public/cy-logo-cli.svg +0 -13
  1877. package/codeyam-cli/src/webserver/public/favicon.svg +0 -13
  1878. package/codeyam-cli/templates/codeyam-debug-skill.md +0 -557
  1879. package/codeyam-cli/templates/codeyam-setup-skill.md +0 -468
  1880. package/codeyam-cli/templates/codeyam-sim-skill.md +0 -222
  1881. package/codeyam-cli/templates/codeyam-stop-hook.sh +0 -284
  1882. package/codeyam-cli/templates/codeyam-test-skill.md +0 -178
  1883. package/codeyam-cli/templates/codeyam-verify-skill.md +0 -179
  1884. package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
  1885. package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
  1886. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -112
  1887. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
  1888. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -190
  1889. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
  1890. package/packages/ai/src/lib/generateEntityDataMap.js +0 -335
  1891. package/packages/ai/src/lib/generateEntityDataMap.js.map +0 -1
  1892. package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -182
  1893. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
  1894. package/packages/ai/src/lib/isFrontend.js +0 -5
  1895. package/packages/ai/src/lib/isFrontend.js.map +0 -1
  1896. package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js +0 -17
  1897. package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js.map +0 -1
  1898. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
  1899. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
  1900. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -59
  1901. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
  1902. package/packages/supabase/index.js.map +0 -1
  1903. package/packages/supabase/src/lib/analysisBranchToDb.js +0 -19
  1904. package/packages/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  1905. package/packages/supabase/src/lib/analysisToDb.js +0 -26
  1906. package/packages/supabase/src/lib/analysisToDb.js.map +0 -1
  1907. package/packages/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  1908. package/packages/supabase/src/lib/branchToDb.js +0 -18
  1909. package/packages/supabase/src/lib/branchToDb.js.map +0 -1
  1910. package/packages/supabase/src/lib/commitBranchToDb.js +0 -13
  1911. package/packages/supabase/src/lib/commitBranchToDb.js.map +0 -1
  1912. package/packages/supabase/src/lib/commitToDb.js +0 -26
  1913. package/packages/supabase/src/lib/commitToDb.js.map +0 -1
  1914. package/packages/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  1915. package/packages/supabase/src/lib/createProject.js.map +0 -1
  1916. package/packages/supabase/src/lib/createRetryFetch.js.map +0 -1
  1917. package/packages/supabase/src/lib/dbToAnalysis.js.map +0 -1
  1918. package/packages/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  1919. package/packages/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  1920. package/packages/supabase/src/lib/dbToBranch.js.map +0 -1
  1921. package/packages/supabase/src/lib/dbToCommit.js.map +0 -1
  1922. package/packages/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  1923. package/packages/supabase/src/lib/dbToEntity.js.map +0 -1
  1924. package/packages/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  1925. package/packages/supabase/src/lib/dbToFile.js.map +0 -1
  1926. package/packages/supabase/src/lib/dbToProject.js.map +0 -1
  1927. package/packages/supabase/src/lib/dbToScenario.js.map +0 -1
  1928. package/packages/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  1929. package/packages/supabase/src/lib/dbToUserScenario.js.map +0 -1
  1930. package/packages/supabase/src/lib/deleteBranch.js.map +0 -1
  1931. package/packages/supabase/src/lib/deleteEntities.js.map +0 -1
  1932. package/packages/supabase/src/lib/deleteFile.js.map +0 -1
  1933. package/packages/supabase/src/lib/deleteScenarios.js.map +0 -1
  1934. package/packages/supabase/src/lib/entityToDb.js.map +0 -1
  1935. package/packages/supabase/src/lib/fileToDb.js +0 -14
  1936. package/packages/supabase/src/lib/fileToDb.js.map +0 -1
  1937. package/packages/supabase/src/lib/generateSha.js.map +0 -1
  1938. package/packages/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  1939. package/packages/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  1940. package/packages/supabase/src/lib/kysely/db.js +0 -360
  1941. package/packages/supabase/src/lib/kysely/db.js.map +0 -1
  1942. package/packages/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  1943. package/packages/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  1944. package/packages/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  1945. package/packages/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  1946. package/packages/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  1947. package/packages/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  1948. package/packages/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  1949. package/packages/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  1950. package/packages/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  1951. package/packages/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  1952. package/packages/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  1953. package/packages/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  1954. package/packages/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  1955. package/packages/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  1956. package/packages/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  1957. package/packages/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  1958. package/packages/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  1959. package/packages/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  1960. package/packages/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  1961. package/packages/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  1962. package/packages/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  1963. package/packages/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  1964. package/packages/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  1965. package/packages/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  1966. package/packages/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  1967. package/packages/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  1968. package/packages/supabase/src/lib/loadAnalyses.js +0 -131
  1969. package/packages/supabase/src/lib/loadAnalyses.js.map +0 -1
  1970. package/packages/supabase/src/lib/loadAnalysis.js +0 -130
  1971. package/packages/supabase/src/lib/loadAnalysis.js.map +0 -1
  1972. package/packages/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  1973. package/packages/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  1974. package/packages/supabase/src/lib/loadBranch.js +0 -90
  1975. package/packages/supabase/src/lib/loadBranch.js.map +0 -1
  1976. package/packages/supabase/src/lib/loadBranches.js.map +0 -1
  1977. package/packages/supabase/src/lib/loadCommit.js +0 -111
  1978. package/packages/supabase/src/lib/loadCommit.js.map +0 -1
  1979. package/packages/supabase/src/lib/loadCommitBranches.js.map +0 -1
  1980. package/packages/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  1981. package/packages/supabase/src/lib/loadCommits.js +0 -188
  1982. package/packages/supabase/src/lib/loadCommits.js.map +0 -1
  1983. package/packages/supabase/src/lib/loadEntities.js +0 -63
  1984. package/packages/supabase/src/lib/loadEntities.js.map +0 -1
  1985. package/packages/supabase/src/lib/loadEntity.js.map +0 -1
  1986. package/packages/supabase/src/lib/loadEntityBranches.js +0 -114
  1987. package/packages/supabase/src/lib/loadEntityBranches.js.map +0 -1
  1988. package/packages/supabase/src/lib/loadFile.js.map +0 -1
  1989. package/packages/supabase/src/lib/loadFiles.js.map +0 -1
  1990. package/packages/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  1991. package/packages/supabase/src/lib/loadProject.js.map +0 -1
  1992. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  1993. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  1994. package/packages/supabase/src/lib/loadScenario.js.map +0 -1
  1995. package/packages/supabase/src/lib/loadStatement.js.map +0 -1
  1996. package/packages/supabase/src/lib/nullsToUndefines.js.map +0 -1
  1997. package/packages/supabase/src/lib/projectToDb.js +0 -18
  1998. package/packages/supabase/src/lib/projectToDb.js.map +0 -1
  1999. package/packages/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  2000. package/packages/supabase/src/lib/saveEntityStatements.js.map +0 -1
  2001. package/packages/supabase/src/lib/saveFiles.js +0 -33
  2002. package/packages/supabase/src/lib/saveFiles.js.map +0 -1
  2003. package/packages/supabase/src/lib/saveStatement.js.map +0 -1
  2004. package/packages/supabase/src/lib/scenarioToDb.js +0 -18
  2005. package/packages/supabase/src/lib/scenarioToDb.js.map +0 -1
  2006. package/packages/supabase/src/lib/supabase.js.map +0 -1
  2007. package/packages/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  2008. package/packages/supabase/src/lib/updateCommitMetadata.js +0 -100
  2009. package/packages/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  2010. package/packages/supabase/src/lib/updateEntityBranch.js.map +0 -1
  2011. package/packages/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  2012. package/packages/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  2013. package/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  2014. package/packages/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  2015. package/packages/supabase/src/lib/upsertAnalyses.js.map +0 -1
  2016. package/packages/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  2017. package/packages/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  2018. package/packages/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  2019. package/packages/supabase/src/lib/upsertBranches.js.map +0 -1
  2020. package/packages/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  2021. package/packages/supabase/src/lib/upsertCommits.js.map +0 -1
  2022. package/packages/supabase/src/lib/upsertEntities.js.map +0 -1
  2023. package/packages/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  2024. package/packages/supabase/src/lib/upsertFiles.js.map +0 -1
  2025. package/packages/supabase/src/lib/upsertGithubUser.js.map +0 -1
  2026. package/packages/supabase/src/lib/upsertProjects.js.map +0 -1
  2027. package/packages/supabase/src/lib/upsertScenarios.js.map +0 -1
  2028. /package/analyzer-template/packages/{supabase → database}/__mocks__/index.ts +0 -0
  2029. /package/analyzer-template/packages/{supabase → database}/index.ts +0 -0
  2030. /package/analyzer-template/packages/{supabase → database}/src/lib/backgroundJobToDb.ts +0 -0
  2031. /package/analyzer-template/packages/{supabase → database}/src/lib/client/listenForCommits_Client.ts +0 -0
  2032. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysesInClient.ts +0 -0
  2033. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysis_Client.ts +0 -0
  2034. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadBranches_Client.ts +0 -0
  2035. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadCommit_Client.ts +0 -0
  2036. /package/analyzer-template/packages/{supabase → database}/src/lib/client/upsertFiles_Client.ts +0 -0
  2037. /package/analyzer-template/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.ts +0 -0
  2038. /package/analyzer-template/packages/{supabase → database}/src/lib/createProject.ts +0 -0
  2039. /package/analyzer-template/packages/{supabase → database}/src/lib/createRetryFetch.ts +0 -0
  2040. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysis.ts +0 -0
  2041. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysisBranch.ts +0 -0
  2042. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBackgroundJob.ts +0 -0
  2043. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBranch.ts +0 -0
  2044. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommit.ts +0 -0
  2045. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommitBranch.ts +0 -0
  2046. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntity.ts +0 -0
  2047. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntityBranch.ts +0 -0
  2048. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToFile.ts +0 -0
  2049. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToProject.ts +0 -0
  2050. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenario.ts +0 -0
  2051. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenarioComment.ts +0 -0
  2052. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToUserScenario.ts +0 -0
  2053. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteBranch.ts +0 -0
  2054. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteEntities.ts +0 -0
  2055. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteFile.ts +0 -0
  2056. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteScenarios.ts +0 -0
  2057. /package/analyzer-template/packages/{supabase → database}/src/lib/entityToDb.ts +0 -0
  2058. /package/analyzer-template/packages/{supabase → database}/src/lib/generateSha.ts +0 -0
  2059. /package/analyzer-template/packages/{supabase → database}/src/lib/jsonUpdateUtils.ts +0 -0
  2060. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.ts +0 -0
  2061. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/schemaHelpers.ts +0 -0
  2062. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.ts +0 -0
  2063. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.ts +0 -0
  2064. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.ts +0 -0
  2065. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.ts +0 -0
  2066. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.ts +0 -0
  2067. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.ts +0 -0
  2068. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.ts +0 -0
  2069. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.ts +0 -0
  2070. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.ts +0 -0
  2071. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.ts +0 -0
  2072. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/filesTable.ts +0 -0
  2073. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.ts +0 -0
  2074. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.ts +0 -0
  2075. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.ts +0 -0
  2076. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.ts +0 -0
  2077. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.ts +0 -0
  2078. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.ts +0 -0
  2079. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.ts +0 -0
  2080. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.ts +0 -0
  2081. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.ts +0 -0
  2082. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/usersTable.ts +0 -0
  2083. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/upsertHelpers.ts +0 -0
  2084. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely.ts +0 -0
  2085. /package/analyzer-template/packages/{supabase → database}/src/lib/loadAnalysisBranches.ts +0 -0
  2086. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBackgroundJob.ts +0 -0
  2087. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBranches.ts +0 -0
  2088. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitBranches.ts +0 -0
  2089. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitMetadata.ts +0 -0
  2090. /package/analyzer-template/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.ts +0 -0
  2091. /package/analyzer-template/packages/{supabase → database}/src/lib/loadProject.ts +0 -0
  2092. /package/analyzer-template/packages/{supabase → database}/src/lib/loadScenario.ts +0 -0
  2093. /package/analyzer-template/packages/{supabase → database}/src/lib/nullsToUndefines.ts +0 -0
  2094. /package/analyzer-template/packages/{supabase → database}/src/lib/saveBackgroundEvent.ts +0 -0
  2095. /package/analyzer-template/packages/{supabase → database}/src/lib/saveStatement.ts +0 -0
  2096. /package/analyzer-template/packages/{supabase → database}/src/lib/scenarioCommentToDb.ts +0 -0
  2097. /package/analyzer-template/packages/{supabase → database}/src/lib/supabase.ts +0 -0
  2098. /package/analyzer-template/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.ts +0 -0
  2099. /package/analyzer-template/packages/{supabase → database}/src/lib/updateEntityBranch.ts +0 -0
  2100. /package/analyzer-template/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.ts +0 -0
  2101. /package/analyzer-template/packages/{supabase → database}/src/lib/updateFreshAnalysisStatus.ts +0 -0
  2102. /package/analyzer-template/packages/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.ts +0 -0
  2103. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalyses.ts +0 -0
  2104. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.ts +0 -0
  2105. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysisBranches.ts +0 -0
  2106. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBackgroundJob.ts +0 -0
  2107. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBranches.ts +0 -0
  2108. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommitBranches.ts +0 -0
  2109. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommits.ts +0 -0
  2110. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntities.ts +0 -0
  2111. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntityBranches.ts +0 -0
  2112. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertFiles.ts +0 -0
  2113. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertGithubUser.ts +0 -0
  2114. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertProjects.ts +0 -0
  2115. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertScenarios.ts +0 -0
  2116. /package/analyzer-template/packages/{supabase → database}/tsconfig.json +0 -0
  2117. /package/analyzer-template/packages/github/dist/{supabase → database}/index.d.ts +0 -0
  2118. /package/analyzer-template/packages/github/dist/{supabase → database}/index.js +0 -0
  2119. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisBranchToDb.d.ts +0 -0
  2120. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisToDb.d.ts +0 -0
  2121. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.d.ts +0 -0
  2122. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2123. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/branchToDb.d.ts +0 -0
  2124. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitBranchToDb.d.ts +0 -0
  2125. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitToDb.d.ts +0 -0
  2126. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.d.ts +0 -0
  2127. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2128. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.d.ts +0 -0
  2129. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.js +0 -0
  2130. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.d.ts +0 -0
  2131. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2132. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.d.ts +0 -0
  2133. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2134. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.d.ts +0 -0
  2135. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2136. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.d.ts +0 -0
  2137. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2138. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.d.ts +0 -0
  2139. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2140. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.d.ts +0 -0
  2141. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2142. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.d.ts +0 -0
  2143. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2144. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.d.ts +0 -0
  2145. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2146. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.d.ts +0 -0
  2147. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2148. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.d.ts +0 -0
  2149. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.js +0 -0
  2150. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.d.ts +0 -0
  2151. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.js +0 -0
  2152. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.d.ts +0 -0
  2153. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2154. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.d.ts +0 -0
  2155. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2156. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.d.ts +0 -0
  2157. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2158. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.d.ts +0 -0
  2159. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2160. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.d.ts +0 -0
  2161. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2162. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.d.ts +0 -0
  2163. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.js +0 -0
  2164. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.d.ts +0 -0
  2165. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2166. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.d.ts +0 -0
  2167. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.js +0 -0
  2168. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/fileToDb.d.ts +0 -0
  2169. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.d.ts +0 -0
  2170. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.js +0 -0
  2171. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.d.ts +0 -0
  2172. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2173. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.d.ts +0 -0
  2174. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2175. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.d.ts +0 -0
  2176. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2177. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.d.ts +0 -0
  2178. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2179. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2180. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.d.ts +0 -0
  2181. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2182. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2183. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.d.ts +0 -0
  2184. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2185. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.d.ts +0 -0
  2186. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2187. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.d.ts +0 -0
  2188. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2189. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.d.ts +0 -0
  2190. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2191. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2192. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.d.ts +0 -0
  2193. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2194. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.d.ts +0 -0
  2195. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2196. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.d.ts +0 -0
  2197. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2198. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.d.ts +0 -0
  2199. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2200. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.d.ts +0 -0
  2201. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2202. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.d.ts +0 -0
  2203. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2204. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.d.ts +0 -0
  2205. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2206. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2207. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.d.ts +0 -0
  2208. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2209. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.d.ts +0 -0
  2210. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2211. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.d.ts +0 -0
  2212. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2213. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.d.ts +0 -0
  2214. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2215. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.d.ts +0 -0
  2216. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2217. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.d.ts +0 -0
  2218. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2219. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysis.d.ts +0 -0
  2220. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.d.ts +0 -0
  2221. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2222. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.d.ts +0 -0
  2223. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2224. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranch.d.ts +0 -0
  2225. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.d.ts +0 -0
  2226. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.js +0 -0
  2227. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommit.d.ts +0 -0
  2228. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.d.ts +0 -0
  2229. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2230. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.d.ts +0 -0
  2231. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2232. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.d.ts +0 -0
  2233. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.js +0 -0
  2234. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntityBranches.d.ts +0 -0
  2235. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.d.ts +0 -0
  2236. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.js +0 -0
  2237. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.d.ts +0 -0
  2238. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.js +0 -0
  2239. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.d.ts +0 -0
  2240. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2241. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.d.ts +0 -0
  2242. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.js +0 -0
  2243. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadReadyToBeCapturedAnalyses.d.ts +0 -0
  2244. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.d.ts +0 -0
  2245. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.js +0 -0
  2246. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadStatement.js +0 -0
  2247. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.d.ts +0 -0
  2248. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2249. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/projectToDb.d.ts +0 -0
  2250. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.d.ts +0 -0
  2251. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2252. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.d.ts +0 -0
  2253. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2254. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveFiles.d.ts +0 -0
  2255. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.d.ts +0 -0
  2256. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.js +0 -0
  2257. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/scenarioToDb.d.ts +0 -0
  2258. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/supabase.js +0 -0
  2259. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.d.ts +0 -0
  2260. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2261. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.d.ts +0 -0
  2262. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2263. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.d.ts +0 -0
  2264. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2265. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatus.d.ts +0 -0
  2266. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatus.js +0 -0
  2267. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts +0 -0
  2268. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -0
  2269. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.d.ts +0 -0
  2270. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2271. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.d.ts +0 -0
  2272. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2273. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.d.ts +0 -0
  2274. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2275. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.d.ts +0 -0
  2276. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2277. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.d.ts +0 -0
  2278. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2279. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.d.ts +0 -0
  2280. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2281. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.d.ts +0 -0
  2282. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2283. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.d.ts +0 -0
  2284. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2285. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.d.ts +0 -0
  2286. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2287. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.d.ts +0 -0
  2288. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2289. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.d.ts +0 -0
  2290. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2291. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.d.ts +0 -0
  2292. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2293. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.d.ts +0 -0
  2294. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2295. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.d.ts +0 -0
  2296. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2297. /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
  2298. /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
  2299. /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
  2300. /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
  2301. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
  2302. /package/packages/{supabase → database}/index.js +0 -0
  2303. /package/packages/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2304. /package/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2305. /package/packages/{supabase → database}/src/lib/createProject.js +0 -0
  2306. /package/packages/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2307. /package/packages/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2308. /package/packages/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2309. /package/packages/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2310. /package/packages/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2311. /package/packages/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2312. /package/packages/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2313. /package/packages/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2314. /package/packages/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2315. /package/packages/{supabase → database}/src/lib/dbToFile.js +0 -0
  2316. /package/packages/{supabase → database}/src/lib/dbToProject.js +0 -0
  2317. /package/packages/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2318. /package/packages/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2319. /package/packages/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2320. /package/packages/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2321. /package/packages/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2322. /package/packages/{supabase → database}/src/lib/deleteFile.js +0 -0
  2323. /package/packages/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2324. /package/packages/{supabase → database}/src/lib/entityToDb.js +0 -0
  2325. /package/packages/{supabase → database}/src/lib/generateSha.js +0 -0
  2326. /package/packages/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2327. /package/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2328. /package/packages/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2329. /package/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2330. /package/packages/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2331. /package/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2332. /package/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2333. /package/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2334. /package/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2335. /package/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2336. /package/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2337. /package/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2338. /package/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2339. /package/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2340. /package/packages/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2341. /package/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2342. /package/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2343. /package/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2344. /package/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2345. /package/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2346. /package/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2347. /package/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2348. /package/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2349. /package/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2350. /package/packages/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2351. /package/packages/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2352. /package/packages/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2353. /package/packages/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2354. /package/packages/{supabase → database}/src/lib/loadBranches.js +0 -0
  2355. /package/packages/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2356. /package/packages/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2357. /package/packages/{supabase → database}/src/lib/loadEntity.js +0 -0
  2358. /package/packages/{supabase → database}/src/lib/loadFile.js +0 -0
  2359. /package/packages/{supabase → database}/src/lib/loadFiles.js +0 -0
  2360. /package/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2361. /package/packages/{supabase → database}/src/lib/loadProject.js +0 -0
  2362. /package/packages/{supabase → database}/src/lib/loadScenario.js +0 -0
  2363. /package/packages/{supabase → database}/src/lib/loadStatement.js +0 -0
  2364. /package/packages/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2365. /package/packages/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2366. /package/packages/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2367. /package/packages/{supabase → database}/src/lib/saveStatement.js +0 -0
  2368. /package/packages/{supabase → database}/src/lib/supabase.js +0 -0
  2369. /package/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2370. /package/packages/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2371. /package/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2372. /package/packages/{supabase → database}/src/lib/updateFreshAnalysisStatus.js +0 -0
  2373. /package/packages/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -0
  2374. /package/packages/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2375. /package/packages/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2376. /package/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2377. /package/packages/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2378. /package/packages/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2379. /package/packages/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2380. /package/packages/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2381. /package/packages/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2382. /package/packages/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2383. /package/packages/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2384. /package/packages/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2385. /package/packages/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2386. /package/packages/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2387. /package/packages/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2388. /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
  2389. /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
  2390. /package/{background/src/lib/process → packages/process/src}/managedExecAsync.js +0 -0
@@ -1,9 +1,15 @@
1
1
  import ts from 'typescript';
2
- import { AnalysisContext, ConditionalUsage } from './types';
2
+ import * as crypto from 'crypto';
3
+ import {
4
+ AnalysisContext,
5
+ CompoundConditional,
6
+ ConditionalUsage,
7
+ } from './types';
3
8
  import { StructuredPath } from './paths';
4
9
  import { nodeToSource } from './nodeToSource';
5
- import { methodRegistry } from './methodSemantics';
10
+ import { methodRegistry, ArrayPushSemantics } from './methodSemantics';
6
11
  import {
12
+ getComparisonOperatorString,
7
13
  isArithmeticOperator,
8
14
  isAssignmentOperator,
9
15
  isBitwiseCompoundOperator,
@@ -14,6 +20,450 @@ import {
14
20
  unwrapExpression,
15
21
  } from './sharedPatterns';
16
22
  import { processBindingPattern } from './processBindings';
23
+ import {
24
+ extractConditionalEffectsFromTernary,
25
+ findUseStateSetters,
26
+ } from './conditionalEffectsExtractor';
27
+ import { detectArrayDerivedPattern } from './arrayDerivationDetector';
28
+
29
+ /**
30
+ * Recursively extracts root variable names from an expression AST node.
31
+ * Used to identify which variables flow into JSX expression children,
32
+ * so we can link them to the return value schema.
33
+ *
34
+ * Examples:
35
+ * - `filteredTopPaths.map(...)` → ['filteredTopPaths']
36
+ * - `a && b` → ['a', 'b']
37
+ * - `condition ? x : y` → ['condition', 'x', 'y']
38
+ */
39
+ function extractRootVariableNames(node: ts.Expression): string[] {
40
+ const ignoredIdentifiers = new Set([
41
+ 'undefined',
42
+ 'null',
43
+ 'true',
44
+ 'false',
45
+ 'NaN',
46
+ 'Infinity',
47
+ ]);
48
+
49
+ if (ts.isIdentifier(node)) {
50
+ const name = node.text;
51
+ return ignoredIdentifiers.has(name) ? [] : [name];
52
+ }
53
+
54
+ if (ts.isPropertyAccessExpression(node)) {
55
+ return extractRootVariableNames(node.expression);
56
+ }
57
+
58
+ if (ts.isCallExpression(node)) {
59
+ return extractRootVariableNames(node.expression);
60
+ }
61
+
62
+ if (ts.isBinaryExpression(node)) {
63
+ return [
64
+ ...extractRootVariableNames(node.left),
65
+ ...extractRootVariableNames(node.right),
66
+ ];
67
+ }
68
+
69
+ if (ts.isPrefixUnaryExpression(node)) {
70
+ return extractRootVariableNames(node.operand);
71
+ }
72
+
73
+ if (ts.isConditionalExpression(node)) {
74
+ return [
75
+ ...extractRootVariableNames(node.condition),
76
+ ...extractRootVariableNames(node.whenTrue),
77
+ ...extractRootVariableNames(node.whenFalse),
78
+ ];
79
+ }
80
+
81
+ if (ts.isParenthesizedExpression(node)) {
82
+ return extractRootVariableNames(node.expression);
83
+ }
84
+
85
+ // Stop recursion at JSX elements and other terminal nodes
86
+ if (
87
+ ts.isJsxElement(node) ||
88
+ ts.isJsxFragment(node) ||
89
+ ts.isJsxSelfClosingElement(node)
90
+ ) {
91
+ return [];
92
+ }
93
+
94
+ return [];
95
+ }
96
+
97
+ /**
98
+ * Checks if a JSX element has props that reference variables from the parent scope.
99
+ * This is used to detect unconditionally-rendered children that should have their
100
+ * execution flows merged into the parent.
101
+ *
102
+ * We want to track children where the parent controls data that affects the child's
103
+ * conditional rendering. Static props (like title="Dashboard") don't need tracking
104
+ * because they don't create variable execution flows.
105
+ *
106
+ * Examples:
107
+ * - <WorkoutsView workouts={workouts} /> → true (workouts is a variable)
108
+ * - <ItemList items={items} count={count} /> → true (items, count are variables)
109
+ * - <Header title="Dashboard" /> → false (static string)
110
+ * - <Footer /> → false (no props)
111
+ * - <Button onClick={handleClick} /> → false (only callback, no data props)
112
+ *
113
+ * @returns true if the component has at least one prop that references a variable
114
+ * (excluding callbacks which typically start with 'on' or 'handle')
115
+ */
116
+ function hasDataPropsFromParent(
117
+ node: ts.JsxElement | ts.JsxSelfClosingElement,
118
+ componentName: string,
119
+ ): { hasDataProps: boolean; dataProps: string[] } {
120
+ const attributes = ts.isJsxElement(node)
121
+ ? node.openingElement.attributes.properties
122
+ : node.attributes.properties;
123
+
124
+ const dataProps: string[] = [];
125
+
126
+ for (const attr of attributes) {
127
+ // Spread attributes always reference parent data: {...props}
128
+ if (ts.isJsxSpreadAttribute(attr)) {
129
+ const spreadText = attr.expression?.getText() || '...spread';
130
+ dataProps.push(`{...${spreadText}}`);
131
+ console.log(
132
+ `[UnconditionalChild] ${componentName}: Found spread attribute {${spreadText}}`,
133
+ );
134
+ continue;
135
+ }
136
+
137
+ if (ts.isJsxAttribute(attr)) {
138
+ const propName = attr.name.getText();
139
+
140
+ // Skip callback props - they don't create data-driven execution flows
141
+ // Callbacks typically start with 'on' (onClick, onChange) or 'handle' (handleSubmit)
142
+ if (
143
+ propName.startsWith('on') ||
144
+ propName.startsWith('handle') ||
145
+ propName === 'ref'
146
+ ) {
147
+ console.log(
148
+ `[UnconditionalChild] ${componentName}: Skipping callback prop '${propName}'`,
149
+ );
150
+ continue;
151
+ }
152
+
153
+ // Check if the prop value is a JSX expression (references a variable)
154
+ // vs a string literal which is static
155
+ if (attr.initializer) {
156
+ if (ts.isJsxExpression(attr.initializer)) {
157
+ // JSX expression like prop={value} - this references a variable
158
+ // Could be a simple identifier, property access, or more complex expression
159
+ const expression = attr.initializer.expression;
160
+ if (expression) {
161
+ // Skip if it's just a function/arrow function (callback)
162
+ if (
163
+ ts.isArrowFunction(expression) ||
164
+ ts.isFunctionExpression(expression)
165
+ ) {
166
+ console.log(
167
+ `[UnconditionalChild] ${componentName}: Skipping inline callback prop '${propName}'`,
168
+ );
169
+ continue;
170
+ }
171
+ // This is a data prop that references parent state/props
172
+ const exprText = expression.getText();
173
+ dataProps.push(`${propName}={${exprText}}`);
174
+ console.log(
175
+ `[UnconditionalChild] ${componentName}: Found data prop '${propName}' = {${exprText}}`,
176
+ );
177
+ }
178
+ } else {
179
+ // String literals like prop="value" are static
180
+ console.log(
181
+ `[UnconditionalChild] ${componentName}: Skipping static prop '${propName}'`,
182
+ );
183
+ }
184
+ }
185
+ }
186
+ }
187
+
188
+ const hasDataProps = dataProps.length > 0;
189
+ if (hasDataProps) {
190
+ console.log(
191
+ `[UnconditionalChild] ${componentName}: Has ${dataProps.length} data props: [${dataProps.join(', ')}]`,
192
+ );
193
+ } else {
194
+ console.log(
195
+ `[UnconditionalChild] ${componentName}: No data props found, will NOT track`,
196
+ );
197
+ }
198
+
199
+ return { hasDataProps, dataProps };
200
+ }
201
+
202
+ /**
203
+ * Extracts the component name from a JSX element.
204
+ * Returns null for intrinsic elements (div, span, etc.) since we only care about
205
+ * custom components for gating condition tracking.
206
+ *
207
+ * Examples:
208
+ * - <ChildViewer /> → "ChildViewer"
209
+ * - <ScenarioViewer scenario={...} /> → "ScenarioViewer"
210
+ * - <div> → null (intrinsic element)
211
+ */
212
+ function getComponentNameFromJsx(
213
+ node: ts.JsxElement | ts.JsxSelfClosingElement,
214
+ ): string | null {
215
+ let tagName: ts.JsxTagNameExpression;
216
+
217
+ if (ts.isJsxElement(node)) {
218
+ tagName = node.openingElement.tagName;
219
+ } else {
220
+ tagName = node.tagName;
221
+ }
222
+
223
+ // Get the text of the tag name
224
+ const name = tagName.getText();
225
+
226
+ // Check if it's a custom component (starts with uppercase) vs intrinsic element
227
+ // Custom components start with uppercase: <MyComponent />
228
+ // Intrinsic elements start with lowercase: <div />
229
+ if (
230
+ name &&
231
+ name[0] === name[0].toUpperCase() &&
232
+ name[0] !== name[0].toLowerCase()
233
+ ) {
234
+ return name;
235
+ }
236
+
237
+ return null;
238
+ }
239
+
240
+ /**
241
+ * Extracts condition paths from a logical AND chain expression.
242
+ * Used for creating gating conditions for child components.
243
+ *
244
+ * Example: `hasData && isReady && <Component />` returns ['hasData', 'isReady']
245
+ */
246
+ function extractConditionPathsFromAndChain(
247
+ expr: ts.Expression,
248
+ sourceFile: ts.SourceFile,
249
+ ): string[] {
250
+ const paths: string[] = [];
251
+ const unwrapped = unwrapExpression(expr);
252
+
253
+ if (
254
+ ts.isBinaryExpression(unwrapped) &&
255
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
256
+ ) {
257
+ // Recursively get conditions from left side
258
+ paths.push(
259
+ ...extractConditionPathsFromAndChain(unwrapped.left, sourceFile),
260
+ );
261
+
262
+ // Process right side if it's not JSX (JSX is the consequence, not a condition)
263
+ const rightUnwrapped = unwrapExpression(unwrapped.right);
264
+ if (
265
+ !ts.isJsxElement(rightUnwrapped) &&
266
+ !ts.isJsxSelfClosingElement(rightUnwrapped) &&
267
+ !ts.isJsxFragment(rightUnwrapped)
268
+ ) {
269
+ paths.push(
270
+ ...extractConditionPathsFromAndChain(unwrapped.right, sourceFile),
271
+ );
272
+ }
273
+ } else {
274
+ // Base case: extract path from this expression
275
+ const path = StructuredPath.fromNode(unwrapped, sourceFile);
276
+ if (path) {
277
+ paths.push(path.toString());
278
+ }
279
+ }
280
+
281
+ return paths;
282
+ }
283
+
284
+ /**
285
+ * Finds the rightmost JSX element in an && chain.
286
+ * Example: `a && b && <Component />` returns <Component />
287
+ */
288
+ function findJsxInAndChain(
289
+ expr: ts.Expression,
290
+ ): ts.JsxElement | ts.JsxSelfClosingElement | null {
291
+ const unwrapped = unwrapExpression(expr);
292
+
293
+ if (ts.isJsxElement(unwrapped) || ts.isJsxSelfClosingElement(unwrapped)) {
294
+ return unwrapped;
295
+ }
296
+
297
+ if (
298
+ ts.isBinaryExpression(unwrapped) &&
299
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
300
+ ) {
301
+ // Check right side first (most common case: condition && <Jsx />)
302
+ const rightResult = findJsxInAndChain(unwrapped.right);
303
+ if (rightResult) return rightResult;
304
+
305
+ // Also check left side for rare cases
306
+ return findJsxInAndChain(unwrapped.left);
307
+ }
308
+
309
+ return null;
310
+ }
311
+
312
+ /**
313
+ * Fix 32: Finds a JSX fragment in an && chain.
314
+ * Example: `activeTab && <><ChildA /><ChildB /></>` returns the fragment
315
+ * This is needed to propagate parent conditions through fragments.
316
+ */
317
+ function findJsxFragmentInAndChain(expr: ts.Expression): ts.JsxFragment | null {
318
+ const unwrapped = unwrapExpression(expr);
319
+
320
+ if (ts.isJsxFragment(unwrapped)) {
321
+ return unwrapped;
322
+ }
323
+
324
+ if (
325
+ ts.isBinaryExpression(unwrapped) &&
326
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
327
+ ) {
328
+ // Check right side first (most common case: condition && <></>)
329
+ const rightResult = findJsxFragmentInAndChain(unwrapped.right);
330
+ if (rightResult) return rightResult;
331
+
332
+ // Also check left side for rare cases
333
+ return findJsxFragmentInAndChain(unwrapped.left);
334
+ }
335
+
336
+ return null;
337
+ }
338
+
339
+ /**
340
+ * Detects if a property access looks like an environment variable store access.
341
+ * Matches patterns like `env.DATABASE_URL`, `env.IS_FORMBRICKS_CLOUD`, etc.
342
+ * where the object is named "env" and the property looks like an env var name.
343
+ */
344
+ function isEnvStoreAccess(fullText: string): boolean {
345
+ // Match: env.SOME_VAR or env.someVar (but object must be exactly "env")
346
+ // This catches patterns from @t3-oss/env-nextjs and similar packages
347
+ const envStorePattern = /^env\.[A-Z_][A-Z0-9_]*$/;
348
+ return envStorePattern.test(fullText);
349
+ }
350
+
351
+ /**
352
+ * Converts a call expression argument to a StructuredPath.
353
+ *
354
+ * IMPORTANT: We always use the original source text for callbacks, never cyScope names.
355
+ * cyScope names are internal identifiers for child scopes and should NEVER appear
356
+ * in schema paths or call signatures. Using cyScope names causes data merge conflicts
357
+ * because the same callback gets different identifiers in different contexts.
358
+ */
359
+ function getArgPathForCallSignature(
360
+ arg: ts.Expression,
361
+ context: AnalysisContext,
362
+ ): StructuredPath {
363
+ // Always use the standard path conversion - never replace with cyScope names
364
+ return (
365
+ StructuredPath.fromNode(arg, context.sourceFile) ||
366
+ nodeToSource(arg, context.sourceFile)
367
+ );
368
+ }
369
+
370
+ /**
371
+ * Builds a StructuredPath for a call expression using the original source text.
372
+ *
373
+ * IMPORTANT: This function ensures consistent call signatures by always using
374
+ * the original callback text, never cyScope names. This prevents schema path
375
+ * conflicts where the same call would have different paths.
376
+ */
377
+ function buildCallPathFromSource(
378
+ node: ts.CallExpression,
379
+ context: AnalysisContext,
380
+ ): StructuredPath | null {
381
+ const expression = node.expression;
382
+
383
+ // Convert arguments using original source text
384
+ const argPaths = node.arguments.map((arg) =>
385
+ getArgPathForCallSignature(arg, context),
386
+ );
387
+
388
+ // Handle type arguments if present
389
+ let typeArgs: string[] | undefined = undefined;
390
+ if (node.typeArguments && node.typeArguments.length > 0) {
391
+ typeArgs = node.typeArguments.map((typeArg) =>
392
+ typeArg.getText(context.sourceFile),
393
+ );
394
+ }
395
+
396
+ if (ts.isIdentifier(expression)) {
397
+ // Simple function call: func(arg1, arg2)
398
+ return StructuredPath.fromFunction(expression.text, argPaths, typeArgs);
399
+ } else if (ts.isPropertyAccessExpression(expression)) {
400
+ // Method call: obj.method(arg1, arg2)
401
+ const objPath = StructuredPath.fromNode(
402
+ expression.expression,
403
+ context.sourceFile,
404
+ );
405
+ if (!objPath) return null;
406
+ return objPath
407
+ .withProperty(expression.name.text)
408
+ .withFunctionCall(argPaths, typeArgs);
409
+ } else if (ts.isCallExpression(expression)) {
410
+ // Chained call: func(arg1)(arg2)
411
+ const funcPath = buildCallPathFromSource(expression, context);
412
+ if (!funcPath) return null;
413
+ return funcPath.withFunctionCall(argPaths, typeArgs);
414
+ } else if (ts.isElementAccessExpression(expression)) {
415
+ // Element access call: obj[key](args)
416
+ const basePath = StructuredPath.fromNode(expression, context.sourceFile);
417
+ if (!basePath) return null;
418
+ return basePath.withFunctionCall(argPaths, typeArgs);
419
+ } else {
420
+ // Complex call expression
421
+ const basePath = StructuredPath.fromNode(expression, context.sourceFile);
422
+ if (!basePath) return null;
423
+ return basePath.withFunctionCall(argPaths, typeArgs);
424
+ }
425
+ }
426
+
427
+ /**
428
+ * Checks if an expression is likely an array type.
429
+ * Uses TypeScript's type checker when available, falls back to heuristics.
430
+ */
431
+ function isLikelyArrayType(
432
+ expr: ts.Expression,
433
+ typeChecker: ts.TypeChecker | undefined,
434
+ ): boolean {
435
+ if (typeChecker) {
436
+ try {
437
+ const type = typeChecker.getTypeAtLocation(expr);
438
+ const typeString = typeChecker.typeToString(type);
439
+ // Check for common array type patterns:
440
+ // - T[] syntax (includes any[], string[], etc.)
441
+ // - Array<T> syntax
442
+ // - ReadonlyArray<T> syntax
443
+ // - readonly T[] syntax (starts with "readonly " and ends with "[]")
444
+ if (
445
+ typeString.includes('[]') ||
446
+ typeString.startsWith('Array<') ||
447
+ typeString.startsWith('ReadonlyArray<')
448
+ ) {
449
+ return true;
450
+ }
451
+ // Check if it's a tuple or array literal type via TypeScript's type flags
452
+ if (type.getFlags() & ts.TypeFlags.Object) {
453
+ const objectType = type as ts.ObjectType;
454
+ if (
455
+ objectType.objectFlags & ts.ObjectFlags.Tuple ||
456
+ objectType.objectFlags & ts.ObjectFlags.ArrayLiteral
457
+ ) {
458
+ return true;
459
+ }
460
+ }
461
+ } catch {
462
+ // Type checking can fail in some edge cases, fall through to false
463
+ }
464
+ }
465
+ return false;
466
+ }
17
467
 
18
468
  /**
19
469
  * Marks variables used in truthiness checks as potentially undefined.
@@ -51,153 +501,1036 @@ export function markConditionVariablesAsNullable(
51
501
  return;
52
502
  }
53
503
 
54
- // Don't mark variables in comparison operators as nullable
55
- // Example: `if (x === 5)` doesn't mean x might be undefined
56
- if (
57
- ts.isBinaryExpression(unwrapped) &&
58
- isComparisonOperator(unwrapped.operatorToken.kind)
59
- ) {
60
- return;
61
- }
504
+ // Don't mark variables in comparison operators as nullable
505
+ // Example: `if (x === 5)` doesn't mean x might be undefined
506
+ if (
507
+ ts.isBinaryExpression(unwrapped) &&
508
+ isComparisonOperator(unwrapped.operatorToken.kind)
509
+ ) {
510
+ return;
511
+ }
512
+
513
+ // For simple identifiers or property accesses, mark as potentially undefined
514
+ const path = StructuredPath.fromNode(unwrapped, context.sourceFile);
515
+ if (path) {
516
+ const currentType = context.getTypeInfo(path) || 'unknown';
517
+
518
+ // Only add | undefined if it's not already there
519
+ if (!currentType.includes('undefined')) {
520
+ context.addType(path, `${currentType} | undefined`);
521
+ }
522
+ }
523
+ }
524
+
525
+ /**
526
+ * Helper to extract source location from an AST node
527
+ */
528
+ function getSourceLocation(
529
+ node: ts.Node,
530
+ sourceFile: ts.SourceFile,
531
+ ): ConditionalUsage['sourceLocation'] {
532
+ const start = node.getStart(sourceFile);
533
+ const { line, character } = sourceFile.getLineAndCharacterOfPosition(start);
534
+ const codeSnippet = node.getText(sourceFile);
535
+
536
+ return {
537
+ lineNumber: line + 1, // Convert to 1-based
538
+ column: character,
539
+ codeSnippet:
540
+ codeSnippet.length > 100
541
+ ? codeSnippet.slice(0, 100) + '...'
542
+ : codeSnippet,
543
+ };
544
+ }
545
+
546
+ /**
547
+ * Extracts the root array path from an expression that ends with .map().
548
+ * Handles chained methods like .filter().map(), .slice().map(), etc.
549
+ *
550
+ * Examples:
551
+ * - items.map(...) → "items"
552
+ * - data.users.map(...) → "data.users"
553
+ * - items.filter(...).map(...) → "items"
554
+ * - items.slice(0, 5).map(...) → "items"
555
+ */
556
+ function extractArrayPathFromMapCall(
557
+ expr: ts.CallExpression,
558
+ sourceFile: ts.SourceFile,
559
+ ): string | null {
560
+ // Walk up the chain to find the root array
561
+ let current: ts.Expression = expr.expression;
562
+
563
+ while (ts.isPropertyAccessExpression(current)) {
564
+ const methodName = current.name.getText(sourceFile);
565
+
566
+ // Common array methods that return arrays (so we keep going up)
567
+ const arrayReturningMethods = [
568
+ 'map',
569
+ 'filter',
570
+ 'slice',
571
+ 'concat',
572
+ 'flat',
573
+ 'flatMap',
574
+ 'reverse',
575
+ 'sort',
576
+ 'toReversed',
577
+ 'toSorted',
578
+ 'toSpliced',
579
+ ];
580
+
581
+ if (arrayReturningMethods.includes(methodName)) {
582
+ const objectExpr = current.expression;
583
+
584
+ // If the object is a call expression (chained method), keep going
585
+ if (ts.isCallExpression(objectExpr)) {
586
+ current = objectExpr.expression;
587
+ } else {
588
+ // Found the root - it's an identifier or property access
589
+ const path = StructuredPath.fromNode(objectExpr, sourceFile);
590
+ return path ? path.toString() : null;
591
+ }
592
+ } else {
593
+ // Not an array method we recognize
594
+ break;
595
+ }
596
+ }
597
+
598
+ return null;
599
+ }
600
+
601
+ /**
602
+ * Extracts JSX rendering usages from a JSX expression.
603
+ * Detects:
604
+ * - array.map() calls → 'array-map' type
605
+ * - string interpolations (identifiers/property access) → 'text-interpolation' type
606
+ *
607
+ * Recursively searches inside && chains and ternary expressions.
608
+ *
609
+ * @param expr The expression inside {expr}
610
+ * @param context The analysis context
611
+ */
612
+ function extractJsxRenderingUsage(
613
+ expr: ts.Expression,
614
+ context: AnalysisContext,
615
+ ): void {
616
+ const unwrapped = unwrapExpression(expr);
617
+ const sourceLocation = getSourceLocation(expr, context.sourceFile);
618
+
619
+ // Detect array.map() calls
620
+ if (ts.isCallExpression(unwrapped)) {
621
+ const calleeExpr = unwrapped.expression;
622
+
623
+ if (ts.isPropertyAccessExpression(calleeExpr)) {
624
+ const methodName = calleeExpr.name.getText(context.sourceFile);
625
+
626
+ if (methodName === 'map') {
627
+ const arrayPath = extractArrayPathFromMapCall(
628
+ unwrapped,
629
+ context.sourceFile,
630
+ );
631
+
632
+ if (arrayPath) {
633
+ context.addJsxRenderingUsage({
634
+ path: arrayPath,
635
+ renderingType: 'array-map',
636
+ valueType: 'array',
637
+ sourceLocation,
638
+ });
639
+ }
640
+ }
641
+ }
642
+ }
643
+ // Detect simple string interpolations: {title} or {user.name}
644
+ else if (
645
+ ts.isIdentifier(unwrapped) ||
646
+ ts.isPropertyAccessExpression(unwrapped)
647
+ ) {
648
+ const path = StructuredPath.fromNode(unwrapped, context.sourceFile);
649
+
650
+ if (path) {
651
+ const pathStr = path.toString();
652
+ const typeInfo = context.getTypeInfo(path);
653
+
654
+ // Only track as text interpolation if it's a string type
655
+ // Check for 'string' type, or types that contain 'string' (but not 'string[]')
656
+ if (
657
+ typeInfo === 'string' ||
658
+ (typeInfo &&
659
+ typeInfo.includes('string') &&
660
+ !typeInfo.includes('string[]'))
661
+ ) {
662
+ context.addJsxRenderingUsage({
663
+ path: pathStr,
664
+ renderingType: 'text-interpolation',
665
+ valueType: 'string',
666
+ sourceLocation,
667
+ });
668
+ }
669
+ }
670
+ }
671
+ // Recursively search inside && chains: {showList && items.map(...)}
672
+ else if (
673
+ ts.isBinaryExpression(unwrapped) &&
674
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
675
+ ) {
676
+ // Check the right side of the && chain (where .map() typically appears)
677
+ const rightSide = unwrapExpression(unwrapped.right);
678
+ extractJsxRenderingUsage(rightSide, context);
679
+ // Also check nested && chains on the left
680
+ extractJsxRenderingUsage(unwrapped.left, context);
681
+ }
682
+ // Recursively search inside ternaries: {isEmpty ? null : items.map(...)}
683
+ else if (ts.isConditionalExpression(unwrapped)) {
684
+ extractJsxRenderingUsage(unwrapped.whenTrue, context);
685
+ extractJsxRenderingUsage(unwrapped.whenFalse, context);
686
+ }
687
+ }
688
+
689
+ /**
690
+ * Counts the number of conditions in an && chain (excluding JSX consequence)
691
+ */
692
+ function countConditionsInAndChain(expr: ts.Expression): number {
693
+ const unwrapped = unwrapExpression(expr);
694
+
695
+ if (
696
+ ts.isBinaryExpression(unwrapped) &&
697
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
698
+ ) {
699
+ const leftCount = countConditionsInAndChain(unwrapped.left);
700
+ const rightUnwrapped = unwrapExpression(unwrapped.right);
701
+ const isJsxConsequence =
702
+ ts.isJsxElement(rightUnwrapped) ||
703
+ ts.isJsxSelfClosingElement(rightUnwrapped) ||
704
+ ts.isJsxFragment(rightUnwrapped);
705
+
706
+ if (isJsxConsequence) {
707
+ return leftCount;
708
+ }
709
+ return leftCount + countConditionsInAndChain(unwrapped.right);
710
+ }
711
+
712
+ // Single condition (not an && chain)
713
+ return 1;
714
+ }
715
+
716
+ /**
717
+ * Chain tracking info for compound conditionals
718
+ */
719
+ interface ChainInfo {
720
+ chainId: string;
721
+ chainLength: number;
722
+ chainExpression: string;
723
+ currentPosition: number;
724
+ compound: CompoundConditional;
725
+ /**
726
+ * When processing OR expressions within an && chain, this tracks the
727
+ * current OR group ID. Conditions added while this is set will be marked
728
+ * as OR alternatives (only one needs to be true).
729
+ */
730
+ currentOrGroupId?: string;
731
+ }
732
+
733
+ /**
734
+ * Parent gating condition accumulated during JSX traversal.
735
+ * Used to track conditions from parent && chains that gate child components.
736
+ */
737
+ interface ParentGatingCondition {
738
+ path: string;
739
+ sourceLocation: { lineNumber: number; column: number; codeSnippet: string };
740
+ isNegated?: boolean;
741
+ }
742
+
743
+ /**
744
+ * Extracts conditionals from JSX elements by recursively traversing children.
745
+ *
746
+ * This is CRITICAL for extracting compound conditionals from JSX expressions
747
+ * like `{hasNewerVersion && !isActive && <Banner />}`.
748
+ *
749
+ * This function is called BEFORE the child boundary check in processExpression
750
+ * because JSX elements are NOT scopes - their expressions use variables from
751
+ * the parent scope and should have their conditionals extracted regardless of
752
+ * whether the JSX is within a child boundary.
753
+ *
754
+ * Fix 32: Added parentConditions parameter to track gating conditions from
755
+ * parent && chains. When we find a component nested inside multiple conditionals
756
+ * like `{activeTab && <>{ternary ? ... : <Component />}</>}`, ALL parent
757
+ * conditions should be added as gating conditions for the component.
758
+ *
759
+ * @param node The JSX element, self-closing element, or fragment to traverse
760
+ * @param context The analysis context
761
+ * @param parentConditions Accumulated gating conditions from parent && chains
762
+ */
763
+ function extractConditionalsFromJsx(
764
+ node: ts.JsxElement | ts.JsxSelfClosingElement | ts.JsxFragment,
765
+ context: AnalysisContext,
766
+ parentConditions: ParentGatingCondition[] = [],
767
+ ): void {
768
+ // Get children to process
769
+ let children: ts.NodeArray<ts.JsxChild> | undefined;
770
+
771
+ if (ts.isJsxElement(node)) {
772
+ children = node.children;
773
+ } else if (ts.isJsxFragment(node)) {
774
+ children = node.children;
775
+ }
776
+ // JsxSelfClosingElement has no children
777
+
778
+ if (!children) {
779
+ return;
780
+ }
781
+
782
+ for (const child of children) {
783
+ // Process JSX expressions: {expr}
784
+ if (ts.isJsxExpression(child) && child.expression) {
785
+ const expr = unwrapExpression(child.expression);
786
+
787
+ // Extract JSX rendering usages (array.map, text interpolation)
788
+ // This handles direct usages like {items.map(...)} or {user.name}
789
+ extractJsxRenderingUsage(expr, context);
790
+
791
+ // If the expression is an && chain, extract its conditional usages
792
+ if (
793
+ ts.isBinaryExpression(expr) &&
794
+ expr.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
795
+ ) {
796
+ // Mark nullable variables
797
+ markConditionVariablesAsNullable(expr, context);
798
+ // Extract conditional usage (this handles compound conditionals)
799
+ // Pass controlsJsxRendering: true since this conditional controls JSX rendering
800
+ extractConditionalUsage(expr, context, 'logical-and', {
801
+ controlsJsxRendering: true,
802
+ });
803
+
804
+ // Extract all condition paths from the && chain for gating tracking
805
+ const conditionPaths = extractConditionPathsFromAndChain(
806
+ expr,
807
+ context.sourceFile,
808
+ );
809
+ const sourceLocation = getSourceLocation(expr, context.sourceFile);
810
+
811
+ // Fix 32: Build accumulated conditions including parent conditions
812
+ const accumulatedConditions: ParentGatingCondition[] = [
813
+ ...parentConditions,
814
+ ...conditionPaths.map((path) => ({
815
+ path,
816
+ sourceLocation,
817
+ isNegated: false,
818
+ })),
819
+ ];
820
+
821
+ // Track gating conditions for child components
822
+ // Example: {hasAnalysis && <ScenarioViewer />}
823
+ const jsxElement = findJsxInAndChain(expr);
824
+ if (jsxElement) {
825
+ const componentName = getComponentNameFromJsx(jsxElement);
826
+ if (componentName) {
827
+ // Fix 32: Add ALL accumulated conditions (parent + current) as gating conditions
828
+ for (const condition of accumulatedConditions) {
829
+ context.addChildBoundaryGatingCondition(componentName, {
830
+ path: condition.path,
831
+ conditionType: 'truthiness',
832
+ location: 'logical-and',
833
+ sourceLocation: condition.sourceLocation,
834
+ controlsJsxRendering: true,
835
+ isNegated: condition.isNegated,
836
+ });
837
+ }
838
+ }
839
+
840
+ // Fix 32: Recursively process nested JSX with accumulated conditions
841
+ if (
842
+ ts.isJsxElement(jsxElement) ||
843
+ ts.isJsxSelfClosingElement(jsxElement)
844
+ ) {
845
+ extractConditionalsFromJsx(
846
+ jsxElement,
847
+ context,
848
+ accumulatedConditions,
849
+ );
850
+ }
851
+ }
852
+
853
+ // Fix 32: Also check for nested JSX fragments
854
+ const jsxFragment = findJsxFragmentInAndChain(expr);
855
+ if (jsxFragment) {
856
+ extractConditionalsFromJsx(
857
+ jsxFragment,
858
+ context,
859
+ accumulatedConditions,
860
+ );
861
+ }
862
+ }
863
+ // If the expression is a ternary, extract its conditional
864
+ else if (ts.isConditionalExpression(expr)) {
865
+ // Pass controlsJsxRendering: true since this conditional controls JSX rendering
866
+ extractConditionalUsage(expr.condition, context, 'ternary', {
867
+ controlsJsxRendering: true,
868
+ });
869
+
870
+ // Track gating conditions for components in both branches of the ternary
871
+ // Example: {isError ? <ErrorView /> : <SuccessView />}
872
+ const conditionPath = StructuredPath.fromNode(
873
+ unwrapExpression(expr.condition),
874
+ context.sourceFile,
875
+ );
876
+ const sourceLocation = getSourceLocation(expr, context.sourceFile);
877
+
878
+ // Recursively process the whenTrue and whenFalse branches for JSX
879
+ const whenTrue = unwrapExpression(expr.whenTrue);
880
+ const whenFalse = unwrapExpression(expr.whenFalse);
881
+
882
+ // Fix 32: Build conditions for whenTrue branch (parent conditions + ternary condition truthy)
883
+ const whenTrueConditions: ParentGatingCondition[] = [
884
+ ...parentConditions,
885
+ ...(conditionPath
886
+ ? [
887
+ {
888
+ path: conditionPath.toString(),
889
+ sourceLocation,
890
+ isNegated: false,
891
+ },
892
+ ]
893
+ : []),
894
+ ];
895
+
896
+ // Fix 32: Build conditions for whenFalse branch (parent conditions + ternary condition falsy)
897
+ const whenFalseConditions: ParentGatingCondition[] = [
898
+ ...parentConditions,
899
+ ...(conditionPath
900
+ ? [
901
+ {
902
+ path: conditionPath.toString(),
903
+ sourceLocation,
904
+ isNegated: true,
905
+ },
906
+ ]
907
+ : []),
908
+ ];
909
+
910
+ // Handle whenTrue branch (condition is truthy)
911
+ if (ts.isJsxElement(whenTrue) || ts.isJsxSelfClosingElement(whenTrue)) {
912
+ const componentName = getComponentNameFromJsx(whenTrue);
913
+ if (componentName) {
914
+ // Fix 32: Add ALL conditions (parent + ternary) as gating conditions
915
+ for (const condition of whenTrueConditions) {
916
+ context.addChildBoundaryGatingCondition(componentName, {
917
+ path: condition.path,
918
+ conditionType: 'truthiness',
919
+ location: 'ternary',
920
+ sourceLocation: condition.sourceLocation,
921
+ controlsJsxRendering: true,
922
+ isNegated: condition.isNegated,
923
+ });
924
+ }
925
+ }
926
+ }
927
+ if (
928
+ ts.isJsxElement(whenTrue) ||
929
+ ts.isJsxSelfClosingElement(whenTrue) ||
930
+ ts.isJsxFragment(whenTrue)
931
+ ) {
932
+ extractConditionalsFromJsx(whenTrue, context, whenTrueConditions);
933
+ }
934
+
935
+ // Handle whenFalse branch (condition is falsy/negated)
936
+ if (
937
+ ts.isJsxElement(whenFalse) ||
938
+ ts.isJsxSelfClosingElement(whenFalse)
939
+ ) {
940
+ const componentName = getComponentNameFromJsx(whenFalse);
941
+ if (componentName) {
942
+ // Fix 32: Add ALL conditions (parent + ternary) as gating conditions
943
+ for (const condition of whenFalseConditions) {
944
+ context.addChildBoundaryGatingCondition(componentName, {
945
+ path: condition.path,
946
+ conditionType: 'truthiness',
947
+ location: 'ternary',
948
+ sourceLocation: condition.sourceLocation,
949
+ controlsJsxRendering: true,
950
+ isNegated: condition.isNegated,
951
+ });
952
+ }
953
+ }
954
+ }
955
+ if (
956
+ ts.isJsxElement(whenFalse) ||
957
+ ts.isJsxSelfClosingElement(whenFalse) ||
958
+ ts.isJsxFragment(whenFalse)
959
+ ) {
960
+ extractConditionalsFromJsx(whenFalse, context, whenFalseConditions);
961
+ }
962
+ // Handle chained ternaries: a ? <A/> : b ? <B/> : <C/>
963
+ // When whenFalse is another ConditionalExpression, recursively process it
964
+ else if (ts.isConditionalExpression(whenFalse)) {
965
+ // Extract conditional usage for the nested ternary's condition
966
+ extractConditionalUsage(whenFalse.condition, context, 'ternary', {
967
+ controlsJsxRendering: true,
968
+ });
969
+
970
+ // Get the nested condition path
971
+ const nestedConditionPath = StructuredPath.fromNode(
972
+ unwrapExpression(whenFalse.condition),
973
+ context.sourceFile,
974
+ );
975
+ const nestedSourceLocation = getSourceLocation(
976
+ whenFalse,
977
+ context.sourceFile,
978
+ );
62
979
 
63
- // For simple identifiers or property accesses, mark as potentially undefined
64
- const path = StructuredPath.fromNode(unwrapped, context.sourceFile);
65
- if (path) {
66
- const currentType = context.getTypeInfo(path) || 'unknown';
980
+ const nestedWhenTrue = unwrapExpression(whenFalse.whenTrue);
981
+ const nestedWhenFalse = unwrapExpression(whenFalse.whenFalse);
982
+
983
+ // Fix 32: Build conditions for nested whenTrue (parent falsy + nested truthy)
984
+ const nestedWhenTrueConditions: ParentGatingCondition[] = [
985
+ ...whenFalseConditions, // Parent ternary was falsy to get here
986
+ ...(nestedConditionPath
987
+ ? [
988
+ {
989
+ path: nestedConditionPath.toString(),
990
+ sourceLocation: nestedSourceLocation,
991
+ isNegated: false,
992
+ },
993
+ ]
994
+ : []),
995
+ ];
996
+
997
+ // Fix 32: Build conditions for nested whenFalse (parent falsy + nested falsy)
998
+ const nestedWhenFalseConditions: ParentGatingCondition[] = [
999
+ ...whenFalseConditions, // Parent ternary was falsy to get here
1000
+ ...(nestedConditionPath
1001
+ ? [
1002
+ {
1003
+ path: nestedConditionPath.toString(),
1004
+ sourceLocation: nestedSourceLocation,
1005
+ isNegated: true,
1006
+ },
1007
+ ]
1008
+ : []),
1009
+ ];
1010
+
1011
+ // Handle nested whenTrue branch
1012
+ if (
1013
+ ts.isJsxElement(nestedWhenTrue) ||
1014
+ ts.isJsxSelfClosingElement(nestedWhenTrue)
1015
+ ) {
1016
+ const componentName = getComponentNameFromJsx(nestedWhenTrue);
1017
+ if (componentName) {
1018
+ // Fix 32: Add ALL accumulated conditions
1019
+ for (const condition of nestedWhenTrueConditions) {
1020
+ context.addChildBoundaryGatingCondition(componentName, {
1021
+ path: condition.path,
1022
+ conditionType: 'truthiness',
1023
+ location: 'ternary',
1024
+ sourceLocation: condition.sourceLocation,
1025
+ controlsJsxRendering: true,
1026
+ isNegated: condition.isNegated,
1027
+ });
1028
+ }
1029
+ }
1030
+ }
1031
+ if (
1032
+ ts.isJsxElement(nestedWhenTrue) ||
1033
+ ts.isJsxSelfClosingElement(nestedWhenTrue) ||
1034
+ ts.isJsxFragment(nestedWhenTrue)
1035
+ ) {
1036
+ extractConditionalsFromJsx(
1037
+ nestedWhenTrue,
1038
+ context,
1039
+ nestedWhenTrueConditions,
1040
+ );
1041
+ }
67
1042
 
68
- // Only add | undefined if it's not already there
69
- if (!currentType.includes('undefined')) {
70
- context.addType(path, `${currentType} | undefined`);
1043
+ // Handle nested whenFalse branch (this could be another chained ternary or JSX)
1044
+ if (
1045
+ ts.isJsxElement(nestedWhenFalse) ||
1046
+ ts.isJsxSelfClosingElement(nestedWhenFalse)
1047
+ ) {
1048
+ const componentName = getComponentNameFromJsx(nestedWhenFalse);
1049
+ if (componentName) {
1050
+ // Fix 32: Add ALL accumulated conditions
1051
+ for (const condition of nestedWhenFalseConditions) {
1052
+ context.addChildBoundaryGatingCondition(componentName, {
1053
+ path: condition.path,
1054
+ conditionType: 'truthiness',
1055
+ location: 'ternary',
1056
+ sourceLocation: condition.sourceLocation,
1057
+ controlsJsxRendering: true,
1058
+ isNegated: condition.isNegated,
1059
+ });
1060
+ }
1061
+ }
1062
+ }
1063
+ if (
1064
+ ts.isJsxElement(nestedWhenFalse) ||
1065
+ ts.isJsxSelfClosingElement(nestedWhenFalse) ||
1066
+ ts.isJsxFragment(nestedWhenFalse)
1067
+ ) {
1068
+ extractConditionalsFromJsx(
1069
+ nestedWhenFalse,
1070
+ context,
1071
+ nestedWhenFalseConditions,
1072
+ );
1073
+ }
1074
+ // If nestedWhenFalse is yet another ConditionalExpression, the recursion
1075
+ // will handle it on the next iteration when this function processes it
1076
+ else if (ts.isConditionalExpression(nestedWhenFalse)) {
1077
+ // Recursively handle deeper nesting by wrapping in a synthetic process
1078
+ // We create a fake JsxExpression context to reuse the same logic
1079
+ const syntheticChild = {
1080
+ kind: ts.SyntaxKind.JsxExpression,
1081
+ expression: nestedWhenFalse,
1082
+ } as unknown as ts.JsxExpression;
1083
+ // Process via the main JSX expression handler by recursing
1084
+ // For now, just extract conditionals directly
1085
+ extractConditionalUsage(
1086
+ nestedWhenFalse.condition,
1087
+ context,
1088
+ 'ternary',
1089
+ { controlsJsxRendering: true },
1090
+ );
1091
+ }
1092
+ }
1093
+ }
1094
+ }
1095
+ // Recursively process nested JSX elements - Fix 32: pass parent conditions
1096
+ else if (ts.isJsxElement(child)) {
1097
+ // Check if this is a user-defined component (vs intrinsic element like div)
1098
+ const componentName = getComponentNameFromJsx(child);
1099
+ if (componentName) {
1100
+ if (parentConditions.length > 0) {
1101
+ // If there are parent conditions, record them as gating conditions
1102
+ console.log(
1103
+ `[ChildBoundary] ${componentName}: Conditionally rendered with ${parentConditions.length} gating conditions`,
1104
+ );
1105
+ for (const condition of parentConditions) {
1106
+ console.log(
1107
+ `[ChildBoundary] ${componentName}: Adding gating condition path='${condition.path}' isNegated=${condition.isNegated}`,
1108
+ );
1109
+ context.addChildBoundaryGatingCondition(componentName, {
1110
+ path: condition.path,
1111
+ conditionType: 'truthiness',
1112
+ location: 'ternary',
1113
+ sourceLocation: condition.sourceLocation,
1114
+ controlsJsxRendering: true,
1115
+ isNegated: condition.isNegated,
1116
+ });
1117
+ }
1118
+ } else {
1119
+ // No parent conditions - check if it has data props for unconditional tracking
1120
+ console.log(
1121
+ `[ChildBoundary] ${componentName}: Checking for unconditional rendering with data props...`,
1122
+ );
1123
+ const { hasDataProps, dataProps } = hasDataPropsFromParent(
1124
+ child,
1125
+ componentName,
1126
+ );
1127
+ if (hasDataProps) {
1128
+ // Fix: Track unconditionally-rendered children that receive data props
1129
+ // These need to be tracked for flow merging even without gating conditions
1130
+ // Example: <WorkoutsView workouts={workouts} /> - parent controls workouts data
1131
+ console.log(
1132
+ `[ChildBoundary] ${componentName}: TRACKING as unconditionally-rendered with data props: [${dataProps.join(', ')}]`,
1133
+ );
1134
+ context.addChildBoundaryGatingCondition(componentName, {
1135
+ path: '__unconditional__',
1136
+ conditionType: 'truthiness',
1137
+ location: 'unconditional',
1138
+ controlsJsxRendering: true,
1139
+ isNegated: false,
1140
+ });
1141
+ }
1142
+ }
1143
+ }
1144
+ extractConditionalsFromJsx(child, context, parentConditions);
1145
+ }
1146
+ // Handle self-closing JSX elements (e.g., <ScenarioViewer />)
1147
+ else if (ts.isJsxSelfClosingElement(child)) {
1148
+ // Check if this is a user-defined component (vs intrinsic element like div)
1149
+ const componentName = getComponentNameFromJsx(child);
1150
+ if (componentName) {
1151
+ if (parentConditions.length > 0) {
1152
+ // If there are parent conditions, record them as gating conditions
1153
+ console.log(
1154
+ `[ChildBoundary] ${componentName}: Conditionally rendered (self-closing) with ${parentConditions.length} gating conditions`,
1155
+ );
1156
+ for (const condition of parentConditions) {
1157
+ console.log(
1158
+ `[ChildBoundary] ${componentName}: Adding gating condition path='${condition.path}' isNegated=${condition.isNegated}`,
1159
+ );
1160
+ context.addChildBoundaryGatingCondition(componentName, {
1161
+ path: condition.path,
1162
+ conditionType: 'truthiness',
1163
+ location: 'ternary',
1164
+ sourceLocation: condition.sourceLocation,
1165
+ controlsJsxRendering: true,
1166
+ isNegated: condition.isNegated,
1167
+ });
1168
+ }
1169
+ } else {
1170
+ // No parent conditions - check if it has data props for unconditional tracking
1171
+ console.log(
1172
+ `[ChildBoundary] ${componentName}: Checking for unconditional rendering (self-closing) with data props...`,
1173
+ );
1174
+ const { hasDataProps, dataProps } = hasDataPropsFromParent(
1175
+ child,
1176
+ componentName,
1177
+ );
1178
+ if (hasDataProps) {
1179
+ // Fix: Track unconditionally-rendered children that receive data props
1180
+ console.log(
1181
+ `[ChildBoundary] ${componentName}: TRACKING as unconditionally-rendered (self-closing) with data props: [${dataProps.join(', ')}]`,
1182
+ );
1183
+ context.addChildBoundaryGatingCondition(componentName, {
1184
+ path: '__unconditional__',
1185
+ conditionType: 'truthiness',
1186
+ location: 'unconditional',
1187
+ controlsJsxRendering: true,
1188
+ isNegated: false,
1189
+ });
1190
+ }
1191
+ }
1192
+ }
1193
+ // Self-closing elements have no children, so no recursion needed
1194
+ }
1195
+ // Recursively process nested JSX fragments - Fix 32: pass parent conditions
1196
+ else if (ts.isJsxFragment(child)) {
1197
+ extractConditionalsFromJsx(child, context, parentConditions);
71
1198
  }
72
1199
  }
73
1200
  }
74
1201
 
1202
+ /**
1203
+ * Options for extractConditionalUsage
1204
+ */
1205
+ interface ExtractConditionalOptions {
1206
+ /**
1207
+ * Whether this conditional controls JSX rendering.
1208
+ * Set to true when the conditional appears in a JSX expression like {cond && <Component />}
1209
+ */
1210
+ controlsJsxRendering?: boolean;
1211
+ }
1212
+
75
1213
  /**
76
1214
  * Extracts conditional usages from a condition expression for key attribute detection.
77
1215
  * This function identifies which attributes are used in conditionals and how they're used.
1216
+ * It also tracks compound conditionals (&&-chains) where all conditions must be true together.
78
1217
  *
79
1218
  * @param condition The condition expression to analyze
80
1219
  * @param context The analysis context
81
1220
  * @param location Where this condition appears (if, ternary, logical-and, switch)
1221
+ * @param options Additional options including controlsJsxRendering flag
82
1222
  */
83
1223
  export function extractConditionalUsage(
84
1224
  condition: ts.Expression,
85
1225
  context: AnalysisContext,
86
1226
  location: ConditionalUsage['location'],
1227
+ options: ExtractConditionalOptions = {},
87
1228
  ): void {
88
- const unwrapped = unwrapExpression(condition);
1229
+ const { controlsJsxRendering } = options;
1230
+ // Internal recursive function with chain tracking
1231
+ function extractWithChainTracking(
1232
+ expr: ts.Expression,
1233
+ chainInfo: ChainInfo | null,
1234
+ isNegated: boolean,
1235
+ ): void {
1236
+ const unwrapped = unwrapExpression(expr);
1237
+
1238
+ // Handle binary expressions with && (logical AND chains)
1239
+ // Example: `a && b && <Component />` - both a and b are conditional checks
1240
+ if (
1241
+ ts.isBinaryExpression(unwrapped) &&
1242
+ unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
1243
+ ) {
1244
+ // Track if we're creating the chain at this level (root of the chain)
1245
+ const isChainRoot = !chainInfo;
1246
+
1247
+ // If no chainInfo, this is the root of a new chain
1248
+ if (isChainRoot) {
1249
+ const chainLength = countConditionsInAndChain(unwrapped);
1250
+ // Only create chain tracking for chains with 2+ conditions
1251
+ if (chainLength >= 2) {
1252
+ const chainId = `chain_${crypto.randomUUID().slice(0, 8)}`;
1253
+ const chainExpression = unwrapped.getText(context.sourceFile);
1254
+ const compound: CompoundConditional = {
1255
+ chainId,
1256
+ expression:
1257
+ chainExpression.length > 200
1258
+ ? chainExpression.slice(0, 200) + '...'
1259
+ : chainExpression,
1260
+ conditions: [],
1261
+ location,
1262
+ sourceLocation: getSourceLocation(unwrapped, context.sourceFile),
1263
+ controlsJsxRendering,
1264
+ };
1265
+ chainInfo = {
1266
+ chainId,
1267
+ chainLength,
1268
+ chainExpression: compound.expression,
1269
+ currentPosition: 0,
1270
+ compound,
1271
+ };
1272
+ }
1273
+ }
89
1274
 
90
- // Handle binary expressions with && (logical AND chains)
91
- // Example: `a && b && <Component />` - both a and b are conditional checks
92
- if (
93
- ts.isBinaryExpression(unwrapped) &&
94
- unwrapped.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken
95
- ) {
96
- // Recursively process left side
97
- extractConditionalUsage(unwrapped.left, context, location);
1275
+ // Recursively process left side
1276
+ extractWithChainTracking(unwrapped.left, chainInfo, false);
98
1277
 
99
- // Process right side if it's not JSX (JSX is the consequence, not the condition)
100
- const rightUnwrapped = unwrapExpression(unwrapped.right);
101
- const isJsxConsequence =
102
- ts.isJsxElement(rightUnwrapped) ||
103
- ts.isJsxSelfClosingElement(rightUnwrapped) ||
104
- ts.isJsxFragment(rightUnwrapped);
1278
+ // Process right side if it's not JSX (JSX is the consequence, not the condition)
1279
+ const rightUnwrapped = unwrapExpression(unwrapped.right);
1280
+ const isJsxConsequence =
1281
+ ts.isJsxElement(rightUnwrapped) ||
1282
+ ts.isJsxSelfClosingElement(rightUnwrapped) ||
1283
+ ts.isJsxFragment(rightUnwrapped);
105
1284
 
106
- if (!isJsxConsequence) {
107
- extractConditionalUsage(unwrapped.right, context, location);
1285
+ if (!isJsxConsequence) {
1286
+ extractWithChainTracking(unwrapped.right, chainInfo, false);
1287
+ }
1288
+
1289
+ // If this is the root of the chain, register the compound conditional
1290
+ if (isChainRoot && chainInfo) {
1291
+ context.addCompoundConditional(chainInfo.compound);
1292
+ }
1293
+ return;
108
1294
  }
109
- return;
110
- }
111
1295
 
112
- // Handle binary expressions with || (logical OR)
113
- if (
114
- ts.isBinaryExpression(unwrapped) &&
115
- unwrapped.operatorToken.kind === ts.SyntaxKind.BarBarToken
116
- ) {
117
- // Both sides of || are conditional checks
118
- extractConditionalUsage(unwrapped.left, context, location);
119
- extractConditionalUsage(unwrapped.right, context, location);
120
- return;
121
- }
1296
+ // Handle binary expressions with || (logical OR)
1297
+ // When OR is inside an && chain, we need to continue chain tracking
1298
+ // and mark conditions as OR alternatives
1299
+ if (
1300
+ ts.isBinaryExpression(unwrapped) &&
1301
+ unwrapped.operatorToken.kind === ts.SyntaxKind.BarBarToken
1302
+ ) {
1303
+ if (chainInfo) {
1304
+ // We're inside an && chain - continue tracking but mark as OR alternatives
1305
+ // Generate an orGroupId so conditions from both sides can be grouped
1306
+ const orGroupId =
1307
+ chainInfo.currentOrGroupId ?? `or_${crypto.randomUUID().slice(0, 8)}`;
1308
+
1309
+ // Process left side with OR group tracking
1310
+ const leftChainInfo = {
1311
+ ...chainInfo,
1312
+ currentOrGroupId: orGroupId,
1313
+ };
1314
+ extractWithChainTracking(unwrapped.left, leftChainInfo, false);
1315
+
1316
+ // Process right side with same OR group
1317
+ // Note: we use leftChainInfo's currentPosition which may have been updated
1318
+ const rightChainInfo = {
1319
+ ...leftChainInfo,
1320
+ currentPosition: chainInfo.currentPosition,
1321
+ };
1322
+ extractWithChainTracking(unwrapped.right, rightChainInfo, false);
1323
+ } else {
1324
+ // Not inside a chain - OR breaks into independent conditional checks
1325
+ extractWithChainTracking(unwrapped.left, null, false);
1326
+ extractWithChainTracking(unwrapped.right, null, false);
1327
+ }
1328
+ return;
1329
+ }
122
1330
 
123
- // Handle comparison operators (===, !==, <, >, <=, >=)
124
- // Example: `if (status === 'active')` - status is compared against 'active'
125
- if (
126
- ts.isBinaryExpression(unwrapped) &&
127
- isComparisonOperator(unwrapped.operatorToken.kind)
128
- ) {
129
- // Try to extract the variable and the compared value
130
- const leftPath = StructuredPath.fromNode(
131
- unwrapped.left,
132
- context.sourceFile,
133
- );
134
- const rightPath = StructuredPath.fromNode(
135
- unwrapped.right,
136
- context.sourceFile,
137
- );
1331
+ // Handle comparison operators (===, !==, <, >, <=, >=)
1332
+ // Example: `if (status === 'active')` - status is compared against 'active'
1333
+ if (
1334
+ ts.isBinaryExpression(unwrapped) &&
1335
+ isComparisonOperator(unwrapped.operatorToken.kind)
1336
+ ) {
1337
+ // Try to extract the variable and the compared value
1338
+ const leftPath = StructuredPath.fromNode(
1339
+ unwrapped.left,
1340
+ context.sourceFile,
1341
+ );
1342
+ const rightPath = StructuredPath.fromNode(
1343
+ unwrapped.right,
1344
+ context.sourceFile,
1345
+ );
138
1346
 
139
- // Check if left is a variable and right is a literal
140
- if (leftPath && isLiteralExpression(unwrapped.right)) {
141
- const literalValue = getLiteralValue(unwrapped.right, context);
142
- context.addConditionalUsage({
143
- path: leftPath.toLeftHandSideString(),
144
- conditionType: 'comparison',
145
- comparedValues: literalValue !== undefined ? [literalValue] : undefined,
146
- location,
147
- });
1347
+ // Determine the compared value for computing requiredValue
1348
+ const getRequiredValue = (
1349
+ literalValue: string | undefined,
1350
+ isNegatedComparison: boolean,
1351
+ ): string | boolean | undefined => {
1352
+ if (literalValue === undefined) return undefined;
1353
+ // For !== comparisons, the condition is true when NOT equal to the value
1354
+ // For === comparisons, the condition is true when equal to the value
1355
+ const isNotEqual =
1356
+ unwrapped.operatorToken.kind ===
1357
+ ts.SyntaxKind.ExclamationEqualsEqualsToken ||
1358
+ unwrapped.operatorToken.kind === ts.SyntaxKind.ExclamationEqualsToken;
1359
+ if (isNotEqual) {
1360
+ // !== 'value' means requiredValue is NOT 'value', but we express this as "not 'value'"
1361
+ return `not ${literalValue}`;
1362
+ }
1363
+ return literalValue;
1364
+ };
1365
+
1366
+ // Get the comparison operator string for the compound condition
1367
+ const comparisonOperator = getComparisonOperatorString(
1368
+ unwrapped.operatorToken.kind,
1369
+ );
1370
+
1371
+ // Helper to add a condition
1372
+ const addCondition = (
1373
+ path: string,
1374
+ conditionType: 'comparison' | 'truthiness',
1375
+ comparedValues?: string[],
1376
+ requiredValue?: string | boolean,
1377
+ sourceExpr?: ts.Expression,
1378
+ ) => {
1379
+ const usage: ConditionalUsage = {
1380
+ path,
1381
+ conditionType,
1382
+ comparedValues,
1383
+ location,
1384
+ sourceLocation: getSourceLocation(unwrapped, context.sourceFile),
1385
+ isNegated,
1386
+ controlsJsxRendering,
1387
+ };
1388
+
1389
+ // Check for inline array-derived patterns (.length) on the source expression
1390
+ if (sourceExpr) {
1391
+ const arrayDerived = detectArrayDerivedPattern(sourceExpr);
1392
+ if (arrayDerived) {
1393
+ usage.derivedFrom = {
1394
+ operation: arrayDerived.operation,
1395
+ sourcePath: arrayDerived.sourcePath,
1396
+ };
1397
+ }
1398
+ }
1399
+
1400
+ // Add chain info if part of a compound conditional
1401
+ if (chainInfo) {
1402
+ usage.chainId = chainInfo.chainId;
1403
+ usage.chainPosition = chainInfo.currentPosition;
1404
+ usage.chainLength = chainInfo.chainLength;
1405
+ usage.chainExpression = chainInfo.chainExpression;
1406
+ chainInfo.currentPosition++;
1407
+
1408
+ // Add to compound conditional conditions
1409
+ chainInfo.compound.conditions.push({
1410
+ path,
1411
+ conditionType,
1412
+ comparedValues,
1413
+ isNegated,
1414
+ requiredValue,
1415
+ ...(comparisonOperator && { comparisonOperator }),
1416
+ ...(chainInfo.currentOrGroupId && {
1417
+ orGroupId: chainInfo.currentOrGroupId,
1418
+ }),
1419
+ });
1420
+ }
1421
+
1422
+ context.addConditionalUsage(usage);
1423
+ };
1424
+
1425
+ // Check if left is a variable and right is a literal
1426
+ if (leftPath && isLiteralExpression(unwrapped.right)) {
1427
+ const literalValue = getLiteralValue(unwrapped.right, context);
1428
+ addCondition(
1429
+ leftPath.toLeftHandSideString(),
1430
+ 'comparison',
1431
+ literalValue !== undefined ? [literalValue] : undefined,
1432
+ getRequiredValue(literalValue, isNegated),
1433
+ unwrapped.left, // Pass source expression for array derivation detection
1434
+ );
1435
+ return;
1436
+ }
1437
+
1438
+ // Check if right is a variable and left is a literal
1439
+ if (rightPath && isLiteralExpression(unwrapped.left)) {
1440
+ const literalValue = getLiteralValue(unwrapped.left, context);
1441
+ addCondition(
1442
+ rightPath.toLeftHandSideString(),
1443
+ 'comparison',
1444
+ literalValue !== undefined ? [literalValue] : undefined,
1445
+ getRequiredValue(literalValue, isNegated),
1446
+ unwrapped.right, // Pass source expression for array derivation detection
1447
+ );
1448
+ return;
1449
+ }
1450
+
1451
+ // Both sides are variables - record both as comparisons without specific values
1452
+ if (leftPath) {
1453
+ addCondition(
1454
+ leftPath.toLeftHandSideString(),
1455
+ 'comparison',
1456
+ undefined,
1457
+ undefined,
1458
+ unwrapped.left,
1459
+ );
1460
+ }
1461
+ if (rightPath) {
1462
+ addCondition(
1463
+ rightPath.toLeftHandSideString(),
1464
+ 'comparison',
1465
+ undefined,
1466
+ undefined,
1467
+ unwrapped.right,
1468
+ );
1469
+ }
148
1470
  return;
149
1471
  }
150
1472
 
151
- // Check if right is a variable and left is a literal
152
- if (rightPath && isLiteralExpression(unwrapped.left)) {
153
- const literalValue = getLiteralValue(unwrapped.left, context);
154
- context.addConditionalUsage({
155
- path: rightPath.toLeftHandSideString(),
156
- conditionType: 'comparison',
157
- comparedValues: literalValue !== undefined ? [literalValue] : undefined,
158
- location,
159
- });
1473
+ // Handle prefix unary NOT expression: !variable
1474
+ // Example: `if (!isVisible)` - isVisible is a truthiness check (negated)
1475
+ if (
1476
+ ts.isPrefixUnaryExpression(unwrapped) &&
1477
+ unwrapped.operator === ts.SyntaxKind.ExclamationToken
1478
+ ) {
1479
+ extractWithChainTracking(unwrapped.operand, chainInfo, !isNegated);
160
1480
  return;
161
1481
  }
162
1482
 
163
- // Both sides are variables - record both as comparisons without specific values
164
- if (leftPath) {
165
- context.addConditionalUsage({
166
- path: leftPath.toLeftHandSideString(),
167
- conditionType: 'comparison',
168
- location,
169
- });
170
- }
171
- if (rightPath) {
172
- context.addConditionalUsage({
173
- path: rightPath.toLeftHandSideString(),
174
- conditionType: 'comparison',
1483
+ // Handle simple identifiers or property accesses (truthiness checks)
1484
+ // Example: `if (x)` or `x && <JSX />` - x is checked for truthiness
1485
+ const path = StructuredPath.fromNode(unwrapped, context.sourceFile);
1486
+ if (path && !path.isLiteral()) {
1487
+ const pathStr = path.toLeftHandSideString();
1488
+ const usage: ConditionalUsage = {
1489
+ path: pathStr,
1490
+ conditionType: 'truthiness',
175
1491
  location,
176
- });
177
- }
178
- return;
179
- }
1492
+ sourceLocation: getSourceLocation(unwrapped, context.sourceFile),
1493
+ isNegated,
1494
+ controlsJsxRendering,
1495
+ };
1496
+
1497
+ // Check for inline array-derived patterns (.some(), .every(), .includes(), .length)
1498
+ // This populates derivedFrom so downstream code can resolve to the base array path
1499
+ const arrayDerived = detectArrayDerivedPattern(unwrapped);
1500
+ if (arrayDerived) {
1501
+ usage.derivedFrom = {
1502
+ operation: arrayDerived.operation,
1503
+ sourcePath: arrayDerived.sourcePath,
1504
+ };
1505
+ }
180
1506
 
181
- // Handle prefix unary NOT expression: !variable
182
- // Example: `if (!isVisible)` - isVisible is a truthiness check
183
- if (
184
- ts.isPrefixUnaryExpression(unwrapped) &&
185
- unwrapped.operator === ts.SyntaxKind.ExclamationToken
186
- ) {
187
- extractConditionalUsage(unwrapped.operand, context, location);
188
- return;
189
- }
1507
+ // Add chain info if part of a compound conditional
1508
+ if (chainInfo) {
1509
+ usage.chainId = chainInfo.chainId;
1510
+ usage.chainPosition = chainInfo.currentPosition;
1511
+ usage.chainLength = chainInfo.chainLength;
1512
+ usage.chainExpression = chainInfo.chainExpression;
1513
+ chainInfo.currentPosition++;
1514
+
1515
+ // Add to compound conditional conditions
1516
+ // For truthiness, requiredValue is true if not negated, false if negated
1517
+ chainInfo.compound.conditions.push({
1518
+ path: pathStr,
1519
+ conditionType: 'truthiness',
1520
+ isNegated,
1521
+ requiredValue: !isNegated,
1522
+ ...(chainInfo.currentOrGroupId && {
1523
+ orGroupId: chainInfo.currentOrGroupId,
1524
+ }),
1525
+ });
1526
+ }
190
1527
 
191
- // Handle simple identifiers or property accesses (truthiness checks)
192
- // Example: `if (x)` or `x && <JSX />` - x is checked for truthiness
193
- const path = StructuredPath.fromNode(unwrapped, context.sourceFile);
194
- if (path && !path.isLiteral()) {
195
- context.addConditionalUsage({
196
- path: path.toLeftHandSideString(),
197
- conditionType: 'truthiness',
198
- location,
199
- });
1528
+ context.addConditionalUsage(usage);
1529
+ }
200
1530
  }
1531
+
1532
+ // Start extraction with no chain info
1533
+ extractWithChainTracking(condition, null, false);
201
1534
  }
202
1535
 
203
1536
  /**
@@ -300,7 +1633,28 @@ export function processExpression({
300
1633
  ) {
301
1634
  markConditionVariablesAsNullable(unwrappedNode, context);
302
1635
  // Extract conditional usages for key attribute detection
303
- extractConditionalUsage(unwrappedNode, context, 'logical-and');
1636
+ // Only call from the OUTERMOST && expression to avoid duplicates
1637
+ // Check if parent is also a && (meaning we're nested)
1638
+ const parent = unwrappedNode.parent;
1639
+ const parentIsAndChain =
1640
+ parent &&
1641
+ ts.isBinaryExpression(parent) &&
1642
+ parent.operatorToken.kind === ts.SyntaxKind.AmpersandAmpersandToken;
1643
+ if (!parentIsAndChain) {
1644
+ extractConditionalUsage(unwrappedNode, context, 'logical-and');
1645
+ }
1646
+ }
1647
+
1648
+ // CRITICAL: Extract conditionals from JSX BEFORE checking child boundaries
1649
+ // JSX elements are NOT scopes - their expressions use variables from the parent scope.
1650
+ // Even if the JSX element is within a child boundary (e.g., because it contains callbacks),
1651
+ // we must still extract conditionals from JSX expression children like {x && <div>...</div>}
1652
+ if (
1653
+ ts.isJsxElement(unwrappedNode) ||
1654
+ ts.isJsxSelfClosingElement(unwrappedNode) ||
1655
+ ts.isJsxFragment(unwrappedNode)
1656
+ ) {
1657
+ extractConditionalsFromJsx(unwrappedNode, context);
304
1658
  }
305
1659
 
306
1660
  // If the node falls within an excluded child scope, stop processing it.
@@ -326,6 +1680,52 @@ export function processExpression({
326
1680
  if (targetPath) {
327
1681
  context.addEquivalence(targetPath, nodePath);
328
1682
  context.addType(targetPath, inferredNodeType);
1683
+
1684
+ // Propagate sub-properties from the identifier to the targetPath
1685
+ // This handles cases like: dataItem={{ structure: completeDataStructure }}
1686
+ // where completeDataStructure was defined as { 'Function Arguments': dataStructure.arguments }
1687
+ // We need to propagate completeDataStructure['Function Arguments'] to
1688
+ // ChildComponent().signature[0].dataItem.structure['Function Arguments']
1689
+ const nodePathStr = nodePath.toString();
1690
+ const equivalentVariables = context.getEquivalentVariables();
1691
+ const structure = context.getStructure();
1692
+
1693
+ // Propagate existing equivalencies for sub-properties
1694
+ for (const [key, rawValue] of Object.entries(equivalentVariables)) {
1695
+ // Check if this equivalency is for a sub-property of the identifier
1696
+ // e.g., completeDataStructure['Function Arguments'] or completeDataStructure.foo
1697
+ if (
1698
+ key.startsWith(nodePathStr + '.') ||
1699
+ key.startsWith(nodePathStr + '[')
1700
+ ) {
1701
+ const subPath = key.substring(nodePathStr.length);
1702
+ const newTargetPath = StructuredPath.fromBase(
1703
+ targetPath.toString() + subPath,
1704
+ );
1705
+ // Handle both string and string[] values
1706
+ const values = Array.isArray(rawValue) ? rawValue : [rawValue];
1707
+ for (const value of values) {
1708
+ if (typeof value === 'string') {
1709
+ const valuePath = StructuredPath.fromBase(value);
1710
+ context.addEquivalence(newTargetPath, valuePath);
1711
+ }
1712
+ }
1713
+ }
1714
+ }
1715
+
1716
+ // Propagate existing structure entries for sub-properties
1717
+ for (const [key, value] of Object.entries(structure)) {
1718
+ if (
1719
+ key.startsWith(nodePathStr + '.') ||
1720
+ key.startsWith(nodePathStr + '[')
1721
+ ) {
1722
+ const subPath = key.substring(nodePathStr.length);
1723
+ const newTargetPath = StructuredPath.fromBase(
1724
+ targetPath.toString() + subPath,
1725
+ );
1726
+ context.addType(newTargetPath, value);
1727
+ }
1728
+ }
329
1729
  }
330
1730
  context.addType(nodePath, inferredNodeType);
331
1731
  return true;
@@ -454,7 +1854,8 @@ export function processExpression({
454
1854
  // Check if this is an environment variable access
455
1855
  const fullText = unwrappedNode.getText(context.sourceFile);
456
1856
  if (
457
- fullText.includes('.env.') // simple heuristic for env var access but not great
1857
+ fullText.includes('.env.') || // process.env.X, window.env.X
1858
+ isEnvStoreAccess(fullText) // env.X where env is likely an env config object
458
1859
  ) {
459
1860
  context.addEnvironmentVariable(fullText);
460
1861
  }
@@ -756,8 +2157,19 @@ export function processExpression({
756
2157
  } else {
757
2158
  resultType = rightType || 'unknown';
758
2159
  }
2160
+ // For || and ??, create an equivalence to the left side
2161
+ // This ensures the equivalency chain is preserved through fallback expressions
2162
+ // e.g., `const tab = segments[0] || 'default'` should trace tab back to segments[0]
759
2163
  if (operatorKind === ts.SyntaxKind.QuestionQuestionToken) {
760
2164
  // specifically for ?? we create an equivalence to the left side
2165
+ // IMPORTANT: Also process the left side recursively to apply method semantics
2166
+ // (e.g., for `const segments = splat?.split('/') ?? []`, we need split semantics)
2167
+ processExpression({
2168
+ node: unwrappedNode.left,
2169
+ context,
2170
+ // Don't pass targetPath here - we'll establish equivalence separately below
2171
+ });
2172
+
761
2173
  if (targetPath) {
762
2174
  resultPath = StructuredPath.fromNode(
763
2175
  unwrappedNode.left,
@@ -774,6 +2186,57 @@ export function processExpression({
774
2186
  context.sourceFile,
775
2187
  );
776
2188
  }
2189
+ } else if (operatorKind === ts.SyntaxKind.BarBarToken) {
2190
+ // For ||, create equivalences to BOTH sides
2191
+ // This enables data flow tracing through fallback expressions
2192
+ // e.g., `const item = items.find(...) || null` should trace to both:
2193
+ // - items[] (from the find result)
2194
+ // - null (from the fallback)
2195
+ if (targetPath) {
2196
+ // Get paths for both sides
2197
+ const leftPath = StructuredPath.fromNode(
2198
+ unwrappedNode.left,
2199
+ context.sourceFile,
2200
+ );
2201
+ const rightPath = StructuredPath.fromNode(
2202
+ unwrappedNode.right,
2203
+ context.sourceFile,
2204
+ );
2205
+
2206
+ // Collect all valid paths
2207
+ const allPaths: StructuredPath[] = [];
2208
+ if (leftPath) allPaths.push(leftPath);
2209
+ if (rightPath) allPaths.push(rightPath);
2210
+
2211
+ // Add multiple equivalencies to track both sources
2212
+ if (allPaths.length > 0) {
2213
+ context.addMultipleEquivalencies(targetPath, allPaths);
2214
+ }
2215
+
2216
+ // Process both sides to capture their internal structures
2217
+ processExpression({
2218
+ node: unwrappedNode.left,
2219
+ context,
2220
+ });
2221
+ processExpression({
2222
+ node: unwrappedNode.right,
2223
+ context,
2224
+ });
2225
+
2226
+ // Register the type for the target path
2227
+ const leftType = context.inferTypeFromNode(unwrappedNode.left);
2228
+ const rightType = context.inferTypeFromNode(unwrappedNode.right);
2229
+ const orResultType = isDefinedType(leftType)
2230
+ ? leftType
2231
+ : rightType || 'unknown';
2232
+ context.addType(targetPath, orResultType);
2233
+
2234
+ // Return early - we've already handled equivalencies with addMultipleEquivalencies
2235
+ // Don't fall through to the generic addEquivalence call below
2236
+ return true;
2237
+ }
2238
+ // Note: When there's no targetPath, we don't recursively process
2239
+ // because || is often used in boolean contexts where the full expression matters
777
2240
  }
778
2241
  } else if (operatorKind === ts.SyntaxKind.InstanceOfKeyword) {
779
2242
  resultType = 'boolean';
@@ -835,9 +2298,10 @@ export function processExpression({
835
2298
  return false;
836
2299
  }
837
2300
 
838
- // Construct empty arguments list just to get the call path
839
- // We'll process each argument with its parameter path as targetPath
840
- const callPath = StructuredPath.fromNode(unwrappedNode, context.sourceFile);
2301
+ // Build call path using original source text for consistent schema paths.
2302
+ // IMPORTANT: Never use cyScope names in call paths - they are internal identifiers
2303
+ // that should not appear in schema paths or call signatures.
2304
+ const callPath = buildCallPathFromSource(unwrappedNode, context);
841
2305
 
842
2306
  // 2. Process all arguments recursively WITH targetPath for proper equivalence
843
2307
  for (let i = 0; i < unwrappedNode.arguments.length; i++) {
@@ -879,16 +2343,57 @@ export function processExpression({
879
2343
 
880
2344
  // Get the source expression path (e.g., the object for obj.method())
881
2345
  const sourceExpr = unwrappedNode.expression.expression;
882
- const sourcePath = StructuredPath.fromNode(
883
- sourceExpr,
884
- context.sourceFile,
885
- );
2346
+ const unwrappedSourceExpr = unwrapExpression(sourceExpr);
2347
+
2348
+ // When the source is a ternary expression like (cond ? arr : arr.slice()),
2349
+ // apply method semantics to BOTH branches directly. The ternary itself isn't
2350
+ // a variable - it's just a choice between two paths that both flow to the result.
2351
+ if (ts.isConditionalExpression(unwrappedSourceExpr)) {
2352
+ const branches = [
2353
+ unwrappedSourceExpr.whenTrue,
2354
+ unwrappedSourceExpr.whenFalse,
2355
+ ];
2356
+
2357
+ for (const branch of branches) {
2358
+ const branchPath = StructuredPath.fromNode(
2359
+ branch,
2360
+ context.sourceFile,
2361
+ );
2362
+ if (branchPath) {
2363
+ const isArraySemantics = semantics instanceof ArrayPushSemantics;
2364
+ const shouldApply =
2365
+ !isArraySemantics ||
2366
+ isLikelyArrayType(branch, context.typeChecker);
2367
+
2368
+ if (shouldApply) {
2369
+ semantics.addEquivalences(callPath, branchPath, context);
2370
+ returnType = semantics.getReturnType();
2371
+ handledBySemantics = true;
2372
+ }
2373
+ }
2374
+ }
2375
+ } else {
2376
+ // Regular (non-ternary) source expression
2377
+ const sourcePath = StructuredPath.fromNode(
2378
+ sourceExpr,
2379
+ context.sourceFile,
2380
+ );
886
2381
 
887
- if (sourcePath) {
888
- // Apply method semantics
889
- semantics.addEquivalences(callPath, sourcePath, context);
890
- returnType = semantics.getReturnType();
891
- handledBySemantics = true;
2382
+ if (sourcePath) {
2383
+ // For array-specific semantics (like push), verify the source is actually an array
2384
+ // This prevents router.push() from being mistakenly treated as Array.push()
2385
+ const isArraySemantics = semantics instanceof ArrayPushSemantics;
2386
+ const shouldApply =
2387
+ !isArraySemantics ||
2388
+ isLikelyArrayType(sourceExpr, context.typeChecker);
2389
+
2390
+ if (shouldApply) {
2391
+ // Apply method semantics
2392
+ semantics.addEquivalences(callPath, sourcePath, context);
2393
+ returnType = semantics.getReturnType();
2394
+ handledBySemantics = true;
2395
+ }
2396
+ }
892
2397
  }
893
2398
  }
894
2399
  }
@@ -911,10 +2416,18 @@ export function processExpression({
911
2416
  );
912
2417
 
913
2418
  if (sourcePath) {
914
- // Apply method semantics
915
- semantics.addEquivalences(callPath, sourcePath, context);
916
- returnType = semantics.getReturnType();
917
- handledBySemantics = true;
2419
+ // For array-specific semantics (like push), verify the source is actually an array
2420
+ const isArraySemantics = semantics instanceof ArrayPushSemantics;
2421
+ const shouldApply =
2422
+ !isArraySemantics ||
2423
+ isLikelyArrayType(sourceExpr, context.typeChecker);
2424
+
2425
+ if (shouldApply) {
2426
+ // Apply method semantics
2427
+ semantics.addEquivalences(callPath, sourcePath, context);
2428
+ returnType = semantics.getReturnType();
2429
+ handledBySemantics = true;
2430
+ }
918
2431
  }
919
2432
  }
920
2433
  }
@@ -987,6 +2500,13 @@ export function processExpression({
987
2500
  // Create a path for this property within the base
988
2501
  const propPath = targetPath.withProperty(propName);
989
2502
 
2503
+ // Handle child boundaries (callback functions) in object properties
2504
+ // This establishes equivalency between the property path and the child scope
2505
+ // e.g., columns[0].renderCell → cyScope1()
2506
+ if (context.isChildBoundary(property.initializer)) {
2507
+ context.addChildBoundaryEquivalence(propPath, property.initializer);
2508
+ }
2509
+
990
2510
  // Process the property value with propPath as targetPath
991
2511
  // This allows nested object literals to work correctly
992
2512
  processExpression({
@@ -1009,24 +2529,27 @@ export function processExpression({
1009
2529
  context.addType(valuePath, valueType);
1010
2530
  } else if (ts.isSpreadAssignment(property)) {
1011
2531
  // Handle spread: { ...obj }
1012
- // Process the spread expression first (without targetPath for now)
1013
- processExpression({ node: property.expression, context });
1014
-
1015
2532
  // Create a path for this spread source
1016
2533
  let spreadSourcePath: StructuredPath | null = null;
1017
2534
 
1018
2535
  // Handle simple identifier spread: { ...obj }
1019
2536
  if (ts.isIdentifier(property.expression)) {
2537
+ // Process the spread expression first
2538
+ processExpression({ node: property.expression, context });
2539
+
1020
2540
  spreadSourcePath = StructuredPath.fromBase(
1021
2541
  property.expression.text,
1022
2542
  );
1023
2543
  // Establish equivalence between the target and the spread source
1024
2544
  context.addEquivalence(targetPath, spreadSourcePath);
1025
- // and we kow obj is an object
2545
+ // and we know obj is an object
1026
2546
  context.addType(spreadSourcePath, 'object');
1027
2547
  }
1028
2548
  // Handle property access spread: { ...obj.prop }
1029
2549
  else if (ts.isPropertyAccessExpression(property.expression)) {
2550
+ // Process the spread expression first
2551
+ processExpression({ node: property.expression, context });
2552
+
1030
2553
  spreadSourcePath = StructuredPath.fromNode(
1031
2554
  property.expression,
1032
2555
  context.sourceFile,
@@ -1035,8 +2558,55 @@ export function processExpression({
1035
2558
  context.addEquivalence(targetPath, spreadSourcePath);
1036
2559
  }
1037
2560
  }
2561
+ // Handle object literal spread: { ...{ key: value } }
2562
+ // This propagates sub-properties from the spread object to the target
2563
+ else if (ts.isObjectLiteralExpression(property.expression)) {
2564
+ // Recursively process the spread object literal WITH targetPath
2565
+ // This ensures sub-properties like { args: x } become targetPath.args = x
2566
+ processExpression({
2567
+ node: property.expression,
2568
+ context,
2569
+ targetPath,
2570
+ });
2571
+ }
2572
+ // Handle conditional spread: { ...(x ? {...} : {}) }
2573
+ else if (ts.isParenthesizedExpression(property.expression)) {
2574
+ // Unwrap parentheses and process
2575
+ const unwrapped = property.expression.expression;
2576
+
2577
+ // Handle conditional expression inside parens: (x ? {...} : {})
2578
+ if (ts.isConditionalExpression(unwrapped)) {
2579
+ // Process both branches - whenTrue and whenFalse
2580
+ // For tracing, we care about non-empty branches
2581
+ if (ts.isObjectLiteralExpression(unwrapped.whenTrue)) {
2582
+ processExpression({
2583
+ node: unwrapped.whenTrue,
2584
+ context,
2585
+ targetPath,
2586
+ });
2587
+ } else {
2588
+ processExpression({ node: unwrapped.whenTrue, context });
2589
+ }
2590
+
2591
+ if (ts.isObjectLiteralExpression(unwrapped.whenFalse)) {
2592
+ processExpression({
2593
+ node: unwrapped.whenFalse,
2594
+ context,
2595
+ targetPath,
2596
+ });
2597
+ } else {
2598
+ processExpression({ node: unwrapped.whenFalse, context });
2599
+ }
2600
+ } else {
2601
+ // Other parenthesized expression - just process normally
2602
+ processExpression({ node: property.expression, context });
2603
+ }
2604
+ }
1038
2605
  // Handle other expression types
1039
2606
  else {
2607
+ // Process the spread expression
2608
+ processExpression({ node: property.expression, context });
2609
+
1040
2610
  // For complex expressions, use their source representation
1041
2611
  spreadSourcePath = nodeToSource(
1042
2612
  property.expression,
@@ -1236,14 +2806,30 @@ export function processExpression({
1236
2806
  // Extract conditional usages for key attribute detection
1237
2807
  extractConditionalUsage(unwrappedNode.condition, context, 'ternary');
1238
2808
 
2809
+ // Extract conditional effects (setter calls in ternary branches)
2810
+ const knownSetters = findUseStateSetters(context.sourceFile);
2811
+ const effects = extractConditionalEffectsFromTernary(
2812
+ unwrappedNode,
2813
+ context,
2814
+ knownSetters,
2815
+ );
2816
+ for (const effect of effects) {
2817
+ context.addConditionalEffect(effect);
2818
+ }
2819
+
1239
2820
  // Process all parts recursively
1240
2821
  processExpression({
1241
2822
  node: unwrappedNode.condition,
1242
2823
  context,
1243
2824
  typeHint: 'boolean | unknown',
1244
2825
  }); //TODO: could we capture that this is evidence of a boolean type?
1245
- processExpression({ node: unwrappedNode.whenTrue, context });
1246
- processExpression({ node: unwrappedNode.whenFalse, context });
2826
+
2827
+ // Process both branches WITH targetPath to establish equivalencies
2828
+ // This is critical for tracing nested properties through ternary assignments
2829
+ // e.g., const items = condition ? arr1 : arr2; items.map(i => i.prop)
2830
+ // We need items to be equivalent to both arr1 AND arr2 for proper tracing
2831
+ processExpression({ node: unwrappedNode.whenTrue, context, targetPath });
2832
+ processExpression({ node: unwrappedNode.whenFalse, context, targetPath });
1247
2833
 
1248
2834
  // Create a path for the whole expression
1249
2835
  const expressionSourcePath = nodeToSource(
@@ -1266,10 +2852,22 @@ export function processExpression({
1266
2852
  // Register type for the expression
1267
2853
  context.addType(expressionSourcePath, resultType);
1268
2854
 
1269
- // If targetPath is provided, establish equivalence and register type
2855
+ // If targetPath is provided, only register type (don't overwrite branch equivalencies)
2856
+ // The equivalencies to individual branches (set above) are more useful for tracing
2857
+ // than an equivalency to the entire ternary expression text
1270
2858
  if (targetPath) {
1271
- context.addEquivalence(targetPath, expressionSourcePath);
1272
- context.addType(targetPath, resultType);
2859
+ // NOTE: We intentionally do NOT add equivalence here.
2860
+ // The branch processing above already added equivalencies:
2861
+ // targetPath -> whenTrue branch
2862
+ // targetPath -> whenFalse branch
2863
+ // Adding an equivalence to expressionSourcePath would overwrite those
2864
+ // with a useless equivalence to the ternary text itself.
2865
+ //
2866
+ // Use updateSchemaType instead of addType because:
2867
+ // 1. Branch processing may have already set a type on targetPath
2868
+ // 2. addType has a guard that prevents overwriting specific types with 'unknown'
2869
+ // 3. updateSchemaType bypasses this guard, ensuring the ternary's computed type is used
2870
+ context.updateSchemaType(targetPath, resultType);
1273
2871
  }
1274
2872
 
1275
2873
  return true;
@@ -1352,6 +2950,35 @@ export function processExpression({
1352
2950
 
1353
2951
  // Handle Arrow Functions: (p) => p.prop, (a, b) => { ... }
1354
2952
  if (ts.isArrowFunction(unwrappedNode)) {
2953
+ // If this arrow function is a child boundary (e.g., a .map() callback),
2954
+ // don't process its parameters here - they will be processed when the
2955
+ // child scope is analyzed separately. This prevents parameter variables
2956
+ // from leaking into the parent scope's equivalencies.
2957
+ // Check if this arrow function is a child boundary (i.e., should be processed
2958
+ // as a separate child scope, not here in the parent scope).
2959
+ //
2960
+ // We use two checks because childBoundary positions can be unreliable:
2961
+ // 1. Position-based check (standard isChildBoundary)
2962
+ // 2. Text-based check: if the arrow function text doesn't appear in the
2963
+ // statement text, it was replaced with a cyScope placeholder
2964
+ const isChildBoundary = context.isChildBoundary(unwrappedNode);
2965
+
2966
+ // Text-based child scope detection for when positions are unreliable
2967
+ const arrowFnText = unwrappedNode.getText(context.sourceFile);
2968
+ const firstLine = arrowFnText.split('\n')[0].trim();
2969
+ const searchText = firstLine.substring(0, Math.min(20, firstLine.length));
2970
+ const isInStatementText = context.statementInfo.text.includes(searchText);
2971
+ const isChildScope = !isInStatementText && arrowFnText.length > 10;
2972
+
2973
+ if (isChildBoundary || isChildScope) {
2974
+ // The method semantics (e.g., ArrayMapSemantics) have already established
2975
+ // the necessary equivalences between the child scope placeholder and array elements
2976
+ if (targetPath) {
2977
+ context.addType(targetPath, 'function');
2978
+ }
2979
+ return true;
2980
+ }
2981
+
1355
2982
  // Create a path for the function
1356
2983
  const functionPath = StructuredPath.empty();
1357
2984
 
@@ -1563,6 +3190,24 @@ export function processExpression({
1563
3190
  return true;
1564
3191
  }
1565
3192
 
3193
+ // Handle Void Expression: void x, void 0, void func()
3194
+ if (ts.isVoidExpression(unwrappedNode)) {
3195
+ // Process the inner expression for side effects
3196
+ processExpression({ node: unwrappedNode.expression, context });
3197
+
3198
+ // void always returns undefined
3199
+ if (targetPath) {
3200
+ const voidPath = StructuredPath.createLiteralPath(
3201
+ 'undefined',
3202
+ 'undefined',
3203
+ );
3204
+ context.addEquivalence(targetPath, voidPath);
3205
+ context.addType(targetPath, 'undefined');
3206
+ }
3207
+
3208
+ return true;
3209
+ }
3210
+
1566
3211
  // Handle Prefix Unary Expressions: ++x, --y, !z, -a
1567
3212
  if (ts.isPrefixUnaryExpression(unwrappedNode)) {
1568
3213
  // Process the operand
@@ -1764,6 +3409,19 @@ export function processExpression({
1764
3409
  for (const child of unwrappedNode.children) {
1765
3410
  // Process expressions in JSX children: <div>{expr}</div>
1766
3411
  if (ts.isJsxExpression(child) && child.expression) {
3412
+ // When processing return value JSX, link root variables to return value schema
3413
+ if (targetPath && targetPath.base !== '') {
3414
+ const varNames = [
3415
+ ...new Set(extractRootVariableNames(child.expression)),
3416
+ ];
3417
+ for (const varName of varNames) {
3418
+ context.addEquivalence(
3419
+ targetPath.withProperty(varName),
3420
+ StructuredPath.fromBase(varName),
3421
+ );
3422
+ }
3423
+ }
3424
+
1767
3425
  // Process the expression with StructuredPath.empty() as targetPath
1768
3426
  // to trigger type registration without imposing prefix
1769
3427
  processExpression({
@@ -1779,8 +3437,9 @@ export function processExpression({
1779
3437
  }
1780
3438
  }
1781
3439
 
1782
- // Register component as 'function' type (not 'JSX')
1783
- context.addType(componentPath, 'function');
3440
+ // Register component as 'jsx-component' type to distinguish from regular function calls
3441
+ // This allows downstream code to identify JSX components and not treat them as method chains
3442
+ context.addType(componentPath, 'jsx-component');
1784
3443
 
1785
3444
  // If targetPath is provided (e.g., in variable assignment), establish equivalence to hardcoded "JSX"
1786
3445
  if (targetPath) {
@@ -1797,6 +3456,19 @@ export function processExpression({
1797
3456
  for (const child of unwrappedNode.children) {
1798
3457
  // Process expressions in JSX children: <>{expr}</>
1799
3458
  if (ts.isJsxExpression(child) && child.expression) {
3459
+ // When processing return value JSX, link root variables to return value schema
3460
+ if (targetPath && targetPath.base !== '') {
3461
+ const varNames = [
3462
+ ...new Set(extractRootVariableNames(child.expression)),
3463
+ ];
3464
+ for (const varName of varNames) {
3465
+ context.addEquivalence(
3466
+ targetPath.withProperty(varName),
3467
+ StructuredPath.fromBase(varName),
3468
+ );
3469
+ }
3470
+ }
3471
+
1800
3472
  // Process the expression to extract structure
1801
3473
  processExpression({
1802
3474
  node: child.expression,
@@ -1960,6 +3632,25 @@ export function processExpression({
1960
3632
  return result;
1961
3633
  }
1962
3634
 
3635
+ // Handle yield expressions in generator functions
3636
+ if (ts.isYieldExpression(unwrappedNode)) {
3637
+ // yield returns whatever is yielded, or undefined if no expression
3638
+ if (unwrappedNode.expression) {
3639
+ // Process the yielded expression
3640
+ const result = processExpression({
3641
+ node: unwrappedNode.expression,
3642
+ context,
3643
+ targetPath,
3644
+ });
3645
+ return result;
3646
+ }
3647
+ // yield with no expression returns undefined
3648
+ if (targetPath) {
3649
+ context.addType(targetPath, 'undefined');
3650
+ }
3651
+ return true;
3652
+ }
3653
+
1963
3654
  if (ts.isRegularExpressionLiteral(unwrappedNode)) {
1964
3655
  // Regular expressions are treated as string literals
1965
3656
  const regexPath = StructuredPath.createLiteralPath(
@@ -2032,6 +3723,9 @@ function processJsxAttribute(
2032
3723
  if (ts.isJsxExpression(attr.initializer) && attr.initializer.expression) {
2033
3724
  const expression = attr.initializer.expression;
2034
3725
  if (context.isChildBoundary(expression)) {
3726
+ // Create equivalency between attribute path and child scope
3727
+ // e.g., Grid().signature[0].renderRow → cyScope1()
3728
+ context.addChildBoundaryEquivalence(attributePath, expression);
2035
3729
  return true;
2036
3730
  }
2037
3731