@agentxm/client-core 0.9.0 → 0.10.1

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 (381) hide show
  1. package/README.md +5 -0
  2. package/dist/src/unstable/app-error/app-error.d.ts +20 -4
  3. package/dist/src/unstable/app-error/app-error.d.ts.map +1 -1
  4. package/dist/src/unstable/app-error/app-error.js +37 -2
  5. package/dist/src/unstable/app-error/app-error.js.map +1 -1
  6. package/dist/src/unstable/app-error/builders.d.ts +4 -4
  7. package/dist/src/unstable/app-error/builders.d.ts.map +1 -1
  8. package/dist/src/unstable/app-error/builders.js +5 -5
  9. package/dist/src/unstable/app-error/builders.js.map +1 -1
  10. package/dist/src/unstable/app-error/index.d.ts +1 -1
  11. package/dist/src/unstable/app-error/index.d.ts.map +1 -1
  12. package/dist/src/unstable/app-error/index.js +1 -1
  13. package/dist/src/unstable/app-error/index.js.map +1 -1
  14. package/dist/src/unstable/app-error/render.d.ts +1 -1
  15. package/dist/src/unstable/app-error/render.d.ts.map +1 -1
  16. package/dist/src/unstable/app-error/render.js +48 -3
  17. package/dist/src/unstable/app-error/render.js.map +1 -1
  18. package/dist/src/unstable/auth/auth-client.d.ts +59 -1
  19. package/dist/src/unstable/auth/auth-client.d.ts.map +1 -1
  20. package/dist/src/unstable/auth/auth-client.js +223 -16
  21. package/dist/src/unstable/auth/auth-client.js.map +1 -1
  22. package/dist/src/unstable/auth/credential-store.js +2 -2
  23. package/dist/src/unstable/auth/device-login.d.ts +1 -0
  24. package/dist/src/unstable/auth/device-login.d.ts.map +1 -1
  25. package/dist/src/unstable/auth/device-login.js +3 -1
  26. package/dist/src/unstable/auth/device-login.js.map +1 -1
  27. package/dist/src/unstable/auth/guard.js +1 -1
  28. package/dist/src/unstable/auth/index.d.ts +1 -1
  29. package/dist/src/unstable/auth/index.d.ts.map +1 -1
  30. package/dist/src/unstable/auth/index.js.map +1 -1
  31. package/dist/src/unstable/auth/loopback-login.d.ts +4 -1
  32. package/dist/src/unstable/auth/loopback-login.d.ts.map +1 -1
  33. package/dist/src/unstable/auth/loopback-login.js +2 -2
  34. package/dist/src/unstable/auth/loopback-login.js.map +1 -1
  35. package/dist/src/unstable/auth/token-resolution.js +1 -1
  36. package/dist/src/unstable/cli/prompt/helpers.js +1 -1
  37. package/dist/src/unstable/cli-renderer/ansi-chrome.d.ts +7 -0
  38. package/dist/src/unstable/cli-renderer/ansi-chrome.d.ts.map +1 -1
  39. package/dist/src/unstable/cli-renderer/ansi-chrome.js +7 -7
  40. package/dist/src/unstable/cli-renderer/ansi-chrome.js.map +1 -1
  41. package/dist/src/unstable/cli-renderer/cli-renderer-interactive.d.ts.map +1 -1
  42. package/dist/src/unstable/cli-renderer/cli-renderer-interactive.js +29 -104
  43. package/dist/src/unstable/cli-renderer/cli-renderer-interactive.js.map +1 -1
  44. package/dist/src/unstable/cli-renderer/cli-renderer-machine.d.ts.map +1 -1
  45. package/dist/src/unstable/cli-renderer/cli-renderer-machine.js +17 -13
  46. package/dist/src/unstable/cli-renderer/cli-renderer-machine.js.map +1 -1
  47. package/dist/src/unstable/cli-renderer/cli-renderer-test.d.ts +3 -2
  48. package/dist/src/unstable/cli-renderer/cli-renderer-test.d.ts.map +1 -1
  49. package/dist/src/unstable/cli-renderer/cli-renderer-test.js +24 -20
  50. package/dist/src/unstable/cli-renderer/cli-renderer-test.js.map +1 -1
  51. package/dist/src/unstable/cli-renderer/cli-renderer.d.ts +9 -8
  52. package/dist/src/unstable/cli-renderer/cli-renderer.d.ts.map +1 -1
  53. package/dist/src/unstable/cli-renderer/cli-renderer.js.map +1 -1
  54. package/dist/src/unstable/cli-renderer/index.d.ts +2 -1
  55. package/dist/src/unstable/cli-renderer/index.d.ts.map +1 -1
  56. package/dist/src/unstable/cli-renderer/index.js +1 -0
  57. package/dist/src/unstable/cli-renderer/index.js.map +1 -1
  58. package/dist/src/unstable/cli-renderer/markdown-formatter.d.ts +2 -0
  59. package/dist/src/unstable/cli-renderer/markdown-formatter.d.ts.map +1 -0
  60. package/dist/src/unstable/cli-renderer/markdown-formatter.js +255 -0
  61. package/dist/src/unstable/cli-renderer/markdown-formatter.js.map +1 -0
  62. package/dist/src/unstable/cli-renderer/table-formatter.d.ts +5 -0
  63. package/dist/src/unstable/cli-renderer/table-formatter.d.ts.map +1 -0
  64. package/dist/src/unstable/cli-renderer/table-formatter.js +85 -0
  65. package/dist/src/unstable/cli-renderer/table-formatter.js.map +1 -0
  66. package/dist/src/unstable/cli-runtime/index.d.ts +3 -3
  67. package/dist/src/unstable/cli-runtime/index.d.ts.map +1 -1
  68. package/dist/src/unstable/cli-runtime/index.js +2 -2
  69. package/dist/src/unstable/cli-runtime/index.js.map +1 -1
  70. package/dist/src/unstable/cli-runtime/json-envelope.d.ts +27 -9
  71. package/dist/src/unstable/cli-runtime/json-envelope.d.ts.map +1 -1
  72. package/dist/src/unstable/cli-runtime/json-envelope.js +18 -11
  73. package/dist/src/unstable/cli-runtime/json-envelope.js.map +1 -1
  74. package/dist/src/unstable/cli-runtime/output-mode.d.ts +5 -4
  75. package/dist/src/unstable/cli-runtime/output-mode.d.ts.map +1 -1
  76. package/dist/src/unstable/cli-runtime/output-mode.js +6 -5
  77. package/dist/src/unstable/cli-runtime/output-mode.js.map +1 -1
  78. package/dist/src/unstable/cli-runtime/runtime-envelope.d.ts.map +1 -1
  79. package/dist/src/unstable/cli-runtime/runtime-envelope.js +18 -14
  80. package/dist/src/unstable/cli-runtime/runtime-envelope.js.map +1 -1
  81. package/dist/src/unstable/cli-runtime/suggested-action.d.ts +8 -0
  82. package/dist/src/unstable/cli-runtime/suggested-action.d.ts.map +1 -0
  83. package/dist/src/unstable/cli-runtime/suggested-action.js +16 -0
  84. package/dist/src/unstable/cli-runtime/suggested-action.js.map +1 -0
  85. package/dist/src/unstable/commands/command-content.js +1 -1
  86. package/dist/src/unstable/commands/manager.js +1 -1
  87. package/dist/src/unstable/commands/manifest-schema.d.ts +12 -9
  88. package/dist/src/unstable/commands/manifest-schema.d.ts.map +1 -1
  89. package/dist/src/unstable/commands/operations/enable.js +2 -2
  90. package/dist/src/unstable/commands/operations/install.js +2 -2
  91. package/dist/src/unstable/commands/operations/new-command.js +1 -1
  92. package/dist/src/unstable/commands/operations/publish.d.ts.map +1 -1
  93. package/dist/src/unstable/commands/operations/publish.js +4 -3
  94. package/dist/src/unstable/commands/operations/publish.js.map +1 -1
  95. package/dist/src/unstable/commands/operations/shared-command-helpers.d.ts +13 -12
  96. package/dist/src/unstable/commands/operations/shared-command-helpers.d.ts.map +1 -1
  97. package/dist/src/unstable/commands/registry-ref-builder.d.ts +1 -1
  98. package/dist/src/unstable/commands/registry-ref-builder.d.ts.map +1 -1
  99. package/dist/src/unstable/commands/registry-ref-builder.js +2 -2
  100. package/dist/src/unstable/commands/registry-ref-builder.js.map +1 -1
  101. package/dist/src/unstable/discover/discover.d.ts +9 -13
  102. package/dist/src/unstable/discover/discover.d.ts.map +1 -1
  103. package/dist/src/unstable/discover/discover.js +94 -140
  104. package/dist/src/unstable/discover/discover.js.map +1 -1
  105. package/dist/src/unstable/discover/index.d.ts +1 -1
  106. package/dist/src/unstable/discover/index.d.ts.map +1 -1
  107. package/dist/src/unstable/discover/index.js.map +1 -1
  108. package/dist/src/unstable/extensions/common.d.ts +21 -9
  109. package/dist/src/unstable/extensions/common.d.ts.map +1 -1
  110. package/dist/src/unstable/extensions/common.js +22 -6
  111. package/dist/src/unstable/extensions/common.js.map +1 -1
  112. package/dist/src/unstable/extensions/fqn.d.ts +1 -1
  113. package/dist/src/unstable/extensions/fqn.js +2 -2
  114. package/dist/src/unstable/extensions/frontmatter.js +1 -1
  115. package/dist/src/unstable/extensions/index.d.ts +2 -1
  116. package/dist/src/unstable/extensions/index.d.ts.map +1 -1
  117. package/dist/src/unstable/extensions/index.js +2 -1
  118. package/dist/src/unstable/extensions/index.js.map +1 -1
  119. package/dist/src/unstable/extensions/license.d.ts +16 -0
  120. package/dist/src/unstable/extensions/license.d.ts.map +1 -0
  121. package/dist/src/unstable/extensions/license.js +29 -0
  122. package/dist/src/unstable/extensions/license.js.map +1 -0
  123. package/dist/src/unstable/extensions/materializable-from-disk.js +5 -5
  124. package/dist/src/unstable/extensions/materializable-from-disk.js.map +1 -1
  125. package/dist/src/unstable/extensions/operations.d.ts +3 -3
  126. package/dist/src/unstable/extensions/operations.d.ts.map +1 -1
  127. package/dist/src/unstable/extensions/operations.js +7 -7
  128. package/dist/src/unstable/extensions/operations.js.map +1 -1
  129. package/dist/src/unstable/extensions/ref-base.d.ts +1 -1
  130. package/dist/src/unstable/extensions/ref-base.d.ts.map +1 -1
  131. package/dist/src/unstable/install-meta/install-meta.d.ts +1 -1
  132. package/dist/src/unstable/lint/catalog/workspace/skills-universal-artifact-present.d.ts +11 -0
  133. package/dist/src/unstable/lint/catalog/workspace/skills-universal-artifact-present.d.ts.map +1 -0
  134. package/dist/src/unstable/lint/catalog/workspace/skills-universal-artifact-present.js +68 -0
  135. package/dist/src/unstable/lint/catalog/workspace/skills-universal-artifact-present.js.map +1 -0
  136. package/dist/src/unstable/lint/catalog/workspace-fixtures/interpret-ops.d.ts.map +1 -1
  137. package/dist/src/unstable/lint/catalog/workspace-fixtures/interpret-ops.js +47 -0
  138. package/dist/src/unstable/lint/catalog/workspace-fixtures/interpret-ops.js.map +1 -1
  139. package/dist/src/unstable/lint/catalog/workspace.d.ts +1 -0
  140. package/dist/src/unstable/lint/catalog/workspace.d.ts.map +1 -1
  141. package/dist/src/unstable/lint/catalog/workspace.js +4 -0
  142. package/dist/src/unstable/lint/catalog/workspace.js.map +1 -1
  143. package/dist/src/unstable/lint/cli.d.ts.map +1 -1
  144. package/dist/src/unstable/lint/cli.js +22 -0
  145. package/dist/src/unstable/lint/cli.js.map +1 -1
  146. package/dist/src/unstable/lockfile/resolved-version.js +1 -1
  147. package/dist/src/unstable/lockfile/schema.d.ts +85 -0
  148. package/dist/src/unstable/lockfile/schema.d.ts.map +1 -1
  149. package/dist/src/unstable/lockfile/schema.js +7 -1
  150. package/dist/src/unstable/lockfile/schema.js.map +1 -1
  151. package/dist/src/unstable/mcp-servers/manifest-schema.d.ts +12 -9
  152. package/dist/src/unstable/mcp-servers/manifest-schema.d.ts.map +1 -1
  153. package/dist/src/unstable/mcp-servers/operations/publish.d.ts.map +1 -1
  154. package/dist/src/unstable/mcp-servers/operations/publish.js +4 -3
  155. package/dist/src/unstable/mcp-servers/operations/publish.js.map +1 -1
  156. package/dist/src/unstable/mcp-servers/registry-ref-builder.d.ts +1 -1
  157. package/dist/src/unstable/mcp-servers/registry-ref-builder.d.ts.map +1 -1
  158. package/dist/src/unstable/mcp-servers/registry-ref-builder.js +2 -2
  159. package/dist/src/unstable/mcp-servers/registry-ref-builder.js.map +1 -1
  160. package/dist/src/unstable/package-urls/companion-package.d.ts +14 -0
  161. package/dist/src/unstable/package-urls/companion-package.d.ts.map +1 -0
  162. package/dist/src/unstable/package-urls/companion-package.js +41 -0
  163. package/dist/src/unstable/package-urls/companion-package.js.map +1 -0
  164. package/dist/src/unstable/package-urls/companion-package.spec.d.ts +2 -0
  165. package/dist/src/unstable/package-urls/companion-package.spec.d.ts.map +1 -0
  166. package/dist/src/unstable/package-urls/companion-package.spec.js +37 -0
  167. package/dist/src/unstable/package-urls/companion-package.spec.js.map +1 -0
  168. package/dist/src/unstable/package-urls/index.d.ts +4 -0
  169. package/dist/src/unstable/package-urls/index.d.ts.map +1 -0
  170. package/dist/src/unstable/package-urls/index.js +4 -0
  171. package/dist/src/unstable/package-urls/index.js.map +1 -0
  172. package/dist/src/unstable/package-urls/internal.d.ts +6 -0
  173. package/dist/src/unstable/package-urls/internal.d.ts.map +1 -0
  174. package/dist/src/unstable/package-urls/internal.js +14 -0
  175. package/dist/src/unstable/package-urls/internal.js.map +1 -0
  176. package/dist/src/unstable/package-urls/package-identity-purl.d.ts +5 -0
  177. package/dist/src/unstable/package-urls/package-identity-purl.d.ts.map +1 -0
  178. package/dist/src/unstable/package-urls/package-identity-purl.js +26 -0
  179. package/dist/src/unstable/package-urls/package-identity-purl.js.map +1 -0
  180. package/dist/src/unstable/package-urls/package-identity-purl.spec.d.ts +2 -0
  181. package/dist/src/unstable/package-urls/package-identity-purl.spec.d.ts.map +1 -0
  182. package/dist/src/unstable/package-urls/package-identity-purl.spec.js +33 -0
  183. package/dist/src/unstable/package-urls/package-identity-purl.spec.js.map +1 -0
  184. package/dist/src/unstable/package-urls/vers-range.d.ts +32 -0
  185. package/dist/src/unstable/package-urls/vers-range.d.ts.map +1 -0
  186. package/dist/src/unstable/package-urls/vers-range.js +164 -0
  187. package/dist/src/unstable/package-urls/vers-range.js.map +1 -0
  188. package/dist/src/unstable/package-urls/vers-range.spec.d.ts +2 -0
  189. package/dist/src/unstable/package-urls/vers-range.spec.d.ts.map +1 -0
  190. package/dist/src/unstable/package-urls/vers-range.spec.js +60 -0
  191. package/dist/src/unstable/package-urls/vers-range.spec.js.map +1 -0
  192. package/dist/src/unstable/packaging/axm-package-meta.d.ts +9 -1
  193. package/dist/src/unstable/packaging/axm-package-meta.d.ts.map +1 -1
  194. package/dist/src/unstable/packaging/axm-package-meta.js +11 -2
  195. package/dist/src/unstable/packaging/axm-package-meta.js.map +1 -1
  196. package/dist/src/unstable/packaging/bazel.js +1 -1
  197. package/dist/src/unstable/packaging/bazel.js.map +1 -1
  198. package/dist/src/unstable/packaging/cargo.d.ts.map +1 -1
  199. package/dist/src/unstable/packaging/cargo.js +44 -10
  200. package/dist/src/unstable/packaging/cargo.js.map +1 -1
  201. package/dist/src/unstable/packaging/cocoapods.js +1 -1
  202. package/dist/src/unstable/packaging/cocoapods.js.map +1 -1
  203. package/dist/src/unstable/packaging/composer.js +1 -1
  204. package/dist/src/unstable/packaging/composer.js.map +1 -1
  205. package/dist/src/unstable/packaging/conan.js +1 -1
  206. package/dist/src/unstable/packaging/conan.js.map +1 -1
  207. package/dist/src/unstable/packaging/conda.js +2 -2
  208. package/dist/src/unstable/packaging/conda.js.map +1 -1
  209. package/dist/src/unstable/packaging/cpan.js +1 -1
  210. package/dist/src/unstable/packaging/cpan.js.map +1 -1
  211. package/dist/src/unstable/packaging/cran.js +1 -1
  212. package/dist/src/unstable/packaging/cran.js.map +1 -1
  213. package/dist/src/unstable/packaging/docker.js +1 -1
  214. package/dist/src/unstable/packaging/docker.js.map +1 -1
  215. package/dist/src/unstable/packaging/gem.d.ts.map +1 -1
  216. package/dist/src/unstable/packaging/gem.js +14 -17
  217. package/dist/src/unstable/packaging/gem.js.map +1 -1
  218. package/dist/src/unstable/packaging/golang.js +1 -1
  219. package/dist/src/unstable/packaging/golang.js.map +1 -1
  220. package/dist/src/unstable/packaging/hackage.js +2 -2
  221. package/dist/src/unstable/packaging/hackage.js.map +1 -1
  222. package/dist/src/unstable/packaging/hex.js +2 -2
  223. package/dist/src/unstable/packaging/hex.js.map +1 -1
  224. package/dist/src/unstable/packaging/huggingface.js +1 -1
  225. package/dist/src/unstable/packaging/huggingface.js.map +1 -1
  226. package/dist/src/unstable/packaging/index.d.ts +1 -1
  227. package/dist/src/unstable/packaging/index.d.ts.map +1 -1
  228. package/dist/src/unstable/packaging/index.js +1 -1
  229. package/dist/src/unstable/packaging/index.js.map +1 -1
  230. package/dist/src/unstable/packaging/jsr.js +1 -1
  231. package/dist/src/unstable/packaging/jsr.js.map +1 -1
  232. package/dist/src/unstable/packaging/julia.d.ts.map +1 -1
  233. package/dist/src/unstable/packaging/julia.js +42 -8
  234. package/dist/src/unstable/packaging/julia.js.map +1 -1
  235. package/dist/src/unstable/packaging/luarocks.js +1 -1
  236. package/dist/src/unstable/packaging/luarocks.js.map +1 -1
  237. package/dist/src/unstable/packaging/maven.js +2 -2
  238. package/dist/src/unstable/packaging/maven.js.map +1 -1
  239. package/dist/src/unstable/packaging/mojo.js +1 -1
  240. package/dist/src/unstable/packaging/mojo.js.map +1 -1
  241. package/dist/src/unstable/packaging/npm.js +1 -1
  242. package/dist/src/unstable/packaging/npm.js.map +1 -1
  243. package/dist/src/unstable/packaging/nuget.js +1 -1
  244. package/dist/src/unstable/packaging/nuget.js.map +1 -1
  245. package/dist/src/unstable/packaging/opam.js +1 -1
  246. package/dist/src/unstable/packaging/opam.js.map +1 -1
  247. package/dist/src/unstable/packaging/pub.d.ts.map +1 -1
  248. package/dist/src/unstable/packaging/pub.js +34 -13
  249. package/dist/src/unstable/packaging/pub.js.map +1 -1
  250. package/dist/src/unstable/packaging/pypi.js +1 -1
  251. package/dist/src/unstable/packaging/pypi.js.map +1 -1
  252. package/dist/src/unstable/packaging/read.d.ts +4 -1
  253. package/dist/src/unstable/packaging/read.d.ts.map +1 -1
  254. package/dist/src/unstable/packaging/swift.js +1 -1
  255. package/dist/src/unstable/packaging/swift.js.map +1 -1
  256. package/dist/src/unstable/packaging/types.d.ts +2 -2
  257. package/dist/src/unstable/packaging/types.d.ts.map +1 -1
  258. package/dist/src/unstable/packaging/zig.js +1 -1
  259. package/dist/src/unstable/packaging/zig.js.map +1 -1
  260. package/dist/src/unstable/packs/dependency-resolution.js +4 -4
  261. package/dist/src/unstable/packs/dependency-resolution.js.map +1 -1
  262. package/dist/src/unstable/packs/expansion.js +1 -1
  263. package/dist/src/unstable/packs/manifest-schema.d.ts +12 -9
  264. package/dist/src/unstable/packs/manifest-schema.d.ts.map +1 -1
  265. package/dist/src/unstable/packs/operations/add-to-pack.js +2 -2
  266. package/dist/src/unstable/packs/operations/install.js +1 -1
  267. package/dist/src/unstable/packs/operations/new-pack.js +1 -1
  268. package/dist/src/unstable/packs/operations/publish.d.ts.map +1 -1
  269. package/dist/src/unstable/packs/operations/publish.js +2 -1
  270. package/dist/src/unstable/packs/operations/publish.js.map +1 -1
  271. package/dist/src/unstable/packs/operations/remove-from-pack.js +2 -2
  272. package/dist/src/unstable/packs/operations/unpack.js +1 -1
  273. package/dist/src/unstable/plan/plan.d.ts +3 -0
  274. package/dist/src/unstable/plan/plan.d.ts.map +1 -1
  275. package/dist/src/unstable/plan/resolve-plan.js +2 -2
  276. package/dist/src/unstable/publish/manifest-policy.d.ts +61 -46
  277. package/dist/src/unstable/publish/manifest-policy.d.ts.map +1 -1
  278. package/dist/src/unstable/publish/manifest-policy.js +75 -5
  279. package/dist/src/unstable/publish/manifest-policy.js.map +1 -1
  280. package/dist/src/unstable/registry/__generated__/registry-client.d.ts +477 -70
  281. package/dist/src/unstable/registry/__generated__/registry-client.d.ts.map +1 -1
  282. package/dist/src/unstable/registry/__generated__/registry-client.js +232 -30
  283. package/dist/src/unstable/registry/__generated__/registry-client.js.map +1 -1
  284. package/dist/src/unstable/registry/client.d.ts +17 -8
  285. package/dist/src/unstable/registry/client.d.ts.map +1 -1
  286. package/dist/src/unstable/registry/client.js.map +1 -1
  287. package/dist/src/unstable/registry/discover-schema.d.ts +53 -61
  288. package/dist/src/unstable/registry/discover-schema.d.ts.map +1 -1
  289. package/dist/src/unstable/registry/discover-schema.js +21 -52
  290. package/dist/src/unstable/registry/discover-schema.js.map +1 -1
  291. package/dist/src/unstable/registry/error-mapping.d.ts +3 -3
  292. package/dist/src/unstable/registry/error-mapping.d.ts.map +1 -1
  293. package/dist/src/unstable/registry/error-mapping.js +10 -3
  294. package/dist/src/unstable/registry/error-mapping.js.map +1 -1
  295. package/dist/src/unstable/registry/index.d.ts +5 -5
  296. package/dist/src/unstable/registry/index.d.ts.map +1 -1
  297. package/dist/src/unstable/registry/index.js +3 -3
  298. package/dist/src/unstable/registry/index.js.map +1 -1
  299. package/dist/src/unstable/registry/local-client.d.ts.map +1 -1
  300. package/dist/src/unstable/registry/local-client.js +99 -44
  301. package/dist/src/unstable/registry/local-client.js.map +1 -1
  302. package/dist/src/unstable/registry/remote-client.d.ts.map +1 -1
  303. package/dist/src/unstable/registry/remote-client.js +89 -129
  304. package/dist/src/unstable/registry/remote-client.js.map +1 -1
  305. package/dist/src/unstable/registry/schema.d.ts +26 -16
  306. package/dist/src/unstable/registry/schema.d.ts.map +1 -1
  307. package/dist/src/unstable/registry/schema.js +14 -1
  308. package/dist/src/unstable/registry/schema.js.map +1 -1
  309. package/dist/src/unstable/registry/translate.d.ts +3 -3
  310. package/dist/src/unstable/registry/translate.d.ts.map +1 -1
  311. package/dist/src/unstable/registry/translate.js +41 -14
  312. package/dist/src/unstable/registry/translate.js.map +1 -1
  313. package/dist/src/unstable/settings/ignored-patterns.js +2 -2
  314. package/dist/src/unstable/skills/manifest-schema.d.ts +12 -9
  315. package/dist/src/unstable/skills/manifest-schema.d.ts.map +1 -1
  316. package/dist/src/unstable/skills/operations/disable.d.ts.map +1 -1
  317. package/dist/src/unstable/skills/operations/disable.js +15 -2
  318. package/dist/src/unstable/skills/operations/disable.js.map +1 -1
  319. package/dist/src/unstable/skills/operations/enable.d.ts.map +1 -1
  320. package/dist/src/unstable/skills/operations/enable.js +18 -2
  321. package/dist/src/unstable/skills/operations/enable.js.map +1 -1
  322. package/dist/src/unstable/skills/operations/install.d.ts +1 -8
  323. package/dist/src/unstable/skills/operations/install.d.ts.map +1 -1
  324. package/dist/src/unstable/skills/operations/install.js +47 -22
  325. package/dist/src/unstable/skills/operations/install.js.map +1 -1
  326. package/dist/src/unstable/skills/operations/new-skill.js +1 -1
  327. package/dist/src/unstable/skills/operations/publish.d.ts.map +1 -1
  328. package/dist/src/unstable/skills/operations/publish.js +4 -3
  329. package/dist/src/unstable/skills/operations/publish.js.map +1 -1
  330. package/dist/src/unstable/skills/operations/uninstall.d.ts.map +1 -1
  331. package/dist/src/unstable/skills/operations/uninstall.js +5 -0
  332. package/dist/src/unstable/skills/operations/uninstall.js.map +1 -1
  333. package/dist/src/unstable/skills/operations/universal-artifact.d.ts +43 -0
  334. package/dist/src/unstable/skills/operations/universal-artifact.d.ts.map +1 -0
  335. package/dist/src/unstable/skills/operations/universal-artifact.js +77 -0
  336. package/dist/src/unstable/skills/operations/universal-artifact.js.map +1 -0
  337. package/dist/src/unstable/skills/registry-ref-builder.d.ts +1 -1
  338. package/dist/src/unstable/skills/registry-ref-builder.d.ts.map +1 -1
  339. package/dist/src/unstable/skills/registry-ref-builder.js +2 -2
  340. package/dist/src/unstable/skills/registry-ref-builder.js.map +1 -1
  341. package/dist/src/unstable/source-resolution/providers/registry/host-provider.d.ts.map +1 -1
  342. package/dist/src/unstable/source-resolution/providers/registry/host-provider.js +3 -3
  343. package/dist/src/unstable/source-resolution/providers/registry/host-provider.js.map +1 -1
  344. package/dist/src/unstable/source-resolution/resolve-identifier.js +5 -5
  345. package/dist/src/unstable/source-resolution/resolve-source-pattern.js +1 -1
  346. package/dist/src/unstable/sources/lock-entry-to-ref.js +5 -5
  347. package/dist/src/unstable/sources/lock-entry-to-ref.js.map +1 -1
  348. package/dist/src/unstable/subagents/manager.js +1 -1
  349. package/dist/src/unstable/subagents/manifest-schema.d.ts +12 -9
  350. package/dist/src/unstable/subagents/manifest-schema.d.ts.map +1 -1
  351. package/dist/src/unstable/subagents/operations/disable.js +1 -1
  352. package/dist/src/unstable/subagents/operations/enable.js +2 -2
  353. package/dist/src/unstable/subagents/operations/publish.d.ts.map +1 -1
  354. package/dist/src/unstable/subagents/operations/publish.js +5 -4
  355. package/dist/src/unstable/subagents/operations/publish.js.map +1 -1
  356. package/dist/src/unstable/subagents/registry-ref-builder.d.ts +1 -1
  357. package/dist/src/unstable/subagents/registry-ref-builder.d.ts.map +1 -1
  358. package/dist/src/unstable/subagents/registry-ref-builder.js +2 -2
  359. package/dist/src/unstable/subagents/registry-ref-builder.js.map +1 -1
  360. package/dist/src/unstable/subagents/subagent-content.js +4 -4
  361. package/dist/src/unstable/version-resolution/version-resolution.js +5 -5
  362. package/dist/src/unstable/workspace/configured-entry-resolution/resolve.js +13 -13
  363. package/dist/src/unstable/workspace/initialization.d.ts +16 -16
  364. package/dist/src/unstable/workspace/initialization.js +1 -1
  365. package/dist/src/unstable/workspace/service.d.ts +78 -22
  366. package/dist/src/unstable/workspace/service.d.ts.map +1 -1
  367. package/dist/src/unstable/workspace/service.js +2 -2
  368. package/dist/src/unstable/workspace/version-currency/test-stubs.js +1 -1
  369. package/dist/src/unstable/workspace/version-currency/test-stubs.js.map +1 -1
  370. package/package.json +11 -4
  371. package/site-content/__generated__/schemas/axm-lock.schema.json +98 -0
  372. package/site-content/__generated__/schemas/axm-package-meta.schema.json +35 -8
  373. package/site-content/__generated__/schemas/command.schema.json +35 -8
  374. package/site-content/__generated__/schemas/mcp-server.schema.json +35 -8
  375. package/site-content/__generated__/schemas/pack.schema.json +35 -8
  376. package/site-content/__generated__/schemas/skill.schema.json +35 -8
  377. package/site-content/__generated__/schemas/subagent.schema.json +35 -8
  378. package/dist/src/unstable/cli-runtime/breadcrumb.d.ts +0 -7
  379. package/dist/src/unstable/cli-runtime/breadcrumb.d.ts.map +0 -1
  380. package/dist/src/unstable/cli-runtime/breadcrumb.js +0 -15
  381. package/dist/src/unstable/cli-runtime/breadcrumb.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"registry-ref-builder.d.ts","sourceRoot":"","sources":["../../../../src/unstable/mcp-servers/registry-ref-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+CAA+C,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,eAAO,MAAM,yBAAyB,GACpC,OAAO,MAAM,EACb,MAAM,aAAa,EACnB,SAAS,OAAO,EAChB,QAAQ,cAAc,EACtB,mBAAmB,aAAa,CAAC,eAAe,CAAC,KAChD,oBAUD,CAAC"}
1
+ {"version":3,"file":"registry-ref-builder.d.ts","sourceRoot":"","sources":["../../../../src/unstable/mcp-servers/registry-ref-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+CAA+C,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,eAAO,MAAM,yBAAyB,GACpC,OAAO,MAAM,EACb,MAAM,aAAa,EACnB,SAAS,OAAO,EAChB,QAAQ,cAAc,EACtB,UAAU,aAAa,CAAC,eAAe,CAAC,KACvC,oBAUD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import * as Option from "effect/Option";
2
- export const buildRegistryMcpServerRef = (owner, name, version, source, companionPackages) => ({
2
+ export const buildRegistryMcpServerRef = (owner, name, version, source, packages) => ({
3
3
  type: "mcp-server",
4
4
  refType: "registry",
5
5
  server: { name },
@@ -8,6 +8,6 @@ export const buildRegistryMcpServerRef = (owner, name, version, source, companio
8
8
  name,
9
9
  version,
10
10
  integrity: Option.none(),
11
- companionPackages,
11
+ packages,
12
12
  });
13
13
  //# sourceMappingURL=registry-ref-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-ref-builder.js","sourceRoot":"","sources":["../../../../src/unstable/mcp-servers/registry-ref-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,KAAa,EACb,IAAmB,EACnB,OAAgB,EAChB,MAAsB,EACtB,iBAAiD,EAC3B,EAAE,CAAC,CAAC;IAC1B,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,EAAE,IAAI,EAAE;IAChB,MAAM;IACN,KAAK;IACL,IAAI;IACJ,OAAO;IACP,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE;IACxB,iBAAiB;CAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"registry-ref-builder.js","sourceRoot":"","sources":["../../../../src/unstable/mcp-servers/registry-ref-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,KAAa,EACb,IAAmB,EACnB,OAAgB,EAChB,MAAsB,EACtB,QAAwC,EAClB,EAAE,CAAC,CAAC;IAC1B,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,EAAE,IAAI,EAAE;IAChB,MAAM;IACN,KAAK;IACL,IAAI;IACJ,OAAO;IACP,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE;IACxB,QAAQ;CACT,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import * as Schema from "effect/Schema";
2
+ export declare const CompanionPackageSchema: Schema.Struct<{
3
+ readonly purl: Schema.brand<Schema.NonEmptyString, "PackageIdentityPurl">;
4
+ readonly versionRange: Schema.optional<Schema.brand<Schema.decodeTo<Schema.toType<Schema.Struct<{
5
+ readonly raw: Schema.NonEmptyString;
6
+ readonly scheme: Schema.NonEmptyString;
7
+ readonly constraints: Schema.$Array<Schema.Struct<{
8
+ readonly comparator: Schema.Literals<readonly ["=", "!=", "<", "<=", ">", ">="]>;
9
+ readonly version: Schema.NonEmptyString;
10
+ }>>;
11
+ }>>, Schema.NonEmptyString, never, never>, "VersRange">>;
12
+ }>;
13
+ export type CompanionPackage = Schema.Schema.Type<typeof CompanionPackageSchema>;
14
+ //# sourceMappingURL=companion-package.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companion-package.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/companion-package.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AA0CxC,eAAO,MAAM,sBAAsB;;;;;;;;;;EAQlC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,41 @@
1
+ import * as Schema from "effect/Schema";
2
+ import { parsePurlIdentity } from "./internal.js";
3
+ import { PackageIdentityPurlSchema } from "./package-identity-purl.js";
4
+ import { splitVersAtScheme, VersRangeSchema } from "./vers-range.js";
5
+ const CompanionPackageShapeSchema = Schema.Struct({
6
+ purl: PackageIdentityPurlSchema,
7
+ versionRange: Schema.optional(VersRangeSchema),
8
+ }).annotate({
9
+ identifier: "CompanionPackageShape",
10
+ title: "Companion Package",
11
+ description: "A companion package purl identity with an optional VERS compatibility range.",
12
+ });
13
+ const validateCompanionPackage = (value) => {
14
+ if (value.versionRange === undefined) {
15
+ return undefined;
16
+ }
17
+ const parsed = parsePurlIdentity(value.purl);
18
+ if (typeof parsed === "string") {
19
+ return parsed;
20
+ }
21
+ let versionRangeScheme;
22
+ if (typeof value.versionRange === "string") {
23
+ const split = splitVersAtScheme(value.versionRange);
24
+ if (typeof split === "string") {
25
+ return split;
26
+ }
27
+ versionRangeScheme = split.scheme;
28
+ }
29
+ else {
30
+ versionRangeScheme = value.versionRange.scheme;
31
+ }
32
+ return parsed.type === versionRangeScheme
33
+ ? undefined
34
+ : `Companion package purl ecosystem '${parsed.type}' must match VERS scheme '${versionRangeScheme}'.`;
35
+ };
36
+ export const CompanionPackageSchema = CompanionPackageShapeSchema.pipe(Schema.check(Schema.makeFilter(validateCompanionPackage)), Schema.annotate({
37
+ identifier: "CompanionPackage",
38
+ title: "Companion Package",
39
+ description: "A companion package declaration. The purl is an identity-only Package URL; versionRange is an optional VERS expression whose scheme must match the purl ecosystem.",
40
+ }));
41
+ //# sourceMappingURL=companion-package.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companion-package.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/companion-package.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAErE,MAAM,2BAA2B,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,yBAAyB;IAC/B,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;CAC/C,CAAC,CAAC,QAAQ,CAAC;IACV,UAAU,EAAE,uBAAuB;IACnC,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EAAE,8EAA8E;CAC5F,CAAC,CAAC;AAIH,MAAM,wBAAwB,GAAG,CAAC,KAA4B,EAAsB,EAAE;IACpF,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,kBAA0B,CAAC;IAC/B,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,kBAAkB,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;IACjD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,KAAK,kBAAkB;QACvC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,qCAAqC,MAAM,CAAC,IAAI,6BAA6B,kBAAkB,IAAI,CAAC;AAC1G,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,2BAA2B,CAAC,IAAI,CACpE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,EACzD,MAAM,CAAC,QAAQ,CAAC;IACd,UAAU,EAAE,kBAAkB;IAC9B,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EACT,oKAAoK;CACvK,CAAC,CACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=companion-package.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companion-package.spec.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/companion-package.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import * as Result from "effect/Result";
2
+ import * as Schema from "effect/Schema";
3
+ import { describe, expect, it } from "vitest";
4
+ import { CompanionPackageSchema } from "./companion-package.js";
5
+ describe("CompanionPackageSchema", () => {
6
+ const decode = Schema.decodeUnknownResult(CompanionPackageSchema);
7
+ it("accepts an identity-only companion package", () => {
8
+ const result = decode({ purl: "pkg:npm/example" });
9
+ expect(Result.isSuccess(result)).toBe(true);
10
+ if (Result.isSuccess(result)) {
11
+ expect(result.success.purl).toBe("pkg:npm/example");
12
+ expect(result.success.versionRange).toBeUndefined();
13
+ }
14
+ });
15
+ it("accepts a matching purl ecosystem and VERS scheme", () => {
16
+ const result = decode({
17
+ purl: "pkg:npm/example",
18
+ versionRange: "vers:npm/>=1.0.0",
19
+ });
20
+ expect(Result.isSuccess(result)).toBe(true);
21
+ if (Result.isSuccess(result)) {
22
+ expect(result.success.versionRange?.scheme).toBe("npm");
23
+ }
24
+ });
25
+ it("rejects a mismatched purl ecosystem and VERS scheme", () => {
26
+ const result = decode({
27
+ purl: "pkg:pypi/example",
28
+ versionRange: "vers:npm/>=1.0.0",
29
+ });
30
+ expect(Result.isFailure(result)).toBe(true);
31
+ if (Result.isFailure(result)) {
32
+ expect(String(result.failure)).toContain("pypi");
33
+ expect(String(result.failure)).toContain("npm");
34
+ }
35
+ });
36
+ });
37
+ //# sourceMappingURL=companion-package.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"companion-package.spec.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/companion-package.spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;IAElE,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAEnD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,aAAa,EAAE,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,CAAC;YACpB,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,kBAAkB;SACjC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC;YACpB,IAAI,EAAE,kBAAkB;YACxB,YAAY,EAAE,kBAAkB;SACjC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { CompanionPackageSchema, type CompanionPackage } from "./companion-package.js";
2
+ export { PACKAGE_IDENTITY_PURL_DESCRIPTION, PackageIdentityPurlSchema, type PackageIdentityPurl, } from "./package-identity-purl.js";
3
+ export { VersComparatorSchema, VersConstraintSchema, VersRangeSchema, parseVersRange, splitVersAtScheme, type VersComparator, type VersConstraint, type VersRange, } from "./vers-range.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAEvF,OAAO,EACL,iCAAiC,EACjC,yBAAyB,EACzB,KAAK,mBAAmB,GACzB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,SAAS,GACf,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { CompanionPackageSchema } from "./companion-package.js";
2
+ export { PACKAGE_IDENTITY_PURL_DESCRIPTION, PackageIdentityPurlSchema, } from "./package-identity-purl.js";
3
+ export { VersComparatorSchema, VersConstraintSchema, VersRangeSchema, parseVersRange, splitVersAtScheme, } from "./vers-range.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,wBAAwB,CAAC;AAEvF,OAAO,EACL,iCAAiC,EACjC,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,iBAAiB,GAIlB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface ParsedPurlIdentity {
2
+ readonly type: string;
3
+ readonly version: string | undefined;
4
+ }
5
+ export declare const parsePurlIdentity: (value: string) => ParsedPurlIdentity | string;
6
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/internal.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,KAAG,kBAAkB,GAAG,MAUtE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { PackageURL } from "packageurl-js";
2
+ export const parsePurlIdentity = (value) => {
3
+ try {
4
+ const parsed = PackageURL.fromString(value);
5
+ return {
6
+ type: parsed.type,
7
+ version: parsed.version ?? undefined,
8
+ };
9
+ }
10
+ catch {
11
+ return `Expected valid purl, got: ${value}`;
12
+ }
13
+ };
14
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAO3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAA+B,EAAE;IAC9E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,SAAS;SACrC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,6BAA6B,KAAK,EAAE,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import * as Schema from "effect/Schema";
2
+ export declare const PACKAGE_IDENTITY_PURL_DESCRIPTION = "A Package URL (purl) identity for a companion package. Companion package purls are identities, not pins: omit the purl @version segment and put compatibility constraints in versionRange.";
3
+ export declare const PackageIdentityPurlSchema: Schema.brand<Schema.NonEmptyString, "PackageIdentityPurl">;
4
+ export type PackageIdentityPurl = Schema.Schema.Type<typeof PackageIdentityPurlSchema>;
5
+ //# sourceMappingURL=package-identity-purl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-identity-purl.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/package-identity-purl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,eAAO,MAAM,iCAAiC,+LACgJ,CAAC;AAe/L,eAAO,MAAM,yBAAyB,4DAkBrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import * as Schema from "effect/Schema";
2
+ import { parsePurlIdentity } from "./internal.js";
3
+ export const PACKAGE_IDENTITY_PURL_DESCRIPTION = "A Package URL (purl) identity for a companion package. Companion package purls are identities, not pins: omit the purl @version segment and put compatibility constraints in versionRange.";
4
+ const PACKAGE_URL_PATTERN = /^[Pp][Kk][Gg]:[a-zA-Z][a-zA-Z0-9.+-]*\/.+$/;
5
+ const validatePackageIdentityPurl = (value) => {
6
+ const parsed = parsePurlIdentity(value);
7
+ if (typeof parsed === "string") {
8
+ return `Expected valid companion package purl, got: ${value}`;
9
+ }
10
+ return parsed.version === undefined
11
+ ? undefined
12
+ : `Companion package purls are identities, not pins. Move ${value}'s version into versionRange.`;
13
+ };
14
+ export const PackageIdentityPurlSchema = Schema.NonEmptyString.pipe(Schema.check(Schema.isPattern(PACKAGE_URL_PATTERN, {
15
+ title: "Package Identity Purl",
16
+ description: PACKAGE_IDENTITY_PURL_DESCRIPTION,
17
+ examples: ["pkg:npm/react", "pkg:pypi/requests", "pkg:cargo/serde"],
18
+ message: "Expected a Package URL like pkg:npm/react",
19
+ })), Schema.check(Schema.makeFilter(validatePackageIdentityPurl)), Schema.annotate({
20
+ identifier: "PackageIdentityPurl",
21
+ title: "Package Identity Purl",
22
+ description: PACKAGE_IDENTITY_PURL_DESCRIPTION,
23
+ examples: ["pkg:npm/react", "pkg:pypi/requests", "pkg:cargo/serde"],
24
+ message: "Companion package purls are identities, not pins. Use versionRange for versions.",
25
+ }), Schema.brand("PackageIdentityPurl"));
26
+ //# sourceMappingURL=package-identity-purl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-identity-purl.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/package-identity-purl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,CAAC,MAAM,iCAAiC,GAC5C,4LAA4L,CAAC;AAE/L,MAAM,mBAAmB,GAAG,4CAA4C,CAAC;AAEzE,MAAM,2BAA2B,GAAG,CAAC,KAAa,EAAsB,EAAE;IACxE,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,+CAA+C,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,KAAK,SAAS;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,0DAA0D,KAAK,+BAA+B,CAAC;AACrG,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CACjE,MAAM,CAAC,KAAK,CACV,MAAM,CAAC,SAAS,CAAC,mBAAmB,EAAE;IACpC,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,iCAAiC;IAC9C,QAAQ,EAAE,CAAC,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,CAAC;IACnE,OAAO,EAAE,2CAA2C;CACrD,CAAC,CACH,EACD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC,EAC5D,MAAM,CAAC,QAAQ,CAAC;IACd,UAAU,EAAE,qBAAqB;IACjC,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,iCAAiC;IAC9C,QAAQ,EAAE,CAAC,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,CAAC;IACnE,OAAO,EAAE,kFAAkF;CAC5F,CAAC,EACF,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CACpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=package-identity-purl.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-identity-purl.spec.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/package-identity-purl.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ import * as Result from "effect/Result";
2
+ import * as Schema from "effect/Schema";
3
+ import * as SchemaAST from "effect/SchemaAST";
4
+ import { describe, expect, it } from "vitest";
5
+ import { PackageIdentityPurlSchema } from "./package-identity-purl.js";
6
+ describe("PackageIdentityPurlSchema", () => {
7
+ const decode = Schema.decodeUnknownResult(PackageIdentityPurlSchema);
8
+ it("decodes a bare purl", () => {
9
+ const result = decode("pkg:npm/example");
10
+ expect(Result.isSuccess(result)).toBe(true);
11
+ if (Result.isSuccess(result)) {
12
+ expect(result.success).toBe("pkg:npm/example");
13
+ }
14
+ });
15
+ it("rejects a purl with an @version and points authors to versionRange", () => {
16
+ const result = decode("pkg:npm/example@1.2.3");
17
+ expect(Result.isFailure(result)).toBe(true);
18
+ if (Result.isFailure(result)) {
19
+ expect(String(result.failure)).toContain("Companion package purls are identities");
20
+ expect(String(result.failure)).toContain("versionRange");
21
+ }
22
+ const annotations = SchemaAST.resolve(PackageIdentityPurlSchema.ast);
23
+ expect(annotations?.["description"]).toContain("versionRange");
24
+ });
25
+ it("preserves namespace while rejecting only the version segment", () => {
26
+ const result = decode("pkg:npm/%40scope/example");
27
+ expect(Result.isSuccess(result)).toBe(true);
28
+ if (Result.isSuccess(result)) {
29
+ expect(result.success).toBe("pkg:npm/%40scope/example");
30
+ }
31
+ });
32
+ });
33
+ //# sourceMappingURL=package-identity-purl.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-identity-purl.spec.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/package-identity-purl.spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEvE,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;IAErE,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAEzC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,MAAM,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAE/C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;QACrE,MAAM,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,MAAM,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAElD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,32 @@
1
+ import * as Schema from "effect/Schema";
2
+ export declare const VersComparatorSchema: Schema.Literals<readonly ["=", "!=", "<", "<=", ">", ">="]>;
3
+ export type VersComparator = Schema.Schema.Type<typeof VersComparatorSchema>;
4
+ export declare const VersConstraintSchema: Schema.Struct<{
5
+ readonly comparator: Schema.Literals<readonly ["=", "!=", "<", "<=", ">", ">="]>;
6
+ readonly version: Schema.NonEmptyString;
7
+ }>;
8
+ export type VersConstraint = Schema.Schema.Type<typeof VersConstraintSchema>;
9
+ declare const VersRangeDecodedSchema: Schema.Struct<{
10
+ readonly raw: Schema.NonEmptyString;
11
+ readonly scheme: Schema.NonEmptyString;
12
+ readonly constraints: Schema.$Array<Schema.Struct<{
13
+ readonly comparator: Schema.Literals<readonly ["=", "!=", "<", "<=", ">", ">="]>;
14
+ readonly version: Schema.NonEmptyString;
15
+ }>>;
16
+ }>;
17
+ export declare const splitVersAtScheme: (value: string) => {
18
+ readonly scheme: string;
19
+ readonly constraintsText: string;
20
+ } | string;
21
+ export declare const parseVersRange: (value: string) => Schema.Schema.Type<typeof VersRangeDecodedSchema> | string;
22
+ export declare const VersRangeSchema: Schema.brand<Schema.decodeTo<Schema.toType<Schema.Struct<{
23
+ readonly raw: Schema.NonEmptyString;
24
+ readonly scheme: Schema.NonEmptyString;
25
+ readonly constraints: Schema.$Array<Schema.Struct<{
26
+ readonly comparator: Schema.Literals<readonly ["=", "!=", "<", "<=", ">", ">="]>;
27
+ readonly version: Schema.NonEmptyString;
28
+ }>>;
29
+ }>>, Schema.NonEmptyString, never, never>, "VersRange">;
30
+ export type VersRange = Schema.Schema.Type<typeof VersRangeSchema>;
31
+ export {};
32
+ //# sourceMappingURL=vers-range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vers-range.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/vers-range.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAgDxC,eAAO,MAAM,oBAAoB,6DAI/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE7E,eAAO,MAAM,oBAAoB;;;EAO/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE7E,QAAA,MAAM,sBAAsB;;;;;;;EAQ1B,CAAC;AAgCH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,MAAM,KACZ;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAAG,MAkBlE,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,KACZ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,sBAAsB,CAAC,GAAG,MAyCtD,CAAC;AASF,eAAO,MAAM,eAAe;;;;;;;uDAmB3B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -0,0 +1,164 @@
1
+ import * as Effect from "effect/Effect";
2
+ import * as Option from "effect/Option";
3
+ import * as Schema from "effect/Schema";
4
+ import * as SchemaIssue from "effect/SchemaIssue";
5
+ import * as SchemaTransformation from "effect/SchemaTransformation";
6
+ const VERS_PREFIX = "vers:";
7
+ const SENTINEL_SCHEMES = [
8
+ "all",
9
+ "none",
10
+ "semver",
11
+ "generic",
12
+ "intdot",
13
+ "lexicographic",
14
+ "datetime",
15
+ ];
16
+ const CONCRETE_ECOSYSTEM_SCHEMES = [
17
+ "apk",
18
+ "bazel",
19
+ "cargo",
20
+ "cocoapods",
21
+ "composer",
22
+ "conan",
23
+ "conda",
24
+ "cpan",
25
+ "cran",
26
+ "deb",
27
+ "docker",
28
+ "gem",
29
+ "golang",
30
+ "hackage",
31
+ "hex",
32
+ "huggingface",
33
+ "julia",
34
+ "jsr",
35
+ "luarocks",
36
+ "maven",
37
+ "mojo",
38
+ "npm",
39
+ "nuget",
40
+ "opam",
41
+ "pub",
42
+ "pypi",
43
+ "rpm",
44
+ "swift",
45
+ "zig",
46
+ ];
47
+ export const VersComparatorSchema = Schema.Literals(["=", "!=", "<", "<=", ">", ">="]).annotate({
48
+ identifier: "VersComparator",
49
+ title: "VERS Comparator",
50
+ description: "A comparator inside an AgentXM-supported VERS constraint.",
51
+ });
52
+ export const VersConstraintSchema = Schema.Struct({
53
+ comparator: VersComparatorSchema,
54
+ version: Schema.NonEmptyString,
55
+ }).annotate({
56
+ identifier: "VersConstraint",
57
+ title: "VERS Constraint",
58
+ description: "A parsed comparator and version from an AgentXM-supported VERS range.",
59
+ });
60
+ const VersRangeDecodedSchema = Schema.Struct({
61
+ raw: Schema.NonEmptyString,
62
+ scheme: Schema.NonEmptyString,
63
+ constraints: Schema.Array(VersConstraintSchema),
64
+ }).annotate({
65
+ identifier: "VersRangeDecoded",
66
+ title: "VERS Range",
67
+ description: "A decoded VERS range with its raw value, ecosystem scheme, and constraints.",
68
+ });
69
+ const isSentinelScheme = (scheme) => SENTINEL_SCHEMES.some((candidate) => candidate === scheme);
70
+ const isConcreteEcosystemScheme = (scheme) => CONCRETE_ECOSYSTEM_SCHEMES.some((candidate) => candidate === scheme);
71
+ const parseComparator = (constraint) => {
72
+ if (constraint.startsWith(">="))
73
+ return ">=";
74
+ if (constraint.startsWith("<="))
75
+ return "<=";
76
+ if (constraint.startsWith("!="))
77
+ return "!=";
78
+ if (constraint.startsWith(">"))
79
+ return ">";
80
+ if (constraint.startsWith("<"))
81
+ return "<";
82
+ if (constraint.startsWith("="))
83
+ return "=";
84
+ return undefined;
85
+ };
86
+ const parseConstraint = (constraint) => {
87
+ const comparator = parseComparator(constraint);
88
+ if (comparator === undefined) {
89
+ return `Expected VERS constraint to start with one of =, !=, <, <=, >, or >=, got: ${constraint}`;
90
+ }
91
+ const version = constraint.slice(comparator.length);
92
+ if (version.length === 0) {
93
+ return `Expected VERS constraint version after ${comparator}`;
94
+ }
95
+ return { comparator, version };
96
+ };
97
+ export const splitVersAtScheme = (value) => {
98
+ if (!value.startsWith(VERS_PREFIX)) {
99
+ return "Expected VERS range to start with the vers: prefix.";
100
+ }
101
+ const withoutPrefix = value.slice(VERS_PREFIX.length);
102
+ const slashIndex = withoutPrefix.indexOf("/");
103
+ if (slashIndex <= 0) {
104
+ return "Expected VERS range to include a non-empty scheme before '/'.";
105
+ }
106
+ const scheme = withoutPrefix.slice(0, slashIndex);
107
+ const constraintsText = withoutPrefix.slice(slashIndex + 1);
108
+ if (constraintsText.length === 0) {
109
+ return "Expected VERS range to include at least one constraint after '/'.";
110
+ }
111
+ return { scheme, constraintsText };
112
+ };
113
+ export const parseVersRange = (value) => {
114
+ if (value.includes("%")) {
115
+ return "VERS percent-encoded values are not supported yet.";
116
+ }
117
+ const split = splitVersAtScheme(value);
118
+ if (typeof split === "string") {
119
+ return split;
120
+ }
121
+ if (isSentinelScheme(split.scheme)) {
122
+ return `VERS scheme '${split.scheme}' is a generic scheme; generic schemes are not accepted for companion packages.`;
123
+ }
124
+ if (!isConcreteEcosystemScheme(split.scheme)) {
125
+ return `VERS scheme '${split.scheme}' is not a known concrete package ecosystem.`;
126
+ }
127
+ if (split.constraintsText === "*") {
128
+ return 'omit versionRange to express "any version"; wildcard-only VERS ranges are not accepted.';
129
+ }
130
+ const constraints = [];
131
+ for (const constraintText of split.constraintsText.split("|")) {
132
+ if (constraintText.length === 0) {
133
+ return "Expected VERS range constraints to be non-empty.";
134
+ }
135
+ const constraint = parseConstraint(constraintText);
136
+ if (typeof constraint === "string") {
137
+ return constraint;
138
+ }
139
+ constraints.push(constraint);
140
+ }
141
+ return {
142
+ raw: value,
143
+ scheme: split.scheme,
144
+ constraints,
145
+ };
146
+ };
147
+ const parseVersRangeEffect = (value) => {
148
+ const result = parseVersRange(value);
149
+ return typeof result === "string"
150
+ ? Effect.fail(new SchemaIssue.Forbidden(Option.some(value), { message: result }))
151
+ : Effect.succeed(result);
152
+ };
153
+ export const VersRangeSchema = Schema.NonEmptyString.pipe(Schema.decodeTo(Schema.toType(VersRangeDecodedSchema), SchemaTransformation.transformOrFail({
154
+ decode: parseVersRangeEffect,
155
+ encode: (value) => Effect.succeed(value.raw),
156
+ })), Schema.annotate({
157
+ identifier: "VersRange",
158
+ title: "VERS Range",
159
+ description: "A VERS version range like vers:npm/>=1.0.0|<2.0.0. Use a concrete package ecosystem scheme matching the companion purl type. Omit versionRange for any-version compatibility.",
160
+ message: "Expected a VERS range like vers:npm/>=1.0.0|<2.0.0",
161
+ }), Schema.annotateEncoded({
162
+ examples: ["vers:npm/>=18.0.0|<19.0.0", "vers:pypi/>=2.31.0", "vers:cargo/>=1.0.0"],
163
+ }), Schema.brand("VersRange"));
164
+ //# sourceMappingURL=vers-range.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vers-range.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/vers-range.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vers-range.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vers-range.spec.d.ts","sourceRoot":"","sources":["../../../../src/unstable/package-urls/vers-range.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,60 @@
1
+ import * as Result from "effect/Result";
2
+ import * as Schema from "effect/Schema";
3
+ import { describe, expect, it } from "vitest";
4
+ import { VersRangeSchema } from "./vers-range.js";
5
+ describe("VersRangeSchema", () => {
6
+ const decode = Schema.decodeUnknownResult(VersRangeSchema);
7
+ it("decodes a well-formed VERS range with scheme and constraints", () => {
8
+ const result = decode("vers:npm/>=1.0.0|<2.0.0");
9
+ expect(Result.isSuccess(result)).toBe(true);
10
+ if (Result.isSuccess(result)) {
11
+ expect(result.success.raw).toBe("vers:npm/>=1.0.0|<2.0.0");
12
+ expect(result.success.scheme).toBe("npm");
13
+ expect(result.success.constraints).toEqual([
14
+ { comparator: ">=", version: "1.0.0" },
15
+ { comparator: "<", version: "2.0.0" },
16
+ ]);
17
+ }
18
+ });
19
+ it("rejects an empty constraint list", () => {
20
+ const result = decode("vers:npm/");
21
+ expect(Result.isFailure(result)).toBe(true);
22
+ });
23
+ it("rejects a missing vers prefix", () => {
24
+ const result = decode(">=1.0.0|<2.0.0");
25
+ expect(Result.isFailure(result)).toBe(true);
26
+ if (Result.isFailure(result)) {
27
+ expect(String(result.failure)).toContain("vers:");
28
+ }
29
+ });
30
+ it("rejects sentinel schemes", () => {
31
+ const result = decode("vers:semver/>=1.0.0");
32
+ expect(Result.isFailure(result)).toBe(true);
33
+ if (Result.isFailure(result)) {
34
+ expect(String(result.failure)).toContain("semver");
35
+ expect(String(result.failure)).toContain("generic schemes");
36
+ }
37
+ });
38
+ it("accepts concrete ecosystem schemes", () => {
39
+ const result = decode("vers:pypi/>=1.0.0");
40
+ expect(Result.isSuccess(result)).toBe(true);
41
+ if (Result.isSuccess(result)) {
42
+ expect(result.success.scheme).toBe("pypi");
43
+ }
44
+ });
45
+ it("rejects wildcard-only ranges", () => {
46
+ const result = decode("vers:npm/*");
47
+ expect(Result.isFailure(result)).toBe(true);
48
+ if (Result.isFailure(result)) {
49
+ expect(String(result.failure)).toContain("omit versionRange");
50
+ }
51
+ });
52
+ it("rejects percent-encoded values", () => {
53
+ const result = decode("vers:npm/%3E%3D1.0.0");
54
+ expect(Result.isFailure(result)).toBe(true);
55
+ if (Result.isFailure(result)) {
56
+ expect(String(result.failure)).toContain("percent-encoded");
57
+ }
58
+ });
59
+ });
60
+ //# sourceMappingURL=vers-range.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vers-range.spec.js","sourceRoot":"","sources":["../../../../src/unstable/package-urls/vers-range.spec.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,11 @@
4
4
  * @experimental This API is unstable and may change without notice.
5
5
  */
6
6
  import * as Schema from "effect/Schema";
7
+ export declare const PackageExtensionDeclarationSchema: Schema.Struct<{
8
+ readonly ref: Schema.String;
9
+ readonly versionRange: Schema.optional<Schema.NullOr<Schema.brand<Schema.NonEmptyString, "VersionRange">>>;
10
+ }>;
11
+ export type PackageExtensionDeclaration = Schema.Schema.Type<typeof PackageExtensionDeclarationSchema>;
7
12
  /**
8
13
  * Schema for the axm package metadata file that library authors ship
9
14
  * to surface recommended axm extensions for their package.
@@ -12,7 +17,10 @@ import * as Schema from "effect/Schema";
12
17
  */
13
18
  export declare const AxmPackageMetaSchema: Schema.Struct<{
14
19
  readonly $schema: Schema.optional<Schema.String>;
15
- readonly recommendedExtensions: Schema.$Array<Schema.brand<Schema.NonEmptyString, "ExtensionSpec">>;
20
+ readonly extensions: Schema.$Array<Schema.Struct<{
21
+ readonly ref: Schema.String;
22
+ readonly versionRange: Schema.optional<Schema.NullOr<Schema.brand<Schema.NonEmptyString, "VersionRange">>>;
23
+ }>>;
16
24
  }>;
17
25
  /**
18
26
  * Inferred type for AxmPackageMeta schema.
@@ -1 +1 @@
1
- {"version":3,"file":"axm-package-meta.d.ts","sourceRoot":"","sources":["../../../../src/unstable/packaging/axm-package-meta.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;EAO/B,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"axm-package-meta.d.ts","sourceRoot":"","sources":["../../../../src/unstable/packaging/axm-package-meta.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,eAAO,MAAM,iCAAiC;;;EAQ5C,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC1D,OAAO,iCAAiC,CACzC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;EAO/B,CAAC;AAEH;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC"}