@skillsmith/cli 0.7.2 → 0.7.3

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 (560) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli.js +44039 -0
  4. package/package.json +21 -11
  5. package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts +0 -20
  6. package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts.map +0 -1
  7. package/dist/src/commands/__meta__/telemetry-coverage.test.js +0 -118
  8. package/dist/src/commands/__meta__/telemetry-coverage.test.js.map +0 -1
  9. package/dist/src/commands/ab-test.d.ts +0 -29
  10. package/dist/src/commands/ab-test.d.ts.map +0 -1
  11. package/dist/src/commands/ab-test.js +0 -226
  12. package/dist/src/commands/ab-test.js.map +0 -1
  13. package/dist/src/commands/ab-test.test.d.ts +0 -7
  14. package/dist/src/commands/ab-test.test.d.ts.map +0 -1
  15. package/dist/src/commands/ab-test.test.js +0 -255
  16. package/dist/src/commands/ab-test.test.js.map +0 -1
  17. package/dist/src/commands/analyze.d.ts +0 -14
  18. package/dist/src/commands/analyze.d.ts.map +0 -1
  19. package/dist/src/commands/analyze.js +0 -191
  20. package/dist/src/commands/analyze.js.map +0 -1
  21. package/dist/src/commands/audit-collisions.d.ts +0 -68
  22. package/dist/src/commands/audit-collisions.d.ts.map +0 -1
  23. package/dist/src/commands/audit-collisions.js +0 -309
  24. package/dist/src/commands/audit-collisions.js.map +0 -1
  25. package/dist/src/commands/audit-sources.action.d.ts +0 -37
  26. package/dist/src/commands/audit-sources.action.d.ts.map +0 -1
  27. package/dist/src/commands/audit-sources.action.js +0 -321
  28. package/dist/src/commands/audit-sources.action.js.map +0 -1
  29. package/dist/src/commands/audit-sources.d.ts +0 -37
  30. package/dist/src/commands/audit-sources.d.ts.map +0 -1
  31. package/dist/src/commands/audit-sources.js +0 -55
  32. package/dist/src/commands/audit-sources.js.map +0 -1
  33. package/dist/src/commands/audit-sources.test.d.ts +0 -9
  34. package/dist/src/commands/audit-sources.test.d.ts.map +0 -1
  35. package/dist/src/commands/audit-sources.test.js +0 -228
  36. package/dist/src/commands/audit-sources.test.js.map +0 -1
  37. package/dist/src/commands/audit.d.ts +0 -40
  38. package/dist/src/commands/audit.d.ts.map +0 -1
  39. package/dist/src/commands/audit.js +0 -223
  40. package/dist/src/commands/audit.js.map +0 -1
  41. package/dist/src/commands/audit.test.d.ts +0 -8
  42. package/dist/src/commands/audit.test.d.ts.map +0 -1
  43. package/dist/src/commands/audit.test.js +0 -97
  44. package/dist/src/commands/audit.test.js.map +0 -1
  45. package/dist/src/commands/author/index.d.ts +0 -17
  46. package/dist/src/commands/author/index.d.ts.map +0 -1
  47. package/dist/src/commands/author/index.js +0 -21
  48. package/dist/src/commands/author/index.js.map +0 -1
  49. package/dist/src/commands/author/init.action.d.ts +0 -29
  50. package/dist/src/commands/author/init.action.d.ts.map +0 -1
  51. package/dist/src/commands/author/init.action.js +0 -131
  52. package/dist/src/commands/author/init.action.js.map +0 -1
  53. package/dist/src/commands/author/init.d.ts +0 -36
  54. package/dist/src/commands/author/init.d.ts.map +0 -1
  55. package/dist/src/commands/author/init.helpers.d.ts +0 -80
  56. package/dist/src/commands/author/init.helpers.d.ts.map +0 -1
  57. package/dist/src/commands/author/init.helpers.js +0 -107
  58. package/dist/src/commands/author/init.helpers.js.map +0 -1
  59. package/dist/src/commands/author/init.js +0 -320
  60. package/dist/src/commands/author/init.js.map +0 -1
  61. package/dist/src/commands/author/mcp-init.d.ts +0 -21
  62. package/dist/src/commands/author/mcp-init.d.ts.map +0 -1
  63. package/dist/src/commands/author/mcp-init.js +0 -202
  64. package/dist/src/commands/author/mcp-init.js.map +0 -1
  65. package/dist/src/commands/author/subagent.d.ts +0 -23
  66. package/dist/src/commands/author/subagent.d.ts.map +0 -1
  67. package/dist/src/commands/author/subagent.js +0 -174
  68. package/dist/src/commands/author/subagent.js.map +0 -1
  69. package/dist/src/commands/author/transform.d.ts +0 -23
  70. package/dist/src/commands/author/transform.d.ts.map +0 -1
  71. package/dist/src/commands/author/transform.js +0 -149
  72. package/dist/src/commands/author/transform.js.map +0 -1
  73. package/dist/src/commands/author/utils.d.ts +0 -27
  74. package/dist/src/commands/author/utils.d.ts.map +0 -1
  75. package/dist/src/commands/author/utils.js +0 -118
  76. package/dist/src/commands/author/utils.js.map +0 -1
  77. package/dist/src/commands/config.d.ts +0 -57
  78. package/dist/src/commands/config.d.ts.map +0 -1
  79. package/dist/src/commands/config.js +0 -226
  80. package/dist/src/commands/config.js.map +0 -1
  81. package/dist/src/commands/create.d.ts +0 -43
  82. package/dist/src/commands/create.d.ts.map +0 -1
  83. package/dist/src/commands/create.js +0 -336
  84. package/dist/src/commands/create.js.map +0 -1
  85. package/dist/src/commands/diff.d.ts +0 -21
  86. package/dist/src/commands/diff.d.ts.map +0 -1
  87. package/dist/src/commands/diff.js +0 -227
  88. package/dist/src/commands/diff.js.map +0 -1
  89. package/dist/src/commands/diff.test.d.ts +0 -6
  90. package/dist/src/commands/diff.test.d.ts.map +0 -1
  91. package/dist/src/commands/diff.test.js +0 -327
  92. package/dist/src/commands/diff.test.js.map +0 -1
  93. package/dist/src/commands/import-local.d.ts +0 -28
  94. package/dist/src/commands/import-local.d.ts.map +0 -1
  95. package/dist/src/commands/import-local.helpers.d.ts +0 -28
  96. package/dist/src/commands/import-local.helpers.d.ts.map +0 -1
  97. package/dist/src/commands/import-local.helpers.js +0 -166
  98. package/dist/src/commands/import-local.helpers.js.map +0 -1
  99. package/dist/src/commands/import-local.js +0 -273
  100. package/dist/src/commands/import-local.js.map +0 -1
  101. package/dist/src/commands/import-local.types.d.ts +0 -59
  102. package/dist/src/commands/import-local.types.d.ts.map +0 -1
  103. package/dist/src/commands/import-local.types.js +0 -2
  104. package/dist/src/commands/import-local.types.js.map +0 -1
  105. package/dist/src/commands/import.d.ts +0 -47
  106. package/dist/src/commands/import.d.ts.map +0 -1
  107. package/dist/src/commands/import.js +0 -314
  108. package/dist/src/commands/import.js.map +0 -1
  109. package/dist/src/commands/index.d.ts +0 -28
  110. package/dist/src/commands/index.d.ts.map +0 -1
  111. package/dist/src/commands/index.js +0 -50
  112. package/dist/src/commands/index.js.map +0 -1
  113. package/dist/src/commands/info.d.ts +0 -19
  114. package/dist/src/commands/info.d.ts.map +0 -1
  115. package/dist/src/commands/info.js +0 -110
  116. package/dist/src/commands/info.js.map +0 -1
  117. package/dist/src/commands/install-skill.d.ts +0 -16
  118. package/dist/src/commands/install-skill.d.ts.map +0 -1
  119. package/dist/src/commands/install-skill.js +0 -155
  120. package/dist/src/commands/install-skill.js.map +0 -1
  121. package/dist/src/commands/install.d.ts +0 -34
  122. package/dist/src/commands/install.d.ts.map +0 -1
  123. package/dist/src/commands/install.js +0 -311
  124. package/dist/src/commands/install.js.map +0 -1
  125. package/dist/src/commands/inventory.action.d.ts +0 -55
  126. package/dist/src/commands/inventory.action.d.ts.map +0 -1
  127. package/dist/src/commands/inventory.action.js +0 -179
  128. package/dist/src/commands/inventory.action.js.map +0 -1
  129. package/dist/src/commands/inventory.action.test.d.ts +0 -19
  130. package/dist/src/commands/inventory.action.test.d.ts.map +0 -1
  131. package/dist/src/commands/inventory.action.test.js +0 -371
  132. package/dist/src/commands/inventory.action.test.js.map +0 -1
  133. package/dist/src/commands/inventory.d.ts +0 -21
  134. package/dist/src/commands/inventory.d.ts.map +0 -1
  135. package/dist/src/commands/inventory.js +0 -42
  136. package/dist/src/commands/inventory.js.map +0 -1
  137. package/dist/src/commands/login.d.ts +0 -7
  138. package/dist/src/commands/login.d.ts.map +0 -1
  139. package/dist/src/commands/login.js +0 -323
  140. package/dist/src/commands/login.js.map +0 -1
  141. package/dist/src/commands/login.test-helpers.d.ts +0 -7
  142. package/dist/src/commands/login.test-helpers.d.ts.map +0 -1
  143. package/dist/src/commands/login.test-helpers.js +0 -44
  144. package/dist/src/commands/login.test-helpers.js.map +0 -1
  145. package/dist/src/commands/login.test.d.ts +0 -2
  146. package/dist/src/commands/login.test.d.ts.map +0 -1
  147. package/dist/src/commands/login.test.js +0 -387
  148. package/dist/src/commands/login.test.js.map +0 -1
  149. package/dist/src/commands/logout.d.ts +0 -15
  150. package/dist/src/commands/logout.d.ts.map +0 -1
  151. package/dist/src/commands/logout.js +0 -54
  152. package/dist/src/commands/logout.js.map +0 -1
  153. package/dist/src/commands/logout.test.d.ts +0 -8
  154. package/dist/src/commands/logout.test.d.ts.map +0 -1
  155. package/dist/src/commands/logout.test.js +0 -137
  156. package/dist/src/commands/logout.test.js.map +0 -1
  157. package/dist/src/commands/manage.d.ts +0 -19
  158. package/dist/src/commands/manage.d.ts.map +0 -1
  159. package/dist/src/commands/manage.js +0 -346
  160. package/dist/src/commands/manage.js.map +0 -1
  161. package/dist/src/commands/merge.d.ts +0 -24
  162. package/dist/src/commands/merge.d.ts.map +0 -1
  163. package/dist/src/commands/merge.js +0 -168
  164. package/dist/src/commands/merge.js.map +0 -1
  165. package/dist/src/commands/pin.d.ts +0 -26
  166. package/dist/src/commands/pin.d.ts.map +0 -1
  167. package/dist/src/commands/pin.js +0 -138
  168. package/dist/src/commands/pin.js.map +0 -1
  169. package/dist/src/commands/pin.test.d.ts +0 -6
  170. package/dist/src/commands/pin.test.d.ts.map +0 -1
  171. package/dist/src/commands/pin.test.js +0 -206
  172. package/dist/src/commands/pin.test.js.map +0 -1
  173. package/dist/src/commands/recommend-scoring.d.ts +0 -29
  174. package/dist/src/commands/recommend-scoring.d.ts.map +0 -1
  175. package/dist/src/commands/recommend-scoring.js +0 -141
  176. package/dist/src/commands/recommend-scoring.js.map +0 -1
  177. package/dist/src/commands/recommend.d.ts +0 -15
  178. package/dist/src/commands/recommend.d.ts.map +0 -1
  179. package/dist/src/commands/recommend.helpers.d.ts +0 -44
  180. package/dist/src/commands/recommend.helpers.d.ts.map +0 -1
  181. package/dist/src/commands/recommend.helpers.js +0 -303
  182. package/dist/src/commands/recommend.helpers.js.map +0 -1
  183. package/dist/src/commands/recommend.js +0 -198
  184. package/dist/src/commands/recommend.js.map +0 -1
  185. package/dist/src/commands/recommend.types.d.ts +0 -66
  186. package/dist/src/commands/recommend.types.d.ts.map +0 -1
  187. package/dist/src/commands/recommend.types.js +0 -14
  188. package/dist/src/commands/recommend.types.js.map +0 -1
  189. package/dist/src/commands/run-registry-sync.d.ts +0 -31
  190. package/dist/src/commands/run-registry-sync.d.ts.map +0 -1
  191. package/dist/src/commands/run-registry-sync.js +0 -45
  192. package/dist/src/commands/run-registry-sync.js.map +0 -1
  193. package/dist/src/commands/search-formatters.d.ts +0 -36
  194. package/dist/src/commands/search-formatters.d.ts.map +0 -1
  195. package/dist/src/commands/search-formatters.js +0 -132
  196. package/dist/src/commands/search-formatters.js.map +0 -1
  197. package/dist/src/commands/search-types.d.ts +0 -46
  198. package/dist/src/commands/search-types.d.ts.map +0 -1
  199. package/dist/src/commands/search-types.js +0 -12
  200. package/dist/src/commands/search-types.js.map +0 -1
  201. package/dist/src/commands/search.action.d.ts +0 -16
  202. package/dist/src/commands/search.action.d.ts.map +0 -1
  203. package/dist/src/commands/search.action.js +0 -384
  204. package/dist/src/commands/search.action.js.map +0 -1
  205. package/dist/src/commands/search.d.ts +0 -18
  206. package/dist/src/commands/search.d.ts.map +0 -1
  207. package/dist/src/commands/search.helpers.d.ts +0 -52
  208. package/dist/src/commands/search.helpers.d.ts.map +0 -1
  209. package/dist/src/commands/search.helpers.js +0 -95
  210. package/dist/src/commands/search.helpers.js.map +0 -1
  211. package/dist/src/commands/search.js +0 -48
  212. package/dist/src/commands/search.js.map +0 -1
  213. package/dist/src/commands/search.test.d.ts +0 -10
  214. package/dist/src/commands/search.test.d.ts.map +0 -1
  215. package/dist/src/commands/search.test.js +0 -179
  216. package/dist/src/commands/search.test.js.map +0 -1
  217. package/dist/src/commands/sync.action.d.ts +0 -39
  218. package/dist/src/commands/sync.action.d.ts.map +0 -1
  219. package/dist/src/commands/sync.action.js +0 -353
  220. package/dist/src/commands/sync.action.js.map +0 -1
  221. package/dist/src/commands/sync.d.ts +0 -24
  222. package/dist/src/commands/sync.d.ts.map +0 -1
  223. package/dist/src/commands/sync.helpers.d.ts +0 -55
  224. package/dist/src/commands/sync.helpers.d.ts.map +0 -1
  225. package/dist/src/commands/sync.helpers.js +0 -90
  226. package/dist/src/commands/sync.helpers.js.map +0 -1
  227. package/dist/src/commands/sync.js +0 -101
  228. package/dist/src/commands/sync.js.map +0 -1
  229. package/dist/src/commands/telemetry.action.d.ts +0 -38
  230. package/dist/src/commands/telemetry.action.d.ts.map +0 -1
  231. package/dist/src/commands/telemetry.action.js +0 -350
  232. package/dist/src/commands/telemetry.action.js.map +0 -1
  233. package/dist/src/commands/telemetry.d.ts +0 -30
  234. package/dist/src/commands/telemetry.d.ts.map +0 -1
  235. package/dist/src/commands/telemetry.helpers.d.ts +0 -58
  236. package/dist/src/commands/telemetry.helpers.d.ts.map +0 -1
  237. package/dist/src/commands/telemetry.helpers.js +0 -173
  238. package/dist/src/commands/telemetry.helpers.js.map +0 -1
  239. package/dist/src/commands/telemetry.helpers.test.d.ts +0 -15
  240. package/dist/src/commands/telemetry.helpers.test.d.ts.map +0 -1
  241. package/dist/src/commands/telemetry.helpers.test.js +0 -240
  242. package/dist/src/commands/telemetry.helpers.test.js.map +0 -1
  243. package/dist/src/commands/telemetry.js +0 -65
  244. package/dist/src/commands/telemetry.js.map +0 -1
  245. package/dist/src/commands/telemetry.test.d.ts +0 -18
  246. package/dist/src/commands/telemetry.test.d.ts.map +0 -1
  247. package/dist/src/commands/telemetry.test.js +0 -401
  248. package/dist/src/commands/telemetry.test.js.map +0 -1
  249. package/dist/src/commands/whoami.d.ts +0 -15
  250. package/dist/src/commands/whoami.d.ts.map +0 -1
  251. package/dist/src/commands/whoami.js +0 -55
  252. package/dist/src/commands/whoami.js.map +0 -1
  253. package/dist/src/commands/whoami.test.d.ts +0 -8
  254. package/dist/src/commands/whoami.test.d.ts.map +0 -1
  255. package/dist/src/commands/whoami.test.js +0 -133
  256. package/dist/src/commands/whoami.test.js.map +0 -1
  257. package/dist/src/config.d.ts +0 -29
  258. package/dist/src/config.d.ts.map +0 -1
  259. package/dist/src/config.js +0 -34
  260. package/dist/src/config.js.map +0 -1
  261. package/dist/src/index.d.ts +0 -22
  262. package/dist/src/index.d.ts.map +0 -1
  263. package/dist/src/index.js +0 -117
  264. package/dist/src/index.js.map +0 -1
  265. package/dist/src/templates/changelog.md.template.d.ts +0 -8
  266. package/dist/src/templates/changelog.md.template.d.ts.map +0 -1
  267. package/dist/src/templates/changelog.md.template.js +0 -19
  268. package/dist/src/templates/changelog.md.template.js.map +0 -1
  269. package/dist/src/templates/index.d.ts +0 -11
  270. package/dist/src/templates/index.d.ts.map +0 -1
  271. package/dist/src/templates/index.js +0 -11
  272. package/dist/src/templates/index.js.map +0 -1
  273. package/dist/src/templates/mcp-server.template.d.ts +0 -82
  274. package/dist/src/templates/mcp-server.template.d.ts.map +0 -1
  275. package/dist/src/templates/mcp-server.template.js +0 -430
  276. package/dist/src/templates/mcp-server.template.js.map +0 -1
  277. package/dist/src/templates/mcp-server.template.snippets.d.ts +0 -51
  278. package/dist/src/templates/mcp-server.template.snippets.d.ts.map +0 -1
  279. package/dist/src/templates/mcp-server.template.snippets.js +0 -162
  280. package/dist/src/templates/mcp-server.template.snippets.js.map +0 -1
  281. package/dist/src/templates/mcp-template-handlers.d.ts +0 -33
  282. package/dist/src/templates/mcp-template-handlers.d.ts.map +0 -1
  283. package/dist/src/templates/mcp-template-handlers.js +0 -106
  284. package/dist/src/templates/mcp-template-handlers.js.map +0 -1
  285. package/dist/src/templates/mcp-template-types.d.ts +0 -48
  286. package/dist/src/templates/mcp-template-types.d.ts.map +0 -1
  287. package/dist/src/templates/mcp-template-types.js +0 -18
  288. package/dist/src/templates/mcp-template-types.js.map +0 -1
  289. package/dist/src/templates/readme.md.template.d.ts +0 -8
  290. package/dist/src/templates/readme.md.template.d.ts.map +0 -1
  291. package/dist/src/templates/readme.md.template.js +0 -86
  292. package/dist/src/templates/readme.md.template.js.map +0 -1
  293. package/dist/src/templates/skill.md.template.d.ts +0 -8
  294. package/dist/src/templates/skill.md.template.d.ts.map +0 -1
  295. package/dist/src/templates/skill.md.template.js +0 -97
  296. package/dist/src/templates/skill.md.template.js.map +0 -1
  297. package/dist/src/templates/subagent.md.template.d.ts +0 -38
  298. package/dist/src/templates/subagent.md.template.d.ts.map +0 -1
  299. package/dist/src/templates/subagent.md.template.js +0 -128
  300. package/dist/src/templates/subagent.md.template.js.map +0 -1
  301. package/dist/src/utils/errors.d.ts +0 -52
  302. package/dist/src/utils/errors.d.ts.map +0 -1
  303. package/dist/src/utils/errors.js +0 -58
  304. package/dist/src/utils/errors.js.map +0 -1
  305. package/dist/src/utils/formatters.d.ts +0 -39
  306. package/dist/src/utils/formatters.d.ts.map +0 -1
  307. package/dist/src/utils/formatters.js +0 -69
  308. package/dist/src/utils/formatters.js.map +0 -1
  309. package/dist/src/utils/license-types.d.ts +0 -88
  310. package/dist/src/utils/license-types.d.ts.map +0 -1
  311. package/dist/src/utils/license-types.js +0 -60
  312. package/dist/src/utils/license-types.js.map +0 -1
  313. package/dist/src/utils/license-validation.d.ts +0 -61
  314. package/dist/src/utils/license-validation.d.ts.map +0 -1
  315. package/dist/src/utils/license-validation.js +0 -198
  316. package/dist/src/utils/license-validation.js.map +0 -1
  317. package/dist/src/utils/license.d.ts +0 -56
  318. package/dist/src/utils/license.d.ts.map +0 -1
  319. package/dist/src/utils/license.js +0 -163
  320. package/dist/src/utils/license.js.map +0 -1
  321. package/dist/src/utils/license.test.d.ts +0 -7
  322. package/dist/src/utils/license.test.d.ts.map +0 -1
  323. package/dist/src/utils/license.test.js +0 -308
  324. package/dist/src/utils/license.test.js.map +0 -1
  325. package/dist/src/utils/manifest.d.ts +0 -121
  326. package/dist/src/utils/manifest.d.ts.map +0 -1
  327. package/dist/src/utils/manifest.js +0 -133
  328. package/dist/src/utils/manifest.js.map +0 -1
  329. package/dist/src/utils/manifest.test.d.ts +0 -20
  330. package/dist/src/utils/manifest.test.d.ts.map +0 -1
  331. package/dist/src/utils/manifest.test.js +0 -344
  332. package/dist/src/utils/manifest.test.js.map +0 -1
  333. package/dist/src/utils/node-version.d.ts +0 -41
  334. package/dist/src/utils/node-version.d.ts.map +0 -1
  335. package/dist/src/utils/node-version.js +0 -123
  336. package/dist/src/utils/node-version.js.map +0 -1
  337. package/dist/src/utils/open-database.d.ts +0 -35
  338. package/dist/src/utils/open-database.d.ts.map +0 -1
  339. package/dist/src/utils/open-database.js +0 -73
  340. package/dist/src/utils/open-database.js.map +0 -1
  341. package/dist/src/utils/require-tier.d.ts +0 -38
  342. package/dist/src/utils/require-tier.d.ts.map +0 -1
  343. package/dist/src/utils/require-tier.js +0 -74
  344. package/dist/src/utils/require-tier.js.map +0 -1
  345. package/dist/src/utils/sanitize.d.ts +0 -30
  346. package/dist/src/utils/sanitize.d.ts.map +0 -1
  347. package/dist/src/utils/sanitize.js +0 -45
  348. package/dist/src/utils/sanitize.js.map +0 -1
  349. package/dist/src/utils/skill-name.d.ts +0 -19
  350. package/dist/src/utils/skill-name.d.ts.map +0 -1
  351. package/dist/src/utils/skill-name.js +0 -26
  352. package/dist/src/utils/skill-name.js.map +0 -1
  353. package/dist/src/utils/skills-directory.d.ts +0 -95
  354. package/dist/src/utils/skills-directory.d.ts.map +0 -1
  355. package/dist/src/utils/skills-directory.js +0 -285
  356. package/dist/src/utils/skills-directory.js.map +0 -1
  357. package/dist/src/utils/startup-header-gate.d.ts +0 -29
  358. package/dist/src/utils/startup-header-gate.d.ts.map +0 -1
  359. package/dist/src/utils/startup-header-gate.js +0 -44
  360. package/dist/src/utils/startup-header-gate.js.map +0 -1
  361. package/dist/src/utils/startup-header-gate.test.d.ts +0 -2
  362. package/dist/src/utils/startup-header-gate.test.d.ts.map +0 -1
  363. package/dist/src/utils/startup-header-gate.test.js +0 -46
  364. package/dist/src/utils/startup-header-gate.test.js.map +0 -1
  365. package/dist/src/utils/tool-analyzer.d.ts +0 -54
  366. package/dist/src/utils/tool-analyzer.d.ts.map +0 -1
  367. package/dist/src/utils/tool-analyzer.js +0 -156
  368. package/dist/src/utils/tool-analyzer.js.map +0 -1
  369. package/dist/src/version.d.ts +0 -2
  370. package/dist/src/version.d.ts.map +0 -1
  371. package/dist/src/version.js +0 -24
  372. package/dist/src/version.js.map +0 -1
  373. package/dist/tests/audit-collisions.test.d.ts +0 -42
  374. package/dist/tests/audit-collisions.test.d.ts.map +0 -1
  375. package/dist/tests/audit-collisions.test.js +0 -370
  376. package/dist/tests/audit-collisions.test.js.map +0 -1
  377. package/dist/tests/audit-restructure.test.d.ts +0 -15
  378. package/dist/tests/audit-restructure.test.d.ts.map +0 -1
  379. package/dist/tests/audit-restructure.test.js +0 -151
  380. package/dist/tests/audit-restructure.test.js.map +0 -1
  381. package/dist/tests/author.test.d.ts +0 -5
  382. package/dist/tests/author.test.d.ts.map +0 -1
  383. package/dist/tests/author.test.js +0 -653
  384. package/dist/tests/author.test.js.map +0 -1
  385. package/dist/tests/config.test.d.ts +0 -33
  386. package/dist/tests/config.test.d.ts.map +0 -1
  387. package/dist/tests/config.test.js +0 -240
  388. package/dist/tests/config.test.js.map +0 -1
  389. package/dist/tests/create.test.d.ts +0 -5
  390. package/dist/tests/create.test.d.ts.map +0 -1
  391. package/dist/tests/create.test.js +0 -449
  392. package/dist/tests/create.test.js.map +0 -1
  393. package/dist/tests/e2e/audit-sources-affix.test.d.ts +0 -11
  394. package/dist/tests/e2e/audit-sources-affix.test.d.ts.map +0 -1
  395. package/dist/tests/e2e/audit-sources-affix.test.js +0 -121
  396. package/dist/tests/e2e/audit-sources-affix.test.js.map +0 -1
  397. package/dist/tests/e2e/audit-sources-apply.test.d.ts +0 -13
  398. package/dist/tests/e2e/audit-sources-apply.test.d.ts.map +0 -1
  399. package/dist/tests/e2e/audit-sources-apply.test.js +0 -166
  400. package/dist/tests/e2e/audit-sources-apply.test.js.map +0 -1
  401. package/dist/tests/e2e/audit-sources-recovery.test.d.ts +0 -15
  402. package/dist/tests/e2e/audit-sources-recovery.test.d.ts.map +0 -1
  403. package/dist/tests/e2e/audit-sources-recovery.test.js +0 -179
  404. package/dist/tests/e2e/audit-sources-recovery.test.js.map +0 -1
  405. package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts +0 -23
  406. package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts.map +0 -1
  407. package/dist/tests/e2e/audit-sources-roundtrip.test.js +0 -139
  408. package/dist/tests/e2e/audit-sources-roundtrip.test.js.map +0 -1
  409. package/dist/tests/e2e/author.e2e.test.d.ts +0 -9
  410. package/dist/tests/e2e/author.e2e.test.d.ts.map +0 -1
  411. package/dist/tests/e2e/author.e2e.test.js +0 -666
  412. package/dist/tests/e2e/author.e2e.test.js.map +0 -1
  413. package/dist/tests/e2e/import.e2e.test.d.ts +0 -10
  414. package/dist/tests/e2e/import.e2e.test.d.ts.map +0 -1
  415. package/dist/tests/e2e/import.e2e.test.js +0 -213
  416. package/dist/tests/e2e/import.e2e.test.js.map +0 -1
  417. package/dist/tests/e2e/manage.e2e.test.d.ts +0 -9
  418. package/dist/tests/e2e/manage.e2e.test.d.ts.map +0 -1
  419. package/dist/tests/e2e/manage.e2e.test.js +0 -277
  420. package/dist/tests/e2e/manage.e2e.test.js.map +0 -1
  421. package/dist/tests/e2e/search.e2e.test.d.ts +0 -10
  422. package/dist/tests/e2e/search.e2e.test.d.ts.map +0 -1
  423. package/dist/tests/e2e/search.e2e.test.js +0 -324
  424. package/dist/tests/e2e/search.e2e.test.js.map +0 -1
  425. package/dist/tests/e2e/test-config.d.ts +0 -39
  426. package/dist/tests/e2e/test-config.d.ts.map +0 -1
  427. package/dist/tests/e2e/test-config.js +0 -44
  428. package/dist/tests/e2e/test-config.js.map +0 -1
  429. package/dist/tests/e2e/utils/baseline-collector.d.ts +0 -107
  430. package/dist/tests/e2e/utils/baseline-collector.d.ts.map +0 -1
  431. package/dist/tests/e2e/utils/baseline-collector.js +0 -211
  432. package/dist/tests/e2e/utils/baseline-collector.js.map +0 -1
  433. package/dist/tests/e2e/utils/hardcoded-detector.d.ts +0 -46
  434. package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +0 -1
  435. package/dist/tests/e2e/utils/hardcoded-detector.js +0 -238
  436. package/dist/tests/e2e/utils/hardcoded-detector.js.map +0 -1
  437. package/dist/tests/e2e/utils/index.d.ts +0 -12
  438. package/dist/tests/e2e/utils/index.d.ts.map +0 -1
  439. package/dist/tests/e2e/utils/index.js +0 -12
  440. package/dist/tests/e2e/utils/index.js.map +0 -1
  441. package/dist/tests/e2e/utils/linear-reporter.d.ts +0 -60
  442. package/dist/tests/e2e/utils/linear-reporter.d.ts.map +0 -1
  443. package/dist/tests/e2e/utils/linear-reporter.js +0 -223
  444. package/dist/tests/e2e/utils/linear-reporter.js.map +0 -1
  445. package/dist/tests/e2e/utils/mock-github.d.ts +0 -23
  446. package/dist/tests/e2e/utils/mock-github.d.ts.map +0 -1
  447. package/dist/tests/e2e/utils/mock-github.js +0 -60
  448. package/dist/tests/e2e/utils/mock-github.js.map +0 -1
  449. package/dist/tests/e2e/utils/mock-prompts.d.ts +0 -19
  450. package/dist/tests/e2e/utils/mock-prompts.d.ts.map +0 -1
  451. package/dist/tests/e2e/utils/mock-prompts.js +0 -48
  452. package/dist/tests/e2e/utils/mock-prompts.js.map +0 -1
  453. package/dist/tests/e2e/utils/source-recovery-fixture.d.ts +0 -49
  454. package/dist/tests/e2e/utils/source-recovery-fixture.d.ts.map +0 -1
  455. package/dist/tests/e2e/utils/source-recovery-fixture.js +0 -106
  456. package/dist/tests/e2e/utils/source-recovery-fixture.js.map +0 -1
  457. package/dist/tests/embedding-probe-stdio.test.d.ts +0 -11
  458. package/dist/tests/embedding-probe-stdio.test.d.ts.map +0 -1
  459. package/dist/tests/embedding-probe-stdio.test.js +0 -58
  460. package/dist/tests/embedding-probe-stdio.test.js.map +0 -1
  461. package/dist/tests/import.test.d.ts +0 -5
  462. package/dist/tests/import.test.d.ts.map +0 -1
  463. package/dist/tests/import.test.js +0 -11
  464. package/dist/tests/import.test.js.map +0 -1
  465. package/dist/tests/init.test.d.ts +0 -30
  466. package/dist/tests/init.test.d.ts.map +0 -1
  467. package/dist/tests/init.test.js +0 -357
  468. package/dist/tests/init.test.js.map +0 -1
  469. package/dist/tests/install-multi-client.test.d.ts +0 -2
  470. package/dist/tests/install-multi-client.test.d.ts.map +0 -1
  471. package/dist/tests/install-multi-client.test.js +0 -202
  472. package/dist/tests/install-multi-client.test.js.map +0 -1
  473. package/dist/tests/install-quarantine.test.d.ts +0 -10
  474. package/dist/tests/install-quarantine.test.d.ts.map +0 -1
  475. package/dist/tests/install-quarantine.test.js +0 -86
  476. package/dist/tests/install-quarantine.test.js.map +0 -1
  477. package/dist/tests/install-skill.test.d.ts +0 -8
  478. package/dist/tests/install-skill.test.d.ts.map +0 -1
  479. package/dist/tests/install-skill.test.js +0 -414
  480. package/dist/tests/install-skill.test.js.map +0 -1
  481. package/dist/tests/integration/import-local.test.d.ts +0 -2
  482. package/dist/tests/integration/import-local.test.d.ts.map +0 -1
  483. package/dist/tests/integration/import-local.test.js +0 -158
  484. package/dist/tests/integration/import-local.test.js.map +0 -1
  485. package/dist/tests/license-validation.test.d.ts +0 -8
  486. package/dist/tests/license-validation.test.d.ts.map +0 -1
  487. package/dist/tests/license-validation.test.js +0 -186
  488. package/dist/tests/license-validation.test.js.map +0 -1
  489. package/dist/tests/manage.test.d.ts +0 -5
  490. package/dist/tests/manage.test.d.ts.map +0 -1
  491. package/dist/tests/manage.test.js +0 -495
  492. package/dist/tests/manage.test.js.map +0 -1
  493. package/dist/tests/mcp-server-template.test.d.ts +0 -7
  494. package/dist/tests/mcp-server-template.test.d.ts.map +0 -1
  495. package/dist/tests/mcp-server-template.test.js +0 -372
  496. package/dist/tests/mcp-server-template.test.js.map +0 -1
  497. package/dist/tests/node-version.test.d.ts +0 -8
  498. package/dist/tests/node-version.test.d.ts.map +0 -1
  499. package/dist/tests/node-version.test.js +0 -200
  500. package/dist/tests/node-version.test.js.map +0 -1
  501. package/dist/tests/open-database.test.d.ts +0 -2
  502. package/dist/tests/open-database.test.d.ts.map +0 -1
  503. package/dist/tests/open-database.test.js +0 -77
  504. package/dist/tests/open-database.test.js.map +0 -1
  505. package/dist/tests/recommend-helpers.test.d.ts +0 -9
  506. package/dist/tests/recommend-helpers.test.d.ts.map +0 -1
  507. package/dist/tests/recommend-helpers.test.js +0 -308
  508. package/dist/tests/recommend-helpers.test.js.map +0 -1
  509. package/dist/tests/recommend-scoring.test.d.ts +0 -8
  510. package/dist/tests/recommend-scoring.test.d.ts.map +0 -1
  511. package/dist/tests/recommend-scoring.test.js +0 -184
  512. package/dist/tests/recommend-scoring.test.js.map +0 -1
  513. package/dist/tests/recommend.errors.test.d.ts +0 -8
  514. package/dist/tests/recommend.errors.test.d.ts.map +0 -1
  515. package/dist/tests/recommend.errors.test.js +0 -232
  516. package/dist/tests/recommend.errors.test.js.map +0 -1
  517. package/dist/tests/recommend.filters.test.d.ts +0 -9
  518. package/dist/tests/recommend.filters.test.d.ts.map +0 -1
  519. package/dist/tests/recommend.filters.test.js +0 -235
  520. package/dist/tests/recommend.filters.test.js.map +0 -1
  521. package/dist/tests/recommend.test-helpers.d.ts +0 -66
  522. package/dist/tests/recommend.test-helpers.d.ts.map +0 -1
  523. package/dist/tests/recommend.test-helpers.js +0 -79
  524. package/dist/tests/recommend.test-helpers.js.map +0 -1
  525. package/dist/tests/recommend.test.d.ts +0 -11
  526. package/dist/tests/recommend.test.d.ts.map +0 -1
  527. package/dist/tests/recommend.test.js +0 -320
  528. package/dist/tests/recommend.test.js.map +0 -1
  529. package/dist/tests/search-helpers.test.d.ts +0 -2
  530. package/dist/tests/search-helpers.test.d.ts.map +0 -1
  531. package/dist/tests/search-helpers.test.js +0 -110
  532. package/dist/tests/search-helpers.test.js.map +0 -1
  533. package/dist/tests/search.test.d.ts +0 -5
  534. package/dist/tests/search.test.d.ts.map +0 -1
  535. package/dist/tests/search.test.js +0 -91
  536. package/dist/tests/search.test.js.map +0 -1
  537. package/dist/tests/skills-directory-per-harness.test.d.ts +0 -2
  538. package/dist/tests/skills-directory-per-harness.test.d.ts.map +0 -1
  539. package/dist/tests/skills-directory-per-harness.test.js +0 -116
  540. package/dist/tests/skills-directory-per-harness.test.js.map +0 -1
  541. package/dist/tests/skills-directory.test.d.ts +0 -2
  542. package/dist/tests/skills-directory.test.d.ts.map +0 -1
  543. package/dist/tests/skills-directory.test.js +0 -108
  544. package/dist/tests/skills-directory.test.js.map +0 -1
  545. package/dist/tests/sync.auth-ux.test.d.ts +0 -14
  546. package/dist/tests/sync.auth-ux.test.d.ts.map +0 -1
  547. package/dist/tests/sync.auth-ux.test.js +0 -148
  548. package/dist/tests/sync.auth-ux.test.js.map +0 -1
  549. package/dist/tests/tool-analyzer.test.d.ts +0 -8
  550. package/dist/tests/tool-analyzer.test.d.ts.map +0 -1
  551. package/dist/tests/tool-analyzer.test.js +0 -149
  552. package/dist/tests/tool-analyzer.test.js.map +0 -1
  553. package/dist/tests/unit/commands/install.test.d.ts +0 -7
  554. package/dist/tests/unit/commands/install.test.d.ts.map +0 -1
  555. package/dist/tests/unit/commands/install.test.js +0 -482
  556. package/dist/tests/unit/commands/install.test.js.map +0 -1
  557. package/dist/tests/unit/import-local.helpers.test.d.ts +0 -2
  558. package/dist/tests/unit/import-local.helpers.test.d.ts.map +0 -1
  559. package/dist/tests/unit/import-local.helpers.test.js +0 -96
  560. package/dist/tests/unit/import-local.helpers.test.js.map +0 -1
@@ -1,223 +0,0 @@
1
- /**
2
- * Linear Issue Reporter for E2E Test Failures
3
- *
4
- * Automatically creates Linear issues when E2E tests detect problems.
5
- * Issues include detailed evidence for specialist agents to resolve.
6
- *
7
- * @see docs/testing/e2e-testing-plan.md
8
- */
9
- /**
10
- * Format hardcoded issue for Linear description
11
- */
12
- function formatHardcodedEvidence(issues) {
13
- if (issues.length === 0)
14
- return '';
15
- const lines = [
16
- '## Hardcoded Values Detected',
17
- '',
18
- '| Type | Pattern | Value | Source |',
19
- '|------|---------|-------|--------|',
20
- ];
21
- for (const issue of issues) {
22
- lines.push(`| ${issue.type} | ${issue.pattern} | \`${issue.value}\` | ${issue.location.source} |`);
23
- }
24
- lines.push('');
25
- return lines.join('\n');
26
- }
27
- /**
28
- * Create Linear issue description from test failure
29
- */
30
- export function createIssueDescription(failure) {
31
- const sections = [];
32
- // Problem definition
33
- sections.push('## Problem Definition');
34
- sections.push('');
35
- sections.push(`E2E test **${failure.testName}** failed during automated testing.`);
36
- sections.push('');
37
- sections.push(`**Test File**: \`${failure.testFile}\``);
38
- sections.push(`**Command**: \`${failure.command}\``);
39
- sections.push(`**Timestamp**: ${failure.timestamp}`);
40
- if (failure.duration) {
41
- sections.push(`**Duration**: ${failure.duration}ms`);
42
- }
43
- sections.push('');
44
- // Error details
45
- sections.push('## Error Details');
46
- sections.push('');
47
- sections.push('```');
48
- sections.push(failure.error);
49
- sections.push('```');
50
- sections.push('');
51
- // Hardcoded issues if present
52
- if (failure.hardcodedIssues && failure.hardcodedIssues.length > 0) {
53
- sections.push(formatHardcodedEvidence(failure.hardcodedIssues));
54
- }
55
- // Output evidence (truncated)
56
- if (failure.stdout || failure.stderr) {
57
- sections.push('## Command Output');
58
- sections.push('');
59
- if (failure.stdout) {
60
- const truncatedStdout = failure.stdout.length > 1000
61
- ? failure.stdout.substring(0, 1000) + '\n... (truncated)'
62
- : failure.stdout;
63
- sections.push('<details>');
64
- sections.push('<summary>stdout</summary>');
65
- sections.push('');
66
- sections.push('```');
67
- sections.push(truncatedStdout);
68
- sections.push('```');
69
- sections.push('</details>');
70
- sections.push('');
71
- }
72
- if (failure.stderr) {
73
- const truncatedStderr = failure.stderr.length > 1000
74
- ? failure.stderr.substring(0, 1000) + '\n... (truncated)'
75
- : failure.stderr;
76
- sections.push('<details>');
77
- sections.push('<summary>stderr</summary>');
78
- sections.push('');
79
- sections.push('```');
80
- sections.push(truncatedStderr);
81
- sections.push('```');
82
- sections.push('</details>');
83
- sections.push('');
84
- }
85
- }
86
- // Recommended actions
87
- sections.push('## Recommended Actions');
88
- sections.push('');
89
- if (failure.hardcodedIssues && failure.hardcodedIssues.length > 0) {
90
- sections.push('1. Review hardcoded values detected above');
91
- sections.push('2. Replace with environment variables or user-configurable options');
92
- sections.push('3. Use platform-agnostic path resolution (os.homedir(), path.join())');
93
- sections.push('4. Re-run E2E tests in Codespace to verify fix');
94
- }
95
- else {
96
- sections.push('1. Review error message and stack trace');
97
- sections.push('2. Check test assumptions about environment');
98
- sections.push('3. Verify command works in clean Codespace environment');
99
- sections.push('4. Re-run E2E tests to verify fix');
100
- }
101
- sections.push('');
102
- // Environment info
103
- sections.push('## Test Environment');
104
- sections.push('');
105
- sections.push('- **Type**: GitHub Codespaces');
106
- sections.push('- **Node Version**: 20.x');
107
- sections.push('- **Test Repository**: 021-school-platform');
108
- sections.push('');
109
- return sections.join('\n');
110
- }
111
- /**
112
- * Create Linear issue title from test failure
113
- */
114
- export function createIssueTitle(failure) {
115
- if (failure.hardcodedIssues && failure.hardcodedIssues.length > 0) {
116
- const types = [...new Set(failure.hardcodedIssues.map((i) => i.type))];
117
- return `[E2E] Hardcoded ${types.join(', ')} in ${failure.command}`;
118
- }
119
- return `[E2E] ${failure.testName} failed`;
120
- }
121
- /**
122
- * Create Linear issue via API
123
- */
124
- export async function createLinearIssue(failure) {
125
- const apiKey = process.env['LINEAR_API_KEY'];
126
- if (!apiKey) {
127
- console.warn('LINEAR_API_KEY not set, skipping issue creation');
128
- return {
129
- success: false,
130
- error: 'LINEAR_API_KEY environment variable not set',
131
- };
132
- }
133
- const title = createIssueTitle(failure);
134
- const description = createIssueDescription(failure);
135
- // GraphQL mutation for creating issue
136
- const mutation = `
137
- mutation CreateIssue($input: IssueCreateInput!) {
138
- issueCreate(input: $input) {
139
- success
140
- issue {
141
- id
142
- identifier
143
- url
144
- }
145
- }
146
- }
147
- `;
148
- const variables = {
149
- input: {
150
- title,
151
- description,
152
- // Labels: bug, e2e, hardcoded (if applicable)
153
- labelIds: failure.hardcodedIssues?.length ? ['bug', 'e2e', 'hardcoded'] : ['bug', 'e2e'],
154
- priority: failure.hardcodedIssues?.some((i) => i.severity === 'error') ? 1 : 2,
155
- },
156
- };
157
- try {
158
- const response = await fetch('https://api.linear.app/graphql', {
159
- method: 'POST',
160
- headers: {
161
- 'Content-Type': 'application/json',
162
- Authorization: apiKey,
163
- },
164
- body: JSON.stringify({ query: mutation, variables }),
165
- });
166
- if (!response.ok) {
167
- throw new Error(`Linear API error: ${response.status} ${response.statusText}`);
168
- }
169
- const result = (await response.json());
170
- if (result.errors) {
171
- throw new Error(`GraphQL errors: ${JSON.stringify(result.errors)}`);
172
- }
173
- const issueData = result.data?.issueCreate;
174
- if (issueData?.success) {
175
- return {
176
- success: true,
177
- issueId: issueData.issue.identifier,
178
- issueUrl: issueData.issue.url,
179
- };
180
- }
181
- return {
182
- success: false,
183
- error: 'Issue creation returned unsuccessful',
184
- };
185
- }
186
- catch (error) {
187
- return {
188
- success: false,
189
- error: error instanceof Error ? error.message : String(error),
190
- };
191
- }
192
- }
193
- /**
194
- * Queue issue for batch creation (used when rate-limited)
195
- */
196
- const issueQueue = [];
197
- export function queueIssue(failure) {
198
- issueQueue.push(failure);
199
- }
200
- export function getQueuedIssues() {
201
- return [...issueQueue];
202
- }
203
- export async function flushIssueQueue() {
204
- const results = [];
205
- for (const failure of issueQueue) {
206
- const result = await createLinearIssue(failure);
207
- results.push(result);
208
- // Rate limit: wait 500ms between requests
209
- await new Promise((resolve) => setTimeout(resolve, 500));
210
- }
211
- // Clear queue
212
- issueQueue.length = 0;
213
- return results;
214
- }
215
- export default {
216
- createIssueDescription,
217
- createIssueTitle,
218
- createLinearIssue,
219
- queueIssue,
220
- getQueuedIssues,
221
- flushIssueQueue,
222
- };
223
- //# sourceMappingURL=linear-reporter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linear-reporter.js","sourceRoot":"","sources":["../../../../tests/e2e/utils/linear-reporter.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- /**
2
- * SMI-1474: GitHub API mock utilities for E2E tests
3
- *
4
- * Provides mock responses for GitHub API calls without real API access.
5
- */
6
- export interface MockGitHubSkill {
7
- name: string;
8
- full_name: string;
9
- description: string;
10
- html_url: string;
11
- topics: string[];
12
- stargazers_count: number;
13
- }
14
- export declare const MOCK_SKILLS: MockGitHubSkill[];
15
- /**
16
- * Setup mock GitHub API responses
17
- */
18
- export declare function setupMockGitHub(customSkills?: MockGitHubSkill[]): void;
19
- /**
20
- * Clear GitHub API mocks
21
- */
22
- export declare function clearMockGitHub(): void;
23
- //# sourceMappingURL=mock-github.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mock-github.d.ts","sourceRoot":"","sources":["../../../../tests/e2e/utils/mock-github.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,eAAO,MAAM,WAAW,EAAE,eAAe,EAiBxC,CAAA;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,QA0B/D;AAED;;GAEG;AACH,wBAAgB,eAAe,SAE9B"}
@@ -1,60 +0,0 @@
1
- /**
2
- * SMI-1474: GitHub API mock utilities for E2E tests
3
- *
4
- * Provides mock responses for GitHub API calls without real API access.
5
- */
6
- import { vi } from 'vitest';
7
- export const MOCK_SKILLS = [
8
- {
9
- name: 'commit-skill',
10
- full_name: 'anthropics/commit-skill',
11
- description: 'A skill for git commits',
12
- html_url: 'https://github.com/anthropics/commit-skill',
13
- topics: ['claude-skill', 'git', 'commit'],
14
- stargazers_count: 100,
15
- },
16
- {
17
- name: 'test-helper',
18
- full_name: 'community/test-helper',
19
- description: 'Testing utilities skill',
20
- html_url: 'https://github.com/community/test-helper',
21
- topics: ['claude-skill', 'testing'],
22
- stargazers_count: 50,
23
- },
24
- ];
25
- /**
26
- * Setup mock GitHub API responses
27
- */
28
- export function setupMockGitHub(customSkills) {
29
- const skills = customSkills || MOCK_SKILLS;
30
- // Mock global fetch for GitHub API calls
31
- const originalFetch = global.fetch;
32
- global.fetch = vi.fn().mockImplementation(async (url) => {
33
- if (url.includes('api.github.com/search/repositories')) {
34
- return {
35
- ok: true,
36
- json: async () => ({
37
- total_count: skills.length,
38
- items: skills,
39
- }),
40
- };
41
- }
42
- if (url.includes('api.github.com/repos/')) {
43
- const repoName = url.split('/repos/')[1]?.split('/')[1];
44
- const skill = skills.find((s) => s.name === repoName);
45
- return {
46
- ok: !!skill,
47
- json: async () => skill || { message: 'Not Found' },
48
- };
49
- }
50
- // Fall back to original fetch for non-GitHub URLs
51
- return originalFetch(url);
52
- });
53
- }
54
- /**
55
- * Clear GitHub API mocks
56
- */
57
- export function clearMockGitHub() {
58
- vi.restoreAllMocks();
59
- }
60
- //# sourceMappingURL=mock-github.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mock-github.js","sourceRoot":"","sources":["../../../../tests/e2e/utils/mock-github.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAW3B,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C;QACE,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,yBAAyB;QACpC,WAAW,EAAE,yBAAyB;QACtC,QAAQ,EAAE,4CAA4C;QACtD,MAAM,EAAE,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC;QACzC,gBAAgB,EAAE,GAAG;KACtB;IACD;QACE,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,uBAAuB;QAClC,WAAW,EAAE,yBAAyB;QACtC,QAAQ,EAAE,0CAA0C;QACpD,MAAM,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC;QACnC,gBAAgB,EAAE,EAAE;KACrB;CACF,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,YAAgC;IAC9D,MAAM,MAAM,GAAG,YAAY,IAAI,WAAW,CAAA;IAE1C,yCAAyC;IACzC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAA;IAClC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAW,EAAE,EAAE;QAC9D,IAAI,GAAG,CAAC,QAAQ,CAAC,oCAAoC,CAAC,EAAE,CAAC;YACvD,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBACjB,WAAW,EAAE,MAAM,CAAC,MAAM;oBAC1B,KAAK,EAAE,MAAM;iBACd,CAAC;aACH,CAAA;QACH,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAA;YACrD,OAAO;gBACL,EAAE,EAAE,CAAC,CAAC,KAAK;gBACX,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE;aACpD,CAAA;QACH,CAAC;QACD,kDAAkD;QAClD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,EAAE,CAAC,eAAe,EAAE,CAAA;AACtB,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * SMI-1473: Mock prompt utilities for E2E tests
3
- *
4
- * Provides utilities to mock @inquirer/prompts for non-interactive testing.
5
- */
6
- export interface MockPromptResponses {
7
- input?: Record<string, string>;
8
- confirm?: Record<string, boolean>;
9
- select?: Record<string, string>;
10
- }
11
- /**
12
- * Setup mock responses for inquirer prompts
13
- */
14
- export declare function setupMockPrompts(responses: MockPromptResponses): void;
15
- /**
16
- * Clear all mock prompts
17
- */
18
- export declare function clearMockPrompts(): void;
19
- //# sourceMappingURL=mock-prompts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mock-prompts.d.ts","sourceRoot":"","sources":["../../../../tests/e2e/utils/mock-prompts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,QA+B9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,SAE/B"}
@@ -1,48 +0,0 @@
1
- /**
2
- * SMI-1473: Mock prompt utilities for E2E tests
3
- *
4
- * Provides utilities to mock @inquirer/prompts for non-interactive testing.
5
- */
6
- import { vi } from 'vitest';
7
- /**
8
- * Setup mock responses for inquirer prompts
9
- */
10
- export function setupMockPrompts(responses) {
11
- // Mock the @inquirer/prompts module
12
- vi.mock('@inquirer/prompts', () => ({
13
- input: vi.fn().mockImplementation(async (opts) => {
14
- const key = opts.message.toLowerCase();
15
- for (const [pattern, value] of Object.entries(responses.input || {})) {
16
- if (key.includes(pattern.toLowerCase())) {
17
- return value;
18
- }
19
- }
20
- return 'test-value';
21
- }),
22
- confirm: vi.fn().mockImplementation(async (opts) => {
23
- const key = opts.message.toLowerCase();
24
- for (const [pattern, value] of Object.entries(responses.confirm || {})) {
25
- if (key.includes(pattern.toLowerCase())) {
26
- return value;
27
- }
28
- }
29
- return false;
30
- }),
31
- select: vi.fn().mockImplementation(async (opts) => {
32
- const key = opts.message.toLowerCase();
33
- for (const [pattern, value] of Object.entries(responses.select || {})) {
34
- if (key.includes(pattern.toLowerCase())) {
35
- return value;
36
- }
37
- }
38
- return 'development';
39
- }),
40
- }));
41
- }
42
- /**
43
- * Clear all mock prompts
44
- */
45
- export function clearMockPrompts() {
46
- vi.clearAllMocks();
47
- }
48
- //# sourceMappingURL=mock-prompts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mock-prompts.js","sourceRoot":"","sources":["../../../../tests/e2e/utils/mock-prompts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAQ3B;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAA8B;IAC7D,oCAAoC;IACpC,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;QAClC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAyB,EAAE,EAAE;YACpE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YACtC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;gBACrE,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;YACD,OAAO,YAAY,CAAA;QACrB,CAAC,CAAC;QACF,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAyB,EAAE,EAAE;YACtE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YACtC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;gBACvE,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC,CAAC;QACF,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAyB,EAAE,EAAE;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YACtC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtE,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;YACD,OAAO,aAAa,CAAA;QACtB,CAAC,CAAC;KACH,CAAC,CAAC,CAAA;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC"}
@@ -1,49 +0,0 @@
1
- /**
2
- * @fileoverview Shared real-filesystem fixture for the SMI-5407 source-recovery
3
- * end-to-end / integration suite.
4
- * @see SMI-5407
5
- *
6
- * NOT a `*.test.ts` file, so vitest never executes it as a test. It only
7
- * touches `fs` / `path` and the `@skillsmith/core` DB factory; it computes no
8
- * homedir-derived state, so it is safe to import statically (the homedir-frozen
9
- * manifest modules are imported dynamically by the test files themselves).
10
- */
11
- /** A minimal but parser-valid SKILL.md body. `extra` lands inside frontmatter. */
12
- export declare function skillMd(name: string, extra?: string): string;
13
- /** Directory basenames produced by {@link writeSourceFixture}. */
14
- export declare const FIXTURE_DIRS: {
15
- readonly git: "git-skill";
16
- readonly https: "https-skill";
17
- readonly plugin: "plugin-skill";
18
- readonly registry: "registry-skill";
19
- readonly collision: "collision-skill";
20
- readonly backup: "something.backup-20260101-120000";
21
- readonly unknown: "unknown-skill";
22
- };
23
- /** Canonical GitHub owner/repo carried by both git fixtures (ssh + https). */
24
- export declare const GIT_OWNER = "wrsmith108";
25
- export declare const GIT_REPO = "linear-claude-skill";
26
- /**
27
- * Materialize the canonical fixture tree under `root`. Returns the absolute
28
- * directory paths keyed by {@link FIXTURE_DIRS} key.
29
- */
30
- export declare function writeSourceFixture(root: string): Record<keyof typeof FIXTURE_DIRS, string>;
31
- /** A skills-row seed spec for the CLI candidate-lookup database. */
32
- export interface SkillSeedRow {
33
- id: string;
34
- name: string;
35
- repoUrl: string;
36
- qualityScore?: number;
37
- }
38
- /**
39
- * Create a file-backed skills DB at `dbPath` and insert `rows` into `skills`.
40
- * Opened and closed synchronously so the CLI can re-open the same file.
41
- */
42
- export declare function seedSkillsDb(dbPath: string, rows: SkillSeedRow[]): Promise<void>;
43
- /**
44
- * Replica of `diff.ts:buildRawUrl` (SMI-5406) — used to assert a backfilled
45
- * `source` is in the exact form View-Changes accepts. Kept byte-identical to
46
- * the production regex so the assertion stays load-bearing.
47
- */
48
- export declare function buildRawUrl(source: string): string | null;
49
- //# sourceMappingURL=source-recovery-fixture.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"source-recovery-fixture.d.ts","sourceRoot":"","sources":["../../../../tests/e2e/utils/source-recovery-fixture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,kFAAkF;AAClF,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5D;AAiBD,kEAAkE;AAClE,eAAO,MAAM,YAAY;;;;;;;;CAQf,CAAA;AAEV,8EAA8E;AAC9E,eAAO,MAAM,SAAS,eAAe,CAAA;AACrC,eAAO,MAAM,QAAQ,wBAAwB,CAAA;AAE7C;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,OAAO,YAAY,EAAE,MAAM,CAAC,CA8B1F;AAED,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMzD"}
@@ -1,106 +0,0 @@
1
- /**
2
- * @fileoverview Shared real-filesystem fixture for the SMI-5407 source-recovery
3
- * end-to-end / integration suite.
4
- * @see SMI-5407
5
- *
6
- * NOT a `*.test.ts` file, so vitest never executes it as a test. It only
7
- * touches `fs` / `path` and the `@skillsmith/core` DB factory; it computes no
8
- * homedir-derived state, so it is safe to import statically (the homedir-frozen
9
- * manifest modules are imported dynamically by the test files themselves).
10
- */
11
- import * as fs from 'node:fs';
12
- import * as path from 'node:path';
13
- import { createDatabaseAsync, initializeSchema } from '@skillsmith/core';
14
- /** A minimal but parser-valid SKILL.md body. `extra` lands inside frontmatter. */
15
- export function skillMd(name, extra) {
16
- const extraLine = extra ? `\n${extra}` : '';
17
- return (`---\n` +
18
- `name: ${name}\n` +
19
- `description: ${name} fixture for source recovery\n` +
20
- `author: fixtureowner${extraLine}\n` +
21
- `---\n\n` +
22
- `# ${name}\n\n` +
23
- `Body content for ${name}.\n`);
24
- }
25
- function writeSkillDir(root, name, body) {
26
- const dir = path.join(root, name);
27
- fs.mkdirSync(dir, { recursive: true });
28
- fs.writeFileSync(path.join(dir, 'SKILL.md'), body);
29
- return dir;
30
- }
31
- function writeGitConfig(dir, originUrl) {
32
- const config = `[core]\n\trepositoryformatversion = 0\n` +
33
- `[remote "origin"]\n\turl = ${originUrl}\n\tfetch = +refs/heads/*:refs/remotes/origin/*\n`;
34
- fs.mkdirSync(path.join(dir, '.git'), { recursive: true });
35
- fs.writeFileSync(path.join(dir, '.git', 'config'), config);
36
- }
37
- /** Directory basenames produced by {@link writeSourceFixture}. */
38
- export const FIXTURE_DIRS = {
39
- git: 'git-skill',
40
- https: 'https-skill',
41
- plugin: 'plugin-skill',
42
- registry: 'registry-skill',
43
- collision: 'collision-skill',
44
- backup: 'something.backup-20260101-120000',
45
- unknown: 'unknown-skill',
46
- };
47
- /** Canonical GitHub owner/repo carried by both git fixtures (ssh + https). */
48
- export const GIT_OWNER = 'wrsmith108';
49
- export const GIT_REPO = 'linear-claude-skill';
50
- /**
51
- * Materialize the canonical fixture tree under `root`. Returns the absolute
52
- * directory paths keyed by {@link FIXTURE_DIRS} key.
53
- */
54
- export function writeSourceFixture(root) {
55
- fs.mkdirSync(root, { recursive: true });
56
- // (a) git remote — scp/ssh form.
57
- const git = writeSkillDir(root, FIXTURE_DIRS.git, skillMd(FIXTURE_DIRS.git));
58
- writeGitConfig(git, `git@github.com:${GIT_OWNER}/${GIT_REPO}.git`);
59
- // git remote — https form (same owner/repo as the ssh fixture).
60
- const https = writeSkillDir(root, FIXTURE_DIRS.https, skillMd(FIXTURE_DIRS.https));
61
- writeGitConfig(https, `https://github.com/${GIT_OWNER}/${GIT_REPO}.git`);
62
- // (b) plugin manifest.
63
- const plugin = writeSkillDir(root, FIXTURE_DIRS.plugin, skillMd(FIXTURE_DIRS.plugin));
64
- fs.mkdirSync(path.join(plugin, '.claude-plugin'), { recursive: true });
65
- fs.writeFileSync(path.join(plugin, '.claude-plugin', 'plugin.json'), JSON.stringify({ repository: 'https://github.com/o/r' }, null, 2));
66
- // (c) registry single-name match; (d) collision two-name match.
67
- const registry = writeSkillDir(root, FIXTURE_DIRS.registry, skillMd(FIXTURE_DIRS.registry));
68
- const collision = writeSkillDir(root, FIXTURE_DIRS.collision, skillMd(FIXTURE_DIRS.collision));
69
- // (e) backup snapshot dir — listed, never scanned.
70
- const backup = writeSkillDir(root, FIXTURE_DIRS.backup, skillMd('something'));
71
- // (f) no .git, no plugin, no registry row.
72
- const unknown = writeSkillDir(root, FIXTURE_DIRS.unknown, skillMd(FIXTURE_DIRS.unknown));
73
- return { git, https, plugin, registry, collision, backup, unknown };
74
- }
75
- /**
76
- * Create a file-backed skills DB at `dbPath` and insert `rows` into `skills`.
77
- * Opened and closed synchronously so the CLI can re-open the same file.
78
- */
79
- export async function seedSkillsDb(dbPath, rows) {
80
- const db = await createDatabaseAsync(dbPath);
81
- try {
82
- initializeSchema(db);
83
- const insert = db.prepare('INSERT INTO skills (id, name, repo_url, quality_score) VALUES (?, ?, ?, ?)');
84
- for (const row of rows) {
85
- insert.run(row.id, row.name, row.repoUrl, row.qualityScore ?? 0.5);
86
- }
87
- }
88
- finally {
89
- db.close();
90
- }
91
- }
92
- /**
93
- * Replica of `diff.ts:buildRawUrl` (SMI-5406) — used to assert a backfilled
94
- * `source` is in the exact form View-Changes accepts. Kept byte-identical to
95
- * the production regex so the assertion stays load-bearing.
96
- */
97
- export function buildRawUrl(source) {
98
- if (source.startsWith('https://raw.githubusercontent.com/'))
99
- return source;
100
- const m = /^https:\/\/github\.com\/([^/]+)\/([^/]+)(?:\/tree\/([^/]+))?/.exec(source);
101
- if (!m)
102
- return null;
103
- const [, owner, repo, ref = 'main'] = m;
104
- return `https://raw.githubusercontent.com/${owner}/${repo}/${ref}/SKILL.md`;
105
- }
106
- //# sourceMappingURL=source-recovery-fixture.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"source-recovery-fixture.js","sourceRoot":"","sources":["../../../../tests/e2e/utils/source-recovery-fixture.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- /**
2
- * SMI-5039: Stdout-pollution test for `@skillsmith/cli` — pins the same
3
- * "probe never writes to stdout" invariant exercised by the mcp-server and
4
- * doc-retrieval-mcp packages.
5
- *
6
- * CLI's `search` command emits structured table output to stdout for
7
- * downstream piping. A regression that lets the embedding probe leak to
8
- * stdout would garble that pipe — we catch it here before it lands in CI.
9
- */
10
- export {};
11
- //# sourceMappingURL=embedding-probe-stdio.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"embedding-probe-stdio.test.d.ts","sourceRoot":"","sources":["../../tests/embedding-probe-stdio.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
@@ -1,58 +0,0 @@
1
- /**
2
- * SMI-5039: Stdout-pollution test for `@skillsmith/cli` — pins the same
3
- * "probe never writes to stdout" invariant exercised by the mcp-server and
4
- * doc-retrieval-mcp packages.
5
- *
6
- * CLI's `search` command emits structured table output to stdout for
7
- * downstream piping. A regression that lets the embedding probe leak to
8
- * stdout would garble that pipe — we catch it here before it lands in CI.
9
- */
10
- import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
11
- import { EmbeddingService } from '@skillsmith/core/embeddings';
12
- import { probeEmbeddingCapability } from '@skillsmith/core/embeddings/probe';
13
- describe('SMI-5039 cli embedding probe — stdout-clean invariant', () => {
14
- let stdoutWrite;
15
- let checkSpy;
16
- let getErrSpy;
17
- beforeEach(() => {
18
- stdoutWrite = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
19
- checkSpy = vi.spyOn(EmbeddingService, 'checkAvailability');
20
- getErrSpy = vi.spyOn(EmbeddingService, 'getTransformersLoadError');
21
- delete process.env['SKILLSMITH_QUIET'];
22
- });
23
- afterEach(() => {
24
- vi.restoreAllMocks();
25
- delete process.env['SKILLSMITH_QUIET'];
26
- });
27
- it('never writes to stdout on mock fallback (CLI pipe-safety invariant)', async () => {
28
- checkSpy.mockResolvedValue(false);
29
- getErrSpy.mockReturnValue(new Error('transformers absent'));
30
- const stderrChunks = [];
31
- await probeEmbeddingCapability({ logger: (m) => stderrChunks.push(m) });
32
- expect(stderrChunks).toHaveLength(1);
33
- expect(stderrChunks[0]).toContain('[skillsmith] embeddings: mock');
34
- expect(stdoutWrite).not.toHaveBeenCalled();
35
- });
36
- it('SKILLSMITH_QUIET=true suppresses the warning AND keeps stdout clean', async () => {
37
- process.env['SKILLSMITH_QUIET'] = 'true';
38
- checkSpy.mockResolvedValue(false);
39
- getErrSpy.mockReturnValue(new Error('transformers absent'));
40
- const stderrChunks = [];
41
- await probeEmbeddingCapability({ logger: (m) => stderrChunks.push(m) });
42
- expect(stderrChunks).toEqual([]);
43
- expect(stdoutWrite).not.toHaveBeenCalled();
44
- });
45
- it('default logger (console.error) does not touch stdout', async () => {
46
- checkSpy.mockResolvedValue(false);
47
- getErrSpy.mockReturnValue(new Error('default-logger path'));
48
- await probeEmbeddingCapability();
49
- expect(stdoutWrite).not.toHaveBeenCalled();
50
- });
51
- it('never throws — probe failure must not abort the CLI command', async () => {
52
- checkSpy.mockRejectedValue(new Error('catastrophic'));
53
- getErrSpy.mockReturnValue(null);
54
- await expect(probeEmbeddingCapability()).resolves.toBeUndefined();
55
- expect(stdoutWrite).not.toHaveBeenCalled();
56
- });
57
- });
58
- //# sourceMappingURL=embedding-probe-stdio.test.js.map