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

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 (2711) 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 +41 -36
  5. package/analyzer-template/packages/ai/index.ts +27 -7
  6. package/analyzer-template/packages/ai/package.json +6 -6
  7. package/analyzer-template/packages/ai/scripts/ai-test-matrix.mjs +424 -0
  8. package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
  9. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +274 -8
  10. package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
  11. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +279 -43
  12. package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
  13. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +426 -20
  14. package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +42 -3
  15. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  16. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
  17. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +48 -2
  18. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
  19. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1836 -142
  20. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  21. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +328 -5
  22. package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +28 -11
  23. package/analyzer-template/packages/ai/src/lib/completionCall.ts +247 -66
  24. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +4742 -778
  25. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.ts +175 -7
  26. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +21 -4
  27. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
  28. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +249 -81
  29. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +152 -0
  30. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/DebugTracer.ts +224 -0
  31. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/PathManager.ts +203 -0
  32. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/README.md +294 -0
  33. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +163 -0
  34. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.ts +235 -0
  35. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +71 -2
  36. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +229 -21
  37. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  38. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.ts +62 -0
  39. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +166 -17
  40. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
  41. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  42. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  43. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +455 -88
  44. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
  45. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.ts +33 -3
  46. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/selectBestValue.ts +70 -0
  47. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.ts +35 -0
  48. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.ts +113 -0
  49. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +183 -0
  50. package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
  51. package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
  52. package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
  53. package/analyzer-template/packages/ai/src/lib/generateChangesEntityDocumentation.ts +20 -2
  54. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +124 -158
  55. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +139 -346
  56. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +70 -7
  57. package/analyzer-template/packages/ai/src/lib/generateEntityDocumentation.ts +16 -2
  58. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1513 -195
  59. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +232 -295
  60. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +677 -0
  61. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
  62. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +2484 -0
  63. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
  64. package/analyzer-template/packages/ai/src/lib/generateStatementAnalysis.ts +49 -72
  65. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +170 -37
  66. package/analyzer-template/packages/ai/src/lib/getLLMCallStats.ts +0 -14
  67. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  68. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +328 -7
  69. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  70. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +135 -7
  71. package/analyzer-template/packages/ai/src/lib/modelInfo.ts +15 -0
  72. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  73. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +150 -31
  74. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.ts +8 -33
  75. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +54 -62
  76. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +77 -150
  77. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
  78. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
  79. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.ts +8 -27
  80. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +139 -40
  81. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +16 -49
  82. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
  83. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  84. package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
  85. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +824 -0
  86. package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
  87. package/analyzer-template/packages/ai/src/lib/types/index.ts +2 -0
  88. package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
  89. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +171 -2
  90. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +121 -2
  91. package/analyzer-template/packages/analyze/index.ts +2 -0
  92. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +230 -54
  93. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +132 -33
  94. package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
  95. package/analyzer-template/packages/analyze/src/lib/asts/index.ts +7 -2
  96. package/analyzer-template/packages/analyze/src/lib/asts/nodes/getNodeType.ts +2 -1
  97. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +3 -1
  98. package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
  99. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  100. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  101. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.ts +4 -2
  102. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +49 -9
  103. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  104. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  105. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  106. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +762 -153
  107. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +69 -3
  108. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +16 -1
  109. package/analyzer-template/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.ts +1 -1
  110. package/analyzer-template/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.ts +1 -1
  111. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +20 -10
  112. package/analyzer-template/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.ts +1 -1
  113. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +5 -13
  114. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -10
  115. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +65 -30
  116. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +29 -11
  117. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +46 -28
  118. package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +1 -1
  119. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +26 -39
  120. package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
  121. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +135 -16
  122. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1352 -0
  123. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +313 -0
  124. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
  125. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +837 -99
  126. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  127. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
  128. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +702 -31
  129. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +166 -0
  130. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +84 -80
  131. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +8 -4
  132. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1164 -130
  133. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +61 -6
  134. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  135. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +3 -2
  136. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  137. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  138. package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
  139. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
  140. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
  141. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
  142. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
  143. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
  144. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
  145. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
  146. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  147. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
  148. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
  149. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
  150. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  151. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  152. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  153. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  154. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  155. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts +23 -0
  156. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.d.ts.map +1 -0
  157. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js +30 -0
  158. package/analyzer-template/packages/aws/dist/src/lib/s3/getPresignedUrl.js.map +1 -0
  159. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
  160. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
  161. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
  162. package/analyzer-template/packages/aws/package.json +10 -9
  163. package/analyzer-template/packages/aws/s3/index.ts +5 -0
  164. package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
  165. package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
  166. package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
  167. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  168. package/analyzer-template/packages/aws/src/lib/s3/getPresignedUrl.ts +62 -0
  169. package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
  170. package/analyzer-template/packages/database/client.ts +35 -0
  171. package/analyzer-template/packages/database/index.ts +94 -0
  172. package/analyzer-template/packages/database/package.json +31 -0
  173. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +28 -0
  174. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +59 -0
  175. package/analyzer-template/packages/database/src/lib/branchToDb.ts +24 -0
  176. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +20 -0
  177. package/analyzer-template/packages/database/src/lib/commitToDb.ts +47 -0
  178. package/analyzer-template/packages/database/src/lib/fileToDb.ts +17 -0
  179. package/analyzer-template/packages/database/src/lib/kysely/db.ts +503 -0
  180. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +108 -0
  181. package/analyzer-template/packages/database/src/lib/kysely/tables/commitsTable.ts +67 -0
  182. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +88 -0
  183. package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +138 -0
  184. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  185. package/analyzer-template/packages/database/src/lib/loadAnalyses.ts +275 -0
  186. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +223 -0
  187. package/analyzer-template/packages/database/src/lib/loadBranch.ts +137 -0
  188. package/analyzer-template/packages/database/src/lib/loadCommit.ts +173 -0
  189. package/analyzer-template/packages/database/src/lib/loadCommits.ts +290 -0
  190. package/analyzer-template/packages/database/src/lib/loadEntities.ts +111 -0
  191. package/analyzer-template/packages/database/src/lib/loadEntity.ts +105 -0
  192. package/analyzer-template/packages/database/src/lib/loadEntityBranches.ts +178 -0
  193. package/analyzer-template/packages/database/src/lib/loadFile.ts +42 -0
  194. package/analyzer-template/packages/database/src/lib/loadFiles.ts +134 -0
  195. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +96 -0
  196. package/analyzer-template/packages/database/src/lib/loadStatement.ts +23 -0
  197. package/analyzer-template/packages/database/src/lib/projectToDb.ts +35 -0
  198. package/analyzer-template/packages/database/src/lib/saveEntityStatements.ts +27 -0
  199. package/analyzer-template/packages/database/src/lib/saveFiles.ts +43 -0
  200. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +35 -0
  201. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +131 -0
  202. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatus.ts +80 -0
  203. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.ts +110 -0
  204. package/analyzer-template/packages/database/src/lib/updateProjectMetadata.ts +95 -0
  205. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +18 -0
  206. package/analyzer-template/packages/generate/index.ts +3 -0
  207. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +44 -21
  208. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.ts +18 -11
  209. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +221 -0
  210. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
  211. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +42 -9
  212. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +29 -2
  213. package/analyzer-template/packages/generate/src/lib/directExecutionScript.ts +17 -2
  214. package/analyzer-template/packages/generate/src/lib/getComponentScenarioPath.ts +8 -3
  215. package/analyzer-template/packages/generate/src/lib/scenarioComponent.ts +6 -3
  216. package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
  217. package/analyzer-template/packages/github/dist/database/index.d.ts +87 -0
  218. package/analyzer-template/packages/github/dist/database/index.d.ts.map +1 -0
  219. package/analyzer-template/packages/github/dist/database/index.js +85 -0
  220. package/analyzer-template/packages/github/dist/database/index.js.map +1 -0
  221. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.d.ts.map +1 -0
  222. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +19 -0
  223. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -0
  224. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.d.ts.map +1 -0
  225. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +26 -0
  226. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -0
  227. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.d.ts.map +1 -0
  228. package/analyzer-template/packages/github/dist/database/src/lib/backgroundJobToDb.js.map +1 -0
  229. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.d.ts.map +1 -0
  230. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +18 -0
  231. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -0
  232. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.d.ts.map +1 -0
  233. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +13 -0
  234. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -0
  235. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.d.ts.map +1 -0
  236. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +26 -0
  237. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -0
  238. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.d.ts.map +1 -0
  239. package/analyzer-template/packages/github/dist/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  240. package/analyzer-template/packages/github/dist/database/src/lib/createProject.d.ts.map +1 -0
  241. package/analyzer-template/packages/github/dist/database/src/lib/createProject.js.map +1 -0
  242. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.d.ts.map +1 -0
  243. package/analyzer-template/packages/github/dist/database/src/lib/createRetryFetch.js.map +1 -0
  244. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.d.ts.map +1 -0
  245. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysis.js.map +1 -0
  246. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.d.ts.map +1 -0
  247. package/analyzer-template/packages/github/dist/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  248. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.d.ts.map +1 -0
  249. package/analyzer-template/packages/github/dist/database/src/lib/dbToBackgroundJob.js.map +1 -0
  250. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.d.ts.map +1 -0
  251. package/analyzer-template/packages/github/dist/database/src/lib/dbToBranch.js.map +1 -0
  252. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.d.ts.map +1 -0
  253. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommit.js.map +1 -0
  254. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.d.ts.map +1 -0
  255. package/analyzer-template/packages/github/dist/database/src/lib/dbToCommitBranch.js.map +1 -0
  256. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.d.ts.map +1 -0
  257. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntity.js.map +1 -0
  258. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.d.ts.map +1 -0
  259. package/analyzer-template/packages/github/dist/database/src/lib/dbToEntityBranch.js.map +1 -0
  260. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.d.ts.map +1 -0
  261. package/analyzer-template/packages/github/dist/database/src/lib/dbToFile.js.map +1 -0
  262. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.d.ts.map +1 -0
  263. package/analyzer-template/packages/github/dist/database/src/lib/dbToProject.js.map +1 -0
  264. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.d.ts.map +1 -0
  265. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenario.js.map +1 -0
  266. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.d.ts.map +1 -0
  267. package/analyzer-template/packages/github/dist/database/src/lib/dbToScenarioComment.js.map +1 -0
  268. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.d.ts.map +1 -0
  269. package/analyzer-template/packages/github/dist/database/src/lib/dbToUserScenario.js.map +1 -0
  270. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.d.ts.map +1 -0
  271. package/analyzer-template/packages/github/dist/database/src/lib/deleteBranch.js.map +1 -0
  272. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.d.ts.map +1 -0
  273. package/analyzer-template/packages/github/dist/database/src/lib/deleteEntities.js.map +1 -0
  274. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.d.ts.map +1 -0
  275. package/analyzer-template/packages/github/dist/database/src/lib/deleteFile.js.map +1 -0
  276. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.d.ts.map +1 -0
  277. package/analyzer-template/packages/github/dist/database/src/lib/deleteScenarios.js.map +1 -0
  278. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.d.ts.map +1 -0
  279. package/analyzer-template/packages/github/dist/database/src/lib/entityToDb.js.map +1 -0
  280. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.d.ts.map +1 -0
  281. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +14 -0
  282. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -0
  283. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.d.ts.map +1 -0
  284. package/analyzer-template/packages/github/dist/database/src/lib/generateSha.js.map +1 -0
  285. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.d.ts.map +1 -0
  286. package/analyzer-template/packages/github/dist/database/src/lib/jsonUpdateUtils.js.map +1 -0
  287. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.d.ts.map +1 -0
  288. package/analyzer-template/packages/github/dist/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  289. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +73 -0
  290. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -0
  291. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +378 -0
  292. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -0
  293. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.d.ts.map +1 -0
  294. package/analyzer-template/packages/github/dist/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  295. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +1 -0
  296. package/analyzer-template/packages/github/dist/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  297. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +89 -0
  298. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts.map +1 -0
  299. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.js.map +1 -0
  300. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.d.ts.map +1 -0
  301. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  302. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +97 -0
  303. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -0
  304. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  305. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +1 -0
  306. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  307. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +1 -0
  308. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  309. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.d.ts.map +1 -0
  310. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  311. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.d.ts.map +1 -0
  312. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  313. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts +48 -0
  314. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts.map +1 -0
  315. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js +47 -0
  316. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  317. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +60 -0
  318. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -0
  319. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  320. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  321. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +27 -0
  322. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -0
  323. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +121 -0
  324. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  325. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +68 -0
  326. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -0
  327. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  328. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.d.ts.map +1 -0
  329. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  330. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.d.ts.map +1 -0
  331. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  332. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.d.ts.map +1 -0
  333. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  334. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +1 -0
  335. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  336. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.d.ts.map +1 -0
  337. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  338. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  339. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  340. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  341. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  342. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.d.ts.map +1 -0
  343. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  344. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +1 -0
  345. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  346. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +66 -0
  347. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -0
  348. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  349. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.d.ts.map +1 -0
  350. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  351. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.d.ts.map +1 -0
  352. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  353. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.d.ts.map +1 -0
  354. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  355. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.d.ts.map +1 -0
  356. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  357. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.d.ts.map +1 -0
  358. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  359. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.d.ts.map +1 -0
  360. package/analyzer-template/packages/github/dist/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  361. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts +16 -0
  362. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts.map +1 -0
  363. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js +174 -0
  364. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js.map +1 -0
  365. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -0
  366. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +138 -0
  367. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -0
  368. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.d.ts.map +1 -0
  369. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysisBranches.js.map +1 -0
  370. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.d.ts.map +1 -0
  371. package/analyzer-template/packages/github/dist/database/src/lib/loadBackgroundJob.js.map +1 -0
  372. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.d.ts.map +1 -0
  373. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js +100 -0
  374. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js.map +1 -0
  375. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.d.ts.map +1 -0
  376. package/analyzer-template/packages/github/dist/database/src/lib/loadBranches.js.map +1 -0
  377. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.d.ts.map +1 -0
  378. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js +118 -0
  379. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js.map +1 -0
  380. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.d.ts.map +1 -0
  381. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitBranches.js.map +1 -0
  382. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.d.ts.map +1 -0
  383. package/analyzer-template/packages/github/dist/database/src/lib/loadCommitMetadata.js.map +1 -0
  384. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts +15 -0
  385. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts.map +1 -0
  386. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +219 -0
  387. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js.map +1 -0
  388. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts +13 -0
  389. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -0
  390. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +76 -0
  391. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -0
  392. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -0
  393. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -0
  394. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.d.ts.map +1 -0
  395. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js +123 -0
  396. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js.map +1 -0
  397. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.d.ts.map +1 -0
  398. package/analyzer-template/packages/github/dist/database/src/lib/loadFile.js.map +1 -0
  399. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.d.ts.map +1 -0
  400. package/analyzer-template/packages/github/dist/database/src/lib/loadFiles.js.map +1 -0
  401. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +1 -0
  402. package/analyzer-template/packages/github/dist/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  403. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.d.ts.map +1 -0
  404. package/analyzer-template/packages/github/dist/database/src/lib/loadProject.js.map +1 -0
  405. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -0
  406. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +65 -0
  407. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  408. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.d.ts.map +1 -0
  409. package/analyzer-template/packages/github/dist/database/src/lib/loadScenario.js.map +1 -0
  410. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts +3 -0
  411. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.d.ts.map +1 -0
  412. package/analyzer-template/packages/github/dist/database/src/lib/loadStatement.js.map +1 -0
  413. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.d.ts.map +1 -0
  414. package/analyzer-template/packages/github/dist/database/src/lib/nullsToUndefines.js.map +1 -0
  415. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.d.ts.map +1 -0
  416. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +18 -0
  417. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -0
  418. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.d.ts.map +1 -0
  419. package/analyzer-template/packages/github/dist/database/src/lib/saveBackgroundEvent.js.map +1 -0
  420. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.d.ts.map +1 -0
  421. package/analyzer-template/packages/github/dist/database/src/lib/saveEntityStatements.js.map +1 -0
  422. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.d.ts.map +1 -0
  423. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +33 -0
  424. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -0
  425. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.d.ts.map +1 -0
  426. package/analyzer-template/packages/github/dist/database/src/lib/saveStatement.js.map +1 -0
  427. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.d.ts.map +1 -0
  428. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +18 -0
  429. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -0
  430. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts +4 -0
  431. package/analyzer-template/packages/github/dist/database/src/lib/supabase.d.ts.map +1 -0
  432. package/analyzer-template/packages/github/dist/database/src/lib/supabase.js.map +1 -0
  433. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.d.ts.map +1 -0
  434. package/analyzer-template/packages/github/dist/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  435. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts +13 -0
  436. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -0
  437. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +87 -0
  438. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -0
  439. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.d.ts.map +1 -0
  440. package/analyzer-template/packages/github/dist/database/src/lib/updateEntityBranch.js.map +1 -0
  441. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.d.ts.map +1 -0
  442. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  443. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.d.ts.map +1 -0
  444. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js +53 -0
  445. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  446. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +1 -0
  447. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +81 -0
  448. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  449. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.d.ts.map +1 -0
  450. package/analyzer-template/packages/github/dist/database/src/lib/updateProjectMetadata.js.map +1 -0
  451. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.d.ts.map +1 -0
  452. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalyses.js.map +1 -0
  453. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.d.ts.map +1 -0
  454. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  455. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.d.ts.map +1 -0
  456. package/analyzer-template/packages/github/dist/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  457. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.d.ts.map +1 -0
  458. package/analyzer-template/packages/github/dist/database/src/lib/upsertBackgroundJob.js.map +1 -0
  459. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.d.ts.map +1 -0
  460. package/analyzer-template/packages/github/dist/database/src/lib/upsertBranches.js.map +1 -0
  461. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.d.ts.map +1 -0
  462. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommitBranches.js.map +1 -0
  463. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.d.ts.map +1 -0
  464. package/analyzer-template/packages/github/dist/database/src/lib/upsertCommits.js.map +1 -0
  465. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.d.ts.map +1 -0
  466. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntities.js.map +1 -0
  467. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.d.ts.map +1 -0
  468. package/analyzer-template/packages/github/dist/database/src/lib/upsertEntityBranches.js.map +1 -0
  469. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.d.ts.map +1 -0
  470. package/analyzer-template/packages/github/dist/database/src/lib/upsertFiles.js.map +1 -0
  471. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.d.ts.map +1 -0
  472. package/analyzer-template/packages/github/dist/database/src/lib/upsertGithubUser.js.map +1 -0
  473. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.d.ts.map +1 -0
  474. package/analyzer-template/packages/github/dist/database/src/lib/upsertProjects.js.map +1 -0
  475. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.d.ts.map +1 -0
  476. package/analyzer-template/packages/github/dist/database/src/lib/upsertScenarios.js.map +1 -0
  477. package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
  478. package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
  479. package/analyzer-template/packages/github/dist/generate/index.js +3 -0
  480. package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
  481. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
  482. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +43 -21
  483. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  484. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.d.ts.map +1 -1
  485. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
  486. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
  487. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
  488. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
  489. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  490. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  491. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
  492. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
  493. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  494. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  495. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  496. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  497. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  498. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  499. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +30 -2
  500. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  501. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.d.ts.map +1 -1
  502. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js +10 -1
  503. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js.map +1 -1
  504. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.d.ts.map +1 -1
  505. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js +7 -3
  506. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  507. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.d.ts.map +1 -1
  508. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js +5 -3
  509. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js.map +1 -1
  510. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
  511. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
  512. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
  513. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  514. package/analyzer-template/packages/github/dist/github/src/lib/getCommitsFromGithub.js +1 -1
  515. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
  516. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +11 -1
  517. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
  518. package/analyzer-template/packages/github/dist/github/src/lib/syncBranches.js +1 -1
  519. package/analyzer-template/packages/github/dist/github/src/lib/syncHeadBranches.js +1 -1
  520. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
  521. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +4 -1
  522. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
  523. package/analyzer-template/packages/github/dist/github/src/lib/syncPullRequest.js +1 -1
  524. package/analyzer-template/packages/github/dist/github/src/lib/updateCommitBranchesInDb.js +1 -1
  525. package/analyzer-template/packages/github/dist/github/src/lib/updateFilesInDb.js +1 -1
  526. package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
  527. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  528. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  529. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts +2 -0
  530. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
  531. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js +2 -0
  532. package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js.map +1 -1
  533. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -9
  534. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  535. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts +2 -0
  536. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts.map +1 -1
  537. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +4 -0
  538. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
  539. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  540. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  541. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +21 -6
  542. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  543. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  544. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  545. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  546. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  547. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
  548. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  549. package/analyzer-template/packages/github/dist/utils/index.d.ts +3 -0
  550. package/analyzer-template/packages/github/dist/utils/index.d.ts.map +1 -1
  551. package/analyzer-template/packages/github/dist/utils/index.js +4 -0
  552. package/analyzer-template/packages/github/dist/utils/index.js.map +1 -1
  553. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts +25 -0
  554. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  555. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js +40 -0
  556. package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js.map +1 -0
  557. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  558. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  559. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  560. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  561. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  562. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  563. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  564. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
  565. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  566. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  567. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  568. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  569. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  570. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  571. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  572. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  573. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  574. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  575. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  576. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  577. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +21 -0
  578. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
  579. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  580. package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  581. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  582. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  583. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  584. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
  585. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  586. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +32 -3
  587. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
  588. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  589. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  590. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  591. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  592. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  593. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  594. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  595. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  596. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  597. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  598. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js +3 -0
  599. package/analyzer-template/packages/github/dist/utils/src/lib/startCommand/index.js.map +1 -0
  600. package/analyzer-template/packages/github/package.json +2 -2
  601. package/analyzer-template/packages/github/src/lib/getCommitsFromGithub.ts +1 -1
  602. package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +15 -1
  603. package/analyzer-template/packages/github/src/lib/syncBranches.ts +1 -1
  604. package/analyzer-template/packages/github/src/lib/syncHeadBranches.ts +1 -1
  605. package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +3 -1
  606. package/analyzer-template/packages/github/src/lib/syncPullRequest.ts +1 -1
  607. package/analyzer-template/packages/github/src/lib/updateCommitBranchesInDb.ts +1 -1
  608. package/analyzer-template/packages/github/src/lib/updateFilesInDb.ts +1 -1
  609. package/analyzer-template/packages/process/index.ts +2 -0
  610. package/analyzer-template/packages/process/package.json +12 -0
  611. package/analyzer-template/packages/process/tsconfig.json +8 -0
  612. package/analyzer-template/packages/types/index.ts +5 -0
  613. package/analyzer-template/packages/types/src/enums/ProjectFramework.ts +2 -0
  614. package/analyzer-template/packages/types/src/types/Analysis.ts +104 -9
  615. package/analyzer-template/packages/types/src/types/Commit.ts +2 -0
  616. package/analyzer-template/packages/types/src/types/Entity.ts +4 -0
  617. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +8 -0
  618. package/analyzer-template/packages/types/src/types/Scenario.ts +21 -10
  619. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +228 -3
  620. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  621. package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
  622. package/analyzer-template/packages/ui-components/package.json +5 -5
  623. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  624. package/analyzer-template/packages/ui-components/src/scenario-editor/components/DataItemEditor.tsx +1 -1
  625. package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
  626. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  627. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  628. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts +2 -0
  629. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
  630. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js +2 -0
  631. package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js.map +1 -1
  632. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -9
  633. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  634. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts +2 -0
  635. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts.map +1 -1
  636. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +4 -0
  637. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
  638. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  639. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  640. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +21 -6
  641. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  642. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  643. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  644. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  645. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  646. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
  647. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  648. package/analyzer-template/packages/utils/dist/utils/index.d.ts +3 -0
  649. package/analyzer-template/packages/utils/dist/utils/index.d.ts.map +1 -1
  650. package/analyzer-template/packages/utils/dist/utils/index.js +4 -0
  651. package/analyzer-template/packages/utils/dist/utils/index.js.map +1 -1
  652. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts +25 -0
  653. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
  654. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js +40 -0
  655. package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js.map +1 -0
  656. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  657. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js +65 -7
  658. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  659. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts +13 -1
  660. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.d.ts.map +1 -1
  661. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  662. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  663. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
  664. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  665. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  666. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
  667. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  668. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  669. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts +12 -1
  670. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
  671. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  672. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  673. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
  674. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  675. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  676. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +21 -0
  677. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
  678. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  679. package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  680. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  681. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +98 -3
  682. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  683. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  684. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +42 -0
  685. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  686. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
  687. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  688. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +32 -3
  689. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
  690. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts +18 -0
  691. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.d.ts.map +1 -0
  692. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  693. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  694. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts +26 -0
  695. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.d.ts.map +1 -0
  696. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  697. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  698. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts +3 -0
  699. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.d.ts.map +1 -0
  700. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js +3 -0
  701. package/analyzer-template/packages/utils/dist/utils/src/lib/startCommand/index.js.map +1 -0
  702. package/analyzer-template/packages/utils/index.ts +11 -0
  703. package/analyzer-template/packages/utils/src/lib/Semaphore.ts +42 -0
  704. package/analyzer-template/packages/utils/src/lib/applyUniversalMocks.ts +74 -9
  705. package/analyzer-template/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.ts +20 -1
  706. package/analyzer-template/packages/utils/src/lib/frameworks/getNextRoutePath.ts +2 -1
  707. package/analyzer-template/packages/utils/src/lib/frameworks/getRemixRoutePath.ts +2 -1
  708. package/analyzer-template/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.ts +17 -1
  709. package/analyzer-template/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.ts +1 -0
  710. package/analyzer-template/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.ts +67 -0
  711. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +121 -3
  712. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +43 -0
  713. package/analyzer-template/packages/utils/src/lib/safeFileName.ts +51 -3
  714. package/analyzer-template/packages/utils/src/lib/startCommand/buildStartCommand.ts +63 -0
  715. package/analyzer-template/packages/utils/src/lib/startCommand/getWebappInfo.ts +108 -0
  716. package/analyzer-template/packages/utils/src/lib/startCommand/index.ts +10 -0
  717. package/analyzer-template/playwright/capture.ts +103 -93
  718. package/analyzer-template/playwright/captureFromUrl.ts +121 -83
  719. package/analyzer-template/playwright/captureStatic.ts +2 -2
  720. package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
  721. package/analyzer-template/playwright/takeElementScreenshot.ts +48 -11
  722. package/analyzer-template/playwright/takeScreenshot.ts +38 -10
  723. package/analyzer-template/playwright/updateBackgroundJob.ts +1 -1
  724. package/analyzer-template/playwright/waitForServer.ts +21 -6
  725. package/analyzer-template/project/LazyFileStore.ts +1 -1
  726. package/analyzer-template/project/TESTING.md +83 -0
  727. package/analyzer-template/project/analyzeBaselineCommit.ts +10 -1
  728. package/analyzer-template/project/analyzeBranchCommit.ts +5 -1
  729. package/analyzer-template/project/analyzeFileEntities.ts +5 -1
  730. package/analyzer-template/project/analyzeRegularCommit.ts +10 -1
  731. package/analyzer-template/project/captureLibraryFunctionDirect.ts +30 -27
  732. package/analyzer-template/project/constructMockCode.ts +1836 -96
  733. package/analyzer-template/project/controller/startController.ts +16 -1
  734. package/analyzer-template/project/createEntitiesAndSortFiles.ts +98 -7
  735. package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
  736. package/analyzer-template/project/getFilesWithEntitiesFromRepo.ts +1 -1
  737. package/analyzer-template/project/getScenarioUrl.ts +73 -5
  738. package/analyzer-template/project/loadReadyToBeCaptured.ts +198 -38
  739. package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
  740. package/analyzer-template/project/orchestrateCapture/AwsCaptureTaskRunner.ts +12 -4
  741. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +15 -15
  742. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +97 -67
  743. package/analyzer-template/project/orchestrateCapture/SupabaseAnalysisLoader.ts +6 -6
  744. package/analyzer-template/project/orchestrateCapture/taskRunner.ts +4 -2
  745. package/analyzer-template/project/orchestrateCapture.ts +93 -14
  746. package/analyzer-template/project/prepareRepo.ts +1 -1
  747. package/analyzer-template/project/reconcileMockDataKeys.ts +264 -3
  748. package/analyzer-template/project/runAnalysis.ts +12 -1
  749. package/analyzer-template/project/runMultiScenarioServer.ts +13 -16
  750. package/analyzer-template/project/runScenarioServer.ts +1 -5
  751. package/analyzer-template/project/serverOnlyModules.ts +413 -0
  752. package/analyzer-template/project/start.ts +97 -33
  753. package/analyzer-template/project/startScenarioCapture.ts +112 -41
  754. package/analyzer-template/project/startServer.ts +50 -70
  755. package/analyzer-template/project/trackGeneratedFiles.ts +41 -0
  756. package/analyzer-template/project/updateCommitBackgroundJob.ts +1 -1
  757. package/analyzer-template/project/utils/errorHandling.ts +1 -1
  758. package/analyzer-template/project/writeClientLogRoute.ts +125 -0
  759. package/analyzer-template/project/writeMockDataTsx.ts +765 -69
  760. package/analyzer-template/project/writeScenario.ts +1 -1
  761. package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
  762. package/analyzer-template/project/writeScenarioComponents.ts +2381 -179
  763. package/analyzer-template/project/writeScenarioFiles.ts +26 -0
  764. package/analyzer-template/project/writeSimpleRoot.ts +125 -2
  765. package/analyzer-template/project/writeUniversalMocks.ts +88 -9
  766. package/analyzer-template/scripts/comboWorkerLoop.cjs +99 -50
  767. package/analyzer-template/scripts/defaultCmd.sh +9 -0
  768. package/analyzer-template/scripts/postbuild.cjs +12 -1
  769. package/analyzer-template/tsconfig.json +14 -1
  770. package/background/src/lib/local/createLocalAnalyzer.js +2 -30
  771. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  772. package/background/src/lib/local/execAsync.js +1 -1
  773. package/background/src/lib/local/execAsync.js.map +1 -1
  774. package/background/src/lib/virtualized/common/execAsync.js +2 -2
  775. package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
  776. package/background/src/lib/virtualized/project/LazyFileStore.js +1 -1
  777. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +8 -2
  778. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  779. package/background/src/lib/virtualized/project/analyzeBranchCommit.js +3 -2
  780. package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
  781. package/background/src/lib/virtualized/project/analyzeFileEntities.js +3 -2
  782. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  783. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +8 -2
  784. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  785. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js +4 -4
  786. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js.map +1 -1
  787. package/background/src/lib/virtualized/project/constructMockCode.js +1603 -68
  788. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  789. package/background/src/lib/virtualized/project/controller/startController.js +11 -1
  790. package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
  791. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js +83 -4
  792. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js.map +1 -1
  793. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
  794. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
  795. package/background/src/lib/virtualized/project/getFilesWithEntitiesFromRepo.js +1 -1
  796. package/background/src/lib/virtualized/project/getScenarioUrl.js +38 -3
  797. package/background/src/lib/virtualized/project/getScenarioUrl.js.map +1 -1
  798. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +108 -6
  799. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  800. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
  801. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
  802. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js +2 -2
  803. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js.map +1 -1
  804. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +13 -7
  805. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  806. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +73 -49
  807. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  808. package/background/src/lib/virtualized/project/orchestrateCapture.js +77 -15
  809. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  810. package/background/src/lib/virtualized/project/prepareRepo.js +1 -1
  811. package/background/src/lib/virtualized/project/prepareRepo.js.map +1 -1
  812. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +223 -3
  813. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  814. package/background/src/lib/virtualized/project/runAnalysis.js +10 -1
  815. package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
  816. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +13 -14
  817. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  818. package/background/src/lib/virtualized/project/serverOnlyModules.js +338 -0
  819. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -0
  820. package/background/src/lib/virtualized/project/start.js +83 -30
  821. package/background/src/lib/virtualized/project/start.js.map +1 -1
  822. package/background/src/lib/virtualized/project/startScenarioCapture.js +84 -31
  823. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  824. package/background/src/lib/virtualized/project/startServer.js +40 -68
  825. package/background/src/lib/virtualized/project/startServer.js.map +1 -1
  826. package/background/src/lib/virtualized/project/trackGeneratedFiles.js +30 -0
  827. package/background/src/lib/virtualized/project/trackGeneratedFiles.js.map +1 -0
  828. package/background/src/lib/virtualized/project/updateCommitBackgroundJob.js +1 -1
  829. package/background/src/lib/virtualized/project/utils/errorHandling.js +1 -1
  830. package/background/src/lib/virtualized/project/writeClientLogRoute.js +110 -0
  831. package/background/src/lib/virtualized/project/writeClientLogRoute.js.map +1 -0
  832. package/background/src/lib/virtualized/project/writeMockDataTsx.js +652 -60
  833. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  834. package/background/src/lib/virtualized/project/writeScenario.js +1 -1
  835. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
  836. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
  837. package/background/src/lib/virtualized/project/writeScenarioComponents.js +1743 -117
  838. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  839. package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
  840. package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
  841. package/background/src/lib/virtualized/project/writeSimpleRoot.js +113 -2
  842. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  843. package/background/src/lib/virtualized/project/writeUniversalMocks.js +72 -8
  844. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  845. package/codeyam-cli/scripts/apply-setup.js +386 -9
  846. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  847. package/codeyam-cli/scripts/extract-setup.js +1 -1
  848. package/codeyam-cli/scripts/populateEntityTimestamps.js +1 -1
  849. package/codeyam-cli/scripts/populateEntityTimestamps.js.map +1 -1
  850. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js +196 -0
  851. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js.map +1 -0
  852. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js +114 -0
  853. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js.map +1 -0
  854. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js +149 -0
  855. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js.map +1 -0
  856. package/codeyam-cli/src/cli.js +42 -17
  857. package/codeyam-cli/src/cli.js.map +1 -1
  858. package/codeyam-cli/src/codeyam-cli.js +18 -2
  859. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  860. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js +45 -0
  861. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js.map +1 -0
  862. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +101 -47
  863. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
  864. package/codeyam-cli/src/commands/analyze.js +22 -10
  865. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  866. package/codeyam-cli/src/commands/baseline.js +176 -0
  867. package/codeyam-cli/src/commands/baseline.js.map +1 -0
  868. package/codeyam-cli/src/commands/debug.js +253 -0
  869. package/codeyam-cli/src/commands/debug.js.map +1 -0
  870. package/codeyam-cli/src/commands/default.js +43 -35
  871. package/codeyam-cli/src/commands/default.js.map +1 -1
  872. package/codeyam-cli/src/commands/editor.js +3375 -0
  873. package/codeyam-cli/src/commands/editor.js.map +1 -0
  874. package/codeyam-cli/src/commands/entities.js +1 -1
  875. package/codeyam-cli/src/commands/generate-data-structure.js +17 -8
  876. package/codeyam-cli/src/commands/generate-data-structure.js.map +1 -1
  877. package/codeyam-cli/src/commands/init.js +148 -312
  878. package/codeyam-cli/src/commands/init.js.map +1 -1
  879. package/codeyam-cli/src/commands/memory.js +278 -0
  880. package/codeyam-cli/src/commands/memory.js.map +1 -0
  881. package/codeyam-cli/src/commands/recapture.js +228 -0
  882. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  883. package/codeyam-cli/src/commands/report.js +150 -0
  884. package/codeyam-cli/src/commands/report.js.map +1 -0
  885. package/codeyam-cli/src/commands/setup-sandbox.js +167 -0
  886. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -0
  887. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  888. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  889. package/codeyam-cli/src/commands/start.js +8 -12
  890. package/codeyam-cli/src/commands/start.js.map +1 -1
  891. package/codeyam-cli/src/commands/status.js +23 -1
  892. package/codeyam-cli/src/commands/status.js.map +1 -1
  893. package/codeyam-cli/src/commands/suggest.js +1 -1
  894. package/codeyam-cli/src/commands/test-startup.js +17 -6
  895. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  896. package/codeyam-cli/src/commands/verify.js +14 -2
  897. package/codeyam-cli/src/commands/verify.js.map +1 -1
  898. package/codeyam-cli/src/commands/wipe.js +108 -0
  899. package/codeyam-cli/src/commands/wipe.js.map +1 -0
  900. package/codeyam-cli/src/data/techStacks.js +77 -0
  901. package/codeyam-cli/src/data/techStacks.js.map +1 -0
  902. package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js +173 -0
  903. package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js.map +1 -0
  904. package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js +46 -0
  905. package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js.map +1 -0
  906. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js +6 -6
  907. package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js.map +1 -1
  908. package/codeyam-cli/src/utils/__tests__/devServerState.test.js +134 -0
  909. package/codeyam-cli/src/utils/__tests__/devServerState.test.js.map +1 -0
  910. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +137 -0
  911. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -0
  912. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +987 -0
  913. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -0
  914. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js +93 -0
  915. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js.map +1 -0
  916. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js +304 -0
  917. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js.map +1 -0
  918. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +121 -0
  919. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -0
  920. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js +294 -0
  921. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js.map +1 -0
  922. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js +542 -0
  923. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js.map +1 -0
  924. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +520 -0
  925. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -0
  926. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js +270 -0
  927. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js.map +1 -0
  928. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js +217 -0
  929. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js.map +1 -0
  930. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +353 -0
  931. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -0
  932. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +153 -0
  933. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -0
  934. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js +139 -0
  935. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js.map +1 -0
  936. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +221 -0
  937. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -0
  938. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +1059 -0
  939. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -0
  940. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +213 -0
  941. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -0
  942. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +1799 -0
  943. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -0
  944. package/codeyam-cli/src/utils/__tests__/entityVersioning.test.js +2 -2
  945. package/codeyam-cli/src/utils/__tests__/fileWatcher.batch.test.js +2 -2
  946. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js +58 -30
  947. package/codeyam-cli/src/utils/__tests__/fileWatcher.multiversion.test.js.map +1 -1
  948. package/codeyam-cli/src/utils/__tests__/fileWatcher.optimization.test.js +2 -2
  949. package/codeyam-cli/src/utils/__tests__/fileWatcher.versioning.test.js +2 -2
  950. package/codeyam-cli/src/utils/__tests__/git.editor.test.js +134 -0
  951. package/codeyam-cli/src/utils/__tests__/git.editor.test.js.map +1 -0
  952. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +107 -0
  953. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -0
  954. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +185 -0
  955. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -0
  956. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js +129 -0
  957. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js.map +1 -0
  958. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js +9 -0
  959. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js.map +1 -1
  960. package/codeyam-cli/src/utils/__tests__/project.test.js +65 -0
  961. package/codeyam-cli/src/utils/__tests__/project.test.js.map +1 -0
  962. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +227 -0
  963. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -0
  964. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js +121 -0
  965. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js.map +1 -0
  966. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +454 -0
  967. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -0
  968. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
  969. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
  970. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +175 -74
  971. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  972. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js +51 -0
  973. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js.map +1 -0
  974. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +142 -0
  975. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -0
  976. package/codeyam-cli/src/utils/analysisRunner.js +32 -17
  977. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  978. package/codeyam-cli/src/utils/analyzer.js +40 -2
  979. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  980. package/codeyam-cli/src/utils/analyzerFinalization.js +100 -0
  981. package/codeyam-cli/src/utils/analyzerFinalization.js.map +1 -0
  982. package/codeyam-cli/src/utils/backgroundServer.js +204 -31
  983. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  984. package/codeyam-cli/src/utils/buildFlags.js +4 -0
  985. package/codeyam-cli/src/utils/buildFlags.js.map +1 -0
  986. package/codeyam-cli/src/utils/changeDetection.js +1 -1
  987. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js +2 -2
  988. package/codeyam-cli/src/utils/cleanupAnalysisFiles.js.map +1 -1
  989. package/codeyam-cli/src/utils/database.js +129 -8
  990. package/codeyam-cli/src/utils/database.js.map +1 -1
  991. package/codeyam-cli/src/utils/devModeEvents.js +40 -0
  992. package/codeyam-cli/src/utils/devModeEvents.js.map +1 -0
  993. package/codeyam-cli/src/utils/devServerState.js +71 -0
  994. package/codeyam-cli/src/utils/devServerState.js.map +1 -0
  995. package/codeyam-cli/src/utils/editorApi.js +79 -0
  996. package/codeyam-cli/src/utils/editorApi.js.map +1 -0
  997. package/codeyam-cli/src/utils/editorAudit.js +210 -0
  998. package/codeyam-cli/src/utils/editorAudit.js.map +1 -0
  999. package/codeyam-cli/src/utils/editorCapture.js +102 -0
  1000. package/codeyam-cli/src/utils/editorCapture.js.map +1 -0
  1001. package/codeyam-cli/src/utils/editorDevServer.js +197 -0
  1002. package/codeyam-cli/src/utils/editorDevServer.js.map +1 -0
  1003. package/codeyam-cli/src/utils/editorEntityChangeStatus.js +44 -0
  1004. package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -0
  1005. package/codeyam-cli/src/utils/editorImageVerifier.js +155 -0
  1006. package/codeyam-cli/src/utils/editorImageVerifier.js.map +1 -0
  1007. package/codeyam-cli/src/utils/editorJournal.js +225 -0
  1008. package/codeyam-cli/src/utils/editorJournal.js.map +1 -0
  1009. package/codeyam-cli/src/utils/editorLoaderHelpers.js +113 -0
  1010. package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -0
  1011. package/codeyam-cli/src/utils/editorMockState.js +248 -0
  1012. package/codeyam-cli/src/utils/editorMockState.js.map +1 -0
  1013. package/codeyam-cli/src/utils/editorPreloadHelpers.js +135 -0
  1014. package/codeyam-cli/src/utils/editorPreloadHelpers.js.map +1 -0
  1015. package/codeyam-cli/src/utils/editorPreview.js +137 -0
  1016. package/codeyam-cli/src/utils/editorPreview.js.map +1 -0
  1017. package/codeyam-cli/src/utils/editorScenarioSwitch.js +112 -0
  1018. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -0
  1019. package/codeyam-cli/src/utils/editorScenarios.js +387 -0
  1020. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -0
  1021. package/codeyam-cli/src/utils/editorSeedAdapter.js +173 -0
  1022. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -0
  1023. package/codeyam-cli/src/utils/entityCache.js +1 -1
  1024. package/codeyam-cli/src/utils/entityChangeStatus.js +349 -0
  1025. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -0
  1026. package/codeyam-cli/src/utils/entityChangeStatus.server.js +192 -0
  1027. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -0
  1028. package/codeyam-cli/src/utils/entityMetadata.js +1 -1
  1029. package/codeyam-cli/src/utils/entityVersioning.js +1 -1
  1030. package/codeyam-cli/src/utils/fileMetadata.js +5 -0
  1031. package/codeyam-cli/src/utils/fileMetadata.js.map +1 -1
  1032. package/codeyam-cli/src/utils/fileWatcher.js +27 -11
  1033. package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
  1034. package/codeyam-cli/src/utils/generateReport.js +366 -0
  1035. package/codeyam-cli/src/utils/generateReport.js.map +1 -0
  1036. package/codeyam-cli/src/utils/git.js +182 -0
  1037. package/codeyam-cli/src/utils/git.js.map +1 -0
  1038. package/codeyam-cli/src/utils/install-skills.js +120 -37
  1039. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  1040. package/codeyam-cli/src/utils/interactiveSyncWatcher.js +126 -0
  1041. package/codeyam-cli/src/utils/interactiveSyncWatcher.js.map +1 -0
  1042. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  1043. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  1044. package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
  1045. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -0
  1046. package/codeyam-cli/src/utils/parseRegisterArg.js +31 -0
  1047. package/codeyam-cli/src/utils/parseRegisterArg.js.map +1 -0
  1048. package/codeyam-cli/src/utils/pathIgnoring.js +19 -7
  1049. package/codeyam-cli/src/utils/pathIgnoring.js.map +1 -1
  1050. package/codeyam-cli/src/utils/progress.js +8 -1
  1051. package/codeyam-cli/src/utils/progress.js.map +1 -1
  1052. package/codeyam-cli/src/utils/project.js +15 -5
  1053. package/codeyam-cli/src/utils/project.js.map +1 -1
  1054. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js +14 -14
  1055. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js.map +1 -1
  1056. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js +3 -2
  1057. package/codeyam-cli/src/utils/queue/__tests__/job.pidTracking.test.js.map +1 -1
  1058. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +60 -0
  1059. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  1060. package/codeyam-cli/src/utils/queue/heartbeat.js +14 -6
  1061. package/codeyam-cli/src/utils/queue/heartbeat.js.map +1 -1
  1062. package/codeyam-cli/src/utils/queue/job.js +333 -26
  1063. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  1064. package/codeyam-cli/src/utils/queue/manager.js +104 -7
  1065. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  1066. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  1067. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  1068. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  1069. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  1070. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  1071. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +229 -0
  1072. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  1073. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  1074. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  1075. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  1076. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  1077. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  1078. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  1079. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  1080. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  1081. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +74 -0
  1082. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  1083. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +376 -0
  1084. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  1085. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +113 -0
  1086. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  1087. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  1088. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  1089. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  1090. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  1091. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  1092. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  1093. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  1094. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  1095. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  1096. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  1097. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  1098. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  1099. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  1100. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  1101. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js +83 -0
  1102. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js.map +1 -0
  1103. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js +118 -0
  1104. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js.map +1 -0
  1105. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js +72 -0
  1106. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js.map +1 -0
  1107. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  1108. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  1109. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js +76 -0
  1110. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js.map +1 -0
  1111. package/codeyam-cli/src/utils/rules/index.js +7 -0
  1112. package/codeyam-cli/src/utils/rules/index.js.map +1 -0
  1113. package/codeyam-cli/src/utils/rules/parser.js +93 -0
  1114. package/codeyam-cli/src/utils/rules/parser.js.map +1 -0
  1115. package/codeyam-cli/src/utils/rules/pathMatcher.js +49 -0
  1116. package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -0
  1117. package/codeyam-cli/src/utils/rules/rulePlacement.js +65 -0
  1118. package/codeyam-cli/src/utils/rules/rulePlacement.js.map +1 -0
  1119. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  1120. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  1121. package/codeyam-cli/src/utils/rules/sourceFiles.js +43 -0
  1122. package/codeyam-cli/src/utils/rules/sourceFiles.js.map +1 -0
  1123. package/codeyam-cli/src/utils/rules/staleness.js +137 -0
  1124. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -0
  1125. package/codeyam-cli/src/utils/sandbox.js +190 -0
  1126. package/codeyam-cli/src/utils/sandbox.js.map +1 -0
  1127. package/codeyam-cli/src/utils/scenarioCoverage.js +75 -0
  1128. package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -0
  1129. package/codeyam-cli/src/utils/scenarioMarkers.js +134 -0
  1130. package/codeyam-cli/src/utils/scenarioMarkers.js.map +1 -0
  1131. package/codeyam-cli/src/utils/scenariosManifest.js +241 -0
  1132. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -0
  1133. package/codeyam-cli/src/utils/serverState.js +94 -12
  1134. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  1135. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +96 -41
  1136. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  1137. package/codeyam-cli/src/utils/simulationGateMiddleware.js +166 -0
  1138. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -0
  1139. package/codeyam-cli/src/utils/slugUtils.js +25 -0
  1140. package/codeyam-cli/src/utils/slugUtils.js.map +1 -0
  1141. package/codeyam-cli/src/utils/syncMocksMiddleware.js +7 -26
  1142. package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
  1143. package/codeyam-cli/src/utils/syncUncommittedEntities.js +1 -1
  1144. package/codeyam-cli/src/utils/syncUniversalMocks.js +1 -1
  1145. package/codeyam-cli/src/utils/testRunner.js +158 -0
  1146. package/codeyam-cli/src/utils/testRunner.js.map +1 -0
  1147. package/codeyam-cli/src/utils/transcriptPruning.js +67 -0
  1148. package/codeyam-cli/src/utils/transcriptPruning.js.map +1 -0
  1149. package/codeyam-cli/src/utils/versionInfo.js +67 -15
  1150. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  1151. package/codeyam-cli/src/utils/webappDetection.js +36 -2
  1152. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  1153. package/codeyam-cli/src/utils/wipe.js +128 -0
  1154. package/codeyam-cli/src/utils/wipe.js.map +1 -0
  1155. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +40 -0
  1156. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -0
  1157. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
  1158. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
  1159. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +567 -0
  1160. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -0
  1161. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +146 -0
  1162. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -0
  1163. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +65 -0
  1164. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -0
  1165. package/codeyam-cli/src/webserver/app/lib/database.js +210 -36
  1166. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  1167. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js +3 -1
  1168. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  1169. package/codeyam-cli/src/webserver/app/lib/git.js +397 -0
  1170. package/codeyam-cli/src/webserver/app/lib/git.js.map +1 -0
  1171. package/codeyam-cli/src/webserver/backgroundServer.js +171 -26
  1172. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  1173. package/codeyam-cli/src/webserver/bootstrap.js +60 -0
  1174. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  1175. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-BPXZwM4t.js +1 -0
  1176. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BcgbViKV.js +11 -0
  1177. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-g3saevPb.js +1 -0
  1178. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-CQIG2qda.js +41 -0
  1179. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +1 -0
  1180. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +25 -0
  1181. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +3 -0
  1182. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-BU_OAEMP.js +6 -0
  1183. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-ceAyBX-H.js +3 -0
  1184. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-BzHcG7SE.js +11 -0
  1185. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +1 -0
  1186. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-TSD3C211.js +10 -0
  1187. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +34 -0
  1188. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-C8OKAR5x.js +1 -0
  1189. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-oAf2Kqsf.js +1 -0
  1190. package/codeyam-cli/src/webserver/build/client/assets/_index-DLxKhri3.js +11 -0
  1191. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-BcY3q6nt.js +27 -0
  1192. package/codeyam-cli/src/webserver/build/client/assets/addon-canvas-DpzMmAy5.js +1 -0
  1193. package/codeyam-cli/src/webserver/build/client/assets/addon-fit-YJmn1quW.js +12 -0
  1194. package/codeyam-cli/src/webserver/build/client/assets/addon-web-links-Duc5hnl7.js +1 -0
  1195. package/codeyam-cli/src/webserver/build/client/assets/addon-webgl-DI8QOUvO.js +58 -0
  1196. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-Bni3iiUj.js +22 -0
  1197. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  1198. package/codeyam-cli/src/webserver/build/client/assets/api.dev-mode-events-l0sNRNKZ.js +1 -0
  1199. package/codeyam-cli/src/webserver/build/client/assets/api.editor-audit-l0sNRNKZ.js +1 -0
  1200. package/codeyam-cli/src/webserver/build/client/assets/api.editor-capture-scenario-l0sNRNKZ.js +1 -0
  1201. package/codeyam-cli/src/webserver/build/client/assets/api.editor-client-errors-l0sNRNKZ.js +1 -0
  1202. package/codeyam-cli/src/webserver/build/client/assets/api.editor-commit-l0sNRNKZ.js +1 -0
  1203. package/codeyam-cli/src/webserver/build/client/assets/api.editor-dev-server-l0sNRNKZ.js +1 -0
  1204. package/codeyam-cli/src/webserver/build/client/assets/api.editor-entity-status-l0sNRNKZ.js +1 -0
  1205. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-diff-l0sNRNKZ.js +1 -0
  1206. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-l0sNRNKZ.js +1 -0
  1207. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-entry-l0sNRNKZ.js +1 -0
  1208. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-image._-l0sNRNKZ.js +1 -0
  1209. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-l0sNRNKZ.js +1 -0
  1210. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-screenshot-l0sNRNKZ.js +1 -0
  1211. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-update-l0sNRNKZ.js +1 -0
  1212. package/codeyam-cli/src/webserver/build/client/assets/api.editor-load-commit-l0sNRNKZ.js +1 -0
  1213. package/codeyam-cli/src/webserver/build/client/assets/api.editor-project-info-l0sNRNKZ.js +1 -0
  1214. package/codeyam-cli/src/webserver/build/client/assets/api.editor-refresh-l0sNRNKZ.js +1 -0
  1215. package/codeyam-cli/src/webserver/build/client/assets/api.editor-register-scenario-l0sNRNKZ.js +1 -0
  1216. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-coverage-l0sNRNKZ.js +1 -0
  1217. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-data-l0sNRNKZ.js +1 -0
  1218. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-image._-l0sNRNKZ.js +1 -0
  1219. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenarios-l0sNRNKZ.js +1 -0
  1220. package/codeyam-cli/src/webserver/build/client/assets/api.editor-session-l0sNRNKZ.js +1 -0
  1221. package/codeyam-cli/src/webserver/build/client/assets/api.editor-switch-scenario-l0sNRNKZ.js +1 -0
  1222. package/codeyam-cli/src/webserver/build/client/assets/api.editor-test-results-l0sNRNKZ.js +1 -0
  1223. package/codeyam-cli/src/webserver/build/client/assets/api.generate-report-l0sNRNKZ.js +1 -0
  1224. package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
  1225. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  1226. package/codeyam-cli/src/webserver/build/client/assets/api.memory-profile-l0sNRNKZ.js +1 -0
  1227. package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
  1228. package/codeyam-cli/src/webserver/build/client/assets/api.rule-path-l0sNRNKZ.js +1 -0
  1229. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  1230. package/codeyam-cli/src/webserver/build/client/assets/book-open-BYOypzCa.js +6 -0
  1231. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-C_Pmso5S.js +6 -0
  1232. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +51 -0
  1233. package/codeyam-cli/src/webserver/build/client/assets/circle-check-BVMi9VA5.js +6 -0
  1234. package/codeyam-cli/src/webserver/build/client/assets/codeyam-name-logo-CvKwUgHo.svg +9 -0
  1235. package/codeyam-cli/src/webserver/build/client/assets/copy-n2FB0_Sw.js +11 -0
  1236. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CC6AbExI.js +41 -0
  1237. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-CCKUIm0S.svg +4 -0
  1238. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
  1239. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-Ii3inc0_.js +1 -0
  1240. package/codeyam-cli/src/webserver/build/client/assets/editor-16o0AIFV.js +15 -0
  1241. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-7Uga8I59.js +41 -0
  1242. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-DwCV5__E.js +23 -0
  1243. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-BwKcai0j.js +6 -0
  1244. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-CHMiAog3.js +6 -0
  1245. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +6 -0
  1246. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BMvVHNXU.js +5 -0
  1247. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DTvKq3TY.js +29 -0
  1248. package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
  1249. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +1 -0
  1250. package/codeyam-cli/src/webserver/build/client/assets/files-BZrlFE1F.js +1 -0
  1251. package/codeyam-cli/src/webserver/build/client/assets/git-DdZcvjGh.js +1 -0
  1252. package/codeyam-cli/src/webserver/build/client/assets/globals-CQPR0pFR.css +1 -0
  1253. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  1254. package/codeyam-cli/src/webserver/build/client/assets/index-10oVnAAH.js +9 -0
  1255. package/codeyam-cli/src/webserver/build/client/assets/index-BcvgDzbZ.js +3 -0
  1256. package/codeyam-cli/src/webserver/build/client/assets/index-yHOVb4rc.js +15 -0
  1257. package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +1 -0
  1258. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-DaAZ_H2w.js +6 -0
  1259. package/codeyam-cli/src/webserver/build/client/assets/manifest-76e7b62c.js +1 -0
  1260. package/codeyam-cli/src/webserver/build/client/assets/memory-9gnxSZlb.js +101 -0
  1261. package/codeyam-cli/src/webserver/build/client/assets/pause-f5-1lKBt.js +11 -0
  1262. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  1263. package/codeyam-cli/src/webserver/build/client/assets/root-DBjt6o04.js +67 -0
  1264. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  1265. package/codeyam-cli/src/webserver/build/client/assets/search-Di64LWVb.js +6 -0
  1266. package/codeyam-cli/src/webserver/build/client/assets/settings-0OrEMU6J.js +1 -0
  1267. package/codeyam-cli/src/webserver/build/client/assets/simulations-DWT-CvLy.js +1 -0
  1268. package/codeyam-cli/src/webserver/build/client/assets/terminal-Br7MOqts.js +11 -0
  1269. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-BLdiCuG-.js +6 -0
  1270. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-C-_hOl_g.js +1 -0
  1271. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C14nCb1q.js +2 -0
  1272. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +1 -0
  1273. package/codeyam-cli/src/webserver/build/client/assets/useToast-9FIWuYfK.js +1 -0
  1274. package/codeyam-cli/src/webserver/build/client/assets/xterm-BqvuqXEL.js +27 -0
  1275. package/codeyam-cli/src/webserver/build/client/sound-test.html +98 -0
  1276. package/codeyam-cli/src/webserver/build/server/assets/index-DsZjKspK.js +1 -0
  1277. package/codeyam-cli/src/webserver/build/server/assets/init-DdqKD2p4.js +10 -0
  1278. package/codeyam-cli/src/webserver/build/server/assets/server-build-CKKeWtVK.js +444 -0
  1279. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  1280. package/codeyam-cli/src/webserver/build-info.json +5 -5
  1281. package/codeyam-cli/src/webserver/devServer.js +40 -8
  1282. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  1283. package/codeyam-cli/src/webserver/editorProxy.js +877 -0
  1284. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -0
  1285. package/codeyam-cli/src/webserver/idleDetector.js +73 -0
  1286. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -0
  1287. package/codeyam-cli/src/webserver/public/sound-test.html +98 -0
  1288. package/codeyam-cli/src/webserver/scripts/codeyam-preload.mjs +414 -0
  1289. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +230 -0
  1290. package/codeyam-cli/src/webserver/server.js +335 -26
  1291. package/codeyam-cli/src/webserver/server.js.map +1 -1
  1292. package/codeyam-cli/src/webserver/terminalServer.js +765 -0
  1293. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -0
  1294. package/codeyam-cli/templates/chrome-extension-react/EXTENSION_SETUP.md +75 -0
  1295. package/codeyam-cli/templates/chrome-extension-react/README.md +46 -0
  1296. package/codeyam-cli/templates/chrome-extension-react/gitignore +15 -0
  1297. package/codeyam-cli/templates/chrome-extension-react/index.html +12 -0
  1298. package/codeyam-cli/templates/chrome-extension-react/package.json +27 -0
  1299. package/codeyam-cli/templates/chrome-extension-react/popup.html +12 -0
  1300. package/codeyam-cli/templates/chrome-extension-react/public/manifest.json +15 -0
  1301. package/codeyam-cli/templates/chrome-extension-react/src/background/service-worker.ts +7 -0
  1302. package/codeyam-cli/templates/chrome-extension-react/src/globals.css +6 -0
  1303. package/codeyam-cli/templates/chrome-extension-react/src/lib/storage.ts +37 -0
  1304. package/codeyam-cli/templates/chrome-extension-react/src/popup/App.tsx +12 -0
  1305. package/codeyam-cli/templates/chrome-extension-react/src/popup/main.tsx +10 -0
  1306. package/codeyam-cli/templates/chrome-extension-react/tsconfig.json +24 -0
  1307. package/codeyam-cli/templates/chrome-extension-react/vite.config.ts +41 -0
  1308. package/codeyam-cli/templates/codeyam-editor-claude.md +147 -0
  1309. package/codeyam-cli/templates/codeyam-memory-hook.sh +199 -0
  1310. package/codeyam-cli/templates/commands/codeyam-diagnose.md +481 -0
  1311. package/codeyam-cli/templates/editor-step-hook.py +237 -0
  1312. package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +89 -0
  1313. package/codeyam-cli/templates/expo-react-native/README.md +41 -0
  1314. package/codeyam-cli/templates/expo-react-native/app/(tabs)/_layout.tsx +33 -0
  1315. package/codeyam-cli/templates/expo-react-native/app/(tabs)/index.tsx +12 -0
  1316. package/codeyam-cli/templates/expo-react-native/app/(tabs)/settings.tsx +12 -0
  1317. package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +12 -0
  1318. package/codeyam-cli/templates/expo-react-native/app.json +18 -0
  1319. package/codeyam-cli/templates/expo-react-native/babel.config.js +9 -0
  1320. package/codeyam-cli/templates/expo-react-native/gitignore +12 -0
  1321. package/codeyam-cli/templates/expo-react-native/global.css +3 -0
  1322. package/codeyam-cli/templates/expo-react-native/lib/storage.ts +32 -0
  1323. package/codeyam-cli/templates/expo-react-native/metro.config.js +6 -0
  1324. package/codeyam-cli/templates/expo-react-native/nativewind-env.d.ts +1 -0
  1325. package/codeyam-cli/templates/expo-react-native/package.json +38 -0
  1326. package/codeyam-cli/templates/expo-react-native/tailwind.config.js +10 -0
  1327. package/codeyam-cli/templates/expo-react-native/tsconfig.json +10 -0
  1328. package/codeyam-cli/templates/hooks/staleness-check.sh +43 -0
  1329. package/codeyam-cli/templates/isolation-route/next-app.tsx.template +80 -0
  1330. package/codeyam-cli/templates/isolation-route/next-pages.tsx.template +79 -0
  1331. package/codeyam-cli/templates/isolation-route/vite-react.tsx.template +78 -0
  1332. package/codeyam-cli/templates/msw/browser-setup.ts.template +47 -0
  1333. package/codeyam-cli/templates/msw/handler-router.ts.template +47 -0
  1334. package/codeyam-cli/templates/msw/server-setup.ts.template +52 -0
  1335. package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_PATTERNS.md +308 -0
  1336. package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_UPGRADE.md +304 -0
  1337. package/codeyam-cli/templates/nextjs-prisma-sqlite/DATABASE.md +126 -0
  1338. package/codeyam-cli/templates/nextjs-prisma-sqlite/FEATURE_PATTERNS.md +37 -0
  1339. package/codeyam-cli/templates/nextjs-prisma-sqlite/README.md +53 -0
  1340. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/api/todos/route.ts +17 -0
  1341. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/codeyam-isolate/layout.tsx +12 -0
  1342. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/globals.css +26 -0
  1343. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/layout.tsx +34 -0
  1344. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/lib/prisma.ts +24 -0
  1345. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/page.tsx +10 -0
  1346. package/codeyam-cli/templates/nextjs-prisma-sqlite/env +4 -0
  1347. package/codeyam-cli/templates/nextjs-prisma-sqlite/eslint.config.mjs +11 -0
  1348. package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +64 -0
  1349. package/codeyam-cli/templates/nextjs-prisma-sqlite/next.config.ts +14 -0
  1350. package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +39 -0
  1351. package/codeyam-cli/templates/nextjs-prisma-sqlite/postcss.config.mjs +7 -0
  1352. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/schema.prisma +27 -0
  1353. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/seed.ts +40 -0
  1354. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma.config.ts +12 -0
  1355. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +92 -0
  1356. package/codeyam-cli/templates/nextjs-prisma-sqlite/tsconfig.json +34 -0
  1357. package/codeyam-cli/templates/nextjs-prisma-sqlite/vitest.config.ts +13 -0
  1358. package/codeyam-cli/templates/nextjs-prisma-supabase/README.md +52 -0
  1359. package/codeyam-cli/templates/nextjs-prisma-supabase/SUPABASE_SETUP.md +104 -0
  1360. package/codeyam-cli/templates/nextjs-prisma-supabase/app/api/todos/route.ts +17 -0
  1361. package/codeyam-cli/templates/nextjs-prisma-supabase/app/globals.css +26 -0
  1362. package/codeyam-cli/templates/nextjs-prisma-supabase/app/layout.tsx +34 -0
  1363. package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/prisma.ts +20 -0
  1364. package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/supabase.ts +12 -0
  1365. package/codeyam-cli/templates/nextjs-prisma-supabase/app/page.tsx +10 -0
  1366. package/codeyam-cli/templates/nextjs-prisma-supabase/env +9 -0
  1367. package/codeyam-cli/templates/nextjs-prisma-supabase/eslint.config.mjs +11 -0
  1368. package/codeyam-cli/templates/nextjs-prisma-supabase/gitignore +40 -0
  1369. package/codeyam-cli/templates/nextjs-prisma-supabase/next.config.ts +11 -0
  1370. package/codeyam-cli/templates/nextjs-prisma-supabase/package.json +37 -0
  1371. package/codeyam-cli/templates/nextjs-prisma-supabase/postcss.config.mjs +7 -0
  1372. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/schema.prisma +27 -0
  1373. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/seed.ts +39 -0
  1374. package/codeyam-cli/templates/nextjs-prisma-supabase/prisma.config.ts +12 -0
  1375. package/codeyam-cli/templates/nextjs-prisma-supabase/tsconfig.json +34 -0
  1376. package/codeyam-cli/templates/prompts/conversation-guidance.txt +44 -0
  1377. package/codeyam-cli/templates/prompts/conversation-prompt.txt +28 -0
  1378. package/codeyam-cli/templates/prompts/interruption-prompt.txt +31 -0
  1379. package/codeyam-cli/templates/prompts/stale-rules-prompt.txt +24 -0
  1380. package/codeyam-cli/templates/rule-notification-hook.py +83 -0
  1381. package/codeyam-cli/templates/rule-reflection-hook.py +647 -0
  1382. package/codeyam-cli/templates/rules-instructions.md +78 -0
  1383. package/codeyam-cli/templates/skills/codeyam-debug/SKILL.md +601 -0
  1384. package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +237 -0
  1385. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +149 -0
  1386. package/codeyam-cli/templates/skills/codeyam-memory/SKILL.md +611 -0
  1387. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/deprecated-prompt.md +100 -0
  1388. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/detect-deprecated-patterns.mjs +139 -0
  1389. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/find-exports.mjs +52 -0
  1390. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/misleading-api-prompt.md +117 -0
  1391. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/read-json-field.mjs +61 -0
  1392. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/ripgrep-fallback.mjs +155 -0
  1393. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/analyze-prompt.md +46 -0
  1394. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/cleanup.mjs +13 -0
  1395. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/filter-session.mjs +95 -0
  1396. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/preprocess.mjs +160 -0
  1397. package/codeyam-cli/templates/skills/codeyam-new-rule/SKILL.md +11 -0
  1398. package/codeyam-cli/templates/skills/codeyam-setup/SKILL.md +600 -0
  1399. package/codeyam-cli/templates/skills/codeyam-sim/SKILL.md +222 -0
  1400. package/codeyam-cli/templates/skills/codeyam-test/SKILL.md +178 -0
  1401. package/codeyam-cli/templates/skills/codeyam-verify/SKILL.md +179 -0
  1402. package/package.json +42 -34
  1403. package/packages/ai/index.js +9 -8
  1404. package/packages/ai/index.js.map +1 -1
  1405. package/packages/ai/src/lib/analyzeScope.js +211 -6
  1406. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  1407. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
  1408. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
  1409. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +207 -40
  1410. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  1411. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
  1412. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
  1413. package/packages/ai/src/lib/astScopes/methodSemantics.js +308 -20
  1414. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  1415. package/packages/ai/src/lib/astScopes/paths.js +39 -4
  1416. package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
  1417. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  1418. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  1419. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
  1420. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
  1421. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +31 -1
  1422. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  1423. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
  1424. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
  1425. package/packages/ai/src/lib/astScopes/processExpression.js +1401 -102
  1426. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  1427. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  1428. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  1429. package/packages/ai/src/lib/checkAllAttributes.js +23 -10
  1430. package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
  1431. package/packages/ai/src/lib/completionCall.js +188 -38
  1432. package/packages/ai/src/lib/completionCall.js.map +1 -1
  1433. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +3611 -522
  1434. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  1435. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js +164 -2
  1436. package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js.map +1 -1
  1437. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +19 -4
  1438. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  1439. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
  1440. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  1441. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +184 -58
  1442. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  1443. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +122 -0
  1444. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -0
  1445. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js +176 -0
  1446. package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js.map +1 -0
  1447. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js +178 -0
  1448. package/packages/ai/src/lib/dataStructure/helpers/PathManager.js.map +1 -0
  1449. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +140 -0
  1450. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -0
  1451. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js +199 -0
  1452. package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js.map +1 -0
  1453. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +66 -2
  1454. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  1455. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +198 -15
  1456. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  1457. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  1458. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  1459. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js +54 -0
  1460. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js.map +1 -0
  1461. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +145 -15
  1462. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  1463. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
  1464. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
  1465. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  1466. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  1467. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  1468. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  1469. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +385 -79
  1470. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  1471. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
  1472. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
  1473. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js +28 -3
  1474. package/packages/ai/src/lib/dataStructure/helpers/getFunctionCallRoot.js.map +1 -1
  1475. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js +62 -0
  1476. package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js.map +1 -0
  1477. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js +34 -0
  1478. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js.map +1 -0
  1479. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js +90 -0
  1480. package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js.map +1 -0
  1481. package/packages/ai/src/lib/dataStructureChunking.js +130 -0
  1482. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
  1483. package/packages/ai/src/lib/deepEqual.js +32 -0
  1484. package/packages/ai/src/lib/deepEqual.js.map +1 -0
  1485. package/packages/ai/src/lib/e2eDataTracking.js +241 -0
  1486. package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
  1487. package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
  1488. package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
  1489. package/packages/ai/src/lib/generateChangesEntityDocumentation.js +19 -1
  1490. package/packages/ai/src/lib/generateChangesEntityDocumentation.js.map +1 -1
  1491. package/packages/ai/src/lib/generateChangesEntityScenarioData.js +111 -152
  1492. package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
  1493. package/packages/ai/src/lib/generateChangesEntityScenarios.js +131 -322
  1494. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  1495. package/packages/ai/src/lib/generateEntityDataStructure.js +56 -6
  1496. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  1497. package/packages/ai/src/lib/generateEntityDocumentation.js +15 -1
  1498. package/packages/ai/src/lib/generateEntityDocumentation.js.map +1 -1
  1499. package/packages/ai/src/lib/generateEntityScenarioData.js +1193 -181
  1500. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  1501. package/packages/ai/src/lib/generateEntityScenarios.js +209 -269
  1502. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  1503. package/packages/ai/src/lib/generateExecutionFlows.js +484 -0
  1504. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
  1505. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
  1506. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
  1507. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1807 -0
  1508. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
  1509. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
  1510. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
  1511. package/packages/ai/src/lib/generateStatementAnalysis.js +47 -72
  1512. package/packages/ai/src/lib/generateStatementAnalysis.js.map +1 -1
  1513. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +97 -22
  1514. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  1515. package/packages/ai/src/lib/getLLMCallStats.js +0 -14
  1516. package/packages/ai/src/lib/getLLMCallStats.js.map +1 -1
  1517. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  1518. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  1519. package/packages/ai/src/lib/isolateScopes.js +270 -7
  1520. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  1521. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  1522. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  1523. package/packages/ai/src/lib/mergeStatements.js +104 -6
  1524. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  1525. package/packages/ai/src/lib/modelInfo.js +15 -0
  1526. package/packages/ai/src/lib/modelInfo.js.map +1 -1
  1527. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  1528. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  1529. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +118 -23
  1530. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  1531. package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js +8 -33
  1532. package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js.map +1 -1
  1533. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +36 -42
  1534. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
  1535. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +49 -99
  1536. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  1537. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
  1538. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
  1539. package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js +8 -27
  1540. package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js.map +1 -1
  1541. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +103 -29
  1542. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  1543. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +12 -31
  1544. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  1545. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
  1546. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
  1547. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  1548. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  1549. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
  1550. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
  1551. package/packages/ai/src/lib/resolvePathToControllable.js +677 -0
  1552. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
  1553. package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
  1554. package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
  1555. package/packages/ai/src/lib/types/index.js +2 -0
  1556. package/packages/ai/src/lib/types/index.js.map +1 -1
  1557. package/packages/ai/src/lib/worker/SerializableDataStructure.js +36 -0
  1558. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  1559. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +98 -1
  1560. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  1561. package/packages/analyze/index.js +1 -0
  1562. package/packages/analyze/index.js.map +1 -1
  1563. package/packages/analyze/src/lib/FileAnalyzer.js +196 -41
  1564. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  1565. package/packages/analyze/src/lib/ProjectAnalyzer.js +109 -30
  1566. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  1567. package/packages/analyze/src/lib/analysisContext.js +30 -5
  1568. package/packages/analyze/src/lib/analysisContext.js.map +1 -1
  1569. package/packages/analyze/src/lib/asts/index.js +4 -2
  1570. package/packages/analyze/src/lib/asts/index.js.map +1 -1
  1571. package/packages/analyze/src/lib/asts/nodes/getNodeType.js +2 -1
  1572. package/packages/analyze/src/lib/asts/nodes/getNodeType.js.map +1 -1
  1573. package/packages/analyze/src/lib/asts/nodes/index.js +3 -1
  1574. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  1575. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
  1576. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
  1577. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  1578. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  1579. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  1580. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  1581. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js +3 -2
  1582. package/packages/analyze/src/lib/asts/sourceFiles/getAllExportedNodes.js.map +1 -1
  1583. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +41 -9
  1584. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  1585. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  1586. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  1587. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  1588. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  1589. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  1590. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  1591. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +594 -105
  1592. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  1593. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +55 -3
  1594. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  1595. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +12 -1
  1596. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  1597. package/packages/analyze/src/lib/files/analyze/findPreviousAnalysis.js +1 -1
  1598. package/packages/analyze/src/lib/files/analyze/findValidExistingAnalysis.js +1 -1
  1599. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +15 -3
  1600. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  1601. package/packages/analyze/src/lib/files/analyze/setActiveAnalysisBranches.js +1 -1
  1602. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +5 -8
  1603. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  1604. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -10
  1605. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  1606. package/packages/analyze/src/lib/files/analyzeChange.js +42 -20
  1607. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  1608. package/packages/analyze/src/lib/files/analyzeEntity.js +20 -13
  1609. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  1610. package/packages/analyze/src/lib/files/analyzeInitial.js +30 -19
  1611. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  1612. package/packages/analyze/src/lib/files/analyzeNextRoute.js +1 -1
  1613. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +22 -26
  1614. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  1615. package/packages/analyze/src/lib/files/enums/steps.js +1 -1
  1616. package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
  1617. package/packages/analyze/src/lib/files/getImportedExports.js +103 -8
  1618. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  1619. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +907 -0
  1620. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  1621. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +255 -0
  1622. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  1623. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
  1624. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
  1625. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +646 -72
  1626. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  1627. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  1628. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  1629. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
  1630. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
  1631. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +519 -30
  1632. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  1633. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +104 -0
  1634. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
  1635. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +61 -67
  1636. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  1637. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +8 -4
  1638. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  1639. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +952 -107
  1640. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  1641. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +49 -6
  1642. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
  1643. package/packages/analyze/src/lib/files/setImportedExports.js +3 -2
  1644. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  1645. package/packages/analyze/src/lib/index.js +1 -0
  1646. package/packages/analyze/src/lib/index.js.map +1 -1
  1647. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  1648. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  1649. package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
  1650. package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  1651. package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
  1652. package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  1653. package/packages/database/index.js +85 -0
  1654. package/packages/database/index.js.map +1 -0
  1655. package/packages/database/src/lib/analysisBranchToDb.js +19 -0
  1656. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -0
  1657. package/packages/database/src/lib/analysisToDb.js +26 -0
  1658. package/packages/database/src/lib/analysisToDb.js.map +1 -0
  1659. package/packages/database/src/lib/backgroundJobToDb.js.map +1 -0
  1660. package/packages/database/src/lib/branchToDb.js +18 -0
  1661. package/packages/database/src/lib/branchToDb.js.map +1 -0
  1662. package/packages/database/src/lib/commitBranchToDb.js +13 -0
  1663. package/packages/database/src/lib/commitBranchToDb.js.map +1 -0
  1664. package/packages/database/src/lib/commitToDb.js +26 -0
  1665. package/packages/database/src/lib/commitToDb.js.map +1 -0
  1666. package/packages/database/src/lib/createOrUpdateBranchCommitStats.js.map +1 -0
  1667. package/packages/database/src/lib/createProject.js.map +1 -0
  1668. package/packages/database/src/lib/createRetryFetch.js.map +1 -0
  1669. package/packages/database/src/lib/dbToAnalysis.js.map +1 -0
  1670. package/packages/database/src/lib/dbToAnalysisBranch.js.map +1 -0
  1671. package/packages/database/src/lib/dbToBackgroundJob.js.map +1 -0
  1672. package/packages/database/src/lib/dbToBranch.js.map +1 -0
  1673. package/packages/database/src/lib/dbToCommit.js.map +1 -0
  1674. package/packages/database/src/lib/dbToCommitBranch.js.map +1 -0
  1675. package/packages/database/src/lib/dbToEntity.js.map +1 -0
  1676. package/packages/database/src/lib/dbToEntityBranch.js.map +1 -0
  1677. package/packages/database/src/lib/dbToFile.js.map +1 -0
  1678. package/packages/database/src/lib/dbToProject.js.map +1 -0
  1679. package/packages/database/src/lib/dbToScenario.js.map +1 -0
  1680. package/packages/database/src/lib/dbToScenarioComment.js.map +1 -0
  1681. package/packages/database/src/lib/dbToUserScenario.js.map +1 -0
  1682. package/packages/database/src/lib/deleteBranch.js.map +1 -0
  1683. package/packages/database/src/lib/deleteEntities.js.map +1 -0
  1684. package/packages/database/src/lib/deleteFile.js.map +1 -0
  1685. package/packages/database/src/lib/deleteScenarios.js.map +1 -0
  1686. package/packages/database/src/lib/entityToDb.js.map +1 -0
  1687. package/packages/database/src/lib/fileToDb.js +14 -0
  1688. package/packages/database/src/lib/fileToDb.js.map +1 -0
  1689. package/packages/database/src/lib/generateSha.js.map +1 -0
  1690. package/packages/database/src/lib/jsonUpdateUtils.js.map +1 -0
  1691. package/packages/database/src/lib/kysely/aggregationHelpers.js.map +1 -0
  1692. package/packages/database/src/lib/kysely/db.js +378 -0
  1693. package/packages/database/src/lib/kysely/db.js.map +1 -0
  1694. package/packages/database/src/lib/kysely/schemaHelpers.js.map +1 -0
  1695. package/packages/database/src/lib/kysely/sqliteBooleanPlugin.js.map +1 -0
  1696. package/packages/database/src/lib/kysely/tableRelations.js.map +1 -0
  1697. package/packages/database/src/lib/kysely/tableRelationsTypes.js.map +1 -0
  1698. package/packages/database/src/lib/kysely/tables/analysesTable.js.map +1 -0
  1699. package/packages/database/src/lib/kysely/tables/analysisBranchesTable.js.map +1 -0
  1700. package/packages/database/src/lib/kysely/tables/backgroundJobsTable.js.map +1 -0
  1701. package/packages/database/src/lib/kysely/tables/branchesTable.js.map +1 -0
  1702. package/packages/database/src/lib/kysely/tables/commitBranchesTable.js.map +1 -0
  1703. package/packages/database/src/lib/kysely/tables/commitsTable.js +47 -0
  1704. package/packages/database/src/lib/kysely/tables/commitsTable.js.map +1 -0
  1705. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +33 -0
  1706. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -0
  1707. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +121 -0
  1708. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  1709. package/packages/database/src/lib/kysely/tables/entitiesTable.js.map +1 -0
  1710. package/packages/database/src/lib/kysely/tables/entityBranchesTable.js.map +1 -0
  1711. package/packages/database/src/lib/kysely/tables/entityStatementsTable.js.map +1 -0
  1712. package/packages/database/src/lib/kysely/tables/filesTable.js.map +1 -0
  1713. package/packages/database/src/lib/kysely/tables/githubPayloadsTable.js.map +1 -0
  1714. package/packages/database/src/lib/kysely/tables/githubUsersTable.js.map +1 -0
  1715. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  1716. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  1717. package/packages/database/src/lib/kysely/tables/projectsTable.js.map +1 -0
  1718. package/packages/database/src/lib/kysely/tables/scenarioCommentsTable.js.map +1 -0
  1719. package/packages/database/src/lib/kysely/tables/scenariosTable.js.map +1 -0
  1720. package/packages/database/src/lib/kysely/tables/statementsTable.js.map +1 -0
  1721. package/packages/database/src/lib/kysely/tables/teamsTable.js.map +1 -0
  1722. package/packages/database/src/lib/kysely/tables/userScenariosTable.js.map +1 -0
  1723. package/packages/database/src/lib/kysely/tables/userTeamsTable.js.map +1 -0
  1724. package/packages/database/src/lib/kysely/tables/usersTable.js.map +1 -0
  1725. package/packages/database/src/lib/kysely/upsertHelpers.js.map +1 -0
  1726. package/packages/database/src/lib/loadAnalyses.js +174 -0
  1727. package/packages/database/src/lib/loadAnalyses.js.map +1 -0
  1728. package/packages/database/src/lib/loadAnalysis.js +138 -0
  1729. package/packages/database/src/lib/loadAnalysis.js.map +1 -0
  1730. package/packages/database/src/lib/loadAnalysisBranches.js.map +1 -0
  1731. package/packages/database/src/lib/loadBackgroundJob.js.map +1 -0
  1732. package/packages/database/src/lib/loadBranch.js +100 -0
  1733. package/packages/database/src/lib/loadBranch.js.map +1 -0
  1734. package/packages/database/src/lib/loadBranches.js.map +1 -0
  1735. package/packages/database/src/lib/loadCommit.js +118 -0
  1736. package/packages/database/src/lib/loadCommit.js.map +1 -0
  1737. package/packages/database/src/lib/loadCommitBranches.js.map +1 -0
  1738. package/packages/database/src/lib/loadCommitMetadata.js.map +1 -0
  1739. package/packages/database/src/lib/loadCommits.js +219 -0
  1740. package/packages/database/src/lib/loadCommits.js.map +1 -0
  1741. package/packages/database/src/lib/loadEntities.js +76 -0
  1742. package/packages/database/src/lib/loadEntities.js.map +1 -0
  1743. package/packages/database/src/lib/loadEntity.js.map +1 -0
  1744. package/packages/database/src/lib/loadEntityBranches.js +123 -0
  1745. package/packages/database/src/lib/loadEntityBranches.js.map +1 -0
  1746. package/packages/database/src/lib/loadFile.js.map +1 -0
  1747. package/packages/database/src/lib/loadFiles.js.map +1 -0
  1748. package/packages/database/src/lib/loadMostRecentPreviousAnalysis.js.map +1 -0
  1749. package/packages/database/src/lib/loadProject.js.map +1 -0
  1750. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +65 -0
  1751. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -0
  1752. package/packages/database/src/lib/loadScenario.js.map +1 -0
  1753. package/packages/database/src/lib/loadStatement.js.map +1 -0
  1754. package/packages/database/src/lib/nullsToUndefines.js.map +1 -0
  1755. package/packages/database/src/lib/projectToDb.js +18 -0
  1756. package/packages/database/src/lib/projectToDb.js.map +1 -0
  1757. package/packages/database/src/lib/saveBackgroundEvent.js.map +1 -0
  1758. package/packages/database/src/lib/saveEntityStatements.js.map +1 -0
  1759. package/packages/database/src/lib/saveFiles.js +33 -0
  1760. package/packages/database/src/lib/saveFiles.js.map +1 -0
  1761. package/packages/database/src/lib/saveStatement.js.map +1 -0
  1762. package/packages/database/src/lib/scenarioToDb.js +18 -0
  1763. package/packages/database/src/lib/scenarioToDb.js.map +1 -0
  1764. package/packages/database/src/lib/supabase.js.map +1 -0
  1765. package/packages/database/src/lib/updateBackgroundJobProgress.js.map +1 -0
  1766. package/packages/database/src/lib/updateCommitMetadata.js +87 -0
  1767. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -0
  1768. package/packages/database/src/lib/updateEntityBranch.js.map +1 -0
  1769. package/packages/database/src/lib/updateFreshAnalysisMetadata.js.map +1 -0
  1770. package/packages/database/src/lib/updateFreshAnalysisStatus.js +53 -0
  1771. package/packages/database/src/lib/updateFreshAnalysisStatus.js.map +1 -0
  1772. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +81 -0
  1773. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -0
  1774. package/packages/database/src/lib/updateProjectMetadata.js.map +1 -0
  1775. package/packages/database/src/lib/upsertAnalyses.js.map +1 -0
  1776. package/packages/database/src/lib/upsertAnalysesWithScenarios.js.map +1 -0
  1777. package/packages/database/src/lib/upsertAnalysisBranches.js.map +1 -0
  1778. package/packages/database/src/lib/upsertBackgroundJob.js.map +1 -0
  1779. package/packages/database/src/lib/upsertBranches.js.map +1 -0
  1780. package/packages/database/src/lib/upsertCommitBranches.js.map +1 -0
  1781. package/packages/database/src/lib/upsertCommits.js.map +1 -0
  1782. package/packages/database/src/lib/upsertEntities.js.map +1 -0
  1783. package/packages/database/src/lib/upsertEntityBranches.js.map +1 -0
  1784. package/packages/database/src/lib/upsertFiles.js.map +1 -0
  1785. package/packages/database/src/lib/upsertGithubUser.js.map +1 -0
  1786. package/packages/database/src/lib/upsertProjects.js.map +1 -0
  1787. package/packages/database/src/lib/upsertScenarios.js.map +1 -0
  1788. package/packages/generate/index.js +3 -0
  1789. package/packages/generate/index.js.map +1 -1
  1790. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +43 -21
  1791. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  1792. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
  1793. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
  1794. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  1795. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  1796. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  1797. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  1798. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  1799. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  1800. package/packages/generate/src/lib/deepMerge.js +30 -2
  1801. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  1802. package/packages/generate/src/lib/directExecutionScript.js +10 -1
  1803. package/packages/generate/src/lib/directExecutionScript.js.map +1 -1
  1804. package/packages/generate/src/lib/getComponentScenarioPath.js +7 -3
  1805. package/packages/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  1806. package/packages/generate/src/lib/scenarioComponent.js +5 -3
  1807. package/packages/generate/src/lib/scenarioComponent.js.map +1 -1
  1808. package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
  1809. package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  1810. package/packages/github/src/lib/getCommitsFromGithub.js +1 -1
  1811. package/packages/github/src/lib/loadOrCreateCommit.js +11 -1
  1812. package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
  1813. package/packages/github/src/lib/syncHeadBranches.js +1 -1
  1814. package/packages/github/src/lib/syncPrimaryBranch.js +4 -1
  1815. package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
  1816. package/packages/github/src/lib/syncPullRequest.js +1 -1
  1817. package/packages/github/src/lib/updateCommitBranchesInDb.js +1 -1
  1818. package/packages/github/src/lib/updateFilesInDb.js +1 -1
  1819. package/packages/process/index.js +3 -0
  1820. package/packages/process/index.js.map +1 -0
  1821. package/packages/process/src/GlobalProcessManager.js.map +1 -0
  1822. package/packages/process/src/ProcessManager.js +244 -0
  1823. package/packages/process/src/ProcessManager.js.map +1 -0
  1824. package/packages/process/src/index.js.map +1 -0
  1825. package/packages/process/src/managedExecAsync.js.map +1 -0
  1826. package/packages/types/index.js.map +1 -1
  1827. package/packages/types/src/enums/ProjectFramework.js +2 -0
  1828. package/packages/types/src/enums/ProjectFramework.js.map +1 -1
  1829. package/packages/utils/index.js +4 -0
  1830. package/packages/utils/index.js.map +1 -1
  1831. package/packages/utils/src/lib/Semaphore.js +40 -0
  1832. package/packages/utils/src/lib/Semaphore.js.map +1 -0
  1833. package/packages/utils/src/lib/applyUniversalMocks.js +65 -7
  1834. package/packages/utils/src/lib/applyUniversalMocks.js.map +1 -1
  1835. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js +14 -2
  1836. package/packages/utils/src/lib/frameworks/frameworkRouteFileNameToRoute.js.map +1 -1
  1837. package/packages/utils/src/lib/frameworks/getNextRoutePath.js +2 -1
  1838. package/packages/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
  1839. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
  1840. package/packages/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
  1841. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +14 -2
  1842. package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
  1843. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
  1844. package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
  1845. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +62 -0
  1846. package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
  1847. package/packages/utils/src/lib/fs/rsyncCopy.js +98 -3
  1848. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  1849. package/packages/utils/src/lib/lightweightEntityExtractor.js +42 -0
  1850. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  1851. package/packages/utils/src/lib/safeFileName.js +32 -3
  1852. package/packages/utils/src/lib/safeFileName.js.map +1 -1
  1853. package/packages/utils/src/lib/startCommand/buildStartCommand.js +45 -0
  1854. package/packages/utils/src/lib/startCommand/buildStartCommand.js.map +1 -0
  1855. package/packages/utils/src/lib/startCommand/getWebappInfo.js +67 -0
  1856. package/packages/utils/src/lib/startCommand/getWebappInfo.js.map +1 -0
  1857. package/packages/utils/src/lib/startCommand/index.js +3 -0
  1858. package/packages/utils/src/lib/startCommand/index.js.map +1 -0
  1859. package/scripts/npm-post-install.cjs +34 -0
  1860. package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
  1861. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -149
  1862. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -235
  1863. package/analyzer-template/packages/ai/src/lib/generateEntityDataMap.ts +0 -375
  1864. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -227
  1865. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
  1866. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -101
  1867. package/analyzer-template/packages/github/dist/supabase/index.d.ts +0 -86
  1868. package/analyzer-template/packages/github/dist/supabase/index.d.ts.map +0 -1
  1869. package/analyzer-template/packages/github/dist/supabase/index.js +0 -84
  1870. package/analyzer-template/packages/github/dist/supabase/index.js.map +0 -1
  1871. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.d.ts.map +0 -1
  1872. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js +0 -19
  1873. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  1874. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.d.ts.map +0 -1
  1875. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js +0 -26
  1876. package/analyzer-template/packages/github/dist/supabase/src/lib/analysisToDb.js.map +0 -1
  1877. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.d.ts.map +0 -1
  1878. package/analyzer-template/packages/github/dist/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  1879. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.d.ts.map +0 -1
  1880. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js +0 -18
  1881. package/analyzer-template/packages/github/dist/supabase/src/lib/branchToDb.js.map +0 -1
  1882. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.d.ts.map +0 -1
  1883. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js +0 -13
  1884. package/analyzer-template/packages/github/dist/supabase/src/lib/commitBranchToDb.js.map +0 -1
  1885. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.d.ts.map +0 -1
  1886. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js +0 -26
  1887. package/analyzer-template/packages/github/dist/supabase/src/lib/commitToDb.js.map +0 -1
  1888. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.d.ts.map +0 -1
  1889. package/analyzer-template/packages/github/dist/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  1890. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.d.ts.map +0 -1
  1891. package/analyzer-template/packages/github/dist/supabase/src/lib/createProject.js.map +0 -1
  1892. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.d.ts.map +0 -1
  1893. package/analyzer-template/packages/github/dist/supabase/src/lib/createRetryFetch.js.map +0 -1
  1894. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.d.ts.map +0 -1
  1895. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysis.js.map +0 -1
  1896. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.d.ts.map +0 -1
  1897. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  1898. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.d.ts.map +0 -1
  1899. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  1900. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.d.ts.map +0 -1
  1901. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToBranch.js.map +0 -1
  1902. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.d.ts.map +0 -1
  1903. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommit.js.map +0 -1
  1904. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.d.ts.map +0 -1
  1905. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  1906. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.d.ts.map +0 -1
  1907. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntity.js.map +0 -1
  1908. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.d.ts.map +0 -1
  1909. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  1910. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.d.ts.map +0 -1
  1911. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToFile.js.map +0 -1
  1912. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.d.ts.map +0 -1
  1913. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToProject.js.map +0 -1
  1914. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.d.ts.map +0 -1
  1915. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenario.js.map +0 -1
  1916. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.d.ts.map +0 -1
  1917. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  1918. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.d.ts.map +0 -1
  1919. package/analyzer-template/packages/github/dist/supabase/src/lib/dbToUserScenario.js.map +0 -1
  1920. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.d.ts.map +0 -1
  1921. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteBranch.js.map +0 -1
  1922. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.d.ts.map +0 -1
  1923. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteEntities.js.map +0 -1
  1924. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.d.ts.map +0 -1
  1925. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteFile.js.map +0 -1
  1926. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.d.ts.map +0 -1
  1927. package/analyzer-template/packages/github/dist/supabase/src/lib/deleteScenarios.js.map +0 -1
  1928. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.d.ts.map +0 -1
  1929. package/analyzer-template/packages/github/dist/supabase/src/lib/entityToDb.js.map +0 -1
  1930. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.d.ts.map +0 -1
  1931. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js +0 -14
  1932. package/analyzer-template/packages/github/dist/supabase/src/lib/fileToDb.js.map +0 -1
  1933. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.d.ts.map +0 -1
  1934. package/analyzer-template/packages/github/dist/supabase/src/lib/generateSha.js.map +0 -1
  1935. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.d.ts.map +0 -1
  1936. package/analyzer-template/packages/github/dist/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  1937. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.d.ts.map +0 -1
  1938. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  1939. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts +0 -67
  1940. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.d.ts.map +0 -1
  1941. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js +0 -360
  1942. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/db.js.map +0 -1
  1943. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.d.ts.map +0 -1
  1944. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  1945. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.d.ts.map +0 -1
  1946. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  1947. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts +0 -87
  1948. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.d.ts.map +0 -1
  1949. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  1950. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.d.ts.map +0 -1
  1951. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  1952. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts +0 -105
  1953. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.d.ts.map +0 -1
  1954. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  1955. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.d.ts.map +0 -1
  1956. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  1957. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.d.ts.map +0 -1
  1958. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  1959. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.d.ts.map +0 -1
  1960. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  1961. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.d.ts.map +0 -1
  1962. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  1963. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts +0 -47
  1964. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.d.ts.map +0 -1
  1965. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  1966. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  1967. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts +0 -65
  1968. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.d.ts.map +0 -1
  1969. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  1970. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.d.ts.map +0 -1
  1971. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  1972. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.d.ts.map +0 -1
  1973. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  1974. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.d.ts.map +0 -1
  1975. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  1976. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.d.ts.map +0 -1
  1977. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  1978. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.d.ts.map +0 -1
  1979. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  1980. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.d.ts.map +0 -1
  1981. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  1982. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.d.ts.map +0 -1
  1983. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  1984. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts +0 -65
  1985. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.d.ts.map +0 -1
  1986. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  1987. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.d.ts.map +0 -1
  1988. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  1989. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.d.ts.map +0 -1
  1990. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  1991. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.d.ts.map +0 -1
  1992. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  1993. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.d.ts.map +0 -1
  1994. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  1995. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.d.ts.map +0 -1
  1996. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  1997. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.d.ts.map +0 -1
  1998. package/analyzer-template/packages/github/dist/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  1999. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts +0 -14
  2000. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.d.ts.map +0 -1
  2001. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js +0 -131
  2002. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalyses.js.map +0 -1
  2003. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.d.ts.map +0 -1
  2004. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js +0 -130
  2005. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysis.js.map +0 -1
  2006. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.d.ts.map +0 -1
  2007. package/analyzer-template/packages/github/dist/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  2008. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.d.ts.map +0 -1
  2009. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  2010. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.d.ts.map +0 -1
  2011. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js +0 -90
  2012. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranch.js.map +0 -1
  2013. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.d.ts.map +0 -1
  2014. package/analyzer-template/packages/github/dist/supabase/src/lib/loadBranches.js.map +0 -1
  2015. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.d.ts.map +0 -1
  2016. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js +0 -111
  2017. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommit.js.map +0 -1
  2018. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.d.ts.map +0 -1
  2019. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitBranches.js.map +0 -1
  2020. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.d.ts.map +0 -1
  2021. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  2022. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts +0 -13
  2023. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.d.ts.map +0 -1
  2024. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js +0 -188
  2025. package/analyzer-template/packages/github/dist/supabase/src/lib/loadCommits.js.map +0 -1
  2026. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts +0 -11
  2027. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.d.ts.map +0 -1
  2028. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js +0 -63
  2029. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntities.js.map +0 -1
  2030. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.d.ts.map +0 -1
  2031. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntity.js.map +0 -1
  2032. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.d.ts.map +0 -1
  2033. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js +0 -114
  2034. package/analyzer-template/packages/github/dist/supabase/src/lib/loadEntityBranches.js.map +0 -1
  2035. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.d.ts.map +0 -1
  2036. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFile.js.map +0 -1
  2037. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.d.ts.map +0 -1
  2038. package/analyzer-template/packages/github/dist/supabase/src/lib/loadFiles.js.map +0 -1
  2039. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.d.ts.map +0 -1
  2040. package/analyzer-template/packages/github/dist/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  2041. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.d.ts.map +0 -1
  2042. package/analyzer-template/packages/github/dist/supabase/src/lib/loadProject.js.map +0 -1
  2043. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +0 -1
  2044. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  2045. package/analyzer-template/packages/github/dist/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  2046. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.d.ts.map +0 -1
  2047. package/analyzer-template/packages/github/dist/supabase/src/lib/loadScenario.js.map +0 -1
  2048. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts +0 -3
  2049. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.d.ts.map +0 -1
  2050. package/analyzer-template/packages/github/dist/supabase/src/lib/loadStatement.js.map +0 -1
  2051. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.d.ts.map +0 -1
  2052. package/analyzer-template/packages/github/dist/supabase/src/lib/nullsToUndefines.js.map +0 -1
  2053. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.d.ts.map +0 -1
  2054. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js +0 -18
  2055. package/analyzer-template/packages/github/dist/supabase/src/lib/projectToDb.js.map +0 -1
  2056. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.d.ts.map +0 -1
  2057. package/analyzer-template/packages/github/dist/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  2058. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.d.ts.map +0 -1
  2059. package/analyzer-template/packages/github/dist/supabase/src/lib/saveEntityStatements.js.map +0 -1
  2060. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.d.ts.map +0 -1
  2061. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js +0 -33
  2062. package/analyzer-template/packages/github/dist/supabase/src/lib/saveFiles.js.map +0 -1
  2063. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.d.ts.map +0 -1
  2064. package/analyzer-template/packages/github/dist/supabase/src/lib/saveStatement.js.map +0 -1
  2065. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.d.ts.map +0 -1
  2066. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js +0 -18
  2067. package/analyzer-template/packages/github/dist/supabase/src/lib/scenarioToDb.js.map +0 -1
  2068. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts +0 -4
  2069. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.d.ts.map +0 -1
  2070. package/analyzer-template/packages/github/dist/supabase/src/lib/supabase.js.map +0 -1
  2071. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.d.ts.map +0 -1
  2072. package/analyzer-template/packages/github/dist/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  2073. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts +0 -13
  2074. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.d.ts.map +0 -1
  2075. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js +0 -100
  2076. package/analyzer-template/packages/github/dist/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  2077. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.d.ts.map +0 -1
  2078. package/analyzer-template/packages/github/dist/supabase/src/lib/updateEntityBranch.js.map +0 -1
  2079. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.d.ts.map +0 -1
  2080. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  2081. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.d.ts.map +0 -1
  2082. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.js +0 -42
  2083. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  2084. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +0 -1
  2085. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -70
  2086. package/analyzer-template/packages/github/dist/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  2087. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.d.ts.map +0 -1
  2088. package/analyzer-template/packages/github/dist/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  2089. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.d.ts.map +0 -1
  2090. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalyses.js.map +0 -1
  2091. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.d.ts.map +0 -1
  2092. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  2093. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.d.ts.map +0 -1
  2094. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  2095. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.d.ts.map +0 -1
  2096. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  2097. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.d.ts.map +0 -1
  2098. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertBranches.js.map +0 -1
  2099. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.d.ts.map +0 -1
  2100. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  2101. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.d.ts.map +0 -1
  2102. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertCommits.js.map +0 -1
  2103. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.d.ts.map +0 -1
  2104. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntities.js.map +0 -1
  2105. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.d.ts.map +0 -1
  2106. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  2107. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.d.ts.map +0 -1
  2108. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertFiles.js.map +0 -1
  2109. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.d.ts.map +0 -1
  2110. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertGithubUser.js.map +0 -1
  2111. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.d.ts.map +0 -1
  2112. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertProjects.js.map +0 -1
  2113. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.d.ts.map +0 -1
  2114. package/analyzer-template/packages/github/dist/supabase/src/lib/upsertScenarios.js.map +0 -1
  2115. package/analyzer-template/packages/supabase/client.ts +0 -35
  2116. package/analyzer-template/packages/supabase/index.ts +0 -93
  2117. package/analyzer-template/packages/supabase/package.json +0 -31
  2118. package/analyzer-template/packages/supabase/src/lib/analysisBranchToDb.ts +0 -28
  2119. package/analyzer-template/packages/supabase/src/lib/analysisToDb.ts +0 -59
  2120. package/analyzer-template/packages/supabase/src/lib/branchToDb.ts +0 -24
  2121. package/analyzer-template/packages/supabase/src/lib/commitBranchToDb.ts +0 -20
  2122. package/analyzer-template/packages/supabase/src/lib/commitToDb.ts +0 -47
  2123. package/analyzer-template/packages/supabase/src/lib/fileToDb.ts +0 -17
  2124. package/analyzer-template/packages/supabase/src/lib/kysely/db.ts +0 -476
  2125. package/analyzer-template/packages/supabase/src/lib/kysely/tableRelations.ts +0 -105
  2126. package/analyzer-template/packages/supabase/src/lib/kysely/tables/commitsTable.ts +0 -61
  2127. package/analyzer-template/packages/supabase/src/lib/loadAnalyses.ts +0 -218
  2128. package/analyzer-template/packages/supabase/src/lib/loadAnalysis.ts +0 -210
  2129. package/analyzer-template/packages/supabase/src/lib/loadBranch.ts +0 -122
  2130. package/analyzer-template/packages/supabase/src/lib/loadCommit.ts +0 -163
  2131. package/analyzer-template/packages/supabase/src/lib/loadCommits.ts +0 -251
  2132. package/analyzer-template/packages/supabase/src/lib/loadEntities.ts +0 -94
  2133. package/analyzer-template/packages/supabase/src/lib/loadEntity.ts +0 -110
  2134. package/analyzer-template/packages/supabase/src/lib/loadEntityBranches.ts +0 -166
  2135. package/analyzer-template/packages/supabase/src/lib/loadFile.ts +0 -47
  2136. package/analyzer-template/packages/supabase/src/lib/loadFiles.ts +0 -137
  2137. package/analyzer-template/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.ts +0 -76
  2138. package/analyzer-template/packages/supabase/src/lib/loadStatement.ts +0 -23
  2139. package/analyzer-template/packages/supabase/src/lib/projectToDb.ts +0 -35
  2140. package/analyzer-template/packages/supabase/src/lib/saveEntityStatements.ts +0 -28
  2141. package/analyzer-template/packages/supabase/src/lib/saveFiles.ts +0 -43
  2142. package/analyzer-template/packages/supabase/src/lib/scenarioToDb.ts +0 -34
  2143. package/analyzer-template/packages/supabase/src/lib/updateCommitMetadata.ts +0 -188
  2144. package/analyzer-template/packages/supabase/src/lib/updateFreshAnalysisStatus.ts +0 -64
  2145. package/analyzer-template/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.ts +0 -94
  2146. package/analyzer-template/packages/supabase/src/lib/updateProjectMetadata.ts +0 -96
  2147. package/analyzer-template/packages/supabase/src/lib/userScenarioToDb.ts +0 -18
  2148. package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
  2149. package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
  2150. package/analyzer-template/process/README.md +0 -507
  2151. package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
  2152. package/background/src/lib/process/ProcessManager.js +0 -244
  2153. package/background/src/lib/process/ProcessManager.js.map +0 -1
  2154. package/background/src/lib/process/index.js.map +0 -1
  2155. package/background/src/lib/process/managedExecAsync.js.map +0 -1
  2156. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
  2157. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
  2158. package/codeyam-cli/src/commands/detect-universal-mocks.js +0 -118
  2159. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +0 -1
  2160. package/codeyam-cli/src/commands/list.js +0 -31
  2161. package/codeyam-cli/src/commands/list.js.map +0 -1
  2162. package/codeyam-cli/src/utils/universal-mocks.js +0 -152
  2163. package/codeyam-cli/src/utils/universal-mocks.js.map +0 -1
  2164. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-rqv54FUY.js +0 -1
  2165. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-B0oiPem-.js +0 -26
  2166. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DqXXjAJ7.js +0 -3
  2167. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-BKKG1s2B.js +0 -3
  2168. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DU_jxCPD.js +0 -1
  2169. package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-5DY-YIxu.js +0 -6
  2170. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-DmjXUj6m.js +0 -5
  2171. package/codeyam-cli/src/webserver/build/client/assets/_index-DvSrcxsk.js +0 -1
  2172. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-CsaMd9mb.js +0 -10
  2173. package/codeyam-cli/src/webserver/build/client/assets/chart-column-VXBS6qOn.js +0 -1
  2174. package/codeyam-cli/src/webserver/build/client/assets/circle-alert-n5GUC2AS.js +0 -1
  2175. package/codeyam-cli/src/webserver/build/client/assets/clock-DKqtX8js.js +0 -1
  2176. package/codeyam-cli/src/webserver/build/client/assets/components-Dj-Ggnl2.js +0 -40
  2177. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-C1gnJVOL.svg +0 -4
  2178. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BbR3FwNc.js +0 -1
  2179. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-BHiWkb_W.js +0 -11
  2180. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-L7M9Vr5z.js +0 -1
  2181. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-C9w-q7P3.js +0 -5
  2182. package/codeyam-cli/src/webserver/build/client/assets/entityVersioning-Bk_YB1jM.js +0 -1
  2183. package/codeyam-cli/src/webserver/build/client/assets/entry.client-CdGoUs8A.js +0 -1
  2184. package/codeyam-cli/src/webserver/build/client/assets/file-text-B6Er7j5k.js +0 -1
  2185. package/codeyam-cli/src/webserver/build/client/assets/files-KcDVw1FY.js +0 -1
  2186. package/codeyam-cli/src/webserver/build/client/assets/git-B9uZ8eSJ.js +0 -12
  2187. package/codeyam-cli/src/webserver/build/client/assets/globals-B0f88RTV.css +0 -1
  2188. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-v3c6DFp4.js +0 -1
  2189. package/codeyam-cli/src/webserver/build/client/assets/manifest-fca08d7e.js +0 -1
  2190. package/codeyam-cli/src/webserver/build/client/assets/root-Cf8VBqIb.js +0 -16
  2191. package/codeyam-cli/src/webserver/build/client/assets/search-DA14wXpu.js +0 -1
  2192. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  2193. package/codeyam-cli/src/webserver/build/client/assets/settings-COJUrwGu.js +0 -1
  2194. package/codeyam-cli/src/webserver/build/client/assets/settings-NU_ZquhK.js +0 -1
  2195. package/codeyam-cli/src/webserver/build/client/assets/simulations-CNaMJ-nR.js +0 -1
  2196. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-Lumm1t01.js +0 -2
  2197. package/codeyam-cli/src/webserver/build/client/assets/useToast-BRShB17p.js +0 -1
  2198. package/codeyam-cli/src/webserver/build/client/assets/zap-BvukH0eN.js +0 -1
  2199. package/codeyam-cli/src/webserver/build/client/cy-logo-cli.svg +0 -13
  2200. package/codeyam-cli/src/webserver/build/client/favicon.svg +0 -13
  2201. package/codeyam-cli/src/webserver/build/server/assets/index-DHr4rT4u.js +0 -1
  2202. package/codeyam-cli/src/webserver/build/server/assets/server-build-Bi1mj14J.js +0 -166
  2203. package/codeyam-cli/src/webserver/public/cy-logo-cli.svg +0 -13
  2204. package/codeyam-cli/src/webserver/public/favicon.svg +0 -13
  2205. package/codeyam-cli/templates/codeyam-debug-skill.md +0 -557
  2206. package/codeyam-cli/templates/codeyam-setup-skill.md +0 -468
  2207. package/codeyam-cli/templates/codeyam-sim-skill.md +0 -222
  2208. package/codeyam-cli/templates/codeyam-stop-hook.sh +0 -284
  2209. package/codeyam-cli/templates/codeyam-test-skill.md +0 -178
  2210. package/codeyam-cli/templates/codeyam-verify-skill.md +0 -179
  2211. package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
  2212. package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
  2213. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -112
  2214. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
  2215. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -190
  2216. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
  2217. package/packages/ai/src/lib/generateEntityDataMap.js +0 -335
  2218. package/packages/ai/src/lib/generateEntityDataMap.js.map +0 -1
  2219. package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -182
  2220. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
  2221. package/packages/ai/src/lib/isFrontend.js +0 -5
  2222. package/packages/ai/src/lib/isFrontend.js.map +0 -1
  2223. package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js +0 -17
  2224. package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js.map +0 -1
  2225. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
  2226. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
  2227. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -59
  2228. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
  2229. package/packages/supabase/index.js +0 -84
  2230. package/packages/supabase/index.js.map +0 -1
  2231. package/packages/supabase/src/lib/analysisBranchToDb.js +0 -19
  2232. package/packages/supabase/src/lib/analysisBranchToDb.js.map +0 -1
  2233. package/packages/supabase/src/lib/analysisToDb.js +0 -26
  2234. package/packages/supabase/src/lib/analysisToDb.js.map +0 -1
  2235. package/packages/supabase/src/lib/backgroundJobToDb.js.map +0 -1
  2236. package/packages/supabase/src/lib/branchToDb.js +0 -18
  2237. package/packages/supabase/src/lib/branchToDb.js.map +0 -1
  2238. package/packages/supabase/src/lib/commitBranchToDb.js +0 -13
  2239. package/packages/supabase/src/lib/commitBranchToDb.js.map +0 -1
  2240. package/packages/supabase/src/lib/commitToDb.js +0 -26
  2241. package/packages/supabase/src/lib/commitToDb.js.map +0 -1
  2242. package/packages/supabase/src/lib/createOrUpdateBranchCommitStats.js.map +0 -1
  2243. package/packages/supabase/src/lib/createProject.js.map +0 -1
  2244. package/packages/supabase/src/lib/createRetryFetch.js.map +0 -1
  2245. package/packages/supabase/src/lib/dbToAnalysis.js.map +0 -1
  2246. package/packages/supabase/src/lib/dbToAnalysisBranch.js.map +0 -1
  2247. package/packages/supabase/src/lib/dbToBackgroundJob.js.map +0 -1
  2248. package/packages/supabase/src/lib/dbToBranch.js.map +0 -1
  2249. package/packages/supabase/src/lib/dbToCommit.js.map +0 -1
  2250. package/packages/supabase/src/lib/dbToCommitBranch.js.map +0 -1
  2251. package/packages/supabase/src/lib/dbToEntity.js.map +0 -1
  2252. package/packages/supabase/src/lib/dbToEntityBranch.js.map +0 -1
  2253. package/packages/supabase/src/lib/dbToFile.js.map +0 -1
  2254. package/packages/supabase/src/lib/dbToProject.js.map +0 -1
  2255. package/packages/supabase/src/lib/dbToScenario.js.map +0 -1
  2256. package/packages/supabase/src/lib/dbToScenarioComment.js.map +0 -1
  2257. package/packages/supabase/src/lib/dbToUserScenario.js.map +0 -1
  2258. package/packages/supabase/src/lib/deleteBranch.js.map +0 -1
  2259. package/packages/supabase/src/lib/deleteEntities.js.map +0 -1
  2260. package/packages/supabase/src/lib/deleteFile.js.map +0 -1
  2261. package/packages/supabase/src/lib/deleteScenarios.js.map +0 -1
  2262. package/packages/supabase/src/lib/entityToDb.js.map +0 -1
  2263. package/packages/supabase/src/lib/fileToDb.js +0 -14
  2264. package/packages/supabase/src/lib/fileToDb.js.map +0 -1
  2265. package/packages/supabase/src/lib/generateSha.js.map +0 -1
  2266. package/packages/supabase/src/lib/jsonUpdateUtils.js.map +0 -1
  2267. package/packages/supabase/src/lib/kysely/aggregationHelpers.js.map +0 -1
  2268. package/packages/supabase/src/lib/kysely/db.js +0 -360
  2269. package/packages/supabase/src/lib/kysely/db.js.map +0 -1
  2270. package/packages/supabase/src/lib/kysely/schemaHelpers.js.map +0 -1
  2271. package/packages/supabase/src/lib/kysely/sqliteBooleanPlugin.js.map +0 -1
  2272. package/packages/supabase/src/lib/kysely/tableRelations.js.map +0 -1
  2273. package/packages/supabase/src/lib/kysely/tableRelationsTypes.js.map +0 -1
  2274. package/packages/supabase/src/lib/kysely/tables/analysesTable.js.map +0 -1
  2275. package/packages/supabase/src/lib/kysely/tables/analysisBranchesTable.js.map +0 -1
  2276. package/packages/supabase/src/lib/kysely/tables/backgroundJobsTable.js.map +0 -1
  2277. package/packages/supabase/src/lib/kysely/tables/branchesTable.js.map +0 -1
  2278. package/packages/supabase/src/lib/kysely/tables/commitBranchesTable.js.map +0 -1
  2279. package/packages/supabase/src/lib/kysely/tables/commitsTable.js +0 -44
  2280. package/packages/supabase/src/lib/kysely/tables/commitsTable.js.map +0 -1
  2281. package/packages/supabase/src/lib/kysely/tables/entitiesTable.js.map +0 -1
  2282. package/packages/supabase/src/lib/kysely/tables/entityBranchesTable.js.map +0 -1
  2283. package/packages/supabase/src/lib/kysely/tables/entityStatementsTable.js.map +0 -1
  2284. package/packages/supabase/src/lib/kysely/tables/filesTable.js.map +0 -1
  2285. package/packages/supabase/src/lib/kysely/tables/githubPayloadsTable.js.map +0 -1
  2286. package/packages/supabase/src/lib/kysely/tables/githubUsersTable.js.map +0 -1
  2287. package/packages/supabase/src/lib/kysely/tables/projectsTable.js.map +0 -1
  2288. package/packages/supabase/src/lib/kysely/tables/scenarioCommentsTable.js.map +0 -1
  2289. package/packages/supabase/src/lib/kysely/tables/scenariosTable.js.map +0 -1
  2290. package/packages/supabase/src/lib/kysely/tables/statementsTable.js.map +0 -1
  2291. package/packages/supabase/src/lib/kysely/tables/teamsTable.js.map +0 -1
  2292. package/packages/supabase/src/lib/kysely/tables/userScenariosTable.js.map +0 -1
  2293. package/packages/supabase/src/lib/kysely/tables/userTeamsTable.js.map +0 -1
  2294. package/packages/supabase/src/lib/kysely/tables/usersTable.js.map +0 -1
  2295. package/packages/supabase/src/lib/kysely/upsertHelpers.js.map +0 -1
  2296. package/packages/supabase/src/lib/loadAnalyses.js +0 -131
  2297. package/packages/supabase/src/lib/loadAnalyses.js.map +0 -1
  2298. package/packages/supabase/src/lib/loadAnalysis.js +0 -130
  2299. package/packages/supabase/src/lib/loadAnalysis.js.map +0 -1
  2300. package/packages/supabase/src/lib/loadAnalysisBranches.js.map +0 -1
  2301. package/packages/supabase/src/lib/loadBackgroundJob.js.map +0 -1
  2302. package/packages/supabase/src/lib/loadBranch.js +0 -90
  2303. package/packages/supabase/src/lib/loadBranch.js.map +0 -1
  2304. package/packages/supabase/src/lib/loadBranches.js.map +0 -1
  2305. package/packages/supabase/src/lib/loadCommit.js +0 -111
  2306. package/packages/supabase/src/lib/loadCommit.js.map +0 -1
  2307. package/packages/supabase/src/lib/loadCommitBranches.js.map +0 -1
  2308. package/packages/supabase/src/lib/loadCommitMetadata.js.map +0 -1
  2309. package/packages/supabase/src/lib/loadCommits.js +0 -188
  2310. package/packages/supabase/src/lib/loadCommits.js.map +0 -1
  2311. package/packages/supabase/src/lib/loadEntities.js +0 -63
  2312. package/packages/supabase/src/lib/loadEntities.js.map +0 -1
  2313. package/packages/supabase/src/lib/loadEntity.js.map +0 -1
  2314. package/packages/supabase/src/lib/loadEntityBranches.js +0 -114
  2315. package/packages/supabase/src/lib/loadEntityBranches.js.map +0 -1
  2316. package/packages/supabase/src/lib/loadFile.js.map +0 -1
  2317. package/packages/supabase/src/lib/loadFiles.js.map +0 -1
  2318. package/packages/supabase/src/lib/loadMostRecentPreviousAnalysis.js.map +0 -1
  2319. package/packages/supabase/src/lib/loadProject.js.map +0 -1
  2320. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js +0 -50
  2321. package/packages/supabase/src/lib/loadReadyToBeCapturedAnalyses.js.map +0 -1
  2322. package/packages/supabase/src/lib/loadScenario.js.map +0 -1
  2323. package/packages/supabase/src/lib/loadStatement.js.map +0 -1
  2324. package/packages/supabase/src/lib/nullsToUndefines.js.map +0 -1
  2325. package/packages/supabase/src/lib/projectToDb.js +0 -18
  2326. package/packages/supabase/src/lib/projectToDb.js.map +0 -1
  2327. package/packages/supabase/src/lib/saveBackgroundEvent.js.map +0 -1
  2328. package/packages/supabase/src/lib/saveEntityStatements.js.map +0 -1
  2329. package/packages/supabase/src/lib/saveFiles.js +0 -33
  2330. package/packages/supabase/src/lib/saveFiles.js.map +0 -1
  2331. package/packages/supabase/src/lib/saveStatement.js.map +0 -1
  2332. package/packages/supabase/src/lib/scenarioToDb.js +0 -18
  2333. package/packages/supabase/src/lib/scenarioToDb.js.map +0 -1
  2334. package/packages/supabase/src/lib/supabase.js.map +0 -1
  2335. package/packages/supabase/src/lib/updateBackgroundJobProgress.js.map +0 -1
  2336. package/packages/supabase/src/lib/updateCommitMetadata.js +0 -100
  2337. package/packages/supabase/src/lib/updateCommitMetadata.js.map +0 -1
  2338. package/packages/supabase/src/lib/updateEntityBranch.js.map +0 -1
  2339. package/packages/supabase/src/lib/updateFreshAnalysisMetadata.js.map +0 -1
  2340. package/packages/supabase/src/lib/updateFreshAnalysisStatus.js +0 -42
  2341. package/packages/supabase/src/lib/updateFreshAnalysisStatus.js.map +0 -1
  2342. package/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js +0 -70
  2343. package/packages/supabase/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +0 -1
  2344. package/packages/supabase/src/lib/updateProjectMetadata.js.map +0 -1
  2345. package/packages/supabase/src/lib/upsertAnalyses.js.map +0 -1
  2346. package/packages/supabase/src/lib/upsertAnalysesWithScenarios.js.map +0 -1
  2347. package/packages/supabase/src/lib/upsertAnalysisBranches.js.map +0 -1
  2348. package/packages/supabase/src/lib/upsertBackgroundJob.js.map +0 -1
  2349. package/packages/supabase/src/lib/upsertBranches.js.map +0 -1
  2350. package/packages/supabase/src/lib/upsertCommitBranches.js.map +0 -1
  2351. package/packages/supabase/src/lib/upsertCommits.js.map +0 -1
  2352. package/packages/supabase/src/lib/upsertEntities.js.map +0 -1
  2353. package/packages/supabase/src/lib/upsertEntityBranches.js.map +0 -1
  2354. package/packages/supabase/src/lib/upsertFiles.js.map +0 -1
  2355. package/packages/supabase/src/lib/upsertGithubUser.js.map +0 -1
  2356. package/packages/supabase/src/lib/upsertProjects.js.map +0 -1
  2357. package/packages/supabase/src/lib/upsertScenarios.js.map +0 -1
  2358. package/scripts/finalize-analyzer.cjs +0 -79
  2359. /package/analyzer-template/packages/{supabase → database}/__mocks__/index.ts +0 -0
  2360. /package/analyzer-template/packages/{supabase → database}/src/lib/backgroundJobToDb.ts +0 -0
  2361. /package/analyzer-template/packages/{supabase → database}/src/lib/client/listenForCommits_Client.ts +0 -0
  2362. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysesInClient.ts +0 -0
  2363. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadAnalysis_Client.ts +0 -0
  2364. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadBranches_Client.ts +0 -0
  2365. /package/analyzer-template/packages/{supabase → database}/src/lib/client/loadCommit_Client.ts +0 -0
  2366. /package/analyzer-template/packages/{supabase → database}/src/lib/client/upsertFiles_Client.ts +0 -0
  2367. /package/analyzer-template/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.ts +0 -0
  2368. /package/analyzer-template/packages/{supabase → database}/src/lib/createProject.ts +0 -0
  2369. /package/analyzer-template/packages/{supabase → database}/src/lib/createRetryFetch.ts +0 -0
  2370. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysis.ts +0 -0
  2371. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToAnalysisBranch.ts +0 -0
  2372. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBackgroundJob.ts +0 -0
  2373. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToBranch.ts +0 -0
  2374. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommit.ts +0 -0
  2375. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToCommitBranch.ts +0 -0
  2376. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntity.ts +0 -0
  2377. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToEntityBranch.ts +0 -0
  2378. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToFile.ts +0 -0
  2379. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToProject.ts +0 -0
  2380. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenario.ts +0 -0
  2381. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToScenarioComment.ts +0 -0
  2382. /package/analyzer-template/packages/{supabase → database}/src/lib/dbToUserScenario.ts +0 -0
  2383. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteBranch.ts +0 -0
  2384. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteEntities.ts +0 -0
  2385. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteFile.ts +0 -0
  2386. /package/analyzer-template/packages/{supabase → database}/src/lib/deleteScenarios.ts +0 -0
  2387. /package/analyzer-template/packages/{supabase → database}/src/lib/entityToDb.ts +0 -0
  2388. /package/analyzer-template/packages/{supabase → database}/src/lib/generateSha.ts +0 -0
  2389. /package/analyzer-template/packages/{supabase → database}/src/lib/jsonUpdateUtils.ts +0 -0
  2390. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.ts +0 -0
  2391. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/schemaHelpers.ts +0 -0
  2392. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.ts +0 -0
  2393. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.ts +0 -0
  2394. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.ts +0 -0
  2395. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.ts +0 -0
  2396. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.ts +0 -0
  2397. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.ts +0 -0
  2398. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.ts +0 -0
  2399. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.ts +0 -0
  2400. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.ts +0 -0
  2401. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.ts +0 -0
  2402. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/filesTable.ts +0 -0
  2403. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.ts +0 -0
  2404. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.ts +0 -0
  2405. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.ts +0 -0
  2406. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.ts +0 -0
  2407. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.ts +0 -0
  2408. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.ts +0 -0
  2409. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.ts +0 -0
  2410. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.ts +0 -0
  2411. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.ts +0 -0
  2412. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/tables/usersTable.ts +0 -0
  2413. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely/upsertHelpers.ts +0 -0
  2414. /package/analyzer-template/packages/{supabase → database}/src/lib/kysely.ts +0 -0
  2415. /package/analyzer-template/packages/{supabase → database}/src/lib/loadAnalysisBranches.ts +0 -0
  2416. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBackgroundJob.ts +0 -0
  2417. /package/analyzer-template/packages/{supabase → database}/src/lib/loadBranches.ts +0 -0
  2418. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitBranches.ts +0 -0
  2419. /package/analyzer-template/packages/{supabase → database}/src/lib/loadCommitMetadata.ts +0 -0
  2420. /package/analyzer-template/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.ts +0 -0
  2421. /package/analyzer-template/packages/{supabase → database}/src/lib/loadProject.ts +0 -0
  2422. /package/analyzer-template/packages/{supabase → database}/src/lib/loadScenario.ts +0 -0
  2423. /package/analyzer-template/packages/{supabase → database}/src/lib/nullsToUndefines.ts +0 -0
  2424. /package/analyzer-template/packages/{supabase → database}/src/lib/saveBackgroundEvent.ts +0 -0
  2425. /package/analyzer-template/packages/{supabase → database}/src/lib/saveStatement.ts +0 -0
  2426. /package/analyzer-template/packages/{supabase → database}/src/lib/scenarioCommentToDb.ts +0 -0
  2427. /package/analyzer-template/packages/{supabase → database}/src/lib/supabase.ts +0 -0
  2428. /package/analyzer-template/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.ts +0 -0
  2429. /package/analyzer-template/packages/{supabase → database}/src/lib/updateEntityBranch.ts +0 -0
  2430. /package/analyzer-template/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.ts +0 -0
  2431. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalyses.ts +0 -0
  2432. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.ts +0 -0
  2433. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertAnalysisBranches.ts +0 -0
  2434. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBackgroundJob.ts +0 -0
  2435. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertBranches.ts +0 -0
  2436. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommitBranches.ts +0 -0
  2437. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertCommits.ts +0 -0
  2438. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntities.ts +0 -0
  2439. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertEntityBranches.ts +0 -0
  2440. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertFiles.ts +0 -0
  2441. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertGithubUser.ts +0 -0
  2442. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertProjects.ts +0 -0
  2443. /package/analyzer-template/packages/{supabase → database}/src/lib/upsertScenarios.ts +0 -0
  2444. /package/analyzer-template/packages/{supabase → database}/tsconfig.json +0 -0
  2445. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisBranchToDb.d.ts +0 -0
  2446. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/analysisToDb.d.ts +0 -0
  2447. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.d.ts +0 -0
  2448. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2449. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/branchToDb.d.ts +0 -0
  2450. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitBranchToDb.d.ts +0 -0
  2451. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/commitToDb.d.ts +0 -0
  2452. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.d.ts +0 -0
  2453. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2454. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.d.ts +0 -0
  2455. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createProject.js +0 -0
  2456. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.d.ts +0 -0
  2457. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2458. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.d.ts +0 -0
  2459. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2460. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.d.ts +0 -0
  2461. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2462. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.d.ts +0 -0
  2463. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2464. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.d.ts +0 -0
  2465. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2466. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.d.ts +0 -0
  2467. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2468. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.d.ts +0 -0
  2469. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2470. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.d.ts +0 -0
  2471. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2472. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.d.ts +0 -0
  2473. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2474. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.d.ts +0 -0
  2475. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToFile.js +0 -0
  2476. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.d.ts +0 -0
  2477. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToProject.js +0 -0
  2478. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.d.ts +0 -0
  2479. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2480. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.d.ts +0 -0
  2481. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2482. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.d.ts +0 -0
  2483. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2484. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.d.ts +0 -0
  2485. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2486. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.d.ts +0 -0
  2487. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2488. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.d.ts +0 -0
  2489. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteFile.js +0 -0
  2490. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.d.ts +0 -0
  2491. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2492. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.d.ts +0 -0
  2493. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/entityToDb.js +0 -0
  2494. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/fileToDb.d.ts +0 -0
  2495. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.d.ts +0 -0
  2496. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/generateSha.js +0 -0
  2497. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.d.ts +0 -0
  2498. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2499. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.d.ts +0 -0
  2500. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2501. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.d.ts +0 -0
  2502. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2503. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.d.ts +0 -0
  2504. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2505. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2506. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.d.ts +0 -0
  2507. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2508. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2509. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.d.ts +0 -0
  2510. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2511. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.d.ts +0 -0
  2512. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2513. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.d.ts +0 -0
  2514. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2515. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.d.ts +0 -0
  2516. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2517. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2518. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.d.ts +0 -0
  2519. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2520. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.d.ts +0 -0
  2521. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2522. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.d.ts +0 -0
  2523. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2524. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.d.ts +0 -0
  2525. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2526. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.d.ts +0 -0
  2527. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2528. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.d.ts +0 -0
  2529. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2530. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.d.ts +0 -0
  2531. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2532. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2533. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.d.ts +0 -0
  2534. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2535. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.d.ts +0 -0
  2536. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2537. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.d.ts +0 -0
  2538. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2539. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.d.ts +0 -0
  2540. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2541. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.d.ts +0 -0
  2542. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2543. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.d.ts +0 -0
  2544. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2545. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysis.d.ts +0 -0
  2546. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.d.ts +0 -0
  2547. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2548. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.d.ts +0 -0
  2549. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2550. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranch.d.ts +0 -0
  2551. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.d.ts +0 -0
  2552. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadBranches.js +0 -0
  2553. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommit.d.ts +0 -0
  2554. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.d.ts +0 -0
  2555. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2556. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.d.ts +0 -0
  2557. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2558. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.d.ts +0 -0
  2559. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntity.js +0 -0
  2560. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadEntityBranches.d.ts +0 -0
  2561. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.d.ts +0 -0
  2562. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFile.js +0 -0
  2563. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.d.ts +0 -0
  2564. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadFiles.js +0 -0
  2565. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.d.ts +0 -0
  2566. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2567. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.d.ts +0 -0
  2568. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadProject.js +0 -0
  2569. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadReadyToBeCapturedAnalyses.d.ts +0 -0
  2570. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.d.ts +0 -0
  2571. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadScenario.js +0 -0
  2572. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/loadStatement.js +0 -0
  2573. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.d.ts +0 -0
  2574. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2575. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/projectToDb.d.ts +0 -0
  2576. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.d.ts +0 -0
  2577. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2578. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.d.ts +0 -0
  2579. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2580. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveFiles.d.ts +0 -0
  2581. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.d.ts +0 -0
  2582. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/saveStatement.js +0 -0
  2583. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/scenarioToDb.d.ts +0 -0
  2584. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/supabase.js +0 -0
  2585. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.d.ts +0 -0
  2586. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2587. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.d.ts +0 -0
  2588. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2589. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.d.ts +0 -0
  2590. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2591. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatus.d.ts +0 -0
  2592. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts +0 -0
  2593. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.d.ts +0 -0
  2594. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2595. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.d.ts +0 -0
  2596. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2597. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.d.ts +0 -0
  2598. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2599. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.d.ts +0 -0
  2600. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2601. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.d.ts +0 -0
  2602. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2603. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.d.ts +0 -0
  2604. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2605. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.d.ts +0 -0
  2606. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2607. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.d.ts +0 -0
  2608. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2609. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.d.ts +0 -0
  2610. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2611. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.d.ts +0 -0
  2612. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2613. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.d.ts +0 -0
  2614. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2615. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.d.ts +0 -0
  2616. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2617. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.d.ts +0 -0
  2618. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2619. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.d.ts +0 -0
  2620. /package/analyzer-template/packages/github/dist/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2621. /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
  2622. /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
  2623. /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
  2624. /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
  2625. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
  2626. /package/packages/{supabase → database}/src/lib/backgroundJobToDb.js +0 -0
  2627. /package/packages/{supabase → database}/src/lib/createOrUpdateBranchCommitStats.js +0 -0
  2628. /package/packages/{supabase → database}/src/lib/createProject.js +0 -0
  2629. /package/packages/{supabase → database}/src/lib/createRetryFetch.js +0 -0
  2630. /package/packages/{supabase → database}/src/lib/dbToAnalysis.js +0 -0
  2631. /package/packages/{supabase → database}/src/lib/dbToAnalysisBranch.js +0 -0
  2632. /package/packages/{supabase → database}/src/lib/dbToBackgroundJob.js +0 -0
  2633. /package/packages/{supabase → database}/src/lib/dbToBranch.js +0 -0
  2634. /package/packages/{supabase → database}/src/lib/dbToCommit.js +0 -0
  2635. /package/packages/{supabase → database}/src/lib/dbToCommitBranch.js +0 -0
  2636. /package/packages/{supabase → database}/src/lib/dbToEntity.js +0 -0
  2637. /package/packages/{supabase → database}/src/lib/dbToEntityBranch.js +0 -0
  2638. /package/packages/{supabase → database}/src/lib/dbToFile.js +0 -0
  2639. /package/packages/{supabase → database}/src/lib/dbToProject.js +0 -0
  2640. /package/packages/{supabase → database}/src/lib/dbToScenario.js +0 -0
  2641. /package/packages/{supabase → database}/src/lib/dbToScenarioComment.js +0 -0
  2642. /package/packages/{supabase → database}/src/lib/dbToUserScenario.js +0 -0
  2643. /package/packages/{supabase → database}/src/lib/deleteBranch.js +0 -0
  2644. /package/packages/{supabase → database}/src/lib/deleteEntities.js +0 -0
  2645. /package/packages/{supabase → database}/src/lib/deleteFile.js +0 -0
  2646. /package/packages/{supabase → database}/src/lib/deleteScenarios.js +0 -0
  2647. /package/packages/{supabase → database}/src/lib/entityToDb.js +0 -0
  2648. /package/packages/{supabase → database}/src/lib/generateSha.js +0 -0
  2649. /package/packages/{supabase → database}/src/lib/jsonUpdateUtils.js +0 -0
  2650. /package/packages/{supabase → database}/src/lib/kysely/aggregationHelpers.js +0 -0
  2651. /package/packages/{supabase → database}/src/lib/kysely/schemaHelpers.js +0 -0
  2652. /package/packages/{supabase → database}/src/lib/kysely/sqliteBooleanPlugin.js +0 -0
  2653. /package/packages/{supabase → database}/src/lib/kysely/tableRelations.js +0 -0
  2654. /package/packages/{supabase → database}/src/lib/kysely/tableRelationsTypes.js +0 -0
  2655. /package/packages/{supabase → database}/src/lib/kysely/tables/analysesTable.js +0 -0
  2656. /package/packages/{supabase → database}/src/lib/kysely/tables/analysisBranchesTable.js +0 -0
  2657. /package/packages/{supabase → database}/src/lib/kysely/tables/backgroundJobsTable.js +0 -0
  2658. /package/packages/{supabase → database}/src/lib/kysely/tables/branchesTable.js +0 -0
  2659. /package/packages/{supabase → database}/src/lib/kysely/tables/commitBranchesTable.js +0 -0
  2660. /package/packages/{supabase → database}/src/lib/kysely/tables/entitiesTable.js +0 -0
  2661. /package/packages/{supabase → database}/src/lib/kysely/tables/entityBranchesTable.js +0 -0
  2662. /package/packages/{supabase → database}/src/lib/kysely/tables/entityStatementsTable.js +0 -0
  2663. /package/packages/{supabase → database}/src/lib/kysely/tables/filesTable.js +0 -0
  2664. /package/packages/{supabase → database}/src/lib/kysely/tables/githubPayloadsTable.js +0 -0
  2665. /package/packages/{supabase → database}/src/lib/kysely/tables/githubUsersTable.js +0 -0
  2666. /package/packages/{supabase → database}/src/lib/kysely/tables/projectsTable.js +0 -0
  2667. /package/packages/{supabase → database}/src/lib/kysely/tables/scenarioCommentsTable.js +0 -0
  2668. /package/packages/{supabase → database}/src/lib/kysely/tables/scenariosTable.js +0 -0
  2669. /package/packages/{supabase → database}/src/lib/kysely/tables/statementsTable.js +0 -0
  2670. /package/packages/{supabase → database}/src/lib/kysely/tables/teamsTable.js +0 -0
  2671. /package/packages/{supabase → database}/src/lib/kysely/tables/userScenariosTable.js +0 -0
  2672. /package/packages/{supabase → database}/src/lib/kysely/tables/userTeamsTable.js +0 -0
  2673. /package/packages/{supabase → database}/src/lib/kysely/tables/usersTable.js +0 -0
  2674. /package/packages/{supabase → database}/src/lib/kysely/upsertHelpers.js +0 -0
  2675. /package/packages/{supabase → database}/src/lib/loadAnalysisBranches.js +0 -0
  2676. /package/packages/{supabase → database}/src/lib/loadBackgroundJob.js +0 -0
  2677. /package/packages/{supabase → database}/src/lib/loadBranches.js +0 -0
  2678. /package/packages/{supabase → database}/src/lib/loadCommitBranches.js +0 -0
  2679. /package/packages/{supabase → database}/src/lib/loadCommitMetadata.js +0 -0
  2680. /package/packages/{supabase → database}/src/lib/loadEntity.js +0 -0
  2681. /package/packages/{supabase → database}/src/lib/loadFile.js +0 -0
  2682. /package/packages/{supabase → database}/src/lib/loadFiles.js +0 -0
  2683. /package/packages/{supabase → database}/src/lib/loadMostRecentPreviousAnalysis.js +0 -0
  2684. /package/packages/{supabase → database}/src/lib/loadProject.js +0 -0
  2685. /package/packages/{supabase → database}/src/lib/loadScenario.js +0 -0
  2686. /package/packages/{supabase → database}/src/lib/loadStatement.js +0 -0
  2687. /package/packages/{supabase → database}/src/lib/nullsToUndefines.js +0 -0
  2688. /package/packages/{supabase → database}/src/lib/saveBackgroundEvent.js +0 -0
  2689. /package/packages/{supabase → database}/src/lib/saveEntityStatements.js +0 -0
  2690. /package/packages/{supabase → database}/src/lib/saveStatement.js +0 -0
  2691. /package/packages/{supabase → database}/src/lib/supabase.js +0 -0
  2692. /package/packages/{supabase → database}/src/lib/updateBackgroundJobProgress.js +0 -0
  2693. /package/packages/{supabase → database}/src/lib/updateEntityBranch.js +0 -0
  2694. /package/packages/{supabase → database}/src/lib/updateFreshAnalysisMetadata.js +0 -0
  2695. /package/packages/{supabase → database}/src/lib/updateProjectMetadata.js +0 -0
  2696. /package/packages/{supabase → database}/src/lib/upsertAnalyses.js +0 -0
  2697. /package/packages/{supabase → database}/src/lib/upsertAnalysesWithScenarios.js +0 -0
  2698. /package/packages/{supabase → database}/src/lib/upsertAnalysisBranches.js +0 -0
  2699. /package/packages/{supabase → database}/src/lib/upsertBackgroundJob.js +0 -0
  2700. /package/packages/{supabase → database}/src/lib/upsertBranches.js +0 -0
  2701. /package/packages/{supabase → database}/src/lib/upsertCommitBranches.js +0 -0
  2702. /package/packages/{supabase → database}/src/lib/upsertCommits.js +0 -0
  2703. /package/packages/{supabase → database}/src/lib/upsertEntities.js +0 -0
  2704. /package/packages/{supabase → database}/src/lib/upsertEntityBranches.js +0 -0
  2705. /package/packages/{supabase → database}/src/lib/upsertFiles.js +0 -0
  2706. /package/packages/{supabase → database}/src/lib/upsertGithubUser.js +0 -0
  2707. /package/packages/{supabase → database}/src/lib/upsertProjects.js +0 -0
  2708. /package/packages/{supabase → database}/src/lib/upsertScenarios.js +0 -0
  2709. /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
  2710. /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
  2711. /package/{background/src/lib/process → packages/process/src}/managedExecAsync.js +0 -0
@@ -4,8 +4,9 @@ import {
4
4
  functionArguments,
5
5
  cleanOutBoundary,
6
6
  fillInDirectSchemaGapsAndUnknowns,
7
+ removeDuplicateFunctionCalls,
7
8
  } from '~codeyam/ai';
8
- import { DataStructure, DeepReadonly } from '~codeyam/types';
9
+ import { DataStructure, DeepReadonly, EntityType } from '~codeyam/types';
9
10
 
10
11
  interface ReturnValuePart {
11
12
  name: string;
@@ -18,10 +19,141 @@ interface ReturnValuePart {
18
19
  nested?: ReturnValuePart[];
19
20
  isAsyncFunction?: boolean;
20
21
  isStructural?: boolean;
22
+ hasNoReturnData?: boolean; // true when function has only signature entries, no functionCallReturnValue
21
23
  // Maps literal argument values to their specific nested structures for conditional dispatch
22
24
  argVariants?: Map<string, ReturnValuePart[]>;
23
25
  }
24
26
 
27
+ /**
28
+ * Converts a call signature to a valid JavaScript identifier (function name).
29
+ * The original signature is preserved for data access - this only creates the function name.
30
+ *
31
+ * Examples:
32
+ * - "useAuth()" → "useAuth"
33
+ * - "db.select(usersQuery)" → "db_select_usersQuery"
34
+ * - "db.select(postsQuery)" → "db_select_postsQuery"
35
+ * - "useFetcher<User>()" → "useFetcher_User"
36
+ * - "useFetcher<{ data: UserData | null }>()" → "useFetcher_data_UserData_null"
37
+ * - "eq('user_id', value)" → "eq_user_id_value"
38
+ * - "from('workouts')" → "from_workouts"
39
+ */
40
+ function callSignatureToFunctionName(signature: string): string {
41
+ // Extract components from the signature
42
+ const components: string[] = [];
43
+
44
+ // 1. Extract function path (parts separated by dots outside parens/brackets)
45
+ const pathMatch = signature.match(/^([^<(]+)/);
46
+ if (pathMatch) {
47
+ const path = pathMatch[1];
48
+ // Split on dots but preserve the parts
49
+ components.push(...path.split('.').filter(Boolean));
50
+ }
51
+
52
+ // 2. Extract generic type parameters (content between < and >)
53
+ const genericMatch = signature.match(/<([^>]+)>/);
54
+ if (genericMatch) {
55
+ const genericContent = genericMatch[1];
56
+ // Extract meaningful identifiers from generic type
57
+ // Handle complex types like "{ data: UserData | null }"
58
+ const typeIdentifiers = genericContent
59
+ .replace(/[{}:;,]/g, ' ') // Remove structural chars
60
+ .replace(/\|/g, ' ') // Handle union types
61
+ .split(/\s+/)
62
+ .filter(Boolean)
63
+ .filter((s) => /^[A-Za-z_][A-Za-z0-9_]*$/.test(s)) // Only valid identifiers
64
+ .filter(
65
+ (s) =>
66
+ ![
67
+ 'null',
68
+ 'undefined',
69
+ 'void',
70
+ 'never',
71
+ 'any',
72
+ 'unknown',
73
+ 'data',
74
+ 'typeof',
75
+ ].includes(s),
76
+ ); // Skip common non-meaningful keywords
77
+
78
+ if (typeIdentifiers.length > 0) {
79
+ components.push(...typeIdentifiers.slice(0, 2)); // Limit to first 2 for reasonable length
80
+ }
81
+ }
82
+
83
+ // 3. Extract function arguments (first 2 for disambiguation)
84
+ const argsMatch = signature.match(/\(([^)]*)\)/);
85
+ if (argsMatch && argsMatch[1]) {
86
+ const argsContent = argsMatch[1].trim();
87
+ if (argsContent) {
88
+ const args = argsContent.split(',').map((arg) => arg.trim());
89
+ for (const arg of args.slice(0, 2)) {
90
+ // For quoted strings, extract the content
91
+ const stringMatch = arg.match(/^['"`](.+)['"`]$/);
92
+ if (stringMatch) {
93
+ // Split on dots for string paths like 'users.id'
94
+ const parts = stringMatch[1].split('.').filter(Boolean);
95
+ components.push(...parts);
96
+ } else if (/^[A-Za-z_][A-Za-z0-9_]*$/.test(arg)) {
97
+ // Valid identifier - use as-is
98
+ components.push(arg);
99
+ } else if (/^\d+$/.test(arg)) {
100
+ // Number - use as-is
101
+ components.push(arg);
102
+ }
103
+ // Skip complex expressions
104
+ }
105
+ }
106
+ }
107
+
108
+ // Build the function name from components
109
+ const functionName = components
110
+ .join('_')
111
+ .replace(/[^a-zA-Z0-9_]/g, '_') // Sanitize special chars
112
+ .replace(/_+/g, '_') // Collapse multiple underscores
113
+ .replace(/^_|_$/g, ''); // Trim underscores
114
+
115
+ return functionName || 'mock';
116
+ }
117
+
118
+ /**
119
+ * Check if a mock name is a call signature (e.g., "useFetcher<User>()", "db.select(query)")
120
+ */
121
+ function isCallSignature(mockName: string): boolean {
122
+ // Call signatures contain parentheses (function calls)
123
+ return mockName.includes('(');
124
+ }
125
+
126
+ /**
127
+ * Extract property names that are jsx-components and should be preserved from original.
128
+ * These are paths like "MockName.Provider()" where the value or functionCallReturnValue is 'jsx-component'.
129
+ */
130
+ function getJsxComponentProperties(
131
+ mockName: string,
132
+ schema: Record<string, string>,
133
+ ): string[] {
134
+ const jsxProperties: string[] = [];
135
+
136
+ for (const [path, value] of Object.entries(schema ?? {})) {
137
+ // Look for paths like "MockName.PropertyName()" that are jsx-components
138
+ // Skip paths that have deeper nesting (e.g., "MockName.Foo.Bar()")
139
+ const match = path.match(new RegExp(`^${mockName}\\.([^.()]+)\\(\\)$`));
140
+ if (!match) continue;
141
+
142
+ const propertyName = match[1];
143
+
144
+ // Check if this is a jsx-component (either directly or via functionCallReturnValue)
145
+ const isJsxComponent =
146
+ value === 'jsx-component' ||
147
+ schema[path + '.functionCallReturnValue'] === 'jsx-component';
148
+
149
+ if (isJsxComponent && !jsxProperties.includes(propertyName)) {
150
+ jsxProperties.push(propertyName);
151
+ }
152
+ }
153
+
154
+ return jsxProperties;
155
+ }
156
+
25
157
  /**
26
158
  * Check if a string is a literal (quoted string or number).
27
159
  * Returns the unquoted value if it's a literal, null otherwise.
@@ -153,25 +285,82 @@ function funcArgs(functionSignature: string): string[] {
153
285
 
154
286
  // isValidKey ensures that the key does not contain any characters that would make it invalid in a JavaScript object.
155
287
  // For example, it should not contain spaces, special characters, or start with a number.
288
+ // Also rejects keys that are pure function calls like "()" or "(args)" - these aren't property names.
156
289
  function isValidKey(key: string) {
157
290
  if (!key || key.length === 0) return false;
158
291
  const keyWithOutArguments = key.split('(')[0];
292
+ // Reject empty keys (happens when key is "()" or "(args)") - these are function calls, not property names
293
+ if (!keyWithOutArguments || keyWithOutArguments.length === 0) return false;
159
294
  return !/\s/.test(keyWithOutArguments);
160
295
  }
161
296
 
297
+ /**
298
+ * Known hooks that return tuples [value, setter] instead of arrays.
299
+ * These should NOT use the .map() pattern even when the schema has generic array access ([]).
300
+ * Instead, they should return [data, () => {}] where data is from scenarios().
301
+ */
302
+ const TUPLE_RETURNING_HOOKS = new Set([
303
+ 'useAtom', // Jotai
304
+ 'useState', // React
305
+ 'useReducer', // React
306
+ 'useRecoilState', // Recoil
307
+ 'useImmerAtom', // Jotai with Immer
308
+ ]);
309
+
162
310
  export default function constructMockCode(
163
311
  mockName: string,
164
312
  dependencySchemas: DeepReadonly<DataStructure['dependencySchemas']>,
313
+ entityType?: EntityType,
314
+ _canonicalKey?: string, // DEPRECATED: No longer used, kept for API compatibility
315
+ options?: {
316
+ keepOriginalFunctionName?: boolean;
317
+ uniqueFunctionSuffix?: string;
318
+ skipOriginalSpread?: boolean; // Skip spreading from __cyOriginal when it won't be defined
319
+ },
165
320
  ) {
166
- const mockNameParts = splitOutsideParenthesesAndArrays(mockName);
321
+ // Check if mockName is a call signature (e.g., "useFetcher<User>()", "db.select(query)")
322
+ const mockNameIsCallSignature = isCallSignature(mockName);
323
+
324
+ // For call signatures, use the original signature for data access but generate
325
+ // a valid JS function name from it
326
+ const derivedFunctionName = mockNameIsCallSignature
327
+ ? callSignatureToFunctionName(mockName)
328
+ : null;
329
+
330
+ // The baseMockName is the function name without type params and args
331
+ // e.g., "useFetcher<User>()" -> "useFetcher", "db.select(query)" -> "db"
332
+ const baseMockName = mockName.split(/[<(]/)[0];
333
+
334
+ // The data key is the mockName (call signature) for data access
335
+ let dataKey: string;
336
+
337
+ const mockNameParts = splitOutsideParenthesesAndArrays(baseMockName);
167
338
 
168
339
  let relevantReturnValueSchema: DataStructure['returnValueSchema'] | undefined;
169
340
  let dataStructurePath: string | undefined;
170
341
  let dataStructureValue: string | undefined;
342
+ let foundEntityWithSignature = false;
343
+ let signatureSchema: DataStructure['signatureSchema'] | undefined;
344
+ let baseSchemaHasMethodCalls = false;
171
345
 
172
- for (const filePath in dependencySchemas) {
346
+ entitySearch: for (const filePath in dependencySchemas) {
173
347
  for (const entityName in dependencySchemas[filePath]) {
174
- if (entityName !== mockNameParts[0]) continue;
348
+ // Match entity by base name (without generics/args)
349
+ const entityBaseName = entityName.split(/[<(]/)[0];
350
+ const matches =
351
+ entityBaseName === baseMockName || entityName === mockNameParts[0];
352
+
353
+ if (!matches) continue;
354
+
355
+ // Track if we found the entity and it has a signature (is a function)
356
+ const entitySchema = dependencySchemas[filePath][entityName];
357
+ if (
358
+ entitySchema?.signatureSchema &&
359
+ Object.keys(entitySchema.signatureSchema).length > 0
360
+ ) {
361
+ foundEntityWithSignature = true;
362
+ signatureSchema = entitySchema.signatureSchema;
363
+ }
175
364
 
176
365
  dataStructurePath = Object.keys(
177
366
  dependencySchemas[filePath][entityName]?.returnValueSchema ?? {},
@@ -190,19 +379,196 @@ export default function constructMockCode(
190
379
  });
191
380
 
192
381
  if (dataStructurePath) {
382
+ // Start with the base entity's return value schema
383
+ const baseReturnValueSchema =
384
+ dependencySchemas[filePath][entityName]?.returnValueSchema;
385
+ const mergedSchema = {
386
+ ...baseReturnValueSchema,
387
+ };
388
+
389
+ // Check if the base schema has method-call entries (e.g., .map().functionCallReturnValue)
390
+ // When it does, the scenario data is stored as an object with method keys, and
391
+ // array prototype methods need mock implementations. When it doesn't, the data
392
+ // is a raw array and native methods like .includes() work directly.
393
+ if (baseReturnValueSchema) {
394
+ baseSchemaHasMethodCalls = Object.keys(baseReturnValueSchema).some(
395
+ (k) =>
396
+ k.startsWith(baseMockName + '.') &&
397
+ k.includes('(') &&
398
+ k.includes('.functionCallReturnValue'),
399
+ );
400
+ }
401
+
402
+ // Merge in method-call dependencies that are separate entries.
403
+ // e.g., "activityTypes.find((a) => a.value === type)" is a separate dependency
404
+ // for a .find() call on activityTypes. We need to include these with a
405
+ // .functionCallReturnValue path so constructMockCode generates callable mock methods.
406
+ for (const otherEntityName in dependencySchemas[filePath]) {
407
+ if (otherEntityName === entityName) continue;
408
+ if (
409
+ otherEntityName.startsWith(baseMockName + '.') &&
410
+ otherEntityName.includes('(')
411
+ ) {
412
+ // Add a functionCallReturnValue entry for this method call.
413
+ // This ensures constructMockCode treats it as a function that returns data,
414
+ // generating a proper mock method with data lookup.
415
+ const fcrvPath = `${otherEntityName}.functionCallReturnValue`;
416
+ if (!mergedSchema[fcrvPath]) {
417
+ // Infer the return type from the method-call dependency's schema
418
+ const otherSchema =
419
+ dependencySchemas[filePath][otherEntityName]?.returnValueSchema;
420
+ // Look for element type (baseMockName[]) or fall back to 'unknown'
421
+ const elementType = otherSchema?.[`${baseMockName}[]`];
422
+ mergedSchema[fcrvPath] = elementType || 'unknown';
423
+ }
424
+ }
425
+ }
426
+
193
427
  relevantReturnValueSchema = fillInDirectSchemaGapsAndUnknowns({
194
- schema: dependencySchemas[filePath][entityName]?.returnValueSchema,
428
+ schema: mergedSchema,
195
429
  });
196
- // NOTE: Temporarily disabled clearAttributesFromMapping as it deletes
430
+ // NOTE: clearAttributesFromMapping is disabled because it deletes
197
431
  // method calls on arrays (like .eq() after functionCallReturnValue: 'array')
198
- // clearAttributesFromMapping(relevantReturnValueSchema)
432
+ // However, we still need to remove duplicate function calls that create invalid syntax
433
+ removeDuplicateFunctionCalls(relevantReturnValueSchema);
199
434
  dataStructureValue = relevantReturnValueSchema?.[dataStructurePath];
200
- break;
435
+ break entitySearch;
201
436
  }
202
437
  }
203
438
  }
204
439
 
205
- if (!relevantReturnValueSchema || !dataStructurePath) return;
440
+ // Check if the entity is used as a function (called with ()) vs an object/namespace.
441
+ // Look for paths in the schema that start with "baseMockName(" or "baseMockName<" indicating function calls.
442
+ // The "<" handles generic type parameters like useLoaderData<T>().
443
+ // Also check dataStructurePath === 'returnValue' which indicates a function return value.
444
+ const entityIsFunction =
445
+ foundEntityWithSignature ||
446
+ dataStructurePath === 'returnValue' ||
447
+ Object.keys(relevantReturnValueSchema ?? {}).some(
448
+ (key) =>
449
+ key.startsWith(`${baseMockName}(`) ||
450
+ key.startsWith(`${baseMockName}<`),
451
+ );
452
+
453
+ // Calculate the data key - use the call signature (mockName) for data access
454
+ // For simple names without parentheses:
455
+ // - Append () ONLY if the entity is a function/hook (detected above)
456
+ // - Don't append () for object/namespace mocks like "supabase"
457
+ if (mockNameIsCallSignature || mockName.includes('(')) {
458
+ dataKey = mockName;
459
+ } else if (entityIsFunction) {
460
+ // Entity is a function/hook - append () to match call signature format
461
+ dataKey = `${mockName}()`;
462
+ } else {
463
+ // Entity is an object/namespace - use bare name as key
464
+ dataKey = mockName;
465
+ }
466
+
467
+ // Helper to wrap key in appropriate quotes for computed property access
468
+ // Use single quotes when key contains double quotes to avoid syntax errors
469
+ const quotePropertyKey = (key: string): string => {
470
+ const escaped = key.replace(/\n/g, '\\n');
471
+ if (escaped.includes('"')) {
472
+ // Use single quotes, escaping any single quotes in the key
473
+ return `['${escaped.replace(/'/g, "\\'")}']`;
474
+ }
475
+ return `["${escaped}"]`;
476
+ };
477
+
478
+ // Check if the return value schema only contains function type markers
479
+ // (e.g., "validateInputs()": "function") without actual return data
480
+ // (no functionCallReturnValue entries)
481
+ const hasMeaningfulReturnData = (
482
+ schema: DataStructure['returnValueSchema'] | undefined,
483
+ ): boolean => {
484
+ if (!schema) return false;
485
+ const keys = Object.keys(schema);
486
+ // Check if there are any functionCallReturnValue entries
487
+ // which indicate actual mock data, not just type markers
488
+ return keys.some(
489
+ (key) => key.includes('functionCallReturnValue') || key === 'returnValue',
490
+ );
491
+ };
492
+
493
+ // If we found the entity with a signature but no return value schema,
494
+ // OR the schema only has function type markers without actual return data,
495
+ // generate an empty mock function. This handles validation functions like
496
+ // validateInputs that are marked for mocking but have no meaningful return value.
497
+ // EXCEPTION: If entityType is 'class', we still need to generate the class.
498
+ // EXCEPTION: If no signature was found, let the normal code path handle it.
499
+ if (!relevantReturnValueSchema || !dataStructurePath) {
500
+ if (foundEntityWithSignature && signatureSchema) {
501
+ // Count the number of arguments from signature schema
502
+ const argCount = Object.keys(signatureSchema).filter((key) =>
503
+ key.startsWith('signature['),
504
+ ).length;
505
+ const args = Array.from({ length: argCount }, (_, i) => `arg${i + 1}`);
506
+ // Always add ...rest to accept extra arguments beyond the signature
507
+ args.push('...rest');
508
+ const argsString = args.join(', ');
509
+
510
+ // Generate empty mock function
511
+ // Use baseMockName (not mockName) because mockName may contain a full call
512
+ // signature with argument expressions (e.g., "logSignOutAction(sessionUser.id, ...)")
513
+ // which would produce invalid syntax as function parameter names.
514
+ return `function ${baseMockName}(${argsString}) {
515
+ // Empty mock - original function mocked out
516
+ }`;
517
+ }
518
+ return;
519
+ }
520
+
521
+ // Check if the schema only has function type markers without actual return data.
522
+ // Only apply this when we have a signature (i.e., it's explicitly a function)
523
+ // and it's not a class. This handles validation functions that should be
524
+ // empty mocks rather than returning meaningless "function" strings.
525
+ if (
526
+ foundEntityWithSignature &&
527
+ signatureSchema &&
528
+ entityType !== 'class' &&
529
+ !hasMeaningfulReturnData(relevantReturnValueSchema)
530
+ ) {
531
+ const argCount = Object.keys(signatureSchema).filter((key) =>
532
+ key.startsWith('signature['),
533
+ ).length;
534
+ const args = Array.from({ length: argCount }, (_, i) => `arg${i + 1}`);
535
+ // Always add ...rest to accept extra arguments beyond the signature
536
+ args.push('...rest');
537
+ const argsString = args.join(', ');
538
+
539
+ // Check for Higher-Order Component (HOC) pattern:
540
+ // - First argument is a function (component) or unknown (couldn't trace type)
541
+ // - Returns a function
542
+ // HOCs like memo, forwardRef, createContext should return their first argument
543
+ //
544
+ // The return value key can be either:
545
+ // - 'memo()' (clean format)
546
+ // - 'memo(({ value, width }: Props) => { ... })' (full component code format)
547
+ const firstArgIsFunctionOrUnknown =
548
+ signatureSchema['signature[0]'] === 'function' ||
549
+ signatureSchema['signature[0]'] === 'unknown';
550
+ const returnsFunction = relevantReturnValueSchema
551
+ ? Object.entries(relevantReturnValueSchema).some(([key, value]) => {
552
+ // Check if key represents a function call that returns a function
553
+ // Key should start with the mock name, contain '(', end with ')', and have value 'function'
554
+ const isFunctionCall =
555
+ key.startsWith(mockName + '(') && key.endsWith(')');
556
+ return isFunctionCall && value === 'function';
557
+ })
558
+ : false;
559
+
560
+ if (firstArgIsFunctionOrUnknown && returnsFunction) {
561
+ // HOC pattern detected - return the first argument
562
+ return `function ${baseMockName}(${argsString}) {
563
+ return arg1;
564
+ }`;
565
+ }
566
+
567
+ // Generate empty mock function
568
+ return `function ${baseMockName}(${argsString}) {
569
+ // Empty mock - original function mocked out
570
+ }`;
571
+ }
206
572
 
207
573
  const dataStructureName =
208
574
  dataStructurePath === 'returnValue'
@@ -226,6 +592,99 @@ export default function constructMockCode(
226
592
  dataStructureValue === 'array' &&
227
593
  (dataStructurePath === 'returnValue' || pathDepth <= mockNameParts.length);
228
594
 
595
+ // OPTIMIZATION: Early return for tuple-returning hooks (useAtom, useState, etc.)
596
+ // These hooks have simple [value, setter] return patterns that don't need the full
597
+ // 9216-key schema processing. Check if this is a tuple-returning hook and generate
598
+ // the mock code directly without iterating over all schema keys.
599
+ if (TUPLE_RETURNING_HOOKS.has(baseMockName) && isFunction) {
600
+ // Check if schema has generic array pattern (indicates tuple return like [value, setter])
601
+ const schemaKeys = Object.keys(relevantReturnValueSchema ?? {});
602
+ const hasGenericArrayInSchema = schemaKeys.some(
603
+ (k) =>
604
+ k.includes('.functionCallReturnValue[]') ||
605
+ k === `${dataKey}.functionCallReturnValue[]` ||
606
+ k === 'returnValue[]',
607
+ );
608
+
609
+ // Check for differentiated tuple indices (e.g., functionCallReturnValue[2], [3]) which would NOT be a standard tuple
610
+ // We only check indices immediately after functionCallReturnValue, not nested indices like signature[2]
611
+ const tupleHasDifferentiatedIndices = schemaKeys.some((k) => {
612
+ // Look for .functionCallReturnValue[N] where N >= 2
613
+ const match = k.match(/\.functionCallReturnValue\[(\d+)\]/);
614
+ if (!match) return false;
615
+ const idx = parseInt(match[1], 10);
616
+ return idx >= 2;
617
+ });
618
+
619
+ const isTupleReturningHook =
620
+ hasGenericArrayInSchema && !tupleHasDifferentiatedIndices;
621
+
622
+ if (isTupleReturningHook) {
623
+ // Find all call patterns for this hook (e.g., useAtom(quoteFilterAtom), useAtom(supplierAtom))
624
+ const hookCallPatterns = Object.keys(relevantReturnValueSchema ?? {})
625
+ .filter((k) => {
626
+ const regex = new RegExp(`^${baseMockName}\\([^)]+\\)$`);
627
+ return regex.test(k);
628
+ })
629
+ .map((k) => {
630
+ const match = k.match(/\(([^)]+)\)/);
631
+ return { key: k, arg: match?.[1] ?? '' };
632
+ });
633
+
634
+ let tupleReturnCode: string;
635
+ if (hookCallPatterns.length > 1) {
636
+ // Multiple patterns - generate conditional dispatch
637
+ const conditions = hookCallPatterns
638
+ .map(
639
+ ({ key, arg }) =>
640
+ `if (argLabel === '${arg}' || argStr.includes('${arg}')) {\n return [scenarios().data()?.["${key}"]?.[0] ?? [], () => {}];\n }`,
641
+ )
642
+ .join('\n ');
643
+ const fallbackKey = hookCallPatterns[0]?.key ?? dataKey;
644
+ tupleReturnCode = `(() => {
645
+ // Dynamic dispatch for tuple-returning hook with multiple argument patterns
646
+ const argLabel = args[0]?.debugLabel ?? '';
647
+ const argStr = args[0]?.toString?.() ?? String(args[0] ?? '');
648
+ ${conditions}
649
+ return [scenarios().data()?.["${fallbackKey}"]?.[0] ?? [], () => {}];
650
+ })()`;
651
+ } else {
652
+ // Single or no patterns - use dynamic dispatch
653
+ const fallbackKey = hookCallPatterns[0]?.key ?? `${baseMockName}()`;
654
+ tupleReturnCode = `(() => {
655
+ // Dynamic dispatch for tuple-returning hook
656
+ const argLabel = args[0]?.debugLabel ?? '';
657
+ const argStr = args[0]?.toString?.() ?? '';
658
+ const allData = scenarios().data() ?? {};
659
+ if (argLabel) {
660
+ const labelKey = '${baseMockName}(' + argLabel + ')';
661
+ if (allData[labelKey]) {
662
+ return [allData[labelKey]?.[0] ?? [], () => {}];
663
+ }
664
+ }
665
+ const keys = Object.keys(allData).filter(k => k.startsWith('${baseMockName}('));
666
+ for (const key of keys) {
667
+ const keyArg = key.slice(${baseMockName.length + 1}, -1);
668
+ if (argStr.includes(keyArg)) {
669
+ return [allData[key]?.[0] ?? [], () => {}];
670
+ }
671
+ }
672
+ return [allData[keys[0] ?? '${fallbackKey}']?.[0] ?? [], () => {}];
673
+ })()`;
674
+ }
675
+
676
+ const safeFunctionName = options?.uniqueFunctionSuffix
677
+ ? `${baseMockName}_${options.uniqueFunctionSuffix}`
678
+ : options?.keepOriginalFunctionName
679
+ ? baseMockName
680
+ : mockNameIsCallSignature && derivedFunctionName
681
+ ? derivedFunctionName
682
+ : baseMockName;
683
+
684
+ return `function ${safeFunctionName}(...args) {\n return ${tupleReturnCode};\n}`;
685
+ }
686
+ }
687
+
229
688
  const returnValueParts: ReturnValuePart = {
230
689
  name: dataStructureName,
231
690
  isArray: isRootArray,
@@ -245,7 +704,11 @@ export default function constructMockCode(
245
704
  basePaths[0] = 'scenarios().data()';
246
705
  }
247
706
 
248
- const optionalAccess = (name: string, stripArguments = false) => {
707
+ const optionalAccess = (
708
+ name: string,
709
+ stripArguments = false,
710
+ isRootAccess = false,
711
+ ) => {
249
712
  if (stripArguments && name.includes('(')) {
250
713
  name = name.split('(')[0] + '()';
251
714
  }
@@ -254,11 +717,21 @@ export default function constructMockCode(
254
717
  // so "useLoaderData<typeof loader>()" becomes "useLoaderData()"
255
718
  name = cleanOutTypes(name);
256
719
 
257
- if (name.match(/\[\d+\]/)) {
720
+ // For root data access, use the dataKey (original call signature or canonical key)
721
+ // This preserves the original call signature for LLM clarity
722
+ if (isRootAccess) {
723
+ // For call signature format, use the original mockName as the data key
724
+ // e.g., scenarios().data()?.["useFetcher<User>()"]
725
+ // e.g., scenarios().data()?.["db.select(usersQuery)"]
726
+ return `?.${quotePropertyKey(dataKey)}`;
727
+ }
728
+
729
+ // Only use unquoted array access syntax for pure array indices like [0], [1]
730
+ if (name.match(/^\[\d+\]$/)) {
258
731
  return `?.${name}`;
259
732
  }
260
733
 
261
- return `?.["${name.replace(/\n/g, '\\n')}"]`;
734
+ return `?.${quotePropertyKey(name)}`;
262
735
  };
263
736
 
264
737
  const constructDataPaths = () => {
@@ -273,11 +746,25 @@ export default function constructMockCode(
273
746
  }
274
747
 
275
748
  const addReturnValueFunctionAccessor = (dataPath: string) => {
276
- if (returnValue.returnsFunctionArgs) {
749
+ if (
750
+ returnValue.returnsFunctionArgs &&
751
+ (returnValue.returnsFunctionArgs.length > 0 ||
752
+ !returnValue.returnsFunctionArray)
753
+ ) {
277
754
  if (returnValue.isArray) {
278
755
  dataPath = `${dataPath}${optionalAccess('[0]')}`;
279
756
  }
280
- dataPath = `${dataPath}${optionalAccess(`(${safeString(returnValue.returnsFunctionArgs.join(', '))})`)}`;
757
+ // Only add the function call accessor ?.["(args)"] when there are actual
758
+ // arguments. When returnsFunctionArgs is empty [] (function-returns-function
759
+ // with no specific arg patterns), skip the ?.["()"] because:
760
+ // 1. preprocessSchemaForMocks collapses nested functionCallReturnValue chains
761
+ // into flat entries (e.g., getTranslate() = string, not {(): string})
762
+ // 2. The mock data is a flat value, so ?.["()"] on a string returns undefined
763
+ // 3. constructContent still wraps the return in a function (via returnsFunctionArgs)
764
+ // so the function-returns-function behavior is preserved without data nesting
765
+ if (returnValue.returnsFunctionArgs.length > 0) {
766
+ dataPath = `${dataPath}${optionalAccess(`(${safeString(returnValue.returnsFunctionArgs.join(', '))})`)}`;
767
+ }
281
768
  }
282
769
  return dataPath;
283
770
  };
@@ -285,7 +772,8 @@ export default function constructMockCode(
285
772
  return basePaths
286
773
  .flatMap((basePath) => {
287
774
  if (!returnValue.args) {
288
- let dataPath = `${basePath}${optionalAccess(safeString(returnValue.name))}`;
775
+ // Pass root as both stripArguments and isRootAccess for non-function paths
776
+ let dataPath = `${basePath}${optionalAccess(safeString(returnValue.name), false, root)}`;
289
777
  dataPath = addReturnValueFunctionAccessor(dataPath);
290
778
  return dataPath;
291
779
  }
@@ -294,7 +782,8 @@ export default function constructMockCode(
294
782
  ? returnValue.name
295
783
  : `${returnValue.name}(${argSet.join(', ')})`;
296
784
 
297
- let dataPath = `${basePath}${optionalAccess(safeString(signature), root)}`;
785
+ // Pass root as both stripArguments and isRootAccess
786
+ let dataPath = `${basePath}${optionalAccess(safeString(signature), root, root)}`;
298
787
  dataPath = addReturnValueFunctionAccessor(dataPath);
299
788
 
300
789
  return dataPath;
@@ -313,9 +802,86 @@ export default function constructMockCode(
313
802
  returnsFunctionArgs,
314
803
  returnsFunctionArray,
315
804
  isAsyncFunction,
805
+ hasNoReturnData,
316
806
  } = returnValue;
317
807
 
318
- const nestedContent: (string | undefined)[] = (nested ?? []).map(
808
+ // Array prototype methods that should be ignored when building mocks
809
+ // (these work on any array - we don't need to mock them)
810
+ const ARRAY_PROTOTYPE_METHODS = new Set([
811
+ 'at',
812
+ 'concat',
813
+ 'copyWithin',
814
+ 'entries',
815
+ 'every',
816
+ 'fill',
817
+ 'filter',
818
+ 'find',
819
+ 'findIndex',
820
+ 'findLast',
821
+ 'findLastIndex',
822
+ 'flat',
823
+ 'flatMap',
824
+ 'forEach',
825
+ 'includes',
826
+ 'indexOf',
827
+ 'join',
828
+ 'keys',
829
+ 'lastIndexOf',
830
+ 'map',
831
+ 'pop',
832
+ 'push',
833
+ 'reduce',
834
+ 'reduceRight',
835
+ 'reverse',
836
+ 'shift',
837
+ 'slice',
838
+ 'some',
839
+ 'sort',
840
+ 'splice',
841
+ 'toLocaleString',
842
+ 'toReversed',
843
+ 'toSorted',
844
+ 'toSpliced',
845
+ 'toString',
846
+ 'unshift',
847
+ 'values',
848
+ 'with',
849
+ 'length',
850
+ ]);
851
+
852
+ // When an array has differentiated indices ([0], [1], etc.), filter out any
853
+ // non-index items from nested. These non-index items come from generic [] paths
854
+ // like [].filter or [].sort, which describe element properties, not array elements.
855
+ // Including them would generate invalid syntax like "sort: ..." inside an array literal.
856
+ const hasDifferentiatedIndices =
857
+ isArray &&
858
+ nested &&
859
+ nested.some((n) => n.name.match(/^\[\d+\]$/) && n.name !== '[0]');
860
+ let filteredNested =
861
+ hasDifferentiatedIndices && nested
862
+ ? nested.filter((n) => n.name.match(/^\[\d+\]$/))
863
+ : nested;
864
+
865
+ // When a variable IS an array (not a function returning an array),
866
+ // filter out array prototype methods like .includes(), .filter(), etc.
867
+ // ONLY when the base schema has no method-call entries. When the base
868
+ // schema has methods (e.g., .map().functionCallReturnValue), the scenario
869
+ // data is stored as an object with method-call keys, and ALL methods
870
+ // need mock implementations. When the base schema has no methods, the
871
+ // data is a raw array and native methods like .includes() work directly.
872
+ if (
873
+ isArray &&
874
+ !returnsFunctionArray &&
875
+ !baseSchemaHasMethodCalls &&
876
+ filteredNested
877
+ ) {
878
+ filteredNested = filteredNested.filter((n) => {
879
+ const methodName = n.name.replace(/[<(].*$/, '');
880
+ return !ARRAY_PROTOTYPE_METHODS.has(methodName);
881
+ });
882
+ }
883
+
884
+ const nestedContent: (string | undefined)[] = (filteredNested ?? []).map(
319
885
  (nestedItem) => {
320
886
  const nestedContent = constructReturnValueString(
321
887
  nestedItem,
@@ -327,7 +893,7 @@ export default function constructMockCode(
327
893
 
328
894
  const levelContentItems = [];
329
895
  // Add spread for data paths when:
330
- // - Not a function returning an array
896
+ // - Not a function returning an array, OR function returns array with custom methods
331
897
  // - Has function args OR not an array
332
898
  // - Not structural, OR is a structural [0] element with nested content
333
899
  // (array elements with nested functions need their other properties spread)
@@ -336,79 +902,717 @@ export default function constructMockCode(
336
902
  returnValue.name === '[0]' &&
337
903
  nested &&
338
904
  nested.length > 0;
905
+ // Check if function returns array but has custom methods (not just array prototype methods)
906
+ // Excludes array indices like [0], [1], [] which are not methods
907
+ const hasCustomMethodsOnArrayReturn =
908
+ returnsFunctionArray &&
909
+ nested &&
910
+ nested.length > 0 &&
911
+ nested.some((n) => {
912
+ // Skip array indices - they're not methods
913
+ if (n.name.match(/^\[\d*\]$/)) return false;
914
+ const methodName = n.name.replace(/[<(].*$/, '');
915
+ return !ARRAY_PROTOTYPE_METHODS.has(methodName);
916
+ });
339
917
  if (
340
- !returnsFunctionArray &&
918
+ (!returnsFunctionArray || hasCustomMethodsOnArrayReturn) &&
341
919
  (returnsFunctionArgs || !isArray) &&
342
920
  (!returnValue.isStructural || isStructuralArrayElementWithNested)
343
921
  ) {
344
922
  levelContentItems.push(...dataPaths.map((path) => `...${path}`));
345
923
  }
346
- levelContentItems.push(...nestedContent);
924
+ // Filter out nested content that would be invalid as object properties
925
+ // (e.g., bare arrow functions like "() => {...}" without a property name)
926
+ // Only apply this filter when building object content, not array content.
927
+ // Bare arrow functions ARE valid as array elements (like [0] = {...}, [1] = () => {...})
928
+ // Check both isArray (item IS an array) and returnsFunctionArray (item returns an array)
929
+ const inArrayContext = isArray || returnsFunctionArray;
930
+ const validNestedContent = nestedContent.filter((content) => {
931
+ if (!content) return false;
932
+ // Only filter bare arrow functions when NOT in array context
933
+ // In arrays, bare arrow functions are valid elements
934
+ if (!inArrayContext && content.match(/^\s*\([^)]*\)\s*=>/)) {
935
+ return false;
936
+ }
937
+ return true;
938
+ });
939
+ levelContentItems.push(...validNestedContent);
347
940
 
348
941
  let levelContents: string = levelContentItems.filter(Boolean).join(',\n');
349
942
  if (returnsFunctionArgs) {
350
- const argsString = returnsFunctionArgs
351
- .map((_, index) => `arg${index + 1}`)
352
- .join(', ');
353
- let funcContents = '';
354
- if (returnsFunctionArray) {
355
- if (levelContents.length === 0) {
356
- funcContents = 'return []';
357
- } else {
358
- funcContents = `return [\n${indent(levelContents)}\n]`;
943
+ // When returnsFunctionArgs is empty [] OR has a single literal string argument,
944
+ // the function returns a callable function (e.g., getTranslate() returns t,
945
+ // where t('key') looks up translations)
946
+ // Generate a dispatch function that looks up keys based on the argument
947
+ //
948
+ // Detect translation-like pattern:
949
+ // - Data path ends with ["('some.literal')"] - a literal string key
950
+ // - This means the mock data has keys like "('common.surveys')": "Surveys"
951
+ // - Exclude ["()"] which is an empty function call (not a translation pattern)
952
+ const dataPath = dataPaths[0];
953
+ // Pattern matches ?.["('...')"] at end of path, but NOT ?.["()"] (empty args)
954
+ const literalKeyPattern = dataPath?.match(/\?\.\["\('.+'\)"\]$/);
955
+
956
+ if (
957
+ !returnsFunctionArray &&
958
+ dataPaths.length === 1 &&
959
+ literalKeyPattern // Only dispatch when there's a literal key pattern
960
+ ) {
961
+ // Function returns a function - generate dispatch function
962
+ // Strip the literal key from the path and use dynamic lookup
963
+ const dataPathBase = literalKeyPattern
964
+ ? dataPath.replace(/\?\.\["\('.+'\)"\]$/, '')
965
+ : dataPath;
966
+ const funcContents = `return ${dataPathBase}?.[\`('\${arg1}')\`]`;
967
+ levelContents = `(arg1) => {\n${indent(funcContents)}\n}`;
968
+
969
+ if (!isArray) {
970
+ return levelContents;
359
971
  }
360
972
  } else {
361
- if (levelContentItems.length === 1 && dataPaths.length === 1) {
362
- funcContents = `return ${dataPaths[0]}`;
973
+ const argsString = returnsFunctionArgs
974
+ .map((_, index) => `arg${index + 1}`)
975
+ .join(', ');
976
+ let funcContents = '';
977
+ if (returnsFunctionArray) {
978
+ if (hasNoReturnData) {
979
+ // Function has no return data (only signatures) - return empty array
980
+ funcContents = 'return []';
981
+ } else if (levelContents.length === 0 && dataPaths.length === 1) {
982
+ // When returning an array with no nested content, return the data path directly
983
+ // (the data path points to the array in scenario data)
984
+ funcContents = `return ${dataPaths[0]}`;
985
+ } else if (levelContents.length === 0) {
986
+ funcContents = 'return []';
987
+ } else {
988
+ funcContents = `return [\n${indent(levelContents)}\n]`;
989
+ }
363
990
  } else {
364
- funcContents = `return {\n${indent(levelContents)}\n}`;
991
+ // Check if function has no actual return data (only signatures)
992
+ const hasNestedItems = nested && nested.length > 0;
993
+ const hasActualNestedContent =
994
+ nestedContent.filter(Boolean).length > 0;
995
+
996
+ if (levelContentItems.length === 1 && dataPaths.length === 1) {
997
+ if (
998
+ hasNoReturnData ||
999
+ (hasNestedItems && !hasActualNestedContent)
1000
+ ) {
1001
+ // Function has no return data (only signatures) - return empty array
1002
+ funcContents = 'return []';
1003
+ } else {
1004
+ // Has return data - return data path
1005
+ funcContents = `return ${dataPaths[0]}`;
1006
+ }
1007
+ } else {
1008
+ funcContents = `return {\n${indent(levelContents)}\n}`;
1009
+ }
365
1010
  }
366
- }
367
1011
 
368
- levelContents = `(${argsString}) => {\n${indent(funcContents)}\n}`;
1012
+ levelContents = `(${argsString}) => {\n${indent(funcContents)}\n}`;
369
1013
 
370
- if (!isArray) {
371
- return levelContents;
1014
+ if (!isArray) {
1015
+ return levelContents;
1016
+ }
1017
+ }
1018
+
1019
+ // For generic arrays of functions WITH nested properties (e.g., functionCallReturnValue[] = "function"
1020
+ // with nested .filter, .sort, etc.), the levelContents would be a bare arrow function "() => {...}"
1021
+ // that wraps object content. Using this in a .map(({...})) creates invalid syntax like "({ () => {...} })".
1022
+ // When isGenericArray is true AND there are nested properties, we're accessing data from the elements,
1023
+ // not calling them - so skip the function wrapping.
1024
+ // But if there are NO nested properties, keep the wrapper because callers may want to call the elements.
1025
+ const hasNonStructuralNestedItems =
1026
+ nested &&
1027
+ nested.length > 0 &&
1028
+ nested.some((n) => !n.name.match(/^\[\d*\]$/));
1029
+ if (isGenericArray && hasNonStructuralNestedItems) {
1030
+ // Skip the arrow function wrapper - just use the nested content directly
1031
+ levelContents = levelContentItems.filter(Boolean).join(',\n');
372
1032
  }
373
1033
  }
374
1034
 
1035
+ // Check if all nested items are array prototype methods
1036
+ const hasOnlyArrayPrototypeMethods =
1037
+ returnsFunctionArray &&
1038
+ nested &&
1039
+ nested.length > 0 &&
1040
+ nested.every((n) => {
1041
+ // Extract method name before type params and args (e.g., "reduce<...>(...)" -> "reduce")
1042
+ const methodName = n.name.replace(/[<(].*$/, '');
1043
+ return ARRAY_PROTOTYPE_METHODS.has(methodName);
1044
+ });
1045
+
375
1046
  let returnValueContents = '';
376
- if (
1047
+
1048
+ // Check if this is a known tuple-returning hook (useAtom, useState, etc.)
1049
+ // These should return [value, setter] tuples, not arrays or data paths
1050
+ // Check isGenericArray from current context OR from schema for root level calls
1051
+ // (at root level, isGenericArray might not be set yet but the schema contains [] pattern)
1052
+ const hasGenericArrayInSchema =
1053
+ root &&
1054
+ TUPLE_RETURNING_HOOKS.has(baseMockName) &&
1055
+ Object.keys(relevantReturnValueSchema ?? {}).some((k) =>
1056
+ k.includes('.functionCallReturnValue[]'),
1057
+ );
1058
+ // Check if there are array indices beyond what a standard 2-element tuple would have
1059
+ // For tuple-returning hooks, [0] and [1] are expected (value and setter)
1060
+ // Only consider it "differentiated" if there are indices >= 2 (e.g., [2], [3])
1061
+ const tupleHasDifferentiatedIndices = nested?.some((n) => {
1062
+ const indexMatch = n.name.match(/^\[(\d+)\]$/);
1063
+ if (!indexMatch) return false;
1064
+ const index = parseInt(indexMatch[1], 10);
1065
+ return index >= 2;
1066
+ });
1067
+ const isTupleReturningHook =
1068
+ TUPLE_RETURNING_HOOKS.has(baseMockName) &&
1069
+ (isGenericArray || hasGenericArrayInSchema) &&
1070
+ !tupleHasDifferentiatedIndices;
1071
+
1072
+ // Debug logging for tuple-returning hooks
1073
+ if (TUPLE_RETURNING_HOOKS.has(baseMockName) && root) {
1074
+ const schemaKeys = Object.keys(relevantReturnValueSchema ?? {});
1075
+ const hasArrayPattern = schemaKeys.some((k) =>
1076
+ k.includes('.functionCallReturnValue[]'),
1077
+ );
1078
+ console.log(
1079
+ `CodeYam: Tuple hook check for ${baseMockName} (root):`,
1080
+ `hasGenericArrayInSchema=${hasGenericArrayInSchema}`,
1081
+ `hasArrayPattern=${hasArrayPattern}`,
1082
+ `tupleHasDifferentiatedIndices=${tupleHasDifferentiatedIndices}`,
1083
+ `isTupleReturningHook=${isTupleReturningHook}`,
1084
+ `schemaKeysSample=${schemaKeys.slice(0, 5).join(', ')}`,
1085
+ );
1086
+ }
1087
+
1088
+ if (isTupleReturningHook) {
1089
+ // Tuple-returning hooks should return [value, setter] tuple
1090
+ // The value is the first element from scenarios data, setter is a no-op
1091
+ // Default to [] when data is undefined to prevent errors like ".includes is not a function"
1092
+
1093
+ // Check if there are multiple call patterns for this hook in the schema
1094
+ // (e.g., useAtom(quoteFilterAtom) and useAtom(supplierAtom))
1095
+ const hookCallPatterns = Object.keys(relevantReturnValueSchema ?? {})
1096
+ .filter((k) => {
1097
+ // Match patterns like "useAtom(someArg)" but not nested paths like "useAtom(x).foo"
1098
+ const regex = new RegExp(`^${baseMockName}\\([^)]+\\)$`);
1099
+ return regex.test(k);
1100
+ })
1101
+ .map((k) => {
1102
+ // Extract the argument from the key like "useAtom(quoteFilterAtom)" -> "quoteFilterAtom"
1103
+ const match = k.match(/\(([^)]+)\)/);
1104
+ return { key: k, arg: match?.[1] ?? '' };
1105
+ });
1106
+
1107
+ if (hookCallPatterns.length > 1) {
1108
+ // Multiple patterns - generate conditional dispatch based on first argument
1109
+ // For Jotai atoms, we use debugLabel; for others, we try to match the argument string
1110
+ const conditions = hookCallPatterns
1111
+ .map(
1112
+ ({ key, arg }) =>
1113
+ `if (argLabel === '${arg}' || argStr.includes('${arg}')) {\n return [scenarios().data()?.["${key}"]?.[0] ?? [], () => {}];\n }`,
1114
+ )
1115
+ .join('\n ');
1116
+
1117
+ // Use the first pattern as fallback
1118
+ const fallbackKey = hookCallPatterns[0]?.key ?? dataKey;
1119
+
1120
+ returnValueContents = `(() => {
1121
+ // Dynamic dispatch for tuple-returning hook with multiple argument patterns
1122
+ const argLabel = args[0]?.debugLabel ?? '';
1123
+ const argStr = args[0]?.toString?.() ?? String(args[0] ?? '');
1124
+ ${conditions}
1125
+ // Fallback to first pattern
1126
+ return [scenarios().data()?.["${fallbackKey}"]?.[0] ?? [], () => {}];
1127
+ })()`;
1128
+ } else {
1129
+ // Single pattern or no patterns - use dynamic dispatch to handle case where
1130
+ // the mock is used with different atoms than what was captured in the schema.
1131
+ // Use the first argument to construct the data key dynamically.
1132
+ const fallbackKey = hookCallPatterns[0]?.key ?? `${baseMockName}()`;
1133
+
1134
+ returnValueContents = `(() => {
1135
+ // Dynamic dispatch for tuple-returning hook
1136
+ // Try to construct key from argument's debugLabel (Jotai atoms) or toString
1137
+ const argLabel = args[0]?.debugLabel ?? '';
1138
+ const argStr = args[0]?.toString?.() ?? '';
1139
+ const allData = scenarios().data() ?? {};
1140
+
1141
+ // Try to find a matching key using debugLabel first
1142
+ if (argLabel) {
1143
+ const labelKey = '${baseMockName}(' + argLabel + ')';
1144
+ if (allData[labelKey]) {
1145
+ return [allData[labelKey]?.[0] ?? [], () => {}];
1146
+ }
1147
+ }
1148
+
1149
+ // Try to find any matching key that contains part of the argument string
1150
+ const keys = Object.keys(allData).filter(k => k.startsWith('${baseMockName}('));
1151
+ for (const key of keys) {
1152
+ const keyArg = key.slice(${baseMockName.length + 1}, -1);
1153
+ if (argStr.includes(keyArg)) {
1154
+ return [allData[key]?.[0] ?? [], () => {}];
1155
+ }
1156
+ }
1157
+
1158
+ // Fallback to first matching key or default
1159
+ const fallback = keys[0] ?? '${fallbackKey}';
1160
+ return [allData[fallback]?.[0] ?? [], () => {}];
1161
+ })()`;
1162
+ }
1163
+ } else if (
377
1164
  !returnsFunctionArgs &&
378
1165
  nestedContent.length === 0 &&
379
1166
  dataPaths.length === 1
380
1167
  ) {
381
1168
  returnValueContents = dataPaths[0];
1169
+ } else if (
1170
+ returnsFunctionArray &&
1171
+ dataPaths.length === 1 &&
1172
+ !root &&
1173
+ (!nested || nested.length === 0 || hasOnlyArrayPrototypeMethods)
1174
+ ) {
1175
+ // Nested method returns an array - return the data path directly
1176
+ // Only if nested content is empty or only contains array prototype methods
1177
+ // (like .reduce() which work on any array - we don't need to mock them)
1178
+ returnValueContents = dataPaths[0];
382
1179
  } else {
383
1180
  if (isArray) {
384
1181
  // When GENERIC array (using []) has nested content (like functions that need wrapping),
385
1182
  // use .map() to transform ALL elements instead of just creating [0]
386
1183
  // For DIFFERENTIATED arrays (using [0], [1], etc.), keep the static array structure
1184
+ //
1185
+ // IMPORTANT: If the nested content contains differentiated indices like [0], [1],
1186
+ // we MUST use static array pattern, not .map(). The presence of differentiated
1187
+ // indices means the array elements have different types/structures, so .map()
1188
+ // would generate invalid code trying to treat them uniformly.
1189
+ const hasDifferentiatedIndices =
1190
+ nested &&
1191
+ nested.some((n) => n.name.match(/^\[\d+\]$/) && n.name !== '[0]');
387
1192
  if (
388
1193
  isGenericArray &&
389
1194
  nestedContent.length > 0 &&
390
- dataPaths.length > 0
1195
+ dataPaths.length > 0 &&
1196
+ !hasDifferentiatedIndices
391
1197
  ) {
392
1198
  // Get the array base path (without the [0])
393
1199
  const arrayBasePath = dataPaths[0].replace(/\?\.\[0\]$/, '');
394
1200
  // Replace [0] references with [__idx__] in level contents
395
- const mappedContents = levelContents.replace(
1201
+ let mappedContents = levelContents.replace(
396
1202
  /\?\.\[0\]/g,
397
1203
  '?.[__idx__]',
398
1204
  );
399
1205
  // levelContents may already be wrapped in {...} from structural [0] element,
400
1206
  // so check if we need to add the wrapper or not
401
1207
  const needsWrapper = !mappedContents.trim().startsWith('{');
1208
+
1209
+ // Helper to check if a position is inside a string literal
1210
+ // Returns the end position of the string if inside one, -1 otherwise
1211
+ // Defined here so it's accessible in both needsWrapper branches
1212
+ const skipStringLiteral = (
1213
+ content: string,
1214
+ pos: number,
1215
+ ): number => {
1216
+ const char = content[pos];
1217
+ if (char !== '"' && char !== "'" && char !== '`') return -1;
1218
+ // Find the matching closing quote
1219
+ let j = pos + 1;
1220
+ while (j < content.length) {
1221
+ if (content[j] === '\\') {
1222
+ j += 2; // Skip escaped character
1223
+ continue;
1224
+ }
1225
+ if (content[j] === char) {
1226
+ return j + 1; // Return position after closing quote
1227
+ }
1228
+ j++;
1229
+ }
1230
+ return content.length; // Unclosed string, skip to end
1231
+ };
1232
+
1233
+ // Filter out bare arrow functions which are invalid as object properties.
1234
+ // Arrow functions can be multi-line, so we need to match the entire function body, not just the first line.
1235
+ // Pattern: starts with "(args) =>", followed by either:
1236
+ // - A single-line body: "() => expression"
1237
+ // - A multi-line body: "() => { ... }" (with matching braces)
1238
+ // IMPORTANT: Only filter BARE arrow functions (without property names).
1239
+ // "() => {...}" is invalid, but "get: (arg1) => {...}" is valid.
1240
+ // We use a function to properly handle nested braces.
1241
+ // Defined here so it's accessible in both needsWrapper branches
1242
+ const filterOutArrowFunctions = (content: string): string => {
1243
+ const result: string[] = [];
1244
+ let i = 0;
1245
+ while (i < content.length) {
1246
+ // Skip over string literals entirely
1247
+ const stringEnd = skipStringLiteral(content, i);
1248
+ if (stringEnd !== -1) {
1249
+ result.push(content.slice(i, stringEnd));
1250
+ i = stringEnd;
1251
+ continue;
1252
+ }
1253
+
1254
+ // Check if we're at the start of an arrow function (with optional leading whitespace)
1255
+ const arrowMatch = content
1256
+ .slice(i)
1257
+ .match(/^(\s*)\([^)]*\)\s*=>\s*/);
1258
+ if (arrowMatch) {
1259
+ // Check if this is a bare arrow function or a named property with arrow function value
1260
+ // Look back to see if there's a "key:" pattern before this position
1261
+ const before = content.slice(0, i);
1262
+ const beforeTrimmed = before.trim();
1263
+ // Valid patterns where arrow function is NOT bare:
1264
+ // 1. Property value: "key: (arg) => ..." - ends with ':'
1265
+ // 2. Function argument: ".map((arg) => ..." - ends with '('
1266
+ // 3. Method call: "?.map" followed directly by the arrow function
1267
+ // In this case, the '(' is consumed by the arrow function regex match,
1268
+ // so beforeTrimmed ends with the method name (e.g., 'map'), not '('.
1269
+ // We detect this by checking if beforeTrimmed ends with an identifier
1270
+ // that could be a method name (preceded by '.' or '?.').
1271
+ // NOTE: We don't include ',' because "{ prop, () => {} }" is invalid
1272
+ // (can't distinguish function argument from object property context)
1273
+ const isPropertyValue = beforeTrimmed.endsWith(':');
1274
+ const isFunctionArg = beforeTrimmed.endsWith('(');
1275
+ // Check if before ends with a method call pattern like ".map" or "?.map"
1276
+ // The '(' after the method name is consumed by the arrow function regex
1277
+ const isMethodCallArg = /\??\.\w+$/.test(beforeTrimmed);
1278
+ const hasPropertyName =
1279
+ isPropertyValue || isFunctionArg || isMethodCallArg;
1280
+
1281
+ if (!hasPropertyName) {
1282
+ // This is a bare arrow function - filter it out
1283
+ // Found arrow function start, need to find its end
1284
+ const afterArrow = i + arrowMatch[0].length;
1285
+ if (content[afterArrow] === '{') {
1286
+ // Multi-line arrow function - find matching closing brace
1287
+ // Must respect string literals when counting braces
1288
+ let braceCount = 1;
1289
+ let j = afterArrow + 1;
1290
+ while (j < content.length && braceCount > 0) {
1291
+ const strEnd = skipStringLiteral(content, j);
1292
+ if (strEnd !== -1) {
1293
+ j = strEnd;
1294
+ continue;
1295
+ }
1296
+ if (content[j] === '{') braceCount++;
1297
+ if (content[j] === '}') braceCount--;
1298
+ j++;
1299
+ }
1300
+ // Skip past the arrow function
1301
+ i = j;
1302
+ // Only skip trailing comma, keep newlines
1303
+ while (i < content.length && content[i] === ' ') {
1304
+ i++;
1305
+ }
1306
+ if (content[i] === ',') {
1307
+ i++; // Skip the comma after the arrow function
1308
+ }
1309
+ } else {
1310
+ // Single expression arrow function - skip to next comma or newline
1311
+ let j = afterArrow;
1312
+ while (
1313
+ j < content.length &&
1314
+ content[j] !== ',' &&
1315
+ content[j] !== '\n'
1316
+ ) {
1317
+ j++;
1318
+ }
1319
+ i = j;
1320
+ if (content[i] === ',') i++; // Skip the comma
1321
+ }
1322
+ continue;
1323
+ }
1324
+ }
1325
+ // Not a bare arrow function, keep this character
1326
+ result.push(content[i]);
1327
+ i++;
1328
+ }
1329
+ return result.join('');
1330
+ };
1331
+
1332
+ // Filter out bare object blocks (e.g., "{ ...spread, props }," without a property name)
1333
+ // These are invalid in object literal context - you need "key: { ... }" not just "{ ... }"
1334
+ // Defined here so it's accessible in both needsWrapper branches
1335
+ // The skipFirstBrace parameter allows the else branch to preserve the outer object
1336
+ const filterOutBareObjects = (
1337
+ content: string,
1338
+ skipFirstBrace = false,
1339
+ ): string => {
1340
+ const result: string[] = [];
1341
+ let i = 0;
1342
+ let firstBraceSkipped = false;
1343
+ while (i < content.length) {
1344
+ // Skip over string literals entirely - braces inside strings should not be processed
1345
+ const stringEnd = skipStringLiteral(content, i);
1346
+ if (stringEnd !== -1) {
1347
+ result.push(content.slice(i, stringEnd));
1348
+ i = stringEnd;
1349
+ continue;
1350
+ }
1351
+
1352
+ // Check if we're at a bare object start (newline/comma followed by { without : before it)
1353
+ // Look back to see if there's a colon (property assignment) before this brace
1354
+ const isStartOfLine =
1355
+ i === 0 ||
1356
+ content[i - 1] === '\n' ||
1357
+ content.slice(0, i).trim().endsWith(',');
1358
+ if (content[i] === '{' && isStartOfLine) {
1359
+ // Check if this is actually a bare object (not "key: {")
1360
+ const beforeTrimmed = content.slice(0, i).trim();
1361
+ const isBareObject =
1362
+ beforeTrimmed.endsWith(',') ||
1363
+ beforeTrimmed === '' ||
1364
+ beforeTrimmed.endsWith('(');
1365
+
1366
+ if (isBareObject) {
1367
+ // If skipFirstBrace is true and this is the first bare brace at position 0,
1368
+ // don't filter it - it's the intentional outer object wrapper
1369
+ if (skipFirstBrace && !firstBraceSkipped && i === 0) {
1370
+ firstBraceSkipped = true;
1371
+ result.push(content[i]);
1372
+ i++;
1373
+ continue;
1374
+ }
1375
+
1376
+ // Find matching closing brace, respecting string literals
1377
+ let braceCount = 1;
1378
+ let j = i + 1;
1379
+ while (j < content.length && braceCount > 0) {
1380
+ const strEnd = skipStringLiteral(content, j);
1381
+ if (strEnd !== -1) {
1382
+ j = strEnd;
1383
+ continue;
1384
+ }
1385
+ if (content[j] === '{') braceCount++;
1386
+ if (content[j] === '}') braceCount--;
1387
+ j++;
1388
+ }
1389
+ // Skip past the object
1390
+ i = j;
1391
+ // Skip trailing comma
1392
+ while (i < content.length && content[i] === ' ') {
1393
+ i++;
1394
+ }
1395
+ if (content[i] === ',') {
1396
+ i++;
1397
+ }
1398
+ continue;
1399
+ }
1400
+ }
1401
+ result.push(content[i]);
1402
+ i++;
1403
+ }
1404
+ return result.join('');
1405
+ };
1406
+
1407
+ // Helper to clean up formatting issues after filtering
1408
+ const cleanupContent = (content: string): string => {
1409
+ return (
1410
+ content
1411
+ .replace(/,\s*,/g, ',') // Double commas
1412
+ .replace(/,(\s*\n\s*\})/g, '$1') // Trailing comma before closing brace
1413
+ .replace(/\{\s*\n\s*,/g, '{\n') // Leading comma after opening brace
1414
+ // Remove incomplete .map calls where callback was filtered out
1415
+ // Pattern: ".map" followed by newline/whitespace without "(" for args
1416
+ .replace(/\?\.map(?=\s*[\n\r,}\]])/g, '')
1417
+ .replace(/\.map(?=\s*[\n\r,}\]])/g, '')
1418
+ // Clean up orphan })) sequences (from nested filtered map callbacks)
1419
+ .replace(/\s*\}\)\)\s*\n\s*\}/g, '\n}')
1420
+ .replace(/^\s*\n/gm, '') // Empty lines
1421
+ .trim()
1422
+ );
1423
+ };
1424
+
402
1425
  if (needsWrapper) {
403
- returnValueContents = `${arrayBasePath}?.map((__item__, __idx__) => ({\n${indent(mappedContents)}\n}))`;
1426
+ // Apply filters to remove invalid content
1427
+ mappedContents = filterOutArrowFunctions(mappedContents);
1428
+ mappedContents = filterOutBareObjects(mappedContents);
1429
+ mappedContents = cleanupContent(mappedContents);
1430
+
1431
+ // If mappedContents is empty after filtering, don't generate .map() at all
1432
+ // Just use the array path directly with spread or as-is
1433
+ // This prevents orphan )) from empty .map() callbacks
1434
+ const cleanedForEmptyCheck = mappedContents
1435
+ .replace(/\s+/g, '')
1436
+ .replace(/,+/g, '');
1437
+ if (cleanedForEmptyCheck.length === 0) {
1438
+ // Content is empty - just return the array directly
1439
+ returnValueContents = arrayBasePath;
1440
+ } else {
1441
+ // Check if mappedContents is just a bare expression (no property names)
1442
+ // A bare expression like "scenarios().data()?.["key"]?.[__idx__]," cannot be
1443
+ // wrapped in ({ }) because it's not a valid object property.
1444
+ // Pattern: content has no ":" that's not inside brackets/parens/strings
1445
+ const hasBareExpression = (() => {
1446
+ const trimmed = mappedContents.trim().replace(/,\s*$/, ''); // Remove trailing comma
1447
+ let depth = 0;
1448
+ let inString = false;
1449
+ let stringChar = '';
1450
+ for (let i = 0; i < trimmed.length; i++) {
1451
+ const char = trimmed[i];
1452
+ if (inString) {
1453
+ if (char === '\\') {
1454
+ i++; // Skip escaped char
1455
+ continue;
1456
+ }
1457
+ if (char === stringChar) {
1458
+ inString = false;
1459
+ }
1460
+ continue;
1461
+ }
1462
+ if (char === '"' || char === "'" || char === '`') {
1463
+ inString = true;
1464
+ stringChar = char;
1465
+ continue;
1466
+ }
1467
+ if (char === '(' || char === '[' || char === '{') {
1468
+ depth++;
1469
+ continue;
1470
+ }
1471
+ if (char === ')' || char === ']' || char === '}') {
1472
+ depth--;
1473
+ continue;
1474
+ }
1475
+ // Found a colon at depth 0 = has property name
1476
+ if (char === ':' && depth === 0) {
1477
+ return false;
1478
+ }
1479
+ }
1480
+ return true;
1481
+ })();
1482
+
1483
+ if (hasBareExpression) {
1484
+ // Content is just an expression - return it directly without object wrapper
1485
+ const trimmedContent = mappedContents
1486
+ .trim()
1487
+ .replace(/,\s*$/, '');
1488
+ returnValueContents = `${arrayBasePath}?.map((__item__, __idx__) => (\n${indent(trimmedContent)}\n))`;
1489
+ } else {
1490
+ // When generating object-wrapped .map(), ensure original item data is preserved.
1491
+ // If no data spread was included (e.g., because this is a plain array property,
1492
+ // not a function return), add ...__item__ to spread the original item properties.
1493
+ // Without this, the .map() would create new objects with only nested function
1494
+ // properties, losing data like filePath, frontmatter, body, etc.
1495
+ const hasDataSpread =
1496
+ mappedContents.includes('...scenarios()') ||
1497
+ mappedContents.includes('...__item__');
1498
+ if (!hasDataSpread) {
1499
+ mappedContents = `...__item__,\n${mappedContents}`;
1500
+ }
1501
+ returnValueContents = `${arrayBasePath}?.map((__item__, __idx__) => ({\n${indent(mappedContents)}\n}))`;
1502
+ }
1503
+ } // Close the empty content check else block
404
1504
  } else {
1505
+ // Content already starts with '{'. Check if there are additional properties after the inner object.
1506
+ // If so, we need to merge them INTO the object, not leave them outside.
1507
+ // Pattern: "{ ...spread, props },\nfilter: ...,\nsort: ..."
1508
+ // Should become: "{ ...spread, props, filter: ..., sort: ... }"
1509
+ const trimmed = mappedContents.trim();
1510
+
1511
+ // Find first }, at depth 0 that is NOT inside a string literal
1512
+ // This prevents splitting keys like ?.["useQuery({ id }, { enabled })"]
1513
+ // and also prevents finding }, inside nested arrow functions
1514
+ const findBraceCommaOutsideStrings = (
1515
+ content: string,
1516
+ ): number => {
1517
+ let i = 0;
1518
+ let depth = 0; // Track brace depth to find the outer object's },
1519
+ while (i < content.length - 1) {
1520
+ // Skip over string literals
1521
+ const strEnd = skipStringLiteral(content, i);
1522
+ if (strEnd !== -1) {
1523
+ i = strEnd;
1524
+ continue;
1525
+ }
1526
+ // Track brace depth
1527
+ if (content[i] === '{') {
1528
+ depth++;
1529
+ i++;
1530
+ continue;
1531
+ }
1532
+ // Check for }, pattern at depth 1 (the outer object level)
1533
+ // We're looking for the outer object's closing brace, which is at depth 1
1534
+ // (we started at depth 0, opened { at depth 0 -> 1)
1535
+ if (content[i] === '}') {
1536
+ depth--;
1537
+ if (
1538
+ depth === 0 &&
1539
+ i + 1 < content.length &&
1540
+ content[i + 1] === ','
1541
+ ) {
1542
+ return i;
1543
+ }
1544
+ }
1545
+ i++;
1546
+ }
1547
+ return -1;
1548
+ };
1549
+
1550
+ const firstBraceEnd = findBraceCommaOutsideStrings(trimmed);
1551
+ if (firstBraceEnd !== -1) {
1552
+ // Found pattern "{ ... }," followed by more content
1553
+ // Extract the inner object and the trailing properties
1554
+ const innerObject = trimmed.slice(0, firstBraceEnd);
1555
+ const trailingContent = trimmed.slice(firstBraceEnd + 2).trim();
1556
+ if (trailingContent) {
1557
+ // Merge trailing properties into the inner object
1558
+ mappedContents = `${innerObject},\n${trailingContent}\n}`;
1559
+ }
1560
+ }
1561
+ // Even when content starts with {, we need to filter out invalid properties inside
1562
+ // (arrow functions and bare objects that were generated from the schema)
1563
+ // Pass skipFirstBrace=true because the content's outer { is the intentional wrapper
1564
+ mappedContents = filterOutArrowFunctions(mappedContents);
1565
+ mappedContents = filterOutBareObjects(mappedContents, true);
1566
+ mappedContents = cleanupContent(mappedContents);
1567
+ // Same as needsWrapper branch: ensure item data is preserved in .map()
1568
+ const hasDataSpreadInner =
1569
+ mappedContents.includes('...scenarios()') ||
1570
+ mappedContents.includes('...__item__');
1571
+ if (!hasDataSpreadInner && mappedContents.trim().length > 0) {
1572
+ // Insert ...__item__ after the opening brace
1573
+ mappedContents = mappedContents.replace(
1574
+ /^\s*\{/,
1575
+ '{\n...__item__,',
1576
+ );
1577
+ }
405
1578
  returnValueContents = `${arrayBasePath}?.map((__item__, __idx__) => (\n${indent(mappedContents)}\n))`;
406
1579
  }
407
1580
  } else {
408
1581
  returnValueContents = `[\n${indent(levelContents)}\n]`;
409
1582
  }
410
1583
  } else {
411
- returnValueContents = `{\n${indent(levelContents)}\n}`;
1584
+ // When we have a single data path and nested content that creates an object structure,
1585
+ // and we're NOT at the root level, we need to handle the case where the parent data
1586
+ // value is null or undefined. Without this check, `{ ...null, prop: null?.["prop"] }`
1587
+ // creates `{ prop: undefined }` instead of `null`, causing errors like
1588
+ // "Cannot read properties of undefined (reading 'some')" when code does
1589
+ // data?.prop.some(...) because data is an object with prop: undefined, not null.
1590
+ // We only apply this to non-root cases because root-level mocks are expected to exist.
1591
+ // We also skip structural elements (like [0] inside arrays) because the null check
1592
+ // syntax doesn't work inside .map() callbacks where structural elements are used.
1593
+ // We also skip array index elements ([0], [1], etc.) because they represent tuple/array
1594
+ // elements, not properties that could be null.
1595
+ // We also only apply this when we're inside a function return value context - i.e.,
1596
+ // when the data path contains a function call pattern like ?.["someFunction(...)"].
1597
+ // This prevents adding null checks to intermediate objects in chains like supabase.auth.
1598
+ const hasNestedContent = nestedContent.filter(Boolean).length > 0;
1599
+ const isArrayIndexElement = name.match(/^\[\d*\]$/);
1600
+ // Check if data path contains a function call pattern, indicating we're inside a function return value
1601
+ const isInsideFunctionReturnValue =
1602
+ dataPaths.length === 1 &&
1603
+ dataPaths[0].match(/\?\.\["\w+\([^"]*\)"\]/);
1604
+ if (
1605
+ !root &&
1606
+ !returnValue.isStructural &&
1607
+ !isArrayIndexElement &&
1608
+ isInsideFunctionReturnValue &&
1609
+ hasNestedContent
1610
+ ) {
1611
+ // Wrap with null check: if parent is null/undefined, return it directly; otherwise create object
1612
+ returnValueContents = `${dataPaths[0]} == null ? ${dataPaths[0]} : {\n${indent(levelContents)}\n}`;
1613
+ } else {
1614
+ returnValueContents = `{\n${indent(levelContents)}\n}`;
1615
+ }
412
1616
  }
413
1617
  }
414
1618
 
@@ -420,6 +1624,13 @@ export default function constructMockCode(
420
1624
  if (args && args.length > 0) {
421
1625
  if (!isValidKey(name)) return;
422
1626
 
1627
+ // Skip array index patterns like [], [0], [1] when they have args
1628
+ // These represent function calls on array elements, not property keys
1629
+ // e.g., customSizes[].(args) means each array element is callable, not a property named "[]"
1630
+ if (name.match(/^\[\d*\]$/)) {
1631
+ return;
1632
+ }
1633
+
423
1634
  const mostArgs = args.sort(
424
1635
  (a: string[], b: string[]) => b.length - a.length,
425
1636
  )[0];
@@ -479,8 +1690,18 @@ export default function constructMockCode(
479
1690
  // Use all paths for fallback (existing behavior)
480
1691
  fallbackContent = `return ${returnValueContents}`;
481
1692
  } else {
482
- // Use all paths as fallback for unknown arguments
483
- fallbackContent = `return ${returnValueContents}`;
1693
+ // No explicit fallback paths - return the first literal's value as default
1694
+ // Returning spread of all values is dangerous because if values are primitives (strings),
1695
+ // spreading them creates objects with numeric keys like {0:'a', 1:'b', ...}
1696
+ // which causes "Objects are not valid as React child" errors
1697
+ const firstLiteralValue = literalKeys[0];
1698
+ const firstGroupPaths = argGroups.get(firstLiteralValue);
1699
+ if (firstGroupPaths && firstGroupPaths.length === 1) {
1700
+ fallbackContent = `return ${firstGroupPaths[0]}`;
1701
+ } else {
1702
+ // Multiple paths for first literal - return undefined as safe fallback
1703
+ fallbackContent = `return undefined`;
1704
+ }
484
1705
  }
485
1706
 
486
1707
  const funcContents =
@@ -489,15 +1710,49 @@ export default function constructMockCode(
489
1710
  fallbackContent;
490
1711
  content = `${cleanOutTypes(name)}: ${isAsyncFunction ? 'async ' : ''}(${argsString}) => {\n${indent(funcContents)}\n}`;
491
1712
  } else {
492
- // No argument variants - use existing behavior
493
- const funcContents = `return ${returnValueContents}`;
494
- content = `${cleanOutTypes(name)}: ${isAsyncFunction ? 'async ' : ''}(${argsString}) => {\n${indent(funcContents)}\n}`;
1713
+ // No argument variants
1714
+ // Check if this is an array method callback containing JSX.
1715
+ // JSX can't be serialized to JSON, so the LLM generates [{}] as data.
1716
+ // Instead of returning that unusable data, generate a passthrough that
1717
+ // calls the real callback on the best available array data from siblings.
1718
+ const containsJsx = dataPaths.some((p) => /<[A-Z]/.test(p));
1719
+ const isArrayMethod = ARRAY_PROTOTYPE_METHODS.has(name);
1720
+
1721
+ if (containsJsx && isArrayMethod && dataPaths.length > 0) {
1722
+ // Extract parent data path by removing the last ?.["..."] segment
1723
+ const parentPath = dataPaths[0].replace(/\?\.\["[^"]*"\]$/, '');
1724
+ const funcLines = [
1725
+ `const _d = ${parentPath};`,
1726
+ `const _a = Object.values(_d || {}).filter(v => Array.isArray(v) && v.length > 0 && v.some(i => i && typeof i === "object" && Object.keys(i).length > 0)).sort((a, b) => b.length - a.length);`,
1727
+ `return _a[0] ? _a[0].${name}(${argsString}) : []`,
1728
+ ];
1729
+ const funcContents = funcLines.join('\n');
1730
+ content = `${cleanOutTypes(name)}: ${isAsyncFunction ? 'async ' : ''}(${argsString}) => {\n${indent(funcContents)}\n}`;
1731
+ } else {
1732
+ // But if there's nested content, we need to include it in the return object
1733
+ // (similar to how argument variant branches handle this at line 1070-1072)
1734
+ const hasNestedContent = validNestedContent.length > 0;
1735
+ let funcReturnContents: string;
1736
+ if (hasNestedContent && levelContentItems.length > 1) {
1737
+ // Include both spread and nested content in the return
1738
+ funcReturnContents = `{\n${indent(levelContents)}\n}`;
1739
+ } else {
1740
+ funcReturnContents = returnValueContents;
1741
+ }
1742
+ const funcContents = `return ${funcReturnContents}`;
1743
+ content = `${cleanOutTypes(name)}: ${isAsyncFunction ? 'async ' : ''}(${argsString}) => {\n${indent(funcContents)}\n}`;
1744
+ }
495
1745
  }
496
1746
  } else {
497
1747
  if (!isValidKey(name)) {
498
1748
  return;
499
1749
  } else if (name.match(/\[\d*\]/)) {
1750
+ // Numeric array index like [0], [1] - can be used as computed property
500
1751
  content = returnValueContents;
1752
+ } else if (name.match(/^\[[a-zA-Z_]\w*\]$/)) {
1753
+ // Variable-based index like [currentItemIndex] - must be quoted string key
1754
+ // Otherwise JavaScript would try to evaluate the variable name
1755
+ content = `"${safeString(name)}": ${returnValueContents}`;
501
1756
  } else {
502
1757
  content = `${safeString(name)}: ${returnValueContents}`;
503
1758
  }
@@ -512,34 +1767,91 @@ export default function constructMockCode(
512
1767
  };
513
1768
 
514
1769
  // Create the return value structure
515
- const sortedKeys = Object.keys(relevantReturnValueSchema ?? {}).sort(
516
- (a: string, b: string) => {
517
- const aParts = splitOutsideParenthesesAndArrays(a);
518
- const bParts = splitOutsideParenthesesAndArrays(b);
519
-
520
- const maxLength = Math.max(aParts.length, bParts.length);
521
- for (let i = 0; i < maxLength; ++i) {
522
- const aPart = aParts[i];
523
- const bPart = bParts[i];
524
-
525
- if (!aPart) return -1;
526
- if (!bPart) return 1;
527
-
528
- if (aPart === bPart) continue;
529
-
530
- const aName = aPart.split('(')[0];
531
- const bName = bPart.split('(')[0];
1770
+ // OPTIMIZATION: Filter keys to only those starting with baseMockName before sorting.
1771
+ // This dramatically reduces processing time for large schemas (e.g., 9216 keys -> ~100 relevant keys).
1772
+ // Without this filter, the loop would call splitOutsideParenthesesAndArrays on every key
1773
+ // even though most are filtered out later by the baseMockName check.
1774
+ const allSchemaKeys = Object.keys(relevantReturnValueSchema ?? {});
1775
+ const relevantKeys = allSchemaKeys.filter((key) => {
1776
+ // Fast prefix check - key must start with baseMockName followed by ( or < or .
1777
+ // This matches: "useAtom()", "useAtom<T>()", "useAtom.something", but not "useAtomValue()"
1778
+ if (key === baseMockName) return true;
1779
+ if (key.startsWith(baseMockName + '(')) return true;
1780
+ if (key.startsWith(baseMockName + '<')) return true;
1781
+ if (key.startsWith(baseMockName + '.')) return true;
1782
+ // Also include 'returnValue' paths which are normalized later
1783
+ if (
1784
+ key === 'returnValue' ||
1785
+ key.startsWith('returnValue.') ||
1786
+ key.startsWith('returnValue[')
1787
+ )
1788
+ return true;
1789
+ return false;
1790
+ });
1791
+
1792
+ const schemaKeyCount = relevantKeys.length;
1793
+ const sortedKeys = relevantKeys.sort((a: string, b: string) => {
1794
+ const aParts = splitOutsideParenthesesAndArrays(a);
1795
+ const bParts = splitOutsideParenthesesAndArrays(b);
1796
+
1797
+ const maxLength = Math.max(aParts.length, bParts.length);
1798
+ for (let i = 0; i < maxLength; ++i) {
1799
+ const aPart = aParts[i];
1800
+ const bPart = bParts[i];
1801
+
1802
+ if (!aPart) return -1;
1803
+ if (!bPart) return 1;
1804
+
1805
+ if (aPart === bPart) continue;
1806
+
1807
+ const aName = aPart.split('(')[0];
1808
+ const bName = bPart.split('(')[0];
1809
+
1810
+ if (aName !== bName) {
1811
+ return aName.localeCompare(bName);
1812
+ } else {
1813
+ return aPart.localeCompare(bPart);
1814
+ }
1815
+ }
532
1816
 
533
- if (aName !== bName) {
534
- return aName.localeCompare(bName);
535
- } else {
536
- return aPart.localeCompare(bPart);
537
- }
1817
+ return 0;
1818
+ });
1819
+
1820
+ // OPTIMIZATION: Pre-compute prefix indexes for O(1) lookups instead of O(n) scans.
1821
+ // This reduces complexity from O(n²) to O(n) for large schemas (9k+ keys).
1822
+ //
1823
+ // 1. extendedReturnValuePrefixes: Set of all path prefixes that have a .functionCallReturnValue extension
1824
+ // Used by hasExtendedFunctionCallReturnValue check at line ~1754
1825
+ // 2. functionCallsWithReturnValue: Set of function call paths where .functionCallReturnValue IMMEDIATELY follows
1826
+ // Used by hasProperFunctionCallPath check at line ~1787
1827
+ // IMPORTANT: Only includes paths where the function call is directly followed by .functionCallReturnValue
1828
+ // e.g., "a.b().functionCallReturnValue" -> adds "a.b()" but NOT "a" even if "a" ends with ")"
1829
+ const extendedReturnValuePrefixes = new Set<string>();
1830
+ const functionCallsWithReturnValue = new Set<string>();
1831
+
1832
+ for (const k of relevantKeys) {
1833
+ const parts = splitOutsideParenthesesAndArrays(k);
1834
+ const returnValueIndex = parts.findIndex((part) =>
1835
+ part.startsWith(RETURN_VALUE),
1836
+ );
1837
+ if (returnValueIndex !== -1) {
1838
+ // Add all prefixes of k up to (but not including) functionCallReturnValue
1839
+ const prefix = joinParenthesesAndArrays(parts.slice(0, returnValueIndex));
1840
+ extendedReturnValuePrefixes.add(prefix);
1841
+
1842
+ // ONLY add to functionCallsWithReturnValue if functionCallReturnValue IMMEDIATELY follows
1843
+ if (prefix.endsWith(')')) {
1844
+ functionCallsWithReturnValue.add(prefix);
538
1845
  }
539
1846
 
540
- return 0;
541
- },
542
- );
1847
+ // Also add intermediate prefixes for nested paths to extendedReturnValuePrefixes
1848
+ // This helps hasExtendedFunctionCallReturnValue which checks key + '.'
1849
+ for (let i = 1; i < returnValueIndex; i++) {
1850
+ const partialPrefix = joinParenthesesAndArrays(parts.slice(0, i));
1851
+ extendedReturnValuePrefixes.add(partialPrefix);
1852
+ }
1853
+ }
1854
+ }
543
1855
 
544
1856
  for (const key of sortedKeys) {
545
1857
  const value = relevantReturnValueSchema[key];
@@ -574,7 +1886,9 @@ export default function constructMockCode(
574
1886
  }
575
1887
  }
576
1888
 
577
- if (parts[0].split('(')[0] !== mockName) continue;
1889
+ // Compare against baseMockName (without generics/args), not the full mockName
1890
+ // e.g., for "useFetcher<User>()", baseMockName is "useFetcher"
1891
+ if (parts[0].split('(')[0] !== baseMockName) continue;
578
1892
 
579
1893
  // Include paths with functionCallReturnValue OR function-typed paths that need mocking
580
1894
  const hasFunctionCallReturnValue = parts.some((p) =>
@@ -589,13 +1903,61 @@ export default function constructMockCode(
589
1903
  // Exclude paths with functionCallReturnValue - those are handled by existing logic
590
1904
  // Also check if there's a functionCallReturnValue path that extends this path
591
1905
  const hasSignaturePath = parts.some((p) => p.startsWith('signature['));
592
- const hasExtendedFunctionCallReturnValue = Object.keys(
593
- relevantReturnValueSchema,
594
- ).some((k) => k.startsWith(key + '.') && k.includes(`.${RETURN_VALUE}`));
1906
+
1907
+ // Skip signature paths entirely - they describe INPUT structure (function arguments),
1908
+ // not OUTPUT (return values). This applies even if they contain functionCallReturnValue
1909
+ // nested inside (e.g., methods on array elements passed as arguments).
1910
+ if (hasSignaturePath) continue;
1911
+
1912
+ // OPTIMIZATION: Use pre-computed index instead of O(n) scan
1913
+ // Old code: Object.keys(relevantReturnValueSchema).some((k) => k.startsWith(key + '.') && k.includes('.functionCallReturnValue'))
1914
+ const hasExtendedFunctionCallReturnValue =
1915
+ extendedReturnValuePrefixes.has(key);
1916
+
1917
+ // Skip JSX components - they look like function calls (e.g., Context.Provider())
1918
+ // but they're React components used in JSX, not functions that need mocking
1919
+ // Check both the value type and whether the functionCallReturnValue is jsx-component
1920
+ const isJsxComponent =
1921
+ value === 'jsx-component' ||
1922
+ relevantReturnValueSchema[key + '.functionCallReturnValue'] ===
1923
+ 'jsx-component';
1924
+ if (isJsxComponent) continue;
1925
+
1926
+ // Skip paths that bypass .functionCallReturnValue when there's a corresponding path with it.
1927
+ // Example: If we have both:
1928
+ // - trpc.customer.useQuery(...).data (incorrect - no .functionCallReturnValue)
1929
+ // - trpc.customer.useQuery(...).functionCallReturnValue.data (correct)
1930
+ // We should skip the first path because the second one properly captures the return value.
1931
+ // This can happen when the analyzer sees both the raw property access and the return value structure.
1932
+ if (!hasFunctionCallReturnValue) {
1933
+ // This path has no .functionCallReturnValue. Check if any function call in this path
1934
+ // has a corresponding .functionCallReturnValue path in the schema.
1935
+ let shouldSkipKey = false;
1936
+ for (let i = 0; i < parts.length - 1; i++) {
1937
+ const part = parts[i];
1938
+ if (part.endsWith(')') && !isFunctionCallReturnValue(parts[i + 1])) {
1939
+ // This part is a function call, and the next part is NOT .functionCallReturnValue
1940
+ // Check if there's any path with .functionCallReturnValue for this function call
1941
+ const functionCallPath = joinParenthesesAndArrays(
1942
+ parts.slice(0, i + 1),
1943
+ );
1944
+ // OPTIMIZATION: Use pre-computed index instead of O(n) scan
1945
+ // Old code: Object.keys(relevantReturnValueSchema).some((k) => k.startsWith(functionCallPath + '.functionCallReturnValue'))
1946
+ const hasProperFunctionCallPath =
1947
+ functionCallsWithReturnValue.has(functionCallPath);
1948
+ if (hasProperFunctionCallPath) {
1949
+ // Skip this path - the .functionCallReturnValue path will handle it correctly
1950
+ shouldSkipKey = true;
1951
+ break;
1952
+ }
1953
+ }
1954
+ }
1955
+ if (shouldSkipKey) continue;
1956
+ }
1957
+
595
1958
  const isFunctionPath =
596
1959
  ['function', 'async-function'].includes(value) &&
597
1960
  parts[parts.length - 1].endsWith(')') &&
598
- !hasSignaturePath &&
599
1961
  !hasAnyFunctionCallReturnValue &&
600
1962
  !hasExtendedFunctionCallReturnValue;
601
1963
  if (!hasFunctionCallReturnValue && !isFunctionPath) continue;
@@ -641,6 +2003,17 @@ export default function constructMockCode(
641
2003
  const nextIsArray = !!nextPart?.match(/^\[\d*\]/);
642
2004
  const isDifferentiatedArray = !!part?.match(/^\[\d+\]/);
643
2005
  const nextIsDifferentiatedArray = !!nextPart?.match(/^\[\d+\]/);
2006
+
2007
+ // Variable index patterns like [currentItemIndex] or [targetIndex] indicate array access
2008
+ // but don't represent actual data structure - they're markers from variable-based index tracking.
2009
+ // Skip them AND all remaining parts to avoid creating spurious nested structure that breaks array iteration.
2010
+ // The remaining parts (e.g., .missing_attributes) describe properties of array elements, which are
2011
+ // already handled by the generic [] accessor path.
2012
+ const isVariableIndex = !!part?.match(/^\[[a-zA-Z_]\w*\]$/);
2013
+ if (isVariableIndex) {
2014
+ // Break out of the loop entirely - don't process any remaining parts
2015
+ break;
2016
+ }
644
2017
  // Find the correct value for the current part being processed
645
2018
  let partValue = value; // default to the final value
646
2019
  if (isFunctionCallReturnValue(part) && nextIsArray) {
@@ -687,6 +2060,25 @@ export default function constructMockCode(
687
2060
  if (returnValueSection.returnsFunctionArgs && value === 'array') {
688
2061
  returnValueSection.returnsFunctionArray = true;
689
2062
  }
2063
+
2064
+ // Check if this function call has actual return data in the schema
2065
+ // If the path only has .signature entries (no .functionCallReturnValue), mark as no return data
2066
+ // Use parts[i] (original part) instead of modified 'part' to include array indices like [1]
2067
+ const functionCallPath = joinParenthesesAndArrays([
2068
+ ...parts.slice(0, i),
2069
+ parts[i], // Use original part which may include [1](args) together
2070
+ ]);
2071
+ // Check if there's a .functionCallReturnValue AFTER this function call path
2072
+ const hasFunctionCallReturnValue = Object.keys(
2073
+ relevantReturnValueSchema,
2074
+ ).some((k) => {
2075
+ if (!k.startsWith(functionCallPath)) return false;
2076
+ const afterPath = k.slice(functionCallPath.length);
2077
+ return afterPath.startsWith('.functionCallReturnValue');
2078
+ });
2079
+ if (!hasFunctionCallReturnValue) {
2080
+ returnValueSection.hasNoReturnData = true;
2081
+ }
690
2082
  }
691
2083
 
692
2084
  if (nextIsDifferentiatedArray || hasNestedFunction) {
@@ -729,7 +2121,52 @@ export default function constructMockCode(
729
2121
  }
730
2122
  }
731
2123
  } else {
732
- returnValueSection.returnsFunctionArgs = [];
2124
+ // Before setting returnsFunctionArgs on the parent (for generic [] = function),
2125
+ // check if there are specific array indices (like [0], [1]) that are NOT functions.
2126
+ // If so, don't set returnsFunctionArgs because those specific indices take precedence.
2127
+ // This prevents adding ["()"] to paths like [0] when [0] is 'unknown' but [] is 'function'.
2128
+ //
2129
+ // Use parts.slice(0, i + 1) to get the current path INCLUDING functionCallReturnValue.
2130
+ // For example, if parts = ['useAtom()','functionCallReturnValue','[]']
2131
+ // and i = 1, we want to check 'useAtom().functionCallReturnValue[0]' etc.
2132
+ const arrayContainerPath = joinParenthesesAndArrays(
2133
+ parts.slice(0, i + 1),
2134
+ );
2135
+
2136
+ const hasNonFunctionSpecificIndices = Object.entries(
2137
+ relevantReturnValueSchema,
2138
+ ).some(([k, v]) => {
2139
+ // Look for paths like "arrayContainerPath[0]", "arrayContainerPath[1]" etc.
2140
+ const indexMatch = k.match(
2141
+ new RegExp(
2142
+ `^${arrayContainerPath.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\[(\\d+)\\]$`,
2143
+ ),
2144
+ );
2145
+ // If found and it's NOT a function type, we have a conflict
2146
+ return (
2147
+ indexMatch &&
2148
+ !['function', 'async-function'].includes(v as string)
2149
+ );
2150
+ });
2151
+
2152
+ // Also check if [] has nested object properties (like [].filter, [].name)
2153
+ // If so, [] items are objects with properties, not pure functions to be called
2154
+ // This handles cases where the schema shows [].filter = object but doesn't
2155
+ // have explicit [0] entries
2156
+ const genericArrayPath = `${arrayContainerPath}[]`;
2157
+ const hasNestedProperties = Object.keys(
2158
+ relevantReturnValueSchema,
2159
+ ).some((k) => {
2160
+ // Check for paths like "arrayContainerPath[].propertyName" (not [].())
2161
+ return (
2162
+ k.startsWith(genericArrayPath + '.') &&
2163
+ !k.startsWith(genericArrayPath + '.(')
2164
+ );
2165
+ });
2166
+
2167
+ if (!hasNonFunctionSpecificIndices && !hasNestedProperties) {
2168
+ returnValueSection.returnsFunctionArgs = [];
2169
+ }
733
2170
  }
734
2171
  }
735
2172
  }
@@ -752,6 +2189,12 @@ export default function constructMockCode(
752
2189
  if (['function', 'async-function'].includes(nextValue)) {
753
2190
  continue; // Continue to process the function property
754
2191
  }
2192
+ // If the next part is an object with nested content, continue processing
2193
+ // This handles paths like functionCallReturnValue.selectedOptions.elementOptions[]
2194
+ // Also handles union types like 'array | undefined' or 'object | undefined'
2195
+ if (nextValue?.includes('object') || nextValue?.includes('array')) {
2196
+ continue;
2197
+ }
755
2198
  }
756
2199
  break;
757
2200
  }
@@ -759,11 +2202,35 @@ export default function constructMockCode(
759
2202
  continue;
760
2203
  }
761
2204
 
2205
+ // Handle parts that end with [] (e.g., "elementOptions[]")
2206
+ // These should be treated as the base part + array accessor
2207
+ const endsWithArrayAccessor = part.endsWith('[]') && part !== '[]';
2208
+ const basePart = endsWithArrayAccessor ? part.slice(0, -2) : part;
2209
+
762
2210
  const withoutArgs = (p: ReturnValuePart) => p.name.split('(')[0];
763
2211
  let relevantPart = returnValueSection.nested?.find(
764
2212
  (p: ReturnValuePart) =>
765
- withoutArgs(p) === withoutArgs({ name: part } as ReturnValuePart),
2213
+ withoutArgs(p) === withoutArgs({ name: basePart } as ReturnValuePart),
766
2214
  );
2215
+
2216
+ // If part ends with [], update the existing part to be an array
2217
+ if (endsWithArrayAccessor && relevantPart) {
2218
+ relevantPart.isArray = true;
2219
+ relevantPart.isGenericArray = true;
2220
+ // Create structural [0] element for nested content
2221
+ relevantPart.nested ||= [];
2222
+ if (!relevantPart.nested.find((p) => p.name === '[0]')) {
2223
+ relevantPart.nested.push({
2224
+ name: '[0]',
2225
+ nested: [],
2226
+ isStructural: true,
2227
+ });
2228
+ }
2229
+ // Move to the [0] element for processing subsequent parts
2230
+ returnValueSection = relevantPart.nested.find((p) => p.name === '[0]');
2231
+ continue;
2232
+ }
2233
+
767
2234
  if (!relevantPart) {
768
2235
  const hasArguments = part.includes('(') && part.endsWith(')');
769
2236
  if (part === '[]') {
@@ -787,6 +2254,33 @@ export default function constructMockCode(
787
2254
  continue;
788
2255
  }
789
2256
 
2257
+ // Handle parts that end with [] (e.g., "elementOptions[]") when base part doesn't exist
2258
+ if (endsWithArrayAccessor) {
2259
+ // Create the base part with array properties
2260
+ relevantPart = {
2261
+ name: basePart,
2262
+ isArray: true,
2263
+ isGenericArray: true,
2264
+ nested: [],
2265
+ };
2266
+ returnValueSection.nested ||= [];
2267
+ returnValueSection.nested.push(relevantPart);
2268
+
2269
+ // Create structural [0] element for nested content
2270
+ if (partValue === 'object' && !isLastPart) {
2271
+ relevantPart.nested.push({
2272
+ name: '[0]',
2273
+ nested: [],
2274
+ isStructural: true,
2275
+ });
2276
+ // Move to the [0] element for processing subsequent parts
2277
+ returnValueSection = relevantPart.nested.find(
2278
+ (p) => p.name === '[0]',
2279
+ );
2280
+ }
2281
+ continue;
2282
+ }
2283
+
790
2284
  if (
791
2285
  isLastPart &&
792
2286
  ['function', 'async-function'].includes(value) &&
@@ -827,20 +2321,59 @@ export default function constructMockCode(
827
2321
  ) {
828
2322
  returnValueSection.nested.push(relevantPart);
829
2323
  }
830
- } else if (
831
- funcArgs(part).join(',') !== funcArgs(relevantPart.name).join(',')
832
- ) {
833
- const existingArgs = relevantPart.args.find(
834
- (args) => args.join(',') === funcArgs(part).join(','),
835
- );
2324
+ } else {
2325
+ // Add args to existing entry if current part has function arguments
2326
+ // This handles the case where bare `t` is processed first (creating {name: 't', args: undefined})
2327
+ // and then `t("common.close")` is processed - we need to add its args to the existing entry
2328
+ const currentArgs = funcArgs(part);
2329
+ const hasNewArgs = currentArgs.length > 0 || part.includes('(');
2330
+
2331
+ if (hasNewArgs) {
2332
+ const existingArgs = relevantPart.args?.find(
2333
+ (args) => args.join(',') === currentArgs.join(','),
2334
+ );
836
2335
 
837
- if (!existingArgs) {
838
- relevantPart.args ||= [];
839
- relevantPart.args.push(funcArgs(part));
2336
+ if (!existingArgs) {
2337
+ relevantPart.args ||= [];
2338
+ relevantPart.args.push(currentArgs);
2339
+ }
840
2340
  }
841
2341
  }
842
2342
 
843
- if (!hasNestedFunction) {
2343
+ // If nextPart is [], update existing part to be a generic array
2344
+ if (relevantPart && nextPart === '[]') {
2345
+ relevantPart.isArray = true;
2346
+ relevantPart.isGenericArray = true;
2347
+ }
2348
+
2349
+ // Check if there are remaining parts after functionCallReturnValue that need processing
2350
+ // (e.g., data properties like useQuery().functionCallReturnValue.data)
2351
+ const hasRemainingPartsAfterReturnValue =
2352
+ nextPart &&
2353
+ (isFunctionCallReturnValue(nextPart) ||
2354
+ (isFunctionCallReturnValue(parts[i]) && i < parts.length - 1));
2355
+
2356
+ if (!hasNestedFunction && !hasRemainingPartsAfterReturnValue) {
2357
+ // Before breaking, check if this function returns an array
2358
+ // by looking for a functionCallReturnValue: 'array' entry in the schema
2359
+ if (relevantPart && part.endsWith(')')) {
2360
+ const functionReturnPath = joinParenthesesAndArrays([
2361
+ ...parts.slice(0, i + 1),
2362
+ RETURN_VALUE,
2363
+ ]);
2364
+ const returnType = relevantReturnValueSchema[functionReturnPath];
2365
+ if (returnType === 'array') {
2366
+ // Only set returnsFunctionArray if the array contains plain data,
2367
+ // NOT if it contains functions (which need wrapping)
2368
+ const arrayElementPath = `${functionReturnPath}[]`;
2369
+ const arrayElementType =
2370
+ relevantReturnValueSchema[arrayElementPath];
2371
+ // If array element is a function, we need to wrap it - don't set returnsFunctionArray
2372
+ if (arrayElementType !== 'function') {
2373
+ relevantPart.returnsFunctionArray = true;
2374
+ }
2375
+ }
2376
+ }
844
2377
  break;
845
2378
  }
846
2379
 
@@ -848,10 +2381,28 @@ export default function constructMockCode(
848
2381
  }
849
2382
  }
850
2383
 
2384
+ // Post-processing: When the root functionCallReturnValue is typed as "function" but the
2385
+ // return value also has nested properties (methods like .from(), .auth, etc.), it's actually
2386
+ // an object, not a function to be called. Clear returnsFunctionArgs to prevent double-wrapping
2387
+ // (adding an extra () => { return { ... } } wrapper and ["()"] data paths).
2388
+ // This handles cases like Supabase's createClient() which returns an object with methods.
2389
+ // Only applied to the root level - nested parts that are functions with methods (like
2390
+ // useSearchParams()[1] which is a setter function with .set() and .delete()) should keep
2391
+ // their returnsFunctionArgs since they genuinely ARE functions.
2392
+ if (
2393
+ returnValueParts.returnsFunctionArgs &&
2394
+ returnValueParts.returnsFunctionArgs.length === 0 &&
2395
+ returnValueParts.nested &&
2396
+ returnValueParts.nested.length > 0
2397
+ ) {
2398
+ returnValueParts.returnsFunctionArgs = undefined;
2399
+ }
2400
+
851
2401
  const contents = constructReturnValueString(returnValueParts);
852
2402
 
853
2403
  if (mockNameParts.length > 1) {
854
2404
  const originalLib = `${mockNameParts[0]}__cyOriginal`;
2405
+ const skipOriginalSpread = options?.skipOriginalSpread;
855
2406
 
856
2407
  const subPart = (
857
2408
  parts: string[],
@@ -863,7 +2414,9 @@ export default function constructMockCode(
863
2414
 
864
2415
  const partContents = isLast
865
2416
  ? contents
866
- : `...${originalLib}.${part},\n${subPart(parts, originalLib)}`;
2417
+ : skipOriginalSpread
2418
+ ? subPart(parts, originalLib)
2419
+ : `...${originalLib}.${part},\n${subPart(parts, originalLib)}`;
867
2420
 
868
2421
  let code = `${part}: {\n${indent(partContents)}\n}`;
869
2422
 
@@ -877,15 +2430,202 @@ export default function constructMockCode(
877
2430
  return code;
878
2431
  };
879
2432
 
880
- const returnParts = [
881
- `...${mockNameParts[0]}__cyOriginal`,
882
- subPart(mockNameParts.slice(1), originalLib),
883
- ].filter(Boolean);
2433
+ const returnParts = skipOriginalSpread
2434
+ ? [subPart(mockNameParts.slice(1), originalLib)]
2435
+ : [
2436
+ `...${mockNameParts[0]}__cyOriginal`,
2437
+ subPart(mockNameParts.slice(1), originalLib),
2438
+ ];
884
2439
 
885
- return `const ${mockNameParts[0]} = {\n${indent(returnParts.join(',\n'))}\n};`;
2440
+ return `const ${mockNameParts[0]} = {\n${indent(returnParts.filter(Boolean).join(',\n'))}\n};`;
886
2441
  } else if (isFunction) {
887
- return `const ${mockName}ReturnValue = ${contents};\n\n${isRootAsyncFunction ? 'async ' : ''}function ${mockName}() {\n${indent(`return ${mockName}ReturnValue;`)}\n}`;
2442
+ // For headers() and cookies() from next/headers, add common iterator methods
2443
+ // These are needed when the mock is passed to functions that use .entries(), .keys(), etc.
2444
+ // (e.g., Object.fromEntries(headers.entries()) in buildLegacyHeaders)
2445
+ const needsIteratorMethods =
2446
+ baseMockName === 'headers' || baseMockName === 'cookies';
2447
+ let enhancedContents = contents;
2448
+ if (needsIteratorMethods && contents.trim().startsWith('{')) {
2449
+ // Add iterator methods that operate on the scenario data
2450
+ // Use the dataKey (original call signature or canonical key)
2451
+ const quotedDataKey = quotePropertyKey(dataKey);
2452
+ const iteratorMethods = `,
2453
+ entries: () => Object.entries(scenarios().data()?.${quotedDataKey} || {}),
2454
+ keys: () => Object.keys(scenarios().data()?.${quotedDataKey} || {}),
2455
+ values: () => Object.values(scenarios().data()?.${quotedDataKey} || {}),
2456
+ forEach: (fn) => Object.entries(scenarios().data()?.${quotedDataKey} || {}).forEach(([k, v]) => fn(v, k)),
2457
+ has: (key) => Object.prototype.hasOwnProperty.call(scenarios().data()?.${quotedDataKey} || {}, key)`;
2458
+ // Insert before the closing brace (handle trailing whitespace)
2459
+ enhancedContents = contents.replace(/\}\s*$/, iteratorMethods + '\n}');
2460
+ }
2461
+
2462
+ // Classes need to be mocked as classes, not functions.
2463
+ // They're used with `new ClassName(args)` which requires a proper constructor.
2464
+ // A function mock like `function ClassName() { return value; }` doesn't work because
2465
+ // `new ClassName("arg")` wouldn't create the expected instance.
2466
+ // For Error subclasses (detected by name ending in "Error"), extend Error for proper error handling.
2467
+ if (entityType === 'class') {
2468
+ const isErrorSubclass = baseMockName.endsWith('Error');
2469
+ const superCall = isErrorSubclass ? 'super(message);' : '';
2470
+ const nameAssignment = isErrorSubclass
2471
+ ? `this.name = '${baseMockName}';`
2472
+ : '';
2473
+ // Use the base class name for the class definition, not the call-signature-derived name.
2474
+ // When mockName is "StatsCalculator(supabase)", baseMockName is "StatsCalculator"
2475
+ // and derivedFunctionName would be "StatsCalculator_supabase" which is wrong.
2476
+ // Classes are instantiated with `new ClassName(args)` so the name must match the original.
2477
+ const className = baseMockName;
2478
+
2479
+ // Use the already-generated contents (which has proper function wrappers for methods)
2480
+ // instead of raw scenarios().data() which would create non-callable string-keyed properties.
2481
+ // For classes with methods like calculateStats(), the contents will have:
2482
+ // { calculateStats: (...args) => scenarios().data()?.["key"]?.["calculateStats(...)"], ... }
2483
+ // which makes methods callable on the instance.
2484
+ const classContents = enhancedContents.trim().startsWith('{')
2485
+ ? enhancedContents
2486
+ : `scenarios().data()?.${quotePropertyKey(dataKey)} || {}`;
2487
+
2488
+ return `class ${className}${isErrorSubclass ? ' extends Error' : ''} {
2489
+ constructor(message) {
2490
+ ${superCall}
2491
+ ${nameAssignment}
2492
+ Object.assign(this, ${classContents});
2493
+ }
2494
+ }`;
2495
+ }
2496
+
2497
+ // Generate safe function name:
2498
+ // 1. For call signatures: use derivedFunctionName
2499
+ // e.g., "useFetcher<User>()" becomes "useFetcher_User"
2500
+ // e.g., "db.select(usersQuery)" becomes "db_select_usersQuery"
2501
+ // 2. With uniqueFunctionSuffix option: append suffix for unique naming
2502
+ // e.g., baseMockName = "useFetcher", suffix = "entityDiffFetcher" -> "useFetcher_entityDiffFetcher"
2503
+ // 3. EXCEPTION: When keepOriginalFunctionName is true (for single-call cases), use the base name
2504
+ let safeFunctionName: string;
2505
+ if (options?.keepOriginalFunctionName) {
2506
+ safeFunctionName = baseMockName;
2507
+ } else if (options?.uniqueFunctionSuffix) {
2508
+ safeFunctionName = `${baseMockName}_${options.uniqueFunctionSuffix}`;
2509
+ } else if (mockNameIsCallSignature && derivedFunctionName) {
2510
+ safeFunctionName = derivedFunctionName;
2511
+ } else {
2512
+ safeFunctionName = baseMockName;
2513
+ }
2514
+
2515
+ // Check if this function returns a function (detected by double-call pattern: mockName(args)())
2516
+ // This happens when the schema has keys like "wrapThrows(() => JSON.parse(savedFilters))()"
2517
+ // where the function call is immediately followed by another call.
2518
+ // Example usage: const result = wrapThrows(() => JSON.parse(x))(); // double call
2519
+ const isHigherOrderFunction = Object.keys(
2520
+ relevantReturnValueSchema ?? {},
2521
+ ).some((key) => {
2522
+ if (!key.startsWith(baseMockName)) return false;
2523
+
2524
+ // Find the first ( after baseMockName (the start of the function call)
2525
+ const firstOpenParen = key.indexOf('(', baseMockName.length);
2526
+ if (firstOpenParen === -1) return false;
2527
+
2528
+ // Skip if the ( is not immediately after the mock name
2529
+ // (there might be type params like func<T>() - handle by checking for < or ()
2530
+ const between = key.slice(baseMockName.length, firstOpenParen);
2531
+ if (between.length > 0 && !between.startsWith('<')) return false;
2532
+
2533
+ // Find the matching ) for the first ( using depth counting
2534
+ let depth = 1;
2535
+ let i = firstOpenParen + 1;
2536
+ while (i < key.length && depth > 0) {
2537
+ if (key[i] === '(') depth++;
2538
+ if (key[i] === ')') depth--;
2539
+ i++;
2540
+ }
2541
+
2542
+ if (depth !== 0) return false; // Unbalanced parentheses
2543
+
2544
+ // Now i points just after the matching )
2545
+ // Check if there's another ( immediately (indicating double call)
2546
+ const remaining = key.slice(i);
2547
+ if (remaining.startsWith('(')) return true;
2548
+
2549
+ return false;
2550
+ });
2551
+
2552
+ // Use ...args to accept any number of arguments - prevents TypeScript errors
2553
+ // like "Expected 0 arguments, but got X" when caller passes arguments
2554
+ // For higher-order functions, wrap the return in an arrow function
2555
+ // so that mockFunc(arg)() works correctly (outer call returns a function, inner call gets the data)
2556
+ const returnValue = isHigherOrderFunction
2557
+ ? `() => (${enhancedContents})`
2558
+ : enhancedContents;
2559
+
2560
+ // Inline the return value directly in the function to avoid module-level const
2561
+ // that would be evaluated before scenario context is ready
2562
+ // Add fallback for simple data path returns to prevent undefined errors (e.g., createTheme)
2563
+ // Only add fallback if returnValue is a simple data accessor (starts with scenarios().data())
2564
+ // and doesn't already have nested structure (object literal, array, or method chains like .map())
2565
+ const isSimpleDataPath =
2566
+ returnValue.startsWith('scenarios().data()') &&
2567
+ !returnValue.trim().startsWith('{') &&
2568
+ !returnValue.trim().startsWith('[') &&
2569
+ !returnValue.includes('.map('); // Exclude method chains
2570
+ const safeReturnValue = isSimpleDataPath
2571
+ ? `${returnValue} ?? {}`
2572
+ : returnValue;
2573
+ const refName = `_${safeFunctionName}Ref`;
2574
+ const assignment = `${refName}.current = ${safeReturnValue};`;
2575
+ const ifBlock = `if (!${refName}.current) {\n${indent(assignment)}\n}`;
2576
+ const body = `${ifBlock}\nreturn ${refName}.current;`;
2577
+
2578
+ return [
2579
+ `// PATCHED: memoize to return stable reference (prevents infinite useEffect re-triggers)`,
2580
+ `const ${refName} = {`,
2581
+ ` current: null,`,
2582
+ `};`,
2583
+ `${isRootAsyncFunction ? 'async ' : ''}function ${safeFunctionName}(...args) {`,
2584
+ indent(body),
2585
+ `}`,
2586
+ ].join('\n');
888
2587
  } else {
889
- return `const ${mockName} = ${contents}`;
2588
+ // Generate safe const name:
2589
+ // 1. For call signatures: use derivedFunctionName
2590
+ // 2. With uniqueFunctionSuffix option: append suffix for unique naming
2591
+ // 3. EXCEPTION: When keepOriginalFunctionName is true (for single-call cases), use the base name
2592
+ let safeName: string;
2593
+ if (options?.keepOriginalFunctionName) {
2594
+ safeName = baseMockName;
2595
+ } else if (options?.uniqueFunctionSuffix) {
2596
+ safeName = `${baseMockName}_${options.uniqueFunctionSuffix}`;
2597
+ } else if (mockNameIsCallSignature && derivedFunctionName) {
2598
+ safeName = derivedFunctionName;
2599
+ } else {
2600
+ safeName = baseMockName;
2601
+ }
2602
+
2603
+ // Get any jsx-component properties that need to be preserved from the original
2604
+ const jsxProperties = getJsxComponentProperties(
2605
+ mockName,
2606
+ relevantReturnValueSchema,
2607
+ );
2608
+
2609
+ // If there are jsx-component properties, add them as references to the original
2610
+ if (jsxProperties.length > 0) {
2611
+ const jsxPreservations = jsxProperties
2612
+ .map((prop) => `${prop}: ${mockName}__cyOriginal.${prop}`)
2613
+ .join(',\n');
2614
+
2615
+ if (contents.trim().startsWith('{')) {
2616
+ // Contents is already an object - insert jsx preservations before the closing brace
2617
+ const enhancedContents = contents.replace(
2618
+ /\}\s*$/,
2619
+ `,\n${indent(jsxPreservations)}\n}`,
2620
+ );
2621
+ return `const ${safeName} = ${enhancedContents}`;
2622
+ } else {
2623
+ // Contents is a simple accessor (e.g., scenarios().data()?.["MockName"])
2624
+ // Wrap it in an object with the jsx preservations
2625
+ return `const ${safeName} = {\n${indent(`...${contents}`)},\n${indent(jsxPreservations)}\n}`;
2626
+ }
2627
+ }
2628
+
2629
+ return `const ${safeName} = ${contents}`;
890
2630
  }
891
2631
  }