@skaile/workspaces 1.3.0 → 1.5.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 (269) hide show
  1. package/CHANGELOG.md +395 -0
  2. package/README.md +1 -1
  3. package/dist/app-sdk/index.d.ts +2 -0
  4. package/dist/app-sdk/index.js +481 -0
  5. package/dist/app-sdk/index.js.map +1 -0
  6. package/dist/app-sdk/src/app.d.ts +152 -0
  7. package/dist/app-sdk/src/app.d.ts.map +1 -0
  8. package/dist/app-sdk/src/connection-params.d.ts +117 -0
  9. package/dist/app-sdk/src/connection-params.d.ts.map +1 -0
  10. package/dist/app-sdk/src/define-app-capability.d.ts +139 -0
  11. package/dist/app-sdk/src/define-app-capability.d.ts.map +1 -0
  12. package/dist/app-sdk/src/index.d.ts +17 -0
  13. package/dist/app-sdk/src/index.d.ts.map +1 -0
  14. package/dist/app-sdk/src/logger.d.ts +26 -0
  15. package/dist/app-sdk/src/logger.d.ts.map +1 -0
  16. package/dist/app-sdk/src/transport.d.ts +93 -0
  17. package/dist/app-sdk/src/transport.d.ts.map +1 -0
  18. package/dist/app-sdk/src/ws-transport.d.ts +79 -0
  19. package/dist/app-sdk/src/ws-transport.d.ts.map +1 -0
  20. package/dist/{asset-feeds-NEZKG6YS.js → asset-feeds-T35ELX2O.js} +11 -11
  21. package/dist/{asset-feeds-NEZKG6YS.js.map → asset-feeds-T35ELX2O.js.map} +1 -1
  22. package/dist/asset-manager/index.js +15 -10
  23. package/dist/asset-manager/installer.js +9 -9
  24. package/dist/asset-manager/renderers.js +2 -2
  25. package/dist/asset-manager/src/index.d.ts +42 -6
  26. package/dist/asset-manager/src/index.d.ts.map +1 -1
  27. package/dist/bridge/drivers/claude-sdk.js +2 -2
  28. package/dist/bridge/drivers/codex.js +1 -1
  29. package/dist/bridge/drivers/continue.js +2 -2
  30. package/dist/bridge/drivers/echo.js +1 -1
  31. package/dist/bridge/drivers/gemini.js +3 -3
  32. package/dist/bridge/drivers/goose.js +2 -2
  33. package/dist/bridge/drivers/omp.js +1 -1
  34. package/dist/bridge/drivers/opencode.js +2 -2
  35. package/dist/bridge/drivers/qwen.js +3 -3
  36. package/dist/bridge/index.js +3 -3
  37. package/dist/{chunk-YOPSHV7V.js → chunk-2DWXGUZA.js} +3 -3
  38. package/dist/{chunk-YOPSHV7V.js.map → chunk-2DWXGUZA.js.map} +1 -1
  39. package/dist/{chunk-XBG2YDQQ.js → chunk-2ZMO4CFG.js} +3 -3
  40. package/dist/{chunk-XBG2YDQQ.js.map → chunk-2ZMO4CFG.js.map} +1 -1
  41. package/dist/{chunk-OBSSORCE.js → chunk-3CHARYD4.js} +84 -12
  42. package/dist/chunk-3CHARYD4.js.map +1 -0
  43. package/dist/{chunk-SKADPHAM.js → chunk-4N5XR5DQ.js} +2 -2
  44. package/dist/chunk-4N5XR5DQ.js.map +1 -0
  45. package/dist/{chunk-WFEPI5LA.js → chunk-6NR2BEIY.js} +6 -6
  46. package/dist/{chunk-WFEPI5LA.js.map → chunk-6NR2BEIY.js.map} +1 -1
  47. package/dist/{chunk-7CNIRF42.js → chunk-BGIC25VK.js} +26 -15
  48. package/dist/chunk-BGIC25VK.js.map +1 -0
  49. package/dist/{chunk-YXEPZ7LP.js → chunk-CNSNN7N6.js} +6 -6
  50. package/dist/{chunk-YXEPZ7LP.js.map → chunk-CNSNN7N6.js.map} +1 -1
  51. package/dist/{chunk-PSMW5HLX.js → chunk-DMG6NJH7.js} +5 -5
  52. package/dist/{chunk-PSMW5HLX.js.map → chunk-DMG6NJH7.js.map} +1 -1
  53. package/dist/{chunk-P3MJYPZE.js → chunk-FDE7XRQA.js} +57 -9
  54. package/dist/chunk-FDE7XRQA.js.map +1 -0
  55. package/dist/{chunk-K5SD7FSF.js → chunk-HKX5VSWQ.js} +3 -3
  56. package/dist/{chunk-K5SD7FSF.js.map → chunk-HKX5VSWQ.js.map} +1 -1
  57. package/dist/{chunk-AZAS3FKN.js → chunk-HY33RMEA.js} +49 -3
  58. package/dist/chunk-HY33RMEA.js.map +1 -0
  59. package/dist/{chunk-XKARS6EE.js → chunk-IEX5YV4R.js} +3 -3
  60. package/dist/{chunk-XKARS6EE.js.map → chunk-IEX5YV4R.js.map} +1 -1
  61. package/dist/{chunk-GB4SEEK4.js → chunk-IRORTHGA.js} +10 -4
  62. package/dist/chunk-IRORTHGA.js.map +1 -0
  63. package/dist/chunk-J5TI55E7.js +203 -0
  64. package/dist/chunk-J5TI55E7.js.map +1 -0
  65. package/dist/chunk-JIDKX7GC.js +122 -0
  66. package/dist/chunk-JIDKX7GC.js.map +1 -0
  67. package/dist/{chunk-BDUANIAR.js → chunk-KEQ4GLVM.js} +3 -3
  68. package/dist/{chunk-BDUANIAR.js.map → chunk-KEQ4GLVM.js.map} +1 -1
  69. package/dist/{chunk-5XS3BFJS.js → chunk-KMY7HVQ6.js} +3 -3
  70. package/dist/{chunk-5XS3BFJS.js.map → chunk-KMY7HVQ6.js.map} +1 -1
  71. package/dist/{chunk-BZMTR5WW.js → chunk-MZV6WCF3.js} +83 -51
  72. package/dist/chunk-MZV6WCF3.js.map +1 -0
  73. package/dist/{chunk-QK5JDAFF.js → chunk-NKTFEV7Q.js} +4 -4
  74. package/dist/{chunk-QK5JDAFF.js.map → chunk-NKTFEV7Q.js.map} +1 -1
  75. package/dist/{chunk-DZCK7GRW.js → chunk-P4VHQA4N.js} +22 -6
  76. package/dist/chunk-P4VHQA4N.js.map +1 -0
  77. package/dist/{chunk-EVZKWY5J.js → chunk-PK7Q7MC7.js} +5 -4
  78. package/dist/chunk-PK7Q7MC7.js.map +1 -0
  79. package/dist/{chunk-ETYDLXI5.js → chunk-RDYOU6N6.js} +2 -2
  80. package/dist/{chunk-ETYDLXI5.js.map → chunk-RDYOU6N6.js.map} +1 -1
  81. package/dist/{chunk-RHMQPLIK.js → chunk-RSYV7XEN.js} +14 -8
  82. package/dist/chunk-RSYV7XEN.js.map +1 -0
  83. package/dist/{chunk-SUOGVHGJ.js → chunk-TNSCHS4I.js} +2 -2
  84. package/dist/{chunk-SUOGVHGJ.js.map → chunk-TNSCHS4I.js.map} +1 -1
  85. package/dist/{chunk-Z5Z3MYDL.js → chunk-UPZGQZEJ.js} +3 -3
  86. package/dist/{chunk-Z5Z3MYDL.js.map → chunk-UPZGQZEJ.js.map} +1 -1
  87. package/dist/{chunk-RJ3HUSBC.js → chunk-UQ5FK2AB.js} +3 -3
  88. package/dist/{chunk-RJ3HUSBC.js.map → chunk-UQ5FK2AB.js.map} +1 -1
  89. package/dist/{chunk-OUWNTFDG.js → chunk-UQKYT4V6.js} +38 -6
  90. package/dist/chunk-UQKYT4V6.js.map +1 -0
  91. package/dist/chunk-WYGXYGJH.js +688 -0
  92. package/dist/chunk-WYGXYGJH.js.map +1 -0
  93. package/dist/{chunk-TJRWGMD2.js → chunk-ZBZQC5R7.js} +3 -3
  94. package/dist/{chunk-TJRWGMD2.js.map → chunk-ZBZQC5R7.js.map} +1 -1
  95. package/dist/cli/index.js +1022 -374
  96. package/dist/cli/index.js.map +1 -1
  97. package/dist/cli/src/commands/catalog.d.ts +18 -0
  98. package/dist/cli/src/commands/catalog.d.ts.map +1 -1
  99. package/dist/cli/src/commands/library-cmd.d.ts +2 -2
  100. package/dist/cli/src/commands/library-cmd.d.ts.map +1 -1
  101. package/dist/cli/src/commands/library-publish.d.ts +53 -0
  102. package/dist/cli/src/commands/library-publish.d.ts.map +1 -0
  103. package/dist/cli/src/commands/preset-apply.d.ts +59 -0
  104. package/dist/cli/src/commands/preset-apply.d.ts.map +1 -0
  105. package/dist/cli/src/commands/preset-cmd.d.ts +8 -2
  106. package/dist/cli/src/commands/preset-cmd.d.ts.map +1 -1
  107. package/dist/cli/src/commands/preset-export.d.ts +102 -0
  108. package/dist/cli/src/commands/preset-export.d.ts.map +1 -0
  109. package/dist/cli/src/commands/project.d.ts.map +1 -1
  110. package/dist/cli/src/commands/publish-core.d.ts +75 -0
  111. package/dist/cli/src/commands/publish-core.d.ts.map +1 -0
  112. package/dist/cli/src/commands/run.d.ts.map +1 -1
  113. package/dist/cli/src/commands/source-manifest-publish.d.ts +82 -0
  114. package/dist/cli/src/commands/source-manifest-publish.d.ts.map +1 -0
  115. package/dist/cli/src/commands/source-manifest.d.ts +65 -6
  116. package/dist/cli/src/commands/source-manifest.d.ts.map +1 -1
  117. package/dist/cli/src/commands/source.d.ts +13 -0
  118. package/dist/cli/src/commands/source.d.ts.map +1 -1
  119. package/dist/cli/src/commands/store.d.ts.map +1 -1
  120. package/dist/cli/src/commands/why.d.ts +18 -0
  121. package/dist/cli/src/commands/why.d.ts.map +1 -1
  122. package/dist/cli/src/driver-error.d.ts +12 -0
  123. package/dist/cli/src/driver-error.d.ts.map +1 -0
  124. package/dist/cli/src/open-library.d.ts +4 -0
  125. package/dist/cli/src/open-library.d.ts.map +1 -1
  126. package/dist/cli/src/store-auth.d.ts +42 -0
  127. package/dist/cli/src/store-auth.d.ts.map +1 -0
  128. package/dist/cli/src/store-client.d.ts +20 -22
  129. package/dist/cli/src/store-client.d.ts.map +1 -1
  130. package/dist/cli/src/store-publisher.d.ts +91 -0
  131. package/dist/cli/src/store-publisher.d.ts.map +1 -0
  132. package/dist/connectors/config.js +6 -6
  133. package/dist/connectors/index.js +8 -8
  134. package/dist/core/index.js +5 -5
  135. package/dist/core/publish-manifest.js +1 -1
  136. package/dist/core/runtime-assets.js +3 -3
  137. package/dist/core/src/cache-paths.d.ts +17 -0
  138. package/dist/core/src/cache-paths.d.ts.map +1 -1
  139. package/dist/core/src/index.d.ts +2 -2
  140. package/dist/core/src/index.d.ts.map +1 -1
  141. package/dist/core/src/publish-manifest.d.ts.map +1 -1
  142. package/dist/core/src/repo-manager.d.ts +13 -2
  143. package/dist/core/src/repo-manager.d.ts.map +1 -1
  144. package/dist/core/src/walker.d.ts +10 -0
  145. package/dist/core/src/walker.d.ts.map +1 -1
  146. package/dist/core/src/workspace-yaml-editor.d.ts +14 -1
  147. package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
  148. package/dist/core/workspace-config.js +2 -2
  149. package/dist/deploy/index.js +5 -5
  150. package/dist/discovery/index.js +3 -3
  151. package/dist/discovery/src/discover-manifest.d.ts.map +1 -1
  152. package/dist/discovery/src/discover.d.ts +17 -4
  153. package/dist/discovery/src/discover.d.ts.map +1 -1
  154. package/dist/discovery/src/index.d.ts +1 -1
  155. package/dist/discovery/src/index.d.ts.map +1 -1
  156. package/dist/discovery/src/reference-lint.d.ts +7 -0
  157. package/dist/discovery/src/reference-lint.d.ts.map +1 -1
  158. package/dist/discovery/src/source-config.d.ts +28 -0
  159. package/dist/discovery/src/source-config.d.ts.map +1 -1
  160. package/dist/discovery/src/tree-entries.d.ts.map +1 -1
  161. package/dist/{ensure-sources-4BAJGJRK.js → ensure-sources-QDVFUIUP.js} +18 -13
  162. package/dist/ensure-sources-QDVFUIUP.js.map +1 -0
  163. package/dist/factory-assets/connectors/box.js +8 -8
  164. package/dist/factory-assets/connectors/deploy.js +8 -8
  165. package/dist/factory-assets/connectors/devserver.js +8 -8
  166. package/dist/factory-assets/connectors/flow/adapter.js +8 -8
  167. package/dist/factory-assets/connectors/flow/engine/engine.d.ts +4 -1
  168. package/dist/factory-assets/connectors/flow/engine/engine.d.ts.map +1 -1
  169. package/dist/factory-assets/connectors/flow/engine/types.d.ts +41 -6
  170. package/dist/factory-assets/connectors/flow/engine/types.d.ts.map +1 -1
  171. package/dist/factory-assets/connectors/flow/engine.js +6 -6
  172. package/dist/factory-assets/connectors/flow/run-flow.js +9 -9
  173. package/dist/factory-assets/connectors/flow.js +8 -8
  174. package/dist/factory-assets/connectors/git.js +8 -8
  175. package/dist/factory-assets/connectors/gmail.js +8 -8
  176. package/dist/factory-assets/connectors/googledrive.js +8 -8
  177. package/dist/factory-assets/connectors/local.js +8 -8
  178. package/dist/factory-assets/connectors/mattermost.js +8 -8
  179. package/dist/factory-assets/connectors/memory.js +8 -8
  180. package/dist/factory-assets/connectors/minio.js +8 -8
  181. package/dist/factory-assets/connectors/postgres.js +8 -8
  182. package/dist/factory-assets/connectors/s3.js +8 -8
  183. package/dist/factory-assets/connectors/sharepoint.js +8 -8
  184. package/dist/factory-assets/connectors/sqlite.js +8 -8
  185. package/dist/factory-assets/connectors/static-server.js +8 -8
  186. package/dist/factory-assets/connectors/tunnel.js +8 -8
  187. package/dist/factory-assets/connectors/webdav.js +8 -8
  188. package/dist/factory-assets/connectors/xstate-store.js +8 -8
  189. package/dist/factory-assets/connectors/xstate.js +8 -8
  190. package/dist/factory-assets/skills/skaile-author-asset/SKILL.md +1 -1
  191. package/dist/factory-assets/skills/skaile-manage-workspace/SKILL.md +1 -1
  192. package/dist/{flows-UFCOGAAM.js → flows-MRVXTYWC.js} +4 -4
  193. package/dist/{flows-UFCOGAAM.js.map → flows-MRVXTYWC.js.map} +1 -1
  194. package/dist/helpers-TF7GCBRQ.js +27 -0
  195. package/dist/{helpers-2OL4FRFB.js.map → helpers-TF7GCBRQ.js.map} +1 -1
  196. package/dist/library/index.js +9 -9
  197. package/dist/library/install.js +5 -5
  198. package/dist/library/src/index.d.ts +2 -2
  199. package/dist/library/src/index.d.ts.map +1 -1
  200. package/dist/library/src/local/local-catalog-source.d.ts +12 -1
  201. package/dist/library/src/local/local-catalog-source.d.ts.map +1 -1
  202. package/dist/library/src/sync/manifest-writeback.d.ts +36 -0
  203. package/dist/library/src/sync/manifest-writeback.d.ts.map +1 -1
  204. package/dist/library-publish-K5IBE44D.js +249 -0
  205. package/dist/library-publish-K5IBE44D.js.map +1 -0
  206. package/dist/open-library-4HMIDK3N.js +29 -0
  207. package/dist/{open-library-RPV2LIKL.js.map → open-library-4HMIDK3N.js.map} +1 -1
  208. package/dist/{paths-ML33B5SB.js → paths-P3DWFUPS.js} +8 -8
  209. package/dist/{paths-ML33B5SB.js.map → paths-P3DWFUPS.js.map} +1 -1
  210. package/dist/{plugin-store-G4HKWCTU.js → plugin-store-S7OMGI7N.js} +7 -7
  211. package/dist/{plugin-store-G4HKWCTU.js.map → plugin-store-S7OMGI7N.js.map} +1 -1
  212. package/dist/runner/index.js +14 -14
  213. package/dist/runner/src/agent.d.ts.map +1 -1
  214. package/dist/runner/src/capability-registry.d.ts +15 -4
  215. package/dist/runner/src/capability-registry.d.ts.map +1 -1
  216. package/dist/sdk/asset-manager.js +15 -10
  217. package/dist/sdk/bridge.js +3 -3
  218. package/dist/sdk/core.js +5 -5
  219. package/dist/sdk/flow.js +6 -6
  220. package/dist/sdk/index.js +14 -14
  221. package/dist/sdk/runner.js +14 -14
  222. package/dist/sdk/session.js +2 -2
  223. package/dist/sdk/types.js +1 -1
  224. package/dist/session/index.js +2 -2
  225. package/dist/{setup-WS6PF6JQ.js → setup-2CCS63L6.js} +10 -10
  226. package/dist/{setup-WS6PF6JQ.js.map → setup-2CCS63L6.js.map} +1 -1
  227. package/dist/source-LOAM7IIQ.js +30 -0
  228. package/dist/{source-22U5NOY4.js.map → source-LOAM7IIQ.js.map} +1 -1
  229. package/dist/source-manifest-publish-TGVZ6KMC.js +228 -0
  230. package/dist/source-manifest-publish-TGVZ6KMC.js.map +1 -0
  231. package/dist/tui/index.js +14 -14
  232. package/dist/types/index.js +1 -1
  233. package/dist/types/manifests.js +1 -1
  234. package/dist/types/src/capabilities.d.ts +8 -2
  235. package/dist/types/src/capabilities.d.ts.map +1 -1
  236. package/dist/types/src/logging.d.ts +3 -2
  237. package/dist/types/src/logging.d.ts.map +1 -1
  238. package/dist/types/src/manifests/_shared.d.ts +4 -4
  239. package/dist/types/src/manifests/index.d.ts +2 -2
  240. package/dist/types/src/manifests/index.d.ts.map +1 -1
  241. package/dist/types/src/manifests/preset.d.ts +10 -0
  242. package/dist/types/src/manifests/preset.d.ts.map +1 -1
  243. package/dist/types/src/version.d.ts +11 -1
  244. package/dist/types/src/version.d.ts.map +1 -1
  245. package/dist/workspace-plugin/adapters/mcp.js +2 -2
  246. package/dist/workspace-plugin/adapters/omp.js +3 -3
  247. package/dist/workspace-plugin/index.js +1 -1
  248. package/package.json +7 -1
  249. package/dist/chunk-7CNIRF42.js.map +0 -1
  250. package/dist/chunk-AZAS3FKN.js.map +0 -1
  251. package/dist/chunk-BZMTR5WW.js.map +0 -1
  252. package/dist/chunk-DZCK7GRW.js.map +0 -1
  253. package/dist/chunk-EVZKWY5J.js.map +0 -1
  254. package/dist/chunk-GB4SEEK4.js.map +0 -1
  255. package/dist/chunk-JQMIG7D3.js +0 -93
  256. package/dist/chunk-JQMIG7D3.js.map +0 -1
  257. package/dist/chunk-OBSSORCE.js.map +0 -1
  258. package/dist/chunk-OUWNTFDG.js.map +0 -1
  259. package/dist/chunk-P3MJYPZE.js.map +0 -1
  260. package/dist/chunk-RHMQPLIK.js.map +0 -1
  261. package/dist/chunk-RYRJEVQ4.js +0 -377
  262. package/dist/chunk-RYRJEVQ4.js.map +0 -1
  263. package/dist/chunk-SKADPHAM.js.map +0 -1
  264. package/dist/ensure-sources-4BAJGJRK.js.map +0 -1
  265. package/dist/helpers-2OL4FRFB.js +0 -22
  266. package/dist/open-library-RPV2LIKL.js +0 -29
  267. package/dist/source-22U5NOY4.js +0 -30
  268. package/dist/store-client-YLMBH5MF.js +0 -15
  269. package/dist/store-client-YLMBH5MF.js.map +0 -1
@@ -1,8 +1,9 @@
1
- import { readManifestSourceConfig, discoverAssetsInTree, isManifestMode } from './chunk-BZMTR5WW.js';
1
+ import { readManifestSourceConfig, discoverAssetsInTree, isManifestMode } from './chunk-MZV6WCF3.js';
2
2
  import { installFromManifest } from './chunk-UKJMQZV6.js';
3
- import { mergeLegacyEntriesInto, getGlobalCacheDir, resolveSourcePublisher, migrateLegacyDir, globalCacheRoot } from './chunk-OUWNTFDG.js';
3
+ import { mergeLegacyEntriesInto, getGlobalCacheDir, resolveSourcePublisher, migrateLegacyDir, globalCacheRoot } from './chunk-UQKYT4V6.js';
4
+ import { encodeSkaileManifest } from './chunk-P4VHQA4N.js';
4
5
  import { parseAssetRef } from './chunk-GEEW6SY2.js';
5
- import { PresetManifestSchema } from './chunk-GB4SEEK4.js';
6
+ import { PresetManifestSchema } from './chunk-IRORTHGA.js';
6
7
  import { __export } from './chunk-NSBPE2FW.js';
7
8
  import * as fs10 from 'fs';
8
9
  import * as os from 'os';
@@ -1585,6 +1586,7 @@ var LocalCatalogSource = class {
1585
1586
  this.registry = registry;
1586
1587
  this.id = `local:${sourceId}`;
1587
1588
  this.sidecarPath = options?.sidecarPath;
1589
+ this.sidecarManifestFile = options?.sidecarManifestFile;
1588
1590
  }
1589
1591
  library;
1590
1592
  sourceId;
@@ -1592,6 +1594,7 @@ var LocalCatalogSource = class {
1592
1594
  registry;
1593
1595
  id;
1594
1596
  sidecarPath;
1597
+ sidecarManifestFile;
1595
1598
  async resolve(ref) {
1596
1599
  const def = await this.library.getAssetDef(ref);
1597
1600
  if (!def || def.libraryId !== this.sourceId) return null;
@@ -1633,15 +1636,17 @@ var LocalCatalogSource = class {
1633
1636
  * @param syncOpts - When `includeDev` is set, assets under the source
1634
1637
  * config's `dev_paths` (e.g. `ai-assets-dev/`) are discovered and cached
1635
1638
  * too. Defaults to excluding them (a normal run).
1636
- * @returns Discovery statistics and any errors encountered.
1639
+ * @returns Discovery statistics, fatal `errors`, and non-fatal `advisories`
1640
+ * (missing sha256, unknown kind) — the latter never signal a failed index.
1637
1641
  */
1638
1642
  async sync(syncOpts) {
1639
1643
  const opts = {
1640
1644
  registry: this.registry,
1645
+ sidecarManifestFile: this.sidecarManifestFile,
1641
1646
  sidecarPath: this.sidecarPath,
1642
1647
  includeDev: syncOpts?.includeDev ?? false
1643
1648
  };
1644
- if (!this.sidecarPath) {
1649
+ if (!this.sidecarPath && !this.sidecarManifestFile) {
1645
1650
  opts.sourceConfig = this.alignPublisher(readManifestSourceConfig(this.rootPath));
1646
1651
  }
1647
1652
  const result = discoverAssetsInTree(this.rootPath, opts);
@@ -1682,9 +1687,23 @@ var LocalCatalogSource = class {
1682
1687
  for (const err of result.errors) {
1683
1688
  errors.push(`${err.path}: ${err.error}`);
1684
1689
  }
1690
+ const advisories = [];
1691
+ let missingSha256Count = 0;
1692
+ for (const w of result.warnings) {
1693
+ if (w.code === "missing_sha256") {
1694
+ missingSha256Count++;
1695
+ continue;
1696
+ }
1697
+ advisories.push(`${w.path}: ${w.warning}`);
1698
+ }
1699
+ if (missingSha256Count > 0) {
1700
+ advisories.push(
1701
+ `${missingSha256Count} asset(s): sha256 not pinned \u2014 auto-computed locally (pin only for store publish)`
1702
+ );
1703
+ }
1685
1704
  const keepRefs = result.assets.filter((a) => a.kind !== "preset").map((a) => a.ref);
1686
1705
  if (keepRefs.length > 0) await this.library.pruneAssetDefs(this.sourceId, keepRefs);
1687
- return { assetsFound: result.assets.length, assetsUpdated, errors };
1706
+ return { assetsFound: result.assets.length, assetsUpdated, errors, advisories };
1688
1707
  }
1689
1708
  /**
1690
1709
  * When the loaded source config declares no publisher (no manifest, or a
@@ -3736,6 +3755,35 @@ ${MANIFEST_FILENAME}
3736
3755
  }
3737
3756
  return { wrote: true, manifestPath };
3738
3757
  }
3758
+ function discoveredToAssetEntry(asset, repoPublisher, inheritPublisher) {
3759
+ const root = path5.posix.dirname(asset.relativePath.replace(/\\/g, "/"));
3760
+ const entry = {
3761
+ kind: asset.kind,
3762
+ name: asset.name,
3763
+ root: root === "." ? asset.name : root,
3764
+ version: asset.version
3765
+ };
3766
+ if (!inheritPublisher && asset.publisher && asset.publisher !== repoPublisher)
3767
+ entry.publisher = asset.publisher;
3768
+ const deps = asset.requires.map((r) => r.to).filter((t) => t.length > 0);
3769
+ if (deps.length > 0) entry.dependencies = deps;
3770
+ if (typeof asset.manifest.description === "string")
3771
+ entry.description = asset.manifest.description;
3772
+ return entry;
3773
+ }
3774
+ function writeCuratedManifest(input) {
3775
+ const manifestPath = input.manifestFile;
3776
+ if (fs10.existsSync(manifestPath) && !input.force) {
3777
+ return { wrote: false, manifestPath, assetCount: 0 };
3778
+ }
3779
+ const publisher = input.publisher.startsWith("@") ? input.publisher.slice(1) : input.publisher;
3780
+ const inheritPublisher = input.inheritPublisher ?? false;
3781
+ const assets = input.assets.filter((a) => a.kind !== "preset").map((a) => discoveredToAssetEntry(a, publisher, inheritPublisher)).sort((a, b) => `${a.kind}:${a.name}`.localeCompare(`${b.kind}:${b.name}`));
3782
+ const manifest = { publisher, assets };
3783
+ fs10.mkdirSync(path5.dirname(manifestPath), { recursive: true });
3784
+ fs10.writeFileSync(manifestPath, encodeSkaileManifest(manifest), "utf-8");
3785
+ return { wrote: true, manifestPath, assetCount: assets.length };
3786
+ }
3739
3787
  var PinPolicySchema = z3.enum(PIN_POLICIES);
3740
3788
  var LibraryInstanceRefSchema = z3.object({
3741
3789
  id: z3.string().uuid(),
@@ -3859,6 +3907,6 @@ function detectWorkspaceVersion(dir, filename = "skaile.yaml") {
3859
3907
  return raw.version === 2 ? 2 : 1;
3860
3908
  }
3861
3909
 
3862
- export { AssignmentNotFoundError, CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateAssignmentError, DuplicateLibraryNameError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockAssignmentSchema, LockFileSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing };
3863
- //# sourceMappingURL=chunk-P3MJYPZE.js.map
3864
- //# sourceMappingURL=chunk-P3MJYPZE.js.map
3910
+ export { AssignmentNotFoundError, CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateAssignmentError, DuplicateLibraryNameError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockAssignmentSchema, LockFileSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeCuratedManifest, writeManifestIfMissing };
3911
+ //# sourceMappingURL=chunk-FDE7XRQA.js.map
3912
+ //# sourceMappingURL=chunk-FDE7XRQA.js.map