mewkit 1.14.1 → 1.15.0

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 (264) hide show
  1. package/README.md +7 -0
  2. package/dist/commands/capabilities.d.ts +13 -0
  3. package/dist/commands/capabilities.d.ts.map +1 -0
  4. package/dist/commands/capabilities.js +230 -0
  5. package/dist/commands/capabilities.js.map +1 -0
  6. package/dist/commands/context.d.ts +10 -0
  7. package/dist/commands/context.d.ts.map +1 -0
  8. package/dist/commands/context.js +125 -0
  9. package/dist/commands/context.js.map +1 -0
  10. package/dist/commands/doctor.d.ts +27 -0
  11. package/dist/commands/doctor.d.ts.map +1 -1
  12. package/dist/commands/doctor.js +123 -0
  13. package/dist/commands/doctor.js.map +1 -1
  14. package/dist/commands/providers.d.ts +2 -0
  15. package/dist/commands/providers.d.ts.map +1 -1
  16. package/dist/commands/providers.js +77 -0
  17. package/dist/commands/providers.js.map +1 -1
  18. package/dist/commands/task-state.d.ts +13 -0
  19. package/dist/commands/task-state.d.ts.map +1 -0
  20. package/dist/commands/task-state.js +106 -0
  21. package/dist/commands/task-state.js.map +1 -0
  22. package/dist/commands/validate.d.ts +48 -1
  23. package/dist/commands/validate.d.ts.map +1 -1
  24. package/dist/commands/validate.js +97 -24
  25. package/dist/commands/validate.js.map +1 -1
  26. package/dist/core/availability.d.ts +40 -0
  27. package/dist/core/availability.d.ts.map +1 -0
  28. package/dist/core/availability.js +47 -0
  29. package/dist/core/availability.js.map +1 -0
  30. package/dist/core/bootstrap.d.ts +19 -0
  31. package/dist/core/bootstrap.d.ts.map +1 -0
  32. package/dist/core/bootstrap.js +42 -0
  33. package/dist/core/bootstrap.js.map +1 -0
  34. package/dist/core/build-capabilities.d.ts +9 -0
  35. package/dist/core/build-capabilities.d.ts.map +1 -0
  36. package/dist/core/build-capabilities.js +123 -0
  37. package/dist/core/build-capabilities.js.map +1 -0
  38. package/dist/core/build-inventory.d.ts +2 -0
  39. package/dist/core/build-inventory.d.ts.map +1 -1
  40. package/dist/core/build-inventory.js +1 -1
  41. package/dist/core/build-inventory.js.map +1 -1
  42. package/dist/core/capability-authored.d.ts +26 -0
  43. package/dist/core/capability-authored.d.ts.map +1 -0
  44. package/dist/core/capability-authored.js +117 -0
  45. package/dist/core/capability-authored.js.map +1 -0
  46. package/dist/core/capability-snapshot.d.ts +13 -0
  47. package/dist/core/capability-snapshot.d.ts.map +1 -0
  48. package/dist/core/capability-snapshot.js +53 -0
  49. package/dist/core/capability-snapshot.js.map +1 -0
  50. package/dist/core/capability.d.ts +519 -0
  51. package/dist/core/capability.d.ts.map +1 -0
  52. package/dist/core/capability.js +114 -0
  53. package/dist/core/capability.js.map +1 -0
  54. package/dist/core/compute-checksums.d.ts.map +1 -1
  55. package/dist/core/compute-checksums.js +8 -2
  56. package/dist/core/compute-checksums.js.map +1 -1
  57. package/dist/core/consolidation-ledger.d.ts +30 -0
  58. package/dist/core/consolidation-ledger.d.ts.map +1 -0
  59. package/dist/core/consolidation-ledger.js +145 -0
  60. package/dist/core/consolidation-ledger.js.map +1 -0
  61. package/dist/core/generate-capability-view.d.ts +21 -0
  62. package/dist/core/generate-capability-view.d.ts.map +1 -0
  63. package/dist/core/generate-capability-view.js +48 -0
  64. package/dist/core/generate-capability-view.js.map +1 -0
  65. package/dist/core/install-metadata.d.ts +47 -30
  66. package/dist/core/install-metadata.d.ts.map +1 -1
  67. package/dist/core/install-metadata.js +49 -9
  68. package/dist/core/install-metadata.js.map +1 -1
  69. package/dist/core/plugin-manifest.d.ts +16 -16
  70. package/dist/core/provider-adapter.d.ts +28 -0
  71. package/dist/core/provider-adapter.d.ts.map +1 -0
  72. package/dist/core/provider-adapter.js +31 -0
  73. package/dist/core/provider-adapter.js.map +1 -0
  74. package/dist/core/provider-invocation.d.ts +14 -0
  75. package/dist/core/provider-invocation.d.ts.map +1 -0
  76. package/dist/core/provider-invocation.js +56 -0
  77. package/dist/core/provider-invocation.js.map +1 -0
  78. package/dist/core/provider-lifecycle.d.ts +35 -0
  79. package/dist/core/provider-lifecycle.d.ts.map +1 -0
  80. package/dist/core/provider-lifecycle.js +101 -0
  81. package/dist/core/provider-lifecycle.js.map +1 -0
  82. package/dist/core/provider-projection.d.ts +29 -0
  83. package/dist/core/provider-projection.d.ts.map +1 -0
  84. package/dist/core/provider-projection.js +47 -0
  85. package/dist/core/provider-projection.js.map +1 -0
  86. package/dist/core/release-metadata.d.ts +9 -2
  87. package/dist/core/release-metadata.d.ts.map +1 -1
  88. package/dist/core/release-metadata.js +13 -0
  89. package/dist/core/release-metadata.js.map +1 -1
  90. package/dist/core/repo-context-adapter.d.ts +23 -0
  91. package/dist/core/repo-context-adapter.d.ts.map +1 -0
  92. package/dist/core/repo-context-adapter.js +44 -0
  93. package/dist/core/repo-context-adapter.js.map +1 -0
  94. package/dist/core/repo-context.d.ts +147 -0
  95. package/dist/core/repo-context.d.ts.map +1 -0
  96. package/dist/core/repo-context.js +204 -0
  97. package/dist/core/repo-context.js.map +1 -0
  98. package/dist/core/resolve-capabilities.d.ts +70 -0
  99. package/dist/core/resolve-capabilities.d.ts.map +1 -0
  100. package/dist/core/resolve-capabilities.js +124 -0
  101. package/dist/core/resolve-capabilities.js.map +1 -0
  102. package/dist/core/smart-update.d.ts.map +1 -1
  103. package/dist/core/smart-update.js +13 -12
  104. package/dist/core/smart-update.js.map +1 -1
  105. package/dist/core/task-record.d.ts +252 -0
  106. package/dist/core/task-record.d.ts.map +1 -0
  107. package/dist/core/task-record.js +252 -0
  108. package/dist/core/task-record.js.map +1 -0
  109. package/dist/core/validate-capabilities.d.ts +12 -0
  110. package/dist/core/validate-capabilities.d.ts.map +1 -0
  111. package/dist/core/validate-capabilities.js +138 -0
  112. package/dist/core/validate-capabilities.js.map +1 -0
  113. package/dist/index.js +66 -4
  114. package/dist/index.js.map +1 -1
  115. package/dist/migrate/capability-bootstrap-projection.d.ts +11 -0
  116. package/dist/migrate/capability-bootstrap-projection.d.ts.map +1 -0
  117. package/dist/migrate/capability-bootstrap-projection.js +48 -0
  118. package/dist/migrate/capability-bootstrap-projection.js.map +1 -0
  119. package/dist/migrate/migrate-orchestrator.d.ts.map +1 -1
  120. package/dist/migrate/migrate-orchestrator.js +22 -0
  121. package/dist/migrate/migrate-orchestrator.js.map +1 -1
  122. package/dist/migrate/reconcile/portable-registry.d.ts +18 -18
  123. package/dist/orchviz-web/index.js +3 -3
  124. package/package.json +1 -1
  125. package/dist/commands/evolve.d.ts +0 -11
  126. package/dist/commands/evolve.d.ts.map +0 -1
  127. package/dist/commands/evolve.js +0 -63
  128. package/dist/commands/evolve.js.map +0 -1
  129. package/dist/commands/health.d.ts +0 -14
  130. package/dist/commands/health.d.ts.map +0 -1
  131. package/dist/commands/health.js +0 -193
  132. package/dist/commands/health.js.map +0 -1
  133. package/dist/commands/policy.d.ts +0 -8
  134. package/dist/commands/policy.d.ts.map +0 -1
  135. package/dist/commands/policy.js +0 -65
  136. package/dist/commands/policy.js.map +0 -1
  137. package/dist/commands/portability.d.ts +0 -7
  138. package/dist/commands/portability.d.ts.map +0 -1
  139. package/dist/commands/portability.js +0 -50
  140. package/dist/commands/portability.js.map +0 -1
  141. package/dist/commands/reflect.d.ts +0 -14
  142. package/dist/commands/reflect.d.ts.map +0 -1
  143. package/dist/commands/reflect.js +0 -135
  144. package/dist/commands/reflect.js.map +0 -1
  145. package/dist/commands/simulate.d.ts +0 -14
  146. package/dist/commands/simulate.d.ts.map +0 -1
  147. package/dist/commands/simulate.js +0 -86
  148. package/dist/commands/simulate.js.map +0 -1
  149. package/dist/core/event-log.d.ts +0 -44
  150. package/dist/core/event-log.d.ts.map +0 -1
  151. package/dist/core/event-log.js +0 -169
  152. package/dist/core/event-log.js.map +0 -1
  153. package/dist/core/evolution/event-clusters.d.ts +0 -4
  154. package/dist/core/evolution/event-clusters.d.ts.map +0 -1
  155. package/dist/core/evolution/event-clusters.js +0 -82
  156. package/dist/core/evolution/event-clusters.js.map +0 -1
  157. package/dist/core/evolution/recommendation-renderer.d.ts +0 -3
  158. package/dist/core/evolution/recommendation-renderer.d.ts.map +0 -1
  159. package/dist/core/evolution/recommendation-renderer.js +0 -24
  160. package/dist/core/evolution/recommendation-renderer.js.map +0 -1
  161. package/dist/core/evolution/review-failure-clusters.d.ts +0 -10
  162. package/dist/core/evolution/review-failure-clusters.d.ts.map +0 -1
  163. package/dist/core/evolution/review-failure-clusters.js +0 -30
  164. package/dist/core/evolution/review-failure-clusters.js.map +0 -1
  165. package/dist/core/evolution/suggestions.d.ts +0 -24
  166. package/dist/core/evolution/suggestions.d.ts.map +0 -1
  167. package/dist/core/evolution/suggestions.js +0 -11
  168. package/dist/core/evolution/suggestions.js.map +0 -1
  169. package/dist/core/gate-policy.d.ts +0 -20
  170. package/dist/core/gate-policy.d.ts.map +0 -1
  171. package/dist/core/gate-policy.js +0 -64
  172. package/dist/core/gate-policy.js.map +0 -1
  173. package/dist/core/portability-matrix.d.ts +0 -17
  174. package/dist/core/portability-matrix.d.ts.map +0 -1
  175. package/dist/core/portability-matrix.js +0 -31
  176. package/dist/core/portability-matrix.js.map +0 -1
  177. package/dist/core/simulation-runner.d.ts +0 -93
  178. package/dist/core/simulation-runner.d.ts.map +0 -1
  179. package/dist/core/simulation-runner.js +0 -161
  180. package/dist/core/simulation-runner.js.map +0 -1
  181. package/dist/core/usage/usage-analyzer.d.ts +0 -18
  182. package/dist/core/usage/usage-analyzer.d.ts.map +0 -1
  183. package/dist/core/usage/usage-analyzer.js +0 -41
  184. package/dist/core/usage/usage-analyzer.js.map +0 -1
  185. package/dist/memory/archive.d.ts +0 -9
  186. package/dist/memory/archive.d.ts.map +0 -1
  187. package/dist/memory/archive.js +0 -42
  188. package/dist/memory/archive.js.map +0 -1
  189. package/dist/memory/compact.d.ts +0 -9
  190. package/dist/memory/compact.d.ts.map +0 -1
  191. package/dist/memory/compact.js +0 -33
  192. package/dist/memory/compact.js.map +0 -1
  193. package/dist/memory/conflicts.d.ts +0 -8
  194. package/dist/memory/conflicts.d.ts.map +0 -1
  195. package/dist/memory/conflicts.js +0 -28
  196. package/dist/memory/conflicts.js.map +0 -1
  197. package/dist/memory/promote.d.ts +0 -8
  198. package/dist/memory/promote.d.ts.map +0 -1
  199. package/dist/memory/promote.js +0 -10
  200. package/dist/memory/promote.js.map +0 -1
  201. package/dist/memory/store-utils.d.ts +0 -14
  202. package/dist/memory/store-utils.d.ts.map +0 -1
  203. package/dist/memory/store-utils.js +0 -44
  204. package/dist/memory/store-utils.js.map +0 -1
  205. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts +0 -2
  206. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts.map +0 -1
  207. package/dist/migrate/__tests__/frontmatter-parser.test.js +0 -73
  208. package/dist/migrate/__tests__/frontmatter-parser.test.js.map +0 -1
  209. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts +0 -2
  210. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts.map +0 -1
  211. package/dist/migrate/__tests__/md-strip-mewkit.test.js +0 -55
  212. package/dist/migrate/__tests__/md-strip-mewkit.test.js.map +0 -1
  213. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts +0 -2
  214. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts.map +0 -1
  215. package/dist/migrate/__tests__/migrate-scope-resolver.test.js +0 -53
  216. package/dist/migrate/__tests__/migrate-scope-resolver.test.js.map +0 -1
  217. package/dist/migrate/__tests__/process-lock.test.d.ts +0 -2
  218. package/dist/migrate/__tests__/process-lock.test.d.ts.map +0 -1
  219. package/dist/migrate/__tests__/process-lock.test.js +0 -63
  220. package/dist/migrate/__tests__/process-lock.test.js.map +0 -1
  221. package/dist/migrate/__tests__/provider-registry.test.d.ts +0 -2
  222. package/dist/migrate/__tests__/provider-registry.test.d.ts.map +0 -1
  223. package/dist/migrate/__tests__/provider-registry.test.js +0 -53
  224. package/dist/migrate/__tests__/provider-registry.test.js.map +0 -1
  225. package/dist/migrate/__tests__/reconciler.test.d.ts +0 -2
  226. package/dist/migrate/__tests__/reconciler.test.d.ts.map +0 -1
  227. package/dist/migrate/__tests__/reconciler.test.js +0 -180
  228. package/dist/migrate/__tests__/reconciler.test.js.map +0 -1
  229. package/dist/migrate/__tests__/skill-id-utils.test.d.ts +0 -2
  230. package/dist/migrate/__tests__/skill-id-utils.test.d.ts.map +0 -1
  231. package/dist/migrate/__tests__/skill-id-utils.test.js +0 -78
  232. package/dist/migrate/__tests__/skill-id-utils.test.js.map +0 -1
  233. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts +0 -15
  234. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts.map +0 -1
  235. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js +0 -165
  236. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js.map +0 -1
  237. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts +0 -11
  238. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts.map +0 -1
  239. package/dist/orchviz/plan/__tests__/atomic-write.test.js +0 -89
  240. package/dist/orchviz/plan/__tests__/atomic-write.test.js.map +0 -1
  241. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts +0 -10
  242. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts.map +0 -1
  243. package/dist/orchviz/plan/__tests__/end-to-end.test.js +0 -132
  244. package/dist/orchviz/plan/__tests__/end-to-end.test.js.map +0 -1
  245. package/dist/orchviz/plan/__tests__/etag.test.d.ts +0 -11
  246. package/dist/orchviz/plan/__tests__/etag.test.d.ts.map +0 -1
  247. package/dist/orchviz/plan/__tests__/etag.test.js +0 -92
  248. package/dist/orchviz/plan/__tests__/etag.test.js.map +0 -1
  249. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts +0 -14
  250. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts.map +0 -1
  251. package/dist/orchviz/plan/__tests__/list-plans.test.js +0 -154
  252. package/dist/orchviz/plan/__tests__/list-plans.test.js.map +0 -1
  253. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts +0 -13
  254. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts.map +0 -1
  255. package/dist/orchviz/server/__tests__/security-smoke.test.js +0 -207
  256. package/dist/orchviz/server/__tests__/security-smoke.test.js.map +0 -1
  257. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts +0 -24
  258. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts.map +0 -1
  259. package/dist/orchviz/server/__tests__/write-handlers.test.js +0 -347
  260. package/dist/orchviz/server/__tests__/write-handlers.test.js.map +0 -1
  261. package/dist/orchviz/test-server-boot.d.ts +0 -28
  262. package/dist/orchviz/test-server-boot.d.ts.map +0 -1
  263. package/dist/orchviz/test-server-boot.js +0 -64
  264. package/dist/orchviz/test-server-boot.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"conflicts.js","sourceRoot":"","sources":["../../src/memory/conflicts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AASnE,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACpD,MAAM,SAAS,GAAqB,EAAE,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0C,CAAC;QAClE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACvB,SAAS,CAAC,IAAI,CAAC;oBACd,KAAK,EAAE,KAAK,CAAC,IAAI;oBACjB,GAAG;oBACH,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC5D,MAAM,EAAE,wDAAwD;iBAChE,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC"}
@@ -1,8 +0,0 @@
1
- export interface PromotionCandidate {
2
- title: string;
3
- source: string;
4
- reason: string;
5
- proposedAction: string;
6
- }
7
- export declare function memoryPromotionCandidates(memoryDir: string): PromotionCandidate[];
8
- //# sourceMappingURL=promote.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../../src/memory/promote.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAOjF"}
@@ -1,10 +0,0 @@
1
- import { findMemoryConflicts } from "./conflicts.js";
2
- export function memoryPromotionCandidates(memoryDir) {
3
- return findMemoryConflicts(memoryDir).map((conflict) => ({
4
- title: `Resolve repeated memory conflict: ${conflict.key}`,
5
- source: conflict.store,
6
- reason: `${conflict.ids.length} entries disagree: ${conflict.ids.join(", ")}`,
7
- proposedAction: "Review entries and promote the resolved wording into a rule/checklist candidate.",
8
- }));
9
- }
10
- //# sourceMappingURL=promote.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promote.js","sourceRoot":"","sources":["../../src/memory/promote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AASrD,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IAC1D,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACxD,KAAK,EAAE,qCAAqC,QAAQ,CAAC,GAAG,EAAE;QAC1D,MAAM,EAAE,QAAQ,CAAC,KAAK;QACtB,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,sBAAsB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC7E,cAAc,EAAE,kFAAkF;KAClG,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,14 +0,0 @@
1
- import { type Pattern } from "./schemas.js";
2
- export interface LoadedStore {
3
- file: string;
4
- scope: string;
5
- itemsKey: "patterns" | "findings";
6
- data: Record<string, unknown>;
7
- items: Array<Record<string, unknown>>;
8
- }
9
- export declare function loadStores(memoryDir: string): LoadedStore[];
10
- export declare function entryId(entry: Record<string, unknown>, fallback: string): string;
11
- export declare function entryTitle(entry: Record<string, unknown>): string;
12
- export declare function entryDate(entry: Record<string, unknown>): string | null;
13
- export declare function clonePattern(entry: Pattern): Pattern;
14
- //# sourceMappingURL=store-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-utils.d.ts","sourceRoot":"","sources":["../../src/memory/store-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtC;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAgB3D;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAMjE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAMvE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEpD"}
@@ -1,44 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { CURATED_STORES } from "./schemas.js";
4
- export function loadStores(memoryDir) {
5
- const stores = [];
6
- for (const spec of CURATED_STORES) {
7
- const p = path.join(memoryDir, spec.file);
8
- if (!fs.existsSync(p))
9
- continue;
10
- const data = JSON.parse(fs.readFileSync(p, "utf-8"));
11
- const raw = data[spec.itemsKey];
12
- stores.push({
13
- file: spec.file,
14
- scope: spec.scope,
15
- itemsKey: spec.itemsKey,
16
- data,
17
- items: Array.isArray(raw) ? raw : [],
18
- });
19
- }
20
- return stores;
21
- }
22
- export function entryId(entry, fallback) {
23
- return typeof entry.id === "string" && entry.id.length > 0 ? entry.id : fallback;
24
- }
25
- export function entryTitle(entry) {
26
- for (const key of ["pattern", "finding", "context", "applicable_when", "category", "type"]) {
27
- const value = entry[key];
28
- if (typeof value === "string" && value.trim())
29
- return value.trim().slice(0, 120);
30
- }
31
- return JSON.stringify(entry).slice(0, 120);
32
- }
33
- export function entryDate(entry) {
34
- for (const key of ["lastSeen", "timestamp", "created", "archivedAt"]) {
35
- const value = entry[key];
36
- if (typeof value === "string" && !Number.isNaN(Date.parse(value)))
37
- return value;
38
- }
39
- return null;
40
- }
41
- export function clonePattern(entry) {
42
- return JSON.parse(JSON.stringify(entry));
43
- }
44
- //# sourceMappingURL=store-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store-utils.js","sourceRoot":"","sources":["../../src/memory/store-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAgB,MAAM,cAAc,CAAC;AAU5D,MAAM,UAAU,UAAU,CAAC,SAAiB;IAC3C,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,SAAS;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAA4B,CAAC;QAChF,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI;YACJ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,GAAsC,CAAC,CAAC,CAAC,EAAE;SACxE,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAA8B,EAAE,QAAgB;IACvE,OAAO,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAA8B;IACxD,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5F,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAA8B;IACvD,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;QACtE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IACjF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAc;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAY,CAAC;AACrD,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=frontmatter-parser.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter-parser.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/frontmatter-parser.test.ts"],"names":[],"mappings":""}
@@ -1,73 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { parseFrontmatter } from "../frontmatter-parser.js";
3
- describe("parseFrontmatter", () => {
4
- it("parses standard YAML frontmatter", () => {
5
- const result = parseFrontmatter(`---
6
- name: scout
7
- description: Quick file scout
8
- model: opus
9
- ---
10
- Body content here`);
11
- expect(result.frontmatter.name).toBe("scout");
12
- expect(result.frontmatter.description).toBe("Quick file scout");
13
- expect(result.frontmatter.model).toBe("opus");
14
- expect(result.body).toBe("Body content here");
15
- expect(result.warnings).toEqual([]);
16
- });
17
- it("returns empty frontmatter when no fence", () => {
18
- const result = parseFrontmatter("Just a body, no frontmatter");
19
- expect(result.frontmatter).toEqual({});
20
- expect(result.body).toBe("Just a body, no frontmatter");
21
- });
22
- it("strips BOM from input", () => {
23
- const result = parseFrontmatter(`---
24
- name: scout
25
- ---
26
- Body`);
27
- expect(result.frontmatter.name).toBe("scout");
28
- });
29
- it("handles CRLF line endings", () => {
30
- const result = parseFrontmatter("---\r\nname: scout\r\n---\r\nBody");
31
- expect(result.frontmatter.name).toBe("scout");
32
- });
33
- it("normalizes argument-hint to argumentHint", () => {
34
- const result = parseFrontmatter(`---
35
- argument-hint: <agent-name>
36
- ---
37
- `);
38
- expect(result.frontmatter.argumentHint).toBe("<agent-name>");
39
- });
40
- it("preserves extra unknown fields", () => {
41
- const result = parseFrontmatter(`---
42
- name: foo
43
- custom-field: bar
44
- ---
45
- Body`);
46
- expect(result.frontmatter["custom-field"]).toBe("bar");
47
- expect(result.frontmatter.name).toBe("foo");
48
- });
49
- it("truncates over-long description with warning", () => {
50
- const longDesc = "x".repeat(600);
51
- const result = parseFrontmatter(`---
52
- description: ${longDesc}
53
- ---
54
- `);
55
- expect(result.frontmatter.description?.length).toBeLessThanOrEqual(500);
56
- expect(result.warnings.some((w) => /description.*truncated/.test(w))).toBe(true);
57
- });
58
- it("falls through to fallback parser on YAML errors", () => {
59
- // Unquoted YAML value with colon — strict YAML would fail; fallback should rescue
60
- const result = parseFrontmatter(`---
61
- description: Tools: read, write, edit
62
- ---
63
- Body`);
64
- // Either YAML or fallback — both should produce something usable
65
- expect(result.body).toBeTruthy();
66
- });
67
- it("handles whitespace-only frontmatter block", () => {
68
- const result = parseFrontmatter("---\n\n---\nJust body");
69
- expect(result.frontmatter).toEqual({});
70
- expect(result.body).toBe("Just body");
71
- });
72
- });
73
- //# sourceMappingURL=frontmatter-parser.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter-parser.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/frontmatter-parser.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=md-strip-mewkit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"md-strip-mewkit.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/md-strip-mewkit.test.ts"],"names":[],"mappings":""}
@@ -1,55 +0,0 @@
1
- // Tests for mewkit-specific additions to md-strip (CLI verb rewrites + slash refs).
2
- import { describe, expect, it } from "vitest";
3
- import { stripClaudeRefs } from "../converters/md-strip.js";
4
- describe("stripClaudeRefs — mewkit additions", () => {
5
- it("rewrites mewkit init to provider-neutral phrasing", () => {
6
- const { content } = stripClaudeRefs("Run mewkit init to set up.", { provider: "cursor" });
7
- expect(content.toLowerCase()).toContain("scaffold the kit");
8
- expect(content.toLowerCase()).not.toContain("mewkit init");
9
- });
10
- it("rewrites npx mewkit migrate", () => {
11
- const { content } = stripClaudeRefs("Run npx mewkit migrate to export.", { provider: "cursor" });
12
- expect(content.toLowerCase()).toContain("migrate the kit");
13
- });
14
- it("rewrites meowkit <verb> generically", () => {
15
- const { content } = stripClaudeRefs("Run meowkit upgrade for updates.", { provider: "cursor" });
16
- expect(content.toLowerCase()).toContain("kit upgrade");
17
- });
18
- it("strips /meow: slash command refs", () => {
19
- const { content } = stripClaudeRefs("Use /meow:cook to start.", { provider: "cursor" });
20
- expect(content).not.toContain("/meow:cook");
21
- });
22
- it("strips /mk: shortform slash refs", () => {
23
- const { content } = stripClaudeRefs("Try /mk:plan first.", { provider: "cursor" });
24
- expect(content).not.toContain("/mk:plan");
25
- });
26
- it("preserves real filesystem paths (e.g. /src/app.ts)", () => {
27
- const { content } = stripClaudeRefs("Edit /src/app.ts for changes.", { provider: "cursor" });
28
- expect(content).toContain("/src/app.ts");
29
- });
30
- it("preserves mewkit slash refs inside code blocks", () => {
31
- const input = "Try this:\n```\n/meow:cook\n```\nEnd.";
32
- const { content } = stripClaudeRefs(input, { provider: "cursor" });
33
- expect(content).toContain("/meow:cook");
34
- });
35
- it("rewrites .claude/agents/ paths to provider-specific paths", () => {
36
- const { content } = stripClaudeRefs("See .claude/agents/scout.md", { provider: "cursor" });
37
- expect(content).not.toContain(".claude/agents/");
38
- });
39
- it("replaces CLAUDE.md with provider config target", () => {
40
- const { content } = stripClaudeRefs("See CLAUDE.md for details.", { provider: "cursor" });
41
- expect(content).not.toContain("CLAUDE.md");
42
- });
43
- it("warns when content is empty after stripping", () => {
44
- const { warnings } = stripClaudeRefs("/meow:cook", { provider: "cursor" });
45
- // The slash command alone strips to nothing
46
- expect(warnings.some((w) => /Claude-specific/.test(w))).toBe(true);
47
- });
48
- it("respects max content size guard", () => {
49
- const huge = "x".repeat(600_000);
50
- const { content, warnings } = stripClaudeRefs(huge, { provider: "cursor" });
51
- expect(content).toBe(huge);
52
- expect(warnings.some((w) => /exceeds.*chars/.test(w))).toBe(true);
53
- });
54
- });
55
- //# sourceMappingURL=md-strip-mewkit.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"md-strip-mewkit.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/md-strip-mewkit.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=migrate-scope-resolver.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate-scope-resolver.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/migrate-scope-resolver.test.ts"],"names":[],"mappings":""}
@@ -1,53 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { resolveMigrationScope } from "../migrate-scope-resolver.js";
3
- describe("resolveMigrationScope", () => {
4
- it("default: all six types enabled", () => {
5
- const scope = resolveMigrationScope([], {});
6
- expect(scope).toEqual({
7
- agents: true, commands: true, skills: true, config: true, rules: true, hooks: true,
8
- });
9
- });
10
- it("--only=skills,hooks narrows scope", () => {
11
- const scope = resolveMigrationScope([], { only: "skills,hooks" });
12
- expect(scope).toEqual({
13
- agents: false, commands: false, skills: true, config: false, rules: false, hooks: true,
14
- });
15
- });
16
- it("--only conflicts with --skip-config", () => {
17
- expect(() => resolveMigrationScope([], { only: "skills", skipConfig: true })).toThrow(/mutually exclusive/);
18
- });
19
- it("--skip-config excludes config only", () => {
20
- const scope = resolveMigrationScope(["--skip-config"], { skipConfig: true });
21
- expect(scope.config).toBe(false);
22
- expect(scope.agents).toBe(true);
23
- });
24
- it("--no-config (alias) also excludes config", () => {
25
- const scope = resolveMigrationScope(["--no-config"], {});
26
- expect(scope.config).toBe(false);
27
- });
28
- it("positive --config flag: only-mode enables only config", () => {
29
- const scope = resolveMigrationScope(["--config"], {});
30
- expect(scope).toEqual({
31
- agents: false, commands: false, skills: false, config: true, rules: false, hooks: false,
32
- });
33
- });
34
- it("multiple positive flags: only those enabled", () => {
35
- const scope = resolveMigrationScope(["--config", "--rules"], {});
36
- expect(scope.config).toBe(true);
37
- expect(scope.rules).toBe(true);
38
- expect(scope.agents).toBe(false);
39
- expect(scope.hooks).toBe(false);
40
- });
41
- it("--only ignores unknown types silently", () => {
42
- const scope = resolveMigrationScope([], { only: "skills,bogus" });
43
- expect(scope.skills).toBe(true);
44
- expect(scope.agents).toBe(false);
45
- });
46
- it("--skip-hooks alone keeps everything else", () => {
47
- const scope = resolveMigrationScope(["--skip-hooks"], { skipHooks: true });
48
- expect(scope.hooks).toBe(false);
49
- expect(scope.agents).toBe(true);
50
- expect(scope.skills).toBe(true);
51
- });
52
- });
53
- //# sourceMappingURL=migrate-scope-resolver.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate-scope-resolver.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/migrate-scope-resolver.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=process-lock.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process-lock.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/process-lock.test.ts"],"names":[],"mappings":""}
@@ -1,63 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from "vitest";
2
- import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
3
- import { tmpdir } from "node:os";
4
- import { join } from "node:path";
5
- // Test the process-lock semantics directly. We can't easily intercept the home dir
6
- // the production module uses, so we test the algorithm by importing functions and
7
- // stubbing path resolution via env. Simplification: test the public surface end-to-end
8
- // using a temp project dir.
9
- import { acquireMigrationLock, releaseMigrationLock } from "../reconcile/process-lock.js";
10
- describe("process-lock", () => {
11
- let testDir;
12
- let originalCwd;
13
- beforeEach(() => {
14
- originalCwd = process.cwd();
15
- testDir = join(tmpdir(), `mewkit-lock-test-${Date.now()}-${Math.random().toString(36).slice(2)}`);
16
- mkdirSync(testDir, { recursive: true });
17
- process.chdir(testDir);
18
- });
19
- afterEach(() => {
20
- process.chdir(originalCwd);
21
- rmSync(testDir, { recursive: true, force: true });
22
- });
23
- it("acquires lock when none exists", async () => {
24
- const result = await acquireMigrationLock({ scope: "project" });
25
- expect(result.acquired).toBe(true);
26
- expect(existsSync(result.lockPath)).toBe(true);
27
- await releaseMigrationLock(result.lockPath);
28
- expect(existsSync(result.lockPath)).toBe(false);
29
- });
30
- it("refuses second acquisition while live PID holds lock", async () => {
31
- // First acquire — uses our process.pid (which is alive)
32
- const first = await acquireMigrationLock({ scope: "project" });
33
- expect(first.acquired).toBe(true);
34
- // Second attempt should refuse because our PID is alive
35
- const second = await acquireMigrationLock({ scope: "project" });
36
- expect(second.acquired).toBe(false);
37
- expect(second.heldBy).toBe(process.pid);
38
- await releaseMigrationLock(first.lockPath);
39
- });
40
- it("auto-clears stale lock with dead PID", async () => {
41
- // Discover the lock path the function actually uses (vitest workers can have
42
- // stale process.cwd state — easier to probe than to fight it).
43
- const probe = await acquireMigrationLock({ scope: "project" });
44
- expect(probe.acquired).toBe(true);
45
- const liveLockPath = probe.lockPath;
46
- await releaseMigrationLock(liveLockPath);
47
- // Plant a stale lock with definitely-dead PID at the actual path
48
- const lockDir = join(liveLockPath, "..");
49
- mkdirSync(lockDir, { recursive: true });
50
- writeFileSync(liveLockPath, "999999\n0\n", "utf-8");
51
- // Acquisition should clear stale lock and succeed
52
- const result = await acquireMigrationLock({ scope: "project" });
53
- expect(result.acquired).toBe(true);
54
- expect(result.lockPath).toBe(liveLockPath);
55
- await releaseMigrationLock(result.lockPath);
56
- });
57
- it("release is idempotent (safe to call when lock missing)", async () => {
58
- const fakeLockPath = join(testDir, ".mewkit", ".lock");
59
- // Don't create the lock — just call release
60
- await expect(releaseMigrationLock(fakeLockPath)).resolves.not.toThrow();
61
- });
62
- });
63
- //# sourceMappingURL=process-lock.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process-lock.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/process-lock.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=provider-registry.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-registry.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/provider-registry.test.ts"],"names":[],"mappings":""}
@@ -1,53 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { detectProviderPathCollisions, getAllProviderTypes, getProvidersSupporting, } from "../provider-registry-utils.js";
3
- import { providers } from "../provider-registry.js";
4
- import { applyMewkitOverrides } from "../provider-overrides.js";
5
- describe("provider registry", () => {
6
- it("contains exactly 16 providers (claude-code source + 15 targets)", () => {
7
- const all = getAllProviderTypes();
8
- expect(all).toHaveLength(16);
9
- expect(all).toContain("claude-code");
10
- });
11
- it("hooks-supporting providers: exactly claude-code, codex, droid, gemini-cli", () => {
12
- const hookProviders = getProvidersSupporting("hooks").sort();
13
- expect(hookProviders).toEqual(["claude-code", "codex", "droid", "gemini-cli"]);
14
- });
15
- it(".agents/skills/ shared by codex+cursor+windsurf+gemini-cli+amp (5 providers)", () => {
16
- const collisions = detectProviderPathCollisions(["codex", "cursor", "windsurf", "gemini-cli", "amp"], { global: false });
17
- const skillsCollision = collisions.find((c) => c.path === ".agents/skills");
18
- expect(skillsCollision).toBeDefined();
19
- expect(skillsCollision?.providers.sort()).toEqual(["amp", "codex", "cursor", "gemini-cli", "windsurf"]);
20
- });
21
- it("antigravity uses .agent/skills (singular), distinct from .agents/skills", () => {
22
- expect(providers.antigravity.skills?.projectPath).toBe(".agent/skills");
23
- });
24
- it("every provider config has detect function", () => {
25
- for (const type of getAllProviderTypes()) {
26
- expect(typeof providers[type].detect).toBe("function");
27
- }
28
- });
29
- it("Windsurf charLimit set on rules (6K) and totalCharLimit (12K)", () => {
30
- expect(providers.windsurf.rules?.charLimit).toBe(6000);
31
- expect(providers.windsurf.rules?.totalCharLimit).toBe(12000);
32
- });
33
- });
34
- describe("provider overrides", () => {
35
- it("Override A: Kiro globalPath set after override", () => {
36
- applyMewkitOverrides();
37
- expect(providers.kiro.config?.globalPath).toContain(".kiro/steering");
38
- });
39
- it("Override D: OpenCode skills paths point to .opencode/skills", () => {
40
- applyMewkitOverrides();
41
- expect(providers.opencode.skills?.projectPath).toBe(".opencode/skills");
42
- expect(providers.opencode.skills?.globalPath).toContain(".opencode/skills");
43
- });
44
- it("Override C: Windsurf workflow charLimit = 12000", () => {
45
- applyMewkitOverrides();
46
- expect(providers.windsurf.commands?.charLimit).toBe(12000);
47
- });
48
- it("Override G: Kilo flagged as _unverified", () => {
49
- applyMewkitOverrides();
50
- expect(providers.kilo._unverified).toBe(true);
51
- });
52
- });
53
- //# sourceMappingURL=provider-registry.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-registry.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/provider-registry.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=reconciler.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reconciler.test.d.ts","sourceRoot":"","sources":["../../../src/migrate/__tests__/reconciler.test.ts"],"names":[],"mappings":""}