@codeyam/codeyam-cli 0.1.0-staging.da5baf5 → 0.1.0-staging.dbc742d

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 (2593) 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 +39 -34
  5. package/analyzer-template/packages/ai/index.ts +25 -6
  6. package/analyzer-template/packages/ai/package.json +5 -5
  7. package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
  8. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +256 -14
  9. package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
  10. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +273 -27
  11. package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
  12. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +232 -23
  13. package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +14 -1
  14. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  15. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
  16. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +48 -2
  17. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
  18. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1721 -150
  19. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  20. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +328 -5
  21. package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +29 -10
  22. package/analyzer-template/packages/ai/src/lib/completionCall.ts +247 -66
  23. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +2953 -268
  24. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.ts +37 -7
  25. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +21 -4
  26. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
  27. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +249 -81
  28. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +16 -3
  29. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +6 -4
  30. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +71 -2
  31. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +229 -21
  32. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  33. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.ts +62 -0
  34. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +166 -17
  35. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
  36. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  37. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  38. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +441 -82
  39. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
  40. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.ts +33 -3
  41. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.ts +35 -0
  42. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +183 -0
  43. package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
  44. package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
  45. package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
  46. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +80 -10
  47. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +90 -111
  48. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +70 -7
  49. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1497 -78
  50. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +216 -109
  51. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +677 -0
  52. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
  53. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +2484 -0
  54. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
  55. package/analyzer-template/packages/ai/src/lib/generateStatementAnalysis.ts +1 -1
  56. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +143 -31
  57. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  58. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +328 -7
  59. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  60. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +135 -7
  61. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  62. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +108 -27
  63. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +1 -1
  64. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +33 -90
  65. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
  66. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
  67. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +110 -6
  68. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +14 -47
  69. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
  70. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  71. package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
  72. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +824 -0
  73. package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
  74. package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
  75. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +133 -3
  76. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +121 -2
  77. package/analyzer-template/packages/analyze/index.ts +2 -0
  78. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +212 -48
  79. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +132 -33
  80. package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
  81. package/analyzer-template/packages/analyze/src/lib/asts/index.ts +7 -2
  82. package/analyzer-template/packages/analyze/src/lib/asts/nodes/getNodeType.ts +2 -1
  83. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +3 -1
  84. package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
  85. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  86. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  87. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.ts +4 -2
  88. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +49 -9
  89. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  90. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  91. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  92. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +757 -146
  93. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +63 -2
  94. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +16 -1
  95. package/analyzer-template/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.ts +1 -1
  96. package/analyzer-template/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.ts +1 -1
  97. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +20 -10
  98. package/analyzer-template/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.ts +1 -1
  99. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +5 -13
  100. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -10
  101. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +32 -16
  102. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +12 -8
  103. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +12 -13
  104. package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +1 -1
  105. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +26 -39
  106. package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
  107. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +135 -16
  108. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1352 -0
  109. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +313 -0
  110. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
  111. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +837 -99
  112. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  113. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
  114. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +695 -30
  115. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +166 -0
  116. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +78 -79
  117. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +4 -8
  118. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1160 -134
  119. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +61 -6
  120. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  121. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +3 -2
  122. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  123. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  124. package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
  125. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
  126. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
  127. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
  128. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
  129. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
  130. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
  131. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
  132. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  133. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
  134. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
  135. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
  136. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  137. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  138. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  139. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  140. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  141. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts +23 -0
  142. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts.map +1 -0
  143. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js +30 -0
  144. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js.map +1 -0
  145. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
  146. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
  147. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
  148. package/analyzer-template/packages/aws/package.json +10 -9
  149. package/analyzer-template/packages/aws/s3/index.ts +5 -0
  150. package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
  151. package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
  152. package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
  153. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  154. package/analyzer-template/packages/aws/src/lib/s3/getPresignedUrl.ts +62 -0
  155. package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
  156. package/analyzer-template/packages/database/client.ts +35 -0
  157. package/analyzer-template/packages/database/index.ts +94 -0
  158. package/analyzer-template/packages/database/package.json +31 -0
  159. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +28 -0
  160. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +59 -0
  161. package/analyzer-template/packages/database/src/lib/branchToDb.ts +24 -0
  162. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +20 -0
  163. package/analyzer-template/packages/database/src/lib/commitToDb.ts +47 -0
  164. package/analyzer-template/packages/database/src/lib/fileToDb.ts +17 -0
  165. package/analyzer-template/packages/database/src/lib/kysely/db.ts +503 -0
  166. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +108 -0
  167. package/analyzer-template/packages/database/src/lib/kysely/tables/commitsTable.ts +67 -0
  168. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +88 -0
  169. package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +93 -0
  170. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  171. package/analyzer-template/packages/database/src/lib/loadAnalyses.ts +275 -0
  172. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +223 -0
  173. package/analyzer-template/packages/database/src/lib/loadBranch.ts +137 -0
  174. package/analyzer-template/packages/database/src/lib/loadCommit.ts +173 -0
  175. package/analyzer-template/packages/database/src/lib/loadCommits.ts +290 -0
  176. package/analyzer-template/packages/database/src/lib/loadEntities.ts +111 -0
  177. package/analyzer-template/packages/database/src/lib/loadEntity.ts +105 -0
  178. package/analyzer-template/packages/database/src/lib/loadEntityBranches.ts +178 -0
  179. package/analyzer-template/packages/database/src/lib/loadFile.ts +42 -0
  180. package/analyzer-template/packages/database/src/lib/loadFiles.ts +134 -0
  181. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +96 -0
  182. package/analyzer-template/packages/database/src/lib/loadStatement.ts +23 -0
  183. package/analyzer-template/packages/database/src/lib/projectToDb.ts +35 -0
  184. package/analyzer-template/packages/database/src/lib/saveEntityStatements.ts +27 -0
  185. package/analyzer-template/packages/database/src/lib/saveFiles.ts +43 -0
  186. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +35 -0
  187. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +131 -0
  188. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatus.ts +80 -0
  189. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.ts +110 -0
  190. package/analyzer-template/packages/database/src/lib/updateProjectMetadata.ts +95 -0
  191. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +18 -0
  192. package/analyzer-template/packages/generate/index.ts +3 -0
  193. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +17 -1
  194. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +221 -0
  195. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
  196. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +42 -9
  197. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +29 -2
  198. package/analyzer-template/packages/generate/src/lib/directExecutionScript.ts +17 -2
  199. package/analyzer-template/packages/generate/src/lib/getComponentScenarioPath.ts +8 -3
  200. package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
  201. package/analyzer-template/packages/github/dist/database/index.d.ts +87 -0
  202. package/analyzer-template/packages/github/dist/database/index.d.ts.map +1 -0
  203. package/analyzer-template/packages/github/dist/database/index.js +85 -0
  204. package/analyzer-template/packages/github/dist/database/index.js.map +1 -0
  205. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.d.ts.map +1 -0
  206. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +19 -0
  207. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -0
  208. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.d.ts.map +1 -0
  209. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +26 -0
  210. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -0
  211. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.d.ts.map +1 -0
  212. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.js.map +1 -0
  213. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.d.ts.map +1 -0
  214. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +18 -0
  215. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -0
  216. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.d.ts.map +1 -0
  217. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +13 -0
  218. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -0
  219. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.d.ts.map +1 -0
  220. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +26 -0
  221. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -0
  222. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.d.ts.map +1 -0
  223. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  224. package/analyzer-template/packages/github/dist/database/src/lib/createProject.d.ts.map +1 -0
  225. package/analyzer-template/packages/github/dist/database/src/lib/createProject.js.map +1 -0
  226. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.d.ts.map +1 -0
  227. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.js.map +1 -0
  228. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.d.ts.map +1 -0
  229. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.js.map +1 -0
  230. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.d.ts.map +1 -0
  231. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  232. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.d.ts.map +1 -0
  233. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.js.map +1 -0
  234. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.d.ts.map +1 -0
  235. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.js.map +1 -0
  236. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.d.ts.map +1 -0
  237. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.js.map +1 -0
  238. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.d.ts.map +1 -0
  239. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.js.map +1 -0
  240. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.d.ts.map +1 -0
  241. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.js.map +1 -0
  242. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.d.ts.map +1 -0
  243. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.js.map +1 -0
  244. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.d.ts.map +1 -0
  245. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.js.map +1 -0
  246. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.d.ts.map +1 -0
  247. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.js.map +1 -0
  248. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.d.ts.map +1 -0
  249. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.js.map +1 -0
  250. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.d.ts.map +1 -0
  251. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.js.map +1 -0
  252. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.d.ts.map +1 -0
  253. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.js.map +1 -0
  254. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.d.ts.map +1 -0
  255. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.js.map +1 -0
  256. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.d.ts.map +1 -0
  257. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.js.map +1 -0
  258. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.d.ts.map +1 -0
  259. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.js.map +1 -0
  260. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.d.ts.map +1 -0
  261. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.js.map +1 -0
  262. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.d.ts.map +1 -0
  263. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.js.map +1 -0
  264. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.d.ts.map +1 -0
  265. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +14 -0
  266. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -0
  267. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.d.ts.map +1 -0
  268. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.js.map +1 -0
  269. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.d.ts.map +1 -0
  270. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.js.map +1 -0
  271. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.d.ts.map +1 -0
  272. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  273. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +73 -0
  274. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -0
  275. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +378 -0
  276. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -0
  277. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.d.ts.map +1 -0
  278. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  279. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +1 -0
  280. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  281. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +89 -0
  282. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts.map +1 -0
  283. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.js.map +1 -0
  284. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.d.ts.map +1 -0
  285. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  286. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +97 -0
  287. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -0
  288. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  289. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +1 -0
  290. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  291. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +1 -0
  292. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  293. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.d.ts.map +1 -0
  294. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  295. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.d.ts.map +1 -0
  296. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  297. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts +48 -0
  298. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts.map +1 -0
  299. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js +47 -0
  300. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  301. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +60 -0
  302. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -0
  303. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  304. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  305. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +25 -0
  306. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -0
  307. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +76 -0
  308. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  309. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +68 -0
  310. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -0
  311. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  312. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.d.ts.map +1 -0
  313. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  314. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.d.ts.map +1 -0
  315. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  316. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.d.ts.map +1 -0
  317. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  318. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +1 -0
  319. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  320. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.d.ts.map +1 -0
  321. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  322. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  323. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  324. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  325. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  326. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.d.ts.map +1 -0
  327. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  328. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +1 -0
  329. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  330. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +66 -0
  331. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -0
  332. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  333. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.d.ts.map +1 -0
  334. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  335. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.d.ts.map +1 -0
  336. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  337. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.d.ts.map +1 -0
  338. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  339. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.d.ts.map +1 -0
  340. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  341. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.d.ts.map +1 -0
  342. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  343. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.d.ts.map +1 -0
  344. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  345. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts +16 -0
  346. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts.map +1 -0
  347. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js +174 -0
  348. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js.map +1 -0
  349. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -0
  350. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +138 -0
  351. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -0
  352. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.d.ts.map +1 -0
  353. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.js.map +1 -0
  354. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.d.ts.map +1 -0
  355. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.js.map +1 -0
  356. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.d.ts.map +1 -0
  357. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js +100 -0
  358. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js.map +1 -0
  359. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.d.ts.map +1 -0
  360. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.js.map +1 -0
  361. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.d.ts.map +1 -0
  362. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js +118 -0
  363. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js.map +1 -0
  364. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.d.ts.map +1 -0
  365. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.js.map +1 -0
  366. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.d.ts.map +1 -0
  367. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.js.map +1 -0
  368. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts +15 -0
  369. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts.map +1 -0
  370. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +219 -0
  371. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js.map +1 -0
  372. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts +13 -0
  373. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -0
  374. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +76 -0
  375. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -0
  376. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -0
  377. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -0
  378. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.d.ts.map +1 -0
  379. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js +123 -0
  380. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js.map +1 -0
  381. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.d.ts.map +1 -0
  382. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.js.map +1 -0
  383. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.d.ts.map +1 -0
  384. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.js.map +1 -0
  385. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +1 -0
  386. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  387. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.d.ts.map +1 -0
  388. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.js.map +1 -0
  389. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -0
  390. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +65 -0
  391. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  392. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.d.ts.map +1 -0
  393. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.js.map +1 -0
  394. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts +3 -0
  395. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts.map +1 -0
  396. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.js.map +1 -0
  397. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.d.ts.map +1 -0
  398. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.js.map +1 -0
  399. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.d.ts.map +1 -0
  400. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +18 -0
  401. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -0
  402. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.d.ts.map +1 -0
  403. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.js.map +1 -0
  404. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.d.ts.map +1 -0
  405. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.js.map +1 -0
  406. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.d.ts.map +1 -0
  407. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +33 -0
  408. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -0
  409. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.d.ts.map +1 -0
  410. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.js.map +1 -0
  411. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.d.ts.map +1 -0
  412. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +18 -0
  413. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -0
  414. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts +4 -0
  415. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts.map +1 -0
  416. package/analyzer-template/packages/github/dist/database/src/lib/supabase.js.map +1 -0
  417. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.d.ts.map +1 -0
  418. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  419. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts +13 -0
  420. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -0
  421. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +87 -0
  422. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -0
  423. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.d.ts.map +1 -0
  424. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.js.map +1 -0
  425. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.d.ts.map +1 -0
  426. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  427. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.d.ts.map +1 -0
  428. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js +53 -0
  429. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  430. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +1 -0
  431. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +81 -0
  432. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  433. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.d.ts.map +1 -0
  434. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.js.map +1 -0
  435. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.d.ts.map +1 -0
  436. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.js.map +1 -0
  437. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.d.ts.map +1 -0
  438. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  439. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.d.ts.map +1 -0
  440. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  441. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.d.ts.map +1 -0
  442. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.js.map +1 -0
  443. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.d.ts.map +1 -0
  444. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.js.map +1 -0
  445. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.d.ts.map +1 -0
  446. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.js.map +1 -0
  447. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.d.ts.map +1 -0
  448. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.js.map +1 -0
  449. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.d.ts.map +1 -0
  450. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.js.map +1 -0
  451. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.d.ts.map +1 -0
  452. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.js.map +1 -0
  453. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.d.ts.map +1 -0
  454. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.js.map +1 -0
  455. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.d.ts.map +1 -0
  456. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.js.map +1 -0
  457. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.d.ts.map +1 -0
  458. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.js.map +1 -0
  459. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.d.ts.map +1 -0
  460. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.js.map +1 -0
  461. package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
  462. package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
  463. package/analyzer-template/packages/github/dist/generate/index.js +3 -0
  464. package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
  465. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
  466. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  467. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  468. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
  469. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
  470. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  471. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  472. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
  473. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
  474. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  475. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  476. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  477. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  478. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  479. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  480. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +30 -2
  481. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  482. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.d.ts.map +1 -1
  483. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js +10 -1
  484. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js.map +1 -1
  485. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.d.ts.map +1 -1
  486. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js +7 -3
  487. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  488. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
  489. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
  490. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
  491. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  492. package/analyzer-template/packages/github/dist/github/src/lib/getCommitsFromGithub.js +1 -1
  493. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
  494. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +11 -1
  495. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
  496. package/analyzer-template/packages/github/dist/github/src/lib/syncBranches.js +1 -1
  497. package/analyzer-template/packages/github/dist/github/src/lib/syncHeadBranches.js +1 -1
  498. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
  499. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +4 -1
  500. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
  501. package/analyzer-template/packages/github/dist/github/src/lib/syncPullRequest.js +1 -1
  502. package/analyzer-template/packages/github/dist/github/src/lib/updateCommitBranchesInDb.js +1 -1
  503. package/analyzer-template/packages/github/dist/github/src/lib/updateFilesInDb.js +1 -1
  504. package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
  505. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  506. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  507. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts +2 -0
  508. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
  509. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js +2 -0
  510. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js.map +1 -1
  511. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -9
  512. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  513. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts +2 -0
  514. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts.map +1 -1
  515. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +4 -0
  516. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
  517. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  518. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  519. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +21 -6
  520. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  521. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  522. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  523. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  524. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  525. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
  526. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  527. package/analyzer-template/packages/github/dist/utils/index.d.ts +1 -0
  528. package/analyzer-template/packages/github/dist/utils/index.d.ts.map +1 -1
  529. package/analyzer-template/packages/github/dist/utils/index.js +2 -0
  530. package/analyzer-template/packages/github/dist/utils/index.js.map +1 -1
  531. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  532. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  533. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  534. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  535. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  536. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  537. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  538. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  539. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  540. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +13 -2
  541. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  542. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +16 -7
  543. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -1
  544. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +43 -13
  545. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -1
  546. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  547. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  548. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  549. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
  550. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  551. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +32 -3
  552. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
  553. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  554. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  555. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  556. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  557. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  558. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  559. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  560. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  561. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  562. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  563. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js +3 -0
  564. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js.map +1 -0
  565. package/analyzer-template/packages/github/package.json +2 -2
  566. package/analyzer-template/packages/github/src/lib/getCommitsFromGithub.ts +1 -1
  567. package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +15 -1
  568. package/analyzer-template/packages/github/src/lib/syncBranches.ts +1 -1
  569. package/analyzer-template/packages/github/src/lib/syncHeadBranches.ts +1 -1
  570. package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +3 -1
  571. package/analyzer-template/packages/github/src/lib/syncPullRequest.ts +1 -1
  572. package/analyzer-template/packages/github/src/lib/updateCommitBranchesInDb.ts +1 -1
  573. package/analyzer-template/packages/github/src/lib/updateFilesInDb.ts +1 -1
  574. package/analyzer-template/packages/process/index.ts +2 -0
  575. package/analyzer-template/packages/process/package.json +12 -0
  576. package/analyzer-template/packages/process/tsconfig.json +8 -0
  577. package/analyzer-template/packages/types/index.ts +5 -0
  578. package/analyzer-template/packages/types/src/enums/ProjectFramework.ts +2 -0
  579. package/analyzer-template/packages/types/src/types/Analysis.ts +104 -9
  580. package/analyzer-template/packages/types/src/types/Commit.ts +2 -0
  581. package/analyzer-template/packages/types/src/types/Entity.ts +4 -0
  582. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +8 -0
  583. package/analyzer-template/packages/types/src/types/Scenario.ts +21 -10
  584. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +228 -3
  585. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  586. package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
  587. package/analyzer-template/packages/ui-components/package.json +5 -5
  588. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  589. package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
  590. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  591. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  592. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts +2 -0
  593. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
  594. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js +2 -0
  595. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js.map +1 -1
  596. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -9
  597. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  598. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts +2 -0
  599. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts.map +1 -1
  600. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +4 -0
  601. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
  602. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  603. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  604. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +21 -6
  605. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  606. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  607. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  608. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  609. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  610. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
  611. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  612. package/analyzer-template/packages/utils/dist/utils/index.d.ts +1 -0
  613. package/analyzer-template/packages/utils/dist/utils/index.d.ts.map +1 -1
  614. package/analyzer-template/packages/utils/dist/utils/index.js +2 -0
  615. package/analyzer-template/packages/utils/dist/utils/index.js.map +1 -1
  616. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  617. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  618. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  619. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  620. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  621. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  622. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  623. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  624. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  625. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +13 -2
  626. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  627. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +16 -7
  628. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -1
  629. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +43 -13
  630. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -1
  631. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  632. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +98 -3
  633. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  634. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  635. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  636. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  637. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
  638. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  639. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +32 -3
  640. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
  641. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  642. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  643. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  644. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  645. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  646. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  647. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  648. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  649. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  650. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  651. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js +3 -0
  652. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js.map +1 -0
  653. package/analyzer-template/packages/utils/index.ts +9 -0
  654. package/analyzer-template/packages/utils/src/lib/applyUniversalMocks.ts +74 -9
  655. package/analyzer-template/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.ts +20 -1
  656. package/analyzer-template/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.ts +16 -1
  657. package/analyzer-template/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.ts +43 -9
  658. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +121 -3
  659. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +43 -0
  660. package/analyzer-template/packages/utils/src/lib/safeFileName.ts +51 -3
  661. package/analyzer-template/packages/utils/src/lib/startCommand/buildStartCommand.ts +63 -0
  662. package/analyzer-template/packages/utils/src/lib/startCommand/getWebappInfo.ts +108 -0
  663. package/analyzer-template/packages/utils/src/lib/startCommand/index.ts +10 -0
  664. package/analyzer-template/playwright/capture.ts +103 -93
  665. package/analyzer-template/playwright/captureFromUrl.ts +121 -83
  666. package/analyzer-template/playwright/captureStatic.ts +2 -2
  667. package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
  668. package/analyzer-template/playwright/takeElementScreenshot.ts +48 -11
  669. package/analyzer-template/playwright/takeScreenshot.ts +38 -10
  670. package/analyzer-template/playwright/updateBackgroundJob.ts +1 -1
  671. package/analyzer-template/playwright/waitForServer.ts +21 -6
  672. package/analyzer-template/project/LazyFileStore.ts +1 -1
  673. package/analyzer-template/project/TESTING.md +83 -0
  674. package/analyzer-template/project/analyzeBaselineCommit.ts +10 -1
  675. package/analyzer-template/project/analyzeBranchCommit.ts +5 -1
  676. package/analyzer-template/project/analyzeFileEntities.ts +5 -1
  677. package/analyzer-template/project/analyzeRegularCommit.ts +10 -1
  678. package/analyzer-template/project/captureLibraryFunctionDirect.ts +30 -27
  679. package/analyzer-template/project/constructMockCode.ts +1705 -129
  680. package/analyzer-template/project/controller/startController.ts +16 -1
  681. package/analyzer-template/project/createEntitiesAndSortFiles.ts +98 -7
  682. package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
  683. package/analyzer-template/project/getFilesWithEntitiesFromRepo.ts +1 -1
  684. package/analyzer-template/project/getScenarioUrl.ts +73 -5
  685. package/analyzer-template/project/loadReadyToBeCaptured.ts +198 -38
  686. package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
  687. package/analyzer-template/project/orchestrateCapture/AwsCaptureTaskRunner.ts +12 -4
  688. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +15 -15
  689. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +97 -67
  690. package/analyzer-template/project/orchestrateCapture/SupabaseAnalysisLoader.ts +6 -6
  691. package/analyzer-template/project/orchestrateCapture/taskRunner.ts +4 -2
  692. package/analyzer-template/project/orchestrateCapture.ts +93 -14
  693. package/analyzer-template/project/prepareRepo.ts +1 -1
  694. package/analyzer-template/project/reconcileMockDataKeys.ts +251 -3
  695. package/analyzer-template/project/runAnalysis.ts +12 -1
  696. package/analyzer-template/project/runMultiScenarioServer.ts +13 -16
  697. package/analyzer-template/project/runScenarioServer.ts +1 -5
  698. package/analyzer-template/project/serverOnlyModules.ts +413 -0
  699. package/analyzer-template/project/start.ts +97 -33
  700. package/analyzer-template/project/startScenarioCapture.ts +89 -42
  701. package/analyzer-template/project/startServer.ts +50 -70
  702. package/analyzer-template/project/updateCommitBackgroundJob.ts +1 -1
  703. package/analyzer-template/project/utils/errorHandling.ts +1 -1
  704. package/analyzer-template/project/writeClientLogRoute.ts +125 -0
  705. package/analyzer-template/project/writeMockDataTsx.ts +652 -77
  706. package/analyzer-template/project/writeScenario.ts +1 -1
  707. package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
  708. package/analyzer-template/project/writeScenarioComponents.ts +2257 -185
  709. package/analyzer-template/project/writeScenarioFiles.ts +26 -0
  710. package/analyzer-template/project/writeSimpleRoot.ts +125 -2
  711. package/analyzer-template/project/writeUniversalMocks.ts +32 -11
  712. package/analyzer-template/scripts/comboWorkerLoop.cjs +99 -50
  713. package/analyzer-template/scripts/defaultCmd.sh +9 -0
  714. package/analyzer-template/scripts/postbuild.cjs +12 -1
  715. package/analyzer-template/tsconfig.json +14 -1
  716. package/background/src/lib/local/createLocalAnalyzer.js +2 -30
  717. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  718. package/background/src/lib/local/execAsync.js +1 -1
  719. package/background/src/lib/local/execAsync.js.map +1 -1
  720. package/background/src/lib/virtualized/common/execAsync.js +2 -2
  721. package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
  722. package/background/src/lib/virtualized/project/LazyFileStore.js +1 -1
  723. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +8 -2
  724. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  725. package/background/src/lib/virtualized/project/analyzeBranchCommit.js +3 -2
  726. package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
  727. package/background/src/lib/virtualized/project/analyzeFileEntities.js +3 -2
  728. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  729. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +8 -2
  730. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  731. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js +4 -4
  732. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js.map +1 -1
  733. package/background/src/lib/virtualized/project/constructMockCode.js +1476 -92
  734. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  735. package/background/src/lib/virtualized/project/controller/startController.js +11 -1
  736. package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
  737. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js +83 -4
  738. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js.map +1 -1
  739. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
  740. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
  741. package/background/src/lib/virtualized/project/getFilesWithEntitiesFromRepo.js +1 -1
  742. package/background/src/lib/virtualized/project/getScenarioUrl.js +38 -3
  743. package/background/src/lib/virtualized/project/getScenarioUrl.js.map +1 -1
  744. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +108 -6
  745. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  746. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
  747. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
  748. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js +2 -2
  749. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js.map +1 -1
  750. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +13 -7
  751. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  752. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +73 -49
  753. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  754. package/background/src/lib/virtualized/project/orchestrateCapture.js +77 -15
  755. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  756. package/background/src/lib/virtualized/project/prepareRepo.js +1 -1
  757. package/background/src/lib/virtualized/project/prepareRepo.js.map +1 -1
  758. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +211 -3
  759. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  760. package/background/src/lib/virtualized/project/runAnalysis.js +10 -1
  761. package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
  762. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +13 -14
  763. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  764. package/background/src/lib/virtualized/project/serverOnlyModules.js +338 -0
  765. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -0
  766. package/background/src/lib/virtualized/project/start.js +83 -30
  767. package/background/src/lib/virtualized/project/start.js.map +1 -1
  768. package/background/src/lib/virtualized/project/startScenarioCapture.js +67 -32
  769. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  770. package/background/src/lib/virtualized/project/startServer.js +40 -68
  771. package/background/src/lib/virtualized/project/startServer.js.map +1 -1
  772. package/background/src/lib/virtualized/project/updateCommitBackgroundJob.js +1 -1
  773. package/background/src/lib/virtualized/project/utils/errorHandling.js +1 -1
  774. package/background/src/lib/virtualized/project/writeClientLogRoute.js +110 -0
  775. package/background/src/lib/virtualized/project/writeClientLogRoute.js.map +1 -0
  776. package/background/src/lib/virtualized/project/writeMockDataTsx.js +565 -65
  777. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  778. package/background/src/lib/virtualized/project/writeScenario.js +1 -1
  779. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
  780. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
  781. package/background/src/lib/virtualized/project/writeScenarioComponents.js +1651 -127
  782. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  783. package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
  784. package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
  785. package/background/src/lib/virtualized/project/writeSimpleRoot.js +113 -2
  786. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  787. package/background/src/lib/virtualized/project/writeUniversalMocks.js +27 -12
  788. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  789. package/codeyam-cli/scripts/apply-setup.js +386 -9
  790. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  791. package/codeyam-cli/scripts/extract-setup.js +1 -1
  792. package/codeyam-cli/scripts/populateEntityTimestamps.js +1 -1
  793. package/codeyam-cli/scripts/populateEntityTimestamps.js.map +1 -1
  794. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js +196 -0
  795. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js.map +1 -0
  796. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js +114 -0
  797. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js.map +1 -0
  798. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js +149 -0
  799. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js.map +1 -0
  800. package/codeyam-cli/src/cli.js +40 -19
  801. package/codeyam-cli/src/cli.js.map +1 -1
  802. package/codeyam-cli/src/codeyam-cli.js +18 -2
  803. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  804. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +101 -47
  805. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
  806. package/codeyam-cli/src/commands/analyze.js +22 -10
  807. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  808. package/codeyam-cli/src/commands/baseline.js +176 -0
  809. package/codeyam-cli/src/commands/baseline.js.map +1 -0
  810. package/codeyam-cli/src/commands/debug.js +99 -36
  811. package/codeyam-cli/src/commands/debug.js.map +1 -1
  812. package/codeyam-cli/src/commands/default.js +43 -35
  813. package/codeyam-cli/src/commands/default.js.map +1 -1
  814. package/codeyam-cli/src/commands/editor.js +3118 -0
  815. package/codeyam-cli/src/commands/editor.js.map +1 -0
  816. package/codeyam-cli/src/commands/entities.js +1 -1
  817. package/codeyam-cli/src/commands/generate-data-structure.js +17 -8
  818. package/codeyam-cli/src/commands/generate-data-structure.js.map +1 -1
  819. package/codeyam-cli/src/commands/init.js +148 -294
  820. package/codeyam-cli/src/commands/init.js.map +1 -1
  821. package/codeyam-cli/src/commands/memory.js +278 -0
  822. package/codeyam-cli/src/commands/memory.js.map +1 -0
  823. package/codeyam-cli/src/commands/recapture.js +228 -0
  824. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  825. package/codeyam-cli/src/commands/report.js +150 -0
  826. package/codeyam-cli/src/commands/report.js.map +1 -0
  827. package/codeyam-cli/src/commands/setup-sandbox.js +4 -1
  828. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  829. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  830. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  831. package/codeyam-cli/src/commands/start.js +8 -12
  832. package/codeyam-cli/src/commands/start.js.map +1 -1
  833. package/codeyam-cli/src/commands/status.js +23 -1
  834. package/codeyam-cli/src/commands/status.js.map +1 -1
  835. package/codeyam-cli/src/commands/suggest.js +1 -1
  836. package/codeyam-cli/src/commands/test-startup.js +17 -6
  837. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  838. package/codeyam-cli/src/commands/verify.js +14 -2
  839. package/codeyam-cli/src/commands/verify.js.map +1 -1
  840. package/codeyam-cli/src/commands/wipe.js +108 -0
  841. package/codeyam-cli/src/commands/wipe.js.map +1 -0
  842. package/codeyam-cli/src/data/techStacks.js +77 -0
  843. package/codeyam-cli/src/data/techStacks.js.map +1 -0
  844. package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js +46 -0
  845. package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js.map +1 -0
  846. package/codeyam-cli/src/utils/__tests__/devServerState.test.js +134 -0
  847. package/codeyam-cli/src/utils/__tests__/devServerState.test.js.map +1 -0
  848. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +127 -0
  849. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -0
  850. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +635 -0
  851. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -0
  852. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js +93 -0
  853. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js.map +1 -0
  854. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js +304 -0
  855. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js.map +1 -0
  856. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +121 -0
  857. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -0
  858. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js +294 -0
  859. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js.map +1 -0
  860. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js +542 -0
  861. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js.map +1 -0
  862. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +520 -0
  863. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -0
  864. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js +270 -0
  865. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js.map +1 -0
  866. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js +217 -0
  867. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js.map +1 -0
  868. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +289 -0
  869. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -0
  870. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +153 -0
  871. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -0
  872. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js +139 -0
  873. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js.map +1 -0
  874. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +221 -0
  875. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -0
  876. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +841 -0
  877. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -0
  878. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +213 -0
  879. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -0
  880. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +1742 -0
  881. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -0
  882. package/codeyam-cli/src/utils/__tests__/entityVersioning.test.js +2 -2
  883. package/codeyam-cli/src/utils/__tests__/fileWatcher.batch.test.js +2 -2
  884. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js +58 -30
  885. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js.map +1 -1
  886. package/codeyam-cli/src/utils/__tests__/fileWatcher.optimization.test.js +2 -2
  887. package/codeyam-cli/src/utils/__tests__/fileWatcher.versioning.test.js +2 -2
  888. package/codeyam-cli/src/utils/__tests__/git.editor.test.js +134 -0
  889. package/codeyam-cli/src/utils/__tests__/git.editor.test.js.map +1 -0
  890. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +107 -0
  891. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -0
  892. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +185 -0
  893. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -0
  894. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js +101 -0
  895. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js.map +1 -0
  896. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js +9 -0
  897. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js.map +1 -1
  898. package/codeyam-cli/src/utils/__tests__/project.test.js +65 -0
  899. package/codeyam-cli/src/utils/__tests__/project.test.js.map +1 -0
  900. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +227 -0
  901. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -0
  902. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js +121 -0
  903. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js.map +1 -0
  904. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +300 -0
  905. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -0
  906. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
  907. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
  908. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +174 -82
  909. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  910. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js +51 -0
  911. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js.map +1 -0
  912. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +142 -0
  913. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -0
  914. package/codeyam-cli/src/utils/analysisRunner.js +32 -17
  915. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  916. package/codeyam-cli/src/utils/analyzer.js +40 -2
  917. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  918. package/codeyam-cli/src/utils/backgroundServer.js +204 -31
  919. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  920. package/codeyam-cli/src/utils/buildFlags.js +4 -0
  921. package/codeyam-cli/src/utils/buildFlags.js.map +1 -0
  922. package/codeyam-cli/src/utils/changeDetection.js +1 -1
  923. package/codeyam-cli/src/utils/database.js +129 -8
  924. package/codeyam-cli/src/utils/database.js.map +1 -1
  925. package/codeyam-cli/src/utils/devModeEvents.js +40 -0
  926. package/codeyam-cli/src/utils/devModeEvents.js.map +1 -0
  927. package/codeyam-cli/src/utils/devServerState.js +71 -0
  928. package/codeyam-cli/src/utils/devServerState.js.map +1 -0
  929. package/codeyam-cli/src/utils/editorApi.js +73 -0
  930. package/codeyam-cli/src/utils/editorApi.js.map +1 -0
  931. package/codeyam-cli/src/utils/editorAudit.js +159 -0
  932. package/codeyam-cli/src/utils/editorAudit.js.map +1 -0
  933. package/codeyam-cli/src/utils/editorCapture.js +102 -0
  934. package/codeyam-cli/src/utils/editorCapture.js.map +1 -0
  935. package/codeyam-cli/src/utils/editorDevServer.js +197 -0
  936. package/codeyam-cli/src/utils/editorDevServer.js.map +1 -0
  937. package/codeyam-cli/src/utils/editorEntityChangeStatus.js +44 -0
  938. package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -0
  939. package/codeyam-cli/src/utils/editorImageVerifier.js +155 -0
  940. package/codeyam-cli/src/utils/editorImageVerifier.js.map +1 -0
  941. package/codeyam-cli/src/utils/editorJournal.js +225 -0
  942. package/codeyam-cli/src/utils/editorJournal.js.map +1 -0
  943. package/codeyam-cli/src/utils/editorLoaderHelpers.js +113 -0
  944. package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -0
  945. package/codeyam-cli/src/utils/editorMockState.js +248 -0
  946. package/codeyam-cli/src/utils/editorMockState.js.map +1 -0
  947. package/codeyam-cli/src/utils/editorPreloadHelpers.js +135 -0
  948. package/codeyam-cli/src/utils/editorPreloadHelpers.js.map +1 -0
  949. package/codeyam-cli/src/utils/editorPreview.js +106 -0
  950. package/codeyam-cli/src/utils/editorPreview.js.map +1 -0
  951. package/codeyam-cli/src/utils/editorScenarioSwitch.js +112 -0
  952. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -0
  953. package/codeyam-cli/src/utils/editorScenarios.js +328 -0
  954. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -0
  955. package/codeyam-cli/src/utils/editorSeedAdapter.js +173 -0
  956. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -0
  957. package/codeyam-cli/src/utils/entityCache.js +1 -1
  958. package/codeyam-cli/src/utils/entityChangeStatus.js +349 -0
  959. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -0
  960. package/codeyam-cli/src/utils/entityChangeStatus.server.js +158 -0
  961. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -0
  962. package/codeyam-cli/src/utils/entityMetadata.js +1 -1
  963. package/codeyam-cli/src/utils/entityVersioning.js +1 -1
  964. package/codeyam-cli/src/utils/fileMetadata.js +5 -0
  965. package/codeyam-cli/src/utils/fileMetadata.js.map +1 -1
  966. package/codeyam-cli/src/utils/fileWatcher.js +27 -11
  967. package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
  968. package/codeyam-cli/src/utils/generateReport.js +366 -0
  969. package/codeyam-cli/src/utils/generateReport.js.map +1 -0
  970. package/codeyam-cli/src/utils/git.js +182 -0
  971. package/codeyam-cli/src/utils/git.js.map +1 -0
  972. package/codeyam-cli/src/utils/install-skills.js +120 -37
  973. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  974. package/codeyam-cli/src/utils/interactiveSyncWatcher.js +126 -0
  975. package/codeyam-cli/src/utils/interactiveSyncWatcher.js.map +1 -0
  976. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  977. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  978. package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
  979. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -0
  980. package/codeyam-cli/src/utils/parseRegisterArg.js +31 -0
  981. package/codeyam-cli/src/utils/parseRegisterArg.js.map +1 -0
  982. package/codeyam-cli/src/utils/pathIgnoring.js +19 -7
  983. package/codeyam-cli/src/utils/pathIgnoring.js.map +1 -1
  984. package/codeyam-cli/src/utils/progress.js +7 -0
  985. package/codeyam-cli/src/utils/progress.js.map +1 -1
  986. package/codeyam-cli/src/utils/project.js +15 -5
  987. package/codeyam-cli/src/utils/project.js.map +1 -1
  988. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js +14 -14
  989. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js.map +1 -1
  990. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js +3 -2
  991. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js.map +1 -1
  992. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +60 -0
  993. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  994. package/codeyam-cli/src/utils/queue/heartbeat.js +14 -6
  995. package/codeyam-cli/src/utils/queue/heartbeat.js.map +1 -1
  996. package/codeyam-cli/src/utils/queue/job.js +333 -26
  997. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  998. package/codeyam-cli/src/utils/queue/manager.js +104 -7
  999. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  1000. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  1001. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  1002. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  1003. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  1004. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  1005. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +229 -0
  1006. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  1007. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  1008. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  1009. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  1010. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  1011. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  1012. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  1013. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  1014. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  1015. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +74 -0
  1016. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  1017. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +376 -0
  1018. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  1019. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +113 -0
  1020. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  1021. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  1022. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  1023. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  1024. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  1025. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  1026. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  1027. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  1028. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  1029. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  1030. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  1031. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  1032. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  1033. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  1034. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  1035. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js +83 -0
  1036. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js.map +1 -0
  1037. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js +118 -0
  1038. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js.map +1 -0
  1039. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js +72 -0
  1040. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js.map +1 -0
  1041. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  1042. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  1043. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js +76 -0
  1044. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js.map +1 -0
  1045. package/codeyam-cli/src/utils/rules/index.js +7 -0
  1046. package/codeyam-cli/src/utils/rules/index.js.map +1 -0
  1047. package/codeyam-cli/src/utils/rules/parser.js +93 -0
  1048. package/codeyam-cli/src/utils/rules/parser.js.map +1 -0
  1049. package/codeyam-cli/src/utils/rules/pathMatcher.js +49 -0
  1050. package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -0
  1051. package/codeyam-cli/src/utils/rules/rulePlacement.js +65 -0
  1052. package/codeyam-cli/src/utils/rules/rulePlacement.js.map +1 -0
  1053. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  1054. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  1055. package/codeyam-cli/src/utils/rules/sourceFiles.js +43 -0
  1056. package/codeyam-cli/src/utils/rules/sourceFiles.js.map +1 -0
  1057. package/codeyam-cli/src/utils/rules/staleness.js +137 -0
  1058. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -0
  1059. package/codeyam-cli/src/utils/sandbox.js +190 -0
  1060. package/codeyam-cli/src/utils/sandbox.js.map +1 -0
  1061. package/codeyam-cli/src/utils/scenarioCoverage.js +75 -0
  1062. package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -0
  1063. package/codeyam-cli/src/utils/scenarioMarkers.js +134 -0
  1064. package/codeyam-cli/src/utils/scenarioMarkers.js.map +1 -0
  1065. package/codeyam-cli/src/utils/scenariosManifest.js +159 -0
  1066. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -0
  1067. package/codeyam-cli/src/utils/serverState.js +94 -12
  1068. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  1069. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +95 -45
  1070. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  1071. package/codeyam-cli/src/utils/simulationGateMiddleware.js +166 -0
  1072. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -0
  1073. package/codeyam-cli/src/utils/slugUtils.js +25 -0
  1074. package/codeyam-cli/src/utils/slugUtils.js.map +1 -0
  1075. package/codeyam-cli/src/utils/syncMocksMiddleware.js +7 -26
  1076. package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
  1077. package/codeyam-cli/src/utils/syncUncommittedEntities.js +1 -1
  1078. package/codeyam-cli/src/utils/syncUniversalMocks.js +1 -1
  1079. package/codeyam-cli/src/utils/testRunner.js +158 -0
  1080. package/codeyam-cli/src/utils/testRunner.js.map +1 -0
  1081. package/codeyam-cli/src/utils/transcriptPruning.js +67 -0
  1082. package/codeyam-cli/src/utils/transcriptPruning.js.map +1 -0
  1083. package/codeyam-cli/src/utils/versionInfo.js +67 -15
  1084. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  1085. package/codeyam-cli/src/utils/webappDetection.js +35 -2
  1086. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  1087. package/codeyam-cli/src/utils/wipe.js +128 -0
  1088. package/codeyam-cli/src/utils/wipe.js.map +1 -0
  1089. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +40 -0
  1090. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -0
  1091. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
  1092. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
  1093. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +550 -0
  1094. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -0
  1095. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +65 -0
  1096. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -0
  1097. package/codeyam-cli/src/webserver/app/lib/database.js +160 -34
  1098. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  1099. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js +3 -1
  1100. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  1101. package/codeyam-cli/src/webserver/app/lib/git.js +396 -0
  1102. package/codeyam-cli/src/webserver/app/lib/git.js.map +1 -0
  1103. package/codeyam-cli/src/webserver/backgroundServer.js +171 -26
  1104. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  1105. package/codeyam-cli/src/webserver/bootstrap.js +60 -0
  1106. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  1107. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-BPXZwM4t.js +1 -0
  1108. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BcgbViKV.js +11 -0
  1109. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-g3saevPb.js +1 -0
  1110. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-CQIG2qda.js +41 -0
  1111. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +1 -0
  1112. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +25 -0
  1113. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +3 -0
  1114. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-BU_OAEMP.js +6 -0
  1115. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-ceAyBX-H.js +3 -0
  1116. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-BzHcG7SE.js +11 -0
  1117. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +1 -0
  1118. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-0DY_NKil.js +10 -0
  1119. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +34 -0
  1120. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-C8OKAR5x.js +1 -0
  1121. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-oAf2Kqsf.js +1 -0
  1122. package/codeyam-cli/src/webserver/build/client/assets/_index-DLxKhri3.js +11 -0
  1123. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-BcY3q6nt.js +27 -0
  1124. package/codeyam-cli/src/webserver/build/client/assets/addon-canvas-DpzMmAy5.js +1 -0
  1125. package/codeyam-cli/src/webserver/build/client/assets/addon-fit-YJmn1quW.js +12 -0
  1126. package/codeyam-cli/src/webserver/build/client/assets/addon-web-links-Duc5hnl7.js +1 -0
  1127. package/codeyam-cli/src/webserver/build/client/assets/addon-webgl-DI8QOUvO.js +58 -0
  1128. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-Bni3iiUj.js +22 -0
  1129. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  1130. package/codeyam-cli/src/webserver/build/client/assets/api.dev-mode-events-l0sNRNKZ.js +1 -0
  1131. package/codeyam-cli/src/webserver/build/client/assets/api.editor-audit-l0sNRNKZ.js +1 -0
  1132. package/codeyam-cli/src/webserver/build/client/assets/api.editor-capture-scenario-l0sNRNKZ.js +1 -0
  1133. package/codeyam-cli/src/webserver/build/client/assets/api.editor-client-errors-l0sNRNKZ.js +1 -0
  1134. package/codeyam-cli/src/webserver/build/client/assets/api.editor-commit-l0sNRNKZ.js +1 -0
  1135. package/codeyam-cli/src/webserver/build/client/assets/api.editor-dev-server-l0sNRNKZ.js +1 -0
  1136. package/codeyam-cli/src/webserver/build/client/assets/api.editor-entity-status-l0sNRNKZ.js +1 -0
  1137. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-diff-l0sNRNKZ.js +1 -0
  1138. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-l0sNRNKZ.js +1 -0
  1139. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-entry-l0sNRNKZ.js +1 -0
  1140. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-image._-l0sNRNKZ.js +1 -0
  1141. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-l0sNRNKZ.js +1 -0
  1142. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-screenshot-l0sNRNKZ.js +1 -0
  1143. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-update-l0sNRNKZ.js +1 -0
  1144. package/codeyam-cli/src/webserver/build/client/assets/api.editor-load-commit-l0sNRNKZ.js +1 -0
  1145. package/codeyam-cli/src/webserver/build/client/assets/api.editor-project-info-l0sNRNKZ.js +1 -0
  1146. package/codeyam-cli/src/webserver/build/client/assets/api.editor-refresh-l0sNRNKZ.js +1 -0
  1147. package/codeyam-cli/src/webserver/build/client/assets/api.editor-register-scenario-l0sNRNKZ.js +1 -0
  1148. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-coverage-l0sNRNKZ.js +1 -0
  1149. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-data-l0sNRNKZ.js +1 -0
  1150. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-image._-l0sNRNKZ.js +1 -0
  1151. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenarios-l0sNRNKZ.js +1 -0
  1152. package/codeyam-cli/src/webserver/build/client/assets/api.editor-switch-scenario-l0sNRNKZ.js +1 -0
  1153. package/codeyam-cli/src/webserver/build/client/assets/api.editor-test-results-l0sNRNKZ.js +1 -0
  1154. package/codeyam-cli/src/webserver/build/client/assets/api.generate-report-l0sNRNKZ.js +1 -0
  1155. package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
  1156. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  1157. package/codeyam-cli/src/webserver/build/client/assets/api.memory-profile-l0sNRNKZ.js +1 -0
  1158. package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
  1159. package/codeyam-cli/src/webserver/build/client/assets/api.rule-path-l0sNRNKZ.js +1 -0
  1160. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  1161. package/codeyam-cli/src/webserver/build/client/assets/book-open-BYOypzCa.js +6 -0
  1162. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-C_Pmso5S.js +6 -0
  1163. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +51 -0
  1164. package/codeyam-cli/src/webserver/build/client/assets/circle-check-BVMi9VA5.js +6 -0
  1165. package/codeyam-cli/src/webserver/build/client/assets/codeyam-name-logo-CvKwUgHo.svg +9 -0
  1166. package/codeyam-cli/src/webserver/build/client/assets/copy-n2FB0_Sw.js +11 -0
  1167. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CC6AbExI.js +41 -0
  1168. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-CCKUIm0S.svg +4 -0
  1169. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
  1170. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-Csi0_PMl.js +1 -0
  1171. package/codeyam-cli/src/webserver/build/client/assets/editor-BBAGP_mE.js +10 -0
  1172. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-BLQMSKZa.js +41 -0
  1173. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-BF4oLwaE.js +23 -0
  1174. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-C7YX6r3H.js +6 -0
  1175. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-CF164ouH.js +6 -0
  1176. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +6 -0
  1177. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BMvVHNXU.js +5 -0
  1178. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DTvKq3TY.js +29 -0
  1179. package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
  1180. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +1 -0
  1181. package/codeyam-cli/src/webserver/build/client/assets/files-BZrlFE1F.js +1 -0
  1182. package/codeyam-cli/src/webserver/build/client/assets/git-DdZcvjGh.js +1 -0
  1183. package/codeyam-cli/src/webserver/build/client/assets/globals-COUSHTyZ.css +1 -0
  1184. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  1185. package/codeyam-cli/src/webserver/build/client/assets/index-10oVnAAH.js +9 -0
  1186. package/codeyam-cli/src/webserver/build/client/assets/index-BcvgDzbZ.js +3 -0
  1187. package/codeyam-cli/src/webserver/build/client/assets/index-yHOVb4rc.js +15 -0
  1188. package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +1 -0
  1189. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-DaAZ_H2w.js +6 -0
  1190. package/codeyam-cli/src/webserver/build/client/assets/manifest-9c70d1f3.js +1 -0
  1191. package/codeyam-cli/src/webserver/build/client/assets/memory-9gnxSZlb.js +101 -0
  1192. package/codeyam-cli/src/webserver/build/client/assets/pause-f5-1lKBt.js +11 -0
  1193. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  1194. package/codeyam-cli/src/webserver/build/client/assets/root-CHOdrM6Y.js +67 -0
  1195. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  1196. package/codeyam-cli/src/webserver/build/client/assets/search-Di64LWVb.js +6 -0
  1197. package/codeyam-cli/src/webserver/build/client/assets/settings-0OrEMU6J.js +1 -0
  1198. package/codeyam-cli/src/webserver/build/client/assets/simulations-DWT-CvLy.js +1 -0
  1199. package/codeyam-cli/src/webserver/build/client/assets/terminal-Br7MOqts.js +11 -0
  1200. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-BLdiCuG-.js +6 -0
  1201. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-CrAK28Bc.js +1 -0
  1202. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C14nCb1q.js +2 -0
  1203. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +1 -0
  1204. package/codeyam-cli/src/webserver/build/client/assets/useToast-9FIWuYfK.js +1 -0
  1205. package/codeyam-cli/src/webserver/build/client/assets/xterm-BqvuqXEL.js +27 -0
  1206. package/codeyam-cli/src/webserver/build/server/assets/index-BWoRb5RY.js +1 -0
  1207. package/codeyam-cli/src/webserver/build/server/assets/init-DbChSUQP.js +10 -0
  1208. package/codeyam-cli/src/webserver/build/server/assets/server-build-BtbLQkKd.js +433 -0
  1209. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  1210. package/codeyam-cli/src/webserver/build-info.json +5 -5
  1211. package/codeyam-cli/src/webserver/devServer.js +40 -8
  1212. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  1213. package/codeyam-cli/src/webserver/editorProxy.js +855 -0
  1214. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -0
  1215. package/codeyam-cli/src/webserver/scripts/codeyam-preload.mjs +414 -0
  1216. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +230 -0
  1217. package/codeyam-cli/src/webserver/server.js +293 -26
  1218. package/codeyam-cli/src/webserver/server.js.map +1 -1
  1219. package/codeyam-cli/src/webserver/terminalServer.js +726 -0
  1220. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -0
  1221. package/codeyam-cli/templates/chrome-extension-react/EXTENSION_SETUP.md +75 -0
  1222. package/codeyam-cli/templates/chrome-extension-react/README.md +46 -0
  1223. package/codeyam-cli/templates/chrome-extension-react/gitignore +15 -0
  1224. package/codeyam-cli/templates/chrome-extension-react/index.html +12 -0
  1225. package/codeyam-cli/templates/chrome-extension-react/package.json +27 -0
  1226. package/codeyam-cli/templates/chrome-extension-react/popup.html +12 -0
  1227. package/codeyam-cli/templates/chrome-extension-react/public/manifest.json +15 -0
  1228. package/codeyam-cli/templates/chrome-extension-react/src/background/service-worker.ts +7 -0
  1229. package/codeyam-cli/templates/chrome-extension-react/src/globals.css +6 -0
  1230. package/codeyam-cli/templates/chrome-extension-react/src/lib/storage.ts +37 -0
  1231. package/codeyam-cli/templates/chrome-extension-react/src/popup/App.tsx +12 -0
  1232. package/codeyam-cli/templates/chrome-extension-react/src/popup/main.tsx +10 -0
  1233. package/codeyam-cli/templates/chrome-extension-react/tsconfig.json +24 -0
  1234. package/codeyam-cli/templates/chrome-extension-react/vite.config.ts +41 -0
  1235. package/codeyam-cli/templates/codeyam-editor-claude.md +147 -0
  1236. package/codeyam-cli/templates/codeyam-memory-hook.sh +199 -0
  1237. package/codeyam-cli/templates/commands/codeyam-diagnose.md +481 -0
  1238. package/codeyam-cli/templates/editor-step-hook.py +231 -0
  1239. package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +89 -0
  1240. package/codeyam-cli/templates/expo-react-native/README.md +41 -0
  1241. package/codeyam-cli/templates/expo-react-native/app/(tabs)/_layout.tsx +33 -0
  1242. package/codeyam-cli/templates/expo-react-native/app/(tabs)/index.tsx +12 -0
  1243. package/codeyam-cli/templates/expo-react-native/app/(tabs)/settings.tsx +12 -0
  1244. package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +12 -0
  1245. package/codeyam-cli/templates/expo-react-native/app.json +18 -0
  1246. package/codeyam-cli/templates/expo-react-native/babel.config.js +9 -0
  1247. package/codeyam-cli/templates/expo-react-native/gitignore +12 -0
  1248. package/codeyam-cli/templates/expo-react-native/global.css +3 -0
  1249. package/codeyam-cli/templates/expo-react-native/lib/storage.ts +32 -0
  1250. package/codeyam-cli/templates/expo-react-native/metro.config.js +6 -0
  1251. package/codeyam-cli/templates/expo-react-native/nativewind-env.d.ts +1 -0
  1252. package/codeyam-cli/templates/expo-react-native/package.json +38 -0
  1253. package/codeyam-cli/templates/expo-react-native/tailwind.config.js +10 -0
  1254. package/codeyam-cli/templates/expo-react-native/tsconfig.json +10 -0
  1255. package/codeyam-cli/templates/hooks/staleness-check.sh +43 -0
  1256. package/codeyam-cli/templates/isolation-route/next-app.tsx.template +80 -0
  1257. package/codeyam-cli/templates/isolation-route/next-pages.tsx.template +79 -0
  1258. package/codeyam-cli/templates/isolation-route/vite-react.tsx.template +78 -0
  1259. package/codeyam-cli/templates/msw/browser-setup.ts.template +47 -0
  1260. package/codeyam-cli/templates/msw/handler-router.ts.template +47 -0
  1261. package/codeyam-cli/templates/msw/server-setup.ts.template +52 -0
  1262. package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_PATTERNS.md +308 -0
  1263. package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_UPGRADE.md +304 -0
  1264. package/codeyam-cli/templates/nextjs-prisma-sqlite/DATABASE.md +126 -0
  1265. package/codeyam-cli/templates/nextjs-prisma-sqlite/FEATURE_PATTERNS.md +37 -0
  1266. package/codeyam-cli/templates/nextjs-prisma-sqlite/README.md +53 -0
  1267. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/api/todos/route.ts +17 -0
  1268. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/codeyam-isolate/layout.tsx +12 -0
  1269. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/globals.css +26 -0
  1270. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/layout.tsx +34 -0
  1271. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/lib/prisma.ts +24 -0
  1272. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/page.tsx +10 -0
  1273. package/codeyam-cli/templates/nextjs-prisma-sqlite/env +4 -0
  1274. package/codeyam-cli/templates/nextjs-prisma-sqlite/eslint.config.mjs +11 -0
  1275. package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +64 -0
  1276. package/codeyam-cli/templates/nextjs-prisma-sqlite/next.config.ts +14 -0
  1277. package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +39 -0
  1278. package/codeyam-cli/templates/nextjs-prisma-sqlite/postcss.config.mjs +7 -0
  1279. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/schema.prisma +27 -0
  1280. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/seed.ts +40 -0
  1281. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma.config.ts +12 -0
  1282. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +92 -0
  1283. package/codeyam-cli/templates/nextjs-prisma-sqlite/tsconfig.json +34 -0
  1284. package/codeyam-cli/templates/nextjs-prisma-sqlite/vitest.config.ts +13 -0
  1285. package/codeyam-cli/templates/nextjs-prisma-supabase/README.md +52 -0
  1286. package/codeyam-cli/templates/nextjs-prisma-supabase/SUPABASE_SETUP.md +104 -0
  1287. package/codeyam-cli/templates/nextjs-prisma-supabase/app/api/todos/route.ts +17 -0
  1288. package/codeyam-cli/templates/nextjs-prisma-supabase/app/globals.css +26 -0
  1289. package/codeyam-cli/templates/nextjs-prisma-supabase/app/layout.tsx +34 -0
  1290. package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/prisma.ts +20 -0
  1291. package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/supabase.ts +12 -0
  1292. package/codeyam-cli/templates/nextjs-prisma-supabase/app/page.tsx +10 -0
  1293. package/codeyam-cli/templates/nextjs-prisma-supabase/env +9 -0
  1294. package/codeyam-cli/templates/nextjs-prisma-supabase/eslint.config.mjs +11 -0
  1295. package/codeyam-cli/templates/nextjs-prisma-supabase/gitignore +40 -0
  1296. package/codeyam-cli/templates/nextjs-prisma-supabase/next.config.ts +11 -0
  1297. package/codeyam-cli/templates/nextjs-prisma-supabase/package.json +37 -0
  1298. package/codeyam-cli/templates/nextjs-prisma-supabase/postcss.config.mjs +7 -0
  1299. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/schema.prisma +27 -0
  1300. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/seed.ts +39 -0
  1301. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma.config.ts +12 -0
  1302. package/codeyam-cli/templates/nextjs-prisma-supabase/tsconfig.json +34 -0
  1303. package/codeyam-cli/templates/prompts/conversation-guidance.txt +44 -0
  1304. package/codeyam-cli/templates/prompts/conversation-prompt.txt +28 -0
  1305. package/codeyam-cli/templates/prompts/interruption-prompt.txt +31 -0
  1306. package/codeyam-cli/templates/prompts/stale-rules-prompt.txt +24 -0
  1307. package/codeyam-cli/templates/rule-notification-hook.py +83 -0
  1308. package/codeyam-cli/templates/rule-reflection-hook.py +647 -0
  1309. package/codeyam-cli/templates/rules-instructions.md +78 -0
  1310. package/codeyam-cli/templates/skills/codeyam-debug/SKILL.md +601 -0
  1311. package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +237 -0
  1312. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +148 -0
  1313. package/codeyam-cli/templates/skills/codeyam-memory/SKILL.md +611 -0
  1314. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/deprecated-prompt.md +100 -0
  1315. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/detect-deprecated-patterns.mjs +139 -0
  1316. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/find-exports.mjs +52 -0
  1317. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/misleading-api-prompt.md +117 -0
  1318. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/read-json-field.mjs +61 -0
  1319. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/ripgrep-fallback.mjs +155 -0
  1320. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/analyze-prompt.md +46 -0
  1321. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/cleanup.mjs +13 -0
  1322. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/filter-session.mjs +95 -0
  1323. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/preprocess.mjs +160 -0
  1324. package/codeyam-cli/templates/skills/codeyam-new-rule/SKILL.md +11 -0
  1325. package/codeyam-cli/templates/skills/codeyam-setup/SKILL.md +600 -0
  1326. package/codeyam-cli/templates/skills/codeyam-sim/SKILL.md +222 -0
  1327. package/codeyam-cli/templates/skills/codeyam-test/SKILL.md +178 -0
  1328. package/codeyam-cli/templates/skills/codeyam-verify/SKILL.md +179 -0
  1329. package/package.json +39 -28
  1330. package/packages/ai/index.js +9 -7
  1331. package/packages/ai/index.js.map +1 -1
  1332. package/packages/ai/src/lib/analyzeScope.js +198 -6
  1333. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  1334. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
  1335. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
  1336. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +201 -25
  1337. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  1338. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
  1339. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
  1340. package/packages/ai/src/lib/astScopes/methodSemantics.js +177 -23
  1341. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  1342. package/packages/ai/src/lib/astScopes/paths.js +11 -1
  1343. package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
  1344. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  1345. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  1346. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
  1347. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
  1348. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +31 -1
  1349. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  1350. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
  1351. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
  1352. package/packages/ai/src/lib/astScopes/processExpression.js +1296 -105
  1353. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  1354. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  1355. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  1356. package/packages/ai/src/lib/checkAllAttributes.js +24 -9
  1357. package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
  1358. package/packages/ai/src/lib/completionCall.js +188 -38
  1359. package/packages/ai/src/lib/completionCall.js.map +1 -1
  1360. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +2322 -157
  1361. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  1362. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js +27 -1
  1363. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js.map +1 -1
  1364. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +19 -4
  1365. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  1366. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
  1367. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  1368. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +184 -58
  1369. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  1370. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +13 -3
  1371. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -1
  1372. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +6 -4
  1373. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -1
  1374. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +66 -2
  1375. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  1376. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +198 -15
  1377. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  1378. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  1379. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  1380. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js +54 -0
  1381. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js.map +1 -0
  1382. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +145 -15
  1383. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  1384. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
  1385. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
  1386. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  1387. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  1388. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  1389. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  1390. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +371 -73
  1391. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  1392. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
  1393. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
  1394. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js +28 -3
  1395. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js.map +1 -1
  1396. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js +34 -0
  1397. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js.map +1 -0
  1398. package/packages/ai/src/lib/dataStructureChunking.js +130 -0
  1399. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
  1400. package/packages/ai/src/lib/deepEqual.js +32 -0
  1401. package/packages/ai/src/lib/deepEqual.js.map +1 -0
  1402. package/packages/ai/src/lib/e2eDataTracking.js +241 -0
  1403. package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
  1404. package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
  1405. package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
  1406. package/packages/ai/src/lib/generateChangesEntityScenarioData.js +68 -8
  1407. package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
  1408. package/packages/ai/src/lib/generateChangesEntityScenarios.js +82 -90
  1409. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  1410. package/packages/ai/src/lib/generateEntityDataStructure.js +56 -6
  1411. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  1412. package/packages/ai/src/lib/generateEntityScenarioData.js +1185 -73
  1413. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  1414. package/packages/ai/src/lib/generateEntityScenarios.js +193 -83
  1415. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  1416. package/packages/ai/src/lib/generateExecutionFlows.js +484 -0
  1417. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
  1418. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
  1419. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
  1420. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1807 -0
  1421. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
  1422. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
  1423. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
  1424. package/packages/ai/src/lib/generateStatementAnalysis.js +1 -1
  1425. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +84 -14
  1426. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  1427. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  1428. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  1429. package/packages/ai/src/lib/isolateScopes.js +270 -7
  1430. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  1431. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  1432. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  1433. package/packages/ai/src/lib/mergeStatements.js +104 -6
  1434. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  1435. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  1436. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  1437. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +82 -20
  1438. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  1439. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +1 -1
  1440. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
  1441. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +21 -58
  1442. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  1443. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
  1444. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
  1445. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +83 -6
  1446. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  1447. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +10 -28
  1448. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  1449. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
  1450. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
  1451. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  1452. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  1453. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
  1454. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
  1455. package/packages/ai/src/lib/resolvePathToControllable.js +677 -0
  1456. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
  1457. package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
  1458. package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
  1459. package/packages/ai/src/lib/worker/SerializableDataStructure.js +29 -0
  1460. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  1461. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +98 -1
  1462. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  1463. package/packages/analyze/index.js +1 -0
  1464. package/packages/analyze/index.js.map +1 -1
  1465. package/packages/analyze/src/lib/FileAnalyzer.js +179 -36
  1466. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  1467. package/packages/analyze/src/lib/ProjectAnalyzer.js +109 -30
  1468. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  1469. package/packages/analyze/src/lib/analysisContext.js +30 -5
  1470. package/packages/analyze/src/lib/analysisContext.js.map +1 -1
  1471. package/packages/analyze/src/lib/asts/index.js +4 -2
  1472. package/packages/analyze/src/lib/asts/index.js.map +1 -1
  1473. package/packages/analyze/src/lib/asts/nodes/getNodeType.js +2 -1
  1474. package/packages/analyze/src/lib/asts/nodes/getNodeType.js.map +1 -1
  1475. package/packages/analyze/src/lib/asts/nodes/index.js +3 -1
  1476. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  1477. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
  1478. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
  1479. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  1480. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  1481. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  1482. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  1483. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js +3 -2
  1484. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js.map +1 -1
  1485. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +41 -9
  1486. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  1487. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  1488. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  1489. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  1490. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  1491. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  1492. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  1493. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +591 -100
  1494. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  1495. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +50 -2
  1496. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  1497. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +12 -1
  1498. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  1499. package/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.js +1 -1
  1500. package/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.js +1 -1
  1501. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +15 -3
  1502. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  1503. package/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.js +1 -1
  1504. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +5 -8
  1505. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  1506. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -10
  1507. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  1508. package/packages/analyze/src/lib/files/analyzeChange.js +22 -12
  1509. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  1510. package/packages/analyze/src/lib/files/analyzeEntity.js +10 -9
  1511. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  1512. package/packages/analyze/src/lib/files/analyzeInitial.js +10 -11
  1513. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  1514. package/packages/analyze/src/lib/files/analyzeNextRoute.js +1 -1
  1515. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +22 -26
  1516. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  1517. package/packages/analyze/src/lib/files/enums/steps.js +1 -1
  1518. package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
  1519. package/packages/analyze/src/lib/files/getImportedExports.js +103 -8
  1520. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  1521. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +907 -0
  1522. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  1523. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +255 -0
  1524. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  1525. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
  1526. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
  1527. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +646 -72
  1528. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  1529. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  1530. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  1531. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
  1532. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
  1533. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +513 -29
  1534. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  1535. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +104 -0
  1536. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
  1537. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +56 -66
  1538. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  1539. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +4 -8
  1540. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  1541. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +948 -112
  1542. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  1543. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +49 -6
  1544. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
  1545. package/packages/analyze/src/lib/files/setImportedExports.js +3 -2
  1546. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  1547. package/packages/analyze/src/lib/index.js +1 -0
  1548. package/packages/analyze/src/lib/index.js.map +1 -1
  1549. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  1550. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  1551. package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
  1552. package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  1553. package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
  1554. package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  1555. package/packages/database/index.js +85 -0
  1556. package/packages/database/index.js.map +1 -0
  1557. package/packages/database/src/lib/analysisBranchToDb.js +19 -0
  1558. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -0
  1559. package/packages/database/src/lib/analysisToDb.js +26 -0
  1560. package/packages/database/src/lib/analysisToDb.js.map +1 -0
  1561. package/packages/database/src/lib/backgroundJobToDb.js.map +1 -0
  1562. package/packages/database/src/lib/branchToDb.js +18 -0
  1563. package/packages/database/src/lib/branchToDb.js.map +1 -0
  1564. package/packages/database/src/lib/commitBranchToDb.js +13 -0
  1565. package/packages/database/src/lib/commitBranchToDb.js.map +1 -0
  1566. package/packages/database/src/lib/commitToDb.js +26 -0
  1567. package/packages/database/src/lib/commitToDb.js.map +1 -0
  1568. package/packages/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  1569. package/packages/database/src/lib/createProject.js.map +1 -0
  1570. package/packages/database/src/lib/createRetryFetch.js.map +1 -0
  1571. package/packages/database/src/lib/dbToAnalysis.js.map +1 -0
  1572. package/packages/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  1573. package/packages/database/src/lib/dbToBackgroundJob.js.map +1 -0
  1574. package/packages/database/src/lib/dbToBranch.js.map +1 -0
  1575. package/packages/database/src/lib/dbToCommit.js.map +1 -0
  1576. package/packages/database/src/lib/dbToCommitBranch.js.map +1 -0
  1577. package/packages/database/src/lib/dbToEntity.js.map +1 -0
  1578. package/packages/database/src/lib/dbToEntityBranch.js.map +1 -0
  1579. package/packages/database/src/lib/dbToFile.js.map +1 -0
  1580. package/packages/database/src/lib/dbToProject.js.map +1 -0
  1581. package/packages/database/src/lib/dbToScenario.js.map +1 -0
  1582. package/packages/database/src/lib/dbToScenarioComment.js.map +1 -0
  1583. package/packages/database/src/lib/dbToUserScenario.js.map +1 -0
  1584. package/packages/database/src/lib/deleteBranch.js.map +1 -0
  1585. package/packages/database/src/lib/deleteEntities.js.map +1 -0
  1586. package/packages/database/src/lib/deleteFile.js.map +1 -0
  1587. package/packages/database/src/lib/deleteScenarios.js.map +1 -0
  1588. package/packages/database/src/lib/entityToDb.js.map +1 -0
  1589. package/packages/database/src/lib/fileToDb.js +14 -0
  1590. package/packages/database/src/lib/fileToDb.js.map +1 -0
  1591. package/packages/database/src/lib/generateSha.js.map +1 -0
  1592. package/packages/database/src/lib/jsonUpdateUtils.js.map +1 -0
  1593. package/packages/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  1594. package/packages/database/src/lib/kysely/db.js +378 -0
  1595. package/packages/database/src/lib/kysely/db.js.map +1 -0
  1596. package/packages/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  1597. package/packages/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  1598. package/packages/database/src/lib/kysely/tableRelations.js.map +1 -0
  1599. package/packages/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  1600. package/packages/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  1601. package/packages/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  1602. package/packages/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  1603. package/packages/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  1604. package/packages/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  1605. package/packages/database/src/lib/kysely/tables/commitsTable.js +47 -0
  1606. package/packages/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  1607. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  1608. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  1609. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +76 -0
  1610. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  1611. package/packages/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  1612. package/packages/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  1613. package/packages/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  1614. package/packages/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  1615. package/packages/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  1616. package/packages/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  1617. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  1618. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  1619. package/packages/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  1620. package/packages/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  1621. package/packages/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  1622. package/packages/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  1623. package/packages/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  1624. package/packages/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  1625. package/packages/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  1626. package/packages/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  1627. package/packages/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  1628. package/packages/database/src/lib/loadAnalyses.js +174 -0
  1629. package/packages/database/src/lib/loadAnalyses.js.map +1 -0
  1630. package/packages/database/src/lib/loadAnalysis.js +138 -0
  1631. package/packages/database/src/lib/loadAnalysis.js.map +1 -0
  1632. package/packages/database/src/lib/loadAnalysisBranches.js.map +1 -0
  1633. package/packages/database/src/lib/loadBackgroundJob.js.map +1 -0
  1634. package/packages/database/src/lib/loadBranch.js +100 -0
  1635. package/packages/database/src/lib/loadBranch.js.map +1 -0
  1636. package/packages/database/src/lib/loadBranches.js.map +1 -0
  1637. package/packages/database/src/lib/loadCommit.js +118 -0
  1638. package/packages/database/src/lib/loadCommit.js.map +1 -0
  1639. package/packages/database/src/lib/loadCommitBranches.js.map +1 -0
  1640. package/packages/database/src/lib/loadCommitMetadata.js.map +1 -0
  1641. package/packages/database/src/lib/loadCommits.js +219 -0
  1642. package/packages/database/src/lib/loadCommits.js.map +1 -0
  1643. package/packages/database/src/lib/loadEntities.js +76 -0
  1644. package/packages/database/src/lib/loadEntities.js.map +1 -0
  1645. package/packages/database/src/lib/loadEntity.js.map +1 -0
  1646. package/packages/database/src/lib/loadEntityBranches.js +123 -0
  1647. package/packages/database/src/lib/loadEntityBranches.js.map +1 -0
  1648. package/packages/database/src/lib/loadFile.js.map +1 -0
  1649. package/packages/database/src/lib/loadFiles.js.map +1 -0
  1650. package/packages/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  1651. package/packages/database/src/lib/loadProject.js.map +1 -0
  1652. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +65 -0
  1653. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  1654. package/packages/database/src/lib/loadScenario.js.map +1 -0
  1655. package/packages/database/src/lib/loadStatement.js.map +1 -0
  1656. package/packages/database/src/lib/nullsToUndefines.js.map +1 -0
  1657. package/packages/database/src/lib/projectToDb.js +18 -0
  1658. package/packages/database/src/lib/projectToDb.js.map +1 -0
  1659. package/packages/database/src/lib/saveBackgroundEvent.js.map +1 -0
  1660. package/packages/database/src/lib/saveEntityStatements.js.map +1 -0
  1661. package/packages/database/src/lib/saveFiles.js +33 -0
  1662. package/packages/database/src/lib/saveFiles.js.map +1 -0
  1663. package/packages/database/src/lib/saveStatement.js.map +1 -0
  1664. package/packages/database/src/lib/scenarioToDb.js +18 -0
  1665. package/packages/database/src/lib/scenarioToDb.js.map +1 -0
  1666. package/packages/database/src/lib/supabase.js.map +1 -0
  1667. package/packages/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  1668. package/packages/database/src/lib/updateCommitMetadata.js +87 -0
  1669. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -0
  1670. package/packages/database/src/lib/updateEntityBranch.js.map +1 -0
  1671. package/packages/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  1672. package/packages/database/src/lib/updateFreshAnalysisStatus.js +53 -0
  1673. package/packages/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  1674. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +81 -0
  1675. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  1676. package/packages/database/src/lib/updateProjectMetadata.js.map +1 -0
  1677. package/packages/database/src/lib/upsertAnalyses.js.map +1 -0
  1678. package/packages/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  1679. package/packages/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  1680. package/packages/database/src/lib/upsertBackgroundJob.js.map +1 -0
  1681. package/packages/database/src/lib/upsertBranches.js.map +1 -0
  1682. package/packages/database/src/lib/upsertCommitBranches.js.map +1 -0
  1683. package/packages/database/src/lib/upsertCommits.js.map +1 -0
  1684. package/packages/database/src/lib/upsertEntities.js.map +1 -0
  1685. package/packages/database/src/lib/upsertEntityBranches.js.map +1 -0
  1686. package/packages/database/src/lib/upsertFiles.js.map +1 -0
  1687. package/packages/database/src/lib/upsertGithubUser.js.map +1 -0
  1688. package/packages/database/src/lib/upsertProjects.js.map +1 -0
  1689. package/packages/database/src/lib/upsertScenarios.js.map +1 -0
  1690. package/packages/generate/index.js +3 -0
  1691. package/packages/generate/index.js.map +1 -1
  1692. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  1693. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  1694. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  1695. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  1696. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  1697. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  1698. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  1699. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  1700. package/packages/generate/src/lib/deepMerge.js +30 -2
  1701. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  1702. package/packages/generate/src/lib/directExecutionScript.js +10 -1
  1703. package/packages/generate/src/lib/directExecutionScript.js.map +1 -1
  1704. package/packages/generate/src/lib/getComponentScenarioPath.js +7 -3
  1705. package/packages/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  1706. package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
  1707. package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  1708. package/packages/github/src/lib/getCommitsFromGithub.js +1 -1
  1709. package/packages/github/src/lib/loadOrCreateCommit.js +11 -1
  1710. package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
  1711. package/packages/github/src/lib/syncHeadBranches.js +1 -1
  1712. package/packages/github/src/lib/syncPrimaryBranch.js +4 -1
  1713. package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
  1714. package/packages/github/src/lib/syncPullRequest.js +1 -1
  1715. package/packages/github/src/lib/updateCommitBranchesInDb.js +1 -1
  1716. package/packages/github/src/lib/updateFilesInDb.js +1 -1
  1717. package/packages/process/index.js +3 -0
  1718. package/packages/process/index.js.map +1 -0
  1719. package/packages/process/src/GlobalProcessManager.js.map +1 -0
  1720. package/packages/process/src/ProcessManager.js +244 -0
  1721. package/packages/process/src/ProcessManager.js.map +1 -0
  1722. package/packages/process/src/index.js.map +1 -0
  1723. package/packages/process/src/managedExecAsync.js.map +1 -0
  1724. package/packages/types/index.js.map +1 -1
  1725. package/packages/types/src/enums/ProjectFramework.js +2 -0
  1726. package/packages/types/src/enums/ProjectFramework.js.map +1 -1
  1727. package/packages/utils/index.js +2 -0
  1728. package/packages/utils/index.js.map +1 -1
  1729. package/packages/utils/src/lib/applyUniversalMocks.js +65 -7
  1730. package/packages/utils/src/lib/applyUniversalMocks.js.map +1 -1
  1731. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  1732. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  1733. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +13 -2
  1734. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  1735. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +43 -13
  1736. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -1
  1737. package/packages/utils/src/lib/fs/rsyncCopy.js +98 -3
  1738. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  1739. package/packages/utils/src/lib/lightweightEntityExtractor.js +42 -0
  1740. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  1741. package/packages/utils/src/lib/safeFileName.js +32 -3
  1742. package/packages/utils/src/lib/safeFileName.js.map +1 -1
  1743. package/packages/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  1744. package/packages/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  1745. package/packages/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  1746. package/packages/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  1747. package/packages/utils/src/lib/startCommand/index.js +3 -0
  1748. package/packages/utils/src/lib/startCommand/index.js.map +1 -0
  1749. package/scripts/npm-post-install.cjs +34 -0
  1750. package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
  1751. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -185
  1752. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -235
  1753. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -251
  1754. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
  1755. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -109
  1756. package/analyzer-template/packages/github/dist/supabase/index.d.ts +0 -86
  1757. package/analyzer-template/packages/github/dist/supabase/index.d.ts.map +0 -1
  1758. package/analyzer-template/packages/github/dist/supabase/index.js +0 -84
  1759. package/analyzer-template/packages/github/dist/supabase/index.js.map +0 -1
  1760. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.d.ts.map +0 -1
  1761. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js +0 -19
  1762. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  1763. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.d.ts.map +0 -1
  1764. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js +0 -26
  1765. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js.map +0 -1
  1766. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.d.ts.map +0 -1
  1767. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  1768. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.d.ts.map +0 -1
  1769. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js +0 -18
  1770. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js.map +0 -1
  1771. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.d.ts.map +0 -1
  1772. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js +0 -13
  1773. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js.map +0 -1
  1774. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.d.ts.map +0 -1
  1775. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js +0 -26
  1776. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js.map +0 -1
  1777. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.d.ts.map +0 -1
  1778. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  1779. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.d.ts.map +0 -1
  1780. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.js.map +0 -1
  1781. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.d.ts.map +0 -1
  1782. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.js.map +0 -1
  1783. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.d.ts.map +0 -1
  1784. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.js.map +0 -1
  1785. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.d.ts.map +0 -1
  1786. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  1787. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.d.ts.map +0 -1
  1788. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  1789. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.d.ts.map +0 -1
  1790. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.js.map +0 -1
  1791. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.d.ts.map +0 -1
  1792. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.js.map +0 -1
  1793. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.d.ts.map +0 -1
  1794. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  1795. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.d.ts.map +0 -1
  1796. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.js.map +0 -1
  1797. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.d.ts.map +0 -1
  1798. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  1799. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.d.ts.map +0 -1
  1800. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.js.map +0 -1
  1801. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.d.ts.map +0 -1
  1802. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.js.map +0 -1
  1803. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.d.ts.map +0 -1
  1804. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.js.map +0 -1
  1805. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.d.ts.map +0 -1
  1806. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  1807. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.d.ts.map +0 -1
  1808. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.js.map +0 -1
  1809. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.d.ts.map +0 -1
  1810. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.js.map +0 -1
  1811. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.d.ts.map +0 -1
  1812. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.js.map +0 -1
  1813. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.d.ts.map +0 -1
  1814. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.js.map +0 -1
  1815. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.d.ts.map +0 -1
  1816. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.js.map +0 -1
  1817. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.d.ts.map +0 -1
  1818. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.js.map +0 -1
  1819. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.d.ts.map +0 -1
  1820. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js +0 -14
  1821. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js.map +0 -1
  1822. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.d.ts.map +0 -1
  1823. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.js.map +0 -1
  1824. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.d.ts.map +0 -1
  1825. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  1826. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.d.ts.map +0 -1
  1827. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  1828. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts +0 -67
  1829. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts.map +0 -1
  1830. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js +0 -360
  1831. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js.map +0 -1
  1832. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.d.ts.map +0 -1
  1833. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  1834. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +0 -1
  1835. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  1836. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts +0 -87
  1837. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts.map +0 -1
  1838. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  1839. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.d.ts.map +0 -1
  1840. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  1841. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts +0 -105
  1842. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts.map +0 -1
  1843. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  1844. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +0 -1
  1845. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  1846. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +0 -1
  1847. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  1848. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.d.ts.map +0 -1
  1849. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  1850. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.d.ts.map +0 -1
  1851. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  1852. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts +0 -47
  1853. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts.map +0 -1
  1854. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  1855. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  1856. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts +0 -65
  1857. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts.map +0 -1
  1858. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  1859. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.d.ts.map +0 -1
  1860. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  1861. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.d.ts.map +0 -1
  1862. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  1863. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.d.ts.map +0 -1
  1864. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  1865. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +0 -1
  1866. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  1867. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.d.ts.map +0 -1
  1868. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  1869. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.d.ts.map +0 -1
  1870. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  1871. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +0 -1
  1872. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  1873. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts +0 -65
  1874. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts.map +0 -1
  1875. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  1876. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.d.ts.map +0 -1
  1877. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  1878. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.d.ts.map +0 -1
  1879. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  1880. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.d.ts.map +0 -1
  1881. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  1882. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.d.ts.map +0 -1
  1883. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  1884. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.d.ts.map +0 -1
  1885. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  1886. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.d.ts.map +0 -1
  1887. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  1888. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts +0 -14
  1889. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts.map +0 -1
  1890. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js +0 -131
  1891. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js.map +0 -1
  1892. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.d.ts.map +0 -1
  1893. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js +0 -130
  1894. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js.map +0 -1
  1895. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.d.ts.map +0 -1
  1896. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  1897. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.d.ts.map +0 -1
  1898. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  1899. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.d.ts.map +0 -1
  1900. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js +0 -90
  1901. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js.map +0 -1
  1902. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.d.ts.map +0 -1
  1903. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.js.map +0 -1
  1904. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.d.ts.map +0 -1
  1905. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js +0 -111
  1906. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js.map +0 -1
  1907. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.d.ts.map +0 -1
  1908. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.js.map +0 -1
  1909. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.d.ts.map +0 -1
  1910. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  1911. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts +0 -13
  1912. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts.map +0 -1
  1913. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js +0 -188
  1914. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js.map +0 -1
  1915. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts +0 -11
  1916. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts.map +0 -1
  1917. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js +0 -63
  1918. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js.map +0 -1
  1919. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.d.ts.map +0 -1
  1920. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.js.map +0 -1
  1921. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.d.ts.map +0 -1
  1922. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js +0 -114
  1923. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js.map +0 -1
  1924. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.d.ts.map +0 -1
  1925. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.js.map +0 -1
  1926. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.d.ts.map +0 -1
  1927. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.js.map +0 -1
  1928. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +0 -1
  1929. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  1930. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.d.ts.map +0 -1
  1931. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.js.map +0 -1
  1932. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +0 -1
  1933. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  1934. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  1935. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.d.ts.map +0 -1
  1936. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.js.map +0 -1
  1937. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts +0 -3
  1938. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts.map +0 -1
  1939. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.js.map +0 -1
  1940. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.d.ts.map +0 -1
  1941. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.js.map +0 -1
  1942. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.d.ts.map +0 -1
  1943. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js +0 -18
  1944. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js.map +0 -1
  1945. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.d.ts.map +0 -1
  1946. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  1947. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.d.ts.map +0 -1
  1948. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.js.map +0 -1
  1949. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.d.ts.map +0 -1
  1950. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js +0 -33
  1951. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js.map +0 -1
  1952. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.d.ts.map +0 -1
  1953. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.js.map +0 -1
  1954. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.d.ts.map +0 -1
  1955. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js +0 -18
  1956. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js.map +0 -1
  1957. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts +0 -4
  1958. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts.map +0 -1
  1959. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.js.map +0 -1
  1960. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.d.ts.map +0 -1
  1961. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  1962. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts +0 -13
  1963. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts.map +0 -1
  1964. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js +0 -100
  1965. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  1966. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.d.ts.map +0 -1
  1967. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.js.map +0 -1
  1968. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.d.ts.map +0 -1
  1969. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  1970. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.d.ts.map +0 -1
  1971. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.js +0 -42
  1972. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  1973. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +0 -1
  1974. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -70
  1975. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  1976. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.d.ts.map +0 -1
  1977. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  1978. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.d.ts.map +0 -1
  1979. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.js.map +0 -1
  1980. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.d.ts.map +0 -1
  1981. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  1982. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.d.ts.map +0 -1
  1983. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  1984. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.d.ts.map +0 -1
  1985. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  1986. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.d.ts.map +0 -1
  1987. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.js.map +0 -1
  1988. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.d.ts.map +0 -1
  1989. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  1990. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.d.ts.map +0 -1
  1991. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.js.map +0 -1
  1992. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.d.ts.map +0 -1
  1993. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.js.map +0 -1
  1994. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.d.ts.map +0 -1
  1995. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  1996. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.d.ts.map +0 -1
  1997. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.js.map +0 -1
  1998. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.d.ts.map +0 -1
  1999. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.js.map +0 -1
  2000. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.d.ts.map +0 -1
  2001. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.js.map +0 -1
  2002. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.d.ts.map +0 -1
  2003. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.js.map +0 -1
  2004. package/analyzer-template/packages/supabase/client.ts +0 -35
  2005. package/analyzer-template/packages/supabase/index.ts +0 -93
  2006. package/analyzer-template/packages/supabase/package.json +0 -31
  2007. package/analyzer-template/packages/supabase/src/lib/analysisBranchToDb.ts +0 -28
  2008. package/analyzer-template/packages/supabase/src/lib/analysisToDb.ts +0 -59
  2009. package/analyzer-template/packages/supabase/src/lib/branchToDb.ts +0 -24
  2010. package/analyzer-template/packages/supabase/src/lib/commitBranchToDb.ts +0 -20
  2011. package/analyzer-template/packages/supabase/src/lib/commitToDb.ts +0 -47
  2012. package/analyzer-template/packages/supabase/src/lib/fileToDb.ts +0 -17
  2013. package/analyzer-template/packages/supabase/src/lib/kysely/db.ts +0 -476
  2014. package/analyzer-template/packages/supabase/src/lib/kysely/tableRelations.ts +0 -105
  2015. package/analyzer-template/packages/supabase/src/lib/kysely/tables/commitsTable.ts +0 -61
  2016. package/analyzer-template/packages/supabase/src/lib/loadAnalyses.ts +0 -218
  2017. package/analyzer-template/packages/supabase/src/lib/loadAnalysis.ts +0 -210
  2018. package/analyzer-template/packages/supabase/src/lib/loadBranch.ts +0 -122
  2019. package/analyzer-template/packages/supabase/src/lib/loadCommit.ts +0 -163
  2020. package/analyzer-template/packages/supabase/src/lib/loadCommits.ts +0 -251
  2021. package/analyzer-template/packages/supabase/src/lib/loadEntities.ts +0 -94
  2022. package/analyzer-template/packages/supabase/src/lib/loadEntity.ts +0 -110
  2023. package/analyzer-template/packages/supabase/src/lib/loadEntityBranches.ts +0 -166
  2024. package/analyzer-template/packages/supabase/src/lib/loadFile.ts +0 -47
  2025. package/analyzer-template/packages/supabase/src/lib/loadFiles.ts +0 -137
  2026. package/analyzer-template/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.ts +0 -76
  2027. package/analyzer-template/packages/supabase/src/lib/loadStatement.ts +0 -23
  2028. package/analyzer-template/packages/supabase/src/lib/projectToDb.ts +0 -35
  2029. package/analyzer-template/packages/supabase/src/lib/saveEntityStatements.ts +0 -28
  2030. package/analyzer-template/packages/supabase/src/lib/saveFiles.ts +0 -43
  2031. package/analyzer-template/packages/supabase/src/lib/scenarioToDb.ts +0 -34
  2032. package/analyzer-template/packages/supabase/src/lib/updateCommitMetadata.ts +0 -188
  2033. package/analyzer-template/packages/supabase/src/lib/updateFreshAnalysisStatus.ts +0 -64
  2034. package/analyzer-template/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.ts +0 -94
  2035. package/analyzer-template/packages/supabase/src/lib/updateProjectMetadata.ts +0 -96
  2036. package/analyzer-template/packages/supabase/src/lib/userScenarioToDb.ts +0 -18
  2037. package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
  2038. package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
  2039. package/analyzer-template/process/README.md +0 -507
  2040. package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
  2041. package/background/src/lib/process/ProcessManager.js +0 -244
  2042. package/background/src/lib/process/ProcessManager.js.map +0 -1
  2043. package/background/src/lib/process/index.js.map +0 -1
  2044. package/background/src/lib/process/managedExecAsync.js.map +0 -1
  2045. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
  2046. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
  2047. package/codeyam-cli/src/commands/detect-universal-mocks.js +0 -118
  2048. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +0 -1
  2049. package/codeyam-cli/src/commands/list.js +0 -31
  2050. package/codeyam-cli/src/commands/list.js.map +0 -1
  2051. package/codeyam-cli/src/utils/universal-mocks.js +0 -152
  2052. package/codeyam-cli/src/utils/universal-mocks.js.map +0 -1
  2053. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-BFRmw1TF.js +0 -1
  2054. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-CRfBaL5B.js +0 -26
  2055. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-BYVx9KFp.js +0 -3
  2056. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-CRcT5fOZ.js +0 -3
  2057. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-Bual6h18.js +0 -1
  2058. package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-Dj4Mm0AR.js +0 -6
  2059. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-wtCIkGzq.js +0 -5
  2060. package/codeyam-cli/src/webserver/build/client/assets/_index-Cjdlwanz.js +0 -1
  2061. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-Dv3k2aEm.js +0 -10
  2062. package/codeyam-cli/src/webserver/build/client/assets/chart-column-DOftqM9U.js +0 -1
  2063. package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-De6i8FUT.js +0 -26
  2064. package/codeyam-cli/src/webserver/build/client/assets/circle-alert-0WShkwuc.js +0 -1
  2065. package/codeyam-cli/src/webserver/build/client/assets/clock-DXui5oLF.js +0 -1
  2066. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-C1gnJVOL.svg +0 -4
  2067. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DPFKgE96.js +0 -1
  2068. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-BxaXKsIx.js +0 -11
  2069. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-BRD2FrH5.js +0 -1
  2070. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-69R47Ffu.js +0 -5
  2071. package/codeyam-cli/src/webserver/build/client/assets/entityVersioning-Bk_YB1jM.js +0 -1
  2072. package/codeyam-cli/src/webserver/build/client/assets/entry.client-B5l8I1m3.js +0 -5
  2073. package/codeyam-cli/src/webserver/build/client/assets/file-text-fb2mx25c.js +0 -1
  2074. package/codeyam-cli/src/webserver/build/client/assets/files-l_Eh9jQG.js +0 -1
  2075. package/codeyam-cli/src/webserver/build/client/assets/git-BCnOUEl9.js +0 -12
  2076. package/codeyam-cli/src/webserver/build/client/assets/globals-BxkM6Up7.css +0 -1
  2077. package/codeyam-cli/src/webserver/build/client/assets/index-BgDzgbQW.js +0 -8
  2078. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-DE3HAwpF.js +0 -1
  2079. package/codeyam-cli/src/webserver/build/client/assets/manifest-5579bc45.js +0 -1
  2080. package/codeyam-cli/src/webserver/build/client/assets/root-o8NMI2bW.js +0 -16
  2081. package/codeyam-cli/src/webserver/build/client/assets/search-BymWwY_X.js +0 -1
  2082. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  2083. package/codeyam-cli/src/webserver/build/client/assets/settings-C7G4GDvW.js +0 -1
  2084. package/codeyam-cli/src/webserver/build/client/assets/settings-Dc4MlMpK.js +0 -1
  2085. package/codeyam-cli/src/webserver/build/client/assets/simulations-Duh3oShE.js +0 -1
  2086. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-AlhS7g5F.js +0 -2
  2087. package/codeyam-cli/src/webserver/build/client/assets/useToast-XY00p4rI.js +0 -1
  2088. package/codeyam-cli/src/webserver/build/client/assets/zap-Dra7vum1.js +0 -1
  2089. package/codeyam-cli/src/webserver/build/server/assets/index-Dpr7o3dP.js +0 -1
  2090. package/codeyam-cli/src/webserver/build/server/assets/server-build-BM5nyvlV.js +0 -166
  2091. package/codeyam-cli/templates/codeyam-debug-skill.md +0 -557
  2092. package/codeyam-cli/templates/codeyam-setup-skill.md +0 -453
  2093. package/codeyam-cli/templates/codeyam-sim-skill.md +0 -222
  2094. package/codeyam-cli/templates/codeyam-stop-hook.sh +0 -284
  2095. package/codeyam-cli/templates/codeyam-test-skill.md +0 -178
  2096. package/codeyam-cli/templates/codeyam-verify-skill.md +0 -179
  2097. package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
  2098. package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
  2099. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -134
  2100. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
  2101. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -190
  2102. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
  2103. package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -206
  2104. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
  2105. package/packages/ai/src/lib/isFrontend.js +0 -5
  2106. package/packages/ai/src/lib/isFrontend.js.map +0 -1
  2107. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
  2108. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
  2109. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -67
  2110. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
  2111. package/packages/supabase/index.js +0 -84
  2112. package/packages/supabase/index.js.map +0 -1
  2113. package/packages/supabase/src/lib/analysisBranchToDb.js +0 -19
  2114. package/packages/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  2115. package/packages/supabase/src/lib/analysisToDb.js +0 -26
  2116. package/packages/supabase/src/lib/analysisToDb.js.map +0 -1
  2117. package/packages/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  2118. package/packages/supabase/src/lib/branchToDb.js +0 -18
  2119. package/packages/supabase/src/lib/branchToDb.js.map +0 -1
  2120. package/packages/supabase/src/lib/commitBranchToDb.js +0 -13
  2121. package/packages/supabase/src/lib/commitBranchToDb.js.map +0 -1
  2122. package/packages/supabase/src/lib/commitToDb.js +0 -26
  2123. package/packages/supabase/src/lib/commitToDb.js.map +0 -1
  2124. package/packages/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  2125. package/packages/supabase/src/lib/createProject.js.map +0 -1
  2126. package/packages/supabase/src/lib/createRetryFetch.js.map +0 -1
  2127. package/packages/supabase/src/lib/dbToAnalysis.js.map +0 -1
  2128. package/packages/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  2129. package/packages/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  2130. package/packages/supabase/src/lib/dbToBranch.js.map +0 -1
  2131. package/packages/supabase/src/lib/dbToCommit.js.map +0 -1
  2132. package/packages/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  2133. package/packages/supabase/src/lib/dbToEntity.js.map +0 -1
  2134. package/packages/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  2135. package/packages/supabase/src/lib/dbToFile.js.map +0 -1
  2136. package/packages/supabase/src/lib/dbToProject.js.map +0 -1
  2137. package/packages/supabase/src/lib/dbToScenario.js.map +0 -1
  2138. package/packages/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  2139. package/packages/supabase/src/lib/dbToUserScenario.js.map +0 -1
  2140. package/packages/supabase/src/lib/deleteBranch.js.map +0 -1
  2141. package/packages/supabase/src/lib/deleteEntities.js.map +0 -1
  2142. package/packages/supabase/src/lib/deleteFile.js.map +0 -1
  2143. package/packages/supabase/src/lib/deleteScenarios.js.map +0 -1
  2144. package/packages/supabase/src/lib/entityToDb.js.map +0 -1
  2145. package/packages/supabase/src/lib/fileToDb.js +0 -14
  2146. package/packages/supabase/src/lib/fileToDb.js.map +0 -1
  2147. package/packages/supabase/src/lib/generateSha.js.map +0 -1
  2148. package/packages/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  2149. package/packages/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  2150. package/packages/supabase/src/lib/kysely/db.js +0 -360
  2151. package/packages/supabase/src/lib/kysely/db.js.map +0 -1
  2152. package/packages/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  2153. package/packages/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  2154. package/packages/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  2155. package/packages/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  2156. package/packages/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  2157. package/packages/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  2158. package/packages/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  2159. package/packages/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  2160. package/packages/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  2161. package/packages/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  2162. package/packages/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  2163. package/packages/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  2164. package/packages/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  2165. package/packages/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  2166. package/packages/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  2167. package/packages/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  2168. package/packages/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  2169. package/packages/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  2170. package/packages/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  2171. package/packages/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  2172. package/packages/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  2173. package/packages/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  2174. package/packages/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  2175. package/packages/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  2176. package/packages/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  2177. package/packages/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  2178. package/packages/supabase/src/lib/loadAnalyses.js +0 -131
  2179. package/packages/supabase/src/lib/loadAnalyses.js.map +0 -1
  2180. package/packages/supabase/src/lib/loadAnalysis.js +0 -130
  2181. package/packages/supabase/src/lib/loadAnalysis.js.map +0 -1
  2182. package/packages/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  2183. package/packages/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  2184. package/packages/supabase/src/lib/loadBranch.js +0 -90
  2185. package/packages/supabase/src/lib/loadBranch.js.map +0 -1
  2186. package/packages/supabase/src/lib/loadBranches.js.map +0 -1
  2187. package/packages/supabase/src/lib/loadCommit.js +0 -111
  2188. package/packages/supabase/src/lib/loadCommit.js.map +0 -1
  2189. package/packages/supabase/src/lib/loadCommitBranches.js.map +0 -1
  2190. package/packages/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  2191. package/packages/supabase/src/lib/loadCommits.js +0 -188
  2192. package/packages/supabase/src/lib/loadCommits.js.map +0 -1
  2193. package/packages/supabase/src/lib/loadEntities.js +0 -63
  2194. package/packages/supabase/src/lib/loadEntities.js.map +0 -1
  2195. package/packages/supabase/src/lib/loadEntity.js.map +0 -1
  2196. package/packages/supabase/src/lib/loadEntityBranches.js +0 -114
  2197. package/packages/supabase/src/lib/loadEntityBranches.js.map +0 -1
  2198. package/packages/supabase/src/lib/loadFile.js.map +0 -1
  2199. package/packages/supabase/src/lib/loadFiles.js.map +0 -1
  2200. package/packages/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  2201. package/packages/supabase/src/lib/loadProject.js.map +0 -1
  2202. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  2203. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  2204. package/packages/supabase/src/lib/loadScenario.js.map +0 -1
  2205. package/packages/supabase/src/lib/loadStatement.js.map +0 -1
  2206. package/packages/supabase/src/lib/nullsToUndefines.js.map +0 -1
  2207. package/packages/supabase/src/lib/projectToDb.js +0 -18
  2208. package/packages/supabase/src/lib/projectToDb.js.map +0 -1
  2209. package/packages/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  2210. package/packages/supabase/src/lib/saveEntityStatements.js.map +0 -1
  2211. package/packages/supabase/src/lib/saveFiles.js +0 -33
  2212. package/packages/supabase/src/lib/saveFiles.js.map +0 -1
  2213. package/packages/supabase/src/lib/saveStatement.js.map +0 -1
  2214. package/packages/supabase/src/lib/scenarioToDb.js +0 -18
  2215. package/packages/supabase/src/lib/scenarioToDb.js.map +0 -1
  2216. package/packages/supabase/src/lib/supabase.js.map +0 -1
  2217. package/packages/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  2218. package/packages/supabase/src/lib/updateCommitMetadata.js +0 -100
  2219. package/packages/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  2220. package/packages/supabase/src/lib/updateEntityBranch.js.map +0 -1
  2221. package/packages/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  2222. package/packages/supabase/src/lib/updateFreshAnalysisStatus.js +0 -42
  2223. package/packages/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  2224. package/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -70
  2225. package/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  2226. package/packages/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  2227. package/packages/supabase/src/lib/upsertAnalyses.js.map +0 -1
  2228. package/packages/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  2229. package/packages/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  2230. package/packages/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  2231. package/packages/supabase/src/lib/upsertBranches.js.map +0 -1
  2232. package/packages/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  2233. package/packages/supabase/src/lib/upsertCommits.js.map +0 -1
  2234. package/packages/supabase/src/lib/upsertEntities.js.map +0 -1
  2235. package/packages/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  2236. package/packages/supabase/src/lib/upsertFiles.js.map +0 -1
  2237. package/packages/supabase/src/lib/upsertGithubUser.js.map +0 -1
  2238. package/packages/supabase/src/lib/upsertProjects.js.map +0 -1
  2239. package/packages/supabase/src/lib/upsertScenarios.js.map +0 -1
  2240. package/scripts/finalize-analyzer.cjs +0 -79
  2241. /package/analyzer-template/packages/{supabase → database}/__mocks__/index.ts +0 -0
  2242. /package/analyzer-template/packages/{supabase → database}/src/lib/backgroundJobToDb.ts +0 -0
  2243. /package/analyzer-template/packages/{supabase → database}/src/lib/client/listenForCommits_Client.ts +0 -0
  2244. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysesInClient.ts +0 -0
  2245. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysis_Client.ts +0 -0
  2246. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadBranches_Client.ts +0 -0
  2247. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadCommit_Client.ts +0 -0
  2248. /package/analyzer-template/packages/{supabase → database}/src/lib/client/upsertFiles_Client.ts +0 -0
  2249. /package/analyzer-template/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.ts +0 -0
  2250. /package/analyzer-template/packages/{supabase → database}/src/lib/createProject.ts +0 -0
  2251. /package/analyzer-template/packages/{supabase → database}/src/lib/createRetryFetch.ts +0 -0
  2252. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysis.ts +0 -0
  2253. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysisBranch.ts +0 -0
  2254. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBackgroundJob.ts +0 -0
  2255. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBranch.ts +0 -0
  2256. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommit.ts +0 -0
  2257. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommitBranch.ts +0 -0
  2258. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntity.ts +0 -0
  2259. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntityBranch.ts +0 -0
  2260. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToFile.ts +0 -0
  2261. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToProject.ts +0 -0
  2262. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenario.ts +0 -0
  2263. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenarioComment.ts +0 -0
  2264. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToUserScenario.ts +0 -0
  2265. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteBranch.ts +0 -0
  2266. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteEntities.ts +0 -0
  2267. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteFile.ts +0 -0
  2268. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteScenarios.ts +0 -0
  2269. /package/analyzer-template/packages/{supabase → database}/src/lib/entityToDb.ts +0 -0
  2270. /package/analyzer-template/packages/{supabase → database}/src/lib/generateSha.ts +0 -0
  2271. /package/analyzer-template/packages/{supabase → database}/src/lib/jsonUpdateUtils.ts +0 -0
  2272. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.ts +0 -0
  2273. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/schemaHelpers.ts +0 -0
  2274. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.ts +0 -0
  2275. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.ts +0 -0
  2276. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.ts +0 -0
  2277. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.ts +0 -0
  2278. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.ts +0 -0
  2279. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.ts +0 -0
  2280. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.ts +0 -0
  2281. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.ts +0 -0
  2282. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.ts +0 -0
  2283. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.ts +0 -0
  2284. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/filesTable.ts +0 -0
  2285. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.ts +0 -0
  2286. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.ts +0 -0
  2287. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.ts +0 -0
  2288. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.ts +0 -0
  2289. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.ts +0 -0
  2290. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.ts +0 -0
  2291. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.ts +0 -0
  2292. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.ts +0 -0
  2293. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.ts +0 -0
  2294. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/usersTable.ts +0 -0
  2295. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/upsertHelpers.ts +0 -0
  2296. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely.ts +0 -0
  2297. /package/analyzer-template/packages/{supabase → database}/src/lib/loadAnalysisBranches.ts +0 -0
  2298. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBackgroundJob.ts +0 -0
  2299. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBranches.ts +0 -0
  2300. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitBranches.ts +0 -0
  2301. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitMetadata.ts +0 -0
  2302. /package/analyzer-template/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.ts +0 -0
  2303. /package/analyzer-template/packages/{supabase → database}/src/lib/loadProject.ts +0 -0
  2304. /package/analyzer-template/packages/{supabase → database}/src/lib/loadScenario.ts +0 -0
  2305. /package/analyzer-template/packages/{supabase → database}/src/lib/nullsToUndefines.ts +0 -0
  2306. /package/analyzer-template/packages/{supabase → database}/src/lib/saveBackgroundEvent.ts +0 -0
  2307. /package/analyzer-template/packages/{supabase → database}/src/lib/saveStatement.ts +0 -0
  2308. /package/analyzer-template/packages/{supabase → database}/src/lib/scenarioCommentToDb.ts +0 -0
  2309. /package/analyzer-template/packages/{supabase → database}/src/lib/supabase.ts +0 -0
  2310. /package/analyzer-template/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.ts +0 -0
  2311. /package/analyzer-template/packages/{supabase → database}/src/lib/updateEntityBranch.ts +0 -0
  2312. /package/analyzer-template/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.ts +0 -0
  2313. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalyses.ts +0 -0
  2314. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.ts +0 -0
  2315. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysisBranches.ts +0 -0
  2316. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBackgroundJob.ts +0 -0
  2317. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBranches.ts +0 -0
  2318. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommitBranches.ts +0 -0
  2319. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommits.ts +0 -0
  2320. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntities.ts +0 -0
  2321. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntityBranches.ts +0 -0
  2322. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertFiles.ts +0 -0
  2323. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertGithubUser.ts +0 -0
  2324. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertProjects.ts +0 -0
  2325. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertScenarios.ts +0 -0
  2326. /package/analyzer-template/packages/{supabase → database}/tsconfig.json +0 -0
  2327. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisBranchToDb.d.ts +0 -0
  2328. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisToDb.d.ts +0 -0
  2329. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.d.ts +0 -0
  2330. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2331. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/branchToDb.d.ts +0 -0
  2332. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitBranchToDb.d.ts +0 -0
  2333. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitToDb.d.ts +0 -0
  2334. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.d.ts +0 -0
  2335. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2336. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.d.ts +0 -0
  2337. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.js +0 -0
  2338. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.d.ts +0 -0
  2339. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2340. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.d.ts +0 -0
  2341. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2342. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.d.ts +0 -0
  2343. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2344. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.d.ts +0 -0
  2345. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2346. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.d.ts +0 -0
  2347. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2348. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.d.ts +0 -0
  2349. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2350. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.d.ts +0 -0
  2351. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2352. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.d.ts +0 -0
  2353. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2354. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.d.ts +0 -0
  2355. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2356. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.d.ts +0 -0
  2357. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.js +0 -0
  2358. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.d.ts +0 -0
  2359. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.js +0 -0
  2360. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.d.ts +0 -0
  2361. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2362. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.d.ts +0 -0
  2363. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2364. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.d.ts +0 -0
  2365. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2366. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.d.ts +0 -0
  2367. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2368. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.d.ts +0 -0
  2369. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2370. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.d.ts +0 -0
  2371. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.js +0 -0
  2372. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.d.ts +0 -0
  2373. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2374. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.d.ts +0 -0
  2375. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.js +0 -0
  2376. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/fileToDb.d.ts +0 -0
  2377. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.d.ts +0 -0
  2378. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.js +0 -0
  2379. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.d.ts +0 -0
  2380. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2381. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.d.ts +0 -0
  2382. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2383. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.d.ts +0 -0
  2384. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2385. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.d.ts +0 -0
  2386. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2387. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2388. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.d.ts +0 -0
  2389. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2390. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2391. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.d.ts +0 -0
  2392. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2393. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.d.ts +0 -0
  2394. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2395. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.d.ts +0 -0
  2396. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2397. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.d.ts +0 -0
  2398. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2399. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2400. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.d.ts +0 -0
  2401. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2402. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.d.ts +0 -0
  2403. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2404. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.d.ts +0 -0
  2405. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2406. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.d.ts +0 -0
  2407. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2408. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.d.ts +0 -0
  2409. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2410. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.d.ts +0 -0
  2411. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2412. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.d.ts +0 -0
  2413. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2414. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2415. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.d.ts +0 -0
  2416. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2417. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.d.ts +0 -0
  2418. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2419. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.d.ts +0 -0
  2420. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2421. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.d.ts +0 -0
  2422. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2423. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.d.ts +0 -0
  2424. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2425. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.d.ts +0 -0
  2426. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2427. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysis.d.ts +0 -0
  2428. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.d.ts +0 -0
  2429. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2430. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.d.ts +0 -0
  2431. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2432. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranch.d.ts +0 -0
  2433. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.d.ts +0 -0
  2434. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.js +0 -0
  2435. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommit.d.ts +0 -0
  2436. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.d.ts +0 -0
  2437. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2438. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.d.ts +0 -0
  2439. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2440. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.d.ts +0 -0
  2441. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.js +0 -0
  2442. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntityBranches.d.ts +0 -0
  2443. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.d.ts +0 -0
  2444. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.js +0 -0
  2445. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.d.ts +0 -0
  2446. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.js +0 -0
  2447. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.d.ts +0 -0
  2448. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2449. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.d.ts +0 -0
  2450. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.js +0 -0
  2451. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadReadyToBeCapturedAnalyses.d.ts +0 -0
  2452. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.d.ts +0 -0
  2453. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.js +0 -0
  2454. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadStatement.js +0 -0
  2455. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.d.ts +0 -0
  2456. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2457. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/projectToDb.d.ts +0 -0
  2458. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.d.ts +0 -0
  2459. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2460. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.d.ts +0 -0
  2461. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2462. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveFiles.d.ts +0 -0
  2463. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.d.ts +0 -0
  2464. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.js +0 -0
  2465. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/scenarioToDb.d.ts +0 -0
  2466. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/supabase.js +0 -0
  2467. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.d.ts +0 -0
  2468. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2469. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.d.ts +0 -0
  2470. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2471. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.d.ts +0 -0
  2472. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2473. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatus.d.ts +0 -0
  2474. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts +0 -0
  2475. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.d.ts +0 -0
  2476. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2477. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.d.ts +0 -0
  2478. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2479. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.d.ts +0 -0
  2480. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2481. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.d.ts +0 -0
  2482. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2483. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.d.ts +0 -0
  2484. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2485. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.d.ts +0 -0
  2486. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2487. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.d.ts +0 -0
  2488. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2489. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.d.ts +0 -0
  2490. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2491. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.d.ts +0 -0
  2492. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2493. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.d.ts +0 -0
  2494. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2495. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.d.ts +0 -0
  2496. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2497. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.d.ts +0 -0
  2498. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2499. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.d.ts +0 -0
  2500. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2501. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.d.ts +0 -0
  2502. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2503. /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
  2504. /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
  2505. /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
  2506. /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
  2507. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
  2508. /package/packages/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2509. /package/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2510. /package/packages/{supabase → database}/src/lib/createProject.js +0 -0
  2511. /package/packages/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2512. /package/packages/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2513. /package/packages/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2514. /package/packages/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2515. /package/packages/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2516. /package/packages/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2517. /package/packages/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2518. /package/packages/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2519. /package/packages/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2520. /package/packages/{supabase → database}/src/lib/dbToFile.js +0 -0
  2521. /package/packages/{supabase → database}/src/lib/dbToProject.js +0 -0
  2522. /package/packages/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2523. /package/packages/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2524. /package/packages/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2525. /package/packages/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2526. /package/packages/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2527. /package/packages/{supabase → database}/src/lib/deleteFile.js +0 -0
  2528. /package/packages/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2529. /package/packages/{supabase → database}/src/lib/entityToDb.js +0 -0
  2530. /package/packages/{supabase → database}/src/lib/generateSha.js +0 -0
  2531. /package/packages/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2532. /package/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2533. /package/packages/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2534. /package/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2535. /package/packages/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2536. /package/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2537. /package/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2538. /package/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2539. /package/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2540. /package/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2541. /package/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2542. /package/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2543. /package/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2544. /package/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2545. /package/packages/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2546. /package/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2547. /package/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2548. /package/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2549. /package/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2550. /package/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2551. /package/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2552. /package/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2553. /package/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2554. /package/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2555. /package/packages/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2556. /package/packages/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2557. /package/packages/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2558. /package/packages/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2559. /package/packages/{supabase → database}/src/lib/loadBranches.js +0 -0
  2560. /package/packages/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2561. /package/packages/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2562. /package/packages/{supabase → database}/src/lib/loadEntity.js +0 -0
  2563. /package/packages/{supabase → database}/src/lib/loadFile.js +0 -0
  2564. /package/packages/{supabase → database}/src/lib/loadFiles.js +0 -0
  2565. /package/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2566. /package/packages/{supabase → database}/src/lib/loadProject.js +0 -0
  2567. /package/packages/{supabase → database}/src/lib/loadScenario.js +0 -0
  2568. /package/packages/{supabase → database}/src/lib/loadStatement.js +0 -0
  2569. /package/packages/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2570. /package/packages/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2571. /package/packages/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2572. /package/packages/{supabase → database}/src/lib/saveStatement.js +0 -0
  2573. /package/packages/{supabase → database}/src/lib/supabase.js +0 -0
  2574. /package/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2575. /package/packages/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2576. /package/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2577. /package/packages/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2578. /package/packages/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2579. /package/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2580. /package/packages/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2581. /package/packages/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2582. /package/packages/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2583. /package/packages/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2584. /package/packages/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2585. /package/packages/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2586. /package/packages/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2587. /package/packages/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2588. /package/packages/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2589. /package/packages/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2590. /package/packages/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2591. /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
  2592. /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
  2593. /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.
@@ -44,160 +494,1043 @@ export function markConditionVariablesAsNullable(
44
494
  ts.isJsxSelfClosingElement(rightUnwrapped) ||
45
495
  ts.isJsxFragment(rightUnwrapped);
46
496
 
47
- if (!isJsxConsequence) {
48
- // This handles chains like `a && b && ...` where both a and b are checks
49
- markConditionVariablesAsNullable(unwrapped.right, context);
50
- }
51
- return;
52
- }
497
+ if (!isJsxConsequence) {
498
+ // This handles chains like `a && b && ...` where both a and b are checks
499
+ markConditionVariablesAsNullable(unwrapped.right, context);
500
+ }
501
+ return;
502
+ }
503
+
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
+ });
53
969
 
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
- }
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.
@@ -337,7 +1691,7 @@ export function processExpression({
337
1691
  const structure = context.getStructure();
338
1692
 
339
1693
  // Propagate existing equivalencies for sub-properties
340
- for (const [key, value] of Object.entries(equivalentVariables)) {
1694
+ for (const [key, rawValue] of Object.entries(equivalentVariables)) {
341
1695
  // Check if this equivalency is for a sub-property of the identifier
342
1696
  // e.g., completeDataStructure['Function Arguments'] or completeDataStructure.foo
343
1697
  if (
@@ -348,8 +1702,14 @@ export function processExpression({
348
1702
  const newTargetPath = StructuredPath.fromBase(
349
1703
  targetPath.toString() + subPath,
350
1704
  );
351
- const valuePath = StructuredPath.fromBase(value);
352
- context.addEquivalence(newTargetPath, valuePath);
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
+ }
353
1713
  }
354
1714
  }
355
1715
 
@@ -494,7 +1854,8 @@ export function processExpression({
494
1854
  // Check if this is an environment variable access
495
1855
  const fullText = unwrappedNode.getText(context.sourceFile);
496
1856
  if (
497
- 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
498
1859
  ) {
499
1860
  context.addEnvironmentVariable(fullText);
500
1861
  }
@@ -801,6 +2162,14 @@ export function processExpression({
801
2162
  // e.g., `const tab = segments[0] || 'default'` should trace tab back to segments[0]
802
2163
  if (operatorKind === ts.SyntaxKind.QuestionQuestionToken) {
803
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
+
804
2173
  if (targetPath) {
805
2174
  resultPath = StructuredPath.fromNode(
806
2175
  unwrappedNode.left,
@@ -818,15 +2187,55 @@ export function processExpression({
818
2187
  );
819
2188
  }
820
2189
  } else if (operatorKind === ts.SyntaxKind.BarBarToken) {
821
- // For ||, also create an equivalence to the left side
2190
+ // For ||, create equivalences to BOTH sides
822
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)
823
2195
  if (targetPath) {
824
- resultPath = StructuredPath.fromNode(
2196
+ // Get paths for both sides
2197
+ const leftPath = StructuredPath.fromNode(
825
2198
  unwrappedNode.left,
826
2199
  context.sourceFile,
827
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;
828
2237
  }
829
- // Note: Unlike ??, we don't set targetPath when there's no target
2238
+ // Note: When there's no targetPath, we don't recursively process
830
2239
  // because || is often used in boolean contexts where the full expression matters
831
2240
  }
832
2241
  } else if (operatorKind === ts.SyntaxKind.InstanceOfKeyword) {
@@ -889,9 +2298,10 @@ export function processExpression({
889
2298
  return false;
890
2299
  }
891
2300
 
892
- // Construct empty arguments list just to get the call path
893
- // We'll process each argument with its parameter path as targetPath
894
- 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);
895
2305
 
896
2306
  // 2. Process all arguments recursively WITH targetPath for proper equivalence
897
2307
  for (let i = 0; i < unwrappedNode.arguments.length; i++) {
@@ -933,16 +2343,57 @@ export function processExpression({
933
2343
 
934
2344
  // Get the source expression path (e.g., the object for obj.method())
935
2345
  const sourceExpr = unwrappedNode.expression.expression;
936
- const sourcePath = StructuredPath.fromNode(
937
- sourceExpr,
938
- context.sourceFile,
939
- );
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
+ );
940
2381
 
941
- if (sourcePath) {
942
- // Apply method semantics
943
- semantics.addEquivalences(callPath, sourcePath, context);
944
- returnType = semantics.getReturnType();
945
- 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
+ }
946
2397
  }
947
2398
  }
948
2399
  }
@@ -965,10 +2416,18 @@ export function processExpression({
965
2416
  );
966
2417
 
967
2418
  if (sourcePath) {
968
- // Apply method semantics
969
- semantics.addEquivalences(callPath, sourcePath, context);
970
- returnType = semantics.getReturnType();
971
- 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
+ }
972
2431
  }
973
2432
  }
974
2433
  }
@@ -1041,6 +2500,13 @@ export function processExpression({
1041
2500
  // Create a path for this property within the base
1042
2501
  const propPath = targetPath.withProperty(propName);
1043
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
+
1044
2510
  // Process the property value with propPath as targetPath
1045
2511
  // This allows nested object literals to work correctly
1046
2512
  processExpression({
@@ -1340,14 +2806,30 @@ export function processExpression({
1340
2806
  // Extract conditional usages for key attribute detection
1341
2807
  extractConditionalUsage(unwrappedNode.condition, context, 'ternary');
1342
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
+
1343
2820
  // Process all parts recursively
1344
2821
  processExpression({
1345
2822
  node: unwrappedNode.condition,
1346
2823
  context,
1347
2824
  typeHint: 'boolean | unknown',
1348
2825
  }); //TODO: could we capture that this is evidence of a boolean type?
1349
- processExpression({ node: unwrappedNode.whenTrue, context });
1350
- 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 });
1351
2833
 
1352
2834
  // Create a path for the whole expression
1353
2835
  const expressionSourcePath = nodeToSource(
@@ -1370,10 +2852,22 @@ export function processExpression({
1370
2852
  // Register type for the expression
1371
2853
  context.addType(expressionSourcePath, resultType);
1372
2854
 
1373
- // 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
1374
2858
  if (targetPath) {
1375
- context.addEquivalence(targetPath, expressionSourcePath);
1376
- 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);
1377
2871
  }
1378
2872
 
1379
2873
  return true;
@@ -1456,6 +2950,35 @@ export function processExpression({
1456
2950
 
1457
2951
  // Handle Arrow Functions: (p) => p.prop, (a, b) => { ... }
1458
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
+
1459
2982
  // Create a path for the function
1460
2983
  const functionPath = StructuredPath.empty();
1461
2984
 
@@ -1667,6 +3190,24 @@ export function processExpression({
1667
3190
  return true;
1668
3191
  }
1669
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
+
1670
3211
  // Handle Prefix Unary Expressions: ++x, --y, !z, -a
1671
3212
  if (ts.isPrefixUnaryExpression(unwrappedNode)) {
1672
3213
  // Process the operand
@@ -1868,6 +3409,19 @@ export function processExpression({
1868
3409
  for (const child of unwrappedNode.children) {
1869
3410
  // Process expressions in JSX children: <div>{expr}</div>
1870
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
+
1871
3425
  // Process the expression with StructuredPath.empty() as targetPath
1872
3426
  // to trigger type registration without imposing prefix
1873
3427
  processExpression({
@@ -1883,8 +3437,9 @@ export function processExpression({
1883
3437
  }
1884
3438
  }
1885
3439
 
1886
- // Register component as 'function' type (not 'JSX')
1887
- 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');
1888
3443
 
1889
3444
  // If targetPath is provided (e.g., in variable assignment), establish equivalence to hardcoded "JSX"
1890
3445
  if (targetPath) {
@@ -1901,6 +3456,19 @@ export function processExpression({
1901
3456
  for (const child of unwrappedNode.children) {
1902
3457
  // Process expressions in JSX children: <>{expr}</>
1903
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
+
1904
3472
  // Process the expression to extract structure
1905
3473
  processExpression({
1906
3474
  node: child.expression,
@@ -2155,6 +3723,9 @@ function processJsxAttribute(
2155
3723
  if (ts.isJsxExpression(attr.initializer) && attr.initializer.expression) {
2156
3724
  const expression = attr.initializer.expression;
2157
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);
2158
3729
  return true;
2159
3730
  }
2160
3731