@codeyam/codeyam-cli 0.1.0-staging.a77070e → 0.1.0-staging.aa28063

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 (349) 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 +4 -4
  4. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +135 -0
  5. package/analyzer-template/packages/ai/src/lib/astScopes/nodeToSource.ts +19 -0
  6. package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +11 -4
  7. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +36 -9
  8. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.ts +10 -3
  9. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +16 -6
  10. package/analyzer-template/packages/analyze/index.ts +4 -1
  11. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +28 -2
  12. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +5 -36
  13. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +10 -6
  14. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +9 -12
  15. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +21 -0
  16. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +82 -10
  17. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +4 -0
  18. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +4 -0
  19. package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +8 -3
  20. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +239 -58
  21. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1684 -1462
  22. package/analyzer-template/packages/aws/package.json +6 -6
  23. package/analyzer-template/packages/database/package.json +2 -2
  24. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +25 -15
  25. package/analyzer-template/packages/database/src/lib/loadEntity.ts +19 -8
  26. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
  27. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +7 -1
  28. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
  29. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts +4 -1
  30. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -1
  31. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js +5 -5
  32. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -1
  33. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts +3 -1
  34. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  35. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +22 -1
  36. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  37. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +27 -0
  38. package/analyzer-template/project/analyzeFileEntities.ts +26 -0
  39. package/analyzer-template/project/runMultiScenarioServer.ts +26 -3
  40. package/background/src/lib/virtualized/project/analyzeFileEntities.js +22 -0
  41. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  42. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +23 -3
  43. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  44. package/codeyam-cli/src/cli.js +15 -0
  45. package/codeyam-cli/src/cli.js.map +1 -1
  46. package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js +47 -0
  47. package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js.map +1 -0
  48. package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js +71 -0
  49. package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js.map +1 -0
  50. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js +30 -0
  51. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js.map +1 -0
  52. package/codeyam-cli/src/commands/__tests__/editor.statePersistence.test.js +55 -0
  53. package/codeyam-cli/src/commands/__tests__/editor.statePersistence.test.js.map +1 -0
  54. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js +9 -9
  55. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +39 -3
  56. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
  57. package/codeyam-cli/src/commands/editor.js +2080 -459
  58. package/codeyam-cli/src/commands/editor.js.map +1 -1
  59. package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js +23 -0
  60. package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js.map +1 -0
  61. package/codeyam-cli/src/commands/init.js +20 -0
  62. package/codeyam-cli/src/commands/init.js.map +1 -1
  63. package/codeyam-cli/src/data/designSystems.js +27 -0
  64. package/codeyam-cli/src/data/designSystems.js.map +1 -0
  65. package/codeyam-cli/src/data/techStacks.js +1 -1
  66. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +44 -0
  67. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -1
  68. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +2426 -786
  69. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -1
  70. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js +66 -0
  71. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js.map +1 -1
  72. package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js +67 -0
  73. package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js.map +1 -0
  74. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +11 -3
  75. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -1
  76. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +98 -1
  77. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -1
  78. package/codeyam-cli/src/utils/__tests__/editorRoadmap.test.js +1108 -0
  79. package/codeyam-cli/src/utils/__tests__/editorRoadmap.test.js.map +1 -0
  80. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +120 -0
  81. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -1
  82. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +160 -1
  83. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -1
  84. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +134 -1
  85. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -1
  86. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +246 -1
  87. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -1
  88. package/codeyam-cli/src/utils/__tests__/envFile.test.js +125 -0
  89. package/codeyam-cli/src/utils/__tests__/envFile.test.js.map +1 -0
  90. package/codeyam-cli/src/utils/__tests__/handoffContext.test.js +500 -0
  91. package/codeyam-cli/src/utils/__tests__/handoffContext.test.js.map +1 -0
  92. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +16 -1
  93. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -1
  94. package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js +302 -0
  95. package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js.map +1 -0
  96. package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js +127 -0
  97. package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js.map +1 -0
  98. package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js +84 -0
  99. package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js.map +1 -0
  100. package/codeyam-cli/src/utils/__tests__/testRunner.test.js +216 -0
  101. package/codeyam-cli/src/utils/__tests__/testRunner.test.js.map +1 -0
  102. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +6 -0
  103. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -1
  104. package/codeyam-cli/src/utils/analysisRunner.js +36 -7
  105. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  106. package/codeyam-cli/src/utils/analyzer.js +11 -1
  107. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  108. package/codeyam-cli/src/utils/designSystemShowcase.js +810 -0
  109. package/codeyam-cli/src/utils/designSystemShowcase.js.map +1 -0
  110. package/codeyam-cli/src/utils/editorApi.js +16 -0
  111. package/codeyam-cli/src/utils/editorApi.js.map +1 -1
  112. package/codeyam-cli/src/utils/editorAudit.js +385 -32
  113. package/codeyam-cli/src/utils/editorAudit.js.map +1 -1
  114. package/codeyam-cli/src/utils/editorGuard.js +36 -0
  115. package/codeyam-cli/src/utils/editorGuard.js.map +1 -0
  116. package/codeyam-cli/src/utils/editorPreview.js +5 -3
  117. package/codeyam-cli/src/utils/editorPreview.js.map +1 -1
  118. package/codeyam-cli/src/utils/editorRecapture.js +109 -0
  119. package/codeyam-cli/src/utils/editorRecapture.js.map +1 -0
  120. package/codeyam-cli/src/utils/editorRoadmap.js +574 -0
  121. package/codeyam-cli/src/utils/editorRoadmap.js.map +1 -0
  122. package/codeyam-cli/src/utils/editorScenarioSwitch.js +27 -12
  123. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -1
  124. package/codeyam-cli/src/utils/editorScenarios.js +108 -5
  125. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -1
  126. package/codeyam-cli/src/utils/editorSeedAdapter.js +69 -16
  127. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -1
  128. package/codeyam-cli/src/utils/entityChangeStatus.js +30 -2
  129. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -1
  130. package/codeyam-cli/src/utils/entityChangeStatus.server.js +31 -0
  131. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -1
  132. package/codeyam-cli/src/utils/envFile.js +90 -0
  133. package/codeyam-cli/src/utils/envFile.js.map +1 -0
  134. package/codeyam-cli/src/utils/handoffContext.js +257 -0
  135. package/codeyam-cli/src/utils/handoffContext.js.map +1 -0
  136. package/codeyam-cli/src/utils/install-skills.js +36 -6
  137. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  138. package/codeyam-cli/src/utils/manualEntityAnalysis.js +196 -0
  139. package/codeyam-cli/src/utils/manualEntityAnalysis.js.map +1 -0
  140. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js +159 -0
  141. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js.map +1 -0
  142. package/codeyam-cli/src/utils/queue/job.js +35 -6
  143. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  144. package/codeyam-cli/src/utils/registerScenarioResult.js +52 -0
  145. package/codeyam-cli/src/utils/registerScenarioResult.js.map +1 -0
  146. package/codeyam-cli/src/utils/scenariosManifest.js +30 -2
  147. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -1
  148. package/codeyam-cli/src/utils/screenshotHash.js +26 -0
  149. package/codeyam-cli/src/utils/screenshotHash.js.map +1 -0
  150. package/codeyam-cli/src/utils/simulationGateMiddleware.js +9 -0
  151. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -1
  152. package/codeyam-cli/src/utils/techStackConfig.js +38 -0
  153. package/codeyam-cli/src/utils/techStackConfig.js.map +1 -0
  154. package/codeyam-cli/src/utils/techStackConfig.test.js +85 -0
  155. package/codeyam-cli/src/utils/techStackConfig.test.js.map +1 -0
  156. package/codeyam-cli/src/utils/testResultCache.js +53 -0
  157. package/codeyam-cli/src/utils/testResultCache.js.map +1 -0
  158. package/codeyam-cli/src/utils/testResultCache.server.js +81 -0
  159. package/codeyam-cli/src/utils/testResultCache.server.js.map +1 -0
  160. package/codeyam-cli/src/utils/testResultCache.server.test.js +187 -0
  161. package/codeyam-cli/src/utils/testResultCache.server.test.js.map +1 -0
  162. package/codeyam-cli/src/utils/testResultCache.test.js +230 -0
  163. package/codeyam-cli/src/utils/testResultCache.test.js.map +1 -0
  164. package/codeyam-cli/src/utils/testRunner.js +193 -1
  165. package/codeyam-cli/src/utils/testRunner.js.map +1 -1
  166. package/codeyam-cli/src/utils/webappDetection.js +4 -2
  167. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  168. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js +99 -0
  169. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js.map +1 -0
  170. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js +95 -1
  171. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js.map +1 -1
  172. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +28 -1
  173. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -1
  174. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +145 -11
  175. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -1
  176. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +105 -7
  177. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -1
  178. package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js +135 -0
  179. package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js.map +1 -0
  180. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +15 -0
  181. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -1
  182. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  183. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js +34 -0
  184. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js.map +1 -0
  185. package/codeyam-cli/src/webserver/build/client/assets/{CopyButton-CLe80MMu.js → CopyButton-DTBZZfSk.js} +1 -1
  186. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-Crt_KN_U.js → EntityItem-BxclONWq.js} +1 -1
  187. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-CD7lGABo.js → EntityTypeIcon-BsnEOJZ_.js} +1 -1
  188. package/codeyam-cli/src/webserver/build/client/assets/{InlineSpinner-CgTNOhnu.js → InlineSpinner-ByaELMbv.js} +1 -1
  189. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CKeQT5Ty.js → InteractivePreview-6WjVfhxX.js} +2 -2
  190. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-D3s1MFkb.js → LibraryFunctionPreview-ChX-Hp7W.js} +1 -1
  191. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-CM5zg40N.js → LogViewer-C-9zQdXg.js} +1 -1
  192. package/codeyam-cli/src/webserver/build/client/assets/MiniClaudeChat-Bs2_Oua4.js +36 -0
  193. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-C2PLkej3.js → ReportIssueModal-DQsceHVv.js} +1 -1
  194. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-DanvyBPb.js → SafeScreenshot-DThcm_9M.js} +1 -1
  195. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DUMfcNVK.js → ScenarioViewer-Cl4oOA3A.js} +1 -1
  196. package/codeyam-cli/src/webserver/build/client/assets/Spinner-CIil5-gb.js +34 -0
  197. package/codeyam-cli/src/webserver/build/client/assets/{ViewportInspectBar-BA_Ry-rs.js → ViewportInspectBar-BqkA9zyZ.js} +1 -1
  198. package/codeyam-cli/src/webserver/build/client/assets/{_index-BAWd-Xjf.js → _index-DnOgyseQ.js} +1 -1
  199. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BOARiB-g.js → activity.(_tab)-DqM9hbNE.js} +1 -1
  200. package/codeyam-cli/src/webserver/build/client/assets/{addon-web-links-CHx25PAe.js → addon-web-links-C58dYPwR.js} +1 -1
  201. package/codeyam-cli/src/webserver/build/client/assets/{agent-transcripts-Bg3e7q4S.js → agent-transcripts-B8NCeOrm.js} +1 -1
  202. package/codeyam-cli/src/webserver/build/client/assets/api.editor-database-verify-l0sNRNKZ.js +1 -0
  203. package/codeyam-cli/src/webserver/build/client/assets/api.editor-github-verify-l0sNRNKZ.js +1 -0
  204. package/codeyam-cli/src/webserver/build/client/assets/api.editor-handoff-l0sNRNKZ.js +1 -0
  205. package/codeyam-cli/src/webserver/build/client/assets/api.editor-hosting-verify-l0sNRNKZ.js +1 -0
  206. package/codeyam-cli/src/webserver/build/client/assets/api.editor-recapture-stale-l0sNRNKZ.js +1 -0
  207. package/codeyam-cli/src/webserver/build/client/assets/api.editor-roadmap-l0sNRNKZ.js +1 -0
  208. package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-scenario-data-l0sNRNKZ.js +1 -0
  209. package/codeyam-cli/src/webserver/build/client/assets/api.editor-schema-l0sNRNKZ.js +1 -0
  210. package/codeyam-cli/src/webserver/build/client/assets/api.editor-verify-routes-l0sNRNKZ.js +1 -0
  211. package/codeyam-cli/src/webserver/build/client/assets/api.interactive-switch-scenario-l0sNRNKZ.js +1 -0
  212. package/codeyam-cli/src/webserver/build/client/assets/{book-open-CL-lMgHh.js → book-open-BFSIqZgO.js} +1 -1
  213. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-GmAjGS9-.js → chevron-down-B9fDzFVh.js} +1 -1
  214. package/codeyam-cli/src/webserver/build/client/assets/chunk-UVKPFVEO-Bmq2apuh.js +43 -0
  215. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-DFcQkN5j.js → circle-check-DLPObLUx.js} +1 -1
  216. package/codeyam-cli/src/webserver/build/client/assets/{copy-C6iF61Xs.js → copy-DXEmO0TD.js} +1 -1
  217. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-4ImjHTVC.js → createLucideIcon-BwyFiRot.js} +1 -1
  218. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-Coe5NhbS.js +1 -0
  219. package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-CCKUIm0S.svg → cy-logo-cli-DoA97ML3.svg} +2 -2
  220. package/codeyam-cli/src/webserver/build/client/assets/{dev.empty-C8y4mmyv.js → dev.empty-iRhRIFlp.js} +1 -1
  221. package/codeyam-cli/src/webserver/build/client/assets/editor._tab-BZPBzV73.js +1 -0
  222. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-DOXe0Qx7.js +161 -0
  223. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-C6fEYHrh.js +41 -0
  224. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-Blfy9UlN.js → entity._sha._-pc-vc6wO.js} +13 -12
  225. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.dev-KTQuL0aj.js → entity._sha.scenarios._scenarioId.dev-C8AyYgYT.js} +1 -1
  226. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-C6eeL24i.js → entity._sha.scenarios._scenarioId.fullscreen-DziaVQX1.js} +1 -1
  227. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-DQM8E7L4.js → entity._sha_.create-scenario-BTcpgIpC.js} +1 -1
  228. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-CAoXLsQr.js → entity._sha_.edit._scenarioId-D_O_ajfZ.js} +1 -1
  229. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-SuW9syRS.js → entry.client-j1Vi0bco.js} +6 -6
  230. package/codeyam-cli/src/webserver/build/client/assets/{files-D-xGrg29.js → files-kuny2Q_s.js} +1 -1
  231. package/codeyam-cli/src/webserver/build/client/assets/{git-Bq_fbXP5.js → git-DgCZPMie.js} +1 -1
  232. package/codeyam-cli/src/webserver/build/client/assets/globals-L-aUIeux.css +1 -0
  233. package/codeyam-cli/src/webserver/build/client/assets/{index-Bp1l4hSv.js → index-BliGSSpl.js} +1 -1
  234. package/codeyam-cli/src/webserver/build/client/assets/{index-DE3jI_dv.js → index-SqjQKTdH.js} +1 -1
  235. package/codeyam-cli/src/webserver/build/client/assets/{index-CWV9XZiG.js → index-vyrZD2g4.js} +1 -1
  236. package/codeyam-cli/src/webserver/build/client/assets/{labs-B_IX45ih.js → labs-c3yLxSEp.js} +1 -1
  237. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-De-7qQ2u.js → loader-circle-D-q28GLF.js} +1 -1
  238. package/codeyam-cli/src/webserver/build/client/assets/manifest-30c44d84.js +1 -0
  239. package/codeyam-cli/src/webserver/build/client/assets/{memory-Cx2xEx7s.js → memory-CEWIUC4t.js} +1 -1
  240. package/codeyam-cli/src/webserver/build/client/assets/{pause-CFxEKL1u.js → pause-BP6fitdh.js} +1 -1
  241. package/codeyam-cli/src/webserver/build/client/assets/{root-DB3O9_9j.js → root-CLedrjXQ.js} +26 -13
  242. package/codeyam-cli/src/webserver/build/client/assets/{search-BdBb5aqc.js → search-BooqacKS.js} +1 -1
  243. package/codeyam-cli/src/webserver/build/client/assets/{settings-DdE-Untf.js → settings-BM0nbryO.js} +1 -1
  244. package/codeyam-cli/src/webserver/build/client/assets/{simulations-DSCdE99u.js → simulations-ovy6FjRY.js} +1 -1
  245. package/codeyam-cli/src/webserver/build/client/assets/{terminal-CrplD4b1.js → terminal-DHemCJIs.js} +1 -1
  246. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-DqJ0j69l.js → triangle-alert-D87ekDl8.js} +1 -1
  247. package/codeyam-cli/src/webserver/build/client/assets/{useCustomSizes-DhXHbEjP.js → useCustomSizes-Dk0Tciqg.js} +1 -1
  248. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C8QvIe05.js +2 -0
  249. package/codeyam-cli/src/webserver/build/client/assets/{useReportContext-Cy5Qg_UR.js → useReportContext-jkCytuYz.js} +1 -1
  250. package/codeyam-cli/src/webserver/build/client/assets/{useToast-5HR2j9ZE.js → useToast-BgqkixU9.js} +1 -1
  251. package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-CuR5TvUx.js +16 -0
  252. package/codeyam-cli/src/webserver/build/server/assets/{index-DxB0pOSt.js → index-D4MWAsqb.js} +1 -1
  253. package/codeyam-cli/src/webserver/build/server/assets/init-JObA4lXD.js +14 -0
  254. package/codeyam-cli/src/webserver/build/server/assets/server-build-i8OXK4oL.js +765 -0
  255. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  256. package/codeyam-cli/src/webserver/build-info.json +5 -5
  257. package/codeyam-cli/src/webserver/editorProxy.js +132 -7
  258. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -1
  259. package/codeyam-cli/src/webserver/idleDetector.js +27 -3
  260. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -1
  261. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +17 -0
  262. package/codeyam-cli/src/webserver/server.js +119 -14
  263. package/codeyam-cli/src/webserver/server.js.map +1 -1
  264. package/codeyam-cli/src/webserver/terminalServer.js +235 -37
  265. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
  266. package/codeyam-cli/templates/__tests__/editor-step-hook.prompt-capture.test.ts +118 -0
  267. package/codeyam-cli/templates/codeyam-editor-claude.md +2 -0
  268. package/codeyam-cli/templates/codeyam-editor-codex.md +61 -0
  269. package/codeyam-cli/templates/codeyam-editor-gemini.md +59 -0
  270. package/codeyam-cli/templates/codeyam-editor-reference.md +9 -7
  271. package/codeyam-cli/templates/design-systems/clean-dashboard-design-system.md +255 -0
  272. package/codeyam-cli/templates/design-systems/editorial-design-system.md +267 -0
  273. package/codeyam-cli/templates/design-systems/mono-brutalist-design-system.md +256 -0
  274. package/codeyam-cli/templates/design-systems/neo-brutalist-design-system.md +294 -0
  275. package/codeyam-cli/templates/editor-step-hook.py +93 -46
  276. package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +204 -5
  277. package/codeyam-cli/templates/expo-react-native/__tests__/.gitkeep +0 -0
  278. package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +6 -3
  279. package/codeyam-cli/templates/expo-react-native/app/index.tsx +36 -0
  280. package/codeyam-cli/templates/expo-react-native/app.json +11 -0
  281. package/codeyam-cli/templates/expo-react-native/babel.config.js +1 -0
  282. package/codeyam-cli/templates/expo-react-native/gitignore +2 -0
  283. package/codeyam-cli/templates/expo-react-native/global.css +7 -0
  284. package/codeyam-cli/templates/expo-react-native/lib/theme.ts +73 -0
  285. package/codeyam-cli/templates/expo-react-native/package.json +32 -16
  286. package/codeyam-cli/templates/expo-react-native/patches/expo-modules-autolinking+3.0.24.patch +29 -0
  287. package/codeyam-cli/templates/isolation-route/expo-router.tsx.template +54 -0
  288. package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +1 -0
  289. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +47 -34
  290. package/codeyam-cli/templates/seed-adapters/supabase.ts +271 -78
  291. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +34 -1
  292. package/package.json +1 -1
  293. package/packages/ai/src/lib/astScopes/methodSemantics.js +99 -0
  294. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  295. package/packages/ai/src/lib/astScopes/nodeToSource.js +16 -0
  296. package/packages/ai/src/lib/astScopes/nodeToSource.js.map +1 -1
  297. package/packages/ai/src/lib/astScopes/paths.js +12 -3
  298. package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
  299. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +27 -10
  300. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  301. package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js +9 -2
  302. package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js.map +1 -1
  303. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +14 -4
  304. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  305. package/packages/analyze/index.js +1 -1
  306. package/packages/analyze/index.js.map +1 -1
  307. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +16 -2
  308. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  309. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +6 -26
  310. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  311. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +3 -2
  312. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  313. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +9 -7
  314. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  315. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +14 -0
  316. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  317. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +44 -11
  318. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  319. package/packages/analyze/src/lib/files/analyzeChange.js +1 -0
  320. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  321. package/packages/analyze/src/lib/files/analyzeInitial.js +1 -0
  322. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  323. package/packages/analyze/src/lib/files/analyzeNextRoute.js +5 -1
  324. package/packages/analyze/src/lib/files/analyzeNextRoute.js.map +1 -1
  325. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +120 -28
  326. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  327. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +1368 -1193
  328. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  329. package/packages/database/src/lib/loadAnalysis.js +7 -1
  330. package/packages/database/src/lib/loadAnalysis.js.map +1 -1
  331. package/packages/database/src/lib/loadEntity.js +5 -5
  332. package/packages/database/src/lib/loadEntity.js.map +1 -1
  333. package/packages/utils/src/lib/fs/rsyncCopy.js +22 -1
  334. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  335. package/codeyam-cli/src/webserver/build/client/assets/Spinner-D0LgAaSa.js +0 -34
  336. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-BAdwhyCx.js +0 -43
  337. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +0 -1
  338. package/codeyam-cli/src/webserver/build/client/assets/editor._tab-Gbk_i5Js.js +0 -1
  339. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-Bnx7yUP0.js +0 -58
  340. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-oepecPae.js +0 -41
  341. package/codeyam-cli/src/webserver/build/client/assets/globals-fAqOD9ex.css +0 -1
  342. package/codeyam-cli/src/webserver/build/client/assets/manifest-3157d6b8.js +0 -1
  343. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-BNd5hYuW.js +0 -2
  344. package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-BMmkgAkg.js +0 -13
  345. package/codeyam-cli/src/webserver/build/server/assets/init-DLYLaqqP.js +0 -10
  346. package/codeyam-cli/src/webserver/build/server/assets/server-build-CcyitQLQ.js +0 -551
  347. package/codeyam-cli/templates/expo-react-native/app/(tabs)/_layout.tsx +0 -33
  348. package/codeyam-cli/templates/expo-react-native/app/(tabs)/index.tsx +0 -12
  349. package/codeyam-cli/templates/expo-react-native/app/(tabs)/settings.tsx +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"runMultiScenarioServer.js","sourceRoot":"","sources":["../../../../../../../background/src/lib/virtualized/project/runMultiScenarioServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runMultiScenarioServer.js","sourceRoot":"","sources":["../../../../../../../background/src/lib/virtualized/project/runMultiScenarioServer.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ import { telemetryMiddleware } from "./utils/telemetryMiddleware.js";
31
31
  import { captureEvent } from "./utils/telemetry.js";
32
32
  import { getDisplayVersion } from "./utils/versionInfo.js";
33
33
  import { simulationGateMiddleware, buildSimulationEpilogue, } from "./utils/simulationGateMiddleware.js";
34
+ import { checkEditorGuard } from "./utils/editorGuard.js";
34
35
  import telemetryCommand from "./commands/telemetry.js";
35
36
  // Install global signal handlers for automatic process cleanup
36
37
  // This ensures all child processes (analyzer, capture, etc.) are cleaned up on:
@@ -50,6 +51,20 @@ yargs(hideBin(process.argv))
50
51
  .scriptName('codeyam')
51
52
  .version(getDisplayVersion())
52
53
  .usage('CodeYam local development CLI')
54
+ .middleware(() => {
55
+ // Block dangerous commands from inside the editor terminal.
56
+ // Uses process.argv directly because yargs absorbs named positionals.
57
+ const args = hideBin(process.argv);
58
+ const command = args[0];
59
+ if (command) {
60
+ const rest = args.slice(1);
61
+ const guard = checkEditorGuard(command, rest);
62
+ if (guard.blocked) {
63
+ console.error(guard.message);
64
+ process.exit(1);
65
+ }
66
+ }
67
+ })
53
68
  .middleware(simulationGateMiddleware)
54
69
  .middleware(syncMocksMiddleware)
55
70
  .middleware(telemetryMiddleware)
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Tests that `codeyam editor analyze-imports` correctly parses optional
3
+ * file path arguments to scope analysis to specific files.
4
+ *
5
+ * Without file paths, analyze-imports analyzes all glossary entities.
6
+ * With file paths, it scopes analysis to only those files.
7
+ */
8
+ import { parseAnalyzeImportsArgs } from "../editorAnalyzeImportsArgs.js";
9
+ describe('parseAnalyzeImportsArgs', () => {
10
+ it('should return empty array when no args provided', () => {
11
+ expect(parseAnalyzeImportsArgs(undefined, [])).toEqual([]);
12
+ expect(parseAnalyzeImportsArgs('', [])).toEqual([]);
13
+ });
14
+ it('should parse a single file path from json arg', () => {
15
+ // codeyam editor analyze-imports app/components/Foo.tsx
16
+ expect(parseAnalyzeImportsArgs('app/components/Foo.tsx', [])).toEqual([
17
+ 'app/components/Foo.tsx',
18
+ ]);
19
+ });
20
+ it('should collect extra positional args from argv._', () => {
21
+ // codeyam editor analyze-imports app/components/Foo.tsx app/components/Bar.tsx
22
+ // yargs: json="app/components/Foo.tsx", argv._=["editor", "app/components/Bar.tsx"]
23
+ expect(parseAnalyzeImportsArgs('app/components/Foo.tsx', [
24
+ 'editor',
25
+ 'app/components/Bar.tsx',
26
+ ])).toEqual(['app/components/Foo.tsx', 'app/components/Bar.tsx']);
27
+ });
28
+ it('should filter out "editor" from argv._', () => {
29
+ expect(parseAnalyzeImportsArgs(undefined, [
30
+ 'editor',
31
+ 'app/components/Foo.tsx',
32
+ 'app/lib/utils.ts',
33
+ ])).toEqual(['app/components/Foo.tsx', 'app/lib/utils.ts']);
34
+ });
35
+ it('should deduplicate file paths', () => {
36
+ expect(parseAnalyzeImportsArgs('app/components/Foo.tsx', [
37
+ 'editor',
38
+ 'app/components/Foo.tsx',
39
+ 'app/components/Bar.tsx',
40
+ ])).toEqual(['app/components/Foo.tsx', 'app/components/Bar.tsx']);
41
+ });
42
+ it('should handle numeric extras gracefully', () => {
43
+ // yargs can put numbers in argv._
44
+ expect(parseAnalyzeImportsArgs('app/components/Foo.tsx', [42, 'editor'])).toEqual(['app/components/Foo.tsx']);
45
+ });
46
+ });
47
+ //# sourceMappingURL=editor.analyzeImportsArgs.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.analyzeImportsArgs.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/editor.analyzeImportsArgs.test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,uBAAuB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,wDAAwD;QACxD,MAAM,CAAC,uBAAuB,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACpE,wBAAwB;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,+EAA+E;QAC/E,oFAAoF;QACpF,MAAM,CACJ,uBAAuB,CAAC,wBAAwB,EAAE;YAChD,QAAQ;YACR,wBAAwB;SACzB,CAAC,CACH,CAAC,OAAO,CAAC,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CACJ,uBAAuB,CAAC,SAAS,EAAE;YACjC,QAAQ;YACR,wBAAwB;YACxB,kBAAkB;SACnB,CAAC,CACH,CAAC,OAAO,CAAC,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,CACJ,uBAAuB,CAAC,wBAAwB,EAAE;YAChD,QAAQ;YACR,wBAAwB;YACxB,wBAAwB;SACzB,CAAC,CACH,CAAC,OAAO,CAAC,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,kCAAkC;QAClC,MAAM,CACJ,uBAAuB,CAAC,wBAAwB,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAClE,CAAC,OAAO,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,71 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ /**
4
+ * Structural test: handleAudit must NOT call runAnalysisForEntities.
5
+ *
6
+ * Previously, handleAudit auto-ran full analysis for incomplete entities,
7
+ * which was slow (analyzer startup + AST scan for all glossary entries).
8
+ *
9
+ * Targeted analysis (with filePaths for 1-3 specific files) is acceptable,
10
+ * but a full scan (without filePaths) must never be used here.
11
+ * This test ensures the full auto-analysis doesn't creep back in.
12
+ */
13
+ describe('handleAudit - no auto-analysis', () => {
14
+ it('should not call runAnalysisForEntities inside handleAudit', () => {
15
+ const editorTsPath = path.join(__dirname, '..', 'editor.ts');
16
+ const source = fs.readFileSync(editorTsPath, 'utf8');
17
+ // Extract the handleAudit function body.
18
+ // It starts with "async function handleAudit" and ends at the next
19
+ // top-level "async function" or "function" declaration (unindented).
20
+ const handleAuditStart = source.indexOf('async function handleAudit');
21
+ expect(handleAuditStart).toBeGreaterThan(-1);
22
+ // Find the next top-level function declaration after handleAudit starts.
23
+ // Top-level functions start at the beginning of a line (no indentation).
24
+ const afterStart = source.slice(handleAuditStart + 1);
25
+ const nextFnMatch = afterStart.match(/\n(?:async )?function [a-zA-Z]/);
26
+ const handleAuditEnd = nextFnMatch
27
+ ? handleAuditStart + 1 + nextFnMatch.index
28
+ : source.length;
29
+ const handleAuditBody = source.slice(handleAuditStart, handleAuditEnd);
30
+ // The function body must NOT contain runAnalysisForEntities
31
+ expect(handleAuditBody).not.toContain('runAnalysisForEntities');
32
+ });
33
+ it('should report incomplete entities with guidance instead of auto-fixing', () => {
34
+ const editorTsPath = path.join(__dirname, '..', 'editor.ts');
35
+ const source = fs.readFileSync(editorTsPath, 'utf8');
36
+ const handleAuditStart = source.indexOf('async function handleAudit');
37
+ const afterStart = source.slice(handleAuditStart + 1);
38
+ const nextFnMatch = afterStart.match(/\n(?:async )?function [a-zA-Z]/);
39
+ const handleAuditEnd = nextFnMatch
40
+ ? handleAuditStart + 1 + nextFnMatch.index
41
+ : source.length;
42
+ const handleAuditBody = source.slice(handleAuditStart, handleAuditEnd);
43
+ // Should still report incomplete entities
44
+ expect(handleAuditBody).toContain('incompleteEntities');
45
+ expect(handleAuditBody).toContain('formatIncompleteEntityGuidance');
46
+ });
47
+ it('should only call handleAnalyzeImports with filePaths (targeted, not full scan)', () => {
48
+ const editorTsPath = path.join(__dirname, '..', 'editor.ts');
49
+ const source = fs.readFileSync(editorTsPath, 'utf8');
50
+ const handleAuditStart = source.indexOf('async function handleAudit');
51
+ expect(handleAuditStart).toBeGreaterThan(-1);
52
+ const afterStart = source.slice(handleAuditStart + 1);
53
+ const nextFnMatch = afterStart.match(/\n(?:async )?function [a-zA-Z]/);
54
+ const handleAuditEnd = nextFnMatch
55
+ ? handleAuditStart + 1 + nextFnMatch.index
56
+ : source.length;
57
+ const handleAuditBody = source.slice(handleAuditStart, handleAuditEnd);
58
+ // Targeted handleAnalyzeImports (with filePaths) is OK — it only
59
+ // analyzes 1-3 specific files. A full scan (without filePaths) takes
60
+ // minutes on large projects and must never be used here.
61
+ const calls = [...handleAuditBody.matchAll(/handleAnalyzeImports\s*\(/g)];
62
+ for (const call of calls) {
63
+ const afterCall = handleAuditBody.slice(call.index + call[0].length);
64
+ // Each call must include filePaths in its arguments
65
+ const closingParen = afterCall.indexOf(')');
66
+ const callArgs = afterCall.slice(0, closingParen);
67
+ expect(callArgs).toContain('filePaths');
68
+ }
69
+ });
70
+ });
71
+ //# sourceMappingURL=editor.auditNoAutoAnalysis.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.auditNoAutoAnalysis.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/editor.auditNoAutoAnalysis.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { DESIGN_SYSTEMS } from "../../data/designSystems.js";
4
+ /**
5
+ * Structural tests for built-in design system selection in the editor.
6
+ * Ensures template files exist, editor.ts references each design system,
7
+ * and the subcommand dispatch is wired up.
8
+ */
9
+ describe('editor design system selection', () => {
10
+ const editorSource = fs.readFileSync(path.join(__dirname, '..', 'editor.ts'), 'utf8');
11
+ const templatesDir = path.join(__dirname, '..', // commands
12
+ '..', // src
13
+ '..', // codeyam-cli
14
+ 'templates', 'design-systems');
15
+ it('should have a template file for each design system', () => {
16
+ for (const ds of DESIGN_SYSTEMS) {
17
+ const filePath = path.join(templatesDir, ds.fileName);
18
+ expect(fs.existsSync(filePath)).toBe(true);
19
+ }
20
+ });
21
+ it('should iterate over DESIGN_SYSTEMS in printSetup to output design-system commands', () => {
22
+ // printSetup dynamically iterates DESIGN_SYSTEMS and outputs
23
+ // `codeyam editor design-system ${ds.id}` for each — verify the template literal is present
24
+ expect(editorSource).toContain('codeyam editor design-system ${ds.id}');
25
+ });
26
+ it('should have a design-system subcommand dispatch', () => {
27
+ expect(editorSource).toMatch(/argv\.step === ['"]design-system['"]/);
28
+ });
29
+ });
30
+ //# sourceMappingURL=editor.designSystem.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.designSystem.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/editor.designSystem.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;;;GAIG;AACH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,EACvC,MAAM,CACP,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAC5B,SAAS,EACT,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,cAAc;IACpB,WAAW,EACX,gBAAgB,CACjB,CAAC;IAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,6DAA6D;QAC7D,4FAA4F;QAC5F,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,55 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ /**
4
+ * Structural test: every writeState() call in editor.ts must preserve
5
+ * `techStackId` and `appFormats` from the previous state.
6
+ *
7
+ * Bug: Steps 4-18 dropped techStackId from writeState calls, causing
8
+ * getTechStackContext() to fall back to Next.js defaults. This broke
9
+ * `codeyam editor isolate` for Expo projects — it created Next.js-style
10
+ * subdirectories instead of Expo flat files.
11
+ */
12
+ describe('editor state persistence', () => {
13
+ const editorSource = fs.readFileSync(path.join(__dirname, '..', 'editor.ts'), 'utf8');
14
+ // Find all writeState blocks in the source.
15
+ // Each writeState call spans multiple lines like:
16
+ // writeState(root, {
17
+ // feature,
18
+ // step: N,
19
+ // ...
20
+ // });
21
+ const writeStateBlocks = [];
22
+ const lines = editorSource.split('\n');
23
+ for (let i = 0; i < lines.length; i++) {
24
+ if (lines[i].includes('writeState(root,')) {
25
+ // Collect lines until we find the closing `});`
26
+ let block = '';
27
+ for (let j = i; j < lines.length; j++) {
28
+ block += lines[j] + '\n';
29
+ if (lines[j].match(/^\s*\}\);/))
30
+ break;
31
+ }
32
+ writeStateBlocks.push({ lineNumber: i + 1, block });
33
+ }
34
+ }
35
+ it('should find writeState calls in editor.ts', () => {
36
+ expect(writeStateBlocks.length).toBeGreaterThan(10);
37
+ });
38
+ // Filter to only writeState blocks that set a step number (printStep functions).
39
+ // Exclude the handleTemplate/migration-survey writeState that sets step: 0.
40
+ const stepWriteStates = writeStateBlocks.filter(({ block }) => block.match(/step:\s*\d+/) && !block.match(/step:\s*0/));
41
+ it('should find step writeState calls', () => {
42
+ expect(stepWriteStates.length).toBeGreaterThanOrEqual(18);
43
+ });
44
+ for (const { lineNumber, block } of stepWriteStates) {
45
+ const stepMatch = block.match(/step:\s*(\d+)/);
46
+ const stepNum = stepMatch ? stepMatch[1] : '?';
47
+ it(`step ${stepNum} writeState (line ${lineNumber}) should preserve techStackId`, () => {
48
+ expect(block).toContain('techStackId');
49
+ });
50
+ it(`step ${stepNum} writeState (line ${lineNumber}) should preserve appFormats`, () => {
51
+ expect(block).toContain('appFormats');
52
+ });
53
+ }
54
+ });
55
+ //# sourceMappingURL=editor.statePersistence.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.statePersistence.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/editor.statePersistence.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;;;;;;;GAQG;AACH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,EACvC,MAAM,CACP,CAAC;IAEF,4CAA4C;IAC5C,kDAAkD;IAClD,uBAAuB;IACvB,eAAe;IACf,eAAe;IACf,UAAU;IACV,QAAQ;IACR,MAAM,gBAAgB,GAA4C,EAAE,CAAC;IACrE,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC1C,gDAAgD;YAChD,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBACzB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;oBAAE,MAAM;YACzC,CAAC;YACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,iFAAiF;IACjF,4EAA4E;IAC5E,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAC7C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CACvE,CAAC;IAEF,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,KAAK,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,eAAe,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAE/C,EAAE,CAAC,QAAQ,OAAO,qBAAqB,UAAU,+BAA+B,EAAE,GAAG,EAAE;YACrF,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,QAAQ,OAAO,qBAAqB,UAAU,8BAA8B,EAAE,GAAG,EAAE;YACpF,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -2,8 +2,8 @@ import fs from 'fs';
2
2
  import path from 'path';
3
3
  /**
4
4
  * Structural test: the CLI dispatch switch in editor.ts must have case labels
5
- * for every step 1–16. Without this test, it's easy to add new steps
6
- * (e.g. 14, 15, 16) to the printStep functions and STEP_LABELS but forget
5
+ * for every step 1–18. Without this test, it's easy to add new steps
6
+ * (e.g. 16, 17, 18) to the printStep functions and STEP_LABELS but forget
7
7
  * to add matching case labels to the switch statement — causing `codeyam editor N`
8
8
  * to silently do nothing for the missing steps.
9
9
  *
@@ -12,31 +12,31 @@ import path from 'path';
12
12
  */
13
13
  describe('editor CLI step dispatch', () => {
14
14
  const editorSource = fs.readFileSync(path.join(__dirname, '..', 'editor.ts'), 'utf8');
15
- it('should have switch case labels for all steps 1–16', () => {
15
+ it('should have switch case labels for all steps 1–18', () => {
16
16
  // Find the switch(step) block in the CLI dispatch section.
17
17
  // There are two stepFns definitions in editor.ts:
18
18
  // 1. Test/debug scenario generator (~line 4658) — uses a for-loop, not a switch
19
19
  // 2. CLI dispatch (~line 5263) — uses switch(step) { case N: ... }
20
20
  //
21
- // We need to verify the second one (CLI dispatch) has cases for all 16 steps.
21
+ // We need to verify the second one (CLI dispatch) has cases for all 18 steps.
22
22
  // Find all `case N:` labels in the file. The CLI dispatch switch is the
23
23
  // only switch on `step` that uses numbered cases.
24
24
  const switchMatch = editorSource.match(/switch\s*\(step\)\s*\{([\s\S]*?)\n\s{4}\}/);
25
25
  expect(switchMatch).not.toBeNull();
26
26
  const switchBody = switchMatch[1];
27
- for (let step = 1; step <= 16; step++) {
27
+ for (let step = 1; step <= 18; step++) {
28
28
  const casePattern = new RegExp(`case\\s+${step}\\s*[:{]`);
29
29
  expect(switchBody).toMatch(casePattern);
30
30
  }
31
31
  });
32
- it('should have STEP_LABELS entries for all steps 1–16', () => {
33
- for (let step = 1; step <= 16; step++) {
32
+ it('should have STEP_LABELS entries for all steps 1–18', () => {
33
+ for (let step = 1; step <= 18; step++) {
34
34
  const labelPattern = new RegExp(`${step}:\\s*'[^']+'`);
35
35
  expect(editorSource).toMatch(labelPattern);
36
36
  }
37
37
  });
38
- it('should have printStep functions defined for all steps 1–16', () => {
39
- for (let step = 1; step <= 16; step++) {
38
+ it('should have printStep functions defined for all steps 1–18', () => {
39
+ for (let step = 1; step <= 18; step++) {
40
40
  const fnPattern = new RegExp(`function\\s+printStep${step}\\s*\\(`);
41
41
  expect(editorSource).toMatch(fnPattern);
42
42
  }
@@ -17,8 +17,10 @@ const CODEYAM_GITIGNORE_ENTRIES = [
17
17
  '.codeyam/active-scenario.json',
18
18
  '.codeyam/editor-step.json',
19
19
  '.codeyam/editor-user-prompt.txt',
20
+ '.codeyam/claude-session-id.txt',
20
21
  '.codeyam/editor-mode-context.md',
21
22
  '.codeyam/dev-mode-context.md',
23
+ '.codeyam/handoff-context.md',
22
24
  '.codeyam/logs/',
23
25
  '.codeyam/llm-calls/',
24
26
  '.codeyam/captures/',
@@ -26,6 +28,7 @@ const CODEYAM_GITIGNORE_ENTRIES = [
26
28
  '.codeyam/tmp/',
27
29
  '.codeyam/rules/',
28
30
  '.codeyam/bin/',
31
+ '.codeyam/docs/',
29
32
  ];
30
33
  /**
31
34
  * Extract the ensureGitignoreEntry function for testing.
@@ -63,6 +66,17 @@ async function ensureGitignoreEntry(projectRoot) {
63
66
  block;
64
67
  await fs.writeFile(gitignorePath, newContent, 'utf8');
65
68
  }
69
+ else {
70
+ // Add any missing entries from the current list
71
+ const missingEntries = CODEYAM_GITIGNORE_ENTRIES.filter((entry) => !lines.some((line) => line.trim() === entry));
72
+ if (missingEntries.length > 0) {
73
+ const updatedContent = gitignoreContent +
74
+ (gitignoreContent && !gitignoreContent.endsWith('\n') ? '\n' : '') +
75
+ missingEntries.join('\n') +
76
+ '\n';
77
+ await fs.writeFile(gitignorePath, updatedContent, 'utf8');
78
+ }
79
+ }
66
80
  }
67
81
  describe('init command - gitignore management', () => {
68
82
  let testDir;
@@ -100,12 +114,15 @@ describe('init command - gitignore management', () => {
100
114
  expect(content).toContain('.codeyam/db.sqlite3');
101
115
  expect(content).toContain('.codeyam/secrets.json');
102
116
  });
103
- test('does not duplicate when granular patterns already exist', async () => {
117
+ test('does not duplicate when all granular patterns already exist', async () => {
104
118
  const gitignorePath = path.join(testDir, '.gitignore');
105
- await fs.writeFile(gitignorePath, 'node_modules\n.codeyam/db.sqlite3\n.codeyam/secrets.json\n', 'utf8');
119
+ await fs.writeFile(gitignorePath, 'node_modules\n\n# CodeYam - local only (not shared)\n' +
120
+ CODEYAM_GITIGNORE_ENTRIES.join('\n') +
121
+ '\n', 'utf8');
106
122
  await ensureGitignoreEntry(testDir);
107
123
  const content = await fs.readFile(gitignorePath, 'utf8');
108
- const matches = content.match(/\.codeyam\/db\.sqlite3/g);
124
+ // Exact match on the line — no duplicates
125
+ const matches = content.match(/^\.codeyam\/db\.sqlite3$/gm);
109
126
  expect(matches).toHaveLength(1);
110
127
  });
111
128
  test('replaces blanket .codeyam with granular patterns', async () => {
@@ -172,6 +189,25 @@ build
172
189
  expect(content).toContain('dist');
173
190
  expect(content).toContain('.codeyam/db.sqlite3');
174
191
  });
192
+ test('adds missing entries to existing granular block', async () => {
193
+ const gitignorePath = path.join(testDir, '.gitignore');
194
+ // Simulate an older gitignore that has most entries but is missing claude-session-id.txt and docs/
195
+ const oldEntries = CODEYAM_GITIGNORE_ENTRIES.filter((e) => e !== '.codeyam/claude-session-id.txt' && e !== '.codeyam/docs/');
196
+ await fs.writeFile(gitignorePath, 'node_modules\n\n# CodeYam - local only (not shared)\n' +
197
+ oldEntries.join('\n') +
198
+ '\n', 'utf8');
199
+ await ensureGitignoreEntry(testDir);
200
+ const content = await fs.readFile(gitignorePath, 'utf8');
201
+ // New entries should be added
202
+ expect(content).toContain('.codeyam/claude-session-id.txt');
203
+ expect(content).toContain('.codeyam/docs/');
204
+ // Existing entries should still be there
205
+ expect(content).toContain('.codeyam/db.sqlite3');
206
+ expect(content).toContain('.codeyam/secrets.json');
207
+ // No duplicates
208
+ const dbMatches = content.match(/\.codeyam\/db\.sqlite3$/gm);
209
+ expect(dbMatches).toHaveLength(1);
210
+ });
175
211
  test('config.json is NOT ignored (allows sharing via git)', async () => {
176
212
  await ensureGitignoreEntry(testDir);
177
213
  const gitignorePath = path.join(testDir, '.gitignore');
@@ -1 +1 @@
1
- {"version":3,"file":"init.gitignore.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/init.gitignore.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.gitignore.test.js","sourceRoot":"","sources":["../../../../../src/commands/__tests__/init.gitignore.test.ts"],"names":[],"mappings":"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"}