@unbrained/pm-cli 2026.8.4 → 2026.8.5

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 (214) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +39 -13
  3. package/dist/cli/error-guidance.js +4 -4
  4. package/dist/cli/register-structured-mutation.d.ts +2 -0
  5. package/dist/cli/register-structured-mutation.js +124 -12
  6. package/dist/cli-bundle/bundle-manifest.json +407 -407
  7. package/dist/cli-bundle/chunks/append-VXXGOXSG.js +2 -0
  8. package/dist/cli-bundle/chunks/{chunk-QVO3VTA4.js → chunk-2WFXWAYX.js} +2 -2
  9. package/dist/cli-bundle/chunks/{chunk-NM5G7RLU.js → chunk-3FTILRJ2.js} +2 -2
  10. package/dist/cli-bundle/chunks/{chunk-VH2EAGUG.js → chunk-42E7YPLG.js} +2 -2
  11. package/dist/cli-bundle/chunks/{chunk-RB65T4RX.js → chunk-43HQQI6S.js} +2 -2
  12. package/dist/cli-bundle/chunks/{chunk-J4EPW4GT.js → chunk-45G53IU4.js} +2 -2
  13. package/dist/cli-bundle/chunks/{chunk-PQXEB7W4.js → chunk-4VN6GS4U.js} +2 -2
  14. package/dist/cli-bundle/chunks/chunk-4YUBDMQM.js +2 -0
  15. package/dist/cli-bundle/chunks/{chunk-D2MBVMVE.js → chunk-54FNT7U2.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-NRDKVOUE.js → chunk-5ZBOIPGP.js} +2 -2
  17. package/dist/cli-bundle/chunks/{chunk-3XZYTRPC.js → chunk-6MSQJOTG.js} +2 -2
  18. package/dist/cli-bundle/chunks/{chunk-GOICHIX4.js → chunk-7A5OT5J2.js} +2 -2
  19. package/dist/cli-bundle/chunks/{chunk-HTYC76A4.js → chunk-7C4PTJG6.js} +2 -2
  20. package/dist/cli-bundle/chunks/{chunk-BKMZTZYL.js → chunk-A62CYISG.js} +2 -2
  21. package/dist/cli-bundle/chunks/{chunk-5H47J5FG.js → chunk-BPELKUQD.js} +2 -2
  22. package/dist/cli-bundle/chunks/{chunk-HE3DZFN4.js → chunk-BXQLRKWF.js} +2 -2
  23. package/dist/cli-bundle/chunks/{chunk-BLINBTMX.js → chunk-CSI3WS5I.js} +2 -2
  24. package/dist/cli-bundle/chunks/{chunk-KH4GVBMC.js → chunk-DXDREUXT.js} +2 -2
  25. package/dist/cli-bundle/chunks/{chunk-KIKLF2W4.js → chunk-E2RKBKWB.js} +2 -2
  26. package/dist/cli-bundle/chunks/{chunk-377OOXUF.js → chunk-EGJ4JTUG.js} +2 -2
  27. package/dist/cli-bundle/chunks/{chunk-SULWTPQO.js → chunk-FPBQHMFT.js} +2 -2
  28. package/dist/cli-bundle/chunks/{chunk-V5K52PYW.js → chunk-GE4KCSZP.js} +35 -35
  29. package/dist/cli-bundle/chunks/{chunk-NPUJ7OLK.js → chunk-HNFD72UK.js} +2 -2
  30. package/dist/cli-bundle/chunks/{chunk-QMWUL66F.js → chunk-HWRRMBJO.js} +5 -5
  31. package/dist/cli-bundle/chunks/chunk-L3AZOELJ.js +2 -0
  32. package/dist/cli-bundle/chunks/{chunk-CGY5I2GO.js → chunk-LKDGK44W.js} +2 -2
  33. package/dist/cli-bundle/chunks/chunk-LN2WFEU4.js +2 -0
  34. package/dist/cli-bundle/chunks/{chunk-ZSH4GNBH.js → chunk-M72BKL5Q.js} +2 -2
  35. package/dist/cli-bundle/chunks/{chunk-HQ2WU7OY.js → chunk-MHK6LIWE.js} +2 -2
  36. package/dist/cli-bundle/chunks/{chunk-H6FITE7D.js → chunk-NE5VRDAI.js} +2 -2
  37. package/dist/cli-bundle/chunks/chunk-NY4T3JWN.js +2 -0
  38. package/dist/cli-bundle/chunks/{chunk-DCJ6CM6F.js → chunk-OMXVBQ2N.js} +2 -2
  39. package/dist/cli-bundle/chunks/chunk-OPVH7SKD.js +8 -0
  40. package/dist/cli-bundle/chunks/{chunk-CU5ENFNP.js → chunk-OTHLDSFP.js} +2 -2
  41. package/dist/cli-bundle/chunks/{chunk-NH35JNK5.js → chunk-PMXJEU3F.js} +2 -2
  42. package/dist/cli-bundle/chunks/{chunk-SVDH5CHC.js → chunk-Q35VBGOQ.js} +4 -4
  43. package/dist/cli-bundle/chunks/{chunk-5PZGZMPG.js → chunk-R546TPDE.js} +2 -2
  44. package/dist/cli-bundle/chunks/{chunk-Q5F6OI7C.js → chunk-RKAVWO3O.js} +2 -2
  45. package/dist/cli-bundle/chunks/{chunk-JMKVCQSE.js → chunk-SSF4PIUR.js} +2 -2
  46. package/dist/cli-bundle/chunks/{chunk-PA5XRN2A.js → chunk-UN66FZRO.js} +3 -3
  47. package/dist/cli-bundle/chunks/{chunk-FQ4EFFDU.js → chunk-UP7DTVMD.js} +2 -2
  48. package/dist/cli-bundle/chunks/{chunk-NFF3JAQR.js → chunk-UZBWIUYD.js} +2 -2
  49. package/dist/cli-bundle/chunks/{chunk-2POYGY53.js → chunk-V3774P7D.js} +2 -2
  50. package/dist/cli-bundle/chunks/{chunk-B5ZLCD5Z.js → chunk-V3EUXXOF.js} +2 -2
  51. package/dist/cli-bundle/chunks/{chunk-6S7I3UKV.js → chunk-VCKLFEUN.js} +19 -19
  52. package/dist/cli-bundle/chunks/{chunk-PYYPQLHC.js → chunk-VN5VITU3.js} +2 -2
  53. package/dist/cli-bundle/chunks/chunk-WRL4KNDL.js +20 -0
  54. package/dist/cli-bundle/chunks/{chunk-UJHUR3LZ.js → chunk-XCEZYMNI.js} +2 -2
  55. package/dist/cli-bundle/chunks/{chunk-JDPKBV5P.js → chunk-YEWNL576.js} +2 -2
  56. package/dist/cli-bundle/chunks/{chunk-OB7TRZ2G.js → chunk-YSO3YFZ4.js} +2 -2
  57. package/dist/cli-bundle/chunks/{chunk-UVZREFZU.js → chunk-ZYHOB3SN.js} +2 -2
  58. package/dist/cli-bundle/chunks/close-VZ3OQPN5.js +2 -0
  59. package/dist/cli-bundle/chunks/close-many-SB4TI27P.js +2 -0
  60. package/dist/cli-bundle/chunks/comments-BIF3Q4KY.js +2 -0
  61. package/dist/cli-bundle/chunks/copy-6AI5Z57X.js +2 -0
  62. package/dist/cli-bundle/chunks/{create-RLLCBCXM.js → create-XLKTXTUF.js} +2 -2
  63. package/dist/cli-bundle/chunks/delete-ZY2VHQTP.js +2 -0
  64. package/dist/cli-bundle/chunks/{deps-J4ONTF4X.js → deps-ITTY3GIC.js} +2 -2
  65. package/dist/cli-bundle/chunks/{docs-YL2DJ4WD.js → docs-W4OSRTYR.js} +2 -2
  66. package/dist/cli-bundle/chunks/{files-NGNAIYKK.js → files-EOK4AZI4.js} +2 -2
  67. package/dist/cli-bundle/chunks/focus-DLBNWL7L.js +2 -0
  68. package/dist/cli-bundle/chunks/{history-compact-HW62K5XP.js → history-compact-7UGTMLL3.js} +2 -2
  69. package/dist/cli-bundle/chunks/{history-redact-HVBKUJOW.js → history-redact-4DZRMD6Z.js} +2 -2
  70. package/dist/cli-bundle/chunks/{history-repair-OPNBH5JJ.js → history-repair-UPOSZW5R.js} +2 -2
  71. package/dist/cli-bundle/chunks/{learnings-F36PZXT6.js → learnings-GMRNCBS3.js} +2 -2
  72. package/dist/cli-bundle/chunks/{profile-N3XMWBM7.js → profile-2MUUMHRE.js} +2 -2
  73. package/dist/cli-bundle/chunks/{register-list-query-BKGHBI7Y.js → register-list-query-LR3SQ5ZF.js} +2 -2
  74. package/dist/cli-bundle/chunks/register-mutation-SUOHFVWM.js +20 -0
  75. package/dist/cli-bundle/chunks/register-operations-ARRRKOVN.js +2 -0
  76. package/dist/cli-bundle/chunks/{register-setup-KWV6UD77.js → register-setup-O6AYP6NP.js} +2 -2
  77. package/dist/cli-bundle/chunks/restore-ZVCVHTB5.js +2 -0
  78. package/dist/cli-bundle/chunks/{schema-4PJQMGUY.js → schema-FJ4EA3XF.js} +2 -2
  79. package/dist/cli-bundle/chunks/update-YHV52CSS.js +2 -0
  80. package/dist/cli-bundle/chunks/update-many-M6YHVNXM.js +2 -0
  81. package/dist/cli-bundle/focused-chunks/chunk-7J5TUBUJ.js +153 -0
  82. package/dist/cli-bundle/focused-chunks/{chunk-ONIX2KKW.js → chunk-A7BJ5SS6.js} +2 -2
  83. package/dist/cli-bundle/focused-chunks/chunk-B7LJWAZE.js +2 -0
  84. package/dist/cli-bundle/focused-chunks/{chunk-QM2BIVK7.js → chunk-BIMTMOS7.js} +3 -3
  85. package/dist/cli-bundle/focused-chunks/{chunk-BOGRY7M6.js → chunk-FGKY4MBE.js} +10 -10
  86. package/dist/cli-bundle/focused-chunks/chunk-G6ETT4QK.js +2 -0
  87. package/dist/cli-bundle/focused-chunks/{chunk-C2QSL62X.js → chunk-GJ2TG2CW.js} +2 -2
  88. package/dist/cli-bundle/focused-chunks/{chunk-RO5BQFG3.js → chunk-IPWSFADF.js} +2 -2
  89. package/dist/cli-bundle/focused-chunks/{chunk-UFCPSWIL.js → chunk-MJ7HWSFK.js} +2 -2
  90. package/dist/cli-bundle/focused-chunks/{chunk-2VIIXOAD.js → chunk-N5XU5UVK.js} +2 -2
  91. package/dist/cli-bundle/focused-chunks/chunk-PG2RIZBX.js +2 -0
  92. package/dist/cli-bundle/focused-chunks/{chunk-OYTK4VNH.js → chunk-PIMMYG7Q.js} +2 -2
  93. package/dist/cli-bundle/focused-chunks/{chunk-K37BB4JL.js → chunk-QVHKCI4T.js} +2 -2
  94. package/dist/cli-bundle/focused-chunks/{chunk-SQXVGHMH.js → chunk-RUR5I3TK.js} +2 -2
  95. package/dist/cli-bundle/focused-chunks/chunk-SV3O7TSH.js +8 -0
  96. package/dist/cli-bundle/focused-chunks/{chunk-L6A4NVQC.js → chunk-UIL2M2NA.js} +2 -2
  97. package/dist/cli-bundle/focused-chunks/{chunk-WVGJAD7L.js → chunk-VLYOEYML.js} +2 -2
  98. package/dist/cli-bundle/focused-chunks/chunk-W7BJEWHX.js +2 -0
  99. package/dist/cli-bundle/focused-chunks/{chunk-DQ4PLKEE.js → chunk-WEM2E2PE.js} +2 -2
  100. package/dist/cli-bundle/focused-chunks/chunk-WVIVUWVL.js +5 -0
  101. package/dist/cli-bundle/focused-chunks/chunk-Y4LDYLLT.js +2 -0
  102. package/dist/cli-bundle/main.js +4 -4
  103. package/dist/cli-bundle/sdk-authoring.js +1 -1
  104. package/dist/cli-bundle/sdk-contracts.js +1 -1
  105. package/dist/cli-bundle/sdk-core.js +28 -28
  106. package/dist/cli-bundle/sdk-governance.js +1 -1
  107. package/dist/cli-bundle/sdk-graph.js +1 -1
  108. package/dist/cli-bundle/sdk-merge.js +1 -1
  109. package/dist/cli-bundle/sdk-query.js +1 -1
  110. package/dist/cli-bundle/sdk-runtime.js +1 -1
  111. package/dist/cli-bundle/sdk-testing.js +1 -1
  112. package/dist/cli-bundle/sdk.js +1 -1
  113. package/dist/core/extensions/loader.js +5 -2
  114. package/dist/core/item/item-format.js +14 -20
  115. package/dist/core/shared/constants.js +3 -2
  116. package/dist/core/store/item-store.js +2 -2
  117. package/dist/core/store/settings.js +2 -2
  118. package/dist/mcp/server.js +12 -6
  119. package/dist/mcp/tool-definitions.js +14 -7
  120. package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +18 -18
  121. package/dist/sdk/cli-contracts/agent-output-contracts.js +51 -23
  122. package/dist/sdk/cli-contracts/commander-mutation-options.js +26 -2
  123. package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
  124. package/dist/sdk/cli-contracts/flag-contracts.js +28 -2
  125. package/dist/sdk/cli-contracts/registration-helpers.js +4 -2
  126. package/dist/sdk/cli-contracts/runtime-contracts.d.ts +10 -2
  127. package/dist/sdk/cli-contracts/runtime-contracts.js +20 -5
  128. package/dist/sdk/cli-contracts/tool-schema.js +4 -2
  129. package/dist/sdk/cli-contracts.d.ts +2 -2
  130. package/dist/sdk/cli-contracts.js +4 -4
  131. package/dist/sdk/cli-program.js +3 -3
  132. package/dist/sdk/contracts.d.ts +1 -0
  133. package/dist/sdk/contracts.js +3 -2
  134. package/dist/sdk/dependency-provenance.d.ts +2 -0
  135. package/dist/sdk/dependency-provenance.js +7 -3
  136. package/dist/sdk/error-code-catalog.d.ts +23 -0
  137. package/dist/sdk/error-code-catalog.js +25 -5
  138. package/dist/sdk/generated-error-code-catalog.js +499 -3
  139. package/dist/sdk/graph/governance.js +3 -3
  140. package/dist/sdk/graph/remediation.js +3 -3
  141. package/dist/sdk/graph/run.js +4 -8
  142. package/dist/sdk/index.d.ts +2 -1
  143. package/dist/sdk/index.js +4 -3
  144. package/dist/sdk/item-transaction.d.ts +51 -6
  145. package/dist/sdk/item-transaction.js +132 -22
  146. package/dist/sdk/lifecycle/create.d.ts +4 -0
  147. package/dist/sdk/lifecycle/create.js +26 -10
  148. package/dist/sdk/lifecycle-policy.d.ts +9 -0
  149. package/dist/sdk/lifecycle-policy.js +22 -9
  150. package/dist/sdk/merge/driver.js +6 -3
  151. package/dist/sdk/output-contracts.d.ts +67 -0
  152. package/dist/sdk/output-contracts.js +173 -0
  153. package/dist/sdk/package-import-adapters.js +2 -2
  154. package/dist/sdk/structured-mutations.d.ts +23 -0
  155. package/dist/sdk/structured-mutations.js +219 -10
  156. package/dist/sdk/workspace-snapshot.js +58 -12
  157. package/dist/sdk/workspace.js +30 -4
  158. package/docs/COMMANDS.md +40 -10
  159. package/docs/EXTENSIONS.md +1 -1
  160. package/docs/MERGE_SAFETY.md +2 -0
  161. package/docs/PR_REVIEW_LOOP.md +10 -4
  162. package/docs/README.md +22 -22
  163. package/docs/RELEASING.md +3 -3
  164. package/docs/SCRIPTING.md +32 -9
  165. package/docs/SDK.md +91 -11
  166. package/docs/SELF_DESCRIBING_CONTEXT_CONTRACTS.md +13 -0
  167. package/docs/TESTING.md +25 -0
  168. package/docs/examples/sdk-contract-consumer/README.md +11 -1
  169. package/docs/examples/sdk-contract-consumer/package.json +2 -1
  170. package/docs/examples/sdk-contract-consumer/parse-receipt.mjs +22 -0
  171. package/marketplace.json +2 -2
  172. package/package.json +3 -2
  173. package/packages/pm-beads/package.json +1 -1
  174. package/packages/pm-calendar/package.json +1 -1
  175. package/packages/pm-command-kit/package.json +1 -1
  176. package/packages/pm-digital-twin/package.json +1 -1
  177. package/packages/pm-governance-audit/package.json +1 -1
  178. package/packages/pm-guide-shell/package.json +1 -1
  179. package/packages/pm-kanban/package.json +1 -1
  180. package/packages/pm-lifecycle-hooks/package.json +1 -1
  181. package/packages/pm-linked-test-adapters/package.json +1 -1
  182. package/packages/pm-search-advanced/package.json +1 -1
  183. package/packages/pm-templates/package.json +1 -1
  184. package/packages/pm-todos/package.json +1 -1
  185. package/packages/pm-vcs/package.json +1 -1
  186. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  187. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  188. package/sdk/public-surface.json +292 -14
  189. package/dist/cli-bundle/chunks/append-DHBRLHHS.js +0 -2
  190. package/dist/cli-bundle/chunks/chunk-2INN52SU.js +0 -8
  191. package/dist/cli-bundle/chunks/chunk-6RSK4IFN.js +0 -20
  192. package/dist/cli-bundle/chunks/chunk-ASJJKA57.js +0 -2
  193. package/dist/cli-bundle/chunks/chunk-IYAVULRN.js +0 -2
  194. package/dist/cli-bundle/chunks/chunk-RRQBHQOV.js +0 -2
  195. package/dist/cli-bundle/chunks/chunk-XBLOD5TZ.js +0 -2
  196. package/dist/cli-bundle/chunks/close-VLHNN6YB.js +0 -2
  197. package/dist/cli-bundle/chunks/close-many-LSJNZKU6.js +0 -2
  198. package/dist/cli-bundle/chunks/comments-AAIA6A6X.js +0 -2
  199. package/dist/cli-bundle/chunks/copy-Z7YMLEHN.js +0 -2
  200. package/dist/cli-bundle/chunks/delete-KNOHHQJM.js +0 -2
  201. package/dist/cli-bundle/chunks/focus-LFRCGALV.js +0 -2
  202. package/dist/cli-bundle/chunks/register-mutation-GU3DCECN.js +0 -20
  203. package/dist/cli-bundle/chunks/register-operations-PTWH727R.js +0 -2
  204. package/dist/cli-bundle/chunks/restore-4HZSLILR.js +0 -2
  205. package/dist/cli-bundle/chunks/update-E6LPS5IV.js +0 -2
  206. package/dist/cli-bundle/chunks/update-many-OSIC6KRO.js +0 -2
  207. package/dist/cli-bundle/focused-chunks/chunk-5MTKO7TV.js +0 -153
  208. package/dist/cli-bundle/focused-chunks/chunk-6GIZK7VQ.js +0 -2
  209. package/dist/cli-bundle/focused-chunks/chunk-AOP2WIZZ.js +0 -2
  210. package/dist/cli-bundle/focused-chunks/chunk-CL75YW32.js +0 -2
  211. package/dist/cli-bundle/focused-chunks/chunk-E7OFMWGT.js +0 -8
  212. package/dist/cli-bundle/focused-chunks/chunk-I5F5UK3Q.js +0 -2
  213. package/dist/cli-bundle/focused-chunks/chunk-T5TSY36R.js +0 -5
  214. package/dist/cli-bundle/focused-chunks/chunk-VT6BF2IX.js +0 -2
@@ -1,4 +1,4 @@
1
- import{$ as Fe,L as $n,M as Rn,N as pe,O as ge,R as ee,S as Pn,Y as C,Z as k,a as L,b as Oe,ba as On,c as _n,e as bn,f as wn,g as vn,h as En,i as kn,j as De,k as xn,m as Cn,n as Sn,o as Tn,p as me,q as In,r as An}from"./chunk-CL75YW32.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="294d43fb-b6e8-5a5f-91fe-73ba21075bf5")}catch{}})();function he(e,n,r){if(e===n)return 0;if(Math.abs(e.length-n.length)>r)return null;let t=n.length+1,o=new Array(t),i=new Array(t),s=new Array(t);for(let l=0;l<t;l+=1)o[l]=0,i[l]=l;for(let l=1;l<=e.length;l+=1){s[0]=l;let c=s[0];for(let d=1;d<=n.length;d+=1){let u=e[l-1]===n[d-1]?0:1,m=i[d-1]+u,f=s[d-1]+1,h=i[d]+1,p=Math.min(m,f,h);l>1&&d>1&&e[l-1]===n[d-2]&&e[l-2]===n[d-1]&&(p=Math.min(p,o[d-2]+1)),s[d]=p,p<c&&(c=p)}if(c>r)return null;for(let d=0;d<t;d+=1)o[d]=i[d],i[d]=s[d]}let a=i[n.length];return a<=r?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f6ec614c-2e47-5ce0-bbf6-8dde97ffb99e")}catch{}})();var ye=me;function _e(e){let n=e.trim().toLowerCase();return ye.includes(n)?n:null}function Dn(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Math.max(1,Math.floor(n.length*.34));for(let t of ye)if(he(n,t,r)!==null)return t;return null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ce320988-b999-57c9-a786-a94ac66c5628")}catch{}})();var q=new Set(Pn),be=Object.freeze({get size(){return q.size},has(e){return q.has(e)},entries(){return q.entries()},keys(){return q.keys()},values(){return q.values()},forEach(e,n){q.forEach(r=>e.call(n,r,r,be))},[Symbol.iterator](){return q.values()}});function Fn(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function Nn(e){return typeof e!="string"?null:_e(e)}function gt(e){try{return structuredClone(e)}catch{return e}}function ht(e){let n=e.trim(),r=n.indexOf("=");if(r<=0)throw new k(`--field entries must use name=value syntax, received: ${e}`,C.USAGE);let t=n.slice(0,r).trim(),o=n.slice(r+1);return{key:t,value:o}}function yt(e){return`--${e.replaceAll("_","-")}`}function _t(e,n,r){try{let t=JSON.parse(e);if(r==="array"&&Array.isArray(t)||r==="object"&&typeof t=="object"&&t!==null&&!Array.isArray(t))return t}catch{}throw new k(`--field ${n}=... must be valid JSON ${r}`,C.USAGE)}function bt(e,n,r){if(n==="string")return r;if(n==="number"){let t=r.trim();if(t.length===0)throw new k(`--field ${e}=... must be a number`,C.USAGE);let o=Number(t);if(!Number.isFinite(o))throw new k(`--field ${e}=... must be a number`,C.USAGE);return o}if(n==="boolean"){let t=r.trim().toLowerCase();if(t==="true"||t==="1"||t==="yes")return!0;if(t==="false"||t==="0"||t==="no")return!1;throw new k(`--field ${e}=... must be one of true|false|1|0|yes|no`,C.USAGE)}return n==="string_array"?r.split(/[\n,|]/u).map(t=>t.trim()).filter(t=>t.length>0):_t(r,e,n)}function Ne(e){let n=new Map;if(!e)return n;for(let r of e.item_fields)for(let t of r.fields){let o=Fn(t.name),i=Nn(t.type);if(!o||!i)continue;let s=n.get(o);if(s&&s.type!==i)throw new k(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,C.USAGE,{code:"extension_item_field_type_conflict",nextSteps:["Make every active extension declaration for this field use the same type."]});n.set(o,{name:o,type:i})}return n}function Mn(e){if(be.has(e))throw new k(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...be].sort((n,r)=>n.localeCompare(r)).join(", ")}.`,C.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function na(e){return[...Ne(e).keys()].sort((n,r)=>n.localeCompare(r))}function ra(e,n){if(!e||e.length===0)return{};let r=Ne(n),t={};for(let o of e){let{key:i,value:s}=ht(o),a=r.get(i);if(!a){if(be.has(i)){let c=yt(i);throw new k(`--field ${i} is a core item field, not an extension field`,C.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[c]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${c} <value>`,`When closing an item, pm close <id> also accepts ${c} <value>.`]})}let l=[...r.keys()].sort((c,d)=>c.localeCompare(d));throw new k(`--field ${i} is not declared by an active extension item-field registration`,C.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:l},nextSteps:l.length>0?[`Use one of the declared fields: ${l.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}Mn(a.name),t[a.name]=bt(a.name,a.type,s)}return t}function wt(e,n){return n==="string"?typeof e=="string":n==="number"?typeof e=="number"&&Number.isFinite(e):n==="boolean"?typeof e=="boolean":n==="array"?Array.isArray(e):n==="string_array"?Array.isArray(e)&&e.every(r=>typeof r=="string"):typeof e=="object"&&e!==null&&!Array.isArray(e)}function vt(e,n){return!n||n.length===0?!0:n.some(r=>Object.is(r,e))}function ta(e,n,r={}){if(n){Ne(n);for(let t of n.item_fields)for(let o of t.fields){let i=Fn(o.name);if(!i)continue;Mn(i),!(i in e)&&!r.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=gt(o.default));let s=e[i];if(s===void 0)continue;let a=Nn(o.type);if(a&&!wt(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let l=Array.isArray(o.values)?o.values:void 0;if(!vt(s,l))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a89f0df7-e280-5ce4-8515-1f107a4aeaab")}catch{}})();var Et=[{kind:"blocked_by",direction:"directed",inverse:"blocks",ordering:!0,precedence:"target_before_source",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["depends_on"],compatibilityVersion:1,allowSelf:!1},{kind:"blocks",direction:"directed",inverse:"blocked_by",ordering:!0,precedence:"source_before_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"parent",direction:"directed",inverse:"child",ordering:!1,hierarchy:!0,hierarchyDirection:"target_parent",outgoing:"one",incoming:"many",lifecycle:"supersedable",aliases:["child_of","epic"],compatibilityVersion:1,allowSelf:!1},{kind:"child",direction:"directed",inverse:"parent",ordering:!1,hierarchy:!0,hierarchyDirection:"source_parent",outgoing:"many",incoming:"one",lifecycle:"supersedable",aliases:["parent_child","task"],compatibilityVersion:1,allowSelf:!1},{kind:"related",direction:"undirected",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!1}];function Ee(e){return e.trim().toLowerCase().replaceAll("-","_")}function kt(e){if(e===void 0)return;let n=Ee(e);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return n}function ze(e,n=new Set){if(e===null||typeof e!="object"||n.has(e))return e;if(n.add(e),Array.isArray(e)){for(let r of e)ze(r,n);return Object.freeze(e)}for(let r of Object.values(e))ze(r,n);return Object.freeze(e)}function xt(e,n){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${n}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${n}`)}function Ct(e,n){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${n}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${n}`)}function St(e){if(typeof e!="object"||e===null)throw new TypeError("Relationship kind definition requires an object");if(typeof e.kind!="string")throw new TypeError("Relationship kind requires a string identifier");let n=Ee(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${n}`);return n}function Tt(e,n){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${n}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${n}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${n}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${n}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${n}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${n}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${n}`)}function It(e,n){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${n}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(r=>typeof r!="string")))throw new TypeError(`Invalid relationship aliases for ${n}`)}var je=class{#e=new Map;#r=new Map;constructor(n=Et){for(let r of n)this.register(r)}register(n){let r=St(n);if(Tt(n,r),It(n,r),xt(n,r),Ct(n,r),this.#e.has(r)||this.#r.has(r))throw new TypeError(`Relationship kind already registered: ${r}`);let t=kt(n.inverse),o=[...new Set((n.aliases??[]).map(Ee))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===r||this.#e.has(s)||this.#r.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...n,kind:r,hierarchy:n.hierarchy??!1,inverse:t,aliases:Object.freeze(o),payloadSchema:n.payloadSchema?ze(structuredClone(n.payloadSchema)):void 0});this.#e.set(r,i);for(let s of o)this.#r.set(s,r);return this}resolve(n){if(typeof n!="string")return;let r=Ee(n);return this.#e.get(this.#r.get(r)??r)}require(n){let r=this.resolve(n);if(!r)throw new TypeError(`Unknown relationship kind: ${n}`);return r}list(){return Object.freeze([...this.#e.values()].sort((n,r)=>n.kind.localeCompare(r.kind)))}};function Le(){return new je}var ne=Le();function ia(e,n=ne){return n.resolve(e)?.ordering===!0}function At(e,n,r,t=ne){let o=re(e),i=re(n);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=t.require(r);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function we(e,n){return e.source.localeCompare(n.source)||e.target.localeCompare(n.target)||e.kind.localeCompare(n.kind)}function $t(e,n,r){let t=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!n.has(t)||!n.has(o))throw new TypeError(`Relationship endpoint not found: ${t} -> ${o}`);let i=At(t,o,e.kind,r),s=Object.freeze({...e,source:t,target:o,kind:i.kind}),a=i.direction==="undirected"?[t,o].sort().join("\0"):`${t}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function ve(e,n,r){let t=e.get(n);t?t.push(r):e.set(n,[r])}function re(e){return typeof e=="string"?e.trim():""}function Me(e,n){let r=re(e);return r&&n.has(r)?r:void 0}function Rt(e,n,r){let t=[n],o=n;for(;o!==e;)o=r.get(o),t.push(o);return t.reverse()}var zn=class e{#e;#r;#o;#t;#s=new Map;#a=new Map;constructor(n,r,t=ne){this.#e=t,this.#r=new Set([...n].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#r].sort());let o=new Map;for(let i of r){let{edge:s,identity:a}=$t(i,this.#r,t);o.set(a,s)}this.#t=Object.freeze([...o.values()].sort(we));for(let i of this.#t)ve(this.#s,i.source,i),ve(this.#a,i.target,i),t.require(i.kind).direction==="undirected"&&(ve(this.#s,i.target,i),ve(this.#a,i.source,i))}static fromItems(n,r=ne){let t=new Set(n.map(i=>re(i.id)).filter(Boolean)),o=[];for(let i of n){let s=re(i.id);if(!s)continue;let a=Me(i.parent,t);a&&o.push({source:s,target:a,kind:"parent"});let l=Me(i.blocked_by,t);l&&o.push({source:s,target:l,kind:"blocked_by"});for(let c of i.dependencies??[]){let d=Me(c.id,t);d&&r.resolve(c.kind)&&o.push({source:s,target:d,kind:c.kind,createdAt:c.created_at,author:c.author})}}return new e(t,o,r)}edges(){return this.#t}incidentEdges(n){this.#i(n);let r=this.#s.get(n)??[],t=this.#a.get(n)??[];if(r.length===0)return Object.freeze([...t]);if(t.length===0)return Object.freeze([...r]);let o=[],i=0,s=0;for(;i<r.length||s<t.length;){let a=r[i],l=t[s],c=a===void 0?l:l===void 0||we(a,l)<=0?a:l;o.at(-1)!==c&&o.push(c),a===c&&(i+=1),l===c&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(n){return this.#r.has(n)}registry(){return this.#e}#i(n){if(!this.#r.has(n))throw new TypeError(`Relationship node not found: ${n}`)}#l(n,r){if(!r)return!0;let t=this.#e.require(n.kind);return r.has(n.kind)||t.inverse!==void 0&&r.has(t.inverse)}#n(n,r,t){let o=[...r==="incoming"?[]:this.#s.get(n)??[],...r==="outgoing"?[]:this.#a.get(n)??[]];return[...new Set(o)].filter(i=>this.#l(i,t)).map(i=>({id:i.source===n?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||we(i.edge,s.edge))}adjacency(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(l=>l.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=o.slice(0,i);return{value:s,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:s.length<o.length,nextCursor:s.at(-1)?.id}}}closure(n,r={}){this.#i(n);let t=r.kinds?new Set(r.kinds.map(f=>this.#e.require(f).kind)):void 0,o=r.direction??"outgoing",i=r.limit??Number.POSITIVE_INFINITY,s=r.maxDepth??Number.POSITIVE_INFINITY,a=new Set([n]),l=[],c=[{id:n,depth:0}],d=0,u=0,m=!1;e:for(let f=0;f<c.length;f+=1){r.signal?.throwIfAborted();let h=c[f];d+=1;let p=this.#n(h.id,o,t);if(u+=p.length,h.depth>=s){p.some(g=>!a.has(g.id))&&(m=!0);continue}for(let g of p)if(!a.has(g.id)){if(l.length>=i){m=!0;break e}a.add(g.id),l.push(g.id),c.push({id:g.id,depth:h.depth+1})}}return{value:l,meta:{visitedNodes:d,inspectedEdges:u,truncated:m,nextCursor:l.at(-1)}}}shortestPath(n,r,t={}){if(this.#i(n),this.#i(r),n===r)return{value:[n],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=t.kinds?new Set(t.kinds.map(f=>this.#e.require(f).kind)):void 0,i=t.direction??"outgoing",s=t.maxDepth??Number.POSITIVE_INFINITY,a=[{id:n,depth:0}],l=new Map,c=new Set([n]),d=0,u=0,m=!1;for(let f=0;f<a.length;f+=1){t.signal?.throwIfAborted();let h=a[f];d+=1;let p=this.#n(h.id,i,o);if(u+=p.length,h.depth>=s){p.some(g=>!c.has(g.id))&&(m=!0);continue}for(let g of p)if(!c.has(g.id)){if(l.set(g.id,h.id),g.id===r)return{value:Rt(n,r,l),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};c.add(g.id),a.push({id:g.id,depth:h.depth+1})}}return{value:[],meta:{visitedNodes:d,inspectedEdges:u,truncated:m}}}subgraph(n,r={}){let t=this.closure(n,r),o=[n,...t.value].sort(),i=new Set(o),s=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,a=new Set;for(let l of o)for(let c of this.#s.get(l)??[])i.has(c.source)&&i.has(c.target)&&this.#l(c,s)&&a.add(c);return{value:{nodes:o,edges:[...a].sort(we)},meta:t.meta}}};function sa(e,n,r=ne){return{source:e,target:n.id,kind:r.require(n.kind).kind,createdAt:n.created_at,author:n.author}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function x(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function Pt(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function jn(e){return e?E(e):{}}function Ln(e){return e?E(e):Pt()}function E(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8ba4e82a-ab38-5527-84cf-ec553f434a22")}catch{}})();var Ot=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),Dt=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","parser_overrides","service_overrides","renderer_overrides"];function Ft(e,n){for(let r of Dt){let t=e[r];if(t===void 0)continue;if(!Array.isArray(t)||t.some(i=>typeof i!="string"))return!1;let o=t.map(i=>Ot.has(r)?x(i):i.trim()).filter(i=>i.length>0);n[r]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function Nt(e){if(!Array.isArray(e))return null;let n=[];for(let r of e){if(typeof r!="object"||r===null)return null;let t=r;if(t.format!=="json"&&t.format!=="toon"||!Array.isArray(t.commands)||t.commands.some(o=>typeof o!="string")||typeof t.result_discriminator!="boolean")return null;n.push({format:t.format,commands:[...new Set(t.commands.map(o=>x(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:t.result_discriminator})}return n.sort((r,t)=>r.format.localeCompare(t.format))}function qe(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let n=e;if(n.schema_version!==1)return null;let r={schema_version:1};if(!Ft(n,r))return null;let t=n.preflight_overrides;if(t!==void 0&&(!Number.isInteger(t)||t<0))return null;typeof t=="number"&&(r.preflight_overrides=t);let o=n.renderer_ownership;if(o!==void 0){let i=Nt(o);if(i===null)return null;r.renderer_ownership=i}return r}function da(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3225f4de-aa48-55b7-a704-d93ccb3ee0f4")}catch{}})();function te(e){return[...new Set(e.map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function F(e){return L.includes(e)}function qn(e){let n=e.trim().toLowerCase();return F(n)?n:null}function Vn(e){return e.filter(n=>!F(n))}function Ve(e){let n=e.trim().toLowerCase();return n.length===0?null:_n[n]??null}function Un(e){let n=te([...e].map(i=>i.toLowerCase())),r=[],t=[];for(let i of n){let s=Ve(i);if(s){r.push(s),t.push({alias:i,target:s});continue}r.push(i)}let o=[...new Map(t.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:te(r),legacy_aliases:o}}function Mt(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Ve(n);if(r)return r;let t=Math.max(1,Math.floor(n.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of L){let a=he(n,s,t);a!==null&&a<i&&(i=a,o=s)}return o}function Wn(e,n,r){let t=L.join(","),o=Mt(r)??"none";return`extension_capability_unknown:${e}:${n}:${r}:allowed=${t}:suggested=${o}`}function Kn(e,n,r){let t=r.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${n}:aliases=${t}`}function zt(e){let n=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!n)return null;let[,r,t,o,i,s]=n,a=r,l=i.split(",").map(f=>f.trim()).filter(f=>f.length>0),c=Ve(o),u=(s==="none"?void 0:s)??c??void 0;return{layer:a,name:t,capability:o,allowed_capabilities:l,capability_contract_version:Oe,suggested_capability:u,suggestion_source:u?c===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:c??void 0}}function jt(e){let n=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!n)return[];let[,r,t,o]=n,i=r,s=[...L],a=[];for(let l of o.split(",")){let[c,d]=l.split(">"),u=c?.trim(),m=d?.trim().toLowerCase();!u||!m||!F(m)||a.push({layer:i,name:t,capability:u,allowed_capabilities:s,capability_contract_version:Oe,suggested_capability:m,suggestion_source:"legacy_alias",legacy_alias_target:m})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3f347c0d-2e1f-5d17-9e38-bae834f845d3")}catch{}})();var ha={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService"]},Bn=":";function Hn(e,n){return`${e}${Bn}${Ue(n)}`}function Lt(e){return e.slice(e.indexOf(Bn)+1)}function Ue(e){return e.trim().toLowerCase()}function qt(e){if(!Array.isArray(e))return[];let n=new Set;for(let r of e){let t=qn(r);t!==null&&n.add(t)}return[...n].sort((r,t)=>r.localeCompare(t))}function Gn(e){let n=new Map,r=(d,u)=>{for(let m of d){let f=Hn(m.layer,m.name),h=n.get(f);h===void 0&&(h=new Set,n.set(f,h)),h.add(u)}},{registrations:t,commands:o,parsers:i,preflight:s,services:a,renderers:l,hooks:c}=e;return r(t.commands,"commands"),r(o.overrides,"commands"),r(o.handlers,"commands"),r(t.flags,"schema"),r(t.item_fields,"schema"),r(t.item_types,"schema"),r(t.relationship_kinds??[],"schema"),r(t.migrations,"schema"),r(t.profiles,"schema"),r(t.importers,"importers"),r(t.exporters,"importers"),r(t.search_providers,"search"),r(t.vector_store_adapters,"search"),r(i.overrides,"parser"),r(s.overrides,"preflight"),r(a.overrides,"services"),r(l.overrides,"renderers"),r(c.beforeCommand,"hooks"),r(c.beforeMutation,"hooks"),r(c.afterCommand,"hooks"),r(c.onWrite,"hooks"),r(c.onRead,"hooks"),r(c.onIndex,"hooks"),n}function ya(e,n={}){let r=Gn(e),t=new Set;n.extensionName!==void 0&&t.add(Ue(n.extensionName));for(let i of n.extensionNames??[])t.add(Ue(i));let o=new Set;for(let[i,s]of r)if(!(t.size>0&&!t.has(Lt(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function _a(e,n){let r=Gn(n),t=[];for(let o of e){let i=qt(o.capabilities);if(i.length===0)continue;let s=r.get(Hn(o.layer,o.name))??new Set,a=[...s].sort((c,d)=>c.localeCompare(d)),l=i.filter(c=>!s.has(c));t.push({layer:o.layer,name:o.name,declared:i,used:a,unused:l})}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4eccf02f-7401-539f-b843-f55b63ed878c")}catch{}})();var Vt=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function Ut(e){if(typeof e!="string")return null;let n=e.trim(),r=n.split(/[ =]/,1)[0];return Fe.has(r)?"host_owned_flag_collision":Vt.test(n)?null:"malformed_long_flag"}function Yn(e,n){let r=[e,n].find(i=>typeof i=="string"&&Fe.has(i.trim().split(/[ =]/,1)[0]));if(typeof r=="string")return{token:r.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let t=e.trim(),o=Ut(t);return o===null?null:{token:t,failure:o}}function Xn(e,n){return n==="host_owned_flag_collision"?`cannot shadow host-owned global flag "${e}"; read it from context.global instead`:`long flag "${e}" must start with a double-dash name such as "--my-flag" or "--my-flag <value>"`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="849502d0-2616-500c-96de-228c0759459d")}catch{}})();function Jn(e){return typeof e=="string"?e:String(e)}function oe(e){let r=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(r)?r.split(/[.-]/).map(t=>Number(t)):null}function We(e,n){let r=oe(e),t=oe(n);if(!r||!t)return null;let o=Math.max(r.length,t.length);for(let i=0;i<o;i+=1){let s=r[i]??0,a=t[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function Zn(e,n){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:n};let r=Jn(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(!oe(r))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(n===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:null};let t=We(n,r);return t===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:n}:t<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:r,current:n}:{kind:"pm_min_version",status:"ok",allowed:!0,required:r,current:n}}function Qn(e,n,r){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:n};let t=Jn(e);if(typeof e!="string"||t.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(/^[<>=~^]/.test(t.trim())||!oe(t))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(n===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:null};let o=We(n,t);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:n}:o>0?r==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:t,current:n}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:t,current:n}:{kind:"pm_max_version",status:"ok",allowed:!0,required:t,current:n}}import*as v from"node:fs/promises";import ke from"node:path";import Wt from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="74d24458-0685-5354-b62f-5323ee72ffd6")}catch{}})();var Kt=[10,25,50,100];async function er(e){await v.mkdir(e,{recursive:!0})}async function ie(e){try{return await v.access(e),!0}catch{return!1}}async function nr(e){try{return await v.readFile(e,"utf8")}catch(n){if(V(n,"ENOENT"))return null;throw n}}async function rr(e,n){let r=ke.dirname(e);await er(r);let t=ke.join(r,`.${ke.basename(e)}.${process.pid}.${Date.now()}.${Wt.randomBytes(4).toString("hex")}.tmp`);await v.writeFile(t,n,"utf8");try{await v.rename(t,e)}catch(o){if(process.platform==="win32"&&(V(o,"EPERM")||V(o,"EBUSY"))){let i=o;for(let s of Kt){await new Promise(a=>setTimeout(a,s));try{await v.rename(t,e);return}catch(a){if(i=a,!V(a,"EPERM")&&!V(a,"EBUSY"))break}}try{await v.unlink(t)}catch{}throw i}if(V(o,"EXDEV")){try{await v.copyFile(t,e)}finally{try{await v.unlink(t)}catch{}}return}try{await v.unlink(t)}catch{}throw o}}async function Ca(e,n){let r=ke.dirname(e);await er(r);let t=await v.open(e,"a");try{await t.writeFile(`${n}
2
- `,"utf8")}finally{await t.close()}}async function Sa(e){try{await v.unlink(e)}catch(n){if(!V(n,"ENOENT"))throw n}}function V(e,n){return typeof e=="object"&&e!==null&&"code"in e&&e.code===n}import tr from"path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="624aced5-552c-5354-9e34-b96e267d34d1")}catch{}})();function Ke(e,n){let r=tr.relative(e,n);return r.length===0?!0:!r.startsWith("..")&&!tr.isAbsolute(r)}import G from"node:fs";import N from"node:path";import{fileURLToPath as Bt}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dffcc28d-16a3-53d4-ba02-5298ae7a6d63")}catch{}})();var Ht="@unbrained/pm-cli";function Gt(e){try{return JSON.parse(G.readFileSync(e,"utf8")).name===Ht}catch{return!1}}function Yt(e){let n=G.existsSync(e)&&G.statSync(e).isDirectory()?N.resolve(e):N.dirname(N.resolve(e));for(;;){let r=N.join(n,"package.json");if(G.existsSync(r)&&Gt(r))return n;let t=N.dirname(n);if(t===n)return;n=t}}function Be(e,n=[]){let r=Bt(e),t=Yt(r);return t||N.resolve(N.dirname(r),...n)}function Oa(e,n=[]){try{let r=N.join(Be(e,n),"package.json");if(!G.existsSync(r))return;let t=JSON.parse(G.readFileSync(r,"utf8"));return typeof t.version=="string"&&t.version.trim().length>0?t.version:void 0}catch{return}}import eo from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="815165a9-27a7-5933-adae-c7e55330c8e4")}catch{}})();function M(e){return[...new Set((e??[]).map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function Xt(e){let n=e.key.trim();if(n.length===0)return null;let r=M(e.aliases),t=e.description?.trim();return{key:n,values:M(e.values),required:e.required===!0?!0:void 0,aliases:r.length>0?r:void 0,description:t&&t.length>0?t:void 0}}var Jt=e=>e,ir=e=>{let n=e.trim().toLowerCase();return n==="create"||n==="update"?n:null};function Zt(e,n){let r=n(e.command);if(r===null)return null;let t=e.option.trim();return t.length===0?null:{command:r,option:t,required:e.required,visible:e.visible,enabled:e.enabled}}function Qt(e,n){let r=new Map;for(let t of e??[]){let o=Zt(t,n);o&&r.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...r.values()].sort((t,o)=>t.command===o.command?t.option.localeCompare(o.option):t.command.localeCompare(o.command))}function or(e,n){return n?M(e):void 0}function He(e){let n=e?.trim();return n&&n.length>0?n:void 0}function sr(e,n={}){let r=n.resolvePolicyCommand??Jt,t=e.name.trim();if(t.length===0)return null;let o=e.required_create_fields!==void 0,i=e.required_create_repeatables!==void 0,s=e.options!==void 0,a=e.command_option_policies!==void 0,l=M(e.aliases),c=(e.options??[]).map(u=>Xt(u)).filter(u=>u!==null).sort((u,m)=>u.key.localeCompare(m.key)),d=Qt(e.command_option_policies,r);return{name:t,description:He(e.description),default_status:He(e.default_status),folder:He(e.folder),aliases:l.length>0?l:void 0,required_create_fields:or(e.required_create_fields,o),required_create_repeatables:or(e.required_create_repeatables,i),options:s?c:void 0,command_option_policies:a?d:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="88b2ed4e-b5fd-5014-abf1-c163db033abf")}catch{}})();var no=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],ro=["dep","comment","note","learning","file","test","doc"],lr=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],to=["title","description","type","status","priority","tags","body",...lr,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],oo=["title","description","body","status","closeReason","priority","type","tags",...lr,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],cr={"close-reason":"closeReason",close_reason:"closeReason","estimated-minutes":"estimatedMinutes",estimated_minutes:"estimatedMinutes",estimate:"estimatedMinutes","acceptance-criteria":"acceptanceCriteria",acceptance_criteria:"acceptanceCriteria",ac:"acceptanceCriteria","definition-of-ready":"definitionOfReady",definition_of_ready:"definitionOfReady",rank:"order","why-now":"whyNow",why_now:"whyNow","blocked-by":"blockedBy",blocked_by:"blockedBy","blocked-reason":"blockedReason",blocked_reason:"blockedReason","unblock-note":"unblockNote",unblock_note:"unblockNote","repro-steps":"reproSteps",repro_steps:"reproSteps","expected-result":"expectedResult",expected_result:"expectedResult","actual-result":"actualResult",actual_result:"actualResult","affected-version":"affectedVersion",affected_version:"affectedVersion","fixed-version":"fixedVersion",fixed_version:"fixedVersion","customer-impact":"customerImpact",customer_impact:"customerImpact","type-option":"typeOption",type_option:"typeOption",type_options:"typeOption"},io={...cr},so={...cr},dr=[["deadline","--deadline"],["estimatedMinutes","--estimate/--estimated-minutes"],["acceptanceCriteria","--acceptance-criteria/--ac"],["definitionOfReady","--definition-of-ready"],["order","--order/--rank"],["goal","--goal"],["objective","--objective"],["value","--value"],["impact","--impact"],["outcome","--outcome"],["whyNow","--why-now"],["assignee","--assignee"],["parent","--parent"],["reviewer","--reviewer"],["risk","--risk"],["confidence","--confidence"],["sprint","--sprint"],["release","--release"],["blockedBy","--blocked-by"],["blockedReason","--blocked-reason"],["unblockNote","--unblock-note"],["reporter","--reporter"],["severity","--severity"],["environment","--environment"],["reproSteps","--repro-steps"],["resolution","--resolution"],["expectedResult","--expected-result"],["actualResult","--actual-result"],["affectedVersion","--affected-version"],["fixedVersion","--fixed-version"],["component","--component"],["regression","--regression"],["customerImpact","--customer-impact"]],ur=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function fr(e){return Object.fromEntries(e)}var ao=fr([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...dr,["author","--author"],["message","--message"],["dep","--dep"],...ur]),lo=fr([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...dr,...ur,["author","--author"],["message","--message"],["force","--force"]]);function co(e){return e.trim().replace(/^--+/,"").toLowerCase()}function uo(e){return e==="create"?to:oo}function fo(e){return e==="create"?io:so}function mr(e,n){let r=co(n);if(r.length===0)return;let t=fo(e)[r];return t||uo(e).find(o=>o.toLowerCase()===r)}function La(e,n){return(e==="create"?ao:lo)[n]??`--${n.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function Ye(e){let n=po(e);return n.length===0?"items":n.endsWith("s")?n:`${n}s`}function mo(e){let n=e.trim(),t=n.replaceAll("\\","/").replace(/^\/+/,""),o=eo.posix.normalize(t);if(n.includes("\0")||/^[A-Za-z]:/.test(o)||o==="."||o===".."||o.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return o}function po(e){let n=e.trim().toLowerCase(),r="",t=!1;for(let o of n){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){t&&r.length>0&&(r+="-"),r+=o,t=!1;continue}r.length>0&&(t=!0)}return r}function go(e){return sr(e,{resolvePolicyCommand:ir})}function se(e,n){let r=e[n];return Array.isArray(r)?r.filter(t=>typeof t=="string"):void 0}function ho(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;return typeof n.key!="string"?null:{key:n.key,values:se(n,"values")??[],required:n.required===void 0?void 0:!!n.required,aliases:se(n,"aliases"),description:typeof n.description=="string"?n.description:void 0}}function yo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;if(typeof n.command!="string"||typeof n.option!="string")return null;let r=n.command.trim().toLowerCase();return r!=="create"&&r!=="update"?null:{command:r,option:n.option,required:n.required===void 0?void 0:!!n.required,visible:n.visible===void 0?void 0:!!n.visible,enabled:n.enabled===void 0?void 0:!!n.enabled}}function _o(e){if(Array.isArray(e.options))return e.options.map(n=>ho(n)).filter(n=>n!==null)}function bo(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(n=>yo(n)).filter(n=>n!==null)}function wo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e,r=typeof n.name=="string"?n.name:"";if(r.trim().length===0)return null;let t=typeof n.folder=="string"?n.folder:void 0,o=typeof n.description=="string"?n.description:void 0,i=typeof n.default_status=="string"?n.default_status:void 0;return{name:r,description:o,default_status:i,folder:t,aliases:se(n,"aliases"),required_create_fields:se(n,"required_create_fields"),required_create_repeatables:se(n,"required_create_repeatables"),options:_o(n),command_option_policies:bo(n)}}function vo(e,n){return e.required_create_fields?M(e.required_create_fields):n?.required_create_fields??[]}function Eo(e,n){return e.required_create_repeatables?M(e.required_create_repeatables):n?.required_create_repeatables??[]}function ko(e,n){return e.options?e.options:n?.options?[...n.options]:[]}function xo(e,n){return e.command_option_policies?e.command_option_policies:n?.command_option_policies?[...n.command_option_policies]:[]}function Co(e,n){let r=n?.name??e.name,t=e.description??n?.description,o=e.default_status??n?.default_status,i=mo(e.folder??n?.folder??Ye(r)),s={name:r,folder:i,aliases:M([...n?.aliases??[],...e.aliases??[]]),required_create_fields:vo(e,n),required_create_repeatables:Eo(e,n),options:ko(e,n),command_option_policies:xo(e,n)};return t&&(s.description=t),o&&(s.default_status=o),s}function ar(e,n){for(let r of e){let t=go(r);if(!t)continue;let o=t.name.toLowerCase(),i=n.get(o);n.set(o,Co(t,i))}}function So(e){if(!e)return[];let n=[];for(let r of e.item_types??[]){let t=r.types;if(Array.isArray(t))for(let o of t){let i=wo(o);i&&n.push(i)}}return n}function qa(e,n=null){let r=new Map;for(let l of Cn)r.set(l.toLowerCase(),{name:l,folder:ee[l],aliases:[],required_create_fields:[...no],required_create_repeatables:[...ro],options:[],command_option_policies:[]});ar(e.item_types?.definitions??[],r),ar(So(n),r);let t=[...r.values()].sort((l,c)=>l.name.localeCompare(c.name)),o={},i={},s={};for(let l of t){o[l.name]=l,s[l.name]=l.folder,i[l.name.toLowerCase()]=l.name;for(let c of l.aliases)i[c.toLowerCase()]=l.name}let a=[...new Set(t.map(l=>l.folder))].sort((l,c)=>l.localeCompare(c));return{types:t.map(l=>l.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function To(e,n){if(e!==void 0)return n.alias_to_type[e.trim().toLowerCase()]}function Io(e,n){let r=To(e,n);if(r)return n.by_type[r]}function Ao(e,n,r,t){for(let o of t){let i=mr(r,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${r}" on type "${n.name}"`)}}function Ge(e,n,r){if(r){e.add(n);return}e.delete(n)}function $o(e,n,r,t){let o=mr(r,t.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${t.option}" for command "${r}" on type "${n.name}"`);return}t.required!==void 0&&Ge(e.required,o,t.required),t.visible!==void 0&&Ge(e.hidden,o,!t.visible),t.enabled!==void 0&&Ge(e.disabled,o,!t.enabled)}function Ro(e,n,r){for(let t of n.command_option_policies)t.command===r&&$o(e,n,r,t)}function Po(e,n,r){for(let t of e.required)e.disabled.has(t)&&e.errors.push(`Option "${t}" cannot be both required and disabled for command "${r}" on type "${n.name}"`)}function Va(e,n,r){let t=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:t};return Ao(a,e,n,r),Ro(a,e,n),Po(a,e,n),{required:[...o],hidden:[...i].sort((l,c)=>l.localeCompare(c)),disabled:[...s].sort((l,c)=>l.localeCompare(c)),errors:t}}function Oo(e){let n=new Map;for(let r of e.options){n.set(r.key.toLowerCase(),r);for(let t of r.aliases??[])n.set(t.toLowerCase(),r)}return n}function Do(e,n,r){let t=e.values;if(t.length===0)return n;let i=new Map(t.map(s=>[s.toLowerCase(),s])).get(n.toLowerCase());if(!i){r.push(`Invalid value "${n}" for type option "${e.key}". Allowed: ${t.join(", ")}`);return}return i}function Ua(e,n,r){let t=Io(e,r);if(!t)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Oo(t),s={};for(let[l,c]of Object.entries(n??{})){let d=l.trim(),u=c.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let m=i.get(d.toLowerCase());if(!m){let h=t.options.map(p=>p.key).join(", ");o.push(t.options.length>0?`Unknown type option "${d}" for type "${t.name}". Allowed: ${h}`:`Type "${t.name}" does not define any configurable type options`);continue}let f=Do(m,u,o);f!==void 0&&(s[m.key]=f)}for(let l of t.options)l.required&&!(l.key in s)&&o.push(`Missing required type option "${l.key}" for type "${t.name}"`);let a=Object.keys(s).sort((l,c)=>l.localeCompare(c));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(l=>[l,s[l]])),errors:o}}import{readFileSync as Fo,readdirSync as Ba,statSync as No}from"node:fs";import Mo from"node:os";import w from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c155ccd1-cf4c-57fd-9d0e-5274eb29a764")}catch{}})();var zo={json_markdown:".md",toon:".toon"},jo={".md":"json_markdown",".toon":"toon"};var Ja=[".md",".toon"];function xe(e){try{return No(e),!0}catch{return!1}}function Lo(e){try{let n=JSON.parse(Fo(e,"utf8"));return typeof n!="object"||n===null||Array.isArray(n)?!1:"id_prefix"in n||"item_format"in n}catch{return!1}}function qo(e){let n=w.resolve(e);for(;;){let r=w.join(n,pe),t=w.join(r,ge);if(xe(t))return r;let o=w.join(n,ge);if(xe(o)&&Lo(o))return n;let i=w.dirname(n);if(i===n)return;n=i}}function Vo(e){return qo(e)??w.resolve(e,pe)}function Za(e,n){let r=process.env.PM_PATH,t=n?.trim()||r?.trim();if(t){let o=w.resolve(e,t);if(!xe(pr(o))){let i=w.join(o,pe);if(xe(pr(i)))return i}return o}return Vo(e)}function Qa(e){let n=w.resolve(e),r=w.dirname(n);return w.basename(n)==="pm"&&w.basename(r)===".agents"?w.dirname(r):n}function gr(e){let n=process.env.PM_GLOBAL_PATH?.trim(),r=n&&n.length>0?n:w.join(Mo.homedir(),".pm-cli");return w.resolve(e,r)}function pr(e){return w.join(e,ge)}function Uo(e,n,r=ee){let t=r[n]??Ye(n);return w.join(e,t)}function el(e,n,r,t="toon",o=ee){return w.join(Uo(e,n,o),`${r}${zo[t]}`)}function nl(e){let n=e.replaceAll("\\","/"),r=w.posix.extname(n).toLowerCase();return jo[r]??null}function rl(e,n){return w.join(e,"history",`${n}.jsonl`)}function tl(e,n){return w.join(e,"locks",`${n}.lock`)}function ol(e){return w.join(e,"runtime")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c29511ab-8c01-57f2-b353-cbc72900cb90")}catch{}})();function Wo(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function sl(e){return Wo(e)??void 0}function al(e){let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n-=1;return n===e.length?e:e.slice(0,n)}function ll(e){return Array.isArray(e)&&e.every(n=>typeof n=="number"&&Number.isFinite(n))}function cl(e){if(e instanceof Error){let n=e.message.trim();return n.length>0?n:e.name}return String(e)}function yr(e){let n=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(n)?n:null}function dl(e){let n=yr(e);return n===null||n<=0||!Number.isInteger(n)?null:n}function ul(e,n,r){let t=yr(e);return t===null||t<n||t>r?null:t}function Y(e){return typeof e!="object"||e===null?null:e}function hr(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function _r(e){let n=hr(e);if(!n)return null;if(typeof n.activate=="function")return n;let r=hr(n.default);return typeof r?.activate=="function"?r:null}function fl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e}:{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8a7dca67-8f1e-5451-b45c-4a75b1117d72")}catch{}})();var Ko=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function br(e){return typeof e!="string"?null:Ko[e.trim().toLowerCase()]??null}function wr(e){let n=[],r=t=>{if(Array.isArray(t)){for(let o of t)r(o);return}if(typeof t=="string"){for(let o of t.split(",")){let i=o.trim();i.length>0&&n.push(i)}return}t!=null&&n.push(t)};return r(e),n}function vr(e,n){return n==="string"?!0:n==="number"?typeof e=="number"?Number.isFinite(e):typeof e=="string"&&e.trim().length>0&&Number.isFinite(Number(e)):typeof e=="boolean"?!0:typeof e=="string"&&["true","false","1","0"].includes(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="baa8b608-7f1e-5382-abe3-b1af79e46da4")}catch{}})();function Xe(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Je(){return{overrides:[],handlers:[]}}function Ze(){return{overrides:[]}}function Qe(){return{overrides:[]}}function en(){return{overrides:[]}}function nn(){return{overrides:[]}}function rn(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4c40667c-1e20-5813-b2f3-eb4cb966b246")}catch{}})();var Bo=5e3;async function tn(e,n,r){let t=[];for(let o of e)try{await o.run(E(r))}catch{t.push(`extension_hook_failed:${o.layer}:${o.name}:${n}`)}return t}function Ho(e,n,r){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new k(`Extension mutation guard ${n.name} returned an invalid decision.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${n.layer}:${n.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let t=e,o=typeof t.code=="string"?t.code.trim():"",i=typeof t.remediation=="string"?t.remediation.trim():"";if(o.length===0||i.length===0)throw new k(`Extension mutation guard ${n.name} returned an invalid denial.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${n.layer}:${n.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof t.message=="string"?t.message.trim():"";throw new k(s||`Extension mutation guard ${n.name} denied ${r}.`,C.CONFLICT,{code:o,reason:`${n.layer}:${n.name}`,nextSteps:[i]})}async function Go(e,n){for(let r of e.beforeMutation??[]){let t,o;try{let i=Promise.resolve().then(()=>r.run({pm_root:n.pm_root,operation:n.operation,before:n.before===null?null:E(n.before),after:n.after===null?null:E(n.after),changed_fields:[...n.changed_fields],sdk:n.sdk}));i.catch(()=>{}),t=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new k(`Extension mutation guard ${r.name} timed out before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},Bo),o.unref?.()})])}catch(i){throw i instanceof k?i:new k(`Extension mutation guard ${r.name} failed before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}Ho(t,r,n.operation)}}async function Yo(e,n){return tn(e.onWrite,"onWrite",n)}async function Xo(e,n){return tn(e.onRead,"onRead",n)}async function Jo(e,n){return tn(e.onIndex,"onIndex",n)}function Zo(e){let n="";e instanceof Error&&typeof e.message=="string"?n=e.message:typeof e=="string"?n=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(n=e.message);let r=n.replace(/\s+/gu," ").trim();if(r.length===0)return"";let t=300;return r.length>t?`${r.slice(0,t-1)}\u2026`:r}function Ce(e,n){if(typeof e!="object"||e===null||typeof e[n]!="string")return;let r=String(e[n]).replace(/\s+/gu," ").trim();return r.length>0?r.slice(0,300):void 0}function Qo(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let n=e.exit_code;if(typeof n!="number"||!Number.isInteger(n)||n<1||n>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return n}async function ei(e,n){let r=x(n.command);if(r.length===0)return{handled:!1,result:null,warnings:[]};let t=[...e.handlers].reverse().find(o=>o.command===r);if(!t)return{handled:!1,result:null,warnings:[]};try{let o=await t.run({command:r,args:E(n.args),options:E(n.options),global:E(n.global),pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel,...n.sdk===void 0?{}:{sdk:n.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",Qo(o)],["errorCode",Ce(o,"code")],["remediation",Ce(o,"remediation")]].filter(i=>i[1]!==void 0))}}catch(o){let i=typeof o=="object"&&o!==null&&"exitCode"in o?o.exitCode:void 0;if(typeof i=="number"&&Number.isFinite(i))throw o;return{handled:!1,result:null,warnings:[`extension_command_handler_failed:${t.layer}:${t.name}:${t.command}`],errorMessage:Zo(o),...Object.fromEntries([["errorCode",Ce(o,"code")],["remediation",Ce(o,"remediation")]].filter(s=>s[1]!==void 0))}}}function Er(e){return{handled:!1,result:e.payload,warnings:[]}}function kr(e,n){return[...e.overrides].reverse().filter(r=>r.service===n)}function xr(e){return{service:e.service,command:e.command?x(e.command):void 0,args:e.args?E(e.args):void 0,options:e.options?jn(e.options):void 0,global:e.global?Ln(e.global):void 0,pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,payload:E(e.payload)}}function ni(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let n=e.handled;return n===!0?Object.hasOwn(e,"result"):n===!1&&Reflect.ownKeys(e).length===1}function Cr(e,n){return ni(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:n.payload}:n.service==="output_format"&&e==null?{handled:!1,result:n.payload}:{handled:!0,result:e}}function Sr(e,n,r){return n.service==="output_format"&&typeof e=="object"&&e!==null&&On(e,r.payload)}function ri(e,n){let r=kr(e,n.service);if(r.length===0)return Er(n);let t=[];for(let o of r)try{let i=xr(n),s=o.run(i);if(s instanceof Promise){t.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(Sr(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Cr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}async function ti(e,n){let r=kr(e,n.service);if(r.length===0)return Er(n);let t=[];for(let o of r)try{let i=xr(n),s=await Promise.resolve(o.run(i));if(Sr(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Cr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}import B from"node:fs/promises";import K from"node:path";import{pathToFileURL as _i}from"node:url";import oi from"node:fs/promises";import ae from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e81790e9-3de2-5639-a84d-2c4714afbbf4")}catch{}})();async function Tr(e,n){let r=ae.dirname(n.manifest_path),t=ae.relative(r,n.entry_path);if(t.startsWith("..")||ae.isAbsolute(t))throw new Error(`Cannot snapshot extension entry outside its package directory: ${n.entry_path}`);let o=ae.join(e,`${n.layer}-${n.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await oi.cp(r,o,{recursive:!0,force:!0}),ae.join(o,t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1558713a-91ea-5eef-8426-d910e0b77045")}catch{}})();function Ir(e){let n={beforeCommand:e.hooks.beforeCommand.length,beforeMutation:e.hooks.beforeMutation.length,afterCommand:e.hooks.afterCommand.length,onWrite:e.hooks.onWrite.length,onRead:e.hooks.onRead.length,onIndex:e.hooks.onIndex.length,commandOverrides:e.commands.overrides.length,commandHandlers:e.commands.handlers.length,parserOverrides:e.parsers.overrides.length,preflightOverrides:e.preflight.overrides.length,serviceOverrides:e.services.overrides.length,rendererOverrides:e.renderers.overrides.length,registrations:Object.fromEntries(Object.entries(e.registrations).map(([r,t])=>[r,t.length]))};return()=>{e.hooks.beforeCommand.length=n.beforeCommand,e.hooks.beforeMutation.length=n.beforeMutation,e.hooks.afterCommand.length=n.afterCommand,e.hooks.onWrite.length=n.onWrite,e.hooks.onRead.length=n.onRead,e.hooks.onIndex.length=n.onIndex,e.commands.overrides.length=n.commandOverrides,e.commands.handlers.length=n.commandHandlers,e.parsers.overrides.length=n.parserOverrides,e.preflight.overrides.length=n.preflightOverrides,e.services.overrides.length=n.serviceOverrides,e.renderers.overrides.length=n.rendererOverrides;for(let[r,t]of Object.entries(n.registrations))e.registrations[r].length=t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dc9a3977-a78a-501e-b600-45e7031dcebd")}catch{}})();function O(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return n}function T(e,n){if(n!==void 0&&typeof n!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function S(e,n){if(n!==void 0&&(typeof n!="string"||n.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function Ar(e,n){if(n===void 0)return;let r=t=>typeof t=="string"||typeof t=="number"||typeof t=="boolean";if(Array.isArray(n)){for(let[t,o]of n.entries())if(!r(o))throw new TypeError(`${e}[${t}] must be a string, number, or boolean`);return}if(!r(n))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function U(e,n){if(n!==void 0){if(!Array.isArray(n))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[r,t]of n.entries())if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e}[${r}] must be a non-empty string`)}}function le(e,n){if(U(e,n),!Array.isArray(n))return[];let r=[],t=new Set;for(let o of n){let i=o.trim();i.length===0||t.has(i)||(t.add(i),r.push(i))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="45d00ef3-870c-5f3f-89c1-6abd54c518fe")}catch{}})();function $r(e){S("registerCommand definition.action",e.action),S("registerCommand definition.description",e.description),S("registerCommand definition.intent",e.intent),S("registerCommand definition.tier",e.tier);let n=e.tier;if(n!==void 0&&n!=="core"&&n!=="standard"&&n!=="full"&&n!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="24383c0a-592e-5105-84a3-a6cfb7801281")}catch{}})();function A(e){return typeof e!="string"?"":e.trim().toLowerCase()}function y(e){return new Set((e??[]).map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))}function ii(e){let n=e.trim().toLowerCase();if(n.length===0)return"";let r=n.split(/[.:/]/).map(t=>t.replace(/[\s_-]+/g,"")).filter(t=>t.length>0);return r.length===0?"":r.length===1?r[0]:`${r[0]}.${r.slice(1).join("")}`}function X(e){return new Set((e??[]).map(n=>ii(n)).filter(n=>n.length>0))}function Rr(e){let n=A(e);return bn.includes(n)?n:"off"}function Pr(e){let n=A(e);return wn.includes(n)?n:"off"}function ce(e){let n=A(e);return vn.includes(n)?n:"none"}function on(e){if(typeof e!="string")return;let n=e.trim().toLowerCase();return En.includes(n)?n:void 0}function Or(e){if(typeof e=="string"){let n=on(e)??"block";return{global:n,project:n}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:on(e.global)??"block",project:on(e.project)??"block"}:{global:"block",project:"block"}}function si(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function _(e){return[...new Set(e)].sort((n,r)=>n.localeCompare(r))}function ai(e){let n=A(e.name);return n.length===0?null:{name:n,normalized:{name:n,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?ce(e.sandbox_profile):void 0,allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:X(e.allowed_surfaces),blockedSurfaces:X(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services)}}}function Dr(e){let n=new Map;for(let r of e??[]){let t=ai(r);t&&n.set(t.name,t.normalized)}return n}function li(e){let n=[],r=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of _([...e.allowedCapabilities,...e.blockedCapabilities]))F(o)||n.push(`extension_policy_unknown_capability:${o}`);for(let o of r)for(let i of _([...o.allowedCapabilities,...o.blockedCapabilities]))F(i)||n.push(`extension_policy_unknown_capability:${o.name}:${i}`);let t=new Set(kn);for(let o of _([...e.allowedSurfaces,...e.blockedSurfaces]))t.has(o)||n.push(`extension_policy_unknown_surface:${o}`);for(let o of r)for(let i of _([...o.allowedSurfaces,...o.blockedSurfaces]))t.has(i)||n.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(n)].sort((o,i)=>o.localeCompare(i))}function Fr(e){let n=e.extensions?.policy??{},r=y(n.allowed_capabilities),t=y(n.blocked_capabilities),o=X(n.allowed_surfaces),i=X(n.blocked_surfaces),s=Dr(n.extension_overrides);return{mode:Rr(n.mode),trustMode:Pr(n.trust_mode),pmMaxVersionExceededMode:Or(n.pm_max_version_exceeded_mode),requireProvenance:n.require_provenance===!0,trustedExtensions:y(n.trusted_extensions),defaultSandboxProfile:ce(n.default_sandbox_profile),allowedExtensions:y(n.allowed_extensions),blockedExtensions:y(n.blocked_extensions),allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:y(n.allowed_commands),blockedCommands:y(n.blocked_commands),allowedActions:y(n.allowed_actions),blockedActions:y(n.blocked_actions),allowedServices:y(n.allowed_services),blockedServices:y(n.blocked_services),overridesByName:s,warnings:li({allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function Nr(e){let n=[...e.overridesByName.values()].sort((r,t)=>r.name.localeCompare(t.name)).map(r=>({name:r.name,...r.disabled?{disabled:!0}:{},...r.requireTrusted?{require_trusted:!0}:{},...r.requireProvenance?{require_provenance:!0}:{},...r.sandboxProfile?{sandbox_profile:r.sandboxProfile}:{},...r.allowedCapabilities.size>0?{allowed_capabilities:_(r.allowedCapabilities)}:{},...r.blockedCapabilities.size>0?{blocked_capabilities:_(r.blockedCapabilities)}:{},...r.allowedSurfaces.size>0?{allowed_surfaces:_(r.allowedSurfaces)}:{},...r.blockedSurfaces.size>0?{blocked_surfaces:_(r.blockedSurfaces)}:{},...r.allowedCommands.size>0?{allowed_commands:_(r.allowedCommands)}:{},...r.blockedCommands.size>0?{blocked_commands:_(r.blockedCommands)}:{},...r.allowedActions.size>0?{allowed_actions:_(r.allowedActions)}:{},...r.blockedActions.size>0?{blocked_actions:_(r.blockedActions)}:{},...r.allowedServices.size>0?{allowed_services:_(r.allowedServices)}:{},...r.blockedServices.size>0?{blocked_services:_(r.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:si(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:_(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:_(e.allowedExtensions),blocked_extensions:_(e.blockedExtensions),allowed_capabilities:_(e.allowedCapabilities),blocked_capabilities:_(e.blockedCapabilities),allowed_surfaces:_(e.allowedSurfaces),blocked_surfaces:_(e.blockedSurfaces),allowed_commands:_(e.allowedCommands),blocked_commands:_(e.blockedCommands),allowed_actions:_(e.allowedActions),blocked_actions:_(e.blockedActions),allowed_services:_(e.allowedServices),blocked_services:_(e.blockedServices),extension_overrides:n}}function Mr(e){let n=Dr(e.extension_overrides);return{mode:Rr(e.mode),trustMode:Pr(e.trust_mode),pmMaxVersionExceededMode:Or(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:y(e.trusted_extensions),defaultSandboxProfile:ce(e.default_sandbox_profile),allowedExtensions:y(e.allowed_extensions),blockedExtensions:y(e.blocked_extensions),allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:X(e.allowed_surfaces),blockedSurfaces:X(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services),overridesByName:n,warnings:[]}}function z(e,n){return e.overridesByName.get(A(n))??null}function J(e,n,r,t,o){return n.has(r)?o:e.size>0&&!e.has(r)?t:null}function zr(e,n,r){let t=r.trim().toLowerCase(),o=z(e,n.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return J(i,s,t,"capability_not_allowlisted","capability_blocked")}function ci(e,n,r){let t=z(e,n.name),o=t&&t.allowedSurfaces.size>0?t.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...t?t.blockedSurfaces:[]]);return J(o,i,r,"surface_not_allowlisted","surface_blocked")}function di(e,n,r){let t=x(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return J(i,s,t,"command_not_allowlisted","command_blocked")}function ui(e,n,r){let t=A(r).replace(/\s+/g,"-");if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return J(i,s,t,"action_not_allowlisted","action_blocked")}function fi(e,n,r){let t=A(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return J(i,s,t,"service_not_allowlisted","service_blocked")}function mi(e,n){let r=A(n.name);return z(e,n.name)?.disabled===!0?"extension_override_disabled":J(e.allowedExtensions,e.blockedExtensions,r,"extension_not_allowlisted","extension_blocked")}function pi(e,n){if(e.trustMode==="off")return null;let r=z(e,n.name),t=A(n.name),o=n.trusted===!0,i=n.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(t)?"extension_not_trusted":(r?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||r?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function gi(e,n){if(e.mode==="off")return null;let t=z(e,n.name)?.sandboxProfile??n.sandboxProfile??e.defaultSandboxProfile;if(t==="none")return null;let o=n.permissions;if(!o)return"sandbox_permissions_missing";let i=s=>o[s]===!0;return t==="restricted"?i("process_spawn")?"sandbox_restricted_disallows_process_spawn":i("env_write")?"sandbox_restricted_disallows_env_write":null:i("process_spawn")?"sandbox_strict_disallows_process_spawn":i("network")?"sandbox_strict_disallows_network":i("fs_write")?"sandbox_strict_disallows_fs_write":i("env_write")?"sandbox_strict_disallows_env_write":null}function Se(e,n,r,t,o={}){let i=Object.entries(o).sort((a,l)=>a[0].localeCompare(l[0])).map(([a,l])=>`${a}=${l}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${n}:${r.layer}:${r.name}:reason=${t}${s}`}function jr(e,n){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let r=[],t=mi(e,n);t&&r.push({reason:t,scope:"extension",mode:e.mode});let o=pi(e,n);o&&r.push({reason:o,scope:"trust",mode:e.trustMode});let i=gi(e,n);i&&r.push({reason:i,scope:"extension",mode:e.mode});let s=r.find(l=>l.mode==="enforce");if(s)return{allowed:!1,warning:Se("blocked",s.scope,n,s.reason)};let a=r.find(l=>l.mode==="warn");return a?{allowed:!0,warning:Se("violation",a.scope,n,a.reason)}:{allowed:!0,warning:null}}function Lr(e,n,r){if(e.mode==="off")return{allowed:!0,warning:null};let t=zr(e,n,r);return t?{allowed:e.mode==="warn",warning:Se(e.mode==="warn"?"violation":"blocked","capability",n,t,{capability:r.trim().toLowerCase()})}:{allowed:!0,warning:null}}function hi(e,n,r,t,o){let i=typeof t=="string"?zr(e,n,t):null,s=ci(e,n,r),a=o.command?di(e,n,o.command):null,l=o.action?ui(e,n,o.action):null,c=o.service?fi(e,n,o.service):null;return i??s??a??l??c}function yi(e,n,r,t){let o={method:A(e).replace(/\s+/g,"_"),surface:n};return r&&(o.capability=r),t.command&&(o.command=x(t.command)),t.action&&(o.action=A(t.action).replace(/\s+/g,"-")),t.service&&(o.service=A(t.service)),o}function qr(e,n,r,t,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=hi(e,n,r,o,s);if(!a)return{allowed:!0,warning:null};let l=Se(e.mode==="warn"?"violation":"blocked","registration",n,a,yi(t,r,o,s));return{allowed:e.mode==="warn",warning:l}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function Vr(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b21c2101-ceac-54b1-acaa-6c8d9c25ae8b")}catch{}})();var bi=100,Ur=null,wi=Object.freeze(xn()),Wr=0;function vi(e=Date.now()){return Wr+=1,`${Wr}-${e}`}function Kr(e,n){let r=e[n];if(r!=null)return typeof r!="string"||r.trim().length===0?null:r.trim()}function Ei(e){if(e==null)return;let n=Y(e);if(!n)return null;let r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i))){if(t.trim().length===0)return null;let o=n[t];if(typeof o!="string"||o.trim().length===0)return null;r[t.trim()]=o.trim()}return Object.keys(r).length>0?r:void 0}function sn(e,n){let r=e[n];return typeof r!="string"||r.trim().length===0?null:r.trim()}function rt(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function W(e){if(e!=null)return typeof e!="boolean"?null:e}function ki(e){let n=rt(e.priority);return n===void 0?bi:n}function xi(e){let n=e.sandbox_profile;if(n==null)return;if(typeof n!="string")return null;let r=ce(n);return r!==n.trim().toLowerCase()?null:r}function an(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function Ci(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=an(n.source),t=an(n.signature),o=an(n.attestation),i=n.verified===void 0||n.verified===null?void 0:typeof n.verified=="boolean"?n.verified:null;return i===null?null:{...r?{source:r}:{},...t?{signature:t}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function Si(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=W(n.fs_read),t=W(n.fs_write),o=W(n.network),i=W(n.env_read),s=W(n.env_write),a=W(n.process_spawn);return[r,t,o,i,s,a].includes(null)?null:{...typeof r=="boolean"?{fs_read:r}:{},...typeof t=="boolean"?{fs_write:t}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function Ti(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(r=>typeof r!="string"))return null;let n=Un(e);return{capabilities:n.capabilities,legacy_aliases:n.legacy_aliases}}function Ii(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=n.commands;if(r==null)return;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;let t=[...new Set(r.map(o=>x(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return t.length>0?{commands:t}:void 0}function Ai(e){let n=rt(e.manifest_version);if(n===null)return null;let r=Kr(e,"pm_min_version");if(r===null)return null;let t=Kr(e,"pm_max_version");if(t===null)return null;let o=Ei(e.engines);if(o===null)return null;let i=W(e.trusted);if(i===null)return null;let s=xi(e);if(s===null)return null;let a=Ci(e.provenance);if(a===null)return null;let l=Si(e.permissions);if(l===null)return null;let c=Ti(e.capabilities);if(c===null)return null;let d=Ii(e.activation);if(d===null)return null;let u=qe(e.contributions);return u===null?null:{manifest_version:n,pm_min_version:r,pm_max_version:t,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:l,capabilities:c.capabilities,legacy_capability_aliases:c.legacy_aliases,activation:d,contributions:u}}function $i(e){if(typeof e!="object"||e===null)return null;let n=e,r=sn(n,"name");if(r===null)return null;let t=sn(n,"version");if(t===null)return null;let o=sn(n,"entry");if(o===null)return null;let i=ki(n);if(i===null)return null;let s=Ai(n);return s===null?null:{name:r,version:t,entry:o,priority:i,manifest_version:s.manifest_version,pm_min_version:s.pm_min_version,pm_max_version:s.pm_max_version,engines:s.engines,trusted:s.trusted,provenance:s.provenance,sandbox_profile:s.sandbox_profile,permissions:s.permissions,activation:s.activation,contributions:s.contributions,capabilities:s.capabilities,legacy_capability_aliases:s.legacy_capability_aliases.length>0?s.legacy_capability_aliases:void 0}}function Ri(e,n,r){return r.has(e)?!1:n.size===0?!0:n.has(e)}async function Pi(e,n){let[r,t]=await Promise.all([B.realpath(e),B.realpath(n)]);return Ke(r,t)}function Oi(e,n=process.cwd()){return{global:K.join(gr(n),"extensions"),project:K.join(e,"extensions")}}async function Di(e){try{return(await B.readdir(e,{withFileTypes:!0})).filter(r=>r.isDirectory()).map(r=>r.name).sort((r,t)=>r.localeCompare(t))}catch{return[]}}function Fi(e){let n={layer:e.layer,directory:e.directory,manifest_path:e.manifest_path,name:e.manifest.name,version:e.manifest.version,entry:e.manifest.entry,priority:e.manifest.priority,entry_path:e.entry_path,manifest_version:e.manifest.manifest_version,pm_min_version:e.manifest.pm_min_version,pm_max_version:e.manifest.pm_max_version,engines:e.manifest.engines,trusted:e.manifest.trusted,provenance:e.manifest.provenance,sandbox_profile:e.manifest.sandbox_profile,permissions:e.manifest.permissions,capabilities:[...e.manifest.capabilities],activation:e.manifest.activation?{commands:[...e.manifest.activation.commands]}:void 0,contributions:e.manifest.contributions??e.contributions};return e.source_package&&(n.source_package=e.source_package),e.source_aliases&&(n.source_aliases=[...e.source_aliases]),n}function Br(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function Ni(e){let n=new Map;try{let r=JSON.parse(await B.readFile(K.join(e,".managed-extensions.json"),"utf8")),o=Y(r)?.entries;if(!Array.isArray(o))return n;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=Br(s.source?.package),l=[s.source?.input,s.source?.name,a].map(u=>Br(u)).filter(u=>u!==void 0),c=qe(s.contributions),d={aliases:[...new Set(l)],...a?{package_name:a}:{},...c?{contributions:c}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&n.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&n.set(`name:${s.name.trim()}`,d)}}catch{return n}return n}function Hr(e){return[...e].sort((n,r)=>{if(n.manifest.priority!==r.manifest.priority)return n.manifest.priority-r.manifest.priority;let t=n.manifest.name.localeCompare(r.manifest.name);return t!==0?t:n.directory.localeCompare(r.directory)})}function Mi(e,n){let r=[...Hr(e),...Hr(n)],t=[];for(let o of r){let i=t.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&t.splice(i,1),t.push(o)}return t}async function Gr(e,n,r,t,o){let i=[],s=[],a=[],l=await Di(n),c=await Ni(n);for(let d of l){let u=await Li(e,n,d,r,t,c,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function zi(){return{diagnostics:[],warnings:[],candidates:[]}}function Yr(e,n,r,t){return{diagnostic:{layer:e,directory:n,manifest_path:r,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[t],candidate:null}}function ji(e,n,r,t,o,i){let s=[];Array.isArray(n.legacy_capability_aliases)&&n.legacy_capability_aliases.length>0&&s.push(Kn(e,n.name,n.legacy_capability_aliases));for(let a of Vn(n.capabilities))s.push(Wn(e,n.name,a));return r?t||s.push(`extension_entry_missing:${e}:${n.name}`):s.push(`extension_entry_outside_extension:${e}:${n.name}`),o.warning&&s.push(o.warning),i.warning&&s.push(i.warning),s}async function Li(e,n,r,t,o,i,s){let a=K.join(n,r),l=K.join(a,"manifest.json");if(!await ie(l))return Yr(e,r,l,`extension_manifest_missing:${e}:${r}`);let c;try{let Pe=JSON.parse(await B.readFile(l,"utf8"));c=$i(Pe)}catch{c=null}if(!c)return Yr(e,r,l,`extension_manifest_invalid:${e}:${r}`);let d=K.resolve(a,c.entry),u=Ke(a,d),m=u?await ie(d):!1,f=u&&m?await Pi(a,d):u,h=Ri(c.name,t,o),p=await Ui(e,c),g=await Wi(e,c,s),$=ji(e,c,f,m,p,g),Q=f&&m&&p.allowed&&g.allowed,Re=i.get(`directory:${r}`)??i.get(`name:${c.name}`);return{diagnostic:{layer:e,directory:r,manifest_path:l,name:c.name,version:c.version,entry:c.entry,priority:c.priority,entry_path:d,enabled:h,status:Q?"ok":"warn"},warnings:$,candidate:Vr({layer:e,directory:r,manifestPath:l,entryPath:d,manifest:c,sourceIdentity:Re,extensionReady:Q,enabledForLoad:h})}}async function qi(e){let n=Oi(e.pmRoot,e.cwd??process.cwd()),r=te(e.settings.extensions.enabled),t=te(e.settings.extensions.disabled),o=Fr(e.settings),i=Nr(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:n,configured_enabled:r,configured_disabled:t,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(r),a=new Set(t),l=e.ignoreGlobalExtensions===!0?zi():await Gr("global",n.global,s,a,o.pmMaxVersionExceededMode.global),c=await Gr("project",n.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=Mi(l.candidates,c.candidates),m=[];for(let f of u){let h={layer:f.layer,name:f.manifest.name,trusted:f.manifest.trusted===!0,provenanceVerified:f.manifest.provenance?.verified===!0,sandboxProfile:f.manifest.sandbox_profile,permissions:f.manifest.permissions&&typeof f.manifest.permissions=="object"?{fs_read:f.manifest.permissions.fs_read,fs_write:f.manifest.permissions.fs_write,network:f.manifest.permissions.network,env_read:f.manifest.permissions.env_read,env_write:f.manifest.permissions.env_write,process_spawn:f.manifest.permissions.process_spawn}:void 0},p=jr(o,h);if(p.warning&&d.push(p.warning),!!p.allowed){for(let g of f.manifest.capabilities){let $=Lr(o,h,g);$.warning&&d.push($.warning)}m.push(Fi(f))}}return{disabled_by_flag:!1,roots:n,configured_enabled:r,configured_disabled:t,discovered:[...l.diagnostics,...c.diagnostics],effective:m,warnings:[...new Set([...l.warnings,...c.warnings,...d])],policy:i}}function $e(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function Vi(){try{let e=Be(import.meta.url,["../../.."]),n=await B.readFile(K.join(e,"package.json"),"utf8"),r=JSON.parse(n);return typeof r.version=="string"&&r.version.trim().length>0?r.version.trim():null}catch{return null}}function tt(){return Ur??=Vi(),Ur}function ot(e,n,r){let t=r.current??"unknown";if(r.kind==="pm_min_version")switch(r.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${n.name}:required=${r.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${n.name}:required=${r.required}:current=${t}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${n.name}:required=${r.required}:current=${t}`;default:return}switch(r.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${n.name}:allowed=${r.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${n.name}:allowed=${r.required}:current=${t}`;default:return}}async function Ui(e,n){if(n.pm_min_version===void 0)return{allowed:!0};let r=Zn(n.pm_min_version,await tt()),t=ot(e,n,r);return t?{allowed:r.allowed,warning:t}:{allowed:r.allowed}}async function Wi(e,n,r){if(n.pm_max_version===void 0)return{allowed:!0};let t=Qn(n.pm_max_version,await tt(),r),o=ot(e,n,t);return o?{allowed:t.allowed,warning:o}:{allowed:t.allowed}}async function Xr(e){try{let n=await B.stat(e);return`${Math.trunc(n.mtimeMs)}-${n.size}`}catch{return"missing"}}async function Ki(e,n){let r=e.entry_path;n.module_graph_snapshot_root&&(r=await Tr(n.module_graph_snapshot_root,e));let t=new URL(_i(r).href);if(!(n.cache_bust===!0||typeof n.reload_token=="string"))return t.href;let[i,s]=await Promise.all([Xr(e.entry_path),Xr(e.manifest_path)]),a=n.reload_token??vi();return t.searchParams.set("pm_ext_reload",a),t.searchParams.set("pm_ext_entry",i),t.searchParams.set("pm_ext_manifest",s),t.href}async function cc(e){let n=await qi(e),r=[],t=[],o=[...n.warnings];if(n.disabled_by_flag)return{...n,warnings:o,loaded:r,failed:t};let i=typeof e.extensionFilter=="function"?n.effective.filter(e.extensionFilter):n.effective;for(let s of i)try{let l=await import(await Ki(s,e));r.push({...s,module:l})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),t.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:$e(a)})}return{...n,warnings:o,loaded:r,failed:t}}var Jr=5e3,Bi=2147483647;function Hi(e){let r={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let t=e.deactivate;r.deactivate=t.bind(e)}return r}function it(e){let n=_r(e);return n?Hi(n):null}async function dc(e,n,r={}){let t=Gi(r?.deactivate_timeout_ms),o=new Set((n?.failed??[]).map(d=>`${d.layer}:${d.name}`)),i=[];for(let d of e.loaded){if(o.has(`${d.layer}:${d.name}`))continue;let u=it(d.module);!u||typeof u.deactivate!="function"||i.push({extension:d,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:d,deactivate:u})=>{try{return await Yi(u,t),{ok:!0}}catch(m){return{ok:!1,layer:d.layer,name:d.name,error:$e(m)}}})),a=[],l=[],c=0;for(let d of s){if(d.ok){c+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),l.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:c,warnings:a,failed:l}}function Gi(e){return typeof e!="number"||e<0?Jr:e===0||e===1/0?0:Number.isFinite(e)?Math.min(Bi,Math.max(1,Math.floor(e))):Jr}async function Yi(e,n){if(n===0){await e();return}let r;try{let t=Promise.resolve().then(()=>e());t.catch(()=>{}),await Promise.race([t,new Promise((o,i)=>{r=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${n}ms`))},n),r.unref?.()})])}finally{clearTimeout(r)}}function Xi(e){return e==="toon"||e==="json"}function Ji(e){return De.includes(e)}function Z(e,n){if(typeof n!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}function I(e,n){if(typeof n!="string"||n.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return n.trim()}function de(e,n){if(typeof n!="function")throw new TypeError(`${e} requires a function handler`)}function Zr(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function Qr(e,n){return x(`${e} ${n}`)}function Ie(e){if(e===null)return null;if(Array.isArray(e))return e.map(n=>Ie(n));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let n=e,r={},t=Object.keys(n).sort((o,i)=>o.localeCompare(i));for(let o of t)r[o]=Ie(n[o]);return r}return e}function Ae(e){if(Array.isArray(e))return e.map(n=>Ae(n));if(typeof e=="object"&&e!==null){let n=e,r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i)))r[t]=Ae(n[t]);return r}return e}var st=Symbol("extension_registration_trace");function j(e,n){let r=new TypeError(e);return Object.defineProperty(r,st,{value:n,enumerable:!1,configurable:!1,writable:!1}),r}function Zi(e){if(e instanceof Error)return e[st]}function Te(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Ie(n)}function ln(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Ae(n)}function fn(e,n){if(!Array.isArray(n))throw new TypeError(`${e} requires an array of object definitions`);return n.map(r=>Te(e,r))}var Qi=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function cn(e,n){return fn(e,n).map(r=>(r.repeatable===!0&&(r.list=!0),r))}function es(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function et(e,n){if(n===void 0)return e.replace(/\s+/g,"-");if(typeof n!="string"||n.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let r=es(n);if(r.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return r}function nt(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let n=[];for(let[t,o]of e.entries()){let i=O(`registerCommand definition.arguments[${t}]`,o),s=I(`registerCommand definition.arguments[${t}].name`,i.name);if(T(`registerCommand definition.arguments[${t}].required`,i.required),T(`registerCommand definition.arguments[${t}].variadic`,i.variadic),S(`registerCommand definition.arguments[${t}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${t}].name must not contain spaces`);let a={name:s};i.required===!0&&(a.required=!0),i.variadic===!0&&(a.variadic=!0),typeof i.description=="string"&&(a.description=i.description.trim()),n.push(a)}let r=n.map((t,o)=>t.variadic?o:-1).filter(t=>t>=0);if(r.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(r.length===1&&r[0]!==n.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return n}function dn(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerFlags flags[${n}]`,r),o=Object.keys(t).filter(l=>!Qi.has(l)).sort((l,c)=>l.localeCompare(c));if(o.length>0)throw new TypeError(`registerFlags flags[${n}] contains unknown field(s): ${o.join(", ")}`);let i=t.long,s=t.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${n}] requires at least one of long or short`);S(`registerFlags flags[${n}].long`,i),S(`registerFlags flags[${n}].short`,s);let a=Yn(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${n}] ${Xn(a.token,a.failure)}`);if(S(`registerFlags flags[${n}].value_name`,t.value_name),S(`registerFlags flags[${n}].description`,t.description),T(`registerFlags flags[${n}].required`,t.required),T(`registerFlags flags[${n}].enabled`,t.enabled),T(`registerFlags flags[${n}].visible`,t.visible),T(`registerFlags flags[${n}].list`,t.list),T(`registerFlags flags[${n}].repeatable`,t.repeatable),t.list!==void 0&&t.repeatable!==void 0&&t.list!==t.repeatable)throw new TypeError(`registerFlags flags[${n}].list and repeatable must match when both are provided`);if(Ar(`registerFlags flags[${n}].default`,t.default),Array.isArray(t.default)&&t.list!==!0&&t.repeatable!==!0)throw new TypeError(`registerFlags flags[${n}].default cannot be an array unless list is true.`);ns(`registerFlags flags[${n}]`,t)}}function ns(e,n){let r=(typeof n.value_type=="string"?n.value_type:void 0)??(typeof n.type=="string"?n.type:void 0);if(r===void 0)return;let t=br(r);if(t===null)throw new TypeError(`${e} value_type "${r}" is not a known flag value type (expected one of: string, number, boolean).`);if(n.default===void 0)return;let o=n.list===!0||n.repeatable===!0?wr(n.default):[n.default];for(let[i,s]of o.entries())if(!vr(s,t)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${t}.`)}}function rs(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerItemFields fields[${n}]`,r);I(`registerItemFields fields[${n}].name`,t.name);let o=I(`registerItemFields fields[${n}].type`,t.type);if(_e(o)===null){let i=Dn(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${n}].type "${o}" is not a known field type (expected one of: ${ye.join(", ")}).${s}`)}T(`registerItemFields fields[${n}].optional`,t.optional)}}function ts(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);I(`${i}.command`,s.command),I(`${i}.option`,s.option),T(`${i}.enabled`,s.enabled),T(`${i}.required`,s.required),T(`${i}.visible`,s.visible)}}function os(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].options`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);I(`${i}.key`,s.key),U(`${i}.values`,s.values),T(`${i}.required`,s.required),U(`${i}.aliases`,s.aliases)}}function is(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[n,r]of e.entries()){let t=`registerItemTypes types[${n}]`,o=O(t,r);I(`${t}.name`,o.name),S(`${t}.folder`,o.folder),U(`${t}.aliases`,o.aliases),U(`${t}.required_create_fields`,o.required_create_fields),U(`${t}.required_create_repeatables`,o.required_create_repeatables),ts(n,o.command_option_policies),os(n,o.options)}}function ss(e){let n=O("registerMigration definition",e);if(n.id!==void 0&&typeof n.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(n.description!==void 0&&typeof n.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(n.status!==void 0&&typeof n.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(T("registerMigration definition.mandatory",n.mandatory),n.run!==void 0&&typeof n.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var at=["types","statuses","fields","workflows","config","templates","packages"],as={types:(e,n)=>{if(n.name!==void 0&&typeof n.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,n)=>{if(typeof n.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(n.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[r,t]of n.allowed_transitions.entries())if(!Array.isArray(t))throw new TypeError(`${e}.allowed_transitions[${r}] must be a [from, to] array`)},templates:(e,n)=>{if(typeof n.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof n.options!="object"||n.options===null||Array.isArray(n.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,n)=>{if(typeof n.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function ls(e){let n=O("registerProfile profile",e);if(I("registerProfile profile.name",n.name),I("registerProfile profile.title",n.title),n.summary!==void 0&&typeof n.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let r of at){let t=n[r];if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`registerProfile profile.${r} must be an array when provided`);for(let[o,i]of t.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${r}[${o}] must be an object`);as[r]?.(`registerProfile profile.${r}[${o}]`,i)}}}}function cs(e){e.summary===void 0&&(e.summary="");for(let n of at)e[n]===void 0&&(e[n]=[]);return e}function un(e,n){return Object.defineProperty(e,"runtime_definition",{value:n,enumerable:!1,writable:!1,configurable:!1}),e}function ds(e){if(!Array.isArray(e.capabilities))return null;let n=new Set;for(let r of e.capabilities){let t=r.trim().toLowerCase();F(t)&&n.add(t)}return n}function b(e,n,r){let t=ds(e);if(t!==null&&!t.has(n))throw j(`${r} requires capability '${n}' in extension manifest capabilities`,{method:r,registration_index:-1,capability:n,missing_capability:n,expected_schema:`"capabilities": [..., "${n}"]`,received:e.capabilities,hint:`Add "${n}" to ${e.name} manifest capabilities, or remove the ${r} registration call.`})}function us(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(n=>L.includes(n))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function fs(e){return{layer:e.layer,name:e.name,trusted:e.trusted===!0,provenanceVerified:e.provenance?.verified===!0,sandboxProfile:e.sandbox_profile,permissions:e.permissions&&typeof e.permissions=="object"?{fs_read:e.permissions.fs_read,fs_write:e.permissions.fs_write,network:e.permissions.network,env_read:e.permissions.env_read,env_write:e.permissions.env_write,process_spawn:e.permissions.process_spawn}:void 0}}var mn=class{extension;hooks;#e;#r;#o;#t;#s;#a;#i;#l;#n;#c;#d;#u;constructor(n,r,t,o,i,s,a,l,c,d,u){this.#e=n,this.extension=us(n),this.#r=fs(n),this.#o=r,this.#t=t,this.#s=o,this.#a=i,this.#i=s,this.#l=a,this.#n=l,this.#c=c,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.hooks={beforeCommand:m=>this.registerBeforeCommand(m),beforeMutation:m=>this.registerBeforeMutation(m),afterCommand:m=>this.registerAfterCommand(m),onWrite:m=>this.registerOnWrite(m),onRead:m=>this.registerOnRead(m),onIndex:m=>this.registerOnIndex(m)}}allowRegistration(n,r,t,o){let i=qr(this.#u,this.#r,n,r,t,o);return i.warning&&this.#c.push(i.warning),i.allowed}registerCommandTrace(n,r,t,o,i){return{method:"registerCommand",registration_index:n==="override"?this.#t.overrides.length:this.#t.handlers.length,command:r,expected_schema:t,received:Ie(o),hint:i}}registerCommandOverride(n,r){let t=x(n);if(t.length===0)throw j("registerCommand requires a non-empty command name",this.registerCommandTrace("override",n,'registerCommand("<command>", (context) => unknown)',n,"Provide a non-empty command path as the first argument."));if(typeof r!="function"){let o=this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',r,"Provide a function as the second registerCommand argument.");throw j(`registerCommand requires an override function when command name is provided (command="${t}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:t})&&this.#t.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}resolveCommandDefinitionRunHandler(n,r){let t=typeof n.run=="function"?n.run:void 0,o=typeof n.handler=="function"?n.handler:void 0;return!t&&o&&this.#c.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${r}`),t??o}registerCommandDefinition(n){if(typeof n!="object"||n===null)throw j("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof n.name!="string")throw j("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,"Set command definition.name to a non-empty string command path."));let r=x(n.name);if(r.length===0)throw j("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",n.name,"{ name: string; run: (context) => unknown; }",n,"Ensure command definition.name contains a non-empty command path."));let t=this.resolveCommandDefinitionRunHandler(n,r);if(typeof t!="function"){let o=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; }",t,"Define command definition.run as a function.");throw j(`registerCommand requires a command definition run handler (command="${r}", registration_index=${o.registration_index})`,o)}try{$r(n);let o=et(r,n.action);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:r,action:o}))return;let i=n.description?.trim(),s=n.intent?.trim(),a=le("registerCommand definition.examples",n.examples),l=le("registerCommand definition.failure_hints",n.failure_hints),c=nt(n.arguments);n.flags!==void 0&&(b(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(dn(n.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cn("registerCommand definition.flags",n.flags)})));let d={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:o,examples:a,failure_hints:l,arguments:c,tier:n.tier};i&&(d.description=i),s&&(d.intent=s),this.#n.commands.push(d)}catch(o){let i=$e(o),s=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",n,i),a=j(`registerCommand definition metadata invalid (command="${r}", registration_index=${s.registration_index}): ${i}`,s);this.#c.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${r}`),this.#d.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:r,run:t})}registerCommand(n,r){if(b(this.#e,"commands","registerCommand"),typeof n=="string"){this.registerCommandOverride(n,r);return}this.registerCommandDefinition(n)}registerParser(n,r){if(b(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let t=x(I("registerParser command",n));de("registerParser override",r),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}registerPreflight(n){b(this.#e,"preflight","registerPreflight"),this.allowRegistration("preflight.override","registerPreflight","preflight")&&(de("registerPreflight override",n),this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerService(n,r){b(this.#e,"services","registerService");let t=String(n).trim().toLowerCase();if(!Ji(t))throw new TypeError(`registerService service must be one of: ${De.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:t})&&(de("registerService override",r),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:t,run:r}))}registerRenderer(n,r,t={}){if(b(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof r!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(n).trim().toLowerCase();if(!Xi(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(n)}`);if(t.resultDiscriminator!==void 0&&typeof t.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((t.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return x(s)}))];this.#l.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:r,commands:i,...t.resultDiscriminator?{resultDiscriminator:t.resultDiscriminator}:{}})}registerFlags(n,r){if(b(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let t=x(I("registerFlags targetCommand",n));dn(r);let o=cn("registerFlags flags",r);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:t,flags:o})}registerItemFields(n){if(b(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;rs(n);let r=fn("registerItemFields fields",n);if(r.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#n.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:r})}registerItemTypes(n){if(b(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;is(n);let r=fn("registerItemTypes types",n);if(r.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#n.item_types.push({layer:this.#e.layer,name:this.#e.name,types:r})}registerRelationshipKinds(n){if(b(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(n))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(n.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let r=Le();for(let o of this.#n.relationship_kinds)for(let i of o.definitions)r.register(i);let t=n.map(o=>(r.register(o),r.require(o.kind)));this.#n.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:t})}registerMigration(n){if(b(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;ss(n);let r=ln("registerMigration definition",n);this.#n.migrations.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerMigration definition",n)},r))}registerProfile(n){if(b(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let r=Ae(n);ls(r),this.#n.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:cs(r)})}applyImportExportCommandMetadata(n,r,t){if(t!==void 0&&(typeof t!="object"||t===null||Array.isArray(t)))throw new TypeError(`${n} options must be an object when provided`);let o=`${n==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...t,description:t?.description??o,arguments:t?.arguments??i};S(`${n} options.action`,s.action),S(`${n} options.description`,s.description),S(`${n} options.intent`,s.intent);let a=et(r,s.action),l=le(`${n} options.examples`,s.examples),c=le(`${n} options.failure_hints`,s.failure_hints),d=nt(s.arguments);s.flags!==void 0&&(b(this.#e,"schema",`${n} options.flags`),this.allowRegistration("schema.flags",`${n} options.flags`,"schema")&&(dn(s.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cn(`${n} options.flags`,s.flags)})));let u={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:a,examples:l,failure_hints:c,arguments:d},m=s.description?.trim();m&&(u.description=m);let f=s.intent?.trim();f&&(u.intent=f),this.#n.commands.push(u)}registerImporter(n,r,t){if(b(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=Zr(I("registerImporter name",n));de("registerImporter importer",r);let i=Qr(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,t),this.#n.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"import",command:s.command,args:E(s.args),options:E(s.options),global:E(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerExporter(n,r,t){if(b(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=Zr(I("registerExporter name",n));de("registerExporter exporter",r);let i=Qr(o,"export");this.applyImportExportCommandMetadata("registerExporter",i,t),this.#n.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"export",command:s.command,args:E(s.args),options:E(s.options),global:E(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerSearchProvider(n){if(b(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let r=ln("registerSearchProvider provider",n);this.#n.search_providers.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerSearchProvider provider",n)},r))}registerVectorStoreAdapter(n){if(b(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let r=ln("registerVectorStoreAdapter adapter",n);this.#n.vector_store_adapters.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerVectorStoreAdapter adapter",n)},r))}registerBeforeCommand(n){b(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(Z("beforeCommand",n),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerBeforeMutation(n){b(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(Z("beforeMutation",n),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerAfterCommand(n){b(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(Z("afterCommand",n),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnWrite(n){b(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(Z("onWrite",n),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnRead(n){b(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(Z("onRead",n),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnIndex(n){b(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(Z("onIndex",n),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:n}))}};function ms(e,n,r,t,o,i,s,a,l,c,d){return new mn(e,n,r,t,o,i,s,a,l,c,d)}function ps(e){let n=e.commands.length,r=e.flags.reduce((s,a)=>s+a.flags.length,0),t=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:n,flags:r,item_fields:t,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length}}function gs(e){let n=[],r=(i,s)=>{let a=new Map;for(let l of i){let c=a.get(l.command)??[];c.push(l),a.set(l.command,c)}for(let l of[...a.keys()].sort((c,d)=>c.localeCompare(d))){let c=a.get(l);if(c.length<=1)continue;let d=c[c.length-1];for(let u of c.slice(0,-1))n.push(`${s}:${l}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};r(e.handlers,"extension_command_handler_collision"),r(e.overrides,"extension_command_override_collision");let t=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>t.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(l=>l.command===i),a=e.overrides.filter(l=>l.command===i);for(let l of a)for(let c of s)n.push(`extension_command_override_handler_overlap:${i}:${l.layer}:${l.name}:${c.layer}:${c.name}`)}return n}function hs(e){let n=new Map;for(let t of e.overrides){let o=n.get(t.format)??[];o.push(t),n.set(t.format,o)}let r=[];for(let t of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))r.push(`extension_renderer_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return r}function ys(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.command)??[];o.push(t),r.set(t.command,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_parser_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}function _s(e){if(e.overrides.length<=1)return[];let n=e.overrides[e.overrides.length-1];return e.overrides.slice(0,-1).map(r=>`extension_preflight_override_collision:${n.layer}:${n.name}:${r.layer}:${r.name}`)}var bs=new Set(["output_format"]);function ws(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.service)??[];o.push(t),r.set(t.service,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1||bs.has(t))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_service_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}async function uc(e){let n=Mr(e.policy??wi),r=Xe(),t=Je(),o=Ze(),i=Qe(),s=en(),a=nn(),l=rn(),c=[],d=[];for(let f of e.loaded){let h=it(f.module);if(!h)continue;let p=c.length,g=Ir({hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l});try{await h.activate(ms(f,r,t,o,i,s,a,l,d,c,n)),c.length>p&&(g(),d.push(`extension_activation_rolled_back:${f.layer}:${f.name}`))}catch($){g(),d.push(`extension_activate_failed:${f.layer}:${f.name}`);let Q=Zi($);c.push({layer:f.layer,name:f.name,entry_path:f.entry_path,error:$e($),trace:Q})}}let u=[...gs(t),...ys(o),..._s(i),...ws(s),...hs(a)],m=[...new Set([...d,...u])];return{hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l,failed:c,warnings:m,hook_counts:{before_command:r.beforeCommand.length,before_mutation:r.beforeMutation.length,after_command:r.afterCommand.length,on_write:r.onWrite.length,on_read:r.onRead.length,on_index:r.onIndex.length},command_override_count:t.overrides.length,command_handler_count:t.handlers.length,parser_override_count:o.overrides.length,preflight_override_count:i.overrides.length,service_override_count:s.overrides.length,renderer_override_count:a.overrides.length,registration_counts:ps(l)}}import lt from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="febba42b-dfd0-549a-a6d9-c30edb321d9d")}catch{}})();var P=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),ut=Rn,hn=$n,vs=["create","update"],Es=new Set(Tn),ks=new Set(me),xs=new Set(In),Cs=new Set(An);function ue(e){let n=Array.isArray(e)?e:[];return[...new Set(n.map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0))].sort((r,t)=>r.localeCompare(t))}function H(e){return typeof e=="string"?e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_"):""}function R(e){if(typeof e!="string"||e.length===0)return;let n=H(e);return n.length>0?n:void 0}function Ss(e){return e.startsWith("--")?e.slice(2):e}function ct(e){return typeof e=="string"?Ss(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function ft(e){return e.replaceAll("_","-")}function Ts(e){let n=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(n.length===0)return e;let[r,...t]=n;return`${r}${t.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function gn(e,n){let r=R(e.id);if(!r)return null;let t=[...new Set(ue(e.aliases).map(H).filter(a=>a.length>0))].sort((a,l)=>a.localeCompare(l)),o=ue(e.roles).filter(a=>Es.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:n;return{id:r,aliases:t,roles:o,description:i&&i.length>0?i:void 0,order:s}}function Is(e){return{draft_status:R(e?.draft_status),open_status:R(e?.open_status),in_progress_status:R(e?.in_progress_status),blocked_status:R(e?.blocked_status),close_status:R(e?.close_status),canceled_status:R(e?.canceled_status)}}function mt(e,n){if(!Array.isArray(n)||n.length!==2)return;let r=H(n[0]),t=H(n[1]);r.length===0||t.length===0||e.pairs.some(o=>o[0]===r&&o[1]===t)||e.pairs.push([r,t])}function As(e){let n=typeof e?.type=="string"?e.type.trim():"";if(n.length===0||!Array.isArray(e?.allowed_transitions))return null;let r={type:n,pairs:[],denyAll:e.allowed_transitions.length===0};for(let t of e.allowed_transitions)mt(r,t);return{typeKey:n.toLowerCase(),record:r}}function $s(e){if(!Array.isArray(e)||e.length===0)return;let n=new Map;for(let t of e){let o=As(t);if(o===null)continue;let i=n.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)mt(i,s);n.set(o.typeKey,i)}let r=[];for(let t of n.values())(t.pairs.length>0||t.denyAll)&&r.push({type:t.type,allowed_transitions:t.pairs});return r.sort((t,o)=>t.type.localeCompare(o.type)),r.length>0?r:void 0}function pt(e){let n=H(e.key??"");if(!n)return null;let r=H(e.metadata_key??e.front_matter_key??n),t=ct(e.cli_flag??ft(n));if(!t)return null;let o=ue(e.cli_aliases).map(d=>ct(d)).filter(d=>d.length>0&&d!==t),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=ks.has(i)?i:"string",a=(()=>{let d=ue(e.commands).filter(u=>xs.has(u));return d.length>0?d:[...vs]})(),l=e.description?.trim(),c=ue(e.required_types);return{key:n,metadata_key:r,cli_flag:t,cli_aliases:o,description:l&&l.length>0?l:void 0,type:s,commands:a,repeatable:e.repeatable===!0||s==="string_array",required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:c,allow_unset:e.allow_unset!==!1}}function Rs(e){let n=new Map;for(let[t,o]of e.entries()){let i=gn(o,t);i&&n.set(i.id,i)}let r=dt([...n.values()]);return r.length>0?r:dt(hn.map((t,o)=>gn(t,o)).filter(t=>t!==null))}function dt(e){return e.sort((n,r)=>n.order===r.order?n.id.localeCompare(r.id):n.order-r.order)}function Ps(e){let n=new Map;for(let r of e??[]){let t=pt(r);t&&n.set(t.key,t)}return[...n.values()].sort((r,t)=>r.key.localeCompare(t.key))}function Os(e){return{id:e.id,aliases:e.aliases.length>0?[...e.aliases]:void 0,roles:e.roles.length>0?[...e.roles]:void 0,description:e.description,order:e.order}}function Ds(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==ft(e.key)?e.cli_flag:void 0,cli_aliases:e.cli_aliases.length>0?[...e.cli_aliases]:void 0,description:e.description,type:e.type,commands:[...e.commands],repeatable:e.repeatable===!0?!0:void 0,required:e.required===!0?!0:void 0,required_on_create:e.required_on_create===!0?!0:void 0,required_types:e.required_types.length>0?[...e.required_types]:void 0,allow_unset:e.allow_unset===!1?!1:void 0}}function Fs(e){let n=typeof e=="string"?e.trim().toLowerCase():"allow";return Cs.has(n)?n:"allow"}function fe(e){let n={...P,...e?.files},r=e?.statuses&&e.statuses.length>0?e.statuses:hn,t=Rs(r),o=Ps(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:n,statuses:t.map(Os),fields:o.map(Ds),workflow:{...ut,...Is(e?.workflow)},type_workflows:$s(e?.type_workflows),unknown_field_policy:Fs(e?.unknown_field_policy)}}function Ns(e){return`${JSON.stringify(e,null,2)}
1
+ import{$ as Fe,L as $n,M as Rn,N as pe,O as ge,R as ee,S as Pn,Y as C,Z as k,a as L,b as Oe,ba as On,c as _n,e as bn,f as wn,g as vn,h as En,i as kn,j as De,k as xn,m as Cn,n as Sn,o as Tn,p as me,q as In,r as An}from"./chunk-Y4LDYLLT.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="294d43fb-b6e8-5a5f-91fe-73ba21075bf5")}catch{}})();function he(e,n,r){if(e===n)return 0;if(Math.abs(e.length-n.length)>r)return null;let t=n.length+1,o=new Array(t),i=new Array(t),s=new Array(t);for(let l=0;l<t;l+=1)o[l]=0,i[l]=l;for(let l=1;l<=e.length;l+=1){s[0]=l;let c=s[0];for(let d=1;d<=n.length;d+=1){let u=e[l-1]===n[d-1]?0:1,m=i[d-1]+u,f=s[d-1]+1,h=i[d]+1,p=Math.min(m,f,h);l>1&&d>1&&e[l-1]===n[d-2]&&e[l-2]===n[d-1]&&(p=Math.min(p,o[d-2]+1)),s[d]=p,p<c&&(c=p)}if(c>r)return null;for(let d=0;d<t;d+=1)o[d]=i[d],i[d]=s[d]}let a=i[n.length];return a<=r?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f6ec614c-2e47-5ce0-bbf6-8dde97ffb99e")}catch{}})();var ye=me;function _e(e){let n=e.trim().toLowerCase();return ye.includes(n)?n:null}function Dn(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Math.max(1,Math.floor(n.length*.34));for(let t of ye)if(he(n,t,r)!==null)return t;return null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ce320988-b999-57c9-a786-a94ac66c5628")}catch{}})();var q=new Set(Pn),be=Object.freeze({get size(){return q.size},has(e){return q.has(e)},entries(){return q.entries()},keys(){return q.keys()},values(){return q.values()},forEach(e,n){q.forEach(r=>e.call(n,r,r,be))},[Symbol.iterator](){return q.values()}});function Fn(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function Nn(e){return typeof e!="string"?null:_e(e)}function gt(e){try{return structuredClone(e)}catch{return e}}function ht(e){let n=e.trim(),r=n.indexOf("=");if(r<=0)throw new k(`--field entries must use name=value syntax, received: ${e}`,C.USAGE);let t=n.slice(0,r).trim(),o=n.slice(r+1);return{key:t,value:o}}function yt(e){return`--${e.replaceAll("_","-")}`}function _t(e,n,r){try{let t=JSON.parse(e);if(r==="array"&&Array.isArray(t)||r==="object"&&typeof t=="object"&&t!==null&&!Array.isArray(t))return t}catch{}throw new k(`--field ${n}=... must be valid JSON ${r}`,C.USAGE)}function bt(e,n,r){if(n==="string")return r;if(n==="number"){let t=r.trim();if(t.length===0)throw new k(`--field ${e}=... must be a number`,C.USAGE);let o=Number(t);if(!Number.isFinite(o))throw new k(`--field ${e}=... must be a number`,C.USAGE);return o}if(n==="boolean"){let t=r.trim().toLowerCase();if(t==="true"||t==="1"||t==="yes")return!0;if(t==="false"||t==="0"||t==="no")return!1;throw new k(`--field ${e}=... must be one of true|false|1|0|yes|no`,C.USAGE)}return n==="string_array"?r.split(/[\n,|]/u).map(t=>t.trim()).filter(t=>t.length>0):_t(r,e,n)}function Ne(e){let n=new Map;if(!e)return n;for(let r of e.item_fields)for(let t of r.fields){let o=Fn(t.name),i=Nn(t.type);if(!o||!i)continue;let s=n.get(o);if(s&&s.type!==i)throw new k(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,C.USAGE,{code:"extension_item_field_type_conflict",nextSteps:["Make every active extension declaration for this field use the same type."]});n.set(o,{name:o,type:i})}return n}function Mn(e){if(be.has(e))throw new k(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...be].sort((n,r)=>n.localeCompare(r)).join(", ")}.`,C.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function na(e){return[...Ne(e).keys()].sort((n,r)=>n.localeCompare(r))}function ra(e,n){if(!e||e.length===0)return{};let r=Ne(n),t={};for(let o of e){let{key:i,value:s}=ht(o),a=r.get(i);if(!a){if(be.has(i)){let c=yt(i);throw new k(`--field ${i} is a core item field, not an extension field`,C.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[c]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${c} <value>`,`When closing an item, pm close <id> also accepts ${c} <value>.`]})}let l=[...r.keys()].sort((c,d)=>c.localeCompare(d));throw new k(`--field ${i} is not declared by an active extension item-field registration`,C.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:l},nextSteps:l.length>0?[`Use one of the declared fields: ${l.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}Mn(a.name),t[a.name]=bt(a.name,a.type,s)}return t}function wt(e,n){return n==="string"?typeof e=="string":n==="number"?typeof e=="number"&&Number.isFinite(e):n==="boolean"?typeof e=="boolean":n==="array"?Array.isArray(e):n==="string_array"?Array.isArray(e)&&e.every(r=>typeof r=="string"):typeof e=="object"&&e!==null&&!Array.isArray(e)}function vt(e,n){return!n||n.length===0?!0:n.some(r=>Object.is(r,e))}function ta(e,n,r={}){if(n){Ne(n);for(let t of n.item_fields)for(let o of t.fields){let i=Fn(o.name);if(!i)continue;Mn(i),!(i in e)&&!r.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=gt(o.default));let s=e[i];if(s===void 0)continue;let a=Nn(o.type);if(a&&!wt(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let l=Array.isArray(o.values)?o.values:void 0;if(!vt(s,l))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a89f0df7-e280-5ce4-8515-1f107a4aeaab")}catch{}})();var Et=[{kind:"blocked_by",direction:"directed",inverse:"blocks",ordering:!0,precedence:"target_before_source",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["depends_on"],compatibilityVersion:1,allowSelf:!1},{kind:"blocks",direction:"directed",inverse:"blocked_by",ordering:!0,precedence:"source_before_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"parent",direction:"directed",inverse:"child",ordering:!1,hierarchy:!0,hierarchyDirection:"target_parent",outgoing:"one",incoming:"many",lifecycle:"supersedable",aliases:["child_of","epic"],compatibilityVersion:1,allowSelf:!1},{kind:"child",direction:"directed",inverse:"parent",ordering:!1,hierarchy:!0,hierarchyDirection:"source_parent",outgoing:"many",incoming:"one",lifecycle:"supersedable",aliases:["parent_child","task"],compatibilityVersion:1,allowSelf:!1},{kind:"related",direction:"undirected",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!1}];function Ee(e){return e.trim().toLowerCase().replaceAll("-","_")}function kt(e){if(e===void 0)return;let n=Ee(e);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return n}function ze(e,n=new Set){if(e===null||typeof e!="object"||n.has(e))return e;if(n.add(e),Array.isArray(e)){for(let r of e)ze(r,n);return Object.freeze(e)}for(let r of Object.values(e))ze(r,n);return Object.freeze(e)}function xt(e,n){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${n}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${n}`)}function Ct(e,n){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${n}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${n}`)}function St(e){if(typeof e!="object"||e===null)throw new TypeError("Relationship kind definition requires an object");if(typeof e.kind!="string")throw new TypeError("Relationship kind requires a string identifier");let n=Ee(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${n}`);return n}function Tt(e,n){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${n}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${n}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${n}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${n}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${n}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${n}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${n}`)}function It(e,n){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${n}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(r=>typeof r!="string")))throw new TypeError(`Invalid relationship aliases for ${n}`)}var je=class{#e=new Map;#r=new Map;constructor(n=Et){for(let r of n)this.register(r)}register(n){let r=St(n);if(Tt(n,r),It(n,r),xt(n,r),Ct(n,r),this.#e.has(r)||this.#r.has(r))throw new TypeError(`Relationship kind already registered: ${r}`);let t=kt(n.inverse),o=[...new Set((n.aliases??[]).map(Ee))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===r||this.#e.has(s)||this.#r.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...n,kind:r,hierarchy:n.hierarchy??!1,inverse:t,aliases:Object.freeze(o),payloadSchema:n.payloadSchema?ze(structuredClone(n.payloadSchema)):void 0});this.#e.set(r,i);for(let s of o)this.#r.set(s,r);return this}resolve(n){if(typeof n!="string")return;let r=Ee(n);return this.#e.get(this.#r.get(r)??r)}require(n){let r=this.resolve(n);if(!r)throw new TypeError(`Unknown relationship kind: ${n}`);return r}list(){return Object.freeze([...this.#e.values()].sort((n,r)=>n.kind.localeCompare(r.kind)))}};function Le(){return new je}var ne=Le();function ia(e,n=ne){return n.resolve(e)?.ordering===!0}function At(e,n,r,t=ne){let o=re(e),i=re(n);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=t.require(r);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function we(e,n){return e.source.localeCompare(n.source)||e.target.localeCompare(n.target)||e.kind.localeCompare(n.kind)}function $t(e,n,r){let t=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!n.has(t)||!n.has(o))throw new TypeError(`Relationship endpoint not found: ${t} -> ${o}`);let i=At(t,o,e.kind,r),s=Object.freeze({...e,source:t,target:o,kind:i.kind}),a=i.direction==="undirected"?[t,o].sort().join("\0"):`${t}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function ve(e,n,r){let t=e.get(n);t?t.push(r):e.set(n,[r])}function re(e){return typeof e=="string"?e.trim():""}function Me(e,n){let r=re(e);return r&&n.has(r)?r:void 0}function Rt(e,n,r){let t=[n],o=n;for(;o!==e;)o=r.get(o),t.push(o);return t.reverse()}var zn=class e{#e;#r;#o;#t;#s=new Map;#a=new Map;constructor(n,r,t=ne){this.#e=t,this.#r=new Set([...n].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#r].sort());let o=new Map;for(let i of r){let{edge:s,identity:a}=$t(i,this.#r,t);o.set(a,s)}this.#t=Object.freeze([...o.values()].sort(we));for(let i of this.#t)ve(this.#s,i.source,i),ve(this.#a,i.target,i),t.require(i.kind).direction==="undirected"&&(ve(this.#s,i.target,i),ve(this.#a,i.source,i))}static fromItems(n,r=ne){let t=new Set(n.map(i=>re(i.id)).filter(Boolean)),o=[];for(let i of n){let s=re(i.id);if(!s)continue;let a=Me(i.parent,t);a&&o.push({source:s,target:a,kind:"parent"});let l=Me(i.blocked_by,t);l&&o.push({source:s,target:l,kind:"blocked_by"});for(let c of i.dependencies??[]){let d=Me(c.id,t);d&&r.resolve(c.kind)&&o.push({source:s,target:d,kind:c.kind,createdAt:c.created_at,author:c.author})}}return new e(t,o,r)}edges(){return this.#t}incidentEdges(n){this.#i(n);let r=this.#s.get(n)??[],t=this.#a.get(n)??[];if(r.length===0)return Object.freeze([...t]);if(t.length===0)return Object.freeze([...r]);let o=[],i=0,s=0;for(;i<r.length||s<t.length;){let a=r[i],l=t[s],c=a===void 0?l:l===void 0||we(a,l)<=0?a:l;o.at(-1)!==c&&o.push(c),a===c&&(i+=1),l===c&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(n){return this.#r.has(n)}registry(){return this.#e}#i(n){if(!this.#r.has(n))throw new TypeError(`Relationship node not found: ${n}`)}#l(n,r){if(!r)return!0;let t=this.#e.require(n.kind);return r.has(n.kind)||t.inverse!==void 0&&r.has(t.inverse)}#n(n,r,t){let o=[...r==="incoming"?[]:this.#s.get(n)??[],...r==="outgoing"?[]:this.#a.get(n)??[]];return[...new Set(o)].filter(i=>this.#l(i,t)).map(i=>({id:i.source===n?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||we(i.edge,s.edge))}adjacency(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(l=>l.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=o.slice(0,i);return{value:s,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:s.length<o.length,nextCursor:s.at(-1)?.id}}}closure(n,r={}){this.#i(n);let t=r.kinds?new Set(r.kinds.map(f=>this.#e.require(f).kind)):void 0,o=r.direction??"outgoing",i=r.limit??Number.POSITIVE_INFINITY,s=r.maxDepth??Number.POSITIVE_INFINITY,a=new Set([n]),l=[],c=[{id:n,depth:0}],d=0,u=0,m=!1;e:for(let f=0;f<c.length;f+=1){r.signal?.throwIfAborted();let h=c[f];d+=1;let p=this.#n(h.id,o,t);if(u+=p.length,h.depth>=s){p.some(g=>!a.has(g.id))&&(m=!0);continue}for(let g of p)if(!a.has(g.id)){if(l.length>=i){m=!0;break e}a.add(g.id),l.push(g.id),c.push({id:g.id,depth:h.depth+1})}}return{value:l,meta:{visitedNodes:d,inspectedEdges:u,truncated:m,nextCursor:l.at(-1)}}}shortestPath(n,r,t={}){if(this.#i(n),this.#i(r),n===r)return{value:[n],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=t.kinds?new Set(t.kinds.map(f=>this.#e.require(f).kind)):void 0,i=t.direction??"outgoing",s=t.maxDepth??Number.POSITIVE_INFINITY,a=[{id:n,depth:0}],l=new Map,c=new Set([n]),d=0,u=0,m=!1;for(let f=0;f<a.length;f+=1){t.signal?.throwIfAborted();let h=a[f];d+=1;let p=this.#n(h.id,i,o);if(u+=p.length,h.depth>=s){p.some(g=>!c.has(g.id))&&(m=!0);continue}for(let g of p)if(!c.has(g.id)){if(l.set(g.id,h.id),g.id===r)return{value:Rt(n,r,l),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};c.add(g.id),a.push({id:g.id,depth:h.depth+1})}}return{value:[],meta:{visitedNodes:d,inspectedEdges:u,truncated:m}}}subgraph(n,r={}){let t=this.closure(n,r),o=[n,...t.value].sort(),i=new Set(o),s=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,a=new Set;for(let l of o)for(let c of this.#s.get(l)??[])i.has(c.source)&&i.has(c.target)&&this.#l(c,s)&&a.add(c);return{value:{nodes:o,edges:[...a].sort(we)},meta:t.meta}}};function sa(e,n,r=ne){return{source:e,target:n.id,kind:r.require(n.kind).kind,createdAt:n.created_at,author:n.author}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function x(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function Pt(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function jn(e){return e?E(e):{}}function Ln(e){return e?E(e):Pt()}function E(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8ba4e82a-ab38-5527-84cf-ec553f434a22")}catch{}})();var Ot=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),Dt=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","parser_overrides","service_overrides","renderer_overrides"];function Ft(e,n){for(let r of Dt){let t=e[r];if(t===void 0)continue;if(!Array.isArray(t)||t.some(i=>typeof i!="string"))return!1;let o=t.map(i=>Ot.has(r)?x(i):i.trim()).filter(i=>i.length>0);n[r]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function Nt(e){if(!Array.isArray(e))return null;let n=[];for(let r of e){if(typeof r!="object"||r===null)return null;let t=r;if(t.format!=="json"&&t.format!=="toon"||!Array.isArray(t.commands)||t.commands.some(o=>typeof o!="string")||typeof t.result_discriminator!="boolean")return null;n.push({format:t.format,commands:[...new Set(t.commands.map(o=>x(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:t.result_discriminator})}return n.sort((r,t)=>r.format.localeCompare(t.format))}function qe(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let n=e;if(n.schema_version!==1)return null;let r={schema_version:1};if(!Ft(n,r))return null;let t=n.preflight_overrides;if(t!==void 0&&(!Number.isInteger(t)||t<0))return null;typeof t=="number"&&(r.preflight_overrides=t);let o=n.renderer_ownership;if(o!==void 0){let i=Nt(o);if(i===null)return null;r.renderer_ownership=i}return r}function da(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3225f4de-aa48-55b7-a704-d93ccb3ee0f4")}catch{}})();function te(e){return[...new Set(e.map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function F(e){return L.includes(e)}function qn(e){let n=e.trim().toLowerCase();return F(n)?n:null}function Vn(e){return e.filter(n=>!F(n))}function Ve(e){let n=e.trim().toLowerCase();return n.length===0?null:_n[n]??null}function Un(e){let n=te([...e].map(i=>i.toLowerCase())),r=[],t=[];for(let i of n){let s=Ve(i);if(s){r.push(s),t.push({alias:i,target:s});continue}r.push(i)}let o=[...new Map(t.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:te(r),legacy_aliases:o}}function Mt(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Ve(n);if(r)return r;let t=Math.max(1,Math.floor(n.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of L){let a=he(n,s,t);a!==null&&a<i&&(i=a,o=s)}return o}function Wn(e,n,r){let t=L.join(","),o=Mt(r)??"none";return`extension_capability_unknown:${e}:${n}:${r}:allowed=${t}:suggested=${o}`}function Kn(e,n,r){let t=r.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${n}:aliases=${t}`}function zt(e){let n=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!n)return null;let[,r,t,o,i,s]=n,a=r,l=i.split(",").map(f=>f.trim()).filter(f=>f.length>0),c=Ve(o),u=(s==="none"?void 0:s)??c??void 0;return{layer:a,name:t,capability:o,allowed_capabilities:l,capability_contract_version:Oe,suggested_capability:u,suggestion_source:u?c===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:c??void 0}}function jt(e){let n=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!n)return[];let[,r,t,o]=n,i=r,s=[...L],a=[];for(let l of o.split(",")){let[c,d]=l.split(">"),u=c?.trim(),m=d?.trim().toLowerCase();!u||!m||!F(m)||a.push({layer:i,name:t,capability:u,allowed_capabilities:s,capability_contract_version:Oe,suggested_capability:m,suggestion_source:"legacy_alias",legacy_alias_target:m})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3f347c0d-2e1f-5d17-9e38-bae834f845d3")}catch{}})();var ha={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService"]},Bn=":";function Hn(e,n){return`${e}${Bn}${Ue(n)}`}function Lt(e){return e.slice(e.indexOf(Bn)+1)}function Ue(e){return e.trim().toLowerCase()}function qt(e){if(!Array.isArray(e))return[];let n=new Set;for(let r of e){let t=qn(r);t!==null&&n.add(t)}return[...n].sort((r,t)=>r.localeCompare(t))}function Gn(e){let n=new Map,r=(d,u)=>{for(let m of d){let f=Hn(m.layer,m.name),h=n.get(f);h===void 0&&(h=new Set,n.set(f,h)),h.add(u)}},{registrations:t,commands:o,parsers:i,preflight:s,services:a,renderers:l,hooks:c}=e;return r(t.commands,"commands"),r(o.overrides,"commands"),r(o.handlers,"commands"),r(t.flags,"schema"),r(t.item_fields,"schema"),r(t.item_types,"schema"),r(t.relationship_kinds??[],"schema"),r(t.migrations,"schema"),r(t.profiles,"schema"),r(t.importers,"importers"),r(t.exporters,"importers"),r(t.search_providers,"search"),r(t.vector_store_adapters,"search"),r(i.overrides,"parser"),r(s.overrides,"preflight"),r(a.overrides,"services"),r(l.overrides,"renderers"),r(c.beforeCommand,"hooks"),r(c.beforeMutation,"hooks"),r(c.afterCommand,"hooks"),r(c.onWrite,"hooks"),r(c.onRead,"hooks"),r(c.onIndex,"hooks"),n}function ya(e,n={}){let r=Gn(e),t=new Set;n.extensionName!==void 0&&t.add(Ue(n.extensionName));for(let i of n.extensionNames??[])t.add(Ue(i));let o=new Set;for(let[i,s]of r)if(!(t.size>0&&!t.has(Lt(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function _a(e,n){let r=Gn(n),t=[];for(let o of e){let i=qt(o.capabilities);if(i.length===0)continue;let s=r.get(Hn(o.layer,o.name))??new Set,a=[...s].sort((c,d)=>c.localeCompare(d)),l=i.filter(c=>!s.has(c));t.push({layer:o.layer,name:o.name,declared:i,used:a,unused:l})}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4eccf02f-7401-539f-b843-f55b63ed878c")}catch{}})();var Vt=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function Ut(e){if(typeof e!="string")return null;let n=e.trim(),r=n.split(/[ =]/,1)[0];return Fe.has(r)?"host_owned_flag_collision":Vt.test(n)?null:"malformed_long_flag"}function Yn(e,n){let r=[e,n].find(i=>typeof i=="string"&&Fe.has(i.trim().split(/[ =]/,1)[0]));if(typeof r=="string")return{token:r.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let t=e.trim(),o=Ut(t);return o===null?null:{token:t,failure:o}}function Xn(e,n){return n==="host_owned_flag_collision"?`cannot shadow host-owned global flag "${e}"; read it from context.global instead`:`long flag "${e}" must start with a double-dash name such as "--my-flag" or "--my-flag <value>"`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="849502d0-2616-500c-96de-228c0759459d")}catch{}})();function Jn(e){return typeof e=="string"?e:String(e)}function oe(e){let r=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(r)?r.split(/[.-]/).map(t=>Number(t)):null}function We(e,n){let r=oe(e),t=oe(n);if(!r||!t)return null;let o=Math.max(r.length,t.length);for(let i=0;i<o;i+=1){let s=r[i]??0,a=t[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function Zn(e,n){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:n};let r=Jn(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(!oe(r))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(n===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:null};let t=We(n,r);return t===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:n}:t<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:r,current:n}:{kind:"pm_min_version",status:"ok",allowed:!0,required:r,current:n}}function Qn(e,n,r){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:n};let t=Jn(e);if(typeof e!="string"||t.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(/^[<>=~^]/.test(t.trim())||!oe(t))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(n===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:null};let o=We(n,t);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:n}:o>0?r==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:t,current:n}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:t,current:n}:{kind:"pm_max_version",status:"ok",allowed:!0,required:t,current:n}}import*as v from"node:fs/promises";import ke from"node:path";import Wt from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="74d24458-0685-5354-b62f-5323ee72ffd6")}catch{}})();var Kt=[10,25,50,100];async function er(e){await v.mkdir(e,{recursive:!0})}async function ie(e){try{return await v.access(e),!0}catch{return!1}}async function nr(e){try{return await v.readFile(e,"utf8")}catch(n){if(V(n,"ENOENT"))return null;throw n}}async function rr(e,n){let r=ke.dirname(e);await er(r);let t=ke.join(r,`.${ke.basename(e)}.${process.pid}.${Date.now()}.${Wt.randomBytes(4).toString("hex")}.tmp`);await v.writeFile(t,n,"utf8");try{await v.rename(t,e)}catch(o){if(process.platform==="win32"&&(V(o,"EPERM")||V(o,"EBUSY"))){let i=o;for(let s of Kt){await new Promise(a=>setTimeout(a,s));try{await v.rename(t,e);return}catch(a){if(i=a,!V(a,"EPERM")&&!V(a,"EBUSY"))break}}try{await v.unlink(t)}catch{}throw i}if(V(o,"EXDEV")){try{await v.copyFile(t,e)}finally{try{await v.unlink(t)}catch{}}return}try{await v.unlink(t)}catch{}throw o}}async function Ca(e,n){let r=ke.dirname(e);await er(r);let t=await v.open(e,"a");try{await t.writeFile(`${n}
2
+ `,"utf8")}finally{await t.close()}}async function Sa(e){try{await v.unlink(e)}catch(n){if(!V(n,"ENOENT"))throw n}}function V(e,n){return typeof e=="object"&&e!==null&&"code"in e&&e.code===n}import tr from"path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="624aced5-552c-5354-9e34-b96e267d34d1")}catch{}})();function Ke(e,n){let r=tr.relative(e,n);return r.length===0?!0:!r.startsWith("..")&&!tr.isAbsolute(r)}import G from"node:fs";import N from"node:path";import{fileURLToPath as Bt}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dffcc28d-16a3-53d4-ba02-5298ae7a6d63")}catch{}})();var Ht="@unbrained/pm-cli";function Gt(e){try{return JSON.parse(G.readFileSync(e,"utf8")).name===Ht}catch{return!1}}function Yt(e){let n=G.existsSync(e)&&G.statSync(e).isDirectory()?N.resolve(e):N.dirname(N.resolve(e));for(;;){let r=N.join(n,"package.json");if(G.existsSync(r)&&Gt(r))return n;let t=N.dirname(n);if(t===n)return;n=t}}function Be(e,n=[]){let r=Bt(e),t=Yt(r);return t||N.resolve(N.dirname(r),...n)}function Oa(e,n=[]){try{let r=N.join(Be(e,n),"package.json");if(!G.existsSync(r))return;let t=JSON.parse(G.readFileSync(r,"utf8"));return typeof t.version=="string"&&t.version.trim().length>0?t.version:void 0}catch{return}}import eo from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="815165a9-27a7-5933-adae-c7e55330c8e4")}catch{}})();function M(e){return[...new Set((e??[]).map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function Xt(e){let n=e.key.trim();if(n.length===0)return null;let r=M(e.aliases),t=e.description?.trim();return{key:n,values:M(e.values),required:e.required===!0?!0:void 0,aliases:r.length>0?r:void 0,description:t&&t.length>0?t:void 0}}var Jt=e=>e,ir=e=>{let n=e.trim().toLowerCase();return n==="create"||n==="update"?n:null};function Zt(e,n){let r=n(e.command);if(r===null)return null;let t=e.option.trim();return t.length===0?null:{command:r,option:t,required:e.required,visible:e.visible,enabled:e.enabled}}function Qt(e,n){let r=new Map;for(let t of e??[]){let o=Zt(t,n);o&&r.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...r.values()].sort((t,o)=>t.command===o.command?t.option.localeCompare(o.option):t.command.localeCompare(o.command))}function or(e,n){return n?M(e):void 0}function He(e){let n=e?.trim();return n&&n.length>0?n:void 0}function sr(e,n={}){let r=n.resolvePolicyCommand??Jt,t=e.name.trim();if(t.length===0)return null;let o=e.required_create_fields!==void 0,i=e.required_create_repeatables!==void 0,s=e.options!==void 0,a=e.command_option_policies!==void 0,l=M(e.aliases),c=(e.options??[]).map(u=>Xt(u)).filter(u=>u!==null).sort((u,m)=>u.key.localeCompare(m.key)),d=Qt(e.command_option_policies,r);return{name:t,description:He(e.description),default_status:He(e.default_status),folder:He(e.folder),aliases:l.length>0?l:void 0,required_create_fields:or(e.required_create_fields,o),required_create_repeatables:or(e.required_create_repeatables,i),options:s?c:void 0,command_option_policies:a?d:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="88b2ed4e-b5fd-5014-abf1-c163db033abf")}catch{}})();var no=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],ro=["dep","comment","note","learning","file","test","doc"],lr=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],to=["title","description","type","status","priority","tags","body",...lr,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],oo=["title","description","body","status","closeReason","priority","type","tags",...lr,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],cr={"close-reason":"closeReason",close_reason:"closeReason","estimated-minutes":"estimatedMinutes",estimated_minutes:"estimatedMinutes",estimate:"estimatedMinutes","acceptance-criteria":"acceptanceCriteria",acceptance_criteria:"acceptanceCriteria",ac:"acceptanceCriteria","definition-of-ready":"definitionOfReady",definition_of_ready:"definitionOfReady",rank:"order","why-now":"whyNow",why_now:"whyNow","blocked-by":"blockedBy",blocked_by:"blockedBy","blocked-reason":"blockedReason",blocked_reason:"blockedReason","unblock-note":"unblockNote",unblock_note:"unblockNote","repro-steps":"reproSteps",repro_steps:"reproSteps","expected-result":"expectedResult",expected_result:"expectedResult","actual-result":"actualResult",actual_result:"actualResult","affected-version":"affectedVersion",affected_version:"affectedVersion","fixed-version":"fixedVersion",fixed_version:"fixedVersion","customer-impact":"customerImpact",customer_impact:"customerImpact","type-option":"typeOption",type_option:"typeOption",type_options:"typeOption"},io={...cr},so={...cr},dr=[["deadline","--deadline"],["estimatedMinutes","--estimate/--estimated-minutes"],["acceptanceCriteria","--acceptance-criteria/--ac"],["definitionOfReady","--definition-of-ready"],["order","--order/--rank"],["goal","--goal"],["objective","--objective"],["value","--value"],["impact","--impact"],["outcome","--outcome"],["whyNow","--why-now"],["assignee","--assignee"],["parent","--parent"],["reviewer","--reviewer"],["risk","--risk"],["confidence","--confidence"],["sprint","--sprint"],["release","--release"],["blockedBy","--blocked-by"],["blockedReason","--blocked-reason"],["unblockNote","--unblock-note"],["reporter","--reporter"],["severity","--severity"],["environment","--environment"],["reproSteps","--repro-steps"],["resolution","--resolution"],["expectedResult","--expected-result"],["actualResult","--actual-result"],["affectedVersion","--affected-version"],["fixedVersion","--fixed-version"],["component","--component"],["regression","--regression"],["customerImpact","--customer-impact"]],ur=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function fr(e){return Object.fromEntries(e)}var ao=fr([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...dr,["author","--author"],["message","--message"],["dep","--dep"],...ur]),lo=fr([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...dr,...ur,["author","--author"],["message","--message"],["force","--force"]]);function co(e){return e.trim().replace(/^--+/,"").toLowerCase()}function uo(e){return e==="create"?to:oo}function fo(e){return e==="create"?io:so}function mr(e,n){let r=co(n);if(r.length===0)return;let t=fo(e)[r];return t||uo(e).find(o=>o.toLowerCase()===r)}function La(e,n){return(e==="create"?ao:lo)[n]??`--${n.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function Ye(e){let n=po(e);return n.length===0?"items":n.endsWith("s")?n:`${n}s`}function mo(e){let n=e.trim(),t=n.replaceAll("\\","/").replace(/^\/+/,""),o=eo.posix.normalize(t);if(n.includes("\0")||/^[A-Za-z]:/.test(o)||o==="."||o===".."||o.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return o}function po(e){let n=e.trim().toLowerCase(),r="",t=!1;for(let o of n){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){t&&r.length>0&&(r+="-"),r+=o,t=!1;continue}r.length>0&&(t=!0)}return r}function go(e){return sr(e,{resolvePolicyCommand:ir})}function se(e,n){let r=e[n];return Array.isArray(r)?r.filter(t=>typeof t=="string"):void 0}function ho(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;return typeof n.key!="string"?null:{key:n.key,values:se(n,"values")??[],required:n.required===void 0?void 0:!!n.required,aliases:se(n,"aliases"),description:typeof n.description=="string"?n.description:void 0}}function yo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;if(typeof n.command!="string"||typeof n.option!="string")return null;let r=n.command.trim().toLowerCase();return r!=="create"&&r!=="update"?null:{command:r,option:n.option,required:n.required===void 0?void 0:!!n.required,visible:n.visible===void 0?void 0:!!n.visible,enabled:n.enabled===void 0?void 0:!!n.enabled}}function _o(e){if(Array.isArray(e.options))return e.options.map(n=>ho(n)).filter(n=>n!==null)}function bo(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(n=>yo(n)).filter(n=>n!==null)}function wo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e,r=typeof n.name=="string"?n.name:"";if(r.trim().length===0)return null;let t=typeof n.folder=="string"?n.folder:void 0,o=typeof n.description=="string"?n.description:void 0,i=typeof n.default_status=="string"?n.default_status:void 0;return{name:r,description:o,default_status:i,folder:t,aliases:se(n,"aliases"),required_create_fields:se(n,"required_create_fields"),required_create_repeatables:se(n,"required_create_repeatables"),options:_o(n),command_option_policies:bo(n)}}function vo(e,n){return e.required_create_fields?M(e.required_create_fields):n?.required_create_fields??[]}function Eo(e,n){return e.required_create_repeatables?M(e.required_create_repeatables):n?.required_create_repeatables??[]}function ko(e,n){return e.options?e.options:n?.options?[...n.options]:[]}function xo(e,n){return e.command_option_policies?e.command_option_policies:n?.command_option_policies?[...n.command_option_policies]:[]}function Co(e,n){let r=n?.name??e.name,t=e.description??n?.description,o=e.default_status??n?.default_status,i=mo(e.folder??n?.folder??Ye(r)),s={name:r,folder:i,aliases:M([...n?.aliases??[],...e.aliases??[]]),required_create_fields:vo(e,n),required_create_repeatables:Eo(e,n),options:ko(e,n),command_option_policies:xo(e,n)};return t&&(s.description=t),o&&(s.default_status=o),s}function ar(e,n){for(let r of e){let t=go(r);if(!t)continue;let o=t.name.toLowerCase(),i=n.get(o);n.set(o,Co(t,i))}}function So(e){if(!e)return[];let n=[];for(let r of e.item_types??[]){let t=r.types;if(Array.isArray(t))for(let o of t){let i=wo(o);i&&n.push(i)}}return n}function qa(e,n=null){let r=new Map;for(let l of Cn)r.set(l.toLowerCase(),{name:l,folder:ee[l],aliases:[],required_create_fields:[...no],required_create_repeatables:[...ro],options:[],command_option_policies:[]});ar(e.item_types?.definitions??[],r),ar(So(n),r);let t=[...r.values()].sort((l,c)=>l.name.localeCompare(c.name)),o={},i={},s={};for(let l of t){o[l.name]=l,s[l.name]=l.folder,i[l.name.toLowerCase()]=l.name;for(let c of l.aliases)i[c.toLowerCase()]=l.name}let a=[...new Set(t.map(l=>l.folder))].sort((l,c)=>l.localeCompare(c));return{types:t.map(l=>l.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function To(e,n){if(e!==void 0)return n.alias_to_type[e.trim().toLowerCase()]}function Io(e,n){let r=To(e,n);if(r)return n.by_type[r]}function Ao(e,n,r,t){for(let o of t){let i=mr(r,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${r}" on type "${n.name}"`)}}function Ge(e,n,r){if(r){e.add(n);return}e.delete(n)}function $o(e,n,r,t){let o=mr(r,t.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${t.option}" for command "${r}" on type "${n.name}"`);return}t.required!==void 0&&Ge(e.required,o,t.required),t.visible!==void 0&&Ge(e.hidden,o,!t.visible),t.enabled!==void 0&&Ge(e.disabled,o,!t.enabled)}function Ro(e,n,r){for(let t of n.command_option_policies)t.command===r&&$o(e,n,r,t)}function Po(e,n,r){for(let t of e.required)e.disabled.has(t)&&e.errors.push(`Option "${t}" cannot be both required and disabled for command "${r}" on type "${n.name}"`)}function Va(e,n,r){let t=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:t};return Ao(a,e,n,r),Ro(a,e,n),Po(a,e,n),{required:[...o],hidden:[...i].sort((l,c)=>l.localeCompare(c)),disabled:[...s].sort((l,c)=>l.localeCompare(c)),errors:t}}function Oo(e){let n=new Map;for(let r of e.options){n.set(r.key.toLowerCase(),r);for(let t of r.aliases??[])n.set(t.toLowerCase(),r)}return n}function Do(e,n,r){let t=e.values;if(t.length===0)return n;let i=new Map(t.map(s=>[s.toLowerCase(),s])).get(n.toLowerCase());if(!i){r.push(`Invalid value "${n}" for type option "${e.key}". Allowed: ${t.join(", ")}`);return}return i}function Ua(e,n,r){let t=Io(e,r);if(!t)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Oo(t),s={};for(let[l,c]of Object.entries(n??{})){let d=l.trim(),u=c.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let m=i.get(d.toLowerCase());if(!m){let h=t.options.map(p=>p.key).join(", ");o.push(t.options.length>0?`Unknown type option "${d}" for type "${t.name}". Allowed: ${h}`:`Type "${t.name}" does not define any configurable type options`);continue}let f=Do(m,u,o);f!==void 0&&(s[m.key]=f)}for(let l of t.options)l.required&&!(l.key in s)&&o.push(`Missing required type option "${l.key}" for type "${t.name}"`);let a=Object.keys(s).sort((l,c)=>l.localeCompare(c));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(l=>[l,s[l]])),errors:o}}import{readFileSync as Fo,readdirSync as Ba,statSync as No}from"node:fs";import Mo from"node:os";import w from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c155ccd1-cf4c-57fd-9d0e-5274eb29a764")}catch{}})();var zo={json_markdown:".md",toon:".toon"},jo={".md":"json_markdown",".toon":"toon"};var Ja=[".md",".toon"];function xe(e){try{return No(e),!0}catch{return!1}}function Lo(e){try{let n=JSON.parse(Fo(e,"utf8"));return typeof n!="object"||n===null||Array.isArray(n)?!1:"id_prefix"in n||"item_format"in n}catch{return!1}}function qo(e){let n=w.resolve(e);for(;;){let r=w.join(n,pe),t=w.join(r,ge);if(xe(t))return r;let o=w.join(n,ge);if(xe(o)&&Lo(o))return n;let i=w.dirname(n);if(i===n)return;n=i}}function Vo(e){return qo(e)??w.resolve(e,pe)}function Za(e,n){let r=process.env.PM_PATH,t=n?.trim()||r?.trim();if(t){let o=w.resolve(e,t);if(!xe(pr(o))){let i=w.join(o,pe);if(xe(pr(i)))return i}return o}return Vo(e)}function Qa(e){let n=w.resolve(e),r=w.dirname(n);return w.basename(n)==="pm"&&w.basename(r)===".agents"?w.dirname(r):n}function gr(e){let n=process.env.PM_GLOBAL_PATH?.trim(),r=n&&n.length>0?n:w.join(Mo.homedir(),".pm-cli");return w.resolve(e,r)}function pr(e){return w.join(e,ge)}function Uo(e,n,r=ee){let t=r[n]??Ye(n);return w.join(e,t)}function el(e,n,r,t="toon",o=ee){return w.join(Uo(e,n,o),`${r}${zo[t]}`)}function nl(e){let n=e.replaceAll("\\","/"),r=w.posix.extname(n).toLowerCase();return jo[r]??null}function rl(e,n){return w.join(e,"history",`${n}.jsonl`)}function tl(e,n){return w.join(e,"locks",`${n}.lock`)}function ol(e){return w.join(e,"runtime")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c29511ab-8c01-57f2-b353-cbc72900cb90")}catch{}})();function Wo(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function sl(e){return Wo(e)??void 0}function al(e){let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n-=1;return n===e.length?e:e.slice(0,n)}function ll(e){return Array.isArray(e)&&e.every(n=>typeof n=="number"&&Number.isFinite(n))}function cl(e){if(e instanceof Error){let n=e.message.trim();return n.length>0?n:e.name}return String(e)}function yr(e){let n=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(n)?n:null}function dl(e){let n=yr(e);return n===null||n<=0||!Number.isInteger(n)?null:n}function ul(e,n,r){let t=yr(e);return t===null||t<n||t>r?null:t}function Y(e){return typeof e!="object"||e===null?null:e}function hr(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function _r(e){let n=hr(e);if(!n)return null;if(typeof n.activate=="function")return n;let r=hr(n.default);return typeof r?.activate=="function"?r:null}function fl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e}:{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8a7dca67-8f1e-5451-b45c-4a75b1117d72")}catch{}})();var Ko=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function br(e){return typeof e!="string"?null:Ko[e.trim().toLowerCase()]??null}function wr(e){let n=[],r=t=>{if(Array.isArray(t)){for(let o of t)r(o);return}if(typeof t=="string"){for(let o of t.split(",")){let i=o.trim();i.length>0&&n.push(i)}return}t!=null&&n.push(t)};return r(e),n}function vr(e,n){return n==="string"?!0:n==="number"?typeof e=="number"?Number.isFinite(e):typeof e=="string"&&e.trim().length>0&&Number.isFinite(Number(e)):typeof e=="boolean"?!0:typeof e=="string"&&["true","false","1","0"].includes(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="baa8b608-7f1e-5382-abe3-b1af79e46da4")}catch{}})();function Xe(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Je(){return{overrides:[],handlers:[]}}function Ze(){return{overrides:[]}}function Qe(){return{overrides:[]}}function en(){return{overrides:[]}}function nn(){return{overrides:[]}}function rn(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4c40667c-1e20-5813-b2f3-eb4cb966b246")}catch{}})();var Bo=5e3;async function tn(e,n,r){let t=[];for(let o of e)try{await o.run(E(r))}catch{t.push(`extension_hook_failed:${o.layer}:${o.name}:${n}`)}return t}function Ho(e,n,r){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new k(`Extension mutation guard ${n.name} returned an invalid decision.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${n.layer}:${n.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let t=e,o=typeof t.code=="string"?t.code.trim():"",i=typeof t.remediation=="string"?t.remediation.trim():"";if(o.length===0||i.length===0)throw new k(`Extension mutation guard ${n.name} returned an invalid denial.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${n.layer}:${n.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof t.message=="string"?t.message.trim():"";throw new k(s||`Extension mutation guard ${n.name} denied ${r}.`,C.CONFLICT,{code:o,reason:`${n.layer}:${n.name}`,nextSteps:[i]})}async function Go(e,n){for(let r of e.beforeMutation??[]){let t,o;try{let i=Promise.resolve().then(()=>r.run({pm_root:n.pm_root,operation:n.operation,before:n.before===null?null:E(n.before),after:n.after===null?null:E(n.after),changed_fields:[...n.changed_fields],sdk:n.sdk}));i.catch(()=>{}),t=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new k(`Extension mutation guard ${r.name} timed out before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},Bo),o.unref?.()})])}catch(i){throw i instanceof k?i:new k(`Extension mutation guard ${r.name} failed before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}Ho(t,r,n.operation)}}async function Yo(e,n){return tn(e.onWrite,"onWrite",n)}async function Xo(e,n){return tn(e.onRead,"onRead",n)}async function Jo(e,n){return tn(e.onIndex,"onIndex",n)}function Zo(e){let n="";e instanceof Error&&typeof e.message=="string"?n=e.message:typeof e=="string"?n=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(n=e.message);let r=n.replace(/\s+/gu," ").trim();if(r.length===0)return"";let t=300;return r.length>t?`${r.slice(0,t-1)}\u2026`:r}function Ce(e,n){if(typeof e!="object"||e===null||typeof e[n]!="string")return;let r=String(e[n]).replace(/\s+/gu," ").trim();return r.length>0?r.slice(0,300):void 0}function Qo(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let n=e.exit_code;if(typeof n!="number"||!Number.isInteger(n)||n<1||n>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return n}async function ei(e,n){let r=x(n.command);if(r.length===0)return{handled:!1,result:null,warnings:[]};let t=[...e.handlers].reverse().find(o=>o.command===r);if(!t)return{handled:!1,result:null,warnings:[]};try{let o=await t.run({command:r,args:E(n.args),options:E(n.options),global:E(n.global),pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel,...n.sdk===void 0?{}:{sdk:n.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",Qo(o)],["errorCode",Ce(o,"code")],["remediation",Ce(o,"remediation")]].filter(i=>i[1]!==void 0))}}catch(o){let i=typeof o=="object"&&o!==null&&"exitCode"in o?o.exitCode:void 0;if(typeof i=="number"&&Number.isFinite(i))throw o;return{handled:!1,result:null,warnings:[`extension_command_handler_failed:${t.layer}:${t.name}:${t.command}`],errorMessage:Zo(o),...Object.fromEntries([["errorCode",Ce(o,"code")],["remediation",Ce(o,"remediation")]].filter(s=>s[1]!==void 0))}}}function Er(e){return{handled:!1,result:e.payload,warnings:[]}}function kr(e,n){return[...e.overrides].reverse().filter(r=>r.service===n)}function xr(e){return{service:e.service,command:e.command?x(e.command):void 0,args:e.args?E(e.args):void 0,options:e.options?jn(e.options):void 0,global:e.global?Ln(e.global):void 0,pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,payload:E(e.payload)}}function ni(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let n=e.handled;return n===!0?Object.hasOwn(e,"result"):n===!1&&Reflect.ownKeys(e).length===1}function Cr(e,n){return ni(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:n.payload}:n.service==="output_format"&&e==null?{handled:!1,result:n.payload}:{handled:!0,result:e}}function Sr(e,n,r){return n.service==="output_format"&&typeof e=="object"&&e!==null&&On(e,r.payload)}function ri(e,n){let r=kr(e,n.service);if(r.length===0)return Er(n);let t=[];for(let o of r)try{let i=xr(n),s=o.run(i);if(s instanceof Promise){t.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(Sr(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Cr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}async function ti(e,n){let r=kr(e,n.service);if(r.length===0)return Er(n);let t=[];for(let o of r)try{let i=xr(n),s=await Promise.resolve(o.run(i));if(Sr(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Cr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}import B from"node:fs/promises";import K from"node:path";import{pathToFileURL as _i}from"node:url";import oi from"node:fs/promises";import ae from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e81790e9-3de2-5639-a84d-2c4714afbbf4")}catch{}})();async function Tr(e,n){let r=ae.dirname(n.manifest_path),t=ae.relative(r,n.entry_path);if(t.startsWith("..")||ae.isAbsolute(t))throw new Error(`Cannot snapshot extension entry outside its package directory: ${n.entry_path}`);let o=ae.join(e,`${n.layer}-${n.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await oi.cp(r,o,{recursive:!0,force:!0}),ae.join(o,t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1558713a-91ea-5eef-8426-d910e0b77045")}catch{}})();function Ir(e){let n={beforeCommand:e.hooks.beforeCommand.length,beforeMutation:e.hooks.beforeMutation.length,afterCommand:e.hooks.afterCommand.length,onWrite:e.hooks.onWrite.length,onRead:e.hooks.onRead.length,onIndex:e.hooks.onIndex.length,commandOverrides:e.commands.overrides.length,commandHandlers:e.commands.handlers.length,parserOverrides:e.parsers.overrides.length,preflightOverrides:e.preflight.overrides.length,serviceOverrides:e.services.overrides.length,rendererOverrides:e.renderers.overrides.length,registrations:Object.fromEntries(Object.entries(e.registrations).map(([r,t])=>[r,t.length]))};return()=>{e.hooks.beforeCommand.length=n.beforeCommand,e.hooks.beforeMutation.length=n.beforeMutation,e.hooks.afterCommand.length=n.afterCommand,e.hooks.onWrite.length=n.onWrite,e.hooks.onRead.length=n.onRead,e.hooks.onIndex.length=n.onIndex,e.commands.overrides.length=n.commandOverrides,e.commands.handlers.length=n.commandHandlers,e.parsers.overrides.length=n.parserOverrides,e.preflight.overrides.length=n.preflightOverrides,e.services.overrides.length=n.serviceOverrides,e.renderers.overrides.length=n.rendererOverrides;for(let[r,t]of Object.entries(n.registrations))e.registrations[r].length=t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dc9a3977-a78a-501e-b600-45e7031dcebd")}catch{}})();function O(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return n}function T(e,n){if(n!==void 0&&typeof n!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function S(e,n){if(n!==void 0&&(typeof n!="string"||n.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function Ar(e,n){if(n===void 0)return;let r=t=>typeof t=="string"||typeof t=="number"||typeof t=="boolean";if(Array.isArray(n)){for(let[t,o]of n.entries())if(!r(o))throw new TypeError(`${e}[${t}] must be a string, number, or boolean`);return}if(!r(n))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function U(e,n){if(n!==void 0){if(!Array.isArray(n))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[r,t]of n.entries())if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e}[${r}] must be a non-empty string`)}}function le(e,n){if(U(e,n),!Array.isArray(n))return[];let r=[],t=new Set;for(let o of n){let i=o.trim();i.length===0||t.has(i)||(t.add(i),r.push(i))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="45d00ef3-870c-5f3f-89c1-6abd54c518fe")}catch{}})();function $r(e){S("registerCommand definition.action",e.action),S("registerCommand definition.description",e.description),S("registerCommand definition.intent",e.intent),S("registerCommand definition.tier",e.tier);let n=e.tier;if(n!==void 0&&n!=="core"&&n!=="standard"&&n!=="full"&&n!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="24383c0a-592e-5105-84a3-a6cfb7801281")}catch{}})();function A(e){return typeof e!="string"?"":e.trim().toLowerCase()}function y(e){return new Set((e??[]).map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))}function ii(e){let n=e.trim().toLowerCase();if(n.length===0)return"";let r=n.split(/[.:/]/).map(t=>t.replace(/[\s_-]+/g,"")).filter(t=>t.length>0);return r.length===0?"":r.length===1?r[0]:`${r[0]}.${r.slice(1).join("")}`}function X(e){return new Set((e??[]).map(n=>ii(n)).filter(n=>n.length>0))}function Rr(e){let n=A(e);return bn.includes(n)?n:"off"}function Pr(e){let n=A(e);return wn.includes(n)?n:"off"}function ce(e){let n=A(e);return vn.includes(n)?n:"none"}function on(e){if(typeof e!="string")return;let n=e.trim().toLowerCase();return En.includes(n)?n:void 0}function Or(e){if(typeof e=="string"){let n=on(e)??"block";return{global:n,project:n}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:on(e.global)??"block",project:on(e.project)??"block"}:{global:"block",project:"block"}}function si(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function _(e){return[...new Set(e)].sort((n,r)=>n.localeCompare(r))}function ai(e){let n=A(e.name);return n.length===0?null:{name:n,normalized:{name:n,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?ce(e.sandbox_profile):void 0,allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:X(e.allowed_surfaces),blockedSurfaces:X(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services)}}}function Dr(e){let n=new Map;for(let r of e??[]){let t=ai(r);t&&n.set(t.name,t.normalized)}return n}function li(e){let n=[],r=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of _([...e.allowedCapabilities,...e.blockedCapabilities]))F(o)||n.push(`extension_policy_unknown_capability:${o}`);for(let o of r)for(let i of _([...o.allowedCapabilities,...o.blockedCapabilities]))F(i)||n.push(`extension_policy_unknown_capability:${o.name}:${i}`);let t=new Set(kn);for(let o of _([...e.allowedSurfaces,...e.blockedSurfaces]))t.has(o)||n.push(`extension_policy_unknown_surface:${o}`);for(let o of r)for(let i of _([...o.allowedSurfaces,...o.blockedSurfaces]))t.has(i)||n.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(n)].sort((o,i)=>o.localeCompare(i))}function Fr(e){let n=e.extensions?.policy??{},r=y(n.allowed_capabilities),t=y(n.blocked_capabilities),o=X(n.allowed_surfaces),i=X(n.blocked_surfaces),s=Dr(n.extension_overrides);return{mode:Rr(n.mode),trustMode:Pr(n.trust_mode),pmMaxVersionExceededMode:Or(n.pm_max_version_exceeded_mode),requireProvenance:n.require_provenance===!0,trustedExtensions:y(n.trusted_extensions),defaultSandboxProfile:ce(n.default_sandbox_profile),allowedExtensions:y(n.allowed_extensions),blockedExtensions:y(n.blocked_extensions),allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:y(n.allowed_commands),blockedCommands:y(n.blocked_commands),allowedActions:y(n.allowed_actions),blockedActions:y(n.blocked_actions),allowedServices:y(n.allowed_services),blockedServices:y(n.blocked_services),overridesByName:s,warnings:li({allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function Nr(e){let n=[...e.overridesByName.values()].sort((r,t)=>r.name.localeCompare(t.name)).map(r=>({name:r.name,...r.disabled?{disabled:!0}:{},...r.requireTrusted?{require_trusted:!0}:{},...r.requireProvenance?{require_provenance:!0}:{},...r.sandboxProfile?{sandbox_profile:r.sandboxProfile}:{},...r.allowedCapabilities.size>0?{allowed_capabilities:_(r.allowedCapabilities)}:{},...r.blockedCapabilities.size>0?{blocked_capabilities:_(r.blockedCapabilities)}:{},...r.allowedSurfaces.size>0?{allowed_surfaces:_(r.allowedSurfaces)}:{},...r.blockedSurfaces.size>0?{blocked_surfaces:_(r.blockedSurfaces)}:{},...r.allowedCommands.size>0?{allowed_commands:_(r.allowedCommands)}:{},...r.blockedCommands.size>0?{blocked_commands:_(r.blockedCommands)}:{},...r.allowedActions.size>0?{allowed_actions:_(r.allowedActions)}:{},...r.blockedActions.size>0?{blocked_actions:_(r.blockedActions)}:{},...r.allowedServices.size>0?{allowed_services:_(r.allowedServices)}:{},...r.blockedServices.size>0?{blocked_services:_(r.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:si(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:_(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:_(e.allowedExtensions),blocked_extensions:_(e.blockedExtensions),allowed_capabilities:_(e.allowedCapabilities),blocked_capabilities:_(e.blockedCapabilities),allowed_surfaces:_(e.allowedSurfaces),blocked_surfaces:_(e.blockedSurfaces),allowed_commands:_(e.allowedCommands),blocked_commands:_(e.blockedCommands),allowed_actions:_(e.allowedActions),blocked_actions:_(e.blockedActions),allowed_services:_(e.allowedServices),blocked_services:_(e.blockedServices),extension_overrides:n}}function Mr(e){let n=Dr(e.extension_overrides);return{mode:Rr(e.mode),trustMode:Pr(e.trust_mode),pmMaxVersionExceededMode:Or(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:y(e.trusted_extensions),defaultSandboxProfile:ce(e.default_sandbox_profile),allowedExtensions:y(e.allowed_extensions),blockedExtensions:y(e.blocked_extensions),allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:X(e.allowed_surfaces),blockedSurfaces:X(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services),overridesByName:n,warnings:[]}}function z(e,n){return e.overridesByName.get(A(n))??null}function J(e,n,r,t,o){return n.has(r)?o:e.size>0&&!e.has(r)?t:null}function zr(e,n,r){let t=r.trim().toLowerCase(),o=z(e,n.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return J(i,s,t,"capability_not_allowlisted","capability_blocked")}function ci(e,n,r){let t=z(e,n.name),o=t&&t.allowedSurfaces.size>0?t.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...t?t.blockedSurfaces:[]]);return J(o,i,r,"surface_not_allowlisted","surface_blocked")}function di(e,n,r){let t=x(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return J(i,s,t,"command_not_allowlisted","command_blocked")}function ui(e,n,r){let t=A(r).replace(/\s+/g,"-");if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return J(i,s,t,"action_not_allowlisted","action_blocked")}function fi(e,n,r){let t=A(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return J(i,s,t,"service_not_allowlisted","service_blocked")}function mi(e,n){let r=A(n.name);return z(e,n.name)?.disabled===!0?"extension_override_disabled":J(e.allowedExtensions,e.blockedExtensions,r,"extension_not_allowlisted","extension_blocked")}function pi(e,n){if(e.trustMode==="off")return null;let r=z(e,n.name),t=A(n.name),o=n.trusted===!0,i=n.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(t)?"extension_not_trusted":(r?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||r?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function gi(e,n){if(e.mode==="off")return null;let t=z(e,n.name)?.sandboxProfile??n.sandboxProfile??e.defaultSandboxProfile;if(t==="none")return null;let o=n.permissions;if(!o)return"sandbox_permissions_missing";let i=s=>o[s]===!0;return t==="restricted"?i("process_spawn")?"sandbox_restricted_disallows_process_spawn":i("env_write")?"sandbox_restricted_disallows_env_write":null:i("process_spawn")?"sandbox_strict_disallows_process_spawn":i("network")?"sandbox_strict_disallows_network":i("fs_write")?"sandbox_strict_disallows_fs_write":i("env_write")?"sandbox_strict_disallows_env_write":null}function Se(e,n,r,t,o={}){let i=Object.entries(o).sort((a,l)=>a[0].localeCompare(l[0])).map(([a,l])=>`${a}=${l}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${n}:${r.layer}:${r.name}:reason=${t}${s}`}function jr(e,n){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let r=[],t=mi(e,n);t&&r.push({reason:t,scope:"extension",mode:e.mode});let o=pi(e,n);o&&r.push({reason:o,scope:"trust",mode:e.trustMode});let i=gi(e,n);i&&r.push({reason:i,scope:"extension",mode:e.mode});let s=r.find(l=>l.mode==="enforce");if(s)return{allowed:!1,warning:Se("blocked",s.scope,n,s.reason)};let a=r.find(l=>l.mode==="warn");return a?{allowed:!0,warning:Se("violation",a.scope,n,a.reason)}:{allowed:!0,warning:null}}function Lr(e,n,r){if(e.mode==="off")return{allowed:!0,warning:null};let t=zr(e,n,r);return t?{allowed:e.mode==="warn",warning:Se(e.mode==="warn"?"violation":"blocked","capability",n,t,{capability:r.trim().toLowerCase()})}:{allowed:!0,warning:null}}function hi(e,n,r,t,o){let i=typeof t=="string"?zr(e,n,t):null,s=ci(e,n,r),a=o.command?di(e,n,o.command):null,l=o.action?ui(e,n,o.action):null,c=o.service?fi(e,n,o.service):null;return i??s??a??l??c}function yi(e,n,r,t){let o={method:A(e).replace(/\s+/g,"_"),surface:n};return r&&(o.capability=r),t.command&&(o.command=x(t.command)),t.action&&(o.action=A(t.action).replace(/\s+/g,"-")),t.service&&(o.service=A(t.service)),o}function qr(e,n,r,t,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=hi(e,n,r,o,s);if(!a)return{allowed:!0,warning:null};let l=Se(e.mode==="warn"?"violation":"blocked","registration",n,a,yi(t,r,o,s));return{allowed:e.mode==="warn",warning:l}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function Vr(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ed58c949-c3d3-5a74-9146-05b0a04b58c4")}catch{}})();var bi=100,Ur=null,wi=Object.freeze(xn()),Wr=0;function vi(e=Date.now()){return Wr+=1,`${Wr}-${e}`}function Kr(e,n){let r=e[n];if(r!=null)return typeof r!="string"||r.trim().length===0?null:r.trim()}function Ei(e){if(e==null)return;let n=Y(e);if(!n)return null;let r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i))){if(t.trim().length===0)return null;let o=n[t];if(typeof o!="string"||o.trim().length===0)return null;r[t.trim()]=o.trim()}return Object.keys(r).length>0?r:void 0}function sn(e,n){let r=e[n];return typeof r!="string"||r.trim().length===0?null:r.trim()}function rt(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function W(e){if(e!=null)return typeof e!="boolean"?null:e}function ki(e){let n=rt(e.priority);return n===void 0?bi:n}function xi(e){let n=e.sandbox_profile;if(n==null)return;if(typeof n!="string")return null;let r=ce(n);return r!==n.trim().toLowerCase()?null:r}function an(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function Ci(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=an(n.source),t=an(n.signature),o=an(n.attestation),i=n.verified===void 0||n.verified===null?void 0:typeof n.verified=="boolean"?n.verified:null;return i===null?null:{...r?{source:r}:{},...t?{signature:t}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function Si(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=W(n.fs_read),t=W(n.fs_write),o=W(n.network),i=W(n.env_read),s=W(n.env_write),a=W(n.process_spawn);return[r,t,o,i,s,a].includes(null)?null:{...typeof r=="boolean"?{fs_read:r}:{},...typeof t=="boolean"?{fs_write:t}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function Ti(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(r=>typeof r!="string"))return null;let n=Un(e);return{capabilities:n.capabilities,legacy_aliases:n.legacy_aliases}}function Ii(e){if(e==null)return;let n=Y(e);if(!n)return null;let r=n.commands;if(r==null)return;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;let t=[...new Set(r.map(o=>x(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return t.length>0?{commands:t}:void 0}function Ai(e){let n=rt(e.manifest_version);if(n===null)return null;let r=Kr(e,"pm_min_version");if(r===null)return null;let t=Kr(e,"pm_max_version");if(t===null)return null;let o=Ei(e.engines);if(o===null)return null;let i=W(e.trusted);if(i===null)return null;let s=xi(e);if(s===null)return null;let a=Ci(e.provenance);if(a===null)return null;let l=Si(e.permissions);if(l===null)return null;let c=Ti(e.capabilities);if(c===null)return null;let d=Ii(e.activation);if(d===null)return null;let u=qe(e.contributions);return u===null?null:{manifest_version:n,pm_min_version:r,pm_max_version:t,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:l,capabilities:c.capabilities,legacy_capability_aliases:c.legacy_aliases,activation:d,contributions:u}}function $i(e){if(typeof e!="object"||e===null)return null;let n=e,r=sn(n,"name");if(r===null)return null;let t=sn(n,"version");if(t===null)return null;let o=sn(n,"entry");if(o===null)return null;let i=ki(n);if(i===null)return null;let s=Ai(n);return s===null?null:{name:r,version:t,entry:o,priority:i,manifest_version:s.manifest_version,pm_min_version:s.pm_min_version,pm_max_version:s.pm_max_version,engines:s.engines,trusted:s.trusted,provenance:s.provenance,sandbox_profile:s.sandbox_profile,permissions:s.permissions,activation:s.activation,contributions:s.contributions,capabilities:s.capabilities,legacy_capability_aliases:s.legacy_capability_aliases.length>0?s.legacy_capability_aliases:void 0}}function Ri(e,n,r){return r.has(e)?!1:n.size===0?!0:n.has(e)}async function Pi(e,n){let[r,t]=await Promise.all([B.realpath(e),B.realpath(n)]);return Ke(r,t)}function Oi(e,n=process.cwd()){return{global:K.join(gr(n),"extensions"),project:K.join(e,"extensions")}}async function Di(e){try{return(await B.readdir(e,{withFileTypes:!0})).filter(r=>r.isDirectory()).map(r=>r.name).sort((r,t)=>r.localeCompare(t))}catch{return[]}}function Fi(e){let n={layer:e.layer,directory:e.directory,manifest_path:e.manifest_path,name:e.manifest.name,version:e.manifest.version,entry:e.manifest.entry,priority:e.manifest.priority,entry_path:e.entry_path,manifest_version:e.manifest.manifest_version,pm_min_version:e.manifest.pm_min_version,pm_max_version:e.manifest.pm_max_version,engines:e.manifest.engines,trusted:e.manifest.trusted,provenance:e.manifest.provenance,sandbox_profile:e.manifest.sandbox_profile,permissions:e.manifest.permissions,capabilities:[...e.manifest.capabilities],activation:e.manifest.activation?{commands:[...e.manifest.activation.commands]}:void 0,contributions:e.manifest.contributions??e.contributions};return e.source_package&&(n.source_package=e.source_package),e.source_aliases&&(n.source_aliases=[...e.source_aliases]),n}function Br(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function Ni(e){let n=new Map;try{let r=JSON.parse(await B.readFile(K.join(e,".managed-extensions.json"),"utf8")),o=Y(r)?.entries;if(!Array.isArray(o))return n;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=Br(s.source?.package),l=[s.source?.input,s.source?.name,a].map(u=>Br(u)).filter(u=>u!==void 0),c=qe(s.contributions),d={aliases:[...new Set(l)],...a?{package_name:a}:{},...c?{contributions:c}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&n.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&n.set(`name:${s.name.trim()}`,d)}}catch{return n}return n}function Hr(e){return[...e].sort((n,r)=>{if(n.manifest.priority!==r.manifest.priority)return n.manifest.priority-r.manifest.priority;let t=n.manifest.name.localeCompare(r.manifest.name);return t!==0?t:n.directory.localeCompare(r.directory)})}function Mi(e,n){let r=[...Hr(e),...Hr(n)],t=[];for(let o of r){let i=t.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&t.splice(i,1),t.push(o)}return t}async function Gr(e,n,r,t,o){let i=[],s=[],a=[],l=await Di(n),c=await Ni(n);for(let d of l){let u=await Li(e,n,d,r,t,c,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function zi(){return{diagnostics:[],warnings:[],candidates:[]}}function Yr(e,n,r,t){return{diagnostic:{layer:e,directory:n,manifest_path:r,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[t],candidate:null}}function ji(e,n,r,t,o,i){let s=[];Array.isArray(n.legacy_capability_aliases)&&n.legacy_capability_aliases.length>0&&s.push(Kn(e,n.name,n.legacy_capability_aliases));for(let a of Vn(n.capabilities))s.push(Wn(e,n.name,a));return r?t||s.push(`extension_entry_missing:${e}:${n.name}`):s.push(`extension_entry_outside_extension:${e}:${n.name}`),o.warning&&s.push(o.warning),i.warning&&s.push(i.warning),s}async function Li(e,n,r,t,o,i,s){let a=K.join(n,r),l=K.join(a,"manifest.json");if(!await ie(l))return Yr(e,r,l,`extension_manifest_missing:${e}:${r}`);let c;try{let Pe=JSON.parse(await B.readFile(l,"utf8"));c=$i(Pe)}catch{c=null}if(!c)return Yr(e,r,l,`extension_manifest_invalid:${e}:${r}`);let d=K.resolve(a,c.entry),u=Ke(a,d),m=u?await ie(d):!1,f=u&&m?await Pi(a,d):u,h=Ri(c.name,t,o),p=await Ui(e,c),g=await Wi(e,c,s),$=ji(e,c,f,m,p,g),Q=f&&m&&p.allowed&&g.allowed,Re=i.get(`directory:${r}`)??i.get(`name:${c.name}`);return{diagnostic:{layer:e,directory:r,manifest_path:l,name:c.name,version:c.version,entry:c.entry,priority:c.priority,entry_path:d,enabled:h,status:Q?"ok":"warn"},warnings:$,candidate:Vr({layer:e,directory:r,manifestPath:l,entryPath:d,manifest:c,sourceIdentity:Re,extensionReady:Q,enabledForLoad:h})}}async function qi(e){let n=Oi(e.pmRoot,e.cwd??process.cwd()),r=te(e.settings.extensions.enabled),t=te(e.settings.extensions.disabled),o=Fr(e.settings),i=Nr(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:n,configured_enabled:r,configured_disabled:t,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(r),a=new Set(t),l=e.ignoreGlobalExtensions===!0?zi():await Gr("global",n.global,s,a,o.pmMaxVersionExceededMode.global),c=await Gr("project",n.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=Mi(l.candidates,c.candidates),m=[];for(let f of u){let h={layer:f.layer,name:f.manifest.name,trusted:f.manifest.trusted===!0,provenanceVerified:f.manifest.provenance?.verified===!0,sandboxProfile:f.manifest.sandbox_profile,permissions:f.manifest.permissions&&typeof f.manifest.permissions=="object"?{fs_read:f.manifest.permissions.fs_read,fs_write:f.manifest.permissions.fs_write,network:f.manifest.permissions.network,env_read:f.manifest.permissions.env_read,env_write:f.manifest.permissions.env_write,process_spawn:f.manifest.permissions.process_spawn}:void 0},p=jr(o,h);if(p.warning&&d.push(p.warning),!!p.allowed){for(let g of f.manifest.capabilities){let $=Lr(o,h,g);$.warning&&d.push($.warning)}m.push(Fi(f))}}return{disabled_by_flag:!1,roots:n,configured_enabled:r,configured_disabled:t,discovered:[...l.diagnostics,...c.diagnostics],effective:m,warnings:[...new Set([...l.warnings,...c.warnings,...d])],policy:i}}function $e(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function Vi(){try{let e=Be(import.meta.url,["../../.."]),n=await B.readFile(K.join(e,"package.json"),"utf8"),r=JSON.parse(n);return typeof r.version=="string"&&r.version.trim().length>0?r.version.trim():null}catch{return null}}function tt(){return Ur??=Vi(),Ur}function ot(e,n,r){let t=r.current??"unknown";if(r.kind==="pm_min_version")switch(r.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${n.name}:required=${r.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${n.name}:required=${r.required}:current=${t}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${n.name}:required=${r.required}:current=${t}`;default:return}switch(r.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${n.name}:allowed=${r.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${n.name}:allowed=${r.required}:current=${t}`;default:return}}async function Ui(e,n){if(n.pm_min_version===void 0)return{allowed:!0};let r=Zn(n.pm_min_version,await tt()),t=ot(e,n,r);return t?{allowed:r.allowed,warning:t}:{allowed:r.allowed}}async function Wi(e,n,r){if(n.pm_max_version===void 0)return{allowed:!0};let t=Qn(n.pm_max_version,await tt(),r),o=ot(e,n,t);return o?{allowed:t.allowed,warning:o}:{allowed:t.allowed}}async function Xr(e){try{let n=await B.stat(e);return`${Math.trunc(n.mtimeMs)}-${n.size}`}catch{return"missing"}}async function Ki(e,n){let r=e.entry_path;n.module_graph_snapshot_root&&(r=await Tr(n.module_graph_snapshot_root,e));let t=new URL(_i(r).href);if(!(n.cache_bust===!0||typeof n.reload_token=="string"))return t.href;let[i,s]=await Promise.all([Xr(e.entry_path),Xr(e.manifest_path)]),a=n.reload_token??vi();return t.searchParams.set("pm_ext_reload",a),t.searchParams.set("pm_ext_entry",i),t.searchParams.set("pm_ext_manifest",s),t.href}async function cc(e){let n=await qi(e),r=[],t=[],o=[...n.warnings];if(n.disabled_by_flag)return{...n,warnings:o,loaded:r,failed:t};let i=typeof e.extensionFilter=="function"?n.effective.filter(e.extensionFilter):n.effective;for(let s of i)try{let l=await import(await Ki(s,e));r.push({...s,module:l})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),t.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:$e(a)})}return{...n,warnings:o,loaded:r,failed:t}}var Jr=5e3,Bi=2147483647;function Hi(e){let r={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let t=e.deactivate;r.deactivate=t.bind(e)}return r}function it(e){let n=_r(e);return n?Hi(n):null}async function dc(e,n,r={}){let t=Gi(r?.deactivate_timeout_ms),o=new Set((n?.failed??[]).map(d=>`${d.layer}:${d.name}`)),i=[];for(let d of e.loaded){if(o.has(`${d.layer}:${d.name}`))continue;let u=it(d.module);!u||typeof u.deactivate!="function"||i.push({extension:d,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:d,deactivate:u})=>{try{return await Yi(u,t),{ok:!0}}catch(m){return{ok:!1,layer:d.layer,name:d.name,error:$e(m)}}})),a=[],l=[],c=0;for(let d of s){if(d.ok){c+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),l.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:c,warnings:a,failed:l}}function Gi(e){return typeof e!="number"||e<0?Jr:e===0||e===1/0?0:Number.isFinite(e)?Math.min(Bi,Math.max(1,Math.floor(e))):Jr}async function Yi(e,n){if(n===0){await e();return}let r;try{let t=Promise.resolve().then(()=>e());t.catch(()=>{}),await Promise.race([t,new Promise((o,i)=>{r=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${n}ms`))},n),r.unref?.()})])}finally{clearTimeout(r)}}function Xi(e){return e==="toon"||e==="json"}function Ji(e){return De.includes(e)}function Z(e,n){if(typeof n!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}function I(e,n){if(typeof n!="string"||n.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return n.trim()}function de(e,n){if(typeof n!="function")throw new TypeError(`${e} requires a function handler`)}function Zr(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function Qr(e,n){return x(`${e} ${n}`)}function Ie(e){if(e===null)return null;if(Array.isArray(e))return e.map(n=>Ie(n));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let n=e,r={},t=Object.keys(n).sort((o,i)=>o.localeCompare(i));for(let o of t)r[o]=Ie(n[o]);return r}return e}function Ae(e){if(Array.isArray(e))return e.map(n=>Ae(n));if(typeof e=="object"&&e!==null){let n=e,r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i)))r[t]=Ae(n[t]);return r}return e}var st=Symbol("extension_registration_trace");function j(e,n){let r=new TypeError(e);return Object.defineProperty(r,st,{value:n,enumerable:!1,configurable:!1,writable:!1}),r}function Zi(e){if(e instanceof Error)return e[st]}function Te(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Ie(n)}function ln(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Ae(n)}function fn(e,n){if(!Array.isArray(n))throw new TypeError(`${e} requires an array of object definitions`);return n.map(r=>Te(e,r))}var Qi=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function cn(e,n){return fn(e,n).map(r=>(r.repeatable===!0&&(r.list=!0),r))}function es(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function et(e,n){if(n===void 0)return e.replace(/\s+/g,"-");if(typeof n!="string"||n.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let r=es(n);if(r.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return r}function nt(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let n=[];for(let[t,o]of e.entries()){let i=O(`registerCommand definition.arguments[${t}]`,o),s=I(`registerCommand definition.arguments[${t}].name`,i.name);if(T(`registerCommand definition.arguments[${t}].required`,i.required),T(`registerCommand definition.arguments[${t}].variadic`,i.variadic),S(`registerCommand definition.arguments[${t}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${t}].name must not contain spaces`);let a={name:s};i.required===!0&&(a.required=!0),i.variadic===!0&&(a.variadic=!0),typeof i.description=="string"&&(a.description=i.description.trim()),n.push(a)}let r=n.map((t,o)=>t.variadic?o:-1).filter(t=>t>=0);if(r.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(r.length===1&&r[0]!==n.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return n}function dn(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerFlags flags[${n}]`,r),o=Object.keys(t).filter(l=>!Qi.has(l)).sort((l,c)=>l.localeCompare(c));if(o.length>0)throw new TypeError(`registerFlags flags[${n}] contains unknown field(s): ${o.join(", ")}`);let i=t.long,s=t.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${n}] requires at least one of long or short`);S(`registerFlags flags[${n}].long`,i),S(`registerFlags flags[${n}].short`,s);let a=Yn(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${n}] ${Xn(a.token,a.failure)}`);if(S(`registerFlags flags[${n}].value_name`,t.value_name),S(`registerFlags flags[${n}].description`,t.description),T(`registerFlags flags[${n}].required`,t.required),T(`registerFlags flags[${n}].enabled`,t.enabled),T(`registerFlags flags[${n}].visible`,t.visible),T(`registerFlags flags[${n}].list`,t.list),T(`registerFlags flags[${n}].repeatable`,t.repeatable),t.list!==void 0&&t.repeatable!==void 0&&t.list!==t.repeatable)throw new TypeError(`registerFlags flags[${n}].list and repeatable must match when both are provided`);if(Ar(`registerFlags flags[${n}].default`,t.default),Array.isArray(t.default)&&t.list!==!0&&t.repeatable!==!0)throw new TypeError(`registerFlags flags[${n}].default cannot be an array unless list is true.`);ns(`registerFlags flags[${n}]`,t)}}function ns(e,n){let r=(typeof n.value_type=="string"?n.value_type:void 0)??(typeof n.type=="string"?n.type:void 0);if(r===void 0)return;let t=br(r);if(t===null)throw new TypeError(`${e} value_type "${r}" is not a known flag value type (expected one of: string, number, boolean).`);if(n.default===void 0)return;let o=n.list===!0||n.repeatable===!0?wr(n.default):[n.default];for(let[i,s]of o.entries())if(!vr(s,t)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${t}.`)}}function rs(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerItemFields fields[${n}]`,r);I(`registerItemFields fields[${n}].name`,t.name);let o=I(`registerItemFields fields[${n}].type`,t.type);if(_e(o)===null){let i=Dn(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${n}].type "${o}" is not a known field type (expected one of: ${ye.join(", ")}).${s}`)}T(`registerItemFields fields[${n}].optional`,t.optional)}}function ts(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);I(`${i}.command`,s.command),I(`${i}.option`,s.option),T(`${i}.enabled`,s.enabled),T(`${i}.required`,s.required),T(`${i}.visible`,s.visible)}}function os(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].options`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);I(`${i}.key`,s.key),U(`${i}.values`,s.values),T(`${i}.required`,s.required),U(`${i}.aliases`,s.aliases)}}function is(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[n,r]of e.entries()){let t=`registerItemTypes types[${n}]`,o=O(t,r);I(`${t}.name`,o.name),S(`${t}.folder`,o.folder),U(`${t}.aliases`,o.aliases),U(`${t}.required_create_fields`,o.required_create_fields),U(`${t}.required_create_repeatables`,o.required_create_repeatables),ts(n,o.command_option_policies),os(n,o.options)}}function ss(e){let n=O("registerMigration definition",e);if(n.id!==void 0&&typeof n.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(n.description!==void 0&&typeof n.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(n.status!==void 0&&typeof n.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(T("registerMigration definition.mandatory",n.mandatory),n.run!==void 0&&typeof n.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var at=["types","statuses","fields","workflows","config","templates","packages"],as={types:(e,n)=>{if(n.name!==void 0&&typeof n.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,n)=>{if(typeof n.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(n.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[r,t]of n.allowed_transitions.entries())if(!Array.isArray(t))throw new TypeError(`${e}.allowed_transitions[${r}] must be a [from, to] array`)},templates:(e,n)=>{if(typeof n.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof n.options!="object"||n.options===null||Array.isArray(n.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,n)=>{if(typeof n.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function ls(e){let n=O("registerProfile profile",e);if(I("registerProfile profile.name",n.name),I("registerProfile profile.title",n.title),n.summary!==void 0&&typeof n.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let r of at){let t=n[r];if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`registerProfile profile.${r} must be an array when provided`);for(let[o,i]of t.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${r}[${o}] must be an object`);as[r]?.(`registerProfile profile.${r}[${o}]`,i)}}}}function cs(e){e.summary===void 0&&(e.summary="");for(let n of at)e[n]===void 0&&(e[n]=[]);return e}function un(e,n){return Object.defineProperty(e,"runtime_definition",{value:n,enumerable:!1,writable:!1,configurable:!1}),e}function ds(e){if(!Array.isArray(e.capabilities))return null;let n=new Set;for(let r of e.capabilities){let t=r.trim().toLowerCase();F(t)&&n.add(t)}return n}function b(e,n,r){let t=ds(e);if(t!==null&&!t.has(n))throw j(`${r} requires capability '${n}' in extension manifest capabilities`,{method:r,registration_index:-1,capability:n,missing_capability:n,expected_schema:`"capabilities": [..., "${n}"]`,received:e.capabilities,hint:`Add "${n}" to ${e.name} manifest capabilities, or remove the ${r} registration call.`})}function us(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(n=>L.includes(n))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function fs(e){return{layer:e.layer,name:e.name,trusted:e.trusted===!0,provenanceVerified:e.provenance?.verified===!0,sandboxProfile:e.sandbox_profile,permissions:e.permissions&&typeof e.permissions=="object"?{fs_read:e.permissions.fs_read,fs_write:e.permissions.fs_write,network:e.permissions.network,env_read:e.permissions.env_read,env_write:e.permissions.env_write,process_spawn:e.permissions.process_spawn}:void 0}}var mn=class{extension;hooks;#e;#r;#o;#t;#s;#a;#i;#l;#n;#c;#d;#u;constructor(n,r,t,o,i,s,a,l,c,d,u){this.#e=n,this.extension=us(n),this.#r=fs(n),this.#o=r,this.#t=t,this.#s=o,this.#a=i,this.#i=s,this.#l=a,this.#n=l,this.#c=c,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.hooks={beforeCommand:m=>this.registerBeforeCommand(m),beforeMutation:m=>this.registerBeforeMutation(m),afterCommand:m=>this.registerAfterCommand(m),onWrite:m=>this.registerOnWrite(m),onRead:m=>this.registerOnRead(m),onIndex:m=>this.registerOnIndex(m)}}allowRegistration(n,r,t,o){let i=qr(this.#u,this.#r,n,r,t,o);return i.warning&&this.#c.push(i.warning),i.allowed}registerCommandTrace(n,r,t,o,i){return{method:"registerCommand",registration_index:n==="override"?this.#t.overrides.length:this.#t.handlers.length,command:r,expected_schema:t,received:Ie(o),hint:i}}registerCommandOverride(n,r){let t=x(n);if(t.length===0)throw j("registerCommand requires a non-empty command name",this.registerCommandTrace("override",n,'registerCommand("<command>", (context) => unknown)',n,"Provide a non-empty command path as the first argument."));if(typeof r!="function"){let o=this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',r,"Provide a function as the second registerCommand argument.");throw j(`registerCommand requires an override function when command name is provided (command="${t}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:t})&&this.#t.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}resolveCommandDefinitionRunHandler(n,r){let t=typeof n.run=="function"?n.run:void 0,o=typeof n.handler=="function"?n.handler:void 0;return!t&&o&&this.#c.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${r}`),t??o}registerCommandDefinition(n){if(typeof n!="object"||n===null)throw j("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof n.name!="string")throw j("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,"Set command definition.name to a non-empty string command path."));let r=x(n.name);if(r.length===0)throw j("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",n.name,"{ name: string; run: (context) => unknown; }",n,"Ensure command definition.name contains a non-empty command path."));let t=this.resolveCommandDefinitionRunHandler(n,r);if(typeof t!="function"){let o=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; }",t,"Define command definition.run as a function.");throw j(`registerCommand requires a command definition run handler (command="${r}", registration_index=${o.registration_index})`,o)}try{$r(n);let o=et(r,n.action);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:r,action:o}))return;let i=n.description?.trim(),s=n.intent?.trim(),a=le("registerCommand definition.examples",n.examples),l=le("registerCommand definition.failure_hints",n.failure_hints),c=nt(n.arguments);n.flags!==void 0&&(b(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(dn(n.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cn("registerCommand definition.flags",n.flags)})));let d={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:o,examples:a,failure_hints:l,arguments:c,tier:n.tier};i&&(d.description=i),s&&(d.intent=s),this.#n.commands.push(d)}catch(o){let i=$e(o),s=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",n,i),a=j(`registerCommand definition metadata invalid (command="${r}", registration_index=${s.registration_index}): ${i}`,s);this.#c.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${r}`),this.#d.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:r,run:t})}registerCommand(n,r){if(b(this.#e,"commands","registerCommand"),typeof n=="string"){this.registerCommandOverride(n,r);return}this.registerCommandDefinition(n)}registerParser(n,r){if(b(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let t=x(I("registerParser command",n));de("registerParser override",r),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}registerPreflight(n){b(this.#e,"preflight","registerPreflight"),this.allowRegistration("preflight.override","registerPreflight","preflight")&&(de("registerPreflight override",n),this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerService(n,r){b(this.#e,"services","registerService");let t=String(n).trim().toLowerCase();if(!Ji(t))throw new TypeError(`registerService service must be one of: ${De.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:t})&&(de("registerService override",r),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:t,run:r}))}registerRenderer(n,r,t={}){if(b(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof r!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(n).trim().toLowerCase();if(!Xi(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(n)}`);if(t.resultDiscriminator!==void 0&&typeof t.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((t.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return x(s)}))];this.#l.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:r,commands:i,...t.resultDiscriminator?{resultDiscriminator:t.resultDiscriminator}:{}})}registerFlags(n,r){if(b(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let t=x(I("registerFlags targetCommand",n));dn(r);let o=cn("registerFlags flags",r);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:t,flags:o})}registerItemFields(n){if(b(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;rs(n);let r=fn("registerItemFields fields",n);if(r.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#n.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:r})}registerItemTypes(n){if(b(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;is(n);let r=fn("registerItemTypes types",n);if(r.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#n.item_types.push({layer:this.#e.layer,name:this.#e.name,types:r})}registerRelationshipKinds(n){if(b(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(n))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(n.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let r=Le();for(let o of this.#n.relationship_kinds)for(let i of o.definitions)r.register(i);let t=n.map(o=>(r.register(o),r.require(o.kind)));this.#n.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:t})}registerMigration(n){if(b(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;ss(n);let r=ln("registerMigration definition",n);this.#n.migrations.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerMigration definition",n)},r))}registerProfile(n){if(b(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let r=Ae(n);ls(r),this.#n.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:cs(r)})}applyImportExportCommandMetadata(n,r,t){if(t!==void 0&&(typeof t!="object"||t===null||Array.isArray(t)))throw new TypeError(`${n} options must be an object when provided`);let o=`${n==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...t,description:t?.description??o,arguments:t?.arguments??i};S(`${n} options.action`,s.action),S(`${n} options.description`,s.description),S(`${n} options.intent`,s.intent);let a=et(r,s.action),l=le(`${n} options.examples`,s.examples),c=le(`${n} options.failure_hints`,s.failure_hints),d=nt(s.arguments);s.flags!==void 0&&(b(this.#e,"schema",`${n} options.flags`),this.allowRegistration("schema.flags",`${n} options.flags`,"schema")&&(dn(s.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cn(`${n} options.flags`,s.flags)})));let u={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:a,examples:l,failure_hints:c,arguments:d},m=s.description?.trim();m&&(u.description=m);let f=s.intent?.trim();f&&(u.intent=f),this.#n.commands.push(u)}registerImporter(n,r,t){if(b(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=Zr(I("registerImporter name",n));de("registerImporter importer",r);let i=Qr(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,t),this.#n.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"import",command:s.command,args:E(s.args),options:E(s.options),global:E(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerExporter(n,r,t){if(b(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=Zr(I("registerExporter name",n));de("registerExporter exporter",r);let i=Qr(o,"export");this.applyImportExportCommandMetadata("registerExporter",i,t),this.#n.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"export",command:s.command,args:E(s.args),options:E(s.options),global:E(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerSearchProvider(n){if(b(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let r=ln("registerSearchProvider provider",n);this.#n.search_providers.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerSearchProvider provider",n)},r))}registerVectorStoreAdapter(n){if(b(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let r=ln("registerVectorStoreAdapter adapter",n);this.#n.vector_store_adapters.push(un({layer:this.#e.layer,name:this.#e.name,definition:Te("registerVectorStoreAdapter adapter",n)},r))}registerBeforeCommand(n){b(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(Z("beforeCommand",n),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerBeforeMutation(n){b(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(Z("beforeMutation",n),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerAfterCommand(n){b(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(Z("afterCommand",n),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnWrite(n){b(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(Z("onWrite",n),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnRead(n){b(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(Z("onRead",n),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnIndex(n){b(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(Z("onIndex",n),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:n}))}};function ms(e,n,r,t,o,i,s,a,l,c,d){return new mn(e,n,r,t,o,i,s,a,l,c,d)}function ps(e){let n=e.commands.length,r=e.flags.reduce((s,a)=>s+a.flags.length,0),t=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:n,flags:r,item_fields:t,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length}}function gs(e){let n=[],r=(i,s)=>{let a=new Map;for(let l of i){let c=a.get(l.command)??[];c.push(l),a.set(l.command,c)}for(let l of[...a.keys()].sort((c,d)=>c.localeCompare(d))){let c=a.get(l);if(c.length<=1)continue;let d=c[c.length-1];for(let u of c.slice(0,-1))n.push(`${s}:${l}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};r(e.handlers,"extension_command_handler_collision"),r(e.overrides,"extension_command_override_collision");let t=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>t.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(l=>l.command===i),a=e.overrides.filter(l=>l.command===i);for(let l of a)for(let c of s)n.push(`extension_command_override_handler_overlap:${i}:${l.layer}:${l.name}:${c.layer}:${c.name}`)}return n}function hs(e){let n=new Map;for(let t of e.overrides){let o=n.get(t.format)??[];o.push(t),n.set(t.format,o)}let r=[];for(let t of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))i.commands?.length&&s.commands?.length&&!s.commands.some(a=>i.commands?.includes(a))||r.push(`extension_renderer_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return r}function ys(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.command)??[];o.push(t),r.set(t.command,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_parser_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}function _s(e){if(e.overrides.length<=1)return[];let n=e.overrides[e.overrides.length-1];return e.overrides.slice(0,-1).map(r=>`extension_preflight_override_collision:${n.layer}:${n.name}:${r.layer}:${r.name}`)}var bs=new Set(["output_format"]);function ws(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.service)??[];o.push(t),r.set(t.service,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1||bs.has(t))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_service_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}async function uc(e){let n=Mr(e.policy??wi),r=Xe(),t=Je(),o=Ze(),i=Qe(),s=en(),a=nn(),l=rn(),c=[],d=[];for(let f of e.loaded){let h=it(f.module);if(!h)continue;let p=c.length,g=Ir({hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l});try{await h.activate(ms(f,r,t,o,i,s,a,l,d,c,n)),c.length>p&&(g(),d.push(`extension_activation_rolled_back:${f.layer}:${f.name}`))}catch($){g(),d.push(`extension_activate_failed:${f.layer}:${f.name}`);let Q=Zi($);c.push({layer:f.layer,name:f.name,entry_path:f.entry_path,error:$e($),trace:Q})}}let u=[...gs(t),...ys(o),..._s(i),...ws(s),...hs(a)],m=[...new Set([...d,...u])];return{hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l,failed:c,warnings:m,hook_counts:{before_command:r.beforeCommand.length,before_mutation:r.beforeMutation.length,after_command:r.afterCommand.length,on_write:r.onWrite.length,on_read:r.onRead.length,on_index:r.onIndex.length},command_override_count:t.overrides.length,command_handler_count:t.handlers.length,parser_override_count:o.overrides.length,preflight_override_count:i.overrides.length,service_override_count:s.overrides.length,renderer_override_count:a.overrides.length,registration_counts:ps(l)}}import lt from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="febba42b-dfd0-549a-a6d9-c30edb321d9d")}catch{}})();var P=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),ut=Rn,hn=$n,vs=["create","update"],Es=new Set(Tn),ks=new Set(me),xs=new Set(In),Cs=new Set(An);function ue(e){let n=Array.isArray(e)?e:[];return[...new Set(n.map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0))].sort((r,t)=>r.localeCompare(t))}function H(e){return typeof e=="string"?e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_"):""}function R(e){if(typeof e!="string"||e.length===0)return;let n=H(e);return n.length>0?n:void 0}function Ss(e){return e.startsWith("--")?e.slice(2):e}function ct(e){return typeof e=="string"?Ss(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function ft(e){return e.replaceAll("_","-")}function Ts(e){let n=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(n.length===0)return e;let[r,...t]=n;return`${r}${t.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function gn(e,n){let r=R(e.id);if(!r)return null;let t=[...new Set(ue(e.aliases).map(H).filter(a=>a.length>0))].sort((a,l)=>a.localeCompare(l)),o=ue(e.roles).filter(a=>Es.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:n;return{id:r,aliases:t,roles:o,description:i&&i.length>0?i:void 0,order:s}}function Is(e){return{draft_status:R(e?.draft_status),open_status:R(e?.open_status),in_progress_status:R(e?.in_progress_status),blocked_status:R(e?.blocked_status),close_status:R(e?.close_status),canceled_status:R(e?.canceled_status)}}function mt(e,n){if(!Array.isArray(n)||n.length!==2)return;let r=H(n[0]),t=H(n[1]);r.length===0||t.length===0||e.pairs.some(o=>o[0]===r&&o[1]===t)||e.pairs.push([r,t])}function As(e){let n=typeof e?.type=="string"?e.type.trim():"";if(n.length===0||!Array.isArray(e?.allowed_transitions))return null;let r={type:n,pairs:[],denyAll:e.allowed_transitions.length===0};for(let t of e.allowed_transitions)mt(r,t);return{typeKey:n.toLowerCase(),record:r}}function $s(e){if(!Array.isArray(e)||e.length===0)return;let n=new Map;for(let t of e){let o=As(t);if(o===null)continue;let i=n.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)mt(i,s);n.set(o.typeKey,i)}let r=[];for(let t of n.values())(t.pairs.length>0||t.denyAll)&&r.push({type:t.type,allowed_transitions:t.pairs});return r.sort((t,o)=>t.type.localeCompare(o.type)),r.length>0?r:void 0}function pt(e){let n=H(e.key??"");if(!n)return null;let r=H(e.metadata_key??e.front_matter_key??n),t=ct(e.cli_flag??ft(n));if(!t)return null;let o=ue(e.cli_aliases).map(d=>ct(d)).filter(d=>d.length>0&&d!==t),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=ks.has(i)?i:"string",a=(()=>{let d=ue(e.commands).filter(u=>xs.has(u));return d.length>0?d:[...vs]})(),l=e.description?.trim(),c=ue(e.required_types);return{key:n,metadata_key:r,cli_flag:t,cli_aliases:o,description:l&&l.length>0?l:void 0,type:s,commands:a,repeatable:e.repeatable===!0||s==="string_array",required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:c,allow_unset:e.allow_unset!==!1}}function Rs(e){let n=new Map;for(let[t,o]of e.entries()){let i=gn(o,t);i&&n.set(i.id,i)}let r=dt([...n.values()]);return r.length>0?r:dt(hn.map((t,o)=>gn(t,o)).filter(t=>t!==null))}function dt(e){return e.sort((n,r)=>n.order===r.order?n.id.localeCompare(r.id):n.order-r.order)}function Ps(e){let n=new Map;for(let r of e??[]){let t=pt(r);t&&n.set(t.key,t)}return[...n.values()].sort((r,t)=>r.key.localeCompare(t.key))}function Os(e){return{id:e.id,aliases:e.aliases.length>0?[...e.aliases]:void 0,roles:e.roles.length>0?[...e.roles]:void 0,description:e.description,order:e.order}}function Ds(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==ft(e.key)?e.cli_flag:void 0,cli_aliases:e.cli_aliases.length>0?[...e.cli_aliases]:void 0,description:e.description,type:e.type,commands:[...e.commands],repeatable:e.repeatable===!0?!0:void 0,required:e.required===!0?!0:void 0,required_on_create:e.required_on_create===!0?!0:void 0,required_types:e.required_types.length>0?[...e.required_types]:void 0,allow_unset:e.allow_unset===!1?!1:void 0}}function Fs(e){let n=typeof e=="string"?e.trim().toLowerCase():"allow";return Cs.has(n)?n:"allow"}function fe(e){let n={...P,...e?.files},r=e?.statuses&&e.statuses.length>0?e.statuses:hn,t=Rs(r),o=Ps(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:n,statuses:t.map(Os),fields:o.map(Ds),workflow:{...ut,...Is(e?.workflow)},type_workflows:$s(e?.type_workflows),unknown_field_policy:Fs(e?.unknown_field_policy)}}function Ns(e){return`${JSON.stringify(e,null,2)}
3
3
  `}function Ms(){return{definitions:[]}}function zs(){return{statuses:hn}}function js(){return{fields:[]}}function Ls(){return{workflow:ut}}function qs(e,n,r){try{return JSON.parse(e)}catch{r.push(n);return}}function Vs(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.definitions))return n.definitions;if(typeof n.item_types=="object"&&n.item_types!==null){let r=n.item_types;if(Array.isArray(r.definitions))return r.definitions}}function Us(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.statuses))return n.statuses;if(Array.isArray(n.definitions))return n.definitions}function Ws(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.fields))return n.fields;if(Array.isArray(n.definitions))return n.definitions}function Ks(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let n=e;return typeof n.workflow=="object"&&n.workflow!==null&&!Array.isArray(n.workflow)?n.workflow:typeof n.workflows=="object"&&n.workflows!==null&&!Array.isArray(n.workflows)?n.workflows:n}function Bs(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let n=e;if(Array.isArray(n.type_workflows))return n.type_workflows}function D(e,n,r){let t=n?.trim()||r;return lt.isAbsolute(t)?t:lt.join(e,t)}function vc(e,n){return D(e,n.files.types,P.types)}async function Ec(e,n){let r=fe(n),t=[{path:D(e,r.files.types,P.types),seed:Ms()},{path:D(e,r.files.statuses,P.statuses),seed:zs()},{path:D(e,r.files.fields,P.fields),seed:js()},{path:D(e,r.files.workflows,P.workflows),seed:Ls()}],o=[];for(let i of t)await ie(i.path)||(await rr(i.path,Ns(i.seed)),o.push(i.path));return{created_paths:o}}async function kc(e,n){let r=fe(n),t=[],o=D(e,r.files.types,P.types),i=D(e,r.files.statuses,P.statuses),s=D(e,r.files.fields,P.fields),a=D(e,r.files.workflows,P.workflows),l,c,d,u,m,f=async(Re,Pe)=>{let yn=await nr(Re);if(yn!==null)return qs(yn,Pe,t)},h=await f(o,"runtime_schema_types_invalid_json");h!==void 0&&(l=Vs(h),l===void 0&&t.push("runtime_schema_types_invalid_shape"));let p=await f(i,"runtime_schema_statuses_invalid_json");p!==void 0&&(c=Us(p),c===void 0&&t.push("runtime_schema_statuses_invalid_shape"));let g=await f(s,"runtime_schema_fields_invalid_json");g!==void 0&&(d=Ws(g),d===void 0&&t.push("runtime_schema_fields_invalid_shape"));let $=await f(a,"runtime_schema_workflows_invalid_json");return $!==void 0&&(u=Ks($),u===void 0&&t.push("runtime_schema_workflows_invalid_shape"),m=Bs($)),{schema:fe({...r,statuses:[...r.statuses,...c??[]],fields:[...r.fields,...d??[]],workflow:{...r.workflow,...u},type_workflows:[...r.type_workflows??[],...m??[]]}),type_definitions_from_file:l,warnings:t,created_paths:[]}}function pn(e,n,r){let t=e.filter(i=>i.roles.includes(n));if(t.length>0)return t[0].id;let o=r.map(i=>R(i)).filter(i=>typeof i=="string");for(let i of o)if(e.some(s=>s.id===i))return i;return e[0]?.id}function xc(e){let n=fe(e),r=n.statuses.map((p,g)=>gn(p,g)).filter(p=>p!==null),t=new Map,o=new Map;for(let p of r){o.set(p.id,p),t.set(p.id,p.id),t.set(p.id.replaceAll("_","-"),p.id),t.set(p.id.replaceAll("_"," "),p.id);for(let g of p.aliases)t.set(g,p.id),t.set(g.replaceAll("_","-"),p.id),t.set(g.replaceAll("_"," "),p.id)}let i=new Set,s=new Set,a=new Set,l=new Set,c=new Set,d=new Set;for(let p of r){let g=new Set(p.roles);(g.has("terminal")||g.has("terminal_done")||g.has("terminal_canceled"))&&i.add(p.id),g.has("terminal_done")&&s.add(p.id),g.has("terminal_canceled")&&a.add(p.id),g.has("active")&&l.add(p.id),g.has("blocked")&&c.add(p.id),g.has("draft")&&d.add(p.id)}let u=n.workflow,m=R(u.open_status)??pn(r,"default_open",["open","in_progress",Sn[0]]),f=R(u.close_status)??pn(r,"default_close",["closed","done","complete"]),h=R(u.canceled_status)??pn(r,"default_cancel",["canceled","cancelled"]);return{definitions:r,by_id:o,alias_to_id:t,terminal_statuses:i,terminal_done_statuses:s,terminal_canceled_statuses:a,active_statuses:l,blocked_statuses:c,draft_statuses:d,open_status:m,close_status:f,canceled_status:h}}function Hs(e,n){let r=H(e);if(r)return n.alias_to_id.get(r)}function Cc(e){let n=fe(e),r=new Map,t=n.fields.map(l=>pt(l)).filter(l=>l!==null);for(let l of t)r.set(l.key,l);let o=[...r.values()].sort((l,c)=>l.key.localeCompare(c.key)),i=new Map,s=new Map,a=new Map;for(let l of o){i.set(l.key,l),s.set(l.cli_flag,l);for(let c of l.cli_aliases)s.set(c,l);for(let c of l.commands){let d=a.get(c)??[];d.push(l),a.set(c,d)}}for(let[l,c]of a.entries())c.sort((d,u)=>d.key.localeCompare(u.key)),a.set(l,c);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function Sc(e){return Ts(e.key)}function Tc(e,n){let r=Hs(e,n);return r?n.terminal_statuses.has(r):!1}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b2649352-0afa-5972-8c48-b999f86d5522")}catch{}})();function Ac(e){let n=Math.ceil(e.size/2);for(let r of e.keys()){if(n===0)return;e.delete(r),n-=1}}export{he as a,qn as b,Ve as c,zt as d,jt as e,x as f,be as g,na as h,ra as i,ta as j,Yn as k,Xn as l,Zn as m,Qn as n,er as o,ie as p,nr as q,rr as r,Ca as s,Sa as t,Ke as u,Be as v,Oa as w,sr as x,lr as y,mr as z,La as A,Ye as B,mo as C,qa as D,To as E,Io as F,Va as G,Ua as H,Ja as I,Za as J,Qa as K,gr as L,pr as M,el as N,nl as O,rl as P,tl as Q,ol as R,Wo as S,sl as T,al as U,ll as V,cl as W,yr as X,dl as Y,ul as Z,fl as _,je as $,Le as aa,ia as ba,At as ca,zn as da,sa as ea,Xe as fa,Je as ga,Ze as ha,Qe as ia,en as ja,nn as ka,rn as la,qe as ma,da as na,Go as oa,Yo as pa,Xo as qa,Jo as ra,ei as sa,ri as ta,ti as ua,vi as va,$i as wa,Pi as xa,Oi as ya,qi as za,cc as Aa,dc as Ba,uc as Ca,P as Da,hn as Ea,fe as Fa,D as Ga,vc as Ha,Ec as Ia,kc as Ja,xc as Ka,Hs as La,Cc as Ma,Sc as Na,Tc as Oa,Ac as Pa,ha as Qa,Ue as Ra,ya as Sa,_a as Ta};
4
- //# sourceMappingURL=chunk-QM2BIVK7.js.map
4
+ //# sourceMappingURL=chunk-BIMTMOS7.js.map