@visulima/vis 1.0.0-alpha.9 → 1.0.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 (278) hide show
  1. package/CHANGELOG.md +1854 -3
  2. package/LICENSE.md +13515 -10
  3. package/README.md +215 -39
  4. package/bin/resolve-binary.mjs +85 -0
  5. package/bin/vis.mjs +76 -0
  6. package/dashboard/dist/index.html +152 -0
  7. package/dist/bin.d.ts +1 -0
  8. package/dist/bin.js +1 -2
  9. package/dist/binx.js +3 -0
  10. package/dist/config/index.d.ts +3276 -0
  11. package/dist/config/index.js +1 -0
  12. package/dist/generate/index.d.ts +1 -1
  13. package/dist/generate/index.js +1 -1
  14. package/dist/packem_chunks/CONFIG_FILES.js +8 -0
  15. package/dist/packem_chunks/DEFAULT_CLEAN_KEEP.js +1 -0
  16. package/dist/packem_chunks/agent-instructions.js +11 -0
  17. package/dist/packem_chunks/bloom-status.js +2 -0
  18. package/dist/packem_chunks/bloom-sync.js +2 -0
  19. package/dist/packem_chunks/cache-attestation.js +1 -0
  20. package/dist/packem_chunks/catalog-detector.js +1 -0
  21. package/dist/packem_chunks/catalog.js +114 -0
  22. package/dist/packem_chunks/cli-exec.js +1 -0
  23. package/dist/packem_chunks/cli-main.js +268 -0
  24. package/dist/packem_chunks/defineReleasePlugin.js +3 -0
  25. package/dist/packem_chunks/detect.js +3 -0
  26. package/dist/packem_chunks/detect2.js +8 -0
  27. package/dist/packem_chunks/devtools.js +4 -0
  28. package/dist/packem_chunks/discord.js +4 -0
  29. package/dist/packem_chunks/dispatch.js +4 -0
  30. package/dist/packem_chunks/doctor-probe.js +2 -0
  31. package/dist/packem_chunks/dynamic-import.js +1 -0
  32. package/dist/packem_chunks/extra-files.js +3 -0
  33. package/dist/packem_chunks/fix.js +11 -0
  34. package/dist/packem_chunks/git.js +3 -0
  35. package/dist/packem_chunks/group-tags.js +1 -0
  36. package/dist/packem_chunks/handler.js +1 -1
  37. package/dist/packem_chunks/handler10.js +5 -1
  38. package/dist/packem_chunks/handler11.js +1 -1
  39. package/dist/packem_chunks/handler12.js +26 -152
  40. package/dist/packem_chunks/handler13.js +5 -1
  41. package/dist/packem_chunks/handler14.js +1 -3
  42. package/dist/packem_chunks/handler15.js +1 -1
  43. package/dist/packem_chunks/handler16.js +1 -2
  44. package/dist/packem_chunks/handler17.js +1 -7
  45. package/dist/packem_chunks/handler18.js +1 -1
  46. package/dist/packem_chunks/handler19.js +5 -19
  47. package/dist/packem_chunks/handler2.js +1 -1
  48. package/dist/packem_chunks/handler20.js +2 -428
  49. package/dist/packem_chunks/handler21.js +2 -22
  50. package/dist/packem_chunks/handler22.js +14 -3
  51. package/dist/packem_chunks/handler23.js +1 -5
  52. package/dist/packem_chunks/handler24.js +1 -1
  53. package/dist/packem_chunks/handler25.js +1 -20
  54. package/dist/packem_chunks/handler26.js +5 -1
  55. package/dist/packem_chunks/handler27.js +1 -1
  56. package/dist/packem_chunks/handler28.js +3 -1
  57. package/dist/packem_chunks/handler29.js +1 -2
  58. package/dist/packem_chunks/handler3.js +4 -2
  59. package/dist/packem_chunks/handler30.js +1 -22
  60. package/dist/packem_chunks/handler31.js +2 -1
  61. package/dist/packem_chunks/handler32.js +2 -1
  62. package/dist/packem_chunks/handler33.js +2 -37
  63. package/dist/packem_chunks/handler34.js +3 -3
  64. package/dist/packem_chunks/handler35.js +6 -23
  65. package/dist/packem_chunks/handler36.js +1 -5
  66. package/dist/packem_chunks/handler37.js +36 -21
  67. package/dist/packem_chunks/handler38.js +8 -1
  68. package/dist/packem_chunks/handler39.js +9 -2
  69. package/dist/packem_chunks/handler4.js +4 -5
  70. package/dist/packem_chunks/handler40.js +75 -1
  71. package/dist/packem_chunks/handler41.js +5 -5
  72. package/dist/packem_chunks/handler42.js +4 -1
  73. package/dist/packem_chunks/handler43.js +3 -24
  74. package/dist/packem_chunks/handler44.js +2 -3
  75. package/dist/packem_chunks/handler45.js +1 -1
  76. package/dist/packem_chunks/handler46.js +1 -0
  77. package/dist/packem_chunks/handler47.js +1 -0
  78. package/dist/packem_chunks/handler48.js +3 -0
  79. package/dist/packem_chunks/handler49.js +1 -0
  80. package/dist/packem_chunks/handler5.js +6 -4
  81. package/dist/packem_chunks/handler50.js +7 -0
  82. package/dist/packem_chunks/handler51.js +33 -0
  83. package/dist/packem_chunks/handler52.js +3 -0
  84. package/dist/packem_chunks/handler53.js +8 -0
  85. package/dist/packem_chunks/handler54.js +4 -0
  86. package/dist/packem_chunks/handler55.js +1 -0
  87. package/dist/packem_chunks/handler56.js +12 -0
  88. package/dist/packem_chunks/handler57.js +11 -0
  89. package/dist/packem_chunks/handler58.js +5 -0
  90. package/dist/packem_chunks/handler59.js +11 -0
  91. package/dist/packem_chunks/handler6.js +8 -2
  92. package/dist/packem_chunks/handler60.js +3 -0
  93. package/dist/packem_chunks/handler61.js +22 -0
  94. package/dist/packem_chunks/handler62.js +61 -0
  95. package/dist/packem_chunks/handler63.js +3 -0
  96. package/dist/packem_chunks/handler64.js +6 -0
  97. package/dist/packem_chunks/handler65.js +9 -0
  98. package/dist/packem_chunks/handler66.js +2 -0
  99. package/dist/packem_chunks/handler67.js +24 -0
  100. package/dist/packem_chunks/handler68.js +25 -0
  101. package/dist/packem_chunks/handler69.js +153 -0
  102. package/dist/packem_chunks/handler7.js +1 -24
  103. package/dist/packem_chunks/handler70.js +10 -0
  104. package/dist/packem_chunks/handler71.js +23 -0
  105. package/dist/packem_chunks/handler72.js +322 -0
  106. package/dist/packem_chunks/handler73.js +708 -0
  107. package/dist/packem_chunks/handler74.js +48 -0
  108. package/dist/packem_chunks/handler75.js +27 -0
  109. package/dist/packem_chunks/handler76.js +3 -0
  110. package/dist/packem_chunks/handler77.js +190 -0
  111. package/dist/packem_chunks/handler78.js +38 -0
  112. package/dist/packem_chunks/handler8.js +1 -6
  113. package/dist/packem_chunks/handler9.js +1 -8
  114. package/dist/packem_chunks/heal-accept.js +10 -0
  115. package/dist/packem_chunks/heal.js +14 -0
  116. package/dist/packem_chunks/help-command.js +31 -0
  117. package/dist/packem_chunks/index.js +1 -7
  118. package/dist/packem_chunks/index2.js +802 -0
  119. package/dist/packem_chunks/index3.js +7 -0
  120. package/dist/packem_chunks/index4.js +135 -0
  121. package/dist/packem_chunks/index5.js +73 -0
  122. package/dist/packem_chunks/interface.js +2 -0
  123. package/dist/packem_chunks/keys-refresh.js +4 -0
  124. package/dist/packem_chunks/lean.js +4 -0
  125. package/dist/packem_chunks/list.js +3 -0
  126. package/dist/packem_chunks/loader.js +4 -1
  127. package/dist/packem_chunks/loader2.js +1 -0
  128. package/dist/packem_chunks/orchestrator.js +42 -0
  129. package/dist/packem_chunks/pre-mode.js +2 -0
  130. package/dist/packem_chunks/print-config.js +2 -0
  131. package/dist/packem_chunks/prompts.js +7 -0
  132. package/dist/packem_chunks/prune.js +3 -0
  133. package/dist/packem_chunks/publish-guards.js +1 -0
  134. package/dist/packem_chunks/registry.js +48 -0
  135. package/dist/packem_chunks/resolveFormatter.js +9 -0
  136. package/dist/packem_chunks/run.js +1 -0
  137. package/dist/packem_chunks/security.js +1 -0
  138. package/dist/packem_chunks/shell-runner.js +1 -0
  139. package/dist/packem_chunks/slack.js +2 -0
  140. package/dist/packem_chunks/snapshot.js +2 -0
  141. package/dist/packem_chunks/stage-publisher.js +1 -0
  142. package/dist/packem_chunks/staged-registry.js +2 -0
  143. package/dist/packem_chunks/state.js +3 -0
  144. package/dist/packem_chunks/status.js +2 -0
  145. package/dist/packem_chunks/success-walk.js +8 -0
  146. package/dist/packem_chunks/sync.js +2 -0
  147. package/dist/packem_chunks/sync2.js +2 -0
  148. package/dist/packem_chunks/tar.js +3 -0
  149. package/dist/packem_chunks/tripwire.js +2 -0
  150. package/dist/packem_chunks/ts-loader.js +22 -0
  151. package/dist/packem_chunks/verify-lockfile.js +2 -0
  152. package/dist/packem_chunks/version-resolver.js +2 -0
  153. package/dist/packem_chunks/webhook.js +1 -0
  154. package/dist/packem_chunks/workflow-templates.js +167 -0
  155. package/dist/packem_chunks/workspace.js +2 -0
  156. package/dist/packem_shared/AfterAllProjectsVersioned-CAKI2nWf.js +1 -0
  157. package/dist/packem_shared/MultiSpinner-B9U0-aE3-B-gIXhFk.js +3 -0
  158. package/dist/packem_shared/ReleaseClient-BY4OZNCK.js +1 -0
  159. package/dist/packem_shared/Table-BGIHvenQ-D2oJtNQj.js +34 -0
  160. package/dist/packem_shared/VisReleaseError-DMGRBTNO.js +1 -0
  161. package/dist/packem_shared/_commonjsHelpers-B5Y90VFO.js +1 -0
  162. package/dist/packem_shared/advisories-CaP4uNhD.js +1 -0
  163. package/dist/packem_shared/affected-shas-BfO3PDJq.js +1 -0
  164. package/dist/packem_shared/ai-analysis-CO7No4rt.js +68 -0
  165. package/dist/packem_shared/ai-fix-B4u2zlVG.js +43 -0
  166. package/dist/packem_shared/anolilab-text-CAM_E6uK.js +13 -0
  167. package/dist/packem_shared/api.d-BPftyU9r.d.ts +27 -0
  168. package/dist/packem_shared/augment-8z86AwtF.js +4 -0
  169. package/dist/packem_shared/bin-Cv8vsMEo.js +1 -0
  170. package/dist/packem_shared/build-scripts-D477Ou-x.js +1 -0
  171. package/dist/packem_shared/command-runtime-EWjmSxPj.js +1 -0
  172. package/dist/packem_shared/compile-cache-B_Vf_WxT.js +3 -0
  173. package/dist/packem_shared/createAdapter-bU4DIP3F.js +1 -0
  174. package/dist/packem_shared/createVersionActions-BK43SNDH.js +1 -0
  175. package/dist/packem_shared/cyclonedx-CDWHbD9s.js +4 -0
  176. package/dist/packem_shared/defineFormatter-D5dCp6Kv.js +1 -0
  177. package/dist/packem_shared/definePlugin-DoUcoYSy.js +1 -0
  178. package/dist/packem_shared/dependency-scan-P52jY0pU.js +1 -0
  179. package/dist/packem_shared/docker-CD7o1D1o.js +59 -0
  180. package/dist/packem_shared/env-Cpxa_7UE.js +27 -0
  181. package/dist/packem_shared/failure-log-MOhz-TBv.js +2 -0
  182. package/dist/packem_shared/giget-DVTFJlbR.js +2 -0
  183. package/dist/packem_shared/glob-DMbPwGSj-uzODoE-1.js +1 -0
  184. package/dist/packem_shared/index-B0EsgdzO.js +1 -0
  185. package/dist/packem_shared/index-BAUIIRZJ.js +1 -0
  186. package/dist/packem_shared/index-BVuCxe14.js +22 -0
  187. package/dist/packem_shared/index-CdTXvj-V.js +1 -0
  188. package/dist/packem_shared/index-CgXLAAVI.js +28 -0
  189. package/dist/packem_shared/index-DjTWo3sH.js +1 -0
  190. package/dist/packem_shared/index.server-J83sowC4.js +2 -0
  191. package/dist/packem_shared/interface.d-B7VK2rcH.d.ts +148 -0
  192. package/dist/packem_shared/interface.d-Cezzifoh.d.ts +106 -0
  193. package/dist/packem_shared/license-t5KnNX6v.js +1 -0
  194. package/dist/packem_shared/lifecycle-hzwghh5a.js +2 -0
  195. package/dist/packem_shared/lockfile-CWcVTdRc.js +1 -0
  196. package/dist/packem_shared/main-B3juSU5z.js +1 -0
  197. package/dist/packem_shared/manifests-CaPqgQxW.js +1 -0
  198. package/dist/packem_shared/min-release-age-skpcnlpk.js +34 -0
  199. package/dist/packem_shared/missing-package-json-_hOp4AW5.js +1 -0
  200. package/dist/packem_shared/native-config-sync-CFi1iQNG.js +21 -0
  201. package/dist/packem_shared/osv-bloom-BAyJUnRx.js +2 -0
  202. package/dist/packem_shared/otelPlugin-DmKDBaPo.js +1 -0
  203. package/dist/packem_shared/packument-CYxvm590.js +1 -0
  204. package/dist/packem_shared/peer-warnings-BXAzXqY3.js +1 -0
  205. package/dist/packem_shared/plugins.d-ND23R9I3.d.ts +4 -0
  206. package/dist/packem_shared/pm-runner-mVFjedM6.js +1 -0
  207. package/dist/packem_shared/prompt-DjXHVgYU.js +1 -0
  208. package/dist/packem_shared/provenance-CI_WQx7G.js +1 -0
  209. package/dist/packem_shared/public-api-WqUCiyIe.js +131 -0
  210. package/dist/packem_shared/readJsonSync-DuMMeB3s-Cx08VBQg.js +1 -0
  211. package/dist/packem_shared/registry-keys-AGlSEY6R.js +1 -0
  212. package/dist/packem_shared/resolve-explicit-DVE9cfkm.js +5 -0
  213. package/dist/packem_shared/resolve-runtime-CGHf-wHz.js +1 -0
  214. package/dist/packem_shared/run-file-Bs_E9O6O.js +1 -0
  215. package/dist/packem_shared/runtime-check-pS2XH4BO.js +1 -0
  216. package/dist/packem_shared/runtime-process-Dmz0vCJy-DUwTvH1J.js +1 -0
  217. package/dist/packem_shared/s1ngularity-xmrq5T5r.js +1 -0
  218. package/dist/packem_shared/scan-progress-DQ4TMXcb.js +2 -0
  219. package/dist/packem_shared/selectors-CRgS4bU9.js +3 -0
  220. package/dist/packem_shared/signatures-Dp3th1DB.js +2 -0
  221. package/dist/packem_shared/slug-DoueYuLo.js +1 -0
  222. package/dist/packem_shared/spinner-DuJJvFTl.js +1 -0
  223. package/dist/packem_shared/sticky-comment-D6_7-w8T.js +1 -0
  224. package/dist/packem_shared/subtree-C7bZuiSQ.js +2 -0
  225. package/dist/packem_shared/symbols-DPTlrJ3B.js +1 -0
  226. package/dist/packem_shared/tabs-CgxCvjCY.js +1 -0
  227. package/dist/packem_shared/target-merge-D2eTghgd.js +11 -0
  228. package/dist/packem_shared/target-options-TM6ETDAS.js +1 -0
  229. package/dist/packem_shared/toolchain-B5KwUZfq.js +5 -0
  230. package/dist/packem_shared/typosquats-C0layQsP.js +1 -0
  231. package/dist/packem_shared/use-measured-height-Drobr4fe.js +1 -0
  232. package/dist/packem_shared/utils-CRueU43T.js +1 -0
  233. package/dist/packem_shared/verify-Cjo4EBFZ.js +1 -0
  234. package/dist/packem_shared/vis-update-app-qIkyvrd1.js +1 -0
  235. package/dist/packem_shared/watch-BnE1TzYn.js +1 -0
  236. package/dist/packem_shared/watch-loop-Irf3Pm-1.js +11 -0
  237. package/dist/release/core/changelog/index.d.ts +5 -0
  238. package/dist/release/core/changelog/index.js +1 -0
  239. package/dist/release/core/package-managers/index.d.ts +6 -0
  240. package/dist/release/core/package-managers/index.js +1 -0
  241. package/dist/release/core/version-actions/index.d.ts +14 -0
  242. package/dist/release/core/version-actions/index.js +1 -0
  243. package/dist/release/index.d.ts +233 -0
  244. package/dist/release/index.js +1 -0
  245. package/dist/release/plugin-sdk.d.ts +128 -0
  246. package/dist/release/plugin-sdk.js +1 -0
  247. package/dist/release/presets.d.ts +225 -0
  248. package/dist/release/presets.js +1 -0
  249. package/dist/release/types.d.ts +1493 -0
  250. package/dist/release/types.js +1 -0
  251. package/dist/runtime/preload.d.ts +1 -0
  252. package/dist/runtime/preload.js +1 -0
  253. package/index.d.ts +450 -0
  254. package/index.js +663 -556
  255. package/package.json +105 -62
  256. package/schemas/project.schema.json +872 -225
  257. package/schemas/vis-config.schema.json +6309 -264
  258. package/schemas/vis-release-config.schema.json +1423 -0
  259. package/skills/vis/SKILL.md +96 -0
  260. package/templates/buildkite-ci/.buildkite/pipeline.yml.tera +85 -0
  261. package/templates/buildkite-ci/template.yml +20 -0
  262. package/dist/config.d.ts +0 -1087
  263. package/dist/config.js +0 -1
  264. package/dist/packem_shared/VisUpdateApp-BBx3idMI.js +0 -1
  265. package/dist/packem_shared/ai-analysis-DDqXRFxY.js +0 -67
  266. package/dist/packem_shared/bin-BaZZ32BK.js +0 -93
  267. package/dist/packem_shared/cache-directory-DL8hfXeG.js +0 -1
  268. package/dist/packem_shared/catalog-CuSpuB_R.js +0 -12
  269. package/dist/packem_shared/dependency-scan-BoLG2Fez.js +0 -1
  270. package/dist/packem_shared/docker-BcfqH4Av.js +0 -2
  271. package/dist/packem_shared/flakiness-DSIHZGBT.js +0 -1
  272. package/dist/packem_shared/otelPlugin-DxyvBcXO.js +0 -1
  273. package/dist/packem_shared/runtime-check-CGHal8SO.js +0 -1
  274. package/dist/packem_shared/selectors-CfH9ZY08.js +0 -3
  275. package/dist/packem_shared/symbols-CIMw60-G.js +0 -1
  276. package/dist/packem_shared/toolchain-C3ZG0o_X.js +0 -5
  277. package/dist/packem_shared/typosquats-Bpq4zcWL.js +0 -1
  278. package/dist/packem_shared/utils-DrNg0XTR.js +0 -1
@@ -0,0 +1 @@
1
+ import{CONFIG_FILES as o,SECURITY_DEFAULTS as e,TASK_CONFIG_FILES as n,applyDefaults as l,defineConfig as C,defineTaskConfig as g,findVisConfigFile as s,findVisTaskConfigFile as a,loadVisConfig as d,loadVisTaskConfig as F}from"../packem_chunks/CONFIG_FILES.js";import{definePlugin as T}from"../packem_shared/definePlugin-DoUcoYSy.js";import{otelPlugin as t}from"../packem_shared/otelPlugin-DmKDBaPo.js";export{o as CONFIG_FILES,e as SECURITY_DEFAULTS,n as TASK_CONFIG_FILES,l as applyDefaults,C as defineConfig,T as definePlugin,g as defineTaskConfig,s as findVisConfigFile,a as findVisTaskConfigFile,d as loadVisConfig,F as loadVisTaskConfig,t as otelPlugin};
@@ -147,7 +147,7 @@ interface DiscoveredTemplate {
147
147
  /** Absolute path on disk (file for native, directory for moon). */
148
148
  path: string;
149
149
  /** Source classification — affects load + listing. */
150
- source: "config" | "moon" | "native" | "remote";
150
+ source: "builtin" | "config" | "moon" | "native" | "remote";
151
151
  }
152
152
  /**
153
153
  * Identity helper for type inference. Authors get autocomplete + checks
@@ -1 +1 @@
1
- var t=Object.defineProperty;var r=(e,a)=>t(e,"name",{value:a,configurable:!0});var c=Object.defineProperty,l=r((e,a)=>c(e,"name",{value:a,configurable:!0}),"a");const o=l(e=>e,"createTemplate");export{o as createTemplate};
1
+ const t=e=>e;export{t as createTemplate};
@@ -0,0 +1,8 @@
1
+ import{createRequire as G}from"node:module";import{R as O,m as P}from"../packem_shared/target-merge-D2eTghgd.js";import{m as c,A as b,f as p,a as h,H as y,O as C}from"../packem_shared/index-BVuCxe14.js";import{i as I}from"./ts-loader.js";import{otelPlugin as jt}from"../packem_shared/otelPlugin-DmKDBaPo.js";import{definePlugin as Tt}from"../packem_shared/definePlugin-DoUcoYSy.js";import{a as _}from"../packem_shared/readJsonSync-DuMMeB3s-Cx08VBQg.js";const F=G(import.meta.url),d=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,k=t=>{if(typeof d<"u"&&d.versions&&d.versions.node){const[e,s]=d.versions.node.split(".").map(Number);if(e>22||e===22&&s>=3||e===20&&s>=16)return d.getBuiltinModule(t)}return F(t)},{createHash:T}=k("node:crypto"),{readdirSync:$,readFileSync:V}=k("node:fs"),{createRequire:N}=k("node:module");class l extends Error{chain;constructor(e,s,o){super(e,o),this.name=this.constructor.name,this.chain=s}}class K extends l{constructor(e,s){const o=[...s,`${e} (re-enters)`].join(" → ");super(`Config cycle: ${o}`,s)}}class x extends l{filePath;removedKeys;constructor(e,s,o){const r=[`${e} uses removed keys.`,""];for(const n of o){const a=n.location?` (at ${n.location})`:"";r.push(` • ${n.name}${a} → renamed to \`${n.renamedTo}\``);for(const i of n.children??[])r.push(` ↳ ${i.name} → renamed to \`${i.renamedTo}\``)}r.push("","Run `vis migrate self` to auto-rewrite the config (use --dry-run to preview)."),super(r.join(`
2
+ `),s),this.filePath=e,this.removedKeys=o}}class j extends l{constructor(e,s,o){const r=o instanceof Error?o.message:String(o),n=s.length>0?`
3
+ Chain: ${s.join(" → ")}`:"";super(`Failed to load ${e}: ${r}${n}`,s,{cause:o})}}const L=t=>t.join(" → ");class g extends l{constructor(e,s,o){const r=s.length>0?s[s.length-1]:"<unknown>",n=o.length>0?`
4
+ Tried:
5
+ ${o.join(`
6
+ `)}`:"";super(`Cannot resolve "${e}" extended from ${r}.${n}
7
+ Chain: ${L(s)}`,s)}}const q=t=>{const e=[];if(Object.hasOwn(t,"targetDefaults")&&e.push({name:"targetDefaults",renamedTo:"tasks"}),Object.hasOwn(t,"taskRunnerOptions")&&e.push({name:"taskRunnerOptions",renamedTo:"taskRunner"}),Object.hasOwn(t,"taskDefaults")){const{taskDefaults:s}=t,o=[];if(Array.isArray(s))for(const[r,n]of s.entries())n&&typeof n=="object"&&(Object.hasOwn(n,"scope")&&o.push({location:`taskDefaults[${r}].scope`,name:"scope",renamedTo:"match"}),Object.hasOwn(n,"targets")&&o.push({location:`taskDefaults[${r}].targets`,name:"targets",renamedTo:"tasks"}));e.push({children:o.length>0?o:void 0,name:"taskDefaults",renamedTo:"scopedTasks"})}else if(Array.isArray(t.scopedTasks))for(const[s,o]of t.scopedTasks.entries())o&&typeof o=="object"&&(Object.hasOwn(o,"scope")&&e.push({location:`scopedTasks[${s}].scope`,name:"scope",renamedTo:"match"}),Object.hasOwn(o,"targets")&&e.push({location:`scopedTasks[${s}].targets`,name:"targets",renamedTo:"tasks"}));return e},M=t=>Object.hasOwn(t,"targets")&&!Object.hasOwn(t,"tasks")?[{name:"targets",renamedTo:"tasks"}]:[],U=(t,e,s)=>{if(!s||typeof s!="object")return;const o=q(s);if(o.length>0)throw new x(t,e,o)},H=(t,e,s)=>{if(!s||typeof s!="object")return;const o=M(s);if(o.length>0)throw new x(t,e,o)},E=["vis.config.ts","vis.config.mts","vis.config.cts","vis.config.js","vis.config.mjs","vis.config.cjs"],W=new Set(E),R=["vis.task.ts","vis.task.mts","vis.task.cts","vis.task.js","vis.task.mjs","vis.task.cjs"],B=new Set(R),ht=2880,m={blockExoticSubdeps:!0,policies:{installScripts:{strict:!0},publisherChange:{ignoreAfter:43200,mode:"no-downgrade"}}},Y=t=>{if(!t)return{...m};const e=m.policies??{},s=t.policies??{},o={...e,...s};for(const r of Object.keys(e)){const n=e[r],a=s[r];n!==void 0&&a!==void 0&&(o[r]={...n,...a})}return{...m,...t,policies:o}},v=t=>({...t,security:Y(t.security),update:{security:!0,target:"minor",...t.update}}),z=t=>{let e;try{e=$(t)}catch{return}const s=new Set(e.filter(o=>W.has(o)));for(const o of E)if(s.has(o))return c(t,o)},J=t=>{let e;try{e=$(t)}catch{return}const s=new Set(e.filter(o=>B.has(o)));for(const o of R)if(s.has(o))return c(t,o)},S=t=>T("sha256").update(V(t)).digest("hex"),Q=t=>{const e=T("sha256"),s=[...t].sort();for(const o of s)e.update(o),e.update(":"),e.update(S(o)),e.update(`
8
+ `);return e.digest("hex")},X=t=>{const e=c(t,"node_modules");if(p(e)){const o=c(e,".cache","vis");return h(o),c(o,"vis-config-cache.json")}const s=O("vis",{create:!0,cwd:t});return s?c(s,"vis-config-cache.json"):void 0},Z=(t,e)=>{if(p(t))try{const s=_(t);if(s.hash===e)return s.config}catch{}},tt=(t,e,s)=>{try{h(y(t)),C(t,{config:s,hash:e})}catch{}},et=t=>t===void 0?[]:Array.isArray(t)?t:[t],st=(t,e,s)=>{if(b(t))throw new g(t,[...s,e],["Absolute paths in `extends` are not supported. Use a relative path or an npm package name."]);const o=[];if(t.startsWith("./")||t.startsWith("../")){const r=y(e),n=c(r,t);if(o.push(n),p(n))return n;throw new g(t,[...s,e],o)}try{return N(e).resolve(t)}catch{throw o.push(`require.resolve("${t}") from ${e}`),new g(t,[...s,e],o)}},A=async(t,e)=>{let s;try{s=(await I(t)).default??{}}catch(o){throw new j(t,e,o)}try{return(typeof s=="function"?await s()??{}:s)??{}}catch(o){throw new j(t,e,o)}},ot=(t,e)=>{const s={...t,...e};if(t.tasks||e.tasks){const o=new Set([...Object.keys(t.tasks??{}),...Object.keys(e.tasks??{})]),r={};for(const n of o)r[n]=P(t.tasks?.[n],e.tasks?.[n]);s.tasks=r}if((t.scopedTasks||e.scopedTasks)&&(s.scopedTasks=[...t.scopedTasks??[],...e.scopedTasks??[]]),(t.fileGroups||e.fileGroups)&&(s.fileGroups={...t.fileGroups,...e.fileGroups}),(t.taskGroups||e.taskGroups)&&(s.taskGroups={...t.taskGroups,...e.taskGroups}),t.security||e.security){const o=t.security?.policies??{},r=e.security?.policies??{},n={...o,...r};for(const a of Object.keys(o)){const i=o[a],f=r[a];i!==void 0&&f!==void 0&&(n[a]={...i,...f})}s.security={...t.security,...e.security,acceptedRisks:{...t.security?.acceptedRisks,...e.security?.acceptedRisks},policies:n}}return(t.update||e.update)&&(s.update={...t.update,...e.update}),(t.taskRunner||e.taskRunner)&&(s.taskRunner={...t.taskRunner,...e.taskRunner}),delete s.extends,s},D=async(t,e,s,o,r)=>{if(s.has(t))throw new K(t,e);if(!o.has(t)){s.add(t);try{const n=await A(t,e);U(t,e,n);const a=et(n.extends);for(const i of a){const f=st(i,t,e);await D(f,[...e,t],s,o,r)}o.set(t,n),r.push(t)}finally{s.delete(t)}}},lt=async(t,e)=>{let s;if(e?.explicitConfigPath){const u=b(e.explicitConfigPath)?e.explicitConfigPath:c(t,e.explicitConfigPath);if(!p(u))throw new Error(`Cannot find config file at ${u}`);s=u}else s=z(t);if(!s)return v({});const o=new Set,r=new Map,n=[];await D(s,[],o,r,n);const a=Q(n),i=X(t);if(i){const u=Z(i,a);if(u)return u}let f={};for(const u of n)f=ot(f,r.get(u));const w=v(f);return i&&tt(i,a,w),w},nt=t=>t.replaceAll(/[^\w.-]+/g,"_"),rt=(t,e)=>{const s=c(t,"node_modules"),o=nt(e);if(p(s)){const n=c(s,".cache","vis","task-configs");return h(n),c(n,`${o}.json`)}const r=O("vis",{create:!0,cwd:t});return r?c(r,"task-configs",`${o}.json`):void 0},at=(t,e)=>{if(p(t))try{const s=_(t);if(s.hash===e)return s.config}catch{}},it=(t,e,s)=>{try{h(y(t)),C(t,{config:s,hash:e})}catch{}},gt=async(t,e,s)=>{const o=J(e);if(!o)return;const r=S(o),n=rt(t,s);if(n){const f=at(n,r);if(f)return f}const a=await A(o,[]);H(o,[],a);const i=a;return n&&it(n,r,i),i},mt=t=>t,kt=t=>t;export{E as CONFIG_FILES,ht as DEFAULT_MIN_RELEASE_AGE_MINUTES,m as SECURITY_DEFAULTS,R as TASK_CONFIG_FILES,v as applyDefaults,kt as defineConfig,Tt as definePlugin,mt as defineTaskConfig,z as findVisConfigFile,J as findVisTaskConfigFile,lt as loadVisConfig,gt as loadVisTaskConfig,jt as otelPlugin};
@@ -0,0 +1 @@
1
+ const t=".vis/release",a="main",r=e=>e,p={access:"public",aggregateRelease:!1,allowCustomCommands:!1,baseBranch:a,changedFilePatterns:["**"],changelog:"default",changesDir:t,defaultManaged:!1,fixed:[],ignore:[],include:[],linked:[],postPublishCommand:"",postVersionCommand:"",prePublishCommand:"",preVersionCommand:"",privatePackages:{tag:!1,version:!1},updateInternalDependencies:"out-of-range"},o={dependencies:{bumpAs:"patch",trigger:"patch"},devDependencies:!1,optionalDependencies:{bumpAs:"patch",trigger:"minor"},peerDependencies:{bumpAs:"match",trigger:"major"}},n=["scripts","devDependencies","private","workspaces","vis-release","bumpy","release","nx","lint-staged","husky","commitlint","eslint","prettier","vitest","tsup","packem","tsdown","@visulima/packem","pnpm"],d=["name","version","description","keywords","homepage","bugs","repository","funding","author","contributors","license","dependencies","peerDependencies","peerDependenciesMeta","optionalDependencies","engines","os","cpu","type","sideEffects","main","module","types","typings","exports","imports","bin","files","publishConfig","napi"],l=e=>{if(e===!1)return[];if(e===void 0||e===!0)return[...n];const s=new Set([...n,...e.strip??[]]);for(const i of e.keep??[])s.delete(i);return[...s]};export{a as DEFAULT_BASE_BRANCH,t as DEFAULT_CHANGES_DIR,d as DEFAULT_CLEAN_KEEP,n as DEFAULT_CLEAN_STRIP,p as DEFAULT_CONFIG,o as DEFAULT_DEPENDENCY_BUMP_RULES,r as defineReleaseConfig,l as resolveCleanStripList};
@@ -0,0 +1,11 @@
1
+ const s="<!-- BEGIN vis release (managed) -->",i="<!-- END vis release (managed) -->",o="## Releasing with vis\n\nThis repo uses `@visulima/vis` for releases. To record a change for the next release, add a change file:\n\n```bash\nvis release add --packages '@scope/pkg:minor' --message 'Describe the change'\n```\n\nChange files live in `.vis/release/*.md` as YAML-frontmatter Markdown — one per logical change:\n\n```markdown\n---\n\"@scope/pkg\": minor\n---\n\nWhat changed, in changelog prose.\n```\n\n- Pick the bump by impact: `major` (breaking), `minor` (feature), `patch` (fix). You may also omit the level and let a heading decide (`#`→major, `##`→minor, `###`→patch).\n- Do NOT bump versions or edit `CHANGELOG.md` by hand — `vis release version` does that from the change files.\n- Preview the effect with `vis release status`; never run `vis release publish` locally.\n- One change file per PR is expected; an empty frontmatter (`---\\n{}\\n---`) records a deliberate no-release change.",c=()=>`${s}
2
+
3
+ ${o}
4
+
5
+ ${i}`,r=e=>e.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`),t=new RegExp(String.raw`${r(s)}[\s\S]*?${r(i)}`),l=e=>{const n=c();if(e===void 0||e.trim()==="")return{changed:!0,content:`# AGENTS.md
6
+
7
+ ${n}
8
+ `};if(t.test(e)){const a=e.replace(t,n);return{changed:a!==e,content:a}}return{changed:!0,content:`${e.replace(/\n*$/,`
9
+ `)}
10
+ ${n}
11
+ `}};export{o as AGENT_SECTION_BODY,c as renderAgentSection,l as upsertAgentSection};
@@ -0,0 +1,2 @@
1
+ import{s as c,E as n,I as f}from"../packem_shared/index.server-J83sowC4.js";import{p as i}from"./cli-main.js";import{g as l}from"../packem_shared/osv-bloom-BAyJUnRx.js";const a=t=>{if(!t)return"never";const r=Date.parse(t);if(Number.isNaN(r))return t;const e=Date.now()-r;if(e<0)return t;const o=Math.floor(e/6e4);if(o<1)return"just now";if(o<60)return`${o}m ago`;const s=Math.floor(o/60);return s<24?`${s}h ago`:`${Math.floor(s/24)}d ago`},m=t=>t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(1)} KB`:`${(t/(1024*1024)).toFixed(1)} MB`,u=async({options:t,workspaceRoot:r})=>{if(!r)throw new Error("Could not determine workspace root. Run this command inside a workspace.");const e=await l(r,t.cacheDir);if(t.format==="json"){process.stdout.write(`${JSON.stringify(e,void 0,2)}
2
+ `);return}if(i.info(`Cache: ${e.cacheDir}`),!e.present){i.warn(`No osv-bloom filter yet. Run ${c("vis advisories bloom sync")} to populate.`);return}if(e.manifest){const{manifest:o}=e;i.info(`Built: ${o.builtAtRfc3339} (${a(o.builtAtRfc3339)})`),i.info(`Fetch: ${e.fetchedAtIso??n("—")} (${a(e.fetchedAtIso)})`),i.info(`Filter: ${f(m(o.bloomByteLen))} m=${o.bloomMBits.toLocaleString()} bits k=${String(o.bloomKHashes)}`),i.info(`Set: ${o.entryCount.toLocaleString()} entries from ${o.advisoryCount.toLocaleString()} advisories (target FPR ${o.targetFpr})`),i.info(n(`Digest: ${o.setDigestSha256}`))}else i.warn("filter.bin present but manifest.json missing — `vis advisories bloom sync` will rewrite the cache.")},h=u;export{h as advisoriesBloomStatusExecute};
@@ -0,0 +1,2 @@
1
+ import{E as m}from"../packem_shared/index.server-J83sowC4.js";import{p as i}from"./cli-main.js";import{s as p}from"../packem_shared/scan-progress-DQ4TMXcb.js";import{s as d,D}from"../packem_shared/osv-bloom-BAyJUnRx.js";const b=o=>o?.security?.audit?.advisories?.bloom??{},u=o=>o>=1e3?`${(o/1e3).toFixed(1)}s`:`${Math.round(o)}ms`,y=o=>o<1024?`${o} B`:o<1024*1024?`${(o/1024).toFixed(1)} KB`:`${(o/(1024*1024)).toFixed(1)} MB`,h=async({options:o,visConfig:f,workspaceRoot:a})=>{if(!a)throw new Error("Could not determine workspace root. Run this command inside a workspace.");const n=o.format==="json",c=b(f),l=o.source??c.source??D,s=p([{id:"bloom",label:"Sync osv-bloom prefilter"}],{live:!n});let e,t;try{s.start("bloom");const r=Date.now();e=await d({allowedHosts:c.allowedHosts,cacheDir:o.cacheDir,force:!!o.force,source:l,workspaceRoot:a}),e.upToDate?s.finish("bloom","ok",`up to date · ${u(Date.now()-r)}`):s.finish("bloom","ok",`${e.manifest.entryCount.toLocaleString()} entries · ${y(e.bytesOnDisk)} · ${u(e.durationMs)}`)}catch(r){t=r instanceof Error?r.message:String(r),s.finish("bloom","error",t)}finally{s.stop()}n?process.stdout.write(`${JSON.stringify({bytesOnDisk:e?.bytesOnDisk??0,cacheDir:e?.cacheDir??null,durationMs:e?.durationMs??0,error:t??null,manifest:e?.manifest??null,source:l,upToDate:e?.upToDate??!1},void 0,2)}
2
+ `):e&&(i.info(m(`Cache: ${e.cacheDir}`)),i.info(m(`Built: ${e.manifest.builtAtRfc3339}`)),t||i.success(e.upToDate?"osv-bloom prefilter up to date.":"osv-bloom prefilter synced.")),t&&(process.exitCode=1)},O=h;export{O as advisoriesBloomSyncExecute};
@@ -0,0 +1 @@
1
+ import{createRequire as _}from"node:module";import{loadOptionalSigstore as g}from"./loader.js";const R=_(import.meta.url),c=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,m=e=>{if(typeof c<"u"&&c.versions&&c.versions.node){const[t,s]=c.versions.node.split(".").map(Number);if(t>22||t===22&&s>=3||t===20&&s>=16)return c.getBuiltinModule(e)}return R(e)},{createHash:w}=m("node:crypto"),{createReadStream:I}=m("node:fs"),v="https://token.actions.githubusercontent.com",h=e=>e.replaceAll(/[$()*+.?[\\\]^{|}]/g,String.raw`\$&`),S=e=>{if("github"in e){const{ref:t,repo:s,workflow:r}=e.github;return{issuer:v,sanPattern:`^${h(`https://github.com/${s}/${r}@${t}`)}$`}}return"sanRegex"in e?{issuer:e.oidcIssuer,sanPattern:e.sanRegex}:{issuer:e.oidcIssuer,sanPattern:`^${h(e.san)}$`}},$=()=>process.env.CI==="true"||typeof process.env.ACTIONS_ID_TOKEN_REQUEST_URL=="string"||typeof process.env.SIGSTORE_ID_TOKEN=="string",y=e=>new Promise((t,s)=>{const r=w("sha256"),i=I(e);i.on("error",s),i.on("data",n=>r.update(n)),i.on("end",()=>{t(Buffer.from(r.digest("hex")))})}),x=1024,P=e=>{const{issuer:t,sanPattern:s}=S(e.expectedIdentity),r=new Map,i=(n,o)=>{let u;try{u=JSON.parse(o)}catch{return Promise.resolve(!1)}return(async()=>{let a;try{a=await y(n)}catch{return!1}const p=`${a.toString("utf8")}:${w("sha256").update(o).digest("hex")}`,d=r.get(p);if(d)return d;const l=(async()=>{try{return await(await g({workspaceRoot:e.workspaceRoot})).verify(u,a,{certificateIdentityURI:s,certificateIssuer:t}),!0}catch(f){return e.onVerifyFailure?.(f instanceof Error?f.message:String(f)),!1}})();return r.size>=x&&r.clear(),r.set(p,l),l})()};return{expectedIdentity:e.expectedIdentity,onReject:e.onReject,requireOnDownload:e.requireOnDownload??!1,signArtifact:async({archivePath:n})=>{if(!$())return null;const o=await g({workspaceRoot:e.workspaceRoot}),u=await y(n),a=await o.sign(u);return JSON.stringify(a)},verifyArtifact:({archivePath:n,attestation:o})=>i(n,o)}};export{P as buildCacheAttestationHooks,S as normalizeExpectedIdentity};
@@ -0,0 +1 @@
1
+ import{p as d}from"./registry.js";const u=a=>{const n=d(a),t=new Map;Object.keys(n.default).length>0&&t.set("",{...n.default});for(const[s,e]of Object.entries(n.named))t.set(s,{...e});return t},g=["dependencies","devDependencies","peerDependencies","optionalDependencies"],l=a=>{const n=[];for(const t of g){const s=a.manifest[t];if(!(!s||typeof s!="object"))for(const[e,o]of Object.entries(s)){if(typeof o!="string"||!o.startsWith("catalog:"))continue;const c=o.slice(8);n.push({catalog:c,dep:e,kind:t,packageName:a.name})}}return n},m=(a,n)=>{const t=new Map;for(const s of n.keys())t.set(s,new Map);for(const s of a)for(const e of l(s)){if(!n.has(e.catalog))continue;let o=t.get(e.catalog);o||(o=new Map,t.set(e.catalog,o));const c=o.get(e.dep);c?c.push({kind:e.kind,packageName:e.packageName}):o.set(e.dep,[{kind:e.kind,packageName:e.packageName}])}return t},h=(a,n)=>{if(a.size===0&&n.size===0)return[];const t=[],s=new Set;for(const[e,o]of n){s.add(e);const c=a.get(e)??{},r=[...new Set([...Object.keys(c),...Object.keys(o)])].sort();for(const i of r){const f=c[i],p=o[i];f!==p&&t.push({catalog:e,dep:i,newVersion:p,oldVersion:f})}}for(const[e,o]of a){if(s.has(e))continue;const c=Object.keys(o).sort();for(const r of c)t.push({catalog:e,dep:r,newVersion:void 0,oldVersion:o[r]})}return t};export{h as detectCatalogChanges,l as extractCatalogRefs,m as findCatalogConsumers,u as parseCatalogs};