@codeyam/codeyam-cli 0.1.0-staging.6e699e5 → 0.1.0-staging.73a4bf4

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 (563) hide show
  1. package/analyzer-template/.build-info.json +7 -7
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +8 -8
  4. package/analyzer-template/packages/ai/index.ts +11 -2
  5. package/analyzer-template/packages/ai/package.json +2 -2
  6. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +100 -18
  7. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +67 -9
  8. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +41 -17
  9. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  10. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +409 -50
  11. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  12. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +21 -6
  13. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +1007 -249
  14. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +5 -1
  15. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +16 -3
  16. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +6 -4
  17. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +54 -3
  18. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +60 -15
  19. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  20. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +140 -14
  21. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  22. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  23. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +393 -97
  24. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +33 -15
  25. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +58 -3
  26. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +315 -6
  27. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +9 -5
  28. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +49 -5
  29. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +1 -1
  30. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +649 -142
  31. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +1 -1
  32. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +51 -3
  33. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  34. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +90 -96
  35. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  36. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +10 -7
  37. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +24 -4
  38. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +25 -13
  39. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +4 -3
  40. package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +114 -2
  41. package/analyzer-template/packages/analyze/index.ts +2 -0
  42. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +65 -59
  43. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +113 -26
  44. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  45. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  46. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +11 -0
  47. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  48. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  49. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  50. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +89 -9
  51. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +19 -4
  52. package/analyzer-template/packages/analyze/src/lib/files/analyze/dependencyResolver.ts +6 -0
  53. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +4 -2
  54. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +0 -3
  55. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +4 -5
  56. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +14 -12
  57. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1315 -0
  58. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +61 -13
  59. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +87 -25
  60. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +229 -19
  61. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +117 -9
  62. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +571 -74
  63. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  64. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +2 -1
  65. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  66. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  67. package/analyzer-template/packages/aws/package.json +1 -1
  68. package/analyzer-template/packages/database/package.json +1 -1
  69. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
  70. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
  71. package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
  72. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
  73. package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
  74. package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
  75. package/analyzer-template/packages/database/src/lib/kysely/db.ts +14 -1
  76. package/analyzer-template/packages/database/src/lib/kysely/tables/commitsTable.ts +6 -0
  77. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +1 -1
  78. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  79. package/analyzer-template/packages/database/src/lib/loadAnalyses.ts +58 -1
  80. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +13 -0
  81. package/analyzer-template/packages/database/src/lib/loadBranch.ts +16 -1
  82. package/analyzer-template/packages/database/src/lib/loadCommit.ts +11 -0
  83. package/analyzer-template/packages/database/src/lib/loadCommits.ts +28 -0
  84. package/analyzer-template/packages/database/src/lib/loadEntities.ts +26 -3
  85. package/analyzer-template/packages/database/src/lib/loadEntityBranches.ts +12 -0
  86. package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
  87. package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
  88. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
  89. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +7 -14
  90. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
  91. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
  92. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
  93. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
  94. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
  95. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
  96. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
  97. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
  98. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
  99. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
  100. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
  101. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
  102. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
  103. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -0
  104. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
  105. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +11 -1
  106. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
  107. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts +1 -0
  108. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.d.ts.map +1 -1
  109. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js +3 -0
  110. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/commitsTable.js.map +1 -1
  111. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +1 -1
  112. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  113. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  114. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  115. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  116. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts +2 -0
  117. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.d.ts.map +1 -1
  118. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js +45 -2
  119. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalyses.js.map +1 -1
  120. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
  121. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +8 -0
  122. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
  123. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js +11 -1
  124. package/analyzer-template/packages/github/dist/database/src/lib/loadBranch.js.map +1 -1
  125. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.d.ts.map +1 -1
  126. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js +7 -0
  127. package/analyzer-template/packages/github/dist/database/src/lib/loadCommit.js.map +1 -1
  128. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts +3 -1
  129. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.d.ts.map +1 -1
  130. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +22 -1
  131. package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js.map +1 -1
  132. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts +3 -1
  133. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -1
  134. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +23 -4
  135. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -1
  136. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.d.ts.map +1 -1
  137. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js +9 -0
  138. package/analyzer-template/packages/github/dist/database/src/lib/loadEntityBranches.js.map +1 -1
  139. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
  140. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
  141. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
  142. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
  143. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
  144. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -1
  145. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts +2 -2
  146. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -1
  147. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +5 -4
  148. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -1
  149. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts +2 -0
  150. package/analyzer-template/packages/github/dist/types/src/types/Commit.d.ts.map +1 -1
  151. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  152. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  153. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  154. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  155. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  156. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  157. package/analyzer-template/packages/github/package.json +1 -1
  158. package/analyzer-template/packages/types/src/types/Commit.ts +2 -0
  159. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +7 -0
  160. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +6 -5
  161. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  162. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts +2 -0
  163. package/analyzer-template/packages/utils/dist/types/src/types/Commit.d.ts.map +1 -1
  164. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  165. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  166. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  167. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  168. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  169. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  170. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  171. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +93 -2
  172. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  173. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +108 -2
  174. package/analyzer-template/playwright/capture.ts +20 -8
  175. package/analyzer-template/playwright/captureStatic.ts +1 -1
  176. package/analyzer-template/project/analyzeBaselineCommit.ts +5 -0
  177. package/analyzer-template/project/analyzeRegularCommit.ts +5 -0
  178. package/analyzer-template/project/captureLibraryFunctionDirect.ts +29 -26
  179. package/analyzer-template/project/constructMockCode.ts +92 -12
  180. package/analyzer-template/project/createEntitiesAndSortFiles.ts +83 -0
  181. package/analyzer-template/project/loadReadyToBeCaptured.ts +65 -41
  182. package/analyzer-template/project/orchestrateCapture/AwsCaptureTaskRunner.ts +12 -4
  183. package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +11 -6
  184. package/analyzer-template/project/orchestrateCapture/taskRunner.ts +4 -2
  185. package/analyzer-template/project/orchestrateCapture.ts +45 -6
  186. package/analyzer-template/project/start.ts +35 -11
  187. package/analyzer-template/project/writeMockDataTsx.ts +181 -8
  188. package/analyzer-template/project/writeScenarioComponents.ts +103 -12
  189. package/analyzer-template/project/writeSimpleRoot.ts +21 -11
  190. package/analyzer-template/scripts/comboWorkerLoop.cjs +98 -50
  191. package/background/src/lib/local/createLocalAnalyzer.js +1 -1
  192. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  193. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +5 -0
  194. package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
  195. package/background/src/lib/virtualized/project/analyzeRegularCommit.js +5 -0
  196. package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
  197. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js +3 -3
  198. package/background/src/lib/virtualized/project/captureLibraryFunctionDirect.js.map +1 -1
  199. package/background/src/lib/virtualized/project/constructMockCode.js +77 -6
  200. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  201. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js +73 -1
  202. package/background/src/lib/virtualized/project/createEntitiesAndSortFiles.js.map +1 -1
  203. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js +19 -8
  204. package/background/src/lib/virtualized/project/loadReadyToBeCaptured.js.map +1 -1
  205. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js +2 -2
  206. package/background/src/lib/virtualized/project/orchestrateCapture/AwsCaptureTaskRunner.js.map +1 -1
  207. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +4 -4
  208. package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
  209. package/background/src/lib/virtualized/project/orchestrateCapture.js +38 -6
  210. package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
  211. package/background/src/lib/virtualized/project/start.js +32 -11
  212. package/background/src/lib/virtualized/project/start.js.map +1 -1
  213. package/background/src/lib/virtualized/project/writeMockDataTsx.js +162 -4
  214. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  215. package/background/src/lib/virtualized/project/writeScenarioComponents.js +85 -15
  216. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  217. package/background/src/lib/virtualized/project/writeSimpleRoot.js +21 -11
  218. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  219. package/codeyam-cli/scripts/apply-setup.js +180 -0
  220. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  221. package/codeyam-cli/src/cli.js +4 -0
  222. package/codeyam-cli/src/cli.js.map +1 -1
  223. package/codeyam-cli/src/codeyam-cli.js +18 -2
  224. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  225. package/codeyam-cli/src/commands/analyze.js +4 -2
  226. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  227. package/codeyam-cli/src/commands/baseline.js +2 -0
  228. package/codeyam-cli/src/commands/baseline.js.map +1 -1
  229. package/codeyam-cli/src/commands/debug.js +9 -5
  230. package/codeyam-cli/src/commands/debug.js.map +1 -1
  231. package/codeyam-cli/src/commands/default.js +31 -20
  232. package/codeyam-cli/src/commands/default.js.map +1 -1
  233. package/codeyam-cli/src/commands/detect-universal-mocks.js +2 -0
  234. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +1 -1
  235. package/codeyam-cli/src/commands/init.js +49 -257
  236. package/codeyam-cli/src/commands/init.js.map +1 -1
  237. package/codeyam-cli/src/commands/memory.js +264 -0
  238. package/codeyam-cli/src/commands/memory.js.map +1 -0
  239. package/codeyam-cli/src/commands/recapture.js +2 -0
  240. package/codeyam-cli/src/commands/recapture.js.map +1 -1
  241. package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
  242. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  243. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  244. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  245. package/codeyam-cli/src/commands/test-startup.js +2 -0
  246. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  247. package/codeyam-cli/src/commands/verify.js +14 -2
  248. package/codeyam-cli/src/commands/verify.js.map +1 -1
  249. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +128 -86
  250. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  251. package/codeyam-cli/src/utils/analysisRunner.js +21 -2
  252. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  253. package/codeyam-cli/src/utils/analyzer.js +7 -0
  254. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  255. package/codeyam-cli/src/utils/backgroundServer.js +107 -19
  256. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  257. package/codeyam-cli/src/utils/generateReport.js +2 -2
  258. package/codeyam-cli/src/utils/install-skills.js +72 -47
  259. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  260. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  261. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  262. package/codeyam-cli/src/utils/progress.js +7 -0
  263. package/codeyam-cli/src/utils/progress.js.map +1 -1
  264. package/codeyam-cli/src/utils/queue/job.js +4 -0
  265. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  266. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  267. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  268. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  269. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  270. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +230 -0
  271. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  272. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  273. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  274. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  275. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  276. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  277. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  278. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  279. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  280. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +75 -0
  281. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  282. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +378 -0
  283. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  284. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +115 -0
  285. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  286. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  287. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  288. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  289. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  290. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  291. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  292. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  293. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  294. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  295. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  296. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  297. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  298. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  299. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  300. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  301. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  302. package/codeyam-cli/src/utils/rules/index.js +6 -0
  303. package/codeyam-cli/src/utils/rules/index.js.map +1 -0
  304. package/codeyam-cli/src/utils/rules/parser.js +83 -0
  305. package/codeyam-cli/src/utils/rules/parser.js.map +1 -0
  306. package/codeyam-cli/src/utils/rules/pathMatcher.js +18 -0
  307. package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -0
  308. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  309. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  310. package/codeyam-cli/src/utils/rules/staleness.js +137 -0
  311. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -0
  312. package/codeyam-cli/src/utils/serverState.js +37 -10
  313. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  314. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +21 -44
  315. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  316. package/codeyam-cli/src/webserver/app/lib/database.js +21 -6
  317. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  318. package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
  319. package/codeyam-cli/src/webserver/backgroundServer.js +50 -0
  320. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  321. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-D9i_zSlY.js +1 -0
  322. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BLlhOa3C.js +11 -0
  323. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-DLqD3qNt.js → EntityTypeBadge-De5b5pC7.js} +1 -1
  324. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-Ba2JVPzP.js → EntityTypeIcon-CzdG5I7z.js} +1 -1
  325. package/codeyam-cli/src/webserver/build/client/assets/{InlineSpinner-C8lyxW9k.js → InlineSpinner-Bclf8Hka.js} +1 -1
  326. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-aht4aafF.js → InteractivePreview-Ce-byqKl.js} +2 -2
  327. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-CVtiBnY5.js → LibraryFunctionPreview-DEMHrl7v.js} +1 -1
  328. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-B0GLXMsr.js → LoadingDots-B1LNGboS.js} +1 -1
  329. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-xgeCVgSM.js → LogViewer-B0Ll1DjK.js} +1 -1
  330. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-D4TZhLuw.js → ReportIssueModal-CVOvmCKb.js} +3 -13
  331. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-DuDvi0jm.js → SafeScreenshot-L0DWHa_L.js} +1 -1
  332. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DEx02QDa.js → ScenarioViewer-D54Mmpwi.js} +3 -3
  333. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-DyFZkK0l.js → TruncatedFilePath-C7PFQfXy.js} +1 -1
  334. package/codeyam-cli/src/webserver/build/client/assets/{_index-BwqWJOgH.js → _index-CKTtYlBU.js} +1 -1
  335. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-DoLIqZX2.js → activity.(_tab)-CdziRIWU.js} +6 -16
  336. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-CPXtdaWm.js +17 -0
  337. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  338. package/codeyam-cli/src/webserver/build/client/assets/api.memory-profile-l0sNRNKZ.js +1 -0
  339. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  340. package/codeyam-cli/src/webserver/build/client/assets/book-open-Ch8b7GyQ.js +6 -0
  341. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-Cx24_aWc.js → chevron-down-vJHJExlT.js} +1 -1
  342. package/codeyam-cli/src/webserver/build/client/assets/{chunk-EPOLDU6W-CXRTFQ3F.js → chunk-JZWAC4HX-BEyX4X6_.js} +12 -12
  343. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-BOARzkeR.js → circle-check-rwynPZTW.js} +1 -1
  344. package/codeyam-cli/src/webserver/build/client/assets/copy-BBSpeBYf.js +11 -0
  345. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-BdhJEx6B.js → createLucideIcon-DHVDauuc.js} +1 -1
  346. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-B9_ZqelV.js +1 -0
  347. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-BOPComvD.js +16 -0
  348. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js → entity._sha.scenarios._scenarioId.fullscreen-Cfw__yQa.js} +1 -1
  349. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-D1T4TGjf.js → entity._sha_.create-scenario-BIDUUrI3.js} +1 -1
  350. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-CTBG2mmz.js → entity._sha_.edit._scenarioId-BEqewwtZ.js} +1 -1
  351. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-CS2cb_eZ.js → entry.client-Dxqz8ygt.js} +1 -1
  352. package/codeyam-cli/src/webserver/build/client/assets/{fileTableUtils-DMJ7zii9.js → fileTableUtils-CYnF5KWN.js} +1 -1
  353. package/codeyam-cli/src/webserver/build/client/assets/files-B_dAq2PQ.js +1 -0
  354. package/codeyam-cli/src/webserver/build/client/assets/{git-B4RJRvYB.js → git-BHPqH3Ch.js} +8 -8
  355. package/codeyam-cli/src/webserver/build/client/assets/globals-BJGhRykz.css +1 -0
  356. package/codeyam-cli/src/webserver/build/client/assets/{index-lzqtyFU8.js → index-DgAAopZk.js} +1 -1
  357. package/codeyam-cli/src/webserver/build/client/assets/{index-B1h680n5.js → index-viijWaN6.js} +1 -1
  358. package/codeyam-cli/src/webserver/build/client/assets/labs-ChoAe3xq.js +1 -0
  359. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-B7B9V-bu.js → loader-circle-LGi2eKI5.js} +1 -1
  360. package/codeyam-cli/src/webserver/build/client/assets/manifest-87493a32.js +1 -0
  361. package/codeyam-cli/src/webserver/build/client/assets/memory-D9eA6kTo.js +78 -0
  362. package/codeyam-cli/src/webserver/build/client/assets/pause-DxJFmMsK.js +11 -0
  363. package/codeyam-cli/src/webserver/build/client/assets/root-C3r0p_7H.js +62 -0
  364. package/codeyam-cli/src/webserver/build/client/assets/{search-CxXUmBSd.js → search-Cu3QE9E5.js} +1 -1
  365. package/codeyam-cli/src/webserver/build/client/assets/settings-KH9TdArD.js +1 -0
  366. package/codeyam-cli/src/webserver/build/client/assets/{simulations-DwFIBT09.js → simulations-D9Fkx0-d.js} +1 -1
  367. package/codeyam-cli/src/webserver/build/client/assets/terminal-dAhIBEcd.js +11 -0
  368. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-B6LgvRJg.js → triangle-alert-C4CYTEeP.js} +1 -1
  369. package/codeyam-cli/src/webserver/build/client/assets/{useCustomSizes-C1v1PQzo.js → useCustomSizes-CLPnITMB.js} +1 -1
  370. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-aSv48UbS.js → useLastLogLine-DmGI38Et.js} +1 -1
  371. package/codeyam-cli/src/webserver/build/client/assets/{useReportContext-DYxHZQuP.js → useReportContext-BK0S88PB.js} +1 -1
  372. package/codeyam-cli/src/webserver/build/client/assets/{useToast-mBRpZPiu.js → useToast-CJ-JqR0l.js} +1 -1
  373. package/codeyam-cli/src/webserver/build/server/assets/index-CkkmL6r5.js +1 -0
  374. package/codeyam-cli/src/webserver/build/server/assets/server-build-iBGjHYtO.js +259 -0
  375. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  376. package/codeyam-cli/src/webserver/build-info.json +5 -5
  377. package/codeyam-cli/templates/{codeyam:debug.md → codeyam-debug.md} +1 -1
  378. package/codeyam-cli/templates/codeyam-diagnose.md +481 -0
  379. package/codeyam-cli/templates/{codeyam-power-rules-hook.sh → codeyam-memory-hook.sh} +22 -23
  380. package/codeyam-cli/templates/codeyam-memory.md +396 -0
  381. package/codeyam-cli/templates/codeyam-new-rule.md +13 -0
  382. package/codeyam-cli/templates/{codeyam:setup.md → codeyam-setup.md} +13 -1
  383. package/codeyam-cli/templates/{codeyam:sim.md → codeyam-sim.md} +1 -1
  384. package/codeyam-cli/templates/{codeyam:test.md → codeyam-test.md} +1 -1
  385. package/codeyam-cli/templates/{codeyam:verify.md → codeyam-verify.md} +1 -1
  386. package/codeyam-cli/templates/rule-notification-hook.py +56 -0
  387. package/codeyam-cli/templates/rule-reflection-hook.py +627 -0
  388. package/codeyam-cli/templates/rules-instructions.md +132 -0
  389. package/package.json +15 -13
  390. package/packages/ai/index.js +3 -2
  391. package/packages/ai/index.js.map +1 -1
  392. package/packages/ai/src/lib/analyzeScope.js +82 -13
  393. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  394. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +54 -8
  395. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  396. package/packages/ai/src/lib/astScopes/methodSemantics.js +41 -17
  397. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  398. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  399. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  400. package/packages/ai/src/lib/astScopes/processExpression.js +317 -44
  401. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  402. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  403. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  404. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +776 -171
  405. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  406. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +5 -1
  407. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  408. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +13 -3
  409. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -1
  410. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +6 -4
  411. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -1
  412. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +52 -3
  413. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  414. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +55 -11
  415. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  416. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  417. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  418. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +122 -12
  419. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  420. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  421. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  422. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  423. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  424. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +333 -86
  425. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  426. package/packages/ai/src/lib/dataStructureChunking.js +26 -11
  427. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
  428. package/packages/ai/src/lib/generateEntityDataStructure.js +46 -2
  429. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  430. package/packages/ai/src/lib/generateEntityScenarioData.js +227 -4
  431. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  432. package/packages/ai/src/lib/generateEntityScenarios.js +7 -1
  433. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  434. package/packages/ai/src/lib/generateExecutionFlows.js +26 -4
  435. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
  436. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +447 -80
  437. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -1
  438. package/packages/ai/src/lib/isolateScopes.js +39 -3
  439. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  440. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  441. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  442. package/packages/ai/src/lib/mergeStatements.js +70 -51
  443. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  444. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  445. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  446. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +10 -4
  447. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  448. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +17 -2
  449. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  450. package/packages/ai/src/lib/resolvePathToControllable.js +24 -14
  451. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -1
  452. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  453. package/packages/ai/src/lib/worker/analyzeScopeWorker.js +94 -1
  454. package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
  455. package/packages/analyze/index.js +1 -0
  456. package/packages/analyze/index.js.map +1 -1
  457. package/packages/analyze/src/lib/FileAnalyzer.js +60 -36
  458. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  459. package/packages/analyze/src/lib/ProjectAnalyzer.js +96 -26
  460. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  461. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  462. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  463. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  464. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  465. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +6 -0
  466. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  467. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  468. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  469. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  470. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  471. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  472. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  473. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +65 -7
  474. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  475. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +17 -4
  476. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  477. package/packages/analyze/src/lib/files/analyze/dependencyResolver.js +5 -0
  478. package/packages/analyze/src/lib/files/analyze/dependencyResolver.js.map +1 -1
  479. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +2 -1
  480. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  481. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +0 -3
  482. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  483. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +3 -2
  484. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  485. package/packages/analyze/src/lib/files/getImportedExports.js +11 -7
  486. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  487. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +880 -0
  488. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  489. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +56 -10
  490. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -1
  491. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +75 -21
  492. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  493. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +150 -17
  494. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  495. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +56 -8
  496. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -1
  497. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +478 -54
  498. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  499. package/packages/analyze/src/lib/files/setImportedExports.js +2 -1
  500. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  501. package/packages/analyze/src/lib/index.js +1 -0
  502. package/packages/analyze/src/lib/index.js.map +1 -1
  503. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  504. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  505. package/packages/database/src/lib/analysisBranchToDb.js +1 -1
  506. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
  507. package/packages/database/src/lib/analysisToDb.js +1 -1
  508. package/packages/database/src/lib/analysisToDb.js.map +1 -1
  509. package/packages/database/src/lib/branchToDb.js +1 -1
  510. package/packages/database/src/lib/branchToDb.js.map +1 -1
  511. package/packages/database/src/lib/commitBranchToDb.js +1 -1
  512. package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
  513. package/packages/database/src/lib/commitToDb.js +1 -1
  514. package/packages/database/src/lib/commitToDb.js.map +1 -1
  515. package/packages/database/src/lib/fileToDb.js +1 -1
  516. package/packages/database/src/lib/fileToDb.js.map +1 -1
  517. package/packages/database/src/lib/kysely/db.js +11 -1
  518. package/packages/database/src/lib/kysely/db.js.map +1 -1
  519. package/packages/database/src/lib/kysely/tables/commitsTable.js +3 -0
  520. package/packages/database/src/lib/kysely/tables/commitsTable.js.map +1 -1
  521. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  522. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  523. package/packages/database/src/lib/loadAnalyses.js +45 -2
  524. package/packages/database/src/lib/loadAnalyses.js.map +1 -1
  525. package/packages/database/src/lib/loadAnalysis.js +8 -0
  526. package/packages/database/src/lib/loadAnalysis.js.map +1 -1
  527. package/packages/database/src/lib/loadBranch.js +11 -1
  528. package/packages/database/src/lib/loadBranch.js.map +1 -1
  529. package/packages/database/src/lib/loadCommit.js +7 -0
  530. package/packages/database/src/lib/loadCommit.js.map +1 -1
  531. package/packages/database/src/lib/loadCommits.js +22 -1
  532. package/packages/database/src/lib/loadCommits.js.map +1 -1
  533. package/packages/database/src/lib/loadEntities.js +23 -4
  534. package/packages/database/src/lib/loadEntities.js.map +1 -1
  535. package/packages/database/src/lib/loadEntityBranches.js +9 -0
  536. package/packages/database/src/lib/loadEntityBranches.js.map +1 -1
  537. package/packages/database/src/lib/projectToDb.js +1 -1
  538. package/packages/database/src/lib/projectToDb.js.map +1 -1
  539. package/packages/database/src/lib/saveFiles.js +1 -1
  540. package/packages/database/src/lib/saveFiles.js.map +1 -1
  541. package/packages/database/src/lib/scenarioToDb.js +1 -1
  542. package/packages/database/src/lib/scenarioToDb.js.map +1 -1
  543. package/packages/database/src/lib/updateCommitMetadata.js +5 -4
  544. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -1
  545. package/packages/utils/src/lib/fs/rsyncCopy.js +93 -2
  546. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  547. package/scripts/finalize-analyzer.cjs +8 -76
  548. package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BXhEawa3.js +0 -1
  549. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BRb-0kQl.js +0 -1
  550. package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-C2N4Op8e.js +0 -23
  551. package/codeyam-cli/src/webserver/build/client/assets/files-Cs4MdYtv.js +0 -1
  552. package/codeyam-cli/src/webserver/build/client/assets/git-commit-horizontal-CysbcZxi.js +0 -6
  553. package/codeyam-cli/src/webserver/build/client/assets/globals-DMUaGAqV.css +0 -1
  554. package/codeyam-cli/src/webserver/build/client/assets/manifest-f874c610.js +0 -1
  555. package/codeyam-cli/src/webserver/build/client/assets/root-Bz5TunQg.js +0 -57
  556. package/codeyam-cli/src/webserver/build/client/assets/rules-hEkvVw2-.js +0 -97
  557. package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +0 -1
  558. package/codeyam-cli/src/webserver/build/server/assets/index-967OuJoF.js +0 -1
  559. package/codeyam-cli/src/webserver/build/server/assets/server-build-DRTmerg9.js +0 -257
  560. package/codeyam-cli/templates/codeyam:diagnose.md +0 -650
  561. package/codeyam-cli/templates/codeyam:new-rule.md +0 -13
  562. package/codeyam-cli/templates/codeyam:power-rules.md +0 -447
  563. /package/codeyam-cli/src/webserver/build/client/assets/{api.rules-l0sNRNKZ.js → api.agent-transcripts-l0sNRNKZ.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fillInSchemaGapsAndUnknowns.js","sourceRoot":"","sources":["../../../../../../../../packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fillInSchemaGapsAndUnknowns.js","sourceRoot":"","sources":["../../../../../../../../packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,47 @@
1
- const DEFAULT_MAX_KEYS_PER_CHUNK = 8;
1
+ const DEFAULT_MAX_CHUNK_SIZE = 10000; // ~10K chars per chunk
2
2
  /**
3
3
  * Chunk a large data structure into smaller pieces for focused LLM processing.
4
4
  *
5
5
  * Large schemas overwhelm LLMs, causing them to make mistakes on some keys.
6
6
  * By processing smaller chunks, each key gets more focused attention.
7
7
  *
8
+ * Uses cumulative JSON size to decide chunk boundaries rather than a fixed
9
+ * key count, so a single oversized key gets its own chunk while many small
10
+ * keys are grouped together efficiently.
11
+ *
8
12
  * @param dataForMocks - The full data structure schema
9
- * @param options - Chunking options (maxKeysPerChunk defaults to 8)
13
+ * @param options - Chunking options (maxChunkSize defaults to 10_000)
10
14
  * @returns Array of smaller data structure chunks
11
15
  */
12
16
  export function chunkDataStructure(dataForMocks, options = {}) {
13
17
  if (!dataForMocks || typeof dataForMocks !== 'object') {
14
18
  return [dataForMocks];
15
19
  }
16
- const { maxKeysPerChunk = DEFAULT_MAX_KEYS_PER_CHUNK } = options;
20
+ const { maxChunkSize = DEFAULT_MAX_CHUNK_SIZE } = options;
17
21
  const keys = Object.keys(dataForMocks);
18
- // Don't chunk if already small enough
19
- if (keys.length <= maxKeysPerChunk) {
22
+ // Calculate total size to see if chunking is needed
23
+ const totalSize = JSON.stringify(dataForMocks).length;
24
+ if (totalSize <= maxChunkSize) {
20
25
  return [dataForMocks];
21
26
  }
27
+ // Greedily pack keys into chunks by cumulative size
22
28
  const chunks = [];
23
- for (let i = 0; i < keys.length; i += maxKeysPerChunk) {
24
- const chunkKeys = keys.slice(i, i + maxKeysPerChunk);
25
- const chunk = {};
26
- for (const key of chunkKeys) {
27
- chunk[key] = dataForMocks[key];
29
+ let currentChunk = {};
30
+ let currentSize = 0;
31
+ for (const key of keys) {
32
+ const keySize = JSON.stringify(dataForMocks[key]).length;
33
+ // If adding this key would exceed the limit AND chunk isn't empty, start a new chunk
34
+ if (currentSize > 0 && currentSize + keySize > maxChunkSize) {
35
+ chunks.push(currentChunk);
36
+ currentChunk = {};
37
+ currentSize = 0;
28
38
  }
29
- chunks.push(chunk);
39
+ currentChunk[key] = dataForMocks[key];
40
+ currentSize += keySize;
41
+ }
42
+ // Push the last chunk
43
+ if (Object.keys(currentChunk).length > 0) {
44
+ chunks.push(currentChunk);
30
45
  }
31
46
  return chunks;
32
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dataStructureChunking.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/dataStructureChunking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataStructureChunking.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/dataStructureChunking.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import isolateScopes from "./isolateScopes.js";
2
2
  import analyzeScope from "./analyzeScope.js";
3
- import { resetScopeDataStructureMetrics } from "./dataStructure/ScopeDataStructure.js";
3
+ import { transformationTracer } from "../../../../packages/analyze/index.js";
4
+ import { resetScopeDataStructureMetrics, } from "./dataStructure/ScopeDataStructure.js";
4
5
  export default async function generateEntityDataStructure({ entity, fileAnalyzer, model, }) {
5
6
  // Reset metrics counters to prevent false "infinite loop" detection when
6
7
  // processing multiple entities in the same run
@@ -61,8 +62,51 @@ export default async function generateEntityDataStructure({ entity, fileAnalyzer
61
62
  return undefined;
62
63
  }
63
64
  // Inspect the runtime type of dataStructure to see if it must be serialized
65
+ // Note: When worker threads are used, dataStructure is already serialized (no toSerializable).
66
+ // Workers are disabled when CODEYAM_TRACE_TRANSFORMS=1 to enable full tracing.
64
67
  if ('toSerializable' in entityScope.dataStructure) {
65
- return entityScope.dataStructure.toSerializable();
68
+ const scopeDataStructure = entityScope.dataStructure;
69
+ // Trace the internal state BEFORE serialization - captures what methods return
70
+ if (transformationTracer.isEnabled()) {
71
+ transformationTracer.startEntity({
72
+ name: entity.name,
73
+ entityType: entity.entityType ?? 'unknown',
74
+ filePath: entity.filePath,
75
+ });
76
+ // Capture internal state - this is what getReturnValue/getFunctionSignature return
77
+ transformationTracer.snapshot(entity.name, 'scopeDataStructure', {
78
+ signatureSchema: scopeDataStructure.getFunctionSignature({
79
+ fillInUnknowns: true,
80
+ }),
81
+ returnValueSchema: scopeDataStructure.getReturnValue({
82
+ fillInUnknowns: true,
83
+ }),
84
+ });
85
+ }
86
+ const serialized = scopeDataStructure.toSerializable();
87
+ // Trace AFTER serialization - shows what gets output
88
+ if (transformationTracer.isEnabled()) {
89
+ // Build schema from external function calls for comparison
90
+ const externalSchemas = {};
91
+ for (const efc of serialized.externalFunctionCalls ?? []) {
92
+ for (const [path, type] of Object.entries(efc.schema ?? {})) {
93
+ externalSchemas[path] = type;
94
+ }
95
+ }
96
+ transformationTracer.snapshot(entity.name, 'serialized', {
97
+ signatureSchema: serialized.functionResults?.[entity.name]?.signatureWithUnknowns,
98
+ returnValueSchema: serialized.functionResults?.[entity.name]?.returnValueWithUnknowns,
99
+ // Include external function schemas to detect serialization gaps
100
+ dependencySchemas: {
101
+ externalFunctions: {
102
+ combined: {
103
+ returnValueSchema: externalSchemas,
104
+ },
105
+ },
106
+ },
107
+ });
108
+ }
109
+ return serialized;
66
110
  }
67
111
  return entityScope.dataStructure;
68
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generateEntityDataStructure.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityDataStructure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateEntityDataStructure.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityDataStructure.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,9 @@ import validateJson from "./validateJson.js";
8
8
  import { awsLog, awsLogDebugLevel } from "../../../../packages/utils/index.js";
9
9
  import { parseJsonSafe } from "../../../../packages/ai/index.js";
10
10
  import convertNullToUndefinedBySchema from "./dataStructure/helpers/convertNullToUndefinedBySchema.js";
11
+ import convertTypeAnnotationsToValues from "./dataStructure/helpers/convertTypeAnnotationsToValues.js";
11
12
  import fixNullIdsBySchema from "./dataStructure/helpers/fixNullIdsBySchema.js";
13
+ import coerceObjectsToPrimitivesBySchema from "./dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js";
12
14
  import { deepMerge } from "../../../../packages/generate/index.js";
13
15
  import { chunkDataStructure, getRequiredValuesForChunk, } from "./dataStructureChunking.js";
14
16
  /**
@@ -235,9 +237,14 @@ function generateDefaultForSchemaType(schemaType) {
235
237
  return null;
236
238
  return schemaType; // Return the type as a string placeholder
237
239
  }
238
- if (typeof schemaType === 'object' &&
239
- schemaType !== null &&
240
- !Array.isArray(schemaType)) {
240
+ if (Array.isArray(schemaType)) {
241
+ if (schemaType.length === 0)
242
+ return [];
243
+ // Generate a single default element based on the first element's schema
244
+ const elementDefault = generateDefaultForSchemaType(schemaType[0]);
245
+ return elementDefault !== undefined ? [elementDefault] : [];
246
+ }
247
+ if (typeof schemaType === 'object' && schemaType !== null) {
241
248
  // Recursively generate defaults for nested objects
242
249
  const result = {};
243
250
  for (const [key, value] of Object.entries(schemaType)) {
@@ -342,6 +349,8 @@ function fillMissingMockDataKeysWithDefaults(mockData, dataForMocks, pathPrefix
342
349
  }
343
350
  const missingKeys = [];
344
351
  for (const key of Object.keys(dataForMocks)) {
352
+ if (key === '_nullable')
353
+ continue; // Internal marker, not a data key
345
354
  const fullPath = pathPrefix ? `${pathPrefix}.${key}` : key;
346
355
  if (mockData[key] === undefined) {
347
356
  missingKeys.push(fullPath);
@@ -367,6 +376,139 @@ function fillMissingMockDataKeysWithDefaults(mockData, dataForMocks, pathPrefix
367
376
  awsLog(`CodeYam: Generated default mock data for ${missingKeys.length} missing key(s): ${missingKeys.slice(0, 10).join(', ')}${missingKeys.length > 10 ? '...' : ''}`);
368
377
  }
369
378
  }
379
+ /**
380
+ * Enforce execution flow requiredValues by setting falsy paths to null.
381
+ *
382
+ * The LLM doesn't reliably generate null for `comparison: 'falsy'` requirements.
383
+ * For example, a flow like "diffView: falsy" should hide a modal, but the LLM
384
+ * might generate a truthy object, causing the modal to show in all screenshots.
385
+ *
386
+ * This function:
387
+ * 1. Gets requiredValues from covered flows
388
+ * 2. For 'falsy' comparisons: sets the value to null
389
+ * 3. For 'truthy' comparisons with falsy values: generates a default truthy value
390
+ */
391
+ function enforceRequiredValues(mockData, coveredFlowIds, executionFlows) {
392
+ if (!coveredFlowIds.length || !executionFlows.length) {
393
+ return;
394
+ }
395
+ // Get all requiredValues from covered flows
396
+ const coveredFlows = executionFlows.filter((flow) => coveredFlowIds.includes(flow.id));
397
+ for (const flow of coveredFlows) {
398
+ if (!flow.requiredValues)
399
+ continue;
400
+ for (const rv of flow.requiredValues) {
401
+ if (!rv.attributePath)
402
+ continue;
403
+ // Find the value in mockData - the path could be nested
404
+ // e.g., attributePath: "diffView" could be at mockData['useDiffModal()'].diffView
405
+ const result = findAndSetValueInMockData(mockData, rv.attributePath, rv.comparison, rv.valueType);
406
+ if (result.found) {
407
+ awsLog(`CodeYam: Enforced ${rv.comparison} for ${rv.attributePath} (set to ${result.newValue === null ? 'null' : typeof result.newValue})`);
408
+ }
409
+ }
410
+ }
411
+ }
412
+ /**
413
+ * Find a value in mockData by attributePath and enforce the comparison.
414
+ * The attributePath could be a simple key or a nested path.
415
+ *
416
+ * Returns { found: boolean, newValue: unknown }
417
+ */
418
+ function findAndSetValueInMockData(mockData, attributePath, comparison, valueType) {
419
+ // Try to find the path at various nesting levels
420
+ // The attributePath might be "diffView" but the actual location is
421
+ // mockData['useDiffModal()'].diffView
422
+ // Strategy 1: Direct path (e.g., mockData[attributePath])
423
+ if (attributePath in mockData) {
424
+ const currentValue = mockData[attributePath];
425
+ const { shouldChange, newValue } = getEnforcedValue(currentValue, comparison, valueType);
426
+ if (shouldChange) {
427
+ mockData[attributePath] = newValue;
428
+ return { found: true, newValue };
429
+ }
430
+ return { found: true, newValue: currentValue };
431
+ }
432
+ // Strategy 2: Search in nested objects
433
+ for (const [key, value] of Object.entries(mockData)) {
434
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
435
+ const nestedObj = value;
436
+ // Check if attributePath exists in this nested object
437
+ if (attributePath in nestedObj) {
438
+ const currentValue = nestedObj[attributePath];
439
+ const { shouldChange, newValue } = getEnforcedValue(currentValue, comparison, valueType);
440
+ if (shouldChange) {
441
+ nestedObj[attributePath] = newValue;
442
+ return { found: true, newValue };
443
+ }
444
+ return { found: true, newValue: currentValue };
445
+ }
446
+ // Also check dot-notation paths (e.g., "diffView.type")
447
+ if (attributePath.includes('.')) {
448
+ const parts = attributePath.split('.');
449
+ const firstPart = parts[0];
450
+ if (firstPart in nestedObj) {
451
+ // Recurse with the rest of the path
452
+ const result = findAndSetValueInMockData(nestedObj, attributePath, comparison, valueType);
453
+ if (result.found)
454
+ return result;
455
+ }
456
+ }
457
+ // Recursively search deeper
458
+ const result = findAndSetValueInMockData(nestedObj, attributePath, comparison, valueType);
459
+ if (result.found)
460
+ return result;
461
+ }
462
+ }
463
+ return { found: false };
464
+ }
465
+ /**
466
+ * Determine if a value should be changed to match a comparison requirement.
467
+ *
468
+ * For 'falsy' comparison: truthy values should become null
469
+ * For 'truthy' comparison: falsy values should become a default truthy value
470
+ */
471
+ function getEnforcedValue(currentValue, comparison, valueType) {
472
+ const isTruthy = Boolean(currentValue);
473
+ if (comparison === 'falsy') {
474
+ // Value should be falsy
475
+ if (isTruthy) {
476
+ return { shouldChange: true, newValue: null };
477
+ }
478
+ return { shouldChange: false, newValue: currentValue };
479
+ }
480
+ if (comparison === 'truthy') {
481
+ // Value should be truthy
482
+ if (!isTruthy) {
483
+ // Generate a default truthy value based on valueType
484
+ const defaultValue = generateDefaultTruthyValue(valueType);
485
+ return { shouldChange: true, newValue: defaultValue };
486
+ }
487
+ return { shouldChange: false, newValue: currentValue };
488
+ }
489
+ // For other comparisons (equals, exists, etc.), don't auto-enforce
490
+ return { shouldChange: false, newValue: currentValue };
491
+ }
492
+ /**
493
+ * Generate a default truthy value for a given type.
494
+ */
495
+ function generateDefaultTruthyValue(valueType) {
496
+ if (!valueType)
497
+ return { _placeholder: true };
498
+ switch (valueType.toLowerCase()) {
499
+ case 'string':
500
+ return 'default-value';
501
+ case 'number':
502
+ return 1;
503
+ case 'boolean':
504
+ return true;
505
+ case 'array':
506
+ return [{ _placeholder: true }];
507
+ case 'object':
508
+ default:
509
+ return { _placeholder: true };
510
+ }
511
+ }
370
512
  /**
371
513
  * For Default Scenario only: detect missing mockData keys and make a follow-up
372
514
  * LLM call to fill them in. This handles cases where the LLM completes normally
@@ -477,6 +619,18 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
477
619
  }
478
620
  }
479
621
  }
622
+ // Detect keys that were lost from failed or partial chunk responses
623
+ // and fill them with schema-based defaults so they aren't permanently lost.
624
+ const allChunkedKeys = chunks.flatMap((c) => Object.keys(c || {}));
625
+ const returnedKeys = new Set(Object.keys(chunkedMockData));
626
+ const missingChunkKeys = allChunkedKeys.filter((k) => !returnedKeys.has(k));
627
+ if (missingChunkKeys.length > 0) {
628
+ awsLog(`Chunked processing: ${missingChunkKeys.length} key(s) missing from chunk results, filling with defaults: ${missingChunkKeys.join(', ')}`);
629
+ const dataForMocksRecord = structure.dataForMocks;
630
+ for (const key of missingChunkKeys) {
631
+ chunkedMockData[key] = generateDefaultForSchemaType(dataForMocksRecord[key]);
632
+ }
633
+ }
480
634
  awsLog(`Chunked processing complete. Generated ${Object.keys(chunkedMockData).length} keys total`);
481
635
  }
482
636
  }
@@ -643,6 +797,15 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
643
797
  if (structure.dataForMocks && fullScenarioData.data.mockData) {
644
798
  convertNullToUndefinedBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
645
799
  }
800
+ // Coerce objects/arrays to primitives when the schema expects a primitive type.
801
+ // The LLM sometimes generates an object where the schema expects "string",
802
+ // e.g., { body: { "env": "production" } } instead of { body: "some string" }.
803
+ // This causes runtime errors like "TypeError: body.match is not a function".
804
+ // Must run BEFORE convertCommaSeparatedStringsToArrays, which intentionally
805
+ // overrides schema types for array-like field names.
806
+ if (structure.dataForMocks && fullScenarioData.data.mockData) {
807
+ coerceObjectsToPrimitivesBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
808
+ }
646
809
  // Convert comma-separated strings to arrays when appropriate.
647
810
  // The LLM sometimes generates strings like "color,size" instead of arrays
648
811
  // like ["color", "size"] when the schema type is incorrectly inferred as
@@ -651,6 +814,15 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
651
814
  if (fullScenarioData.data.mockData) {
652
815
  convertCommaSeparatedStringsToArrays(fullScenarioData.data.mockData);
653
816
  }
817
+ // Convert type annotation strings that appear as values to actual values.
818
+ // The LLM sometimes echoes the schema type annotation as the value.
819
+ // For example, if the schema says { filePath: "string | undefined" },
820
+ // the LLM might return { filePath: "string | undefined" } instead of
821
+ // generating an actual value. This converts those type strings to
822
+ // appropriate default values (e.g., "string | undefined" → undefined).
823
+ if (fullScenarioData.data.mockData) {
824
+ convertTypeAnnotationsToValues(fullScenarioData.data.mockData);
825
+ }
654
826
  // Fix null values for ID fields when the schema indicates they should be non-null.
655
827
  // The LLM sometimes generates `null` for ID fields (e.g., `"id": null`) when
656
828
  // the schema type is `"number"`. This causes runtime issues when code checks
@@ -658,6 +830,13 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
658
830
  if (structure.dataForMocks && fullScenarioData.data.mockData) {
659
831
  fixNullIdsBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
660
832
  }
833
+ // Enforce execution flow requiredValues by setting falsy paths to null.
834
+ // The LLM doesn't reliably generate null for falsy requirements (e.g., diffView: falsy
835
+ // to hide a modal). This post-processing ensures that scenarios match their
836
+ // covered flows' requiredValues.
837
+ if (fullScenarioData.data.mockData && executionFlows) {
838
+ enforceRequiredValues(fullScenarioData.data.mockData, scenario.metadata?.coveredFlows || [], executionFlows);
839
+ }
661
840
  if (structure.arguments && fullScenarioData.data.argumentsData) {
662
841
  for (let i = 0; i < fullScenarioData.data.argumentsData.length; i++) {
663
842
  if (structure.arguments[i]) {
@@ -787,6 +966,46 @@ export default async function generateEntityScenarioData({ entity, structure, sc
787
966
  scenarioData.data.argumentsData =
788
967
  defaultScenarioData.data.argumentsData.map((arg) => ({ ...arg }));
789
968
  }
969
+ // Enforce requiredValues AFTER merge for non-default scenarios
970
+ // This ensures that if a non-default scenario doesn't cover a certain flow,
971
+ // it inherits the enforcement from the default scenario
972
+ if (scenarioData.data?.mockData && executionFlows) {
973
+ // Get the flows covered by this scenario
974
+ const scenarioCoveredFlows = nonDefaultScenarios.find((s) => s.name === result.scenarioData.scenarioDescription)?.metadata?.coveredFlows || [];
975
+ // Get the paths that the scenario's flows affect
976
+ const scenarioAffectedPaths = new Set();
977
+ for (const flowId of scenarioCoveredFlows) {
978
+ const flow = executionFlows.find((f) => f.id === flowId);
979
+ if (flow?.requiredValues) {
980
+ for (const rv of flow.requiredValues) {
981
+ if (rv.attributePath) {
982
+ // Extract base path (e.g., "diffView" from "diffView.type")
983
+ const basePath = rv.attributePath.split('.')[0];
984
+ scenarioAffectedPaths.add(basePath);
985
+ }
986
+ }
987
+ }
988
+ }
989
+ // Get the default scenario's flows
990
+ const defaultCoveredFlows = defaultScenario.metadata?.coveredFlows || [];
991
+ // For paths NOT affected by the scenario, apply default's enforcement
992
+ const defaultFlowsForUnaffectedPaths = defaultCoveredFlows.filter((flowId) => {
993
+ const flow = executionFlows.find((f) => f.id === flowId);
994
+ if (!flow?.requiredValues)
995
+ return false;
996
+ // Check if this flow affects a path that the scenario doesn't cover
997
+ return flow.requiredValues.some((rv) => {
998
+ if (!rv.attributePath)
999
+ return false;
1000
+ const basePath = rv.attributePath.split('.')[0];
1001
+ return !scenarioAffectedPaths.has(basePath);
1002
+ });
1003
+ });
1004
+ // Apply enforcement from default scenario for unaffected paths
1005
+ if (defaultFlowsForUnaffectedPaths.length > 0) {
1006
+ enforceRequiredValues(scenarioData.data.mockData, defaultFlowsForUnaffectedPaths, executionFlows);
1007
+ }
1008
+ }
790
1009
  return scenarioData;
791
1010
  });
792
1011
  scenarioDatas.push(...mergedScenarioDatas);
@@ -810,7 +1029,8 @@ Generate COMPLETE, robust data for the entire data structure.
810
1029
  : `## Non-Default Scenario
811
1030
  Generate ONLY the differences from the default scenario.
812
1031
  - Include only fields that need to change
813
- - Set to \`null\` to remove data
1032
+ - For object/scalar fields: set to \`null\` to remove/unset the data
1033
+ - For array fields: use \`[]\` for empty arrays (not \`null\`) unless the schema type explicitly includes \`| null\`
814
1034
  - Omit unchanged fields—they merge from default`;
815
1035
  // Only include the "NO ERROR DATA" instruction when the scenario doesn't require error data
816
1036
  const noErrorDataInstruction = requiresErrorData
@@ -892,6 +1112,7 @@ Use simple elements only (\`<div>\`, \`<span>\`). No custom components.
892
1112
  - Arrays should have many items (at least 4) unless specified otherwise
893
1113
  - Each item must follow the exact structure provided
894
1114
  - In general we want robust data, not minimal data unless specified otherwise
1115
+ - For empty arrays, use \`[]\` (not \`null\`) unless the schema type explicitly includes \`| null\` and the scenario requires the attribute be removed
895
1116
 
896
1117
  ## CRITICAL: Preserve Exact Structure
897
1118
  Your response MUST mirror the EXACT nested structure provided in mockData Structure.
@@ -965,6 +1186,7 @@ Use simple elements only (\`<div>\`, \`<span>\`). No custom components.
965
1186
  ### Arrays
966
1187
  - Arrays should have many items (at least 4) unless specified otherwise
967
1188
  - Each item must follow the exact structure provided
1189
+ - For empty arrays, use \`[]\` (not \`null\`) unless the schema type explicitly includes \`| null\` and the scenario requires the attribute be removed
968
1190
 
969
1191
  ## CRITICAL: Preserve Exact Structure
970
1192
  Your response MUST mirror the EXACT nested structure provided for the missing keys.
@@ -1087,5 +1309,6 @@ NEVER include "error" fields in responses. Skip them entirely.
1087
1309
  - No \`undefined\`—use \`null\` or omit
1088
1310
  - Generate data for ALL keys in the chunk (don't skip any)
1089
1311
  - Arrays should have many items (at least 4) unless specified otherwise
1312
+ - For empty arrays, use \`[]\` (not \`null\`) unless the schema type explicitly includes \`| null\` and the scenario requires the attribute be removed
1090
1313
  `;
1091
1314
  //# sourceMappingURL=generateEntityScenarioData.js.map