opkg 0.5.0 → 0.6.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 (397) hide show
  1. package/README.md +82 -21
  2. package/dist/commands/add.js +11 -276
  3. package/dist/commands/add.js.map +1 -1
  4. package/dist/commands/duplicate.js +5 -2
  5. package/dist/commands/duplicate.js.map +1 -1
  6. package/dist/commands/init.js +76 -145
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/install.js +30 -671
  9. package/dist/commands/install.js.map +1 -1
  10. package/dist/commands/list.js +9 -3
  11. package/dist/commands/list.js.map +1 -1
  12. package/dist/commands/login.js +58 -0
  13. package/dist/commands/login.js.map +1 -0
  14. package/dist/commands/logout.js +28 -0
  15. package/dist/commands/logout.js.map +1 -0
  16. package/dist/commands/pack.js +10 -137
  17. package/dist/commands/pack.js.map +1 -1
  18. package/dist/commands/pull.js +5 -299
  19. package/dist/commands/pull.js.map +1 -1
  20. package/dist/commands/push.js +5 -239
  21. package/dist/commands/push.js.map +1 -1
  22. package/dist/commands/save.js +29 -168
  23. package/dist/commands/save.js.map +1 -1
  24. package/dist/commands/show.js +18 -5
  25. package/dist/commands/show.js.map +1 -1
  26. package/dist/commands/status.js +21 -8
  27. package/dist/commands/status.js.map +1 -1
  28. package/dist/commands/tui.js +61 -0
  29. package/dist/commands/tui.js.map +1 -0
  30. package/dist/commands/uninstall.js +5 -5
  31. package/dist/commands/uninstall.js.map +1 -1
  32. package/dist/constants/index.js +19 -45
  33. package/dist/constants/index.js.map +1 -1
  34. package/dist/constants/workspace.js +9 -0
  35. package/dist/constants/workspace.js.map +1 -0
  36. package/dist/core/add/add-conflict-handler.js +68 -0
  37. package/dist/core/add/add-conflict-handler.js.map +1 -0
  38. package/dist/core/add/add-pipeline.js +137 -0
  39. package/dist/core/add/add-pipeline.js.map +1 -0
  40. package/dist/core/add/package-index-updater.js +66 -36
  41. package/dist/core/add/package-index-updater.js.map +1 -1
  42. package/dist/core/add/platform-path-transformer.js +47 -0
  43. package/dist/core/add/platform-path-transformer.js.map +1 -0
  44. package/dist/core/add/source-collector.js +57 -0
  45. package/dist/core/add/source-collector.js.map +1 -0
  46. package/dist/core/api-keys.js +6 -2
  47. package/dist/core/api-keys.js.map +1 -1
  48. package/dist/core/auth.js +25 -40
  49. package/dist/core/auth.js.map +1 -1
  50. package/dist/core/config.js +11 -3
  51. package/dist/core/config.js.map +1 -1
  52. package/dist/core/dependency-resolver.js +24 -11
  53. package/dist/core/dependency-resolver.js.map +1 -1
  54. package/dist/core/device-auth.js +81 -0
  55. package/dist/core/device-auth.js.map +1 -0
  56. package/dist/core/directory.js +15 -9
  57. package/dist/core/directory.js.map +1 -1
  58. package/dist/core/discovery/file-discovery.js +55 -54
  59. package/dist/core/discovery/file-discovery.js.map +1 -1
  60. package/dist/core/discovery/platform-files-discovery.js +32 -17
  61. package/dist/core/discovery/platform-files-discovery.js.map +1 -1
  62. package/dist/core/install/bulk-install-pipeline.js +200 -0
  63. package/dist/core/install/bulk-install-pipeline.js.map +1 -0
  64. package/dist/core/install/canonical-plan.js +129 -0
  65. package/dist/core/install/canonical-plan.js.map +1 -0
  66. package/dist/core/install/download-keys.js +2 -2
  67. package/dist/core/install/download-keys.js.map +1 -1
  68. package/dist/core/install/dry-run.js +2 -2
  69. package/dist/core/install/dry-run.js.map +1 -1
  70. package/dist/core/install/index.js +3 -0
  71. package/dist/core/install/index.js.map +1 -0
  72. package/dist/core/install/install-errors.js +41 -0
  73. package/dist/core/install/install-errors.js.map +1 -0
  74. package/dist/core/install/install-flow.js +8 -9
  75. package/dist/core/install/install-flow.js.map +1 -1
  76. package/dist/core/install/install-pipeline.js +296 -0
  77. package/dist/core/install/install-pipeline.js.map +1 -0
  78. package/dist/core/install/install-reporting.js +99 -0
  79. package/dist/core/install/install-reporting.js.map +1 -0
  80. package/dist/core/install/platform-resolution.js +6 -6
  81. package/dist/core/install/platform-resolution.js.map +1 -1
  82. package/dist/core/install/remote-flow.js +84 -7
  83. package/dist/core/install/remote-flow.js.map +1 -1
  84. package/dist/core/install/version-selection.js +25 -8
  85. package/dist/core/install/version-selection.js.map +1 -1
  86. package/dist/core/openpackage.js +22 -14
  87. package/dist/core/openpackage.js.map +1 -1
  88. package/dist/core/package-context.js +246 -0
  89. package/dist/core/package-context.js.map +1 -0
  90. package/dist/core/package.js +73 -9
  91. package/dist/core/package.js.map +1 -1
  92. package/dist/core/platforms.js +126 -217
  93. package/dist/core/platforms.js.map +1 -1
  94. package/dist/core/profiles.js +60 -3
  95. package/dist/core/profiles.js.map +1 -1
  96. package/dist/core/pull/pull-errors.js +62 -0
  97. package/dist/core/pull/pull-errors.js.map +1 -0
  98. package/dist/core/pull/pull-options.js +2 -0
  99. package/dist/core/pull/pull-options.js.map +1 -0
  100. package/dist/core/pull/pull-output.js +50 -0
  101. package/dist/core/pull/pull-output.js.map +1 -0
  102. package/dist/core/pull/pull-pipeline.js +141 -0
  103. package/dist/core/pull/pull-pipeline.js.map +1 -0
  104. package/dist/core/pull/pull-strategies.js +103 -0
  105. package/dist/core/pull/pull-strategies.js.map +1 -0
  106. package/dist/core/pull/pull-types.js +2 -0
  107. package/dist/core/pull/pull-types.js.map +1 -0
  108. package/dist/core/push/push-context.js +95 -0
  109. package/dist/core/push/push-context.js.map +1 -0
  110. package/dist/core/push/push-errors.js +133 -0
  111. package/dist/core/push/push-errors.js.map +1 -0
  112. package/dist/core/push/push-output.js +44 -0
  113. package/dist/core/push/push-output.js.map +1 -0
  114. package/dist/core/push/push-pipeline.js +74 -0
  115. package/dist/core/push/push-pipeline.js.map +1 -0
  116. package/dist/core/push/push-single-file.js +56 -0
  117. package/dist/core/push/push-single-file.js.map +1 -0
  118. package/dist/core/push/push-types.js +2 -0
  119. package/dist/core/push/push-types.js.map +1 -0
  120. package/dist/core/push/push-upload.js +68 -0
  121. package/dist/core/push/push-upload.js.map +1 -0
  122. package/dist/core/registry/registry-rename.js +2 -1
  123. package/dist/core/registry/registry-rename.js.map +1 -1
  124. package/dist/core/registry.js +14 -5
  125. package/dist/core/registry.js.map +1 -1
  126. package/dist/core/remote-pull.js +165 -36
  127. package/dist/core/remote-pull.js.map +1 -1
  128. package/dist/core/save/constants.js +4 -0
  129. package/dist/core/save/constants.js.map +1 -1
  130. package/dist/core/save/name-resolution.js +31 -0
  131. package/dist/core/save/name-resolution.js.map +1 -0
  132. package/dist/core/save/package-detection.js +147 -0
  133. package/dist/core/save/package-detection.js.map +1 -0
  134. package/dist/core/save/package-saver.js +82 -43
  135. package/dist/core/save/package-saver.js.map +1 -1
  136. package/dist/core/save/package-yml-generator.js +51 -71
  137. package/dist/core/save/package-yml-generator.js.map +1 -1
  138. package/dist/core/save/root-save-candidates.js.map +1 -1
  139. package/dist/core/save/save-candidate-loader.js +89 -0
  140. package/dist/core/save/save-candidate-loader.js.map +1 -0
  141. package/dist/core/save/save-conflict-resolution.js +72 -410
  142. package/dist/core/save/save-conflict-resolution.js.map +1 -1
  143. package/dist/core/save/save-conflict-resolver.js +277 -0
  144. package/dist/core/save/save-conflict-resolver.js.map +1 -0
  145. package/dist/core/save/save-pipeline.js +162 -0
  146. package/dist/core/save/save-pipeline.js.map +1 -0
  147. package/dist/core/save/save-single-file.js +124 -0
  148. package/dist/core/save/save-single-file.js.map +1 -0
  149. package/dist/core/save/save-types.js +2 -0
  150. package/dist/core/save/save-types.js.map +1 -0
  151. package/dist/core/save/save-yml-resolution.js +77 -39
  152. package/dist/core/save/save-yml-resolution.js.map +1 -1
  153. package/dist/core/save/workspace-rename.js +6 -6
  154. package/dist/core/save/workspace-rename.js.map +1 -1
  155. package/dist/core/scoping/package-scoping.js +14 -2
  156. package/dist/core/scoping/package-scoping.js.map +1 -1
  157. package/dist/core/status/status-file-discovery.js +12 -30
  158. package/dist/core/status/status-file-discovery.js.map +1 -1
  159. package/dist/core/sync/platform-sync.js +7 -4
  160. package/dist/core/sync/platform-sync.js.map +1 -1
  161. package/dist/core/sync/root-files-sync.js +59 -1
  162. package/dist/core/sync/root-files-sync.js.map +1 -1
  163. package/dist/core/token-store.js +73 -0
  164. package/dist/core/token-store.js.map +1 -0
  165. package/dist/core/uninstall/uninstall-file-discovery.js +1 -2
  166. package/dist/core/uninstall/uninstall-file-discovery.js.map +1 -1
  167. package/dist/index.js +4 -0
  168. package/dist/index.js.map +1 -1
  169. package/dist/tui/app.js +95 -0
  170. package/dist/tui/app.js.map +1 -0
  171. package/dist/tui/components/package-list.js +73 -0
  172. package/dist/tui/components/package-list.js.map +1 -0
  173. package/dist/tui/controller.js +365 -0
  174. package/dist/tui/controller.js.map +1 -0
  175. package/dist/tui/index.js +12 -0
  176. package/dist/tui/index.js.map +1 -0
  177. package/dist/tui/services/file-index.js +64 -0
  178. package/dist/tui/services/file-index.js.map +1 -0
  179. package/dist/tui/services/packages.js +18 -0
  180. package/dist/tui/services/packages.js.map +1 -0
  181. package/dist/tui/services/save.js +21 -0
  182. package/dist/tui/services/save.js.map +1 -0
  183. package/dist/tui/state/app-state.js +15 -0
  184. package/dist/tui/state/app-state.js.map +1 -0
  185. package/dist/tui/state.js +17 -0
  186. package/dist/tui/state.js.map +1 -0
  187. package/dist/tui/types.js +2 -0
  188. package/dist/tui/types.js.map +1 -0
  189. package/dist/tui/views/add-file-modal.js +129 -0
  190. package/dist/tui/views/add-file-modal.js.map +1 -0
  191. package/dist/tui/views/file-preview.js +44 -0
  192. package/dist/tui/views/file-preview.js.map +1 -0
  193. package/dist/tui/views/list-packages.js +73 -0
  194. package/dist/tui/views/list-packages.js.map +1 -0
  195. package/dist/tui/views/main-menu.js +29 -0
  196. package/dist/tui/views/main-menu.js.map +1 -0
  197. package/dist/tui/views/manage-view.js +81 -0
  198. package/dist/tui/views/manage-view.js.map +1 -0
  199. package/dist/tui/views/package-hub.js +120 -0
  200. package/dist/tui/views/package-hub.js.map +1 -0
  201. package/dist/tui/views/placeholder.js +24 -0
  202. package/dist/tui/views/placeholder.js.map +1 -0
  203. package/dist/types/index.js.map +1 -1
  204. package/dist/utils/bun-bootstrap.js +72 -0
  205. package/dist/utils/bun-bootstrap.js.map +1 -0
  206. package/dist/utils/file-processing.js +5 -58
  207. package/dist/utils/file-processing.js.map +1 -1
  208. package/dist/utils/formatters.js +3 -1
  209. package/dist/utils/formatters.js.map +1 -1
  210. package/dist/utils/http-client.js +27 -5
  211. package/dist/utils/http-client.js.map +1 -1
  212. package/dist/utils/index-based-installer.js +40 -35
  213. package/dist/utils/index-based-installer.js.map +1 -1
  214. package/dist/utils/install-file-discovery.js +18 -24
  215. package/dist/utils/install-file-discovery.js.map +1 -1
  216. package/dist/utils/install-orchestrator.js +21 -21
  217. package/dist/utils/install-orchestrator.js.map +1 -1
  218. package/dist/utils/jsonc.js +44 -0
  219. package/dist/utils/jsonc.js.map +1 -0
  220. package/dist/utils/manifest-paths.js +27 -0
  221. package/dist/utils/manifest-paths.js.map +1 -0
  222. package/dist/utils/package-copy.js +199 -0
  223. package/dist/utils/package-copy.js.map +1 -0
  224. package/dist/utils/package-filters.js +125 -0
  225. package/dist/utils/package-filters.js.map +1 -0
  226. package/dist/utils/package-index-yml.js +15 -10
  227. package/dist/utils/package-index-yml.js.map +1 -1
  228. package/dist/utils/package-installation.js +4 -113
  229. package/dist/utils/package-installation.js.map +1 -1
  230. package/dist/utils/package-local-files.js +2 -35
  231. package/dist/utils/package-local-files.js.map +1 -1
  232. package/dist/utils/package-management.js +191 -75
  233. package/dist/utils/package-management.js.map +1 -1
  234. package/dist/utils/package-merge.js +48 -0
  235. package/dist/utils/package-merge.js.map +1 -0
  236. package/dist/utils/package-name.js +29 -0
  237. package/dist/utils/package-name.js.map +1 -1
  238. package/dist/utils/package-versioning.js +16 -4
  239. package/dist/utils/package-versioning.js.map +1 -1
  240. package/dist/utils/package-yml.js +41 -12
  241. package/dist/utils/package-yml.js.map +1 -1
  242. package/dist/utils/path-normalization.js +8 -53
  243. package/dist/utils/path-normalization.js.map +1 -1
  244. package/dist/utils/paths.js +17 -9
  245. package/dist/utils/paths.js.map +1 -1
  246. package/dist/utils/platform-file.js +16 -59
  247. package/dist/utils/platform-file.js.map +1 -1
  248. package/dist/utils/platform-mapper.js +29 -41
  249. package/dist/utils/platform-mapper.js.map +1 -1
  250. package/dist/utils/platform-specific-paths.js.map +1 -1
  251. package/dist/utils/platform-utils.js +28 -139
  252. package/dist/utils/platform-utils.js.map +1 -1
  253. package/dist/utils/platform-yaml-merge.js +13 -6
  254. package/dist/utils/platform-yaml-merge.js.map +1 -1
  255. package/dist/utils/prompts.js +0 -31
  256. package/dist/utils/prompts.js.map +1 -1
  257. package/dist/utils/registry-entry-filter.js +38 -24
  258. package/dist/utils/registry-entry-filter.js.map +1 -1
  259. package/dist/utils/registry-paths.js +48 -0
  260. package/dist/utils/registry-paths.js.map +1 -0
  261. package/dist/utils/root-file-installer.js +19 -0
  262. package/dist/utils/root-file-installer.js.map +1 -1
  263. package/dist/utils/root-file-registry.js.map +1 -1
  264. package/dist/utils/tarball.js +6 -2
  265. package/dist/utils/tarball.js.map +1 -1
  266. package/dist/utils/version-ranges.js +11 -8
  267. package/dist/utils/version-ranges.js.map +1 -1
  268. package/package.json +3 -2
  269. package/platforms.jsonc +178 -0
  270. package/specs/auth/auth-device-flow.md +70 -0
  271. package/specs/install/install-behavior.md +30 -0
  272. package/specs/install/package-yml-canonical.md +21 -1
  273. package/specs/install/version-resolution.md +9 -7
  274. package/specs/login/login-device-flow.md +70 -0
  275. package/specs/package/README.md +60 -0
  276. package/specs/package/nested-packages-and-parent-packages.md +79 -0
  277. package/specs/package/package-index-yml.md +171 -0
  278. package/specs/package/package-root-layout.md +78 -0
  279. package/specs/package/registry-payload-and-copy.md +77 -0
  280. package/specs/package/universal-content.md +144 -0
  281. package/specs/platforms.md +193 -0
  282. package/specs/push/push-behavior.md +38 -10
  283. package/specs/push/push-errors-and-hints.md +19 -6
  284. package/specs/push/push-remote-upload.md +3 -0
  285. package/specs/push/push-scoping.md +14 -22
  286. package/specs/push/push-version-selection.md +18 -16
  287. package/specs/save/README.md +40 -0
  288. package/specs/save/save-conflict-resolution.md +146 -0
  289. package/specs/save/save-file-discovery.md +101 -0
  290. package/specs/save/save-frontmatter-overrides.md +81 -0
  291. package/specs/save/save-modes-inputs.md +55 -0
  292. package/specs/save/save-naming-scoping.md +93 -0
  293. package/specs/save/save-package-detection.md +60 -0
  294. package/specs/save/save-registry-sync.md +126 -0
  295. package/specs/save-pack.md +1 -0
  296. package/dist/commands/release.js +0 -33
  297. package/dist/commands/release.js.map +0 -1
  298. package/dist/commands/tag.js +0 -311
  299. package/dist/commands/tag.js.map +0 -1
  300. package/dist/commands/update.js +0 -30
  301. package/dist/commands/update.js.map +0 -1
  302. package/dist/core/add/formula-index-updater.js +0 -290
  303. package/dist/core/add/formula-index-updater.js.map +0 -1
  304. package/dist/core/discovery/ai-files-discovery.js +0 -2
  305. package/dist/core/discovery/ai-files-discovery.js.map +0 -1
  306. package/dist/core/discovery/formula-files-discovery.js +0 -14
  307. package/dist/core/discovery/formula-files-discovery.js.map +0 -1
  308. package/dist/core/discovery/index-files-discovery.js +0 -91
  309. package/dist/core/discovery/index-files-discovery.js.map +0 -1
  310. package/dist/core/discovery/md-files-discovery.js +0 -82
  311. package/dist/core/discovery/md-files-discovery.js.map +0 -1
  312. package/dist/core/discovery/package-files-discovery.js +0 -14
  313. package/dist/core/discovery/package-files-discovery.js.map +0 -1
  314. package/dist/core/discovery/platform-discovery.js +0 -84
  315. package/dist/core/discovery/platform-discovery.js.map +0 -1
  316. package/dist/core/discovery/root-files-discovery.js +0 -2
  317. package/dist/core/discovery/root-files-discovery.js.map +0 -1
  318. package/dist/core/formula.js +0 -170
  319. package/dist/core/formula.js.map +0 -1
  320. package/dist/core/git-registry.js +0 -46
  321. package/dist/core/git-registry.js.map +0 -1
  322. package/dist/core/groundzero.js +0 -277
  323. package/dist/core/groundzero.js.map +0 -1
  324. package/dist/core/install/scenario.js +0 -11
  325. package/dist/core/install/scenario.js.map +0 -1
  326. package/dist/core/package-sync.js +0 -219
  327. package/dist/core/package-sync.js.map +0 -1
  328. package/dist/core/save/formula-file-generator.js +0 -167
  329. package/dist/core/save/formula-file-generator.js.map +0 -1
  330. package/dist/core/save/formula-saver.js +0 -52
  331. package/dist/core/save/formula-saver.js.map +0 -1
  332. package/dist/core/save/formula-yml-generator.js +0 -89
  333. package/dist/core/save/formula-yml-generator.js.map +0 -1
  334. package/dist/core/save/formula-yml-versioning.js +0 -108
  335. package/dist/core/save/formula-yml-versioning.js.map +0 -1
  336. package/dist/core/save/generic-file-sync.js +0 -38
  337. package/dist/core/save/generic-file-sync.js.map +0 -1
  338. package/dist/core/save/md-files-sync.js +0 -33
  339. package/dist/core/save/md-files-sync.js.map +0 -1
  340. package/dist/core/save/package-yml-versioning.js +0 -108
  341. package/dist/core/save/package-yml-versioning.js.map +0 -1
  342. package/dist/core/save/platform-sync.js +0 -95
  343. package/dist/core/save/platform-sync.js.map +0 -1
  344. package/dist/core/save/root-files-sync.js +0 -140
  345. package/dist/core/save/root-files-sync.js.map +0 -1
  346. package/dist/core/save/save-candidate-types.js +0 -2
  347. package/dist/core/save/save-candidate-types.js.map +0 -1
  348. package/dist/core/save/save-conflict-types.js +0 -2
  349. package/dist/core/save/save-conflict-types.js.map +0 -1
  350. package/dist/core/save/save-file-discovery.js +0 -5
  351. package/dist/core/save/save-file-discovery.js.map +0 -1
  352. package/dist/core/status-file-discovery.js +0 -175
  353. package/dist/core/status-file-discovery.js.map +0 -1
  354. package/dist/utils/discovery/file-processing.js +0 -156
  355. package/dist/utils/discovery/file-processing.js.map +0 -1
  356. package/dist/utils/discovery/formula-discovery.js +0 -211
  357. package/dist/utils/discovery/formula-discovery.js.map +0 -1
  358. package/dist/utils/discovery/platform-discovery.js +0 -2
  359. package/dist/utils/discovery/platform-discovery.js.map +0 -1
  360. package/dist/utils/formula-discovery.js +0 -102
  361. package/dist/utils/formula-discovery.js.map +0 -1
  362. package/dist/utils/formula-index-yml.js +0 -122
  363. package/dist/utils/formula-index-yml.js.map +0 -1
  364. package/dist/utils/formula-installation.js +0 -110
  365. package/dist/utils/formula-installation.js.map +0 -1
  366. package/dist/utils/formula-local-files.js +0 -38
  367. package/dist/utils/formula-local-files.js.map +0 -1
  368. package/dist/utils/formula-management.js +0 -191
  369. package/dist/utils/formula-management.js.map +0 -1
  370. package/dist/utils/formula-name.js +0 -97
  371. package/dist/utils/formula-name.js.map +0 -1
  372. package/dist/utils/formula-versioning.js +0 -109
  373. package/dist/utils/formula-versioning.js.map +0 -1
  374. package/dist/utils/formula-yml.js +0 -82
  375. package/dist/utils/formula-yml.js.map +0 -1
  376. package/dist/utils/git.js +0 -54
  377. package/dist/utils/git.js.map +0 -1
  378. package/dist/utils/id-based-discovery.js +0 -126
  379. package/dist/utils/id-based-discovery.js.map +0 -1
  380. package/dist/utils/id-based-installer.js +0 -249
  381. package/dist/utils/id-based-installer.js.map +0 -1
  382. package/dist/utils/index-yml-based-installer.js +0 -375
  383. package/dist/utils/index-yml-based-installer.js.map +0 -1
  384. package/dist/utils/index-yml.js +0 -124
  385. package/dist/utils/index-yml.js.map +0 -1
  386. package/dist/utils/md-frontmatter.js +0 -3
  387. package/dist/utils/md-frontmatter.js.map +0 -1
  388. package/dist/utils/package-link-yml.js +0 -92
  389. package/dist/utils/package-link-yml.js.map +0 -1
  390. package/dist/utils/platform-discovery.js +0 -2
  391. package/dist/utils/platform-discovery.js.map +0 -1
  392. package/dist/utils/platform-frontmatter-split.js +0 -15
  393. package/dist/utils/platform-frontmatter-split.js.map +0 -1
  394. package/dist/utils/timestamp-encoder.js +0 -13
  395. package/dist/utils/timestamp-encoder.js.map +0 -1
  396. package/dist/utils/wip-versioning.js +0 -24
  397. package/dist/utils/wip-versioning.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { dirname, join } from 'path';
2
+ import { FILE_PATTERNS } from '../../constants/index.js';
2
3
  import { exists } from '../../utils/fs.js';
3
4
  import { logger } from '../../utils/logger.js';
4
5
  import { parsePackageYml } from '../../utils/package-yml.js';
5
6
  import { getPackageIndexPath, readPackageIndex, writePackageIndex, sortMapping, pruneNestedDirectories } from '../../utils/package-index-yml.js';
6
7
  import { buildIndexMappingForPackageFiles, loadOtherPackageIndexes } from '../../utils/index-based-installer.js';
7
- import { getLocalPackageDir } from '../../utils/paths.js';
8
- import { PLATFORM_DIRS } from '../../constants/index.js';
8
+ import { UNVERSIONED } from '../../constants/index.js';
9
9
  import { parseUniversalPath } from '../../utils/platform-file.js';
10
10
  import { mapUniversalToPlatform } from '../../utils/platform-mapper.js';
11
11
  import { isPlatformId } from '../platforms.js';
@@ -59,13 +59,22 @@ function pruneStaleKeysByCurrentFiles(previous, currentFiles) {
59
59
  return result;
60
60
  }
61
61
  /**
62
- * Merge new mapping updates with existing index, respecting existing entries.
63
- * For directory keys (ending with /), prunes redundant nested child directories
64
- * to prevent adding subdirectories when a parent directory already exists.
62
+ * Merge new mapping updates with existing index.
63
+ *
64
+ * @param previous - Previous index mapping
65
+ * @param updates - New mapping updates
66
+ * @param replaceExact - When true, replace values entirely for exact file keys instead of merging.
67
+ * This ensures the index reflects current state, not accumulated history.
65
68
  */
66
- function mergeMappingsRespectingExisting(previous, updates) {
69
+ function mergeMappingsRespectingExisting(previous, updates, replaceExact = false) {
67
70
  const merged = { ...previous };
68
71
  for (const [key, newVals] of Object.entries(updates)) {
72
+ // For exact file keys (not directory keys), replace values when replaceExact is true
73
+ // This prevents stale paths from being preserved when files are re-indexed
74
+ if (replaceExact && !key.endsWith('/')) {
75
+ merged[key] = newVals.sort();
76
+ continue;
77
+ }
69
78
  const prevVals = merged[key] || [];
70
79
  // Union + de-dupe
71
80
  const union = Array.from(new Set([...prevVals, ...newVals]));
@@ -134,17 +143,21 @@ function collapseFileEntriesToDirKeys(mapping) {
134
143
  }
135
144
  /**
136
145
  * Build a mapping that preserves exact file keys for the provided packageFiles.
137
- * For universal subdirs, maps to platform-specific installed paths using detected platforms.
146
+ * For universal subdirs, maps to platform-specific installed paths that ACTUALLY EXIST.
138
147
  * For platform-specific paths (with .platform suffix), only maps to that specific platform.
139
148
  * For ai/ paths and other non-universal paths, keeps the value as the same path.
140
149
  *
150
+ * Only includes workspace paths where the file actually exists - this ensures the index
151
+ * reflects reality rather than hypothetical future installations. Sync operations will
152
+ * expand the index as files are actually created.
153
+ *
141
154
  * Filters files using the same logic as install/save: excludes root files, skippable paths,
142
155
  * and non-allowed registry paths to match the index building behavior.
143
156
  *
144
157
  * Prunes redundant mappings: if platform-specific keys exist (e.g., setup.claude.md),
145
158
  * their target files are excluded from the universal key (e.g., setup.md) to avoid duplication.
146
159
  */
147
- function buildExactFileMapping(packageFiles, platforms) {
160
+ async function buildExactFileMapping(cwd, packageFiles, platforms) {
148
161
  const mapping = {};
149
162
  // Collect platform-specific targets per base universal key (e.g., commands/nestjs/setup.md)
150
163
  // so we can prune duplicates from the universal key later.
@@ -154,6 +167,11 @@ function buildExactFileMapping(packageFiles, platforms) {
154
167
  mapping[key] = Array.from(values).sort();
155
168
  }
156
169
  };
170
+ // Helper to check if a workspace path exists
171
+ const checkExists = async (relPath) => {
172
+ const absPath = join(cwd, relPath);
173
+ return await exists(absPath);
174
+ };
157
175
  // First pass: record platform-specific target files keyed by base universal key
158
176
  for (const file of packageFiles) {
159
177
  const normalized = normalizeRegistryPath(file.path);
@@ -177,7 +195,7 @@ function buildExactFileMapping(packageFiles, platforms) {
177
195
  }
178
196
  }
179
197
  }
180
- // Second pass: build exact mappings and prune universal values that are covered by platform-specific keys
198
+ // Second pass: build exact mappings, only including paths that actually exist
181
199
  for (const file of packageFiles) {
182
200
  const normalized = normalizeRegistryPath(file.path);
183
201
  if (isRootRegistryPath(normalized))
@@ -188,30 +206,30 @@ function buildExactFileMapping(packageFiles, platforms) {
188
206
  continue;
189
207
  const key = normalized.replace(/\\/g, '/');
190
208
  const values = new Set();
191
- if (key.startsWith(`${PLATFORM_DIRS.AI}/`)) {
192
- // ai/ paths: keep as-is
193
- values.add(key);
194
- addTargets(key, values);
195
- continue;
196
- }
197
209
  const parsed = parseUniversalPath(key);
198
210
  if (parsed) {
199
211
  if (parsed.platformSuffix && isPlatformId(parsed.platformSuffix)) {
200
- // Platform-specific registry key → only that platform target
212
+ // Platform-specific registry key → only that platform target if it exists
201
213
  try {
202
214
  const { absFile } = mapUniversalToPlatform(parsed.platformSuffix, parsed.universalSubdir, parsed.relPath);
203
- values.add(absFile.replace(/\\/g, '/'));
215
+ const relPath = absFile.replace(/\\/g, '/');
216
+ if (await checkExists(relPath)) {
217
+ values.add(relPath);
218
+ }
204
219
  }
205
220
  catch {
206
221
  // Ignore unsupported subdir/platform combinations
207
222
  }
208
223
  }
209
224
  else {
210
- // Universal registry key → map to all detected platforms, then prune duplicates
225
+ // Universal registry key → only include platform paths that actually exist
211
226
  for (const platform of platforms) {
212
227
  try {
213
228
  const { absFile } = mapUniversalToPlatform(platform, parsed.universalSubdir, parsed.relPath);
214
- values.add(absFile.replace(/\\/g, '/'));
229
+ const relPath = absFile.replace(/\\/g, '/');
230
+ if (await checkExists(relPath)) {
231
+ values.add(relPath);
232
+ }
215
233
  }
216
234
  catch {
217
235
  // Ignore unsupported platforms
@@ -228,23 +246,32 @@ function buildExactFileMapping(packageFiles, platforms) {
228
246
  }
229
247
  }
230
248
  else {
231
- // Fallback: keep value as the same path
232
- values.add(key);
249
+ // Fallback: keep value as the same path if it exists
250
+ if (await checkExists(key)) {
251
+ values.add(key);
252
+ }
233
253
  }
234
254
  addTargets(key, values);
235
255
  }
236
256
  return mapping;
237
257
  }
238
- export async function buildMappingAndWriteIndex(cwd, packageName, packageFiles, platforms, options = {}) {
258
+ export async function buildMappingAndWriteIndex(cwd, packageContext, packageFiles, platforms, options = {}) {
259
+ const packageName = packageContext.name;
260
+ const packageLocation = packageContext.location;
239
261
  try {
262
+ // Filter to index-eligible files only (excludes package.yml, package index file, etc.)
263
+ // These are manifest/metadata files that are NOT synced to workspace locations
264
+ const indexEligibleFiles = packageFiles.filter(f => {
265
+ const normalized = normalizeRegistryPath(f.path);
266
+ return isAllowedRegistryPath(normalized) && !isSkippableRegistryPath(normalized);
267
+ });
240
268
  // Read existing index and other indexes for conflict context
241
- const previousIndex = await readPackageIndex(cwd, packageName);
269
+ const previousIndex = await readPackageIndex(cwd, packageName, packageLocation);
242
270
  const otherIndexes = await loadOtherPackageIndexes(cwd, packageName);
243
271
  // Resolve version (prefer previous index; otherwise read from package.yml)
244
- let version = options.versionOverride || previousIndex?.workspace?.version || '';
272
+ let version = options.versionOverride || previousIndex?.workspace?.version || undefined;
245
273
  if (!version) {
246
- const packageDir = getLocalPackageDir(cwd, packageName);
247
- const packageYmlPath = join(packageDir, 'package.yml');
274
+ const packageYmlPath = packageContext.packageYmlPath;
248
275
  if (await exists(packageYmlPath)) {
249
276
  try {
250
277
  const packageYml = await parsePackageYml(packageYmlPath);
@@ -257,26 +284,29 @@ export async function buildMappingAndWriteIndex(cwd, packageName, packageFiles,
257
284
  }
258
285
  }
259
286
  if (!version) {
260
- logger.debug(`No version found for ${packageName}, skipping index update`);
261
- return;
287
+ version = UNVERSIONED;
288
+ logger.debug(`No version found for ${packageName}, defaulting to ${UNVERSIONED} for index update`);
262
289
  }
263
290
  // Build mapping using same flow as install
264
- let newMapping = await buildIndexMappingForPackageFiles(cwd, packageFiles, platforms, previousIndex, otherIndexes);
291
+ let newMapping = await buildIndexMappingForPackageFiles(cwd, indexEligibleFiles, platforms, previousIndex, otherIndexes);
265
292
  // Optionally transform mapping:
266
293
  // - If preserveExactPaths is true: force exact file keys and strip dir keys
267
294
  // - Otherwise: preserve the planner's dir/file decisions (already respects workspace occupancy)
268
295
  if (options.preserveExactPaths) {
269
- newMapping = buildExactFileMapping(packageFiles, platforms);
296
+ newMapping = await buildExactFileMapping(cwd, indexEligibleFiles, platforms);
270
297
  }
271
298
  // Prune stale keys from previous index based on current files in .openpackage
272
299
  // This ensures keys are updated when files/directories are moved or renamed
273
- const currentPaths = packageFiles.map(f => f.path);
300
+ const currentPaths = indexEligibleFiles.map(f => f.path);
274
301
  const prunedPreviousFiles = pruneStaleKeysByCurrentFiles(previousIndex?.files || {}, currentPaths);
275
302
  const previousFilesWithoutDirKeys = Object.fromEntries(Object.entries(prunedPreviousFiles).filter(([key]) => !key.endsWith('/')));
276
- // Merge and write index - respect existing entries (post-pruning) and prune redundant children
277
- const mergedFiles = mergeMappingsRespectingExisting(previousFilesWithoutDirKeys, newMapping);
303
+ // Merge and write index
304
+ // When preserveExactPaths is true, replace values entirely to reflect current state
305
+ // (prevents stale platform paths from being preserved)
306
+ const mergedFiles = mergeMappingsRespectingExisting(previousFilesWithoutDirKeys, newMapping, options.preserveExactPaths ?? false);
307
+ const canonicalIndexPath = getPackageIndexPath(cwd, packageName, packageLocation);
278
308
  const indexRecord = {
279
- path: getPackageIndexPath(cwd, packageName),
309
+ path: canonicalIndexPath,
280
310
  packageName,
281
311
  workspace: {
282
312
  hash: createWorkspaceHash(cwd),
@@ -285,10 +315,10 @@ export async function buildMappingAndWriteIndex(cwd, packageName, packageFiles,
285
315
  files: mergedFiles
286
316
  };
287
317
  await writePackageIndex(indexRecord);
288
- logger.debug(`Updated package.index.yml for ${packageName}@${version}`);
318
+ logger.debug(`Updated ${FILE_PATTERNS.PACKAGE_INDEX_YML} for ${packageName}@${version}`);
289
319
  }
290
320
  catch (error) {
291
- logger.warn(`Failed to update package.index.yml for ${packageName}: ${error}`);
321
+ logger.warn(`Failed to update ${FILE_PATTERNS.PACKAGE_INDEX_YML} for ${packageName}: ${error}`);
292
322
  }
293
323
  }
294
324
  //# sourceMappingURL=package-index-updater.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"package-index-updater.js","sourceRoot":"","sources":["../../../src/core/add/package-index-updater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-index-updater.js","sourceRoot":"","sources":["../../../src/core/add/package-index-updater.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { join, resolve } from 'path';
2
+ import { getPlatformDefinition } from '../platforms.js';
3
+ import { mapPlatformFileToUniversal } from '../../utils/platform-mapper.js';
4
+ import { suffixFileBasename, suffixFirstContentDir } from '../../utils/platform-specific-paths.js';
5
+ import { isWithinDirectory } from '../../utils/path-normalization.js';
6
+ import { isPlatformRootFile } from '../../utils/platform-utils.js';
7
+ export function applyPlatformSpecificPaths(cwd, entries, resolvedInputPath, options) {
8
+ const normalizedInput = resolve(resolvedInputPath);
9
+ for (const entry of entries) {
10
+ const { registryPath, sourcePath } = entry;
11
+ const fileName = registryPath.split('/').pop();
12
+ if (fileName && isPlatformRootFile(fileName)) {
13
+ continue;
14
+ }
15
+ const mapping = mapPlatformFileToUniversal(sourcePath);
16
+ if (!mapping) {
17
+ continue;
18
+ }
19
+ const definition = getPlatformDefinition(mapping.platform);
20
+ const subdirDef = definition.subdirs[mapping.subdir];
21
+ if (!subdirDef?.path) {
22
+ continue;
23
+ }
24
+ const subdirAbs = resolve(join(cwd, definition.rootDir, subdirDef.path));
25
+ const sourceAbs = resolve(sourcePath);
26
+ const withinSubdir = sourceAbs === subdirAbs || isWithinDirectory(subdirAbs, sourceAbs);
27
+ if (!withinSubdir) {
28
+ continue;
29
+ }
30
+ if (options.inputIsFile && sourceAbs === normalizedInput) {
31
+ entry.registryPath = suffixFileBasename(registryPath, mapping.platform);
32
+ continue;
33
+ }
34
+ if (!options.inputIsDirectory) {
35
+ continue;
36
+ }
37
+ if (normalizedInput === subdirAbs) {
38
+ entry.registryPath = suffixFileBasename(registryPath, mapping.platform);
39
+ continue;
40
+ }
41
+ if (isWithinDirectory(normalizedInput, sourceAbs)) {
42
+ entry.registryPath = suffixFirstContentDir(registryPath, mapping.platform);
43
+ }
44
+ }
45
+ return entries;
46
+ }
47
+ //# sourceMappingURL=platform-path-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-path-transformer.js","sourceRoot":"","sources":["../../../src/core/add/platform-path-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAErC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQnE,MAAM,UAAU,0BAA0B,CACxC,GAAW,EACX,OAAsB,EACtB,iBAAyB,EACzB,OAAqC;IAErC,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAE3C,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAC/C,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,SAAS,KAAK,SAAS,IAAI,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACxF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,SAAS;QACX,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;YACzD,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACxE,SAAS;QACX,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QAED,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACxE,SAAS;QACX,CAAC;QAED,IAAI,iBAAiB,CAAC,eAAe,EAAE,SAAS,CAAC,EAAE,CAAC;YAClD,KAAK,CAAC,YAAY,GAAG,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { relative } from 'path';
2
+ import { DIR_PATTERNS } from '../../constants/index.js';
3
+ import { isDirectory, isFile, walkFiles } from '../../utils/fs.js';
4
+ import { normalizePathForProcessing } from '../../utils/path-normalization.js';
5
+ import { mapPlatformFileToUniversal } from '../../utils/platform-mapper.js';
6
+ import { isPlatformRootFile } from '../../utils/platform-utils.js';
7
+ export async function collectSourceEntries(resolvedPath, cwd) {
8
+ const entries = [];
9
+ if (await isDirectory(resolvedPath)) {
10
+ for await (const filePath of walkFiles(resolvedPath)) {
11
+ const entry = deriveSourceEntry(filePath, cwd);
12
+ if (!entry) {
13
+ throw new Error(`Unsupported file inside directory: ${relative(cwd, filePath)}`);
14
+ }
15
+ entries.push(entry);
16
+ }
17
+ return entries;
18
+ }
19
+ if (await isFile(resolvedPath)) {
20
+ const entry = deriveSourceEntry(resolvedPath, cwd);
21
+ if (!entry) {
22
+ throw new Error(`Unsupported file: ${relative(cwd, resolvedPath)}`);
23
+ }
24
+ entries.push(entry);
25
+ return entries;
26
+ }
27
+ throw new Error(`Unsupported path type: ${resolvedPath}`);
28
+ }
29
+ function deriveSourceEntry(absFilePath, cwd) {
30
+ const relativePath = relative(cwd, absFilePath);
31
+ const normalizedRelPath = normalizePathForProcessing(relativePath);
32
+ // Check if this is a platform-specific file (e.g., .cursor/commands/test.md)
33
+ const mapping = mapPlatformFileToUniversal(absFilePath);
34
+ if (mapping) {
35
+ // Universal content: prefix with .openpackage/
36
+ return {
37
+ sourcePath: absFilePath,
38
+ registryPath: [DIR_PATTERNS.OPENPACKAGE, mapping.subdir, mapping.relPath].filter(Boolean).join('/')
39
+ };
40
+ }
41
+ // Check if this is a platform root file (e.g., AGENTS.md, CLAUDE.md)
42
+ const fileName = normalizedRelPath.split('/').pop();
43
+ if (fileName && isPlatformRootFile(fileName) && !normalizedRelPath.includes('/')) {
44
+ // Root files: no prefix, stored at package root
45
+ return {
46
+ sourcePath: absFilePath,
47
+ registryPath: fileName
48
+ };
49
+ }
50
+ // All other files: root-level content, no .openpackage/ prefix
51
+ // Stored at package root, outside .openpackage/
52
+ return {
53
+ sourcePath: absFilePath,
54
+ registryPath: normalizedRelPath
55
+ };
56
+ }
57
+ //# sourceMappingURL=source-collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-collector.js","sourceRoot":"","sources":["../../../src/core/add/source-collector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAOnE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,YAAoB,EAAE,GAAW;IAC1E,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,IAAI,MAAM,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,sCAAsC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,iBAAiB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAmB,EAAE,GAAW;IACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,YAAY,CAAC,CAAC;IAEnE,6EAA6E;IAC7E,MAAM,OAAO,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAAC;IACxD,IAAI,OAAO,EAAE,CAAC;QACZ,+CAA+C;QAC/C,OAAO;YACL,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;SACpG,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACpD,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjF,gDAAgD;QAChD,OAAO;YACL,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,gDAAgD;IAChD,OAAO;QACL,UAAU,EAAE,WAAW;QACvB,YAAY,EAAE,iBAAiB;KAChC,CAAC;AACJ,CAAC"}
@@ -4,12 +4,16 @@ import { createHttpClient } from '../utils/http-client.js';
4
4
  * Fetch metadata about the currently authenticated API key.
5
5
  */
6
6
  export async function getCurrentApiKeyInfo(authOptions = {}) {
7
- const { apiKey } = await authManager.validateAuth(authOptions);
7
+ const apiKey = await authManager.getApiKey(authOptions);
8
+ if (!apiKey) {
9
+ throw new Error('No API key found. Configure a profile API key or use --api-key.');
10
+ }
8
11
  const httpClient = await createHttpClient(authOptions);
9
12
  return await httpClient.get('/api-keys/me', {
10
13
  headers: {
11
14
  'X-API-Key': apiKey
12
- }
15
+ },
16
+ skipAuth: true
13
17
  });
14
18
  }
15
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/core/api-keys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAc3D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,cAA2B,EAAE;IAE7B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAEvD,OAAO,MAAM,UAAU,CAAC,GAAG,CAAa,cAAc,EAAE;QACtD,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;SACpB;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,cAA2B,EAAE;IACpE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAE3D,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/core/api-keys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAc3D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,cAA2B,EAAE;IAE7B,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAEvD,OAAO,MAAM,UAAU,CAAC,GAAG,CAAa,cAAc,EAAE;QACtD,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;SACpB;QACD,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,cAA2B,EAAE;IACpE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAE3D,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;AAClC,CAAC"}
package/dist/core/auth.js CHANGED
@@ -17,8 +17,6 @@ class AuthManager {
17
17
  */
18
18
  async getApiKey(options = {}) {
19
19
  try {
20
- // 1. Command line API key override
21
- // Check if apiKey was explicitly provided (not undefined)
22
20
  if (options.apiKey !== undefined) {
23
21
  if (!options.apiKey || options.apiKey.trim() === '') {
24
22
  throw new ConfigError('API key provided via --api-key is empty. Please provide a valid API key.');
@@ -26,16 +24,14 @@ class AuthManager {
26
24
  logger.debug('Using API key from command line options');
27
25
  return options.apiKey;
28
26
  }
29
- // 2. Profile-based authentication
30
27
  const profileName = options.profile || process.env.OPENPACKAGEPROFILE || 'default';
31
- const isExplicitProfile = !!options.profile; // Profile was explicitly requested
28
+ const isExplicitProfile = !!options.profile;
32
29
  logger.debug(`Using profile: ${profileName}${isExplicitProfile ? ' (explicit)' : ''}`);
33
30
  const profile = await profileManager.getProfile(profileName);
34
31
  if (profile?.credentials?.api_key) {
35
32
  logger.debug(`Using API key from profile: ${profileName}`);
36
33
  return profile.credentials.api_key;
37
34
  }
38
- // 3. If explicit profile was requested but doesn't exist or has no credentials, error
39
35
  if (isExplicitProfile) {
40
36
  if (!profile) {
41
37
  throw new ConfigError(`Profile '${profileName}' not found. Please configure it with "opkg configure --profile ${profileName}"`);
@@ -44,7 +40,6 @@ class AuthManager {
44
40
  throw new ConfigError(`Profile '${profileName}' has no API key configured. Please configure it with "opkg configure --profile ${profileName}"`);
45
41
  }
46
42
  }
47
- // 4. Try default profile if not already tried (only for non-explicit profiles)
48
43
  if (profileName !== 'default') {
49
44
  const defaultProfile = await profileManager.getProfile('default');
50
45
  if (defaultProfile?.credentials?.api_key) {
@@ -58,69 +53,59 @@ class AuthManager {
58
53
  catch (error) {
59
54
  logger.error('Failed to get API key', { error });
60
55
  if (error instanceof ConfigError) {
61
- throw error; // Re-throw ConfigError as-is
56
+ throw error;
62
57
  }
63
58
  throw new ConfigError(`Failed to get API key: ${error}`);
64
59
  }
65
60
  }
66
- /**
67
- * Get registry URL
68
- */
69
61
  getRegistryUrl() {
70
- const registryUrl = "https://backend.openpackage.dev/v1";
71
- // const registryUrl = "http://localhost:3000/v1";
62
+ const registryUrl = 'https://backend.openpackage.dev/v1';
63
+ // const registryUrl = 'http://localhost:3000/v1'
72
64
  logger.debug(`Using registry URL: ${registryUrl}`);
73
65
  return registryUrl;
74
66
  }
75
- /**
76
- * Validate that required authentication is available
77
- */
78
67
  async validateAuth(options = {}) {
79
- const apiKey = await this.getApiKey(options);
80
68
  const registryUrl = this.getRegistryUrl();
69
+ const apiKey = await this.getApiKey(options);
81
70
  if (!apiKey) {
82
- throw new ConfigError('No API key found. Please configure a profile with "opkg configure" or use --api-key option.');
71
+ throw new ConfigError('No authentication found. Run "opkg login" to configure a profile API key.');
83
72
  }
84
- return { apiKey, registryUrl };
73
+ return { registryUrl };
85
74
  }
86
- /**
87
- * Get current profile name being used
88
- * Returns 'api-key' when API key is provided directly via command line
89
- */
90
75
  getCurrentProfile(options = {}) {
91
- // If API key is provided directly, it takes precedence over profile
92
76
  if (options.apiKey !== undefined && options.apiKey) {
93
77
  return '<api-key>';
94
78
  }
95
79
  return options.profile || process.env.OPENPACKAGEPROFILE || 'default';
96
80
  }
97
- /**
98
- * Check if authentication is configured
99
- */
100
81
  async isAuthenticated(options = {}) {
101
82
  try {
102
- const apiKey = await this.getApiKey(options);
103
83
  const registryUrl = this.getRegistryUrl();
104
- return !!(apiKey && registryUrl);
84
+ if (!registryUrl) {
85
+ return false;
86
+ }
87
+ const apiKey = await this.getApiKey(options);
88
+ return !!apiKey;
105
89
  }
106
90
  catch (error) {
107
91
  logger.debug('Authentication check failed', { error });
108
92
  return false;
109
93
  }
110
94
  }
111
- /**
112
- * Get authentication headers for HTTP requests
113
- */
114
95
  async getAuthHeaders(options = {}) {
115
- const { apiKey } = await this.validateAuth(options);
116
- return {
117
- 'X-API-Key': apiKey,
118
- 'User-Agent': `openpackage-cli/${getVersion()}`
119
- };
96
+ const registryUrl = this.getRegistryUrl();
97
+ if (!registryUrl) {
98
+ throw new ConfigError('Registry URL is not configured');
99
+ }
100
+ const apiKey = await this.getApiKey(options);
101
+ if (apiKey) {
102
+ return {
103
+ 'X-API-Key': apiKey,
104
+ 'User-Agent': `openpackage-cli/${getVersion()}`,
105
+ };
106
+ }
107
+ throw new ConfigError('No authentication found. Run "opkg login" to configure a profile API key.');
120
108
  }
121
- /**
122
- * Get authentication info for debugging/logging (without exposing sensitive data)
123
- */
124
109
  async getAuthInfo(options = {}) {
125
110
  const profile = this.getCurrentProfile(options);
126
111
  const apiKey = await this.getApiKey(options);
@@ -136,7 +121,7 @@ class AuthManager {
136
121
  profile,
137
122
  hasApiKey: !!apiKey,
138
123
  hasRegistryUrl: !!registryUrl,
139
- source
124
+ source,
140
125
  };
141
126
  }
142
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;;GAGG;AAGH,MAAM,WAAW;IAChB;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,CAAC,UAAuB,EAAE;QACxC,IAAI,CAAC;YACJ,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACrD,MAAM,IAAI,WAAW,CACpB,0EAA0E,CAC1E,CAAA;gBACF,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;gBACvD,OAAO,OAAO,CAAC,MAAM,CAAA;YACtB,CAAC;YAED,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,SAAS,CAAA;YAClF,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAA;YAC3C,MAAM,CAAC,KAAK,CAAC,kBAAkB,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAEtF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YAC5D,IAAI,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,+BAA+B,WAAW,EAAE,CAAC,CAAA;gBAC1D,OAAO,OAAO,CAAC,WAAW,CAAC,OAAO,CAAA;YACnC,CAAC;YAED,IAAI,iBAAiB,EAAE,CAAC;gBACvB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,MAAM,IAAI,WAAW,CACpB,YAAY,WAAW,mEAAmE,WAAW,GAAG,CACxG,CAAA;gBACF,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;oBACnC,MAAM,IAAI,WAAW,CACpB,YAAY,WAAW,mFAAmF,WAAW,GAAG,CACxH,CAAA;gBACF,CAAC;YACF,CAAC;YAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;gBACjE,IAAI,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;oBAC1C,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAA;oBAClD,OAAO,cAAc,CAAC,WAAW,CAAC,OAAO,CAAA;gBAC1C,CAAC;YACF,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;YACxD,OAAO,IAAI,CAAA;QACZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YAChD,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACZ,CAAC;YACD,MAAM,IAAI,WAAW,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;IAED,cAAc;QACb,MAAM,WAAW,GAAG,oCAAoC,CAAA;QACxD,iDAAiD;QACjD,MAAM,CAAC,KAAK,CAAC,uBAAuB,WAAW,EAAE,CAAC,CAAA;QAClD,OAAO,WAAW,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAuB,EAAE;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,WAAW,CACpB,2EAA2E,CAC3E,CAAA;QACF,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,CAAA;IACvB,CAAC;IAED,iBAAiB,CAAC,UAAuB,EAAE;QAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACpD,OAAO,WAAW,CAAA;QACnB,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,SAAS,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAuB,EAAE;QAC9C,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YACzC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YACb,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;YAC5C,OAAO,CAAC,CAAC,MAAM,CAAA;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YACtD,OAAO,KAAK,CAAA;QACb,CAAC;IACF,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAuB,EAAE;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACzC,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,MAAM,IAAI,WAAW,CAAC,gCAAgC,CAAC,CAAA;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,MAAM,EAAE,CAAC;YACZ,OAAO;gBACN,WAAW,EAAE,MAAM;gBACnB,YAAY,EAAE,mBAAmB,UAAU,EAAE,EAAE;aAC/C,CAAA;QACF,CAAC;QAED,MAAM,IAAI,WAAW,CACpB,2EAA2E,CAC3E,CAAA;IACF,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAuB,EAAE;QAM1C,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAEzC,IAAI,MAAM,GAAG,MAAM,CAAA;QACnB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,GAAG,cAAc,CAAA;QACxB,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,SAAS,CAAA;QACnB,CAAC;QAED,OAAO;YACN,OAAO;YACP,SAAS,EAAE,CAAC,CAAC,MAAM;YACnB,cAAc,EAAE,CAAC,CAAC,WAAW;YAC7B,MAAM;SACN,CAAA;IACF,CAAC;CACD;AAED,yCAAyC;AACzC,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAE7C,wCAAwC;AACxC,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -9,8 +9,9 @@ import { getOpenPackageDirectories } from './directory.js';
9
9
  const CONFIG_FILE_NAME = 'config.json';
10
10
  // Default configuration values
11
11
  const DEFAULT_CONFIG = {
12
- defaultAuthor: undefined,
13
- defaultLicense: 'MIT'
12
+ defaults: {
13
+ license: 'MIT'
14
+ }
14
15
  };
15
16
  class ConfigManager {
16
17
  constructor() {
@@ -29,7 +30,14 @@ class ConfigManager {
29
30
  if (await exists(this.configPath)) {
30
31
  logger.debug(`Loading config from: ${this.configPath}`);
31
32
  const fileConfig = await readJsonFile(this.configPath);
32
- this.config = { ...DEFAULT_CONFIG, ...fileConfig };
33
+ this.config = {
34
+ ...DEFAULT_CONFIG,
35
+ ...fileConfig,
36
+ defaults: {
37
+ ...DEFAULT_CONFIG.defaults,
38
+ ...(fileConfig.defaults ?? {})
39
+ }
40
+ };
33
41
  }
34
42
  else {
35
43
  logger.debug('Config file not found, using defaults');
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}