@codeyam/codeyam-cli 0.1.0-staging.8778565 → 0.1.0-staging.87dd4be

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 (310) hide show
  1. package/analyzer-template/.build-info.json +8 -8
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +2 -2
  4. package/analyzer-template/packages/ai/package.json +1 -1
  5. package/analyzer-template/packages/aws/package.json +1 -1
  6. package/analyzer-template/packages/database/package.json +1 -1
  7. package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +82 -0
  8. package/analyzer-template/packages/database/src/lib/loadEntities.ts +0 -6
  9. package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +0 -65
  10. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +5 -0
  11. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -1
  12. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +84 -0
  13. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
  14. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -1
  15. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +0 -6
  16. package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -1
  17. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -1
  18. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +0 -25
  19. package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -1
  20. package/codeyam-cli/src/cli.js +9 -0
  21. package/codeyam-cli/src/cli.js.map +1 -1
  22. package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js +51 -0
  23. package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js.map +1 -0
  24. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js +56 -0
  25. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js.map +1 -0
  26. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +101 -47
  27. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
  28. package/codeyam-cli/src/commands/editor.js +2369 -346
  29. package/codeyam-cli/src/commands/editor.js.map +1 -1
  30. package/codeyam-cli/src/commands/editorIsolateArgs.js +25 -0
  31. package/codeyam-cli/src/commands/editorIsolateArgs.js.map +1 -0
  32. package/codeyam-cli/src/commands/init.js +69 -34
  33. package/codeyam-cli/src/commands/init.js.map +1 -1
  34. package/codeyam-cli/src/commands/telemetry.js +37 -0
  35. package/codeyam-cli/src/commands/telemetry.js.map +1 -0
  36. package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js +173 -0
  37. package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js.map +1 -0
  38. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +18 -8
  39. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -1
  40. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +2046 -1
  41. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -1
  42. package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js +76 -0
  43. package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js.map +1 -0
  44. package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js +137 -0
  45. package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js.map +1 -0
  46. package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js +100 -0
  47. package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js.map +1 -0
  48. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +76 -3
  49. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -1
  50. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js +381 -0
  51. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js.map +1 -0
  52. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +202 -1
  53. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -1
  54. package/codeyam-cli/src/utils/__tests__/editorMigration.test.js +435 -0
  55. package/codeyam-cli/src/utils/__tests__/editorMigration.test.js.map +1 -0
  56. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +88 -1
  57. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -1
  58. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +47 -1
  59. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -1
  60. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +70 -0
  61. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -1
  62. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +1335 -1
  63. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -1
  64. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +67 -0
  65. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -1
  66. package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js +143 -0
  67. package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js.map +1 -0
  68. package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js +66 -0
  69. package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js.map +1 -0
  70. package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js +53 -0
  71. package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js.map +1 -0
  72. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +363 -11
  73. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -1
  74. package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js +177 -0
  75. package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js.map +1 -0
  76. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js +30 -2
  77. package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js.map +1 -1
  78. package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js +118 -0
  79. package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js.map +1 -0
  80. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +284 -0
  81. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -0
  82. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +649 -223
  83. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -1
  84. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +1 -0
  85. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  86. package/codeyam-cli/src/utils/__tests__/telemetry.test.js +159 -0
  87. package/codeyam-cli/src/utils/__tests__/telemetry.test.js.map +1 -0
  88. package/codeyam-cli/src/utils/analysisRunner.js +3 -1
  89. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  90. package/codeyam-cli/src/utils/analyzer.js +9 -0
  91. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  92. package/codeyam-cli/src/utils/analyzerFinalization.js +100 -0
  93. package/codeyam-cli/src/utils/analyzerFinalization.js.map +1 -0
  94. package/codeyam-cli/src/utils/backgroundServer.js +3 -9
  95. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  96. package/codeyam-cli/src/utils/database.js +37 -2
  97. package/codeyam-cli/src/utils/database.js.map +1 -1
  98. package/codeyam-cli/src/utils/editorApi.js +11 -5
  99. package/codeyam-cli/src/utils/editorApi.js.map +1 -1
  100. package/codeyam-cli/src/utils/editorAudit.js +372 -5
  101. package/codeyam-cli/src/utils/editorAudit.js.map +1 -1
  102. package/codeyam-cli/src/utils/editorBroadcastViewport.js +26 -0
  103. package/codeyam-cli/src/utils/editorBroadcastViewport.js.map +1 -0
  104. package/codeyam-cli/src/utils/editorDeleteScenario.js +67 -0
  105. package/codeyam-cli/src/utils/editorDeleteScenario.js.map +1 -0
  106. package/codeyam-cli/src/utils/editorEntityChangeStatus.js +13 -7
  107. package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -1
  108. package/codeyam-cli/src/utils/editorEntityHelpers.js +144 -0
  109. package/codeyam-cli/src/utils/editorEntityHelpers.js.map +1 -0
  110. package/codeyam-cli/src/utils/editorLoaderHelpers.js +72 -1
  111. package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -1
  112. package/codeyam-cli/src/utils/editorMigration.js +224 -0
  113. package/codeyam-cli/src/utils/editorMigration.js.map +1 -0
  114. package/codeyam-cli/src/utils/editorPreview.js +31 -0
  115. package/codeyam-cli/src/utils/editorPreview.js.map +1 -1
  116. package/codeyam-cli/src/utils/editorRecapture.js +109 -0
  117. package/codeyam-cli/src/utils/editorRecapture.js.map +1 -0
  118. package/codeyam-cli/src/utils/editorScenarioSwitch.js +24 -2
  119. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -1
  120. package/codeyam-cli/src/utils/editorScenarios.js +458 -0
  121. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -1
  122. package/codeyam-cli/src/utils/editorSeedAdapter.js +253 -4
  123. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -1
  124. package/codeyam-cli/src/utils/editorShouldRevalidate.js +21 -0
  125. package/codeyam-cli/src/utils/editorShouldRevalidate.js.map +1 -0
  126. package/codeyam-cli/src/utils/entityChangeStatus.js +53 -6
  127. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -1
  128. package/codeyam-cli/src/utils/entityChangeStatus.server.js +41 -3
  129. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -1
  130. package/codeyam-cli/src/utils/fileWatcher.js +38 -0
  131. package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
  132. package/codeyam-cli/src/utils/glossaryAdd.js +74 -0
  133. package/codeyam-cli/src/utils/glossaryAdd.js.map +1 -0
  134. package/codeyam-cli/src/utils/install-skills.js +14 -0
  135. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  136. package/codeyam-cli/src/utils/parseRegisterArg.js.map +1 -1
  137. package/codeyam-cli/src/utils/progress.js +2 -2
  138. package/codeyam-cli/src/utils/progress.js.map +1 -1
  139. package/codeyam-cli/src/utils/routePatternMatching.js +129 -0
  140. package/codeyam-cli/src/utils/routePatternMatching.js.map +1 -0
  141. package/codeyam-cli/src/utils/scenarioCoverage.js +77 -0
  142. package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -0
  143. package/codeyam-cli/src/utils/scenariosManifest.js +269 -74
  144. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -1
  145. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +1 -0
  146. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  147. package/codeyam-cli/src/utils/simulationGateMiddleware.js +8 -1
  148. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -1
  149. package/codeyam-cli/src/utils/slugUtils.js +25 -0
  150. package/codeyam-cli/src/utils/slugUtils.js.map +1 -0
  151. package/codeyam-cli/src/utils/syncMocksMiddleware.js +2 -2
  152. package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
  153. package/codeyam-cli/src/utils/telemetry.js +106 -0
  154. package/codeyam-cli/src/utils/telemetry.js.map +1 -0
  155. package/codeyam-cli/src/utils/telemetryMiddleware.js +22 -0
  156. package/codeyam-cli/src/utils/telemetryMiddleware.js.map +1 -0
  157. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js +35 -0
  158. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js.map +1 -0
  159. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +80 -0
  160. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -0
  161. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +218 -0
  162. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -1
  163. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +217 -0
  164. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -0
  165. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +71 -0
  166. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -0
  167. package/codeyam-cli/src/webserver/app/lib/git.js +3 -2
  168. package/codeyam-cli/src/webserver/app/lib/git.js.map +1 -1
  169. package/codeyam-cli/src/webserver/app/types/editor.js +8 -0
  170. package/codeyam-cli/src/webserver/app/types/editor.js.map +1 -0
  171. package/codeyam-cli/src/webserver/backgroundServer.js +60 -61
  172. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  173. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-CLe80MMu.js +1 -0
  174. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-BcgbViKV.js → EntityItem-Crt_KN_U.js} +3 -3
  175. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-CQgyEGV-.js +1 -0
  176. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-CQIG2qda.js → EntityTypeIcon-CD7lGABo.js} +1 -1
  177. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-CgTNOhnu.js +1 -0
  178. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-CKeQT5Ty.js +25 -0
  179. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-D3s1MFkb.js +3 -0
  180. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-BU_OAEMP.js → LoadingDots-By5zI316.js} +1 -1
  181. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-ceAyBX-H.js → LogViewer-CM5zg40N.js} +3 -3
  182. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-BzHcG7SE.js → ReportIssueModal-C2PLkej3.js} +2 -2
  183. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DanvyBPb.js +1 -0
  184. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-0DY_NKil.js → ScenarioViewer-DUMfcNVK.js} +3 -3
  185. package/codeyam-cli/src/webserver/build/client/assets/Spinner-D0LgAaSa.js +34 -0
  186. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-CK7-NaPZ.js +1 -0
  187. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-BA_Ry-rs.js +1 -0
  188. package/codeyam-cli/src/webserver/build/client/assets/{_index-DLxKhri3.js → _index-BAWd-Xjf.js} +2 -2
  189. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BcY3q6nt.js → activity.(_tab)-BOARiB-g.js} +3 -3
  190. package/codeyam-cli/src/webserver/build/client/assets/{addon-web-links-Duc5hnl7.js → addon-web-links-CHx25PAe.js} +1 -1
  191. package/codeyam-cli/src/webserver/build/client/assets/{agent-transcripts-Bni3iiUj.js → agent-transcripts-Bg3e7q4S.js} +3 -3
  192. package/codeyam-cli/src/webserver/build/client/assets/api.editor-recapture-stale-l0sNRNKZ.js +1 -0
  193. package/codeyam-cli/src/webserver/build/client/assets/api.editor-rename-scenario-l0sNRNKZ.js +1 -0
  194. package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-seed-state-l0sNRNKZ.js +1 -0
  195. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-coverage-l0sNRNKZ.js +1 -0
  196. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-prompt-l0sNRNKZ.js +1 -0
  197. package/codeyam-cli/src/webserver/build/client/assets/api.editor-session-l0sNRNKZ.js +1 -0
  198. package/codeyam-cli/src/webserver/build/client/assets/{book-open-BYOypzCa.js → book-open-CL-lMgHh.js} +1 -1
  199. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-C_Pmso5S.js → chevron-down-GmAjGS9-.js} +1 -1
  200. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-BAdwhyCx.js +43 -0
  201. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-BVMi9VA5.js → circle-check-DFcQkN5j.js} +1 -1
  202. package/codeyam-cli/src/webserver/build/client/assets/{copy-n2FB0_Sw.js → copy-C6iF61Xs.js} +1 -1
  203. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-CC6AbExI.js → createLucideIcon-4ImjHTVC.js} +1 -1
  204. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-C8y4mmyv.js +1 -0
  205. package/codeyam-cli/src/webserver/build/client/assets/editor._tab-Gbk_i5Js.js +1 -0
  206. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-Bnx7yUP0.js +58 -0
  207. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-oepecPae.js +41 -0
  208. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-BF4oLwaE.js → entity._sha._-Blfy9UlN.js} +2 -2
  209. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-KTQuL0aj.js +6 -0
  210. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-C6eeL24i.js +6 -0
  211. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-DQM8E7L4.js +6 -0
  212. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-BMvVHNXU.js → entity._sha_.edit._scenarioId-CAoXLsQr.js} +2 -2
  213. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-DTvKq3TY.js → entry.client-SuW9syRS.js} +6 -6
  214. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-Daa96Fr1.js +1 -0
  215. package/codeyam-cli/src/webserver/build/client/assets/files-D-xGrg29.js +1 -0
  216. package/codeyam-cli/src/webserver/build/client/assets/git-Bq_fbXP5.js +1 -0
  217. package/codeyam-cli/src/webserver/build/client/assets/globals-fAqOD9ex.css +1 -0
  218. package/codeyam-cli/src/webserver/build/client/assets/{index-BcvgDzbZ.js → index-Bp1l4hSv.js} +1 -1
  219. package/codeyam-cli/src/webserver/build/client/assets/{index-10oVnAAH.js → index-CWV9XZiG.js} +1 -1
  220. package/codeyam-cli/src/webserver/build/client/assets/{index-yHOVb4rc.js → index-DE3jI_dv.js} +1 -1
  221. package/codeyam-cli/src/webserver/build/client/assets/jsx-runtime-D_zvdyIk.js +9 -0
  222. package/codeyam-cli/src/webserver/build/client/assets/labs-B_IX45ih.js +1 -0
  223. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-DaAZ_H2w.js → loader-circle-De-7qQ2u.js} +1 -1
  224. package/codeyam-cli/src/webserver/build/client/assets/manifest-b9d4d267.js +1 -0
  225. package/codeyam-cli/src/webserver/build/client/assets/memory-Cx2xEx7s.js +101 -0
  226. package/codeyam-cli/src/webserver/build/client/assets/{pause-f5-1lKBt.js → pause-CFxEKL1u.js} +1 -1
  227. package/codeyam-cli/src/webserver/build/client/assets/root-DB3O9_9j.js +67 -0
  228. package/codeyam-cli/src/webserver/build/client/assets/{search-Di64LWVb.js → search-BdBb5aqc.js} +1 -1
  229. package/codeyam-cli/src/webserver/build/client/assets/settings-DdE-Untf.js +1 -0
  230. package/codeyam-cli/src/webserver/build/client/assets/simulations-DSCdE99u.js +1 -0
  231. package/codeyam-cli/src/webserver/build/client/assets/{terminal-Br7MOqts.js → terminal-CrplD4b1.js} +1 -1
  232. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-BLdiCuG-.js → triangle-alert-DqJ0j69l.js} +1 -1
  233. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-DhXHbEjP.js +1 -0
  234. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-C14nCb1q.js → useLastLogLine-BNd5hYuW.js} +1 -1
  235. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-Cy5Qg_UR.js +1 -0
  236. package/codeyam-cli/src/webserver/build/client/assets/useToast-5HR2j9ZE.js +1 -0
  237. package/codeyam-cli/src/webserver/build/client/sound-test.html +98 -0
  238. package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-CGwTN3V2.js +13 -0
  239. package/codeyam-cli/src/webserver/build/server/assets/index-D4meMKy3.js +1 -0
  240. package/codeyam-cli/src/webserver/build/server/assets/init-odGJ_c2-.js +10 -0
  241. package/codeyam-cli/src/webserver/build/server/assets/progress-CHTtrxFG.js +1 -0
  242. package/codeyam-cli/src/webserver/build/server/assets/server-build-TmPfF7pT.js +552 -0
  243. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  244. package/codeyam-cli/src/webserver/build-info.json +5 -5
  245. package/codeyam-cli/src/webserver/editorProxy.js +208 -17
  246. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -1
  247. package/codeyam-cli/src/webserver/idleDetector.js +106 -0
  248. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -0
  249. package/codeyam-cli/src/webserver/mockStateEvents.js +28 -0
  250. package/codeyam-cli/src/webserver/mockStateEvents.js.map +1 -0
  251. package/codeyam-cli/src/webserver/public/sound-test.html +98 -0
  252. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +36 -0
  253. package/codeyam-cli/src/webserver/server.js +87 -4
  254. package/codeyam-cli/src/webserver/server.js.map +1 -1
  255. package/codeyam-cli/src/webserver/terminalServer.js +140 -35
  256. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
  257. package/codeyam-cli/templates/chrome-extension-react/README.md +46 -0
  258. package/codeyam-cli/templates/chrome-extension-react/package.json +1 -0
  259. package/codeyam-cli/templates/codeyam-editor-claude.md +84 -5
  260. package/codeyam-cli/templates/codeyam-editor-reference.md +214 -0
  261. package/codeyam-cli/templates/editor-step-hook.py +114 -24
  262. package/codeyam-cli/templates/expo-react-native/README.md +41 -0
  263. package/codeyam-cli/templates/expo-react-native/package.json +1 -0
  264. package/codeyam-cli/templates/nextjs-prisma-sqlite/DATABASE.md +14 -0
  265. package/codeyam-cli/templates/nextjs-prisma-sqlite/README.md +53 -0
  266. package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +2 -1
  267. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +42 -7
  268. package/codeyam-cli/templates/nextjs-prisma-supabase/README.md +52 -0
  269. package/codeyam-cli/templates/nextjs-prisma-supabase/package.json +2 -1
  270. package/codeyam-cli/templates/seed-adapters/supabase.ts +282 -0
  271. package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +1 -1
  272. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +76 -10
  273. package/package.json +2 -1
  274. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +84 -0
  275. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
  276. package/packages/database/src/lib/loadEntities.js +0 -6
  277. package/packages/database/src/lib/loadEntities.js.map +1 -1
  278. package/packages/database/src/lib/updateCommitMetadata.js +0 -25
  279. package/packages/database/src/lib/updateCommitMetadata.js.map +1 -1
  280. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-BPXZwM4t.js +0 -1
  281. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-g3saevPb.js +0 -1
  282. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +0 -1
  283. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +0 -25
  284. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +0 -3
  285. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +0 -1
  286. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +0 -34
  287. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-C8OKAR5x.js +0 -1
  288. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-oAf2Kqsf.js +0 -1
  289. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +0 -51
  290. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-Csi0_PMl.js +0 -1
  291. package/codeyam-cli/src/webserver/build/client/assets/editor-DgN1LTTt.js +0 -10
  292. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-BLQMSKZa.js +0 -41
  293. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-C7YX6r3H.js +0 -6
  294. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-CF164ouH.js +0 -6
  295. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +0 -6
  296. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +0 -1
  297. package/codeyam-cli/src/webserver/build/client/assets/files-BZrlFE1F.js +0 -1
  298. package/codeyam-cli/src/webserver/build/client/assets/git-DdZcvjGh.js +0 -1
  299. package/codeyam-cli/src/webserver/build/client/assets/globals-BkWJ_UNc.css +0 -1
  300. package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +0 -1
  301. package/codeyam-cli/src/webserver/build/client/assets/manifest-c26eb85b.js +0 -1
  302. package/codeyam-cli/src/webserver/build/client/assets/memory-Bl2rpw8u.js +0 -96
  303. package/codeyam-cli/src/webserver/build/client/assets/root-ClvYBUSA.js +0 -67
  304. package/codeyam-cli/src/webserver/build/client/assets/settings-0OrEMU6J.js +0 -1
  305. package/codeyam-cli/src/webserver/build/client/assets/simulations-DWT-CvLy.js +0 -1
  306. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-CrAK28Bc.js +0 -1
  307. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +0 -1
  308. package/codeyam-cli/src/webserver/build/client/assets/useToast-9FIWuYfK.js +0 -1
  309. package/codeyam-cli/src/webserver/build/server/assets/index-DflIr5SD.js +0 -1
  310. package/codeyam-cli/src/webserver/build/server/assets/server-build-OhKy839M.js +0 -416
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundServer.js","sourceRoot":"","sources":["../../../../src/utils/backgroundServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backgroundServer.js","sourceRoot":"","sources":["../../../../src/utils/backgroundServer.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,11 @@ import { setupSecrets } from "./secrets.js";
2
2
  import { generateSha, loadBranches, loadProject, upsertBranches, upsertCommits, upsertProjects, } from "../../../packages/database/index.js";
3
3
  import { randomUUID } from 'crypto';
4
4
  import { execSync } from 'child_process';
5
+ import * as fs from 'fs';
5
6
  import path from 'path';
6
7
  import { getProjectRoot } from "../state.js";
7
8
  import { updateCommitBranchesInDb } from "../../../packages/github/index.js";
9
+ let bootstrapAttempted = false;
8
10
  export function getSqlitePath() {
9
11
  // Allow override via environment variable (useful for testing/debugging)
10
12
  if (process.env.SQLITE_PATH) {
@@ -21,6 +23,15 @@ export function getSqlitePath() {
21
23
  * Note: OPENAI_API_KEY is optional - if not provided, CodeYam will use Claude CLI mode
22
24
  */
23
25
  export async function initializeEnvironment() {
26
+ // Fresh clone bootstrap: if config exists but DB doesn't, re-init.
27
+ // Only attempt once to avoid recursion (init itself calls testEnvironment).
28
+ if (!bootstrapAttempted) {
29
+ bootstrapAttempted = true;
30
+ const projectRoot = getProjectRoot();
31
+ if (projectRoot) {
32
+ await bootstrapIfFreshClone(projectRoot);
33
+ }
34
+ }
24
35
  const secrets = await setupSecrets();
25
36
  process.env.SQLITE_PATH = getSqlitePath();
26
37
  // Set OPENAI_API_KEY if available (optional - Claude CLI mode works without it)
@@ -51,8 +62,8 @@ export async function testEnvironment() {
51
62
  */
52
63
  export async function requireBranchAndProject(slug) {
53
64
  await initializeEnvironment();
54
- // First try to load existing project
55
- const project = await loadProject({ slug });
65
+ // First try to load existing project (silent — the thrown error is sufficient)
66
+ const project = await loadProject({ slug, silent: true });
56
67
  if (!project) {
57
68
  throw new Error(`Project with slug "${slug}" not found in database`);
58
69
  }
@@ -277,4 +288,28 @@ export async function createBaselineCommit(project, branch, realGitSha) {
277
288
  });
278
289
  return createdCommits[0];
279
290
  }
291
+ /**
292
+ * Fresh clone bootstrap: if config.json exists (committed) but db.sqlite3
293
+ * doesn't (gitignored), run `init --force` to recreate the DB, project
294
+ * record, and branch. This enables `codeyam start` and `codeyam editor`
295
+ * to work on a freshly cloned repo without manual `codeyam init`.
296
+ *
297
+ * Returns true if bootstrap was performed.
298
+ */
299
+ export async function bootstrapIfFreshClone(projectRoot) {
300
+ const dbPath = path.join(projectRoot, '.codeyam', 'db.sqlite3');
301
+ const configPath = path.join(projectRoot, '.codeyam', 'config.json');
302
+ if (fs.existsSync(dbPath) || !fs.existsSync(configPath)) {
303
+ return false;
304
+ }
305
+ // Lazy import to avoid circular dependency
306
+ const { default: initCommand } = await import('../commands/init.js');
307
+ await initCommand.handler({
308
+ force: true,
309
+ autoInit: true,
310
+ $0: '',
311
+ _: [],
312
+ });
313
+ return true;
314
+ }
280
315
  //# sourceMappingURL=database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../../src/utils/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../../src/utils/database.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,17 @@
6
6
  * which lets Claude Code auto-approve these operations.
7
7
  */
8
8
  const SUBCOMMAND_MAP = {
9
- preview: (jsonArg) => ({
10
- method: 'POST',
11
- endpoint: '/api/dev-mode-preview',
12
- ...(jsonArg ? { body: JSON.parse(jsonArg) } : {}),
13
- }),
9
+ preview: (jsonArg) => {
10
+ const body = jsonArg ? JSON.parse(jsonArg) : undefined;
11
+ if (!body?.dimension) {
12
+ throw new Error('"dimension" is required for preview. Every preview call must specify the viewport dimension explicitly, e.g. \'{"dimension":"Desktop"}\'');
13
+ }
14
+ return {
15
+ method: 'POST',
16
+ endpoint: '/api/dev-mode-preview',
17
+ body,
18
+ };
19
+ },
14
20
  'show-results': () => ({
15
21
  method: 'POST',
16
22
  endpoint: '/api/editor-show-results',
@@ -1 +1 @@
1
- {"version":3,"file":"editorApi.js","sourceRoot":"","sources":["../../../../src/utils/editorApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editorApi.js","sourceRoot":"","sources":["../../../../src/utils/editorApi.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * Cross-references glossary entries against registered scenarios (components)
5
5
  * and test files (functions) to detect gaps Claude may have missed.
6
6
  */
7
+ import { isIsolationUrl, } from "./entityChangeStatus.js";
7
8
  // ─── Logic ───────────────────────────────────────────────────────────
8
9
  const COMPONENT_RETURN_PATTERNS = ['JSX', 'React', 'Element', 'ReactNode'];
9
10
  /**
@@ -39,14 +40,25 @@ export function classifyGlossaryEntries(entries) {
39
40
  * @param scenarioCounts - Map of component_name → number of registered scenarios
40
41
  * @param testFileExistence - Map of testFile path → whether the file exists on disk
41
42
  */
42
- export function computeAudit({ components, functions, scenarioCounts, testFileExistence, testResults, clientErrors, }) {
43
+ export function computeAudit({ components, functions, scenarioCounts, testFileExistence, testResults, clientErrors, totalScenarioCounts, entityChangeStatus, }) {
43
44
  const componentResults = components.map((c) => {
44
45
  const count = scenarioCounts[c.name] || 0;
46
+ const totalCount = totalScenarioCounts?.[c.name] || 0;
47
+ const changeStatus = entityChangeStatus?.[c.name];
45
48
  const errors = clientErrors?.[c.name];
46
49
  const hasErrors = count > 0 && errors && errors.length > 0;
47
50
  let status;
48
51
  if (count === 0) {
49
- status = 'missing';
52
+ // Entities with existing scenarios from prior sessions don't need
53
+ // new scenarios — they need recapture. This applies to both "edited"
54
+ // and "impacted" entities: an edited page may not have been re-registered
55
+ // this session, and an impacted page's dependency changed.
56
+ if (changeStatus && totalCount > 0) {
57
+ status = 'needs_recapture';
58
+ }
59
+ else {
60
+ status = 'missing';
61
+ }
50
62
  }
51
63
  else if (hasErrors) {
52
64
  status = 'has_errors';
@@ -57,7 +69,7 @@ export function computeAudit({ components, functions, scenarioCounts, testFileEx
57
69
  return {
58
70
  name: c.name,
59
71
  filePath: c.filePath,
60
- scenarioCount: count,
72
+ scenarioCount: status === 'needs_recapture' ? totalCount : count,
61
73
  status,
62
74
  ...(hasErrors ? { clientErrors: errors } : {}),
63
75
  };
@@ -88,7 +100,10 @@ export function computeAudit({ components, functions, scenarioCounts, testFileEx
88
100
  };
89
101
  }
90
102
  let status;
91
- if (!tr.passing) {
103
+ if (!tr.passing && tr.errorMessage) {
104
+ status = 'runner_error';
105
+ }
106
+ else if (!tr.passing) {
92
107
  status = 'failing';
93
108
  }
94
109
  else if (!tr.hasEntityNameDescribe) {
@@ -105,13 +120,16 @@ export function computeAudit({ components, functions, scenarioCounts, testFileEx
105
120
  testsPassing: tr.passing,
106
121
  testsVisibleInUi: tr.hasEntityNameDescribe,
107
122
  status,
123
+ ...(tr.errorMessage ? { errorMessage: tr.errorMessage } : {}),
108
124
  };
109
125
  });
110
- const componentsOk = componentResults.filter((c) => c.status === 'ok').length;
126
+ const componentsOk = componentResults.filter((c) => c.status === 'ok' || c.status === 'needs_recapture').length;
111
127
  const componentsWithErrors = componentResults.filter((c) => c.status === 'has_errors').length;
112
128
  const componentsMissing = componentResults.filter((c) => c.status === 'missing').length;
129
+ const componentsNeedingRecapture = componentResults.filter((c) => c.status === 'needs_recapture').length;
113
130
  const functionsOk = functionResults.filter((f) => f.status === 'ok').length;
114
131
  const functionsFailing = functionResults.filter((f) => f.status === 'failing').length;
132
+ const functionsRunnerError = functionResults.filter((f) => f.status === 'runner_error').length;
115
133
  const functionsNameMismatch = functionResults.filter((f) => f.status === 'name_mismatch').length;
116
134
  const functionsMissing = functionResults.filter((f) => f.status === 'missing').length;
117
135
  return {
@@ -122,19 +140,66 @@ export function computeAudit({ components, functions, scenarioCounts, testFileEx
122
140
  componentsOk,
123
141
  componentsMissing,
124
142
  componentsWithErrors,
143
+ componentsNeedingRecapture,
125
144
  totalFunctions: functionResults.length,
126
145
  functionsOk,
127
146
  functionsMissing,
128
147
  functionsFailing,
148
+ functionsRunnerError,
129
149
  functionsNameMismatch,
130
150
  allPassing: componentsMissing === 0 &&
131
151
  componentsWithErrors === 0 &&
132
152
  functionsFailing === 0 &&
153
+ functionsRunnerError === 0 &&
133
154
  functionsNameMismatch === 0 &&
134
155
  functionsMissing === 0,
135
156
  },
136
157
  };
137
158
  }
159
+ /**
160
+ * Returns true when the audit failure can be auto-fixed by running
161
+ * analyze-imports: incomplete entities are the only issue AND we haven't
162
+ * already tried (to prevent infinite retry loops when analysis has errors).
163
+ */
164
+ export function isAutoRemediable(summary, alreadyAttempted) {
165
+ if (alreadyAttempted)
166
+ return false;
167
+ if (!summary.incompleteEntities || summary.incompleteEntities === 0)
168
+ return false;
169
+ return isOnlyIncompleteEntities(summary);
170
+ }
171
+ /**
172
+ * Returns true when incompleteEntities is the ONLY audit failure —
173
+ * all other failure counts are zero. Used to decide whether auto-running
174
+ * analyze-imports can fix the audit without manual intervention.
175
+ */
176
+ export function isOnlyIncompleteEntities(summary) {
177
+ return ((summary.componentsMissing ?? 0) === 0 &&
178
+ (summary.componentsWithErrors ?? 0) === 0 &&
179
+ (summary.functionsFailing ?? 0) === 0 &&
180
+ (summary.functionsNameMismatch ?? 0) === 0 &&
181
+ (summary.functionsMissing ?? 0) === 0 &&
182
+ (summary.missingFromGlossary ?? 0) === 0 &&
183
+ (summary.miscategorizedScenarios ?? 0) === 0 &&
184
+ (summary.scenariosNeedingRecapture ?? 0) === 0);
185
+ }
186
+ /**
187
+ * Ensures the two audit filters — glossary scoping and scenario-count scoping —
188
+ * are consistent. When entityChangeStatus is empty/undefined (meaning the glossary
189
+ * will fall back to "audit all entries"), we must also drop the featureStartedAt
190
+ * filter so scenario counts include ALL scenarios, not just the current session.
191
+ *
192
+ * Without this, Feature 1 components get audited but their scenarios (created before
193
+ * the current feature session) aren't counted, causing false "no scenarios" failures.
194
+ */
195
+ export function resolveAuditSessionScope({ featureStartedAt, entityChangeStatus, }) {
196
+ const hasChangeStatus = entityChangeStatus && Object.keys(entityChangeStatus).length > 0;
197
+ if (!hasChangeStatus) {
198
+ // Glossary will include all entries — scenario counts must also include all
199
+ return { featureStartedAt: null, entityChangeStatus };
200
+ }
201
+ return { featureStartedAt, entityChangeStatus };
202
+ }
138
203
  /**
139
204
  * Filter glossary entries to only those whose entities are new, edited, or impacted
140
205
  * in the current working session. When entityChangeStatus is empty or undefined,
@@ -156,4 +221,306 @@ export function filterGlossaryByChangeStatus(entries, entityChangeStatus) {
156
221
  return false;
157
222
  });
158
223
  }
224
+ /**
225
+ * Find entities that have scenarios but no analysis records.
226
+ * These entities need `codeyam editor analyze-imports` to run.
227
+ *
228
+ * Optionally scoped to the current feature session via featureStartedAt.
229
+ */
230
+ export async function queryIncompleteEntities(db, projectId, featureStartedAt) {
231
+ // Step 1: Get distinct entity SHAs from scenarios (with counts)
232
+ // No time filter — we check ALL scenarios to catch entities whose
233
+ // scenario SHAs were updated mid-session without touching updated_at.
234
+ const scenarioQuery = db
235
+ .selectFrom('editor_scenarios')
236
+ .select(['entity_sha'])
237
+ .select(db.fn.count('id').as('count'))
238
+ .where('project_id', '=', projectId)
239
+ .where('entity_sha', 'is not', null)
240
+ .groupBy('entity_sha');
241
+ const scenarioRows = await scenarioQuery.execute();
242
+ if (scenarioRows.length === 0)
243
+ return [];
244
+ const scenarioShas = scenarioRows.map((r) => r.entity_sha);
245
+ // Step 2: Get entity SHAs that have analyses
246
+ const analysisRows = await db
247
+ .selectFrom('analyses')
248
+ .select('entity_sha')
249
+ .where('entity_sha', 'in', scenarioShas)
250
+ .groupBy('entity_sha')
251
+ .execute();
252
+ const analyzedShas = new Set(analysisRows.map((r) => r.entity_sha));
253
+ // Step 3: Find scenario entity SHAs without direct analyses
254
+ const incompleteShas = scenarioRows.filter((r) => !analyzedShas.has(r.entity_sha));
255
+ if (incompleteShas.length === 0)
256
+ return [];
257
+ // Step 4: Look up entity names for incomplete SHAs
258
+ const incompleteShalist = incompleteShas.map((r) => r.entity_sha);
259
+ const entityRows = await db
260
+ .selectFrom('entities')
261
+ .select(['sha', 'name', 'file_path'])
262
+ .where('sha', 'in', incompleteShalist)
263
+ .execute();
264
+ const entityNameMap = new Map(entityRows.map((r) => [r.sha, r.name]));
265
+ // Step 4.5: Check for inherited analyses from sibling entity versions.
266
+ // A new entity version (created by the file watcher) may not have direct
267
+ // analyses, but an older version (same name+filePath) might. This matches
268
+ // getAllEntities() behavior which inherits analyses across versions.
269
+ // IMPORTANT: Must match by name+filePath, not name alone. When a component
270
+ // is extracted to a new file, the old version (different filePath) may have
271
+ // analyses but getAllEntities() won't inherit across different file paths.
272
+ const entityFilePathMap = new Map(entityRows.map((r) => [r.sha, r.file_path]));
273
+ const entityKeys = [
274
+ ...new Set(entityRows
275
+ .map((r) => `${r.name}::${r.file_path}`)
276
+ .filter((k) => !k.startsWith('::') && !k.endsWith('::'))),
277
+ ];
278
+ let keysWithInheritedAnalyses = new Set();
279
+ if (entityKeys.length > 0) {
280
+ // We need to find entities that share name+filePath AND have analyses.
281
+ // Since Kysely doesn't support WHERE (name || '::' || file_path) IN (...),
282
+ // query by the entity names and filter by filePath in JS.
283
+ const entityNames = [
284
+ ...new Set(entityRows.map((r) => r.name).filter(Boolean)),
285
+ ];
286
+ const siblingRows = await db
287
+ .selectFrom('entities')
288
+ .innerJoin('analyses', 'analyses.entity_sha', 'entities.sha')
289
+ .select(['entities.name', 'entities.file_path'])
290
+ .where('entities.name', 'in', entityNames)
291
+ .groupBy(['entities.name', 'entities.file_path'])
292
+ .execute();
293
+ keysWithInheritedAnalyses = new Set(siblingRows.map((r) => `${r.name}::${r.file_path}`));
294
+ }
295
+ // Filter out entities that have inherited analyses (same name+filePath)
296
+ const trulyIncompleteShas = incompleteShas.filter((r) => {
297
+ const sha = r.entity_sha;
298
+ const name = entityNameMap.get(sha);
299
+ const filePath = entityFilePathMap.get(sha);
300
+ if (!name)
301
+ return true; // No entity record — keep as incomplete
302
+ const key = `${name}::${filePath}`;
303
+ return !keysWithInheritedAnalyses.has(key);
304
+ });
305
+ if (trulyIncompleteShas.length === 0)
306
+ return [];
307
+ const trulyIncompleteShalist = trulyIncompleteShas.map((r) => r.entity_sha);
308
+ // Step 5: Also get component_name from scenarios as fallback for name
309
+ const scenarioNameRows = await db
310
+ .selectFrom('editor_scenarios')
311
+ .select(['entity_sha', 'component_name'])
312
+ .where('project_id', '=', projectId)
313
+ .where('entity_sha', 'in', trulyIncompleteShalist)
314
+ .where('component_name', 'is not', null)
315
+ .groupBy('entity_sha')
316
+ .execute();
317
+ const scenarioNameMap = new Map(scenarioNameRows.map((r) => [
318
+ r.entity_sha,
319
+ r.component_name,
320
+ ]));
321
+ // Step 6: Determine preExisting flag — if featureStartedAt is provided,
322
+ // check which entity SHAs have at least one scenario created/updated
323
+ // during the session. Those without any are pre-existing issues.
324
+ let sessionShas = new Set();
325
+ if (featureStartedAt) {
326
+ const sqliteTimestamp = featureStartedAt
327
+ .replace('T', ' ')
328
+ .replace(/\.\d{3}Z$/, '');
329
+ const sessionRows = await db
330
+ .selectFrom('editor_scenarios')
331
+ .select('entity_sha')
332
+ .where('project_id', '=', projectId)
333
+ .where('entity_sha', 'in', trulyIncompleteShalist)
334
+ .where((eb) => eb.or([
335
+ eb('created_at', '>=', sqliteTimestamp),
336
+ eb('updated_at', '>=', sqliteTimestamp),
337
+ ]))
338
+ .groupBy('entity_sha')
339
+ .execute();
340
+ sessionShas = new Set(sessionRows.map((r) => r.entity_sha));
341
+ }
342
+ return trulyIncompleteShas.map((r) => {
343
+ const sha = r.entity_sha;
344
+ return {
345
+ entitySha: sha,
346
+ name: entityNameMap.get(sha) || scenarioNameMap.get(sha) || 'Unknown',
347
+ scenarioCount: Number(r.count),
348
+ preExisting: featureStartedAt ? !sessionShas.has(sha) : false,
349
+ };
350
+ });
351
+ }
352
+ /**
353
+ * Find component scenarios that use non-isolation URLs.
354
+ *
355
+ * Component scenarios should always use `/isolated-components/...` URLs.
356
+ * When a component scenario points at a real page URL (e.g., `/library`),
357
+ * it's miscategorized — it should either be an application scenario
358
+ * (no componentName, with pageFilePath) or use an isolation route.
359
+ *
360
+ * Optionally scoped to the current feature session via featureStartedAt.
361
+ */
362
+ export async function queryMiscategorizedScenarios(db, projectId, featureStartedAt) {
363
+ let query = db
364
+ .selectFrom('editor_scenarios')
365
+ .select(['component_name', 'name', 'url'])
366
+ .where('project_id', '=', projectId)
367
+ .where('component_name', 'is not', null)
368
+ .where('url', 'is not', null);
369
+ if (featureStartedAt) {
370
+ const sqliteTimestamp = featureStartedAt
371
+ .replace('T', ' ')
372
+ .replace(/\.\d{3}Z$/, '');
373
+ query = query.where((eb) => eb.or([
374
+ eb('created_at', '>=', sqliteTimestamp),
375
+ eb('updated_at', '>=', sqliteTimestamp),
376
+ ]));
377
+ }
378
+ const rows = await query.execute();
379
+ // Filter to only rows where URL is NOT an isolation route
380
+ const miscategorized = rows.filter((r) => r.url && !isIsolationUrl(r.url));
381
+ if (miscategorized.length === 0)
382
+ return [];
383
+ // Group by (component_name, url)
384
+ const groups = new Map();
385
+ for (const row of miscategorized) {
386
+ const key = `${row.component_name}::${row.url}`;
387
+ const existing = groups.get(key);
388
+ if (existing) {
389
+ existing.scenarioNames.push(row.name);
390
+ }
391
+ else {
392
+ groups.set(key, {
393
+ componentName: row.component_name,
394
+ scenarioNames: [row.name],
395
+ url: row.url,
396
+ });
397
+ }
398
+ }
399
+ return [...groups.values()];
400
+ }
401
+ /**
402
+ * Query scenario counts per component, optionally scoped to the current
403
+ * feature session via featureStartedAt.
404
+ *
405
+ * A scenario belongs to the current session if it was created OR updated
406
+ * after featureStartedAt — re-registering a scenario during a new feature
407
+ * session updates `updated_at` but preserves the original `created_at`.
408
+ */
409
+ export async function queryScenarioCounts(db, projectId, featureStartedAt) {
410
+ let query = db
411
+ .selectFrom('editor_scenarios')
412
+ .select(['component_name'])
413
+ .select(db.fn.count('id').as('count'))
414
+ .where('project_id', '=', projectId)
415
+ .where('component_name', 'is not', null)
416
+ .groupBy('component_name');
417
+ if (featureStartedAt) {
418
+ const sqliteTimestamp = featureStartedAt
419
+ .replace('T', ' ')
420
+ .replace(/\.\d{3}Z$/, '');
421
+ query = query.where((eb) => eb.or([
422
+ eb('created_at', '>=', sqliteTimestamp),
423
+ eb('updated_at', '>=', sqliteTimestamp),
424
+ ]));
425
+ }
426
+ const rows = await query.execute();
427
+ const counts = {};
428
+ for (const row of rows) {
429
+ if (row.component_name) {
430
+ counts[row.component_name] = Number(row.count);
431
+ }
432
+ }
433
+ return counts;
434
+ }
435
+ /**
436
+ * Query scenario counts per page file path for app-level scenarios.
437
+ *
438
+ * App-level scenarios have `component_name = null` and are linked to pages
439
+ * via `page_file_path`. This mirrors `queryScenarioCounts` but groups by
440
+ * `page_file_path` instead of `component_name`.
441
+ */
442
+ export async function queryPageScenarioCounts(db, projectId, featureStartedAt) {
443
+ let query = db
444
+ .selectFrom('editor_scenarios')
445
+ .select(['page_file_path'])
446
+ .select(db.fn.count('id').as('count'))
447
+ .where('project_id', '=', projectId)
448
+ .where('component_name', 'is', null)
449
+ .where('page_file_path', 'is not', null)
450
+ .groupBy('page_file_path');
451
+ if (featureStartedAt) {
452
+ const sqliteTimestamp = featureStartedAt
453
+ .replace('T', ' ')
454
+ .replace(/\.\d{3}Z$/, '');
455
+ query = query.where((eb) => eb.or([
456
+ eb('created_at', '>=', sqliteTimestamp),
457
+ eb('updated_at', '>=', sqliteTimestamp),
458
+ ]));
459
+ }
460
+ const rows = await query.execute();
461
+ const counts = {};
462
+ for (const row of rows) {
463
+ if (row.page_file_path) {
464
+ counts[row.page_file_path] = Number(row.count);
465
+ }
466
+ }
467
+ return counts;
468
+ }
469
+ // ─── Duplicate Name Detection ─────────────────────────────────────────
470
+ /**
471
+ * Detect glossary entries that share the same `name`.
472
+ *
473
+ * Returns a Map of name → entries[] for names that appear more than once.
474
+ * Single-occurrence names are excluded. Used to warn Claude that ambiguous
475
+ * names will make audit output confusing (e.g., three entries all named "Page").
476
+ */
477
+ export function detectDuplicateNames(entries) {
478
+ const groups = new Map();
479
+ for (const entry of entries) {
480
+ const existing = groups.get(entry.name);
481
+ if (existing)
482
+ existing.push(entry);
483
+ else
484
+ groups.set(entry.name, [entry]);
485
+ }
486
+ // Only return groups with duplicates
487
+ for (const [name, group] of groups) {
488
+ if (group.length <= 1)
489
+ groups.delete(name);
490
+ }
491
+ return groups;
492
+ }
493
+ /**
494
+ * Identify scenarios that need recapture because their entity (or an entity
495
+ * in their dependency tree) has changed.
496
+ *
497
+ * Each scenario's entity name is resolved from its entity_sha (which points
498
+ * to the default export for app-level scenarios). The caller joins
499
+ * editor_scenarios.entity_sha → entities.name before calling this function.
500
+ *
501
+ * A scenario needs recapture when its entity has status 'edited' or 'impacted'
502
+ * AND the scenario was NOT re-registered in the current feature session.
503
+ */
504
+ export function identifyScenariosNeedingRecapture(params) {
505
+ const { scenarios, entityChangeStatus } = params;
506
+ if (!entityChangeStatus || Object.keys(entityChangeStatus).length === 0) {
507
+ return [];
508
+ }
509
+ const result = [];
510
+ for (const scenario of scenarios) {
511
+ if (scenario.updatedInSession)
512
+ continue;
513
+ if (!scenario.entityName)
514
+ continue;
515
+ const changeStatus = entityChangeStatus[scenario.entityName];
516
+ if (!changeStatus)
517
+ continue;
518
+ result.push({
519
+ scenarioName: scenario.name,
520
+ entityName: scenario.entityName,
521
+ status: changeStatus,
522
+ });
523
+ }
524
+ return result;
525
+ }
159
526
  //# sourceMappingURL=editorAudit.js.map