@codeyam/codeyam-cli 0.1.0-staging.e38f7bd → 0.1.0-staging.f777668

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 (1310) hide show
  1. package/analyzer-template/.build-info.json +8 -8
  2. package/analyzer-template/common/execAsync.ts +1 -1
  3. package/analyzer-template/log.txt +3 -3
  4. package/analyzer-template/package.json +36 -32
  5. package/analyzer-template/packages/ai/index.ts +21 -5
  6. package/analyzer-template/packages/ai/package.json +5 -5
  7. package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
  8. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +228 -24
  9. package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
  10. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +239 -13
  11. package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
  12. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +181 -23
  13. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  14. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
  15. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +38 -1
  16. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
  17. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1619 -125
  18. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  19. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +324 -5
  20. package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +29 -10
  21. package/analyzer-template/packages/ai/src/lib/completionCall.ts +247 -66
  22. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +2788 -390
  23. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +21 -4
  24. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
  25. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +243 -77
  26. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +16 -3
  27. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +6 -4
  28. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +71 -2
  29. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +161 -19
  30. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  31. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.ts +62 -0
  32. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +163 -14
  33. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
  34. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  35. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  36. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +441 -82
  37. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
  38. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.ts +35 -0
  39. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +183 -0
  40. package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
  41. package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
  42. package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
  43. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +74 -7
  44. package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +89 -112
  45. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +63 -2
  46. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1495 -101
  47. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +216 -109
  48. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +677 -0
  49. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
  50. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +2484 -0
  51. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
  52. package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +143 -31
  53. package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
  54. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +328 -7
  55. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  56. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +111 -87
  57. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  58. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +17 -7
  59. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +1 -1
  60. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +32 -102
  61. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
  62. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
  63. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +110 -6
  64. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +14 -53
  65. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
  66. package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
  67. package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
  68. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +824 -0
  69. package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
  70. package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
  71. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +127 -3
  72. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +121 -2
  73. package/analyzer-template/packages/analyze/index.ts +2 -0
  74. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +79 -59
  75. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +132 -33
  76. package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
  77. package/analyzer-template/packages/analyze/src/lib/asts/index.ts +7 -2
  78. package/analyzer-template/packages/analyze/src/lib/asts/nodes/getNodeType.ts +1 -0
  79. package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +1 -0
  80. package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
  81. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  82. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  83. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +11 -0
  84. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  85. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  86. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  87. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +570 -180
  88. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +62 -1
  89. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +15 -0
  90. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +4 -2
  91. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -10
  92. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +31 -15
  93. package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +11 -7
  94. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +11 -12
  95. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +4 -5
  96. package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
  97. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +22 -13
  98. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1352 -0
  99. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +313 -0
  100. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
  101. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +711 -78
  102. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
  103. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
  104. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +633 -137
  105. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +166 -0
  106. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +78 -83
  107. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +4 -8
  108. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1087 -168
  109. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +56 -11
  110. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  111. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +2 -1
  112. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  113. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  114. package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
  115. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
  116. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
  117. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
  118. package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
  119. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
  120. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
  121. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
  122. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  123. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
  124. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
  125. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
  126. package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  127. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
  128. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
  129. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
  130. package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
  131. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
  132. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
  133. package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
  134. package/analyzer-template/packages/aws/package.json +10 -10
  135. package/analyzer-template/packages/aws/s3/index.ts +1 -0
  136. package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
  137. package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
  138. package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
  139. package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
  140. package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
  141. package/analyzer-template/packages/database/index.ts +1 -0
  142. package/analyzer-template/packages/database/package.json +4 -4
  143. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
  144. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
  145. package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
  146. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
  147. package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
  148. package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
  149. package/analyzer-template/packages/database/src/lib/kysely/db.ts +26 -5
  150. package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +2 -2
  151. package/analyzer-template/packages/database/src/lib/kysely/tables/commitsTable.ts +6 -0
  152. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +36 -9
  153. package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +68 -0
  154. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  155. package/analyzer-template/packages/database/src/lib/loadAnalyses.ts +58 -1
  156. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +13 -0
  157. package/analyzer-template/packages/database/src/lib/loadBranch.ts +16 -1
  158. package/analyzer-template/packages/database/src/lib/loadCommit.ts +11 -0
  159. package/analyzer-template/packages/database/src/lib/loadCommits.ts +58 -19
  160. package/analyzer-template/packages/database/src/lib/loadEntities.ts +26 -3
  161. package/analyzer-template/packages/database/src/lib/loadEntityBranches.ts +12 -0
  162. package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +25 -5
  163. package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
  164. package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
  165. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
  166. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +153 -144
  167. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatus.ts +58 -42
  168. package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.ts +81 -65
  169. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
  170. package/analyzer-template/packages/generate/index.ts +3 -0
  171. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +17 -1
  172. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +221 -0
  173. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
  174. package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +42 -9
  175. package/analyzer-template/packages/generate/src/lib/deepMerge.ts +26 -1
  176. package/analyzer-template/packages/generate/src/lib/directExecutionScript.ts +17 -2
  177. package/analyzer-template/packages/generate/src/lib/getComponentScenarioPath.ts +8 -3
  178. package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
  179. package/analyzer-template/packages/github/dist/database/index.d.ts +1 -0
  180. package/analyzer-template/packages/github/dist/database/index.d.ts.map +1 -1
  181. package/analyzer-template/packages/github/dist/database/index.js +1 -0
  182. package/analyzer-template/packages/github/dist/database/index.js.map +1 -1
  183. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
  184. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
  185. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
  186. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
  187. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
  188. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
  189. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
  190. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
  191. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
  192. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
  193. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
  194. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
  195. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +6 -2
  196. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
  197. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +18 -3
  198. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
  199. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +2 -2
  200. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +1 -11
  201. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -1
  202. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts +1 -0
  203. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts.map +1 -1
  204. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js +3 -0
  205. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js.map +1 -1
  206. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +30 -7
  207. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -1
  208. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  209. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  210. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +22 -0
  211. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -0
  212. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +51 -0
  213. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  214. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +1 -0
  215. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -1
  216. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  217. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  218. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  219. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  220. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +7 -6
  221. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -1
  222. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts +2 -0
  223. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts.map +1 -1
  224. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js +45 -2
  225. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js.map +1 -1
  226. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
  227. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +8 -0
  228. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
  229. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js +11 -1
  230. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js.map +1 -1
  231. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.d.ts.map +1 -1
  232. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js +7 -0
  233. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js.map +1 -1
  234. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts +3 -1
  235. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts.map +1 -1
  236. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +45 -14
  237. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js.map +1 -1
  238. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts +3 -1
  239. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -1
  240. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +23 -4
  241. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -1
  242. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.d.ts.map +1 -1
  243. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js +9 -0
  244. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js.map +1 -1
  245. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -1
  246. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +20 -5
  247. package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  248. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
  249. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
  250. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
  251. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
  252. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
  253. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -1
  254. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts +2 -2
  255. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -1
  256. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +100 -88
  257. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -1
  258. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.d.ts.map +1 -1
  259. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js +41 -30
  260. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js.map +1 -1
  261. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +1 -1
  262. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +68 -57
  263. package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -1
  264. package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
  265. package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
  266. package/analyzer-template/packages/github/dist/generate/index.js +3 -0
  267. package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
  268. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
  269. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  270. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  271. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
  272. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
  273. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  274. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  275. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
  276. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
  277. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  278. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  279. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
  280. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  281. package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  282. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
  283. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +27 -1
  284. package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
  285. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.d.ts.map +1 -1
  286. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js +10 -1
  287. package/analyzer-template/packages/github/dist/generate/src/lib/directExecutionScript.js.map +1 -1
  288. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.d.ts.map +1 -1
  289. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js +7 -3
  290. package/analyzer-template/packages/github/dist/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  291. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
  292. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
  293. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
  294. package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  295. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
  296. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +10 -0
  297. package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
  298. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
  299. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +3 -0
  300. package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
  301. package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
  302. package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
  303. package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
  304. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -13
  305. package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
  306. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts +2 -0
  307. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts.map +1 -1
  308. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +2 -0
  309. package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
  310. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  311. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  312. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +21 -6
  313. package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
  314. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  315. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  316. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  317. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  318. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
  319. package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  320. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  321. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js +26 -2
  322. package/analyzer-template/packages/github/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  323. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  324. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  325. package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  326. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
  327. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  328. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +29 -3
  329. package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
  330. package/analyzer-template/packages/github/package.json +2 -2
  331. package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +14 -0
  332. package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +2 -0
  333. package/analyzer-template/packages/process/index.ts +2 -0
  334. package/analyzer-template/packages/process/package.json +12 -0
  335. package/analyzer-template/packages/process/tsconfig.json +8 -0
  336. package/analyzer-template/packages/types/index.ts +5 -0
  337. package/analyzer-template/packages/types/src/types/Analysis.ts +104 -13
  338. package/analyzer-template/packages/types/src/types/Commit.ts +2 -0
  339. package/analyzer-template/packages/types/src/types/Entity.ts +2 -0
  340. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +8 -0
  341. package/analyzer-template/packages/types/src/types/Scenario.ts +21 -10
  342. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +228 -3
  343. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  344. package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
  345. package/analyzer-template/packages/ui-components/package.json +4 -4
  346. package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
  347. package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
  348. package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
  349. package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
  350. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -13
  351. package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
  352. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts +2 -0
  353. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts.map +1 -1
  354. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +2 -0
  355. package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
  356. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +8 -0
  357. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  358. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +21 -6
  359. package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
  360. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +199 -3
  361. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  362. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  363. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  364. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
  365. package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
  366. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.d.ts.map +1 -1
  367. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js +26 -2
  368. package/analyzer-template/packages/utils/dist/utils/src/lib/applyUniversalMocks.js.map +1 -1
  369. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  370. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +98 -3
  371. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  372. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
  373. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
  374. package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  375. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
  376. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
  377. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +29 -3
  378. package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
  379. package/analyzer-template/packages/utils/src/lib/applyUniversalMocks.ts +28 -2
  380. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +121 -3
  381. package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +27 -0
  382. package/analyzer-template/packages/utils/src/lib/safeFileName.ts +48 -3
  383. package/analyzer-template/playwright/capture.ts +57 -26
  384. package/analyzer-template/playwright/captureFromUrl.ts +89 -82
  385. package/analyzer-template/playwright/captureStatic.ts +1 -1
  386. package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
  387. package/analyzer-template/playwright/takeElementScreenshot.ts +26 -11
  388. package/analyzer-template/playwright/takeScreenshot.ts +15 -9
  389. package/analyzer-template/playwright/waitForServer.ts +21 -6
  390. package/analyzer-template/project/TESTING.md +83 -0
  391. package/analyzer-template/project/analyzeBaselineCommit.ts +9 -0
  392. package/analyzer-template/project/analyzeBranchCommit.ts +4 -0
  393. package/analyzer-template/project/analyzeFileEntities.ts +4 -0
  394. package/analyzer-template/project/analyzeRegularCommit.ts +9 -0
  395. package/analyzer-template/project/captureLibraryFunctionDirect.ts +29 -26
  396. package/analyzer-template/project/constructMockCode.ts +1459 -178
  397. package/analyzer-template/project/controller/startController.ts +16 -1
  398. package/analyzer-template/project/createEntitiesAndSortFiles.ts +83 -0
  399. package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
  400. package/analyzer-template/project/loadReadyToBeCaptured.ts +82 -42
  401. package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
  402. package/analyzer-template/project/orchestrateCapture/AwsCaptureTaskRunner.ts +12 -4
  403. package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +13 -9
  404. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +93 -42
  405. package/analyzer-template/project/orchestrateCapture/taskRunner.ts +4 -2
  406. package/analyzer-template/project/orchestrateCapture.ts +92 -13
  407. package/analyzer-template/project/reconcileMockDataKeys.ts +251 -3
  408. package/analyzer-template/project/runAnalysis.ts +11 -0
  409. package/analyzer-template/project/runMultiScenarioServer.ts +11 -10
  410. package/analyzer-template/project/serverOnlyModules.ts +413 -0
  411. package/analyzer-template/project/start.ts +75 -19
  412. package/analyzer-template/project/startScenarioCapture.ts +88 -41
  413. package/analyzer-template/project/writeClientLogRoute.ts +125 -0
  414. package/analyzer-template/project/writeMockDataTsx.ts +483 -73
  415. package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
  416. package/analyzer-template/project/writeScenarioComponents.ts +1538 -226
  417. package/analyzer-template/project/writeScenarioFiles.ts +26 -0
  418. package/analyzer-template/project/writeSimpleRoot.ts +56 -22
  419. package/analyzer-template/project/writeUniversalMocks.ts +32 -11
  420. package/analyzer-template/scripts/comboWorkerLoop.cjs +99 -50
  421. package/analyzer-template/scripts/defaultCmd.sh +9 -0
  422. package/analyzer-template/tsconfig.json +14 -1
  423. package/background/src/lib/local/createLocalAnalyzer.js +2 -30
  424. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  425. package/background/src/lib/local/execAsync.js +1 -1
  426. package/background/src/lib/local/execAsync.js.map +1 -1
  427. package/background/src/lib/virtualized/common/execAsync.js +1 -1
  428. package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
  429. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +7 -1
  430. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  431. package/background/src/lib/virtualized/project/analyzeBranchCommit.js +2 -1
  432. package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
  433. package/background/src/lib/virtualized/project/analyzeFileEntities.js +2 -1
  434. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  435. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +7 -1
  436. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  437. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js +3 -3
  438. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js.map +1 -1
  439. package/background/src/lib/virtualized/project/constructMockCode.js +1288 -133
  440. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  441. package/background/src/lib/virtualized/project/controller/startController.js +11 -1
  442. package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
  443. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js +73 -1
  444. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js.map +1 -1
  445. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
  446. package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
  447. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +34 -9
  448. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  449. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
  450. package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
  451. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js +2 -2
  452. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js.map +1 -1
  453. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +12 -6
  454. package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
  455. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +73 -36
  456. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  457. package/background/src/lib/virtualized/project/orchestrateCapture.js +76 -14
  458. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  459. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +211 -3
  460. package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
  461. package/background/src/lib/virtualized/project/runAnalysis.js +9 -0
  462. package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
  463. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +11 -9
  464. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  465. package/background/src/lib/virtualized/project/serverOnlyModules.js +338 -0
  466. package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -0
  467. package/background/src/lib/virtualized/project/start.js +64 -19
  468. package/background/src/lib/virtualized/project/start.js.map +1 -1
  469. package/background/src/lib/virtualized/project/startScenarioCapture.js +66 -31
  470. package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
  471. package/background/src/lib/virtualized/project/writeClientLogRoute.js +110 -0
  472. package/background/src/lib/virtualized/project/writeClientLogRoute.js.map +1 -0
  473. package/background/src/lib/virtualized/project/writeMockDataTsx.js +416 -62
  474. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  475. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
  476. package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
  477. package/background/src/lib/virtualized/project/writeScenarioComponents.js +1134 -153
  478. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  479. package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
  480. package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
  481. package/background/src/lib/virtualized/project/writeSimpleRoot.js +57 -20
  482. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  483. package/background/src/lib/virtualized/project/writeUniversalMocks.js +27 -12
  484. package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
  485. package/codeyam-cli/scripts/apply-setup.js +386 -9
  486. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  487. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js +196 -0
  488. package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js.map +1 -0
  489. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js +114 -0
  490. package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js.map +1 -0
  491. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js +149 -0
  492. package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js.map +1 -0
  493. package/codeyam-cli/src/cli.js +39 -22
  494. package/codeyam-cli/src/cli.js.map +1 -1
  495. package/codeyam-cli/src/codeyam-cli.js +18 -2
  496. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  497. package/codeyam-cli/src/commands/analyze.js +22 -10
  498. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  499. package/codeyam-cli/src/commands/baseline.js +176 -0
  500. package/codeyam-cli/src/commands/baseline.js.map +1 -0
  501. package/codeyam-cli/src/commands/debug.js +44 -18
  502. package/codeyam-cli/src/commands/debug.js.map +1 -1
  503. package/codeyam-cli/src/commands/default.js +43 -35
  504. package/codeyam-cli/src/commands/default.js.map +1 -1
  505. package/codeyam-cli/src/commands/editor.js +2607 -0
  506. package/codeyam-cli/src/commands/editor.js.map +1 -0
  507. package/codeyam-cli/src/commands/init.js +81 -260
  508. package/codeyam-cli/src/commands/init.js.map +1 -1
  509. package/codeyam-cli/src/commands/memory.js +278 -0
  510. package/codeyam-cli/src/commands/memory.js.map +1 -0
  511. package/codeyam-cli/src/commands/recapture.js +228 -0
  512. package/codeyam-cli/src/commands/recapture.js.map +1 -0
  513. package/codeyam-cli/src/commands/report.js +72 -24
  514. package/codeyam-cli/src/commands/report.js.map +1 -1
  515. package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
  516. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  517. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  518. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  519. package/codeyam-cli/src/commands/start.js +8 -12
  520. package/codeyam-cli/src/commands/start.js.map +1 -1
  521. package/codeyam-cli/src/commands/status.js +23 -1
  522. package/codeyam-cli/src/commands/status.js.map +1 -1
  523. package/codeyam-cli/src/commands/test-startup.js +3 -1
  524. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  525. package/codeyam-cli/src/commands/verify.js +14 -2
  526. package/codeyam-cli/src/commands/verify.js.map +1 -1
  527. package/codeyam-cli/src/commands/wipe.js +108 -0
  528. package/codeyam-cli/src/commands/wipe.js.map +1 -0
  529. package/codeyam-cli/src/utils/__tests__/devServerState.test.js +134 -0
  530. package/codeyam-cli/src/utils/__tests__/devServerState.test.js.map +1 -0
  531. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +127 -0
  532. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -0
  533. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +635 -0
  534. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -0
  535. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js +93 -0
  536. package/codeyam-cli/src/utils/__tests__/editorCapture.test.js.map +1 -0
  537. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js +155 -0
  538. package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js.map +1 -0
  539. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +121 -0
  540. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -0
  541. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js +294 -0
  542. package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js.map +1 -0
  543. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js +542 -0
  544. package/codeyam-cli/src/utils/__tests__/editorJournal.test.js.map +1 -0
  545. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +393 -0
  546. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -0
  547. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js +270 -0
  548. package/codeyam-cli/src/utils/__tests__/editorMockState.test.js.map +1 -0
  549. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js +217 -0
  550. package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js.map +1 -0
  551. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +266 -0
  552. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -0
  553. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js +139 -0
  554. package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js.map +1 -0
  555. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +221 -0
  556. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -0
  557. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +221 -0
  558. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -0
  559. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +213 -0
  560. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -0
  561. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +1686 -0
  562. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -0
  563. package/codeyam-cli/src/utils/__tests__/git.editor.test.js +134 -0
  564. package/codeyam-cli/src/utils/__tests__/git.editor.test.js.map +1 -0
  565. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +107 -0
  566. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -0
  567. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +185 -0
  568. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -0
  569. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js +101 -0
  570. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js.map +1 -0
  571. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js +9 -0
  572. package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js.map +1 -1
  573. package/codeyam-cli/src/utils/__tests__/project.test.js +65 -0
  574. package/codeyam-cli/src/utils/__tests__/project.test.js.map +1 -0
  575. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js +121 -0
  576. package/codeyam-cli/src/utils/__tests__/scenarioMarkers.test.js.map +1 -0
  577. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +246 -0
  578. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -0
  579. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
  580. package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
  581. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +174 -82
  582. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  583. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js +50 -0
  584. package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js.map +1 -0
  585. package/codeyam-cli/src/utils/analysisRunner.js +29 -15
  586. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  587. package/codeyam-cli/src/utils/analyzer.js +7 -0
  588. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  589. package/codeyam-cli/src/utils/backgroundServer.js +122 -25
  590. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  591. package/codeyam-cli/src/utils/buildFlags.js +4 -0
  592. package/codeyam-cli/src/utils/buildFlags.js.map +1 -0
  593. package/codeyam-cli/src/utils/database.js +91 -5
  594. package/codeyam-cli/src/utils/database.js.map +1 -1
  595. package/codeyam-cli/src/utils/devModeEvents.js +40 -0
  596. package/codeyam-cli/src/utils/devModeEvents.js.map +1 -0
  597. package/codeyam-cli/src/utils/devServerState.js +71 -0
  598. package/codeyam-cli/src/utils/devServerState.js.map +1 -0
  599. package/codeyam-cli/src/utils/editorApi.js +73 -0
  600. package/codeyam-cli/src/utils/editorApi.js.map +1 -0
  601. package/codeyam-cli/src/utils/editorAudit.js +159 -0
  602. package/codeyam-cli/src/utils/editorAudit.js.map +1 -0
  603. package/codeyam-cli/src/utils/editorCapture.js +102 -0
  604. package/codeyam-cli/src/utils/editorCapture.js.map +1 -0
  605. package/codeyam-cli/src/utils/editorDevServer.js +109 -0
  606. package/codeyam-cli/src/utils/editorDevServer.js.map +1 -0
  607. package/codeyam-cli/src/utils/editorEntityChangeStatus.js +44 -0
  608. package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -0
  609. package/codeyam-cli/src/utils/editorImageVerifier.js +155 -0
  610. package/codeyam-cli/src/utils/editorImageVerifier.js.map +1 -0
  611. package/codeyam-cli/src/utils/editorJournal.js +225 -0
  612. package/codeyam-cli/src/utils/editorJournal.js.map +1 -0
  613. package/codeyam-cli/src/utils/editorLoaderHelpers.js +81 -0
  614. package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -0
  615. package/codeyam-cli/src/utils/editorMockState.js +248 -0
  616. package/codeyam-cli/src/utils/editorMockState.js.map +1 -0
  617. package/codeyam-cli/src/utils/editorPreloadHelpers.js +135 -0
  618. package/codeyam-cli/src/utils/editorPreloadHelpers.js.map +1 -0
  619. package/codeyam-cli/src/utils/editorPreview.js +106 -0
  620. package/codeyam-cli/src/utils/editorPreview.js.map +1 -0
  621. package/codeyam-cli/src/utils/editorScenarioSwitch.js +112 -0
  622. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -0
  623. package/codeyam-cli/src/utils/editorScenarios.js +96 -0
  624. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -0
  625. package/codeyam-cli/src/utils/editorSeedAdapter.js +173 -0
  626. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -0
  627. package/codeyam-cli/src/utils/entityChangeStatus.js +337 -0
  628. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -0
  629. package/codeyam-cli/src/utils/entityChangeStatus.server.js +107 -0
  630. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -0
  631. package/codeyam-cli/src/utils/fileMetadata.js +5 -0
  632. package/codeyam-cli/src/utils/fileMetadata.js.map +1 -1
  633. package/codeyam-cli/src/utils/fileWatcher.js +25 -9
  634. package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
  635. package/codeyam-cli/src/utils/generateReport.js +253 -106
  636. package/codeyam-cli/src/utils/generateReport.js.map +1 -1
  637. package/codeyam-cli/src/utils/git.js +182 -0
  638. package/codeyam-cli/src/utils/git.js.map +1 -0
  639. package/codeyam-cli/src/utils/install-skills.js +120 -44
  640. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  641. package/codeyam-cli/src/utils/interactiveSyncWatcher.js +126 -0
  642. package/codeyam-cli/src/utils/interactiveSyncWatcher.js.map +1 -0
  643. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  644. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  645. package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
  646. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -0
  647. package/codeyam-cli/src/utils/parseRegisterArg.js +31 -0
  648. package/codeyam-cli/src/utils/parseRegisterArg.js.map +1 -0
  649. package/codeyam-cli/src/utils/pathIgnoring.js +19 -7
  650. package/codeyam-cli/src/utils/pathIgnoring.js.map +1 -1
  651. package/codeyam-cli/src/utils/progress.js +7 -0
  652. package/codeyam-cli/src/utils/progress.js.map +1 -1
  653. package/codeyam-cli/src/utils/project.js +15 -5
  654. package/codeyam-cli/src/utils/project.js.map +1 -1
  655. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js +11 -11
  656. package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js.map +1 -1
  657. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +60 -0
  658. package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
  659. package/codeyam-cli/src/utils/queue/heartbeat.js +13 -5
  660. package/codeyam-cli/src/utils/queue/heartbeat.js.map +1 -1
  661. package/codeyam-cli/src/utils/queue/job.js +319 -17
  662. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  663. package/codeyam-cli/src/utils/queue/manager.js +104 -7
  664. package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
  665. package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
  666. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  667. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  668. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  669. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  670. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +229 -0
  671. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  672. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  673. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  674. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  675. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  676. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  677. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  678. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  679. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  680. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +74 -0
  681. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  682. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +376 -0
  683. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  684. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +113 -0
  685. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  686. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  687. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  688. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  689. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  690. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  691. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  692. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  693. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  694. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  695. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  696. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  697. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  698. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  699. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  700. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js +83 -0
  701. package/codeyam-cli/src/utils/rules/__tests__/parser.test.js.map +1 -0
  702. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js +118 -0
  703. package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js.map +1 -0
  704. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js +72 -0
  705. package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js.map +1 -0
  706. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  707. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  708. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js +76 -0
  709. package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js.map +1 -0
  710. package/codeyam-cli/src/utils/rules/index.js +7 -0
  711. package/codeyam-cli/src/utils/rules/index.js.map +1 -0
  712. package/codeyam-cli/src/utils/rules/parser.js +93 -0
  713. package/codeyam-cli/src/utils/rules/parser.js.map +1 -0
  714. package/codeyam-cli/src/utils/rules/pathMatcher.js +49 -0
  715. package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -0
  716. package/codeyam-cli/src/utils/rules/rulePlacement.js +65 -0
  717. package/codeyam-cli/src/utils/rules/rulePlacement.js.map +1 -0
  718. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  719. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  720. package/codeyam-cli/src/utils/rules/sourceFiles.js +43 -0
  721. package/codeyam-cli/src/utils/rules/sourceFiles.js.map +1 -0
  722. package/codeyam-cli/src/utils/rules/staleness.js +137 -0
  723. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -0
  724. package/codeyam-cli/src/utils/scenarioMarkers.js +134 -0
  725. package/codeyam-cli/src/utils/scenarioMarkers.js.map +1 -0
  726. package/codeyam-cli/src/utils/scenariosManifest.js +112 -0
  727. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -0
  728. package/codeyam-cli/src/utils/serverState.js +64 -12
  729. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  730. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +95 -45
  731. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  732. package/codeyam-cli/src/utils/simulationGateMiddleware.js +159 -0
  733. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -0
  734. package/codeyam-cli/src/utils/syncMocksMiddleware.js +5 -24
  735. package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
  736. package/codeyam-cli/src/utils/testRunner.js +158 -0
  737. package/codeyam-cli/src/utils/testRunner.js.map +1 -0
  738. package/codeyam-cli/src/utils/transcriptPruning.js +67 -0
  739. package/codeyam-cli/src/utils/transcriptPruning.js.map +1 -0
  740. package/codeyam-cli/src/utils/versionInfo.js +67 -15
  741. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  742. package/codeyam-cli/src/utils/webappDetection.js +14 -2
  743. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  744. package/codeyam-cli/src/utils/wipe.js +128 -0
  745. package/codeyam-cli/src/utils/wipe.js.map +1 -0
  746. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
  747. package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
  748. package/codeyam-cli/src/webserver/app/lib/database.js +159 -33
  749. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  750. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  751. package/codeyam-cli/src/webserver/app/lib/git.js +396 -0
  752. package/codeyam-cli/src/webserver/app/lib/git.js.map +1 -0
  753. package/codeyam-cli/src/webserver/backgroundServer.js +171 -26
  754. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  755. package/codeyam-cli/src/webserver/bootstrap.js +60 -0
  756. package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
  757. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-DmJveP3T.js +1 -0
  758. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-C76mRRiF.js +11 -0
  759. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-kykTbcnD.js → EntityTypeBadge-g3saevPb.js} +1 -1
  760. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-CobE682z.js +41 -0
  761. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +1 -0
  762. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +25 -0
  763. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +3 -0
  764. package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-BU_OAEMP.js +6 -0
  765. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-ceAyBX-H.js +3 -0
  766. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-djPLI-WV.js +11 -0
  767. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +1 -0
  768. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-ZlRKbhrq.js +10 -0
  769. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +34 -0
  770. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-C06nsHKY.js → TruncatedFilePath-C8OKAR5x.js} +1 -1
  771. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-oAf2Kqsf.js +1 -0
  772. package/codeyam-cli/src/webserver/build/client/assets/_index-C96V0n15.js +11 -0
  773. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-BpKzcsJz.js +27 -0
  774. package/codeyam-cli/src/webserver/build/client/assets/addon-canvas-DpzMmAy5.js +1 -0
  775. package/codeyam-cli/src/webserver/build/client/assets/addon-fit-YJmn1quW.js +12 -0
  776. package/codeyam-cli/src/webserver/build/client/assets/addon-web-links-Duc5hnl7.js +1 -0
  777. package/codeyam-cli/src/webserver/build/client/assets/addon-webgl-DI8QOUvO.js +58 -0
  778. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-D9hemwl6.js +22 -0
  779. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  780. package/codeyam-cli/src/webserver/build/client/assets/api.dev-mode-events-l0sNRNKZ.js +1 -0
  781. package/codeyam-cli/src/webserver/build/client/assets/api.editor-audit-l0sNRNKZ.js +1 -0
  782. package/codeyam-cli/src/webserver/build/client/assets/api.editor-capture-scenario-l0sNRNKZ.js +1 -0
  783. package/codeyam-cli/src/webserver/build/client/assets/api.editor-client-errors-l0sNRNKZ.js +1 -0
  784. package/codeyam-cli/src/webserver/build/client/assets/api.editor-commit-l0sNRNKZ.js +1 -0
  785. package/codeyam-cli/src/webserver/build/client/assets/api.editor-dev-server-l0sNRNKZ.js +1 -0
  786. package/codeyam-cli/src/webserver/build/client/assets/api.editor-entity-status-l0sNRNKZ.js +1 -0
  787. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-diff-l0sNRNKZ.js +1 -0
  788. package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-l0sNRNKZ.js +1 -0
  789. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-entry-l0sNRNKZ.js +1 -0
  790. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-image._-l0sNRNKZ.js +1 -0
  791. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-l0sNRNKZ.js +1 -0
  792. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-screenshot-l0sNRNKZ.js +1 -0
  793. package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-update-l0sNRNKZ.js +1 -0
  794. package/codeyam-cli/src/webserver/build/client/assets/api.editor-load-commit-l0sNRNKZ.js +1 -0
  795. package/codeyam-cli/src/webserver/build/client/assets/api.editor-project-info-l0sNRNKZ.js +1 -0
  796. package/codeyam-cli/src/webserver/build/client/assets/api.editor-refresh-l0sNRNKZ.js +1 -0
  797. package/codeyam-cli/src/webserver/build/client/assets/api.editor-register-scenario-l0sNRNKZ.js +1 -0
  798. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-data-l0sNRNKZ.js +1 -0
  799. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-image._-l0sNRNKZ.js +1 -0
  800. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenarios-l0sNRNKZ.js +1 -0
  801. package/codeyam-cli/src/webserver/build/client/assets/api.editor-switch-scenario-l0sNRNKZ.js +1 -0
  802. package/codeyam-cli/src/webserver/build/client/assets/api.editor-test-results-l0sNRNKZ.js +1 -0
  803. package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
  804. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  805. package/codeyam-cli/src/webserver/build/client/assets/api.memory-profile-l0sNRNKZ.js +1 -0
  806. package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
  807. package/codeyam-cli/src/webserver/build/client/assets/api.rule-path-l0sNRNKZ.js +1 -0
  808. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  809. package/codeyam-cli/src/webserver/build/client/assets/book-open-D_nMCFmP.js +6 -0
  810. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-BH2h1Ea2.js +6 -0
  811. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +51 -0
  812. package/codeyam-cli/src/webserver/build/client/assets/circle-check-DyIKORY6.js +6 -0
  813. package/codeyam-cli/src/webserver/build/client/assets/copy-NDbZjXao.js +11 -0
  814. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CMT1jU2q.js +21 -0
  815. package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-C1gnJVOL.svg → cy-logo-cli-CCKUIm0S.svg} +2 -2
  816. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
  817. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-CltMNppm.js +1 -0
  818. package/codeyam-cli/src/webserver/build/client/assets/editor-DTEBHY7Z.js +10 -0
  819. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-B7ztwLut.js +41 -0
  820. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-CYqBrC9s.js → entity._sha._-DItJnD8s.js} +22 -15
  821. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-D5rYBT5x.js +6 -0
  822. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-CF164ouH.js +6 -0
  823. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +6 -0
  824. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BMvVHNXU.js +5 -0
  825. package/codeyam-cli/src/webserver/build/client/assets/entry.client-DTvKq3TY.js +29 -0
  826. package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
  827. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +1 -0
  828. package/codeyam-cli/src/webserver/build/client/assets/files-DO4CZ16O.js +1 -0
  829. package/codeyam-cli/src/webserver/build/client/assets/git-CdN8sCqs.js +1 -0
  830. package/codeyam-cli/src/webserver/build/client/assets/globals-JMY99HpD.css +1 -0
  831. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
  832. package/codeyam-cli/src/webserver/build/client/assets/index-10oVnAAH.js +9 -0
  833. package/codeyam-cli/src/webserver/build/client/assets/index-BcvgDzbZ.js +3 -0
  834. package/codeyam-cli/src/webserver/build/client/assets/index-yHOVb4rc.js +15 -0
  835. package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +1 -0
  836. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-BAXYRVEO.js +6 -0
  837. package/codeyam-cli/src/webserver/build/client/assets/manifest-7aab51c4.js +1 -0
  838. package/codeyam-cli/src/webserver/build/client/assets/memory-Dg0mvYrI.js +96 -0
  839. package/codeyam-cli/src/webserver/build/client/assets/pause-DTAcYxBt.js +11 -0
  840. package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
  841. package/codeyam-cli/src/webserver/build/client/assets/root-FRztnN-P.js +67 -0
  842. package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
  843. package/codeyam-cli/src/webserver/build/client/assets/search-fKo7v0Zo.js +6 -0
  844. package/codeyam-cli/src/webserver/build/client/assets/settings-DfuTtcJP.js +1 -0
  845. package/codeyam-cli/src/webserver/build/client/assets/simulations-B3aOzpCZ.js +1 -0
  846. package/codeyam-cli/src/webserver/build/client/assets/terminal-BG4heKCG.js +11 -0
  847. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-DtSmdtM4.js +6 -0
  848. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-CrAK28Bc.js +1 -0
  849. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C14nCb1q.js +2 -0
  850. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +1 -0
  851. package/codeyam-cli/src/webserver/build/client/assets/{useToast-Bbf4Hokd.js → useToast-9FIWuYfK.js} +1 -1
  852. package/codeyam-cli/src/webserver/build/client/assets/xterm-BqvuqXEL.js +27 -0
  853. package/codeyam-cli/src/webserver/build/server/assets/index-Cz751Dm2.js +1 -0
  854. package/codeyam-cli/src/webserver/build/server/assets/server-build-DSylnYVM.js +367 -0
  855. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  856. package/codeyam-cli/src/webserver/build-info.json +5 -5
  857. package/codeyam-cli/src/webserver/devServer.js +40 -8
  858. package/codeyam-cli/src/webserver/devServer.js.map +1 -1
  859. package/codeyam-cli/src/webserver/editorProxy.js +431 -0
  860. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -0
  861. package/codeyam-cli/src/webserver/scripts/codeyam-preload.mjs +414 -0
  862. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +230 -0
  863. package/codeyam-cli/src/webserver/server.js +293 -26
  864. package/codeyam-cli/src/webserver/server.js.map +1 -1
  865. package/codeyam-cli/src/webserver/terminalServer.js +706 -0
  866. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -0
  867. package/codeyam-cli/templates/codeyam-editor-claude.md +68 -0
  868. package/codeyam-cli/templates/codeyam-memory-hook.sh +199 -0
  869. package/codeyam-cli/templates/commands/codeyam-diagnose.md +481 -0
  870. package/codeyam-cli/templates/editor-step-hook.py +208 -0
  871. package/codeyam-cli/templates/hooks/staleness-check.sh +43 -0
  872. package/codeyam-cli/templates/isolation-route/next-app.tsx.template +80 -0
  873. package/codeyam-cli/templates/isolation-route/next-pages.tsx.template +79 -0
  874. package/codeyam-cli/templates/isolation-route/vite-react.tsx.template +78 -0
  875. package/codeyam-cli/templates/msw/browser-setup.ts.template +47 -0
  876. package/codeyam-cli/templates/msw/handler-router.ts.template +47 -0
  877. package/codeyam-cli/templates/msw/server-setup.ts.template +52 -0
  878. package/codeyam-cli/templates/nextjs-prisma-sqlite/PRISMA_SETUP.md +84 -0
  879. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/api/todos/route.ts +17 -0
  880. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/codeyam-isolate/layout.tsx +12 -0
  881. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/globals.css +26 -0
  882. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/layout.tsx +34 -0
  883. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/lib/prisma.ts +19 -0
  884. package/codeyam-cli/templates/nextjs-prisma-sqlite/app/page.tsx +10 -0
  885. package/codeyam-cli/templates/nextjs-prisma-sqlite/eslint.config.mjs +11 -0
  886. package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +64 -0
  887. package/codeyam-cli/templates/nextjs-prisma-sqlite/next.config.ts +14 -0
  888. package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +38 -0
  889. package/codeyam-cli/templates/nextjs-prisma-sqlite/postcss.config.mjs +7 -0
  890. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/schema.prisma +27 -0
  891. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/seed.ts +37 -0
  892. package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma.config.ts +12 -0
  893. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +89 -0
  894. package/codeyam-cli/templates/nextjs-prisma-sqlite/tsconfig.json +34 -0
  895. package/codeyam-cli/templates/nextjs-prisma-sqlite/vitest.config.ts +13 -0
  896. package/codeyam-cli/templates/prompts/conversation-guidance.txt +44 -0
  897. package/codeyam-cli/templates/prompts/conversation-prompt.txt +28 -0
  898. package/codeyam-cli/templates/prompts/interruption-prompt.txt +31 -0
  899. package/codeyam-cli/templates/prompts/stale-rules-prompt.txt +24 -0
  900. package/codeyam-cli/templates/rule-notification-hook.py +83 -0
  901. package/codeyam-cli/templates/rule-reflection-hook.py +647 -0
  902. package/codeyam-cli/templates/rules-instructions.md +78 -0
  903. package/codeyam-cli/templates/{codeyam-debug-skill.md → skills/codeyam-debug/SKILL.md} +48 -4
  904. package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +237 -0
  905. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +136 -0
  906. package/codeyam-cli/templates/skills/codeyam-memory/SKILL.md +611 -0
  907. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/deprecated-prompt.md +100 -0
  908. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/detect-deprecated-patterns.mjs +139 -0
  909. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/find-exports.mjs +52 -0
  910. package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/misleading-api-prompt.md +117 -0
  911. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/read-json-field.mjs +61 -0
  912. package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/ripgrep-fallback.mjs +155 -0
  913. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/analyze-prompt.md +46 -0
  914. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/cleanup.mjs +13 -0
  915. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/filter-session.mjs +95 -0
  916. package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/preprocess.mjs +160 -0
  917. package/codeyam-cli/templates/skills/codeyam-new-rule/SKILL.md +11 -0
  918. package/codeyam-cli/templates/{codeyam-setup-skill.md → skills/codeyam-setup/SKILL.md} +151 -4
  919. package/codeyam-cli/templates/{codeyam-sim-skill.md → skills/codeyam-sim/SKILL.md} +1 -1
  920. package/codeyam-cli/templates/{codeyam-test-skill.md → skills/codeyam-test/SKILL.md} +1 -1
  921. package/codeyam-cli/templates/{codeyam-verify-skill.md → skills/codeyam-verify/SKILL.md} +1 -1
  922. package/package.json +39 -29
  923. package/packages/ai/index.js +8 -6
  924. package/packages/ai/index.js.map +1 -1
  925. package/packages/ai/src/lib/analyzeScope.js +181 -13
  926. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  927. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
  928. package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
  929. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +176 -13
  930. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  931. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
  932. package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
  933. package/packages/ai/src/lib/astScopes/methodSemantics.js +138 -23
  934. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  935. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  936. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  937. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
  938. package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
  939. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +23 -0
  940. package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
  941. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
  942. package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
  943. package/packages/ai/src/lib/astScopes/processExpression.js +1235 -104
  944. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  945. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  946. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  947. package/packages/ai/src/lib/checkAllAttributes.js +24 -9
  948. package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
  949. package/packages/ai/src/lib/completionCall.js +188 -38
  950. package/packages/ai/src/lib/completionCall.js.map +1 -1
  951. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +2192 -224
  952. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  953. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +19 -4
  954. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  955. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
  956. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
  957. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +180 -56
  958. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
  959. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +13 -3
  960. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -1
  961. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +6 -4
  962. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -1
  963. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +66 -2
  964. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  965. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +139 -13
  966. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  967. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  968. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  969. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js +54 -0
  970. package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js.map +1 -0
  971. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +142 -12
  972. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  973. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
  974. package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
  975. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  976. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  977. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  978. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  979. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +371 -73
  980. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  981. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
  982. package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
  983. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js +34 -0
  984. package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js.map +1 -0
  985. package/packages/ai/src/lib/dataStructureChunking.js +130 -0
  986. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
  987. package/packages/ai/src/lib/deepEqual.js +32 -0
  988. package/packages/ai/src/lib/deepEqual.js.map +1 -0
  989. package/packages/ai/src/lib/e2eDataTracking.js +241 -0
  990. package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
  991. package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
  992. package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
  993. package/packages/ai/src/lib/generateChangesEntityScenarioData.js +62 -5
  994. package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
  995. package/packages/ai/src/lib/generateChangesEntityScenarios.js +81 -90
  996. package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
  997. package/packages/ai/src/lib/generateEntityDataStructure.js +50 -1
  998. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  999. package/packages/ai/src/lib/generateEntityScenarioData.js +1182 -91
  1000. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  1001. package/packages/ai/src/lib/generateEntityScenarios.js +193 -83
  1002. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  1003. package/packages/ai/src/lib/generateExecutionFlows.js +484 -0
  1004. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
  1005. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
  1006. package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
  1007. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1807 -0
  1008. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
  1009. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
  1010. package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
  1011. package/packages/ai/src/lib/getConditionalUsagesFromCode.js +84 -14
  1012. package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
  1013. package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
  1014. package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
  1015. package/packages/ai/src/lib/isolateScopes.js +270 -7
  1016. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  1017. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  1018. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  1019. package/packages/ai/src/lib/mergeStatements.js +88 -46
  1020. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  1021. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  1022. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  1023. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +16 -4
  1024. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  1025. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +1 -1
  1026. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
  1027. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +21 -64
  1028. package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
  1029. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
  1030. package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
  1031. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +83 -6
  1032. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  1033. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +10 -34
  1034. package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
  1035. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
  1036. package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
  1037. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
  1038. package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
  1039. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
  1040. package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
  1041. package/packages/ai/src/lib/resolvePathToControllable.js +677 -0
  1042. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
  1043. package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
  1044. package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
  1045. package/packages/ai/src/lib/worker/SerializableDataStructure.js +29 -0
  1046. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  1047. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +98 -1
  1048. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  1049. package/packages/analyze/index.js +1 -0
  1050. package/packages/analyze/index.js.map +1 -1
  1051. package/packages/analyze/src/lib/FileAnalyzer.js +75 -36
  1052. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  1053. package/packages/analyze/src/lib/ProjectAnalyzer.js +109 -30
  1054. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  1055. package/packages/analyze/src/lib/analysisContext.js +30 -5
  1056. package/packages/analyze/src/lib/analysisContext.js.map +1 -1
  1057. package/packages/analyze/src/lib/asts/index.js +4 -2
  1058. package/packages/analyze/src/lib/asts/index.js.map +1 -1
  1059. package/packages/analyze/src/lib/asts/nodes/getNodeType.js +1 -0
  1060. package/packages/analyze/src/lib/asts/nodes/getNodeType.js.map +1 -1
  1061. package/packages/analyze/src/lib/asts/nodes/index.js +1 -0
  1062. package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
  1063. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
  1064. package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
  1065. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  1066. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  1067. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  1068. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  1069. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +6 -0
  1070. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  1071. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  1072. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  1073. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  1074. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  1075. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  1076. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  1077. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +428 -123
  1078. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  1079. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +49 -1
  1080. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  1081. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +11 -0
  1082. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  1083. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +2 -1
  1084. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  1085. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -10
  1086. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  1087. package/packages/analyze/src/lib/files/analyzeChange.js +21 -11
  1088. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  1089. package/packages/analyze/src/lib/files/analyzeEntity.js +9 -8
  1090. package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
  1091. package/packages/analyze/src/lib/files/analyzeInitial.js +9 -10
  1092. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  1093. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +3 -2
  1094. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  1095. package/packages/analyze/src/lib/files/enums/steps.js +1 -1
  1096. package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
  1097. package/packages/analyze/src/lib/files/getImportedExports.js +17 -8
  1098. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  1099. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +907 -0
  1100. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  1101. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +255 -0
  1102. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
  1103. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
  1104. package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
  1105. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +550 -62
  1106. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  1107. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
  1108. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
  1109. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
  1110. package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
  1111. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +469 -85
  1112. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  1113. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +104 -0
  1114. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
  1115. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +56 -69
  1116. package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
  1117. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +4 -8
  1118. package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
  1119. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +891 -143
  1120. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  1121. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +46 -9
  1122. package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
  1123. package/packages/analyze/src/lib/files/setImportedExports.js +2 -1
  1124. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  1125. package/packages/analyze/src/lib/index.js +1 -0
  1126. package/packages/analyze/src/lib/index.js.map +1 -1
  1127. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  1128. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  1129. package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
  1130. package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
  1131. package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
  1132. package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
  1133. package/packages/database/index.js +1 -0
  1134. package/packages/database/index.js.map +1 -1
  1135. package/packages/database/src/lib/analysisBranchToDb.js +1 -1
  1136. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
  1137. package/packages/database/src/lib/analysisToDb.js +1 -1
  1138. package/packages/database/src/lib/analysisToDb.js.map +1 -1
  1139. package/packages/database/src/lib/branchToDb.js +1 -1
  1140. package/packages/database/src/lib/branchToDb.js.map +1 -1
  1141. package/packages/database/src/lib/commitBranchToDb.js +1 -1
  1142. package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
  1143. package/packages/database/src/lib/commitToDb.js +1 -1
  1144. package/packages/database/src/lib/commitToDb.js.map +1 -1
  1145. package/packages/database/src/lib/fileToDb.js +1 -1
  1146. package/packages/database/src/lib/fileToDb.js.map +1 -1
  1147. package/packages/database/src/lib/kysely/db.js +18 -3
  1148. package/packages/database/src/lib/kysely/db.js.map +1 -1
  1149. package/packages/database/src/lib/kysely/tables/commitsTable.js +3 -0
  1150. package/packages/database/src/lib/kysely/tables/commitsTable.js.map +1 -1
  1151. package/packages/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
  1152. package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
  1153. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +51 -0
  1154. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
  1155. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  1156. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  1157. package/packages/database/src/lib/loadAnalyses.js +45 -2
  1158. package/packages/database/src/lib/loadAnalyses.js.map +1 -1
  1159. package/packages/database/src/lib/loadAnalysis.js +8 -0
  1160. package/packages/database/src/lib/loadAnalysis.js.map +1 -1
  1161. package/packages/database/src/lib/loadBranch.js +11 -1
  1162. package/packages/database/src/lib/loadBranch.js.map +1 -1
  1163. package/packages/database/src/lib/loadCommit.js +7 -0
  1164. package/packages/database/src/lib/loadCommit.js.map +1 -1
  1165. package/packages/database/src/lib/loadCommits.js +45 -14
  1166. package/packages/database/src/lib/loadCommits.js.map +1 -1
  1167. package/packages/database/src/lib/loadEntities.js +23 -4
  1168. package/packages/database/src/lib/loadEntities.js.map +1 -1
  1169. package/packages/database/src/lib/loadEntityBranches.js +9 -0
  1170. package/packages/database/src/lib/loadEntityBranches.js.map +1 -1
  1171. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +20 -5
  1172. package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
  1173. package/packages/database/src/lib/projectToDb.js +1 -1
  1174. package/packages/database/src/lib/projectToDb.js.map +1 -1
  1175. package/packages/database/src/lib/saveFiles.js +1 -1
  1176. package/packages/database/src/lib/saveFiles.js.map +1 -1
  1177. package/packages/database/src/lib/scenarioToDb.js +1 -1
  1178. package/packages/database/src/lib/scenarioToDb.js.map +1 -1
  1179. package/packages/database/src/lib/updateCommitMetadata.js +100 -88
  1180. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -1
  1181. package/packages/database/src/lib/updateFreshAnalysisStatus.js +41 -30
  1182. package/packages/database/src/lib/updateFreshAnalysisStatus.js.map +1 -1
  1183. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +68 -57
  1184. package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -1
  1185. package/packages/generate/index.js +3 -0
  1186. package/packages/generate/index.js.map +1 -1
  1187. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
  1188. package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
  1189. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +217 -0
  1190. package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
  1191. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
  1192. package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
  1193. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +41 -9
  1194. package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
  1195. package/packages/generate/src/lib/deepMerge.js +27 -1
  1196. package/packages/generate/src/lib/deepMerge.js.map +1 -1
  1197. package/packages/generate/src/lib/directExecutionScript.js +10 -1
  1198. package/packages/generate/src/lib/directExecutionScript.js.map +1 -1
  1199. package/packages/generate/src/lib/getComponentScenarioPath.js +7 -3
  1200. package/packages/generate/src/lib/getComponentScenarioPath.js.map +1 -1
  1201. package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
  1202. package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
  1203. package/packages/github/src/lib/loadOrCreateCommit.js +10 -0
  1204. package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
  1205. package/packages/github/src/lib/syncPrimaryBranch.js +3 -0
  1206. package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
  1207. package/packages/process/index.js +3 -0
  1208. package/packages/process/index.js.map +1 -0
  1209. package/packages/process/src/GlobalProcessManager.js.map +1 -0
  1210. package/{background/src/lib/process → packages/process/src}/ProcessManager.js +1 -1
  1211. package/packages/process/src/ProcessManager.js.map +1 -0
  1212. package/packages/process/src/index.js.map +1 -0
  1213. package/packages/process/src/managedExecAsync.js.map +1 -0
  1214. package/packages/types/index.js.map +1 -1
  1215. package/packages/utils/src/lib/applyUniversalMocks.js +26 -2
  1216. package/packages/utils/src/lib/applyUniversalMocks.js.map +1 -1
  1217. package/packages/utils/src/lib/fs/rsyncCopy.js +98 -3
  1218. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  1219. package/packages/utils/src/lib/lightweightEntityExtractor.js +25 -0
  1220. package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
  1221. package/packages/utils/src/lib/safeFileName.js +29 -3
  1222. package/packages/utils/src/lib/safeFileName.js.map +1 -1
  1223. package/scripts/npm-post-install.cjs +34 -0
  1224. package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
  1225. package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -197
  1226. package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -271
  1227. package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -294
  1228. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
  1229. package/analyzer-template/packages/ai/src/lib/transformMockDataToMatchSchema.ts +0 -156
  1230. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -115
  1231. package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
  1232. package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
  1233. package/analyzer-template/process/README.md +0 -507
  1234. package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
  1235. package/background/src/lib/process/ProcessManager.js.map +0 -1
  1236. package/background/src/lib/process/index.js.map +0 -1
  1237. package/background/src/lib/process/managedExecAsync.js.map +0 -1
  1238. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
  1239. package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
  1240. package/codeyam-cli/src/commands/detect-universal-mocks.js +0 -118
  1241. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +0 -1
  1242. package/codeyam-cli/src/commands/list.js +0 -31
  1243. package/codeyam-cli/src/commands/list.js.map +0 -1
  1244. package/codeyam-cli/src/commands/webapp-info.js +0 -146
  1245. package/codeyam-cli/src/commands/webapp-info.js.map +0 -1
  1246. package/codeyam-cli/src/utils/universal-mocks.js +0 -152
  1247. package/codeyam-cli/src/utils/universal-mocks.js.map +0 -1
  1248. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-D4htqD-x.js +0 -1
  1249. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-Catz6XEN.js +0 -1
  1250. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-TlHocYno.js +0 -26
  1251. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CVMmGuIc.js +0 -3
  1252. package/codeyam-cli/src/webserver/build/client/assets/LogViewer-JkfQ-VaI.js +0 -3
  1253. package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-CVZ0H4BL.js +0 -1
  1254. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BrMAP1nP.js +0 -1
  1255. package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-CJhE4cCv.js +0 -5
  1256. package/codeyam-cli/src/webserver/build/client/assets/_index-faVIcr_i.js +0 -1
  1257. package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-CLMa2sgx.js +0 -7
  1258. package/codeyam-cli/src/webserver/build/client/assets/chevron-down-DwYjrK_h.js +0 -1
  1259. package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-CgXbbZRx.js +0 -26
  1260. package/codeyam-cli/src/webserver/build/client/assets/circle-check-B2oHQ-zo.js +0 -1
  1261. package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-BBYuR56H.js +0 -1
  1262. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-CT0Q5lVu.js +0 -1
  1263. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-Bj5GHkhb.js +0 -1
  1264. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-eW5z9AyZ.js +0 -5
  1265. package/codeyam-cli/src/webserver/build/client/assets/entry.client-B9tSboXM.js +0 -5
  1266. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-CmO-EZAB.js +0 -1
  1267. package/codeyam-cli/src/webserver/build/client/assets/files-DLinnTOx.js +0 -1
  1268. package/codeyam-cli/src/webserver/build/client/assets/git-CIxwBQvb.js +0 -12
  1269. package/codeyam-cli/src/webserver/build/client/assets/globals-xPz593l2.css +0 -1
  1270. package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-XQCGvadH.js +0 -5
  1271. package/codeyam-cli/src/webserver/build/client/assets/index-_LjBsTxX.js +0 -8
  1272. package/codeyam-cli/src/webserver/build/client/assets/loader-circle-D_EGChhq.js +0 -1
  1273. package/codeyam-cli/src/webserver/build/client/assets/manifest-ca438c41.js +0 -1
  1274. package/codeyam-cli/src/webserver/build/client/assets/root-CHHYHuzL.js +0 -16
  1275. package/codeyam-cli/src/webserver/build/client/assets/search-DY8yoDpH.js +0 -1
  1276. package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
  1277. package/codeyam-cli/src/webserver/build/client/assets/settings-BT6wVHd5.js +0 -1
  1278. package/codeyam-cli/src/webserver/build/client/assets/simulations-gv3H7JV7.js +0 -1
  1279. package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-BthANBVv.js +0 -1
  1280. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-Blr5oZDE.js +0 -2
  1281. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-CANr3QJ5.js +0 -1
  1282. package/codeyam-cli/src/webserver/build/server/assets/index-BtBPtyHx.js +0 -1
  1283. package/codeyam-cli/src/webserver/build/server/assets/server-build-N2cTnejq.js +0 -166
  1284. package/codeyam-cli/templates/codeyam-stop-hook.sh +0 -284
  1285. package/codeyam-cli/templates/debug-command.md +0 -141
  1286. package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
  1287. package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
  1288. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -136
  1289. package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
  1290. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -220
  1291. package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
  1292. package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -241
  1293. package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
  1294. package/packages/ai/src/lib/isFrontend.js +0 -5
  1295. package/packages/ai/src/lib/isFrontend.js.map +0 -1
  1296. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
  1297. package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
  1298. package/packages/ai/src/lib/transformMockDataToMatchSchema.js +0 -124
  1299. package/packages/ai/src/lib/transformMockDataToMatchSchema.js.map +0 -1
  1300. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -72
  1301. package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
  1302. package/scripts/finalize-analyzer.cjs +0 -79
  1303. /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
  1304. /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
  1305. /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
  1306. /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
  1307. /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
  1308. /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
  1309. /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
  1310. /package/{background/src/lib/process → packages/process/src}/managedExecAsync.js +0 -0
@@ -0,0 +1,11 @@
1
+ import{c as e}from"./createLucideIcon-CMT1jU2q.js";/**
2
+ * @license lucide-react v0.556.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const t=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]],c=e("file-code",t);/**
7
+ * @license lucide-react v0.556.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const a=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],h=e("pause",a);export{c as F,h as P};
@@ -0,0 +1 @@
1
+ const v="modulepreload",E=function(i){return"/"+i},d={},y=function(f,l,p){let c=Promise.resolve();if(l&&l.length>0){let n=function(t){return Promise.all(t.map(o=>Promise.resolve(o).then(s=>({status:"fulfilled",value:s}),s=>({status:"rejected",reason:s}))))};document.getElementsByTagName("link");const e=document.querySelector("meta[property=csp-nonce]"),u=(e==null?void 0:e.nonce)||(e==null?void 0:e.getAttribute("nonce"));c=n(l.map(t=>{if(t=E(t),t in d)return;d[t]=!0;const o=t.endsWith(".css"),s=o?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${t}"]${s}`))return;const r=document.createElement("link");if(r.rel=o?"stylesheet":v,o||(r.as="script"),r.crossOrigin="",r.href=t,u&&r.setAttribute("nonce",u),document.head.appendChild(r),o)return new Promise((m,h)=>{r.addEventListener("load",m),r.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${t}`)))})}))}function a(n){const e=new Event("vite:preloadError",{cancelable:!0});if(e.payload=n,window.dispatchEvent(e),!e.defaultPrevented)throw n}return c.then(n=>{for(const e of n||[])e.status==="rejected"&&a(e.reason);return f().catch(a)})};export{y as _};
@@ -0,0 +1,67 @@
1
+ import{r as o,j as e,c as se,a as ne,d as oe,L as q,w as re,M as le,G as ce,S as de,H as me,u as he,f as xe,O as pe}from"./chunk-JZWAC4HX-C4pqxYJB.js";import{_ as fe}from"./preload-helper-ckwbz45p.js";import{c as ue}from"./cy-logo-cli-DcX-ZS3p.js";import{B as ye,R as ve,S as ge}from"./ReportIssueModal-djPLI-WV.js";import{a as je,R as ke}from"./useReportContext-O-jkvSPx.js";import{L as G}from"./loader-circle-BAXYRVEO.js";import{c as z}from"./createLucideIcon-CMT1jU2q.js";import{B as be}from"./book-open-D_nMCFmP.js";import{T as Ce,u as we}from"./useToast-9FIWuYfK.js";import{u as Ne}from"./useLastLogLine-C14nCb1q.js";import{L as Se}from"./LogViewer-ceAyBX-H.js";import{E as Le}from"./EntityTypeIcon-CobE682z.js";import{T as Ae}from"./TruncatedFilePath-C8OKAR5x.js";import{C as ze}from"./chevron-down-BH2h1Ea2.js";import{C as Me}from"./circle-check-DyIKORY6.js";import{C as Te}from"./CopyButton-DmJveP3T.js";import"./triangle-alert-DtSmdtM4.js";import"./copy-NDbZjXao.js";function Ee({id:t,selected:a,onClick:n,icon:c,name:r}){const[d,i]=o.useState(!1);o.useEffect(()=>{i(!0)},[]);const w=o.useCallback(()=>{n==null||n(t)},[n,t]);return e.jsxs("button",{className:`
2
+ w-full px-1.5 py-2 cursor-pointer focus:outline-none
3
+ flex flex-col items-center justify-center gap-1 transition-colors
4
+ ${a?"text-[#CBF3FA]":"text-[#568B94] hover:text-[#CBF3FA]"}
5
+ `,onClick:w,children:[e.jsx("div",{className:`${a?"bg-[#CBF3FA] text-[#022A35]":""} w-9 h-9 rounded-lg flex items-center justify-center transition-colors`,children:d&&c}),e.jsx("span",{className:`text-[10px] font-normal text-center leading-tight ${a?"text-[#CBF3FA]":""}`,style:a?{color:"#CBF3FA !important"}:void 0,children:r})]})}/**
6
+ * @license lucide-react v0.556.0 - ISC
7
+ *
8
+ * This source code is licensed under the ISC license.
9
+ * See the LICENSE file in the root directory of this source tree.
10
+ */const _e=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],J=z("activity",_e);/**
11
+ * @license lucide-react v0.556.0 - ISC
12
+ *
13
+ * This source code is licensed under the ISC license.
14
+ * See the LICENSE file in the root directory of this source tree.
15
+ */const De=[["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Be=z("circle-equal",De);/**
16
+ * @license lucide-react v0.556.0 - ISC
17
+ *
18
+ * This source code is licensed under the ISC license.
19
+ * See the LICENSE file in the root directory of this source tree.
20
+ */const Fe=[["path",{d:"M15.536 11.293a1 1 0 0 0 0 1.414l2.376 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z",key:"1uwlt4"}],["path",{d:"M2.297 11.293a1 1 0 0 0 0 1.414l2.377 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414L6.088 8.916a1 1 0 0 0-1.414 0z",key:"10291m"}],["path",{d:"M8.916 17.912a1 1 0 0 0 0 1.415l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.415l-2.377-2.376a1 1 0 0 0-1.414 0z",key:"1tqoq1"}],["path",{d:"M8.916 4.674a1 1 0 0 0 0 1.414l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z",key:"1x6lto"}]],Ie=z("component",Fe);/**
21
+ * @license lucide-react v0.556.0 - ISC
22
+ *
23
+ * This source code is licensed under the ISC license.
24
+ * See the LICENSE file in the root directory of this source tree.
25
+ */const We=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],$e=z("file",We);/**
26
+ * @license lucide-react v0.556.0 - ISC
27
+ *
28
+ * This source code is licensed under the ISC license.
29
+ * See the LICENSE file in the root directory of this source tree.
30
+ */const Pe=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],Ve=z("flask-conical",Pe);/**
31
+ * @license lucide-react v0.556.0 - ISC
32
+ *
33
+ * This source code is licensed under the ISC license.
34
+ * See the LICENSE file in the root directory of this source tree.
35
+ */const He=[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]],ee=z("git-commit-horizontal",He);/**
36
+ * @license lucide-react v0.556.0 - ISC
37
+ *
38
+ * This source code is licensed under the ISC license.
39
+ * See the LICENSE file in the root directory of this source tree.
40
+ */const Re=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]],Oe=z("house",Re);/**
41
+ * @license lucide-react v0.556.0 - ISC
42
+ *
43
+ * This source code is licensed under the ISC license.
44
+ * See the LICENSE file in the root directory of this source tree.
45
+ */const qe=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]],Je=z("panels-top-left",qe);/**
46
+ * @license lucide-react v0.556.0 - ISC
47
+ *
48
+ * This source code is licensed under the ISC license.
49
+ * See the LICENSE file in the root directory of this source tree.
50
+ */const Ue=[["path",{d:"M13 7 8.7 2.7a2.41 2.41 0 0 0-3.4 0L2.7 5.3a2.41 2.41 0 0 0 0 3.4L7 13",key:"orapub"}],["path",{d:"m8 6 2-2",key:"115y1s"}],["path",{d:"m18 16 2-2",key:"ee94s4"}],["path",{d:"m17 11 4.3 4.3c.94.94.94 2.46 0 3.4l-2.6 2.6c-.94.94-2.46.94-3.4 0L11 17",key:"cfq27r"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],Ye=z("pencil-ruler",Ue);/**
51
+ * @license lucide-react v0.556.0 - ISC
52
+ *
53
+ * This source code is licensed under the ISC license.
54
+ * See the LICENSE file in the root directory of this source tree.
55
+ */const Ge=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Qe=z("refresh-cw",Ge);function Xe({labs:t,isAdmin:a,editorMode:n}){var y;const c=se(),r=ne(),[d,i]=o.useState(),[w,M]=o.useState(!1),[g,m]=o.useState(!1),[_,N]=o.useState(null),j=oe();o.useEffect(()=>{j.state==="idle"&&!j.data&&j.load("/api/generate-report")},[j]);const V=((y=j.data)==null?void 0:y.defaultEmail)||"",h={width:"20px",height:"20px",strokeWidth:1.5},T=(t==null?void 0:t.simulations)??!1,B=[{id:"editor",icon:e.jsx(Ye,{style:h}),link:"/editor",name:"Editor",hidden:!n},{id:"dashboard",icon:e.jsx(Oe,{style:h}),link:"/",name:"Dashboard",hidden:!T},{id:"simulations",icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:h,children:[e.jsx("path",{d:"M9 12.75V15.75",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M6 15.75H12",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M6.75 12.7498L11.325 8.17483C11.6067 7.89873 11.9858 7.7447 12.3803 7.7461C12.7747 7.74751 13.1528 7.90423 13.4325 8.18233L16.5 11.2498",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M6 8.25C6.82843 8.25 7.5 7.57843 7.5 6.75C7.5 5.92157 6.82843 5.25 6 5.25C5.17157 5.25 4.5 5.92157 4.5 6.75C4.5 7.57843 5.17157 8.25 6 8.25Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M15 2.25H3C2.17157 2.25 1.5 2.92157 1.5 3.75V11.25C1.5 12.0784 2.17157 12.75 3 12.75H15C15.8284 12.75 16.5 12.0784 16.5 11.25V3.75C16.5 2.92157 15.8284 2.25 15 2.25Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),link:"/simulations",name:"Simulations",hidden:!T},{id:"git",icon:e.jsx(ee,{style:h}),link:"/git",name:"Git",hidden:!T},{id:"files",icon:e.jsx($e,{style:h}),link:"/files",name:"Files",hidden:!T},{id:"activity",icon:e.jsx(Qe,{style:h}),link:"/activity",name:"Activity",hidden:!T},{id:"memory",icon:e.jsx(be,{style:h}),link:"/memory",name:"Memory"},{id:"labs",icon:e.jsx(Ve,{style:h}),link:"/labs",name:"Labs"},{id:"settings",icon:e.jsx(ge,{style:h}),link:"/settings",name:"Settings"},{id:"commits",icon:e.jsx(ee,{style:h}),link:"/commits",name:"Commits",hidden:!0},{id:"pages",icon:e.jsx(Je,{style:h}),link:"/pages",name:"Pages",hidden:!0},{id:"components",icon:e.jsx(Ie,{style:h}),link:"/components",name:"Components",hidden:!0}],F=o.useCallback(l=>{const u=B.find(x=>x.id===l);u!=null&&u.link&&r(u.link),i(x=>x===l?void 0:l)},[B,r]);o.useEffect(()=>{const l={editor:["editor"],dashboard:["/","/home"],git:["git"],commits:["commits"],simulations:["simulations"],activity:["activity"],memory:["memory","agent-transcripts"],files:["files"],labs:["labs"],settings:["settings"],pages:["pages"],components:["components"]};for(const[u,x]of Object.entries(l))if(x.some(b=>b==="/"?c.pathname==="/":c.pathname.includes(b))){i(u);return}i(void 0)},[c]);const I=async()=>{m(!0);try{const{default:l}=await fe(async()=>{const{default:b}=await import("./html2canvas-pro.esm-fmIEn3Bc.js");return{default:b}},[]),x=(await l(document.body)).toDataURL("image/jpeg",.8);N(x),M(!0)}catch(l){console.error("Screenshot capture failed:",l),M(!0)}finally{m(!1)}},k=()=>{M(!1),N(null)},S=je();return e.jsxs(e.Fragment,{children:[e.jsxs("div",{id:"sidebar",className:"sticky top-0 w-full h-screen bg-[#051C22] flex flex-col justify-between py-3",children:[e.jsxs("div",{className:"w-full flex flex-col items-center",children:[e.jsx("div",{className:"py-3 mt-2 mb-4",children:e.jsx(q,{to:"/",className:"flex items-center justify-center cursor-pointer",children:e.jsx("img",{src:ue,alt:"CodeYam",className:"h-6"})})}),B.filter(l=>!l.hidden).map(l=>e.jsx(Ee,{id:l.id,selected:l.id===d,onClick:F,icon:l.icon,name:l.name},`sidebar-button-${l.id}`))]}),a&&e.jsx("div",{className:"w-full flex flex-col items-center pb-2",children:e.jsxs("button",{onClick:()=>void I(),disabled:g,className:"w-full px-1.5 py-2 flex flex-col items-center justify-center gap-1 text-[#568B94] hover:text-[#CBF3FA] transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-wait",children:[e.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center",children:g?e.jsx(G,{style:{width:"20px",height:"20px",strokeWidth:1.5},className:"animate-spin"}):e.jsx(ye,{style:{width:"20px",height:"20px",strokeWidth:1.5}})}),e.jsx("span",{className:"text-[9px] font-normal text-center leading-tight whitespace-pre-line",children:g?"Capturing...":`Report
56
+ Bug`})]})})]}),w&&e.jsx(ve,{isOpen:!0,onClose:k,context:S,defaultEmail:V,screenshotDataUrl:_??void 0})]})}function Ke({toast:t,onClose:a}){o.useEffect(()=>{const r=t.duration||5e3;if(r>0){const d=setTimeout(()=>{a(t.id)},r);return()=>clearTimeout(d)}},[t.id,t.duration,a]);const n={success:"✅",error:"❌",info:"ℹ️",warning:"⚠️"},c={success:"bg-emerald-50 border-emerald-200 text-emerald-900",error:"bg-red-50 border-red-200 text-red-900",info:"bg-blue-50 border-blue-200 text-blue-900",warning:"bg-amber-50 border-amber-200 text-amber-900"};return e.jsxs("div",{className:`flex items-center gap-3 px-4 py-3 rounded-lg border-2 shadow-lg min-w-[320px] max-w-[500px] animate-[slideIn_0.3s_ease-out] ${c[t.type]}`,children:[e.jsx("span",{className:"text-2xl",children:n[t.type]}),e.jsx("p",{className:"flex-1 text-sm font-medium m-0",children:t.message}),e.jsx("button",{onClick:()=>a(t.id),className:"text-gray-500 hover:text-gray-700 text-xl leading-none bg-transparent border-none cursor-pointer p-0 w-6 h-6 flex items-center justify-center rounded transition-colors hover:bg-black/10",children:"×"})]})}function Ze({toasts:t,onClose:a}){return t.length===0?null:e.jsxs("div",{className:"fixed top-4 right-4 z-10000 flex flex-col gap-2",children:[e.jsx("style",{children:`
57
+ @keyframes slideIn {
58
+ from {
59
+ transform: translateX(400px);
60
+ opacity: 0;
61
+ }
62
+ to {
63
+ transform: translateX(0);
64
+ opacity: 1;
65
+ }
66
+ }
67
+ `}),t.map(n=>e.jsx(Ke,{toast:n,onClose:a},n.id))]})}function U({entity:t,nameSize:a="11px",pathSize:n="10px",pathMaxLength:c=50,showScenarioCount:r=!1,scenarioCount:d=0,additionalContent:i}){return e.jsxs("div",{className:"flex flex-col gap-1",children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(Le,{type:t.entityType||"other"}),e.jsxs(q,{to:`/entity/${t.sha}`,className:"hover:underline shrink-0 cursor-pointer",style:{fontSize:a,fontWeight:500,color:"#000",whiteSpace:"nowrap"},children:[t.name,r&&d>0&&` (${d})`]}),e.jsx(Ae,{filePath:t.filePath,maxLength:c,style:{fontSize:n,color:"#8E8E8E"}})]}),i]})}const Y={fontSize:"9px",color:"#005C75",fontStyle:"italic"};function et({currentRun:t,projectSlug:a,currentEntities:n=[],isAnalysisStarting:c=!1,queuedJobCount:r=0,queueJobs:d=[],currentlyExecuting:i=null,historicalRuns:w=[]}){var Q,X,K;const[M,g]=o.useState(!1),[m,_]=o.useState(!1),[N,j]=o.useState(null),[V,h]=o.useState(new Set),[T,B]=o.useState(new Set),[F,I]=o.useState(!1),k=!!i||d.length>0,S=!!i,y=(i==null?void 0:i.entities)||n,l=!!(t!=null&&t.analysisCompletedAt),u=(t==null?void 0:t.readyToBeCaptured)??0,x=(t==null?void 0:t.capturesCompleted)??0;t!=null&&t.captureCompletedAt||l&&(u===0||x>=u);const b=(t==null?void 0:t.currentEntityShas)&&t.currentEntityShas.length>0,R=k,{lastLine:D}=Ne(a,R),L=S||d.length>0,O=new Set(((Q=i==null?void 0:i.entities)==null?void 0:Q.map(s=>s.sha))||[]),W=w.filter(s=>!(s.currentEntityShas||[]).some(p=>O.has(p))),ie=(()=>{const f=Date.now()-1440*60*1e3;if(t!=null&&t.createdAt&&b){const p=t.analysisCompletedAt||t.createdAt;if(new Date(p).getTime()>f)return!0}if(W.length>0){const p=W[0],E=p.analysisCompletedAt||p.archivedAt||p.createdAt;if(E&&new Date(E).getTime()>f)return!0}return!1})();return o.useEffect(()=>{const s=(i==null?void 0:i.id)||null;k&&!m&&s!==N&&_(!0),!k&&N!==null&&j(null)},[k,i==null?void 0:i.id,m,N]),e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`fixed bottom-4 right-4 z-9998 bg-white rounded shadow-lg border-2 border-primary-100 transition-all duration-200 ${m?"min-w-[350px] max-w-[500px]":"w-auto"}`,children:[!m&&e.jsxs("div",{onClick:()=>{_(!0),j(null)},className:"flex items-center gap-2 px-3 py-2 cursor-pointer hover:bg-gray-50 transition-colors",title:"Click to expand",children:[L?e.jsx(G,{size:16,className:"animate-spin",style:{color:"#005C75"}}):e.jsx("div",{className:"flex items-center justify-center rounded",style:{backgroundColor:"#E0E9EC",width:"20px",height:"20px"},children:e.jsx(J,{size:16,style:{color:"#005C75"}})}),e.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:"#343434"},children:L?"Analyzing...":"Activity: No Activity Yet"}),L&&e.jsx("button",{onClick:s=>{s.stopPropagation(),g(!0)},className:"ml-auto px-2 py-1 rounded transition-colors cursor-pointer",style:{backgroundColor:"#E0E9EC",color:"#005C75",fontSize:"10px",fontWeight:600},children:"View Logs"})]}),m&&e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between px-3 py-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[L?e.jsx(G,{size:16,className:"animate-spin",style:{color:"#005C75"}}):e.jsx("div",{className:"flex items-center justify-center rounded",style:{backgroundColor:"#E0E9EC",width:"20px",height:"20px"},children:e.jsx(J,{size:16,style:{color:"#005C75"}})}),e.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:"#343434"},children:L?"Analyzing...":"Activity"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{onClick:()=>g(!0),className:"px-2 py-1 rounded transition-colors cursor-pointer",style:{backgroundColor:"#E0E9EC",color:"#005C75",fontSize:"10px",fontWeight:600},children:"View Logs"}),e.jsx("button",{onClick:()=>{_(!1),j((i==null?void 0:i.id)||null)},className:"p-1 rounded transition-colors cursor-pointer",style:{backgroundColor:"#E0E9EC"},title:"Collapse","aria-label":"Collapse",children:e.jsx(ze,{size:16,style:{color:"#646464"}})})]})]}),e.jsx("div",{style:{height:"1px",backgroundColor:"#E0E9EC",margin:"0 12px"}}),e.jsxs("div",{className:"px-3 pt-2 pb-3 space-y-3",children:[L&&i&&e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1.5 mb-2",children:[e.jsx(J,{size:12,style:{color:"#005C75"}}),e.jsx("h4",{style:{fontSize:"11px",fontWeight:600,color:"#343434"},children:"Current Activity"})]}),e.jsx("div",{className:"rounded p-2",style:{backgroundColor:"#f5f5f5"},children:y.length>0?e.jsxs("div",{className:"space-y-1.5",children:[(F?y:y.slice(0,3)).map(s=>e.jsx(U,{entity:s,nameSize:"11px",pathSize:"10px",pathMaxLength:150},s.sha)),y.length>3&&e.jsx("button",{onClick:()=>I(s=>!s),className:"cursor-pointer bg-transparent border-none p-0 hover:underline",style:Y,"aria-label":F?"Show fewer entities":`Show ${y.length-3} more entities`,children:F?"Show less":`+${y.length-3} more`}),D&&e.jsx("div",{style:{fontSize:"10px",color:"#005C75",marginTop:"4px"},children:D})]}):e.jsxs("div",{children:[i.entityNames&&i.entityNames.length>0?e.jsxs("div",{className:"space-y-0.5",children:[i.entityNames.slice(0,5).map((s,f)=>e.jsx("div",{style:{fontSize:"11px",color:"#343434"},children:s},f)),i.entityNames.length>5&&e.jsxs("div",{className:"italic",style:{fontSize:"10px",color:"#666"},children:["+",i.entityNames.length-5," ","more"]})]}):e.jsxs("div",{style:{fontSize:"11px",color:"#343434"},children:["Analyzing"," ",((X=i.entityShas)==null?void 0:X.length)||0," ",((K=i.entityShas)==null?void 0:K.length)===1?"entity":"entities","..."]}),D&&e.jsx("div",{style:{fontSize:"10px",color:"#005C75",marginTop:"4px"},children:D})]})})]}),d.length>0&&e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1.5 mb-2",children:[e.jsx(Be,{size:12,style:{color:"#005C75"}}),e.jsx("h4",{style:{fontSize:"11px",fontWeight:600,color:"#343434"},children:"Queued Activity"})]}),e.jsx("div",{className:"space-y-2 max-h-[200px] overflow-y-auto",children:d.map(s=>{var E,P;const f=V.has(s.id),p=f?s.entities:s.entities.slice(0,3);return e.jsx("div",{className:"rounded p-2",style:{backgroundColor:"#f5f5f5"},children:s.entities.length>0?e.jsxs("div",{className:"space-y-1.5",children:[p.map(A=>e.jsx(U,{entity:A,nameSize:"10px",pathSize:"9px",pathMaxLength:120},A.sha)),s.entities.length>3&&e.jsx("button",{onClick:()=>{h(A=>{const $=new Set(A);return $.has(s.id)?$.delete(s.id):$.add(s.id),$})},className:"cursor-pointer bg-transparent border-none p-0 hover:underline",style:Y,"aria-label":f?"Show fewer entities":`Show ${s.entities.length-3} more entities`,children:f?"Show less":`+${s.entities.length-3} more`})]}):e.jsxs("div",{style:{fontSize:"10px",color:"#343434"},children:[s.type==="analysis"&&e.jsx(e.Fragment,{children:s.entityNames&&s.entityNames.length>0?e.jsxs("div",{className:"space-y-0.5",children:[s.entityNames.slice(0,5).map((A,$)=>e.jsx("div",{children:A},$)),s.entityNames.length>5&&e.jsxs("div",{className:"italic",children:["+",s.entityNames.length-5," more"]})]}):`Analyzing ${((E=s.entityShas)==null?void 0:E.length)||0} ${((P=s.entityShas)==null?void 0:P.length)===1?"entity":"entities"}`}),s.type==="recapture"&&"Recapturing scenario",s.type==="debug-setup"&&"Setting up debug environment"]})},s.id)})})]}),ie&&W.length>0&&e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1.5 mb-2",children:[e.jsx(Me,{size:12,style:{color:"#005C75"}}),e.jsx("h4",{style:{fontSize:"11px",fontWeight:600,color:"#343434"},children:"Recently Completed"})]}),e.jsx("div",{className:"space-y-2 max-h-[200px] overflow-y-auto",children:W.slice(0,3).map((s,f)=>{const p=s.entities||[],E=s.analysisCompletedAt||s.archivedAt||s.createdAt||"",P=(()=>{if(!E)return"";const C=Date.now()-new Date(E).getTime(),v=Math.floor(C/6e4),H=Math.floor(C/36e5);return H>0?`${H}h ago`:v>0?`${v}m ago`:"just now"})(),A=T.has(f),ae=(A?p:p.slice(0,3)).map(C=>{var v,H,Z;return{...C,scenarioCount:((Z=(H=(v=C.analyses)==null?void 0:v[0])==null?void 0:H.scenarios)==null?void 0:Z.length)||0}});return e.jsx("div",{className:"rounded p-2",style:{backgroundColor:"#f5f5f5"},children:p.length>0&&e.jsxs("div",{className:"space-y-1.5",children:[ae.map((C,v)=>e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsx(U,{entity:C,nameSize:"10px",pathSize:"9px",pathMaxLength:100,showScenarioCount:!0,scenarioCount:C.scenarioCount})}),v===0&&P&&e.jsx("div",{style:{fontSize:"9px",color:"#8E8E8E",whiteSpace:"nowrap",paddingTop:"2px"},children:P})]},C.sha)),p.length>3&&e.jsx("button",{onClick:()=>{B(C=>{const v=new Set(C);return v.has(f)?v.delete(f):v.add(f),v})},className:"cursor-pointer bg-transparent border-none p-0 hover:underline",style:Y,"aria-label":A?"Show fewer entities":`Show ${p.length-3} more entities`,children:A?"Show less":`+${p.length-3} more`})]})},f)})})]})]}),e.jsx("div",{style:{height:"1px",backgroundColor:"#E0E9EC",margin:"0 12px"}}),e.jsx("div",{className:"px-3 pb-2",children:e.jsx(q,{to:"/activity",className:"text-xs font-medium hover:underline cursor-pointer",style:{color:"#005C75"},children:"View All Activity →"})})]})]}),M&&a&&e.jsx(Se,{projectSlug:a,onClose:()=>g(!1)})]})}const tt="/assets/globals-JMY99HpD.css";function te({text:t,subtext:a,linkText:n,linkTo:c}){const[r,d]=o.useState(!1);return r?null:e.jsx("div",{className:"bg-blue-100 border rounded border-blue-800 shadow-sm mx-6 mt-6",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-4 py-3 flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[e.jsx("div",{className:"shrink-0",children:e.jsx("svg",{className:"w-5 h-5 text-yellow-600",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}),e.jsxs("div",{className:"flex-1",children:[e.jsx("p",{className:"text-sm font-medium text-blue-900",children:t}),e.jsx("p",{className:"text-xs text-blue-700 mt-0.5",children:a})]}),e.jsx(q,{to:c,className:"shrink-0 px-4 py-2 bg-blue-600 text-white text-sm font-medium rounded hover:bg-blue-700 transition-colors",children:n})]}),e.jsx("button",{type:"button",onClick:()=>d(!0),className:"shrink-0 ml-4 p-1 rounded text-blue-600 hover:text-blue-800 hover:bg-blue-100 transition-colors cursor-pointer","aria-label":"Dismiss banner",children:e.jsx("svg",{className:"w-5 h-5",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{d:"M6 18L18 6M6 6l12 12"})})})]})})}function st({version:t}){return e.jsx("div",{className:"px-6 sm:px-12 pb-8 mt-auto pt-8",children:e.jsxs("div",{className:"border-t border-cygray-30 pt-6 flex flex-wrap justify-between items-center gap-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"font-mono text-sm font-semibold tracking-widest text-cyblack-100",children:"CODEYAM"}),t&&e.jsx("span",{className:"font-mono text-xs text-gray-400",children:t})]}),e.jsxs("div",{className:"flex items-center gap-4 font-mono text-xs uppercase tracking-widest",children:[e.jsx("a",{href:"https://blog.codeyam.com/",target:"_blank",rel:"noopener noreferrer",className:"text-cyblack-100 underline underline-offset-4 hover:text-primary-100",children:"Read the Blog"}),e.jsx("span",{className:"text-cygray-30",children:"|"}),e.jsx("a",{href:"https://discord.gg/x4uAgaRdwF",target:"_blank",rel:"noopener noreferrer",className:"text-cyblack-100 underline underline-offset-4 hover:text-primary-100",children:"Join Discord"})]})]})})}function it({serverVersion:t}){const[a,n]=o.useState("stale"),[c,r]=o.useState(null),d=async()=>{n("restarting"),r(null);try{if(!(await fetch("/api/restart-server",{method:"POST"})).ok)throw new Error("Failed to restart server");n("reconnecting");let w=0;const M=30,g=1e3,m=async()=>{try{if((await fetch("/api/health")).ok){window.location.reload();return}}catch{}w++,w<M?setTimeout(()=>void m(),g):(r("Server took too long to restart. Please refresh manually."),n("stale"))};setTimeout(()=>void m(),500)}catch(i){r(i instanceof Error?i.message:"Failed to restart server"),n("stale")}};return e.jsx("div",{className:"bg-amber-100 border rounded border-amber-700 shadow-sm mx-6 mt-6",children:e.jsx("div",{className:"max-w-7xl mx-auto px-4 py-3 flex items-center justify-between",children:e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[e.jsx("div",{className:"shrink-0",children:e.jsx("svg",{className:"w-5 h-5 text-amber-600",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})}),e.jsxs("div",{className:"flex-1",children:[a==="stale"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-sm font-medium text-amber-900",children:"Dashboard server is out of date"}),e.jsxs("p",{className:"text-xs text-amber-700 mt-0.5",children:["Server version: ",t,". A newer version of CodeYam CLI is installed. Restart the server to get the latest features."]}),c&&e.jsx("p",{className:"text-xs text-red-600 mt-1",children:c})]}),a==="restarting"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-sm font-medium text-amber-900",children:"Restarting server..."}),e.jsx("p",{className:"text-xs text-amber-700 mt-0.5",children:"Please wait while the server restarts."})]}),a==="reconnecting"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-sm font-medium text-amber-900",children:"Reconnecting..."}),e.jsx("p",{className:"text-xs text-amber-700 mt-0.5",children:"Waiting for the server to come back online."})]})]}),a==="stale"&&e.jsx("button",{type:"button",onClick:()=>void d(),className:"shrink-0 px-4 py-2 bg-amber-600 text-white text-sm font-medium rounded hover:bg-amber-700 transition-colors cursor-pointer",children:"Restart Server"}),(a==="restarting"||a==="reconnecting")&&e.jsxs("div",{className:"shrink-0 flex items-center gap-2 px-4 py-2 text-amber-700 text-sm",children:[e.jsxs("svg",{className:"w-4 h-4 animate-spin",fill:"none",viewBox:"0 0 24 24",children:[e.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),e.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),a==="restarting"?"Stopping...":"Reconnecting..."]})]})})})}function at({currentVersion:t,latestVersion:a}){const[n,c]=o.useState(!1);if(n)return null;const r="npm install -g @codeyam/codeyam-cli@latest && codeyam stop && codeyam";return e.jsx("div",{className:"bg-emerald-100 border rounded border-emerald-700 shadow-sm mx-6 mt-6",children:e.jsxs("div",{className:"max-w-7xl mx-auto px-4 py-3 flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[e.jsx("div",{className:"shrink-0",children:e.jsx("svg",{className:"w-5 h-5 text-emerald-600",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{d:"M7 11l5-5m0 0l5 5m-5-5v12"})})}),e.jsxs("div",{className:"flex-1",children:[e.jsx("p",{className:"text-sm font-medium text-emerald-900",children:"A new version of CodeYam CLI is available"}),e.jsxs("p",{className:"text-xs text-emerald-700 mt-0.5",children:["Current: ",t," → Latest: ",a]})]}),e.jsxs("div",{className:"shrink-0 flex items-center gap-2",children:[e.jsx("code",{className:"text-xs bg-emerald-200 text-emerald-900 px-2 py-1.5 rounded font-mono",children:r}),e.jsx(Te,{content:r,label:"Copy",copiedLabel:"Copied!",className:"px-3 py-1.5 bg-emerald-600 text-white text-xs font-medium rounded hover:bg-emerald-700 transition-colors"})]})]}),e.jsx("button",{type:"button",onClick:()=>c(!0),className:"shrink-0 ml-4 p-1 rounded text-emerald-600 hover:text-emerald-800 hover:bg-emerald-200 transition-colors cursor-pointer","aria-label":"Dismiss banner",children:e.jsx("svg",{className:"w-5 h-5",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{d:"M6 18L18 6M6 6l12 12"})})})]})})}const wt=()=>[{rel:"stylesheet",href:tt},{rel:"icon",type:"image/x-icon",href:"/favicon.ico"}];function nt(){const{currentRun:t,projectSlug:a,currentEntities:n,availableAPIKeys:c,queuedJobCount:r,queueJobs:d,currentlyExecuting:i,historicalRuns:w,isServerOutOfDate:M,serverVersion:g,npmUpdate:m,labs:_,simulationsEnabled:N,isSimulationsReady:j,isAdmin:V,editorMode:h,displayVersion:T}=he(),{toasts:B,closeToast:F}=we(),I=xe(),k=o.useRef(I),S=se();o.useEffect(()=>{k.current=I},[I]);const y=S.pathname.startsWith("/entity/")&&S.pathname.includes("/edit/")||S.pathname.startsWith("/dev/")||S.pathname.startsWith("/editor"),l=S.pathname.includes("/fullscreen")||S.pathname.startsWith("/editor");return o.useEffect(()=>{const u=new EventSource("/api/events");let x=null,b=0;const R=2e3;return u.addEventListener("message",D=>{const L=JSON.parse(D.data);if(L.type==="queue")k.current.revalidate(),b=Date.now();else if(L.type==="db-change"||L.type==="unknown"){const O=Date.now(),W=O-b;W<R?(x&&clearTimeout(x),x=setTimeout(()=>{k.current.revalidate(),b=Date.now(),x=null},R-W)):(k.current.revalidate(),b=O)}}),u.addEventListener("error",D=>{console.error("SSE connection error:",D)}),()=>{x&&clearTimeout(x),u.close()}},[]),e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`min-h-screen ${y?"":"grid"} bg-cygray-10`,style:y?void 0:{gridTemplateColumns:"65px minmax(0, 1fr)"},children:[!y&&e.jsx(Xe,{labs:_,isAdmin:V,editorMode:h}),e.jsxs("div",{className:"max-h-screen overflow-auto bg-cygray-10 flex flex-col min-h-screen",children:[M&&e.jsx(it,{serverVersion:g}),m&&m.currentVersion&&e.jsx(at,{currentVersion:m.currentVersion,latestVersion:m.latestVersion}),N&&c.length===0&&e.jsx(te,{text:"No AI API keys configured. Please provide an AI API key at your earliest convenience.",subtext:"An API key is required for stable, frequent use of CodeYam",linkText:"Configure API Keys",linkTo:"/settings"}),N&&!j&&e.jsx(te,{text:"Simulations enabled but not yet configured",subtext:"Run /codeyam-setup in Claude Code to install the analyzer and configure your dev server",linkText:"View Labs",linkTo:"/labs"}),e.jsx("div",{className:"flex-1",children:e.jsx(pe,{})}),e.jsx(st,{version:T})]})]}),e.jsx(Ze,{toasts:B,onClose:F}),!l&&N&&e.jsx(et,{currentRun:t,projectSlug:a,currentEntities:n,isAnalysisStarting:!1,queuedJobCount:r,queueJobs:d,currentlyExecuting:i,historicalRuns:w})]})}const Nt=re(function(){return e.jsxs("html",{lang:"en",children:[e.jsxs("head",{children:[e.jsx("meta",{charSet:"utf-8"}),e.jsx("meta",{name:"viewport",content:"width=device-width,initial-scale=1"}),e.jsx(le,{}),e.jsx(ce,{})]}),e.jsxs("body",{children:[e.jsx(Ce,{children:e.jsx(ke,{children:e.jsx(nt,{})})}),e.jsx(de,{}),e.jsx(me,{})]})]})});export{Nt as default,wt as links};
@@ -0,0 +1 @@
1
+ function G(s,n,z,C,E){var Q,a,D,F,I,P,R,U;const e=(Q=n==null?void 0:n.scenarios)==null?void 0:Q.find(r=>r.name===s.name),k=!!(e!=null&&e.startedAt),T=!!(e!=null&&e.screenshotStartedAt),y=!!(e!=null&&e.screenshotFinishedAt),v=!!(e!=null&&e.finishedAt),L=1800*1e3,$=T&&!y&&(e==null?void 0:e.screenshotStartedAt)&&Date.now()-new Date(e.screenshotStartedAt).getTime()>L,h=!!((D=(a=s.metadata)==null?void 0:a.screenshotPaths)!=null&&D[0])||!!((F=s.metadata)!=null&&F.executionResult),m=T&&!y,A=e==null?void 0:e.error,o=(P=(I=s.metadata)==null?void 0:I.executionResult)==null?void 0:P.error,u=[];if(n!=null&&n.errors&&n.errors.length>0)for(const r of n.errors)u.push({source:`${r.phase} phase`,message:r.message});if(n!=null&&n.steps)for(const r of n.steps)r.error&&u.push({source:r.name,message:r.error});const w=!h&&!A&&!o&&u.length>0,t=!!(A||o||$||w),M=$?"Capture timed out after 30 minutes":(typeof A=="string"?A:null)||(o==null?void 0:o.message)||(w?`Analysis error: ${u[0].message}`:null),O=$?"The capture process has been running for more than 30 minutes and likely got stuck. Consider re-running the analysis.":(e==null?void 0:e.errorStack)||(o==null?void 0:o.stack)||null,p=(C&&E?E.jobs.some(r=>{var x;return((x=r.entityShas)==null?void 0:x.includes(C))||r.type==="analysis"&&r.entityShas&&r.entityShas.length===0})||((U=(R=E.currentlyExecuting)==null?void 0:R.entityShas)==null?void 0:U.includes(C)):!1)&&!k&&!t||!!(e!=null&&e.analyzing)&&!k&&!t,f=k&&!T&&!v&&!t,_=(p||f||m)&&!t,c=(p||f)&&z===!1&&!h;let d;c?d="crashed":t?d="error":h||v?d="completed":m?d="capturing":f?d="starting":p?d="queued":d="pending";let i="📷",l="pending",b=!1,g=`Not captured: ${s.name}`;const N="border-gray-300",q=t||c?"bg-red-50":"bg-white";return t||c?(i="⚠️",l="error",g=`Error: ${c?"Analysis process crashed":M||"Unknown error"}`):p?(i="⋯",l="queued",g=`Queued: ${s.name}`):f?(i="⋯",l="starting",b=!0,g=`Starting server for ${s.name}...`):m&&!t?(i="⋯",l="capturing",b=!0,g=`Capturing ${s.name}...`):h&&(i="✓",l="completed",g=s.name),{hasError:t||c,errorMessage:c?"Analysis process crashed":M,errorStack:c?"Process terminated unexpectedly before completing analysis":O,isCapturing:m,isCaptured:h,hasCrashed:c,isAnalyzing:_,isQueued:p,isServerStarting:f,status:d,icon:i,iconType:l,shouldSpin:b,title:g,borderColor:N,bgColor:q}}export{G as g};
@@ -0,0 +1,6 @@
1
+ import{c}from"./createLucideIcon-CMT1jU2q.js";/**
2
+ * @license lucide-react v0.556.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const e=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],o=c("search",e);export{o as S};
@@ -0,0 +1 @@
1
+ import{w as ge,u as be,e as ye,d as fe,f as je,r,j as e}from"./chunk-JZWAC4HX-C4pqxYJB.js";import{u as ve}from"./useReportContext-O-jkvSPx.js";import{C as Ne}from"./CopyButton-DmJveP3T.js";import"./copy-NDbZjXao.js";import"./createLucideIcon-CMT1jU2q.js";const Pe=()=>[{title:"Settings - CodeYam"},{name:"description",content:"Configure project settings"}];function X(d){if(!d)return"";const t=[d.command];return d.args&&d.args.length>0&&t.push(...d.args),t.join(" ")}function Z({mock:d,onSave:t,onCancel:o}){const[i,b]=r.useState(d.entityName),[h,c]=r.useState(d.filePath),[n,y]=r.useState(d.content),m=()=>{if(!i.trim()||!h.trim()||!n.trim()){alert("All fields are required");return}t({entityName:i,filePath:h,content:n})};return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 mb-1",children:"Entity Name"}),e.jsx("input",{type:"text",value:i,onChange:x=>b(x.target.value),className:"w-full px-3 py-2 border border-gray-300 rounded text-sm focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]",placeholder:"e.g., determineDatabaseType"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 mb-1",children:"File Path"}),e.jsx("input",{type:"text",value:h,onChange:x=>c(x.target.value),className:"w-full px-3 py-2 border border-gray-300 rounded text-sm focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]",placeholder:"e.g., packages/database/src/lib/kysely/db.ts"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 mb-1",children:"Content"}),e.jsx("textarea",{value:n,onChange:x=>y(x.target.value),rows:6,className:"w-full px-3 py-2 border border-gray-300 rounded text-sm font-mono focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]",placeholder:"e.g., function determineDatabaseType() { return 'postgresql' }"})]}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[e.jsx("button",{type:"button",onClick:o,className:"px-4 py-2 bg-gray-200 text-gray-800 border-none rounded text-sm cursor-pointer hover:bg-gray-300",children:"Cancel"}),e.jsx("button",{type:"button",onClick:m,className:"px-4 py-2 bg-[#005C75] text-white border-none rounded text-sm cursor-pointer hover:bg-[#004a5d]",children:"Save"})]})]})}function we(d){try{return new Date(d).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit"})}catch{return d}}const Ie=ge(function(){var G,Y,H,U,B;const{config:t,secrets:o,versionInfo:i,simulationsEnabled:b,error:h}=be(),c=ye(),n=fe(),y=je(),[m,x]=r.useState(b?"project-metadata":"memory");ve({source:"settings-page"});const[u,f]=r.useState((t==null?void 0:t.universalMocks)||[]),[N,P]=r.useState(((t==null?void 0:t.pathsToIgnore)||[]).join(", ")),[I,ee]=r.useState(((t==null?void 0:t.pathsToIgnore)||[]).join(", ")),[se,K]=r.useState((o==null?void 0:o.GROQ_API_KEY)||""),[te,R]=r.useState((o==null?void 0:o.ANTHROPIC_API_KEY)||""),[ae,T]=r.useState((o==null?void 0:o.OPENAI_API_KEY)||""),[w,re]=r.useState(!1),[C,ne]=r.useState(!1),[k,ie]=r.useState(!1),[E,j]=r.useState(!1),[_,oe]=r.useState(!1),[q,F]=r.useState(!1),[le,S]=r.useState(null),[de,v]=r.useState(!1),[A,O]=r.useState({}),[p,$]=r.useState(((G=t==null?void 0:t.memory)==null?void 0:G.conversationReflection)??!0),[g,D]=r.useState(((Y=t==null?void 0:t.memory)==null?void 0:Y.ruleMaintenance)??!0),[M,V]=r.useState(((H=t==null?void 0:t.memory)==null?void 0:H.promptModel)??"haiku");r.useEffect(()=>{var s,a,l,L;if(t){f(t.universalMocks||[]);const W=(t.pathsToIgnore||[]).join(", ");P(W),ee(W);const J={};(s=t.webapps)==null||s.forEach((Q,pe)=>{Q.startCommand&&(J[pe]=X(Q.startCommand))}),O(J),$(((a=t.memory)==null?void 0:a.conversationReflection)??!0),D(((l=t.memory)==null?void 0:l.ruleMaintenance)??!0),V(((L=t.memory)==null?void 0:L.promptModel)??"haiku")}o&&(K(o.GROQ_API_KEY||""),R(o.ANTHROPIC_API_KEY||""),T(o.OPENAI_API_KEY||""))},[t,o]),r.useEffect(()=>{if(c!=null&&c.success){j(!0);const s=setTimeout(()=>j(!1),3e3);return()=>clearTimeout(s)}},[c]),r.useEffect(()=>{if(n.state==="idle"&&n.data&&!q){console.log("[Settings] Fetcher data:",n.data);const s=n.data;if(s.success){console.log("[Settings] Save successful, revalidating..."),j(!0),F(!0),(N!==I||s.requiresRestart)&&oe(!0),y.revalidate();const a=setTimeout(()=>{j(!1),F(!1)},3e3);return()=>clearTimeout(a)}}},[n.state,n.data,q,y,N,I]);const ce=s=>{s.preventDefault();const a=new FormData(s.currentTarget);a.set("universalMocks",JSON.stringify(u)),a.set("startCommands",JSON.stringify(A)),a.set("memorySettings",JSON.stringify({conversationReflection:p,ruleMaintenance:g,promptModel:M})),console.log("[Settings] Submitting form data:",{universalMocks:a.get("universalMocks"),startCommands:a.get("startCommands"),openAiApiKey:a.get("openAiApiKey")?"***":"(empty)"}),n.submit(a,{method:"post"})},me=s=>{f([...u,s]),v(!1)},xe=(s,a)=>{const l=[...u];l[s]=a,f(l),S(null)},ue=s=>{f(u.filter((a,l)=>l!==s))};if(h)return e.jsxs("div",{className:"max-w-6xl mx-auto p-8 font-sans",children:[e.jsx("header",{className:"mb-6 pb-4 border-b border-gray-200",children:e.jsx("div",{className:"flex justify-between items-center",children:e.jsx("h1",{className:"text-4xl font-bold text-gray-900",children:"Settings"})})}),e.jsx("div",{className:"bg-red-50 border border-red-200 rounded-lg p-4",children:e.jsx("p",{className:"text-red-700",children:h})})]});const z=[{id:"project-metadata",label:"Project Metadata"},{id:"ai-provider",label:"AI Provider Configuration"},{id:"commands",label:"Commands"},{id:"paths-to-ignore",label:"Paths To Ignore"},{id:"universal-mocks",label:"Universal Mocks"},{id:"memory",label:"Memory"},{id:"current-configuration",label:"Current Configuration"}],he=b?z:z.filter(s=>s.id==="memory");return e.jsx("div",{className:"bg-[#F8F7F6] min-h-screen",children:e.jsxs("div",{className:"px-6 sm:px-12 lg:px-20 pt-8 pb-12 font-sans",children:[e.jsxs("div",{className:"mb-8 flex justify-between items-start",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-[28px] font-semibold text-gray-900 mb-2",children:"Settings"}),e.jsx("p",{className:"text-[15px] text-gray-500",children:"Project Configuration"})]}),e.jsx("button",{type:"submit",form:"settings-form",disabled:n.state==="submitting",className:"px-6 py-2 bg-[#005C75] text-white border-none rounded text-sm font-medium cursor-pointer disabled:cursor-not-allowed disabled:opacity-60 hover:bg-[#004a5d] whitespace-nowrap",children:n.state==="submitting"?"Saving...":"Save Settings"})]}),(E||_||(c==null?void 0:c.error)||n.data&&typeof n.data=="object"&&"error"in n.data)&&e.jsxs("div",{className:"mb-4 space-y-3",children:[E&&e.jsx("div",{className:"text-emerald-600 text-sm font-medium bg-emerald-50 border border-emerald-200 rounded px-4 py-2",children:"Settings saved successfully!"}),_&&e.jsxs("div",{className:"text-amber-700 text-sm font-medium bg-amber-50 border border-amber-200 rounded px-4 py-2",children:[e.jsx("div",{children:"Settings changed. Please restart CodeYam for changes to take effect:"}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[e.jsx("code",{className:"bg-amber-100 px-2 py-1 rounded text-xs",children:"codeyam stop && codeyam"}),e.jsx(Ne,{content:"codeyam stop && codeyam",className:"px-2 py-1 text-xs bg-amber-200 hover:bg-amber-300 text-amber-800 rounded border-none transition-colors"})]})]}),(c==null?void 0:c.error)&&e.jsx("div",{className:"text-red-600 text-sm font-medium bg-red-50 border border-red-200 rounded px-4 py-2",children:c.error}),(()=>{if(n.data&&typeof n.data=="object"&&"error"in n.data){const s=n.data;return typeof s.error=="string"?e.jsx("div",{className:"text-red-600 text-sm font-medium bg-red-50 border border-red-200 rounded px-4 py-2",children:s.error}):null}return null})()]}),e.jsxs("div",{className:"flex flex-col lg:flex-row gap-6 lg:gap-8 items-start",children:[e.jsx("nav",{className:"w-full lg:w-64 flex-shrink-0",children:e.jsx("ul",{className:"flex lg:flex-col overflow-x-auto gap-1",children:he.map(s=>e.jsx("li",{children:e.jsx("button",{type:"button",onClick:()=>x(s.id),className:`w-full text-left px-3 lg:px-0 py-2.5 text-sm transition-colors cursor-pointer whitespace-nowrap ${m===s.id?"text-[#005C75] font-medium":"text-gray-600 hover:text-gray-900"}`,children:s.label})},s.id))})}),e.jsx("div",{className:"flex-1 min-w-0 -mt-2",children:e.jsxs("form",{id:"settings-form",onSubmit:ce,className:"space-y-6",children:[m==="project-metadata"&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Project Metadata"}),e.jsxs("div",{className:"mb-6",children:[e.jsx("label",{className:"block mb-2 font-medium text-gray-700",children:"Web Applications"}),t!=null&&t.webapps&&t.webapps.length>0?e.jsx("div",{className:"space-y-3",children:t.webapps.map((s,a)=>{var l;return e.jsx("div",{className:"p-4 bg-white border border-gray-200 rounded",children:e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Path:"})," ",e.jsx("span",{className:"text-gray-900",children:s.path==="."?"Root":s.path})]}),s.appDirectory&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"App Directory:"})," ",e.jsx("span",{className:"text-gray-900",children:s.appDirectory})]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Framework:"})," ",e.jsx("span",{className:"text-gray-900",children:s.framework})]}),s.startCommand&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Start Command:"})," ",e.jsxs("span",{className:"text-gray-900 font-mono text-xs",children:[s.startCommand.command," ",(l=s.startCommand.args)==null?void 0:l.join(" ")]})]})]})},a)})}):e.jsx("p",{className:"text-sm text-gray-600 italic",children:"No web applications configured"}),e.jsx("p",{className:"mt-2 text-sm text-gray-600",children:"Web applications are detected during initialization. To modify, edit `.codeyam/config.json` or re-run `codeyam init`."})]})]}),m==="ai-provider"&&e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-semibold text-gray-800 mb-4",children:"AI Provider API Keys"}),e.jsx("p",{className:"text-sm text-gray-600 mb-6",children:"Configure API keys for AI-powered analysis. Choose the provider that best fits your needs."}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:[e.jsx("div",{className:"flex items-start justify-between mb-3",children:e.jsxs("div",{children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"Groq"}),e.jsx("p",{className:"text-sm text-gray-600 mb-3",children:"Lightning-fast inference with industry-leading speed. Groq's LPU architecture delivers exceptional performance for real-time AI applications with competitive pricing."}),e.jsxs("div",{className:"flex flex-wrap gap-2 text-xs",children:[e.jsxs("div",{className:"px-2 py-1 bg-green-100 text-green-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Cost:"})," ","$0.10/1M tokens"]}),e.jsxs("div",{className:"px-2 py-1 bg-cyan-100 text-cyan-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Speed:"})," 850 tokens/s"]}),e.jsxs("div",{className:"px-2 py-1 bg-purple-100 text-purple-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Reliability:"})," ","Less reliable, but capable of producing reasonable results"]})]})]})}),e.jsxs("div",{className:"mt-4",children:[e.jsx("label",{htmlFor:"groqApiKey",className:"block text-sm font-medium text-gray-700 mb-2",children:"API Key"}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:w?"text":"password",id:"groqApiKey",name:"groqApiKey",value:se,onChange:s=>K(s.target.value),placeholder:"gsk_...",className:"w-full px-3 py-2 pr-24 border border-gray-300 rounded text-sm focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]"}),e.jsx("button",{type:"button",onClick:()=>re(!w),className:"absolute right-2 top-1/2 -translate-y-1/2 px-3 py-1 text-xs text-gray-600 hover:text-gray-800 focus:outline-none cursor-pointer",children:w?"Hide":"Show"})]})]})]}),e.jsxs("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:[e.jsx("div",{className:"flex items-start justify-between mb-3",children:e.jsxs("div",{children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"Anthropic Claude"}),e.jsx("p",{className:"text-sm text-gray-600 mb-3",children:"Advanced reasoning and coding capabilities with superior context understanding. Claude excels at complex analysis tasks and provides highly accurate results with detailed explanations."}),e.jsxs("div",{className:"flex flex-wrap gap-2 text-xs",children:[e.jsxs("div",{className:"px-2 py-1 bg-green-100 text-green-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Cost:"})," ","$3.00/1M tokens"]}),e.jsxs("div",{className:"px-2 py-1 bg-cyan-100 text-cyan-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Speed:"})," 120 tokens/s"]}),e.jsxs("div",{className:"px-2 py-1 bg-purple-100 text-purple-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Reliability:"})," ","Consistent, high quality results"]})]})]})}),e.jsxs("div",{className:"mt-4",children:[e.jsx("label",{htmlFor:"anthropicApiKey",className:"block text-sm font-medium text-gray-700 mb-2",children:"API Key"}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:C?"text":"password",id:"anthropicApiKey",name:"anthropicApiKey",value:te,onChange:s=>R(s.target.value),placeholder:"sk-ant-...",className:"w-full px-3 py-2 pr-24 border border-gray-300 rounded text-sm focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]"}),e.jsx("button",{type:"button",onClick:()=>ne(!C),className:"absolute right-2 top-1/2 -translate-y-1/2 px-3 py-1 text-xs text-gray-600 hover:text-gray-800 focus:outline-none cursor-pointer",children:C?"Hide":"Show"})]})]})]}),e.jsxs("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:[e.jsx("div",{className:"flex items-start justify-between mb-3",children:e.jsxs("div",{children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"OpenAI GPT"}),e.jsx("p",{className:"text-sm text-gray-600 mb-3",children:"Industry-standard AI with broad capabilities and extensive ecosystem. GPT models offer reliable performance across diverse tasks with good balance of speed and quality."}),e.jsxs("div",{className:"flex flex-wrap gap-2 text-xs",children:[e.jsxs("div",{className:"px-2 py-1 bg-green-100 text-green-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Cost:"})," ","$2.50/1M tokens"]}),e.jsxs("div",{className:"px-2 py-1 bg-cyan-100 text-cyan-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Speed:"})," 150 tokens/s"]}),e.jsxs("div",{className:"px-2 py-1 bg-purple-100 text-purple-800 rounded",children:[e.jsx("span",{className:"font-medium",children:"Reliability:"})," ","Consistent, high quality results"]})]})]})}),e.jsxs("div",{className:"mt-4",children:[e.jsx("label",{htmlFor:"openAiApiKey",className:"block text-sm font-medium text-gray-700 mb-2",children:"API Key"}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:k?"text":"password",id:"openAiApiKey",name:"openAiApiKey",value:ae,onChange:s=>T(s.target.value),placeholder:"sk-...",className:"w-full px-3 py-2 pr-24 border border-gray-300 rounded text-sm focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]"}),e.jsx("button",{type:"button",onClick:()=>ie(!k),className:"absolute right-2 top-1/2 -translate-y-1/2 px-3 py-1 text-xs text-gray-600 hover:text-gray-800 focus:outline-none cursor-pointer",children:k?"Hide":"Show"})]})]})]})]})]}),m==="commands"&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Commands"}),e.jsx("p",{className:"text-sm text-gray-600 mb-6",children:"Configure start commands for your web applications"}),t!=null&&t.webapps&&t.webapps.length>0?e.jsx("div",{className:"space-y-4",children:t.webapps.map((s,a)=>e.jsxs("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("div",{className:"text-base font-semibold text-gray-900 mb-1",children:s.path==="."?"Root":s.path}),e.jsx("div",{className:"text-sm text-gray-600",children:s.framework})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:`startCommand-${a}`,className:"block text-sm font-medium text-gray-700 mb-2",children:"Start Command"}),e.jsx("input",{type:"text",id:`startCommand-${a}`,name:`startCommand-${a}`,value:A[a]||"",onChange:l=>O({...A,[a]:l.target.value}),placeholder:"e.g., pnpm dev --port $PORT",className:"w-full px-3 py-2 border border-gray-300 rounded text-sm font-mono focus:outline-none focus:border-[#005C75] focus:ring-1 focus:ring-[#005C75]"}),e.jsx("p",{className:"mt-2 text-xs text-gray-500",children:"Use $PORT as a placeholder for the dynamic port number"})]})]},a))}):e.jsx("p",{className:"text-sm text-gray-600 italic",children:"No web applications configured"})]}),m==="paths-to-ignore"&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Paths To Ignore"}),e.jsx("input",{type:"text",id:"pathsToIgnore",name:"pathsToIgnore",value:N,onChange:s=>P(s.target.value),placeholder:"e.g., __tests__, \\.test\\.ts$, ^background (no quotes needed)",className:"w-full px-3 py-3 border border-gray-300 rounded text-sm font-mono focus:outline-none focus:border-[#005C75] focus:ring-2 focus:ring-[#005C75]/10"}),e.jsxs("p",{className:"mt-2 text-sm text-gray-600",children:["Comma-separated list of regex patterns for paths to ignore during file watching. Examples:"," ",e.jsx("code",{className:"bg-gray-100 px-1 rounded",children:"__tests__"}),","," ",e.jsx("code",{className:"bg-gray-100 px-1 rounded",children:"\\.test\\.tsx?$"}),","," ",e.jsx("code",{className:"bg-gray-100 px-1 rounded",children:"^background"}),e.jsx("br",{}),e.jsx("span",{className:"text-xs text-gray-500 mt-1 inline-block",children:"Note: Files matching patterns in .gitignore are also automatically ignored"})]})]}),m==="universal-mocks"&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Universal Mocks"}),e.jsx("p",{className:"mb-3 text-sm text-gray-600",children:"Mock functions that will be applied across all entity simulations"}),u.length===0?e.jsxs("div",{className:"mb-4",children:[e.jsx("div",{className:"text-sm text-gray-500 mb-3",children:"No universal mocks configured"}),e.jsx("button",{type:"button",onClick:()=>v(!0),className:"px-4 py-2 bg-[#005C75] text-white border-none rounded text-sm cursor-pointer hover:bg-[#004a5d]",children:"Add Mock"})]}):e.jsx("div",{className:"space-y-3",children:u.map((s,a)=>e.jsx("div",{className:"p-4 bg-gray-50 rounded border border-gray-200",children:le===a?e.jsx(Z,{mock:s,onSave:l=>xe(a,l),onCancel:()=>S(null)}):e.jsx(e.Fragment,{children:e.jsxs("div",{className:"flex justify-between items-start mb-2",children:[e.jsxs("div",{className:"flex-1",children:[e.jsx("div",{className:"font-medium text-gray-800 mb-1",children:s.entityName}),e.jsx("div",{className:"text-sm text-gray-600 mb-2",children:s.filePath}),e.jsx("pre",{className:"text-xs bg-white p-2 rounded border border-gray-200 overflow-x-auto",children:s.content})]}),e.jsxs("div",{className:"flex gap-2 ml-3",children:[e.jsx("button",{type:"button",onClick:()=>S(a),className:"px-3 py-1 bg-teal-600 text-white border-none rounded text-sm cursor-pointer hover:bg-teal-700",children:"Edit"}),e.jsx("button",{type:"button",onClick:()=>ue(a),className:"px-3 py-1 bg-red-600 text-white border-none rounded text-sm cursor-pointer hover:bg-red-700",children:"Delete"})]})]})})},a))}),u.length>0&&e.jsx("button",{type:"button",onClick:()=>v(!0),className:"mt-4 px-4 py-2 bg-[#005C75] text-white border-none rounded text-sm cursor-pointer hover:bg-[#004a5d]",children:"Add Mock"})]}),m==="memory"&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Memory"}),e.jsx("p",{className:"text-sm text-gray-600 mb-6",children:"Configure how CodeYam reflects on conversations and maintains rules between sessions."}),e.jsxs("div",{className:"space-y-6",children:[e.jsx("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex-1 mr-4",children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"Conversation Reflection"}),e.jsx("p",{className:"text-sm text-gray-600",children:"After each conversation, an agent reviews the session for architectural decisions, tribal knowledge, confusion, or corrections that future sessions would benefit from knowing. It creates or updates Claude Rules based on what it learns."})]}),e.jsx("button",{type:"button",role:"switch","aria-checked":p,onClick:()=>$(!p),className:`relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none ${p?"bg-[#005C75]":"bg-gray-200"}`,children:e.jsx("span",{className:`pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out ${p?"translate-x-5":"translate-x-0"}`})})]})}),e.jsx("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex-1 mr-4",children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"Rule Maintenance"}),e.jsx("p",{className:"text-sm text-gray-600",children:"After each conversation, an agent checks if any existing Claude Rules have become stale based on recent code changes. It reviews the rule content against file diffs and updates rules that are out of date."})]}),e.jsx("button",{type:"button",role:"switch","aria-checked":g,onClick:()=>D(!g),className:`relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none ${g?"bg-[#005C75]":"bg-gray-200"}`,children:e.jsx("span",{className:`pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out ${g?"translate-x-5":"translate-x-0"}`})})]})}),e.jsxs("div",{className:"border border-gray-200 rounded-lg p-5 bg-white",children:[e.jsx("h4",{className:"text-base font-semibold text-gray-900 mb-1",children:"Memory Prompt Model"}),e.jsx("p",{className:"text-sm text-gray-600 mb-4",children:"Choose the Claude model used for conversation reflection and rule maintenance tasks."}),e.jsx("div",{className:"space-y-3",children:[{value:"haiku",label:"Haiku",badge:"Default, Recommended",description:"Fastest and cheapest. Good for routine reflection tasks."},{value:"sonnet",label:"Sonnet",badge:null,description:"Balanced speed and quality. Better at nuanced rule writing."},{value:"opus",label:"Opus",badge:null,description:"Highest quality. Best for complex architectural decisions. Costs significantly more."}].map(s=>e.jsxs("label",{className:`flex items-start gap-3 p-3 rounded-lg border cursor-pointer transition-colors ${M===s.value?"border-[#005C75] bg-[#005C75]/5":"border-gray-200 hover:border-gray-300"}`,children:[e.jsx("input",{type:"radio",name:"promptModel",value:s.value,checked:M===s.value,onChange:()=>V(s.value),className:"mt-1 accent-[#005C75]"}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"text-sm font-medium text-gray-900",children:s.label}),s.badge&&e.jsx("span",{className:"px-2 py-0.5 bg-green-100 text-green-800 rounded text-xs",children:s.badge})]}),e.jsx("p",{className:"text-sm text-gray-600 mt-0.5",children:s.description})]})]},s.value))})]})]})]}),m==="current-configuration"&&e.jsxs("div",{className:"space-y-6",children:[t&&e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-800 mb-4",children:"Current Configuration"}),e.jsx("div",{className:"p-4 bg-white border border-gray-200 rounded mb-6",children:e.jsxs("div",{className:"space-y-2 text-sm",children:[t.projectSlug&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Project Slug:"})," ",e.jsx("span",{className:"text-gray-900",children:t.projectSlug})]}),t.packageManager&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Package Manager:"})," ",e.jsx("span",{className:"text-gray-900",children:t.packageManager})]})]})}),t.webapps&&t.webapps.length>0&&e.jsxs("div",{children:[e.jsx("h3",{className:"text-base font-semibold text-gray-800 mb-3",children:"Web Applications"}),e.jsx("div",{className:"space-y-3",children:t.webapps.map((s,a)=>e.jsx("div",{className:"p-4 bg-white border border-gray-200 rounded",children:e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Path:"})," ",e.jsx("span",{className:"text-gray-900",children:s.path==="."?"Root":s.path})]}),s.appDirectory&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"App Directory:"})," ",e.jsx("span",{className:"text-gray-900",children:s.appDirectory})]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Framework:"})," ",e.jsx("span",{className:"text-gray-900",children:s.framework})]}),s.startCommand&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Start Command:"})," ",e.jsx("span",{className:"text-gray-900 font-mono text-xs",children:X(s.startCommand)})]})]})},a))})]})]}),i&&e.jsxs("div",{className:"mt-6",children:[e.jsx("h3",{className:"text-base font-semibold text-gray-800 mb-3",children:"Version Information"}),e.jsx("div",{className:"p-4 bg-white border border-gray-200 rounded",children:e.jsxs("div",{className:"space-y-2 text-sm",children:[i.webserverVersion&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Webserver:"})," ",e.jsx("span",{className:"text-gray-900 font-mono",children:i.webserverVersion.version||"unknown"})]}),i.templateVersion&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Analyzer Template:"})," ",e.jsx("span",{className:"font-mono text-gray-900",children:i.templateVersion.version||((U=i.templateVersion.gitCommit)==null?void 0:U.slice(0,7))||"unknown"}),i.templateVersion.buildTimestamp&&e.jsxs("span",{className:"text-gray-500 ml-2",children:["(built"," ",we(i.templateVersion.buildTimestamp),")"]})]}),i.cachedAnalyzerVersion&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Cached Analyzer:"})," ",e.jsx("span",{className:"font-mono text-gray-900",children:i.cachedAnalyzerVersion.version||((B=i.cachedAnalyzerVersion.gitCommit)==null?void 0:B.slice(0,7))||"unknown"}),i.isCacheStale?e.jsx("span",{className:"ml-2 px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs",children:"Stale - will update on next analysis"}):e.jsx("span",{className:"ml-2 px-2 py-0.5 bg-green-100 text-green-800 rounded text-xs",children:"Up to date"})]}),!i.cachedAnalyzerVersion&&(t==null?void 0:t.projectSlug)&&e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-700",children:"Cached Analyzer:"})," ",e.jsx("span",{className:"text-gray-500 italic",children:"Not initialized - will be created on first analysis"})]})]})})]})]})]})})]}),de&&e.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center p-4 z-50",children:e.jsxs("div",{className:"bg-white rounded-lg max-w-2xl w-full p-6",children:[e.jsx("h2",{className:"text-2xl font-bold mb-4 text-gray-900",children:"Add Universal Mock"}),e.jsx(Z,{mock:{entityName:"",filePath:"",content:""},onSave:me,onCancel:()=>v(!1)})]})})]})})});export{Ie as default,Pe as meta};
@@ -0,0 +1 @@
1
+ import{w as R,u as $,r as l,j as e,a as B,d as D,L as F}from"./chunk-JZWAC4HX-C4pqxYJB.js";import{u as O}from"./useReportContext-O-jkvSPx.js";import{S as U}from"./SafeScreenshot-BED4B6sP.js";import{L as V}from"./LoadingDots-BU_OAEMP.js";import{E as P}from"./EntityTypeIcon-CobE682z.js";import{g as Y,a as Q,f as q}from"./fileTableUtils-cPo8LiG3.js";import{C as J}from"./chevron-down-BH2h1Ea2.js";import{S as K}from"./search-fKo7v0Zo.js";import{L as W}from"./loader-circle-BAXYRVEO.js";import"./createLucideIcon-CMT1jU2q.js";const ie=()=>[{title:"Simulations - CodeYam"},{name:"description",content:"A visual gallery of your recently captured component screenshots"}],ce=R(function(){const i=$(),c=i.entities,x=i.queueState;O({source:"simulations-page"});const[n,u]=l.useState(""),[d,S]=l.useState("visual"),g=l.useMemo(()=>{const a=[];return c.forEach(t=>{var y;const r=(y=t.analyses)==null?void 0:y[0];if(r!=null&&r.scenarios){const b=r.scenarios.filter(o=>{var m;return!((m=o.metadata)!=null&&m.sameAsDefault)}).map(o=>{var z,k,A,L,E;const m=(k=(z=o.metadata)==null?void 0:z.screenshotPaths)==null?void 0:k[0],N=(A=o.metadata)==null?void 0:A.noScreenshotSaved,M=m&&!N,T=(E=(L=r.status)==null?void 0:L.scenarios)==null?void 0:E.find(H=>H.name===o.name),I=T&&T.screenshotStartedAt&&!T.screenshotFinishedAt;let w;return M?w="completed":I?w="capturing":w="error",{scenarioName:o.name,scenarioDescription:o.description||"",screenshotPath:m||"",scenarioId:o.id,state:w}}).filter(o=>o.state==="completed"||o.state==="capturing");b.length>0&&a.push({entity:t,screenshots:b,createdAt:r.createdAt||""})}}),a.sort((t,r)=>new Date(r.createdAt).getTime()-new Date(t.createdAt).getTime()),a},[c]),v=l.useMemo(()=>c.filter(a=>{var y,b;const t=(y=a.analyses)==null?void 0:y[0];return!((b=t==null?void 0:t.scenarios)==null?void 0:b.some(o=>{var m,N;return(N=(m=o.metadata)==null?void 0:m.screenshotPaths)==null?void 0:N[0]}))}),[c]),p=l.useMemo(()=>g.filter(({entity:a})=>{const t=!n||a.name.toLowerCase().includes(n.toLowerCase()),r=d==="all"||a.entityType===d;return t&&r}),[g,n,d]),f=l.useMemo(()=>v.filter(a=>{const t=!n||a.name.toLowerCase().includes(n.toLowerCase()),r=d==="all"||a.entityType===d;return t&&r}),[v,n,d]),C=l.useCallback(a=>{u(a.target.value)},[]),j=l.useCallback(a=>{S(a.target.value)},[]),h=g.length>0;return e.jsx("div",{className:"bg-[#F8F7F6] min-h-screen overflow-y-auto",children:e.jsxs("div",{className:"px-20 py-12",children:[e.jsxs("div",{className:"mb-8",children:[e.jsx("h1",{className:"text-[28px] font-semibold text-gray-900 mb-2",children:"Simulations"}),e.jsx("p",{className:"text-[15px] text-gray-500",children:"A visual gallery of your recently captured simulations."})]}),!h&&e.jsx("div",{className:"bg-[#D1F3F9] border border-[#A5E8F0] rounded-lg p-4 mb-6",children:e.jsxs("p",{className:"text-sm text-gray-700 m-0",children:["This page will display a visual gallery of your recently captured component simulations."," ",e.jsx("strong",{children:"Start by analyzing your first component below."})]})}),e.jsxs("div",{className:"bg-white border-b border-gray-200 rounded-t-lg px-5 py-4 mb-3",children:[e.jsx("div",{className:"text-[11px] text-gray-500 mb-2 uppercase",children:"Filters"}),e.jsxs("div",{className:"flex gap-3",children:[e.jsxs("div",{className:"relative",children:[e.jsxs("select",{className:"appearance-none bg-gray-50 border border-gray-200 rounded px-3 pr-8 text-[13px] h-[39px] cursor-pointer focus:outline-none focus:ring-0 focus:border-2 focus:border-[#005c75] hover:border-gray-300 transition-colors",value:d,onChange:j,children:[e.jsx("option",{value:"all",children:"All Types"}),e.jsx("option",{value:"visual",children:"Visual"}),e.jsx("option",{value:"library",children:"Library"})]}),e.jsx(J,{className:"absolute right-2 top-1/2 -translate-y-1/2 w-3 h-3 text-gray-500 pointer-events-none"})]}),e.jsxs("div",{className:"flex-1 relative",children:[e.jsx(K,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"}),e.jsx("input",{type:"text",placeholder:"Search component",className:"w-full bg-gray-50 border border-gray-200 rounded pl-9 pr-3 text-[13px] h-[39px] placeholder:text-gray-400 focus:outline-none focus:ring-0 focus:border-2 focus:border-[#005c75] transition-colors",value:n,onChange:C})]})]})]}),h&&p.length>0&&e.jsx("div",{className:"mb-2",children:e.jsxs("div",{className:"flex items-center py-3",children:[e.jsxs("span",{className:"font-mono uppercase",style:{fontSize:"11px",color:"#8b8b8b",fontWeight:500,letterSpacing:"0.05em"},children:[e.jsx("span",{style:{color:"#000000"},children:p.length})," ",p.length===1?"entity":"entities"]}),e.jsxs("div",{className:"relative group inline-flex items-center ml-1.5",children:[e.jsx("svg",{className:"w-3 h-3 text-gray-400 cursor-help",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),e.jsx("div",{className:"absolute left-0 top-full mt-2 hidden group-hover:block z-50 w-80",children:e.jsxs("div",{className:"bg-gray-900 text-white text-xs rounded-lg px-3 py-2 shadow-lg",children:["In CodeYam, an entity is a discrete, analyzable unit of code that can be independently simulated and tested.",e.jsx("div",{className:"absolute -top-1 left-4 w-2 h-2 bg-gray-900 transform rotate-45"})]})})]}),e.jsx("span",{className:"font-mono uppercase",style:{fontSize:"11px",color:"#d1d5db",fontWeight:500,letterSpacing:"0.05em",marginLeft:"8px"},children:"|"}),e.jsxs("span",{className:"font-mono uppercase",style:{fontSize:"11px",color:"#8b8b8b",fontWeight:500,letterSpacing:"0.05em",marginLeft:"8px"},children:[e.jsx("span",{style:{color:"#000000"},children:p.reduce((a,{screenshots:t})=>a+t.length,0)})," ","scenarios"]})]})}),e.jsxs("div",{className:"flex flex-col gap-3",children:[h&&(p.length===0?e.jsx("div",{className:"bg-white border border-gray-200 rounded-lg p-8 text-center text-gray-500",children:"No simulations match your filters."}):e.jsx(e.Fragment,{children:p.map(({entity:a,screenshots:t})=>e.jsx(G,{entity:a,screenshots:t,queueJobs:(x==null?void 0:x.jobs)||[]},a.sha))})),!h&&(f.length===0?e.jsx("div",{className:"bg-white border border-gray-200 rounded-b-lg p-8 text-center text-gray-500",children:"No components found matching your filters."}):f.map(a=>e.jsx(X,{entity:a},a.sha)))]})]})})});function G({entity:s,screenshots:i,queueJobs:c}){var j,h,a;const x=B(),n=D(),[u,d]=l.useState(!1),S=i.length||(((a=(h=(j=s.analyses)==null?void 0:j[0])==null?void 0:h.scenarios)==null?void 0:a.length)??0),g=t=>{x(`/entity/${s.sha}/scenarios/${t}?from=simulations`)},v=()=>{d(!0),n.submit({entitySha:s.sha,filePath:s.filePath||""},{method:"post",action:"/api/analyze"})};l.useEffect(()=>{n.state==="idle"&&u&&d(!1)},[n.state,u]);const p=Y(s,c),f=Q(p),C=p==="out-of-date";return e.jsx("div",{className:"rounded-[8px]",style:{backgroundColor:"#ffffff",border:"1px solid #e1e1e1"},children:e.jsxs("div",{className:"flex flex-col",children:[e.jsxs("div",{className:"flex items-center px-[15px] py-[15px]",children:[e.jsx("div",{className:"flex-shrink-0",children:e.jsx(P,{type:s.entityType||"other",size:"large"})}),e.jsxs("div",{className:"flex flex-col flex-shrink-0",style:{marginLeft:"15px",gap:"4px"},children:[e.jsxs("div",{className:"flex items-center gap-[5px]",children:[e.jsxs(F,{to:`/entity/${s.sha}`,className:"hover:underline cursor-pointer",title:s.name,style:{fontSize:"14px",lineHeight:"18px",color:"#343434",fontWeight:500},children:[s.name," (",S,")"]}),e.jsx("div",{className:"flex items-center justify-center px-2 rounded",style:{height:"20px",backgroundColor:f.bgColor,color:f.textColor,fontSize:"12px",lineHeight:"16px",fontWeight:400},children:f.text})]}),e.jsx("div",{style:{fontSize:"12px",lineHeight:"15px",color:"#b0b0b0",fontWeight:400},className:"font-mono",title:s.filePath,children:s.filePath})]}),e.jsx("div",{className:"flex-1"}),e.jsxs("div",{className:"flex-shrink-0 flex items-center gap-2",children:[C&&e.jsx(e.Fragment,{children:u||n.state!=="idle"?e.jsxs("div",{className:"px-2 py-1 bg-pink-100 rounded flex items-center gap-1.5",children:[e.jsx(W,{size:14,className:"animate-spin",style:{color:"#be185d"}}),e.jsx("span",{style:{color:"#be185d",fontSize:"10px",lineHeight:"20px",fontWeight:600},children:"Analyzing..."})]}):e.jsx("button",{onClick:v,className:"px-[10px] rounded transition-colors whitespace-nowrap",style:{backgroundColor:"#005c75",color:"#ffffff",fontSize:"10px",lineHeight:"22px",fontWeight:600},onMouseEnter:t=>{t.currentTarget.style.backgroundColor="#004d5e"},onMouseLeave:t=>{t.currentTarget.style.backgroundColor="#005c75"},children:"Re-analyze"})}),e.jsx("button",{onClick:()=>void x(`/entity/${s.sha}/logs`),className:"px-[10px] rounded transition-colors whitespace-nowrap",style:{backgroundColor:"#e0e9ec",color:"#005c75",fontSize:"10px",lineHeight:"22px",fontWeight:600},onMouseEnter:t=>{t.currentTarget.style.backgroundColor="#d0dfe3"},onMouseLeave:t=>{t.currentTarget.style.backgroundColor="#e0e9ec"},children:"View Logs"})]})]}),e.jsx("div",{className:"border-t border-gray-200"}),e.jsx("div",{className:"flex gap-2.5 overflow-x-auto pb-3 px-[15px] pt-3",style:{paddingLeft:"47px"},children:i.length>0?i.map(t=>e.jsxs("div",{className:"shrink-0 flex flex-col gap-2",children:[e.jsx("button",{onClick:()=>g(t.scenarioId||""),className:"block cursor-pointer bg-transparent border-none p-0",children:e.jsx("div",{className:"w-36 h-24 rounded-md border overflow-hidden flex items-center justify-center transition-all",style:{"--hover-border":"#005C75",backgroundColor:t.state==="capturing"?"#f9f9f9":"#f3f4f6",borderColor:t.state==="capturing"?"#efefef":"#d1d5db"},onMouseEnter:r=>{t.state==="completed"&&(r.currentTarget.style.borderColor="#005C75",r.currentTarget.style.boxShadow="0 4px 12px rgba(0, 92, 117, 0.15)")},onMouseLeave:r=>{r.currentTarget.style.borderColor=t.state==="capturing"?"#efefef":"#d1d5db",r.currentTarget.style.boxShadow="none"},children:t.state==="completed"?e.jsx(U,{screenshotPath:t.screenshotPath,alt:t.scenarioName,className:"max-w-full max-h-full object-contain"}):t.state==="capturing"?e.jsx(V,{size:"medium"}):null})}),e.jsxs("div",{className:"relative group",children:[e.jsx("div",{className:"text-left text-xs text-gray-600 cursor-default",style:{fontSize:"11px",lineHeight:"14px",maxWidth:"144px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.scenarioName}),e.jsx("div",{className:"fixed hidden group-hover:block pointer-events-none",style:{zIndex:1e4,transform:"translateY(8px)"},children:e.jsxs("div",{className:"bg-gray-100 text-gray-800 text-xs rounded-lg px-3 py-2 shadow-lg max-w-xs border border-gray-200",children:[t.scenarioName,t.scenarioDescription&&e.jsxs(e.Fragment,{children:[": ",t.scenarioDescription]}),e.jsx("div",{className:"absolute -top-1 left-4 w-2 h-2 bg-gray-100 border-l border-t border-gray-200 transform rotate-45"})]})})]})]},t.scenarioId)):e.jsx("div",{className:"text-xs text-gray-400 py-4",children:"No screenshots available"})})]})})}function X({entity:s}){const i=D(),[c,x]=l.useState(!1),n=()=>{x(!0),i.submit({entitySha:s.sha,filePath:s.filePath||""},{method:"post",action:"/api/analyze"})};return l.useEffect(()=>{i.state==="idle"&&c&&x(!1)},[i.state,c]),e.jsx("div",{className:"bg-white rounded hover:bg-gray-100 transition-colors cursor-pointer border-b border-[#e1e1e1]",onClick:n,children:e.jsxs("div",{className:"px-5 py-4 flex items-center",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[e.jsx(P,{type:s.entityType}),e.jsxs("div",{className:"min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-0.5",children:[e.jsx(F,{to:`/entity/${s.sha}`,className:"text-sm font-medium text-gray-900 no-underline",children:s.name}),e.jsx("span",{className:"text-[10px] font-semibold px-1 py-0.5 rounded",style:{color:s.entityType==="visual"?"#7c3aed":s.entityType==="library"?"#0DBFE9":s.entityType==="type"?"#dc2626":s.entityType==="data"?"#2563eb":s.entityType==="index"?"#ea580c":s.entityType==="functionCall"?"#7c3aed":s.entityType==="class"?"#059669":s.entityType==="method"?"#0891b2":"#6b7280",backgroundColor:s.entityType==="visual"?"#f3e8ff":s.entityType==="library"?"#cffafe":s.entityType==="type"?"#fee2e2":s.entityType==="data"?"#dbeafe":s.entityType==="index"?"#ffedd5":s.entityType==="functionCall"?"#f3e8ff":s.entityType==="class"?"#d1fae5":s.entityType==="method"?"#cffafe":"#f3f4f6"},children:s.entityType?s.entityType.toUpperCase():"UNKNOWN"})]}),e.jsx("div",{className:"text-xs text-gray-400 truncate",children:s.filePath})]})]}),e.jsx("div",{className:"w-32 flex justify-center",children:e.jsx("span",{className:"text-[10px] text-gray-500 bg-gray-100 px-2 py-1 rounded",children:"Not analyzed"})}),e.jsx("div",{className:"w-32 text-center text-[10px] text-gray-500",children:q(s.createdAt||null)}),e.jsx("div",{className:"w-24 flex justify-end",children:c||i.state!=="idle"?e.jsxs("div",{className:"px-2 py-1 bg-pink-100 rounded text-xs text-pink-700 font-semibold flex items-center gap-1.5",children:[e.jsx(W,{size:14,className:"animate-spin"}),"Analyzing..."]}):e.jsx("button",{onClick:n,className:"bg-[#e0e9ec] text-[#005c75] px-4 py-1.5 rounded text-xs font-medium hover:bg-[#d0dde1] transition-colors cursor-pointer",children:"Analyze"})})]})})}export{ce as default,ie as meta};
@@ -0,0 +1,11 @@
1
+ import{c as o}from"./createLucideIcon-CMT1jU2q.js";/**
2
+ * @license lucide-react v0.556.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const t=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],c=o("chevron-right",t);/**
7
+ * @license lucide-react v0.556.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const e=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],a=o("terminal",e);export{c as C,a as T};
@@ -0,0 +1,6 @@
1
+ import{c as e}from"./createLucideIcon-CMT1jU2q.js";/**
2
+ * @license lucide-react v0.556.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const a=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],o=e("triangle-alert",a);export{o as T};
@@ -0,0 +1 @@
1
+ import{r as i,j as e}from"./chunk-JZWAC4HX-C4pqxYJB.js";function y({width:u,height:m,onSave:a,onCancel:o}){const[n,x]=i.useState(""),[l,s]=i.useState(""),r=()=>{const t=n.trim();if(!t){s("Please enter a name for this custom size");return}a(t)},c=t=>{t.key==="Enter"&&n.trim()&&r(),t.key==="Escape"&&o()};return e.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center p-4 z-50",children:e.jsxs("div",{className:"bg-white rounded-lg max-w-md w-full p-6 shadow-xl",children:[e.jsxs("div",{className:"flex items-center justify-between mb-6",children:[e.jsx("h2",{className:"text-xl font-semibold text-gray-900",children:"Save Custom Size"}),e.jsx("button",{onClick:o,className:"text-gray-400 hover:text-gray-600 transition-colors cursor-pointer","aria-label":"Close",children:e.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),e.jsxs("div",{className:"mb-6 p-4 bg-gray-50 rounded-lg border border-gray-200",children:[e.jsx("div",{className:"text-sm text-gray-500 mb-1",children:"Dimensions"}),e.jsxs("div",{className:"text-lg font-medium text-gray-900",children:[u,"px × ",m,"px"]})]}),e.jsxs("div",{className:"mb-6",children:[e.jsx("label",{htmlFor:"custom-size-name",className:"block text-sm font-medium text-gray-700 mb-2",children:"Name"}),e.jsx("input",{id:"custom-size-name",type:"text",value:n,onChange:t=>{x(t.target.value),s("")},onKeyDown:c,placeholder:"e.g., iPhone 15 Pro",className:`w-full px-3 py-2 border rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#005c75] focus:border-[#005c75] ${l?"border-red-300":"border-gray-300"}`,autoFocus:!0}),l&&e.jsx("p",{className:"mt-1 text-sm text-red-600",children:l})]}),e.jsxs("div",{className:"flex gap-3 justify-end",children:[e.jsx("button",{onClick:o,className:"px-4 py-2 bg-gray-100 text-gray-700 text-sm font-medium rounded-md hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-gray-300 transition-colors cursor-pointer",children:"Cancel"}),e.jsx("button",{onClick:r,disabled:!n.trim(),className:"px-4 py-2 bg-[#005c75] text-white text-sm font-medium rounded-md hover:bg-[#004a5c] focus:outline-none focus:ring-2 focus:ring-[#005c75] focus:ring-offset-1 transition-colors cursor-pointer disabled:bg-gray-300 disabled:cursor-not-allowed",children:"Save"})]})]})})}function p(u){const[m,a]=i.useState([]),o=u?`codeyam-custom-sizes-${u}`:null;i.useEffect(()=>{if(!o||typeof window>"u"){a([]);return}try{const s=localStorage.getItem(o);if(s){const r=JSON.parse(s);Array.isArray(r)&&a(r)}}catch(s){console.error("[useCustomSizes] Failed to load custom sizes:",s),a([])}},[o]);const n=i.useCallback(s=>{if(!(!o||typeof window>"u"))try{localStorage.setItem(o,JSON.stringify(s))}catch(r){console.error("[useCustomSizes] Failed to save custom sizes:",r)}},[o]),x=i.useCallback((s,r,c)=>{a(t=>{const f=t.findIndex(b=>b.name===s),g={name:s,width:r,height:c};let d;return f>=0?(d=[...t],d[f]=g):d=[...t,g],n(d),d})},[n]),l=i.useCallback(s=>{a(r=>{const c=r.filter(t=>t.name!==s);return n(c),c})},[n]);return{customSizes:m,addCustomSize:x,removeCustomSize:l}}export{y as S,p as u};
@@ -0,0 +1,2 @@
1
+ import{r as t}from"./chunk-JZWAC4HX-C4pqxYJB.js";function I(i,s){const[d,n]=t.useState(""),[g,l]=t.useState(!1),[h,a]=t.useState(null),[u,r]=t.useState(!1);t.useEffect(()=>{s&&(r(!1),l(!1),a(null))},[s]),t.useEffect(()=>{if(!i||!s){s||n("");return}const L=async()=>{if(!u)try{const c=await fetch(`/api/logs/${i}`);if(c.ok){const o=(await c.text()).trim().split(`
2
+ `).filter(e=>e.length>0);if(o.length<3){l(!1),r(!1),a(null),n("");return}const f=o.filter(e=>e.includes("CodeYam Log Level 1"));if(f.length>0){const e=f[f.length-1];n(e.replace(/.*CodeYam Log Level 1: /,""))}const E=o.find(e=>e.includes("$$INTERACTIVE_SERVER_URL$$:"));if(E){const e=E.split("$$INTERACTIVE_SERVER_URL$$:")[1].trim();a(e),r(!0)}o.some(e=>e.includes("CodeYam: Exiting start.js"))&&l(!0)}}catch{}};L().catch(()=>{});const $=setInterval(()=>{L().catch(()=>{})},500);return()=>clearInterval($)},[i,s,u]);const m=t.useCallback(()=>{n(""),l(!1),a(null),r(!1)},[]);return{lastLine:d,interactiveUrl:h,isCompleted:g,resetLogs:m}}export{I as u};
@@ -0,0 +1 @@
1
+ import{r as e,j as x,c as i}from"./chunk-JZWAC4HX-C4pqxYJB.js";const s={source:"navbar"},r=e.createContext(void 0);function y({children:t}){const[n,o]=e.useState(s),a=e.useCallback(u=>{o(u)},[]),c=e.useCallback(()=>{o(s)},[]);return x.jsx(r.Provider,{value:{contextData:n,setContextData:a,resetContextData:c},children:t})}function D(t){const n=e.useContext(r),o=e.useRef(n);e.useEffect(()=>{if(o.current)return o.current.setContextData(t),()=>{var a;(a=o.current)==null||a.resetContextData()}},[t.source,t.entitySha,t.scenarioId,t.analysisId,t.entityName,t.entityType,t.scenarioName,t.errorMessage])}function p(){const t=e.useContext(r),n=i();return t?{source:t.contextData.source,entitySha:t.contextData.entitySha,scenarioId:t.contextData.scenarioId,analysisId:t.contextData.analysisId,currentUrl:n.pathname,entityName:t.contextData.entityName,entityType:t.contextData.entityType,scenarioName:t.contextData.scenarioName,errorMessage:t.contextData.errorMessage}:{source:"navbar",currentUrl:n.pathname}}export{y as R,p as a,D as u};
@@ -1 +1 @@
1
- import{r as t,j as T}from"./chunk-WWGJGFF6-CgXbbZRx.js";const n=t.createContext(void 0);function m({children:o}){const[i,r]=t.useState([]),c=t.useCallback((s,e="info",a=5e3)=>{const d={id:`toast-${Date.now()}-${Math.random()}`,message:s,type:e,duration:a};r(x=>[...x,d])},[]),u=t.useCallback(s=>{r(e=>e.filter(a=>a.id!==s))},[]);return T.jsx(n.Provider,{value:{toasts:i,showToast:c,closeToast:u},children:o})}function v(){const o=t.useContext(n);if(!o)throw new Error("useToast must be used within a ToastProvider");return o}export{m as T,v as u};
1
+ import{r as t,j as T}from"./chunk-JZWAC4HX-C4pqxYJB.js";const n=t.createContext(void 0);function m({children:o}){const[i,r]=t.useState([]),c=t.useCallback((s,e="info",a=5e3)=>{const d={id:`toast-${Date.now()}-${Math.random()}`,message:s,type:e,duration:a};r(x=>[...x,d])},[]),u=t.useCallback(s=>{r(e=>e.filter(a=>a.id!==s))},[]);return T.jsx(n.Provider,{value:{toasts:i,showToast:c,closeToast:u},children:o})}function v(){const o=t.useContext(n);if(!o)throw new Error("useToast must be used within a ToastProvider");return o}export{m as T,v as u};