@unbrained/pm-cli 2026.10.30 → 2026.10.31
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.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +32 -0
- package/dist/cli/commander-usage.js +2 -2
- package/dist/cli/error-guidance.d.ts +45 -5
- package/dist/cli/error-guidance.js +5 -3
- package/dist/cli/extension-command-help.d.ts +1 -0
- package/dist/cli/extension-command-help.js +2 -2
- package/dist/cli/main.d.ts +1 -5
- package/dist/cli/main.js +5 -5
- package/dist/cli/migration-gates.d.ts +1 -1
- package/dist/cli/migration-gates.js +1 -1
- package/dist/cli/preflight-warnings.d.ts +11 -0
- package/dist/cli/preflight-warnings.js +4 -0
- package/dist/cli/register-mutation.js +2 -2
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/chunk-24J6TNYE.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-EHBGHX55.js → chunk-2AHSPMKJ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MVL27TAH.js → chunk-35Q2B2GJ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-43R7UTWV.js +2 -0
- package/dist/cli-bundle/chunks/chunk-6PSDQ7T7.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-UUQX3PFD.js → chunk-BS2KXT24.js} +70 -70
- package/dist/cli-bundle/chunks/{chunk-Y6NC3X3E.js → chunk-GMBDZID5.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-HSBTITO4.js +3 -0
- package/dist/cli-bundle/chunks/{chunk-LWW4F4G2.js → chunk-MRUA2Z43.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-P3LNMWL2.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-S2U7ECUJ.js → chunk-PT7TS6E7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TH5KPAN4.js → chunk-SBVX5CMV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-4BQD5SW2.js → chunk-TL3O5GZA.js} +30 -30
- package/dist/cli-bundle/chunks/chunk-U7JXZMU5.js +6 -0
- package/dist/cli-bundle/chunks/{chunk-GRABKNFL.js → chunk-V6EWBTNH.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-VC7TA67O.js +20 -0
- package/dist/cli-bundle/chunks/chunk-WNF6FOL7.js +31 -0
- package/dist/cli-bundle/chunks/chunk-WRXQAW7Q.js +114 -0
- package/dist/cli-bundle/chunks/{chunk-RZQNFHXO.js → chunk-WX25MU4N.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-XDDPSWIW.js +2 -0
- package/dist/cli-bundle/chunks/chunk-YT5D5HNG.js +2 -0
- package/dist/cli-bundle/chunks/chunk-ZTJVOBDU.js +128 -0
- package/dist/cli-bundle/chunks/{indexed-receipt-blobs-LHLE7PSG.js → indexed-receipt-blobs-KGMJVFH2.js} +2 -2
- package/dist/cli-bundle/chunks/item-transaction-UWV6UNSV.js +2 -0
- package/dist/cli-bundle/chunks/{mutation-admission-TRGAVS7N.js → mutation-admission-I4RHIT3Q.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-BH4F6M7Z.js → register-list-query-MVDL5EXG.js} +3 -3
- package/dist/cli-bundle/chunks/register-mutation-GAF7LXRB.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-JLFRL36Q.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-QPWSVHFZ.js → register-setup-MZN6ONB3.js} +2 -2
- package/dist/cli-bundle/chunks/{settlement-hook-MN3Y7LVX.js → settlement-hook-YWSWFOZY.js} +2 -2
- package/dist/cli-bundle/chunks/{stage-RTB6RAAO.js → stage-2ZORTOF6.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-S23ZUASN.js → chunk-2J7T2UCH.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-4QPGJO2G.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YU7QOYYV.js → chunk-57HPXGOQ.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-5MCGYBOQ.js +91 -0
- package/dist/cli-bundle/focused-chunks/chunk-6F6APBCX.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-AFVN2KCP.js +44 -0
- package/dist/cli-bundle/focused-chunks/{chunk-RKPUQDWF.js → chunk-DFUTCKUF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-EA65HVBO.js +12 -0
- package/dist/cli-bundle/focused-chunks/chunk-GP2WU43K.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YQUZL2CK.js → chunk-HPWT3RBG.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-HSAEEWSI.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-BPE6JTKL.js → chunk-JLXGRDTG.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-FRFNGMAK.js → chunk-JNKRUCVZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-BCIUAEWX.js → chunk-KH5QJXY7.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KKRIFBSL.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-RGQEJFXO.js → chunk-MW77Q3AQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-NOKG4RFN.js +22 -0
- package/dist/cli-bundle/focused-chunks/{chunk-POJPJX64.js → chunk-NRBUMDLF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-3SRX77ES.js → chunk-PC3R5CJV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-RYEZSZJ7.js → chunk-PFBQOZPK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-SAT7IAEB.js → chunk-QFMJGQGO.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-VFWCSQAG.js → chunk-SFQKCA5K.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-WHIE2C6Q.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-Y6UYRMVG.js +6 -0
- package/dist/cli-bundle/focused-chunks/{indexed-receipt-blobs-VK2363JB.js → indexed-receipt-blobs-KHWT44EK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/item-transaction-LU75EG7D.js +2 -0
- package/dist/cli-bundle/focused-chunks/{mutation-admission-7VUODEPJ.js → mutation-admission-KDJ7SCPA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{settlement-hook-OK6A7PG2.js → settlement-hook-SJV52ZTV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{stage-S5RP5SZH.js → stage-R4KEBO37.js} +2 -2
- package/dist/cli-bundle/main.js +26 -22
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +4 -4
- package/dist/cli-bundle/sdk-core.js +1 -1
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +57 -57
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +11 -11
- package/dist/core/config/nested-settings.js +1 -1
- package/dist/core/extensions/extension-hook-runtime.js +1 -1
- package/dist/core/extensions/extension-types.d.ts +4 -0
- package/dist/core/extensions/extension-types.js +1 -1
- package/dist/core/extensions/loader.js +1 -1
- package/dist/core/lock/lock.js +4 -4
- package/dist/core/output/output.js +2 -2
- package/dist/core/schema/fields-file.js +1 -1
- package/dist/core/sentry/helpers.d.ts +6 -0
- package/dist/core/sentry/helpers.js +1 -1
- package/dist/core/sentry/instrument.d.ts +1 -1
- package/dist/core/sentry/instrument.js +1 -1
- package/dist/core/shared/constants.js +1 -1
- package/dist/core/shared/errors.d.ts +6 -0
- package/dist/core/shared/errors.js +1 -1
- package/dist/core/shared/output-unicode.d.ts +10 -0
- package/dist/core/shared/output-unicode.js +2 -0
- package/dist/core/store/settings-validator.d.ts +1 -0
- package/dist/core/store/settings-validator.js +1 -1
- package/dist/core/store/settings.js +1 -1
- package/dist/core/telemetry/policy.d.ts +8 -0
- package/dist/core/telemetry/policy.js +1 -1
- package/dist/core/telemetry/runtime.js +3 -3
- package/dist/sdk/agent/command-recovery.d.ts +15 -0
- package/dist/sdk/agent/command-recovery.js +1 -1
- package/dist/sdk/cli-bootstrap.js +1 -1
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +28 -0
- package/dist/sdk/cli-contracts/agent-output-contracts.js +2 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +1 -1
- package/dist/sdk/completion/fish.js +4 -4
- package/dist/sdk/completion/zsh.js +3 -3
- package/dist/sdk/config.d.ts +1 -0
- package/dist/sdk/config.js +1 -1
- package/dist/sdk/core.d.ts +1 -0
- package/dist/sdk/core.js +1 -1
- package/dist/sdk/error-runtime.d.ts +9 -0
- package/dist/sdk/error-runtime.js +1 -1
- package/dist/sdk/errors.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
- package/dist/sdk/index.d.ts +2 -2
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/lifecycle/claim.js +1 -1
- package/dist/sdk/lifecycle/close.js +1 -1
- package/dist/sdk/lifecycle/create.js +1 -1
- package/dist/sdk/lifecycle/plan.d.ts +2 -3
- package/dist/sdk/lifecycle/plan.js +1 -1
- package/dist/sdk/lifecycle/repeated-terminal-state.d.ts +45 -0
- package/dist/sdk/lifecycle/repeated-terminal-state.js +2 -0
- package/dist/sdk/lifecycle/shared-unset-fields.d.ts +9 -0
- package/dist/sdk/lifecycle/shared-unset-fields.js +1 -1
- package/dist/sdk/lifecycle/update-many.d.ts +0 -1
- package/dist/sdk/lifecycle/update-many.js +1 -1
- package/dist/sdk/lifecycle/update.d.ts +29 -1
- package/dist/sdk/lifecycle/update.js +2 -2
- package/dist/sdk/output/table-rows.d.ts +7 -1
- package/dist/sdk/output/table-rows.js +1 -1
- package/dist/sdk/output.d.ts +1 -0
- package/dist/sdk/output.js +2 -2
- package/dist/sdk/ownership-source.d.ts +18 -0
- package/dist/sdk/ownership-source.js +1 -1
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/get.d.ts +1 -1
- package/dist/sdk/query/get.js +1 -1
- package/dist/sdk/query/next-ranking-policy.d.ts +35 -0
- package/dist/sdk/query/next-ranking-policy.js +2 -0
- package/dist/sdk/query/next.d.ts +12 -2
- package/dist/sdk/query/next.js +2 -2
- package/dist/sdk/query/projection-contracts.d.ts +4 -0
- package/dist/sdk/query/projection-contracts.js +1 -1
- package/dist/sdk/read-output/surfaces.d.ts +27 -0
- package/dist/sdk/read-output/surfaces.js +2 -0
- package/dist/sdk/read-output-contracts.js +1 -1
- package/dist/sdk/runtime-primitives.d.ts +1 -0
- package/dist/sdk/runtime-primitives.js +1 -1
- package/dist/sdk/runtime.js +1 -1
- package/dist/sdk/test/execution-receipts.d.ts +25 -0
- package/dist/sdk/test/execution-receipts.js +2 -2
- package/dist/sdk/test/execution.d.ts +5 -0
- package/dist/sdk/test/execution.js +2 -2
- package/dist/types.d.ts +2 -0
- package/dist/types.js +1 -1
- package/docs/AGENT_GUIDE.md +1 -1
- package/docs/AGENT_OUTPUT_ENCODINGS.md +12 -0
- package/docs/AGENT_UX_CONTRACTS.md +2 -1
- package/docs/COMMANDS.md +58 -5
- package/docs/CONFIGURATION.md +48 -1
- package/docs/DEVELOPMENT_DEPENDENCY_SECURITY.md +26 -0
- package/docs/PACKED_FIRST_RUN.md +2 -1
- package/docs/READ_OUTPUT_CONTRACTS.md +24 -6
- package/docs/SDK.md +73 -2
- package/docs/TESTING.md +38 -2
- package/docs/agent-task-token-baseline.json +1 -1
- package/marketplace.json +1 -1
- package/package.json +1 -1
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/extensions/calendar/index.ts +1 -0
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/package.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/package.json +1 -1
- package/plugins/pm-codex/plugin.json +1 -1
- package/runtime-dependencies.json +1 -1
- package/dist/cli-bundle/chunks/chunk-34MP7WKK.js +0 -6
- package/dist/cli-bundle/chunks/chunk-3KMYHYJV.js +0 -2
- package/dist/cli-bundle/chunks/chunk-42BHHNTL.js +0 -128
- package/dist/cli-bundle/chunks/chunk-I5O3XZOA.js +0 -2
- package/dist/cli-bundle/chunks/chunk-LEIVUGDH.js +0 -8
- package/dist/cli-bundle/chunks/chunk-OH7WPD42.js +0 -114
- package/dist/cli-bundle/chunks/chunk-OOD2A7AF.js +0 -20
- package/dist/cli-bundle/chunks/chunk-Q5V7P6NM.js +0 -2
- package/dist/cli-bundle/chunks/chunk-QLPFYBXN.js +0 -2
- package/dist/cli-bundle/chunks/chunk-SA5NYLPE.js +0 -8
- package/dist/cli-bundle/chunks/chunk-VHLAVTJN.js +0 -31
- package/dist/cli-bundle/chunks/chunk-XAOVJG52.js +0 -3
- package/dist/cli-bundle/chunks/chunk-XPQ4RTSF.js +0 -2
- package/dist/cli-bundle/chunks/item-transaction-WIOBZW4E.js +0 -2
- package/dist/cli-bundle/chunks/register-mutation-5V2NANIS.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-XSFRMUFX.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2V6NMNYN.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-ASHGXMX4.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-CKBN2D42.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-I642DXOT.js +0 -22
- package/dist/cli-bundle/focused-chunks/chunk-K7DKG5HM.js +0 -91
- package/dist/cli-bundle/focused-chunks/chunk-NMQBXU7N.js +0 -44
- package/dist/cli-bundle/focused-chunks/chunk-PGM3ENGZ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-QFNV4JTA.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-QVJCQMZY.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-R2TPPPVU.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-VJVJ2ZX2.js +0 -2
- package/dist/cli-bundle/focused-chunks/item-transaction-ZFDKJIP7.js +0 -2
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import{A as h,C as g,E as ut,F as we,G as de,H as Oe,I as hd,J as Ki,K as ft,L as gd,a as Ne,b as Gi,c as ud,e as Mr,f as $r,g as jr,h as fd,i as Lr,j as Wt,k as md,m as Ee,n as pd,o as _d,p as Fr,q as zr,u as Nn,v as yd,y as S,z as Dn}from"./chunk-WX25MU4N.js";import ny from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="77f9d61e-e78b-5b6a-a769-1ad6e5b91777")}catch{}})();function ry(e){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return e.toString();if(e===void 0)return"undefined";if(typeof e=="symbol")return e.toString();if(typeof e=="function")return`[function:${e.name||"anonymous"}]`}function oy(e){let t=Object.keys(e).sort(),n={};for(let r of t){let o=e[r];o!==void 0&&(n[r]=Ur(o))}return n}function Ur(e){let t=ry(e);if(t!==void 0)return t;if(Array.isArray(e))return e.map(r=>Ur(r));if(e instanceof Date)return e.toISOString();let n=e;if(typeof n.toJSON=="function"){let r=n.toJSON();if(r!==e)return Ur(r)}return oy(e)}function x(e){return JSON.stringify(Ur(e))}function bd(e,t,n,r){for(let o=0;o<t.length;o+=1)if(!n.has(o)&&r(e,t[o]))return n.add(o),!0;return!1}function iy(e,t){if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.toString()===t.toString()}function sy(e,t){if(e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime()}function ay(e,t){if(!(e instanceof Set||t instanceof Set))return;if(!(e instanceof Set&&t instanceof Set)||e.size!==t.size)return!1;let n=[...t],r=new Set;for(let o of e)if(!bd(o,n,r,W))return!1;return!0}function cy(e,t){if(!(e instanceof Map||t instanceof Map))return;if(!(e instanceof Map&&t instanceof Map)||e.size!==t.size)return!1;let n=[...t.entries()],r=new Set;for(let[o,i]of e.entries())if(!bd([o,i],n,r,([s,a],[c,d])=>W(s,c)&&W(a,d)))return!1;return!0}function dy(e,t){if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((n,r)=>W(n,t[r]))}function ly(e,t){let n=Object.keys(e).sort((o,i)=>o.localeCompare(i)),r=Object.keys(t).sort((o,i)=>o.localeCompare(i));if(n.length!==r.length)return!1;for(let o=0;o<n.length;o+=1){let i=n[o];if(i!==r[o]||!W(e[i],t[i]))return!1}return!0}var uy=[iy,sy,ay,cy,dy];function W(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||typeof e!="object"||typeof t!="object")return!1;for(let n of uy){let r=n(e,t);if(r!==void 0)return r}return ly(e,t)}function Hr(e){return ny.createHash("sha256").update(e,"utf8").digest("hex")}function A(e,t){let n={};for(let o of t){let i=e[o];i!==void 0&&(n[o]=i)}let r=Object.keys(e).filter(o=>!t.includes(o)).sort((o,i)=>o.localeCompare(i));for(let o of r){let i=e[o];i!==void 0&&(n[o]=i)}return n}import{createHash as vd}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f675993f-c483-5751-baed-d968b4fd24c0")}catch{}})();var fy=["policies","policy-put","policy-remove","policy-mode","policy-check","policy-approve","policy-presets"],wd=256,Yi=64;function le(e){throw new g(`Invalid workflow policy: ${e}`,h.USAGE,{code:"workflow_policy_invalid",nextSteps:["Inspect pm schema policies and correct the declaration using pm schema policy-put."]})}function De(e,t,n){if(typeof e!="object"||e===null||Array.isArray(e))return le(`${n} must be an object`);let r=e;return Object.keys(r).some(o=>!t.includes(o))?le(`${n} contains an unknown key`):r}function mt(e,t,n=128){return typeof e!="string"||!e.trim()||e.length>n?le(`${t} must be nonempty text of at most ${n} characters`):e.trim()}function Pn(e,t){if(!Array.isArray(e)||e.length===0||e.length>Yi)return le(`${t} requires 1-${Yi} terms`);let n=e.map(r=>mt(r,t));return t==="fields"&&n.some(r=>!/^[a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*){0,7}$/.test(r)||r.split(".").some(o=>["__proto__","constructor","prototype"].includes(o)))?le("fields must be safe metadata paths of at most eight segments"):[...new Set(n)]}function my(e){let t=De(e,["kind","fields","authors","allowed"],"rule");return t.kind==="transition"?(De(t,["kind","allowed"],"transition rule"),!Array.isArray(t.allowed)||t.allowed.length>Yi?le("transition.allowed must be a bounded array"):{kind:"transition",allowed:t.allowed.map(n=>!Array.isArray(n)||n.length!==2?le("transition pairs need two statuses"):[mt(n[0],"from"),mt(n[1],"to")])}):t.kind==="authors"?(De(t,["kind","authors"],"authors rule"),{kind:"authors",authors:Pn(t.authors,"authors")}):t.kind==="require_fields"?(De(t,["kind","fields"],"require_fields rule"),{kind:"require_fields",fields:Pn(t.fields,"fields")}):t.kind==="field_writers"||t.kind==="approval"?(De(t,["kind","fields","authors"],"field rule"),{kind:t.kind,fields:Pn(t.fields,"fields"),authors:Pn(t.authors,"authors")}):le("unknown rule kind")}function py(e){let t={},n=De(e,["types","tags","statuses","operations","parents","dependency"],"subject");for(let r of["types","tags","statuses","operations","parents"])n[r]!==void 0&&(t[r]=Pn(n[r],r));if(n.dependency!==void 0){let r=De(n.dependency,["kind","id"],"dependency");t.dependency={kind:mt(r.kind,"dependency kind"),...r.id===void 0?{}:{id:mt(r.id,"dependency id")}}}return t}function _y(e){let t=De(e,["id","description","subject","effect","rule"],"policy"),n=mt(t.id,"id");return/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(n)?t.effect!==void 0&&(typeof t.effect!="string"||!["advise","warn","refuse"].includes(t.effect))?le("effect must be advise, warn, or refuse"):{id:n,rule:my(t.rule),...t.subject===void 0?{}:{subject:py(t.subject)},...t.description===void 0?{}:{description:mt(t.description,"description",500)},...t.effect===void 0?{}:{effect:t.effect}}:le("id must be a stable token")}function yy(e){let t=De(e,["version","enforcement","policies"],"document");if(t.version!==1)return le("unsupported version");if(t.enforcement!==void 0&&t.enforcement!=="advise"&&t.enforcement!=="refuse")return le("enforcement must be advise or refuse");if(!Array.isArray(t.policies)||t.policies.length>wd)return le(`policies must contain at most ${wd} declarations`);let n=t.policies.map(_y);return new Set(n.map(r=>r.id)).size!==n.length?le("duplicate policy id"):{version:1,enforcement:t.enforcement??"advise",policies:n}}function qr(e,t){let n=e;for(let r of t.split(".")){if(typeof n!="object"||n===null||!Object.hasOwn(n,r))return;n=n[r]}return n}function hy(e){return e==null?!1:typeof e=="string"?e.trim().length>0:typeof e=="number"?Number.isFinite(e):Array.isArray(e)?e.length>0:typeof e=="object"?Object.keys(e).length>0:!0}function Ed(e){return vd("sha256").update(x(e)).digest("hex")}function gy(e,t){let n=e.rule.kind==="approval"?e.rule.fields:[];return vd("sha256").update(x({id:t.id,fields:n.map(r=>[r,qr(t,r)])})).digest("hex")}function by(e,t){return Array.isArray(t)&&t.some(n=>typeof n=="object"&&n!==null&&"kind"in n&&n.kind===e.kind&&(e.id===void 0||"id"in n&&n.id===e.id))}function wy(e,t,n){return!(e.types&&!e.types.some(r=>r.toLowerCase()===String(t.type).toLowerCase())||e.statuses&&!e.statuses.includes(String(t.status))||e.operations&&!e.operations.includes(n)||e.parents&&!e.parents.includes(String(t.parent))||e.tags&&(!Array.isArray(t.tags)||!e.tags.some(r=>t.tags.includes(r)))||e.dependency&&!by(e.dependency,t.dependencies))}function vy(e,t){if(t.completeness_only&&(e.rule.kind!=="require_fields"||e.subject?.operations!==void 0)||e.rule.kind==="approval"&&t.before===null)return!1;let n=e.subject??{},r=t.after?.status??t.before?.status;return[t.before,t.after].some(o=>o!==null&&wy(n,{...o,status:r},t.operation))}function Ey(e,t,n,r){let o=["type","tags","parent","dependencies"].some(i=>!W(t.before?.[i],t.after?.[i]));return t.after&&(t.completeness_only||n||r||o)?e.filter(i=>!hy(qr(t.after,i))):[]}function ky(e,t,n,r){let o=t.after??t.before,i=gy(e,o);return t.approvals?.some(s=>s.policy_fingerprint===r&&s.content_fingerprint===i&&s.author!==t.author&&n.includes(s.author))??!1}function Sy(e,t,n){let r=e.rule,o=t.before?.status!==t.after?.status,i="fields"in r&&r.fields.some(s=>!W(qr(t.before,s),qr(t.after,s)));switch(r.kind){case"require_fields":{let s=Ey(r.fields,t,o,i);return{satisfied:s.length===0,missing_fields:s,remediation:"Supply the declared required fields before this lifecycle transition."}}case"transition":return{satisfied:!o||r.allowed.some(([s,a])=>s===String(t.before?.status??"$create")&&a===String(t.after?.status??"$delete")),missing_fields:[],remediation:"Choose a declared allowed transition; inspect pm schema policies."};case"authors":return{satisfied:r.authors.includes(t.author),missing_fields:[],remediation:"Have a declared workflow actor perform this operation."};case"field_writers":return{satisfied:!i||r.authors.includes(t.author),missing_fields:[],remediation:"Have a declared field writer change the protected fields."};case"approval":return{satisfied:!o||ky(e,t,r.authors,n),missing_fields:[],remediation:`Record an independent approval with pm schema policy-approve <item-id> --policy ${e.id} after preparing the reviewed fields.`}}}function kd(e,t,n){let r=e.policies.filter(o=>vy(o,t)).map(o=>{let i=o.effect??"advise",s=n(o);return{policy_id:o.id,policy_fingerprint:s,rule:o.rule.kind,effect:i==="refuse"&&e.enforcement!=="refuse"?"warn":i,...Sy(o,t,s)}});return{allowed:!r.some(o=>!o.satisfied&&o.effect==="refuse"),decisions:r,warnings:r.filter(o=>!o.satisfied).map(o=>`workflow_policy:${o.effect}:${o.policy_id}:${o.rule}`)}}function LT(e,t){return kd(e,t,Ed)}function FT(e){let t=yy(e),n=new Map(t.policies.map(r=>[r,Ed(r)]));return r=>kd(t,r,o=>n.get(o))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="451b262c-a9b6-5f1c-b397-2686a5fd953a")}catch{}})();var Oy=[["history-redact","history redact"],["history-repair","history repair"],["history-compact","history compact"],["activity","history activity"],["restore","history restore"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"commander",owner:"pm-tqel"})),Ay=[...["next","focus"].map(e=>({alias:e,canonical:`context ${e}`,owner:"pm-kcs4"})),...["stats","health","validate","gc","telemetry","eval","test-all"].map(e=>({alias:e,canonical:`ops ${e}`,owner:"pm-6apl"})),...["normalize","reindex"].map(e=>({alias:e,canonical:`ops ${e}`,owner:"pm-3i9q8g"})),{alias:"events",canonical:"history events",owner:"pm-3i9q8g"}].map(e=>({...e,canonical_argv:e.canonical.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap"})),Iy=[["update-many","update many"],["close-many","close many"],["delete","close delete"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:"pm-ik19"})),Ty=[...Ay,...Iy,...["init","config","schema","profile"].map(e=>({alias:e,canonical:`workspace ${e}`,canonical_argv:["workspace",e],lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:"pm-npr3"})),...[...["comments","notes","learnings","files","docs","deps","append","test"].map(e=>[e,`item ${e}`,"pm-yql1"]),["test-runs-worker","item test worker","pm-lp4j"],...["statuses","tags","types"].map(e=>[`completion-${e}`,`completion ${e}`,"pm-szdc"]),["history-author-acknowledge","history acknowledge","pm-djyvbk"],["copy","item copy","pm-m6g87m"],["merge","workspace merge","pm-m6g87m"],["duplicates","item duplicates","pm-fmy9ih"],["dedupe-audit","item duplicates audit","pm-fmy9ih"],["dedupe-merge","item duplicates merge","pm-fmy9ih"],["comments-audit","item audit-comments","pm-fmy9ih"],["search-advanced","search advanced","pm-wfskfn"],...["meet","event","remind"].map(e=>[e,`calendar ${e}`,"pm-o3fh"])].map(([e,t,n])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:n}))],Xi=[{alias:"history-attest",canonical:"history attest",canonical_argv:["history","attest"],lifecycle:"permanent",hidden:!0,registration:"commander",owner:"pm-3z0k"},...Oy,...Ty,...["discover","lookup"].map(e=>({alias:`files ${e}`,canonical:`item files ${e}`,canonical_argv:["item","files",e],lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:"pm-yql1"}))];function UT(e){let t;for(let n of Xi)n.canonical_argv.length<=(t?.canonical_argv.length??0)||n.canonical_argv.every((r,o)=>r===(o===0&&e[o]==="ctx"?"context":e[o]))&&(t=n);return t}function Cy(e){let t=e.trim().replace(/\s+/gu," ");return Xi.find(n=>n.canonical===t.replace(/^ctx /u,"context "))?.alias??t}function Mn(e){return Cy(e)}var Vr=[...Xi,...[["ctx","context"],["packages","package"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:[t],lifecycle:"permanent",hidden:!1,registration:"commander",owner:"pm-pbyu"})),...[["start-task","claim","--start"],["pause-task","release","--pause"],["close-task","close","--release-assignment"]].map(([e,t,n])=>({alias:e,canonical:t,canonical_argv:[t,n],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-eq4x"})),{alias:"tests",canonical:"item test",canonical_argv:["item","test"],lifecycle:"permanent",hidden:!1,registration:"bootstrap",owner:"pm-u4t9gp"},...[["fetch","get"],["read","get"],["show","get"],["view","get"],["comment","comments"],["note","notes"],["learning","learnings"]].map(([e,t])=>({alias:e,canonical:["comments","notes","learnings"].includes(t)?`item ${t}`:t,canonical_argv:["comments","notes","learnings"].includes(t)?["item",t]:[t],lifecycle:"permanent",hidden:!1,registration:"bootstrap",owner:"pm-pbyu"})),...[["extension list","extension catalog"],["extension scaffold","extension init"],["package list","package catalog"],["package scaffold","package init"],["packages list","package catalog"],["packages scaffold","package init"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!1,registration:"commander",owner:"pm-ya7x55"})),{alias:"list-all",canonical:"list",canonical_argv:["list","--all"],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-pfqi"},...[["list-draft","draft"],["list-open","open"],["list-in-progress","in_progress"],["list-blocked","blocked"],["list-closed","closed"],["list-canceled","canceled"]].map(([e,t])=>({alias:e,canonical:"list",canonical_argv:["list","--status",t],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-pfqi"})),...[["extension","package"],["install","package install"],["upgrade","package upgrade"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-tnud"}))],HT=Object.fromEntries(Vr.filter(e=>e.registration==="bootstrap").map(e=>[e.alias,e.canonical]));function qT(e){let t=e.trim().toLowerCase();return Vr.find(n=>n.alias===t)}function VT(e){return`Deprecated command \`${e.alias}\`; use \`pm ${e.canonical_argv.join(" ")}\`.`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="432226a6-9df4-5de6-b9af-5c06ec2eed66")}catch{}})();var xy=[...Ne],Ry=[...Wt],Ny=[...Mr],YT=[...$r],XT=[...jr],Dy=[...Lr],Br=["init","config","extension","package","packages","install","upgrade","create","item","copy","focus","list","list-all","list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled","aggregate","context","ctx","get","graph","search","duplicates","eval","next","history","events","history-redact","history-repair","history-compact","history-attest","history-author-acknowledge","merge","schema","profile","activity","restore","update","update-many","close","close-many","delete","append","comments","notes","learnings","files","docs","deps","plan","test","test-all","telemetry","stats","health","validate","assurance","gc","workspace","contracts","claim","release","start-task","pause-task","close-task","meet","event","remind","help"],JT=["ancestors","descendants","predecessors","successors","paths","impact","analyze","audit","communities","redundancy","dominators","slack","centrality","articulation","plan","index"],QT=["install","reconcile","report","driver"],Py=["init","install","uninstall","explore","manage","describe","reload","doctor","catalog","adopt","adopt-all","activate","deactivate"],My=["upgrade"],$y=["reopen"],Sd={help:"Commander help rendering has no SDK operation result.",packages:"The plural package alias only renders package-oriented help."},Gt=Object.freeze(Br.flatMap(e=>e in Sd?[]:e==="extension"||e==="package"?[...Py.map(t=>`${e}-${t}`),...e==="package"?My.map(t=>`package-${t}`):[],e]:e==="item"?$y.map(t=>`item-${t}`):[e])),jy=Object.freeze(Vr.filter(e=>e.lifecycle==="deprecated"&&e.registration==="commander"&&Gt.includes(e.alias)).map(e=>e.alias)),ZT=Object.freeze(Gt.filter(e=>!jy.includes(e)));function eC(e=Br,t=Gt,n=Sd){let r=new Set(t),o=new Set(e);return{missing_cli_actions:e.filter(i=>!r.has(i)&&!t.some(s=>s.startsWith(`${i}-`))&&n[i]===void 0),waived_cli_actions:e.filter(i=>!r.has(i)&&!t.some(s=>s.startsWith(`${i}-`))&&n[i]!==void 0),stale_waivers:Object.keys(n).filter(i=>!o.has(i)||r.has(i)||t.some(s=>s.startsWith(`${i}-`)))}}function tC(e){return Gt.includes(e)}function nC(e){return xy.includes(e)}function rC(e){return Ry.includes(e)}function oC(e){return Ny.includes(e)}function iC(e){return Dy.includes(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bc25122b-94e0-510e-bdbd-b10e3c255d68")}catch{}})();var Ly=["Epic","Feature","Task","Chore","Issue","Decision","Event","Reminder","Milestone","Meeting","Plan"],Od=Ly,Kt=["draft","open","in_progress","blocked","closed","canceled"],Wr=["draft","active","blocked","terminal","terminal_done","terminal_canceled","default_open","default_close","default_cancel"],Yt=["string","number","boolean","string_array","array","object"],Gr=["create","update","update_many","list","search","calendar","context"],Kr=["allow","warn","reject"],aC=["blocks","parent","child","parent_child","child_of","related","related_to","discovered_from","blocked_by","incident_from","epic","implements","recurs_from","supersedes","task","verifies"],cC=["project","global"],dC=["low","medium","high","critical"],Yr=["low","medium","high","critical"],Xr=["low","medium","high"];var Ad=["minimal","default","strict","custom"],lC=["none","warn","strict"],uC=["progressive","strict"],fC=["off","warn","strict"],mC=["off","warn","strict"];var Jr=["daily","weekly","monthly","yearly"],$n=["mon","tue","wed","thu","fri","sat","sun"];function Ji(e){return $n.indexOf(e)}var pC=["draft","research","review","approved","executing","paused","completed","superseded"],Id=["pending","in_progress","completed","blocked","skipped","superseded"],_C=["codex","claude-code","cursor","generic"],yC=["related","blocks","blocked_by","depends_on","discovered_from","implements","recurs_from","verifies","supersedes"],hC=["brief","standard","deep","full"],gC=["hierarchy","activity","progress","recently_created","unparented","blockers","files","workload","staleness","tests"];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0ca7f52c-fb31-5cd9-b689-a918f4e61816")}catch{}})();import qy from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="75f74db3-9547-5c78-8561-f371c016b90d")}catch{}})();function ze(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function Fy(e){let t=e.key.trim();if(t.length===0)return null;let n=ze(e.aliases),r=e.description?.trim();return{key:t,values:ze(e.values),required:e.required===!0?!0:void 0,aliases:n.length>0?n:void 0,description:r&&r.length>0?r:void 0}}var zy=e=>e,Cd=e=>{let t=e.trim().toLowerCase();return t==="create"||t==="update"?t:null};function Uy(e,t){let n=t(e.command);if(n===null)return null;let r=e.option.trim();return r.length===0?null:{command:n,option:r,required:e.required,visible:e.visible,enabled:e.enabled}}function Hy(e,t){let n=new Map;for(let r of e??[]){let o=Uy(r,t);o&&n.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...n.values()].sort((r,o)=>r.command===o.command?r.option.localeCompare(o.option):r.command.localeCompare(o.command))}function Td(e,t){return t?ze(e):void 0}function Qi(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Zi(e){if(e===void 0||e==="agent"||e==="human"||e==="gate")return e;throw new Error("Item type execution_role must be agent, human, or gate.")}function Qr(e,t={}){let n=t.resolvePolicyCommand??zy,r=e.name.trim();if(r.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,c=ze(e.aliases),d=(e.options??[]).map(u=>Fy(u)).filter(u=>u!==null).sort((u,f)=>u.key.localeCompare(f.key)),l=Hy(e.command_option_policies,n);return{name:r,description:Qi(e.description),default_status:Qi(e.default_status),...e.execution_role===void 0?{}:{execution_role:Zi(e.execution_role)},folder:Qi(e.folder),aliases:c.length>0?c:void 0,required_create_fields:Td(e.required_create_fields,o),required_create_repeatables:Td(e.required_create_repeatables,i),options:s?d:void 0,command_option_policies:a?l:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f40ddc8e-1dd5-5f26-b2ba-fbbac30a1781")}catch{}})();var Vy=Object.freeze({decision:"human",milestone:"gate"}),By=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],Wy=["dep","comment","note","learning","file","test","doc"],Rd=["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"],Gy=["title","description","type","status","priority","tags","body",...Rd,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],Ky=["title","description","body","status","closeReason","priority","type","tags",...Rd,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],Nd={"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"},Yy={...Nd},Xy={...Nd},Dd=[["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"]],Pd=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function Md(e){return Object.fromEntries(e)}var Jy=Md([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...Dd,["author","--author"],["message","--message"],["dep","--dep"],...Pd]),Qy=Md([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...Dd,...Pd,["author","--author"],["message","--message"],["force","--force"]]);function Zy(e){return e.trim().replace(/^--+/,"").toLowerCase()}function eh(e){return e==="create"?Gy:Ky}function th(e){return e==="create"?Yy:Xy}function $d(e,t){let n=Zy(t);return n.length===0?void 0:th(e)[n]||eh(e).find(r=>r.toLowerCase()===n)}function IC(e,t){return(e==="create"?Jy:Qy)[t]??`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function ts(e){let t=rh(e);return t.length===0?"items":t.endsWith("s")?t:`${t}s`}function nh(e){let t=e.trim(),n=t.replaceAll("\\","/").replace(/^\/+/,""),r=qy.posix.normalize(n);if(t.includes("\0")||/^[A-Za-z]:/.test(r)||r==="."||r===".."||r.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return r}function rh(e){let t=e.trim().toLowerCase(),n="",r=!1;for(let o of t){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){r&&n.length>0&&(n+="-"),n+=o,r=!1;continue}n.length>0&&(r=!0)}return n}function oh(e){return Qr(e,{resolvePolicyCommand:Cd})}function jn(e,t){let n=e[t];return Array.isArray(n)?n.filter(r=>typeof r=="string"):void 0}function ih(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return typeof t.key!="string"?null:{key:t.key,values:jn(t,"values")??[],required:t.required===void 0?void 0:!!t.required,aliases:jn(t,"aliases"),description:typeof t.description=="string"?t.description:void 0}}function sh(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;if(typeof t.command!="string"||typeof t.option!="string")return null;let n=t.command.trim().toLowerCase();return n!=="create"&&n!=="update"?null:{command:n,option:t.option,required:t.required===void 0?void 0:!!t.required,visible:t.visible===void 0?void 0:!!t.visible,enabled:t.enabled===void 0?void 0:!!t.enabled}}function ah(e){if(Array.isArray(e.options))return e.options.map(t=>ih(t)).filter(t=>t!==null)}function ch(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(t=>sh(t)).filter(t=>t!==null)}function dh(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e,n=typeof t.name=="string"?t.name:"";if(n.trim().length===0)return null;let r=typeof t.folder=="string"?t.folder:void 0,o=typeof t.description=="string"?t.description:void 0,i=typeof t.default_status=="string"?t.default_status:void 0;return{name:n,description:o,default_status:i,execution_role:Zi(t.execution_role),folder:r,aliases:jn(t,"aliases"),required_create_fields:jn(t,"required_create_fields"),required_create_repeatables:jn(t,"required_create_repeatables"),options:ah(t),command_option_policies:ch(t)}}function lh(e,t){return e.required_create_fields?ze(e.required_create_fields):t?.required_create_fields??[]}function uh(e,t){return e.required_create_repeatables?ze(e.required_create_repeatables):t?.required_create_repeatables??[]}function fh(e,t){return e.options?e.options:t?.options?[...t.options]:[]}function mh(e,t){return e.command_option_policies?e.command_option_policies:t?.command_option_policies?[...t.command_option_policies]:[]}function ph(e,t){let n=t?.name??e.name,r=e.description??t?.description,o=e.default_status??t?.default_status,i=nh(e.folder??t?.folder??ts(n)),s={name:n,execution_role:e.execution_role,folder:i,aliases:ze([...t?.aliases??[],...e.aliases??[]]),required_create_fields:lh(e,t),required_create_repeatables:uh(e,t),options:fh(e,t),command_option_policies:mh(e,t)};return r&&(s.description=r),o&&(s.default_status=o),s}function xd(e,t){for(let n of e){let r=oh(n);if(!r)continue;let o=r.name.toLowerCase(),i=t.get(o);t.set(o,ph({...r,execution_role:r.execution_role??i?.execution_role},i))}}function _h(e){if(!e)return[];let t=[];for(let n of e.item_types??[]){let r=n.types;if(Array.isArray(r))for(let o of r){let i=dh(o);i&&t.push(i)}}return t}function TC(e,t=null){let n=new Map;for(let c of Od)n.set(c.toLowerCase(),{name:c,execution_role:Vy[c.toLowerCase()]??"agent",folder:Nn[c],aliases:[],required_create_fields:[...By],required_create_repeatables:[...Wy],options:[],command_option_policies:[]});xd(e.item_types?.definitions??[],n),xd(_h(t),n);let r=[...n.values()].sort((c,d)=>c.name.localeCompare(d.name)),o={},i={},s={};for(let c of r){o[c.name]=c,s[c.name]=c.folder,i[c.name.toLowerCase()]=c.name;for(let d of c.aliases)i[d.toLowerCase()]=c.name}let a=[...new Set(r.map(c=>c.folder))].sort((c,d)=>c.localeCompare(d));return{types:r.map(c=>c.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function yh(e,t){if(e!==void 0)return t.alias_to_type[e.trim().toLowerCase()]}function hh(e,t){let n=yh(e,t);if(n)return t.by_type[n]}function gh(e,t,n,r){for(let o of r){let i=$d(n,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${n}" on type "${t.name}"`)}}function es(e,t,n){if(n){e.add(t);return}e.delete(t)}function bh(e,t,n,r){let o=$d(n,r.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${r.option}" for command "${n}" on type "${t.name}"`);return}r.required!==void 0&&es(e.required,o,r.required),r.visible!==void 0&&es(e.hidden,o,!r.visible),r.enabled!==void 0&&es(e.disabled,o,!r.enabled)}function wh(e,t,n){for(let r of t.command_option_policies)r.command===n&&bh(e,t,n,r)}function vh(e,t,n){for(let r of e.required)e.disabled.has(r)&&e.errors.push(`Option "${r}" cannot be both required and disabled for command "${n}" on type "${t.name}"`)}function CC(e,t,n){let r=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:r};return gh(a,e,t,n),wh(a,e,t),vh(a,e,t),{required:[...o],hidden:[...i].sort((c,d)=>c.localeCompare(d)),disabled:[...s].sort((c,d)=>c.localeCompare(d)),errors:r}}function Eh(e){let t=new Map;for(let n of e.options){t.set(n.key.toLowerCase(),n);for(let r of n.aliases??[])t.set(r.toLowerCase(),n)}return t}function kh(e,t,n){let r=e.values;if(r.length===0)return t;let o=new Map(r.map(i=>[i.toLowerCase(),i])).get(t.toLowerCase());if(!o){n.push(`Invalid value "${t}" for type option "${e.key}". Allowed: ${r.join(", ")}`);return}return o}function xC(e,t,n){let r=hh(e,n);if(!r)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Eh(r),s={};for(let[c,d]of Object.entries(t??{})){let l=c.trim(),u=d.trim();if(l.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${l}" must not be empty`);continue}let f=i.get(l.toLowerCase());if(!f){let _=r.options.map(y=>y.key).join(", ");o.push(r.options.length>0?`Unknown type option "${l}" for type "${r.name}". Allowed: ${_}`:`Type "${r.name}" does not define any configurable type options`);continue}let m=kh(f,u,o);m!==void 0&&(s[f.key]=m)}for(let c of r.options)c.required&&!(c.key in s)&&o.push(`Missing required type option "${c.key}" for type "${r.name}"`);let a=Object.keys(s).sort((c,d)=>c.localeCompare(d));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(c=>[c,s[c]])),errors:o}}import{readFileSync as Sh,readdirSync as Oh,realpathSync as jd,statSync as Ld}from"node:fs";import Ah from"node:os";import C from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7f4b8abe-997c-549c-9791-87c78506c8b5")}catch{}})();var Ih={json_markdown:".md",toon:".toon"},Th={".md":"json_markdown",".toon":"toon"},Ch=new Set([".git","coverage","dist","node_modules"]),FC=[".md",".toon"];function Ln(e){try{return Ld(e),!0}catch{return!1}}function xh(e){let t=C.resolve(e),n=[];for(;C.dirname(t)!==t;)try{return C.join(jd(t),...n)}catch(r){if(!we(r))throw r;n.unshift(C.basename(t)),t=C.dirname(t)}return C.join(jd(t),...n)}function Rh(e){try{return Ld(e),!0}catch(t){if(we(t))return!1;throw t}}function Fd(e){try{let t=JSON.parse(Sh(e,"utf8"));return typeof t!="object"||t===null||Array.isArray(t)?!1:"id_prefix"in t||"item_format"in t}catch{return!1}}function Nh(e){let t=xh(e);for(;;){let n=C.join(t,Fr),r=C.join(n,zr);if(Ln(r))return n;let o=C.join(t,zr);if(Ln(o)&&Fd(o))return t;if(Rh(C.join(t,".git")))return n;let i=C.dirname(t);if(i===t)return;t=i}}function ns(e){return Nh(e)??C.resolve(e,Fr)}function zC(e,t){let n=t?C.resolve(t):void 0;try{return Oh(C.resolve(e),{withFileTypes:!0}).filter(r=>r.isDirectory()&&!Ch.has(r.name)).map(r=>C.join(C.resolve(e),r.name)).filter(r=>r!==n).filter(r=>Ln(Ae(r))).filter(r=>Fd(Ae(r))).sort((r,o)=>r.localeCompare(o))[0]}catch{return}}function zd(e,t){let n=process.env.PM_PATH,r=t?.trim()||n?.trim();if(r){let o=C.resolve(e,r);if(!Ln(Ae(o))){let i=C.join(o,Fr);if(Ln(Ae(i)))return i}return o}return ns(e)}function Ud(e){let t=C.resolve(e),n=C.dirname(t);return C.basename(t)==="pm"&&C.basename(n)===".agents"?C.dirname(n):t}function Hd(e){let t=process.env.PM_GLOBAL_PATH?.trim(),n=t&&t.length>0?t:C.join(Ah.homedir(),".pm-cli");return C.resolve(e,n)}function Ae(e){return C.join(e,zr)}function Dh(e,t,n=Nn){let r=n[t]??ts(t);return C.join(e,r)}function UC(e,t,n,r="toon",o=Nn){return C.join(Dh(e,t,o),`${n}${Ih[r]}`)}function HC(e){let t=e.replaceAll("\\","/"),n=C.posix.extname(t).toLowerCase();return Th[n]??null}function qC(e,t){if(!/^(?!\.{1,2}$)[^/\\:\0]+$/.test(t))throw new g("Invalid history item id: expected a single filename.",h.USAGE);return C.join(e,"history",`${t}.jsonl`)}function rs(e,t){return C.join(e,"locks",`${t}.lock`)}function os(e){return C.join(e,"runtime")}function Zr(e){return C.join(os(e),"test-runs")}function Ph(e){return C.join(Zr(e),"runs")}function VC(e,t){return C.join(Ph(e),`${t}.json`)}function Mh(e){return C.join(Zr(e),"stdout")}function $h(e){return C.join(Zr(e),"stderr")}function BC(e,t){return C.join(Mh(e),`${t}.log`)}function WC(e,t){return C.join($h(e),`${t}.log`)}function jh(e){return C.join(Zr(e),"results")}function GC(e,t){return C.join(jh(e),`${t}.json`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="86412887-5659-5892-beaa-bdd15a02ff4c")}catch{}})();var qd=e=>{let t='"',n=0;for(let r of e){if(r==="\\"){n+=1;continue}t+="\\".repeat(r==='"'?n*2+1:n),t+=r,n=0}return`${t}${"\\".repeat(n*2)}"`},Vd=(e,t=process.platform)=>(t==="win32"?/^[A-Za-z0-9._:/\\@=-]+$/:/^[A-Za-z0-9._:/@=-]+$/).test(e)?e:t==="win32"?qd(e):`"${e.replace(/(["\\$`])/g,"\\$1")}"`,Xt=(e,t=process.platform)=>{let n=e.map(r=>Vd(r,t)).join(" ");return n.length>0?`pm ${n}`:"pm"};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7607f0d2-6e95-5b85-9bc2-18f643a64171")}catch{}})();var Bd=new Set(["--pm-path","--path","--author","--output-include","--output-limit","--output-budget","--output-format","--format","--output-session","--output-cursor"]),Lh=new Set(["--no-extensions","--no-pager","--json","--quiet","--lean","--token-accounting","--output-row-contract","--all"]);function Fh(e){let t=e.indexOf("=");return t>0&&Bd.has(e.slice(0,t))}function zh(e,t){return typeof t!="string"?!1:e==="--path"||e==="--pm-path"||!t.startsWith("-")}function eo(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(n==="--")return;if(Bd.has(n)){t+=zh(n,e[t+1])?1:0;continue}if(!(Fh(n)||Lh.has(n)||n==="--profile"||n==="--id-only"||n==="--explain")&&!n.startsWith("-"))return t}}function XC(e){let t=eo(e);return t===void 0?void 0:e[t].trim().toLowerCase()}import Uh from"node:path";import Wd from"path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="01422574-583a-5fd1-bc00-f61f430073cd")}catch{}})();function Fn(e,t){let n=Wd.relative(e,t);return n.length===0?!0:!n.startsWith("..")&&!Wd.isAbsolute(n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="08181915-ead8-51bc-a078-9d97b9048f37")}catch{}})();var is=new WeakMap;function ix(e){is.set(e,e.path)}function Hh(e){if(!process.env.PM_PATH?.trim())return;let t=zd(e);return Fn(Ud(t),e)&&t===ns(e)?void 0:Uh.relative(e,t)||"."}function sx(e,t=process.cwd()){let n=(is.has(e)?is.get(e):e.path)||Hh(t),r=n?["--pm-path",n]:[];return e.noExtensions&&r.push("--no-extensions"),r}var qh=new Set(["--literal","--regex","--replacement"]);function Vh(e){let t=eo(e);if(t===void 0)return!1;if(e[t]==="history-redact")return!0;if(e[t]!=="history")return!1;let n=e.slice(t+1),r=eo(n);return r!==void 0&&n[r]==="redact"}function ax(e){if(!Vh(e))return[...e];let t=[],n=!1;for(let r of e){if(n){t.push("[redacted]"),n=!1;continue}n=!1;let o=r.indexOf("="),i=o>=0?r.slice(0,o):r;if(!qh.has(i)){t.push(r);continue}if(o>=0){t.push(`${i}=[redacted]`);continue}t.push(i),n=!0}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c24357cc-5dad-5cd7-aa89-cddd2945aab7")}catch{}})();var Bh=Object.freeze([{flag:"--json"},{flag:"--lean"},{flag:"--token-accounting"},{flag:"--output-include",value_name:"fields"},{flag:"--output-limit",value_name:"count"},{flag:"--output-budget",value_name:"tokens"},{flag:"--output-format",value_name:"toon|json"},{flag:"--output-session",value_name:"state"},{flag:"--output-cursor",value_name:"cursor"},{flag:"--output-row-contract"},{flag:"--quiet"},{flag:"--no-changed-fields"},{flag:"--full-changed-fields"},{flag:"--id-only"},{flag:"--pm-path",aliases:["--path"]},{flag:"--no-extensions"},{flag:"--no-pager"},{flag:"--profile"},{flag:"--help"},{flag:"--author",value_name:"id"}]),ss=new Set(Bh.flatMap(e=>[e.flag,...e.aliases??[]]));(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="896ebde0-4ca1-50ed-bb8e-2a8c2d978d94")}catch{}})();var Gd=/^(--[a-z0-9][a-z0-9_-]*)(?:[ =](<[^<>]+>|\[[^[\]]+\]))?$/;function as(e){if(typeof e!="string")return null;let t=Gd.exec(e.trim());if(!t)return null;let n=t[2];return{name:t[1],valueName:n?n.slice(1,-1):null,optional:n?.startsWith("[")??!1}}function ux(e){let t=as(e);return t?t.name:typeof e=="string"&&e.trim()||null}function Wh(e){if(typeof e!="string")return null;let t=e.trim(),n=t.split(/[ =]/,1)[0];return ss.has(n)?"host_owned_flag_collision":Gd.test(t)?null:"malformed_long_flag"}function Kd(e,t){let n=[e,t].find(i=>typeof i=="string"&&ss.has(i.trim().split(/[ =]/,1)[0]));if(typeof n=="string")return{token:n.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let r=e.trim(),o=Wh(r);return o===null?null:{token:r,failure:o}}function Yd(e,t){return t==="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:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a797572f-fbc6-5e62-a9b5-5a0bd6ef22b4")}catch{}})();function Gh(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function mx(e){return Gh(e)??void 0}function px(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t-=1;return t===e.length?e:e.slice(0,t)}function _x(e){return Array.isArray(e)&&e.every(t=>typeof t=="number"&&Number.isFinite(t))}function Jd(e){if(e instanceof Error){let t=e.message.trim();return t.length>0?t:e.name}return String(e)}function to(e){let t=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(t)?t:null}function yx(e){let t=to(e);return t===null||t<=0||!Number.isInteger(t)?null:t}function hx(e,t,n){let r=to(e);return r===null||r<t||r>n?null:r}function gx(e){return typeof e!="object"||e===null||Array.isArray(e)?null:e}function Ue(e){return typeof e!="object"||e===null?null:e}function Xd(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function Qd(e){let t=Xd(e);if(!t)return null;if(typeof t.activate=="function")return t;let n=Xd(t.default);return typeof n?.activate=="function"?n:null}function bx(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:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="92573990-a040-526d-a0b1-b91d2ef401f1")}catch{}})();function no(e){let t=Math.ceil(e.size/2);for(let n of e.keys()){if(t===0)return;e.delete(n),t-=1}}import Kh from"node:crypto";import{AsyncLocalStorage as Yh}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ced47074-06d3-53b9-af75-63586cbd4f6a")}catch{}})();var cs=new Yh,Zd=1024;function Xh(e){let t=Date.parse(e.clock);if(!Number.isFinite(t))throw new Error(`Invalid reproducible workspace clock: ${e.clock}`);if(!Number.isSafeInteger(e.tickMs)||e.tickMs<0)throw new Error("Reproducible workspace tickMs must be a non-negative integer");if(e.seed.trim().length===0)throw new Error("Reproducible workspace seed must not be empty");return{...e,clock:new Date(t).toISOString()}}function Jh(e){let t={...Xh(e),clockReads:0,tokenReads:0};return n=>cs.run(t,n)}async function Sx(e,t){return Jh(e)(t)}function el(){let e=cs.getStore();if(e===void 0)return;let t=new Date(Date.parse(e.clock)+e.clockReads*e.tickMs).toISOString();return e.clockReads+=1,t}function Ox(e){let t=cs.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>Zd)throw new Error(`Reproducible token length must be an integer between 0 and ${Zd}`);let n="";for(;n.length<e;){let r=Kh.createHash("sha256").update(`${t.seed}\0${t.tokenReads}`).digest();t.tokenReads+=1;for(let o of r)if(n+=(o%36).toString(36),n.length===e)break}return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0bf155fc-c690-5318-ba1e-275f1787858b")}catch{}})();var Qh=/^([+-]?)(\d+)([hdwm])$/i,Zh=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,eg=/^(\d{4})(\d{2})(\d{2})$/,tg=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,ng=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,rg=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,og=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.\d+)?(?:Z|[+-](\d{2}):(\d{2}))$/i;function Ie(){return el()??new Date().toISOString()}function Pe(e){return Number.isFinite(Date.parse(e))}function zn(e){let t=og.exec(e);if(!t||!Number.isFinite(Date.parse(e)))return!1;let[,n,r,o,i,s,a,c,d]=t,[l,u,f,m,_,y]=[n,r,o,i,s,a].map(Number);return u>=1&&u<=12&&f>=1&&f<=us(l,u-1)&&m<=23&&_<=59&&y<=59&&(c===void 0||Number(c)<=23)&&(d===void 0||Number(d)<=59)}function Jt(e){let t=/\.(\d+)(?:Z|[+-]\d{2}:\d{2})$/iu.exec(e)?.[1];return zn(e)&&(t===void 0||/^\d{0,3}0*$/u.test(t))}var ig=1e4,ro=new Map;function tl(e){let t=ro.get(e);if(t!==void 0)return t;let n=Date.parse(e);return ro.size>=ig&&no(ro),ro.set(e,n),n}function ne(e,t){let n=tl(e),r=tl(t);return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:e.localeCompare(t)}function Rx(e,t){return!(t.deadlineBefore&&(!e.deadline||ne(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||ne(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&ne(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&ne(e.updated_at,t.updatedBefore)>0||t.createdAfter&&ne(e.created_at,t.createdAfter)<0||t.createdBefore&&ne(e.created_at,t.createdBefore)>0)}function ds(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function ls(e){if(!e)return"";if(e.toUpperCase()==="Z")return"Z";let t=/^([+-]\d{2})(\d{2})$/.exec(e);return t?`${t[1]}:${t[2]}`:e}function sg(e,t,n){n&&n!==t&&(e.includes(n)||e.push(n))}function ag(e){let t=[],n=d=>sg(t,e,d),r=eg.exec(e);if(r){let[,d,l,u]=r;n(`${d}-${l}-${u}`)}let o=tg.exec(e);if(o){let[,d,l,u,f,m,_,y,w]=o,v=_?`:${_}`:"";n(`${d}-${l}-${u}T${f}:${m}${v}${ds(y)}${ls(w)}`)}let i=ng.exec(e);if(i){let[,d,l,u,f,m,_]=i,y=f?`:${f}`:"";n(`${d}T${l}:${u}${y}${ds(m)}${ls(_)}`)}let s=rg.exec(e);if(s){let[,d,l,u,f,m,_]=s,y=f?`:${f}`:"";n(`${d}T${l}:${u}${y}${ds(m)}${ls(_)}`)}let a=10,c=e.slice(0,a);if(dg(c)){let d=a;for(;d<e.length&&lg(e[d]);)d+=1;d<e.length&&n(`${c}T${e.slice(d)}`)}return t}function cg(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let n of ag(e)){let r=Date.parse(n);if(Number.isFinite(r))return r}return Number.NaN}function dg(e){if(e.length!==10)return!1;for(let t=0;t<e.length;t+=1){let n=e[t];if(t===4||t===7){if(n!=="-")return!1;continue}let r=n.charCodeAt(0);if(r<48||r>57)return!1}return!0}function lg(e){return e?e===" "||e===" "||e===`
|
|
2
|
+
`||e==="\r"||e==="\f"||e==="\v":!1}function us(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var ug=["January","February","March","April","May","June","July","August","September","October","November","December"],fg=/^(\d{4})-(\d{2})-(\d{2})/,mg=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function pg(e,t,n){let r=fg.exec(t)??mg.exec(t);if(!r)return;let o=Number.parseInt(r[1],10),i=Number.parseInt(r[2],10),s=Number.parseInt(r[3],10),a=n?.trim()||"deadline";if(i<1||i>12)throw new g(`Invalid ${a} value "${e}". Month "${r[2]}" is out of range \u2014 use a month between 01 and 12.`,h.USAGE,{field:a,value:e});let c=us(o,i-1);if(s<1||s>c)throw new g(`Invalid ${a} value "${e}". ${ug[i-1]} ${o} has ${c} days, so day "${r[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,h.USAGE,{field:a,value:e})}function _g(e,t){let n=new Date(e.getTime()),r=n.getUTCDate(),o=n.getUTCMonth()+t,i=n.getUTCFullYear()+Math.floor(o/12),s=(o%12+12)%12,a=Math.min(r,us(i,s));return n.setUTCFullYear(i,s,a),n}function Nx(e,t=new Date,n="deadline"){let r=e.trim();if(r.toLowerCase()==="now")return t.toISOString();let o=Qh.exec(r);if(o){let s=o[1]==="-"?-1:1,a=Number.parseInt(o[2],10)*s,c=o[3].toLowerCase();if(c==="m")return _g(t,a).toISOString();let d=c==="h"?3600*1e3:c==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*d).toISOString()}pg(e,r,n);let i=cg(r);if(!Number.isFinite(i)){let s=n.trim().length>0?n.trim():"deadline",a=Zh.test(r)?"Compound relative expressions like +3d+1h are not supported; use a single relative token (for example +3d) or an ISO/date string.":'Use ISO/date string input, "now", or relative +6h/-6h/+1d/-1d/+2w/-2w/+6m/-6m.';throw new g(`Invalid ${s} value "${e}". ${a}`,h.USAGE,{field:s,value:e})}return new Date(i).toISOString()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5c3049c3-1d5a-5e7e-a070-35340737a6ab")}catch{}})();var nl=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function oo(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return Object.hasOwn(nl,t)?nl[t]:null}function yg(e,t,n){return!!(e.value_name?.trim()||t||n||e.required===!0||e.list===!0||e.repeatable===!0)}function hg(e){return(e.value_type?.trim()||e.type?.trim())?.toLowerCase()}function Mx(e){let t=hg(e),n=oo(t),r=as(e.long),o=e.value_name?.trim()||null,i=!(n==="boolean"&&t!=="bool")&&yg(e,r?.valueName,t),s=r?.valueName?r.optional:t==="bool";return{value_type:n,value_arity:i?s?"optional":"required":"none",value_name:i?o??r?.valueName??"value":null}}function rl(e){let t=[],n=r=>{if(Array.isArray(r)){for(let o of r)n(o);return}if(typeof r=="string"){for(let o of r.split(",")){let i=o.trim();i.length>0&&t.push(i)}return}r!=null&&t.push(r)};return n(e),t}function ol(e,t){return t==="string"?!0:t==="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 $x(e,t){return t==="number"?typeof e=="number"&&Number.isFinite(e)?null:{kind:t,received:e,expected:"a finite number"}:typeof e=="boolean"?null:{kind:t,received:e,expected:"true, false, 1, or 0"}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="628615ea-5be3-5753-a6c5-3eba8400a8da")}catch{}})();function io(e,t,n){if(e===t)return 0;if(Math.abs(e.length-t.length)>n)return null;let r=t.length+1,o=new Array(r),i=new Array(r),s=new Array(r);for(let c=0;c<r;c+=1)o[c]=0,i[c]=c;for(let c=1;c<=e.length;c+=1){s[0]=c;let d=s[0];for(let l=1;l<=t.length;l+=1){let u=e[c-1]===t[l-1]?0:1,f=i[l-1]+u,m=s[l-1]+1,_=i[l]+1,y=Math.min(f,m,_);c>1&&l>1&&e[c-1]===t[l-2]&&e[c-2]===t[l-1]&&(y=Math.min(y,o[l-2]+1)),s[l]=y,y<d&&(d=y)}if(d>n)return null;for(let l=0;l<r;l+=1)o[l]=i[l],i[l]=s[l]}let a=i[t.length];return a<=n?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2ea7934f-4751-5245-a5ba-492681aa3794")}catch{}})();var fs=[{kind:"blocked_by",direction:"directed",traversal:"ordering",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",traversal:"ordering",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",traversal:"hierarchy",outcomeTraversal:"source_to_target",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",traversal:"hierarchy",outcomeTraversal:"target_to_source",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",traversal:"association",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"recurs_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,temporalOrder:"source_after_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",traversal:"semantic",outcomeTraversal:"both",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!1}];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="418b3f7f-6350-5878-a362-3948de287baf")}catch{}})();function co(e){return e.trim().toLowerCase().replaceAll("-","_")}function gg(e){if(e===void 0)return;let t=co(e);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return t}function ps(e,t=new Set){if(e===null||typeof e!="object"||t.has(e))return e;if(t.add(e),Array.isArray(e)){for(let n of e)ps(n,t);return Object.freeze(e)}for(let n of Object.values(e))ps(n,t);return Object.freeze(e)}function bg(e,t){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${t}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${t}`)}function wg(e,t){if(e.temporalOrder!==void 0&&e.temporalOrder!=="source_after_target")throw new TypeError(`Invalid relationship temporal order for ${t}`);if(e.direction!=="directed"&&e.temporalOrder!==void 0)throw new TypeError(`Undirected relationship kind cannot declare temporal order: ${t}`)}function vg(e,t){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${t}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${t}`)}function Eg(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 t=co(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${t}`);return t}function kg(e,t){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${t}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${t}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${t}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${t}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${t}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${t}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${t}`);if(e.traversal!==void 0&&!["hierarchy","ordering","semantic","association"].includes(e.traversal))throw new TypeError(`Invalid relationship traversal family for ${t}`);if(e.outcomeTraversal!==void 0&&!["source_to_target","target_to_source","both"].includes(e.outcomeTraversal))throw new TypeError(`Invalid outcome traversal for ${t}`);if(e.direction==="undirected"&&e.outcomeTraversal!==void 0&&e.outcomeTraversal!=="both")throw new TypeError(`Undirected relationship kind cannot declare directional outcome traversal: ${t}`)}function Sg(e,t){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${t}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(n=>typeof n!="string")))throw new TypeError(`Invalid relationship aliases for ${t}`)}function Og(e){return e.traversal?e.traversal:e.ordering?"ordering":e.hierarchy?"hierarchy":e.direction==="undirected"?"association":"semantic"}var _s=class{#e=new Map;#n=new Map;constructor(t=fs){for(let n of t)this.register(n)}register(t){let n=Eg(t);if(kg(t,n),Sg(t,n),bg(t,n),wg(t,n),vg(t,n),this.#e.has(n)||this.#n.has(n))throw new TypeError(`Relationship kind already registered: ${n}`);let r=gg(t.inverse),o=[...new Set((t.aliases??[]).map(co))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===n||this.#e.has(s)||this.#n.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...t,kind:n,traversal:Og(t),hierarchy:t.hierarchy??!1,hierarchyDirection:t.hierarchy?t.hierarchyDirection??"source_parent":void 0,inverse:r,aliases:Object.freeze(o),payloadSchema:t.payloadSchema?ps(structuredClone(t.payloadSchema)):void 0});this.#e.set(n,i);for(let s of o)this.#n.set(s,n);return this}resolve(t){if(typeof t!="string")return;let n=co(t);return this.#e.get(this.#n.get(n)??n)}require(t){let n=this.resolve(t);if(!n)throw new TypeError(`Unknown relationship kind: ${t}`);return n}list(){return Object.freeze([...this.#e.values()].sort((t,n)=>t.kind.localeCompare(n.kind)))}};function ys(){return new _s}var pt=ys();function Hx(e){return pt.require(e).kind}function qx(e){return pt.resolve(e)?.kind}function Vx(e,t=pt){return t.resolve(e)?.ordering===!0}function Ag(e,t,n,r=pt){let o=Un(e),i=Un(t);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=r.require(n);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function so(e,t){return e.source.localeCompare(t.source)||e.target.localeCompare(t.target)||e.kind.localeCompare(t.kind)}function Ig(e,t,n){let r=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!t.has(r)||!t.has(o))throw new TypeError(`Relationship endpoint not found: ${r} -> ${o}`);let i=Ag(r,o,e.kind,n),s=Object.freeze({...e,source:r,target:o,kind:i.kind}),a=i.direction==="undirected"?[r,o].sort().join("\0"):`${r}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function ao(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}function Un(e){return typeof e=="string"?e.trim():""}function ms(e,t){let n=Un(e);return n&&t.has(n)?n:void 0}function Tg(e,t,n){let r=[t],o=t;for(;o!==e;)o=n.get(o),r.push(o);return r.reverse()}var il=class e{#e;#n;#o;#r;#s=new Map;#a=new Map;constructor(t,n,r=pt){this.#e=r,this.#n=new Set([...t].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#n].sort());let o=new Map;for(let i of n){let{edge:s,identity:a}=Ig(i,this.#n,r);o.set(a,s)}this.#r=Object.freeze([...o.values()].sort(so));for(let i of this.#r)ao(this.#s,i.source,i),ao(this.#a,i.target,i),r.require(i.kind).direction==="undirected"&&(ao(this.#s,i.target,i),ao(this.#a,i.source,i))}static fromItems(t,n=pt){let r=new Set(t.map(i=>Un(i.id)).filter(Boolean)),o=[];for(let i of t){let s=Un(i.id);if(!s)continue;let a=ms(i.parent,r);a&&o.push({source:s,target:a,kind:"parent"});let c=ms(i.blocked_by,r);c&&o.push({source:s,target:c,kind:"blocked_by"});for(let d of i.dependencies??[]){let l=ms(d.id,r);l&&n.resolve(d.kind)&&o.push({source:s,target:l,kind:d.kind,createdAt:d.created_at,author:d.author})}}return new e(r,o,n)}edges(){return this.#r}incidentEdges(t){this.#i(t);let n=this.#s.get(t)??[],r=this.#a.get(t)??[];if(n.length===0)return Object.freeze([...r]);if(r.length===0)return Object.freeze([...n]);let o=[],i=0,s=0;for(;i<n.length||s<r.length;){let a=n[i],c=r[s],d=a===void 0?c:c===void 0||so(a,c)<=0?a:c;o.at(-1)!==d&&o.push(d),a===d&&(i+=1),c===d&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(t){return this.#n.has(t)}registry(){return this.#e}#i(t){if(!this.#n.has(t))throw new TypeError(`Relationship node not found: ${t}`)}#c(t,n){if(!n)return!0;let r=this.#e.require(t.kind);return n.has(t.kind)||r.inverse!==void 0&&n.has(r.inverse)}#t(t,n,r){let o=[...n==="incoming"?[]:this.#s.get(t)??[],...n==="outgoing"?[]:this.#a.get(t)??[]];return[...new Set(o)].filter(i=>this.#c(i,r)).map(i=>({id:i.source===t?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||so(i.edge,s.edge))}adjacency(t,n={}){this.#i(t),n.signal?.throwIfAborted();let r=n.kinds?new Set(n.kinds.map(c=>this.#e.require(c).kind)):void 0,o=this.#t(t,n.direction??"outgoing",r),i=n.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(c=>c.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(t,n={}){this.#i(t),n.signal?.throwIfAborted();let r=n.kinds?new Set(n.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#t(t,n.direction??"outgoing",r),i=n.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(t,n={}){this.#i(t);let r=n.kinds?new Set(n.kinds.map(m=>this.#e.require(m).kind)):void 0,o=n.direction??"outgoing",i=n.limit??Number.POSITIVE_INFINITY,s=n.maxDepth??Number.POSITIVE_INFINITY,a=new Set([t]),c=[],d=[{id:t,depth:0}],l=0,u=0,f=!1;e:for(let m=0;m<d.length;m+=1){n.signal?.throwIfAborted();let _=d[m];l+=1;let y=this.#t(_.id,o,r);if(u+=y.length,_.depth>=s){y.some(w=>!a.has(w.id))&&(f=!0);continue}for(let w of y)if(!a.has(w.id)){if(c.length>=i){f=!0;break e}a.add(w.id),c.push(w.id),d.push({id:w.id,depth:_.depth+1})}}return{value:c,meta:{visitedNodes:l,inspectedEdges:u,truncated:f,nextCursor:c.at(-1)}}}shortestPath(t,n,r={}){if(this.#i(t),this.#i(n),t===n)return{value:[t],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=r.kinds?new Set(r.kinds.map(m=>this.#e.require(m).kind)):void 0,i=r.direction??"outgoing",s=r.maxDepth??Number.POSITIVE_INFINITY,a=[{id:t,depth:0}],c=new Map,d=new Set([t]),l=0,u=0,f=!1;for(let m=0;m<a.length;m+=1){r.signal?.throwIfAborted();let _=a[m];l+=1;let y=this.#t(_.id,i,o);if(u+=y.length,_.depth>=s){y.some(w=>!d.has(w.id))&&(f=!0);continue}for(let w of y)if(!d.has(w.id)){if(c.set(w.id,_.id),w.id===n)return{value:Tg(t,n,c),meta:{visitedNodes:l,inspectedEdges:u,truncated:!1}};d.add(w.id),a.push({id:w.id,depth:_.depth+1})}}return{value:[],meta:{visitedNodes:l,inspectedEdges:u,truncated:f}}}subgraph(t,n={}){let r=this.closure(t,n),o=[t,...r.value].sort(),i=new Set(o),s=n.kinds?new Set(n.kinds.map(c=>this.#e.require(c).kind)):void 0,a=new Set;for(let c of o)for(let d of this.#s.get(c)??[])i.has(d.source)&&i.has(d.target)&&this.#c(d,s)&&a.add(d);return{value:{nodes:o,edges:[...a].sort(so)},meta:r.meta}}};function Bx(e,t,n=pt){return{source:e,target:t.id,kind:n.require(t.kind).kind,createdAt:t.created_at,author:t.author}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="32aa20df-edf7-543d-b733-841130466f00")}catch{}})();var Cg="__pm_suppress_host_output",hs="@unbrained/pm-cli:suppress-host-output:v1";function sl(e){return e===void 0?{__pm_suppress_host_output:hs}:{__pm_suppress_host_output:hs,result:e}}function lo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&e[Cg]===hs}import Qt from"node:fs";import Me from"node:path";import{fileURLToPath as xg}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="efea1aa1-1ad1-5f53-a3a5-b83803d9deb1")}catch{}})();var Rg="@unbrained/pm-cli";function Ng(e){try{return JSON.parse(Qt.readFileSync(e,"utf8")).name===Rg}catch{return!1}}function Dg(e){let t=Qt.existsSync(e)&&Qt.statSync(e).isDirectory()?Me.resolve(e):Me.dirname(Me.resolve(e));for(;;){let n=Me.join(t,"package.json");if(Qt.existsSync(n)&&Ng(n))return t;let r=Me.dirname(t);if(r===t)return;t=r}}function uo(e,t=[]){let n=xg(e);return Dg(n)||Me.resolve(Me.dirname(n),...t)}function Jx(e,t=[]){try{let n=Me.join(uo(e,t),"package.json");if(!Qt.existsSync(n))return;let r=JSON.parse(Qt.readFileSync(n,"utf8"));return typeof r.version=="string"&&r.version.trim().length>0?r.version:void 0}catch{return}}function Qx(e=process.env,t="PM_CLI_PACKAGE_ROOT",n,r=[]){let o=e[t];return typeof o=="string"&&o.trim().length>0?Me.resolve(o.trim()):n?uo(n,r):process.cwd()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="53865a81-4c96-51e2-a378-ae0e2781a50f")}catch{}})();var fo={include:"--output-include",amount:"--output-limit",cost:"--output-budget",encoding:"--output-format"},mo=Object.freeze(["--output-session","--output-cursor","--output-row-contract"]),_t=["list","context","search","get","next","health","deps","graph","history","activity","validate","events","contracts","comments","notes","files","docs","stats","aggregate","duplicates","package-catalog","package-manage","comments-audit","assurance"];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f8657910-1392-5fae-afda-614b96dc8320")}catch{}})();function z(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function Pg(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function pe(e){return e?D(e):{}}function _e(e){return e?D(e):Pg()}function D(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="615b4955-a30d-5d45-a86d-4bcf7bd9bd7a")}catch{}})();var Mg=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),$g=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","assurance_providers","parser_overrides","service_overrides","renderer_overrides"];function jg(e,t){for(let n of $g){let r=e[n];if(r===void 0)continue;if(!Array.isArray(r)||r.some(i=>typeof i!="string"))return!1;let o=r.map(i=>Mg.has(n)?z(i):i.trim()).filter(i=>i.length>0);t[n]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function Lg(e){if(!Array.isArray(e))return null;let t=[];for(let n of e){if(typeof n!="object"||n===null)return null;let r=n;if(r.format!=="json"&&r.format!=="toon"||!Array.isArray(r.commands)||r.commands.some(o=>typeof o!="string")||typeof r.result_discriminator!="boolean")return null;t.push({format:r.format,commands:[...new Set(r.commands.map(o=>z(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:r.result_discriminator})}return t.sort((n,r)=>n.format.localeCompare(r.format))}function Fg(e){if(!Array.isArray(e))return null;let t=[];for(let n of e){if(typeof n!="object"||n===null)return null;let r=n.commands;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;t.push({commands:[...new Set(r.map(o=>z(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return t}function po(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let t=e;if(t.schema_version!==1)return null;let n={schema_version:1};if(!jg(t,n))return null;let r=t.preflight_overrides;if(r!==void 0&&(!Number.isInteger(r)||r<0))return null;typeof r=="number"&&(n.preflight_overrides=r);let o=t.renderer_ownership;if(o!==void 0){let s=Lg(o);if(s===null)return null;n.renderer_ownership=s}let i=t.preflight_ownership;if(i!==void 0){let s=Fg(i);if(s===null)return null;n.preflight_ownership=s}return n}function rR(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,...e.assurance_providers?{assurance_providers:e.assurance_providers}:{},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,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7359c10a-4c56-57ea-8254-fc26b19e5c84")}catch{}})();function Hn(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function He(e){return Ne.includes(e)}function al(e){let t=e.trim().toLowerCase();return He(t)?t:null}function cl(e){return e.filter(t=>!He(t))}function gs(e){let t=e.trim().toLowerCase();return t.length===0?null:ud[t]??null}function dl(e){let t=Hn([...e].map(i=>i.toLowerCase())),n=[],r=[];for(let i of t){let s=gs(i);if(s){n.push(s),r.push({alias:i,target:s});continue}n.push(i)}let o=[...new Map(r.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:Hn(n),legacy_aliases:o}}function zg(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=gs(t);if(n)return n;let r=Math.max(1,Math.floor(t.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of Ne){let a=io(t,s,r);a!==null&&a<i&&(i=a,o=s)}return o}function ll(e,t,n){let r=Ne.join(","),o=zg(n)??"none";return`extension_capability_unknown:${e}:${t}:${n}:allowed=${r}:suggested=${o}`}function ul(e,t,n){let r=n.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${t}:aliases=${r}`}function Ug(e){let t=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!t)return null;let[,n,r,o,i,s]=t,a=n,c=i.split(",").map(u=>u.trim()).filter(u=>u.length>0),d=gs(o),l=(s==="none"?void 0:s)??d??void 0;return{layer:a,name:r,capability:o,allowed_capabilities:c,capability_contract_version:Gi,suggested_capability:l,suggestion_source:l?d===l?"legacy_alias":"nearest_match":void 0,legacy_alias_target:d??void 0}}function Hg(e){let t=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!t)return[];let[,n,r,o]=t,i=n,s=[...Ne],a=[];for(let c of o.split(",")){let[d,l]=c.split(">"),u=d?.trim(),f=l?.trim().toLowerCase();!u||!f||!He(f)||a.push({layer:i,name:r,capability:u,allowed_capabilities:s,capability_contract_version:Gi,suggested_capability:f,suggestion_source:"legacy_alias",legacy_alias_target:f})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="01116a5e-62d1-591b-9fd0-84ac6e99f8d0")}catch{}})();function qn(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function bs(){return{overrides:[],handlers:[]}}function ws(){return{overrides:[]}}function vs(){return{overrides:[]}}function Es(){return{overrides:[]}}function ks(){return{overrides:[]}}function Ss(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[],assurance_providers:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="67511565-01f8-58a6-ad06-45b5d0ce831b")}catch{}})();var qg=new Set(["name","version","entry","priority","description","author","capabilities","manifest_version","pm_min_version","pm_max_version","engines","trusted","provenance","sandbox_profile","permissions","activation","contributions","legacy_capability_aliases"]);function Vg(e){return{unknownKeys:Object.keys(e).filter(t=>!qg.has(t)).sort((t,n)=>t>n?1:-1),missingVersionBounds:e.pm_min_version===void 0&&e.pm_max_version===void 0}}function Bg(e){let t=Vg(e),n=t.unknownKeys.map(r=>({code:"manifest_unknown_key",path:r,...r==="compatibility"?{suggested_key:"pm_min_version"}:{},message:r==="compatibility"?'Manifest key "compatibility" is ignored; declare the canonical pm_min_version and optional pm_max_version fields instead.':`Manifest key "${r}" is not part of the extension manifest contract and will be ignored.`}));return t.missingVersionBounds&&n.push({code:"no_version_bounds_declared",path:"$",suggested_key:"pm_min_version",message:"No canonical pm version bounds are declared; add pm_min_version so compatibility intent is explicit."}),{ok:n.length===0,findings:n}}function fl(e,t,n){return Bg(n).findings.map(r=>r.code==="manifest_unknown_key"?`extension_manifest_unknown_key:${e}:${t.name}:key=${r.path}${r.suggested_key?`:suggested=${r.suggested_key}`:""}`:`extension_manifest_no_version_bounds:${e}:${t.name}:suggested=pm_min_version`)}import{constants as qe}from"node:os";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="151124a3-cefa-55d3-bf4f-bd8f2553ad72")}catch{}})();var ml=new Map([["EACCES",{summary:"was denied filesystem permission",recovery:"Grant the required filesystem access, then retry.",category:"permission"}],["EDQUOT",{summary:"exceeded the filesystem quota",recovery:"Raise or reclaim the filesystem quota, then retry.",category:"capacity"}],["EMFILE",{summary:"exhausted the process file-descriptor limit",recovery:"Close unused file handles or raise the process limit, then retry.",category:"resource"}],["ENFILE",{summary:"exhausted the host file-descriptor limit",recovery:"Free host file descriptors or raise the host limit, then retry.",category:"resource"}],["ENOMEM",{summary:"ran out of available memory",recovery:"Free memory or reduce concurrent work, then retry.",category:"resource"}],["ENOSPC",{summary:"ran out of storage space",recovery:"Free storage on the filesystem holding the project, then retry.",category:"capacity"}],["EPERM",{summary:"was denied by the host permission policy",recovery:"Grant the required filesystem permission, then retry.",category:"permission"}],["EROFS",{summary:"targeted a read-only filesystem",recovery:"Use a writable project filesystem or remount it read-write, then retry.",category:"permission"}]]),Wg=/^[a-z][a-z0-9_]{0,63}$/u,Gg=new Map([[qe.errno.EACCES,"EACCES"],[qe.errno.EDQUOT,"EDQUOT"],[qe.errno.EMFILE,"EMFILE"],[qe.errno.ENFILE,"ENFILE"],[qe.errno.ENOMEM,"ENOMEM"],[qe.errno.ENOSPC,"ENOSPC"],[qe.errno.EPERM,"EPERM"],[qe.errno.EROFS,"EROFS"]].filter(([e])=>Number.isInteger(e))),Kg={capacity:{code:"host_environment_capacity_fault"},permission:{code:"host_environment_permission_fault"},resource:{code:"host_environment_resource_fault"}};function Yg(e){if(typeof e!="object"||e===null)return null;let t=e;return typeof t.code=="string"&&ml.has(t.code)?t.code:typeof t.errno!="number"||!Number.isInteger(t.errno)?null:Gg.get(Math.abs(t.errno))??null}function Xg(e,t,n={}){let r=Yg(e);if(r===null)return null;if(!Wg.test(t))throw new g("Host environment operation labels must be bounded identifiers.",h.USAGE,{code:"host_environment_operation_invalid",field:"operation"});let o=ml.get(r);return new g(`Host filesystem operation ${t} ${o.summary}.`,h.GENERIC_FAILURE,{code:n.codes?.[o.category]??Kg[o.category].code,reason:r,required:o.recovery,why:n.why??"The operating system refused a required project filesystem operation.",nextSteps:[o.recovery,...n.nextSteps??[]],...n.suggestedRetry?{recovery:{suggested_retry:n.suggestedRetry}}:{}})}async function pl(e,t,n={}){try{return await t()}catch(r){throw Xg(r,e,n)??r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3a15b0ff-f638-5368-95a7-0d5d9abb3f21")}catch{}})();var Jg=5e3;async function Vn(e,t,n){let r=[];for(let o of e)try{await o.run(D(n))}catch{r.push(`extension_hook_failed:${o.layer}:${o.name}:${t}`)}return r}async function Qg(e,t){return Vn(e.beforeCommand,"beforeCommand",t)}function Zg(e,t,n){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new g(`Extension mutation guard ${t.name} returned an invalid decision.`,h.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${t.layer}:${t.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let r=e,o=typeof r.code=="string"?r.code.trim():"",i=typeof r.remediation=="string"?r.remediation.trim():"";if(o.length===0||i.length===0)throw new g(`Extension mutation guard ${t.name} returned an invalid denial.`,h.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${t.layer}:${t.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof r.message=="string"?r.message.trim():"";throw new g(s||`Extension mutation guard ${t.name} denied ${n}.`,h.CONFLICT,{code:o,reason:`${t.layer}:${t.name}`,nextSteps:[i]})}async function Os(e,t){for(let n of e.beforeMutation??[]){let r,o;try{let i=Promise.resolve().then(()=>n.run({pm_root:t.pm_root,operation:t.operation,before:t.before===null?null:D(t.before),after:t.after===null?null:D(t.after),changed_fields:[...t.changed_fields],sdk:t.sdk}));i.catch(()=>{}),r=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new g(`Extension mutation guard ${n.name} timed out before ${t.operation}.`,h.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${n.layer}:${n.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},Jg),o.unref?.()})])}catch(i){throw i instanceof g?i:new g(`Extension mutation guard ${n.name} failed before ${t.operation}.`,h.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${n.layer}:${n.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}Zg(r,n,t.operation)}}async function eb(e,t){return Vn(e.afterCommand,"afterCommand",t)}async function As(e,t){return Vn(e.onWrite,"onWrite",t)}async function Is(e,t){return Vn(e.onRead,"onRead",t)}async function Ts(e,t){return Vn(e.onIndex,"onIndex",t)}function tb(e){let t="";e instanceof Error&&typeof e.message=="string"?t=e.message:typeof e=="string"?t=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(t=e.message);let n=t.replace(/\s+/gu," ").trim();if(n.length===0)return"";let r=300;return n.length>r?`${n.slice(0,r-1)}\u2026`:n}function _o(e,t){if(typeof e!="object"||e===null||typeof e[t]!="string")return;let n=String(e[t]).replace(/\s+/gu," ").trim();return n.length>0?n.slice(0,300):void 0}function nb(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let t=e.exit_code;if(typeof t!="number"||!Number.isInteger(t)||t<1||t>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return t}async function Cs(e,t){let n=z(t.command);if(n.length===0)return{handled:!1,result:null,warnings:[]};let r=[...e.handlers].reverse().find(o=>o.command===n);if(!r)return{handled:!1,result:null,warnings:[]};try{let o=await r.run({command:n,args:D(t.args),options:D(t.options),global:D(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,...t.sdk===void 0?{}:{sdk:t.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",nb(o)],["errorCode",_o(o,"code")],["remediation",_o(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 Object.defineProperty({handled:!1,result:null,warnings:[`extension_command_handler_failed:${r.layer}:${r.name}:${r.command}`],errorMessage:tb(o),...Object.fromEntries([["errorCode",_o(o,"code")],["remediation",_o(o,"remediation")]].filter(s=>s[1]!==void 0))},"cause",{value:o,configurable:!0})}}async function xs(e,t){let n=z(t.command);if(n.length===0)return{overridden:!1,context:{command:n,args:D(t.args),options:pe(t.options),global:_e(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};let r=[...e.overrides].reverse().find(o=>o.command===n);if(!r)return{overridden:!1,context:{command:n,args:D(t.args),options:pe(t.options),global:_e(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};try{let o=await Promise.resolve(r.run({command:n,args:D(t.args),options:pe(t.options),global:_e(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel}))??{},i=Array.isArray(o.args)?D(o.args):D(t.args),s=o.options?pe(o.options):pe(t.options),a=o.global?_e(o.global):_e(t.global);return{overridden:!0,context:{command:n,args:i,options:s,global:a,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]}}catch{return{overridden:!1,context:{command:n,args:D(t.args),options:pe(t.options),global:_e(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[`extension_parser_override_failed:${r.layer}:${r.name}:${r.command}`]}}}async function Rs(e,t){let n={command:z(t.command),args:D(t.args),options:pe(t.options),global:_e(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},r=D(t.decision),o=[...e.overrides].reverse().find(i=>!i.commands?.length||i.commands.includes(n.command));if(!o)return{overridden:!1,context:n,decision:r,warnings:[]};try{let i=await Promise.resolve(o.run({command:n.command,args:D(n.args),options:pe(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,decision:D(r)}))??{},s={command:n.command,args:Array.isArray(i.args)?D(i.args):n.args,options:i.options?pe(i.options):n.options,global:i.global?_e(i.global):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},a={enforce_item_format_gate:typeof i.enforce_item_format_gate=="boolean"?i.enforce_item_format_gate:r.enforce_item_format_gate,run_preflight_item_format_sync:typeof i.run_preflight_item_format_sync=="boolean"?i.run_preflight_item_format_sync:r.run_preflight_item_format_sync,run_extension_migrations:typeof i.run_extension_migrations=="boolean"?i.run_extension_migrations:r.run_extension_migrations,enforce_mandatory_migration_gate:typeof i.enforce_mandatory_migration_gate=="boolean"?i.enforce_mandatory_migration_gate:r.enforce_mandatory_migration_gate};return{overridden:!0,context:s,decision:a,warnings:[]}}catch{return{overridden:!1,context:n,decision:r,warnings:[`extension_preflight_override_failed:${o.layer}:${o.name}`]}}}function _l(e){return{handled:!1,result:e.payload,warnings:[]}}function yl(e,t){return[...e.overrides].reverse().filter(n=>n.service===t)}function hl(e){return{service:e.service,command:e.command?z(e.command):void 0,args:e.args?D(e.args):void 0,options:e.options?pe(e.options):void 0,global:e.global?_e(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:D(e.payload)}}function rb(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let t=e.handled;return t===!0?Object.hasOwn(e,"result"):t===!1&&Reflect.ownKeys(e).length===1}function gl(e,t){return rb(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:t.payload}:t.service==="output_format"&&e==null?{handled:!1,result:t.payload}:{handled:!0,result:e}}function bl(e,t,n){return t.service==="output_format"&&typeof e=="object"&&e!==null&&W(e,n.payload)}function wl(e,t,n){if(t.handled){if(e.passThrough===!0){n.push(`extension_service_pass_through_contract_violated:${e.layer}:${e.name}:${e.service}`);return}return{handled:!0,result:t.result,warnings:n}}}function Ns(e,t){let n=yl(e,t.service);if(n.length===0)return _l(t);let r=[];for(let o of n)try{let i=hl(t),s=o.run(i);if(s instanceof Promise){r.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(bl(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=wl(o,gl(s,t),r);if(a)return a}catch{r.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:r}}async function Ds(e,t){let n=yl(e,t.service);if(n.length===0)return _l(t);let r=[];for(let o of n)try{let i=hl(t),s=await Promise.resolve(o.run(i));if(bl(s,t,i)){r.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=wl(o,gl(s,t),r);if(a)return a}catch{r.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:r}}function Ps(e,t){let n=z(t.command);if(n.length===0)return{overridden:!1,result:t.result,warnings:[]};let r=[...e.overrides].reverse().find(o=>o.command===n);if(!r)return{overridden:!1,result:t.result,warnings:[]};try{let o=pe(t.options),i=_e(t.global),s=r.run({command:n,args:D(t.args),options:o,global:i,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:D(t.result)});return s instanceof Promise?{overridden:!1,result:t.result,warnings:[`extension_command_override_async_unsupported:${r.layer}:${r.name}:${r.command}`]}:{overridden:!0,result:s,warnings:[]}}catch{return{overridden:!1,result:t.result,warnings:[`extension_command_override_failed:${r.layer}:${r.name}:${r.command}`]}}}function ob(e,t,n){if((e.commands?.length??0)>0&&!e.commands?.includes(t))return!1;if(e.resultDiscriminator===void 0)return!0;try{return e.resultDiscriminator(D(n))}catch{return!1}}function Ms(e,t){let n=typeof t.command=="string"?z(t.command):"",r=[...e.overrides].reverse().find(o=>o.format===t.format&&ob(o,n,t.result));if(!r)return{overridden:!1,rendered:null,warnings:[]};try{let o=Array.isArray(t.args)?D(t.args):[],i=pe(t.options),s=_e(t.global),a=typeof t.pm_root=="string"?t.pm_root:"",c=r.run({format:t.format,command:n,args:o,options:i,global:s,pm_root:a,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:D(t.result)});return c==null?{overridden:!1,rendered:null,warnings:[]}:typeof c!="string"?{overridden:!1,rendered:null,warnings:[`extension_renderer_invalid_result:${r.layer}:${r.name}:${r.format}`]}:{overridden:!0,rendered:c,warnings:[]}}catch{return{overridden:!1,rendered:null,warnings:[`extension_renderer_failed:${r.layer}:${r.name}:${r.format}`]}}}import wt from"node:fs/promises";import bt from"node:path";import{pathToFileURL as zb}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="559b05dc-0290-5a7c-97b9-ef1e5e8670ba")}catch{}})();function vl(e){let t={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(([n,r])=>[n,r.length]))};return()=>{e.hooks.beforeCommand.length=t.beforeCommand,e.hooks.beforeMutation.length=t.beforeMutation,e.hooks.afterCommand.length=t.afterCommand,e.hooks.onWrite.length=t.onWrite,e.hooks.onRead.length=t.onRead,e.hooks.onIndex.length=t.onIndex,e.commands.overrides.length=t.commandOverrides,e.commands.handlers.length=t.commandHandlers,e.parsers.overrides.length=t.parserOverrides,e.preflight.overrides.length=t.preflightOverrides,e.services.overrides.length=t.serviceOverrides,e.renderers.overrides.length=t.rendererOverrides;for(let[n,r]of Object.entries(t.registrations))e.registrations[n].length=r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="17ae377d-20c2-5e45-825a-48a79c6c7601")}catch{}})();function K(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return t}function ee(e,t){if(t!==void 0&&typeof t!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function B(e,t){if(t!==void 0&&(typeof t!="string"||t.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function El(e,t){if(t===void 0)return;let n=r=>typeof r=="string"||typeof r=="number"||typeof r=="boolean";if(Array.isArray(t)){for(let[r,o]of t.entries())if(!n(o))throw new TypeError(`${e}[${r}] must be a string, number, or boolean`);return}if(!n(t))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function yt(e,t){if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[n,r]of t.entries())if(typeof r!="string"||r.trim().length===0)throw new TypeError(`${e}[${n}] must be a non-empty string`)}}function Bn(e,t){if(yt(e,t),!Array.isArray(t))return[];let n=[],r=new Set;for(let o of t){let i=o.trim();i.length===0||r.has(i)||(r.add(i),n.push(i))}return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="34536eba-0f92-5599-a807-5b39b000e733")}catch{}})();var $s=Object.freeze(["workspace","intake","context","lifecycle","evidence","graph","quality","automation","extensions","internal"]);(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="60fd882d-7c92-5be5-bf46-7e3c128bfb58")}catch{}})();var ib=new Set($s);function sb(e){if(e!==void 0&&!ib.has(String(e)))throw new Error(`registerCommand definition.family must be one of: ${$s.join(", ")}`)}function kl(e){B("registerCommand definition.action",e.action),B("registerCommand definition.family",e.family),B("registerCommand definition.description",e.description),B("registerCommand definition.intent",e.intent),B("registerCommand definition.tier",e.tier);let t=e.tier;if(t!==void 0&&t!=="core"&&t!=="standard"&&t!=="full"&&t!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal");sb(e.family)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="095ea29d-eda3-5287-b54d-8a961658f7bc")}catch{}})();function Sl(e,t="",n=""){if(e===void 0)return;if(Zt(t)||Zt(n))throw new TypeError("Native pm commands and actions cannot declare read_output");let r=K("registerCommand definition.read_output",e);if(Object.keys(r).some(s=>s!=="row_keys")||!Array.isArray(r.row_keys))throw new TypeError("registerCommand definition.read_output requires only row_keys: string[]");let o=Array.from(r.row_keys),i=new Set(["__proto__","constructor","prototype","row_contract","read_output","read_session","omission_receipt","output_budget_truncation"]);if(o.some(s=>typeof s!="string"||!/^[a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*$/u.test(s)||s.split(".").some(a=>i.has(a))))throw new TypeError("registerCommand definition.read_output row_keys must be safe dot-delimited property paths");if(new Set(o).size!==o.length||o.some(s=>o.some(a=>a.startsWith(`${s}.`))))throw new TypeError("registerCommand definition.read_output row_keys must be unique and non-overlapping");return Object.freeze({row_keys:Object.freeze([...o])})}function Zt(e){let t=e.trim().toLowerCase().replace(/\s+/gu,"-");return Gt.includes(t)||_t.includes(t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="07cb237c-3956-5997-85f8-972d2ee490d0")}catch{}})();function ab(e){let t=K("registerExporter options.output",e),n=new Set(["channel","receipt","media_type"]);for(let r of Object.keys(t))if(!n.has(r))throw new TypeError(`registerExporter options.output contains unsupported field ${r}`);if(t.channel!=="stdout"&&t.channel!=="file")throw new TypeError("registerExporter options.output.channel must be stdout|file");if(t.receipt!==void 0&&t.receipt!=="suppress"&&t.receipt!=="render")throw new TypeError("registerExporter options.output.receipt must be suppress|render");if(t.channel==="stdout"&&t.receipt==="render")throw new TypeError("registerExporter stdout artifacts cannot render a host receipt");return B("registerExporter options.output.media_type",t.media_type),{channel:t.channel,receipt:t.receipt??(t.channel==="stdout"?"suppress":"render"),...typeof t.media_type=="string"?{media_type:t.media_type}:{}}}function Ol(e,t,n){if(e==="registerImporter"&&t.output!==void 0)throw new TypeError("registerImporter options.output is exporter-only");if(e!=="registerExporter"||t.output===void 0)return;let r=ab(t.output);return!n&&r.channel==="stdout"&&(t.description="Export items with the registered extension adapter. Artifact bytes are written exclusively to stdout and the host receipt is suppressed by default."),r}function js(e,t,n){return{registration:t,action:n,command:e.command,args:D(e.args),options:D(e.options),global:D(e.global),pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,...e.sdk===void 0?{}:{sdk:e.sdk}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fc2e7eac-cd1c-5885-aa27-e98455008a4f")}catch{}})();function Al(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:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bb1b4879-079c-50d4-afa5-e8a36ead2e5c")}catch{}})();function ve(e){return typeof e!="string"?"":e.trim().toLowerCase()}function P(e){return new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))}function cb(e){let t=e.trim().toLowerCase();if(t.length===0)return"";let n=t.split(/[.:/]/).map(r=>r.replace(/[\s_-]+/g,"")).filter(r=>r.length>0);return n.length===0?"":n.length===1?n[0]:`${n[0]}.${n.slice(1).join("")}`}function en(e){return new Set((e??[]).map(t=>cb(t)).filter(t=>t.length>0))}function Il(e){let t=ve(e);return Mr.includes(t)?t:"off"}function Tl(e){let t=ve(e);return $r.includes(t)?t:"off"}function Wn(e){let t=ve(e);return jr.includes(t)?t:"none"}function Ls(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return fd.includes(t)?t:void 0}function Cl(e){if(typeof e=="string"){let t=Ls(e)??"block";return{global:t,project:t}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:Ls(e.global)??"block",project:Ls(e.project)??"block"}:{global:"block",project:"block"}}function db(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function j(e){return[...new Set(e)].sort((t,n)=>t.localeCompare(n))}function lb(e){let t=ve(e.name);return t.length===0?null:{name:t,normalized:{name:t,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?Wn(e.sandbox_profile):void 0,allowedCapabilities:P(e.allowed_capabilities),blockedCapabilities:P(e.blocked_capabilities),allowedSurfaces:en(e.allowed_surfaces),blockedSurfaces:en(e.blocked_surfaces),allowedCommands:P(e.allowed_commands),blockedCommands:P(e.blocked_commands),allowedActions:P(e.allowed_actions),blockedActions:P(e.blocked_actions),allowedServices:P(e.allowed_services),blockedServices:P(e.blocked_services)}}}function xl(e){let t=new Map;for(let n of e??[]){let r=lb(n);r&&t.set(r.name,r.normalized)}return t}function ub(e){let t=[],n=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of j([...e.allowedCapabilities,...e.blockedCapabilities]))He(o)||t.push(`extension_policy_unknown_capability:${o}`);for(let o of n)for(let i of j([...o.allowedCapabilities,...o.blockedCapabilities]))He(i)||t.push(`extension_policy_unknown_capability:${o.name}:${i}`);let r=new Set(Lr);for(let o of j([...e.allowedSurfaces,...e.blockedSurfaces]))r.has(o)||t.push(`extension_policy_unknown_surface:${o}`);for(let o of n)for(let i of j([...o.allowedSurfaces,...o.blockedSurfaces]))r.has(i)||t.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(t)].sort((o,i)=>o.localeCompare(i))}function Rl(e){let t=e.extensions?.policy??{},n=P(t.allowed_capabilities),r=P(t.blocked_capabilities),o=en(t.allowed_surfaces),i=en(t.blocked_surfaces),s=xl(t.extension_overrides);return{mode:Il(t.mode),trustMode:Tl(t.trust_mode),pmMaxVersionExceededMode:Cl(t.pm_max_version_exceeded_mode),requireProvenance:t.require_provenance===!0,trustedExtensions:P(t.trusted_extensions),defaultSandboxProfile:Wn(t.default_sandbox_profile),allowedExtensions:P(t.allowed_extensions),blockedExtensions:P(t.blocked_extensions),allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:P(t.allowed_commands),blockedCommands:P(t.blocked_commands),allowedActions:P(t.allowed_actions),blockedActions:P(t.blocked_actions),allowedServices:P(t.allowed_services),blockedServices:P(t.blocked_services),overridesByName:s,warnings:ub({allowedCapabilities:n,blockedCapabilities:r,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function Nl(e){let t=[...e.overridesByName.values()].sort((n,r)=>n.name.localeCompare(r.name)).map(n=>({name:n.name,...n.disabled?{disabled:!0}:{},...n.requireTrusted?{require_trusted:!0}:{},...n.requireProvenance?{require_provenance:!0}:{},...n.sandboxProfile?{sandbox_profile:n.sandboxProfile}:{},...n.allowedCapabilities.size>0?{allowed_capabilities:j(n.allowedCapabilities)}:{},...n.blockedCapabilities.size>0?{blocked_capabilities:j(n.blockedCapabilities)}:{},...n.allowedSurfaces.size>0?{allowed_surfaces:j(n.allowedSurfaces)}:{},...n.blockedSurfaces.size>0?{blocked_surfaces:j(n.blockedSurfaces)}:{},...n.allowedCommands.size>0?{allowed_commands:j(n.allowedCommands)}:{},...n.blockedCommands.size>0?{blocked_commands:j(n.blockedCommands)}:{},...n.allowedActions.size>0?{allowed_actions:j(n.allowedActions)}:{},...n.blockedActions.size>0?{blocked_actions:j(n.blockedActions)}:{},...n.allowedServices.size>0?{allowed_services:j(n.allowedServices)}:{},...n.blockedServices.size>0?{blocked_services:j(n.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:db(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:j(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:j(e.allowedExtensions),blocked_extensions:j(e.blockedExtensions),allowed_capabilities:j(e.allowedCapabilities),blocked_capabilities:j(e.blockedCapabilities),allowed_surfaces:j(e.allowedSurfaces),blocked_surfaces:j(e.blockedSurfaces),allowed_commands:j(e.allowedCommands),blocked_commands:j(e.blockedCommands),allowed_actions:j(e.allowedActions),blocked_actions:j(e.blockedActions),allowed_services:j(e.allowedServices),blocked_services:j(e.blockedServices),extension_overrides:t}}function Dl(e){let t=xl(e.extension_overrides);return{mode:Il(e.mode),trustMode:Tl(e.trust_mode),pmMaxVersionExceededMode:Cl(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:P(e.trusted_extensions),defaultSandboxProfile:Wn(e.default_sandbox_profile),allowedExtensions:P(e.allowed_extensions),blockedExtensions:P(e.blocked_extensions),allowedCapabilities:P(e.allowed_capabilities),blockedCapabilities:P(e.blocked_capabilities),allowedSurfaces:en(e.allowed_surfaces),blockedSurfaces:en(e.blocked_surfaces),allowedCommands:P(e.allowed_commands),blockedCommands:P(e.blocked_commands),allowedActions:P(e.allowed_actions),blockedActions:P(e.blocked_actions),allowedServices:P(e.allowed_services),blockedServices:P(e.blocked_services),overridesByName:t,warnings:[]}}function Ve(e,t){return e.overridesByName.get(ve(t))??null}function tn(e,t,n,r,o){return t.has(n)?o:e.size>0&&!e.has(n)?r:null}function Pl(e,t,n){let r=n.trim().toLowerCase(),o=Ve(e,t.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return tn(i,s,r,"capability_not_allowlisted","capability_blocked")}function fb(e,t,n){let r=Ve(e,t.name),o=r&&r.allowedSurfaces.size>0?r.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...r?r.blockedSurfaces:[]]);return tn(o,i,n,"surface_not_allowlisted","surface_blocked")}function mb(e,t,n){let r=z(n);if(r.length===0)return null;let o=Ve(e,t.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return tn(i,s,r,"command_not_allowlisted","command_blocked")}function pb(e,t,n){let r=ve(n).replace(/\s+/g,"-");if(r.length===0)return null;let o=Ve(e,t.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return tn(i,s,r,"action_not_allowlisted","action_blocked")}function _b(e,t,n){let r=ve(n);if(r.length===0)return null;let o=Ve(e,t.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return tn(i,s,r,"service_not_allowlisted","service_blocked")}function yb(e,t){let n=ve(t.name);return Ve(e,t.name)?.disabled===!0?"extension_override_disabled":tn(e.allowedExtensions,e.blockedExtensions,n,"extension_not_allowlisted","extension_blocked")}function hb(e,t){if(e.trustMode==="off")return null;let n=Ve(e,t.name),r=ve(t.name),o=t.trusted===!0,i=t.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(r)?"extension_not_trusted":(n?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||n?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function gb(e,t){if(e.mode==="off")return null;let n=Ve(e,t.name)?.sandboxProfile??t.sandboxProfile??e.defaultSandboxProfile;if(n==="none")return null;let r=t.permissions;if(!r)return"sandbox_permissions_missing";let o=i=>r[i]===!0;return n==="restricted"?o("process_spawn")?"sandbox_restricted_disallows_process_spawn":o("env_write")?"sandbox_restricted_disallows_env_write":null:o("process_spawn")?"sandbox_strict_disallows_process_spawn":o("network")?"sandbox_strict_disallows_network":o("fs_write")?"sandbox_strict_disallows_fs_write":o("env_write")?"sandbox_strict_disallows_env_write":null}function yo(e,t,n,r,o={}){let i=Object.entries(o).sort((a,c)=>a[0].localeCompare(c[0])).map(([a,c])=>`${a}=${c}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${t}:${n.layer}:${n.name}:reason=${r}${s}`}function Ml(e,t){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let n=[],r=yb(e,t);r&&n.push({reason:r,scope:"extension",mode:e.mode});let o=hb(e,t);o&&n.push({reason:o,scope:"trust",mode:e.trustMode});let i=gb(e,t);i&&n.push({reason:i,scope:"extension",mode:e.mode});let s=n.find(c=>c.mode==="enforce");if(s)return{allowed:!1,warning:yo("blocked",s.scope,t,s.reason)};let a=n.find(c=>c.mode==="warn");return a?{allowed:!0,warning:yo("violation",a.scope,t,a.reason)}:{allowed:!0,warning:null}}function $l(e,t,n){if(e.mode==="off")return{allowed:!0,warning:null};let r=Pl(e,t,n);return r?{allowed:e.mode==="warn",warning:yo(e.mode==="warn"?"violation":"blocked","capability",t,r,{capability:n.trim().toLowerCase()})}:{allowed:!0,warning:null}}function bb(e,t,n,r,o){let i=typeof r=="string"?Pl(e,t,r):null,s=fb(e,t,n),a=o.command?mb(e,t,o.command):null,c=o.action?pb(e,t,o.action):null,d=o.service?_b(e,t,o.service):null;return i??s??a??c??d}function wb(e,t,n,r){let o={method:ve(e).replace(/\s+/g,"_"),surface:t};return n&&(o.capability=n),r.command&&(o.command=z(r.command)),r.action&&(o.action=ve(r.action).replace(/\s+/g,"-")),r.service&&(o.service=ve(r.service)),o}function jl(e,t,n,r,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=bb(e,t,n,o,s);if(!a)return{allowed:!0,warning:null};let c=yo(e.mode==="warn"?"violation":"blocked","registration",t,a,wb(r,n,o,s));return{allowed:e.mode==="warn",warning:c}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="cd1de600-27e4-522b-842e-1993c12e9f0e")}catch{}})();var Fl=100;function Ll(e,t){let n=e[t];if(n!=null)return typeof n!="string"||n.trim().length===0?null:n.trim()}function vb(e){if(e==null)return;let t=Ue(e);if(!t)return null;let n={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i))){if(r.trim().length===0)return null;let o=t[r];if(typeof o!="string"||o.trim().length===0)return null;n[r.trim()]=o.trim()}return Object.keys(n).length>0?n:void 0}function Fs(e,t){let n=e[t];return typeof n!="string"||n.trim().length===0?null:n.trim()}function zl(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function ht(e){if(e!=null)return typeof e!="boolean"?null:e}function Eb(e){let t=zl(e.priority);return t===void 0?Fl:t}function kb(e){let t=e.sandbox_profile;if(t==null)return;if(typeof t!="string")return null;let n=Wn(t);return n!==t.trim().toLowerCase()?null:n}function zs(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function Sb(e){if(e==null)return;let t=Ue(e);if(!t)return null;let n=zs(t.source),r=zs(t.signature),o=zs(t.attestation),i=t.verified===void 0||t.verified===null?void 0:typeof t.verified=="boolean"?t.verified:null;return i===null?null:{...n?{source:n}:{},...r?{signature:r}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function Ob(e){if(e==null)return;let t=Ue(e);if(!t)return null;let n=ht(t.fs_read),r=ht(t.fs_write),o=ht(t.network),i=ht(t.env_read),s=ht(t.env_write),a=ht(t.process_spawn);return[n,r,o,i,s,a].includes(null)?null:{...typeof n=="boolean"?{fs_read:n}:{},...typeof r=="boolean"?{fs_write:r}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function Ab(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(n=>typeof n!="string"))return null;let t=dl(e);return{capabilities:t.capabilities,legacy_aliases:t.legacy_aliases}}function Ib(e){if(e==null)return;let t=Ue(e);if(!t)return null;let n=t.commands;if(n==null)return;if(!Array.isArray(n)||n.some(o=>typeof o!="string"))return null;let r=[...new Set(n.map(o=>z(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return r.length>0?{commands:r}:void 0}function Tb(e){let t=zl(e.manifest_version);if(t===null)return null;let n=Ll(e,"pm_min_version");if(n===null)return null;let r=Ll(e,"pm_max_version");if(r===null)return null;let o=vb(e.engines);if(o===null)return null;let i=ht(e.trusted);if(i===null)return null;let s=kb(e);if(s===null)return null;let a=Sb(e.provenance);if(a===null)return null;let c=Ob(e.permissions);if(c===null)return null;let d=Ab(e.capabilities);if(d===null)return null;let l=Ib(e.activation);if(l===null)return null;let u=po(e.contributions);return u===null?null:{manifest_version:t,pm_min_version:n,pm_max_version:r,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:c,capabilities:d.capabilities,legacy_capability_aliases:d.legacy_aliases,activation:l,contributions:u}}function Us(e){if(typeof e!="object"||e===null)return null;let t=e,n=Fs(t,"name");if(n===null)return null;let r=Fs(t,"version");if(r===null)return null;let o=Fs(t,"entry");if(o===null)return null;let i=Eb(t);if(i===null)return null;let s=Tb(t);return s===null?null:{name:n,version:r,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}}import Cb from"node:fs/promises";import Gn from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="029e0066-2ef5-5204-92ad-4866321710f4")}catch{}})();async function Ul(e,t){let n=Gn.dirname(t.manifest_path),r=Gn.relative(n,t.entry_path);if(r.startsWith("..")||Gn.isAbsolute(r))throw new Error(`Cannot snapshot extension entry outside its package directory: ${t.entry_path}`);let o=Gn.join(e,`${t.layer}-${t.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await pl("extension_module_graph_snapshot",()=>Cb.cp(n,o,{recursive:!0,force:!0})),Gn.join(o,r)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bf5c3834-b388-507e-a13c-3beb5d096abb")}catch{}})();function Hl(e){let t=typeof e=="function"?e:e.run;if(typeof t!="function")throw new TypeError("registerPreflight override requires a function handler");let n=[...new Set((typeof e=="function"?[]:e.commands??[]).map(r=>{if(typeof r!="string"||r.trim().length===0)throw new TypeError("registerPreflight ownership.commands must contain non-empty command paths");return z(r)}))];return{run:t,...n.length>0?{commands:n}:{}}}function ql(e){let t=[];for(let n=1;n<e.overrides.length;n+=1){let r=e.overrides[n];for(let o of e.overrides.slice(0,n))r.commands?.length&&o.commands?.length&&!o.commands.some(i=>r.commands.includes(i))||t.push(`extension_preflight_override_collision:${r.layer}:${r.name}:${o.layer}:${o.name}`)}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="47d10c23-88f8-5ba1-bcc2-458f339121a8")}catch{}})();var ho=Yt;function Vl(e){let t=e.trim().toLowerCase();return ho.includes(t)?t:null}function Bl(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let n=Math.max(1,Math.floor(t.length*.34));for(let r of ho)if(io(t,r,n)!==null)return r;return null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="355fe619-e6f3-51d9-b88c-0b57267c25be")}catch{}})();function Wl(e){return e==="toon"||e==="json"}function Gl(e){return Wt.includes(e)}function gt(e,t){if(typeof t!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}var Kl=Symbol("extension_registration_trace");function $e(e,t){let n=new TypeError(e);return Object.defineProperty(n,Kl,{value:t,enumerable:!1,configurable:!1,writable:!1}),n}function Yl(e){return e instanceof Error?e[Kl]:void 0}function Kn(e){if(e===null)return null;if(Array.isArray(e))return e.map(t=>Kn(t));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let t=e,n={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i)))n[r]=Kn(t[r]);return n}return e}function Yn(e){if(Array.isArray(e))return e.map(t=>Yn(t));if(typeof e=="object"&&e!==null){let t=e,n={};for(let r of Object.keys(t).sort((o,i)=>o.localeCompare(i)))n[r]=Yn(t[r]);return n}return e}function nn(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Kn(t)}function Xn(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Yn(t)}function Jn(e,t){if(!Array.isArray(t))throw new TypeError(`${e} requires an array of object definitions`);return t.map(n=>nn(e,n))}function re(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function Qn(e,t){if(typeof t!="function")throw new TypeError(`${e} requires a function handler`)}function Hs(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function qs(e,t){return z(`${e} ${t}`)}function Zn(e,t){return Object.defineProperty(e,"runtime_definition",{value:t,enumerable:!1,writable:!1,configurable:!1}),e}var xb=new Set(["low","medium","high"]),Rb=new Set(["number","string_set"]),Nb=new Set(["string","number","boolean"]);function Xl(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function Db(e,t,n){let r=`registerAssuranceMeasurementProvider provider.keys.${t}`,o=K(r,n);if(!Rb.has(String(o.value_type)))throw new TypeError(`${r}.value_type must be number or string_set`);if(B(`${r}.description`,o.description),o.parameters===void 0)return;let i=K(`${r}.parameters`,o.parameters);for(let[s,a]of Object.entries(i)){let c=`${r}.parameters.${s}`;Xl(`${c}.name`,s);let d=K(c,a);if(!Nb.has(String(d.type)))throw new TypeError(`${c}.type must be string, number, or boolean`);ee(`${c}.required`,d.required),B(`${c}.description`,d.description)}if(Object.keys(i).length>50)throw new TypeError(`assurance provider ${e} key ${t} exceeds 50 parameters`)}function Jl(e){let t=K("registerAssuranceMeasurementProvider provider",e),n=Xl("registerAssuranceMeasurementProvider provider.id",t.id);if(!/^[a-z0-9][a-z0-9-]*$/u.test(n))throw new TypeError("registerAssuranceMeasurementProvider provider.id must be a stable lowercase id");if(!xb.has(String(t.cost_class)))throw new TypeError("registerAssuranceMeasurementProvider provider.cost_class must be low, medium, or high");if(typeof t.network!="boolean")throw new TypeError("registerAssuranceMeasurementProvider provider.network must be boolean");let r=K("registerAssuranceMeasurementProvider provider.keys",t.keys);if(Object.keys(r).length===0)throw new TypeError("registerAssuranceMeasurementProvider provider.keys requires at least one key");for(let[o,i]of Object.entries(r)){if(!/^[a-z0-9][a-z0-9-]*$/u.test(o))throw new TypeError(`registerAssuranceMeasurementProvider provider key ${o} must be a stable lowercase id`);Db(n,o,i)}if(t.timeout_ms!==void 0&&(typeof t.timeout_ms!="number"||!Number.isInteger(t.timeout_ms)||t.timeout_ms<1||t.timeout_ms>3e5))throw new TypeError("registerAssuranceMeasurementProvider provider.timeout_ms must be an integer from 1 through 300000");if(typeof t.resolve!="function")throw new TypeError("registerAssuranceMeasurementProvider provider.resolve requires a function handler")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4abca948-e9ba-52b5-b63c-a20fc344980a")}catch{}})();var Pb=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","value_validation","visible"]);function go(e,t){return Jn(e,t).map(n=>(n.repeatable===!0&&(n.list=!0),n))}function Mb(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function Vs(e,t){if(t===void 0)return e.replace(/\s+/g,"-");if(typeof t!="string"||t.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let n=Mb(t);if(n.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return n}function Bs(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let t=[];for(let[r,o]of e.entries()){let i=K(`registerCommand definition.arguments[${r}]`,o),s=re(`registerCommand definition.arguments[${r}].name`,i.name);if(ee(`registerCommand definition.arguments[${r}].required`,i.required),ee(`registerCommand definition.arguments[${r}].variadic`,i.variadic),B(`registerCommand definition.arguments[${r}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${r}].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()),t.push(a)}let n=t.map((r,o)=>r.variadic?o:-1).filter(r=>r>=0);if(n.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(n.length===1&&n[0]!==t.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return t}function bo(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[t,n]of e.entries()){let r=K(`registerFlags flags[${t}]`,n),o=Object.keys(r).filter(c=>!Pb.has(c)).sort((c,d)=>c.localeCompare(d));if(o.length>0)throw new TypeError(`registerFlags flags[${t}] contains unknown field(s): ${o.join(", ")}`);let i=r.long,s=r.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${t}] requires at least one of long or short`);B(`registerFlags flags[${t}].long`,i),B(`registerFlags flags[${t}].short`,s);let a=Kd(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${t}] ${Yd(a.token,a.failure)}`);if(B(`registerFlags flags[${t}].value_name`,r.value_name),B(`registerFlags flags[${t}].description`,r.description),ee(`registerFlags flags[${t}].required`,r.required),ee(`registerFlags flags[${t}].enabled`,r.enabled),ee(`registerFlags flags[${t}].visible`,r.visible),ee(`registerFlags flags[${t}].list`,r.list),ee(`registerFlags flags[${t}].repeatable`,r.repeatable),r.list!==void 0&&r.repeatable!==void 0&&r.list!==r.repeatable)throw new TypeError(`registerFlags flags[${t}].list and repeatable must match when both are provided`);if(El(`registerFlags flags[${t}].default`,r.default),Array.isArray(r.default)&&r.list!==!0&&r.repeatable!==!0)throw new TypeError(`registerFlags flags[${t}].default cannot be an array unless list is true.`);Ql(`registerFlags flags[${t}]`,r),$b(`registerFlags flags[${t}]`,r)}}function $b(e,t){if(t.value_validation===void 0)return;if(t.value_validation!=="coerce"&&t.value_validation!=="strict")throw new TypeError(`${e}.value_validation must be "coerce" or "strict" (received ${JSON.stringify(t.value_validation)}).`);if(t.value_validation!=="strict")return;let n=(typeof t.value_type=="string"?t.value_type:void 0)??(typeof t.type=="string"?t.type:void 0),r=n===void 0?null:oo(n);if(r!=="number"&&r!=="boolean")throw new TypeError(`${e}.value_validation "strict" requires value_type "number" or "boolean" (string values are never malformed).`)}function Ql(e,t){let n=(typeof t.value_type=="string"?t.value_type:void 0)??(typeof t.type=="string"?t.type:void 0);if(n===void 0)return;let r=oo(n);if(r===null)throw new TypeError(`${e} value_type "${n}" is not a known flag value type (expected one of: string, number, boolean).`);if(t.default===void 0)return;let o=t.list===!0||t.repeatable===!0?rl(t.default):[t.default];for(let[i,s]of o.entries())if(!ol(s,r)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${r}.`)}}function Zl(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[t,n]of e.entries()){let r=K(`registerItemFields fields[${t}]`,n);re(`registerItemFields fields[${t}].name`,r.name);let o=re(`registerItemFields fields[${t}].type`,r.type);if(Vl(o)===null){let i=Bl(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${t}].type "${o}" is not a known field type (expected one of: ${ho.join(", ")}).${s}`)}ee(`registerItemFields fields[${t}].optional`,r.optional)}}function jb(e,t){if(t===void 0)return;let n=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(t))throw new TypeError(`${n} must be an array when provided`);for(let[r,o]of t.entries()){let i=`${n}[${r}]`,s=K(i,o);re(`${i}.command`,s.command),re(`${i}.option`,s.option),ee(`${i}.enabled`,s.enabled),ee(`${i}.required`,s.required),ee(`${i}.visible`,s.visible)}}function Lb(e,t){if(t===void 0)return;let n=`registerItemTypes types[${e}].options`;if(!Array.isArray(t))throw new TypeError(`${n} must be an array when provided`);for(let[r,o]of t.entries()){let i=`${n}[${r}]`,s=K(i,o);re(`${i}.key`,s.key),yt(`${i}.values`,s.values),ee(`${i}.required`,s.required),yt(`${i}.aliases`,s.aliases)}}function eu(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[t,n]of e.entries()){let r=`registerItemTypes types[${t}]`,o=K(r,n);re(`${r}.name`,o.name),B(`${r}.folder`,o.folder),yt(`${r}.aliases`,o.aliases),yt(`${r}.required_create_fields`,o.required_create_fields),yt(`${r}.required_create_repeatables`,o.required_create_repeatables),jb(t,o.command_option_policies),Lb(t,o.options)}}function tu(e){let t=K("registerMigration definition",e);if(t.id!==void 0&&typeof t.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(t.description!==void 0&&typeof t.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(t.status!==void 0&&typeof t.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(ee("registerMigration definition.mandatory",t.mandatory),t.run!==void 0&&typeof t.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var nu=["types","statuses","fields","workflows","config","templates","packages"],Fb={types:(e,t)=>{if(t.name!==void 0&&typeof t.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,t)=>{if(typeof t.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(t.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[n,r]of t.allowed_transitions.entries())if(!Array.isArray(r))throw new TypeError(`${e}.allowed_transitions[${n}] must be a [from, to] array`)},templates:(e,t)=>{if(typeof t.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof t.options!="object"||t.options===null||Array.isArray(t.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,t)=>{if(typeof t.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function ru(e){let t=K("registerProfile profile",e);if(re("registerProfile profile.name",t.name),re("registerProfile profile.title",t.title),t.summary!==void 0&&typeof t.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let n of nu){let r=t[n];if(r!==void 0){if(!Array.isArray(r))throw new TypeError(`registerProfile profile.${n} must be an array when provided`);for(let[o,i]of r.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${n}[${o}] must be an object`);Fb[n]?.(`registerProfile profile.${n}[${o}]`,i)}}}}function ou(e){e.summary===void 0&&(e.summary="");for(let t of nu)e[t]===void 0&&(e[t]=[]);return e}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="45ff820c-32af-5bdb-a570-3059684129ce")}catch{}})();function iu(e){if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError("registerService ownership must be an object");if(Reflect.ownKeys(e).some(t=>t!=="passThrough"))throw new TypeError("registerService ownership supports only passThrough");if(e.passThrough!==void 0&&typeof e.passThrough!="boolean")throw new TypeError("registerService ownership.passThrough must be a boolean when provided");return e.passThrough===!0}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b5de5028-f981-599b-8d11-0fc7b07beda4")}catch{}})();function su(e){return typeof e=="string"?e:String(e)}function er(e){let t=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(t)?t.split(/[.-]/).map(n=>Number(n)):null}function Ws(e,t){let n=er(e),r=er(t);if(!n||!r)return null;let o=Math.max(n.length,r.length);for(let i=0;i<o;i+=1){let s=n[i]??0,a=r[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function au(e,t){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:t};let n=su(e);if(typeof e!="string"||n.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:n,current:t};if(!er(n))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:n,current:t};if(t===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:n,current:null};let r=Ws(t,n);return r===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:n,current:t}:r<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:n,current:t}:{kind:"pm_min_version",status:"ok",allowed:!0,required:n,current:t}}function cu(e,t,n){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:t};let r=su(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:r,current:t};if(/^[<>=~^]/.test(r.trim())||!er(r))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:r,current:t};if(t===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:r,current:null};let o=Ws(t,r);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:r,current:t}:o>0?n==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:r,current:t}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:r,current:t}:{kind:"pm_max_version",status:"ok",allowed:!0,required:r,current:t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3abe36f7-3c97-58d2-a56d-b4e0ea958461")}catch{}})();var du=null,Ub=Object.freeze(md()),lu=0;function Hb(e=Date.now()){return lu+=1,`${lu}-${e}`}function qb(e,t,n){return n.has(e)?!1:t.size===0?!0:t.has(e)}async function Vb(e,t){let[n,r]=await Promise.all([wt.realpath(e),wt.realpath(t)]);return Fn(n,r)}function Bb(e,t=process.cwd()){return{global:bt.join(Hd(t),"extensions"),project:bt.join(e,"extensions")}}async function Wb(e){try{return(await wt.readdir(e,{withFileTypes:!0})).filter(t=>t.isDirectory()).map(t=>t.name).sort((t,n)=>t.localeCompare(n))}catch{return[]}}function Gb(e){let t={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&&(t.source_package=e.source_package),e.source_aliases&&(t.source_aliases=[...e.source_aliases]),t}function uu(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function Kb(e){let t=new Map;try{let n=JSON.parse(await wt.readFile(bt.join(e,".managed-extensions.json"),"utf8")),r=Ue(n)?.entries;if(!Array.isArray(r))return t;for(let o of r){if(typeof o!="object"||o===null)continue;let i=o,s=uu(i.source?.package),a=[i.source?.input,i.source?.name,s].map(l=>uu(l)).filter(l=>l!==void 0),c=po(i.contributions),d={aliases:[...new Set(a)],...s?{package_name:s}:{},...c?{contributions:c}:{}};typeof i.directory=="string"&&i.directory.trim().length>0&&t.set(`directory:${i.directory.trim()}`,d),typeof i.name=="string"&&i.name.trim().length>0&&t.set(`name:${i.name.trim()}`,d)}}catch{return t}return t}function fu(e){return[...e].sort((t,n)=>{if(t.manifest.priority!==n.manifest.priority)return t.manifest.priority-n.manifest.priority;let r=t.manifest.name.localeCompare(n.manifest.name);return r!==0?r:t.directory.localeCompare(n.directory)})}function Yb(e,t){let n=[...fu(e),...fu(t)],r=[];for(let o of n){let i=r.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&r.splice(i,1),r.push(o)}return r}async function mu(e,t,n,r,o){let i=[],s=[],a=[],c=await Wb(t),d=await Kb(t);for(let l of c){let u=await Qb(e,t,l,n,r,d,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function Xb(){return{diagnostics:[],warnings:[],candidates:[]}}function pu(e,t,n,r){return{diagnostic:{layer:e,directory:t,manifest_path:n,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[r],candidate:null}}function Jb(e,t,n,r,o,i,s,a){let c=fl(e,t,n);Array.isArray(t.legacy_capability_aliases)&&t.legacy_capability_aliases.length>0&&c.push(ul(e,t.name,t.legacy_capability_aliases));for(let d of cl(t.capabilities))c.push(ll(e,t.name,d));return r?o||c.push(`extension_entry_missing:${e}:${t.name}`):c.push(`extension_entry_outside_extension:${e}:${t.name}`),i.warning&&c.push(a?i.warning:i.warning.replace("extension_pm_","extension_disabled_pm_")),s.warning&&c.push(a?s.warning:s.warning.replace("extension_pm_","extension_disabled_pm_")),c}async function Qb(e,t,n,r,o,i,s){let a=bt.join(t,n),c=bt.join(a,"manifest.json");if(!await ut(c))return pu(e,n,c,`extension_manifest_missing:${e}:${n}`);let d,l;try{let ce=JSON.parse(await wt.readFile(c,"utf8"));l=Ue(ce),d=Us(ce)}catch{l=null,d=null}if(!d||!l)return pu(e,n,c,`extension_manifest_invalid:${e}:${n}`);let u=bt.resolve(a,d.entry),f=Fn(a,u),m=f?await ut(u):!1,_=f&&m?await Vb(a,u):f,y=qb(d.name,r,o),w=await tw(e,d),v=await nw(e,d,s),I=Jb(e,d,l,_,m,w,v,y),H=_&&m&&w.allowed&&v.allowed,X=i.get(`directory:${n}`)??i.get(`name:${d.name}`);return{diagnostic:{layer:e,directory:n,manifest_path:c,name:d.name,version:d.version,entry:d.entry,priority:d.priority,entry_path:u,enabled:y,status:H?"ok":"warn"},warnings:I,candidate:Al({layer:e,directory:n,manifestPath:c,entryPath:u,manifest:d,sourceIdentity:X,extensionReady:H,enabledForLoad:y})}}async function Zb(e){let t=Bb(e.pmRoot,e.cwd??process.cwd()),n=Hn(e.settings.extensions.enabled),r=Hn(e.settings.extensions.disabled),o=Rl(e.settings),i=Nl(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:t,configured_enabled:n,configured_disabled:r,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(n),a=new Set(r),c=e.ignoreGlobalExtensions===!0?Xb():await mu("global",t.global,s,a,o.pmMaxVersionExceededMode.global),d=await mu("project",t.project,s,a,o.pmMaxVersionExceededMode.project),l=[...o.warnings],u=Yb(c.candidates,d.candidates),f=[];for(let m of u){let _={layer:m.layer,name:m.manifest.name,trusted:m.manifest.trusted===!0,provenanceVerified:m.manifest.provenance?.verified===!0,sandboxProfile:m.manifest.sandbox_profile,permissions:m.manifest.permissions&&typeof m.manifest.permissions=="object"?{fs_read:m.manifest.permissions.fs_read,fs_write:m.manifest.permissions.fs_write,network:m.manifest.permissions.network,env_read:m.manifest.permissions.env_read,env_write:m.manifest.permissions.env_write,process_spawn:m.manifest.permissions.process_spawn}:void 0},y=Ml(o,_);if(y.warning&&l.push(y.warning),!!y.allowed){for(let w of m.manifest.capabilities){let v=$l(o,_,w);v.warning&&l.push(v.warning)}f.push(Gb(m))}}return{disabled_by_flag:!1,roots:t,configured_enabled:n,configured_disabled:r,discovered:[...c.diagnostics,...d.diagnostics],effective:f,warnings:[...new Set([...c.warnings,...d.warnings,...l])],policy:i}}function wo(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function ew(){try{let e=uo(import.meta.url,["../../.."]),t=await wt.readFile(bt.join(e,"package.json"),"utf8"),n=JSON.parse(t);return typeof n.version=="string"&&n.version.trim().length>0?n.version.trim():null}catch{return null}}function hu(){return du??=ew(),du}function gu(e,t,n){let r=n.current??"unknown";if(n.kind==="pm_min_version")switch(n.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${t.name}:required=${n.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${t.name}:required=${n.required}:current=${r}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${t.name}:required=${n.required}:current=${r}`;default:return}switch(n.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${t.name}:allowed=${n.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${t.name}:allowed=${n.required}:current=${r}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${t.name}:allowed=${n.required}:current=${r}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${t.name}:allowed=${n.required}:current=${r}`;default:return}}async function tw(e,t){if(t.pm_min_version===void 0)return{allowed:!0};let n=au(t.pm_min_version,await hu()),r=gu(e,t,n);return r?{allowed:n.allowed,warning:r}:{allowed:n.allowed}}async function nw(e,t,n){if(t.pm_max_version===void 0)return{allowed:!0};let r=cu(t.pm_max_version,await hu(),n),o=gu(e,t,r);return o?{allowed:r.allowed,warning:o}:{allowed:r.allowed}}async function _u(e){try{let t=await wt.stat(e);return`${Math.trunc(t.mtimeMs)}-${t.size}`}catch{return"missing"}}async function rw(e,t){let n=e.entry_path;t.module_graph_snapshot_root&&(n=await Ul(t.module_graph_snapshot_root,e));let r=new URL(zb(n).href);if(!(t.cache_bust===!0||typeof t.reload_token=="string"))return r.href;let[o,i]=await Promise.all([_u(e.entry_path),_u(e.manifest_path)]),s=t.reload_token??Hb();return r.searchParams.set("pm_ext_reload",s),r.searchParams.set("pm_ext_entry",o),r.searchParams.set("pm_ext_manifest",i),r.href}async function VN(e){let t=await Zb(e),n=[],r=[],o=[...t.warnings];if(t.disabled_by_flag)return{...t,warnings:o,loaded:n,failed:r};let i=typeof e.extensionFilter=="function"?t.effective.filter(e.extensionFilter):t.effective;for(let s of i)try{let a=await import(await rw(s,e));n.push({...s,module:a})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),r.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:wo(a)})}return{...t,warnings:o,loaded:n,failed:r}}var yu=5e3,ow=2147483647;function iw(e){let t={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let n=e.deactivate;t.deactivate=n.bind(e)}return t}function bu(e){let t=Qd(e);return t?iw(t):null}async function BN(e,t,n={}){let r=sw(n?.deactivate_timeout_ms),o=new Set((t?.failed??[]).map(l=>`${l.layer}:${l.name}`)),i=[];for(let l of e.loaded){if(o.has(`${l.layer}:${l.name}`))continue;let u=bu(l.module);!u||typeof u.deactivate!="function"||i.push({extension:l,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:l,deactivate:u})=>{try{return await aw(u,r),{ok:!0}}catch(f){return{ok:!1,layer:l.layer,name:l.name,error:wo(f)}}})),a=[],c=[],d=0;for(let l of s){if(l.ok){d+=1;continue}a.push(`extension_deactivate_failed:${l.layer}:${l.name}`),c.push({layer:l.layer,name:l.name,error:l.error})}return{deactivated:d,warnings:a,failed:c}}function sw(e){return typeof e!="number"||e<0?yu:e===0||e===1/0?0:Number.isFinite(e)?Math.min(ow,Math.max(1,Math.floor(e))):yu}async function aw(e,t){if(t===0){await e();return}let n;try{let r=Promise.resolve().then(()=>e());r.catch(()=>{}),await Promise.race([r,new Promise((o,i)=>{n=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${t}ms`))},t),n.unref?.()})])}finally{clearTimeout(n)}}function cw(e){if(!Array.isArray(e.capabilities))return null;let t=new Set;for(let n of e.capabilities){let r=n.trim().toLowerCase();He(r)&&t.add(r)}return t}function q(e,t,n){let r=cw(e);if(r!==null&&!r.has(t))throw $e(`${n} requires capability '${t}' in extension manifest capabilities`,{method:n,registration_index:-1,capability:t,missing_capability:t,expected_schema:`"capabilities": [..., "${t}"]`,received:e.capabilities,hint:`Add "${t}" to ${e.name} manifest capabilities, or remove the ${n} registration call.`})}function dw(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(t=>Ne.includes(t))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function lw(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 Gs=class{extension;hooks;#e;#n;#o;#r;#s;#a;#i;#c;#t;#d;#l;#u;constructor(t,n,r,o,i,s,a,c,d,l,u){this.#e=t,this.extension=dw(t),this.#n=lw(t),this.#o=n,this.#r=r,this.#s=o,this.#a=i,this.#i=s,this.#c=a,this.#t=c,this.#d=d,this.#l=l,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.registerAssuranceMeasurementProvider=this.registerAssuranceMeasurementProvider.bind(this),this.hooks={beforeCommand:f=>this.registerBeforeCommand(f),beforeMutation:f=>this.registerBeforeMutation(f),afterCommand:f=>this.registerAfterCommand(f),onWrite:f=>this.registerOnWrite(f),onRead:f=>this.registerOnRead(f),onIndex:f=>this.registerOnIndex(f)}}allowRegistration(t,n,r,o){let i=jl(this.#u,this.#n,t,n,r,o);return i.warning&&this.#d.push(i.warning),i.allowed}registerCommandTrace(t,n,r,o,i){return{method:"registerCommand",registration_index:t==="override"?this.#r.overrides.length:this.#r.handlers.length,command:n,expected_schema:r,received:Kn(o),hint:i}}registerCommandOverride(t,n){let r=z(t);if(r.length===0)throw $e("registerCommand requires a non-empty command name",this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',t,"Provide a non-empty command path as the first argument."));if(typeof n!="function"){let o=this.registerCommandTrace("override",r,'registerCommand("<command>", (context) => unknown)',n,"Provide a function as the second registerCommand argument.");throw $e(`registerCommand requires an override function when command name is provided (command="${r}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:r})&&this.#r.overrides.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}resolveCommandDefinitionRunHandler(t,n){let r=typeof t.run=="function"?t.run:void 0,o=typeof t.handler=="function"?t.handler:void 0;return!r&&o&&this.#d.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${n}`),r??o}registerCommandDefinition(t){if(typeof t!="object"||t===null)throw $e("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof t.name!="string")throw $e("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,"Set command definition.name to a non-empty string command path."));let n=z(t.name);if(n.length===0)throw $e("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",t.name,"{ name: string; run: (context) => unknown; }",t,"Ensure command definition.name contains a non-empty command path."));let r=this.resolveCommandDefinitionRunHandler(t,n);if(typeof r!="function"){let o=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; }",r,"Define command definition.run as a function.");throw $e(`registerCommand requires a command definition run handler (command="${n}", registration_index=${o.registration_index})`,o)}try{kl(t);let o=Vs(n,t.action),i=Sl(t.read_output,n,o);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:n,action:o}))return;let s=t.description?.trim(),a=t.intent?.trim(),c=Bn("registerCommand definition.examples",t.examples),d=Bn("registerCommand definition.failure_hints",t.failure_hints),l=Bs(t.arguments);t.flags!==void 0&&(q(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(bo(t.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:go("registerCommand definition.flags",t.flags)})));let u={source_version:this.#e.version,read_output:i,layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:o,examples:c,failure_hints:d,arguments:l,tier:t.tier??"standard",family:t.family??"extensions"};s&&(u.description=s),a&&(u.intent=a),this.#t.commands.push(u)}catch(o){let i=wo(o),s=this.registerCommandTrace("definition",n,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",t,i),a=$e(`registerCommand definition metadata invalid (command="${n}", registration_index=${s.registration_index}): ${i}`,s);this.#d.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${n}`),this.#l.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:n,run:r})}registerCommand(t,n){if(q(this.#e,"commands","registerCommand"),typeof t=="string"){this.registerCommandOverride(t,n);return}this.registerCommandDefinition(t)}registerParser(t,n){if(q(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let r=z(re("registerParser command",t));Qn("registerParser override",n),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}registerPreflight(t){if(q(this.#e,"preflight","registerPreflight"),!this.allowRegistration("preflight.override","registerPreflight","preflight"))return;let n=Hl(t);this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,...n})}registerService(t,n,r={}){q(this.#e,"services","registerService");let o=String(t).trim().toLowerCase();if(!Gl(o))throw new TypeError(`registerService service must be one of: ${Wt.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:o})&&(Qn("registerService override",n),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:o,run:n,...iu(r)?{passThrough:!0}:{}}))}registerRenderer(t,n,r={}){if(q(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof n!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(t).trim().toLowerCase();if(!Wl(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(t)}`);if(r.resultDiscriminator!==void 0&&typeof r.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((r.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return z(s)}))];this.#c.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:n,commands:i,...r.resultDiscriminator?{resultDiscriminator:r.resultDiscriminator}:{}})}registerFlags(t,n){if(q(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let r=z(re("registerFlags targetCommand",t));bo(n);let o=go("registerFlags flags",n);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:o})}registerItemFields(t){if(q(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;Zl(t);let n=Jn("registerItemFields fields",t);if(n.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#t.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:n})}registerItemTypes(t){if(q(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;eu(t);let n=Jn("registerItemTypes types",t);if(n.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#t.item_types.push({layer:this.#e.layer,name:this.#e.name,types:n})}registerRelationshipKinds(t){if(q(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(t))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(t.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let n=ys();for(let o of this.#t.relationship_kinds)for(let i of o.definitions)n.register(i);let r=t.map(o=>(n.register(o),n.require(o.kind)));this.#t.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:r})}registerMigration(t){if(q(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;tu(t);let n=Xn("registerMigration definition",t);this.#t.migrations.push(Zn({layer:this.#e.layer,name:this.#e.name,definition:nn("registerMigration definition",t)},n))}registerProfile(t){if(q(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let n=Yn(t);ru(n),this.#t.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:ou(n)})}registerImportExportCommandFlags(t,n,r){r.flags!==void 0&&(q(this.#e,"schema",`${t} options.flags`),this.allowRegistration("schema.flags",`${t} options.flags`,"schema")&&(bo(r.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:go(`${t} options.flags`,r.flags)})))}applyImportExportCommandMetadata(t,n,r){if(r!==void 0&&(typeof r!="object"||r===null||Array.isArray(r)))throw new TypeError(`${t} options must be an object when provided`);let o=`${t==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...r,description:r?.description??o,arguments:r?.arguments??i},a=Ol(t,s,r?.description!==void 0);B(`${t} options.action`,s.action),B(`${t} options.description`,s.description),B(`${t} options.intent`,s.intent);let c=Vs(n,s.action),d=Bn(`${t} options.examples`,s.examples),l=Bn(`${t} options.failure_hints`,s.failure_hints),u=Bs(s.arguments);this.registerImportExportCommandFlags(t,n,s);let f={source_version:this.#e.version,layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:n,action:c,examples:d,failure_hints:l,arguments:u},m=s.description?.trim();m&&(f.description=m);let _=s.intent?.trim();return _&&(f.intent=_),this.#t.commands.push(f),a}registerImporter(t,n,r){if(q(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=Hs(re("registerImporter name",t));Qn("registerImporter importer",n);let i=qs(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,r),this.#t.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>n(js(s,o,"import"))})}registerExporter(t,n,r){if(q(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=Hs(re("registerExporter name",t));Qn("registerExporter exporter",n);let i=qs(o,"export"),s=this.applyImportExportCommandMetadata("registerExporter",i,r);this.#t.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o,...s===void 0?{}:{output:s}}),this.#r.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async a=>{let c=await n(js(a,o,"export"));return s?.receipt==="suppress"&&!lo(c)?sl(c):c}})}registerSearchProvider(t){if(q(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let n=Xn("registerSearchProvider provider",t);this.#t.search_providers.push(Zn({layer:this.#e.layer,name:this.#e.name,definition:nn("registerSearchProvider provider",t)},n))}registerVectorStoreAdapter(t){if(q(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let n=Xn("registerVectorStoreAdapter adapter",t);this.#t.vector_store_adapters.push(Zn({layer:this.#e.layer,name:this.#e.name,definition:nn("registerVectorStoreAdapter adapter",t)},n))}registerAssuranceMeasurementProvider(t){if(q(this.#e,"services","registerAssuranceMeasurementProvider"),!this.allowRegistration("services.assuranceprovider","registerAssuranceMeasurementProvider","services"))return;if(Jl(t),t.network&&this.#e.permissions?.network!==!0)throw new TypeError("registerAssuranceMeasurementProvider network provider requires permissions.network=true");let n=Xn("registerAssuranceMeasurementProvider provider",t);this.#t.assurance_providers.push(Zn({layer:this.#e.layer,name:this.#e.name,network_permission:this.#e.permissions?.network===!0,definition:nn("registerAssuranceMeasurementProvider provider",t)},n))}registerBeforeCommand(t){q(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(gt("beforeCommand",t),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerBeforeMutation(t){q(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(gt("beforeMutation",t),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerAfterCommand(t){q(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(gt("afterCommand",t),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnWrite(t){q(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(gt("onWrite",t),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnRead(t){q(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(gt("onRead",t),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnIndex(t){q(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(gt("onIndex",t),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:t}))}};function uw(e,t,n,r,o,i,s,a,c,d,l){return new Gs(e,t,n,r,o,i,s,a,c,d,l)}function fw(e){let t=e.commands.length,n=e.flags.reduce((s,a)=>s+a.flags.length,0),r=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:t,flags:n,item_fields:r,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,...(e.assurance_providers?.length??0)>0?{assurance_providers:e.assurance_providers.length}:{}}}function mw(e){let t=[],n=(i,s)=>{let a=new Map;for(let c of i){let d=a.get(c.command)??[];d.push(c),a.set(c.command,d)}for(let c of[...a.keys()].sort((d,l)=>d.localeCompare(l))){let d=a.get(c);if(d.length<=1)continue;let l=d[d.length-1];for(let u of d.slice(0,-1))t.push(`${s}:${c}:${l.layer}:${l.name}:${u.layer}:${u.name}`)}};n(e.handlers,"extension_command_handler_collision"),n(e.overrides,"extension_command_override_collision");let r=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>r.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(c=>c.command===i),a=e.overrides.filter(c=>c.command===i);for(let c of a)for(let d of s)t.push(`extension_command_override_handler_overlap:${i}:${c.layer}:${c.name}:${d.layer}:${d.name}`)}return t}function pw(e){let t=new Map;for(let r of e.overrides){let o=t.get(r.format)??[];o.push(r),t.set(r.format,o)}let n=[];for(let r of[...t.keys()].sort((o,i)=>o.localeCompare(i))){let o=t.get(r);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))||n.push(`extension_renderer_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}function _w(e){let t=[],n=new Map;for(let r of e.overrides){let o=n.get(r.command)??[];o.push(r),n.set(r.command,o)}for(let r of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(r);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_parser_override_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}var yw=new Set(["output_format"]);function hw(e){let t=[],n=new Map;for(let r of e.overrides){let o=n.get(r.service)??[];o.push(r),n.set(r.service,o)}for(let r of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(r);if(o.length<=1||yw.has(r))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_service_override_collision:${r}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}async function WN(e){let t=Dl(e.policy??Ub),n=qn(),r=bs(),o=ws(),i=vs(),s=Es(),a=ks(),c=Ss(),d=[],l=[];for(let m of e.loaded){let _=bu(m.module);if(!_)continue;let y=d.length,w=vl({hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c});try{await _.activate(uw(m,n,r,o,i,s,a,c,l,d,t)),d.length>y&&(w(),l.push(`extension_activation_rolled_back:${m.layer}:${m.name}`))}catch(v){w(),l.push(`extension_activate_failed:${m.layer}:${m.name}`);let I=Yl(v);d.push({layer:m.layer,name:m.name,entry_path:m.entry_path,error:wo(v),trace:I})}}let u=[...mw(r),..._w(o),...ql(i),...hw(s),...pw(a)],f=[...new Set([...l,...u])];return{hooks:n,commands:r,parsers:o,preflight:i,services:s,renderers:a,registrations:c,failed:d,warnings:f,hook_counts:{before_command:n.beforeCommand.length,before_mutation:n.beforeMutation.length,after_command:n.afterCommand.length,on_write:n.onWrite.length,on_read:n.onRead.length,on_index:n.onIndex.length},command_override_count:r.overrides.length,command_handler_count:r.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:fw(c)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b1a38f8c-8f65-59e2-bddf-ed0606a0f0b5")}catch{}})();function XN(e){return{...e,hooks:qn(),profileEnabled:!!e.globalOptions.profile,migrationBlockers:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4da25248-2914-5bc5-aa42-87f677ef4ea8")}catch{}})();function QN(){let e=Promise.resolve(),t=new Set;return{async read(n){let r=e,o,i=new Promise(s=>{o=s});t.add(i),await r;try{return await n()}finally{t.delete(i),o()}},write(n){let r=Promise.all([e,...t]).then(()=>n());return e=r.then(()=>{},()=>{}),r}}}function gw(){let e=Promise.resolve(),t=0,n=[],r=()=>{if(t!==0)return;let o=n.splice(0);for(let i of o)i()};return{enqueue(o){t++;let i=e.then(()=>o());return e=i.then(()=>{},()=>{}).finally(()=>{t--,r()}),i},idle(){return t===0?Promise.resolve():new Promise(o=>n.push(o))}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d8844150-afb4-5f2e-a005-4cfb8482660c")}catch{}})();var bw={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","registerAssuranceMeasurementProvider"]},wu=":";function vu(e,t){return`${e}${wu}${Ks(t)}`}function ww(e){return e.slice(e.indexOf(wu)+1)}function Ks(e){return e.trim().toLowerCase()}function vw(e){if(!Array.isArray(e))return[];let t=new Set;for(let n of e){let r=al(n);r!==null&&t.add(r)}return[...t].sort((n,r)=>n.localeCompare(r))}function Eu(e){let t=new Map,n=(l,u)=>{for(let f of l){let m=vu(f.layer,f.name),_=t.get(m);_===void 0&&(_=new Set,t.set(m,_)),_.add(u)}},{registrations:r,commands:o,parsers:i,preflight:s,services:a,renderers:c,hooks:d}=e;return n(r.commands,"commands"),n(o.overrides,"commands"),n(o.handlers,"commands"),n(r.flags,"schema"),n(r.item_fields,"schema"),n(r.item_types,"schema"),n(r.relationship_kinds??[],"schema"),n(r.migrations,"schema"),n(r.profiles,"schema"),n(r.importers,"importers"),n(r.exporters,"importers"),n(r.search_providers,"search"),n(r.vector_store_adapters,"search"),n(i.overrides,"parser"),n(s.overrides,"preflight"),n(a.overrides,"services"),n(r.assurance_providers??[],"services"),n(c.overrides,"renderers"),n(d.beforeCommand,"hooks"),n(d.beforeMutation,"hooks"),n(d.afterCommand,"hooks"),n(d.onWrite,"hooks"),n(d.onRead,"hooks"),n(d.onIndex,"hooks"),t}function Ew(e,t={}){let n=Eu(e),r=new Set;t.extensionName!==void 0&&r.add(Ks(t.extensionName));for(let i of t.extensionNames??[])r.add(Ks(i));let o=new Set;for(let[i,s]of n)if(!(r.size>0&&!r.has(ww(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function kw(e,t){let n=Eu(t),r=[];for(let o of e){let i=vw(o.capabilities);if(i.length===0)continue;let s=n.get(vu(o.layer,o.name))??new Set,a=[...s].sort((d,l)=>d.localeCompare(l)),c=i.filter(d=>!s.has(d));r.push({layer:o.layer,name:o.name,declared:i,used:a,unused:c})}return r}import{existsSync as Sw}from"node:fs";import{AsyncLocalStorage as Ow}from"node:async_hooks";import je from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7c2e7a35-cbf9-5bb6-abfd-f1ae75c6afc2")}catch{}})();var Le=null,rn=null,tr=null,nr=null,on=null,rr=null,or=null,Be=null,Eo,vo=[],Su=new Ow;function M(){return Su.getStore()}function sD(e){return Su.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var Aw=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function ku(e){let t=je.resolve(e);for(;;){if(Sw(je.join(t,".git")))return t;let n=je.dirname(t);if(n===t)return;t=n}}function ko(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),n=ku(t)??je.resolve(t),r=ku(n);if(!e)return{source_workspace_root:n,...r?{repo_root:r}:{}};let o=je.relative(n,je.resolve(e)),i=o.length>0&&!o.startsWith(`..${je.sep}`)&&o!==".."&&!je.isAbsolute(o);return{source_workspace_root:n,...r?{repo_root:r}:{},...i?{pm_root_rel:o.split(je.sep).join("/")}:{}}}function aD(e){let t=M();if(t){t.hooks=e;return}Le=e}function cD(e){let t=M();if(t){t.commands=e;return}rn=e}function dD(e){let t=M();if(t){t.parsers=e;return}tr=e}function lD(e){let t=M();if(t){t.preflight=e;return}nr=e}function uD(e){let t=M();if(t){t.services=e;return}on=e}function fD(e){let t=M();if(t){t.renderers=e;return}rr=e}function mD(e){let t=M();if(t){t.registrations=e;return}or=e}function Ou(){let e=M();return e?e.registrations:or}function pD(){let e=M();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=null,e.affectedItems=[];return}Le=null,rn=null,tr=null,nr=null,on=null,rr=null,or=null,Be=null,Eo=null}function _D(e){let t=e?{...e,...ko(e.pm_root)}:null,n=M();if(n){n.commandContext=t;return}Be=t}function Au(){let e=M(),t=e?e.commandContext:Be;return t?{...t,args:[...t.args],options:t.options?{...t.options}:{},global:t.global?{...t.global}:void 0}:null}function yD(e){let t=M()??{commandContext:Be,hooks:Le,commands:rn,parsers:tr,preflight:nr,services:on,renderers:rr,registrations:or};return t.commandContext?.command!==e||[t.hooks,t.preflight,t.services,t.renderers].some(n=>Object.values(n??{}).some(r=>r.length>0))||[t.commands,t.parsers].some(n=>Object.values(n??{}).some(r=>r.some(o=>o.command===e)))?!1:!Object.entries(t.registrations??{}).some(([n,r])=>["migrations","search_providers","vector_store_adapters","assurance_providers"].includes(n)&&r.length>0)}function So(e){let t=M();if(t){t.commandResult=e;return}Eo=e}function hD(){let e=M();return e?e.commandResult:Eo}function gD(e){if(!e)return;let t=M();t?t.affectedItems.push(e):vo.push(e)}function bD(e,t){if(!e||!e.id)return{};let n={id:e.id,type:e.type,status:e.status};if(!Array.isArray(t))return n;let r=e;for(let o of t){if(typeof o!="string")continue;let i=o.startsWith("unset:")?o.slice(6):o;i==="id"||i==="type"||i==="status"||Aw.has(i)||Object.hasOwn(r,i)&&r[i]!==void 0&&(n[i]=r[i])}return n}function wD(){let e=M(),t=e?.affectedItems??vo;if(t.length===0)return;let n=t;return e?e.affectedItems=[]:vo=[],n}function vD(){let e=M();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=void 0,e.affectedItems=[];return}Le=null,rn=null,tr=null,nr=null,on=null,rr=null,or=null,Be=null,Eo=void 0,vo=[]}async function Oo(e){let t=M(),n=t?t.hooks:Le;return n?As(n,e):[]}async function ED(e){let t=M(),n=t?t.hooks:Le;n&&await Os(n,e)}async function sn(e){let t=M(),n=t?t.hooks:Le;return n?Is(n,e):[]}function kD(){let e=M();return((e?e.hooks:Le)?.onRead?.length??0)>0}async function SD(e){let t=M(),n=t?t.hooks:Le;return n?Ts(n,e):[]}function Iu(e){let t=M(),n=t?t.commands:rn,r=t?t.commandContext:Be;return!n||!r?{overridden:!1,result:e,warnings:[]}:Ps(n,{command:r.command,args:[...r.args],options:r.options?{...r.options}:{},global:r.global?{...r.global}:void 0,pm_root:r.pm_root,source_workspace_root:r.source_workspace_root,repo_root:r.repo_root,pm_root_rel:r.pm_root_rel,result:e})}async function OD(e){let t=M(),n=t?t.commands:rn;return n?Cs(n,{...e,...ko(e.pm_root)}):{handled:!1,result:null,warnings:[]}}async function AD(e){let t=M(),n=t?t.parsers:tr;return n?xs(n,{...e,...ko(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},warnings:[]}}async function ID(e){let t=M(),n=t?t.preflight:nr;return n?Rs(n,{...e,...ko(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},decision:{...e.decision},warnings:[]}}function Tu(e,t){let n=M(),r=n?n.renderers:rr,o=n?n.commandContext:Be;return r?Ms(r,{format:e,command:o?.command,args:o?[...o.args]:[],options:o?.options?{...o.options}:{},global:o?.global?{...o.global}:void 0,pm_root:o?.pm_root,source_workspace_root:o?.source_workspace_root,repo_root:o?.repo_root,pm_root_rel:o?.pm_root_rel,result:t}):{overridden:!1,rendered:null,warnings:[]}}function Cu(e,t){let n=M(),r=n?n.commandContext:Be;return{service:e,command:r?.command,args:r?[...r.args]:[],options:r?.options?{...r.options}:{},global:r?.global?{...r.global}:void 0,pm_root:r?.pm_root,source_workspace_root:r?.source_workspace_root,repo_root:r?.repo_root,pm_root_rel:r?.pm_root_rel,payload:t}}async function an(e,t){let n=M(),r=n?n.services:on;return r?Ds(r,Cu(e,t)):{handled:!1,result:t,warnings:[]}}function Ys(e,t){let n=M(),r=n?n.services:on;return r?Ns(r,Cu(e,t)):{handled:!1,result:t,warnings:[]}}import{createHash as Iw}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ca5b60a5-80a7-5e7d-917f-4c7649bcbab6")}catch{}})();var PD=["sha256","sha512"],Tw="sha256",xu="sha256";function vt(e){if(e===void 0)return Tw;if(e==="sha256"||e==="sha512")return e;throw new TypeError(`unsupported_history_hash_algorithm:${String(e)}`)}function We(e,t){return Iw(vt(t)).update(e,"utf8").digest("hex")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3bfeb8d2-52c2-587a-9611-c4d5817cb47e")}catch{}})();function Ru(e){let t=[],n=e[0]?.op==="history_compact_baseline",r=n?1:void 0,o=!1;for(let[i,s]of e.entries())s.op==="delete"&&(o=!0),s.op==="create"&&(r!==void 0&&t.push({prior_genesis_index:r,repeated_create_index:i+1,sequence:o?"delete_then_create":n?"checkpoint_then_create":"multiple_creates"}),r??=i+1,o=!1);return t}import Du from"node:path";import{link as Cw,mkdir as xw,mkdtemp as Rw,rm as Nw,writeFile as Dw}from"node:fs/promises";import Xs from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="71c2fed9-81e1-5723-8e34-e6327c07a130")}catch{}})();async function Nu(e,t){let n=Xs.dirname(e);await xw(n,{recursive:!0});let r=await Rw(Xs.join(n,".pm-seed-")),o=Xs.join(r,"value");try{await Dw(o,t,"utf8");try{return await Cw(o,e),!0}catch(i){if(i.code==="EEXIST")return!1;throw i}}finally{await Nw(r,{recursive:!0,force:!0})}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2075887b-6d4b-582f-9da2-bab13198f9a5")}catch{}})();var Pw=2e3,Ao=new Map;function Ge(e){if(typeof e!="string")return"";let t=Ao.get(e);if(t!==void 0)return t;let n=e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_");return Ao.size>=Pw&&no(Ao),Ao.set(e,n),n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6e07b1b6-1757-54dd-8833-9d3f984ccf79")}catch{}})();var oe=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),$u=_d,Qs=pd,Mw=["create","update"],$w=new Set(Wr),jw=new Set(Yt),Lw=new Set(Gr),Fw=new Set(Kr),zw=new Set(["string","number","boolean","array","object"]),Uw=16;function ju(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Hw=[e=>e.type===void 0||typeof e.type=="string"&&zw.has(e.type),e=>!Object.hasOwn(e,"const")||To(e.const),e=>e.enum===void 0||Array.isArray(e.enum)&&e.enum.every(t=>To(t)),e=>e.min_length===void 0||Number.isInteger(e.min_length)&&e.min_length>=0,e=>e.min_items===void 0||Number.isInteger(e.min_items)&&e.min_items>=0,e=>e.format===void 0||e.format==="date-time",e=>e.required===void 0||Array.isArray(e.required)&&e.required.every(t=>typeof t=="string"&&t.length>0),e=>e.additional_properties===void 0||typeof e.additional_properties=="boolean",e=>e.properties===void 0||ju(e.properties),e=>e.one_of===void 0||Array.isArray(e.one_of)&&e.one_of.length>0];function To(e,t=new Set){if(e===null||typeof e=="string"||typeof e=="boolean")return!0;if(typeof e=="number")return Number.isFinite(e);if(typeof e!="object"||t.has(e))return!1;t.add(e);let n=Array.isArray(e)?e.every(r=>To(r,t)):Object.values(e).every(r=>To(r,t));return t.delete(e),n}function Io(e,t=0,n=new Set){if(!ju(e)||t>Uw||n.has(e))return;n.add(e);let r=e,o=r.type,i=r.enum,s=r.one_of,a=r.properties,c=r.items,d=r.required,l=r.min_length,u=r.min_items,f=r.format,m=r.additional_properties;if(!Hw.every(v=>v(r))){n.delete(e);return}let _=a===void 0?void 0:Object.fromEntries(Object.entries(a).map(([v,I])=>[v,Io(I,t+1,n)])),y=c===void 0?void 0:Io(c,t+1,n),w=s===void 0?void 0:s.map(v=>Io(v,t+1,n));if([...Object.values(_??{}),...c===void 0?[]:[y],...w??[]].some(v=>v===void 0)){n.delete(e);return}return n.delete(e),Object.fromEntries(Object.entries({type:o,const:Object.hasOwn(r,"const")?r.const:void 0,enum:i,min_length:l,min_items:u,format:f,properties:_,required:d===void 0?void 0:[...new Set(d)],additional_properties:m,items:y,one_of:w}).filter(([,v])=>v!==void 0))}function sr(e){let t=Array.isArray(e)?e:[];return[...new Set(t.map(n=>typeof n=="string"?n.trim():"").filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function ye(e){if(typeof e!="string"||e.length===0)return;let t=Ge(e);return t.length>0?t:void 0}function qw(e){return e.startsWith("--")?e.slice(2):e}function Pu(e){return typeof e=="string"?qw(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function Lu(e){return e.replaceAll("_","-")}function Vw(e){let t=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[n,...r]=t;return`${n}${r.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function Js(e,t){let n=ye(e.id);if(!n)return null;let r=[...new Set(sr(e.aliases).map(Ge).filter(a=>a.length>0))].sort((a,c)=>a.localeCompare(c)),o=sr(e.roles).filter(a=>$w.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:t;return{id:n,aliases:r,roles:o,description:i&&i.length>0?i:void 0,order:s}}function Bw(e){return{draft_status:ye(e?.draft_status),open_status:ye(e?.open_status),in_progress_status:ye(e?.in_progress_status),blocked_status:ye(e?.blocked_status),close_status:ye(e?.close_status),canceled_status:ye(e?.canceled_status)}}function Fu(e,t){if(!Array.isArray(t)||t.length!==2)return;let n=Ge(t[0]),r=Ge(t[1]);n.length===0||r.length===0||e.pairs.some(o=>o[0]===n&&o[1]===r)||e.pairs.push([n,r])}function Ww(e){let t=typeof e?.type=="string"?e.type.trim():"";if(t.length===0||!Array.isArray(e?.allowed_transitions))return null;let n={type:t,pairs:[],denyAll:e.allowed_transitions.length===0};for(let r of e.allowed_transitions)Fu(n,r);return{typeKey:t.toLowerCase(),record:n}}function Gw(e){if(!Array.isArray(e)||e.length===0)return;let t=new Map;for(let r of e){let o=Ww(r);if(o===null)continue;let i=t.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)Fu(i,s);t.set(o.typeKey,i)}let n=[];for(let r of t.values())(r.pairs.length>0||r.denyAll)&&n.push({type:r.type,allowed_transitions:r.pairs});return n.sort((r,o)=>r.type.localeCompare(o.type)),n.length>0?n:void 0}function zu(e){let t=Ge(e.key??"");if(!t)return null;let n=Ge(e.metadata_key??e.front_matter_key??t),r=Pu(e.cli_flag??Lu(t));if(!r)return null;let o=sr(e.cli_aliases).map(u=>Pu(u)).filter(u=>u.length>0&&u!==r),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=jw.has(i)?i:"string",a=(()=>{let u=sr(e.commands).filter(f=>Lw.has(f));return u.length>0?u:[...Mw]})(),c=e.description?.trim(),d=sr(e.required_types),l=e.value_schema===void 0?void 0:Io(e.value_schema);return e.value_schema!==void 0&&l===void 0?null:{key:t,metadata_key:n,cli_flag:r,cli_aliases:o,description:c&&c.length>0?c:void 0,type:s,commands:a,repeatable:[e.repeatable===!0,s==="string_array"].includes(!0),required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:d,allow_unset:e.allow_unset!==!1,value_schema:l}}function Kw(e){let t=new Map;for(let[r,o]of e.entries()){let i=Js(o,r);i&&t.set(i.id,i)}let n=Mu([...t.values()]);return n.length>0?n:Mu(Qs.map((r,o)=>Js(r,o)).filter(r=>r!==null))}function Mu(e){return e.sort((t,n)=>t.order===n.order?t.id.localeCompare(n.id):t.order-n.order)}function Yw(e){let t=new Map;for(let n of e??[]){let r=zu(n);r&&t.set(r.key,r)}return[...t.values()].sort((n,r)=>n.key.localeCompare(r.key))}function Xw(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 Jw(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==Lu(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,value_schema:e.value_schema}}function Qw(e){let t=typeof e=="string"?e.trim().toLowerCase():"allow";return Fw.has(t)?t:"allow"}function Te(e){let t={...oe,...e?.files},n=e?.statuses&&e.statuses.length>0?e.statuses:Qs,r=Kw(n),o=Yw(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:t,statuses:r.map(Xw),fields:o.map(Jw),workflow:{...$u,...Bw(e?.workflow)},type_workflows:Gw(e?.type_workflows),unknown_field_policy:Qw(e?.unknown_field_policy)}}function Zw(e,t,n){try{return JSON.parse(e)}catch{n.push(t);return}}function ev(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.definitions))return t.definitions;if(typeof t.item_types=="object"&&t.item_types!==null){let n=t.item_types;if(Array.isArray(n.definitions))return n.definitions}}function tv(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.statuses))return t.statuses;if(Array.isArray(t.definitions))return t.definitions}function nv(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.fields))return t.fields;if(Array.isArray(t.definitions))return t.definitions}function rv(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;return typeof t.workflow=="object"&&t.workflow!==null&&!Array.isArray(t.workflow)?t.workflow:typeof t.workflows=="object"&&t.workflows!==null&&!Array.isArray(t.workflows)?t.workflows:t}function ov(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(Array.isArray(t.type_workflows))return t.type_workflows}function ue(e,t,n){let r=t?.trim()||n;return Du.isAbsolute(r)?r:Du.join(e,r)}function KD(e,t){return ue(e,t.files.types,oe.types)}async function YD(e,t){let n=Te(t),r=[{path:ue(e,n.files.types,oe.types),seed:{definitions:[]}},{path:ue(e,n.files.statuses,oe.statuses),seed:{statuses:Qs}},{path:ue(e,n.files.fields,oe.fields),seed:{fields:[]}},{path:ue(e,n.files.workflows,oe.workflows),seed:{workflow:$u}}],o=[];for(let i of r)await ut(i.path)||await Nu(i.path,`${JSON.stringify(i.seed,null,2)}
|
|
3
|
+
`)&&o.push(i.path);return{created_paths:o}}async function Uu(e,t){let n=Te(t),r=[],o=ue(e,n.files.types,oe.types),i=ue(e,n.files.statuses,oe.statuses),s=ue(e,n.files.fields,oe.fields),a=ue(e,n.files.workflows,oe.workflows),c,d,l,u,f,m=async(I,H)=>{let X=await Oe(I);if(X!==null)return Zw(X,H,r)},_=await m(o,"runtime_schema_types_invalid_json");_!==void 0&&(c=ev(_),c===void 0&&r.push("runtime_schema_types_invalid_shape"));let y=await m(i,"runtime_schema_statuses_invalid_json");y!==void 0&&(d=tv(y),d===void 0&&r.push("runtime_schema_statuses_invalid_shape"));let w=await m(s,"runtime_schema_fields_invalid_json");w!==void 0&&(l=nv(w),l===void 0&&r.push("runtime_schema_fields_invalid_shape"));let v=await m(a,"runtime_schema_workflows_invalid_json");return v!==void 0&&(u=rv(v),u===void 0&&r.push("runtime_schema_workflows_invalid_shape"),f=ov(v)),{schema:Te({...n,statuses:[...n.statuses,...d??[]],fields:[...n.fields,...l??[]],workflow:{...n.workflow,...u},type_workflows:[...n.type_workflows??[],...f??[]]}),type_definitions_from_file:c,warnings:r,created_paths:[]}}function ir(e,t,n,r=!1){let o=n.map(s=>ye(s)).filter(s=>typeof s=="string").find(s=>e.some(a=>a.id===s));if(r&&o!==void 0)return o;let i=e.find(s=>s.roles.includes(t));return i!==void 0?i.id:o??e[0]?.id}function iv(e){let t=new Map,n=new Map;for(let r of e){n.set(r.id,r),t.set(r.id,r.id),t.set(r.id.replaceAll("_","-"),r.id),t.set(r.id.replaceAll("_"," "),r.id);for(let o of r.aliases)t.set(o,r.id),t.set(o.replaceAll("_","-"),r.id),t.set(o.replaceAll("_"," "),r.id)}return{aliasToId:t,byId:n}}function sv(e){let t={activeStatuses:new Set,blockedStatuses:new Set,draftStatuses:new Set,terminalCanceledStatuses:new Set,terminalDoneStatuses:new Set,terminalStatuses:new Set};for(let n of e){let r=new Set(n.roles);(r.has("terminal")||r.has("terminal_done")||r.has("terminal_canceled"))&&t.terminalStatuses.add(n.id),r.has("terminal_done")&&t.terminalDoneStatuses.add(n.id),r.has("terminal_canceled")&&t.terminalCanceledStatuses.add(n.id),r.has("active")&&t.activeStatuses.add(n.id),r.has("blocked")&&t.blockedStatuses.add(n.id),r.has("draft")&&t.draftStatuses.add(n.id)}return t}function Hu(e){let t=Te(e),n=t.statuses.map((v,I)=>Js(v,I)).filter(v=>v!==null),{aliasToId:r,byId:o}=iv(n),{activeStatuses:i,blockedStatuses:s,draftStatuses:a,terminalCanceledStatuses:c,terminalDoneStatuses:d,terminalStatuses:l}=sv(n),u=t.workflow,f=ye(u.open_status)??ir(n,"default_open",["open","in_progress",Kt[0]]),m=ye(u.in_progress_status)??ir(n,"active",["in_progress","in-progress",f],!0),_=ye(u.blocked_status)??ir(n,"blocked",["blocked"]),y=ye(u.close_status)??ir(n,"default_close",["closed","done","complete"]),w=ye(u.canceled_status)??ir(n,"default_cancel",["canceled","cancelled"]);return{definitions:n,by_id:o,alias_to_id:r,terminal_statuses:l,terminal_done_statuses:d,terminal_canceled_statuses:c,active_statuses:i,blocked_statuses:s,draft_statuses:a,open_status:f,in_progress_status:m,blocked_status:_,close_status:y,canceled_status:w}}function Zs(e,t){let n=Ge(e);if(n)return t.alias_to_id.get(n)}function qu(e){let t=Te(e),n=new Map,r=t.fields.map(c=>zu(c)).filter(c=>c!==null);for(let c of r)n.set(c.key,c);let o=[...n.values()].sort((c,d)=>c.key.localeCompare(d.key)),i=new Map,s=new Map,a=new Map;for(let c of o){i.set(c.key,c),s.set(c.cli_flag,c);for(let d of c.cli_aliases)s.set(d,c);for(let d of c.commands){let l=a.get(d)??[];l.push(c),a.set(d,l)}}for(let[c,d]of a.entries())d.sort((l,u)=>l.key.localeCompare(u.key)),a.set(c,d);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function Vu(e){return Vw(e.key)}function XD(e,t){let n=Zs(e,t);return n?t.terminal_statuses.has(n):!1}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4d5692ce-ec33-5eb4-bd9b-7497ffe25b0e")}catch{}})();var av=16;function ea(e){let t=e.trim().replaceAll(/[^A-Za-z0-9]+/g," ").split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[n,...r]=t;return`${n}${r.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function cv(e){return[...new Set([Vu(e),ea(e.key),ea(e.cli_flag),...e.cli_aliases.map(t=>ea(t))])]}function Gu(e,t){for(let n of cv(t)){if(!Object.hasOwn(e,n))continue;let r=e[n];if(r!==void 0)return r}}function Ku(e){return Array.isArray(e)?e.flatMap(t=>Ku(t)).map(t=>t.trim()).filter(t=>t.length>0):typeof e=="string"?e.split(/[,\n|]/).map(t=>t.trim()).filter(t=>t.length>0):e==null?[]:[String(e).trim()].filter(t=>t.length>0)}function Bu(e,t){if(typeof e=="boolean")return e;if(typeof e=="number"){if(e===1)return!0;if(e===0)return!1}if(typeof e=="string"){let n=e.trim().toLowerCase();if(n==="true"||n==="1"||n==="yes")return!0;if(n==="false"||n==="0"||n==="no")return!1}throw new g(`${t} must be one of true|false|1|0|yes|no`,h.USAGE)}function Wu(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let n=typeof e=="string"?e.trim():String(e),r=Number(n);if(!Number.isFinite(r))throw new g(`${t} must be a number`,h.USAGE);return r}function dv(e,t,n){let r=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(n==="array"&&Array.isArray(r)||n==="object"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r;throw new g(`${t} must be valid JSON ${n}`,h.USAGE)}function lv(e,t){return t===void 0?!0:t==="array"?Array.isArray(e):t==="object"?typeof e=="object"&&e!==null&&!Array.isArray(e):typeof e===t}function uv(e,t,n){if(t.const!==void 0&&x(e)!==x(t.const))return`${n} must equal ${x(t.const)}`;if(t.enum!==void 0&&!t.enum.some(r=>x(r)===x(e)))return`${n} must be one of ${t.enum.map(r=>x(r)).join("|")}`;if(!lv(e,t.type))return`${n} must match configured type ${String(t.type)}`;if(typeof e=="string"){if(t.min_length!==void 0&&e.length<t.min_length)return`${n} must contain at least ${t.min_length} characters`;if(t.format==="date-time"&&!zn(e))return`${n} must be an RFC 3339 date-time`}}function fv(e,t,n,r){if(Array.isArray(e)){if(t.min_items!==void 0&&e.length<t.min_items)return`${n} must contain at least ${t.min_items} items`;if(t.items)for(let[o,i]of e.entries()){let s=Co(i,t.items,`${n}[${o}]`,r+1);if(s)return s}}}function mv(e,t,n,r){if(typeof e!="object"||e===null||Array.isArray(e))return;let o=e;for(let i of t.required??[])if(!Object.hasOwn(o,i))return`${n}.${i} is required`;for(let[i,s]of Object.entries(o)){let a=t.properties?.[i];if(!a){if(t.additional_properties===!1)return`${n}.${i} is not allowed`;continue}let c=Co(s,a,`${n}.${i}`,r+1);if(c)return c}}function Co(e,t,n,r=0){if(r>av)return`${n} value schema exceeds maximum depth`;let o=uv(e,t,n);if(o)return o;let i=fv(e,t,n,r);if(i)return i;let s=mv(e,t,n,r);if(s)return s;if(!t.one_of)return;let a=0;for(let c of t.one_of)if(Co(e,c,n,r+1)===void 0&&(a+=1,a>1))break;return a===1?void 0:`${n} must match exactly one configured schema variant`}function Et(e,t,n){if(!e.value_schema||t===void 0)return t;let r=Co(t,e.value_schema,n);if(r)throw new g(r,h.USAGE);return t}function pv(e,t,n,r){let o=r==="option"&&Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return Et(e,dv(o,n,e.type),n)}function ar(e,t,n,r="option"){let o=n??`--${e.cli_flag}`;if(e.type==="array"||e.type==="object")return pv(e,t,o,r);if(e.repeatable||e.type==="string_array"){let s=Ku(t);return e.type==="number"?Et(e,s.map(a=>Wu(a,o)),o):e.type==="boolean"?Et(e,s.map(a=>Bu(a,o)),o):Et(e,s,o)}let i=Array.isArray(t)?t[t.length-1]:t;if(i!==void 0)return e.type==="number"?Et(e,Wu(i,o),o):e.type==="boolean"?Et(e,Bu(i,o),o):Et(e,typeof i=="string"?i:String(i),o)}function _v(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function rP(e,t,n){let r={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=Gu(e,i);if(s===void 0){_v(i,n)&&o.push(`--${i.cli_flag}`);continue}r[i.metadata_key]=ar(i,s)}return{values:r,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function oP(e,t,n=["update"]){let r={},o=(n??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=Gu(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),r[s.metadata_key]=ar(s,a)))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c35d4830-d7d1-5ee4-99bc-ab52cc3e4e09")}catch{}})();var ta=1,na=2;function sP(e){return Math.max(ra(e),e.tests?.some(t=>t.updated_by!==void 0||t.updated_at!==void 0)?2:1)}function ra(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=1?t:1}function Yu(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=1))return e}function yv(e,t=2,n=t){return e<n?"outdated":e>t?"ahead":"current"}function aP(e,t=2,n=t){let r=[],o=[];for(let i of e){let s=yv(i.version,t,n);s==="outdated"?r.push(i.ref):s==="ahead"&&o.push(i.ref)}return{outdated:r.sort((i,s)=>i.localeCompare(s)),ahead:o.sort((i,s)=>i.localeCompare(s))}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="515840b7-cf86-5d71-8ac1-beac7fd7c8a8")}catch{}})();var hv={"in-progress":"in_progress",cancelled:"canceled"};function xo(e,t){if(t){let o=Zs(e,t);if(o)return o}if(typeof e!="string")return;let n=e.trim().toLowerCase();if(!n)return;let r=hv[n]??n;if(Kt.includes(r))return r}function gv(e,t){return xo(e,t)??e}function uP(e,t){return t.terminal_statuses.has(gv(e,t))}import{encode as Ev}from"@toon-format/toon";import{isDeepStrictEqual as Xu}from"node:util";import{decode as bv}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="aaa2be03-9478-5fbe-82e6-e4fc86e3735b")}catch{}})();function oa(e){return{value:bv(e),usedScalarBracketEscape:!1}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="79626299-17a8-573a-9b66-ce37c65e2f5d")}catch{}})();var wv=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function vv(e){if(e.length===0)return[];let t=e.split(/\r?\n/),n=[];for(let r=0;r<t.length;r+=1){let o=t[r]??"",i=o.match(wv);if(!i)continue;let s=i[1];n.push({line:r+1,marker:s,text:o})}return n}function Ro(e){return vv(e)[0]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2789e87f-0706-52e8-8f4c-3855c65c618c")}catch{}})();var ca=new Set(["schema","tracker","auto","none"]),tf=new Set(["source","isolated","snapshot"]),kv=new Set(["legacy","local_mutation","local_source_ref","acknowledged","invalid_provenance","foreign_source_ref"]),Sv=new Set(["passed","failed","stopped","canceled"]),Ov=new Set(Id);function ln(e){return e.replaceAll("\\","/")}function nf(e){for(let t of e)if(t!==0)return t;return 0}function Do(e){for(let[t,n]of Object.entries(e))n===void 0&&delete e[t]}var rf=["id","title","description","created_at","updated_at"],Av=new Set(Ee);function of(e){if(e?.schema)return{statusRegistry:Hu(e.schema),fieldRegistry:qu(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function Iv(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function Ke(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new g(`Invalid item metadata: ${e}`,h.GENERIC_FAILURE,{code:"item_document_invalid",reason:e.includes("required")?"missing_required_field":"schema_validation_error",...t?{field:t}:{},required:"Provide an item document whose metadata satisfies the active runtime schema.",why:e})}function lr(e,t){throw new g(t,h.GENERIC_FAILURE,{code:"item_document_invalid",reason:"syntax_error",format:e,required:`Provide a syntactically valid ${e==="toon"?"TOON":"JSON Markdown"} item document.`,why:"The document could not be decoded far enough to validate item metadata."})}function sf(e,t){if(!t||typeof e!="object"||e===null)return;let n=ra(e);if(!(n<=na))throw new g(`Stored item uses format version ${n}; this runtime supports up to ${na}. Upgrade pm before reading or changing this item.`,h.CONFLICT,{code:"item_format_version_unsupported",format_version:n,required:"Upgrade to a pm runtime supporting the stored item format.",nextSteps:["Preserve the original item and history; do not lower pm_format_version to bypass compatibility checks."]})}function af(e){let t=new Set(Av);for(let n of e.fieldRegistry?.definitions??[])t.add(n.metadata_key);for(let n of e.extensionFieldNames)t.add(n);return t}function O(e,t){e||Ke(t)}function ur(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&Ke(t),e}function ia(e,t){let n=e[t];O(typeof n=="string",`${t} must be a string`),O(Pe(n),`${t} must be a valid ISO timestamp`)}function Ju(e,t,n){let r=e[t];r!==void 0&&O(typeof r=="number"&&Number.isInteger(r)&&r>=1,`${n} must be an integer >= 1`)}function da(e,t,n){let r=e[t];r!==void 0&&(O(typeof r=="string",`${n} must be a string`),O(Pe(r),`${n} must be a valid ISO timestamp`))}function Tv(e){if(e!==void 0){O(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){O(typeof t=="string","event.recurrence.by_weekday entries must be strings");let n=t.trim().toLowerCase();O($n.includes(n),`event.recurrence.by_weekday entries must be one of: ${$n.join(", ")}`)}}}function Cv(e){if(e!==void 0){O(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)O(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function xv(e){if(e!==void 0){O(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)O(typeof t=="string","event.recurrence.exdates entries must be strings"),O(Pe(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function Rv(e){let t=ur(e,"event.recurrence must be an object");O(typeof t.freq=="string","event.recurrence.freq must be a string");let n=t.freq.trim().toLowerCase();O(Jr.includes(n),`event.recurrence.freq must be one of: ${Jr.join(", ")}`),Ju(t,"interval","event.recurrence.interval"),Ju(t,"count","event.recurrence.count"),da(t,"until","event.recurrence.until"),Tv(t.by_weekday),Cv(t.by_month_day),xv(t.exdates)}function Nv(e){for(let r of rf)O(typeof e[r]=="string",`${r} is required and must be a string`);let t=e.type;O(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let n=e.pm_format_version;return n!==void 0&&O(typeof n=="number"&&Number.isInteger(n)&&n>=ta,`pm_format_version must be an integer >= ${ta}`),t}function Dv(e,t){let n=e.status;O(typeof n=="string"&&n.trim().length>0,"status must be a non-empty string");let r=t?.statusRegistry,o=xo(n,r),i=r?r.definitions.map(s=>s.id):[...Kt];O(o!==void 0,`status must be one of: ${i.join(", ")}`)}function Pv(e){let t=e.priority;O(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let n=e.tags;O(Array.isArray(n),"tags must be an array");for(let r of n)O(typeof r=="string","tags entries must be strings")}function Mv(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){O(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let n=t.trim().toLowerCase(),r=n==="med"||Xr.includes(n);O(r,`confidence string value must be one of: ${[...Xr,"med"].join(", ")}`);return}O(!1,"confidence must be a number or string")}}function $v(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&Ke("severity must be a string");let n=t.trim().toLowerCase(),r=n==="med"||Yr.includes(n);O(r,`severity value must be one of: ${[...Yr,"med"].join(", ")}`)}function jv(e){e.regression!==void 0&&typeof e.regression!="boolean"&&Ke("regression must be a boolean")}function Lv(e){let t=e.reminders;if(t!==void 0){O(Array.isArray(t),"reminders must be an array");for(let n of t){let r=ur(n,"reminders entries must be objects");O(typeof r.at=="string","reminder.at must be a string"),O(Pe(r.at),"reminder.at must be a valid ISO timestamp"),O(typeof r.text=="string","reminder.text must be a string"),O(r.text.trim().length>0,"reminder.text must not be empty")}}}function Fv(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(O(typeof e[t]=="string",`event.${t} must be a string`),O(e[t].trim().length>0,`event.${t} must not be empty`))}function zv(e){e.recurrence!==void 0&&(Rv(e.recurrence),e.recurrence.until!==void 0&&O(ne(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function Uv(e){let t=ur(e,"events entries must be objects");O(typeof t.start_at=="string","event.start_at must be a string"),O(Pe(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(O(typeof t.end_at=="string","event.end_at must be a string"),O(Pe(t.end_at),"event.end_at must be a valid ISO timestamp"),O(ne(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Fv(t),t.all_day!==void 0&&O(typeof t.all_day=="boolean","event.all_day must be a boolean"),zv(t)}function Hv(e){let t=e.events;if(t!==void 0){O(Array.isArray(t),"events must be an array");for(let n of t)Uv(n)}}function qv(e){for(let t of["source_type","source_owner","design","external_ref"]){let n=e[t];n!==void 0&&O(typeof n=="string",`${t} must be a string`)}}function Vv(e){let t=e.type_options;if(t===void 0)return;let n=ur(t,"type_options must be an object");for(let[r,o]of Object.entries(n))O(r.trim().length>0,"type_options keys must be non-empty"),O(typeof o=="string","type_options values must be strings"),O(o.trim().length>0,"type_options values must be non-empty strings")}function Bv(e,t,n){if(n?.fieldRegistry)for(let r of n.fieldRegistry.definitions){let o=e[r.metadata_key];if(o===void 0){Iv(r,t)&&Ke(`missing required schema field: ${r.metadata_key}`);continue}try{e[r.metadata_key]=ar(r,o,`metadata field "${r.metadata_key}"`,"metadata")}catch(i){Ke(String(i?.message).replace(/^Invalid\s+/u,""))}}}function Wv(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=af(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length!==0&&(t.unknownFieldPolicy==="reject"?Ke(`unknown schema fields are not allowed: ${r.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`))}function la(e,t){let n=ur(e,"item metadata must be an object"),r=Nv(n);Dv(n,t),Pv(n),Mv(n),$v(n),jv(n),ia(n,"created_at"),ia(n,"updated_at"),n.deadline!==void 0&&ia(n,"deadline"),Lv(n),Hv(n),da(n,"closed_at","closed_at"),da(n,"completed_at","completed_at"),qv(n),Vv(n),Bv(n,r,t),Wv(n,t)}function Gv(e){if(!(!e||e.length===0))return[...e].map((t,n)=>(O(t.created_at===void 0||typeof t.created_at=="string"&&zn(t.created_at),`dependencies.${n}.created_at requires a valid timestamp; restore the dependency timestamp from its source record`),{id:t.id.trim(),kind:t.kind,created_at:t.created_at,author:t.author?.trim()||void 0,source_kind:t.source_kind?.trim()||void 0,author_source:t.author_source})).sort((t,n)=>{let r=ne(t.created_at??"",n.created_at??"");if(r!==0)return r;let o=t.id.localeCompare(n.id);if(o!==0)return o;let i=t.kind.localeCompare(n.kind);return i!==0?i:(t.source_kind??"").localeCompare(n.source_kind??"")})}function sa(e){if(!(!e||e.length===0))return[...e].sort((t,n)=>{let r=ne(t.created_at,n.created_at);if(r!==0)return r;let o=t.text.localeCompare(n.text);return o!==0?o:t.author.localeCompare(n.author)})}function Kv(e){if(!e||e.length===0)return;let t=[...e].map(n=>({at:n.at,text:n.text.trim()})).filter(n=>n.text.length>0).sort((n,r)=>{let o=ne(n.at,r.at);return o!==0?o:n.text.localeCompare(r.text)});return t.length===0?void 0:t}function Yv(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!Jr.includes(t))return;let n=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>$n.includes(s)))).sort((s,a)=>Ji(s)-Ji(a)),r=Array.from(new Set((e.by_month_day??[]).filter(s=>Number.isInteger(s)&&s>=1&&s<=31).map(s=>s))).sort((s,a)=>s-a),o=Array.from(new Set((e.exdates??[]).map(s=>s.trim()).filter(s=>Pe(s)))).sort((s,a)=>ne(s,a)),i={freq:t,interval:e.interval!==void 0&&e.interval>1?e.interval:void 0,count:e.count,until:e.until?.trim()||void 0,by_weekday:n.length>0?n:void 0,by_month_day:r.length>0?r:void 0,exdates:o.length>0?o:void 0};for(let[s,a]of Object.entries(i))a===void 0&&delete i[s];return i}function Xv(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(Jv).sort(Qv)}function Jv(e){let t={start_at:e.start_at,end_at:e.end_at||void 0,title:e.title?.trim()||void 0,description:e.description?.trim()||void 0,location:e.location?.trim()||void 0,all_day:e.all_day,timezone:e.timezone?.trim()||void 0,recurrence:Yv(e.recurrence)};return Do(t),t}function Qv(e,t){return nf([ne(e.start_at,t.start_at),(e.end_at??"").localeCompare(t.end_at??""),(e.title??"").localeCompare(t.title??""),+!!e.all_day-+!!t.all_day,(e.timezone??"").localeCompare(t.timezone??""),(e.location??"").localeCompare(t.location??""),(e.description??"").localeCompare(t.description??""),JSON.stringify(e.recurrence??{}).localeCompare(JSON.stringify(t.recurrence??{}))])}function Zv(e){if(!(!e||e.length===0))return e.map(t=>({path:ln(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function eE(e){if(!e||e.length===0)return;let t=e.map(oE).filter(n=>n.run_id.length>0&&n.started_at.length>0&&n.finished_at.length>0&&n.recorded_at.length>0).sort((n,r)=>nf([ne(n.recorded_at,r.recorded_at),n.run_id.localeCompare(r.run_id),n.kind.localeCompare(r.kind)]));return t.length>0?t:void 0}function cn(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function tE(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function aa(e){return typeof e=="string"?e:""}function nE(e){if(!Array.isArray(e))return;let t=e.filter(r=>r!==null&&typeof r=="object"&&typeof r.name=="string"&&r.name.trim().length>0&&typeof r.value=="number"&&Number.isFinite(r.value)&&typeof r.recorded_at=="string"&&r.recorded_at.trim().length>0).map(r=>({name:r.name.trim(),value:r.value,unit:typeof r.unit=="string"&&r.unit.trim()||void 0,threshold:typeof r.threshold=="number"&&Number.isFinite(r.threshold)?r.threshold:void 0,recorded_at:r.recorded_at.trim()})),n=[...new Map(t.map(r=>[r.name,r])).values()].sort((r,o)=>r.name.localeCompare(o.name)).slice(0,32);return n.length>0?n:void 0}function No(e,t){return typeof e=="string"&&t.has(e)?e:void 0}function rE(e){if(!Array.isArray(e))return;let t=e.filter(n=>n&&typeof n.command=="string"&&n.command.trim().length>0).slice(0,32).map(n=>({command:n.command.trim(),requested_pm_context_mode:No(n.requested_pm_context_mode,ca),pm_context_mode:No(n.pm_context_mode,ca),workspace_context_mode:No(n.workspace_context_mode,tf),trust_reason:No(n.trust_reason,kv)}));return t.length>0?t:void 0}function oE(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",n=e.kind==="test"||e.kind==="test-all"?e.kind:"test",r=Sv.has(e.status)?e.status:"failed",o={run_id:t,kind:n,status:r,started_at:aa(e.started_at),finished_at:aa(e.finished_at),recorded_at:aa(e.recorded_at),attempt:tE(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:cn(e.passed)??0,failed:cn(e.failed)??0,skipped:cn(e.skipped)??0,items:cn(e.items),linked_tests:cn(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:nE(e.measurements),executions:rE(e.executions)};return Do(o),o}function iE(e){if(!(!Array.isArray(e)||e.length===0))return e.map(lE)}function cr(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length>0?t:void 0}function pa(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function _a(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function Qu(e){if(!pa(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),String(r).trim()]).filter(([n,r])=>n.length>0&&!_a(n)&&r.length>0).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function sE(e){if(!pa(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),Number(r)]).filter(([n,r])=>n.length>0&&!_a(n)&&Number.isFinite(r)).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function aE(e){let t=e?.trim().toLowerCase();if(!(!t||!ca.has(t)))return t}function cE(e){let t=e?.trim().toLowerCase();if(!(!t||!tf.has(t)))return t}function dE(e,t){if(t===!0)return{provenance_invalid:!0};if(e===void 0)return{};if(!pa(e))return{provenance_invalid:!0};let n=E(e.author),r=E(e.created_at),o=e.source_kind;return!n||!r||!Pe(r)||o!=="local_mutation"&&o!=="merge_union"?{provenance_invalid:!0}:{provenance:{author:n,created_at:r,source_kind:o,source_ref:E(e.source_ref)}}}function lE(e){let t={command:e.command?.trim()||void 0,path:e.path?ln(e.path):void 0,scope:e.scope,timeout_seconds:typeof e.timeout_seconds=="number"&&Number.isFinite(e.timeout_seconds)&&e.timeout_seconds>0?e.timeout_seconds:void 0,pm_context_mode:aE(e.pm_context_mode),workspace_context_mode:cE(e.workspace_context_mode),...dE(e.provenance,e.provenance_invalid),updated_by:E(e.updated_by),updated_at:E(e.updated_at),env_set:Qu(e.env_set),env_clear:cr(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:cr(e.assert_stdout_contains),assert_stdout_regex:cr(e.assert_stdout_regex),assert_stderr_contains:cr(e.assert_stderr_contains),assert_stderr_regex:cr(e.assert_stderr_regex),assert_stdout_min_lines:cn(e.assert_stdout_min_lines),assert_json_field_equals:Qu(e.assert_json_field_equals),assert_json_field_gte:sE(e.assert_json_field_gte),note:e.note?.trim()||void 0};return Do(t),t}function uE(e){if(!(!e||e.length===0))return[...e].map(t=>({path:ln(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,n)=>{let r=t.scope.localeCompare(n.scope);if(r!==0)return r;let o=t.path.localeCompare(n.path);return o!==0?o:(t.note??"").localeCompare(n.note??"")})}function E(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function fE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=E(r.id),i=E(r.kind);if(!o||!i)continue;let s={id:o,kind:i},a=E(r.note);a&&(s.note=a),r.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function mE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=E(r.path);if(!o)continue;let i={path:ln(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=E(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function pE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=E(r.command),i=E(r.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=ln(i));let a=E(r.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function _E(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=E(r.path);if(!o)continue;let i={path:ln(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=E(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function yE(e){if(e===null||typeof e!="object")return;let t=e,n=E(t.id),r=E(t.title),o=E(t.status),i=o&&Ov.has(o)?o:void 0,s=to(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",c=typeof t.updated_at=="string"?t.updated_at:"";if(!n||!r||!i||!Number.isFinite(s)||!a||!c)return;let d={id:n,order:s,title:r,status:i,created_at:a,updated_at:c};return hE(d,t),d}function hE(e,t){let n=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of n){let a=E(t[s]);a&&(e[i]=a)}let r=typeof t.completed_at=="string"?t.completed_at:void 0;r&&r.length>0&&(e.completed_at=r);let o=[["linked_items","linked_items",fE],["files","files",mE],["tests","tests",pE],["docs","docs",_E]];for(let[i,s,a]of o){let c=a(t[s]);c&&(e[i]=c)}}function gE(e){if(!Array.isArray(e))return;let t=e.flatMap(n=>{let r=yE(n);return r?[r]:[]});return t.sort((n,r)=>n.order-r.order),t.length>0?t:void 0}function bE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=E(r.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},c=E(r.rationale);c&&(a.rationale=c);let d=E(r.evidence);d&&(a.evidence=d);let l=E(r.step_id);l&&(a.step_id=l),t.push(a)}return t.length>0?t:void 0}function wE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=E(r.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},c=E(r.step_id);c&&(a.step_id=c),t.push(a)}return t.length>0?t:void 0}function vE(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=E(r.text);if(!o)continue;let i={text:o},s=E(r.command);s&&(i.command=s);let a=E(r.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function EE(e){if(!e)return;let t=Object.entries(e).map(([n,r])=>[n.trim(),r.trim()]).filter(([n,r])=>n.length>0&&r.length>0).sort((n,r)=>n[0].localeCompare(r[0]));if(t.length!==0)return Object.fromEntries(t)}function dn(e){let t=0;for(;t<e.length&&e[t]===`
|
|
4
|
+
`;)t+=1;return e.slice(t).trimEnd()}function kE(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Xr.includes(t))return t}function SE(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Yr.includes(t))return t}function dr(e){return e||void 0}function OE(e,t){let n=e,r=t;for(let[o,i]of Object.entries(r))_a(o)||Object.prototype.hasOwnProperty.call(n,o)||i===void 0||(n[o]=i)}function AE(e,t){if(!t?.fieldRegistry)return;let n=e;for(let r of t.fieldRegistry.definitions){let o=n[r.metadata_key];o!==void 0&&(n[r.metadata_key]=ar(r,o,`metadata field "${r.metadata_key}"`,"metadata"))}}function IE(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=af(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length>0&&t.unknownFieldPolicy==="reject"&&Ke(`unknown schema fields are not allowed: ${r.join(", ")}`),r.length>0&&t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`)}function Po(e,t={}){let n=of(t),r=xo(e.status,n?.statusRegistry)??e.status,o=Array.from(new Set((Array.isArray(e.tags)?e.tags:[]).filter(s=>typeof s=="string").map(s=>s.trim().toLowerCase()).filter(Boolean))).sort((s,a)=>s.localeCompare(a)),i={id:e.id,title:e.title,description:e.description,type:e.type,pm_format_version:Yu(e.pm_format_version),source_type:E(e.source_type),type_options:EE(e.type_options),status:r,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:Gv(e.dependencies),comments:sa(e.comments),notes:sa(e.notes),learnings:sa(e.learnings),files:Zv(e.files),tests:iE(e.tests),test_runs:eE(e.test_runs),docs:uE(e.docs),deadline:dr(e.deadline),reminders:Kv(e.reminders),events:Xv(e.events),closed_at:dr(e.closed_at),completed_at:dr(e.completed_at),assignee:E(e.assignee),claim_principal:E(e.claim_principal),source_owner:E(e.source_owner),author:dr(e.author),estimated_minutes:e.estimated_minutes,acceptance_criteria:e.acceptance_criteria??void 0,design:e.design??void 0,external_ref:e.external_ref??void 0,definition_of_ready:E(e.definition_of_ready),order:e.order,goal:E(e.goal),objective:E(e.objective),value:E(e.value),impact:E(e.impact),outcome:E(e.outcome),why_now:E(e.why_now),parent:E(e.parent),reviewer:E(e.reviewer),risk:e.risk??void 0,confidence:kE(e.confidence),sprint:E(e.sprint),release:E(e.release),blocked_by:E(e.blocked_by),blocked_reason:E(e.blocked_reason),unblock_note:E(e.unblock_note),reporter:E(e.reporter),severity:SE(e.severity),environment:E(e.environment),repro_steps:E(e.repro_steps),resolution:E(e.resolution),expected_result:E(e.expected_result),actual_result:E(e.actual_result),affected_version:E(e.affected_version),fixed_version:E(e.fixed_version),component:E(e.component),regression:e.regression,customer_impact:E(e.customer_impact),close_reason:dr(e.close_reason),plan_mode:E(e.plan_mode),plan_scope:E(e.plan_scope),plan_harness:E(e.plan_harness),plan_resume_context:E(e.plan_resume_context),plan_steps:gE(e.plan_steps),plan_decisions:bE(e.plan_decisions),plan_discoveries:wE(e.plan_discoveries),plan_validation:vE(e.plan_validation)};return OE(i,e),AE(i,n),IE(i,n),Do(i),i}function cf(e){return A(e,Ee)}function TE(e){let t=0,n=!1,r=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(n){if(r){r=!1;continue}if(i==="\\"){r=!0;continue}i==='"'&&(n=!1);continue}if(i==='"'){n=!0;continue}if(i==="{"){t+=1;continue}if(i==="}"&&(t-=1,t===0))return o}return-1}function CE(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=TE(e);if(t<0)return{frontMatter:"",body:e};let n=e.slice(0,t+1),r=e.slice(t+1).replace(/^\r?\n+/,"");return{frontMatter:n,body:r}}function xE(e){let t=e.charCodeAt(0)===65279?e.slice(1):e,n=t.match(/^[ \t]*---[ \t]*(?:\r?\n|$)/);if(!n)return{content:t,stripped:!1};let r=n[0].length;for(;r<t.length;){let o=t.indexOf(`
|
|
5
|
+
`,r),i=o===-1?t.length:o,s=t.slice(r,i).replace(/\r$/,""),a=o===-1?i:i+1;if(s.trim()==="---")return{content:t.slice(a).replace(/^\s+/,""),stripped:!0};r=a}return{content:t,stripped:!1}}function ua(e,t){return Po(e,{...t,onWarning:void 0})}function RE(e,t,n={}){let r=xE(e);r.stripped&&n.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=CE(r.content);o||(e.trimStart().startsWith("{")&&lr("json_markdown","JSON front matter is not valid JSON"),lr("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{lr("json_markdown","JSON front matter is not valid JSON")}return sf(s,n.requireSupportedFormat),la(s,t),{metadata:ua(s,n),body:dn(i)}}function NE(e,t,n={}){let r;try{r=oa(e).value}catch{lr("toon","TOON item document is not valid TOON")}O(typeof r=="object"&&r!==null&&!Array.isArray(r),"TOON item document must be an object");let o=r;if(sf(Object.prototype.hasOwnProperty.call(o,"front_matter")?o.front_matter:o,n.requireSupportedFormat),!rf.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&lr("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return la(o.front_matter,t),O(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:ua(o.front_matter,n),body:dn(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return O(i===void 0||typeof i=="string","TOON item document body must be a string"),la(s,t),{metadata:ua(s,n),body:dn(typeof i=="string"?i:"")}}function DE(e,t={}){let n=Po(e.metadata,t),r=cf(n),o=dn(e.body??"");ma(JSON.parse(JSON.stringify(r))),ma({body:o});let i=JSON.stringify(r,null,2);return o?`${i}
|
|
6
|
+
|
|
7
|
+
${o}
|
|
8
|
+
`:`${i}
|
|
9
|
+
`}var PE=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/u;function fa(e,t){return typeof e=="string"?Zu(e,t):e===null||typeof e!="object"?null:Array.isArray(e)?ef(e.map((n,r)=>()=>fa(n,`${t}[${r}]`))):ef(Object.entries(e).map(([n,r])=>()=>{let o=t?`${t}.${n}`:n;return Zu(n,`${o} (key)`)??fa(r,o)}))}function Zu(e,t){let n=e.search(PE);return n<0?null:{path:t,index:n}}function ef(e){for(let t of e){let n=t();if(n!==null)return n}return null}function ma(e){let t=fa(e,"");if(t!==null)throw new g(`Item field ${t.path} contains an unpaired surrogate code unit at index ${t.index}; persisted item text requires well-formed Unicode.`,h.USAGE,{code:"text_unpaired_surrogate",field:t.path,required:"Provide well-formed UTF-16 text: keep emoji and other astral characters whole and avoid lone \\uD800-\\uDFFF JSON escapes.",why:"Persisted item text must remain well-formed in every supported format; a lone surrogate can cause an unclassified encoder fault.",nextSteps:[`Repair the ${t.path} value (for example String.prototype.toWellFormed() or re-truncate on a character boundary) and retry.`,"Run pm <command> --help --json to review the text fields the command accepts."]})}function ME(e,t={}){let n=Po(e.metadata,t),r=cf(n),o=dn(e.body??""),i={...r,body:o},s=JSON.parse(JSON.stringify(i));ma(s);let a=Ev(s),c;try{c=oa(a).value}catch(d){throw new g("Refusing to persist a TOON item document that the configured decoder cannot read back.",h.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_error",format:"toon",required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:d instanceof Error?d.message:String(d)})}if(!Xu(c,s)){let d=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:{},l=Object.keys(s).find(u=>!Xu(s[u],d[u]))??"document";throw new g(`Refusing to persist a lossy TOON item document; round-trip mismatch at field "${l}".`,h.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_mismatch",format:"toon",field:l,required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:"The encoded document decoded to a value different from the canonical item payload."})}return`${a}
|
|
10
|
+
`}function xP(e,t={}){let n=Ro(e);if(n)throw new g(`Merge conflict markers detected in item document at line ${n.line} (${n.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,h.GENERIC_FAILURE,{code:"merge_conflict_markers_detected",reason:"merge_conflict",required:"Resolve merge-conflict markers in the item file before parsing or mutation commands.",why:"Partially merged documents can corrupt item metadata and history integrity.",examples:["git status","git add <resolved-file> && git commit"],nextSteps:["Resolve conflicts, save the file, then rerun the pm command."]});let r=t.format??"toon",o=of(t);return r==="toon"?NE(e,o,t):RE(e,o,t)}function RP(e,t={}){return(t.format??"toon")==="toon"?ME(e,t):DE(e,t)}function un(e,t={}){return{metadata:Po(e.metadata,t),body:dn(e.body??"")}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="82c79093-2a40-5b4c-8d41-637b0ae03c4f")}catch{}})();function df(e){return e}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7e894d1f-fe1a-53f2-9a29-4e9846a9f986")}catch{}})();var lf=["append","cancel","claim","close","comment_add","comment_edit","comment_delete","create","delete","docs_add","docs_remove","files_add","files_remove","files_discover","history_author_acknowledge","history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","import","improvement_observe","learning_add","learning_edit","learning_delete","normalize","note_add","note_edit","note_delete","plan_create_metadata","plan_create_initial_step","plan_add_step","plan_reorder_step","plan_remove_step","plan_link_step","plan_unlink_step","plan_append_decision","plan_append_discovery","plan_append_validation","plan_resume","plan_approve","plan_materialize","plan_update_step","plan_complete_step","plan_block_step","policy_approve","policy_refused","release","reopen","restore","schema_migration","schema_migration_reference","test_run_track","tests_add","tests_remove","tests_update","update","update_audit","update_ownership_bypass","workspace_snapshot_restore","extension_migrations_apply","merge_reconcile"],uf=["history:author-acknowledge","settings:write","init:type_preset","templates:save","profile:apply-types","profile:apply-statuses","profile:apply-fields","profile:apply-config","schema:add-type","schema:remove-type","schema:add-status","schema:remove-status","schema:add-field","schema:remove-field","schema:apply-preset","schema:infer-types","schema:policy-put","schema:policy-remove","schema:policy-mode","assurance:bundle:apply","assurance:gate:verdict","telemetry:install_id","telemetry:first_run_prompt","telemetry:clear","item_format:auto_select_default","transaction_abandon"],ya={"init:type-preset":"init:type_preset"},ff=["^config:(?:set|unset):[a-z][a-z0-9_.:-]*$","^assurance:(?:measurement|invariant|gate):(?:put|remove)$","^schema_(?:rename_type|rename_status|remap_status|rename_field|remove_type|remove_status|remove_field)(?:_compensate)?$","^extension:[a-z][a-z0-9_-]*:[a-z][a-z0-9_]*$"],PP={version:1,item:lf,workspace:uf,aliases:ya,patterns:ff,read_policy:"preserve_original_operation",custom_operation_grammar:"extension:<package_name>:<snake_case_operation>",legacy_custom_operation_grammar:"lowercase segments separated by underscore, hyphen, colon, or dot; optional opaque colon-suffixed retry key",excluded_surfaces:["json_patch","on_write_hook","telemetry_span"]},$E=new Set([...lf,...uf]),jE=ff.map(e=>new RegExp(e,"u"));function mf(e){return Object.hasOwn(ya,e)?ya[e]:e}function MP(e){let t=mf(e);if($E.has(t)||jE.some(n=>n.test(t)))return t;throw new TypeError("Undeclared history operation; use a native contract identity or extension:<package_name>:<snake_case_operation>.")}function pf(e){let t=mf(e),n=t.indexOf(":"),r=n<0?t:t.slice(0,n),o=n<0||n<t.length-1&&!/[\s\p{C}]/u.test(t.slice(n+1));if(/^[a-z][a-z0-9]*(?:[_.-][a-z0-9]+)*$/u.test(r)&&o)return t;throw new TypeError("History operation must use lowercase alphanumeric segments with an optional non-whitespace colon-suffixed retry key.")}import{AsyncLocalStorage as LE}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1fbb183b-c6d8-5834-b4cb-e4fb515572b9")}catch{}})();var ha=new LE,_f=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function Mo(e,t){let n=typeof e=="string"?e.trim():"";return n.length>0?n.slice(0,t):void 0}function kt(e,t){if(e===void 0)return;let n=typeof e=="object"&&e!==null?e:{},r=Mo(n.id,128),o=Mo(n.parent_id,128);if(r===void 0||!_f.test(r)||o!==void 0&&!_f.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=Mo(n.label,256);return{id:r,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function fn(e){let t={};for(let[n,r]of Object.entries(e??{}).slice(0,32)){let o=n.trim().toLowerCase().slice(0,64),i=Mo(r,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function FE(e,t,n){let r=ha.getStore(),o=fn({role:t.PM_AGENT_SESSION_ROLE,topic:t.PM_AGENT_SESSION_TOPIC}),i=kt(t.PM_AGENT_EPISODE_ID===void 0?void 0:{id:t.PM_AGENT_EPISODE_ID,label:t.PM_AGENT_EPISODE_LABEL,parent_id:t.PM_AGENT_EPISODE_PARENT_ID},!1),s={...fn(r?.provenance),...o,...fn(e?.provenance)},a=kt(e?.episode,!1)??kt(n,!1)??i??kt(r?.episode,!1);return Object.keys(s).length===0&&a===void 0?void 0:{...Object.keys(s).length===0?{}:{provenance:s},...a===void 0?{}:{episode:a}}}function ga(e,t){return FE(e.session_context,t,e.client_info?.episode)??{}}function LP(e,t){let n=ha.getStore(),r=kt(e.episode,!0),o=kt(n?.episode,!1),i=r!==void 0&&r.parent_id===void 0&&o!==void 0?{...r,parent_id:o.id}:r,s={...fn(n?.provenance),...fn(e.provenance)};return ha.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function FP(e){let t=fn(e.provenance),n=kt(e.episode,!0);return{...n===void 0?{}:{PM_AGENT_EPISODE_ID:n.id,...n.label===void 0?{}:{PM_AGENT_EPISODE_LABEL:n.label},...n.parent_id===void 0?{}:{PM_AGENT_EPISODE_PARENT_ID:n.parent_id}},...t.role===void 0?{}:{PM_AGENT_SESSION_ROLE:t.role},...t.topic===void 0?{}:{PM_AGENT_SESSION_TOPIC:t.topic}}}import{constants as HE}from"node:fs";import te from"node:fs/promises";import ke from"node:path";import{createHash as qE,randomUUID as Fo}from"node:crypto";import ba from"node:fs/promises";import{createHash as zE}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d1f829a5-70d6-5096-86f7-717440dd67d5")}catch{}})();function yf(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function UE(e){if(!Number.isSafeInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return!yf(t,"ESRCH")}}function hf(e){let t=e.lastIndexOf(")");if(t<0)return null;let n=e.slice(t+2).trim().split(/\s+/u)[19];return n!==void 0&&/^\d+$/u.test(n)?n:null}async function mn(e){try{return hf(await ba.readFile(`/proc/${e}/stat`,"utf8"))}catch{return null}}async function fr(e=process.pid){let t=await mn(e);return{pid:e,...t===null?{}:{process_start_identity:t}}}async function mr(e,t,n){if(!UE(e.pid))return!1;let r=await mn(e.pid);return e.process_start_identity!==void 0&&r!==null?r===e.process_start_identity:t<=n}async function gf(){try{let[e,t]=await Promise.all([ba.readFile("/proc/sys/kernel/random/boot_id","utf8"),ba.readlink("/proc/self/ns/pid")]);return!/^[a-f0-9-]{36}\s*$/u.test(e)||!/^pid:\[\d+\]$/u.test(t)?null:zE("sha256").update(`${e.trim()}:${t}`).digest("hex")}catch{return null}}async function wa(){let[e,t]=await Promise.all([gf(),mn(process.pid)]);return e!==null&&t!==null?{host_identity:e,process_start_identity:t}:{}}async function $o(e){if(!e||typeof e.pid!="number"||!Number.isSafeInteger(e.pid)||e.pid<=0||typeof e.host_identity!="string"||typeof e.process_start_identity!="string"||!/^\d+$/u.test(e.process_start_identity))return"unknown";let t=await gf();if(t===null||t!==e.host_identity)return"unknown";try{process.kill(e.pid,0)}catch(r){return yf(r,"ESRCH")?"dead":"unknown"}let n=await mn(e.pid);return n===null?"unknown":n===e.process_start_identity?"alive":"dead"}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fa450dd8-119e-5a50-bdc7-e81c1dfdbd9b")}catch{}})();function VE(e){let t;try{t=JSON.parse(e)}catch{return{info:null,warnings:["lock_info_invalid_json"]}}if(typeof t!="object"||t===null||Array.isArray(t))return{info:null,warnings:["lock_info_invalid_shape"]};let n=t,r=n.id,o=n.pid,i=n.owner,s=n.token,a=n.created_at,c=n.ttl_seconds;return typeof r!="string"||typeof o!="number"||!Number.isFinite(o)||typeof i!="string"||s!==void 0&&(typeof s!="string"||s.trim().length===0)||typeof a!="string"||typeof c!="number"||!Number.isFinite(c)?{info:null,warnings:["lock_info_invalid_shape"]}:{info:{id:r,pid:o,owner:i,...typeof s=="string"?{token:s}:{},created_at:a,ttl_seconds:c,host_identity:n.host_identity,process_start_identity:n.process_start_identity},warnings:[]}}async function St(e,t=!0){try{let n=await te.readFile(e,"utf8");return t&&await sn({path:e,scope:"project"}),VE(n)}catch(n){return de(n)?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function Ye(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function BE(e,t,n=process.platform){if(Ye(e,"EEXIST"))return!0;if(!Ye(e,"EPERM")&&!Ye(e,"EACCES")&&!Ye(e,"EBUSY"))return!1;try{return await te.lstat(t),!0}catch(r){if(n!=="win32"||!de(r)&&!Ye(r,"EPERM")&&!Ye(r,"EACCES")&&!Ye(r,"EBUSY"))return!1}try{return await te.access(ke.dirname(t),HE.W_OK),!0}catch{return!1}}async function kf(e,t){await Oo({path:e,scope:"project",op:t})}async function WE(e,t,n,r=Fo()){return{...await wa(),id:e,pid:process.pid,owner:t,token:r,created_at:Ie(),ttl_seconds:n}}async function GE(e,t,n,r,o,i){i&&await te.mkdir(ke.dirname(e),{recursive:!0});let s=await qo(e,t);if(s===null)throw await te.access(ke.dirname(e)),Object.assign(new Error("Lock initialization is contended"),{code:"EEXIST"});let a;try{let c=await te.open(e,"wx");try{try{let d=await WE(t,n,r,o);a=d.created_at,await c.writeFile(`${JSON.stringify(d,null,2)}
|
|
11
|
+
`,"utf8")}finally{await c.close()}}catch(d){throw await ka(e,"lock:release"),d}}finally{await s()}return await kf(e,"lock:create"),a}async function ka(e,t){try{return await te.unlink(e),await kf(e,t),!0}catch{return!1}}async function KE(e,t,n,r){let o=performance.now(),i=zo;for(;;){let s=await qo(e,t);if(s!==null){try{let d=await St(e,!1);va(d.info,t,n,r)&&await ka(e,"lock:release")}finally{await s()}return}let a=await St(e,!1);if(!va(a.info,t,n,r))return;let c=performance.now()-o;if(c>=jo)return;await Ho(Math.min(i,jo-c)),i=Math.min(i*2,Uo)}}function va(e,t,n,r){return e?.id===t&&e.pid===process.pid&&e.owner===n&&e.token===r}function Sf(e,t){let n=e?.created_at?Date.parse(e.created_at):Number.NaN;return(Number.isFinite(n)?Date.now()-n:Number.POSITIVE_INFINITY)>t*1e3}async function Of(e){return e!==null&&Number.isFinite(Date.parse(e.created_at))&&await $o(e)==="dead"}async function Af(e,t){return Sf(e,t)||await Of(e)}async function If(e,t,n){let{info:r}=await St(rs(e,t),!1);return r!==null&&r.owner.startsWith(n)&&!await Af(r,r.ttl_seconds)}function YE(e){return e?.owner?` (owner ${e.owner})`:""}var zo=25,Uo=200,Tf=250,XE=12e4,JE=3,QE=".stale-cleanup",Cf="owner.json",xf=1e4,jo=xf+Uo;function Ea(e){if(typeof e=="string"){let t=e.trim();if(!/^\d+$/.test(t))return;let n=Number(t);return Number.isSafeInteger(n)?n:void 0}if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return Math.trunc(e)}function ZE(e){let t=process.env.PM_LOCK_WAIT_MS,n=Ea(t);if(n!==void 0)return n;let r=Ea(e);return r!==void 0?r:0}function e0(e,t){return Math.min(ZE(e),t??1/0)}function Ho(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(n=>setTimeout(n,t))}async function Rf(e,t,n,r=0){n=Math.floor(n);let o=await $o(t),i=r>0?` across ${r} owner handoff(s)`:"",s=n>0?` after waiting ${n}ms${i}`:"";return new g(`Item ${e} is locked${YE(t)} (owner process ${o})${s}`,h.CONFLICT,{code:"lock_conflict",item_id:e,reason:`lock_owner_${o}`,required:"Wait for the owner to release the lock, then retry the same operation. Set PM_LOCK_WAIT_MS to a larger bounded millisecond budget when contention is expected. Inspect stale receipts with pm gc --scope locks --dry-run.",recovery:{retry_after_ms:Tf,...n>0?{waited_ms:n,owner_handoffs:r}:{}}})}function t0(e,t){let n=performance.now(),r=n,o,i=0;return{startedAtMs:n,observe(s){let a=performance.now(),c=r0(s);o!==void 0&&c!==o&&(i+=1,r=a),o=c;let d=a-n,l=a-r;return{exhausted:e===0||l>=e||d>=t,elapsedMs:d,remainingMs:Math.min(e-l,t-d),ownerHandoffs:i}}}}function n0(e,t,n){return n!=="progress"||t!==void 0?e:Math.max(e,XE)}function r0(e){return e===null?"released":e.token??`${e.pid}:${e.owner}:${e.created_at}`}function o0(e){let t=Date.parse(e.acquiredAt)+e.ttlSeconds*1e3;return{owner:e.owner,acquired_at:e.acquiredAt,ttl_seconds:e.ttlSeconds,expires_at:new Date(t).toISOString()}}function i0(e,t,n,r){let o=`the lease acquired at ${t.acquiredAt} (ttl ${t.ttlSeconds}s)`;if(r==="fence_gate_unavailable")return{summary:`Lock for ${e} could not be verified before commit: ${o} could not enter its commit fence because the stale-cleanup gate stayed held.`,required:"Retry the same operation; this writer's change was not committed. Inspect pm gc --scope locks --dry-run if the stale-cleanup gate stays held."};let i=n===null?"the lock no longer exists":`it is now held by ${n.owner} since ${n.created_at}`;return{summary:`Lock for ${e} was lost before commit: ${o} is no longer owned by this writer, and ${i}.`,required:"Re-read the item and apply the mutation again; this writer's change was not committed and the newer value was kept. Keep mutation work shorter than locks.ttl_seconds, or raise locks.ttl_seconds for long-running callbacks."}}function bf(e,t,n,r){let{summary:o,required:i}=i0(e,t,n,r);return new g(`${o} Nothing was written.`,h.CONFLICT,{code:"lock_lost",item_id:e,reason:r,lease:o0(t),current_owner:n===null?null:{owner:n.owner,pid:n.pid,created_at:n.created_at,ttl_seconds:n.ttl_seconds},required:i,recovery:{retry_after_ms:Tf}})}async function s0(e,t){let n=performance.now(),r=zo;for(;;){let o=await qo(e,t);if(o!==null)return o;let i=performance.now()-n;if(i>=jo)return null;await Ho(Math.min(r,jo-i)),r=Math.min(r*2,Uo)}}async function a0(e,t,n,r){let o=await s0(e,t);if(o===null){let i=await St(e,!1);throw bf(t,n,i.info,"fence_gate_unavailable")}try{let i=await St(e,!1);if(!va(i.info,t,n.owner,n.token))throw bf(t,n,i.info,i.info===null?"lease_released":"lease_taken_over");return await r()}finally{await o()}}function c0(e){if(typeof e=="function")return e;if(typeof e=="object"&&e!==null&&"release"in e){let t=e.release;return typeof t=="function"?t:null}return null}function d0(e,t,n,r){if(!n&&r){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new g(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,h.CONFLICT)}}function l0(e){let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!="object"||t===null||Array.isArray(t))return null;let n=t,r=n.pid,o=n.token,i=n.process_start_identity;return typeof r!="number"||!Number.isInteger(r)||r<=0||typeof o!="string"||o.length===0||i!==void 0&&(typeof i!="string"||!/^\d+$/u.test(i))?null:{pid:r,token:o,host_identity:n.host_identity,...typeof i=="string"?{process_start_identity:i}:{}}}async function Lo(e){try{return l0(await te.readFile(ke.join(e,Cf),"utf8"))}catch(t){return de(t)?null:void 0}}async function Sa(e){try{return await te.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function wf(e,t){let n=await Lo(e);for(let r=0;n===void 0&&r<3;r+=1)await Ho(zo),n=await Lo(e);!n||n.token!==t||await Sa(e)}async function vf(e){try{await te.mkdir(e)}catch(n){return Ye(n,"EEXIST"),null}let t={...await fr(),host_identity:(await wa()).host_identity,token:Fo()};try{await te.writeFile(ke.join(e,Cf),`${JSON.stringify(t)}
|
|
12
|
+
`,"utf8")}catch{return await Sa(e),null}return t}async function Ef(e,t){let n=ke.join(ke.dirname(e),"recoveries"),r=qE("sha256").update(t).digest("hex");try{return await te.mkdir(n,{recursive:!0}),(await Lo(e))?.token!==t?!1:(await te.rename(e,ke.join(n,`gate-${r}`)),!0)}catch{return!1}}async function u0(e){let t;try{let r=await te.stat(e);t=Date.now()-r.mtimeMs}catch(r){return de(r)}let n=await Lo(e);if(n===void 0)return!1;if(n!==null){if(await $o(n)==="dead")return Ef(e,n.token);if(n.host_identity!==void 0)return!1}return t<=xf||n!==null&&await mr(n,t,Number.POSITIVE_INFINITY)?!1:n!==null?Ef(e,n.token):Sa(e)}async function qo(e,t){let n=`${e}${QE}`,r=await vf(n);if(r!==null)return async()=>wf(n,r.token);if(!await u0(n))return null;let o=await vf(n);return o===null?null:async()=>wf(n,o.token)}async function f0(e,t){let n=ke.join(ke.dirname(e),"recoveries");await te.mkdir(n,{recursive:!0}),await te.writeFile(ke.join(n,`${Fo()}.json`),`${JSON.stringify({event:"owner_dead_recovery_attempt",recorded_at:Ie(),lock:JSON.parse(t)})}
|
|
13
|
+
`,{encoding:"utf8",flag:"wx",mode:384})}async function m0(e){let t=await qo(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let n=await St(e.lockPath);if(n.info===null&&n.warnings.length===0)return{lockInfo:n,shouldRetryCreate:!0,staleRemovalCounted:!1};let r=await Of(n.info);if(!Sf(n.info,e.ttlSeconds)&&!r)return{lockInfo:n,shouldRetryCreate:!1,staleRemovalCounted:!1};if(d0(e.id,n,e.force||r,e.forceRequiredForStaleLock),e.staleRemovals>=JE)throw await Rf(e.id,n.info,performance.now()-e.startedAtMs);return r&&await f0(e.lockPath,JSON.stringify(n.info)),{lockInfo:n,shouldRetryCreate:await ka(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function fe(e,t,n,r,o=!1,i=!0,s,a={}){return(await p0(e,t,n,r,o,i,s,a)).release}async function p0(e,t,n,r,o=!1,i=!0,s,a={}){let c=Ea(a.maxWaitMs),d=await an("lock_acquire",{pm_root:e,id:t,ttl_seconds:n,owner:r,force:o,force_required_for_stale_lock:i,...c===void 0?{}:{max_wait_ms:c}});if(d.handled){let I=c0(d.result);if(I)return{release:async()=>{await Promise.resolve(I()),await an("lock_release",{pm_root:e,id:t,owner:r})},fence:H=>H()}}let l=rs(e,t),u=e0(s,c),f=n0(u,c,a.waitPolicy),m=t0(u,f),_=m.startedAtMs,y=0,w=zo,v=Fo();for(;;)try{let I=await GE(l,t,r,n,v,a.createParentDirectories!==!1),H={owner:r,token:v,acquiredAt:I,ttlSeconds:n};return{release:async()=>{await KE(l,t,r,v),await an("lock_release",{pm_root:e,id:t,owner:r})},fence:X=>a0(l,t,H,X)}}catch(I){if(!await BE(I,l))throw new g(`Failed to acquire lock for ${t}: ${Jd(I)}`,h.GENERIC_FAILURE);let H=await St(l);if(await Af(H.info,n)){let ce=await m0({lockPath:l,id:t,ttlSeconds:n,force:o,forceRequiredForStaleLock:i,staleRemovals:y,waitBudgetMs:u,startedAtMs:_,fallbackLockInfo:H});if(H=ce.lockInfo,ce.staleRemovalCounted&&(y+=1),ce.shouldRetryCreate)continue}let X=m.observe(H.info);if(X.exhausted)throw await Rf(t,H.info,u===0?0:X.elapsedMs,X.ownerHandoffs);await Ho(Math.min(w,X.remainingMs)),w=Math.min(w*2,Uo)}}import{createHash as Nf}from"node:crypto";import{existsSync as Oa,promises as Df,readFileSync as _0}from"node:fs";import Ce from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="06c9f6f4-c2f0-549c-9a0f-4f4269cc5f49")}catch{}})();var y0="session.json";function Aa(e,t){return typeof e=="string"&&e.length>0&&e.length<=t}function Pf(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=e,n=["implementer","planner","release-operator"].includes(String(t.role)),r=["high","medium"].includes(String(t.confidence)),o=Aa(t.topic,256),i=Array.isArray(t.evidence)&&t.evidence.length<=32&&t.evidence.every(c=>typeof c=="string"&&c.length<=128),s=Array.isArray(t.active_item_ids)&&t.active_item_ids.length<=64&&t.active_item_ids.every(c=>Aa(c,128)),a=t.focused_item_id===void 0||Aa(t.focused_item_id,128);if([n,r,o,i,s,a,t.rule_version==="v2"].every(Boolean))return t}function h0(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).slice(0,128).flatMap(([n,r])=>{let o=Pf(r);return o&&n.length<=128?[[n,o]]:[]});return t.length>0?Object.fromEntries(t):void 0}function Ia(e){return Ce.join(os(e),y0)}async function Mf(e){try{let t=await Df.readFile(Ia(e),"utf8"),n=JSON.parse(t);if(n===null||typeof n!="object"||Array.isArray(n))return{};let r=n,o=r.focused_item,i=h0(r.semantic_attribution);return typeof o=="string"&&o.trim().length>0?{focused_item:o,...i?{semantic_attribution:i}:{}}:i?{semantic_attribution:i}:{}}catch{return{}}}async function Ta(e,t){let n=await fe(e,"session-state",S.locks.ttl_seconds,"session-state",!1,!0,S.locks.wait_ms);try{let r=await Mf(e);t(r);let o=Ia(e);await Df.mkdir(Ce.dirname(o),{recursive:!0}),await ft(o,JSON.stringify(r))}finally{await n()}}function Ca(e){return/#([a-f0-9]{24})$/u.exec(e.trim())?.[1]??`author-${Nf("sha256").update(e).digest("hex").slice(0,24)}`}function xa(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].slice(0,32).map(t=>t.slice(0,128))}function Ra(e){let t=[...new Set(e)].sort((r,o)=>r.localeCompare(o));if(t.length===1)return t[0];let n=`workset:${t.join("+")}`;return n.length<=256?n:`workset:${t.join("+").slice(0,230)}+${Nf("sha256").update(t.join("\0")).digest("hex").slice(0,12)}`}async function Na(e,t,n){await Ta(e,r=>{let o={...r.semantic_attribution},i=n(o[t]);i===void 0?delete o[t]:o[t]=i,Object.keys(o).length===0?delete r.semantic_attribution:r.semantic_attribution=o})}async function u1(e){let t=Ca(e.principal);await Na(e.pmRoot,t,n=>{let r=[...new Set([...n?.active_item_ids??[],e.itemId])].slice(-64).sort((i,s)=>i.localeCompare(s)),o=n?.focused_item_id;return{role:"implementer",topic:o??Ra(r),confidence:o?"high":"medium",rule_version:"v2",evidence:xa([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}async function f1(e){let t=Ca(e.principal);await Na(e.pmRoot,t,n=>{if(!n)return;let r=n.active_item_ids.filter(i=>i!==e.itemId);if(r.length===0&&!n.focused_item_id)return;let o=n.focused_item_id;return{...n,role:"release-operator",topic:o??Ra(r),confidence:o?"high":"medium",evidence:xa([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],`release:${e.itemId}`]),active_item_ids:r}})}async function m1(e){let t=Ca(e.principal);await Na(e.pmRoot,t,n=>{let r=n?.active_item_ids??[];if(!e.itemId&&r.length===0)return;let o=e.itemId;return{role:o?"planner":n.role,topic:o??Ra(r),confidence:o?"high":"medium",rule_version:"v2",evidence:xa([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}function g0(e,t){let n=t.PM_PATH?.trim();if(n){let o=Ce.resolve(e,n);if(Oa(Ce.join(o,"settings.json")))return o;let i=Ce.join(o,".agents","pm");if(Oa(Ce.join(i,"settings.json")))return i}let r=Ce.resolve(e);for(let o=0;o<32;o+=1){let i=Ce.join(r,".agents","pm");if(Oa(Ce.join(i,"settings.json")))return i;let s=Ce.dirname(r);if(s===r)break;r=s}}function $f(e){if(!e.key)return;let t=g0(e.cwd,e.env);if(t)try{let n=JSON.parse(_0(Ia(t),"utf8"));return Pf(n.semantic_attribution?.[e.key])}catch{return}}async function p1(e){return(await Mf(e)).focused_item}async function _1(e,t){await Ta(e,n=>{n.focused_item=t})}async function y1(e){await Ta(e,t=>{delete t.focused_item})}import{AsyncLocalStorage as ja}from"node:async_hooks";import{createHash as b0}from"node:crypto";import me from"node:fs";import zf from"node:os";import It from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a69b86e2-6633-5abc-81b7-6a54a592d36c")}catch{}})();var La=["model","effort","role","topic","version"],Wo=new ja,Uf=new ja,Go=new ja,Fa=[{harness:"claude-code",environment_keys:["CLAUDE_CODE","CLAUDECODE"],model_environment_keys:["ANTHROPIC_MODEL","CLAUDE_MODEL"],session_environment_keys:["CLAUDE_CODE_SESSION_ID"],provenance_environment_keys:{effort:["CLAUDE_EFFORT"]},provenance_resolvers:{model:"claude_session_file",version:"claude_session_file"},provenance_unavailable_dimensions:["role","topic"],argv_markers:["claude","claude-code"],client_names:["claude","claude-code","claude code"]},{harness:"codex",environment_keys:["CODEX_HOME","CODEX_CI","CODEX_THREAD_ID"],model_environment_keys:["CODEX_MODEL"],session_environment_keys:["CODEX_THREAD_ID"],provenance_environment_keys:{effort:["CODEX_REASONING_EFFORT","CODEX_EFFORT"],role:["CODEX_SESSION_ROLE"]},provenance_resolvers:{model:"codex_session_file",effort:"codex_session_file",version:"ai_agent_version"},provenance_unavailable_dimensions:["topic"],argv_markers:["codex"],client_names:["codex"]},{harness:"pi",environment_keys:["PI_AGENT","PI_CODING_AGENT"],model_environment_keys:["PI_MODEL"],session_environment_keys:["PI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["pi"],client_names:["pi"]},{harness:"opencode",environment_keys:["OPENCODE","OPENCODE_SESSION_ID"],model_environment_keys:["OPENCODE_MODEL"],session_environment_keys:["OPENCODE_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["opencode"],client_names:["opencode"]},{harness:"cursor",environment_keys:["CURSOR_AGENT","CURSOR_TRACE_ID"],model_environment_keys:["CURSOR_MODEL"],session_environment_keys:["CURSOR_TRACE_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["cursor"],client_names:["cursor"]},{harness:"aider",environment_keys:["AIDER","AIDER_MODEL"],model_environment_keys:["AIDER_MODEL"],session_environment_keys:["AIDER_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["aider"],client_names:["aider"]},{harness:"gemini-cli",environment_keys:["GEMINI_CLI","GEMINI_CLI_HOME"],model_environment_keys:["GEMINI_MODEL"],session_environment_keys:["GEMINI_CLI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["gemini","gemini-cli"],client_names:["gemini","gemini-cli","gemini cli"]},{harness:"ci",environment_keys:["CI","GITHUB_ACTIONS","BUILDKITE","GITLAB_CI"],provenance_unavailable_dimensions:["model","effort","role","topic"],argv_markers:[],client_names:[]}],Hf=Object.freeze({max_bytes:1048576,max_lines:4096,network_access:!1,subprocess_access:!1}),w0=Object.freeze({...Hf,max_bytes:4194304}),Da=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function v0(e){let t=Je(e).provenance_unavailable_dimensions,n=new Set(["model","version",...Object.keys(e.provenance_environment_keys??{}),...Object.keys(e.provenance_resolvers??{})]);return Object.freeze({contract_version:1,adapter_version:"v1",priority:0,harness:e.harness,descriptor:e,supported_dimensions:Object.freeze([...n].sort()),native_sources:Object.freeze(["environment","argv","mcp_client",...Object.values(e.provenance_resolvers??{}).some(r=>r?.endsWith("session_file"))?["session_file"]:[]]),probe_policy:e.harness==="codex"?w0:Hf,normalization:Object.freeze({model_family:"v1",effort:"v1",preserve_raw:!0}),confidence:"high",waivers:Object.freeze(Object.fromEntries(t.map(r=>[r,"Harness does not expose this dimension."])))})}var qf=Object.freeze(Fa.filter(e=>e.harness!=="ci").map(v0).sort((e,t)=>e.harness.localeCompare(t.harness))),At=new Map,pn=new Map;function V(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function Xe(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function Je(e){let t=e.harness.trim().toLowerCase();if(!Da.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:Xe(e.environment_keys),model_environment_keys:Xe(e.model_environment_keys),session_environment_keys:Xe(e.session_environment_keys),provenance_environment_keys:Object.fromEntries(Object.entries(e.provenance_environment_keys??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),Xe(r)]).filter(([n])=>Da.test(n))),provenance_resolvers:Object.fromEntries(Object.entries(e.provenance_resolvers??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),r]).filter(n=>typeof n[0]=="string"&&Da.test(n[0])&&(n[1]==="ai_agent_version"||n[1]==="claude_session_file"||n[1]==="codex_session_file"))),provenance_unavailable_dimensions:Xe(e.provenance_unavailable_dimensions).map(n=>n.toLowerCase()),argv_markers:Xe(e.argv_markers).map(n=>n.toLowerCase()),client_names:Xe(e.client_names).map(n=>n.toLowerCase())}}var Vf=Fa.map(Je);function E0(e,t){return JSON.stringify(e)===JSON.stringify(t)}function Bo(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(n=>n.length>0).includes(t)||e.trim().toLowerCase()===t}function za(e=[]){let t=new Map(Fa.filter(o=>o.harness!=="ci").map(o=>[o.harness,Je(o)]));for(let{adapter:o}of At.values())t.set(o.harness,Je(o.descriptor));let n=[...t.values(),...Vf.filter(o=>o.harness==="ci"),...[...pn.values()].map(o=>o.descriptor),...Go.getStore()?.descriptors??[],...e.map(Je)],r=new Set;for(let o of n){if(r.has(o.harness))throw new Error(`Harness signal descriptor collision for "${o.harness}"`);r.add(o.harness)}return n}function Ua(e,t){for(let n of t??[]){let r=V(e[n]);if(r)return r.slice(0,256)}}function k0(e,t){if(t==="role"){let n=e.slice(0,8).map(r=>r.trim().toLowerCase()).find(r=>["claim","create","update","close","release","review"].includes(r));if(n==="review")return"reviewer";if(n)return"implementer"}}function Bf(e,t){let n=t==="model"?["--model","--agent-model"]:[`--agent-${t}`],r=e.slice(0,8);for(let o=0;o<r.length;o+=1){let i=r[o].slice(0,512);if(n.includes(i))return V(r[o+1])?.slice(0,256);let s=n.find(a=>i.startsWith(`${a}=`));if(s)return V(i.slice(s.length+1))?.slice(0,256)}}var S0=new Set(["implementation","implementer","investigator","orchestrator","planner","release-operator","reviewer"]);function Ot(e,t){if(e!=="role"||t===void 0)return t;let n=t.trim().toLowerCase().replaceAll(/[_\s]+/gu,"-");return S0.has(n)?n:void 0}function Pa(e,t){return V(e?.[t])?.slice(0,256)}var O0=1048576,$a=4194304,Vo=new Map,jf=Object.freeze({}),Ma=new Map,Lf=Object.freeze({});function Ff(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function A0(e){let t;try{t=JSON.parse(e)}catch{return Lf}let n=Ff(t);if(!n)return Lf;let r=[{value:n,depth:0}],o=0,i,s;for(;r.length>0&&o<64;){let a=r.shift();if(o+=1,i??=V(a.value.model)?.slice(0,256),s??=V(a.value.version)?.slice(0,256),i&&s)break;if(!(a.depth>=4))for(let c of Object.values(a.value)){let d=Ff(c);d&&r.push({value:d,depth:a.depth+1})}}return Object.freeze({model:i,version:s})}function Wf(e){try{return me.lstatSync(e).isFile()?"available":"missing"}catch(t){return we(t)?"missing":"failed"}}function I0(e,t){let n;try{n=me.readdirSync(e,{withFileTypes:!0}).filter(o=>o.isDirectory()).sort((o,i)=>o.name.localeCompare(i.name)).slice(0,512).map(o=>{let i=It.join(e,o.name,`${t}.jsonl`);return{candidate:i,status:Wf(i)}})}catch(o){return{status:we(o)?"missing":"failed"}}let r=n.filter(({status:o})=>o==="available").map(({candidate:o})=>o);return r.length===0?{status:n.some(({status:o})=>o==="failed")?"failed":"missing"}:r.length>1?{status:"ambiguous"}:{status:"available",path:r[0]}}function Gf(e,t){let n=V(t.CLAUDE_CODE_SESSION_ID);if(!n||!/^[A-Za-z0-9_-]{1,128}$/u.test(n))return{status:"unavailable"};let r=It.resolve(e.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),o=It.join(e.home_dir??zf.homedir(),".claude","projects"),i=It.join(o,r,`${n}.jsonl`),s=V(e.session_file),a=s&&It.basename(s)===`${n}.jsonl`?s:void 0;for(let c of[a,i]){if(!c)continue;let d=Wf(c);if(d==="available")return{status:d,path:c};if(d==="failed")return{status:d}}return I0(o,n)}function T0(e,t,n){let r=Gf(t,n);if(r.status==="available")try{let o=me.openSync(r.path,me.constants.O_RDONLY|me.constants.O_NOFOLLOW);try{let i=me.fstatSync(o),s=`${r.path}\0${i.size}\0${i.mtimeMs}`,a=Ma.get(s);if(a)return a[e];let c=Math.min(i.size,O0),d=Math.min(c,Math.ceil(c/2)),l=Math.min(c-d,i.size-d),u=Buffer.alloc(d);me.readSync(o,u,0,d,0);let f=Buffer.alloc(l);l>0&&me.readSync(o,f,0,l,i.size-l);let m={},_=i.size<=c?Buffer.concat([u,f]).toString("utf8").split(`
|
|
14
|
+
`):[...u.toString("utf8").split(`
|
|
15
|
+
`).slice(0,4096),...f.toString("utf8").split(`
|
|
16
|
+
`).slice(-4096)];for(let w of _){if(w.length===0||w.length>262144)continue;let v=A0(w);if(m.model??=v.model,m.version??=v.version,m.model&&m.version)break}let y=Object.freeze(m);return Ma.clear(),Ma.set(s,y),y[e]}finally{me.closeSync(o)}}catch{return}}function C0(e,t){let n=0,r=(o,i)=>{if(i>4||n>=512)return;let s;try{s=me.readdirSync(o,{withFileTypes:!0}).sort((a,c)=>c.name.localeCompare(a.name))}catch{return}for(let a of s){if(n+=1,n>512)return;let c=It.join(o,a.name);if(a.isFile()&&a.name.endsWith(`-${t}.jsonl`))return c;if(a.isDirectory()){let d=r(c,i+1);if(d)return d}}};return r(e,0)}function x0(e){if(e<=$a)return[{offset:0,length:e}];let t=Math.floor($a/2);return[{offset:e-t,length:t},{offset:0,length:t}]}function R0(e,t){if(t.length===0||t.length>262144)return;let n;try{n=JSON.parse(t)}catch{return}if(typeof n!="object"||n===null||Array.isArray(n))return;let r=n;if(r.type!=="turn_context")return;let o=typeof r.payload=="object"&&r.payload!==null?r.payload:void 0;e.model??=V(o?.model)?.slice(0,256),e.effort??=V(o?.effort)?.slice(0,256)}function N0(e,t){let n={},r=4096;for(let o of x0(t)){let i=Buffer.alloc(o.length);me.readSync(e,i,0,o.length,o.offset);let s=i.toString("utf8").split(`
|
|
17
|
+
`).reverse().slice(0,r);r-=s.length;for(let a of s)if(R0(n,a),n.model&&n.effort)break;if(n.model&&n.effort||r<=0)break}return n}function D0(e,t,n){let r=V(n.CODEX_THREAD_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let o=It.join(t.home_dir??zf.homedir(),".codex","sessions"),i=`${o}\0${r}`,s=Vo.get(i);if(s)return s[e];let a=C0(o,r);if(!a){Vo.set(i,jf);return}try{let c=me.openSync(a,"r");try{let d=me.fstatSync(c).size,l=N0(c,d);return Vo.set(i,l),l[e]}finally{me.closeSync(c)}}catch{Vo.set(i,jf);return}}function P0(e,t,n,r){let o=Go.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(V(n.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let i=r?.provenance_resolvers[e];if(i==="claude_session_file")return T0(e,t,n);if(i==="codex_session_file")return D0(e,t,n);if(i==="ai_agent_version"){let s=V(n.AI_AGENT);return!s||!r||!Bo(s,r.harness)?void 0:/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(s)?.[1]?.slice(0,256)}}function M0(e,t,n,r){if(e==="ai_agent_version"){let o=V(r.AI_AGENT);return o!==void 0&&Bo(o,t.harness)?"available":"unavailable"}return e==="codex_session_file"?V(r.CODEX_THREAD_ID)!==void 0?"available":"unavailable":Gf(n,r).status}function Ha(e){return e||(Uf.getStore()??{env:process.env,argv:process.argv})}function $0(e,t,n,r){let o=e.environment_keys.some(a=>V(t[a])!==void 0),i=e.argv_markers.some(a=>n.some(c=>{let d=c.replaceAll("\\","/");return Bo(d.slice(d.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>r===a||Bo(r,a));return o||i||s}function j0(e,t){if(!t)return;let n;if(e==="topic"&&(n=t.topic),e==="role"&&(n=t.role),!!n)return{value:n,source:"inferred",confidence:t.confidence,rule_version:t.rule_version,evidence:t.evidence}}function L0(e){let t=e.find(([n])=>n!==void 0);return t?.[0]?{value:t[0],source:t[1]}:void 0}function F0(e,t,n,r,o,i){let s=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,a=new Set([...La,...Object.keys(r?.provenance_environment_keys??{})]),c,d,l;a.has(e)&&(c=Ot(e,V(n[s])?.slice(0,256)),l=Ot(e,Bf(t.argv??[],e)),d=Ot(e,k0(t.argv??[],e)));let u={...r?.provenance_environment_keys,model:r?.model_environment_keys},f={...t.client_info?.provenance,model:t.client_info?.model},m=Pa(o?.provenance,e),_=Ot(e,Ua(n,u[e])),y=Ot(e,Pa(f,e)),w=Ot(e,Pa(t.provenance,e)),v=P0(e,t,n,r);return L0([[c,"override"],[m,"session"],[l,"argv"],[_,"environment"],[y,"mcp_client"],[w,"host"],[v,"probe"]])??j0(e,i)??(d?{value:d,source:"argv"}:void 0)}function z0(e,t){if(!(!e||!t))return b0("sha256").update(`pm-agent-instance:v1\0${e}\0${t}`).digest("hex").slice(0,24)}function U0(e,t,n,r,o){let i=Object.keys(n?.provenance_environment_keys??{}),s=new Set([...La,...i,...Object.keys(n?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(r?.provenance??{})]),a={};for(let c of s){let d=F0(c,e,t,n,r,o);d?a[c]=d:n&&(c!=="version"||n.provenance_unavailable_dimensions.includes(c))&&(a[c]=null)}return a}function A1(e){let t=e.map(Je),n=new Map(Vf.map(i=>[i.harness,i])),r=new Set;for(let i of t){if(r.has(i.harness)||n.has(i.harness))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);let s=pn.get(i.harness);if(s&&!E0(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);r.add(i.harness)}for(let i of t){let s=pn.get(i.harness);pn.set(i.harness,{descriptor:i,registrations:(s?.registrations??0)+1})}let o=!0;return()=>{if(o){o=!1;for(let i of t){let s=pn.get(i.harness);!s||s.registrations<=1?pn.delete(i.harness):s.registrations-=1}}}}function H0(e){let t=Je(e.descriptor),n=e.harness.trim().toLowerCase();if(e.contract_version!==1)throw new Error(`Unsupported provenance adapter contract for "${n}": ${e.contract_version}`);if(t.harness!==n)throw new Error(`Provenance adapter harness "${n}" does not match descriptor "${t.harness}".`);let r=V(e.adapter_version)?.slice(0,64);if(!r)throw new Error(`Provenance adapter "${n}" requires a version.`);if(!Number.isSafeInteger(e.priority))throw new Error(`Provenance adapter "${n}" requires an integer priority.`);if(e.probe_policy.network_access!==!1||e.probe_policy.subprocess_access!==!1||e.probe_policy.max_bytes>$a||e.probe_policy.max_lines>4096)throw new Error(`Provenance adapter "${n}" exceeds the bounded local probe policy.`);return Object.freeze({...e,adapter_version:r,harness:n,descriptor:t,supported_dimensions:Object.freeze(Xe(e.supported_dimensions).map(o=>o.toLowerCase()).sort()),native_sources:Object.freeze([...new Set(e.native_sources)]),probe_policy:Object.freeze({...e.probe_policy}),normalization:Object.freeze({...e.normalization}),...e.waivers?{waivers:Object.freeze(Object.fromEntries(Object.entries(e.waivers).slice(0,32).map(([o,i])=>[o.slice(0,64),i.slice(0,256)])))}:{}})}function I1(){let e=new Map(qf.map(t=>[t.harness,t]));for(let{adapter:t}of At.values())e.set(t.harness,t);return Object.freeze([...e.values()].sort((t,n)=>t.harness.localeCompare(n.harness)))}function T1(e){let t=e.map(H0),n=new Map(qf.map(i=>[i.harness,i])),r=new Set;for(let i of t){if(r.has(i.harness))throw new Error(`Provenance adapter collision for "${i.harness}".`);let s=n.get(i.harness);if(s&&i.priority<=s.priority)throw new Error(`Provenance adapter override for "${i.harness}" requires priority greater than ${s.priority}.`);let a=At.get(i.harness);if(a&&JSON.stringify(a.adapter)!==JSON.stringify(i))throw new Error(`Provenance adapter collision for "${i.harness}".`);r.add(i.harness)}for(let i of t){let s=At.get(i.harness);At.set(i.harness,{adapter:i,registrations:(s?.registrations??0)+1})}let o=!0;return()=>{if(o){o=!1;for(let i of t){let s=At.get(i.harness);!s||s.registrations<=1?At.delete(i.harness):s.registrations-=1}}}}function C1(e,t){let n=t.trim().slice(0,256),r=n.toLowerCase();if(e==="model"){let o=/^(gpt-\d+(?:\.\d+)?)/u.exec(r)?.[1];o&&(r=o)}else r=r.replaceAll(/[_\s-]+/gu,""),r={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"xhigh",max:"max",ultra:"ultra"}[r]??r;return{raw:n,normalized:r,vocabulary:"v1"}}function x1(e,t){return Uf.run(e,t)}function R1(e,t,n={}){let r=e.map(Je);return za(r),Go.run({descriptors:r,probesEnabled:n.probesEnabled!==!1},t)}function qa(e){let t=Ha(e),n=t.env??{},r=za(t.descriptors),o=[...(t.argv??[]).slice(0,3),...t.process_labels??[]].slice(0,64).map(_=>_.slice(0,512)),i=t.client_info?.name.trim().toLowerCase()??"",s=r.find(_=>$0(_,n,o,i)),a=ga(t,n),c=[Ua(n,s?.session_environment_keys),V(t.client_info?.session)?.slice(0,256)].find(_=>_!==void 0),d=z0(s?.harness,c),l=$f({cwd:t.cwd??process.cwd(),env:n,key:d}),u=U0(t,n,s,a,l),f=u.model,m=[["harness",s?.harness],["model",f?.value],["model_source",f?.source],["session",c],["instance",d],["provenance",Object.keys(u).length>0?u:void 0],["episode",a.episode]];return Object.fromEntries(m.filter(_=>_[1]!==void 0))}function q0(e){return e==="unavailable"?{status:"unavailable",reason:"harness_unavailable"}:e==="missing"?{status:"unavailable",reason:"resolver_input_missing"}:{status:"failed",reason:"resolver_failed"}}function V0(e,t,n,r,o,i,s){let a=n?.provenance_resolvers[e];if(t.provenance?.[e])return{status:"resolved",...a?{resolver:a}:{},rule_version:"v1"};if(s)return{status:"unavailable",reason:"invalid_value",rule_version:"v1"};if(a){if(!i)return{status:"unavailable",reason:"probes_disabled",resolver:a,rule_version:"v1"};let c=M0(a,n,r,o);return{...q0(c),resolver:a,rule_version:"v1"}}return{status:n?.provenance_unavailable_dimensions.includes(e)?"unavailable":"not_configured",reason:n?.provenance_unavailable_dimensions.includes(e)?"harness_unavailable":"resolver_not_configured",rule_version:"v1"}}function Kf(e){let t=Ha(e),n=qa(t),r=za(t.descriptors).find(d=>d.harness===n.harness),o=t.env??{},i=t.probes_enabled!==!1&&Go.getStore()?.probesEnabled!==!1&&!["0","false","off"].includes(V(o.PM_AGENT_PROBES)?.toLowerCase()??""),s=ga(t,o),a=[o.PM_AGENT_ROLE,s.provenance?.role,Ua(o,r?.provenance_environment_keys.role),t.client_info?.provenance?.role,t.provenance?.role,Bf(t.argv??[],"role")].some(d=>{let l=V(d)?.slice(0,256);return l!==void 0&&Ot("role",l)===void 0}),c=Object.fromEntries(La.map(d=>[d,V0(d,n,r,t,o,i,d==="role"&&a)]));return{...n,provenance_outcomes:c}}function N1(){return process.env.PM_AUTHOR}function D1(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function P1(e){return qa(e).harness}function B0(e,t,n){let r=Ha(n),o=qa(r);if(e!==void 0){let s=V(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(r.env?.PM_AUTHOR!==void 0){let s=V(r.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=V(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function Yf(e){let t=Wo.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function Xf(e){let t=Wo.getStore();return t?.author!==e?e.startsWith("harness:")?{harness:e.slice(8)}:{}:{...t.harness?{harness:t.harness}:{},...t.model?{model:t.model}:{},...t.model_source?{model_source:t.model_source}:{},...t.session?{session:t.session}:{},...t.instance?{instance:t.instance}:{},...t.provenance?{provenance:t.provenance}:{},...t.episode?{episode:t.episode}:{}}}function M1(e){let t=Wo.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function Jf(e,t){let n=B0(e,t);return Wo.enterWith(n),n.author}import W0 from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="58661057-fa80-5571-9be7-b949723c274b")}catch{}})();async function Ko(e,t){let n=await W0.readFile(e).catch(s=>{if(we(s))return null;throw s}),r=n?.toString("utf8")??null;if(r===null)return{raw:r,raw_bytes:n,entries:[]};if(await sn({path:e,scope:"project"}),r.trim()==="")return{raw:r,raw_bytes:n,entries:[]};let o=Ro(r);if(o)throw new g(`History for ${t} contains merge conflict markers at line ${o.line} (${o.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,h.GENERIC_FAILURE,{code:"history_merge_conflict_markers_detected",required:"Repair the history stream by resolving merge-conflict markers.",why:"Conflict markers break JSONL parsing and invalidate deterministic audit history.",examples:[`pm history ${t}`,`pm restore ${t} <timestamp-or-version>`],nextSteps:["Resolve or restore the history file, then rerun the command."]});let i=[];for(let[s,a]of r.split(/\r?\n/).entries()){let c=a.trim();if(c)try{i.push(JSON.parse(c))}catch{throw new g(`History for ${t} contains invalid JSON at line ${s+1}. Repair or restore the history stream and retry.`,h.GENERIC_FAILURE,{code:"history_json_invalid",nextSteps:[`Run pm history-repair ${t} --salvage-tail --dry-run to check whether only an invalid suffix is damaged.`]})}}return{raw:r,raw_bytes:n,entries:i}}async function Tt(e,t){return(await Ko(e,t)).entries}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3c2c29c0-0034-54d4-9dbd-2e9af047784e")}catch{}})();var V1=1,G0=["docs_add","files_add","history:author-acknowledge","history_author_acknowledge","history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","normalize","release","test_run_track","tests_add","tests_remove","tests_update","update_audit","update_ownership_bypass"],K0=["append","cancel","claim","close","comment_add","create","learning_add","note_add","reopen"],Y0=new Set(G0),X0=new Set(K0),J0=new Set(["actual_result","affected_version","assignee","blocked_by","blocked_reason","close_reason","confidence","customer_impact","definition_of_ready","dependencies","docs","environment","expected_result","files","fixed_version","goal","impact","learnings","notes","objective","order","outcome","parent","release","reminders","reporter","repro_steps","resolution","reviewer","severity","sprint","tests","test_runs","unblock_note","updated_at","value","why_now"]);function Q0(e){let t=e.path.split("/").filter(Boolean);return t[0]==="metadata"||t[0]==="front_matter"?t[1]:t[0]==="body"?"body":void 0}function _n(e){return e.event_class==="substantive"||e.event_class==="maintenance"?e.event_class:Y0.has(e.op)?"maintenance":X0.has(e.op)||e.op!=="update"?"substantive":Array.isArray(e.patch)&&e.patch.length>0&&e.patch.every(t=>{let n=Q0(t);return n!==void 0&&J0.has(n)})?"maintenance":"substantive"}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4a7b042c-7fb8-57a5-8f94-de44f82d7589")}catch{}})();function Z0(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function Qe(e,t){let n=e.slice(0,t),r=n.charCodeAt(n.length-1),o=e.charCodeAt(n.length);return r>=55296&&r<=56319&&o>=56320&&o<=57343?n.slice(0,-1):n}function W1(e){return Z0(e).split(/[^a-z0-9]+/).filter(t=>t.length>0)}function G1(e,t){if(e.length===0&&t.length===0)return 1;if(e.length===0||t.length===0)return 0;let n=new Set(e),r=new Set(t),o=0;for(let s of n)r.has(s)&&(o+=1);let i=new Set([...n,...r]).size;return o/i}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3a66ccfd-51fb-5d4a-b9cd-257c49997d52")}catch{}})();var em=new WeakMap;function J1(e,t){em.set(e,new Set(t))}var Yo='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',ek={context:{row_keys:["high_level","low_level"],fields:"supported"},get:{row_keys:["children"],fields:"supported"},list:{row_keys:["items"],fields:"supported"},next:{row_keys:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],fields:"unsupported"},search:{row_keys:["items"],fields:"supported"},activity:{row_keys:["activity_digest","compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history","diff"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},tk=[{command:"activity",complete_mode:"full",omissions_by_mode:{digest:[{name:"event_rows",restore_with:"--raw"}],compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function Q1(e,t,n){if(e&&t)throw new g(`${n} cannot be combined with --full`,h.USAGE)}function xe(e,t=new Set){let n=e.filter(r=>!t.has(r.name)).map(r=>({...r}));return{has_omissions:n.length>0,omitted_field_group_count:n.length,omitted_field_groups:n}}function Z1(e,t){let n=tk.find(o=>o.command===e);if(n===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===n.complete_mode)return xe([]);let r=n.omissions_by_mode[t];if(r===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return xe(r)}var nk=[{name:"hierarchy",restore_with:"--section hierarchy"},{name:"activity",restore_with:"--section activity"},{name:"progress",restore_with:"--section progress"},{name:"blockers",restore_with:"--section blockers"},{name:"recently_created",restore_with:"--section recently_created"},{name:"unparented",restore_with:"--section unparented"},{name:"files",restore_with:"--section files"},{name:"workload",restore_with:"--section workload"},{name:"staleness",restore_with:"--section staleness"},{name:"tests",restore_with:"--section tests"}];function ie(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var rk=new Set([void 0,"tabular_when_uniform"]),ok=new Set(["collection","none"]),ik=new Set(["supported","unsupported"]);function Qf(e,t){return Array.isArray(e)&&(t||e.length>0)&&e.every(n=>typeof n=="string"&&n.length>0)&&new Set(e).size===e.length}function sk(e){return ie(e)&&typeof e.command=="string"&&e.command.trim().length>0&&ok.has(e.row_kind)&&Qf(e.row_keys,!0)&&(e.continuation_row_keys===void 0||Qf(e.continuation_row_keys,!1))&&ik.has(e.fields)&&rk.has(e.toon_encoding)&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var ak={ancestors:["ids"],descendants:["ids"],predecessors:["ids"],successors:["ids"],paths:["paths"],impact:["affected"],audit:["findings"],communities:["communities"],redundancy:["redundant"],dominators:["bottlenecks"],slack:["rows"],centrality:["rows"],articulation:["articulation_points","bridges"],plan:["steps"]},ck={context:["sections_included","high_level","low_level"],get:["item"],list:["items","projection"],next:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items","projection"],activity:["activity_digest","compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history","diff"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function dk(e,t){let n=e.trim().toLowerCase().split(/\s+/u,1)[0],r=n?.startsWith("list-")?"list":n;if(r==="graph"){let s=typeof t.subcommand=="string"?t.subcommand:"";if(s.length===0)return;let a=ak[s];if(a===void 0)return;let c=a.filter(d=>Array.isArray(t[d])||ie(t[d]));return{command:"graph",row_kind:c.length>0?"collection":"none",row_keys:c,fields:"unsupported",...c.length>0?{jq_selector:Yo}:{},toon_encoding:"tabular_when_uniform"}}let o=ek[r],i=ck[r];return o===void 0||i===void 0||!i.some(s=>Object.hasOwn(t,s))?void 0:(()=>{let s=o.row_keys.filter(a=>{let c=a.split(".").reduce((d,l)=>ie(d)?d[l]:void 0,t);return Array.isArray(c)||ie(c)});return{command:r,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:Yo}:{},toon_encoding:"tabular_when_uniform"}})()}function lk(e){if(!ie(e.projection)||typeof e.projection.mode!="string"||e.projection.mode.trim().length===0)return;let t=e.projection.declared_field_groups,n=e.projection.included_field_groups;if(!Array.isArray(t)||!Array.isArray(n))return;let r=t.filter(s=>ie(s)&&typeof s.name=="string"&&s.name.trim().length>0&&typeof s.restore_with=="string"&&s.restore_with.trim().length>0),o=n.filter(s=>typeof s=="string");if(r.length!==t.length||o.length!==n.length)return;let i=new Set(r.map(s=>s.name));if(!(i.size!==r.length||new Set(o).size!==o.length||o.some(s=>!i.has(s))))return xe(r,new Set(o))}function uk(e){if(!Array.isArray(e.sections_included))return;let t=xe(nk,new Set(e.sections_included.filter(n=>typeof n=="string")));return ie(e.summary)&&e.summary.scope==="matching_items"&&(t.summary_scope="matching_items"),t}function fk(e,t,n){return e==="dependency_provenance"?!1:Object.hasOwn(t,e)||(e==="reminders"||e==="events")&&ie(n.schedule)&&Object.hasOwn(n.schedule,e)||["files","tests","docs"].includes(e)&&ie(n.linked)&&Array.isArray(n.linked[e])&&n.linked[e].length>0}function mk(e){if(!ie(e.item))return;let t=e.item,n=["comments","notes","learnings","files","tests","docs","reminders","events"],r=["body","children","claim_state","linked","schedule"],o=em.get(e),i=a=>n.includes(a)||a==="body"||a==="dependency_provenance"?t:e,s=["body",...n,...r.slice(1),...o?.has("dependency_provenance")?["dependency_provenance"]:[],...o?.has("blockers")||Object.hasOwn(e,"blockers")?["blockers"]:[]].filter(a=>o===void 0||o.has(a)||Object.hasOwn(i(a),a)).map(a=>({name:a,restore_with:a==="blockers"?"--full":a==="dependency_provenance"?"--fields dependencies":`--fields ${a}`}));return xe(s,new Set(s.flatMap(({name:a})=>fk(a,i(a),e)?[a]:[])))}function Zf(e){if(ie(e.projection))return xe([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function pk(e){if(!ie(e.projection))return xe([]);if(typeof e.projection.mode=="string")return xe([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function _k(e){if(!(!ie(e.selected)||typeof e.selected.summary!="boolean"))return xe([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function yk(e,t){let n=lk(t);if(n!==void 0)return n;let[r]=e.split(/\s+/u,1);if(r==="context")return uk(t);if(r==="get")return mk(t);if(r==="list"||r.startsWith("list-"))return Zf(t);if(r==="search")return Zf(t)??xe([{name:"projection_metadata",restore_with:"--full"}]);if(r==="health")return pk(t);if(r==="contracts")return _k(t)}function tm(e,t){if(e===void 0||!ie(t))return t;let n=yk(e,t),r=t.row_contract,o=sk(r)?r:dk(e,t),i=o!==void 0?{...t,row_contract:o}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;return ie(i.omission_receipt)||n===void 0?i:{...i,omission_receipt:n}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b6db58d1-5d89-56b2-adee-13e985ebc675")}catch{}})();var hk=new Set(["applied_bound","completeness","budget_retention_policy","continuation_contract","continuation_kind","continuation_path","filters","omission_receipt","output_budget_truncation","projection","read_output","read_session","row_contract","sorting"]);function J(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function nm(e,t){let n=e;for(let r of t.split("."))if(Array.isArray(n)){if(!/^\d+$/u.test(r))return;n=n[Number(r)]}else{if(!J(n))return;n=n[r]}return n}function Va(e,t,n){let r=t.split("."),o=(i,s)=>{if(s===r.length)return n;let a=r[s];if(Array.isArray(i)){let d=Number(a),l=[...i];return l[d]=o(i[d],s+1),l}let c=i;return{...c,[a]:o(c[a],s+1)}};return o(e,0)}function rm(e,t,n){let r=yn(e).find(s=>s.path===t);if(!r)return e;let o=Array.isArray(r.value)?r.value.slice(n):Object.fromEntries(Object.entries(r.value).slice(n)),i=Va(e,t,o);return J(i.summary)&&J(i.summary.focus_row_states)&&typeof i.summary.focus_row_states[t]=="string"&&(i.summary={...i.summary,focus_row_states:{...i.summary.focus_row_states,[t]:i.summary.focus_row_states[t].slice(n)}}),yr(i),i}function Jo(e){let t=e.row_contract;return J(t)&&Array.isArray(t.row_keys)?t.row_keys.filter(n=>typeof n=="string"&&n.trim().length>0):Object.entries(e).filter(([,n])=>Array.isArray(n)).map(([n])=>n)}function gk(e){let t=e.row_contract;return J(t)&&Array.isArray(t.continuation_row_keys)?t.continuation_row_keys.filter(n=>typeof n=="string"&&n.trim().length>0):Jo(e)}function Ze(e){return Jo(e).flatMap(t=>{let n=nm(e,t);return Array.isArray(n)||J(n)?[{path:t,value:n}]:[]})}function yn(e){return gk(e).flatMap(t=>{let n=nm(e,t);return Array.isArray(n)||J(n)?[{path:t,value:n}]:[]})}function pr(e){let t=Ze(e),n=new Set(t.map(o=>o.path)),r=(o,i)=>{if(Array.isArray(o)){n.has(i)||t.push({path:i,value:o}),o.forEach((s,a)=>r(s,`${i}.${a}`));return}if(J(o))for(let[s,a]of Object.entries(o))i.length===0&&hk.has(s)||r(a,i.length===0?s:`${i}.${s}`)};return r(e,""),t}function Qo(e){return Ze(e).reduce((t,n)=>t+(Array.isArray(n.value)?n.value.length:Object.keys(n.value).length),0)}function _r(e,t){let n=e;for(let r of Ze(n)){let o=Array.isArray(r.value)?r.value.map((i,s)=>t(i,r.path,s)):Object.fromEntries(Object.entries(r.value).map(([i,s],a)=>[i,t(s,r.path,a)]));n=Va(n,r.path,o)}return n}function om(e,t){let n=e,r=!1;for(let o of Ze(n)){let i=Array.isArray(o.value)?o.value:Object.entries(o.value);if(i.length<=t)continue;r=!0;let s=Array.isArray(o.value)?i.slice(0,t):Object.fromEntries(i.slice(0,t));n=Va(n,o.path,s)}return{result:n,truncated:r}}var im=["high_level","low_level","blocked_fallback"];function Xo(e){let t=e.status==="in_progress"?"i":"o";return e.blocked===!0?t.toUpperCase():t}function tM(e,t){if(!J(e.summary)||!J(e.summary.returned_focus))return;let n=new Map(t.map(r=>[r.id,r]));e.summary={...e.summary,focus_row_states:Object.fromEntries(im.map(r=>[r,Array.isArray(e[r])?e[r].filter(J).map(o=>Xo(n.get(o.id)??o)).join(""):""]))}}function bk(e,t){if(e!==void 0){if(typeof e!="string"||e.length!==t||!/^[iIoO]*$/u.test(e))throw new TypeError("Context focus classification receipt must contain one i/I/o/O code per delivered record");return e}}function wk(e,t,n,r){let o=Array.isArray(t[n])?t[n].filter(J):[],i=bk(r[n],o.length)??o.map(Xo).join(""),s=new Map(o.flatMap((d,l)=>d.id===void 0?[]:[[d.id,i[l]]])),a=Array.isArray(e[n])?e[n].filter(J):[],c=!1;return{states:a.map((d,l)=>{let u=s.get(d.id)??(d.id===void 0?i[l]:void 0)??Xo(d);return u!==Xo(d)&&(c=!0),u}).join(""),needsStates:c}}function vk(e,t){typeof e.count=="number"&&(e.count_only===!0||t.count_only===!0?typeof t.count=="number"&&(e.count=t.count):Array.isArray(e.items)&&(e.count=e.items.length))}function yr(e,t=e){if(vk(e,t),!J(e.summary)||!J(e.summary.returned_focus))return;let n={...e.summary},r=J(t.summary)&&J(t.summary.focus_row_states)?t.summary.focus_row_states:{},o=im.map(c=>({key:c,...wk(e,t,c,r)})),i=Object.fromEntries(o.map(({key:c,states:d})=>[c,d])),s=o.some(c=>c.needsStates),a=Object.values(i).join("");typeof n.high_level=="number"&&(n.high_level=Array.isArray(e.high_level)?e.high_level.length:0),typeof n.low_level=="number"&&(n.low_level=Array.isArray(e.low_level)?e.low_level.length:0),n.returned_focus={active_items:a.length,in_progress:[...a].filter(c=>c.toLowerCase()==="i").length,open:[...a].filter(c=>c.toLowerCase()==="o").length,blocked:[...a].filter(c=>c===c.toUpperCase()).length},s?n.focus_row_states=i:delete n.focus_row_states,e.summary=n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="439cf503-a832-58a3-ba19-db44de57b573")}catch{}})();var Zo="changed_fields",Ek="changed_field_count",Ba="rows",kk=new Set(["apply","rollback"]),dm=new Set(["deleted","would_delete"]),sm=256,am={start_task:["claim","update"],pause_task:["update","release"],close_task:["close","release"]};function Sk(e,t){if(!se(e)||typeof e.action!="string"||typeof e.id!="string"||e.id.length===0)return null;let n=Object.hasOwn(am,e.action)?am[e.action]:void 0;if(!n||!n.every(i=>{let s=e[i];return se(s)&&se(s.item)&&s.item.id===e.id&&Array.isArray(s.changed_fields)&&s.changed_fields.every(a=>typeof a=="string")}))return null;let r=e[n.at(-1)],o=um(r);return t.idOnly?o:!t.compactEnvelope&&t.changedFields!=="compact"?null:{...e,...t.compactEnvelope?{...o,changed_field_count:new Set(n.flatMap(i=>e[i].changed_fields)).size}:{},...Object.fromEntries(n.map(i=>[i,hr(e[i],t)]))}}function cm(e){return typeof e!="string"||e.length<=sm?e:`${Qe(e,sm-1)}\u2026`}function Ok(e){if(!se(e))return null;let t={...e};return t.reason=cm(t.reason),se(t.previous_terminal)&&(t.previous_terminal=Object.fromEntries(Object.entries(t.previous_terminal).map(([n,r])=>[n,cm(r)]))),t}function se(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function lm(e){let t=e[Zo];if(!Array.isArray(t))return null;let n=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[r,o]of Object.entries(e))r!==Zo&&(n[r]=o);return n[Ek]=t.length,n}function Ak(e){return"item"in e&&Array.isArray(e[Zo])}function Ik(e){return typeof e.mode=="string"&&kk.has(e.mode)&&Array.isArray(e[Ba])}function Tk(e,t){let n=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(n,e),n[Ba]=t,n}function um(e){if(!se(e))return null;let t=se(e.item)?e.item:se(e.plan)?e.plan:null;if(t===null)return null;let n=typeof t.id=="string"?t.id:void 0,r=typeof e.outcome=="string"&&dm.has(e.outcome)?e.outcome:typeof t.status=="string"?t.status:void 0;return n?r?{id:n,status:r,...typeof e.deleted=="boolean"?{deleted:e.deleted}:{}}:{id:n}:null}function Ck(e,t){if(!se(e))return null;if(se(e.plan)&&se(e.mutation_receipt)&&e.mutation_receipt.kind==="plan_mutation"&&e.mutation_receipt.id===e.plan.id&&e.mutation_receipt.action===e.action)return e.mutation_receipt;if(!t||!se(e.item)||typeof e.item.id!="string")return null;let n=e[Zo];if(!Array.isArray(n))return null;let r={id:e.item.id,...typeof e.outcome=="string"&&dm.has(e.outcome)?{status:e.outcome}:typeof e.item.status=="string"?{status:e.item.status}:{},...typeof e.deleted=="boolean"?{deleted:e.deleted}:{},...typeof e.previous_status=="string"?{previous_status:e.previous_status}:{},changed_field_count:n.length};return xk(e,e.item,r),r}function xk(e,t,n){let r=typeof e.close_reason=="string"?e.close_reason:typeof t.close_reason=="string"?t.close_reason:void 0;r!==void 0&&(n.close_reason=r);let o=Ok(e.recurrence);o!==null&&(n.recurrence=o),Array.isArray(e.warnings)&&e.warnings.length>0&&(n.warnings=e.warnings);for(let i of["recovery","follow_up","handoff","completion"])se(e[i])&&(n[i]=e[i]);if(typeof e.claimed_by=="string"||typeof e.released_by=="string")for(let i of["claimed_by","released_by","previous_assignee","forced","skipped","available","attempts","suggestions"])Object.hasOwn(e,i)&&(n[i]=e[i])}function Rk(e){let t=Ik(e)?e[Ba]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let n=!1,r=t.map(o=>{if(!se(o))return o;let i=lm(o);return i?(n=!0,i):o});return n?{projected:Tk(e,r),changed:!0}:{projected:e,changed:!1}}function hr(e,t={}){let n=Sk(e,t);if(n!==null)return n;if(t.idOnly===!0){let a=um(e);if(a!==null)return a}if(t.compactEnvelope===!0||t.changedFields==="compact"){let a=Ck(e,t.compactEnvelope===!0);if(a!==null)return a}if((t.changedFields??"full")==="full"||!se(e))return e;let r=!1,o=e,i=Ak(e)?lm(e):null;i!==null&&(o=i,r=!0);let s=Rk(o);return s.changed&&(o=s.projected,r=!0),r?o:e}import{AsyncLocalStorage as iO}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1b67272d-8924-5b1b-97cd-74a6a10493be")}catch{}})();function Wa(e){let t=e.trim().toLowerCase().startsWith("extension:"),n=e.trim().toLowerCase().replace(/^extension:/u,"");if(Zt(n))return;let r=Ou()?.commands??[],o=[...r].reverse().find(s=>s.command===n)?.command??(t?void 0:r.find(s=>s.action===n)?.command),i=[...r].reverse().find(s=>s.command===o);return i===void 0||Zt(i.command)||Zt(i.action)?void 0:i}function Nk(e){let t=Wa(e);return t?.read_output===void 0?void 0:t}function fm(e,t){let n=Nk(e),r=n?.read_output;if(r===void 0)return t;if(typeof t!="object"||t===null||Array.isArray(t))throw new g("Read-only extension commands must return a structured object.",h.USAGE,{code:"extension_read_output_invalid"});for(let o of r.row_keys){let i=t;for(let s of o.split("."))i=typeof i=="object"&&i!==null&&Object.hasOwn(i,s)?Reflect.get(i,s):void 0;if(i===null||typeof i!="object")throw new g(`Read-only extension result is missing declared row collection ${o}.`,h.USAGE,{code:"extension_read_output_invalid"})}return{...t,row_contract:{command:`extension:${n.command}`,row_kind:r.row_keys.length>0?"collection":"none",row_keys:[...r.row_keys],fields:"supported",...r.row_keys.length>0?{jq_selector:Yo}:{},toon_encoding:"tabular_when_uniform"}}}import{createHash as US}from"node:crypto";import{createHash as $S}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="03289358-031e-50aa-b94b-644697c4afc7")}catch{}})();var Ga={list:{include:["--brief","--compact","--fields","--full"],amount:["--after","--limit","--no-truncate"],cost:["--token-budget"],encoding:["--format","--stream"]},context:{include:["--fields","--section"],amount:["--after","--depth","--limit"],cost:["--token-budget"],encoding:["--format"]},search:{include:["--compact","--fields","--full"],amount:["--after","--limit"],cost:["--token-budget"],encoding:["--format"]},get:{include:["--fields","--full"],amount:["--depth"],cost:["--token-budget"],encoding:["--format"]},next:{amount:["--blocked-limit","--limit"],encoding:["--format"]},health:{include:["--brief","--check-only","--full","--summary"]},deps:{include:["--collapse","--full","--summary"],amount:["--edge-limit","--max-depth","--node-limit"],cost:["--token-budget"],encoding:["--format"]},graph:{include:["--full","--summary"],amount:["--after","--limit","--max-depth","--max-paths"]},history:{include:["--compact","--full"],amount:["--limit"],encoding:["--format"]},activity:{include:["--compact","--full"],amount:["--limit","--unbounded","--after"],encoding:["--stream"]},validate:{include:["--counts","--full"]},events:{include:["--full"],amount:["--limit"],encoding:["--follow"]},contracts:{include:["--full","--summary"]},comments:{amount:["--limit"]},notes:{amount:["--limit"]},files:{amount:["--limit","--no-truncate","--offset"]},docs:{},stats:{},aggregate:{},duplicates:{amount:["--limit"]},"package-catalog":{},"package-manage":{},"comments-audit":{},assurance:{}},Ka=new Set(["--collapse","--fields","--section"]),ei=Object.freeze({"--after":"--after retains cursor-position semantics; use --output-limit <n> separately to bound returned rows.","--check-only":"--check-only retains health side-effect semantics; --output-include does not suppress vector refresh.","--collapse":"--collapse retains dependency grouping semantics; --output-include does not replace it.","--depth":"--depth retains traversal or detail-depth semantics; --output-limit does not replace it.","--follow":"--follow retains event-tail semantics; --output-format does not enable following.","--max-depth":"--max-depth retains graph traversal-depth semantics; --output-limit does not replace it.","--max-paths":"--max-paths retains graph path-search semantics; use --output-limit separately to bound returned rows.","--no-truncate":"--no-truncate is a compatibility alias; prefer --output-limit unbounded --output-budget unbounded.","--offset":"--offset retains positional pagination semantics; use --output-limit separately to bound returned rows.","--stream":"--stream retains command streaming semantics; --output-format selects only static result encoding.","--unbounded":"--unbounded is a compatibility alias; prefer --output-limit unbounded."});function ti(e){return e.slice(2).replaceAll("-","_")}function mm(e,t={}){let n=e==="package catalog"||e==="packages catalog"||e==="package-catalog"||(e==="package"||e==="packages"||e==="extension")&&(t.catalog===!0||t.target==="catalog"||t.action==="catalog")?"package-catalog":e==="package manage"||e==="package-manage"?"package-manage":e.split(" ")[0],r=n.startsWith("list-")?"list":n==="ctx"?"context":n;return _t.includes(r)?r:void 0}function Ya(e){return new Map((Ga[e]?.include??[]).filter(t=>!Ka.has(t)&&ei[t]===void 0).map(t=>[ti(t),Xa(t)]))}function Xa(e){return e.slice(2).replace(/-([a-z])/gu,(t,n)=>n.toUpperCase())}import{stripVTControlCharacters as Dk}from"node:util";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="493a0675-0114-5b93-b3b4-5bd895ac691f")}catch{}})();var Pk=["full","compact","brief","summary","counts"],hM=["mutation","read","discovery","governance"],_m=["error","warning","validation_summary","recovery_bundle"],Mk=["full","omit_explanation","limit_collections","compact_recovery","action_only"],$k=new Set(["append","claim","close","close-many","close-task","comments","config","copy","create","delete","docs","event","files","focus","history-author-acknowledge","history-compact","history-redact","history-repair","init","item","learnings","meet","notes","pause-task","release","remind","restore","schema","start-task","update","update-many"]),jk=new Set(["contracts","extension","help","install","package","packages","profile","upgrade"]),Lk=new Set(["gc","health","merge","stats","telemetry","test","test-all","validate"]),Fk={mutation:2e3,read:4e3,discovery:3e3,governance:6e3},zk=3,Uk=2,Hk=192,qk={error:{text:768,json:2e3},warning:{text:768,json:2e3},validation_summary:{text:1500,json:3e3},recovery_bundle:{text:768,json:2e3}},Vk=_m.map(e=>({diagnostic_class:e,default_max_estimated_tokens_by_format:qk[e],minimum_max_estimated_tokens:Hk,degradation_ladder:Mk,corrective_action_paths:["required","recovery.suggested_retry","recovery.suggested_retry_args","recovery.next_best_command","next_steps[0]"],token_estimate:"ceil(utf8_bytes / 4)"})),Bk=new Map(Vk.map(e=>[e.diagnostic_class,e]));function Wk(e){let[t=""]=Mn(e).split(/\s+/u);return $k.has(t)?"mutation":jk.has(t)?"discovery":Lk.has(t)?"governance":"read"}function ym(e,t=Wk(e)){let n=e.trim().replace(/\s+/gu," ");if(n.length===0)throw new TypeError("command must be a non-empty command path");let r=Fk[t];return Gk({command:n,budget_class:t,default_max_estimated_tokens:r,default_max_estimated_tokens_by_format:{toon:r,json:Math.ceil(r*zk/Uk)},degradation_ladder:Pk,allows_unbounded_opt_out:!0,token_estimate:"ceil(utf8_bytes / 4)"})}function Gk(e){if(!Number.isSafeInteger(e.default_max_estimated_tokens)||e.default_max_estimated_tokens<=0)throw new RangeError("default_max_estimated_tokens must be a positive safe integer");for(let[t,n]of Object.entries(e.default_max_estimated_tokens_by_format))if(!Number.isSafeInteger(n)||n<=0)throw new RangeError(`default_max_estimated_tokens_by_format.${t} must be a positive safe integer`);return e}var Kk=Br.map(e=>ym(e)),Yk=new Map(Kk.map(e=>[e.command,e]));function hm(e,t={}){let n=e.trim().replace(/\s+/gu," "),[r]=Mn(n).split(" "),o=Yk.get(r);return o?{...o,command:n}:t.generateFallback?ym(n):null}function xt(e){return Math.ceil(Math.max(0,e)/4)}function gm(e){let t=Bk.get(e);if(t===void 0)throw new TypeError(`diagnosticClass must be one of: ${_m.join(", ")}`);return t}function et(e){return xt(Buffer.byteLength(JSON.stringify(e,null,2),"utf8"))}function Xk(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ja(e){if(!Xk(e))return;let t={};for(let n of["suggested_retry","suggested_retry_args","next_best_command","allowed_values","candidate_commands","missing","missing_required_fields","option_scope","retry_after_ms","waited_ms","owner_handoffs"]){let r=e[n];Array.isArray(r)?t[n]=n==="suggested_retry_args"?r:r.slice(0,3):r!==void 0&&(t[n]=r)}return Object.keys(t).length>0?t:void 0}function Jk(e,t){return typeof e!="string"||e.length<=t?e:`${Qe(e,Math.max(1,t-3))}...`}function Ct(e,t){if(Buffer.byteLength(e,"utf8")<=t)return e;let n="...",r=Array.from(e),o=0,i=r.length;for(;o<i;){let s=Math.ceil((o+i)/2),a=`${r.slice(0,s).join("")}${n}`;Buffer.byteLength(a,"utf8")<=t?o=s:i=s-1}return`${r.slice(0,o).join("")}${n}`}function bm(e){let t={};for(let n of["code","required","recovery","next_steps","exit_code","type","title","detail","why","examples"])Object.hasOwn(e,n)&&e[n]!==void 0&&(t[n]=e[n]);for(let[n,r]of Object.entries(e))n!=="__proto__"&&!Object.hasOwn(t,n)&&(t[n]=r);return t}var Qk=new Set(["limit_collections","compact_recovery","action_only"]),Zk=new Set(["compact_recovery","action_only"]);function eS(e){let t={code:typeof e.code=="string"?e.code:"diagnostic",required:Jk(e.required,160)??"Inspect the diagnostic code and retry with corrected input."},n=Ja(e.recovery);return n!==void 0?t.recovery=n:Array.isArray(e.next_steps)&&(t.next_steps=e.next_steps.slice(0,1)),e.exit_code!==void 0&&(t.exit_code=e.exit_code),e.type!==void 0&&(t.type=e.type),t}function tS(e,t){let n=structuredClone(e);if(t!=="full"&&(delete n.why,delete n.examples),Qk.has(t))for(let[r,o]of Object.entries(n))Array.isArray(o)&&(n[r]=o.slice(0,3));if(Zk.has(t)){let r=Ja(n.recovery);r?n.recovery=r:delete n.recovery}return t!=="action_only"?bm(n):eS(n)}function hn(e,t){let n={...e,diagnostic_output:{...t,estimated_tokens:0}};for(let r=0;r<4;r+=1){let o=et(n),i=n.diagnostic_output;if(i.estimated_tokens===o)break;i.estimated_tokens=o}return n}function nS(e,t,n){let r=hn(e,t);for(let i of["recovery","exit_code"])et(r)<=n||e[i]===void 0||(delete e[i],r=hn(e,t));let o=40;for(;et(r)>n&&o>4;)o-=4,e.code=Ct(String(e.code),o),e.required=Ct(String(e.required),o),r=hn(e,t);return r}function rS(e,t){let n=e.diagnostic_output,{estimated_tokens:r,...o}=n,i=o.omitted_fields.slice(0,8).map(u=>Ct(u,32)),s={...o,omitted_fields:i,...o.omitted_fields.length>i.length?{omitted_fields_overflow_count:o.omitted_fields.length-i.length}:{}},a=Ja(e.recovery),c=a&&et(a)<=48?a:void 0,d={code:Ct(String(e.code),320),required:Ct(String(e.required),320),...c?{recovery:c}:{},...e.exit_code!==void 0?{exit_code:e.exit_code}:{}},l=hn(d,s);for(;et(l)>t&&s.omitted_fields.length>0;)s.omitted_fields.pop(),s.omitted_fields_overflow_count=o.omitted_fields.length-s.omitted_fields.length,l=hn(d,s);return l=nS(d,s,t),l}function gM(e,t={}){let n=e,r=t.diagnosticClass??"error",o=gm(r),i=t.maxEstimatedTokens;if(i!==void 0&&(!Number.isSafeInteger(i)||i<o.minimum_max_estimated_tokens))throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${o.minimum_max_estimated_tokens}`);let s=i??o.default_max_estimated_tokens_by_format.json,a=et(n),c=Object.keys(n);if(a<=s)return bm(structuredClone(n));let d;for(let[l,u]of o.degradation_ladder.entries()){let f=tS(n,u),m=c.filter(y=>!Object.hasOwn(f,y)),_=hn(f,{diagnostic_class:r,format:"json",budget:s,budget_source:i===void 0?"default":"explicit",original_estimated_tokens:a,truncated:l>0,degradation_steps:o.degradation_ladder.slice(0,l+1),omitted_fields:m});if(d=_,et(_)<=s)break}return et(d)>s&&(d=rS(d,s)),d}function pm(e){return Dk(e).replace(/\r\n/gu,`
|
|
18
|
+
`).replace(/[^\P{Cc}\n]/gu," ")}function bM(e,t,n={}){let r=n.diagnosticClass??"error",o=gm(r),i=n.maxEstimatedTokens;if(i!==void 0&&(!Number.isSafeInteger(i)||i<o.minimum_max_estimated_tokens))throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${o.minimum_max_estimated_tokens}`);let s=i??o.default_max_estimated_tokens_by_format.text,a=pm(e),c=xt(Buffer.byteLength(a,"utf8")),d=c>s,l=`What is required:
|
|
19
|
+
`,u=`
|
|
20
|
+
|
|
21
|
+
${Ct(a.trimStart().split(/\r?\n/u,1)[0].trim(),320)}
|
|
22
|
+
|
|
23
|
+
Diagnostic output exceeded its declared ${s}-token ceiling; rerun with structured JSON for the bounded recovery envelope.`,f=pm(t).trim()||"Inspect the diagnostic code and retry with corrected input.",m=Math.max(1,s*4-Buffer.byteLength(`${l}${u}`,"utf8")),_=d?`${l}${Ct(f,m)}${u}`:a;return{output:_,diagnostic_output:{diagnostic_class:r,format:"text",budget:s,budget_source:i===void 0?"default":"explicit",original_estimated_tokens:c,estimated_tokens:xt(Buffer.byteLength(_,"utf8")),truncated:d,degradation_steps:d?[...o.degradation_ladder]:["full"],omitted_fields:d?["explanation","collections"]:[]}}}var Qa=Object.freeze({required:"Adjust command input or tracker state and retry.",why:Object.freeze(["pm enforces explicit, deterministic contracts for data and command semantics.","Commander validates CLI contracts before execution.","Unexpected runtime failures can occur from environment or extension-level issues.","Validation protects data consistency and deterministic behavior across commands.","Required options define command intent and enforce deterministic write contracts."]),examples:Object.freeze(["pm --help","pm <command> --help"])});function wM(e){return e?.trim()===Qa.required}function vM(e){let t=e?.trim();return t!==void 0&&Qa.why.includes(t)}function EM(e){return(e??[]).filter(t=>!Qa.examples.includes(t.trim()))}var kM=Object.freeze(["attempted_command","normalized_args","provided_fields"]);function SM(e){if(!e)return;let{attempted_command:t,normalized_args:n,provided_fields:r,...o}=e;return Object.values(o).some(i=>i!==void 0)?o:void 0}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="24a8de41-54f9-5b59-8e58-7ac924ba6e08")}catch{}})();function xM(e){return typeof e=="object"&&e!==null&&"id"in e&&typeof e.id=="string"&&"context_ref"in e&&typeof e.context_ref=="string"&&e.context_ref.startsWith("session:")&&e.context_ref.endsWith(`:${e.id}`)}var Za=256,ec=1e4,oS=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u,wm=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u,iS=new Set(["version","id","token_budget","spent_tokens","seen_item_ids"]),sS=[{valid:e=>e.version===1,reason:"version must equal 1."},{valid:e=>typeof e.id=="string"&&oS.test(e.id),reason:"id must be 1-64 portable identifier characters."},{valid:e=>Number.isSafeInteger(e.token_budget)&&e.token_budget>=Za,reason:`token_budget must be a safe integer of at least ${Za}.`},{valid:e=>Number.isSafeInteger(e.spent_tokens)&&e.spent_tokens>=0&&e.spent_tokens<=e.token_budget,reason:"spent_tokens must be a non-negative safe integer no larger than token_budget."},{valid:e=>Array.isArray(e.seen_item_ids)&&e.seen_item_ids.length<=ec&&e.seen_item_ids.every(t=>typeof t=="string"&&wm.test(t)),reason:`seen_item_ids must contain at most ${ec} portable item identifiers.`}];function ri(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ni(e){throw new g(`--output-session ${e}`,h.USAGE,{code:"invalid_read_output_session",field:"outputSession"})}function oi(e){if(e===void 0)return;let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{ni("must be a valid JSON object.")}ri(t)||ni("must be a JSON object.");let n=Object.keys(t).filter(i=>!iS.has(i));n.length>0&&ni(`contains unknown field "${n.sort()[0]}".`);let r=sS.find(i=>!i.valid(t));r!==void 0&&ni(r.reason);let o=[...new Set(t.seen_item_ids)].sort();return{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:o}}function vm(e){if(ri(e))return typeof e.id=="string"?e.id:typeof e.item_id=="string"?e.item_id:ri(e.item)&&typeof e.item.id=="string"?e.item.id:void 0}function aS(e){let t=new Set,n=0,r=Ze(e),o=new Set(r.map(({path:s})=>s)),i=Object.entries(e).flatMap(([s,a])=>Array.isArray(a)&&!o.has(s)?[{path:s,value:a}]:[]);for(let s of[...r,...i]){let a=Array.isArray(s.value)?s.value:Object.values(s.value);for(let c of a){if(!ri(c))continue;if(typeof c.context_ref=="string"){n+=1;continue}let d=vm(c);d!==void 0&&wm.test(d)&&t.add(d)}}return{deliveredIds:t,suppressedRepeatCount:n}}function Em(e,t){let n=new Set(t.seen_item_ids);return _r(e,r=>{let o=vm(r);return o!==void 0&&n.has(o)?{id:o,context_ref:`session:${t.id}:${o}`}:r})}function tc(e,t,n){let{deliveredIds:r,suppressedRepeatCount:o}=aS(e),i=new Set(t.seen_item_ids),s=[...r].filter(y=>!i.has(y)).sort(),a=s.slice(0,ec-t.seen_item_ids.length),c=[...t.seen_item_ids,...a].sort(),d=s.length-a.length,l={contract_version:1,id:t.id,measurement_scope:"complete_read_envelope",estimator:"ceil(utf8_bytes / 4)",token_budget:t.token_budget,spent_before_tokens:t.spent_tokens,spent_this_call_tokens:0,charged_this_call_tokens:0,spent_total_tokens:t.spent_tokens,remaining_tokens:t.token_budget-t.spent_tokens,exhausted:!1,seen_before_count:t.seen_item_ids.length,new_item_count:r.size,...d===0?{}:{seen_item_overflow_count:d},suppressed_repeat_count:o,reference_format:"session:<session-id>:<item-id>",restore_reference_with:"pm get <item-id> --depth brief",next_state:{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:c}},u={...e,read_session:l},f=y=>{l.spent_this_call_tokens=y,l.charged_this_call_tokens=Math.min(t.token_budget-t.spent_tokens,y),l.spent_total_tokens=Math.min(t.token_budget,t.spent_tokens+l.charged_this_call_tokens),l.remaining_tokens=Math.max(0,t.token_budget-l.spent_total_tokens),l.exhausted=l.remaining_tokens<Za,l.next_state.spent_tokens=l.spent_total_tokens},m=0,_=0;for(let y=0;y<8;y+=1){f(m);let w=gr(u,n);if(w===m)return u;_=Math.max(_,w),m=w}return f(_),u}function km(e){return Math.max(0,e.token_budget-e.spent_tokens)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1cc0fcb7-2aaa-5233-bdfd-4b4d0fb3e9c1")}catch{}})();var br=Symbol.for("pm.readOutputInvocationProvenance");function NM(e,t){return Reflect.set(e,br,{canonical_include_modes:[...t],explicit_legacy_aliases:[],sdk_invocation_observed:!0}),e}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="dd173d3c-f3da-53f3-b24c-118364961db7")}catch{}})();var Rt=["include","amount","cost","encoding"],Rm=["canonical","legacy","intent","default"],vr=fo,XM=Object.freeze(Rt.map(e=>vr[e])),JM=mo;function cS(e,t){let n=ei[e];if(n!==void 0)return n;let r=t==="include"?Ka.has(e)?"<csv>":ti(e):t==="amount"?"<n>":t==="cost"?"<tokens>":"<toon|json>";return`${e} is a compatibility alias; prefer ${vr[t]} ${r}.`}function Nm(e){let t=Ga[e]??{},n=Object.freeze(Object.fromEntries(Rt.map(r=>[r,Object.freeze({dimension:r,canonical_option:vr[r],applicable:!0,inapplicable_reason:null,legacy_aliases:Object.freeze((t[r]??[]).map(o=>Object.freeze({flag:o,semantics:ei[o]===void 0?"replacement":"behavior_preserving",migration_hint:cS(o,r),visibility:"hidden_alias"})))})])));return Object.freeze({command:e,dimensions:n,precedence:Rm,budget_retention_policy:e==="assurance"?"verdict_priority":"ordered_prefix",projection_modes:Object.freeze([...Ya(e).keys()])})}var dS=Object.freeze(_t.map(Nm)),lS=new Map(dS.map(e=>[e.command,e]));function wn(e,t={}){let n=Mn(e.trim().toLowerCase()),r=Wa(n);return r!==void 0?r.read_output===void 0?void 0:`extension:${r.command}`:mm(n,t)}var uS=["outputInclude","output_include","outputLimit","output_limit","outputBudget","output_budget","outputFormat","output_format","outputSession","output_session","outputCursor","output_cursor","outputRowContract","output_row_contract"],fS={comments:["add","body","stdin","file","edit","delete"],notes:["add","addJson","stdin","file","edit","delete"],files:["add","addGlob","remove","migrate","apply","note"],docs:["add","addGlob","remove","migrate","note"],"package-catalog":["activate","adopt","adoptAll","deactivate","doctor","init","install","manage","migrate","reload","scaffold","uninstall"]};function mS(e){return uS.some(t=>t!=="outputFormat"&&t!=="output_format"&&e[t]!==void 0)}var pS=[{keys:["outputInclude","output_include"],valid:e=>wr(e)!==void 0,message:"--output-include requires at least one comma-separated field or section."},{keys:["outputLimit","output_limit"],valid:e=>e==="unbounded"||bn(e)!==void 0,message:"--output-limit must be a positive integer or unbounded."},{keys:["outputBudget","output_budget"],valid:e=>e==="unbounded"||bn(e)!==void 0,message:"--output-budget must be a positive integer or unbounded."},{keys:["outputSession","output_session"],valid:e=>(oi(e),!0),message:"--output-session must be a valid session-state object."},{keys:["outputCursor","output_cursor"],valid:e=>typeof e=="string"&&e.trim().length>0,message:"--output-cursor requires a non-empty continuation cursor."}];function QM(e,t){let n=t.outputFormat??t.output_format;if(n!==void 0&&n!=="json"&&n!=="toon")throw new g("--output-format must be toon or json.",h.USAGE);if(!mS(t))return;let r=wn(e,t);if(!r)throw new g(`Universal output controls apply only to read commands; ${e||"this command"} is not a read surface.`,h.USAGE);if((fS[r]??[]).some(o=>t[o]!==void 0&&t[o]!==!1))throw new g(`Universal output controls cannot be combined with a ${r} mutation.`,h.USAGE);for(let o of pS){let i=o.keys.map(s=>t[s]).find(s=>s!==void 0);if(i!==void 0&&!o.valid(i))throw new g(o.message,h.USAGE)}}function Dm(e){let t=wn(e);return t?Ya(t):new Map}function _S(e,t,n){let r=wr(t)??[],o=Dm(e),i=[],s=[],a=n,c=a[br],d=new Set(c?.canonical_include_modes??[]),l=new Set(c?.explicit_legacy_aliases??[]);for(let m of r){let _=o.get(m);if(_===void 0){i.push(m);continue}let y=`--${m.replaceAll("_","-")}`;oc(rc(n,y))&&l.add(y),n[_]=!0,s.push(m),d.add(m)}let u=wn(e)==="get"?i.filter(m=>m!=="item"):[],f=u.length>0;return f&&(n.fields=[...new Set([...wr(n.fields)??[],...u])].join(","),d.add("fields")),(s.length>0||f)&&(a[br]={canonical_include_modes:[...d],explicit_legacy_aliases:[...l],...c?.cli_invocation_observed===!0?{cli_invocation_observed:!0}:{}}),{selectors:i,modes:s}}function ZM(e,t){let n=t.outputInclude??t.output_include;if(n===void 0)return;let{selectors:r,modes:o}=_S(e,n,t);if(o.length===0)return;let i=r.length>0?r.join(","):void 0;t.outputInclude=i,Object.hasOwn(t,"output_include")&&(t.output_include=i)}function rc(e,t){let n=Xa(t);if(Object.hasOwn(e,n))return e[n];let r=t.slice(2).replaceAll("-","_");if(Object.hasOwn(e,r))return e[r];if(t==="--no-truncate"&&e.truncate===!1)return!0}function oc(e){return e!==void 0&&e!==!1&&e!==null}function wr(e){let t=(Array.isArray(e)?e:[e]).flatMap(n=>typeof n=="string"?n.split(","):[]).map(n=>n.trim()).filter(Boolean);return t.length>0?[...new Set(t)]:void 0}function bn(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function yS(e,t,n,r){for(let o of e.legacy_aliases){if(r(o.flag))continue;let i=rc(t,o.flag),s={value:i,flag:o.flag};if(oc(i)&&n(s))return s}}function Sm(e,t){let n=wr(e);if(n)return{source:"canonical",value:n};if(t)return{source:"legacy",value:wr(t.value)??[ti(t.flag)]}}function Om(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=bn(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;if(t.flag==="--no-truncate"||t.flag==="--unbounded")return{source:"legacy",value:"unbounded"};let r=bn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Am(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let n=bn(e);if(n!==void 0)return{source:"canonical",value:n};if(!t)return;let r=bn(t.value);return r===void 0?void 0:{source:"legacy",value:r}}function Im(e,t){if(e==="json"||e==="toon")return{source:"canonical",value:e};if(t)return t.flag==="--stream"||t.flag==="--follow"?{source:"legacy",value:"stream"}:t.value==="json"||t.value==="toon"?{source:"legacy",value:t.value}:void 0}function Pm(e,t,n){if(!e)return!1;let r=new Set(e.explicit_legacy_aliases);if(e.cli_invocation_observed===!0||e.sdk_invocation_observed===!0)return!r.has(n);let o=new Set(e.canonical_include_modes.map(i=>`--${i.replaceAll("_","-")}`));return t==="include"&&o.has(n)&&!r.has(n)}function hS(e,t,n,r){return e.trim().toLowerCase().replaceAll(/\s+/gu," ").split(" ")[0]==="list-all"||oc(rc(r,"--no-truncate"))&&!Pm(n,"amount","--no-truncate")||t.amount?.flag==="--no-truncate"||t.include?.flag==="--full"||n?.canonical_include_modes.includes("full")===!0}function gS(e,t){return Rt.flatMap(n=>e[n]?.source==="canonical"||n==="include"&&(t?.canonical_include_modes.length??0)>0?[vr[n]]:[])}function Mm(e,t){let n=wn(e,t);if(!n)return;let r=lS.get(n)??Nm(n),o=t[br],i={include:v=>Sm(void 0,v),amount:v=>Om(void 0,v),cost:v=>Am(void 0,v),encoding:v=>Im(void 0,v)},s=Object.fromEntries(Rt.map(v=>[v,yS(r.dimensions[v],t,I=>i[v](I)!==void 0,I=>Pm(o,v,I))])),a=Rt.flatMap(v=>{let I=s[v];return I?[I.flag]:[]}),c=Rt.flatMap(v=>{let I=s[v];return I?[r.dimensions[v].legacy_aliases.find(H=>H.flag===I.flag).migration_hint]:[]}),d=Im(t.outputFormat??t.output_format,s.encoding),l=Sm(t.outputInclude??t.output_include,s.include),u=Om(t.outputLimit??t.output_limit,s.amount),f=Am(t.outputBudget??t.output_budget,s.cost),m=hS(e,s,o,t),_=hm(e,{generateFallback:!0}),y=d?.value==="json"||t.resolvedOutputFormat==="json"?"json":"toon",w=f??(m?{source:"intent",value:"unbounded"}:{source:"default",value:_.default_max_estimated_tokens_by_format[y]});return{command:n,include:l,amount:u,cost:w,encoding:d,canonical_options_used:gS({include:l,amount:u,cost:w,encoding:d},o),legacy_aliases_used:a,migration_hints:c,precedence:Rm}}function Q(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var ic=new Set(["applied_bound","applied_limit","completeness","continuation_kind","continuation_path","continuation_contract","count","filters","has_more","next_cursor","now","omission_receipt","projection","budget_retention_policy","row_contract","sorting","total","truncated"]),bS=["collection_counts","notes_count","tests_count"];function $m(e,t){let n=new Set(t.map(r=>r.split(".")[0]));return Object.fromEntries(Object.entries(e).filter(([r])=>n.has(r)))}function wS(e){let t=Q(e.item)?e.item:{},n=[...new Set([...Object.keys(t),...bS.filter(o=>Object.hasOwn(t,o))])].sort((o,i)=>o.localeCompare(i)),r=Object.keys(e).filter(o=>o!=="item"&&o!=="read_output"&&!ic.has(o)).sort((o,i)=>o.localeCompare(i));return{item:t,itemFields:n,sections:r,valid:[...n,"item",...n.map(o=>`item.${o}`),...r]}}function vS(e,t){let n=wS(e),r=t.filter(l=>!n.valid.includes(l));if(r.length>0)throw new g(`Unknown --output-include selector(s) for get: ${r.join(", ")}. Valid selectors: ${n.valid.join(", ")}.`,h.USAGE);let o=t.includes("item"),i=t.flatMap(l=>l.startsWith("item.")?[l.slice(5)]:n.itemFields.includes(l)?[l]:[]).filter((l,u,f)=>f.indexOf(l)===u);if(o&&i.length>0)throw new g("--output-include cannot mix a full item with projected item fields; use item or item.<field>, not both.",h.USAGE);let s=new Set(t.filter(l=>n.sections.includes(l))),a=Object.fromEntries(Object.entries(e).filter(([l])=>ic.has(l)||s.has(l)));o?a.item=n.item:i.length>0&&(a.item=$m(n.item,i));let c=[...o?[]:i.length>0?n.itemFields.filter(l=>!i.includes(l)).map(l=>({name:`item.${l}`,restore_with:`--output-include item.${l}`})):[{name:"item",restore_with:"--output-include item"}],...n.sections.filter(l=>!s.has(l)).map(l=>({name:l,restore_with:`--output-include ${l}`}))],d=[...Q(a.omission_receipt)&&Array.isArray(a.omission_receipt.omitted_field_groups)?a.omission_receipt.omitted_field_groups:[],...c];return a.omission_receipt={has_omissions:d.length>0,omitted_field_group_count:d.length,omitted_field_groups:d},a}function Tm(e){let t=0;return _r({...e},n=>(Q(n)&&Object.keys(n).length>0&&(t+=1),n)),t}function ES(e,t,n,r){if(Tm(t)===0||Tm(n)>0)return;let o=[...Dm(e).keys()],i=o.length>0?` Declared ${e} projection modes: ${o.join(", ")}.`:` The ${e} surface declares no projection modes; name row fields instead.`;throw new g(`Unknown --output-include selector(s) for ${e}: ${r.join(", ")}. No selector matched any returned row field.${i}`,h.USAGE)}function kS(e,t,n){if(e==="get")return vS(t,n);let r=Jo(t),o=n.flatMap(s=>r.flatMap(a=>s.startsWith(`${a}.`)?[s.slice(a.length+1)]:[])),i=n.some(s=>Object.hasOwn(t,s.split(".")[0])&&!r.some(a=>s.startsWith(`${a}.`)));if(r.length>0&&(!i||o.length>0)){let s={...t},a=o.length>0?o:n,c=_r(s,d=>Q(d)?$m(d,a):d);return ES(e,t,c,a),c}return Object.fromEntries(Object.entries(t).filter(([s])=>n.some(a=>a.split(".")[0]===s)||ic.has(s)))}function SS(e,t){if(t==="unbounded")return e;let{result:n,truncated:r}=om(e,t);if(!r)return n;if(n.has_more=!0,n.truncated=!0,typeof n.count=="number"){let o=Q(n.projection)?n.projection.row_key:void 0;n.count=typeof o=="string"&&Array.isArray(n[o])?n[o].length:Qo(n)}return n.applied_bound={kind:"output_limit",source:"explicit",value:t},n}function OS(e){return Rt.filter(t=>e[t]!==void 0&&e[t]?.source!=="default"||e.canonical_options_used.includes(vr[t]))}function jm(e){let t=e.resolvedOutputFormat??e.outputFormat??e.output_format??e.format;return t==="json"||t==="toon"?t:void 0}function ii(e,t,n,r){let o=tc(e,t,r);gn(e,o);for(let i=0;i<8;i+=1){let s=n.estimated_tokens,a=o.read_session.spent_this_call_tokens;tt(o,n,r);let c=o;o=tc(o,t,r),gn(c,o);let d=o.read_session.spent_this_call_tokens;if(n.estimated_tokens===s&&d===a)return o}return o}function sc(e,t){if(!Q(e.read_output))return e;let n=jm(t),r=e.read_output,o=oi(t.outputSession??t.output_session);return o===void 0?(tt(e,r,n),e):ii(e,o,r,n)}function AS(e,t){if(e!=="validate")return t;let n=Q(t.projection)?t.projection:void 0;if(!(Array.isArray(n?.declared_field_groups)?n.declared_field_groups:[]).some(l=>Q(l)&&l.name==="diagnostic_rows"))return t;let r=[...new Set(pr(t).map(({path:l})=>l).filter(l=>/^checks\.\d+\.details\./u.test(l)))],o=r.filter(l=>!r.some(u=>u!==l&&l.startsWith(`${u}.`)));if(o.length===0)return t;let i=Q(t.row_contract)?t.row_contract:{},s=Array.isArray(i.row_keys)?i.row_keys.filter(l=>typeof l=="string"):[],a=Array.isArray(i.continuation_row_keys)?i.continuation_row_keys.filter(l=>typeof l=="string"):[],c=s.length>0?s:o,d=[...new Set(o)];return JSON.stringify(c)===JSON.stringify(s)&&JSON.stringify(d)===JSON.stringify(a)?t:{...t,row_contract:{...i,row_keys:c,continuation_row_keys:d,jq_selector:typeof i.jq_selector=="string"?i.jq_selector:".checks[].details"}}}function IS(e,t,n,r,o){let i={...e};if(t.include?.source==="canonical"&&(i=kS(t.command,i,t.include.value)),t.command==="assurance"&&(i=Wm(i)),yr(i,e),i=Gm(i,t.command,r),t.command==="history"&&r){let c=["compact_history","provenance_history","history","diff"];if(i=Object.fromEntries(Object.entries(i).filter(([d])=>!c.includes(d)||d===r.path)),Q(i.projection)&&(i.projection={...i.projection,row_key:r.path}),Q(i.row_contract)){let d=i.row_contract;i.row_contract={...d,row_keys:[r.path],...Array.isArray(d.continuation_row_keys)?{continuation_row_keys:[r.path]}:{}}}i.count=Object.keys(i[r.path]).length}let s=e.count_only===!0?{...i,count_only:!0,count:e.count}:i,a=PS(i,e,t.command,r,o);return t.amount?.source==="canonical"&&(i=SS(i,t.amount.value),a.cursorContinuesExistingPage&&Um(i,a.originalItems,a.cursorSource,!0,a.originalItemOffset)),yr(i,s),{projected:n===void 0?i:Em(i,n),continuationState:a}}function TS(e,t){return[...e.cost!==void 0&&e.cost.value!=="unbounded"&&(e.cost.source==="canonical"||e.cost.source==="default"||e.command==="context"&&e.cost.source==="legacy")?[{source:e.cost.source,tokens:e.cost.value}]:[],...t===void 0?[]:[{source:"session",tokens:km(t)}]].sort((n,r)=>n.tokens-r.tokens)[0]}function Lm(e){let t=e.canonical_options_used;return t&&t.length>0?{canonical_options_used:t}:{}}function Fm(e,t){return Q(e.context_intent)&&e.context_intent.command==="context"&&e.context_intent.token_budget===t&&e.context_intent.within_budget===!0}function CS(e,t,n){return e.command!=="next"||(t.tokenBudget??t.token_budget)===void 0?!1:!(Q(n.context_intent)&&n.context_intent.command==="next"&&n.context_intent.within_budget===!0)}function zm(e,t={}){return e?.source==="default"||e?.source==="legacy"&&!Fm(t,e.tokens)?{budget_source:e.source,budget_tokens:e.tokens}:{}}function xS(e,t,n,r,o,i){let s={contract_version:1,command:e.command,requested_dimensions:t,...zm(r),precedence:e.precedence,...Lm(e),legacy_aliases_used:[],migration_hints:[],estimated_tokens:0,within_budget:!1,strings_compacted:!1,rows_compacted:!1,result_omitted:!0,...n===void 0?{omitted_result_estimated_tokens:o}:{}},a={output_budget_exceeded:{omitted_result:!0,reason:"requested_budget_infeasible",restore_with:"Unbounded",recovery:{outputBudget:"unbounded"}},read_output:s},c=n===void 0?a:ii(a,n,s,i);if(n===void 0&&tt(c,s,i),n!==void 0&&s.estimated_tokens>r.tokens)throw new g("The remaining output-session budget cannot fit its mandatory receipts; start a new session with a larger token_budget.",h.USAGE);return c}function RS(e,t,n){return e.command==="context"&&e.cost?.source==="legacy"&&!Fm(n,e.cost.value)||CS(e,t,n)||t.outputRowContract===!0||t.output_row_contract===!0||e.canonical_options_used.includes("--output-include")||e.command==="list"&&e.canonical_options_used.length>0&&e.include?.value.includes("full")===!0}function NS(e,t,n,r,o){if(t!==void 0||RS(e,o,n))return!1;if(e.amount?.source==="canonical"&&e.amount.value!=="unbounded"){let i=e.amount.value;if(Ze(n).some(({value:s})=>(Array.isArray(s)?s.length:Object.keys(s).length)>i))return!1}return e.cost===void 0||e.cost.value==="unbounded"||e.cost.source==="legacy"&&e.command!=="context"||gr(o.outputRowContract===!1?Object.fromEntries(Object.entries(n).filter(([i])=>i!=="row_contract")):n,r)<=e.cost.value}function DS(e,t,n,r,o,i,s){if(!n.rows_compacted)return;let a=t.amount?.value==="unbounded"?["amount"]:[],c=new Map(yn(e).map(_=>[_.path,Array.isArray(_.value)?_.value.length:Object.keys(_.value).length])),d=[...s.entries()].flatMap(([_,y])=>{let w=c.get(_);if(w>=y.rows)return[];let v=y.baseOffset+w;return[{path:_,cursor:ac({command:t.command,path:_,offset:v,total_rows:y.totalRows,fingerprint:y.fingerprint}),retained_rows:w,remaining_rows:y.totalRows-v,total_rows:y.totalRows}]}),l=d[0],u=l?"; page --output-cursor":"",f=r.source==="session"?`Truncated by the remaining ${r.tokens}-token session budget; start a new output session with a larger token_budget${u}.`:`${r.tokens}-token: raise --output-budget${u}`;n.migration_hints=[f,...t.migration_hints];let m=nc({effective_budget_tokens:r.tokens,measured_result_tokens:i});l&&!o&&(typeof e.next_cursor!="string"||e.continuation_kind==="output_cursor")&&(e.next_cursor=l.cursor),e.continuation_kind=o?"producer_cursor":l?"output_cursor":"none",e.output_budget_truncation={reason:"output_budget_reached",budget_source:r.source,budget_tokens:r.tokens,overridden_dimensions:a,compacted_row_paths:n.compacted_row_paths,continuation_cursor_rebased:o,continuation_available:d.length>0,recovery_budget_multiplier:l?1:m.recovery_budget_multiplier,continuations:d,restore_with:l?"recovery":`Retry with --output-budget ${m.output_budget} because no declared row collection can be continued.`,recovery:l?{cursor:l.cursor,cli:"--output-cursor",sdk:"outputCursor",mcp:"outputCursor"}:{cli:`--output-budget ${m.output_budget}`,sdk:{outputBudget:m.output_budget},mcp:{outputBudget:m.output_budget}}}}function Um(e,t,n,r,o){if(typeof n!="string"||!Array.isArray(e.items))return!1;let i=e.items.length,s=t.length;if(i===0||i>=s)return!1;let a;try{a=cc(n)}catch{return!1}let c=a.after_index;if(c===void 0)return!1;let d=t[i-1];if(Object.prototype.toString.call(d)!=="[object Object]")return!1;let l=Reflect.get(d,"id");if(typeof l!="string"||l.length===0)return!1;let u=r?c-(s-i):c+o+i;return u<0?!1:(e.next_cursor=kr(a.fingerprint,l,u,a.snapshot),!0)}function PS(e,t,n,r,o){let i=new Map(yn(e).map(c=>{let d=Array.isArray(c.value)?c.value.length:Object.keys(c.value).length,l=r?.path===c.path;return[c.path,{rows:d,totalRows:l?r.total_rows:d,baseOffset:l?r.offset:0,fingerprint:l?r.fingerprint:si(c.path,c.value,n)}]})),s=typeof e.next_cursor=="string",a=r?.path==="items"?r.offset:0;return{collectionsBeforeBudget:i,originalItems:Array.isArray(t.items)?a>0?t.items.slice(a):t.items:[],originalItemOffset:a,cursorContinuesExistingPage:s,cursorSource:s?e.next_cursor:o.after}}function MS(e,t,n,r,o,i,s,a,c,d){let l={...t,count_only:n},u=r.command==="assurance"&&Array.isArray(e.assertions)?e.assertions.filter(m=>Q(m)&&m.verdict!=="pass").length:0,f=new Map;if(u>0&&f.set("assertions",u),r.command==="history"&&Array.isArray(e.diff))for(let m of pr(e))m.path.startsWith("diff.")&&f.set(m.path,Object.keys(m.value).length);return xm(e,o,i.tokens,f,d,m=>{yr(m,l);let _=Um(m,a.originalItems,a.cursorSource,a.cursorContinuesExistingPage,a.originalItemOffset);if(DS(m,r,o,i,_,c,a.collectionsBeforeBudget),r.command==="history"&&Q(m.projection)){m.has_more=typeof m.next_cursor=="string"||m.applied_bound?.kind==="output_limit";let y=m.projection.row_key;typeof y=="string"&&Array.isArray(m[y])&&(m.count=m[y].length)}s!==void 0&&Object.assign(m,ii(m,s,o,d))},r.command==="history"&&Array.isArray(e.diff))}function Hm(e,t,n){let r=Mm(e,t);if(!r)return n;let o=jm(t),i=oi(t.outputSession??t.output_session),s=t.outputCursor??t.output_cursor,a=typeof s=="string"?Er(s):void 0,c=OS(r),d=AS(r.command,n);if(a===void 0&&NS(r,i,d,o,t))return d;let l=TS(r,i),u=IS(d,r,i,a,t),f=u.projected;gn(f,f,t.outputRowContract===!1);let m={contract_version:1,command:r.command,requested_dimensions:c,...zm(l,f),precedence:r.precedence,...Lm(r),legacy_aliases_used:r.legacy_aliases_used,migration_hints:r.migration_hints,estimated_tokens:0,within_budget:!0,strings_compacted:!1,rows_compacted:!1,result_omitted:!1};if(f.read_output=m,f=i===void 0?f:ii(f,i,m,o),tt(f,m,o),l!==void 0&&m.estimated_tokens>l.tokens){let _=Cm(r.command,t,f);_!==void 0&&(m.applied_depth="brief",m.degradation_reason="output_budget_reached",gn(f,_),f=sc(_,t)),m.estimated_tokens>l.tokens&&(f=MS(f,f,d.count_only===!0,r,m,l,i,u.continuationState,m.estimated_tokens,o))}return l!==void 0&&m.estimated_tokens>l.tokens?xS(r,c,i,l,m.estimated_tokens,o):f}function qm(e){return Q(e)&&Q(e.output_budget_exceeded)&&e.output_budget_exceeded.omitted_result===!0&&e.output_budget_exceeded.reason==="requested_budget_infeasible"}function Vm(e,t){let n=t.outputFormat??t.output_format;if(n==="json"||n==="toon")return n;let r=Mm(e,t)?.encoding;return r?.value==="json"||r?.value==="toon"?r.value:void 0}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f7f59eaa-9d5d-5797-99de-e672fdfba99d")}catch{}})();var jS=4096,LS=Object.freeze(["queue_draining","queue_entries","queue_exists","queue_high_retry_entries","queue_invalid_rows","queue_max_attempts","queue_rows_total","queue_size_bytes","pending_otel_spans","last_attempted_flush_at","last_failed_flush_at","last_otel_attempt_at","last_otel_failure_at","last_otel_success_at","last_successful_flush_at"]),Bm=Object.freeze({health:Object.freeze({version:3,paths:Object.freeze(["checks"]),ignored_detail_field_names_by_row:Object.freeze({telemetry:LS}),guarantee:"nonvolatile_snapshot_and_stable_configuration"})});function Or(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Sr(e){return Array.isArray(e)?e.map(Sr):Or(e)?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,Sr(n)])):e}function Km(e,t){if(!Or(e))return Sr(e);let n=typeof e.name=="string"?e.name:void 0,r=n!==void 0&&Object.hasOwn(t.ignored_detail_field_names_by_row,n)?t.ignored_detail_field_names_by_row[n]:void 0;return Object.fromEntries(Object.entries(e).map(([o,i])=>o!=="details"||!r||!Or(i)?[o,Sr(i)]:[o,Object.fromEntries(Object.entries(i).filter(([s])=>!r.includes(s)).map(([s,a])=>[s,Sr(a)]))]))}function FS(e,t){return Array.isArray(e)?e.map(n=>Km(n,t)):Km(e,t)}function si(e,t,n){let r=n?Bm[n]:void 0,o=r?.paths.includes(e)===!0;return $S("sha256").update(x({path:e,value:o?FS(t,r):t,...o?{fingerprint_policy_version:r.version}:{}})).digest("base64url").slice(0,16)}function ac(e){return Buffer.from(JSON.stringify({v:1,c:e.command,p:e.path,o:e.offset,n:e.total_rows,f:e.fingerprint}),"utf8").toString("base64url")}function zS(e){return typeof e=="string"&&(wn(e)===e||/^extension:\S(?:[^\r\n]*\S)?$/u.test(e))}function Er(e){if(e.length>jS)throw new g("The read-output continuation cursor is malformed or unsupported.",h.USAGE,{code:"read_output_cursor_invalid"});let t;try{t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"))}catch{t=null}if(!Or(t)||t.v!==1||!zS(t.c)||typeof t.p!="string"||t.p.length===0||!Number.isSafeInteger(t.o)||t.o<0||!Number.isSafeInteger(t.n)||t.n<1||typeof t.f!="string"||t.f.length===0)throw new g("The read-output continuation cursor is malformed or unsupported.",h.USAGE,{code:"read_output_cursor_invalid"});return{version:1,command:t.c,path:t.p,offset:t.o,total_rows:t.n,fingerprint:t.f}}function Wm(e){if(!Array.isArray(e.assertions))return e;let t=n=>!Or(n)||n.verdict==="pass"?4:n.verdict==="retired"?3:n.enforcement==="block"?0:n.enforcement==="warn"?1:2;return{...e,assertions:e.assertions.map((n,r)=>({row:n,index:r})).sort((n,r)=>t(n.row)-t(r.row)||n.index-r.index).map(({row:n})=>n),budget_retention_policy:"verdict_priority"}}function Gm(e,t,n){if(!n)return e;if(n.command!==t)throw new g(`The read-output cursor belongs to ${n.command}, not ${t}.`,h.USAGE,{code:"read_output_cursor_command_mismatch"});let r=yn(e).find(i=>i.path===n.path),o=r?Array.isArray(r.value)?r.value.length:Object.keys(r.value).length:0;if(!r||o!==n.total_rows||n.offset>o||si(n.path,r.value,t)!==n.fingerprint)throw new g("The read-output continuation no longer matches the declared row collection; restart the bounded read.",h.USAGE,{code:"read_output_cursor_stale"});return rm(e,n.path,n.offset)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b6a81cf4-3095-5197-8e73-f017d98b1ccf")}catch{}})();var lc=1,Ym=4096,HS=/^[A-Za-z0-9_-]+$/;function dc(e){return e.replace(/^--/u,"").replace(/[-_]([a-z0-9])/gu,(t,n)=>n.toUpperCase())}function p$(e,t){let n=[...Object.values(fo),...mo],r=new Set(n.flatMap(o=>[dc(o),o.slice(2).replaceAll("-","_")]));for(let o of t)if(o.cursor_semantics==="presentation"){r.add(dc(o.flag));for(let i of o.aliases??[])r.add(dc(i))}return Object.fromEntries(Object.entries(e).filter(([o])=>!r.has(o)))}function _$(e,t){return US("sha256").update(e).update("\0").update(x(t)).digest("hex").slice(0,24)}function kr(e,t,n,r){return Buffer.from(JSON.stringify({version:lc,fingerprint:e,after_id:t,...n===void 0?{}:{after_index:n},...r===void 0?{}:{snapshot:r}})).toString("base64url")}function Nt(e,t){return new g(e,h.USAGE,{code:"invalid_query_cursor",nextSteps:[`Repeat the original query without ${t} to obtain a fresh cursor.`]})}function qS(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return t.version===lc&&typeof t.fingerprint=="string"&&typeof t.after_id=="string"&&t.after_id.length>0&&(t.after_index===void 0||Number.isSafeInteger(t.after_index)&&t.after_index>=0)&&(t.snapshot===void 0||typeof t.snapshot=="string"&&t.snapshot.length>0)}function cc(e,t="--after"){if(typeof e!="string")throw Nt("Query cursor is malformed.",t);let n=e.trim();if(n.length===0||n.length>Ym||!HS.test(n))throw Nt("Query cursor is malformed.",t);let r;try{r=JSON.parse(Buffer.from(n,"base64url").toString("utf8"))}catch{throw Nt("Query cursor is malformed.",t)}if(!qS(r)){let o=!1;try{Er(n),o=!0}catch{}throw o?new g(`An output cursor must be continued with --output-cursor, not ${t}.`,h.USAGE,{code:"invalid_query_cursor",nextSteps:[`Repeat the same query, replacing ${t} with --output-cursor ${n}; retain any producer ${t} cursor from the original page.`]}):Nt("Query cursor version or payload is unsupported.",t)}return r}function uc(e,t,n="--after"){let r=cc(e,n);if(r.fingerprint!==t)throw Nt(`Query cursor does not match the current filters, sort, or query (${r.fingerprint} != ${t}).`,n);return{after_id:r.after_id,...r.after_index===void 0?{}:{after_index:r.after_index},...r.snapshot===void 0?{}:{snapshot:r.snapshot}}}function y$(e,t){return uc(e,t).after_id}function VS(e,t,n,r,o="--after"){if(t===void 0)return 0;let i=uc(t,n,o),s=e.findIndex(a=>r(a)===i.after_id);if(s<0){if(i.after_index!==void 0)return Math.min(i.after_index,e.length);throw Nt(`Query cursor item ${i.after_id} is no longer present in this result set.`,o)}return s+1}function h$(e,t){if(t.cursor!==void 0&&uc(t.cursor,t.fingerprint).snapshot!==t.snapshot)throw Nt("Query cursor does not match the requested snapshot.","--after");let n=VS(e,t.cursor,t.fingerprint,t.readId),r=e.slice(n,n+t.limit),o=r.length>0&&n+r.length<e.length,i=r.at(-1);return{rows:r,has_more:o,...o&&i!==void 0?{next_cursor:kr(t.fingerprint,t.readId(i),n+r.length-1,t.snapshot)}:{}}}var g$=Object.freeze({version:lc,max_length:Ym});import{randomUUID as YS}from"node:crypto";import{randomUUID as BS}from"node:crypto";import{constants as vn}from"node:fs";import{lstat as Xm,mkdir as WS,open as Qm,rename as GS,rm as KS}from"node:fs/promises";import ai from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="71b65888-baa5-5c5f-a02c-4a0fd818fadb")}catch{}})();var Fe={max_serving_rows:256,max_bytes:262144,max_event_bytes:32768,retained_byte_fraction:.5,max_events:2048,retention_days:30},Y=class extends TypeError{code="context_usage_validation_failed";constructor(t){super(t),this.name="ContextUsageValidationError"}};function Dt(e){let t=Date.parse(e.now??new Date().toISOString());if(!Number.isFinite(t))throw new Y("Context usage now must be a valid timestamp");return{iso:new Date(t).toISOString(),ms:t}}function Zm(e){let t=e.maxBytes??Fe.max_bytes,n=e.maxEvents??Fe.max_events,r=e.retentionDays??Fe.retention_days;if(!Number.isSafeInteger(t)||t<1024||t>Fe.max_bytes||!Number.isSafeInteger(n)||n<1||!Number.isFinite(r)||r<=0)throw new Y("Context usage retention requires positive maxEvents and retentionDays, and maxBytes from 1024 through 262144");return{maxBytes:t,maxEvents:n,cutoff:Dt(e).ms-r*864e5}}async function ep(e,t){if(!(await Xm(ai.dirname(e))).isDirectory())throw new Y("Context usage runtime must be a real directory");try{if((await Xm(e)).isSymbolicLink())throw new Y("Context usage ledger must not be a symbolic link")}catch(r){if(!de(r))throw r}let n=await Qm(e,t|vn.O_NOFOLLOW|vn.O_NONBLOCK,384);try{let r=await n.stat();if(!r.isFile()||r.nlink!==1)throw new Y("Context usage ledger must be an unshared regular file");return n}catch(r){throw await n.close(),r}}async function ci(e){let t=Zm(e);try{let n=await ep(ai.join(e.pmRoot,"runtime","context-usage.jsonl"),vn.O_RDONLY);try{let r=(await n.stat()).size,o=Math.max(0,r-t.maxBytes),i=Buffer.alloc(Math.min(r,t.maxBytes)),{bytesRead:s}=await n.read(i,0,i.length,o),a=i.subarray(0,s).toString("utf8");return(o>0?a.includes(`
|
|
24
|
+
`)?a.slice(a.indexOf(`
|
|
25
|
+
`)+1):"":a).split(`
|
|
26
|
+
`).flatMap(c=>{try{let d=JSON.parse(c);return d&&Date.parse(d.at)>=t.cutoff?[d]:[]}catch{return[]}}).slice(-t.maxEvents)}finally{await n.close()}}catch{return[]}}function Jm(e,t,n){let r=[],o=0;for(let i=e.length-1;i>=0&&r.length<n;i-=1){let s=`${JSON.stringify(e[i])}
|
|
27
|
+
`;if(o+=Buffer.byteLength(s),o>t)break;r.push(s)}return r.reverse().join("")}async function Ar(e,t,n){let r=Zm(e),o=ai.join(e.pmRoot,"runtime","context-usage.jsonl"),i=Math.floor(r.maxBytes*Fe.retained_byte_fraction),s=Math.min(Fe.max_event_bytes,i);if(t.some(f=>Buffer.byteLength(`${JSON.stringify(f)}
|
|
28
|
+
`)>s))throw new Y("Context usage event exceeds the declared byte ceiling");let a=t.filter(f=>Date.parse(f.at)>=r.cutoff),c=Jm(a,i,r.maxEvents),d=performance.now(),l=await fe(e.pmRoot,"context-usage-ledger",30,`context-usage:${process.pid}`,!1,!1,3e3),u=performance.now()-d;try{await WS(ai.dirname(o),{recursive:!0});let f=await ep(o,vn.O_WRONLY|vn.O_CREAT|vn.O_APPEND);try{let m=(await f.stat()).size,_=n===void 0?void 0:await ci(e);if(_?.some(I=>I.kind==="delivery"&&I.serve_id===n))return{written_bytes:0,ledger_bytes:m,compacted:!1,lock_wait_ms:u};if(!(e.maxEvents!==void 0||e.retentionDays!==void 0)&&m+Buffer.byteLength(c)<=r.maxBytes)return await f.writeFile(c,"utf8"),{written_bytes:Buffer.byteLength(c),ledger_bytes:m+Buffer.byteLength(c),compacted:!1,lock_wait_ms:u};let y=Jm([..._??await ci(e),...a],i,r.maxEvents),w=`${o}.${process.pid}.${BS()}.tmp`,v=await Qm(w,"wx",384);try{try{await v.writeFile(y,"utf8")}finally{await v.close()}return await f.close(),f=void 0,await GS(w,o),{written_bytes:Buffer.byteLength(y),ledger_bytes:Buffer.byteLength(y),compacted:!0,lock_wait_ms:u}}finally{await KS(w,{force:!0})}}finally{await f?.close()}}finally{await l()}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e76b38ce-b2aa-589b-9d17-0952eca9e7a2")}catch{}})();var XS=864e5,di=Symbol.for("@unbrained/pm-cli/context-usage-serving-receipt");function Z(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function x$(e,t){let n=Z(e);n!==null&&t!==null&&(n[di]=t)}function En(e,t){let n=Z(e),r=Z(t),o=n?.[di];r!==null&&o!==void 0&&(r[di]=o)}function JS(e){return Z(e)?.[di]??null}function np(e){let t=Z(e);for(let n of["read_output","context_intent"])if(Z(t?.[n])?.result_omitted===!0)return!0;return!1}function nt(e,t){typeof t=="string"&&t.trim().length>0&&e.add(t.trim())}function rp(e,t){if(Array.isArray(t))for(let n of t)nt(e,Z(n)?.id)}function tp(e,t){if(Array.isArray(t))for(let n of t)nt(e,n)}function QS(e,t){let n=Z(e.recommended)===null?[]:[e.recommended];for(let r of["ready","decision_needed","gate_needed","containers","blocked","held_by_others"])Array.isArray(e[r])&&n.push(...e[r]);for(let r of n){let o=Z(r);nt(t,o?.id);for(let i of Array.isArray(o?.blockers)?o.blockers:[])nt(t,Z(i)?.id);for(let i of Array.isArray(o?.unblocks)?o.unblocks:[])nt(t,i)}}function ZS(e,t){for(let n of["high_level","low_level","blocked_fallback","recently_created","unparented","activity","progress","blockers","staleness"])rp(t,e[n]);for(let n of Array.isArray(e.blockers)?e.blockers:[])nt(t,Z(n)?.blocked_by);eO(e,t)}function eO(e,t){for(let o of Array.isArray(e.hierarchy)?e.hierarchy:[]){let i=Z(o);nt(t,i?.id),rp(t,i?.children)}for(let o of["files","workload"])for(let i of Array.isArray(e[o])?e[o]:[])tp(t,Z(i)?.items);let n=Z(e.agenda);for(let o of Array.isArray(n?.events)?n.events:[])nt(t,Z(o)?.item_id);let r=Z(e.tests);tp(t,r?.items_failing)}function tO(e,t){let n=Z(e);if(n===null||np(e))return[];let r=new Set;return t==="next"?QS(n,r):ZS(n,r),[...r]}async function R$(e){let t=JS(e.result);if(t===null)return!1;let n=np(e.result);return await nO({pmRoot:e.pmRoot,receipt:t,deliveredItemIds:tO(e.result,t.surface),resultOmitted:n}),!0}async function N$(e){if([process.env.PM_CONTEXT_USAGE_DISABLED==="1",e.enabled===!1].includes(!0))return null;if(!e.author.trim()||e.rows.some(o=>!o.id.trim()||!Number.isInteger(o.rank)||o.rank<1))throw new Y("Context usage serving requires an author and valid ranked rows");let t=e.rows.map(o=>({id:o.id.trim(),rank:o.rank,included:o.included}));if(new Set(t.map(o=>o.id)).size!==t.length)throw new Y("Context usage serving requires unique normalized row ids");let n=t.slice(0,Fe.max_serving_rows),r={serve_id:YS(),author:e.author.trim(),surface:e.surface,rows:t,recorded_item_ids:n.map(o=>o.id)};return r.storage=await Ar(e,[{kind:"serve",schema_version:2,serve_id:r.serve_id,at:Dt(e).iso,author:e.author.trim(),surface:e.surface,profile:e.profile.trim()||"balanced",rows:n,candidate_count:t.length,omitted_row_count:t.length-n.length,result_omitted:!1,packed_item_ids:n.filter(o=>o.included).map(o=>o.id)}]),r}async function nO(e){if(e.receipt===null||process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return;let t=new Set(e.receipt.rows.map(i=>i.id)),n=[...new Set(e.deliveredItemIds.map(i=>i.trim()))];if(n.some(i=>i.length===0||!t.has(i))||e.resultOmitted&&n.length>0)throw new Y("Context usage delivery requires emitted ranked ids and zero ids for an omitted result");let r=new Set(e.receipt.recorded_item_ids??e.receipt.rows.map(i=>i.id)),o={kind:"delivery",schema_version:2,serve_id:e.receipt.serve_id,at:Dt(e).iso,author:e.receipt.author,surface:e.receipt.surface,result_omitted:e.resultOmitted,delivered_item_ids:n.filter(i=>r.has(i))};await Ar(e,[o],o.serve_id)}async function D$(e){if(!(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)){if(!e.author.trim()||!e.itemId.trim()||!e.intent.trim())throw new Y("Context usage touch requires author, itemId, and intent");await Ar(e,[{kind:"touch",at:Dt(e).iso,author:e.author.trim(),item_id:e.itemId.trim(),intent:e.intent.trim()}])}}async function P$(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1||e.itemIds.length===0)return;let t=e.author.trim(),n=e.intent.trim();if(!t||!n)throw new Y("Context usage touch requires author and intent");let r=new Set;for(let s of e.itemIds){if(typeof s!="string")throw new Y("Context usage touch requires string itemIds");let a=s.trim();if(!a)throw new Y("Context usage touch requires non-empty itemId");r.add(a)}let o=Dt(e).iso,i=[...r].map(s=>({kind:"touch",at:o,author:t,item_id:s,intent:n}));await Ar(e,i)}function rO(e,t,n,r){return e.find(({entry:o,time:i})=>o.item_id===t&&i>=n&&i-n<=r)?.time}function oO(e,t){let n=new Map;for(let r of e)r.kind==="delivery"&&r.schema_version===2&&r.author===t&&!n.has(r.serve_id)&&n.set(r.serve_id,r);return n}async function M$(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return{affinity:{},positive_judgments:0,serving_events:0,untrusted_serving_events:0};let t=await ci(e),n=Dt(e).ms,r=(e.horizonHours??24)*36e5;if(![Number.isFinite(r),r>0].every(Boolean))throw new Y("Context usage horizonHours must be positive");let o=e.author.trim(),i=t.filter(f=>f.kind==="touch").filter(f=>f.author===o).map(f=>({entry:f,time:Date.parse(f.at)})),s=new Map,a=0,c=0,d=0,l=oO(t,o);t.filter(f=>f.kind==="serve").filter(f=>f.author===o).forEach(f=>{if(![f.schema_version===2,!!f.serve_id].every(Boolean)){c+=1;return}a+=1;let m=Date.parse(f.at),_=l.get(f.serve_id),y=new Set(_?.delivered_item_ids??[]);for(let w of f.rows){if(!y.has(w.id))continue;let v=rO(i,w.id,m,r);if(v===void 0)continue;d+=1;let I=Math.max(0,(n-v)/XS);s.set(w.id,(s.get(w.id)??0)+Math.exp(-I/14))}});let u=Math.max(0,...s.values());return{affinity:Object.fromEntries([...s.entries()].map(([f,m])=>[f,u===0?.05:.05+.95*m/u])),positive_judgments:d,serving_events:a,untrusted_serving_events:c}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="417afa3c-d34b-53d9-b273-86903e17576f")}catch{}})();var ip=Object.freeze([{command:"context",intent:"orient",description:"Bounded active hierarchy, ownership, blockers, and recent progress.",included_field_groups:["summary","focus","hierarchy","blockers","activity"],token_budget:3e3,source:"core"},{command:"context",intent:"handoff",description:"Active ownership, evidence, decisions, and immediate continuation context.",included_field_groups:["summary","focus","in_progress","decisions","activity"],token_budget:2200,source:"core"},{command:"get",intent:"inspect",description:"Standard-depth item metadata, relationships, evidence, and lifecycle state.",included_field_groups:["item","children","claim_state","linked"],token_budget:3200,source:"core"},{command:"list",intent:"triage",description:"A budget-derived page of compact governance, ownership, priority, and blocker rows for triage.",included_field_groups:["identity","governance","ownership","dependencies"],token_budget:3200,source:"core"},{command:"next",intent:"execute",description:"The highest-ranked actionable work with concise ranking evidence.",included_field_groups:["recommended"],token_budget:1200,source:"core"},{command:"search",intent:"discover",description:"A budget-derived page of ranked canonical lineage candidates with compact match evidence.",included_field_groups:["identity","status","lineage","match"],token_budget:1800,source:"core"}]),sp=new iO;function sO(){return sp.getStore()??ip}function G$(e,t){return sp.run(cO(e.workspaceContracts,e.packageContracts),t)}function aO(e,t){let n=e.command.trim().toLowerCase(),r=e.intent.trim().toLowerCase(),o=`${n}:${r}`;if(!/^[a-z0-9][a-z0-9-]*$/.test(n)||!/^[a-z0-9][a-z0-9-]*$/.test(r))throw new TypeError(`Invalid context intent command or name: ${o}`);if(e.description.trim().length===0)throw new TypeError(`Context intent ${o} requires a non-empty description`);if(!Number.isSafeInteger(e.token_budget)||e.token_budget<=0)throw new TypeError(`Context intent ${o} requires a positive integer token_budget`);let i=[...new Set(e.included_field_groups.map(s=>s.trim()).filter(Boolean))];if(i.length===0)throw new TypeError(`Context intent ${o} requires included_field_groups`);return{command:n,intent:r,description:e.description.trim(),included_field_groups:i,token_budget:e.token_budget,source:t}}function cO(e=[],t=[]){let n=[{source:"core",contracts:ip,allowOverride:!1},{source:"package",contracts:t,allowOverride:!1},{source:"workspace",contracts:e,allowOverride:!0}],r=new Map,o=new Set;for(let i of n){o.clear();for(let s of i.contracts){let a=aO(s,i.source),c=`${a.command}:${a.intent}`;if(o.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);if(o.add(c),!i.allowOverride&&r.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);r.set(c,a)}}return[...r.values()].sort((i,s)=>i.command.localeCompare(s.command)||i.intent.localeCompare(s.intent))}function ap(e,t,n=sO(),r=[]){let o=e.trim().toLowerCase(),i=t.trim().toLowerCase(),s=n.find(f=>f.command===o&&f.intent===i);if(s)return{...s,source:s.source??"core"};let a=n.filter(f=>f.command===o).map(f=>f.intent);if(a.length===0)return;let c=a.map(f=>{let m=Array.from({length:i.length+1},(_,y)=>y);for(let _=1;_<=f.length;_+=1){let y=m[0];m[0]=_;for(let w=1;w<=i.length;w+=1){let v=m[w];m[w]=Math.min(m[w]+1,m[w-1]+1,y+(f[_-1]===i[w-1]?0:1)),y=v}}return{candidate:f,distance:m[i.length]}}).sort((f,m)=>f.distance-m.distance||f.candidate.localeCompare(m.candidate))[0].candidate,d=[o,...r,"--for",i],l=[o,...r,"--for",c],u=Xt(l);throw new g(`Unknown context intent "${i}" for ${o}. Did you mean "${c}"?`,h.USAGE,{code:"unknown_context_intent",reason:"unknown_intent",field:"for",flag:"--for",value:i,required:`Use a declared ${o} intent.`,why:"Intent names are command-local contracts and cannot be inferred from output section names.",nextSteps:[u],recovery:{recovery_mode:"compact",attempted_command:Xt(d),allowed_values:[...a].sort(),suggested_retry:u,suggested_retry_args:l}})}var cp={context:(e,t,n)=>{e.section===void 0&&e.depth===void 0&&(e.section=t.intent==="handoff"?["activity","progress","blockers"]:["hierarchy","blockers","activity"]),e.depth===void 0&&(e.depth=t.intent==="handoff"?"deep":"standard");let r=ui(e.tokenBudget,t.token_budget),o=fi("context",t.intent,r,n),i=Pt(e.limit),s=String(i===void 0?o:Math.min(i,o));(e.limit===void 0||i!==void 0)&&(e.limit=s),e.activityLimit===void 0&&(e.activityLimit=s)},get:e=>{e.depth===void 0&&e.fields===void 0&&(e.depth="standard")},list:(e,t,n)=>{e.brief===void 0&&e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.fields="id,title,status,type,priority,parent,assignee,risk,blocked_by");let r=ui(e.tokenBudget,t.token_budget),o=fi("list",t.intent,r,n),i=Pt(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))},next:e=>{e.readyOnly===void 0&&(e.readyOnly=!0)},search:(e,t,n)=>{e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.compact=!0);let r=ui(e.tokenBudget,t.token_budget),o=fi("search",t.intent,r,n),i=Pt(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))}};function K$(e,t,n=[]){let r=t.tokenBudget??t.token_budget;if(typeof t.for!="string"){if(r!==void 0&&(e==="get"||e==="list"||e==="search"))throw new g("--token-budget requires a declared context intent selected with --for",h.USAGE,{code:"missing_required_option",field:"for",required:"Select a context intent with --for when setting --token-budget.",why:"A token-budget override has no projection contract to constrain without a selected intent.",nextSteps:["Retry with --for <intent> --token-budget <n>, or omit --token-budget."]});if(t.tokenBudget!==void 0||t.token_budget===void 0)return t;let a={...t,tokenBudget:r};return delete a.token_budget,a}let o=ap(e,t.for,void 0,n),i=Pt(r)!==void 0,s={...t};return s.tokenBudget===void 0&&r!==void 0&&(s.tokenBudget=r),delete s.token_budget,s.tokenBudget===void 0&&(s.tokenBudget=String(o.token_budget)),cp[e](s,o,i),s}var dO={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},li=256;function fc(e){return Array.isArray(e)?e.map(fc):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,fc(n)])):typeof e=="string"&&e.length>240?`${Qe(e,240)}\u2026`:e}function Pt(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function ui(e,t){let n=Pt(e);if(n===void 0)return t;if(n<li)throw new g(`Context intent token budget must be at least ${li}`,h.USAGE,{code:"invalid_argument_value",reason:"below_minimum",field:"tokenBudget",value:String(e),required:`Use an integer token budget of at least ${li}.`,why:"Smaller ceilings cannot contain the minimum machine-readable intent receipt.",nextSteps:[`Retry with --token-budget ${li} or omit the override.`]});return n}function fi(e,t,n,r){if(e==="get"||e==="next")return;let o=e==="context"&&t==="orient",i=e==="context"?o?1200:800:e==="list"?520:480,s=e==="context"?o?600:500:16,a=Math.max(e==="context"?1:2,Math.floor((n-i)/s));return r?a:Math.min(e==="context"?20:100,a)}function rt(e,t){let n=t.estimated_tokens;for(;;){t.estimated_tokens=n;let r=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(r===n)return;n=r}}var op={context:["high_level","low_level","blocked_fallback","recently_created","unparented","hierarchy","activity","blockers"],get:["children"],list:["items"],next:["ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items"]};function dp(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"));return typeof t.fingerprint!="string"||!Number.isSafeInteger(t.after_index)?void 0:{fingerprint:t.fingerprint,after_index:t.after_index,...typeof t.snapshot=="string"?{snapshot:t.snapshot}:{}}}catch{return}}function lO(e){if(e===null||typeof e!="object")return;if(typeof e.id=="string")return e.id;let t=e.item?.id;return typeof t=="string"?t:void 0}function uO(e,t,n){let r=!1;for(;;){if(rt(e,t),t.estimated_tokens<=t.token_budget||n.length<=1)return r;let o=Buffer.byteLength(JSON.stringify(n),"utf8"),i=(t.estimated_tokens-t.token_budget)*4;n.splice(-Math.min(n.length-1,Math.max(1,Math.ceil(i/Math.max(1,Math.ceil(o/n.length)))))),r=!0}}function fO(e,t,n){let r=e.items,o=typeof e.next_cursor=="string",i=o?e.next_cursor:n.after;if(!Array.isArray(r)||typeof i!="string")return!1;let s=dp(i);if(s===void 0)return!1;let a=r.length,c=[...r],d=!1;for(;;){if(d=uO(e,t,r)||d,!d)return!1;let l=lO(r.at(-1));if(l===void 0)return r.splice(0,r.length,...c),rt(e,t),!1;if(e.next_cursor=kr(s.fingerprint,l,o?s.after_index-(a-r.length):s.after_index+r.length,s.snapshot),rt(e,t),t.estimated_tokens<=t.token_budget||r.length<=1)break}return typeof e.count=="number"&&(e.count=r.length),typeof e.applied_limit=="number"&&(e.applied_limit=r.length),!0}function mO(e,t,n,r){if(e==="list"||e==="search")return fO(t,n,r);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(rt(t,n),n.estimated_tokens<=n.token_budget)return o;let i=op[e].map(f=>({key:f,rows:Array.isArray(t[f])?t[f]:[]})).filter(({rows:f})=>f.length>0).sort((f,m)=>m.rows.length-f.rows.length||f.key.localeCompare(m.key))[0];if(i===void 0)return o;let s=op[e].reduce((f,m)=>f+(Array.isArray(t[m])?t[m].length:0),0);if(s<=1)return o;let a=Math.min(i.rows.length,s-1),c=Buffer.byteLength(JSON.stringify(i.rows),"utf8"),d=Math.max(1,Math.ceil(c/i.rows.length)),l=(n.estimated_tokens-n.token_budget)*4,u=Math.min(a,Math.max(1,Math.ceil(l/d)));i.rows.splice(-u,u),o=!0}}function pO(e,t,n){if(typeof t.for!="string")return n;let r=e.startsWith("list-")?"list":e;if(!(r in cp))return n;let o=r,i=ap(o,t.for),s=ui(t.tokenBudget??t.token_budget,i.token_budget),a={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:s,declared_token_budget:i.token_budget,token_budget_override:s-i.token_budget,estimated_tokens:0,within_budget:!0,degradation:dO[o],declaration_feasible:!0,result_omitted:!1},c={...n},d=fi(o,i.intent,a.token_budget,Pt(t.tokenBudget??t.token_budget)!==void 0);if(d!==void 0){let u=Pt(t.limit),f=u!==void 0&&u<d;a.budget_derived_limit=d,a.binding_constraint=f?"explicit_limit":"token_budget",a.limit_reason=f?"The caller supplied a smaller row limit than the budget-derived ceiling.":"The selected intent token budget constrains the effective row ceiling.",c.budget_derived_limit=d}let l={...c,context_intent:a};return rt(l,a),a.estimated_tokens>a.token_budget&&(a.degradation="recursive_budget_compaction",l={...fc(c),context_intent:a},rt(l,a)),a.estimated_tokens>a.token_budget&&mO(o,l,a,t)&&(a.degradation="budget_row_compaction",rt(l,a)),a.declaration_feasible=a.estimated_tokens<=a.declared_token_budget,a.estimated_tokens>a.token_budget&&(a.degradation="budget_receipt_only",a.result_omitted=!0,a.within_budget=!1,l={budget_exceeded:{omitted_result:!0,reason:a.token_budget_override===0?"declared_budget_infeasible":"effective_budget_infeasible",restore_with:hO(e,o,i.intent,a,c)},context_intent:a}),l}var _O=["applied_limit","completeness","context_intent","count","filters","has_more","now","omission_receipt","projection","row_contract","sorting","total","truncated"];function yO(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let n=dp(e.after)?.fingerprint??"opaque_cursor",r={...t};for(let o of _O)delete r[o];return r.continuation_contract={fingerprint:n,metadata:"reference",restore_with:"omit --after"},r}function mc(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function hO(e,t,n,r,o){let i=t==="get"&&mc(o.item)&&typeof o.item.id=="string"?o.item.id:t==="search"&&typeof o.query=="string"?o.query:void 0,s=i===void 0?"":` '${i.replaceAll("'",`'"'"'`)}'`,a=t==="get"?"":` --limit ${r.budget_derived_limit??1}`;return`pm ${e}${s} --for ${n} --token-budget ${Math.ceil(r.estimated_tokens/100)*100}${a}`}function kn(e,t){if(mc(e))return typeof e[t]=="number"?e[t]:void 0}function gO(e,t){let n=e;for(let r=0;r<8;r+=1){let o=kn(n.context_intent,"estimated_tokens"),i=kn(n.read_output,"estimated_tokens"),s=kn(n.read_session,"spent_this_call_tokens");if(mc(n.context_intent)&&rt(n,n.context_intent),n=sc(n,t),kn(n.context_intent,"estimated_tokens")===o&&kn(n.read_output,"estimated_tokens")===i&&kn(n.read_session,"spent_this_call_tokens")===s)break}return n}function lp(e,t,n){let r=tm(e,fm(e??"",n)),o=typeof r=="object"&&r!==null&&!Array.isArray(r)?Hm(e??"",{...t,outputRowContract:t.outputRowContract===!0||t.output_row_contract===!0},yO(t,pO(e??"",t,r))):r;if(En(n,o),t.outputRowContract===!0||t.output_row_contract===!0||typeof o!="object"||o===null||Array.isArray(o)||!Object.hasOwn(o,"row_contract"))return o;let i=Object.fromEntries(Object.entries(o).filter(([a])=>a!=="row_contract"));Object.defineProperty(i,"row_contract",{value:o.row_contract,enumerable:!1,configurable:!0});let s=gO(i,t);return delete s.row_contract,En(o,s),s}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="cb1266f3-8375-586f-87c6-356cf7843969")}catch{}})();var Sn=["result_rows","envelope","diagnostics","hints"],bO=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,wO=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,vO=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,EO=8;function pc(e){return Buffer.byteLength(e,"utf8")}function up(e){return pc(JSON.stringify(e)??"null")}function kO(e,t){return wO.test(e)?"diagnostics":vO.test(e)?"hints":bO.test(e)||Array.isArray(t)?"result_rows":"envelope"}function SO(e){let t={result_rows:0,envelope:0,diagnostics:0,hints:0};if(typeof e!="object"||e===null||Array.isArray(e))return t[Array.isArray(e)?"result_rows":"envelope"]=up(e),t;for(let[n,r]of Object.entries(e))t[kO(n,r)]+=up({[n]:r});return Object.values(t).every(n=>n===0)&&(t.envelope=1),t}function OO(e,t){let n=Sn.reduce((s,a)=>s+t[a],0),r=Sn.map(s=>({section:s,value:e*t[s]/n})),o={result_rows:0,envelope:0,diagnostics:0,hints:0};for(let s of r)o[s.section]=Math.floor(s.value);let i=e-Sn.reduce((s,a)=>s+o[a],0);for(let s of[...r].sort((a,c)=>c.value-Math.floor(c.value)-(a.value-Math.floor(a.value))||Sn.indexOf(a.section)-Sn.indexOf(c.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function fp(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function mp(e,t){let n=pc(t(e)),r=OO(n,SO(e)),o=Object.fromEntries(Sn.map(a=>[a,{bytes:r[a],estimated_tokens:xt(r[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:n,total_estimated_tokens:xt(n),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=fp(e,i);for(let a=0;a<EO;a+=1){let c=pc(t(s))-n;if(c===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:c,accounting_receipt_estimated_tokens:xt(c)},s=fp(e,i)}return s}import{encode as hc}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d3d21124-3c8a-5049-803d-00c63c0c2b61")}catch{}})();function pp(e,t={}){let n=[...new Set(e.flatMap(l=>Object.keys(l)))],r=t.compact?n.filter(l=>e.every(u=>Object.hasOwn(u,l)&&u[l]===null)):[],o=t.compact?n.filter(l=>e.every(u=>{if(!Object.hasOwn(u,l))return!0;let f=u[l];return Array.isArray(f)&&f.every(m=>typeof m=="string"&&m!==""&&!m.includes(";"))})):[],i=new Set(o),s=new Set(r),a=n.filter(l=>!i.has(l)&&e.some(u=>{let f=u[l];return f!==null&&typeof f=="object"})),c=new Set(a),d=[];return{rows:e.map((l,u)=>Object.fromEntries(n.filter(f=>!s.has(f)).map(f=>{if(!Object.hasOwn(l,f))return d.push([u,f]),[f,null];let m=l[f];return i.has(f)?[f,m.join(";")]:[f,c.has(f)?JSON.stringify(m):m]}))),encoding:{json_columns:a,absent:d,...o.length?{list_columns:Object.fromEntries(o.map(l=>[l,";"]))}:{},...r.length?{null_columns:r,null_column_index:r.map(l=>n.indexOf(l))}:{}}}}function AO(e,t){let n=t.null_columns??[],r=t.null_column_index??[],o=[...e],i=n.map((s,a)=>({column:s,position:r[a]})).filter(s=>typeof s.position=="number").sort((s,a)=>s.position-a.position);for(let{column:s,position:a}of i)o.splice(Math.min(a,o.length),0,s);for(let s of n)o.includes(s)||o.push(s);return o}function Q$(e){let t=new Set(e.encoding.json_columns),n=new Map(Object.entries(e.encoding.list_columns??{})),r=new Set(e.encoding.absent.map(([o,i])=>JSON.stringify([o,i])));return e.rows.map((o,i)=>{let s=new Map(Object.entries(o).flatMap(([c,d])=>{if(r.has(JSON.stringify([i,c])))return[];let l=n.get(c),u=l!==void 0?d===""?[]:String(d).split(l):t.has(c)?JSON.parse(String(d)):d;return[[c,u]]}));for(let c of e.encoding.null_columns??[])s.set(c,null);let a=e.encoding.column_order??AO(Object.keys(o),e.encoding);return Object.fromEntries(a.filter(c=>s.has(c)).map(c=>[c,s.get(c)]))})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="88ed7e44-a3a0-5a23-9d7b-b00087bff331")}catch{}})();var tj=["id","title","status","type","priority","parent","updated_at"],mi=["id","status","type","title"],nj={list:"brief","list-all":"full","list-draft":"full","list-open":"brief","list-in-progress":"brief","list-blocked":"brief","list-closed":"brief","list-canceled":"full"},IO=["tree_depth","tree_parent","tree_children","tree_title"];function rj(e=[]){return[...new Set([...Ee,"body",...IO,...e])].flatMap(t=>[t,`item.${t}`]).sort()}var TO=["brief","standard","deep"],oj=[...TO,"full"],ij=["brief","standard","deep"],CO=["body","linked","claim_state","children","schedule","blockers"],xO=["linked.files","linked.tests","linked.docs"],RO=["claim_state.claimed","claim_state.assignee","claim_state.last_claim","claim_state.last_release"],NO=["schedule.deadline","schedule.start_at","schedule.end_at","schedule.location","schedule.reminders","schedule.events"];function sj(e=[]){return[...[...new Set([...Ee,...e,"notes_count","tests_count","collection_counts"])].flatMap(t=>[t,`item.${t}`]),...CO,...xO,...RO,...NO].sort()}var aj=["id","title","status","type","priority","updated_at","score","matched_fields"],DO=["score","matched_fields","highlights"],_p=["id","title","description","type","status","priority","tags","created_at","updated_at","deadline","assignee","author","estimated_minutes","acceptance_criteria","dependencies","comments","notes","learnings","reminders","events","files","tests","docs","close_reason","parent","reviewer","risk","confidence","sprint","release","blocked_by","blocked_reason","reporter","severity","environment","repro_steps","resolution","expected_result","actual_result","affected_version","fixed_version","component","regression","customer_impact","definition_of_ready","order","rank","goal","objective","value","impact","outcome","why_now","plan"];function cj(e=[]){let t=[...new Set(e)];return[...DO,..._p,..._p.map(n=>`item.${n}`),...t,...t.map(n=>`item.${n}`)].sort()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="95103919-d686-5c3b-bd51-928f5b2314ef")}catch{}})();function On(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function PO(e){if(!On(e))return!1;let t=e.fields;return e.mode==="brief"&&Object.keys(e).length===2&&Array.isArray(t)&&(t.length===mi.length||t.length===mi.length+1&&t.at(-1)==="priority")&&mi.every((n,r)=>t[r]===n)}function MO(e,t){return typeof e.has_more=="boolean"&&e.truncated===e.has_more&&e.count===t&&typeof e.total=="number"&&Number.isSafeInteger(e.total)&&(e.has_more?e.total>t&&typeof e.next_cursor=="string"&&e.next_cursor.length>0:e.total===t&&e.next_cursor==null)}function $O(e){return On(e)&&(e.status==="complete"||e.status==="unchecked")&&e.unreadable_item_count===0&&e.unreadable_directory_count===0}function jO(e){if(!On(e)||!Array.isArray(e.omitted_field_groups))return!1;let t=e.omitted_field_groups,n=t[0];return e.has_omissions===!0&&e.omitted_field_group_count===1&&Object.keys(e).length===3&&t.length===1&&On(n)&&Object.keys(n).length===2&&n.name==="full_item_fields"&&n.restore_with==="--full"}function yp(e){if(!On(e)||!Array.isArray(e.items)||Object.hasOwn(e,"details")||!PO(e.projection)||!$O(e.completeness)||!MO(e,e.items.length)||!jO(e.omission_receipt))return e;let{total:t,has_more:n,truncated:r,next_cursor:o,completeness:i,projection:s,now:a,omission_receipt:c,sorting:d,...l}=e,u=i.status==="complete"&&!n&&Object.keys(i).length===3,{unreadable_item_count:f,unreadable_directory_count:m,..._}=i;return{...l,...u?{}:{total:t,has_more:n,completeness:_},...n?{next_cursor:o}:{},...On(d)&&d.sort==="default"&&d.order==="asc"&&Object.keys(d).length===2?{}:{sorting:d},details:"--full"}}import{isBoxedPrimitive as LO}from"node:util/types";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1b399abd-460a-55a5-9df2-db23537aac0d")}catch{}})();var hp=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/gu;function _j(e){return e.replaceAll(hp,"\uFFFD")}function FO(e,t,n){return n&&/^\d+$/u.test(t)?`${e}[${t}]`:/^[A-Za-z_$][\w$]*$/u.test(t)?`${e}.${t}`:`${e}[${JSON.stringify(t)}]`}function _c(e,t,n){if(typeof e=="string"){let r=e.search(hp);return r<0?void 0:{field:t,index:r}}if(!(e===null||typeof e!="object"||n.has(e))){n.add(e);for(let[r,o]of Object.entries(e)){let i=FO(t,r,Array.isArray(e)),s=_c(r,`${i} (key)`,n)??_c(o,i,n);if(s)return s}}}function gp(e,t,n){if(e===null||typeof e!="object")return e;if(LO(e)||typeof e.toJSON=="function")return JSON.parse(JSON.stringify({[t]:e}))[t];if(n.has(e))return n.get(e);let r=Array.isArray(e)?new Array(e.length):{};n.set(e,r);for(let o of Object.keys(e))Object.defineProperty(r,o,{value:gp(e[o],o,n),enumerable:!0,configurable:!0,writable:!0});return r}function yc(e){let t=gp(e,"",new WeakMap),n=_c(t,"$",new WeakSet);return n&&zO(n),t}function zO(e){throw new g(`Output field ${e.field} contains an unpaired surrogate code unit at index ${e.index}; structured output requires well-formed Unicode.`,h.USAGE,{code:"text_unpaired_surrogate",field:e.field,required:"Well-formed UTF-16 strings and object keys in both JSON and TOON output.",nextSteps:["Repair the producer's text before returning output; use toWellFormedText from @unbrained/pm-cli/sdk when replacement is intended."]})}function yj(e){yc(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c705626-fd81-5b65-94cb-760600a88f7c")}catch{}})();var UO=new Set(Object.values(h)),HO=new Map([["notes_count","notes"],["tests_count","tests"]]),gc="__pm_native_output",bp=!1;function L(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ec(e){let t={read_output:{result_omitted:!0}};En(e,t),So(t)}function qO(e,t,n){if(n){So(e);return}Ec(t)}function VO(e){if(!L(e)||e[gc]!==!0)return e;let{[gc]:t,...n}=e;return n}function bc(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function BO(){(process.exitCode===void 0||process.exitCode===h.SUCCESS)&&(process.exitCode=h.SUCCESS)}function WO(){(process.exitCode===void 0||process.exitCode===h.SUCCESS)&&(process.exitCode=h.GENERIC_FAILURE)}function wc(e){if(e==="stdout"){BO();return}WO()}function wp(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function GO(){bp||(bp=!0,process.stdout.on("error",e=>{if(bc(e)){wc("stdout");return}wp(e)}),process.stderr.on("error",e=>{if(bc(e)){wc("stderr");return}wp(e)}))}function vp(e,t){GO();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(n){if(bc(n))return wc(e),!1;throw n}}function KO(e){return vp("stdout",e)}function Ir(e){return vp("stderr",e)}function Ep(e){return typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"?String(e):e===null?"null":JSON.stringify(e)}function vc(e,t){let n=" ".repeat(t);return e.split(`
|
|
29
|
+
`).map(r=>`${n}${r}`).join(`
|
|
30
|
+
`)}function YO(e){let t=new Set,n=0;for(let r of e){let o=Object.keys(r);n+=o.length;for(let i of o)t.add(i)}return e.length*t.size<=n*2}function XO(e,t,n,r){let o=" ".repeat(n);if(!L(t)&&!Array.isArray(t))return`${o}${e}: ${Ep(t)}`;if(Array.isArray(t)){if(t.length===0)return`${o}${e}: []`;let i=vc(hc({[e]:t}),n);return r&&t.length>=1&&t.every(L)&&YO(t)?[!1,!0].map(s=>{let a=pp(t,{compact:s});return vc(hc({[e]:a.rows,[`${e}_encoding`]:a.encoding}),n)}).reduce((s,a)=>Buffer.byteLength(a)<Buffer.byteLength(s)?a:s,i):i}return L(t)&&Object.keys(t).length===0?`${o}${e}: {}`:`${o}${e}:
|
|
31
|
+
${kp(t,n+1)}`}function JO(e,t,n){let r=e.map(o=>_i(o,t,n||t.preserveRowFacts&&L(o))).filter(o=>o!==void 0);return r.length>0||n?r:void 0}function _i(e,t={omitDuplicateCountAliases:!0,preserveRowFacts:!0},n=!1){if(e===null)return n?null:void 0;if(Array.isArray(e))return JO(e,t,n);if(L(e)){let r=[],o=Object.entries(e).filter(([i,s])=>{let a=HO.get(i);return!t.omitDuplicateCountAliases||a===void 0||!L(e.collection_counts)||s!==e.collection_counts[a]});for(let[i,s]of o){if(i==="omitted_field_groups"&&Array.isArray(s)&&s.length===0){r.push([i,[]]);continue}let a=_i(s,t,n);a!==void 0&&r.push([i,a])}return r.length>0||n?Object.fromEntries(r):void 0}return e}function kp(e,t){let n=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":vc(hc(e),t);if(L(e)){let r=Object.entries(e);return r.length===0?"{}":r.map(([o,i])=>XO(o,i,t,!Object.hasOwn(e,`${o}_encoding`)&&!(o==="checks"&&L(e.verdict)&&e.verdict.authority==="ok"))).join(`
|
|
32
|
+
`)}return`${n}${Ep(e)}`}function QO(e){if(!L(e)||e.output_default!=="markdown"||typeof e.view!="string"||!Array.isArray(e.events)||!Array.isArray(e.days))return null;let t=[`# pm calendar (${e.view})`,""],n=L(e.summary)?e.summary:{};if(t.push(`- events: ${String(n.events??0)}`),t.push(""),e.events.length===0)return t.push("No calendar events matched the selected filters."),`${t.join(`
|
|
33
|
+
`)}
|
|
34
|
+
`;for(let r of e.events){if(!L(r))continue;let o=typeof r.kind=="string"?r.kind:"event",i=typeof r.item_title=="string"?r.item_title:"",s=typeof r.item_id=="string"?r.item_id:"",a=typeof r.reminder_text=="string"&&r.reminder_text.length>0?` ${r.reminder_text}`:"";t.push(`- [${o}] ${s} ${i}${a}`.trim())}return`${t.join(`
|
|
35
|
+
`)}
|
|
36
|
+
`}var ZO=new Set(["filters","now","projection","sorting"]);function eA(e){let t=_i(e,{omitDuplicateCountAliases:!1,preserveRowFacts:!1});if(!L(t)||!Array.isArray(t.items))return t??null;let n=Object.fromEntries(Object.entries(t).filter(([r])=>!ZO.has(r)));return n.has_more!==!0&&delete n.next_cursor,n}function tA(e,t){if(!L(e)||!Array.isArray(e.run_results)||!e.run_results.every(L))return e;let n=e.run_results,r=nA(n),o=n.map(i=>{let{execution_context:s,stdout:a,stderr:c,...d}=i;return r===void 0?i:!t||i.status!=="passed"?{...d,stdout:a,stderr:c}:d});return t&&rA(e,r,n)?oA(e,r,o):{...e,...r===void 0?{}:{execution_context:r},run_results:o}}function nA(e){let t=e.map(r=>r.execution_context).filter(r=>r!==void 0);if(t.length!==e.length||t.length===0)return;let n=JSON.stringify(t[0]);return t.every(r=>JSON.stringify(r)===n)?t[0]:void 0}function rA(e,t,n){if(e.ok!==!0||!L(t)||t.mismatch_detected!==!1||!n.every(o=>o.status==="passed"))return!1;let r=e.failure_categories;return!(L(r)&&Object.values(r).some(o=>o!==0))}function oA(e,t,n){let{failure_categories:r,...o}=e,i=L(t.trust)?t.trust:{};return{...o,execution_context:{pm_context_mode:t.pm_context_mode,workspace_context_mode:t.workspace_context_mode,mismatch_detected:!1,...typeof i.trusted=="boolean"?{trusted:i.trusted}:{},...i.reason===void 0?{}:{trust_reason:i.reason},restore_with:"not retained; a run without --lean reports the full context"},run_results:n}}function iA(e){return!L(e)||e.ok!==!0||!L(e.verdict)||e.verdict.authority!=="ok"||!Array.isArray(e.checks)?e:{...e,checks:e.checks.map(sA)}}function sA(e){if(!L(e)||e.ok!==!0||!L(e.details)||Object.keys(e.details).length!==0)return e;let{details:t,...n}=e;return n}function pi(e,t,n=!1){if(e=yc(e),t==="json"){let o=n?eA(e):e,i=L(e)&&L(e.projection)&&e.projection.mode==="brief"&&Array.isArray(e.items);return`${JSON.stringify(o,null,i?void 0:2)}
|
|
37
|
+
`}let r=_i(iA(yp(e)),{omitDuplicateCountAliases:!0,preserveRowFacts:!0});return r===void 0?`{}
|
|
38
|
+
`:`${kp(r,0)}
|
|
39
|
+
`}function aA(e,t,n,r){let o=t?{handled:!1,result:e,warnings:[]}:Ys("output_format",{command:n.command,args:n.commandArgs,command_options:n.commandOptions,global:{...n},pm_root:n.pmRoot,format:r,options:{...n},result:e}),i=o.warnings.find(s=>s.startsWith("extension_output_format_payload_echo_deprecated:"));return i!==void 0&&Ir(`Warning: ${i}. Returning context.payload now declines safely for compatibility; migrate the override to declineServiceOverride() or { handled: false }.
|
|
40
|
+
`),o.handled&&typeof o.result=="string"?{result:o.result,rendered:o.result.endsWith(`
|
|
41
|
+
`)?o.result:`${o.result}
|
|
42
|
+
`,structuredDeliveryPreserved:!1}:{result:o.handled?o.result:e,rendered:null,structuredDeliveryPreserved:!o.handled||L(o.result)}}function cA(e,t,n,r){let o=Au(),i=n.command??o?.command,s={...o?.options,...n.commandOptions,...Object.fromEntries([["outputInclude",n.outputInclude],["outputLimit",n.outputLimit],["outputBudget",n.outputBudget],["outputFormat",n.outputFormat],["outputSession",n.outputSession],["outputCursor",n.outputCursor],["outputRowContract",n.outputRowContract]].filter(I=>I[1]!==void 0))},a=Vm(i??"",s)??r,c={...s,resolvedOutputFormat:a},d={...n,command:i,commandOptions:c},l=aA(e,t,d,a);if(l.rendered!==null)return Ec(e),l.rendered;let u=l.result;En(e,u);let f=i==="test"?tA(u,n.lean===!0):u,m=lp(i,c,f);qm(m)&&(process.exitCode||=h.USAGE);let{structuredDeliveryPreserved:_}=l,y=I=>{if(a==="toon"){let X=QO(I);if(X!==null)return X}let H=t?{rendered:null}:Tu(a,I);return H.rendered!==null?(_=!1,H.rendered.endsWith(`
|
|
43
|
+
`)?H.rendered:`${H.rendered}
|
|
44
|
+
`):a==="json"?pi(I,"json",n.lean===!0):pi(I,"toon")},w=n.tokenAccounting===!0?mp(m,y):m,v=y(w);return qO(w,e,n.quiet!==!0&&_),v}function dA(e,t){let n=Iu(e),r=lo(n.result)?n.result:null,o=n.result,i=L(o)&&o[gc]===!0,s=r?r.result:VO(n.result);if(So(s),r)return Ec(s),"";let a=t.json===!0||t.json===void 0&&t.defaultOutputFormat==="json"?"json":"toon";return cA(s,i,t,a)}function xj(e,t){L(e)&&Number.isInteger(e.exit_code)&&UO.has(Number(e.exit_code))&&(process.exitCode===void 0||process.exitCode===h.SUCCESS)&&(process.exitCode=Number(e.exit_code));let n=t.idOnly?hr(e,{idOnly:!0}):t.fullChangedFields?e:t.noChangedFields?hr(e,{changedFields:"compact"}):hr(e,{compactEnvelope:!0}),r=dA(n,t);t.quiet||KO(r)}function Rj(e){let t=Ys("error_format",{message:e}),n=t.handled&&typeof t.result=="string"?t.result:e;Ir(n.endsWith(`
|
|
45
|
+
`)?n:`${n}
|
|
46
|
+
`)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="13e57322-501d-5927-8254-f6196854d434")}catch{}})();var lA=8,uA=64,fA=5,mA=4,Sp=100;function Cm(e,t,n){if(e!=="get"||!kc(n.item)||["fields","outputInclude","output_include","outputCursor","output_cursor"].some(c=>t[c]!==void 0)||t.full===!0||t.tree===!0||t.depth!==void 0&&t.depth!=="standard")return;let r=n.item,o=["linked","claim_state","schedule"],i=o.filter(c=>Object.hasOwn(n,c)),s=Object.fromEntries(Object.entries(n).filter(([c])=>!o.includes(c)));s.item=Object.fromEntries(Object.entries(r).filter(([c])=>c!=="body")),Object.hasOwn(r,"body")&&i.push("body");let a=[...kc(n.omission_receipt)&&Array.isArray(n.omission_receipt.omitted_field_groups)?n.omission_receipt.omitted_field_groups:[],...i.map(c=>({name:c,restore_with:`--fields ${c}`}))];return s.omission_receipt={has_omissions:a.length>0,omitted_field_group_count:a.length,omitted_field_groups:a},s}function nc(e){let t=Math.trunc(e.effective_budget_tokens),n=Math.trunc(e.measured_result_tokens);if(!Number.isSafeInteger(t)||t<=0||!Number.isSafeInteger(n)||n<=0)return{output_budget:"unbounded",recovery_budget_multiplier:null,rule_version:"v1"};let r=Math.max(t+1,n),o=Math.ceil(r*fA/mA),i=Math.ceil(o/Sp)*Sp;return Number.isSafeInteger(i)?{output_budget:i,recovery_budget_multiplier:i/t,rule_version:"v1"}:{output_budget:"unbounded",recovery_budget_multiplier:null,rule_version:"v1"}}function gn(e,t,n=!1){let r=Object.getOwnPropertyDescriptor(e,"row_contract");r&&(n||r.enumerable===!1)&&Object.defineProperty(t,"row_contract",{...r,enumerable:!1})}function gr(e,t){let n=t===void 0?JSON.stringify(e):pi(e,t);return Math.ceil(Buffer.byteLength(n,"utf8")/4)}function kc(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Sc(e,t,n=!1){return typeof e=="string"?n||e.length<=240?e:(t.compacted=!0,`${Qe(e,240)}\u2026`):Array.isArray(e)?e.map(r=>Sc(r,t,n)):kc(e)?Object.fromEntries(Object.entries(e).map(([r,o])=>[r,Sc(o,t,n||r==="focus_row_states")])):e}function tt(e,t,n){let r=t.estimated_tokens;for(let o=0;o<lA;o+=1){t.estimated_tokens=r;let i=gr(e,n);if(i===r)return;r=i}t.estimated_tokens=r}function pA(e,t){return pr(e).filter(n=>(Array.isArray(n.value)?n.value.length:Object.keys(n.value).length)>Math.max(1,t.get(n.path)??0)).map(n=>({collection:n,length:Array.isArray(n.value)?n.value.length:Object.keys(n.value).length})).sort((n,r)=>r.length-n.length||n.collection.path.localeCompare(r.collection.path))[0]?.collection}function _A(e,t,n,r,o,i){for(let s=0;s<uA;s+=1){if(i?.(e),tt(e,t,o),t.estimated_tokens<=n)return;let a=pA(e,r);if(!a)return;let c=Math.max(1,r.get(a.path)??0),d=Array.isArray(a.value)?[...a.value]:Object.entries(a.value),l=_=>{if(Array.isArray(a.value)){a.value.length=_;for(let y=0;y<_;y+=1)a.value[y]=d[y]}else{for(let y of Object.keys(a.value))delete a.value[y];Object.defineProperties(a.value,Object.getOwnPropertyDescriptors(Object.fromEntries(d.slice(0,_))))}typeof e.count=="number"&&(e.count=Qo(e)),a.path==="items"&&(e.applied_limit=_),i?.(e),tt(e,t,o)};t.rows_compacted=!0,t.compacted_row_paths=[...new Set([...t.compacted_row_paths??[],a.path])].sort((_,y)=>_.localeCompare(y)),e.has_more=!0,e.truncated=!0;let u=c,f=d.length-1,m=c;for(;u<=f;){let _=Math.floor((u+f)/2);l(_),t.estimated_tokens<=n?(m=_,u=_+1):f=_-1}l(m)}}function xm(e,t,n,r=new Map,o,i,s=!1){let a={compacted:!1},c=Object.fromEntries(Object.entries(e).map(([d,l])=>[d,Sc(l,a,s&&d==="diff")]));return gn(e,c),t.strings_compacted=a.compacted,c.read_output=t,_A(c,t,n,r,o,i),tt(c,t,o),c}import c_ from"fast-json-patch";import o_ from"node:fs/promises";import rI from"node:path";import $ from"node:fs/promises";import U from"node:path";import{createHash as ki,randomUUID as Dc}from"node:crypto";import{createRequire as TA}from"node:module";import{setImmediate as Mp}from"node:timers/promises";import Ic from"fast-json-patch";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0c0cb8c7-4d7d-53f8-8ec2-d6dc98fc6dc5")}catch{}})();var yA={metadata:{},body:""};function hi(){return structuredClone(yA)}function Bj(e,t=Mt,n){return Oc(e,t,n)[0]}function Oc(e,t,n){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return Tp(gi(e),t,n)}catch{}let r=We(x({replay_fallback:!0,metadata:e.metadata,body:e.body}),n);return t===2?[r,r]:[r]}function Cp(e,t,n,r,o){let i=vt(r.hash_algorithm),s=`${n}:${i}`,a=o?.before.get(s)??Oc(e,n,i),c=Oc(t,n,i);return o?.after.set(s,c),{beforeHashes:a,afterHashes:c,pairIndex:a.findIndex((d,l)=>d===r.before_hash&&c[l]===r.after_hash),beforeIndex:a.indexOf(r.before_hash),afterIndex:c.indexOf(r.after_hash)}}function gi(e){return{metadata:e.metadata,body:e.body}}function Wj(e,t={}){return un(gi(e),t)}function Gj(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=un(e);return{metadata:A(t.metadata,Ee),body:t.body}}function Op(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function hA(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function xp(e){return Array.isArray(e)?e.filter(hA).map(t=>({...t,path:Op(t.path),from:typeof t.from=="string"?Op(t.from):void 0})):[]}function gA(e){return typeof e=="object"&&e!==null&&"metadata"in e&&"body"in e&&typeof e.body=="string"&&typeof e.metadata=="object"&&e.metadata!==null}function bi(e,t){try{let n=xp(t),r=Ic.applyPatch(structuredClone(e),n,!0,!0).newDocument;return gA(r)?{ok:!0,document:{metadata:r.metadata,body:r.body}}:{ok:!1,error:new Error("history_replay_invalid_document_shape")}}catch(n){return{ok:!1,error:n}}}function bA(e){return[...new Set(e.map(t=>t.item_hash_version).filter(t=>t!==void 0&&Tr.includes(t)))]}function Rp(e){return e!==void 0&&!Tr.includes(e)}function wA(e,t){return e!==void 0?[e]:t===void 0?[...Tr]:[t]}function Np(e){let t=yi(e);if(!t.ok)return t.error;let n=Ac(e);return n.ok?void 0:n.error}function vA(e,t){let n=Np(e);if(n)return{ok:!1,error:n};let r=bi(t,e.patch);return r.ok?{ok:!0,document:r.document}:{ok:!1,error:"patch_apply_failed"}}function EA(e,t){let n=Np(e);if(n)throw new TypeError(`${n}:entry_${t+1}`)}function kA(e,t,n,r,o){let i=[];for(let s of n){let a=Cp(e,t,s,r,o);if(i.push({version:s,match:a}),a.pairIndex>=0)break}return i}function wi(e){let t=hi(),n=new Map,r,o,i=Ru(e).map(s=>`verify_failed:duplicate_create:entry_${s.repeated_create_index}:prior_${s.prior_genesis_index}`);for(let s=0;s<e.length;s+=1){let a=e[s],c=a.item_hash_version,d=Rp(c);d&&i.push(`verify_failed:unsupported_item_hash_version:${String(c)}:entry_${s+1}`);let l=vA(a,t);if(!l.ok)return{ok:!1,errors:[...i,`verify_failed:${l.error}:entry_${s+1}`]};if(d){t=l.document,n=new Map,r=void 0,o=void 0;continue}let u=wA(c,o),f={before:n,after:new Map},m=kA(t,l.document,u,a,f),_=m.find(({match:w})=>w.pairIndex>=0);if(_===void 0){let w=m.some(({match:v})=>v.beforeIndex>=0);return{ok:!1,errors:[...i,`verify_failed:${w?"after":"before"}_hash_mismatch:entry_${s+1}`]}}let y=_.version;t=l.document,n=f.after,r=y,o=c??o}return i.length>0?{ok:!1,errors:i,...r===void 0?{}:{item_hash_version:r}}:{ok:!0,errors:[],...r===void 0?{}:{item_hash_version:r}}}function $t(e){let t=wi(e);return{ok:t.ok,errors:t.errors}}function Ap(e,t){try{return{ok:!0,document:Ic.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function SA(e,t){let n=structuredClone(e),r=0,o=0;for(let s of xp(t)){let a=Ap(n,s);if(a.ok){n=a.document;continue}if(s.op==="replace"){let c=Ap(n,{...s,op:"add"});if(c.ok){n=c.document,r+=1;continue}}o+=1}let i=n;return{document:{metadata:typeof i.metadata=="object"&&i.metadata!==null?i.metadata:{},body:typeof i.body=="string"?i.body:e.body},convertedReplaceToAdd:r,skippedOps:o}}function OA(e){let t=bA(e);if(t.length===1)return t[0];let n=wi(e);return n.ok&&n.item_hash_version!==void 0?n.item_hash_version:t.length===0?1:Mt}function AA(e,t,n=t.patch){let r=bi(e,n);if(r.ok)return{next:r.document,patch:n,repaired:x(n)!==x(t.patch),converted:0,skipped:0};let o=SA(e,n);return{next:o.document,patch:Ic.compare(e,o.document),repaired:!0,converted:o.convertedReplaceToAdd,skipped:o.skippedOps}}function IA(e,t,n){return AA(e,t,n.projectPatch?.(t,e))}function Kj(e,t=OA(e),n={}){let r=e.findIndex(m=>Rp(m.item_hash_version));if(r>=0)throw new TypeError(`unsupported_item_hash_version:${String(e[r]?.item_hash_version)}:entry_${r+1}`);let o=hi(),i=[],s=[],a=0,c=0,d=0,l=0,u,f=t!==1||e.some(m=>m.item_hash_version!==void 0);for(let m=0;m<e.length;m+=1){let _=e[m];EA(_,m);let y=IA(o,_,n),{next:w,patch:v,repaired:I,converted:H,skipped:X}=y;d+=H,l+=X,c+=Number(I);let ce=Cp(o,w,t,_);u===void 0||n.continuousHashSurface!==!0?u=[ce.pairIndex,ce.beforeIndex,ce.afterIndex,Math.min(u??0,ce.beforeHashes.length-1)].find(ty=>ty>=0):u=Math.min(u,ce.beforeHashes.length-1);let dd=ce.beforeHashes[u],ld=ce.afterHashes[u],Wi=dd!==_.before_hash||ld!==_.after_hash;Wi&&(a+=1);let Bt={..._,patch:v,before_hash:dd,after_hash:ld};f?Bt.item_hash_version=t:delete Bt.item_hash_version;let ey=Bt.item_hash_version!==_.item_hash_version;(Wi||I||ey)&&(Bt=Ip(_,Bt,{retainOriginalPatch:I})),i.push(Bt),s.push({index:m+1,rehashed:Wi,patch_repaired:I,converted_replace_to_add:H,skipped_ops:X}),o=w}return{entries:i,finalDocument:o,entriesRehashed:a,entriesPatchRepaired:c,convertedReplaceToAdd:d,skippedOps:l,details:s,itemHashVersion:t,explicitItemHashVersion:f}}function Yj(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
|
|
47
|
+
`)}
|
|
48
|
+
`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="812b558d-59f3-58d6-b04e-6a4f8689e866")}catch{}})();function Dp(e){let t=process.emitWarning;process.emitWarning=(n,...r)=>{n==="SQLite is an experimental feature and might change at any time"&&r[0]==="ExperimentalWarning"||Reflect.apply(t,process,[n,...r])};try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}finally{process.emitWarning=t}}function Pp(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?Dp(t):null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c5f096f6-4af4-568e-89ef-1aa0a8718973")}catch{}})();var CA="history-event-index.sqlite",Pc="7",xA=8,$p=32,qp="history-event-index",RA="history-event-index:append:",NA=5e3,Mc=300,Vp=3e4,DA="history-event-index-invalidation",PA="history-event-index-invalidations",MA=Mc*2*1e3,ot=Symbol("history-index-changed"),jt=new Map;function Ft(e){return U.join(e,"runtime",CA)}function Bp(e){return U.join(e,"runtime","history-event-index-repair-deferred")}async function Wp(e){try{let t=Number(await $.readFile(Bp(e),"utf8")),n=Date.now()-t;return n>=0&&n<NA}catch{return!1}}async function jp(e){try{await $.writeFile(Bp(e),`${Date.now()}
|
|
49
|
+
`)}catch{}}function Cr(e){return U.join(e,"runtime",PA)}async function Si(e){let t=await $.readdir(Cr(e)).catch(n=>{if(de(n))return[];throw n});return{pending:t.filter(n=>n.endsWith(".pending")).sort(),committed:t.filter(n=>n.endsWith(".committed")).sort()}}async function Lp(e){let t=await Si(e);return{pending:(await Promise.all(t.pending.map(async n=>{let r=/^(\d+)-(unknown|\d+)-(\d+)-.+\.pending$/u.exec(n);if(r!==null){let o=r[2];if(await mr({pid:Number(r[1]),...o==="unknown"?{}:{process_start_identity:o}},Math.max(0,Date.now()-Number(r[3])),MA))return n}return await $.rm(U.join(Cr(e),n),{force:!0}),null}))).filter(n=>n!==null),committed:t.committed}}async function Rc(e,t,n=Vp){let r=await fe(e,DA,Mc,`history-event-index-invalidation:${process.pid}`,!1,!1,n,n===0?{maxWaitMs:0}:void 0);try{return await t()}finally{await r()}}async function $A(e){let t=Cr(e);await $.mkdir(t,{recursive:!0});let n=Dc(),r=await fr(),o=U.join(t,`${r.pid}-${r.process_start_identity??"unknown"}-${Date.now()}-${n}.pending`);return await $.writeFile(o,`pending
|
|
50
|
+
`,{flag:"wx"}),{pendingPath:o,committedPath:U.join(t,`${n}.committed`)}}function jA(e,t){return e.length===t.length&&e.every((n,r)=>n===t[r])}async function Oi(e){try{await $.rm(Ft(e),{force:!0})}catch{}}async function Tc(e,t){let n=Cr(e);await $.mkdir(n,{recursive:!0}),await $.writeFile(U.join(n,`${Dc()}${t?".contended":""}.committed`),`committed
|
|
51
|
+
`,{flag:"wx"}),t||await Oi(e)}function Ai(e){return e.committed.some(t=>t.endsWith(".contended.committed"))}function Nc(e,t){let n;try{return n=new t(Ft(e)),n.exec("PRAGMA busy_timeout = 0"),n.exec("BEGIN EXCLUSIVE"),!1}catch(r){return Lt(r)}finally{n?.close()}}async function Fp(e,t){return t.pending.length>0||await If(e,qp,RA)}async function Gp(e,t,n=Vp,r="rebuild"){let o=await fe(e,qp,Mc,`history-event-index:${r}:${process.pid}`,!1,!1,n,n===0?{maxWaitMs:0}:void 0);try{return await t()}finally{await o()}}async function Kp(e,t,n=!1){let r=U.join(e,"history"),o=await $.readdir(r,{withFileTypes:!0}).catch(u=>{if(typeof u=="object"&&u!==null&&"code"in u&&u.code==="ENOENT")return[];throw u}),i=jt.get(e)??{streams:new Map,ordered_events:[]},s=new Map(i.streams),a=i.ordered_events,c=new Set,d=!jt.has(e);for(let u of o.filter(f=>f.isFile()&&f.name.endsWith(".jsonl")).sort((f,m)=>f.name.localeCompare(m.name))){let f=u.name.slice(0,-6);c.add(f);let m=U.join(r,u.name);if(!Cc(f,t))continue;let _=await FA(m,f,s.get(f),n);_!==void 0&&(s.set(f,_),d=!0)}for(let u of s.keys())c.has(u)||(s.delete(u),d=!0);d&&(a=[...s.values()].flatMap(u=>u.events).sort($c));let l={streams:s,ordered_events:a};if(jt.delete(e),jt.set(e,l),jt.size>xA){let u=jt.keys().next().value;jt.delete(u)}return{events:l.ordered_events.filter(u=>Cc(u.stream_id,t)).map(u=>LA(u,n)),stream_receipts:new Map([...l.streams].filter(([u])=>Cc(u,t)).map(([u,f])=>[u,{byte_size:f.byte_size,content_hash:f.signature}]))}}function LA(e,t){return t||e.recorded_entry===void 0?e:{stream_id:e.stream_id,stream_offset:e.stream_offset,entry:e.entry}}function Cc(e,t){return!t?.length||t.includes(e)}async function FA(e,t,n,r){if(!r&&n!==void 0&&n.byte_size===(await $.stat(e)).size){let o=ki("sha256").update(await $.readFile(e)).digest("hex");if(n.signature===o)return}return zA(e,t,r)}async function zA(e,t,n){let r=await Ko(e,t);if(n){let i=wi(r.entries);if(!i.ok)throw new g(`Authoritative history integrity verification failed for ${t}.`,h.GENERIC_FAILURE,{code:"event_history_integrity_failed",why:i.errors.join(", "),nextSteps:[`Run pm history ${t} --verify to inspect the authoritative chain before retrying.`]})}let o=r.raw_bytes??new Uint8Array;return{signature:ki("sha256").update(o).digest("hex"),byte_size:o.byteLength,events:Yp(r.entries,t).map((i,s)=>({stream_id:t,stream_offset:s,entry:i,...n?{recorded_entry:r.entries[s]}:{}}))}}async function UA(e,t){return Yp((await Ko(e,t)).entries,t)}function Yp(e,t){for(let[n,r]of e.entries())if(typeof r.ts!="string"||!Jt(r.ts.trim()))throw new g(`History for ${t} contains an invalid or sub-millisecond timestamp at line ${n+1}. Repair or restore the history stream and retry.`,h.GENERIC_FAILURE,{code:"history_timestamp_invalid"});return e.map(n=>({...n,ts:new Date(n.ts.trim()).toISOString()}))}var xc;function Ti(){return xc!==void 0||(xc=Pp(process.versions.node,TA(import.meta.url))),xc}function HA(e){e.exec(`
|
|
52
|
+
PRAGMA journal_mode = OFF;
|
|
53
|
+
PRAGMA synchronous = OFF;
|
|
54
|
+
CREATE TABLE metadata (
|
|
55
|
+
key TEXT PRIMARY KEY,
|
|
56
|
+
value TEXT NOT NULL
|
|
57
|
+
) STRICT;
|
|
58
|
+
CREATE TABLE events (
|
|
59
|
+
stream_id TEXT NOT NULL,
|
|
60
|
+
stream_offset INTEGER NOT NULL,
|
|
61
|
+
ts TEXT NOT NULL,
|
|
62
|
+
author TEXT NOT NULL,
|
|
63
|
+
agent_harness TEXT,
|
|
64
|
+
agent_instance TEXT,
|
|
65
|
+
op TEXT NOT NULL,
|
|
66
|
+
event_class TEXT NOT NULL CHECK(event_class IN ('substantive', 'maintenance')),
|
|
67
|
+
entry_json TEXT NOT NULL,
|
|
68
|
+
PRIMARY KEY(stream_id, stream_offset)
|
|
69
|
+
) STRICT;
|
|
70
|
+
CREATE TABLE streams (
|
|
71
|
+
stream_id TEXT PRIMARY KEY,
|
|
72
|
+
byte_size INTEGER NOT NULL CHECK(byte_size >= 0),
|
|
73
|
+
content_hash TEXT NOT NULL
|
|
74
|
+
) STRICT;
|
|
75
|
+
CREATE INDEX events_order
|
|
76
|
+
ON events(ts, stream_id, stream_offset);
|
|
77
|
+
CREATE INDEX events_op_order
|
|
78
|
+
ON events(op, ts, stream_id, stream_offset);
|
|
79
|
+
CREATE INDEX events_class_stream_order
|
|
80
|
+
ON events(event_class, stream_id, ts, stream_offset);
|
|
81
|
+
CREATE INDEX events_author_order
|
|
82
|
+
ON events(author, ts, stream_id, stream_offset);
|
|
83
|
+
CREATE INDEX events_harness_order
|
|
84
|
+
ON events(agent_harness, ts, stream_id, stream_offset);
|
|
85
|
+
CREATE INDEX events_instance_order
|
|
86
|
+
ON events(agent_instance, ts, stream_id, stream_offset);
|
|
87
|
+
`),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(Pc)}function Xp(e,t){let n={...t.entry,ts:new Date(t.entry.ts.trim()).toISOString()};e.prepare(`INSERT INTO events(
|
|
88
|
+
stream_id, stream_offset, ts, author, agent_harness,
|
|
89
|
+
agent_instance, op, event_class, entry_json
|
|
90
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(t.stream_id,t.stream_offset,n.ts,n.author,n.agent_harness??null,n.agent_instance??null,n.op,_n(n),JSON.stringify(n))}function Jp(e){let t=JSON.parse(String(e.entry_json));return typeof t.ts!="string"||!Jt(t.ts.trim())?null:{stream_id:String(e.stream_id),stream_offset:Number(e.stream_offset),entry:{...t,ts:new Date(t.ts.trim()).toISOString()}}}function Qp(e,t,n){e.prepare(`INSERT INTO streams(stream_id, byte_size, content_hash) VALUES (?, ?, ?)
|
|
91
|
+
ON CONFLICT(stream_id) DO UPDATE SET byte_size = excluded.byte_size, content_hash = excluded.content_hash`).run(t,n.byte_size,n.content_hash)}async function qA(e,t={}){let n=Ti();return n?Gp(e,async()=>{let r;try{r=await Rc(e,()=>Lp(e),t.lockWaitMs)}catch(a){if(a instanceof g&&a.code==="lock_conflict")return!1;throw a}if(r.pending.length>0||Ai(r)&&Nc(e,n))return!1;let o=Ft(e);await $.mkdir(U.dirname(o),{recursive:!0});let i=`${o}.${Dc()}.tmp`,s;try{s=new n(i),HA(s),s.exec("BEGIN IMMEDIATE");let a=await Kp(e);await VA(s,a),s.exec("COMMIT"),s.close(),s=void 0;let c=await Rc(e,async()=>{let d=await Lp(e);return d.pending.length>0||!jA(r.committed,d.committed)||Ai(d)&&Nc(e,n)?!1:(await $.rm(o,{force:!0}),await $.rename(i,o),!0)},t.lockWaitMs);return c&&await Promise.all(r.committed.map(d=>$.rm(U.join(Cr(e),d),{force:!0}))),c||(await jp(e),await $.rm(i,{force:!0})),c}catch(a){throw await jp(e),s?.close(),await $.rm(i,{force:!0}),a}},t.lockWaitMs):!1}async function VA(e,t){let n=0;for(let r of t.events)Xp(e,r),++n%500===0&&await Mp();for(let[r,o]of t.stream_receipts)Qp(e,r,o),++n%500===0&&await Mp()}function vi(e,t){return!t||t.length===0||t.includes(e)}function $c(e,t){return e.entry.ts.localeCompare(t.entry.ts)||e.stream_id.localeCompare(t.stream_id)||e.stream_offset-t.stream_offset}function Ii(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():e}function BA(e,t){if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){if($c(e,{stream_id:t.after_stream_id,stream_offset:t.after_stream_offset,entry:{...e.entry,ts:Ii(t.after_ts)}})<=0)return!1}else if(t.since_ts!==void 0&&e.entry.ts<Ii(t.since_ts))return!1;return!0}function WA(e,t){return!t.harnesses||t.harnesses.length===0||t.harnesses.includes(e.entry.agent_harness??"")?!0:e.entry.agent_harness===void 0&&(t.harness_alias_authors??[]).includes(e.entry.author)}function GA(e,t){return!BA(e,t)||!vi(e.entry.op,t.ops)||!vi(e.entry.author,t.authors)||!vi(e.entry.agent_instance??"",t.agent_instances)||!vi(e.stream_id,t.stream_ids)||!WA(e,t)?!1:(t.provenance??[]).every(n=>{let r=e.entry.agent_provenance?.[n.dimension]?.value;return r!==void 0&&n.values.includes(r)})}async function KA(e,t){let n=Math.max(0,Math.floor(t.limit)),r=await Kp(e,t.stream_ids,t.verify),o=r.events.filter(i=>GA(i,t)).slice(0,n+1);return{events:o.slice(0,t.limit),has_more:o.length>t.limit,...t.verify?{verified_streams:r.stream_receipts.size}:{}}}async function YA(e,t){let n=e.prepare("SELECT byte_size, content_hash FROM streams WHERE stream_id = ?").get(U.basename(t,".jsonl")),r=0;try{r=(await $.stat(t)).size}catch(i){if(!de(i))throw i}if(Number(n?.byte_size??0)!==r)return!1;let o=await Lc(U.dirname(U.dirname(t)),U.basename(t,".jsonl"));return n===void 0?o?.byte_size===0:o?.content_hash===n.content_hash}async function Zp(e,t,n){let r=U.dirname(U.dirname(e)),o=Ti(),i=!1,s=async()=>{await n(),i=!0};if(!o){await zp(r,s);return}try{await Gp(r,async()=>{let a=Ft(r);try{await $.access(a)}catch{await s();return}let c;try{if(c=new o(a),c.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==Pc)throw new TypeError("Unsupported history event index version");if(!await YA(c,e))throw new TypeError("Stale history event index append base")}catch(l){if(c?.close(),Lt(l))throw l;await Tc(r,!0),await s();return}try{c.exec("PRAGMA busy_timeout = 0"),c.exec("BEGIN IMMEDIATE")}catch(l){if(c.close(),Lt(l)||!(l instanceof Error)||l.code!=="ERR_SQLITE_ERROR")throw l;await Tc(r,!1),await s();return}let d=!1;try{await s(),d=!0;let l=U.basename(e,".jsonl"),u=c.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(l);Xp(c,{stream_id:l,stream_offset:Number(u.value),entry:t}),Qp(c,l,await Lc(r,l)),c.exec("COMMIT"),c.close()}catch(l){if(c?.close(),!d)throw l;await Tc(r,Lt(l))}},0,"append")}catch(a){if(i){await Oi(r);return}if(!JA(a))throw a;await zp(r,s,Lt(a))}}async function zp(e,t,n=!1){let r=!1,o;try{await Rc(e,async()=>{let i=n||Ai(await Si(e)),s=await $A(e);o=s.pendingPath;try{await t(),r=!0}catch(a){throw await $.rm(s.pendingPath,{force:!0}),a}await $.rename(s.pendingPath,i?s.committedPath.replace(/\.committed$/u,".contended.committed"):s.committedPath),i||await Oi(e)})}catch(i){if(r){await Oi(e);try{await $.rm(o,{force:!0})}catch{}return}throw i}}async function jc(e){await $.rm(Ft(U.dirname(U.dirname(e))),{force:!0})}function Ei(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function XA(e,t,n,r){if(!n||n.length===0)return;let o=n.map(()=>"?").join(", "),i=r??[];if(i.length>0){e.push(`(agent_harness IN (${o}) OR (agent_harness IS NULL AND author IN (${i.map(()=>"?").join(", ")})))`),t.push(...n,...i);return}e.push(`agent_harness IN (${o})`),t.push(...n)}async function e_(e,t,n,r){let o;try{let i=await Si(e);if(await Fp(e,i))return ot;let s=await Up(e);if(i.committed.length>0)return Ai(i)&&Nc(e,t)?ot:null;if(o=new t(Ft(e),{readOnly:!0}),o.exec("BEGIN"),o.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==Pc)return null;let a=r(o);if(a===null)return null;let c=QA(o,n),d=o;o=void 0,d.close();let l=await eI([...c.keys()],e,n),u=await ZA(c,e,l),f=await Si(e);return f.committed.length>0||await Fp(e,f)||s!==await Up(e)?ot:u?a:null}catch(i){return Lt(i)?ot:null}finally{o?.close()}}function Lt(e){return typeof e=="object"&&e!==null&&"errcode"in e&&[5,6].includes(e.errcode)}function JA(e){return Lt(e)||e instanceof g&&e.code==="lock_conflict"}function QA(e,t){let n=new Map,r=t&&t.length>0?[...new Set(t)]:void 0;if(r===void 0)for(let o of e.prepare("SELECT stream_id, byte_size, content_hash FROM streams").all())n.set(String(o.stream_id),{byte_size:Number(o.byte_size),content_hash:String(o.content_hash)});else for(let o=0;o<r.length;o+=500){let i=r.slice(o,o+500);for(let s of e.prepare(`SELECT stream_id, byte_size, content_hash FROM streams WHERE stream_id IN (${i.map(()=>"?").join(", ")})`).all(...i))n.set(String(s.stream_id),{byte_size:Number(s.byte_size),content_hash:String(s.content_hash)})}return n}async function Up(e){let t=await $.stat(Ft(e),{bigint:!0});return[t.dev,t.ino,t.size,t.mtimeNs,t.ctimeNs].join(":")}async function fL(e,t){if(t.verify)return{result:await KA(e,t),repair_needed:!1};let n=Ti();if(!n)return{result:null,repair_needed:!1};let r=[],o=[];if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){r.push("(ts > ? OR (ts = ? AND stream_id > ?) OR (ts = ? AND stream_id = ? AND stream_offset > ?))");let a=Ii(t.after_ts);o.push(a,a,t.after_stream_id,a,t.after_stream_id,t.after_stream_offset)}else t.since_ts!==void 0&&(r.push("ts >= ?"),o.push(Ii(t.since_ts)));Ei(r,o,"op",t.ops),Ei(r,o,"author",t.authors),XA(r,o,t.harnesses,t.harness_alias_authors),Ei(r,o,"agent_instance",t.agent_instances);for(let a of t.provenance??[])r.push(`json_extract(entry_json, '$.agent_provenance.${a.dimension}.value') IN (${a.values.map(()=>"?").join(", ")})`),o.push(...a.values);Ei(r,o,"stream_id",t.stream_ids);let i=r.length===0?"":` WHERE ${r.join(" AND ")}`,s=await e_(e,n,t.stream_ids,a=>{let c=a.prepare(`SELECT stream_id, stream_offset, entry_json
|
|
92
|
+
FROM events${i}
|
|
93
|
+
ORDER BY ts, stream_id, stream_offset
|
|
94
|
+
LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),d=c.slice(0,t.limit).map(Jp);return d.includes(null)?null:{events:d,has_more:c.length>t.limit}});return{result:s===ot?null:s,repair_needed:s===null&&!await Wp(e)}}function t_(e,t){let n=Object.create(null);for(let r of e){if(!t.has(r.stream_id)||_n(r.entry)!=="substantive")continue;let o=n[r.stream_id];(o===void 0||$c(o,r)<0)&&(n[r.stream_id]=r)}return n}async function Lc(e,t){if(U.basename(t)!==t)return null;try{let n=U.join(e,"history",`${t}.jsonl`),r=await $.stat(n),o=await $.readFile(n);return r.size!==o.length?null:{byte_size:o.length,content_hash:ki("sha256").update(o).digest("hex")}}catch(n){if(de(n))return{byte_size:0,content_hash:ki("sha256").digest("hex")};throw n}}async function ZA(e,t,n){for(let r=0;r<n.length;r+=$p){let o=n.slice(r,r+$p),i=await Promise.all(o.map(s=>Lc(t,s)));for(let[s,a]of i.entries()){if(a===null)return!1;let c=o[s],d=e.get(c);if(!(a.byte_size===0&&d===void 0)&&(a.byte_size!==d?.byte_size||a.content_hash!==d.content_hash))return!1}}return!0}async function eI(e,t,n){if(n&&n.length>0)return[...new Set(n.filter(o=>o.trim().length>0))];let r=await $.readdir(U.join(t,"history"),{withFileTypes:!0}).then(o=>o.filter(i=>i.isFile()&&i.name.endsWith(".jsonl")).map(i=>i.name.slice(0,-6))).catch(o=>{if(de(o))return[];throw o});return[...new Set([...e,...r])]}async function Hp(e,t,n,r){return e?e_(t,e,n,o=>{let i=[];for(let s=0;s<n.length;s+=500){let a=n.slice(s,s+500),c=o.prepare(`SELECT stream_id, stream_offset, entry_json
|
|
95
|
+
FROM (
|
|
96
|
+
SELECT stream_id, stream_offset, entry_json,
|
|
97
|
+
ROW_NUMBER() OVER (
|
|
98
|
+
PARTITION BY stream_id
|
|
99
|
+
ORDER BY ts DESC, stream_offset DESC
|
|
100
|
+
) AS recency_rank
|
|
101
|
+
FROM events
|
|
102
|
+
WHERE event_class = 'substantive'
|
|
103
|
+
AND stream_id IN (${a.map(()=>"?").join(", ")})
|
|
104
|
+
)
|
|
105
|
+
WHERE recency_rank = 1`).all(...a).map(Jp);if(c.includes(null))return null;i.push(...c)}return t_(i,r)}):null}async function mL(e,t){let n=[...new Set(t.filter(a=>a.trim().length>0&&U.basename(a)===a))];if(n.length===0)return{};let r=new Set(n),o=Ti(),i=await Hp(o,e,n,r);if(i!==null&&i!==ot)return i;if(o&&i!==ot&&!await Wp(e))try{if(await qA(e,{lockWaitMs:0})){let a=await Hp(o,e,n,r);if(a!==null&&a!==ot)return a}}catch{}let s=[];return await Promise.all(n.map(async a=>{let c=U.join(e,"history",`${a}.jsonl`);(await UA(c,a).catch(d=>{if(d instanceof g&&d.code==="history_timestamp_invalid")return[];throw d})).forEach((d,l)=>{s.push({stream_id:a,stream_offset:l,entry:d})})})),t_(s,r)}import Fc from"node:fs/promises";import An from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="687cbe24-6d5c-5322-962d-455048eb84b5")}catch{}})();var tI=An.join("runtime","history-drift-cache.json"),n_={EINVAL:"invalid_cache_path",EISDIR:"cache_path_is_directory",ENOENT:"invalid_cache_path",ENOTDIR:"invalid_cache_path",ERR_FS_EISDIR:"cache_path_is_directory"};function r_(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function nI(e){let t=An.join(e,tI),n=!1,r="invalid_cache_path";try{n=(await Fc.stat(await Fc.realpath(e))).isDirectory()}catch(o){let i=r_(o);r=i===void 0?"unknown":n_[i]??"filesystem_error"}if(!n){Ir(`[pm] warning: history_drift_cache_invalidation_failed:${r}
|
|
106
|
+
`);return}try{await Fc.rm(t,{force:!0})}catch(o){let i=r_(o);if(de(o))return;let s=i===void 0?"unknown":n_[i]??"filesystem_error";Ir(`[pm] warning: history_drift_cache_invalidation_failed:${s}
|
|
107
|
+
`)}}async function Ci(e){let t=An.dirname(An.resolve(e));An.basename(t)==="history"&&await nI(An.dirname(t))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4a3c3c82-0398-549c-8910-fdc69d971cb2")}catch{}})();var oI={front_matter:{},body:""},Mt=3,Tr=[1,2,3],iI=1,sI=[1];function d_(e){return We(x(e),e.hash_algorithm)}function In(e){return Hr(x(e))}function jL(e){return Hr(x(e))}function qc(e){let t={...e,record_hash_version:iI},{record_hash:n,...r}=t;return{...t,record_hash:d_(r)}}function yi(e){try{vt(e.hash_algorithm)}catch{return{ok:!1,error:"unsupported_history_hash_algorithm"}}if(e.record_hash_version===void 0&&e.record_hash===void 0)return{ok:!0,coverage:"item_state_only"};if(e.record_hash_version===void 0||e.record_hash===void 0)return{ok:!1,error:"incomplete_record_hash_envelope"};if(!sI.includes(e.record_hash_version))return{ok:!1,error:"unsupported_record_hash_version"};let{record_hash:t,...n}=e;return d_(n)===e.record_hash?{ok:!0,coverage:"record_and_item_state"}:{ok:!1,error:"record_hash_mismatch"}}function aI(e,t){let n={before_hash:e.before_hash,after_hash:e.after_hash,patch_hash:In(e.patch)};return e.hash_algorithm!==void 0&&(n.hash_algorithm=e.hash_algorithm),e.item_hash_version!==void 0&&(n.item_hash_version=e.item_hash_version),t.retainOriginalPatch&&(n.patch=structuredClone(e.patch)),t.retainPriorRecordHash!==!1&&e.record_hash_version!==void 0&&e.record_hash!==void 0&&(n.record_hash_version=e.record_hash_version,n.record_hash=e.record_hash,n.record=structuredClone(e)),n}function Ip(e,t,n={}){let r=yi(e);if(!r.ok)throw new TypeError(r.error);let o=In(e.patch),i=n.retainPriorRecord===!0||e.before_hash!==t.before_hash||e.after_hash!==t.after_hash||e.item_hash_version!==t.item_hash_version||e.hash_algorithm!==t.hash_algorithm||o!==In(t.patch),s=qc({...t,...i?{reanchor_evidence:[...t.reanchor_evidence??[],aI(e,n)]}:{}}),a=Ac(s);if(!a.ok)throw new TypeError(a.error);return s}function l_(e){return!Array.isArray(e)||Object.keys(e).length!==e.length?!1:e.every(t=>!zt(t)||typeof t.path!="string"?!1:t.op==="move"||t.op==="copy"?typeof t.from=="string":["add","replace","test"].includes(t.op)?Object.hasOwn(t,"value"):t.op==="remove")}function cI(e){return zt(e)&&typeof e.ts=="string"&&typeof e.author=="string"&&typeof e.op=="string"&&typeof e.before_hash=="string"&&typeof e.after_hash=="string"&&l_(e.patch)}function dI(e){let t=e.record_hash_version!==void 0,n=e.record_hash!==void 0;return t===n}function lI(e){return!zt(e)||!dI(e)||typeof e.before_hash!="string"||typeof e.after_hash!="string"||typeof e.patch_hash!="string"||!/^[a-f0-9]{64}$/u.test(e.patch_hash)||e.patch!==void 0&&!l_(e.patch)||e.record_hash_version!==void 0&&typeof e.record_hash_version!="number"||e.record_hash!==void 0&&(typeof e.record_hash!="string"||!/^(?:[a-f0-9]{64}|[a-f0-9]{128})$/u.test(e.record_hash))?!1:e.record===void 0||cI(e.record)}function uI(e){try{for(let t of e){if(!lI(t))return!1;vt(t.hash_algorithm)}return!0}catch{return!1}}function fI(e){let t=e.record;return t!==void 0&&t.before_hash===e.before_hash&&t.after_hash===e.after_hash&&t.item_hash_version===e.item_hash_version&&t.hash_algorithm===e.hash_algorithm&&t.record_hash_version===e.record_hash_version&&t.record_hash===e.record_hash&&In(t.patch)===e.patch_hash}function mI(e,t,n){if(t.patch&&In(t.patch)!==t.patch_hash)return{kind:"patch_hash_mismatch"};if(t.record)return fI(t)?{kind:"record",entry:t.record}:{kind:"record_hash_mismatch"};let r=t.patch??e.patch;if(In(r)!==t.patch_hash)return{kind:"digest_only"};let o={...e,before_hash:t.before_hash,after_hash:t.after_hash,patch:r,hash_algorithm:t.hash_algorithm,...t.item_hash_version===void 0?{}:{item_hash_version:t.item_hash_version},...t.record_hash_version===void 0?{}:{record_hash_version:t.record_hash_version},...t.record_hash===void 0?{}:{record_hash:t.record_hash},...n.length===0?{}:{reanchor_evidence:n}};return t.hash_algorithm===void 0&&delete o.hash_algorithm,n.length===0&&delete o.reanchor_evidence,t.item_hash_version===void 0&&delete o.item_hash_version,t.record_hash_version===void 0||t.record_hash===void 0?{kind:"legacy",entry:o}:{kind:"record",entry:o}}function Ac(e){let t=e.reanchor_evidence;if(t===void 0)return{ok:!0,coverage:"none"};if(!Array.isArray(t)||!uI(t))return{ok:!1,error:"rewrite_evidence_invalid"};if(t.length===0)return{ok:!0,coverage:"none"};let n=e;for(let r=t.length-1;r>=0;r-=1){let o=t[r],i=mI(n,o,t.slice(0,r));if(i.kind==="patch_hash_mismatch")return{ok:!1,error:"rewrite_evidence_patch_hash_mismatch"};if(i.kind==="record_hash_mismatch")return{ok:!1,error:"rewrite_evidence_record_hash_mismatch"};if(i.kind==="digest_only")return{ok:!0,coverage:"digest_only"};if(i.kind==="legacy")return{ok:!0,coverage:"legacy_anchor_only"};if(!yi(i.entry).ok)return{ok:!1,error:"rewrite_evidence_record_hash_mismatch"};n=i.entry}return{ok:!0,coverage:"complete"}}function xi(e,t){return(e??"").localeCompare(t??"")}function i_(e,t){return(e??0)-(t??0)}function it(e,t,n){return JSON.stringify(e??n).localeCompare(JSON.stringify(t??n))}function pI(e,t){return[e.scope.localeCompare(t.scope),xi(e.path,t.path),xi(e.command,t.command),i_(e.timeout_seconds,t.timeout_seconds),xi(e.pm_context_mode,t.pm_context_mode),+!!e.shared_host_safe-+!!t.shared_host_safe,it(e.env_clear,t.env_clear,[]),it(e.env_set,t.env_set,{}),it(e.assert_stdout_contains,t.assert_stdout_contains,[]),it(e.assert_stdout_regex,t.assert_stdout_regex,[]),it(e.assert_stderr_contains,t.assert_stderr_contains,[]),it(e.assert_stderr_regex,t.assert_stderr_regex,[]),i_(e.assert_stdout_min_lines,t.assert_stdout_min_lines),it(e.assert_json_field_equals,t.assert_json_field_equals,{}),it(e.assert_json_field_gte,t.assert_json_field_gte,{}),xi(e.note,t.note)].find(n=>n!==0)??0}function _I(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function yI(e,t){let n=_I(t);if(n.length===0)return!0;let r=e;for(let o of n){let i=/^(0|[1-9]\d*)$/.test(o)?Number(o):-1,s=Array.isArray(r)?i>=0&&i<r.length?r[i]:void 0:zt(r)&&Object.prototype.hasOwnProperty.call(r,o)?r[o]:void 0;if(s===void 0)return!1;r=s}return!0}function hI(e,t){let n=[],r=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!yI(r,o.path)?{...o,op:"add"}:o;n.push(i),r=c_.applyPatch(r,[i],!0,!0).newDocument}return n}function Ri(e,t,n=!1){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let r=un(e),o=t===1||t===2&&n?{...r.metadata,...r.metadata.dependencies===void 0?{}:{dependencies:r.metadata.dependencies.map(s=>({...s,id:s.id.toLowerCase()}))},...r.metadata.tests===void 0?{}:{tests:r.metadata.tests.map(({workspace_context_mode:s,provenance:a,provenance_invalid:c,...d})=>d)},...r.metadata.test_runs===void 0?{}:{test_runs:r.metadata.test_runs.map(({executions:s,...a})=>a)}}:r.metadata,i=t===1&&o.tests?{...o,tests:[...o.tests].sort(pI)}:o;return{front_matter:A(i,Ee),body:r.body}}function s_(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let t=un(e);return{metadata:A(t.metadata,Ee),body:t.body}}function LL(e){return u_(e,Mt)}function u_(e,t,n){if(!Tr.some(r=>r===t))throw new TypeError(`unsupported_item_hash_version:${String(t)}`);return We(x(Ri(e,t)),n)}function Tp(e,t,n){let r=u_(e,t,n);return t===2?[r,We(x(Ri(e,t,!0)),n)]:[r]}function FL(){return Hr(x(oI))}function xr(e){let t=pf(e.op),n=Ri(e.before,Mt),r=Ri(e.after,Mt),o=s_(e.before),i=s_(e.after),s=c_.compare(o,i),a=hI(o,s),c=Xf(e.author),d=c.harness?Object.fromEntries(Object.entries(Kf().provenance_outcomes).filter(([m,_])=>_.resolver!==void 0&&(_.status!=="resolved"||c.provenance?.[m]?.source==="probe"))):void 0,l=d===void 0||Object.keys(d).length===0?e.context:{...e.context,agent_provenance_outcomes:d},u=e.hashAlgorithm??xu,f={hash_algorithm:u,ts:e.nowIso,author:e.author,author_source:e.authorSource??Yf(e.author),...c.harness?{agent_harness:c.harness}:{},...c.model?{agent_model:c.model}:{},...c.model_source?{agent_model_source:c.model_source}:{},...c.instance?{agent_instance:c.instance}:{},...c.provenance?{agent_provenance:c.provenance}:{},...c.episode?{agent_episode:c.episode}:{},op:t,patch:a,before_hash:We(x(n),u),after_hash:We(x(r),u),item_hash_version:Mt,message:e.message===void 0?void 0:e.message,...l===void 0?{}:{context:l}};return qc({...f,event_class:_n(f)})}function zt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function zc(e){return new g(e,h.GENERIC_FAILURE,{code:"history_timestamp_invalid"})}function f_(e){let t=e.ts.trim();if(t.length===0)return Ie();if(!Jt(t))throw zc("History timestamp must be a valid RFC 3339 date-time with millisecond precision");if(t!==e.ts)throw zc("History timestamp must not contain surrounding whitespace");return e.ts}function a_(e,t){let n=e.ts;if(typeof n=="string"&&n.trim().length>0){if(!Jt(n))throw zc("History timestamp must be a valid RFC 3339 date-time with millisecond precision");return e}return{...e,ts:t}}function Uc(e,t){let n=f_(t);if(typeof e=="string"){let r;try{r=JSON.parse(e)}catch{return e}return zt(r)?JSON.stringify(a_(r,n)):e}return zt(e)?JSON.stringify(a_(e,n)):JSON.stringify(e)}async function gI(e,t,n){if(n===!1)return!0;if(typeof n=="string"){let s=Uc(n,t);return await Hc(e,s),await Ci(e),await jc(e),!0}if(typeof n!="object"||n===null)return!1;let r=n;if(r.skip===!0)return!0;let o=typeof r.history_path=="string"?r.history_path:e,i=Uc(typeof r.line=="string"?r.line:r.entry??t,t);return await Hc(o,i),await Ci(o),await jc(o),!0}async function Hc(e,t){let n;try{n=JSON.parse(t)}catch{n=null}if(!zt(n)||n.op!=="create"){await gd(e,t);return}await o_.mkdir(rI.dirname(e),{recursive:!0});try{await o_.writeFile(e,`${t}
|
|
108
|
+
`,{encoding:"utf8",flag:"wx"})}catch(r){throw r.code!=="EEXIST"?r:new g("This item identity is reserved by an existing history stream.",h.CONFLICT,{code:"item_identity_reserved",required:"Choose a new item ID or restore the original item from its history.",nextSteps:["Run pm history <id> --full, then pm restore <id> <version> to recover the original item."]})}}async function Rr(e,t){let n=await an("history_append",{history_path:e,entry:t});if(n.handled&&await gI(e,t,n.result))return;let r=t.ts.trim().length>0?t:{...t,ts:f_(t)},o=qc({...r,hash_algorithm:vt(r.hash_algorithm),event_class:_n(r)});await Zp(e,o,async()=>{await Hc(e,Uc(o,o))}),await Ci(e)}import m_ from"node:fs/promises";import Tn from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="af606b47-d071-5724-b1e7-de4e1e5d7385")}catch{}})();var st="_workspace";function Ut(e){return Tn.join(e,"history",`${st}.jsonl`)}function Vc(e,t){return{metadata:{id:st,title:"Workspace state",description:"Audited singleton workspace document state.",type:"Chore",status:"open",priority:2,tags:["workspace-history"],created_at:t,updated_at:t,documents:e},body:""}}function Ht(e,t=e.length){let n=hi();for(let r of e.slice(0,t))n=bi(n,r.patch).document;return gi(n)}function Cn(e){return"documents"in e.metadata&&typeof e.metadata.documents=="object"&&e.metadata.documents!==null&&!Array.isArray(e.metadata.documents)?e.metadata.documents:{}}function xn(e){throw new g(`Workspace history verification failed: ${e.join(", ")}`,h.CONFLICT,{code:"workspace_history_chain_invalid",reason:"workspace_history_chain_verification_failed",verification_errors:[...e],required:"Repair the _workspace history chain before reading, reconciling, restoring, or appending audited singleton state.",why:"Continuing against an unverifiable append-only stream could hide or compound workspace state corruption.",examples:["pm history _workspace --verify --json","pm validate --check-history-drift --fix-hints --json"],nextSteps:["Inspect the exact verification_errors and preserve the corrupt stream as evidence.","Use the history-drift remediation returned by validate before retrying the refused operation."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify --json"}})}function Ni(e,t){let n=Tn.resolve(t),r=Tn.relative(e,n).replaceAll("\\","/");if(r.length===0||r===".."||r.startsWith("../")||Tn.isAbsolute(r))throw new TypeError("Workspace history document path must stay inside the tracker root");return{documentPath:r,absolutePath:n}}async function QL(e){let t=await Tt(Ut(e),st),n=$t(t);n.ok||xn(n.errors);let r=Cn(t.length===0?Dn:Ht(t)),o=[],i=[],s=[],a=[];for(let c of Object.keys(r).sort()){let d;try{let l=Ni(e,Tn.resolve(e,c));if(d=await Oe(l.absolutePath),d===null){s.push(c);continue}let u=JSON.parse(d);(x(u)===x(r[c])?o:i).push(c)}catch{a.push(c)}}return{ok:i.length===0&&s.length===0&&a.length===0,document_count:Object.keys(r).length,matching_documents:o,mismatched_documents:i,missing_documents:s,unreadable_documents:a}}async function p_(e){let t=Ut(e.pmRoot),n=await Tt(t,st),r=$t(n);r.ok||xn(r.errors);let o=e.idempotencyKey===void 0?void 0:n.find(u=>u.op===`${e.op}:${e.idempotencyKey}`);if(o)return{entry:o,historyPath:t};let i=Ie(),s=n.length===0?Dn:Ht(n),a=Cn(s),c=a[e.documentPath];if(c!==void 0&&x(c)!==x(e.before))throw new g(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,h.CONFLICT,{code:"workspace_history_state_conflict",reason:"out_of_band_workspace_state",required:"Reconcile the singleton document with its matching _workspace history state before retrying the mutation.",why:"Accepting the write would make the append-only audit stream describe a state that was not actually observed.",examples:["pm history _workspace --verify","pm validate --check-history-drift --fix-hints"],nextSteps:["Review the version-control change that altered the singleton and preserve the intended document plus its matching workspace history.","Rerun the original mutation only after the on-disk singleton agrees with the latest audited workspace state."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify"}});let d=Vc({...a,[e.documentPath]:e.after},n.length===0?i:s.metadata.created_at),l=xr({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:d,message:e.message});return await Rr(t,l),{entry:l,historyPath:t}}async function ZL(e){let t=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await p_(e)}finally{await t()}}async function eF(e){let t=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=Ut(e.pmRoot),r=await Tt(n,st),o=$t(r);o.ok||xn(o.errors);let i=r.length===0?Dn:Ht(r),s=xr({nowIso:Ie(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await Rr(n,s),{entry:s,historyPath:n}}finally{await t()}}async function __(e,t){if(t===e.raw)return!1;let n=t===null?null:JSON.parse(t),r=JSON.parse(e.raw);await ft(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await p_({pmRoot:e.pmRoot,documentPath:Tn.relative(e.pmRoot,e.filePath).replaceAll("\\","/"),before:n,after:r,op:e.op,idempotencyKey:e.idempotencyKey,author:e.author,lockTtlSeconds:e.lockTtlSeconds,lockWaitMs:e.lockWaitMs,message:e.message})}catch(o){throw t===null?await m_.rm(e.filePath,{force:!0}):await ft(e.filePath,t),o}return!0}async function y_(e){let{documentPath:t}=Ni(e.pmRoot,e.filePath),n=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let r=await Oe(e.filePath);if(e.dryRun===!0||e.idempotencyKey!==void 0){let i=await Tt(Ut(e.pmRoot),st),s=$t(i);s.ok||xn(s.errors);let a=Cn(i.length===0?Dn:Ht(i))[t];if(a!==void 0&&x(a)!==x(r===null?null:JSON.parse(r)))throw new g(`Workspace history state for "${t}" changed outside the audited mutation path.`,h.CONFLICT,{code:"workspace_history_state_conflict"});if(e.idempotencyKey!==void 0&&i.some(c=>c.op===`${e.op}:${e.idempotencyKey}`))return{changed:!1,result:void 0,replayed:!0}}let o=await e.mutate(r);return JSON.parse(o.raw),e.dryRun===!0?{changed:r!==o.raw,result:o.result}:{changed:await __({...e,raw:o.raw},r),result:o.result}}finally{await n()}}async function tF(e){let t=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await __(e,await Oe(e.filePath))}finally{await t()}}async function nF(e){let t=e.authorizationDecision.trim();if(!t)throw new TypeError("Workspace history reconciliation requires an authorization decision");let n=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:r,absolutePath:o}=Ni(e.pmRoot,e.filePath),i=Ut(e.pmRoot),s=await Tt(i,st),a=$t(s);a.ok||xn(a.errors);let c=Ht(s),d=Cn(c);if(!Object.hasOwn(d,r))throw new TypeError(`Workspace history does not govern document ${r}`);let l=await Oe(o);if(l===null)throw new TypeError(`Workspace history document is missing: ${r}`);let u=JSON.parse(l);if(x(d[r])===x(u))return{changed:!1,historyPath:i};let f=Ie(),m=xr({nowIso:f,author:e.author,op:e.op,before:c,after:Vc({...d,[r]:u},c.metadata.created_at),message:e.message,context:{reason:"out_of_band_workspace_state_reconciliation",document_path:r,authorization_decision:t}});return await Rr(i,m),{changed:!0,entry:m,historyPath:i}}finally{await n()}}async function rF(e){let t=await fe(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:n,absolutePath:r}=Ni(e.pmRoot,e.filePath),o=await Tt(Ut(e.pmRoot),st),i=$t(o);if(i.ok||xn(i.errors),!Number.isInteger(e.targetVersion)||e.targetVersion<1||e.targetVersion>o.length)throw new TypeError(`Invalid workspace history target version: ${String(e.targetVersion)}`);let s=Cn(Ht(o,e.targetVersion))[n];if(s===void 0)throw new TypeError(`Workspace history version ${e.targetVersion} does not contain ${n}`);let a=await Oe(r),c=`${JSON.stringify(s,null,2)}
|
|
109
|
+
`;if(a===c)return{document_path:n,restored_from_version:e.targetVersion,changed:!1};let d=Ht(o),l=Ie(),u=xr({nowIso:l,author:e.author,op:e.op,before:d,after:Vc({...Cn(d),[n]:s},d.metadata.created_at),message:e.message,context:{reason:"workspace_state_restore",document_path:n,restored_from_version:e.targetVersion,replaced_out_of_band_state:!0}});await ft(r,c);try{await Rr(Ut(e.pmRoot),u)}catch(f){throw a===null?await m_.rm(r,{force:!0}):await ft(r,a),f}return{document_path:n,restored_from_version:e.targetVersion,changed:!0}}finally{await t()}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="405e7bd1-25c0-5e04-b313-d9871efce4f5")}catch{}})();var he={ok:!1},b=e=>typeof e=="string"?{ok:!0,value:e}:he,R=e=>typeof e=="boolean"?{ok:!0,value:e}:he;function F(e={}){return t=>typeof t!="number"||!Number.isFinite(t)||e.int&&(!Number.isInteger(t)||!Number.isSafeInteger(t))||e.positive&&t<=0||typeof e.min=="number"&&t<e.min||typeof e.max=="number"&&t>e.max?he:{ok:!0,value:t}}function N(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:he}function k(e,t){return n=>{if(!Array.isArray(n)||t!==void 0&&n.length>t)return he;let r=[];for(let o of n){let i=e(o);if(!i.ok)return he;r.push(i.value)}return{ok:!0,value:r}}}function Wc(e,t){return n=>typeof n=="string"&&n.length>0&&n.length<=e&&n===n.trim()&&(t===void 0||t.test(n))?{ok:!0,value:n}:he}function p(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function Di(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return he;let n={};for(let[r,o]of Object.entries(t)){let i=e(o);if(!i.ok)return he;n[r]=i.value}return{ok:!0,value:n}}}function T(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return he;let n=t,r={};for(let[o,i]of Object.entries(e)){let s=i(n[o]);if(!s.ok)return he;s.value!==void 0&&(r[o]=s.value)}return{ok:!0,value:r}}}var bI=T({key:b,values:k(b),required:p(R),aliases:p(k(b)),description:p(b)}),wI=T({command:N("create","update"),option:b,required:p(R),visible:p(R),enabled:p(R)}),vI=T({name:b,description:p(b),default_status:p(b),execution_role:p(N("agent","human","gate")),folder:p(b),aliases:p(k(b)),required_create_fields:p(k(b)),required_create_repeatables:p(k(b)),options:p(k(bI)),command_option_policies:p(k(wI))}),EI=T({id:b,aliases:p(k(b)),roles:p(k(N(...Wr))),description:p(b),order:p(F())}),kI=T({key:b,metadata_key:p(b),front_matter_key:p(b),cli_flag:p(b),cli_aliases:p(k(b)),description:p(b),type:p(N(...Yt)),commands:p(k(N(...Gr))),repeatable:p(R),required:p(R),required_on_create:p(R),required_types:p(k(b)),allow_unset:p(R)}),SI=e=>{if(!Array.isArray(e)||e.length!==2)return he;let[t,n]=e;return typeof t!="string"||typeof n!="string"?he:{ok:!0,value:[t,n]}},OI=T({type:b,allowed_transitions:k(SI)}),AI=p(T({version:p(F({int:!0})),files:p(T({types:p(b),statuses:p(b),fields:p(b),workflows:p(b)})),statuses:p(k(EI)),fields:p(k(kI)),workflow:p(T({draft_status:p(b),open_status:p(b),in_progress_status:p(b),blocked_status:p(b),close_status:p(b),canceled_status:p(b)})),type_workflows:p(k(OI)),unknown_field_policy:p(N(...Kr))})),II=p(T({preset:p(N(...Ad)),ownership_enforcement:p(N("none","warn","strict")),create_mode_default:p(N("progressive","strict")),close_validation_default:p(N("off","warn","strict")),require_close_reason:p(R),parent_reference:p(N("warn","strict_error")),metadata_profile:p(N("core","strict","custom")),force_required_for_stale_lock:p(R),create_default_type:p(b),workflow_enforcement:p(N("off","warn","strict")),duplicate_detection_mode:p(N("off","advisory","strict")),duplicate_detection_threshold:p(F({min:0,max:1})),duplicate_detection_limit:p(F({int:!0,min:0,max:20}))})),TI=T({name:b,disabled:p(R),require_trusted:p(R),require_provenance:p(R),sandbox_profile:p(N("none","restricted","strict")),allowed_capabilities:p(k(b)),blocked_capabilities:p(k(b)),allowed_surfaces:p(k(b)),blocked_surfaces:p(k(b)),allowed_commands:p(k(b)),blocked_commands:p(k(b)),allowed_actions:p(k(b)),blocked_actions:p(k(b)),allowed_services:p(k(b)),blocked_services:p(k(b))}),Bc=N("block","warn"),CI=e=>typeof e=="string"?Bc(e):T({global:p(Bc),project:p(Bc)})(e),xI=p(T({mode:p(N("off","warn","enforce")),trust_mode:p(N("off","warn","enforce")),pm_max_version_exceeded_mode:p(CI),require_provenance:p(R),trusted_extensions:p(k(b)),default_sandbox_profile:p(N("none","restricted","strict")),allowed_extensions:p(k(b)),blocked_extensions:p(k(b)),allowed_capabilities:p(k(b)),blocked_capabilities:p(k(b)),allowed_surfaces:p(k(b)),blocked_surfaces:p(k(b)),allowed_commands:p(k(b)),blocked_commands:p(k(b)),allowed_actions:p(k(b)),blocked_actions:p(k(b)),allowed_services:p(k(b)),blocked_services:p(k(b)),extension_overrides:p(k(TI))})),qt=Wc(128),RI=T({harness:Wc(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:p(k(qt,64)),model_environment_keys:p(k(qt,64)),session_environment_keys:p(k(qt,64)),provenance_environment_keys:p(Di(k(qt,64))),provenance_resolvers:p(Di(N("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:p(k(qt,64)),argv_markers:p(k(qt,64)),client_names:p(k(qt,64))}),NI=T({version:F({int:!0}),id_prefix:b,ids:p(T({token_length:p(F({int:!0,min:4,max:12}))})),author_default:b,agent_identity:p(T({probes_enabled:p(R),identity_vocabulary:p(T({version:F({int:!0,positive:!0}),aliases:Di(Wc(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:k(RI)})),mutation_guard:p(T({require_attributed_author:p(R),secret_guard:p(N("off","advise","block")),stale_in_progress_hours:p(F({int:!0,positive:!0}))})),item_format:p(N("toon","json_markdown")),locks:T({ttl_seconds:F({int:!0}),wait_ms:p(F({int:!0,min:0}))}),checkpoints:p(T({retention_days:p(F({int:!0,positive:!0}))})),output:T({default_format:N("toon","json")}),ux:p(T({deprecation_hints:p(R)})),history:p(T({missing_stream:N("auto_create","strict_error"),compact_policy:p(T({enabled:p(R),max_entries:p(F({int:!0,positive:!0})),trigger:p(N("health_warn","auto"))}))})),validation:p(T({sprint_release_format:N("warn","strict_error"),parent_reference:p(N("warn","strict_error")),metadata_profile:p(N("core","strict","custom")),metadata_required_fields:p(k(b)),lifecycle_stale_blocker_reason_patterns:p(k(b)),lifecycle_closure_like_blocked_reason_patterns:p(k(b)),lifecycle_closure_like_resolution_patterns:p(k(b)),lifecycle_closure_like_actual_result_patterns:p(k(b)),estimate_defaults_by_type:p(Di(F({int:!0,positive:!0})))})),governance:II,workflow:p(T({definition_of_done:k(b)})),testing:p(T({record_results_to_items:R,allow_untrusted_linked_tests:p(R)})),telemetry:p(T({enabled:R,first_run_prompt_completed:p(R),capture_level:p(N("minimal","redacted","max")),endpoint:p(b),installation_id:p(b),retention_days:p(F({int:!0,positive:!0}))})),agent_guidance:p(T({prompt_completed:p(R),declined:p(R),declined_at:p(b),template_version:p(F({int:!0,positive:!0})),last_checked_files:p(k(b))})),item_types:p(T({definitions:k(vI)})),schema:AI,context:p(T({default_depth:p(N("brief","standard","deep")),activity_limit:p(F({int:!0,positive:!0})),stale_threshold_days:p(F({int:!0,positive:!0})),next_ranking_policy:p(N("priority_floor","weighted")),sections:p(T({hierarchy:p(R),activity:p(R),progress:p(R),recently_created:p(R),unparented:p(R),blockers:p(R),files:p(R),workload:p(R),staleness:p(R),tests:p(R)}))})),extensions:T({enabled:k(b),disabled:k(b),policy:xI}),search:T({score_threshold:F(),hybrid_semantic_weight:p(F()),max_results:F({int:!0}),embedding_model:b,embedding_corpus_max_characters:p(F()),embedding_batch_size:F({int:!0}),embedding_timeout_ms:p(F({int:!0})),scanner_max_batch_retries:F({int:!0}),provider:p(b),default_mode:p(N("auto","keyword","semantic","hybrid")),corpus_fields:p(k(b)),mutation_refresh_policy:p(N("cache_only","semantic_configured","semantic_auto")),query_expansion:p(T({enabled:p(R),provider:p(b)})),rerank:p(T({enabled:p(R),model:p(b),top_k:p(F({int:!0,positive:!0}))})),bm25:p(T({k1:p(F()),b:p(F())}))}),providers:T({openai:T({base_url:b,api_key:b,model:b}),ollama:T({base_url:b,model:b})}),vector_store:T({adapter:p(b),collection_name:p(b),qdrant:T({url:b,api_key:b}),lancedb:T({path:b})})});function Gc(e){let t=NI(e);return t.ok?{success:!0,data:t.value}:{success:!1}}import{AsyncLocalStorage as LI}from"node:async_hooks";import{lstat as FI,realpath as A_}from"node:fs/promises";import I_ from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a0ca9902-540c-50fe-a4e2-9c234c4a01f3")}catch{}})();function Pi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Kc(e,t,n,r=[]){if(W(e,t)&&(r.length>0||Pi(n)))return n;if(W(e,n)||W(t,n))return t;if((e===void 0||Pi(e))&&Pi(t)&&Pi(n)){let o=e??{},i=new Set([...Object.keys(o),...Object.keys(t),...Object.keys(n)]);return Object.fromEntries([...i].flatMap(s=>{let a=Kc(Object.hasOwn(o,s)?o[s]:void 0,Object.hasOwn(t,s)?t[s]:void 0,Object.hasOwn(n,s)?n[s]:void 0,[...r,s]);return a===void 0?[]:[[s,a]]}))}throw new g(`Settings changed concurrently at ${r.join(".")||"<root>"}; read the latest settings and reapply the intended change.`,h.CONFLICT,{reason:"stale_settings_snapshot",required:"Read a fresh settings snapshot and reapply the intended change.",why:"Another writer changed the same setting after this snapshot was read.",examples:["pm config project export --json"],nextSteps:["Read the current settings, then retry the original config operation."]})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="de43e8e6-d7ef-53cc-94b0-ccdf1c4f94a3")}catch{}})();var DI={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},h_=120;function Yc(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function b_(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n.toLowerCase(),r);return t}var PI=b_(DI),g_=new WeakMap;function MI(e){let t=g_.get(e);if(t)return t;let n=b_(e);return g_.set(e,n),n}function uF(e,t){let n=(e??"").trim().toLowerCase();if(n.length===0)return h_;if(t){let o=MI(t).get(n);if(Yc(o))return Math.floor(o)}let r=PI.get(n);return Yc(r)?Math.floor(r):h_}function Xc(e){let t={};if(e===null||typeof e!="object"||Array.isArray(e))return t;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!Yc(r)||(t[o]=Math.floor(r))}return t}import{stat as $I}from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="78c79deb-5cf0-54fe-b98c-a0d5b3671ab2")}catch{}})();var Mi=new Map;function w_(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}async function jI(e){try{let t=await $I(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function at(e){let t=w_(e),n=await Promise.all(t.map(r=>jI(r)));return n.sort((r,o)=>r.path.localeCompare(o.path)),n}function Nr(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],o=t[n];if(r.path!==o.path||r.mtime_ms!==o.mtime_ms||r.size!==o.size)return!1}return!0}function v_(e){return Mi.get(e)}function $i(e,t){let n=w_(t.tracked_paths),r=[...t.signatures].map(o=>({path:o.path,mtime_ms:o.mtime_ms,size:o.size})).sort((o,i)=>o.path.localeCompare(i.path));Mi.set(e,{tracked_paths:n,signatures:r,value:t.value})}function Vt(e){if(e){Mi.delete(e);return}Mi.clear()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8d586108-d5b3-5c84-861a-cf532a979cdf")}catch{}})();var ed=new LI;async function NF(e,t,n=()=>!0){let r=new Set([I_.resolve(e)]);try{r.add(await A_(e))}catch{}return ed.run([...ed.getStore()??[],[r,n]],t)}function zI(e){let t=I_.resolve(e);return ed.getStore()?.some(([n,r])=>n.has(t)&&r())??!1}var UI="settings:write",T_=Symbol("pm.settings.persist_source"),HI=128,qI=new Set(["off","advisory","strict"]);function E_(e){return structuredClone(yd[e])}function VI(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:S.governance.preset}function k_(e,t){let n=typeof t.create_default_type=="string"?t.create_default_type.trim():void 0;return n&&n.length>0&&(e.create_default_type=n),(t.workflow_enforcement==="off"||t.workflow_enforcement==="warn"||t.workflow_enforcement==="strict")&&(e.workflow_enforcement=t.workflow_enforcement),t.require_close_reason===!1&&(e.require_close_reason=!1),e.duplicate_detection_mode=t.duplicate_detection_mode,e.duplicate_detection_threshold=t.duplicate_detection_threshold,e.duplicate_detection_limit=t.duplicate_detection_limit,e}function BI(e){return e.preset==="custom"?k_({preset:"custom",ownership_enforcement:e.ownership_enforcement,create_mode_default:e.create_mode_default,close_validation_default:e.close_validation_default,parent_reference:e.parent_reference,metadata_profile:e.metadata_profile,force_required_for_stale_lock:e.force_required_for_stale_lock},e):k_({preset:e.preset},e)}function WI(e){let t=typeof e.create_default_type=="string"?e.create_default_type.trim():void 0,n={};t&&t.length>0&&(n.create_default_type=t),(e.workflow_enforcement==="off"||e.workflow_enforcement==="warn"||e.workflow_enforcement==="strict")&&(n.workflow_enforcement=e.workflow_enforcement),typeof e.require_close_reason=="boolean"&&(n.require_close_reason=e.require_close_reason),qI.has(String(e.duplicate_detection_mode))&&(n.duplicate_detection_mode=e.duplicate_detection_mode);let r=e.duplicate_detection_threshold;[typeof r=="number",Number.isFinite(r),Number(r)>=0,Number(r)<=1].every(Boolean)&&(n.duplicate_detection_threshold=r);let o=e.duplicate_detection_limit;return[typeof o=="number",Number.isSafeInteger(o),Number(o)>=0,Number(o)<=20].every(Boolean)&&(n.duplicate_detection_limit=o),n}function C_(e){let t=e.governance??{},n=VI(t.preset),r=WI(t);if(n==="custom"){let s=E_("default"),a=r.require_close_reason??s.require_close_reason;return{preset:n,ownership_enforcement:t.ownership_enforcement??s.ownership_enforcement,create_mode_default:t.create_mode_default??s.create_mode_default,close_validation_default:t.close_validation_default??s.close_validation_default,parent_reference:t.parent_reference??s.parent_reference,metadata_profile:t.metadata_profile??s.metadata_profile,force_required_for_stale_lock:t.force_required_for_stale_lock??s.force_required_for_stale_lock,...r,require_close_reason:a,duplicate_detection_mode:r.duplicate_detection_mode??s.duplicate_detection_mode,duplicate_detection_threshold:r.duplicate_detection_threshold??s.duplicate_detection_threshold,duplicate_detection_limit:r.duplicate_detection_limit??s.duplicate_detection_limit}}let o=E_(n),i=r.require_close_reason??o.require_close_reason;return{preset:n,...o,...r,require_close_reason:i}}function x_(){return structuredClone(S)}function R_(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:S.search.mutation_refresh_policy}function N_(e){return e==="auto"||e==="keyword"||e==="semantic"||e==="hybrid"?e:"auto"}function D_(e){return typeof e=="boolean"?e:S.search.query_expansion.enabled}function P_(e){return typeof e!="string"?S.search.query_expansion.provider:e.trim()}function M_(e){return typeof e=="boolean"?e:S.search.rerank.enabled}function $_(e){return typeof e!="string"?S.search.rerank.model:e.trim()}function j_(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:S.search.rerank.top_k}function L_(e){if(typeof e!="string")return S.vector_store.collection_name;let t=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,HI);return t.length>0?t:S.vector_store.collection_name}function Jc(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function F_(e,t){let n=e.schema,r=Jc(n?.statuses),o=Jc(n?.fields),i=Jc(n?.type_workflows);return{persisted_settings:structuredClone(e),source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:Rn(e.item_types?.definitions),has_source_schema_statuses:r.present,source_schema_statuses:r.values,has_source_schema_fields:o.present,source_schema_fields:o.values,has_source_schema_type_workflows:i.present,source_schema_type_workflows:i.values,runtime_item_type_definitions:Rn(t.item_types?.definitions),runtime_schema_statuses:structuredClone(t.schema.statuses),runtime_schema_fields:structuredClone(t.schema.fields),runtime_schema_type_workflows:structuredClone(t.schema.type_workflows??[])}}function Fi(e,t){Object.defineProperty(e,T_,{value:t,writable:!0,configurable:!0,enumerable:!1})}function rd(e){let t=e[T_];if(!(!t||typeof t!="object"))return t}function DF(e){let t=rd(e);if(t){let n=structuredClone(t);n.source_settings.item_format=e.item_format,Fi(e,n)}}function ji(e){let t=structuredClone(e.settings),n=rd(e.settings);return n&&Fi(t,n),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function GI(e,t,n){let r=Te(t);return[n,ue(e,r.files.types,oe.types),ue(e,r.files.statuses,oe.statuses),ue(e,r.files.fields,oe.fields),ue(e,r.files.workflows,oe.workflows)]}async function KI(e,t,n){let r=await at(t);$i(e,{tracked_paths:t,signatures:r,value:ji(n)})}async function YI(e,t,n){try{await KI(e,t,n)}catch{Vt(e)}}function S_(e,t){return e.find(n=>n.path===t)}function XI(e,t,n){for(let r of n){let o=S_(e,r),i=S_(t,r);if(!o||!i||!Nr([o],[i]))return!1}return!0}async function Qc(e,t,n,r,o){try{let i=await at(t);if(!XI(r,i,o)){Vt(e);return}$i(e,{tracked_paths:t,signatures:i,value:ji(n)})}catch{Vt(e)}}function JI(e,t){let n=Te(e.schema),r=Rn(e.item_types?.definitions);if(!t)return{item_type_definitions:r,schema_statuses:n.statuses,schema_fields:n.fields,schema_type_workflows:n.type_workflows};let o=n.type_workflows??[],i=W(r,t.runtime_item_type_definitions),s=W(n.statuses,t.runtime_schema_statuses),a=W(n.fields,t.runtime_schema_fields),c=W(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?Rn(t.source_item_type_definitions):[]:r,schema_statuses:s?t.has_source_schema_statuses?structuredClone(t.source_schema_statuses):[]:n.statuses,schema_fields:a?t.has_source_schema_fields?structuredClone(t.source_schema_fields):[]:n.fields,schema_type_workflows:c?t.has_source_schema_type_workflows?structuredClone(t.source_schema_type_workflows):void 0:n.type_workflows}}function Re(e){return{settings:x_(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function z_(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function td(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function U_(e){let t=S.agent_guidance,n=e?.template_version;return{prompt_completed:e?.prompt_completed===!0,declined:e?.declined===!0,declined_at:typeof e?.declined_at=="string"?e.declined_at:t.declined_at,template_version:typeof n=="number"&&Number.isInteger(n)&&n>0?n:t.template_version,last_checked_files:td(e?.last_checked_files??t.last_checked_files)}}function Se(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function QI(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.mode}function ZI(e){return e==="off"||e==="warn"||e==="enforce"?e:S.extensions.policy.trust_mode}function H_(e){return e==="none"||e==="restricted"||e==="strict"?e:S.extensions.policy.default_sandbox_profile}function eT(e){let t=e.name.trim().toLowerCase();if(t.length===0)return null;let n={name:t};e.disabled===!0&&(n.disabled=!0),e.require_trusted===!0&&(n.require_trusted=!0),e.require_provenance===!0&&(n.require_provenance=!0),e.sandbox_profile!==void 0&&(n.sandbox_profile=H_(e.sandbox_profile));let r=Se(e.allowed_capabilities),o=Se(e.blocked_capabilities),i=Se(e.allowed_surfaces),s=Se(e.blocked_surfaces),a=Se(e.allowed_commands),c=Se(e.blocked_commands),d=Se(e.allowed_actions),l=Se(e.blocked_actions),u=Se(e.allowed_services),f=Se(e.blocked_services);return r.length>0&&(n.allowed_capabilities=r),o.length>0&&(n.blocked_capabilities=o),i.length>0&&(n.allowed_surfaces=i),s.length>0&&(n.blocked_surfaces=s),a.length>0&&(n.allowed_commands=a),c.length>0&&(n.blocked_commands=c),d.length>0&&(n.allowed_actions=d),l.length>0&&(n.blocked_actions=l),u.length>0&&(n.allowed_services=u),f.length>0&&(n.blocked_services=f),n}function tT(e){let t=new Map;for(let n of e??[]){let r=eT(n);r&&t.set(r.name,r)}return[...t.values()].sort((n,r)=>n.name.localeCompare(r.name))}function Zc(e){return e==="block"||e==="warn"?e:void 0}function nT(e){if(typeof e=="string")return Zc(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=Zc(e.global),n=Zc(e.project);return t===void 0&&n===void 0?void 0:{...t!==void 0?{global:t}:{},...n!==void 0?{project:n}:{}}}}function ge(e,t){return Se(e?.[t]??S.extensions.policy[t])}function q_(e){let t=nT(e?.pm_max_version_exceeded_mode);return{mode:QI(e?.mode),trust_mode:ZI(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:ge(e,"trusted_extensions"),default_sandbox_profile:H_(e?.default_sandbox_profile),allowed_extensions:ge(e,"allowed_extensions"),blocked_extensions:ge(e,"blocked_extensions"),allowed_capabilities:ge(e,"allowed_capabilities"),blocked_capabilities:ge(e,"blocked_capabilities"),allowed_surfaces:ge(e,"allowed_surfaces"),blocked_surfaces:ge(e,"blocked_surfaces"),allowed_commands:ge(e,"allowed_commands"),blocked_commands:ge(e,"blocked_commands"),allowed_actions:ge(e,"allowed_actions"),blocked_actions:ge(e,"blocked_actions"),allowed_services:ge(e,"allowed_services"),blocked_services:ge(e,"blocked_services"),extension_overrides:tT(e?.extension_overrides??S.extensions.policy.extension_overrides)}}function V_(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase().replaceAll("-","_")))].filter(t=>t.length>0).sort((t,n)=>t.localeCompare(n)).filter(t=>["author","acceptance_criteria","estimated_minutes","close_reason","reviewer","risk","confidence","sprint","release"].includes(t))}function ct(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function G(e,t){return e===void 0?t:e}function be(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function nd(e){return Array.isArray(e)?e:[]}function rT(e,t,n){return{...t.validation,...e.validation,parent_reference:n.parent_reference,metadata_profile:n.metadata_profile,metadata_required_fields:V_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:ct(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:ct(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:ct(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:ct(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:Xc(e.validation?.estimate_defaults_by_type)}}function oT(e,t){return{enabled:e.telemetry?.enabled??t.telemetry.enabled,first_run_prompt_completed:e.telemetry?.first_run_prompt_completed??t.telemetry.first_run_prompt_completed,capture_level:e.telemetry?.capture_level??t.telemetry.capture_level,endpoint:e.telemetry?.endpoint??t.telemetry.endpoint,installation_id:e.telemetry?.installation_id??t.telemetry.installation_id,retention_days:e.telemetry?.retention_days??t.telemetry.retention_days}}function iT(e,t){return{...t.search,...e.search,default_mode:N_(e.search?.default_mode),mutation_refresh_policy:R_(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:D_(e.search?.query_expansion?.enabled),provider:P_(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:M_(e.search?.rerank?.enabled),model:$_(e.search?.rerank?.model),top_k:j_(e.search?.rerank?.top_k)}}}function sT(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:L_(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function aT(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function cT(e,t){return{default_depth:e.context?.default_depth??t.context.default_depth,activity_limit:e.context?.activity_limit??t.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??t.context.stale_threshold_days,next_ranking_policy:e.context?.next_ranking_policy??t.context.next_ranking_policy,sections:{...t.context.sections,...e.context?.sections}}}function dT(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function Rn(e){let t=(e??[]).map(r=>Qr(r)).filter(r=>r!==null),n=new Map;for(let r of t)n.set(r.name.toLowerCase(),r);return[...n.values()].sort((r,o)=>r.name.localeCompare(o.name))}function Li(e){let t=x_(),n=C_({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:aT(e,t),locks:{...t.locks,...e.locks},ids:{...t.ids,...e.ids},agent_identity:structuredClone(e.agent_identity??t.agent_identity),mutation_guard:{...t.mutation_guard,...e.mutation_guard},checkpoints:{...t.checkpoints,...e.checkpoints},output:{...t.output,...e.output},ux:{...t.ux,...e.ux},history:{...t.history,...e.history,compact_policy:{...t.history.compact_policy,...e.history?.compact_policy}},validation:rT(e,t,n),governance:n,workflow:{definition_of_done:[...e.workflow?.definition_of_done??t.workflow.definition_of_done]},testing:{record_results_to_items:e.testing?.record_results_to_items??t.testing.record_results_to_items,allow_untrusted_linked_tests:e.testing?.allow_untrusted_linked_tests??t.testing.allow_untrusted_linked_tests},telemetry:oT(e,t),agent_guidance:U_(e.agent_guidance??t.agent_guidance),item_types:{definitions:Rn(e.item_types?.definitions)},schema:Te(e.schema??t.schema),context:cT(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:q_(e.extensions.policy??t.extensions.policy)},search:iT(e,t),providers:dT(e,t),vector_store:sT(e,t)}}function lT(e){e.agent_identity=A(e.agent_identity,["probes_enabled","identity_vocabulary","harness_signals"]);let t=e.agent_identity;Object.hasOwn(t,"identity_vocabulary")&&(t.identity_vocabulary=A(be(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=nd(e.agent_identity.harness_signals).map(n=>A(be(n),["harness","environment_keys","model_environment_keys","session_environment_keys","provenance_environment_keys","provenance_resolvers","provenance_unavailable_dimensions","argv_markers","client_names"])),e.locks=A(e.locks,["ttl_seconds","wait_ms"]),e.ids=A(e.ids,["token_length"]),e.mutation_guard=A(e.mutation_guard,["require_attributed_author","secret_guard","stale_in_progress_hours"]),e.checkpoints=A(e.checkpoints,["retention_days"]),e.output=A(e.output,["default_format"]),e.ux=A(e.ux,["deprecation_hints"]),e.history=A(e.history,["missing_stream","compact_policy"]),e.validation=A(e.validation,["sprint_release_format","parent_reference","metadata_profile","metadata_required_fields","lifecycle_stale_blocker_reason_patterns","lifecycle_closure_like_blocked_reason_patterns","lifecycle_closure_like_resolution_patterns","lifecycle_closure_like_actual_result_patterns","estimate_defaults_by_type"]),e.governance=A(e.governance,["preset","ownership_enforcement","create_mode_default","close_validation_default","require_close_reason","parent_reference","metadata_profile","force_required_for_stale_lock","create_default_type","workflow_enforcement","duplicate_detection_mode","duplicate_detection_threshold","duplicate_detection_limit"]),e.workflow=A(e.workflow,["definition_of_done"]),e.testing=A(e.testing,["record_results_to_items","allow_untrusted_linked_tests"]),e.telemetry=A(e.telemetry,["enabled","first_run_prompt_completed","capture_level","endpoint","installation_id","retention_days"]),e.agent_guidance=A(e.agent_guidance,["prompt_completed","declined","declined_at","template_version","last_checked_files"]),e.item_types=A(e.item_types,["definitions"]),e.schema=A(e.schema,["version","files","statuses","fields","workflow","type_workflows","unknown_field_policy"]),e.schema.files=A(be(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=A(be(e.schema.workflow),["draft_status","open_status","in_progress_status","blocked_status","close_status","canceled_status"]),e.context=A(e.context,["default_depth","activity_limit","stale_threshold_days","next_ranking_policy","sections"]),e.context.sections=A(be(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=A(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=A(be(e.extensions.policy),["mode","trust_mode","pm_max_version_exceeded_mode","require_provenance","trusted_extensions","default_sandbox_profile","allowed_extensions","blocked_extensions","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services","extension_overrides"]),e.extensions.policy.extension_overrides=nd(e.extensions.policy.extension_overrides).map(n=>A(be(n),["name","disabled","require_trusted","require_provenance","sandbox_profile","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services"])),e.search=A(e.search,["score_threshold","hybrid_semantic_weight","max_results","embedding_model","embedding_corpus_max_characters","embedding_batch_size","embedding_timeout_ms","scanner_max_batch_retries","provider","default_mode","mutation_refresh_policy","query_expansion","rerank"]),e.search.query_expansion=A(be(e.search.query_expansion),["enabled","provider"]),e.search.rerank=A(be(e.search.rerank),["enabled","model","top_k"]),e.providers=A(e.providers,["openai","ollama"]),e.providers.openai=A(be(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=A(be(e.providers.ollama),["base_url","model"]),e.vector_store=A(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=A(be(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=A(be(e.vector_store.lancedb),["path"])}function uT(e){return{...e,locks:G(e.locks,S.locks),ids:G(e.ids,S.ids),agent_identity:G(e.agent_identity,S.agent_identity),mutation_guard:G(e.mutation_guard,S.mutation_guard),checkpoints:G(e.checkpoints,S.checkpoints),output:G(e.output,S.output),ux:G(e.ux,S.ux),history:G(e.history,S.history),validation:G(e.validation,S.validation),workflow:G(e.workflow,S.workflow),testing:G(e.testing,S.testing),telemetry:G(e.telemetry,S.telemetry),agent_guidance:G(e.agent_guidance,S.agent_guidance),item_types:G(e.item_types,S.item_types),schema:G(e.schema,S.schema),context:G(e.context,S.context),extensions:G(e.extensions,S.extensions),search:G(e.search,S.search),providers:G(e.providers,S.providers),vector_store:G(e.vector_store,S.vector_store)}}function fT(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:V_(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:ct(e.validation?.lifecycle_stale_blocker_reason_patterns??S.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:ct(e.validation?.lifecycle_closure_like_blocked_reason_patterns??S.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:ct(e.validation?.lifecycle_closure_like_resolution_patterns??S.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:ct(e.validation?.lifecycle_closure_like_actual_result_patterns??S.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:Xc(e.validation?.estimate_defaults_by_type)}}function mT(e){return{...S.search,...e.search,default_mode:N_(e.search?.default_mode),mutation_refresh_policy:R_(e.search?.mutation_refresh_policy),query_expansion:{...S.search.query_expansion,...e.search?.query_expansion,enabled:D_(e.search?.query_expansion?.enabled),provider:P_(e.search?.query_expansion?.provider)},rerank:{...S.search.rerank,...e.search?.rerank,enabled:M_(e.search?.rerank?.enabled),model:$_(e.search?.rerank?.model),top_k:j_(e.search?.rerank?.top_k)}}}function pT(e){return{default_depth:e.context?.default_depth??S.context.default_depth,activity_limit:e.context?.activity_limit??S.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??S.context.stale_threshold_days,next_ranking_policy:e.context?.next_ranking_policy??S.context.next_ranking_policy,sections:{...S.context.sections,...e.context?.sections}}}function _T(e){return{...e.vector_store,adapter:e.vector_store?.adapter??S.vector_store.adapter,collection_name:L_(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function yT(e,t,n,r){return{...e,item_format:"toon",validation:fT(e,t),governance:t,agent_guidance:U_(e.agent_guidance),item_types:{definitions:r.item_type_definitions},schema:{...n,statuses:r.schema_statuses,fields:r.schema_fields,type_workflows:r.schema_type_workflows},search:mT(e),context:pT(e),extensions:{enabled:td(e.extensions?.enabled),disabled:td(e.extensions?.disabled),policy:q_(e.extensions?.policy)},vector_store:_T(e)}}function B_(e,t){for(let n of Object.keys(t)){let r=Reflect.get(t,n),o=e[n];typeof r=="object"&&r!==null&&!Array.isArray(r)&&typeof o=="object"&&o!==null&&!Array.isArray(o)?B_(o,r):e[n]=structuredClone(r)}}function W_(e,t,n){let r=new Set([...Object.keys(t),...Object.keys(n)]);for(let o of r){let i=t[o],s=n[o];if(!W(i,s)){if(s===void 0){delete e[o];continue}if(typeof i=="object"&&i!==null&&!Array.isArray(i)&&typeof s=="object"&&s!==null&&!Array.isArray(s)){let a=e[o],c=typeof a=="object"&&a!==null&&!Array.isArray(a)?a:{};W_(c,i,s),Object.keys(c).length>0?e[o]=c:delete e[o];continue}e[o]=structuredClone(s)}}}var od=["version","id_prefix","ids","author_default","agent_identity","mutation_guard","item_format","locks","checkpoints","output","ux","history","validation","governance","workflow","testing","telemetry","agent_guidance","item_types","schema","context","extensions","search","providers","vector_store"];function O_(e,t){let n=uT(e),r=C_(n),o=Te(n.schema),i=JI(n,t),s=yT(n,r,o,i),a=A({...s,governance:BI(r)},od);return lT(a),a}function hT(e,t={}){let n=t.source===void 0?t.persist_source:F_(t.source.validated,Li(t.source.validated)),r=O_(e,n);if(n){let o=Li(n.source_settings);o.item_types={definitions:structuredClone(n.runtime_item_type_definitions)},o.schema={...o.schema,statuses:structuredClone(n.runtime_schema_statuses),fields:structuredClone(n.runtime_schema_fields),type_workflows:structuredClone(n.runtime_schema_type_workflows)};let i=O_(o,n);t.source!==void 0&&B_(i,t.source.validated);let s=structuredClone(t.source===void 0?n.source_settings:t.source.raw);return W_(s,i,r),`${JSON.stringify(A(s,od),null,2)}
|
|
110
|
+
`}return`${JSON.stringify(r,null,2)}
|
|
111
|
+
`}async function gT(e){let t;try{t=await A_(e)}catch(a){if(we(a))return Re();throw a}let n=Ae(t),r;try{r=await FI(n)}catch(a){if(we(a))return Re();throw a}if(!r.isFile())throw Ki("settings.json");let o;try{o=await hd(n,Ki("settings.json"))}catch(a){if(we(a))return Re();throw a}let i;try{i=JSON.parse(o)}catch{return Re("settings_read_invalid_json")}let s=Gc(i);return s.success?{settings:Li(s.data),metadata:{has_explicit_item_format:z_(i)},warnings:s.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[]}:Re("settings_read_invalid_schema")}async function G_(e){if(zI(e))return gT(e);let t=Ae(e),n=[t];await sn({path:t,scope:"project"});let r=v_(e);if(r){let d=await at(r.tracked_paths);if(Nr(d,r.signatures))return ji(r.value)}let o=await at([t]),i;try{i=await Oe(t)}catch{return Re("settings_read_fs_error")}if(i===null){let d=Re();return await Qc(e,[t],d,o,[t]),d}let s=await at([t]);if(!Nr(o,s))return Vt(e),G_(e);let a;try{a=JSON.parse(i)}catch{let d=Re("settings_read_invalid_json");return await Qc(e,[t],d,s,[t]),d}let c=Gc(a);if(!c.success){let d=Re("settings_read_invalid_schema");return await Qc(e,[t],d,s,[t]),d}try{let d=Li(c.data),l=GI(e,d.schema,t);n=l;let u=await at(l),f=await Uu(e,d.schema),m=await at(l),_={...d,item_types:{definitions:Rn([...d.item_types.definitions,...nd(f.type_definitions_from_file)])},schema:f.schema};Fi(_,F_(c.data,_));let y={settings:_,metadata:{has_explicit_item_format:z_(a)},warnings:[...c.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...f.warnings]};return Nr(u,m)?$i(e,{tracked_paths:l,signatures:m,value:ji(y)}):Vt(e),y}catch{let d=Re("settings_read_merge_failed");return await YI(e,n,d),d}}async function PF(e){return(await G_(e)).settings}async function MF(e,t,n=UI){let r=Ae(e),o=rd(t),i=hT(t,{persist_source:o}),s=JSON.parse(i);try{await y_({pmRoot:e,filePath:r,mutate:a=>{let c=null;if(a!==null)try{c=JSON.parse(a)}catch{throw new g("Existing settings.json is malformed; the settings write was refused.",h.USAGE,{code:"settings_write_invalid_existing_json",reason:"existing_settings_json_malformed",why:"Writing defaults over malformed settings could destroy intended project configuration.",nextSteps:["Repair the syntax in .agents/pm/settings.json, then retry the original command.","Run pm health to confirm the settings warning has cleared."]})}return{raw:o?`${JSON.stringify(A(Kc(o.persisted_settings,s,c),od),null,2)}
|
|
112
|
+
`:i,result:void 0}},op:n,author:Jf(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),o&&Fi(t,{...o,persisted_settings:structuredClone(s)}),await Oo({path:r,scope:"project",op:n})}finally{Vt(e)}}import K_ from"node:fs";import Dr from"node:path";import{createRequire as bT}from"node:module";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="19d9b802-1efa-5716-8176-ecbf5b153ff0")}catch{}})();var Pr="@unbrained/pm-cli",wT=new Set(["append","claim","changelog","close","close-many","close-task","comments","config","copy","create","dedupe-merge","delete","deps","docs","extension","event","events","files","focus","gc","history-author-acknowledge","history-compact","history-redact","history-repair","init","install","item","learnings","meet","merge","normalize","notes","package","packages","pause-task","plan","profile","reindex","release","remind","restore","schema","start-task","test","test-all","test-runs","test-runs-worker","telemetry","templates","twin","update","update-many","upgrade","vcs","workspace"]),Y_=new Set(["--author","--output-budget","--output-format","--output-include","--output-limit","--output-session","--path","--pm-path"]),sd=/\b(\d{4})\.(\d{1,2})\.(\d{1,2})(?:-(\d+))?\b/u,qi="2026.8.31";function ae(e,t){return e.some(n=>t.includes(n.split("=",1)[0]))}function id(e,t){return["activate","adopt","adopt-all","deactivate","init","install","migrate","reload","uninstall"].includes(t[0]??"")||ae(e,["--activate","--adopt","--adopt-all","--deactivate","--fix-managed-state","--init","--install","--output","--reload","--scaffold","--uninstall"])}var vT={changelog:(e,t)=>{if(t[0]==="generate")return!ae(e,["--check"]);let n=e.indexOf("export");return t[0]==="export"&&(ae(e,["--output"])||n>=0&&e[n+1]!==void 0&&!e[n+1].startsWith("-"))},comments:e=>ae(e,["--add","--delete","--edit","--file","--stdin"]),config:(e,t)=>(t[0]==="project"||t[0]==="global"?t[1]:t[0])==="set",deps:()=>!1,docs:e=>ae(e,["--add","--add-glob","--migrate","--remove"]),duplicates:()=>!1,events:()=>!1,extension:id,files:(e,t)=>ae(e,["--add","--add-glob","--migrate","--remove"])||t[0]==="discover"&&ae(e,["--apply"]),health:e=>!ae(e,["--check-only","--no-refresh","--skip-vectors"]),learnings:e=>ae(e,["--add","--delete","--edit","--file","--stdin"]),merge:(e,t)=>t[0]!=="report",notes:e=>ae(e,["--add","--delete","--edit","--file","--stdin"]),package:id,packages:id,profile:(e,t)=>t[0]==="apply",schema:(e,t)=>["add-field","add-status","add-type","remove-field","remove-status","remove-type","remap-status","rename-field","rename-type"].includes(t[0]??"")&&!(ae(e,["--infer"])&&!ae(e,["--apply"])),telemetry:(e,t)=>t.slice(0,2).some(n=>["clear","flush"].includes(n)),templates:(e,t)=>t[0]==="save",test:e=>ae(e,["--update","--update-index","--add","--add-json","--background","--measure","--remove","--resume","--run","--stop"]),validate:e=>ae(e,["--auto-fix","--prune-missing"]),vcs:(e,t)=>["abandon","create","merge","propose","ref-create"].includes(t[0]??""),workspace:(e,t)=>t[0]==="snapshot"&&["create","delete","restore"].includes(t[1]??"")};function Ui(e){let t=e.match(sd);return t?[Number(t[1]),Number(t[2]),Number(t[3]),Number(t[4]??0)]:null}function dt(e,t){let n=Ui(e),r=Ui(t);if(!n||!r)return null;for(let o=0;o<n.length;o+=1){let i=n[o]-r[o];if(i!==0)return Math.sign(i)}return 0}function zi(e){return dt(e,qi)!==-1?3:2}function ET(e,t){if(t===3)return e.filter(n=>n.history_epoch_compatible===!1).map(n=>({...n,declaration:n.declaration??n.version})).sort((n,r)=>dt(n.version,r.version))[0]}function Hi(e){try{let t=JSON.parse(K_.readFileSync(e,"utf8"));return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}catch{return null}}function kT(e){let t=[...e.matchAll(/(<=|<)\s*v?(\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?)/gu)].map(r=>({inclusive:r[1]==="<=",version:r[2]})),n=e.match(/\b\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?\s+-\s+v?(\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?)/u);return n?[...t,{inclusive:!0,version:n[1]}]:t}function ST(e){let t=e.split("||").map(n=>kT(n));return{bounded:t.some(n=>n.length>0),compatible:t.some(n=>n.every(r=>{let o=dt(qi,r.version);return o!==null&&(r.inclusive?o!==1:o===-1)}))}}function X_(e){return["dependencies","devDependencies","optionalDependencies","peerDependencies"].flatMap(t=>{let n=e[t];if(typeof n!="object"||n===null)return[];let r=n[Pr];return typeof r=="string"?[r.trim()]:[]})}function OT(e){return X_(e).flatMap(t=>{let n=/^[<!]/u.test(t)?void 0:t.match(sd)?.[0];if(!n)return[];let r=/^(?:=|v)?\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?$/u.test(t),o=ST(t);return[{version:n,constraint:r?"exact":o.bounded?"range":"minimum",...r?{}:{declaration:t},history_epoch_compatible:r?dt(n,qi)!==-1:o.compatible}]})}function AT(e){let t=Hi(Dr.join(e,"package-lock.json"))?.packages;if(typeof t!="object"||t===null)return;let n=t["node_modules/@unbrained/pm-cli"];if(typeof n!="object"||n===null)return;let r=n.version;return typeof r=="string"?r:void 0}function IT(e,t){try{let n=K_.readFileSync(Dr.join(e,t),"utf8").split(/\r?\n/u),r=n.findIndex(s=>s.includes(Pr));if(r<0)return;let o=n[r].match(/^\s*/u)[0].length,i=[n[r]];for(let s=r+1;s<n.length;s+=1){let a=n[s],c=a.trim(),d=a.match(/^\s*/u)[0].length;if(c.length>0&&d<=o)break;i.push(a)}return i.join(`
|
|
113
|
+
`).match(/^\s*version(?::\s*|\s+)["']?(\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?)/mu)?.[1]??i[0].match(sd)?.[0]}catch{return}}function J_(e){let t=[],n=Hi(Dr.join(e,"package.json"));n&&t.push(...OT(n).map(i=>({...i,source:"package.json"})));let r=Hi(Dr.join(e,"node_modules","@unbrained","pm-cli","package.json"))?.version;typeof r=="string"&&Ui(r)&&t.push({version:r,source:"installed-package",constraint:"exact",history_epoch_compatible:zi(r)===3});let o=AT(e);o&&Ui(o)&&t.push({version:o,source:"package-lock.json",constraint:"exact",history_epoch_compatible:zi(o)===3});for(let i of["pnpm-lock.yaml","yarn.lock"]){let s=IT(e,i);s&&t.push({version:s,source:i,constraint:"exact",history_epoch_compatible:zi(s)===3})}return t}function HF(e,t){if(t<=1)return;let{minVersion:n,lt:r}=bT(import.meta.url)("semver"),o=X_(Hi(Dr.join(e,"package.json"))??{}).find(s=>{try{let a=n(s);return a!==null&&r(a,"2026.10.10")}catch{return!1}}),i=o===void 0?J_(e).find(s=>dt(s.version,"2026.10.10")===-1):{version:o,source:"package.json"};if(i)throw new g(`The project selects pm ${i.version}, which cannot safely refuse item format ${t}.`,h.CONFLICT,{code:"project_runtime_item_format_incompatible",reason:i.source,required:"Upgrade project pins, installed SDKs, CI hosts and Git merge drivers before writing guarded item formats.",nextSteps:["Use a pm runtime supporting the required item format throughout the project; preserve original item and history bytes, and never re-anchor history to satisfy an older host."]})}function Q_(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(Y_.has(n)){t+=1;continue}if(!n.startsWith("-"))return{command:n.toLowerCase(),index:t}}}function TT(e){let t=Q_(e);if(!t||ae(e,["--help","-h","--dry-run"]))return!1;let{command:n,index:r}=t,o=[];for(let s=r+1;s<e.length;s+=1){let a=e[s];if(Y_.has(a)){s+=1;continue}a.startsWith("-")||o.push(a.toLowerCase())}let i=vT[n];return i?i(e,o):wT.has(n)}function CT(e){let t=Q_(e.argv)?.command,n=TT(e.argv),r=J_(e.projectRoot).filter(l=>dt(l.version,e.executingVersion)!==null).sort((l,u)=>dt(u.version,l.version)),o=r[0],i=o!==void 0&&dt(e.executingVersion,o.version)===-1,s=zi(e.executingVersion),a=ET(r,s),c=n&&a!==void 0,d=i&&!n?{code:"project_runtime_stale_read",executing_version:e.executingVersion,project_version:o.version,source:o.source,message:"This read is using an older pm runtime than the project requires.",next_steps:[`Run the command through the project's installed ${Pr} ${o.version}.`,"Install the project dependencies with its declared package manager if the local executable is missing."]}:void 0;return{compatible:!n||!i&&!c||e.allowStale===!0,executing_version:e.executingVersion,...o?{project_version:o.version,source:o.source}:{},...t?{command:t}:{},mutating:n,stale:i,history_epoch_incompatible:c,writer_item_hash_version:s,...a?{incompatible_project_version:a.declaration,incompatible_source:a.source}:{},...d?{warning:d}:{},override_applied:n&&(i||c)&&e.allowStale===!0}}function qF(e){let t=CT(e);if(t.compatible)return t;throw t.history_epoch_incompatible?new g(`pm ${t.executing_version} cannot write item-hash epoch ${t.writer_item_hash_version} into a project pinned to pm ${t.incompatible_project_version}.`,h.CONFLICT,{code:"project_runtime_history_epoch_incompatible",reason:t.incompatible_source,why:`The pinned runtime cannot read item_hash_version ${t.writer_item_hash_version}; allowing the write would break its health and validation gates.`,nextSteps:[`Upgrade the project's ${Pr} pin to ${qi} or newer before mutating tracker history.`,"For an intentional coordinated migration only, set PM_ALLOW_STALE_CLI=1 for this invocation and record why.","Read-only commands remain available without an override."]}):new g(`pm ${t.executing_version} cannot mutate a project pinned to newer pm ${t.project_version}.`,h.CONFLICT,{code:"project_runtime_stale_mutation",reason:t.source,why:"An older runtime can write storage, history, and merge contracts it does not understand.",nextSteps:[`Run this command through the project's installed ${Pr} ${t.project_version}.`,"For an intentional recovery only, set PM_ALLOW_STALE_CLI=1 for this invocation and record why.","Read-only commands remain available without an override."]})}import cd from"node:fs/promises";import Vi from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="658ab1c3-da92-5af6-a170-85ed7befaad6")}catch{}})();function lt(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function Z_(e){let t=["--pm-path",e,"init","--defaults","--agent-guidance","skip"];return{suggested_retry:Xt(t),suggested_retry_args:t}}function Bi(e){return new g(`Tracker root is not a directory at ${e}.`,h.USAGE,{code:"tracker_root_not_directory",reason:"not_a_directory",resolved_path:e,nextSteps:["Pass a tracker directory, usually <workspace>/.agents/pm, rather than a file path."]})}function ad(e){return new g(`Tracker root is not readable at ${e}.`,h.GENERIC_FAILURE,{code:"tracker_root_unreadable",reason:"unreadable",resolved_path:e,nextSteps:["Grant read and directory-search permission to the tracker root, then retry."]})}async function xT(e){let t=Vi.resolve(e),n=Vi.parse(t).root,r=Vi.dirname(t);for(;r!==n;){let o;try{o=await cd.stat(r)}catch(i){if(lt(i,"ENOTDIR"))throw Bi(e);if(!lt(i,"ENOENT"))throw i;r=Vi.dirname(r);continue}if(!o.isDirectory())throw Bi(e);return}}async function RT(e){let t;try{t=await cd.stat(e)}catch(n){throw lt(n,"ENOENT")?(await xT(e),new g(`Tracker is not initialized at ${e}. Tracker root does not exist. Run pm init first.`,h.NOT_FOUND,{code:"tracker_root_missing",reason:"missing",resolved_path:e,nextSteps:["Confirm the tracker root path or initialize it with the emitted retry."],recovery:Z_(e)})):lt(n,"ENOTDIR")?Bi(e):lt(n,"EACCES")||lt(n,"EPERM")?ad(e):n}if(!t.isDirectory())throw Bi(e);if(process.platform!=="win32"&&((t.mode&292)===0||(t.mode&73)===0))throw ad(e);try{await(await cd.opendir(e)).close()}catch(n){throw lt(n,"EACCES")||lt(n,"EPERM")?ad(e):n}}async function QF(e){if(await RT(e),!await ut(Ae(e)))throw new g(`Tracker is not initialized at ${e}. Run pm init first.`,h.NOT_FOUND,{code:"tracker_not_initialized",reason:"settings_missing",resolved_path:e,nextSteps:["Initialize the selected tracker root with the emitted retry."],recovery:Z_(e)})}export{x as a,W as b,Hr as c,fy as d,wd as e,Yi as f,_y as g,yy as h,qr as i,Ed as j,gy as k,vy as l,LT as m,FT as n,Oy as o,Ay as p,Iy as q,Ty as r,Xi as s,UT as t,Cy as u,Mn as v,Vr as w,HT as x,qT as y,VT as z,xy as A,Ry as B,Ny as C,YT as D,XT as E,Dy as F,Br as G,JT as H,QT as I,Py as J,My as K,$y as L,Sd as M,Gt as N,jy as O,ZT as P,eC as Q,tC as R,nC as S,rC as T,oC as U,iC as V,Bd as W,Lh as X,Fh as Y,zh as Z,eo as _,XC as $,Ly as aa,Od as ba,Kt as ca,Wr as da,Yt as ea,Gr as fa,aC as ga,cC as ha,dC as ia,Yr as ja,Xr as ka,lC as la,uC as ma,fC as na,mC as oa,Jr as pa,$n as qa,Ji as ra,pC as sa,Id as ta,_C as ua,yC as va,hC as wa,gC as xa,Vy as ya,Rd as za,$d as Aa,IC as Ba,ts as Ca,nh as Da,TC as Ea,yh as Fa,hh as Ga,CC as Ha,xC as Ia,FC as Ja,ns as Ka,zC as La,zd as Ma,Ud as Na,Hd as Oa,Ae as Pa,UC as Qa,HC as Ra,qC as Sa,rs as Ta,os as Ua,Zr as Va,Ph as Wa,VC as Xa,Mh as Ya,$h as Za,BC as _a,WC as $a,jh as ab,GC as bb,Fn as cb,qd as db,Vd as eb,Xt as fb,ix as gb,sx as hb,ax as ib,Bh as jb,as as kb,ux as lb,Kd as mb,Yd as nb,Nu as ob,Gh as pb,mx as qb,px as rb,_x as sb,Jd as tb,yx as ub,hx as vb,gx as wb,Xd as xb,Qd as yb,bx as zb,no as Ab,Xh as Bb,Jh as Cb,Sx as Db,Ox as Eb,Ie as Fb,Pe as Gb,zn as Hb,Jt as Ib,ne as Jb,Rx as Kb,Nx as Lb,oo as Mb,Mx as Nb,rl as Ob,$x as Pb,io as Qb,fs as Rb,_s as Sb,ys as Tb,Hx as Ub,qx as Vb,Vx as Wb,Ag as Xb,il as Yb,Bx as Zb,hs as _b,sl as $b,lo as ac,uo as bc,Jx as cc,Qx as dc,fo as ec,mo as fc,_t as gc,z as hc,po as ic,rR as jc,al as kc,gs as lc,Ug as mc,Hg as nc,qn as oc,bs as pc,ws as qc,vs as rc,Es as sc,ks as tc,Ss as uc,Us as vc,Vg as wc,Bg as xc,Yg as yc,Xg as zc,pl as Ac,Vl as Bc,au as Cc,cu as Dc,Qg as Ec,Os as Fc,eb as Gc,As as Hc,Is as Ic,Ts as Jc,Cs as Kc,xs as Lc,Rs as Mc,Ds as Nc,Ps as Oc,Ms as Pc,Hb as Qc,Vb as Rc,Bb as Sc,Zb as Tc,VN as Uc,BN as Vc,WN as Wc,XN as Xc,QN as Yc,gw as Zc,bw as _c,Ks as $c,Ew as ad,kw as bd,sD as cd,ko as dd,aD as ed,cD as fd,dD as gd,lD as hd,uD as id,fD as jd,mD as kd,Ou as ld,pD as md,_D as nd,Au as od,yD as pd,So as qd,hD as rd,gD as sd,bD as td,wD as ud,vD as vd,Oo as wd,ED as xd,sn as yd,kD as zd,SD as Ad,OD as Bd,AD as Cd,ID as Dd,an as Ed,PD as Fd,Tw as Gd,xu as Hd,vt as Id,We as Jd,Ru as Kd,Ge as Ld,oe as Md,Qs as Nd,Te as Od,ue as Pd,KD as Qd,YD as Rd,Uu as Sd,Hu as Td,Zs as Ud,qu as Vd,Vu as Wd,XD as Xd,Gu as Yd,ar as Zd,rP as _d,oP as $d,ta as ae,na as be,sP as ce,ra as de,Yu as ee,yv as fe,aP as ge,xo as he,gv as ie,uP as je,Ro as ke,lE as le,Po as me,CE as ne,xP as oe,RP as pe,un as qe,df as re,lf as se,uf as te,ya as ue,ff as ve,PP as we,mf as xe,MP as ye,pf as ze,kt as Ae,ga as Be,LP as Ce,FP as De,$o as Ee,s0 as Fe,qo as Ge,f0 as He,fe as Ie,p0 as Je,Ia as Ke,Mf as Le,Ca as Me,u1 as Ne,f1 as Oe,m1 as Pe,p1 as Qe,_1 as Re,y1 as Se,La as Te,Fa as Ue,qf as Ve,A1 as We,I1 as Xe,T1 as Ye,C1 as Ze,x1 as _e,R1 as $e,qa as af,Kf as bf,N1 as cf,D1 as df,P1 as ef,B0 as ff,M1 as gf,Jf as hf,Ko as if,Tt as jf,V1 as kf,G0 as lf,K0 as mf,_n as nf,Pp as of,qA as pf,KA as qf,fL as rf,mL as sf,W1 as tf,G1 as uf,hr as vf,J1 as wf,Yo as xf,ek as yf,tk as zf,Q1 as Af,xe as Bf,Z1 as Cf,sk as Df,dk as Ef,yk as Ff,tm as Gf,mm as Hf,Ya as If,rm as Jf,Jo as Kf,gk as Lf,Ze as Mf,yn as Nf,pr as Of,Qo as Pf,_r as Qf,om as Rf,tM as Sf,yr as Tf,nc as Uf,gr as Vf,Pk as Wf,hM as Xf,_m as Yf,Mk as Zf,Vk as _f,Wk as $f,ym as ag,Gk as bg,Kk as cg,hm as dg,xt as eg,gm as fg,gM as gg,bM as hg,Qa as ig,wM as jg,vM as kg,EM as lg,kM as mg,SM as ng,xM as og,Za as pg,ec as qg,oi as rg,Em as sg,tc as tg,km as ug,br as vg,NM as wg,Rt as xg,XM as yg,JM as zg,dS as Ag,wn as Bg,QM as Cg,Dm as Dg,_S as Eg,ZM as Fg,Mm as Gg,sc as Hg,Hm as Ig,qm as Jg,Vm as Kg,Bm as Lg,si as Mg,ac as Ng,Er as Og,p$ as Pg,_$ as Qg,kr as Rg,cc as Sg,uc as Tg,y$ as Ug,VS as Vg,h$ as Wg,g$ as Xg,Fe as Yg,Y as Zg,x$ as _g,En as $g,tO as ah,R$ as bh,N$ as ch,nO as dh,D$ as eh,P$ as fh,M$ as gh,ip as hh,sO as ih,G$ as jh,cO as kh,ap as lh,K$ as mh,dp as nh,lO as oh,pO as ph,lp as qh,mp as rh,pp as sh,Q$ as th,tj as uh,mi as vh,nj as wh,rj as xh,TO as yh,oj as zh,ij as Ah,sj as Bh,aj as Ch,cj as Dh,yp as Eh,_j as Fh,yj as Gh,KO as Hh,Ir as Ih,pi as Jh,xj as Kh,Rj as Lh,nI as Mh,Ci as Nh,Mt as Oh,Tr as Ph,iI as Qh,sI as Rh,d_ as Sh,In as Th,jL as Uh,qc as Vh,yi as Wh,Ip as Xh,Ac as Yh,LL as Zh,u_ as _h,Tp as $h,FL as ai,xr as bi,Rr as ci,yA as di,hi as ei,Bj as fi,Oc as gi,gi as hi,Wj as ii,Gj as ji,xp as ki,bi as li,wi as mi,$t as ni,OA as oi,Kj as pi,Yj as qi,st as ri,Ut as si,QL as ti,ZL as ui,eF as vi,y_ as wi,tF as xi,nF as yi,rF as zi,Gc as Ai,uF as Bi,Vt as Ci,NF as Di,zI as Ei,C_ as Fi,DF as Gi,Li as Hi,hT as Ii,G_ as Ji,PF as Ki,MF as Li,qi as Mi,dt as Ni,zi as Oi,J_ as Pi,HF as Qi,TT as Ri,CT as Si,qF as Ti,Z_ as Ui,RT as Vi,QF as Wi};
|
|
114
|
+
//# sourceMappingURL=chunk-WRXQAW7Q.js.map
|