@unbrained/pm-cli 2026.10.31 → 2026.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/pm-user/references/ECOSYSTEM_PLANNING.md +1 -1
- package/.claude-plugin/marketplace.json +1 -1
- package/AGENTS.md +3 -3
- package/CHANGELOG.md +9 -0
- package/README.md +1 -1
- package/dist/cli/register-operations.d.ts +3 -3
- package/dist/cli/register-operations.js +1 -1
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/{chunk-6PSDQ7T7.js → chunk-2GK2IVU5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-U7JXZMU5.js → chunk-5KW4WUAK.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WRXQAW7Q.js → chunk-5WVE7XBS.js} +45 -45
- package/dist/cli-bundle/chunks/{chunk-24J6TNYE.js → chunk-6PKWKVS6.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ZTJVOBDU.js → chunk-E74BORFX.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-F3ECOBKA.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-43R7UTWV.js → chunk-ICT6E4IW.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-HSBTITO4.js → chunk-MP2DQJH2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BS2KXT24.js → chunk-MTRIGD7M.js} +42 -42
- package/dist/cli-bundle/chunks/{chunk-PT7TS6E7.js → chunk-N45IXPCA.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-35Q2B2GJ.js → chunk-NILQ2ZMV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-V6EWBTNH.js → chunk-O56O7NIE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WNF6FOL7.js → chunk-O6TFUV6M.js} +31 -31
- package/dist/cli-bundle/chunks/{chunk-GMBDZID5.js → chunk-TMPO4CTZ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-XDDPSWIW.js → chunk-TYERATXH.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-2AHSPMKJ.js → chunk-UEEG47TU.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-VC7TA67O.js → chunk-UUN3WNMQ.js} +19 -19
- package/dist/cli-bundle/chunks/{chunk-P3LNMWL2.js → chunk-WFBYKDB2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TL3O5GZA.js → chunk-Y7CKVU56.js} +4 -4
- package/dist/cli-bundle/chunks/item-transaction-Q5S5YLEJ.js +2 -0
- package/dist/cli-bundle/chunks/{mutation-admission-I4RHIT3Q.js → mutation-admission-BOOCJPCU.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-MVDL5EXG.js → register-list-query-23OX36Q3.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-GAF7LXRB.js → register-mutation-JPJ5YNDX.js} +2 -2
- package/dist/cli-bundle/chunks/register-operations-IGR7ERY5.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-MZN6ONB3.js → register-setup-BMIFKZZP.js} +2 -2
- package/dist/cli-bundle/chunks/{stage-2ZORTOF6.js → stage-ON7CYYPM.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-NRBUMDLF.js → chunk-2Y77HWIX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-QFMJGQGO.js → chunk-3NYWMUX3.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-3Z53POXU.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-4QPGJO2G.js → chunk-5TWS5KOM.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-EA65HVBO.js → chunk-5WCQFH6D.js} +12 -12
- package/dist/cli-bundle/focused-chunks/{chunk-2J7T2UCH.js → chunk-6GMYW42K.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-HPWT3RBG.js → chunk-6OKPYCLU.js} +4 -4
- package/dist/cli-bundle/focused-chunks/{chunk-NOKG4RFN.js → chunk-7WJDRZOR.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-PC3R5CJV.js → chunk-AL7SOFUL.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-CIQ6YWCW.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-PFBQOZPK.js → chunk-GE755ODZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-5MCGYBOQ.js → chunk-JCR32IAO.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-Y6UYRMVG.js → chunk-LVA76N27.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-57HPXGOQ.js → chunk-M22TI7LP.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KKRIFBSL.js → chunk-PAT6QF63.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-SFQKCA5K.js → chunk-RPUDOJVB.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-SXZM4PSS.js +44 -0
- package/dist/cli-bundle/focused-chunks/{chunk-HSAEEWSI.js → chunk-UQIBGLDR.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-MW77Q3AQ.js → chunk-VFQAZLKO.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KH5QJXY7.js → chunk-VS2ZFPXD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-JNKRUCVZ.js → chunk-WX2RVS2Y.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-6F6APBCX.js → chunk-Z7GIVH6B.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{item-transaction-LU75EG7D.js → item-transaction-7VLPA2SU.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{mutation-admission-KDJ7SCPA.js → mutation-admission-2DH27R5Y.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{stage-R4KEBO37.js → stage-FYOBWQA7.js} +2 -2
- package/dist/cli-bundle/main.js +2 -2
- 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 +52 -52
- 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 +9 -9
- package/dist/core/output/mutation-projection.js +1 -1
- package/dist/core/output/output.js +2 -2
- package/dist/sdk/cli-contracts/tool-schema.js +1 -1
- package/dist/sdk/context-intent-contracts.d.ts +17 -0
- package/dist/sdk/context-intent-contracts.js +1 -1
- package/dist/sdk/core.d.ts +1 -1
- package/dist/sdk/core.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 +1 -1
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/init-agent-guidance.js +2 -2
- package/dist/sdk/lifecycle/claim.d.ts +27 -0
- package/dist/sdk/lifecycle/claim.js +1 -1
- package/dist/sdk/lifecycle/mcp-actions.d.ts +1 -1
- package/dist/sdk/lifecycle/mcp-actions.js +1 -1
- package/dist/sdk/lifecycle/task-composition.js +1 -1
- package/dist/sdk/output/list-envelope.d.ts +8 -0
- package/dist/sdk/output/list-envelope.js +1 -1
- package/dist/sdk/output.d.ts +1 -1
- package/dist/sdk/output.js +2 -2
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/context.js +2 -2
- package/dist/sdk/runtime/actions.js +1 -1
- package/dist/sdk/runtime-input.js +1 -1
- package/dist/sdk/runtime-public-contracts.d.ts +2 -0
- package/dist/sdk/runtime.d.ts +2 -2
- package/dist/sdk/runtime.js +1 -1
- package/dist/sdk/start-task-status.d.ts +1 -1
- package/dist/sdk/start-task-status.js +1 -1
- package/docs/AGENT_GUIDE.md +3 -3
- package/docs/COMMANDS.md +1 -0
- package/docs/COMMAND_NAMESPACES.md +1 -1
- package/docs/LIFECYCLE_COMMANDS.md +19 -4
- package/docs/SDK.md +9 -1
- package/docs/SDK_ACTION_CONFORMANCE.md +21 -0
- package/docs/agent-task-token-baseline.json +1 -1
- package/docs/agent-task-transcripts.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/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-YT5D5HNG.js +0 -2
- package/dist/cli-bundle/chunks/item-transaction-UWV6UNSV.js +0 -2
- package/dist/cli-bundle/chunks/register-operations-JLFRL36Q.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-AFVN2KCP.js +0 -44
- package/dist/cli-bundle/focused-chunks/chunk-GP2WU43K.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-WHIE2C6Q.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as He,e as ze,f as Fe,i as Mn,j as Vn,k as Un,l as Wn,m as qn}from"./chunk-MW77Q3AQ.js";import{h as Zn}from"./chunk-4PW5XWVI.js";import{Ae as Zt,B as Dn,Cc as Bn,Ea as $n,Fa as A,Ga as $,Ha as ot,Ia as g,Nc as Jn,Od as $e,Pd as q,Qd as st,Rd as Ee,Sd as G,Vd as Kn,Wd as Xn,Yd as Yn,ae as M,ea as zn,i as Qe,j as An,ja as Fn,k as xn,l as Cn,m as Nn,q as et,r as tt,s as Rn,wc as Gn,x as rt,y as nt,yc as it,z as Xt,za as we}from"./chunk-GP2WU43K.js";import{A as w,C as jn,D as W,E as ie,F as be,G as Ln,H as Yt,I as Le,J as Hn,m as J,u as Pn,x as h,y as je,z as E}from"./chunk-JLXGRDTG.js";import{createHash as hs}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 Kl=["sha256","sha512"],ys="sha256",Qn="sha256";function se(e){if(e===void 0)return ys;if(e==="sha256"||e==="sha512")return e;throw new TypeError(`unsupported_history_hash_algorithm:${String(e)}`)}function K(e,t){return hs(se(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]="4d5692ce-ec33-5eb4-bd9b-7497ffe25b0e")}catch{}})();var gs=16;function Qt(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[r,...n]=t;return`${r}${n.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function vs(e){return[...new Set([qn(e),Qt(e.key),Qt(e.cli_flag),...e.cli_aliases.map(t=>Qt(t))])]}function ro(e,t){for(let r of vs(t)){if(!Object.hasOwn(e,r))continue;let n=e[r];if(n!==void 0)return n}}function no(e){return Array.isArray(e)?e.flatMap(t=>no(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 eo(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 r=e.trim().toLowerCase();if(r==="true"||r==="1"||r==="yes")return!0;if(r==="false"||r==="0"||r==="no")return!1}throw new w(`${t} must be one of true|false|1|0|yes|no`,E.USAGE)}function to(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let r=typeof e=="string"?e.trim():String(e),n=Number(r);if(!Number.isFinite(n))throw new w(`${t} must be a number`,E.USAGE);return n}function bs(e,t,r){let n=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(r==="array"&&Array.isArray(n)||r==="object"&&typeof n=="object"&&n!==null&&!Array.isArray(n))return n;throw new w(`${t} must be valid JSON ${r}`,E.USAGE)}function ws(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 Es(e,t,r){if(t.const!==void 0&&A(e)!==A(t.const))return`${r} must equal ${A(t.const)}`;if(t.enum!==void 0&&!t.enum.some(n=>A(n)===A(e)))return`${r} must be one of ${t.enum.map(n=>A(n)).join("|")}`;if(!ws(e,t.type))return`${r} must match configured type ${String(t.type)}`;if(typeof e=="string"){if(t.min_length!==void 0&&e.length<t.min_length)return`${r} must contain at least ${t.min_length} characters`;if(t.format==="date-time"&&!st(e))return`${r} must be an RFC 3339 date-time`}}function ks(e,t,r,n){if(Array.isArray(e)){if(t.min_items!==void 0&&e.length<t.min_items)return`${r} must contain at least ${t.min_items} items`;if(t.items)for(let[o,i]of e.entries()){let s=at(i,t.items,`${r}[${o}]`,n+1);if(s)return s}}}function Ss(e,t,r,n){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`${r}.${i} is required`;for(let[i,s]of Object.entries(o)){let a=t.properties?.[i];if(!a){if(t.additional_properties===!1)return`${r}.${i} is not allowed`;continue}let d=at(s,a,`${r}.${i}`,n+1);if(d)return d}}function at(e,t,r,n=0){if(n>gs)return`${r} value schema exceeds maximum depth`;let o=Es(e,t,r);if(o)return o;let i=ks(e,t,r,n);if(i)return i;let s=Ss(e,t,r,n);if(s)return s;if(!t.one_of)return;let a=0;for(let d of t.one_of)if(at(e,d,r,n+1)===void 0&&(a+=1,a>1))break;return a===1?void 0:`${r} must match exactly one configured schema variant`}function ae(e,t,r){if(!e.value_schema||t===void 0)return t;let n=at(t,e.value_schema,r);if(n)throw new w(n,E.USAGE);return t}function Is(e,t,r,n){let o=n==="option"&&Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return ae(e,bs(o,r,e.type),r)}function Me(e,t,r,n="option"){let o=r??`--${e.cli_flag}`;if(e.type==="array"||e.type==="object")return Is(e,t,o,n);if(e.repeatable||e.type==="string_array"){let s=no(t);return e.type==="number"?ae(e,s.map(a=>to(a,o)),o):e.type==="boolean"?ae(e,s.map(a=>eo(a,o)),o):ae(e,s,o)}let i=Array.isArray(t)?t[t.length-1]:t;if(i!==void 0)return e.type==="number"?ae(e,to(i,o),o):e.type==="boolean"?ae(e,eo(i,o),o):ae(e,typeof i=="string"?i:String(i),o)}function Os(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function ru(e,t,r){let n={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=ro(e,i);if(s===void 0){Os(i,r)&&o.push(`--${i.cli_flag}`);continue}n[i.metadata_key]=Me(i,s)}return{values:n,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function nu(e,t,r=["update"]){let n={},o=(r??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=ro(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),n[s.metadata_key]=Me(s,a)))}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]="c35d4830-d7d1-5ee4-99bc-ab52cc3e4e09")}catch{}})();var er=1,tr=2;function iu(e){return Math.max(rr(e),e.tests?.some(t=>t.updated_by!==void 0||t.updated_at!==void 0)?2:1)}function rr(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=1?t:1}function oo(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=1))return e}function Ts(e,t=2,r=t){return e<r?"outdated":e>t?"ahead":"current"}function su(e,t=2,r=t){let n=[],o=[];for(let i of e){let s=Ts(i.version,t,r);s==="outdated"?n.push(i.ref):s==="ahead"&&o.push(i.ref)}return{outdated:n.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 As={"in-progress":"in_progress",cancelled:"canceled"};function ct(e,t){if(t){let o=Un(e,t);if(o)return o}if(typeof e!="string")return;let r=e.trim().toLowerCase();if(!r)return;let n=As[r]??r;if(Qe.includes(n))return n}function xs(e,t){return ct(e,t)??e}function lu(e,t){return t.terminal_statuses.has(xs(e,t))}import{encode as Ds}from"@toon-format/toon";import{isDeepStrictEqual as io}from"node:util";import{decode as Cs}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 nr(e){return{value:Cs(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 Ns=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function Rs(e){if(e.length===0)return[];let t=e.split(/\r?\n/),r=[];for(let n=0;n<t.length;n+=1){let o=t[n]??"",i=o.match(Ns);if(!i)continue;let s=i[1];r.push({line:n+1,marker:s,text:o})}return r}function dt(e){return Rs(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 ar=new Set(["schema","tracker","auto","none"]),uo=new Set(["source","isolated","snapshot"]),Ps=new Set(["legacy","local_mutation","local_source_ref","acknowledged","invalid_provenance","foreign_source_ref"]),js=new Set(["passed","failed","stopped","canceled"]),Ls=new Set(Dn);function Ie(e){return e.replaceAll("\\","/")}function _o(e){for(let t of e)if(t!==0)return t;return 0}function ut(e){for(let[t,r]of Object.entries(e))r===void 0&&delete e[t]}var fo=["id","title","description","created_at","updated_at"],Hs=new Set(J);function mo(e){if(e?.schema)return{statusRegistry:Vn(e.schema),fieldRegistry:Wn(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function zs(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function X(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new w(`Invalid item metadata: ${e}`,E.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 We(e,t){throw new w(t,E.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 po(e,t){if(!t||typeof e!="object"||e===null)return;let r=rr(e);if(!(r<=tr))throw new w(`Stored item uses format version ${r}; this runtime supports up to ${tr}. Upgrade pm before reading or changing this item.`,E.CONFLICT,{code:"item_format_version_unsupported",format_version:r,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 ho(e){let t=new Set(Hs);for(let r of e.fieldRegistry?.definitions??[])t.add(r.metadata_key);for(let r of e.extensionFieldNames)t.add(r);return t}function y(e,t){e||X(t)}function qe(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&X(t),e}function or(e,t){let r=e[t];y(typeof r=="string",`${t} must be a string`),y(q(r),`${t} must be a valid ISO timestamp`)}function so(e,t,r){let n=e[t];n!==void 0&&y(typeof n=="number"&&Number.isInteger(n)&&n>=1,`${r} must be an integer >= 1`)}function cr(e,t,r){let n=e[t];n!==void 0&&(y(typeof n=="string",`${r} must be a string`),y(q(n),`${r} must be a valid ISO timestamp`))}function Fs(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){y(typeof t=="string","event.recurrence.by_weekday entries must be strings");let r=t.trim().toLowerCase();y(nt.includes(r),`event.recurrence.by_weekday entries must be one of: ${nt.join(", ")}`)}}}function $s(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)y(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function Ms(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)y(typeof t=="string","event.recurrence.exdates entries must be strings"),y(q(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function Vs(e){let t=qe(e,"event.recurrence must be an object");y(typeof t.freq=="string","event.recurrence.freq must be a string");let r=t.freq.trim().toLowerCase();y(rt.includes(r),`event.recurrence.freq must be one of: ${rt.join(", ")}`),so(t,"interval","event.recurrence.interval"),so(t,"count","event.recurrence.count"),cr(t,"until","event.recurrence.until"),Fs(t.by_weekday),$s(t.by_month_day),Ms(t.exdates)}function Us(e){for(let n of fo)y(typeof e[n]=="string",`${n} is required and must be a string`);let t=e.type;y(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let r=e.pm_format_version;return r!==void 0&&y(typeof r=="number"&&Number.isInteger(r)&&r>=er,`pm_format_version must be an integer >= ${er}`),t}function Ws(e,t){let r=e.status;y(typeof r=="string"&&r.trim().length>0,"status must be a non-empty string");let n=t?.statusRegistry,o=ct(r,n),i=n?n.definitions.map(s=>s.id):[...Qe];y(o!==void 0,`status must be one of: ${i.join(", ")}`)}function qs(e){let t=e.priority;y(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let r=e.tags;y(Array.isArray(r),"tags must be an array");for(let n of r)y(typeof n=="string","tags entries must be strings")}function Gs(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){y(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let r=t.trim().toLowerCase(),n=r==="med"||tt.includes(r);y(n,`confidence string value must be one of: ${[...tt,"med"].join(", ")}`);return}y(!1,"confidence must be a number or string")}}function Bs(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&X("severity must be a string");let r=t.trim().toLowerCase(),n=r==="med"||et.includes(r);y(n,`severity value must be one of: ${[...et,"med"].join(", ")}`)}function Js(e){e.regression!==void 0&&typeof e.regression!="boolean"&&X("regression must be a boolean")}function Ks(e){let t=e.reminders;if(t!==void 0){y(Array.isArray(t),"reminders must be an array");for(let r of t){let n=qe(r,"reminders entries must be objects");y(typeof n.at=="string","reminder.at must be a string"),y(q(n.at),"reminder.at must be a valid ISO timestamp"),y(typeof n.text=="string","reminder.text must be a string"),y(n.text.trim().length>0,"reminder.text must not be empty")}}}function Xs(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(y(typeof e[t]=="string",`event.${t} must be a string`),y(e[t].trim().length>0,`event.${t} must not be empty`))}function Ys(e){e.recurrence!==void 0&&(Vs(e.recurrence),e.recurrence.until!==void 0&&y(G(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function Zs(e){let t=qe(e,"events entries must be objects");y(typeof t.start_at=="string","event.start_at must be a string"),y(q(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(y(typeof t.end_at=="string","event.end_at must be a string"),y(q(t.end_at),"event.end_at must be a valid ISO timestamp"),y(G(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Xs(t),t.all_day!==void 0&&y(typeof t.all_day=="boolean","event.all_day must be a boolean"),Ys(t)}function Qs(e){let t=e.events;if(t!==void 0){y(Array.isArray(t),"events must be an array");for(let r of t)Zs(r)}}function ea(e){for(let t of["source_type","source_owner","design","external_ref"]){let r=e[t];r!==void 0&&y(typeof r=="string",`${t} must be a string`)}}function ta(e){let t=e.type_options;if(t===void 0)return;let r=qe(t,"type_options must be an object");for(let[n,o]of Object.entries(r))y(n.trim().length>0,"type_options keys must be non-empty"),y(typeof o=="string","type_options values must be strings"),y(o.trim().length>0,"type_options values must be non-empty strings")}function ra(e,t,r){if(r?.fieldRegistry)for(let n of r.fieldRegistry.definitions){let o=e[n.metadata_key];if(o===void 0){zs(n,t)&&X(`missing required schema field: ${n.metadata_key}`);continue}try{e[n.metadata_key]=Me(n,o,`metadata field "${n.metadata_key}"`,"metadata")}catch(i){X(String(i?.message).replace(/^Invalid\s+/u,""))}}}function na(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let r=ho(t),n=Object.keys(e).filter(o=>!r.has(o)).sort((o,i)=>o.localeCompare(i));n.length!==0&&(t.unknownFieldPolicy==="reject"?X(`unknown schema fields are not allowed: ${n.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${n.join(",")}`))}function dr(e,t){let r=qe(e,"item metadata must be an object"),n=Us(r);Ws(r,t),qs(r),Gs(r),Bs(r),Js(r),or(r,"created_at"),or(r,"updated_at"),r.deadline!==void 0&&or(r,"deadline"),Ks(r),Qs(r),cr(r,"closed_at","closed_at"),cr(r,"completed_at","completed_at"),ea(r),ta(r),ra(r,n,t),na(r,t)}function oa(e){if(!(!e||e.length===0))return[...e].map((t,r)=>(y(t.created_at===void 0||typeof t.created_at=="string"&&st(t.created_at),`dependencies.${r}.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,r)=>{let n=G(t.created_at??"",r.created_at??"");if(n!==0)return n;let o=t.id.localeCompare(r.id);if(o!==0)return o;let i=t.kind.localeCompare(r.kind);return i!==0?i:(t.source_kind??"").localeCompare(r.source_kind??"")})}function ir(e){if(!(!e||e.length===0))return[...e].sort((t,r)=>{let n=G(t.created_at,r.created_at);if(n!==0)return n;let o=t.text.localeCompare(r.text);return o!==0?o:t.author.localeCompare(r.author)})}function ia(e){if(!e||e.length===0)return;let t=[...e].map(r=>({at:r.at,text:r.text.trim()})).filter(r=>r.text.length>0).sort((r,n)=>{let o=G(r.at,n.at);return o!==0?o:r.text.localeCompare(n.text)});return t.length===0?void 0:t}function sa(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!rt.includes(t))return;let r=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>nt.includes(s)))).sort((s,a)=>Xt(s)-Xt(a)),n=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=>q(s)))).sort((s,a)=>G(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:r.length>0?r:void 0,by_month_day:n.length>0?n: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 aa(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(ca).sort(da)}function ca(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:sa(e.recurrence)};return ut(t),t}function da(e,t){return _o([G(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 la(e){if(!(!e||e.length===0))return e.map(t=>({path:Ie(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function ua(e){if(!e||e.length===0)return;let t=e.map(pa).filter(r=>r.run_id.length>0&&r.started_at.length>0&&r.finished_at.length>0&&r.recorded_at.length>0).sort((r,n)=>_o([G(r.recorded_at,n.recorded_at),r.run_id.localeCompare(n.run_id),r.kind.localeCompare(n.kind)]));return t.length>0?t:void 0}function ke(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function _a(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function sr(e){return typeof e=="string"?e:""}function fa(e){if(!Array.isArray(e))return;let t=e.filter(n=>n!==null&&typeof n=="object"&&typeof n.name=="string"&&n.name.trim().length>0&&typeof n.value=="number"&&Number.isFinite(n.value)&&typeof n.recorded_at=="string"&&n.recorded_at.trim().length>0).map(n=>({name:n.name.trim(),value:n.value,unit:typeof n.unit=="string"&&n.unit.trim()||void 0,threshold:typeof n.threshold=="number"&&Number.isFinite(n.threshold)?n.threshold:void 0,recorded_at:n.recorded_at.trim()})),r=[...new Map(t.map(n=>[n.name,n])).values()].sort((n,o)=>n.name.localeCompare(o.name)).slice(0,32);return r.length>0?r:void 0}function lt(e,t){return typeof e=="string"&&t.has(e)?e:void 0}function ma(e){if(!Array.isArray(e))return;let t=e.filter(r=>r&&typeof r.command=="string"&&r.command.trim().length>0).slice(0,32).map(r=>({command:r.command.trim(),requested_pm_context_mode:lt(r.requested_pm_context_mode,ar),pm_context_mode:lt(r.pm_context_mode,ar),workspace_context_mode:lt(r.workspace_context_mode,uo),trust_reason:lt(r.trust_reason,Ps)}));return t.length>0?t:void 0}function pa(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",r=e.kind==="test"||e.kind==="test-all"?e.kind:"test",n=js.has(e.status)?e.status:"failed",o={run_id:t,kind:r,status:n,started_at:sr(e.started_at),finished_at:sr(e.finished_at),recorded_at:sr(e.recorded_at),attempt:_a(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:ke(e.passed)??0,failed:ke(e.failed)??0,skipped:ke(e.skipped)??0,items:ke(e.items),linked_tests:ke(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:fa(e.measurements),executions:ma(e.executions)};return ut(o),o}function ha(e){if(!(!Array.isArray(e)||e.length===0))return e.map(wa)}function Ve(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(r=>typeof r=="string").map(r=>r.trim()).filter(r=>r.length>0))].sort((r,n)=>r.localeCompare(n));return t.length>0?t:void 0}function fr(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function mr(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function ao(e){if(!fr(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),String(n).trim()]).filter(([r,n])=>r.length>0&&!mr(r)&&n.length>0).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function ya(e){if(!fr(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),Number(n)]).filter(([r,n])=>r.length>0&&!mr(r)&&Number.isFinite(n)).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function ga(e){let t=e?.trim().toLowerCase();if(!(!t||!ar.has(t)))return t}function va(e){let t=e?.trim().toLowerCase();if(!(!t||!uo.has(t)))return t}function ba(e,t){if(t===!0)return{provenance_invalid:!0};if(e===void 0)return{};if(!fr(e))return{provenance_invalid:!0};let r=m(e.author),n=m(e.created_at),o=e.source_kind;return!r||!n||!q(n)||o!=="local_mutation"&&o!=="merge_union"?{provenance_invalid:!0}:{provenance:{author:r,created_at:n,source_kind:o,source_ref:m(e.source_ref)}}}function wa(e){let t={command:e.command?.trim()||void 0,path:e.path?Ie(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:ga(e.pm_context_mode),workspace_context_mode:va(e.workspace_context_mode),...ba(e.provenance,e.provenance_invalid),updated_by:m(e.updated_by),updated_at:m(e.updated_at),env_set:ao(e.env_set),env_clear:Ve(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:Ve(e.assert_stdout_contains),assert_stdout_regex:Ve(e.assert_stdout_regex),assert_stderr_contains:Ve(e.assert_stderr_contains),assert_stderr_regex:Ve(e.assert_stderr_regex),assert_stdout_min_lines:ke(e.assert_stdout_min_lines),assert_json_field_equals:ao(e.assert_json_field_equals),assert_json_field_gte:ya(e.assert_json_field_gte),note:e.note?.trim()||void 0};return ut(t),t}function Ea(e){if(!(!e||e.length===0))return[...e].map(t=>({path:Ie(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,r)=>{let n=t.scope.localeCompare(r.scope);if(n!==0)return n;let o=t.path.localeCompare(r.path);return o!==0?o:(t.note??"").localeCompare(r.note??"")})}function m(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function ka(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.id),i=m(n.kind);if(!o||!i)continue;let s={id:o,kind:i},a=m(n.note);a&&(s.note=a),n.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function Sa(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.path);if(!o)continue;let i={path:Ie(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=m(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function Ia(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.command),i=m(n.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=Ie(i));let a=m(n.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function Oa(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.path);if(!o)continue;let i={path:Ie(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=m(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function Ta(e){if(e===null||typeof e!="object")return;let t=e,r=m(t.id),n=m(t.title),o=m(t.status),i=o&&Ls.has(o)?o:void 0,s=zn(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",d=typeof t.updated_at=="string"?t.updated_at:"";if(!r||!n||!i||!Number.isFinite(s)||!a||!d)return;let l={id:r,order:s,title:n,status:i,created_at:a,updated_at:d};return Aa(l,t),l}function Aa(e,t){let r=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of r){let a=m(t[s]);a&&(e[i]=a)}let n=typeof t.completed_at=="string"?t.completed_at:void 0;n&&n.length>0&&(e.completed_at=n);let o=[["linked_items","linked_items",ka],["files","files",Sa],["tests","tests",Ia],["docs","docs",Oa]];for(let[i,s,a]of o){let d=a(t[s]);d&&(e[i]=d)}}function xa(e){if(!Array.isArray(e))return;let t=e.flatMap(r=>{let n=Ta(r);return n?[n]:[]});return t.sort((r,n)=>r.order-n.order),t.length>0?t:void 0}function Ca(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=m(n.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},d=m(n.rationale);d&&(a.rationale=d);let l=m(n.evidence);l&&(a.evidence=l);let _=m(n.step_id);_&&(a.step_id=_),t.push(a)}return t.length>0?t:void 0}function Na(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=m(n.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},d=m(n.step_id);d&&(a.step_id=d),t.push(a)}return t.length>0?t:void 0}function Ra(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.text);if(!o)continue;let i={text:o},s=m(n.command);s&&(i.command=s);let a=m(n.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function Da(e){if(!e)return;let t=Object.entries(e).map(([r,n])=>[r.trim(),n.trim()]).filter(([r,n])=>r.length>0&&n.length>0).sort((r,n)=>r[0].localeCompare(n[0]));if(t.length!==0)return Object.fromEntries(t)}function Se(e){let t=0;for(;t<e.length&&e[t]===`
|
|
1
|
+
import{c as He,e as ze,f as Fe,i as Mn,j as Vn,k as Un,l as Wn,m as qn}from"./chunk-VFQAZLKO.js";import{h as Zn}from"./chunk-4PW5XWVI.js";import{B as Dn,Be as Zt,Cc as Bn,Ea as $n,Fa as A,Ga as $,Ha as ot,Ia as g,Nc as Jn,Od as $e,Pd as q,Qd as st,Rd as Ee,Sd as G,Vd as Kn,Wd as Xn,Yd as Yn,ae as M,ea as zn,i as Qe,j as An,ja as Fn,k as xn,l as Cn,m as Nn,q as et,r as tt,s as Rn,wc as Gn,x as rt,y as nt,yc as it,z as Xt,za as we}from"./chunk-CIQ6YWCW.js";import{A as w,C as jn,D as W,E as ie,F as be,G as Ln,H as Yt,I as Le,J as Hn,m as J,u as Pn,x as h,y as je,z as E}from"./chunk-JLXGRDTG.js";import{createHash as hs}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 Kl=["sha256","sha512"],ys="sha256",Qn="sha256";function se(e){if(e===void 0)return ys;if(e==="sha256"||e==="sha512")return e;throw new TypeError(`unsupported_history_hash_algorithm:${String(e)}`)}function K(e,t){return hs(se(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]="4d5692ce-ec33-5eb4-bd9b-7497ffe25b0e")}catch{}})();var gs=16;function Qt(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[r,...n]=t;return`${r}${n.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function vs(e){return[...new Set([qn(e),Qt(e.key),Qt(e.cli_flag),...e.cli_aliases.map(t=>Qt(t))])]}function ro(e,t){for(let r of vs(t)){if(!Object.hasOwn(e,r))continue;let n=e[r];if(n!==void 0)return n}}function no(e){return Array.isArray(e)?e.flatMap(t=>no(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 eo(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 r=e.trim().toLowerCase();if(r==="true"||r==="1"||r==="yes")return!0;if(r==="false"||r==="0"||r==="no")return!1}throw new w(`${t} must be one of true|false|1|0|yes|no`,E.USAGE)}function to(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let r=typeof e=="string"?e.trim():String(e),n=Number(r);if(!Number.isFinite(n))throw new w(`${t} must be a number`,E.USAGE);return n}function bs(e,t,r){let n=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(r==="array"&&Array.isArray(n)||r==="object"&&typeof n=="object"&&n!==null&&!Array.isArray(n))return n;throw new w(`${t} must be valid JSON ${r}`,E.USAGE)}function ws(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 Es(e,t,r){if(t.const!==void 0&&A(e)!==A(t.const))return`${r} must equal ${A(t.const)}`;if(t.enum!==void 0&&!t.enum.some(n=>A(n)===A(e)))return`${r} must be one of ${t.enum.map(n=>A(n)).join("|")}`;if(!ws(e,t.type))return`${r} must match configured type ${String(t.type)}`;if(typeof e=="string"){if(t.min_length!==void 0&&e.length<t.min_length)return`${r} must contain at least ${t.min_length} characters`;if(t.format==="date-time"&&!st(e))return`${r} must be an RFC 3339 date-time`}}function ks(e,t,r,n){if(Array.isArray(e)){if(t.min_items!==void 0&&e.length<t.min_items)return`${r} must contain at least ${t.min_items} items`;if(t.items)for(let[o,i]of e.entries()){let s=at(i,t.items,`${r}[${o}]`,n+1);if(s)return s}}}function Ss(e,t,r,n){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`${r}.${i} is required`;for(let[i,s]of Object.entries(o)){let a=t.properties?.[i];if(!a){if(t.additional_properties===!1)return`${r}.${i} is not allowed`;continue}let d=at(s,a,`${r}.${i}`,n+1);if(d)return d}}function at(e,t,r,n=0){if(n>gs)return`${r} value schema exceeds maximum depth`;let o=Es(e,t,r);if(o)return o;let i=ks(e,t,r,n);if(i)return i;let s=Ss(e,t,r,n);if(s)return s;if(!t.one_of)return;let a=0;for(let d of t.one_of)if(at(e,d,r,n+1)===void 0&&(a+=1,a>1))break;return a===1?void 0:`${r} must match exactly one configured schema variant`}function ae(e,t,r){if(!e.value_schema||t===void 0)return t;let n=at(t,e.value_schema,r);if(n)throw new w(n,E.USAGE);return t}function Is(e,t,r,n){let o=n==="option"&&Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return ae(e,bs(o,r,e.type),r)}function Me(e,t,r,n="option"){let o=r??`--${e.cli_flag}`;if(e.type==="array"||e.type==="object")return Is(e,t,o,n);if(e.repeatable||e.type==="string_array"){let s=no(t);return e.type==="number"?ae(e,s.map(a=>to(a,o)),o):e.type==="boolean"?ae(e,s.map(a=>eo(a,o)),o):ae(e,s,o)}let i=Array.isArray(t)?t[t.length-1]:t;if(i!==void 0)return e.type==="number"?ae(e,to(i,o),o):e.type==="boolean"?ae(e,eo(i,o),o):ae(e,typeof i=="string"?i:String(i),o)}function Os(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function ru(e,t,r){let n={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=ro(e,i);if(s===void 0){Os(i,r)&&o.push(`--${i.cli_flag}`);continue}n[i.metadata_key]=Me(i,s)}return{values:n,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function nu(e,t,r=["update"]){let n={},o=(r??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=ro(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),n[s.metadata_key]=Me(s,a)))}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]="c35d4830-d7d1-5ee4-99bc-ab52cc3e4e09")}catch{}})();var er=1,tr=2;function iu(e){return Math.max(rr(e),e.tests?.some(t=>t.updated_by!==void 0||t.updated_at!==void 0)?2:1)}function rr(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=1?t:1}function oo(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=1))return e}function Ts(e,t=2,r=t){return e<r?"outdated":e>t?"ahead":"current"}function su(e,t=2,r=t){let n=[],o=[];for(let i of e){let s=Ts(i.version,t,r);s==="outdated"?n.push(i.ref):s==="ahead"&&o.push(i.ref)}return{outdated:n.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 As={"in-progress":"in_progress",cancelled:"canceled"};function ct(e,t){if(t){let o=Un(e,t);if(o)return o}if(typeof e!="string")return;let r=e.trim().toLowerCase();if(!r)return;let n=As[r]??r;if(Qe.includes(n))return n}function xs(e,t){return ct(e,t)??e}function lu(e,t){return t.terminal_statuses.has(xs(e,t))}import{encode as Ds}from"@toon-format/toon";import{isDeepStrictEqual as io}from"node:util";import{decode as Cs}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 nr(e){return{value:Cs(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 Ns=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function Rs(e){if(e.length===0)return[];let t=e.split(/\r?\n/),r=[];for(let n=0;n<t.length;n+=1){let o=t[n]??"",i=o.match(Ns);if(!i)continue;let s=i[1];r.push({line:n+1,marker:s,text:o})}return r}function dt(e){return Rs(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 ar=new Set(["schema","tracker","auto","none"]),uo=new Set(["source","isolated","snapshot"]),Ps=new Set(["legacy","local_mutation","local_source_ref","acknowledged","invalid_provenance","foreign_source_ref"]),js=new Set(["passed","failed","stopped","canceled"]),Ls=new Set(Dn);function Ie(e){return e.replaceAll("\\","/")}function _o(e){for(let t of e)if(t!==0)return t;return 0}function ut(e){for(let[t,r]of Object.entries(e))r===void 0&&delete e[t]}var fo=["id","title","description","created_at","updated_at"],Hs=new Set(J);function mo(e){if(e?.schema)return{statusRegistry:Vn(e.schema),fieldRegistry:Wn(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function zs(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function X(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new w(`Invalid item metadata: ${e}`,E.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 We(e,t){throw new w(t,E.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 po(e,t){if(!t||typeof e!="object"||e===null)return;let r=rr(e);if(!(r<=tr))throw new w(`Stored item uses format version ${r}; this runtime supports up to ${tr}. Upgrade pm before reading or changing this item.`,E.CONFLICT,{code:"item_format_version_unsupported",format_version:r,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 ho(e){let t=new Set(Hs);for(let r of e.fieldRegistry?.definitions??[])t.add(r.metadata_key);for(let r of e.extensionFieldNames)t.add(r);return t}function y(e,t){e||X(t)}function qe(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&X(t),e}function or(e,t){let r=e[t];y(typeof r=="string",`${t} must be a string`),y(q(r),`${t} must be a valid ISO timestamp`)}function so(e,t,r){let n=e[t];n!==void 0&&y(typeof n=="number"&&Number.isInteger(n)&&n>=1,`${r} must be an integer >= 1`)}function cr(e,t,r){let n=e[t];n!==void 0&&(y(typeof n=="string",`${r} must be a string`),y(q(n),`${r} must be a valid ISO timestamp`))}function Fs(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){y(typeof t=="string","event.recurrence.by_weekday entries must be strings");let r=t.trim().toLowerCase();y(nt.includes(r),`event.recurrence.by_weekday entries must be one of: ${nt.join(", ")}`)}}}function $s(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)y(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function Ms(e){if(e!==void 0){y(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)y(typeof t=="string","event.recurrence.exdates entries must be strings"),y(q(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function Vs(e){let t=qe(e,"event.recurrence must be an object");y(typeof t.freq=="string","event.recurrence.freq must be a string");let r=t.freq.trim().toLowerCase();y(rt.includes(r),`event.recurrence.freq must be one of: ${rt.join(", ")}`),so(t,"interval","event.recurrence.interval"),so(t,"count","event.recurrence.count"),cr(t,"until","event.recurrence.until"),Fs(t.by_weekday),$s(t.by_month_day),Ms(t.exdates)}function Us(e){for(let n of fo)y(typeof e[n]=="string",`${n} is required and must be a string`);let t=e.type;y(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let r=e.pm_format_version;return r!==void 0&&y(typeof r=="number"&&Number.isInteger(r)&&r>=er,`pm_format_version must be an integer >= ${er}`),t}function Ws(e,t){let r=e.status;y(typeof r=="string"&&r.trim().length>0,"status must be a non-empty string");let n=t?.statusRegistry,o=ct(r,n),i=n?n.definitions.map(s=>s.id):[...Qe];y(o!==void 0,`status must be one of: ${i.join(", ")}`)}function qs(e){let t=e.priority;y(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let r=e.tags;y(Array.isArray(r),"tags must be an array");for(let n of r)y(typeof n=="string","tags entries must be strings")}function Gs(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){y(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let r=t.trim().toLowerCase(),n=r==="med"||tt.includes(r);y(n,`confidence string value must be one of: ${[...tt,"med"].join(", ")}`);return}y(!1,"confidence must be a number or string")}}function Bs(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&X("severity must be a string");let r=t.trim().toLowerCase(),n=r==="med"||et.includes(r);y(n,`severity value must be one of: ${[...et,"med"].join(", ")}`)}function Js(e){e.regression!==void 0&&typeof e.regression!="boolean"&&X("regression must be a boolean")}function Ks(e){let t=e.reminders;if(t!==void 0){y(Array.isArray(t),"reminders must be an array");for(let r of t){let n=qe(r,"reminders entries must be objects");y(typeof n.at=="string","reminder.at must be a string"),y(q(n.at),"reminder.at must be a valid ISO timestamp"),y(typeof n.text=="string","reminder.text must be a string"),y(n.text.trim().length>0,"reminder.text must not be empty")}}}function Xs(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(y(typeof e[t]=="string",`event.${t} must be a string`),y(e[t].trim().length>0,`event.${t} must not be empty`))}function Ys(e){e.recurrence!==void 0&&(Vs(e.recurrence),e.recurrence.until!==void 0&&y(G(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function Zs(e){let t=qe(e,"events entries must be objects");y(typeof t.start_at=="string","event.start_at must be a string"),y(q(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(y(typeof t.end_at=="string","event.end_at must be a string"),y(q(t.end_at),"event.end_at must be a valid ISO timestamp"),y(G(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Xs(t),t.all_day!==void 0&&y(typeof t.all_day=="boolean","event.all_day must be a boolean"),Ys(t)}function Qs(e){let t=e.events;if(t!==void 0){y(Array.isArray(t),"events must be an array");for(let r of t)Zs(r)}}function ea(e){for(let t of["source_type","source_owner","design","external_ref"]){let r=e[t];r!==void 0&&y(typeof r=="string",`${t} must be a string`)}}function ta(e){let t=e.type_options;if(t===void 0)return;let r=qe(t,"type_options must be an object");for(let[n,o]of Object.entries(r))y(n.trim().length>0,"type_options keys must be non-empty"),y(typeof o=="string","type_options values must be strings"),y(o.trim().length>0,"type_options values must be non-empty strings")}function ra(e,t,r){if(r?.fieldRegistry)for(let n of r.fieldRegistry.definitions){let o=e[n.metadata_key];if(o===void 0){zs(n,t)&&X(`missing required schema field: ${n.metadata_key}`);continue}try{e[n.metadata_key]=Me(n,o,`metadata field "${n.metadata_key}"`,"metadata")}catch(i){X(String(i?.message).replace(/^Invalid\s+/u,""))}}}function na(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let r=ho(t),n=Object.keys(e).filter(o=>!r.has(o)).sort((o,i)=>o.localeCompare(i));n.length!==0&&(t.unknownFieldPolicy==="reject"?X(`unknown schema fields are not allowed: ${n.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${n.join(",")}`))}function dr(e,t){let r=qe(e,"item metadata must be an object"),n=Us(r);Ws(r,t),qs(r),Gs(r),Bs(r),Js(r),or(r,"created_at"),or(r,"updated_at"),r.deadline!==void 0&&or(r,"deadline"),Ks(r),Qs(r),cr(r,"closed_at","closed_at"),cr(r,"completed_at","completed_at"),ea(r),ta(r),ra(r,n,t),na(r,t)}function oa(e){if(!(!e||e.length===0))return[...e].map((t,r)=>(y(t.created_at===void 0||typeof t.created_at=="string"&&st(t.created_at),`dependencies.${r}.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,r)=>{let n=G(t.created_at??"",r.created_at??"");if(n!==0)return n;let o=t.id.localeCompare(r.id);if(o!==0)return o;let i=t.kind.localeCompare(r.kind);return i!==0?i:(t.source_kind??"").localeCompare(r.source_kind??"")})}function ir(e){if(!(!e||e.length===0))return[...e].sort((t,r)=>{let n=G(t.created_at,r.created_at);if(n!==0)return n;let o=t.text.localeCompare(r.text);return o!==0?o:t.author.localeCompare(r.author)})}function ia(e){if(!e||e.length===0)return;let t=[...e].map(r=>({at:r.at,text:r.text.trim()})).filter(r=>r.text.length>0).sort((r,n)=>{let o=G(r.at,n.at);return o!==0?o:r.text.localeCompare(n.text)});return t.length===0?void 0:t}function sa(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!rt.includes(t))return;let r=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>nt.includes(s)))).sort((s,a)=>Xt(s)-Xt(a)),n=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=>q(s)))).sort((s,a)=>G(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:r.length>0?r:void 0,by_month_day:n.length>0?n: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 aa(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(ca).sort(da)}function ca(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:sa(e.recurrence)};return ut(t),t}function da(e,t){return _o([G(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 la(e){if(!(!e||e.length===0))return e.map(t=>({path:Ie(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function ua(e){if(!e||e.length===0)return;let t=e.map(pa).filter(r=>r.run_id.length>0&&r.started_at.length>0&&r.finished_at.length>0&&r.recorded_at.length>0).sort((r,n)=>_o([G(r.recorded_at,n.recorded_at),r.run_id.localeCompare(n.run_id),r.kind.localeCompare(n.kind)]));return t.length>0?t:void 0}function ke(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function _a(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function sr(e){return typeof e=="string"?e:""}function fa(e){if(!Array.isArray(e))return;let t=e.filter(n=>n!==null&&typeof n=="object"&&typeof n.name=="string"&&n.name.trim().length>0&&typeof n.value=="number"&&Number.isFinite(n.value)&&typeof n.recorded_at=="string"&&n.recorded_at.trim().length>0).map(n=>({name:n.name.trim(),value:n.value,unit:typeof n.unit=="string"&&n.unit.trim()||void 0,threshold:typeof n.threshold=="number"&&Number.isFinite(n.threshold)?n.threshold:void 0,recorded_at:n.recorded_at.trim()})),r=[...new Map(t.map(n=>[n.name,n])).values()].sort((n,o)=>n.name.localeCompare(o.name)).slice(0,32);return r.length>0?r:void 0}function lt(e,t){return typeof e=="string"&&t.has(e)?e:void 0}function ma(e){if(!Array.isArray(e))return;let t=e.filter(r=>r&&typeof r.command=="string"&&r.command.trim().length>0).slice(0,32).map(r=>({command:r.command.trim(),requested_pm_context_mode:lt(r.requested_pm_context_mode,ar),pm_context_mode:lt(r.pm_context_mode,ar),workspace_context_mode:lt(r.workspace_context_mode,uo),trust_reason:lt(r.trust_reason,Ps)}));return t.length>0?t:void 0}function pa(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",r=e.kind==="test"||e.kind==="test-all"?e.kind:"test",n=js.has(e.status)?e.status:"failed",o={run_id:t,kind:r,status:n,started_at:sr(e.started_at),finished_at:sr(e.finished_at),recorded_at:sr(e.recorded_at),attempt:_a(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:ke(e.passed)??0,failed:ke(e.failed)??0,skipped:ke(e.skipped)??0,items:ke(e.items),linked_tests:ke(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:fa(e.measurements),executions:ma(e.executions)};return ut(o),o}function ha(e){if(!(!Array.isArray(e)||e.length===0))return e.map(wa)}function Ve(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(r=>typeof r=="string").map(r=>r.trim()).filter(r=>r.length>0))].sort((r,n)=>r.localeCompare(n));return t.length>0?t:void 0}function fr(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function mr(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function ao(e){if(!fr(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),String(n).trim()]).filter(([r,n])=>r.length>0&&!mr(r)&&n.length>0).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function ya(e){if(!fr(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),Number(n)]).filter(([r,n])=>r.length>0&&!mr(r)&&Number.isFinite(n)).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function ga(e){let t=e?.trim().toLowerCase();if(!(!t||!ar.has(t)))return t}function va(e){let t=e?.trim().toLowerCase();if(!(!t||!uo.has(t)))return t}function ba(e,t){if(t===!0)return{provenance_invalid:!0};if(e===void 0)return{};if(!fr(e))return{provenance_invalid:!0};let r=m(e.author),n=m(e.created_at),o=e.source_kind;return!r||!n||!q(n)||o!=="local_mutation"&&o!=="merge_union"?{provenance_invalid:!0}:{provenance:{author:r,created_at:n,source_kind:o,source_ref:m(e.source_ref)}}}function wa(e){let t={command:e.command?.trim()||void 0,path:e.path?Ie(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:ga(e.pm_context_mode),workspace_context_mode:va(e.workspace_context_mode),...ba(e.provenance,e.provenance_invalid),updated_by:m(e.updated_by),updated_at:m(e.updated_at),env_set:ao(e.env_set),env_clear:Ve(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:Ve(e.assert_stdout_contains),assert_stdout_regex:Ve(e.assert_stdout_regex),assert_stderr_contains:Ve(e.assert_stderr_contains),assert_stderr_regex:Ve(e.assert_stderr_regex),assert_stdout_min_lines:ke(e.assert_stdout_min_lines),assert_json_field_equals:ao(e.assert_json_field_equals),assert_json_field_gte:ya(e.assert_json_field_gte),note:e.note?.trim()||void 0};return ut(t),t}function Ea(e){if(!(!e||e.length===0))return[...e].map(t=>({path:Ie(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,r)=>{let n=t.scope.localeCompare(r.scope);if(n!==0)return n;let o=t.path.localeCompare(r.path);return o!==0?o:(t.note??"").localeCompare(r.note??"")})}function m(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function ka(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.id),i=m(n.kind);if(!o||!i)continue;let s={id:o,kind:i},a=m(n.note);a&&(s.note=a),n.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function Sa(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.path);if(!o)continue;let i={path:Ie(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=m(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function Ia(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.command),i=m(n.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=Ie(i));let a=m(n.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function Oa(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.path);if(!o)continue;let i={path:Ie(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=m(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function Ta(e){if(e===null||typeof e!="object")return;let t=e,r=m(t.id),n=m(t.title),o=m(t.status),i=o&&Ls.has(o)?o:void 0,s=zn(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",d=typeof t.updated_at=="string"?t.updated_at:"";if(!r||!n||!i||!Number.isFinite(s)||!a||!d)return;let l={id:r,order:s,title:n,status:i,created_at:a,updated_at:d};return Aa(l,t),l}function Aa(e,t){let r=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of r){let a=m(t[s]);a&&(e[i]=a)}let n=typeof t.completed_at=="string"?t.completed_at:void 0;n&&n.length>0&&(e.completed_at=n);let o=[["linked_items","linked_items",ka],["files","files",Sa],["tests","tests",Ia],["docs","docs",Oa]];for(let[i,s,a]of o){let d=a(t[s]);d&&(e[i]=d)}}function xa(e){if(!Array.isArray(e))return;let t=e.flatMap(r=>{let n=Ta(r);return n?[n]:[]});return t.sort((r,n)=>r.order-n.order),t.length>0?t:void 0}function Ca(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=m(n.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},d=m(n.rationale);d&&(a.rationale=d);let l=m(n.evidence);l&&(a.evidence=l);let _=m(n.step_id);_&&(a.step_id=_),t.push(a)}return t.length>0?t:void 0}function Na(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=m(n.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},d=m(n.step_id);d&&(a.step_id=d),t.push(a)}return t.length>0?t:void 0}function Ra(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=m(n.text);if(!o)continue;let i={text:o},s=m(n.command);s&&(i.command=s);let a=m(n.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function Da(e){if(!e)return;let t=Object.entries(e).map(([r,n])=>[r.trim(),n.trim()]).filter(([r,n])=>r.length>0&&n.length>0).sort((r,n)=>r[0].localeCompare(n[0]));if(t.length!==0)return Object.fromEntries(t)}function Se(e){let t=0;for(;t<e.length&&e[t]===`
|
|
2
2
|
`;)t+=1;return e.slice(t).trimEnd()}function Pa(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(tt.includes(t))return t}function ja(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(et.includes(t))return t}function Ue(e){return e||void 0}function La(e,t){let r=e,n=t;for(let[o,i]of Object.entries(n))mr(o)||Object.prototype.hasOwnProperty.call(r,o)||i===void 0||(r[o]=i)}function Ha(e,t){if(!t?.fieldRegistry)return;let r=e;for(let n of t.fieldRegistry.definitions){let o=r[n.metadata_key];o!==void 0&&(r[n.metadata_key]=Me(n,o,`metadata field "${n.metadata_key}"`,"metadata"))}}function za(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let r=ho(t),n=Object.keys(e).filter(o=>!r.has(o)).sort((o,i)=>o.localeCompare(i));n.length>0&&t.unknownFieldPolicy==="reject"&&X(`unknown schema fields are not allowed: ${n.join(", ")}`),n.length>0&&t.onWarning?.(`item_unknown_schema_fields:${n.join(",")}`)}function _t(e,t={}){let r=mo(t),n=ct(e.status,r?.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:oo(e.pm_format_version),source_type:m(e.source_type),type_options:Da(e.type_options),status:n,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:oa(e.dependencies),comments:ir(e.comments),notes:ir(e.notes),learnings:ir(e.learnings),files:la(e.files),tests:ha(e.tests),test_runs:ua(e.test_runs),docs:Ea(e.docs),deadline:Ue(e.deadline),reminders:ia(e.reminders),events:aa(e.events),closed_at:Ue(e.closed_at),completed_at:Ue(e.completed_at),assignee:m(e.assignee),claim_principal:m(e.claim_principal),source_owner:m(e.source_owner),author:Ue(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:m(e.definition_of_ready),order:e.order,goal:m(e.goal),objective:m(e.objective),value:m(e.value),impact:m(e.impact),outcome:m(e.outcome),why_now:m(e.why_now),parent:m(e.parent),reviewer:m(e.reviewer),risk:e.risk??void 0,confidence:Pa(e.confidence),sprint:m(e.sprint),release:m(e.release),blocked_by:m(e.blocked_by),blocked_reason:m(e.blocked_reason),unblock_note:m(e.unblock_note),reporter:m(e.reporter),severity:ja(e.severity),environment:m(e.environment),repro_steps:m(e.repro_steps),resolution:m(e.resolution),expected_result:m(e.expected_result),actual_result:m(e.actual_result),affected_version:m(e.affected_version),fixed_version:m(e.fixed_version),component:m(e.component),regression:e.regression,customer_impact:m(e.customer_impact),close_reason:Ue(e.close_reason),plan_mode:m(e.plan_mode),plan_scope:m(e.plan_scope),plan_harness:m(e.plan_harness),plan_resume_context:m(e.plan_resume_context),plan_steps:xa(e.plan_steps),plan_decisions:Ca(e.plan_decisions),plan_discoveries:Na(e.plan_discoveries),plan_validation:Ra(e.plan_validation)};return La(i,e),Ha(i,r),za(i,r),ut(i),i}function yo(e){return g(e,J)}function Fa(e){let t=0,r=!1,n=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(r){if(n){n=!1;continue}if(i==="\\"){n=!0;continue}i==='"'&&(r=!1);continue}if(i==='"'){r=!0;continue}if(i==="{"){t+=1;continue}if(i==="}"&&(t-=1,t===0))return o}return-1}function $a(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=Fa(e);if(t<0)return{frontMatter:"",body:e};let r=e.slice(0,t+1),n=e.slice(t+1).replace(/^\r?\n+/,"");return{frontMatter:r,body:n}}function Ma(e){let t=e.charCodeAt(0)===65279?e.slice(1):e,r=t.match(/^[ \t]*---[ \t]*(?:\r?\n|$)/);if(!r)return{content:t,stripped:!1};let n=r[0].length;for(;n<t.length;){let o=t.indexOf(`
|
|
3
3
|
`,n),i=o===-1?t.length:o,s=t.slice(n,i).replace(/\r$/,""),a=o===-1?i:i+1;if(s.trim()==="---")return{content:t.slice(a).replace(/^\s+/,""),stripped:!0};n=a}return{content:t,stripped:!1}}function lr(e,t){return _t(e,{...t,onWarning:void 0})}function Va(e,t,r={}){let n=Ma(e);n.stripped&&r.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=$a(n.content);o||(e.trimStart().startsWith("{")&&We("json_markdown","JSON front matter is not valid JSON"),We("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{We("json_markdown","JSON front matter is not valid JSON")}return po(s,r.requireSupportedFormat),dr(s,t),{metadata:lr(s,r),body:Se(i)}}function Ua(e,t,r={}){let n;try{n=nr(e).value}catch{We("toon","TOON item document is not valid TOON")}y(typeof n=="object"&&n!==null&&!Array.isArray(n),"TOON item document must be an object");let o=n;if(po(Object.prototype.hasOwnProperty.call(o,"front_matter")?o.front_matter:o,r.requireSupportedFormat),!fo.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&We("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return dr(o.front_matter,t),y(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:lr(o.front_matter,r),body:Se(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return y(i===void 0||typeof i=="string","TOON item document body must be a string"),dr(s,t),{metadata:lr(s,r),body:Se(typeof i=="string"?i:"")}}function Wa(e,t={}){let r=_t(e.metadata,t),n=yo(r),o=Se(e.body??"");_r(JSON.parse(JSON.stringify(n))),_r({body:o});let i=JSON.stringify(n,null,2);return o?`${i}
|
|
4
4
|
|
|
@@ -76,4 +76,4 @@ ${o}
|
|
|
76
76
|
`}async function zl(e){let t;try{t=await Mi(e)}catch(a){if(W(a))return U();throw a}let r=we(t),n;try{n=await il(r)}catch(a){if(W(a))return U();throw a}if(!n.isFile())throw Yt("settings.json");let o;try{o=await Ln(r,Yt("settings.json"))}catch(a){if(W(a))return U();throw a}let i;try{i=JSON.parse(o)}catch{return U("settings_read_invalid_json")}let s=sn(i);return s.success?{settings:Ut(s.data),metadata:{has_explicit_item_format:rs(i)},warnings:s.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[]}:U("settings_read_invalid_schema")}async function ds(e){if(sl(e))return zl(e);let t=we(e),r=[t];await it({path:t,scope:"project"});let n=Li(e);if(n){let l=await te(n.tracked_paths);if(Xe(l,n.signatures))return Vt(n.value)}let o=await te([t]),i;try{i=await be(t)}catch{return U("settings_read_fs_error")}if(i===null){let l=U();return await _n(e,[t],l,o,[t]),l}let s=await te([t]);if(!Xe(o,s))return ge(e),ds(e);let a;try{a=JSON.parse(i)}catch{let l=U("settings_read_invalid_json");return await _n(e,[t],l,s,[t]),l}let d=sn(a);if(!d.success){let l=U("settings_read_invalid_schema");return await _n(e,[t],l,s,[t]),l}try{let l=Ut(d.data),_=fl(e,l.schema,t);r=_;let f=await te(_),b=await Mn(e,l.schema),O=await te(_),S={...l,item_types:{definitions:Pe([...l.item_types.definitions,...hn(b.type_definitions_from_file)])},schema:b.schema};yn(S,es(d.data,S));let z={settings:S,metadata:{has_explicit_item_format:rs(a)},warnings:[...d.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...b.warnings]};return Xe(f,O)?Mt(e,{tracked_paths:_,signatures:O,value:Vt(z)}):ge(e),z}catch{let l=U("settings_read_merge_failed");return await pl(e,r,l),l}}async function bm(e){return(await ds(e)).settings}async function wm(e,t,r=al){let n=we(e),o=ts(t),i=Hl(t,{persist_source:o}),s=JSON.parse(i);try{await Ni({pmRoot:e,filePath:n,mutate:a=>{let d=null;if(a!==null)try{d=JSON.parse(a)}catch{throw new w("Existing settings.json is malformed; the settings write was refused.",E.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(g(cn(o.persisted_settings,s,d),gn),null,2)}
|
|
77
77
|
`:i,result:void 0}},op:r,author:zo(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),o&&yn(t,{...o,persisted_settings:structuredClone(s)}),await Gn({path:n,scope:"project",op:r})}finally{ge(e)}}import ls from"node:fs";import Ye from"node:path";import{createRequire as Fl}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 us="@unbrained/pm-cli";var bn=/\b(\d{4})\.(\d{1,2})\.(\d{1,2})(?:-(\d+))?\b/u,wn="2026.8.31";function Wt(e){let t=e.match(bn);return t?[Number(t[1]),Number(t[2]),Number(t[3]),Number(t[4]??0)]:null}function Gt(e,t){let r=Wt(e),n=Wt(t);if(!r||!n)return null;for(let o=0;o<r.length;o+=1){let i=r[o]-n[o];if(i!==0)return Math.sign(i)}return 0}function vn(e){return Gt(e,wn)!==-1?3:2}function qt(e){try{let t=JSON.parse(ls.readFileSync(e,"utf8"));return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}catch{return null}}function $l(e){let t=[...e.matchAll(/(<=|<)\s*v?(\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?)/gu)].map(n=>({inclusive:n[1]==="<=",version:n[2]})),r=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 r?[...t,{inclusive:!0,version:r[1]}]:t}function Ml(e){let t=e.split("||").map(r=>$l(r));return{bounded:t.some(r=>r.length>0),compatible:t.some(r=>r.every(n=>{let o=Gt(wn,n.version);return o!==null&&(n.inclusive?o!==1:o===-1)}))}}function _s(e){return["dependencies","devDependencies","optionalDependencies","peerDependencies"].flatMap(t=>{let r=e[t];if(typeof r!="object"||r===null)return[];let n=r[us];return typeof n=="string"?[n.trim()]:[]})}function Vl(e){return _s(e).flatMap(t=>{let r=/^[<!]/u.test(t)?void 0:t.match(bn)?.[0];if(!r)return[];let n=/^(?:=|v)?\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?$/u.test(t),o=Ml(t);return[{version:r,constraint:n?"exact":o.bounded?"range":"minimum",...n?{}:{declaration:t},history_epoch_compatible:n?Gt(r,wn)!==-1:o.compatible}]})}function Ul(e){let t=qt(Ye.join(e,"package-lock.json"))?.packages;if(typeof t!="object"||t===null)return;let r=t["node_modules/@unbrained/pm-cli"];if(typeof r!="object"||r===null)return;let n=r.version;return typeof n=="string"?n:void 0}function Wl(e,t){try{let r=ls.readFileSync(Ye.join(e,t),"utf8").split(/\r?\n/u),n=r.findIndex(s=>s.includes(us));if(n<0)return;let o=r[n].match(/^\s*/u)[0].length,i=[r[n]];for(let s=n+1;s<r.length;s+=1){let a=r[s],d=a.trim(),l=a.match(/^\s*/u)[0].length;if(d.length>0&&l<=o)break;i.push(a)}return i.join(`
|
|
78
78
|
`).match(/^\s*version(?::\s*|\s+)["']?(\d{4}\.\d{1,2}\.\d{1,2}(?:-\d+)?)/mu)?.[1]??i[0].match(bn)?.[0]}catch{return}}function ql(e){let t=[],r=qt(Ye.join(e,"package.json"));r&&t.push(...Vl(r).map(i=>({...i,source:"package.json"})));let n=qt(Ye.join(e,"node_modules","@unbrained","pm-cli","package.json"))?.version;typeof n=="string"&&Wt(n)&&t.push({version:n,source:"installed-package",constraint:"exact",history_epoch_compatible:vn(n)===3});let o=Ul(e);o&&Wt(o)&&t.push({version:o,source:"package-lock.json",constraint:"exact",history_epoch_compatible:vn(o)===3});for(let i of["pnpm-lock.yaml","yarn.lock"]){let s=Wl(e,i);s&&t.push({version:s,source:i,constraint:"exact",history_epoch_compatible:vn(s)===3})}return t}function Am(e,t){if(t<=1)return;let{minVersion:r,lt:n}=Fl(import.meta.url)("semver"),o=_s(qt(Ye.join(e,"package.json"))??{}).find(s=>{try{let a=r(s);return a!==null&&n(a,"2026.10.10")}catch{return!1}}),i=o===void 0?ql(e).find(s=>Gt(s.version,"2026.10.10")===-1):{version:o,source:"package.json"};if(i)throw new w(`The project selects pm ${i.version}, which cannot safely refuse item format ${t}.`,E.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."]})}import kn from"node:fs/promises";import Bt 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 ne(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function fs(e){let t=["--pm-path",e,"init","--defaults","--agent-guidance","skip"];return{suggested_retry:Jn(t),suggested_retry_args:t}}function Jt(e){return new w(`Tracker root is not a directory at ${e}.`,E.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 En(e){return new w(`Tracker root is not readable at ${e}.`,E.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 Gl(e){let t=Bt.resolve(e),r=Bt.parse(t).root,n=Bt.dirname(t);for(;n!==r;){let o;try{o=await kn.stat(n)}catch(i){if(ne(i,"ENOTDIR"))throw Jt(e);if(!ne(i,"ENOENT"))throw i;n=Bt.dirname(n);continue}if(!o.isDirectory())throw Jt(e);return}}async function Bl(e){let t;try{t=await kn.stat(e)}catch(r){throw ne(r,"ENOENT")?(await Gl(e),new w(`Tracker is not initialized at ${e}. Tracker root does not exist. Run pm init first.`,E.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:fs(e)})):ne(r,"ENOTDIR")?Jt(e):ne(r,"EACCES")||ne(r,"EPERM")?En(e):r}if(!t.isDirectory())throw Jt(e);if(process.platform!=="win32"&&((t.mode&292)===0||(t.mode&73)===0))throw En(e);try{await(await kn.opendir(e)).close()}catch(r){throw ne(r,"EACCES")||ne(r,"EPERM")?En(e):r}}async function Hm(e){if(await Bl(e),!await jn(we(e)))throw new w(`Tracker is not initialized at ${e}. Run pm init first.`,E.NOT_FOUND,{code:"tracker_not_initialized",reason:"settings_missing",resolved_path:e,nextSteps:["Initialize the selected tracker root with the emitted retry."],recovery:fs(e)})}export{Kl as a,ys as b,Qn as c,se as d,K as e,Fo as f,ro as g,Me as h,ru as i,nu as j,er as k,tr as l,iu as m,rr as n,oo as o,Ts as p,su as q,ct as r,xs as s,lu as t,dt as u,wa as v,_t as w,xu as x,Cu as y,Oe as z,ce as A,hr as B,Du as C,Pu as D,vr as E,Eo as F,wr as G,Uu as H,Wu as I,qu as J,Gu as K,Bu as L,Ju as M,Cr as N,Nr as O,Co as P,o_ as Q,i_ as R,s_ as S,a_ as T,c_ as U,d_ as V,jr as W,jo as X,l_ as Y,u_ as Z,__ as _,Ic as $,f_ as aa,zo as ba,gt as ca,Ge as da,xe as ea,Ko as fa,ad as ga,_d as ha,ef as ia,tf as ja,bd as ka,Rt as la,_e as ma,Be as na,Of as oa,en as pa,vt as qa,Vo as ra,Tf as sa,Uo as ta,Af as ua,tn as va,rn as wa,Ac as xa,bt as ya,R_ as za,Lr as Aa,wt as Ba,D_ as Ca,P_ as Da,qo as Ea,Et as Fa,kt as Ga,Je as Ha,Hc as Ia,j_ as Ja,L_ as Ka,De as La,Lt as Ma,Uf as Na,Wf as Oa,qf as Pa,Ni as Qa,Gf as Ra,sn as Sa,Zf as Ta,ge as Ua,vm as Va,sl as Wa,Wi as Xa,Ut as Ya,Hl as Za,ds as _a,bm as $a,wm as ab,ql as bb,Am as cb,Bl as db,Hm as eb};
|
|
79
|
-
//# sourceMappingURL=chunk-
|
|
79
|
+
//# sourceMappingURL=chunk-M22TI7LP.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{F as Ke,G as Ue,J as je,U as ze,f as Me}from"./chunk-5MCGYBOQ.js";import{$a as $e,eb as Pe,s as $,t as D}from"./chunk-57HPXGOQ.js";import{j as Ee}from"./chunk-MW77Q3AQ.js";import{b as T,c as C}from"./chunk-AK2CI2GI.js";import{Be as Ne,Fa as Ie,Fd as Se,Gd as Le,Hc as ne,Kd as Oe,Nc as X,R,T as H,W as _e,_c as M,ka as ke,kd as xe,pd as Re,qa as be,sa as ve,sc as W,tc as Ce,ud as Te,wa as we,we as Ae,xe as Be,yd as De}from"./chunk-GP2WU43K.js";import{A as v,z as I}from"./chunk-JLXGRDTG.js";(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]="a319e7d9-e248-573b-bf1f-35217ce49fd0")}catch{}})();function re(e,t){return(t===void 0?void 0:ve(e,t))?.execution_role??ke[e.trim().toLowerCase()]??"agent"}var ie="blocked_by",Fe="blocks",ft=Object.freeze([ie,Fe]),oe="no-active-blocker";function _(e){return e.trim().toLowerCase()}function q(e,t){return t?`external:${e}`:`local:${_(e)}`}function P(e){let t=new Map,o=typeof e.blocked_by=="string"?e.blocked_by.trim():"";if(o.length>0&&_(o)!==oe){let n=T(o);t.set(q(o,n),n?o:_(o))}for(let n of e.dependencies??[]){let r=typeof n.id=="string"?n.id.trim():"";if(H(n.kind)===ie&&r.length>0&&_(r)!==oe){let i=T(r)||C(n.source_kind);t.set(q(r,i),i?r:_(r))}}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function Y(e){let t=new Map;for(let o of e){let n=_(o.id);n.length!==0&&t.set(n,new Set(P(o)))}for(let o of e){let n=_(o.id);if(n.length!==0)for(let r of o.dependencies??[]){let i=H(r.kind)===Fe&&typeof r.id=="string"?_(r.id):"";if(i.length===0||i===oe)continue;let s=t.get(i)??new Set;s.add(n),t.set(i,s)}}return new Map([...t].map(([o,n])=>[o,[...n].sort((r,i)=>r.localeCompare(i))]))}function Ge(e,t){let o=_(e.id);return o.length>0?Y(t).get(o)??P(e):P(e)}function se(e,t,o,n){let r=e,i=typeof r.id=="string"?n?.get(_(r.id))??Ge(r,[...t.values()]):P(e),s=new Set((e.dependencies??[]).filter(d=>H(d.kind)===ie&&C(d.source_kind)&&typeof d.id=="string"&&d.id.trim().length>0).map(d=>q(d.id.trim(),!0)));return i.map(d=>{if(T(d)||s.has(q(d,!0)))return{id:d,title:null,status:null,resolved:!1,external:!0,...typeof e.updated_at=="string"?{blocked_since:e.updated_at}:{},resolver:null};let c=t.get(_(d));return c?{id:d,title:c.title,status:c.status,resolved:D(c.status,o)}:{id:d,title:null,status:null,resolved:!1}})}function mt(e,t,o){return se(e,t,o)}function gt(e,t){let o=new Map(e.map(s=>[_(s.id),s])),n=Y(e),r=new Set([...He(t),...t.blocked_statuses]),i=new Set;for(let s of e){let d=$(s.status,t);r.has(d)&&(t.blocked_statuses.has(d)||se(s,o,t,n).some(c=>!c.resolved))&&i.add(_(s.id))}return i}function ht(e,t,o={},n){let r=[...e.ready,...e.decisions,...e.gates];o.includeContainers===!0&&r.push(...e.containers.filter(s=>s.open_blockers.length===0&&!t.blocked_statuses.has($(s.item.status,t))));let i={ready:[],decisions:[],gates:[]};for(let s of r){let d=re(s.item.type,n);d==="human"&&o.includeDecisions!==!0?i.decisions.push(s):d==="gate"&&o.includeGates!==!0?i.gates.push(s):i.ready.push(s)}return i}function He(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function yt(e,t,o){let n=[_(e)],r=new Set;for(;n.length>0;){let i=n.pop();if(!r.has(i)){r.add(i);for(let s of t.get(i)??[]){if(!D(s.status,o))return!0;n.push(_(s.id))}}}return!1}function _t(e){let t=new Map,o=new Map,n=new Map,r=Y(e);for(let i of e){t.set(_(i.id),i);let s=typeof i.parent=="string"?i.parent.trim():"";if(s.length>0){let d=_(s),c=o.get(d)??[];c.push(i),o.set(d,c)}for(let d of r.get(_(i.id))){let c=_(d),l=n.get(c)??[];l.push(i.id),n.set(c,l)}}return{itemsById:t,childrenByParent:o,blockedByReverse:n,blockerIdsByItem:r}}function kt(e,t,o,n){let{itemsById:r,childrenByParent:i,blockedByReverse:s,blockerIdsByItem:d}=_t(t),c=new Set([...He(o),...o.blocked_statuses]),l=new Set(t.filter(m=>!D(m.status,o)).map(m=>_(m.id))),u=[],a=[],p=[],g=[],f=[],y=0;for(let m of e){if(!c.has($(m.status,o)))continue;y+=1;let h=se(m,r,o,d).filter(w=>!w.resolved),b=(s.get(_(m.id))??[]).filter(w=>l.has(_(w))).sort((w,L)=>w.localeCompare(L)),k={item:m,open_blockers:h,unblocks:b};if(yt(m.id,i,o)){p.push(k);continue}let E=o.blocked_statuses.has($(m.status,o));if(h.length===0&&!E){let w=re(m.type,n);w==="human"?g.push(k):w==="gate"?f.push(k):u.push(k)}else a.push(k)}return{ready:u,blocked:a,containers:p,decisions:g,gates:f,active_count:y,container_count:p.length}}(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]="ae1c56b3-148d-502d-9450-e807fdfab4da")}catch{}})();(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]="283dfa35-9a8e-524c-b6e2-d433d51215ca")}catch{}})();function x(){let e=R();for(let t of W()?.relationship_kinds??[])for(let o of t.definitions)e.register(o);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]="8b57e560-4ac4-53b6-9fb1-eebb1f30562a")}catch{}})();function K(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return t.length>0?t:void 0}function V(e){return[e.parent_id,e.child_id,e.source,e.kind,e.holder_id,e.target_id??""].join("\0")}function bt(e,t){let o=new Set,n=[];for(let r of[...e].sort()){if(o.has(r))continue;o.add(r);let i=[{nodeId:r,children:[...t.get(r)??[]].sort(),nextChild:0}];for(;i.length>0;){let s=i.at(-1),d=s.children[s.nextChild];d===void 0?(n.push(s.nodeId),i.pop()):(s.nextChild+=1,o.has(d)||(o.add(d),i.push({nodeId:d,children:[...t.get(d)??[]].sort(),nextChild:0})))}}return n}function vt(e,t){let o=[...e].sort(),n=bt(o,t),r=new Set,i=wt(o,t),s=[];for(let d of n.reverse()){if(r.has(d))continue;let c=It(d,i,r);(c.length>1||t.get(c[0])?.has(c[0]))&&s.push(c)}return s.sort((d,c)=>d.join("\0").localeCompare(c.join("\0")))}function wt(e,t){let o=new Map(e.map(n=>[n,new Set]));for(let[n,r]of t)for(let i of r)o.get(i)?.add(n);return o}function It(e,t,o){let n=[],r=[e];for(o.add(e);r.length>0;){let i=r.pop();n.push(i);for(let s of[...t.get(i)].sort())o.has(s)||(o.add(s),r.push(s))}return n.sort()}function We(e){let t=new Map;for(let o of e){let n=K(o?.id);n&&!t.has(n)&&t.set(n,o)}return t}function Et(e,t,o){let n=K(t.parent);if(!(!n||!o.has(n)))return{parent_id:n,child_id:e,source:"scalar_parent",kind:"parent",holder_id:e,child_cardinality:"one"}}function Ct(e,t,o,n){let r=K(t?.id),i=n.resolve(t?.kind);if(!r||!o.has(r)||!i?.hierarchy)return;let s=i.hierarchyDirection==="source_parent";return{parent_id:s?e:r,child_id:s?r:e,source:"dependency",kind:i.kind,holder_id:e,target_id:r,child_cardinality:s?i.incoming:i.outgoing}}function Xe(e,t){let o=new Map;for(let[n,r]of e){let i=Et(n,r,e);i&&o.set(V(i),i);for(let s of r.dependencies??[]){let d=Ct(n,s,e,t);d&&o.set(V(d),d)}}return[...o.values()].sort((n,r)=>V(n).localeCompare(V(r)))}function Kn(e,t=x()){return Xe(We(e),t)}function xt(e,t,o){let n=new Set(e.filter(r=>r.child_cardinality==="one").map(r=>r.child_id));return[...t].filter(([r,i])=>i.length>1&&n.has(r)).map(([r,i])=>({child_id:r,parent_ids:[...i],legacy_terminal:o.has(r)&&i.every(s=>o.has(s))})).sort((r,i)=>r.child_id.localeCompare(i.child_id))}function Rt(e,t,o){let n=new Map;for(let i of t){if(i.source!=="dependency")continue;let s=n.get(i.child_id)??new Set;s.add(i.parent_id),n.set(i.child_id,s)}let r=[];for(let[i,s]of e){let d=K(s.parent);if(!d||!e.has(d))continue;let c=[...n.get(i)??[]].filter(l=>l!==d).sort();c.length!==0&&r.push({child_id:i,scalar_parent_id:d,dependency_parent_ids:c,legacy_terminal:o.has(i)&&o.has(d)&&c.every(l=>o.has(l))})}return r.sort((i,s)=>i.child_id.localeCompare(s.child_id))}function J(e,t=n=>n==="closed"||n==="canceled",o=x()){let n=We(e),r=Xe(n,o),i=Tt(r),s=new Set([...n].filter(([,c])=>t(c.status)).map(([c])=>c)),d=vt([...n.keys()],new Map([...i.children_by_parent].map(([c,l])=>[c,new Set(l)]))).map(c=>({item_ids:c,legacy_terminal:c.every(l=>s.has(l))}));return{relations:r,cycles:d,cardinality_violations:xt(r,i.parents_by_child,s),divergences:Rt(n,r,s)}}function Un(e){return e.source==="scalar_parent"?`${e.parent_id} -> ${e.child_id} (scalar parent on ${e.holder_id})`:`${e.parent_id} -> ${e.child_id} (${e.kind} dependency on ${e.holder_id})`}function Tt(e){let t=new Map,o=new Map;for(let n of e){let r=t.get(n.child_id)??new Set;r.add(n.parent_id),t.set(n.child_id,r);let i=o.get(n.parent_id)??new Set;i.add(n.child_id),o.set(n.parent_id,i)}return{parents_by_child:new Map([...t].map(([n,r])=>[n,[...r].sort()])),children_by_parent:new Map([...o].map(([n,r])=>[n,[...r].sort()]))}}function de(e,t){let o=new Set(t);return e.every(n=>o.has(n))}function jn(e,t,o,n,r){let i=K(o);if(!i)return;let s=J(e,n,r),d=J(t,n,r),c=d.divergences.find(a=>!s.divergences.some(p=>p.child_id===a.child_id&&p.scalar_parent_id===a.scalar_parent_id&&de(a.dependency_parent_ids,p.dependency_parent_ids)));if(c){let a=[c.scalar_parent_id,...c.dependency_parent_ids].sort();throw new v(`Hierarchy mutation would assign ${c.child_id} to multiple parents: ${a.join(", ")}.`,I.CONFLICT,{code:"hierarchy_parent_divergence_created",source_id:i,target_id:c.child_id,verification_errors:a})}let l=d.cardinality_violations.find(a=>(a.child_id===i||a.parent_ids.includes(i))&&!s.cardinality_violations.some(p=>p.child_id===a.child_id&&de(a.parent_ids,p.parent_ids)));if(l)throw new v(`Hierarchy mutation would assign ${l.child_id} to multiple parents: ${l.parent_ids.join(", ")}.`,I.CONFLICT,{code:"hierarchy_cardinality_created",source_id:i,target_id:l.child_id,verification_errors:l.parent_ids});let u=d.cycles.find(a=>a.item_ids.includes(i)&&!s.cycles.some(p=>de(a.item_ids,p.item_ids)));if(u)throw new v(`Hierarchy mutation would create a cycle: ${u.item_ids.join(" -> ")}.`,I.CONFLICT,{code:"hierarchy_cycle_created",source_id:i,verification_errors:u.item_ids})}(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]="6c580b70-76eb-51db-8587-99b73dd20875")}catch{}})();var Dt="global";function Wn(e){let t=e?.trim();if(t)return C(t)?Dt:t}function Xn(e,t,o){return St(e,t,o)}function St(e,t,o){let n=e.trim();return C(o)||T(n)?n:Me(n,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]="41f814be-ee87-5cae-b674-69c2e7f42655")}catch{}})();function B(e){if(typeof e!="string")return;let t=e.trim();if(!(!t||["none","null","n/a","na"].includes(t.toLowerCase())))return t}function U(e){let t=B(e);return t?.toLowerCase()==="no-active-blocker"?void 0:t}function j(e,t,o=!0){let n=B(e);return o&&(C(t)||n!==void 0&&T(n))}function ce(e,t){return j(e,t)?`external\0${e}`:`local\0${e.toLowerCase()}`}function qe(e,t,o,n){return j(e,t)?n.get(e):o.get(e.toLowerCase())}function A(e,t){let o=e.toLowerCase(),n=t.toLowerCase();return o!==n?o<n?-1:1:e!==t?e<t?-1:1:0}function Lt(e){let t=new Map;for(let o of e.dependencies??[]){if(typeof o!="object"||o===null)continue;let n=o,r=B(n.id);if(!r)continue;let i=typeof n.kind=="string"?n.kind:"related",s=`${i}\0${ce(r,n.source_kind)}`,d=t.get(s);d?d.count+=1:t.set(s,{target_id:r,kind:i,count:1})}return t}function Ot(e,t=o=>o==="closed"||o==="canceled"){let o=[];for(let n of e)if(!(typeof n?.id!="string"||n.id.trim().length===0))for(let r of Lt(n).values())r.count<2||o.push({holder_id:n.id.trim(),target_id:r.target_id,kind:r.kind,occurrences:r.count,holder_status:n.status,legacy_terminal:t(n.status)});return o.sort((n,r)=>{let i=A(n.holder_id,r.holder_id);if(i!==0)return i;let s=A(n.target_id,r.target_id);return s!==0?s:A(n.kind,r.kind)})}function At(e,t,o,n,r){if(typeof o!="object"||o===null)return;let i=B(o.id);if(!i||ce(i,o.source_kind)!==ce(t))return;let s=r.resolve(typeof o.kind=="string"?o.kind:"related");if(!(s?.ordering!==!0||(s.precedence??"source_before_target")!=="source_before_target"))return{holder_id:e.id.trim(),target_id:i,dependency_kind:s.kind,holder_status:e.status,legacy_terminal:n(e.status)}}function Bt(e,t=n=>n==="closed"||n==="canceled",o=x()){let n=new Map;for(let r of e){if(typeof r?.id!="string"||r.id.trim().length===0)continue;let i=B(r.blocked_by);if(i)for(let s of r.dependencies??[]){let d=At(r,i,s,t,o);d&&n.set(`${d.holder_id.toLowerCase()}\0${d.target_id.toLowerCase()}\0${d.dependency_kind}`,d)}}return[...n.values()].sort((r,i)=>{let s=A(r.holder_id,i.holder_id);if(s!==0)return s;let d=A(r.target_id,i.target_id);return d!==0?d:A(r.dependency_kind,i.dependency_kind)})}function ae(e,t=o=>o==="closed"||o==="canceled"){let o=e.filter(c=>typeof c?.id=="string"&&c.id.trim().length>0),n=new Set(o.map(c=>c.id.trim().toLowerCase())),r=new Map,i=(c,l,u,a,p)=>{let g=B(l);if(!g||n.has(g.toLowerCase())||j(g,void 0,p))return;let f={holder_id:c.id.trim(),target_id:g,kind:u,source:a,holder_status:c.status,legacy_terminal:t(c.status),no_active_blocker_sentinel:g.toLowerCase()==="no-active-blocker"};r.set(`${f.holder_id}::${f.target_id}::${f.kind}::${f.source}`,f)};for(let c of o){i(c,c.parent,"parent","parent",!1),i(c,c.blocked_by,"blocked_by","blocked_by",!0);for(let l of c.dependencies??[]){if(typeof l!="object"||l===null)continue;let u=l;C(u.source_kind)||i(c,u.id,typeof u.kind=="string"?u.kind:"related","dependency",!0)}}let s=[...r.values()].sort((c,l)=>c.holder_id.localeCompare(l.holder_id)||c.target_id.localeCompare(l.target_id)||c.kind.localeCompare(l.kind)||c.source.localeCompare(l.source)),d=s.filter(c=>c.legacy_terminal);return{active:s.filter(c=>!c.legacy_terminal),legacy_terminal:d,no_active_blocker_sentinels:s.filter(c=>c.no_active_blocker_sentinel)}}function Nt(e){let t=new Map;for(let o of[...e.active,...e.legacy_terminal]){if(o.no_active_blocker_sentinel)continue;let n=o.target_id.trim(),r=n.toLowerCase();t.has(r)||t.set(r,n)}return[...t.values()].sort((o,n)=>o.localeCompare(n))}function Mt(e){let t=new Map;for(let o of e){let n=U(o.blocked_by);n&&j(n)&&!t.has(n)&&t.set(n,n);for(let r of o.dependencies??[]){if(typeof r!="object"||r===null||!j(r.id,r.source_kind))continue;let i=U(r.id);i&&!t.has(i)&&t.set(i,i)}}return[...t.values()].sort((o,n)=>o.localeCompare(n))}var Ye=new WeakMap;function eo(e){return e.hierarchyIntegrity??Ye.get(e)}function $t(e,t=x()){let o={};for(let n of e)for(let r of n.dependencies??[]){if(typeof r!="object"||r===null)continue;let i=r.kind;if(typeof i!="string")continue;let s=i.trim().toLowerCase().replaceAll("-","_"),d=t.resolve(i);d&&s!==d.kind&&(o[s]=(o[s]??0)+1)}return Object.fromEntries(Object.entries(o).sort(([n],[r])=>n.localeCompare(r)))}function le(e,t,o){let n=o??x(),r=e.filter(f=>typeof f?.id=="string"&&f.id.trim().length>0),i=new Map(r.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),s=ae(r,t),d=Nt(s);for(let f of d)i.set(f.toLowerCase(),f);let c=Mt(r),l=new Set(i.keys()),u=new Map;for(let f of c){let y=f;for(;l.has(y.toLowerCase());)y=`external:${y}`;u.set(f,y),l.add(y.toLowerCase())}let a=r.map(f=>{let y=U(f.parent),m=U(f.blocked_by),h=(f.dependencies??[]).flatMap(b=>{if(typeof b!="object"||b===null)return[];let k=b,E=U(k.id);return E?[{id:qe(E,k.source_kind,i,u),kind:typeof k.kind=="string"?k.kind:"related"}]:[]});return{id:f.id.trim(),...y?{parent:i.get(y.toLowerCase())}:{},...m?{blocked_by:qe(m,void 0,i,u)}:{},dependencies:h}}),p=J(r,t,n),g={graph:_e.fromItems([...a,...d.map(f=>({id:f})),...c.map(f=>({id:u.get(f)}))],n),details:[...r.map(f=>({id:f.id.trim(),title:f.title,status:f.status,...typeof f.type=="string"&&f.type.trim().length>0?{type:f.type.trim()}:{}})),...d.map(f=>({id:f,title:`[missing] ${f}`,status:"missing"})),...c.map(f=>({id:u.get(f),title:`[external] ${f}`,status:"external"}))],missingIdSet:new Set(d.map(f=>f.toLowerCase())),dangling:s,duplicateRows:Ot(r,t),orderingContradictions:Bt(r,t,n),legacyAliasCounts:$t(r,n),hierarchyIntegrity:p};return Ye.set(g,p),g}import{createHash as Pt}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]="e31ef0fb-e803-500b-b1e5-db9edfc880c4")}catch{}})();var Kt=64,Ut=8;function jt(e,t){let o=(e.dependencies??[]).map(n=>{if(typeof n!="object"||n===null)return"";let r=n;return`${typeof r.kind=="string"?r.kind:"related"}:${typeof r.id=="string"?r.id:""}`}).sort().join(",");return[e.id,e.title,e.status,t(e.status)?"1":"0",typeof e.type=="string"?e.type.trim():"",e.parent??"",e.blocked_by??"",o].join("\0")}function Je(e,t=n=>n==="closed"||n==="canceled",o=R()){let n=e.filter(i=>typeof i?.id=="string"&&i.id.trim().length>0).map(i=>jt(i,t)).sort(),r=o.list().map(i=>Ie(i)).sort();return Pt("sha256").update(n.join("")).update("").update(r.join("")).digest("hex")}function Ve(e,t,o){let n=t??o;if(!Number.isInteger(n)||n<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`);return n}var ue=class{#e=new Map;#t;#n;constructor(t={}){this.#t=Ve("maxResultsPerWorkspace",t.maxResultsPerWorkspace,Kt),this.#n=Ve("maxWorkspaces",t.maxWorkspaces,Ut)}lookup(t,o,n){let r=this.#e.get(t),i=!0;(r===void 0||r.fingerprint!==o)&&(r={fingerprint:o,assembly:n(),results:new Map},i=!1,!this.#e.has(t)&&this.#e.size>=this.#n&&this.#e.delete(this.#e.keys().next().value)),this.#e.delete(t),this.#e.set(t,r);let s=r,d=this.#t;return{assembly:s.assembly,assemblyReused:i,fingerprint:o,memoize(c,l){let u=s.results.get(c);if(u!==void 0||s.results.has(c))return s.results.delete(c),s.results.set(c,u),{value:structuredClone(u),reused:!0};let a=l();return s.results.size>=d&&s.results.delete(s.results.keys().next().value),s.results.set(c,structuredClone(a)),{value:a,reused:!1}}}}clear(){this.#e.clear()}},Qe=new ue;function Ze(){return Qe}function io(){Qe.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]="3b494263-6359-57e9-8f34-b0bdcdeda93f")}catch{}})();var F=1200,zt=["prerequisite","dependent","ancestor","descendant","provenance","related"],Ft=new TextEncoder;function pe(e,t,o){let n=e??t;if(!Number.isInteger(n)||n<1)throw new TypeError(`Relationship context ${o} must be positive`);return n}function z(e){return Math.max(1,Math.ceil(Ft.encode(JSON.stringify(e)).byteLength/4))}function Q(e,t,o){let n=o.resolve(e.kind);if(n?.ordering){let r=(n.precedence??"source_before_target")==="source_before_target"?e.source:e.target;return t===r?"prerequisite":"dependent"}if(n?.hierarchy){let r=n.hierarchyDirection==="source_parent"?e.source:e.target;return t===r?"ancestor":"descendant"}return e.kind==="discovered_from"||e.kind==="incident_from"?"provenance":"related"}function Gt(e,t,o,n){let r=e.filter(i=>i.source===t&&i.target===o||i.target===t&&i.source===o).map(i=>Q(i,o,n));return[...new Set(r)].sort()}function Ht(e){return zt.find(t=>e.includes(t))}function Wt(e,t,o,n){let r=n.direction??"both",i=n.maxDepth??3;if(!Number.isInteger(i)||i<0)throw new TypeError("Relationship context maxDepth must be non-negative");let s=new Set([t]),d=[{id:t,distance:0}],c=[],l=0,u=!1;for(let a=0;a<d.length;a+=1){n.signal?.throwIfAborted();let p=d[a];if(p.distance>=i&&u)continue;let g=e.neighborEdges(p.id,{direction:r,kinds:n.kinds,signal:n.signal});if(l+=g.meta.inspectedEdges,p.distance>=i){g.value.some(f=>!s.has(f.id))&&(u=!0);continue}for(let{id:f,edge:y}of g.value){if(s.has(f))continue;s.add(f);let m={id:f,distance:p.distance+1,via:p.id,role:Q(y,f,o)};c.push(m),d.push(m)}}return{rows:c,visitedNodes:d.length,inspectedEdges:l,depthTruncated:u}}function Xt(e,t,o,n){let r={prerequisite:0,dependent:0,ancestor:0,descendant:0,provenance:0,related:0},i=e.neighborEdges(t,{direction:n.direction??"both",kinds:n.kinds,signal:n.signal}).value;for(let{id:s,edge:d}of i)r[Q(d,s,o)]+=1;return{directEdges:r,directTotal:i.length,rootEdges:i.map(({edge:s})=>s)}}function qt(e,t,o,n){let r=new Set;for(let i of t){let s=i.source===o?i.target:i.source,d=Q(i,s,n);(d==="prerequisite"||d==="ancestor")&&r.add(s)}return[...e].sort((i,s)=>Number(r.has(s.id))-Number(r.has(i.id))||i.distance-s.distance||i.id.localeCompare(s.id))}function Yt(e,t){let o=e.distance===1?Gt(t.rootEdges,t.rootId,e.id,t.registry):[];return{...t.details.get(e.id)??{id:e.id},distance:e.distance,role:o.length>0?Ht(o):e.role,via:e.via,reasons:o.length>0?o:[`${e.role} via ${e.via} (depth ${e.distance})`]}}function Vt(e){let t=[],o=e.initialTokens,n=0;for(let r of e.candidates){if(t.length>=e.nodeLimit)break;let i=Yt(r,e),s=z(i);if(o+s>e.tokenBudget)break;let d=e.rootEdges.filter(c=>c.source===r.id||c.target===r.id).reduce((c,l)=>c+z(l),0);if(o+n+s+d>e.tokenBudget){if(t.length>0)break}else n+=d;t.push(i),o+=s}if(e.candidates.length>0&&t.length===0)throw new TypeError("Relationship context tokenBudget cannot fit one node");return{nodes:t,usedTokens:o}}function Jt(e){let t=e.options.kinds?new Set(e.options.kinds.map(i=>e.registry.require(i).kind)):void 0,o=e.graph.edges().filter(i=>{if(!e.included.has(i.source)||!e.included.has(i.target))return!1;if(t===void 0||t.has(i.kind))return!0;let s=e.registry.resolve(i.kind)?.inverse;return s!==void 0&&t.has(s)}).sort((i,s)=>+(s.source===e.rootId||s.target===e.rootId)-+(i.source===e.rootId||i.target===e.rootId)),n=[],r=e.initialTokens;for(let i of o){if(n.length>=e.edgeLimit)break;let s=z(i);r+s>e.tokenBudget||(n.push(i),r+=s)}return{edges:n,usedTokens:r,candidateCount:o.length}}function et(e,t,o,n={}){if(!e.nodes().includes(t))throw new TypeError(`Relationship node not found: ${t}`);let r=pe(n.nodeLimit,20,"nodeLimit"),i=pe(n.edgeLimit,40,"edgeLimit"),s=pe(n.tokenBudget,F,"tokenBudget"),d=n.registry??R(),c=new Map(o.map(O=>[O.id,O])),l=c.get(t)??{id:t},{evidence:u=[],...a}=l,p=[...u],g=Wt(e,t,d,n),{rootEdges:f,...y}=Xt(e,t,d,n),m=qt(g.rows,f,t,d),h=Se("relationship-context",{rootId:t,direction:n.direction??"both",kinds:[...n.kinds??[]].sort(),maxDepth:n.maxDepth??3,ordering:"required-root-evidence-first-v1"}),b=Oe(m,n.cursor,h,({id:O})=>O,"--cursor"),k=m.slice(b),E=z(a)+z(p);if(E>s)throw new TypeError("Relationship context tokenBudget cannot fit root and evidence");let w=Vt({candidates:k,details:c,rootEdges:f,rootId:t,registry:d,nodeLimit:r,tokenBudget:s,initialTokens:E}),{nodes:L}=w,lt=new Set([t,...L.map(({id:O})=>O)]),ge=Jt({graph:e,rootId:t,included:lt,options:n,registry:d,edgeLimit:i,tokenBudget:s,initialTokens:w.usedTokens}),{edges:Z,usedTokens:ut}=ge,G=b+L.length,ee=G<m.length,he=L.at(-1),te=ge.candidateCount-Z.length,ye=g.depthTruncated||ee||te>0,pt={rootId:t,...a.status===void 0?{}:{rootStatus:a.status},...y,discoveredNodes:m.length,returnedNodes:L.length,returnedEdges:Z.length,omittedNodes:m.length-G,omittedEdges:te,evidenceCount:p.length,hasMore:ee};return{root:a,summary:pt,nodes:L,edges:Z,evidence:p,meta:{exact:!0,truncated:ye,completeness:ye?"truncated":"complete",nodeLimit:r,edgeLimit:i,tokenBudget:s,usedTokens:ut,visitedNodes:g.visitedNodes,inspectedEdges:g.inspectedEdges,omittedNodes:m.length-G,omittedEdges:te,...ee&&he?{nextCursor:Le(h,he.id,G-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]="196b7f2d-b09b-5432-b4ef-9cdf82e92731")}catch{}})();var Qt=["tree","graph","context"],Zt=["none","repeated"],en=["outgoing","incoming","both"],tn=32,nn=200,on=400,rn=16e3;function sn(e){let t=e?.trim().toLowerCase()??"tree";if(Qt.includes(t))return t;throw new v(`Invalid --format value "${e}". Use "tree", "graph", or "context".`,I.USAGE)}function N(e,t){if(e===void 0)return;let o=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(o)||o<1)throw new v(`Invalid --${t} value "${e}". Use a positive integer.`,I.USAGE);return o}function nt(e){if(e===void 0)return;let t=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(t)||t<0)throw new v(`Invalid --max-depth value "${e}". Use a non-negative integer.`,I.USAGE);return t}function dn(e){let t=e?.trim().toLowerCase()??"none";if(Zt.includes(t))return t;throw new v(`Invalid --collapse value "${e}". Use "none" or "repeated".`,I.USAGE)}function cn(e){let t=e?.trim().toLowerCase()??"both";if(en.includes(t))return t;throw new v(`Invalid --direction value "${e}". Use "outgoing", "incoming", or "both".`,I.USAGE)}function an(e,t=R()){if(e===void 0)return;let o=(Array.isArray(e)?e:[e]).flatMap(r=>r.split(",")).map(r=>r.trim()).filter(r=>r.length>0);if(o.length===0)return;let n=new Set;for(let r of o){let i=t.resolve(r);if(!i){let s=t.list().map(d=>d.kind).join(", ");throw new v(`Invalid --kind value "${r}". Registered kinds: ${s}.`,I.USAGE)}n.add(i.kind)}return[...n].sort()}function ln(e){if(!e||e.length===0)return[];let t=e.map(({id:n,kind:r})=>({id:n.trim(),kind:r.trim().toLowerCase()})).sort((n,r)=>{let i=n.kind.localeCompare(r.kind);return i!==0?i:n.id.localeCompare(r.id)}),o=new Map;for(let n of t){let r=`${n.kind.toLowerCase()}::${n.id.toLowerCase()}`;o.has(r)||o.set(r,{id:n.id,kind:n.kind})}return[...o.values()]}function un(e){return{id:e.id,title:e.title,type:e.type,status:e.status,dependencies:ln(e.dependencies)}}function pn(e){return M(new TextEncoder().encode(JSON.stringify({...e,dependencies:void 0})).byteLength)}function fn(e,t,o,n,r,i,s,d,c){for(let l of t.dependencies){let u=Math.max(1,Math.ceil(JSON.stringify({from:e.id,to:l.id,kind:l.kind}).length/3));if(d.nodes>=d.nodeLimit){e.truncated=!0,d.reasons.add("node_limit");break}if(d.edges>=d.edgeLimit){e.truncated=!0,d.reasons.add("edge_limit");break}if(d.estimatedTokens+u>=d.tokenBudget){e.truncated=!0,d.reasons.add("token_budget");break}d.edges+=1,d.estimatedTokens+=u,e.dependencies.push(ot(l.id,o,n,r,i,s,d,c+1,l.kind))}}function mn(e,t,o,n,r,i,s,d){return s.estimatedTokens>=s.tokenBudget&&t?.dependencies.length?(e.truncated=!0,s.reasons.add("token_budget"),!0):!t||e.cycle?!0:n!==void 0&&d>=n?(t.dependencies.length>0&&(e.truncated=!0,s.reasons.add("max_depth")),!0):r==="repeated"&&i.has(o)?(e.collapsed=!0,!0):!1}function ot(e,t,o,n,r,i,s,d=0,c){let l=e.trim().toLowerCase(),u=t.get(l),a={id:u?.id??e,title:u?.title,type:u?.type,status:u?.status,via:c,missing:!u,cycle:o.has(l),dependencies:[]};if(s.nodes+=1,s.estimatedTokens+=pn(a),mn(a,u,l,n,r,i,s,d))return a;r==="repeated"&&i.add(l);let p=new Set(o);return p.add(l),fn(a,u,t,p,n,r,i,s,d),a}function tt(e,t){return!e||e.missing&&!t.missing?t:{...e,title:e.title??t.title,type:e.type??t.type,status:e.status??t.status}}function gn(e){let t=new Map,o=new Map,n=[e];for(;n.length>0;){let d=n.pop();t.set(d.id,tt(t.get(d.id),{id:d.id,title:d.title,type:d.type,status:d.status,missing:d.missing}));for(let c of d.dependencies){t.set(c.id,tt(t.get(c.id),{id:c.id,title:c.title,type:c.type,status:c.status,missing:c.missing}));let l=c.via??"related",u=`${d.id}::${c.id}::${l}`;o.has(u)||o.set(u,{from:d.id,to:c.id,kind:l}),c.cycle||n.push(c)}}let r=[...t.values()].sort((d,c)=>d.id.localeCompare(c.id)),i=[...o.values()].sort((d,c)=>{let l=d.from.localeCompare(c.from);if(l!==0)return l;let u=d.to.localeCompare(c.to);return u!==0?u:d.kind.localeCompare(c.kind)}),s=r.filter(d=>d.missing).map(d=>d.id);return{root_id:e.id,nodes:r,edges:i,missing_ids:s}}function rt(e,t,o){let n=new Set,r=new Set,i=new Set,s=new Set,d=[{id:e,depth:0}],c=0;for(;c<d.length;){let l=d[c++],u=l.id.trim().toLowerCase();n.add(u);let a=t.get(u);if(!a){i.add(u);continue}if(!(o!==void 0&&l.depth>=o)&&!s.has(u)){s.add(u);for(let p of a.dependencies)r.add(`${u}::${p.id.trim().toLowerCase()}::${p.kind}`),d.push({id:p.id,depth:l.depth+1})}}return{node_count:n.size,edge_count:r.size,edge_basis:"deduplicated_directed",missing_count:i.size}}function hn(e,t=R()){let o=nt(e.maxDepth),n=N(e.nodeLimit,"node-limit"),r=N(e.edgeLimit,"edge-limit"),i=N(e.tokenBudget,"token-budget"),s=an(e.kind,t);return{direction:cn(e.direction),...s===void 0?{}:{kinds:s},...o===void 0?{}:{maxDepth:o},...n===void 0?{}:{nodeLimit:n},...r===void 0?{}:{edgeLimit:r},...i===void 0?{}:{tokenBudget:i},...e.cursor?.trim()?{cursor:e.cursor.trim()}:{}}}function yn(e,t,o,n){return et(e.graph,t,e.details.map(r=>r.id===t&&n.length>0?{...r,evidence:n}:r),o)}function fe(e,t,o,n){for(let r of o.slice(0,n)){let i=r?.trim();i&&e.push(`${t}:${i}`)}}async function _n(e,t,o,n){let r=await Ke(e,t,o.id_prefix,o.item_format,n);if(!r)return[];let{document:i}=await Ue(r,{schema:o.schema}),s=i.metadata,d=s.files??[],c=s.tests??[],l=s.docs??[],u=[["files",d.length],["tests",c.length],["docs",l.length],["comments",(s.comments??[]).length],["notes",(s.notes??[]).length],["learnings",(s.learnings??[]).length]];if(u.every(([,p])=>p===0))return[];let a=[`linked:${u.map(([p,g])=>`${p}=${g}`).join(",")}`];return fe(a,"file",d.map(p=>p.path),3),fe(a,"test",c.map(p=>p.command??p.path),2),fe(a,"doc",l.map(p=>p.path),2),a}function kn(e){let{canonicalId:t,context:o,missingCount:n,missingReferences:r,referenceLimit:i,summaryOnly:s}=e;return{id:t,format:"context",node_count:o.nodes.length+1,edge_count:o.edges.length,edge_basis:"deduplicated_directed",missing_count:n,missing_scope:"traversal",missing_reference_count:r.length,...s?{}:{missing_references:r.slice(0,i),context:o}}}function bn(e){let{row:t,missingReachableSet:o,packetIds:n,filteredKinds:r,registry:i}=e;if(t.no_active_blocker_sentinel||!o.has(t.target_id.trim().toLowerCase())||!n.has(t.holder_id))return!1;if(r===void 0)return!0;let s=i.resolve(t.kind);return s!==void 0&&(r.has(s.kind)||s.inverse!==void 0&&r.has(s.inverse))}function it(e,t){let o=Ce(),n=t.commandOptionsOverride??(o?.command==="deps"?o.options:t.commandOptions);return Ae("deps",{...n,...t.global,resolvedOutputFormat:t.format},e)}function me(e,t){let o=it(e,t),n=r=>Ne(r,t.format,t.global.lean===!0);return n(t.global.tokenAccounting===!0?Be(o,n):o)}function st(e,t,o){let n;for(;;){let r=M(new TextEncoder().encode(me(e,t)).byteLength);if(r===n)return r;o(r),n=r}}function dt(e){return e instanceof TypeError&&e.message.startsWith("Relationship context tokenBudget cannot fit ")}function ct(e){let{assembly:t,canonicalId:o,contextOptions:n,rootEvidence:r,summaryOnly:i,rendering:s,missingCount:d,missingReferences:c}=e,l=n.edgeLimit??40,u=Math.min(l,c.length),a=n.tokenBudget,p;for(;;){let g=yn(t,o,{...n,...a===void 0?{}:{tokenBudget:a}},r);p??=g.meta.tokenBudget,a??=p;let f=kn({canonicalId:o,context:g,missingCount:d,missingReferences:c,referenceLimit:u,summaryOnly:i});if(i){if(M(new TextEncoder().encode(me(S(f,!0,s.legacyAliasCounts),s)).byteLength)>p)throw new TypeError("Relationship context tokenBudget cannot fit the rendered summary");return f}if(g.meta.tokenBudget=p,g.meta.usedTokens=st(S(f,!1,s.legacyAliasCounts),s,h=>{g.meta.usedTokens=h}),g.meta.usedTokens<=p)return f;if(u>0){u-=1;continue}let y=a,m=y*p/g.meta.usedTokens;a=Math.min(y-1,Math.max(1,Math.floor(m*.9)))}}function at(e,t){let o=e.contextOptions,n={...e.rendering.global,outputFormat:e.rendering.format},r=["--pm-path",e.pmRoot,"item","deps",e.canonicalId,"--format","context","--output-format",e.rendering.format,"--token-budget"],i=r.length;r.push(String(t));let s=new Set(["--pm-path","--format","--output-format","--token-budget"]),d={format:"context",tokenBudget:t,kind:o.kinds},c=[["--max-depth","maxDepth",o.maxDepth],["--node-limit","nodeLimit",o.nodeLimit],["--edge-limit","edgeLimit",o.edgeLimit],["--direction","direction",o.direction],["--cursor","cursor",o.cursor],["--output-include","outputInclude",n.outputInclude],["--output-limit","outputLimit",n.outputLimit],["--output-budget","outputBudget",n.outputBudget],["--output-session","outputSession",n.outputSession],["--output-cursor","outputCursor",n.outputCursor]];for(let[a,p,g]of c)g!==void 0&&(r.push(a,String(g)),s.add(a),d[p]=g);for(let a of o.kinds??[])r.push("--kind",a),s.add("--kind");let l=[["--summary","summary",e.summaryOnly],["--full","full",e.rendering.commandOptions.full],["--json","json",n.json],["--lean","lean",n.lean],["--output-row-contract","outputRowContract",n.outputRowContract],["--token-accounting","tokenAccounting",n.tokenAccounting],["--no-extensions","noExtensions",n.noExtensions],["--no-pager","noPager",n.noPager]];for(let[a,p,g]of l)g===!0&&(r.push(a),s.add(a),d[p]=!0);let u=Re.find(a=>a.command==="deps");return Reflect.set(d,xe,{canonical_include_modes:[],cli_invocation_observed:!0,explicit_legacy_aliases:Object.values(u.dimensions).flatMap(a=>a.legacy_aliases.flatMap(p=>s.has(p.flag)?[p.flag]:[]))}),Te("deps",d),ne(d.summary===!0,d.full===!0,"--summary"),n.outputInclude=d.outputInclude,{args:r,budgetIndex:i,summaryOnly:d.summary===!0,rendering:{...e.rendering,global:n,commandOptionsOverride:d}}}function vn(e,t,o){let n={...t.rendering,commandOptionsOverride:{...t.rendering.commandOptionsOverride,tokenBudget:o}},r;try{r=ct({...e,contextOptions:{...e.contextOptions,tokenBudget:o},summaryOnly:t.summaryOnly,rootEvidence:t.summaryOnly?[]:e.rootEvidence,rendering:n})}catch(s){if(!dt(s))throw s;return"native_floor"}let i=it(S(r,t.summaryOnly,n.legacyAliasCounts),n);return De(i)?"output_constraints":"fits"}async function wn(e,t){let o=e.contextOptions.tokenBudget??F,n=at(e,o),r=(n.summaryOnly?1:1+Math.min(e.contextOptions.edgeLimit??40,e.missingReferences.length))*(e.assembly.details.reduce((a,p)=>a+p.id.length+p.title.length+p.status.length+(p.type?.length??0),e.assembly.graph.edges().length+e.missingReferences.length)+(n.summaryOnly?[]:e.rootEvidence).reduce((a,p)=>a+p.length,0)),{findContextBudgetRecovery:i}=await import("./context-budget-recovery-5MKOCGY5.js"),s=i({requested:o,initialBudget:F,workUnits:r,probe:a=>vn(e,n,a)}),d=["--pm-path",e.pmRoot,"item","deps",e.canonicalId,"--format","tree","--summary"],c=X(d),l=s.feasible_tokens===null?d:[...n.args];s.feasible_tokens!==null&&(l[n.budgetIndex]=String(s.feasible_tokens));let u=X(l);return ze("Relationship context tokenBudget cannot fit the required rendered packet",{exitCode:I.USAGE,cause:t,context:{code:"invalid_argument_value",field:"tokenBudget",value:String(o),required:s.feasible_tokens===null?"Inspect the compact summary and review the output constraints.":"Retry the preserved context query with --token-budget "+s.feasible_tokens+".",why:"Budget advice is verified against the current query. A minimum is reported only after every smaller positive budget is checked.",examples:[u,c],nextSteps:[u],recovery:{recovery_mode:"compact",suggested_flags:["--token-budget"],token_budget:s,suggested_retry_args:l,suggested_retry:u,next_best_command:c,fallback_candidates:[{source:"relationship_summary",command:c,reason:"Inspect bounded counts separately from context rows."}]}}})}async function In(e){let{pmRoot:t,assembly:o,canonicalId:n,options:r,rootEvidence:i,summaryOnly:s,rendering:d}=e,c=hn(r,o.graph.registry()),l=o.graph.closure(n,{direction:c.direction,...c.kinds===void 0?{}:{kinds:c.kinds},maxDepth:c.maxDepth??3}),u=l.value.filter(h=>o.missingIdSet.has(h.toLowerCase())),a=new Set(u.map(h=>h.toLowerCase())),p=o.graph.registry(),g=c.kinds?new Set(c.kinds.map(h=>p.require(h).kind)):void 0,f=new Set([n,...l.value]),y=[...o.dangling.active,...o.dangling.legacy_terminal].filter(h=>bn({row:h,missingReachableSet:a,packetIds:f,filteredKinds:g,registry:p})),m={pmRoot:t,assembly:o,canonicalId:n,contextOptions:c,rootEvidence:i,summaryOnly:s,rendering:d,missingCount:u.length,missingReferences:y};try{return ct(m)}catch(h){if(h instanceof v&&h.code==="invalid_query_cursor"){let b=at({...m,contextOptions:{...c,cursor:void 0},rendering:{...d,global:{...d.global,outputCursor:void 0}}},c.tokenBudget??F),k=X(b.args);throw new v(h.message,h.exitCode,{...h.context,nextSteps:[...h.context.nextSteps,k],recovery:{suggested_retry:k,suggested_retry_args:b.args}})}throw dt(h)?await wn(m,h):h}}function En(e){let t=[e],o;for(;t.length>0;){let n=t.pop();n.dependencies.length>0&&(o=n,t.push(...n.dependencies))}return o?(o.dependencies.pop(),o.truncated=!0,!0):!1}function Cn(e,t,o,n,r,i,s){let d=r??tn,c=N(o.nodeLimit,"node-limit")??nn,l=N(o.edgeLimit,"edge-limit")??on,u=N(o.tokenBudget,"token-budget")??rn,a={nodeLimit:c,edgeLimit:l,tokenBudget:u,nodes:0,edges:0,estimatedTokens:0,reasons:new Set},p=ot(e,n,new Set,d,t==="graph"?"repeated":i,new Set,a),g=rt(e,n,void 0),f;for(;;){let y=gn(p),m=a.reasons.size===0?void 0:{reasons:[...a.reasons].sort(),limits:{max_depth:d,node_limit:c,edge_limit:l,token_budget:u},estimated_tokens:0,total_node_count:g.node_count,total_edge_count:g.edge_count,omitted_node_count:Math.max(0,g.node_count-y.nodes.length),omitted_edge_count:Math.max(0,g.edge_count-y.edges.length)},h={id:e,format:t,node_count:y.nodes.length,edge_count:y.edges.length,edge_basis:"deduplicated_directed",missing_count:y.missing_ids.length,...m?{truncation:m}:{}};if(f=t==="tree"?{...h,tree:p}:{...h,graph:y},(f.truncation===void 0?M(new TextEncoder().encode(me(S(f,!1,s.legacyAliasCounts),s)).byteLength):st(S(f,!1,s.legacyAliasCounts),s,b=>{f.truncation.estimated_tokens=b}))<=u)return f;if(!En(p))return a.reasons.add("token_budget"),f;a.reasons.add("token_budget")}}function S(e,t,o={}){let n={name:e.format==="tree"?"dependency_tree":e.format==="graph"?"dependency_graph":"relationship_context",restore_with:"--full"},r=e.context?.meta.truncated?[{name:"relationship_context_bounds",restore_with:"--token-budget <n> --node-limit <n> --edge-limit <n> --max-depth <n>"}]:[];return{...e,legacy_alias_counts:o,projection:{mode:t?"summary":"full",declared_field_groups:[n,...r],included_field_groups:t?[]:[n.name]}}}async function Bo(e,t,o){let n=we(process.cwd(),o.path);await Pe(n);let r=sn(t.format),i=nt(t.maxDepth),s=dn(t.collapse);ne(t.summary===!0,t.full===!0,"--summary");let d=t.summary===!0,c=await $e(n),l=be(c,W()),u=await je(n,c.item_format,l.type_to_folder,void 0,c.schema),a=Ee(c.schema),p=new Map(u.map(m=>[m.id.trim().toLowerCase(),un(m)])),g=ae(u,m=>D(m,a));for(let m of[...g.active,...g.legacy_terminal]){let h=p.get(m.holder_id.trim().toLowerCase()),b=m.kind.trim().toLowerCase();h&&!h.dependencies.some(k=>k.id.trim().toLowerCase()===m.target_id.trim().toLowerCase()&&k.kind===b)&&h.dependencies.push({id:m.target_id,kind:b})}if(!p.has(e.trim().toLowerCase()))throw new v(`Item ${e} not found`,I.NOT_FOUND);let f=o.outputFormat??(o.json===!0||o.json===void 0&&o.defaultOutputFormat==="json"?"json":"toon");if(r==="context"){let m=p.get(e.trim().toLowerCase()).id,h=d?[]:await _n(n,m,c,l.type_to_folder),b=w=>D(w,a),k=x(),E=Ze().lookup(n,Je(u,b,k),()=>le(u,b,k));return S(await In({pmRoot:n,assembly:E.assembly,canonicalId:m,options:t,rootEvidence:h,summaryOnly:d,rendering:{format:f,global:o,commandOptions:t,legacyAliasCounts:E.assembly.legacyAliasCounts}}),d,E.assembly.legacyAliasCounts)}let y=Object.fromEntries(Object.entries(le(u,m=>D(m,a)).legacyAliasCounts));return d?S({id:e,format:r,...rt(e,p,i)},!0,y):S(Cn(e,r,t,p,i,s,{format:f,global:o,commandOptions:t,legacyAliasCounts:y}),!1,y)}export{re as a,ft as b,P as c,Y as d,Ge as e,mt as f,gt as g,ht as h,kt as i,Wn as j,Xn as k,St as l,x as m,Kn as n,J as o,Un as p,Tt as q,jn as r,U as s,Ot as t,Bt as u,ae as v,Nt as w,eo as x,le as y,Je as z,ue as A,Ze as B,io as C,F as D,et as E,N as F,nt as G,cn as H,an as I,Bo as J};
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{F as Ke,G as Ue,J as je,U as ze,f as Me}from"./chunk-JCR32IAO.js";import{$a as $e,eb as Pe,s as $,t as D}from"./chunk-M22TI7LP.js";import{j as Ee}from"./chunk-VFQAZLKO.js";import{b as T,c as C}from"./chunk-AK2CI2GI.js";import{Ce as Ne,Fa as Ie,Fd as Se,Gd as Le,Hc as ne,Kd as Oe,Nc as X,R,T as H,W as _e,_c as M,ka as ke,kd as xe,pd as Re,qa as be,sa as ve,sc as W,tc as Ce,ud as Te,wa as we,xe as Ae,yd as De,ye as Be}from"./chunk-CIQ6YWCW.js";import{A as v,z as I}from"./chunk-JLXGRDTG.js";(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]="a319e7d9-e248-573b-bf1f-35217ce49fd0")}catch{}})();function re(e,t){return(t===void 0?void 0:ve(e,t))?.execution_role??ke[e.trim().toLowerCase()]??"agent"}var ie="blocked_by",Fe="blocks",ft=Object.freeze([ie,Fe]),oe="no-active-blocker";function _(e){return e.trim().toLowerCase()}function q(e,t){return t?`external:${e}`:`local:${_(e)}`}function P(e){let t=new Map,o=typeof e.blocked_by=="string"?e.blocked_by.trim():"";if(o.length>0&&_(o)!==oe){let n=T(o);t.set(q(o,n),n?o:_(o))}for(let n of e.dependencies??[]){let r=typeof n.id=="string"?n.id.trim():"";if(H(n.kind)===ie&&r.length>0&&_(r)!==oe){let i=T(r)||C(n.source_kind);t.set(q(r,i),i?r:_(r))}}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function Y(e){let t=new Map;for(let o of e){let n=_(o.id);n.length!==0&&t.set(n,new Set(P(o)))}for(let o of e){let n=_(o.id);if(n.length!==0)for(let r of o.dependencies??[]){let i=H(r.kind)===Fe&&typeof r.id=="string"?_(r.id):"";if(i.length===0||i===oe)continue;let s=t.get(i)??new Set;s.add(n),t.set(i,s)}}return new Map([...t].map(([o,n])=>[o,[...n].sort((r,i)=>r.localeCompare(i))]))}function Ge(e,t){let o=_(e.id);return o.length>0?Y(t).get(o)??P(e):P(e)}function se(e,t,o,n){let r=e,i=typeof r.id=="string"?n?.get(_(r.id))??Ge(r,[...t.values()]):P(e),s=new Set((e.dependencies??[]).filter(d=>H(d.kind)===ie&&C(d.source_kind)&&typeof d.id=="string"&&d.id.trim().length>0).map(d=>q(d.id.trim(),!0)));return i.map(d=>{if(T(d)||s.has(q(d,!0)))return{id:d,title:null,status:null,resolved:!1,external:!0,...typeof e.updated_at=="string"?{blocked_since:e.updated_at}:{},resolver:null};let c=t.get(_(d));return c?{id:d,title:c.title,status:c.status,resolved:D(c.status,o)}:{id:d,title:null,status:null,resolved:!1}})}function mt(e,t,o){return se(e,t,o)}function gt(e,t){let o=new Map(e.map(s=>[_(s.id),s])),n=Y(e),r=new Set([...He(t),...t.blocked_statuses]),i=new Set;for(let s of e){let d=$(s.status,t);r.has(d)&&(t.blocked_statuses.has(d)||se(s,o,t,n).some(c=>!c.resolved))&&i.add(_(s.id))}return i}function ht(e,t,o={},n){let r=[...e.ready,...e.decisions,...e.gates];o.includeContainers===!0&&r.push(...e.containers.filter(s=>s.open_blockers.length===0&&!t.blocked_statuses.has($(s.item.status,t))));let i={ready:[],decisions:[],gates:[]};for(let s of r){let d=re(s.item.type,n);d==="human"&&o.includeDecisions!==!0?i.decisions.push(s):d==="gate"&&o.includeGates!==!0?i.gates.push(s):i.ready.push(s)}return i}function He(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function yt(e,t,o){let n=[_(e)],r=new Set;for(;n.length>0;){let i=n.pop();if(!r.has(i)){r.add(i);for(let s of t.get(i)??[]){if(!D(s.status,o))return!0;n.push(_(s.id))}}}return!1}function _t(e){let t=new Map,o=new Map,n=new Map,r=Y(e);for(let i of e){t.set(_(i.id),i);let s=typeof i.parent=="string"?i.parent.trim():"";if(s.length>0){let d=_(s),c=o.get(d)??[];c.push(i),o.set(d,c)}for(let d of r.get(_(i.id))){let c=_(d),l=n.get(c)??[];l.push(i.id),n.set(c,l)}}return{itemsById:t,childrenByParent:o,blockedByReverse:n,blockerIdsByItem:r}}function kt(e,t,o,n){let{itemsById:r,childrenByParent:i,blockedByReverse:s,blockerIdsByItem:d}=_t(t),c=new Set([...He(o),...o.blocked_statuses]),l=new Set(t.filter(m=>!D(m.status,o)).map(m=>_(m.id))),u=[],a=[],p=[],g=[],f=[],y=0;for(let m of e){if(!c.has($(m.status,o)))continue;y+=1;let h=se(m,r,o,d).filter(w=>!w.resolved),b=(s.get(_(m.id))??[]).filter(w=>l.has(_(w))).sort((w,L)=>w.localeCompare(L)),k={item:m,open_blockers:h,unblocks:b};if(yt(m.id,i,o)){p.push(k);continue}let E=o.blocked_statuses.has($(m.status,o));if(h.length===0&&!E){let w=re(m.type,n);w==="human"?g.push(k):w==="gate"?f.push(k):u.push(k)}else a.push(k)}return{ready:u,blocked:a,containers:p,decisions:g,gates:f,active_count:y,container_count:p.length}}(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]="ae1c56b3-148d-502d-9450-e807fdfab4da")}catch{}})();(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]="283dfa35-9a8e-524c-b6e2-d433d51215ca")}catch{}})();function x(){let e=R();for(let t of W()?.relationship_kinds??[])for(let o of t.definitions)e.register(o);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]="8b57e560-4ac4-53b6-9fb1-eebb1f30562a")}catch{}})();function K(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return t.length>0?t:void 0}function V(e){return[e.parent_id,e.child_id,e.source,e.kind,e.holder_id,e.target_id??""].join("\0")}function bt(e,t){let o=new Set,n=[];for(let r of[...e].sort()){if(o.has(r))continue;o.add(r);let i=[{nodeId:r,children:[...t.get(r)??[]].sort(),nextChild:0}];for(;i.length>0;){let s=i.at(-1),d=s.children[s.nextChild];d===void 0?(n.push(s.nodeId),i.pop()):(s.nextChild+=1,o.has(d)||(o.add(d),i.push({nodeId:d,children:[...t.get(d)??[]].sort(),nextChild:0})))}}return n}function vt(e,t){let o=[...e].sort(),n=bt(o,t),r=new Set,i=wt(o,t),s=[];for(let d of n.reverse()){if(r.has(d))continue;let c=It(d,i,r);(c.length>1||t.get(c[0])?.has(c[0]))&&s.push(c)}return s.sort((d,c)=>d.join("\0").localeCompare(c.join("\0")))}function wt(e,t){let o=new Map(e.map(n=>[n,new Set]));for(let[n,r]of t)for(let i of r)o.get(i)?.add(n);return o}function It(e,t,o){let n=[],r=[e];for(o.add(e);r.length>0;){let i=r.pop();n.push(i);for(let s of[...t.get(i)].sort())o.has(s)||(o.add(s),r.push(s))}return n.sort()}function We(e){let t=new Map;for(let o of e){let n=K(o?.id);n&&!t.has(n)&&t.set(n,o)}return t}function Et(e,t,o){let n=K(t.parent);if(!(!n||!o.has(n)))return{parent_id:n,child_id:e,source:"scalar_parent",kind:"parent",holder_id:e,child_cardinality:"one"}}function Ct(e,t,o,n){let r=K(t?.id),i=n.resolve(t?.kind);if(!r||!o.has(r)||!i?.hierarchy)return;let s=i.hierarchyDirection==="source_parent";return{parent_id:s?e:r,child_id:s?r:e,source:"dependency",kind:i.kind,holder_id:e,target_id:r,child_cardinality:s?i.incoming:i.outgoing}}function Xe(e,t){let o=new Map;for(let[n,r]of e){let i=Et(n,r,e);i&&o.set(V(i),i);for(let s of r.dependencies??[]){let d=Ct(n,s,e,t);d&&o.set(V(d),d)}}return[...o.values()].sort((n,r)=>V(n).localeCompare(V(r)))}function Kn(e,t=x()){return Xe(We(e),t)}function xt(e,t,o){let n=new Set(e.filter(r=>r.child_cardinality==="one").map(r=>r.child_id));return[...t].filter(([r,i])=>i.length>1&&n.has(r)).map(([r,i])=>({child_id:r,parent_ids:[...i],legacy_terminal:o.has(r)&&i.every(s=>o.has(s))})).sort((r,i)=>r.child_id.localeCompare(i.child_id))}function Rt(e,t,o){let n=new Map;for(let i of t){if(i.source!=="dependency")continue;let s=n.get(i.child_id)??new Set;s.add(i.parent_id),n.set(i.child_id,s)}let r=[];for(let[i,s]of e){let d=K(s.parent);if(!d||!e.has(d))continue;let c=[...n.get(i)??[]].filter(l=>l!==d).sort();c.length!==0&&r.push({child_id:i,scalar_parent_id:d,dependency_parent_ids:c,legacy_terminal:o.has(i)&&o.has(d)&&c.every(l=>o.has(l))})}return r.sort((i,s)=>i.child_id.localeCompare(s.child_id))}function J(e,t=n=>n==="closed"||n==="canceled",o=x()){let n=We(e),r=Xe(n,o),i=Tt(r),s=new Set([...n].filter(([,c])=>t(c.status)).map(([c])=>c)),d=vt([...n.keys()],new Map([...i.children_by_parent].map(([c,l])=>[c,new Set(l)]))).map(c=>({item_ids:c,legacy_terminal:c.every(l=>s.has(l))}));return{relations:r,cycles:d,cardinality_violations:xt(r,i.parents_by_child,s),divergences:Rt(n,r,s)}}function Un(e){return e.source==="scalar_parent"?`${e.parent_id} -> ${e.child_id} (scalar parent on ${e.holder_id})`:`${e.parent_id} -> ${e.child_id} (${e.kind} dependency on ${e.holder_id})`}function Tt(e){let t=new Map,o=new Map;for(let n of e){let r=t.get(n.child_id)??new Set;r.add(n.parent_id),t.set(n.child_id,r);let i=o.get(n.parent_id)??new Set;i.add(n.child_id),o.set(n.parent_id,i)}return{parents_by_child:new Map([...t].map(([n,r])=>[n,[...r].sort()])),children_by_parent:new Map([...o].map(([n,r])=>[n,[...r].sort()]))}}function de(e,t){let o=new Set(t);return e.every(n=>o.has(n))}function jn(e,t,o,n,r){let i=K(o);if(!i)return;let s=J(e,n,r),d=J(t,n,r),c=d.divergences.find(a=>!s.divergences.some(p=>p.child_id===a.child_id&&p.scalar_parent_id===a.scalar_parent_id&&de(a.dependency_parent_ids,p.dependency_parent_ids)));if(c){let a=[c.scalar_parent_id,...c.dependency_parent_ids].sort();throw new v(`Hierarchy mutation would assign ${c.child_id} to multiple parents: ${a.join(", ")}.`,I.CONFLICT,{code:"hierarchy_parent_divergence_created",source_id:i,target_id:c.child_id,verification_errors:a})}let l=d.cardinality_violations.find(a=>(a.child_id===i||a.parent_ids.includes(i))&&!s.cardinality_violations.some(p=>p.child_id===a.child_id&&de(a.parent_ids,p.parent_ids)));if(l)throw new v(`Hierarchy mutation would assign ${l.child_id} to multiple parents: ${l.parent_ids.join(", ")}.`,I.CONFLICT,{code:"hierarchy_cardinality_created",source_id:i,target_id:l.child_id,verification_errors:l.parent_ids});let u=d.cycles.find(a=>a.item_ids.includes(i)&&!s.cycles.some(p=>de(a.item_ids,p.item_ids)));if(u)throw new v(`Hierarchy mutation would create a cycle: ${u.item_ids.join(" -> ")}.`,I.CONFLICT,{code:"hierarchy_cycle_created",source_id:i,verification_errors:u.item_ids})}(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]="6c580b70-76eb-51db-8587-99b73dd20875")}catch{}})();var Dt="global";function Wn(e){let t=e?.trim();if(t)return C(t)?Dt:t}function Xn(e,t,o){return St(e,t,o)}function St(e,t,o){let n=e.trim();return C(o)||T(n)?n:Me(n,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]="41f814be-ee87-5cae-b674-69c2e7f42655")}catch{}})();function B(e){if(typeof e!="string")return;let t=e.trim();if(!(!t||["none","null","n/a","na"].includes(t.toLowerCase())))return t}function U(e){let t=B(e);return t?.toLowerCase()==="no-active-blocker"?void 0:t}function j(e,t,o=!0){let n=B(e);return o&&(C(t)||n!==void 0&&T(n))}function ce(e,t){return j(e,t)?`external\0${e}`:`local\0${e.toLowerCase()}`}function qe(e,t,o,n){return j(e,t)?n.get(e):o.get(e.toLowerCase())}function A(e,t){let o=e.toLowerCase(),n=t.toLowerCase();return o!==n?o<n?-1:1:e!==t?e<t?-1:1:0}function Lt(e){let t=new Map;for(let o of e.dependencies??[]){if(typeof o!="object"||o===null)continue;let n=o,r=B(n.id);if(!r)continue;let i=typeof n.kind=="string"?n.kind:"related",s=`${i}\0${ce(r,n.source_kind)}`,d=t.get(s);d?d.count+=1:t.set(s,{target_id:r,kind:i,count:1})}return t}function Ot(e,t=o=>o==="closed"||o==="canceled"){let o=[];for(let n of e)if(!(typeof n?.id!="string"||n.id.trim().length===0))for(let r of Lt(n).values())r.count<2||o.push({holder_id:n.id.trim(),target_id:r.target_id,kind:r.kind,occurrences:r.count,holder_status:n.status,legacy_terminal:t(n.status)});return o.sort((n,r)=>{let i=A(n.holder_id,r.holder_id);if(i!==0)return i;let s=A(n.target_id,r.target_id);return s!==0?s:A(n.kind,r.kind)})}function At(e,t,o,n,r){if(typeof o!="object"||o===null)return;let i=B(o.id);if(!i||ce(i,o.source_kind)!==ce(t))return;let s=r.resolve(typeof o.kind=="string"?o.kind:"related");if(!(s?.ordering!==!0||(s.precedence??"source_before_target")!=="source_before_target"))return{holder_id:e.id.trim(),target_id:i,dependency_kind:s.kind,holder_status:e.status,legacy_terminal:n(e.status)}}function Bt(e,t=n=>n==="closed"||n==="canceled",o=x()){let n=new Map;for(let r of e){if(typeof r?.id!="string"||r.id.trim().length===0)continue;let i=B(r.blocked_by);if(i)for(let s of r.dependencies??[]){let d=At(r,i,s,t,o);d&&n.set(`${d.holder_id.toLowerCase()}\0${d.target_id.toLowerCase()}\0${d.dependency_kind}`,d)}}return[...n.values()].sort((r,i)=>{let s=A(r.holder_id,i.holder_id);if(s!==0)return s;let d=A(r.target_id,i.target_id);return d!==0?d:A(r.dependency_kind,i.dependency_kind)})}function ae(e,t=o=>o==="closed"||o==="canceled"){let o=e.filter(c=>typeof c?.id=="string"&&c.id.trim().length>0),n=new Set(o.map(c=>c.id.trim().toLowerCase())),r=new Map,i=(c,l,u,a,p)=>{let g=B(l);if(!g||n.has(g.toLowerCase())||j(g,void 0,p))return;let f={holder_id:c.id.trim(),target_id:g,kind:u,source:a,holder_status:c.status,legacy_terminal:t(c.status),no_active_blocker_sentinel:g.toLowerCase()==="no-active-blocker"};r.set(`${f.holder_id}::${f.target_id}::${f.kind}::${f.source}`,f)};for(let c of o){i(c,c.parent,"parent","parent",!1),i(c,c.blocked_by,"blocked_by","blocked_by",!0);for(let l of c.dependencies??[]){if(typeof l!="object"||l===null)continue;let u=l;C(u.source_kind)||i(c,u.id,typeof u.kind=="string"?u.kind:"related","dependency",!0)}}let s=[...r.values()].sort((c,l)=>c.holder_id.localeCompare(l.holder_id)||c.target_id.localeCompare(l.target_id)||c.kind.localeCompare(l.kind)||c.source.localeCompare(l.source)),d=s.filter(c=>c.legacy_terminal);return{active:s.filter(c=>!c.legacy_terminal),legacy_terminal:d,no_active_blocker_sentinels:s.filter(c=>c.no_active_blocker_sentinel)}}function Nt(e){let t=new Map;for(let o of[...e.active,...e.legacy_terminal]){if(o.no_active_blocker_sentinel)continue;let n=o.target_id.trim(),r=n.toLowerCase();t.has(r)||t.set(r,n)}return[...t.values()].sort((o,n)=>o.localeCompare(n))}function Mt(e){let t=new Map;for(let o of e){let n=U(o.blocked_by);n&&j(n)&&!t.has(n)&&t.set(n,n);for(let r of o.dependencies??[]){if(typeof r!="object"||r===null||!j(r.id,r.source_kind))continue;let i=U(r.id);i&&!t.has(i)&&t.set(i,i)}}return[...t.values()].sort((o,n)=>o.localeCompare(n))}var Ye=new WeakMap;function eo(e){return e.hierarchyIntegrity??Ye.get(e)}function $t(e,t=x()){let o={};for(let n of e)for(let r of n.dependencies??[]){if(typeof r!="object"||r===null)continue;let i=r.kind;if(typeof i!="string")continue;let s=i.trim().toLowerCase().replaceAll("-","_"),d=t.resolve(i);d&&s!==d.kind&&(o[s]=(o[s]??0)+1)}return Object.fromEntries(Object.entries(o).sort(([n],[r])=>n.localeCompare(r)))}function le(e,t,o){let n=o??x(),r=e.filter(f=>typeof f?.id=="string"&&f.id.trim().length>0),i=new Map(r.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),s=ae(r,t),d=Nt(s);for(let f of d)i.set(f.toLowerCase(),f);let c=Mt(r),l=new Set(i.keys()),u=new Map;for(let f of c){let y=f;for(;l.has(y.toLowerCase());)y=`external:${y}`;u.set(f,y),l.add(y.toLowerCase())}let a=r.map(f=>{let y=U(f.parent),m=U(f.blocked_by),h=(f.dependencies??[]).flatMap(b=>{if(typeof b!="object"||b===null)return[];let k=b,E=U(k.id);return E?[{id:qe(E,k.source_kind,i,u),kind:typeof k.kind=="string"?k.kind:"related"}]:[]});return{id:f.id.trim(),...y?{parent:i.get(y.toLowerCase())}:{},...m?{blocked_by:qe(m,void 0,i,u)}:{},dependencies:h}}),p=J(r,t,n),g={graph:_e.fromItems([...a,...d.map(f=>({id:f})),...c.map(f=>({id:u.get(f)}))],n),details:[...r.map(f=>({id:f.id.trim(),title:f.title,status:f.status,...typeof f.type=="string"&&f.type.trim().length>0?{type:f.type.trim()}:{}})),...d.map(f=>({id:f,title:`[missing] ${f}`,status:"missing"})),...c.map(f=>({id:u.get(f),title:`[external] ${f}`,status:"external"}))],missingIdSet:new Set(d.map(f=>f.toLowerCase())),dangling:s,duplicateRows:Ot(r,t),orderingContradictions:Bt(r,t,n),legacyAliasCounts:$t(r,n),hierarchyIntegrity:p};return Ye.set(g,p),g}import{createHash as Pt}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]="e31ef0fb-e803-500b-b1e5-db9edfc880c4")}catch{}})();var Kt=64,Ut=8;function jt(e,t){let o=(e.dependencies??[]).map(n=>{if(typeof n!="object"||n===null)return"";let r=n;return`${typeof r.kind=="string"?r.kind:"related"}:${typeof r.id=="string"?r.id:""}`}).sort().join(",");return[e.id,e.title,e.status,t(e.status)?"1":"0",typeof e.type=="string"?e.type.trim():"",e.parent??"",e.blocked_by??"",o].join("\0")}function Je(e,t=n=>n==="closed"||n==="canceled",o=R()){let n=e.filter(i=>typeof i?.id=="string"&&i.id.trim().length>0).map(i=>jt(i,t)).sort(),r=o.list().map(i=>Ie(i)).sort();return Pt("sha256").update(n.join("")).update("").update(r.join("")).digest("hex")}function Ve(e,t,o){let n=t??o;if(!Number.isInteger(n)||n<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`);return n}var ue=class{#e=new Map;#t;#n;constructor(t={}){this.#t=Ve("maxResultsPerWorkspace",t.maxResultsPerWorkspace,Kt),this.#n=Ve("maxWorkspaces",t.maxWorkspaces,Ut)}lookup(t,o,n){let r=this.#e.get(t),i=!0;(r===void 0||r.fingerprint!==o)&&(r={fingerprint:o,assembly:n(),results:new Map},i=!1,!this.#e.has(t)&&this.#e.size>=this.#n&&this.#e.delete(this.#e.keys().next().value)),this.#e.delete(t),this.#e.set(t,r);let s=r,d=this.#t;return{assembly:s.assembly,assemblyReused:i,fingerprint:o,memoize(c,l){let u=s.results.get(c);if(u!==void 0||s.results.has(c))return s.results.delete(c),s.results.set(c,u),{value:structuredClone(u),reused:!0};let a=l();return s.results.size>=d&&s.results.delete(s.results.keys().next().value),s.results.set(c,structuredClone(a)),{value:a,reused:!1}}}}clear(){this.#e.clear()}},Qe=new ue;function Ze(){return Qe}function io(){Qe.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]="3b494263-6359-57e9-8f34-b0bdcdeda93f")}catch{}})();var F=1200,zt=["prerequisite","dependent","ancestor","descendant","provenance","related"],Ft=new TextEncoder;function pe(e,t,o){let n=e??t;if(!Number.isInteger(n)||n<1)throw new TypeError(`Relationship context ${o} must be positive`);return n}function z(e){return Math.max(1,Math.ceil(Ft.encode(JSON.stringify(e)).byteLength/4))}function Q(e,t,o){let n=o.resolve(e.kind);if(n?.ordering){let r=(n.precedence??"source_before_target")==="source_before_target"?e.source:e.target;return t===r?"prerequisite":"dependent"}if(n?.hierarchy){let r=n.hierarchyDirection==="source_parent"?e.source:e.target;return t===r?"ancestor":"descendant"}return e.kind==="discovered_from"||e.kind==="incident_from"?"provenance":"related"}function Gt(e,t,o,n){let r=e.filter(i=>i.source===t&&i.target===o||i.target===t&&i.source===o).map(i=>Q(i,o,n));return[...new Set(r)].sort()}function Ht(e){return zt.find(t=>e.includes(t))}function Wt(e,t,o,n){let r=n.direction??"both",i=n.maxDepth??3;if(!Number.isInteger(i)||i<0)throw new TypeError("Relationship context maxDepth must be non-negative");let s=new Set([t]),d=[{id:t,distance:0}],c=[],l=0,u=!1;for(let a=0;a<d.length;a+=1){n.signal?.throwIfAborted();let p=d[a];if(p.distance>=i&&u)continue;let g=e.neighborEdges(p.id,{direction:r,kinds:n.kinds,signal:n.signal});if(l+=g.meta.inspectedEdges,p.distance>=i){g.value.some(f=>!s.has(f.id))&&(u=!0);continue}for(let{id:f,edge:y}of g.value){if(s.has(f))continue;s.add(f);let m={id:f,distance:p.distance+1,via:p.id,role:Q(y,f,o)};c.push(m),d.push(m)}}return{rows:c,visitedNodes:d.length,inspectedEdges:l,depthTruncated:u}}function Xt(e,t,o,n){let r={prerequisite:0,dependent:0,ancestor:0,descendant:0,provenance:0,related:0},i=e.neighborEdges(t,{direction:n.direction??"both",kinds:n.kinds,signal:n.signal}).value;for(let{id:s,edge:d}of i)r[Q(d,s,o)]+=1;return{directEdges:r,directTotal:i.length,rootEdges:i.map(({edge:s})=>s)}}function qt(e,t,o,n){let r=new Set;for(let i of t){let s=i.source===o?i.target:i.source,d=Q(i,s,n);(d==="prerequisite"||d==="ancestor")&&r.add(s)}return[...e].sort((i,s)=>Number(r.has(s.id))-Number(r.has(i.id))||i.distance-s.distance||i.id.localeCompare(s.id))}function Yt(e,t){let o=e.distance===1?Gt(t.rootEdges,t.rootId,e.id,t.registry):[];return{...t.details.get(e.id)??{id:e.id},distance:e.distance,role:o.length>0?Ht(o):e.role,via:e.via,reasons:o.length>0?o:[`${e.role} via ${e.via} (depth ${e.distance})`]}}function Vt(e){let t=[],o=e.initialTokens,n=0;for(let r of e.candidates){if(t.length>=e.nodeLimit)break;let i=Yt(r,e),s=z(i);if(o+s>e.tokenBudget)break;let d=e.rootEdges.filter(c=>c.source===r.id||c.target===r.id).reduce((c,l)=>c+z(l),0);if(o+n+s+d>e.tokenBudget){if(t.length>0)break}else n+=d;t.push(i),o+=s}if(e.candidates.length>0&&t.length===0)throw new TypeError("Relationship context tokenBudget cannot fit one node");return{nodes:t,usedTokens:o}}function Jt(e){let t=e.options.kinds?new Set(e.options.kinds.map(i=>e.registry.require(i).kind)):void 0,o=e.graph.edges().filter(i=>{if(!e.included.has(i.source)||!e.included.has(i.target))return!1;if(t===void 0||t.has(i.kind))return!0;let s=e.registry.resolve(i.kind)?.inverse;return s!==void 0&&t.has(s)}).sort((i,s)=>+(s.source===e.rootId||s.target===e.rootId)-+(i.source===e.rootId||i.target===e.rootId)),n=[],r=e.initialTokens;for(let i of o){if(n.length>=e.edgeLimit)break;let s=z(i);r+s>e.tokenBudget||(n.push(i),r+=s)}return{edges:n,usedTokens:r,candidateCount:o.length}}function et(e,t,o,n={}){if(!e.nodes().includes(t))throw new TypeError(`Relationship node not found: ${t}`);let r=pe(n.nodeLimit,20,"nodeLimit"),i=pe(n.edgeLimit,40,"edgeLimit"),s=pe(n.tokenBudget,F,"tokenBudget"),d=n.registry??R(),c=new Map(o.map(O=>[O.id,O])),l=c.get(t)??{id:t},{evidence:u=[],...a}=l,p=[...u],g=Wt(e,t,d,n),{rootEdges:f,...y}=Xt(e,t,d,n),m=qt(g.rows,f,t,d),h=Se("relationship-context",{rootId:t,direction:n.direction??"both",kinds:[...n.kinds??[]].sort(),maxDepth:n.maxDepth??3,ordering:"required-root-evidence-first-v1"}),b=Oe(m,n.cursor,h,({id:O})=>O,"--cursor"),k=m.slice(b),E=z(a)+z(p);if(E>s)throw new TypeError("Relationship context tokenBudget cannot fit root and evidence");let w=Vt({candidates:k,details:c,rootEdges:f,rootId:t,registry:d,nodeLimit:r,tokenBudget:s,initialTokens:E}),{nodes:L}=w,lt=new Set([t,...L.map(({id:O})=>O)]),ge=Jt({graph:e,rootId:t,included:lt,options:n,registry:d,edgeLimit:i,tokenBudget:s,initialTokens:w.usedTokens}),{edges:Z,usedTokens:ut}=ge,G=b+L.length,ee=G<m.length,he=L.at(-1),te=ge.candidateCount-Z.length,ye=g.depthTruncated||ee||te>0,pt={rootId:t,...a.status===void 0?{}:{rootStatus:a.status},...y,discoveredNodes:m.length,returnedNodes:L.length,returnedEdges:Z.length,omittedNodes:m.length-G,omittedEdges:te,evidenceCount:p.length,hasMore:ee};return{root:a,summary:pt,nodes:L,edges:Z,evidence:p,meta:{exact:!0,truncated:ye,completeness:ye?"truncated":"complete",nodeLimit:r,edgeLimit:i,tokenBudget:s,usedTokens:ut,visitedNodes:g.visitedNodes,inspectedEdges:g.inspectedEdges,omittedNodes:m.length-G,omittedEdges:te,...ee&&he?{nextCursor:Le(h,he.id,G-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]="196b7f2d-b09b-5432-b4ef-9cdf82e92731")}catch{}})();var Qt=["tree","graph","context"],Zt=["none","repeated"],en=["outgoing","incoming","both"],tn=32,nn=200,on=400,rn=16e3;function sn(e){let t=e?.trim().toLowerCase()??"tree";if(Qt.includes(t))return t;throw new v(`Invalid --format value "${e}". Use "tree", "graph", or "context".`,I.USAGE)}function N(e,t){if(e===void 0)return;let o=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(o)||o<1)throw new v(`Invalid --${t} value "${e}". Use a positive integer.`,I.USAGE);return o}function nt(e){if(e===void 0)return;let t=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(t)||t<0)throw new v(`Invalid --max-depth value "${e}". Use a non-negative integer.`,I.USAGE);return t}function dn(e){let t=e?.trim().toLowerCase()??"none";if(Zt.includes(t))return t;throw new v(`Invalid --collapse value "${e}". Use "none" or "repeated".`,I.USAGE)}function cn(e){let t=e?.trim().toLowerCase()??"both";if(en.includes(t))return t;throw new v(`Invalid --direction value "${e}". Use "outgoing", "incoming", or "both".`,I.USAGE)}function an(e,t=R()){if(e===void 0)return;let o=(Array.isArray(e)?e:[e]).flatMap(r=>r.split(",")).map(r=>r.trim()).filter(r=>r.length>0);if(o.length===0)return;let n=new Set;for(let r of o){let i=t.resolve(r);if(!i){let s=t.list().map(d=>d.kind).join(", ");throw new v(`Invalid --kind value "${r}". Registered kinds: ${s}.`,I.USAGE)}n.add(i.kind)}return[...n].sort()}function ln(e){if(!e||e.length===0)return[];let t=e.map(({id:n,kind:r})=>({id:n.trim(),kind:r.trim().toLowerCase()})).sort((n,r)=>{let i=n.kind.localeCompare(r.kind);return i!==0?i:n.id.localeCompare(r.id)}),o=new Map;for(let n of t){let r=`${n.kind.toLowerCase()}::${n.id.toLowerCase()}`;o.has(r)||o.set(r,{id:n.id,kind:n.kind})}return[...o.values()]}function un(e){return{id:e.id,title:e.title,type:e.type,status:e.status,dependencies:ln(e.dependencies)}}function pn(e){return M(new TextEncoder().encode(JSON.stringify({...e,dependencies:void 0})).byteLength)}function fn(e,t,o,n,r,i,s,d,c){for(let l of t.dependencies){let u=Math.max(1,Math.ceil(JSON.stringify({from:e.id,to:l.id,kind:l.kind}).length/3));if(d.nodes>=d.nodeLimit){e.truncated=!0,d.reasons.add("node_limit");break}if(d.edges>=d.edgeLimit){e.truncated=!0,d.reasons.add("edge_limit");break}if(d.estimatedTokens+u>=d.tokenBudget){e.truncated=!0,d.reasons.add("token_budget");break}d.edges+=1,d.estimatedTokens+=u,e.dependencies.push(ot(l.id,o,n,r,i,s,d,c+1,l.kind))}}function mn(e,t,o,n,r,i,s,d){return s.estimatedTokens>=s.tokenBudget&&t?.dependencies.length?(e.truncated=!0,s.reasons.add("token_budget"),!0):!t||e.cycle?!0:n!==void 0&&d>=n?(t.dependencies.length>0&&(e.truncated=!0,s.reasons.add("max_depth")),!0):r==="repeated"&&i.has(o)?(e.collapsed=!0,!0):!1}function ot(e,t,o,n,r,i,s,d=0,c){let l=e.trim().toLowerCase(),u=t.get(l),a={id:u?.id??e,title:u?.title,type:u?.type,status:u?.status,via:c,missing:!u,cycle:o.has(l),dependencies:[]};if(s.nodes+=1,s.estimatedTokens+=pn(a),mn(a,u,l,n,r,i,s,d))return a;r==="repeated"&&i.add(l);let p=new Set(o);return p.add(l),fn(a,u,t,p,n,r,i,s,d),a}function tt(e,t){return!e||e.missing&&!t.missing?t:{...e,title:e.title??t.title,type:e.type??t.type,status:e.status??t.status}}function gn(e){let t=new Map,o=new Map,n=[e];for(;n.length>0;){let d=n.pop();t.set(d.id,tt(t.get(d.id),{id:d.id,title:d.title,type:d.type,status:d.status,missing:d.missing}));for(let c of d.dependencies){t.set(c.id,tt(t.get(c.id),{id:c.id,title:c.title,type:c.type,status:c.status,missing:c.missing}));let l=c.via??"related",u=`${d.id}::${c.id}::${l}`;o.has(u)||o.set(u,{from:d.id,to:c.id,kind:l}),c.cycle||n.push(c)}}let r=[...t.values()].sort((d,c)=>d.id.localeCompare(c.id)),i=[...o.values()].sort((d,c)=>{let l=d.from.localeCompare(c.from);if(l!==0)return l;let u=d.to.localeCompare(c.to);return u!==0?u:d.kind.localeCompare(c.kind)}),s=r.filter(d=>d.missing).map(d=>d.id);return{root_id:e.id,nodes:r,edges:i,missing_ids:s}}function rt(e,t,o){let n=new Set,r=new Set,i=new Set,s=new Set,d=[{id:e,depth:0}],c=0;for(;c<d.length;){let l=d[c++],u=l.id.trim().toLowerCase();n.add(u);let a=t.get(u);if(!a){i.add(u);continue}if(!(o!==void 0&&l.depth>=o)&&!s.has(u)){s.add(u);for(let p of a.dependencies)r.add(`${u}::${p.id.trim().toLowerCase()}::${p.kind}`),d.push({id:p.id,depth:l.depth+1})}}return{node_count:n.size,edge_count:r.size,edge_basis:"deduplicated_directed",missing_count:i.size}}function hn(e,t=R()){let o=nt(e.maxDepth),n=N(e.nodeLimit,"node-limit"),r=N(e.edgeLimit,"edge-limit"),i=N(e.tokenBudget,"token-budget"),s=an(e.kind,t);return{direction:cn(e.direction),...s===void 0?{}:{kinds:s},...o===void 0?{}:{maxDepth:o},...n===void 0?{}:{nodeLimit:n},...r===void 0?{}:{edgeLimit:r},...i===void 0?{}:{tokenBudget:i},...e.cursor?.trim()?{cursor:e.cursor.trim()}:{}}}function yn(e,t,o,n){return et(e.graph,t,e.details.map(r=>r.id===t&&n.length>0?{...r,evidence:n}:r),o)}function fe(e,t,o,n){for(let r of o.slice(0,n)){let i=r?.trim();i&&e.push(`${t}:${i}`)}}async function _n(e,t,o,n){let r=await Ke(e,t,o.id_prefix,o.item_format,n);if(!r)return[];let{document:i}=await Ue(r,{schema:o.schema}),s=i.metadata,d=s.files??[],c=s.tests??[],l=s.docs??[],u=[["files",d.length],["tests",c.length],["docs",l.length],["comments",(s.comments??[]).length],["notes",(s.notes??[]).length],["learnings",(s.learnings??[]).length]];if(u.every(([,p])=>p===0))return[];let a=[`linked:${u.map(([p,g])=>`${p}=${g}`).join(",")}`];return fe(a,"file",d.map(p=>p.path),3),fe(a,"test",c.map(p=>p.command??p.path),2),fe(a,"doc",l.map(p=>p.path),2),a}function kn(e){let{canonicalId:t,context:o,missingCount:n,missingReferences:r,referenceLimit:i,summaryOnly:s}=e;return{id:t,format:"context",node_count:o.nodes.length+1,edge_count:o.edges.length,edge_basis:"deduplicated_directed",missing_count:n,missing_scope:"traversal",missing_reference_count:r.length,...s?{}:{missing_references:r.slice(0,i),context:o}}}function bn(e){let{row:t,missingReachableSet:o,packetIds:n,filteredKinds:r,registry:i}=e;if(t.no_active_blocker_sentinel||!o.has(t.target_id.trim().toLowerCase())||!n.has(t.holder_id))return!1;if(r===void 0)return!0;let s=i.resolve(t.kind);return s!==void 0&&(r.has(s.kind)||s.inverse!==void 0&&r.has(s.inverse))}function it(e,t){let o=Ce(),n=t.commandOptionsOverride??(o?.command==="deps"?o.options:t.commandOptions);return Ae("deps",{...n,...t.global,resolvedOutputFormat:t.format},e)}function me(e,t){let o=it(e,t),n=r=>Ne(r,t.format,t.global.lean===!0);return n(t.global.tokenAccounting===!0?Be(o,n):o)}function st(e,t,o){let n;for(;;){let r=M(new TextEncoder().encode(me(e,t)).byteLength);if(r===n)return r;o(r),n=r}}function dt(e){return e instanceof TypeError&&e.message.startsWith("Relationship context tokenBudget cannot fit ")}function ct(e){let{assembly:t,canonicalId:o,contextOptions:n,rootEvidence:r,summaryOnly:i,rendering:s,missingCount:d,missingReferences:c}=e,l=n.edgeLimit??40,u=Math.min(l,c.length),a=n.tokenBudget,p;for(;;){let g=yn(t,o,{...n,...a===void 0?{}:{tokenBudget:a}},r);p??=g.meta.tokenBudget,a??=p;let f=kn({canonicalId:o,context:g,missingCount:d,missingReferences:c,referenceLimit:u,summaryOnly:i});if(i){if(M(new TextEncoder().encode(me(S(f,!0,s.legacyAliasCounts),s)).byteLength)>p)throw new TypeError("Relationship context tokenBudget cannot fit the rendered summary");return f}if(g.meta.tokenBudget=p,g.meta.usedTokens=st(S(f,!1,s.legacyAliasCounts),s,h=>{g.meta.usedTokens=h}),g.meta.usedTokens<=p)return f;if(u>0){u-=1;continue}let y=a,m=y*p/g.meta.usedTokens;a=Math.min(y-1,Math.max(1,Math.floor(m*.9)))}}function at(e,t){let o=e.contextOptions,n={...e.rendering.global,outputFormat:e.rendering.format},r=["--pm-path",e.pmRoot,"item","deps",e.canonicalId,"--format","context","--output-format",e.rendering.format,"--token-budget"],i=r.length;r.push(String(t));let s=new Set(["--pm-path","--format","--output-format","--token-budget"]),d={format:"context",tokenBudget:t,kind:o.kinds},c=[["--max-depth","maxDepth",o.maxDepth],["--node-limit","nodeLimit",o.nodeLimit],["--edge-limit","edgeLimit",o.edgeLimit],["--direction","direction",o.direction],["--cursor","cursor",o.cursor],["--output-include","outputInclude",n.outputInclude],["--output-limit","outputLimit",n.outputLimit],["--output-budget","outputBudget",n.outputBudget],["--output-session","outputSession",n.outputSession],["--output-cursor","outputCursor",n.outputCursor]];for(let[a,p,g]of c)g!==void 0&&(r.push(a,String(g)),s.add(a),d[p]=g);for(let a of o.kinds??[])r.push("--kind",a),s.add("--kind");let l=[["--summary","summary",e.summaryOnly],["--full","full",e.rendering.commandOptions.full],["--json","json",n.json],["--lean","lean",n.lean],["--output-row-contract","outputRowContract",n.outputRowContract],["--token-accounting","tokenAccounting",n.tokenAccounting],["--no-extensions","noExtensions",n.noExtensions],["--no-pager","noPager",n.noPager]];for(let[a,p,g]of l)g===!0&&(r.push(a),s.add(a),d[p]=!0);let u=Re.find(a=>a.command==="deps");return Reflect.set(d,xe,{canonical_include_modes:[],cli_invocation_observed:!0,explicit_legacy_aliases:Object.values(u.dimensions).flatMap(a=>a.legacy_aliases.flatMap(p=>s.has(p.flag)?[p.flag]:[]))}),Te("deps",d),ne(d.summary===!0,d.full===!0,"--summary"),n.outputInclude=d.outputInclude,{args:r,budgetIndex:i,summaryOnly:d.summary===!0,rendering:{...e.rendering,global:n,commandOptionsOverride:d}}}function vn(e,t,o){let n={...t.rendering,commandOptionsOverride:{...t.rendering.commandOptionsOverride,tokenBudget:o}},r;try{r=ct({...e,contextOptions:{...e.contextOptions,tokenBudget:o},summaryOnly:t.summaryOnly,rootEvidence:t.summaryOnly?[]:e.rootEvidence,rendering:n})}catch(s){if(!dt(s))throw s;return"native_floor"}let i=it(S(r,t.summaryOnly,n.legacyAliasCounts),n);return De(i)?"output_constraints":"fits"}async function wn(e,t){let o=e.contextOptions.tokenBudget??F,n=at(e,o),r=(n.summaryOnly?1:1+Math.min(e.contextOptions.edgeLimit??40,e.missingReferences.length))*(e.assembly.details.reduce((a,p)=>a+p.id.length+p.title.length+p.status.length+(p.type?.length??0),e.assembly.graph.edges().length+e.missingReferences.length)+(n.summaryOnly?[]:e.rootEvidence).reduce((a,p)=>a+p.length,0)),{findContextBudgetRecovery:i}=await import("./context-budget-recovery-5MKOCGY5.js"),s=i({requested:o,initialBudget:F,workUnits:r,probe:a=>vn(e,n,a)}),d=["--pm-path",e.pmRoot,"item","deps",e.canonicalId,"--format","tree","--summary"],c=X(d),l=s.feasible_tokens===null?d:[...n.args];s.feasible_tokens!==null&&(l[n.budgetIndex]=String(s.feasible_tokens));let u=X(l);return ze("Relationship context tokenBudget cannot fit the required rendered packet",{exitCode:I.USAGE,cause:t,context:{code:"invalid_argument_value",field:"tokenBudget",value:String(o),required:s.feasible_tokens===null?"Inspect the compact summary and review the output constraints.":"Retry the preserved context query with --token-budget "+s.feasible_tokens+".",why:"Budget advice is verified against the current query. A minimum is reported only after every smaller positive budget is checked.",examples:[u,c],nextSteps:[u],recovery:{recovery_mode:"compact",suggested_flags:["--token-budget"],token_budget:s,suggested_retry_args:l,suggested_retry:u,next_best_command:c,fallback_candidates:[{source:"relationship_summary",command:c,reason:"Inspect bounded counts separately from context rows."}]}}})}async function In(e){let{pmRoot:t,assembly:o,canonicalId:n,options:r,rootEvidence:i,summaryOnly:s,rendering:d}=e,c=hn(r,o.graph.registry()),l=o.graph.closure(n,{direction:c.direction,...c.kinds===void 0?{}:{kinds:c.kinds},maxDepth:c.maxDepth??3}),u=l.value.filter(h=>o.missingIdSet.has(h.toLowerCase())),a=new Set(u.map(h=>h.toLowerCase())),p=o.graph.registry(),g=c.kinds?new Set(c.kinds.map(h=>p.require(h).kind)):void 0,f=new Set([n,...l.value]),y=[...o.dangling.active,...o.dangling.legacy_terminal].filter(h=>bn({row:h,missingReachableSet:a,packetIds:f,filteredKinds:g,registry:p})),m={pmRoot:t,assembly:o,canonicalId:n,contextOptions:c,rootEvidence:i,summaryOnly:s,rendering:d,missingCount:u.length,missingReferences:y};try{return ct(m)}catch(h){if(h instanceof v&&h.code==="invalid_query_cursor"){let b=at({...m,contextOptions:{...c,cursor:void 0},rendering:{...d,global:{...d.global,outputCursor:void 0}}},c.tokenBudget??F),k=X(b.args);throw new v(h.message,h.exitCode,{...h.context,nextSteps:[...h.context.nextSteps,k],recovery:{suggested_retry:k,suggested_retry_args:b.args}})}throw dt(h)?await wn(m,h):h}}function En(e){let t=[e],o;for(;t.length>0;){let n=t.pop();n.dependencies.length>0&&(o=n,t.push(...n.dependencies))}return o?(o.dependencies.pop(),o.truncated=!0,!0):!1}function Cn(e,t,o,n,r,i,s){let d=r??tn,c=N(o.nodeLimit,"node-limit")??nn,l=N(o.edgeLimit,"edge-limit")??on,u=N(o.tokenBudget,"token-budget")??rn,a={nodeLimit:c,edgeLimit:l,tokenBudget:u,nodes:0,edges:0,estimatedTokens:0,reasons:new Set},p=ot(e,n,new Set,d,t==="graph"?"repeated":i,new Set,a),g=rt(e,n,void 0),f;for(;;){let y=gn(p),m=a.reasons.size===0?void 0:{reasons:[...a.reasons].sort(),limits:{max_depth:d,node_limit:c,edge_limit:l,token_budget:u},estimated_tokens:0,total_node_count:g.node_count,total_edge_count:g.edge_count,omitted_node_count:Math.max(0,g.node_count-y.nodes.length),omitted_edge_count:Math.max(0,g.edge_count-y.edges.length)},h={id:e,format:t,node_count:y.nodes.length,edge_count:y.edges.length,edge_basis:"deduplicated_directed",missing_count:y.missing_ids.length,...m?{truncation:m}:{}};if(f=t==="tree"?{...h,tree:p}:{...h,graph:y},(f.truncation===void 0?M(new TextEncoder().encode(me(S(f,!1,s.legacyAliasCounts),s)).byteLength):st(S(f,!1,s.legacyAliasCounts),s,b=>{f.truncation.estimated_tokens=b}))<=u)return f;if(!En(p))return a.reasons.add("token_budget"),f;a.reasons.add("token_budget")}}function S(e,t,o={}){let n={name:e.format==="tree"?"dependency_tree":e.format==="graph"?"dependency_graph":"relationship_context",restore_with:"--full"},r=e.context?.meta.truncated?[{name:"relationship_context_bounds",restore_with:"--token-budget <n> --node-limit <n> --edge-limit <n> --max-depth <n>"}]:[];return{...e,legacy_alias_counts:o,projection:{mode:t?"summary":"full",declared_field_groups:[n,...r],included_field_groups:t?[]:[n.name]}}}async function Bo(e,t,o){let n=we(process.cwd(),o.path);await Pe(n);let r=sn(t.format),i=nt(t.maxDepth),s=dn(t.collapse);ne(t.summary===!0,t.full===!0,"--summary");let d=t.summary===!0,c=await $e(n),l=be(c,W()),u=await je(n,c.item_format,l.type_to_folder,void 0,c.schema),a=Ee(c.schema),p=new Map(u.map(m=>[m.id.trim().toLowerCase(),un(m)])),g=ae(u,m=>D(m,a));for(let m of[...g.active,...g.legacy_terminal]){let h=p.get(m.holder_id.trim().toLowerCase()),b=m.kind.trim().toLowerCase();h&&!h.dependencies.some(k=>k.id.trim().toLowerCase()===m.target_id.trim().toLowerCase()&&k.kind===b)&&h.dependencies.push({id:m.target_id,kind:b})}if(!p.has(e.trim().toLowerCase()))throw new v(`Item ${e} not found`,I.NOT_FOUND);let f=o.outputFormat??(o.json===!0||o.json===void 0&&o.defaultOutputFormat==="json"?"json":"toon");if(r==="context"){let m=p.get(e.trim().toLowerCase()).id,h=d?[]:await _n(n,m,c,l.type_to_folder),b=w=>D(w,a),k=x(),E=Ze().lookup(n,Je(u,b,k),()=>le(u,b,k));return S(await In({pmRoot:n,assembly:E.assembly,canonicalId:m,options:t,rootEvidence:h,summaryOnly:d,rendering:{format:f,global:o,commandOptions:t,legacyAliasCounts:E.assembly.legacyAliasCounts}}),d,E.assembly.legacyAliasCounts)}let y=Object.fromEntries(Object.entries(le(u,m=>D(m,a)).legacyAliasCounts));return d?S({id:e,format:r,...rt(e,p,i)},!0,y):S(Cn(e,r,t,p,i,s,{format:f,global:o,commandOptions:t,legacyAliasCounts:y}),!1,y)}export{re as a,ft as b,P as c,Y as d,Ge as e,mt as f,gt as g,ht as h,kt as i,Wn as j,Xn as k,St as l,x as m,Kn as n,J as o,Un as p,Tt as q,jn as r,U as s,Ot as t,Bt as u,ae as v,Nt as w,eo as x,le as y,Je as z,ue as A,Ze as B,io as C,F as D,et as E,N as F,nt as G,cn as H,an as I,Bo as J};
|
|
2
|
+
//# sourceMappingURL=chunk-PAT6QF63.js.map
|