@unbrained/pm-cli 2026.10.15 → 2026.10.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/.agents/skills/pm-developer/references/COMMAND_PLAYBOOK.md +1 -1
  2. package/.claude-plugin/marketplace.json +1 -1
  3. package/AGENTS.md +1 -0
  4. package/CHANGELOG.md +20 -0
  5. package/dist/cli/extension-command-options.d.ts +3 -1
  6. package/dist/cli/extension-command-options.js +1 -1
  7. package/dist/cli/help-content.js +2 -2
  8. package/dist/cli/register-mutation.js +2 -2
  9. package/dist/cli/register-operations.js +1 -1
  10. package/dist/cli/register-structured-mutation.d.ts +0 -5
  11. package/dist/cli/register-structured-mutation.js +1 -1
  12. package/dist/cli/runtime/invocation-options.js +1 -1
  13. package/dist/cli-bundle/bundle-manifest.json +1 -1
  14. package/dist/cli-bundle/chunks/{chunk-7VHINXZP.js → chunk-3QKI3XNX.js} +2 -2
  15. package/dist/cli-bundle/chunks/chunk-4PNPDT2N.js +236 -0
  16. package/dist/cli-bundle/chunks/{chunk-WBBW3WQX.js → chunk-6ZDKKOKM.js} +28 -28
  17. package/dist/cli-bundle/chunks/{chunk-LNKLQYBG.js → chunk-B5QVGCZX.js} +2 -2
  18. package/dist/cli-bundle/chunks/{chunk-52EZH2QQ.js → chunk-EA2CG7UM.js} +2 -2
  19. package/dist/cli-bundle/chunks/chunk-HY7FQ7QX.js +2 -0
  20. package/dist/cli-bundle/chunks/{chunk-NC3QVGDD.js → chunk-J4LPQCET.js} +2 -2
  21. package/dist/cli-bundle/chunks/{chunk-JGKTOBVB.js → chunk-JS3B2M4D.js} +4 -4
  22. package/dist/cli-bundle/chunks/chunk-O4YBC3OM.js +30 -0
  23. package/dist/cli-bundle/chunks/{chunk-N56CAQBU.js → chunk-OZCSXX4D.js} +52 -52
  24. package/dist/cli-bundle/chunks/chunk-VMCSTFSO.js +2 -0
  25. package/dist/cli-bundle/chunks/chunk-W3KZ22DW.js +2 -0
  26. package/dist/cli-bundle/chunks/{chunk-RJ5N44WY.js → chunk-X2ONXFBP.js} +2 -2
  27. package/dist/cli-bundle/chunks/{chunk-7OEGNA4X.js → chunk-X53HM753.js} +2 -2
  28. package/dist/cli-bundle/chunks/{register-list-query-FKKFQ66D.js → register-list-query-RU3QZSAQ.js} +2 -2
  29. package/dist/cli-bundle/chunks/register-mutation-EQYMT32A.js +20 -0
  30. package/dist/cli-bundle/chunks/{register-operations-GEQ2H7PS.js → register-operations-VXBGE4XI.js} +2 -2
  31. package/dist/cli-bundle/chunks/{register-setup-PSJTQBBO.js → register-setup-UUDEGFRO.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/{chunk-TYLG5VEB.js → chunk-2IOHHNRT.js} +2 -2
  33. package/dist/cli-bundle/focused-chunks/{chunk-PDYE7QDX.js → chunk-5JEFDEL3.js} +30 -30
  34. package/dist/cli-bundle/focused-chunks/{chunk-3RNUMVK4.js → chunk-AH6NX6GM.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-N6FUKTZS.js → chunk-E33QA7PK.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/{chunk-4KQFMOM7.js → chunk-FTUZ3JF2.js} +5 -5
  37. package/dist/cli-bundle/focused-chunks/{chunk-5OO54BIV.js → chunk-JXR6UKFM.js} +3 -3
  38. package/dist/cli-bundle/focused-chunks/chunk-LDKX4KYJ.js +2 -0
  39. package/dist/cli-bundle/focused-chunks/{chunk-H3P77KVU.js → chunk-MBQF6HT6.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/{chunk-5TBAVZDR.js → chunk-NZO7GOXD.js} +14 -14
  41. package/dist/cli-bundle/focused-chunks/{chunk-52I2SNKJ.js → chunk-PYC7BF6Z.js} +2 -2
  42. package/dist/cli-bundle/focused-chunks/{chunk-THYQR3ON.js → chunk-QOSVJDOO.js} +59 -59
  43. package/dist/cli-bundle/focused-chunks/{chunk-FQKPOZKS.js → chunk-RBLSY6ML.js} +2 -2
  44. package/dist/cli-bundle/focused-chunks/{chunk-Q4VNCTR2.js → chunk-RHTH5ILM.js} +2 -2
  45. package/dist/cli-bundle/focused-chunks/{chunk-5KRACGBK.js → chunk-SIGIGZCG.js} +3 -3
  46. package/dist/cli-bundle/focused-chunks/chunk-TRFVAWF2.js +26 -0
  47. package/dist/cli-bundle/focused-chunks/{chunk-KIIFVULU.js → chunk-UNTQE37U.js} +2 -2
  48. package/dist/cli-bundle/main.js +27 -27
  49. package/dist/cli-bundle/sdk-authoring.js +1 -1
  50. package/dist/cli-bundle/sdk-contracts.js +2 -2
  51. package/dist/cli-bundle/sdk-core.js +23 -23
  52. package/dist/cli-bundle/sdk-governance.js +1 -1
  53. package/dist/cli-bundle/sdk-graph.js +1 -1
  54. package/dist/cli-bundle/sdk-merge.js +54 -54
  55. package/dist/cli-bundle/sdk-query.js +1 -1
  56. package/dist/cli-bundle/sdk-runtime.js +1 -1
  57. package/dist/cli-bundle/sdk-testing.js +1 -1
  58. package/dist/cli-bundle/sdk.js +7 -7
  59. package/dist/core/extensions/extension-types.d.ts +15 -0
  60. package/dist/core/extensions/extension-types.js +1 -1
  61. package/dist/core/extensions/flag-value-types.d.ts +16 -0
  62. package/dist/core/extensions/flag-value-types.js +1 -1
  63. package/dist/core/extensions/registration-contracts.js +1 -1
  64. package/dist/core/item/item-format.js +3 -3
  65. package/dist/core/output/mutation-projection.d.ts +0 -21
  66. package/dist/core/output/mutation-projection.js +1 -1
  67. package/dist/core/schema/type-workflows.d.ts +1 -1
  68. package/dist/core/schema/type-workflows.js +1 -1
  69. package/dist/core/shared/text-normalization.d.ts +2 -0
  70. package/dist/core/shared/text-normalization.js +1 -1
  71. package/dist/core/store/item-mutation-precondition.d.ts +11 -0
  72. package/dist/core/store/item-mutation-precondition.js +2 -0
  73. package/dist/core/store/item-store.js +1 -1
  74. package/dist/mcp/server.js +1 -1
  75. package/dist/mcp/tool-definitions.js +1 -1
  76. package/dist/sdk/cli-contracts/agent-output-contracts.js +1 -1
  77. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  78. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
  79. package/dist/sdk/cli-contracts/registration-helpers.d.ts +1 -1
  80. package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
  81. package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
  82. package/dist/sdk/cli-contracts/tool-schema.js +1 -1
  83. package/dist/sdk/context-intent-contracts.js +1 -1
  84. package/dist/sdk/core.d.ts +2 -1
  85. package/dist/sdk/core.js +1 -1
  86. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
  87. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  88. package/dist/sdk/guide-topics.js +1 -1
  89. package/dist/sdk/index.d.ts +2 -1
  90. package/dist/sdk/index.js +1 -1
  91. package/dist/sdk/item-transaction.d.ts +72 -9
  92. package/dist/sdk/item-transaction.js +1 -1
  93. package/dist/sdk/lifecycle/claim.d.ts +15 -1
  94. package/dist/sdk/lifecycle/claim.js +1 -1
  95. package/dist/sdk/lifecycle/close.d.ts +2 -8
  96. package/dist/sdk/lifecycle/close.js +1 -1
  97. package/dist/sdk/lifecycle/core-item-fields.d.ts +6 -0
  98. package/dist/sdk/lifecycle/core-item-fields.js +2 -0
  99. package/dist/sdk/lifecycle/mcp-actions.js +1 -1
  100. package/dist/sdk/lifecycle/mutation-option-validation.d.ts +2 -0
  101. package/dist/sdk/lifecycle/mutation-option-validation.js +2 -0
  102. package/dist/sdk/lifecycle/release-handoff.d.ts +12 -0
  103. package/dist/sdk/lifecycle/release-handoff.js +2 -0
  104. package/dist/sdk/lifecycle/structured-mutation-plan.d.ts +33 -0
  105. package/dist/sdk/lifecycle/structured-mutation-plan.js +2 -0
  106. package/dist/sdk/lifecycle/task-composition.d.ts +2 -2
  107. package/dist/sdk/lifecycle/task-composition.js +1 -1
  108. package/dist/sdk/lifecycle/update.d.ts +3 -11
  109. package/dist/sdk/lifecycle/update.js +1 -1
  110. package/dist/sdk/lifecycle/workflow-transition.d.ts +13 -0
  111. package/dist/sdk/lifecycle/workflow-transition.js +2 -0
  112. package/dist/sdk/lifecycle-policy.d.ts +12 -2
  113. package/dist/sdk/lifecycle-policy.js +1 -1
  114. package/dist/sdk/public-surface.json +1 -1
  115. package/dist/sdk/read-output-budget.js +1 -1
  116. package/dist/sdk/runtime-input.js +1 -1
  117. package/dist/sdk/runtime-primitives.d.ts +1 -1
  118. package/dist/sdk/runtime-primitives.js +1 -1
  119. package/dist/sdk/runtime.d.ts +8 -8
  120. package/dist/sdk/runtime.js +1 -1
  121. package/dist/sdk/structured-mutations.d.ts +52 -1
  122. package/dist/sdk/structured-mutations.js +1 -1
  123. package/dist/sdk/workspace-transaction.js +2 -2
  124. package/docs/AGENT_GUIDE.md +33 -4
  125. package/docs/CLOSE_EVIDENCE_RECOVERY.md +16 -7
  126. package/docs/COMMANDS.md +85 -10
  127. package/docs/ECOSYSTEM_PLANNING_REVIEW.md +5 -1
  128. package/docs/EXTENSIONS.md +1 -1
  129. package/docs/SDK.md +114 -2
  130. package/docs/TESTING.md +15 -0
  131. package/docs/generated/FLAG_LEXICON_BUDGETS.md +1 -1
  132. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +16 -3
  133. package/marketplace.json +1 -1
  134. package/package.json +2 -1
  135. package/packages/pm-beads/package.json +1 -1
  136. package/packages/pm-calendar/package.json +1 -1
  137. package/packages/pm-command-kit/package.json +1 -1
  138. package/packages/pm-digital-twin/package.json +1 -1
  139. package/packages/pm-governance-audit/package.json +1 -1
  140. package/packages/pm-guide-shell/package.json +1 -1
  141. package/packages/pm-kanban/package.json +1 -1
  142. package/packages/pm-lifecycle-hooks/package.json +1 -1
  143. package/packages/pm-linked-test-adapters/package.json +1 -1
  144. package/packages/pm-search-advanced/package.json +1 -1
  145. package/packages/pm-templates/package.json +1 -1
  146. package/packages/pm-todos/package.json +1 -1
  147. package/packages/pm-vcs/package.json +1 -1
  148. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  149. package/plugins/pm-claude/package.json +1 -1
  150. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  151. package/plugins/pm-codex/package.json +1 -1
  152. package/plugins/pm-codex/plugin.json +1 -1
  153. package/runtime-dependencies.json +1 -1
  154. package/dist/cli-bundle/chunks/chunk-EMEEHV2Y.js +0 -2
  155. package/dist/cli-bundle/chunks/chunk-JSUJWIHQ.js +0 -30
  156. package/dist/cli-bundle/chunks/chunk-VIMQCFCK.js +0 -2
  157. package/dist/cli-bundle/chunks/chunk-X2H6UR26.js +0 -236
  158. package/dist/cli-bundle/chunks/register-mutation-EWMMVZJB.js +0 -20
  159. package/dist/cli-bundle/focused-chunks/chunk-HTA3TNC3.js +0 -26
  160. package/dist/cli-bundle/focused-chunks/chunk-JKBH7YGX.js +0 -2
  161. package/docs/ecosystem-review-2026-09-28.json +0 -1
@@ -1,4 +1,4 @@
1
- import{$ as W,$d as Io,$e as Xt,$g as Uo,$h as qe,Ad as qt,Ah as Ko,Bd as wo,Bh as zo,Cg as Ao,Ch as Sr,Ci as F,Cj as ke,Df as tn,Dh as Vo,Dm as _s,Eg as Oo,Eh as qo,Ei as ss,Em as ys,Fh as Tr,G as yr,Gd as ko,Gh as rn,Gi as as,Hg as Q,Hh as Ve,Ia as je,Ig as R,Ii as ln,Im as Or,Jg as $,Ji as cs,Kg as Ge,Li as Ar,Md as Wt,Mi as un,Na as br,Nh as on,Oa as Kt,Ob as wr,Od as Eo,Og as Lo,Oh as Wo,Pa as _o,Pg as Fo,Ph as Yo,Q as ho,Qg as Mo,R as _,Rh as Xo,Sd as kr,Sl as gs,T as g,Tf as Cr,Th as sn,Tm as hn,U as vr,Uh as Jo,Um as gn,V as Gt,Va as L,Ve as To,Vh as Qo,Vj as ps,W as Pe,Wa as zt,X as ce,Xa as yo,Xc as bo,Xg as No,Xh as Rr,Y as ye,Yf as U,Yg as $o,Zg as Po,Zh as Zo,Zl as mn,_g as jo,_i as ds,aa as go,af as Se,ai as es,bb as O,bf as de,bi as ts,ci as an,dh as Ke,di as cn,ef as Ro,ei as xr,ff as He,fg as Do,fi as le,gi as Dr,hb as Ue,hc as vo,hi as ns,hj as ls,ig as be,ii as dn,ja as K,ji as De,ke as Co,ki as Z,le as So,lf as x,li as rs,lj as us,mh as Ho,mi as is,ne as Er,nf as Ir,nj as We,nl as hs,of as Jt,oo as me,p as ne,pd as D,pf as C,po as pe,qf as xo,qj as ue,rf as ve,rj as Te,sf as Be,sg as J,sj as fs,sm as pn,tb as k,th as we,tj as ms,u as Bt,ug as nn,uh as Bo,uj as fe,vb as re,vf as Qt,vh as ze,vj as fn,xf as Zt,xi as os,yd as Vt,ye as Yt,zf as en,zh as Go}from"./chunk-X2H6UR26.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]="59842825-3a81-53f4-845d-db2257ec6286")}catch{}})();async function Lr(e){let t=O(process.cwd(),e);await U(t);let n=await F(t),r=L(n,D());return{pmRoot:t,settings:n,typeRegistry:r}}async function _n(e,t,n,r){Ue(e,Ar(t));let i=await ue(e,t,n.id_prefix,n.item_format,r);if(i)return{id:i.id,historyPath:Ue(e,i.id),located:i};let o=un(t,n.id_prefix),s=Ar(t),a=o===s?[o]:[o,s];for(let c of a){let d=Ue(e,c);if(await Gt(d))return{id:c,historyPath:d,located:null}}throw new g(`Item ${t} not found`,_.NOT_FOUND)}(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]="eb2e6046-156c-56ee-a03a-ecaa1cccfb45")}catch{}})();function sw(e,t){let n=le(e),r=e.length>0?e[e.length-1].after_hash:Jo(),i=t===void 0||n.item_hash_version===void 0?void 0:sn(t,n.item_hash_version,be(e.at(-1)?.hash_algorithm)),o=t===void 0?void 0:i===void 0?Xo(t):i[Math.max(0,i.indexOf(r))],s=o===void 0?void 0:o===r,a=[...n.errors];return s===!1&&a.push("verify_failed:current_item_hash_mismatch"),{ok:a.length===0,entries:e.length,errors:a,latest_after_hash:e.length>0?e[e.length-1].after_hash:void 0,current_item_hash:o,current_matches_latest:s}}async function aw(e,t,n={}){let r=O(n.cwd??process.cwd(),n.pmRoot);await U(r);let i=await F(r),o=L(i,D()),s=await _n(r,e,i,o.type_to_folder),a=await ze(s.historyPath,s.id);if(a.length===0)throw new g(`No history exists for ${s.id}; point-in-time reads are unavailable.`,_.NOT_FOUND);let c=as(t,a),d=cs(ln(a,c.historyIndex),c),l=ts(d,{schema:i.schema});if(l.metadata.id!==s.id)throw new g(`History target resolved to item ${l.metadata.id}, expected ${s.id}.`,_.GENERIC_FAILURE);let u=a[c.historyIndex],f=ss(a,!0);return{document:l,reconstructed:!0,as_of_version:f===null?null:f+c.historyIndex+1,as_of_timestamp:u.ts,target:c,history_length:a.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]="403706c5-987d-5db1-95d2-b0eaded98e92")}catch{}})();function ul(e,t,n,r,i,o){if(e.seen.has(t))return"skip";if(e.cursorFound&&e.affected.length>=o)return"truncate";e.seen.add(t),e.parents.set(t,n.id);let s=n.depth+1;return e.queue.push({id:t,depth:s}),e.cursorFound?(e.affected.push({id:t,distance:s,path:yl(r,t,e.parents)}),"continue"):(e.cursorFound=t===i,"skip")}function bs(e,t,n,r){let i=Se("graph impact",{root:e,direction:n,kinds:[...t.kinds??[]].sort(),max_depth:Number.isFinite(r)?r:"unbounded"});return{fingerprint:i,after:t.after===void 0?void 0:Ro(t.after,i)}}function Ye(e,t,n){e.get(t).add(n)}function ft(e){return new Map(e.map(t=>[t,new Set]))}function ws(e){for(let t of e)t.sort();return e.sort((t,n)=>n.length-t.length||t[0].localeCompare(n[0]))}function yn(e){if(Array.isArray(e))return e.map(n=>yn(n));if(e===null||typeof e!="object")return e;let t=e.toJSON;return typeof t=="function"?yn(t.call(e)):Object.fromEntries(Object.entries(e).sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>[n,yn(r)]))}function vs(e){return JSON.stringify(yn(e))}function fl(e,t,n,r){let i=[{id:e,expanded:!1}];for(;i.length>0;){let o=i.pop();if(o.expanded){r.push(o.id);continue}if(n.has(o.id))continue;n.add(o.id),i.push({id:o.id,expanded:!0});let s=[...t.get(o.id)].sort().reverse();for(let a of s)n.has(a)||i.push({id:a,expanded:!1})}}function ml(e,t){let n=new Set,r=[];for(let i of e)n.has(i)||fl(i,t,n,r);return r}function pl(e,t){let n=new Set,r=[];for(let i of[...e].reverse()){if(n.has(i))continue;let o=[],s=[i];for(n.add(i);s.length>0;){let a=s.pop();o.push(a);for(let c of t.get(a))n.has(c)||(n.add(c),s.push(c))}r.push(o)}return ws(r)}function ks(e,t){let n=ft(e);for(let[r,i]of t)for(let o of i)Ye(n,o,r);return pl(ml(e,t),n)}function hl(e,t){let n=ft(e.nodes());for(let r of e.edges()){let i=t.require(r.kind);if(!i.ordering)continue;let o=(i.precedence??"source_before_target")==="source_before_target";Ye(n,o?r.source:r.target,o?r.target:r.source)}return n}function gl(e,t){let n=new Map(e.map(o=>[o,0]));for(let o of t.values())for(let s of o)n.set(s,n.get(s)+1);let r=e.filter(o=>n.get(o)===0).sort(),i=[];for(;r.length>0;){i.push(r);let o=[];for(let s of r)for(let a of t.get(s)){let c=n.get(a)-1;n.set(a,c),c===0&&o.push(a)}r=o.sort()}return i}function _l(e,t){let n=new Map(e.map(s=>[s,0])),r=new Map;for(let s of e)for(let a of t.get(s)){if(!n.has(a))continue;let c=n.get(s)+1,d=r.get(a);(c>n.get(a)||c===n.get(a)&&(d===void 0||s.localeCompare(d)<0))&&(n.set(a,c),r.set(a,s))}let i=[...e].sort((s,a)=>n.get(a)-n.get(s)||s.localeCompare(a))[0],o=i===void 0?[]:[i];for(;o[0]!==void 0&&r.has(o[0]);)o.unshift(r.get(o[0]));return{depth:Object.fromEntries(n),path:o}}function yl(e,t,n){let r=[t],i=t;for(;i!==e;)i=n.get(i),r.push(i);return r.reverse()}function bn(e,t={}){let n=t.registry??ne(),r=[...e.nodes()],i=hl(e,n),o=gl(r,i),s=o.flat(),a=s.length===r.length,c=a?[]:ks(r,i).filter(l=>l.length>1||i.get(l[0]).has(l[0])),d=_l(s,i);return{exact:!0,acyclic:a,order:s,layers:o,frontier:o[0]??[],depth:d.depth,criticalPath:d.path,criticalPathLength:Math.max(0,d.path.length-1),cycles:c,provenance:{algorithm:"kahn-longest-path",edgeFamily:"ordering"}}}function vl(e,t,n){let r=ft(e.nodes()),i=n===void 0?void 0:new Set(n.map(s=>e.registry().require(s).kind)),o=e.edges();for(let s of o){let a=e.registry().require(s.kind);i!==void 0&&!i.has(s.kind)&&(a.inverse===void 0||!i.has(a.inverse))||Ye(r,t==="incoming"?s.target:s.source,t==="incoming"?s.source:s.target)}return{adjacency:r,inspectedEdges:o.length}}function bl(e,t,n,r,i,o){let s=vn(e,t,{...n,after:void 0,direction:"incoming",limit:void 0}),a=vn(e,t,{...n,after:void 0,direction:"outgoing",limit:void 0}),c=new Map,d=[...s.affected,...a.affected].sort((m,h)=>m.distance-h.distance||m.id.localeCompare(h.id)||m.path.join("\0").localeCompare(h.path.join("\0")));for(let m of d)c.has(m.id)||c.set(m.id,m);let l=[...c.values()].sort((m,h)=>m.distance-h.distance||m.id.localeCompare(h.id)),u=r===void 0||r===t?-1:l.findIndex(m=>m.id===r);if(r!==void 0&&r!==t&&u<0)throw new TypeError(`Unknown impact cursor item: ${r}`);let f=l.slice(u+1,u+1+i),p=u+1+f.length<l.length;return{root:t,affected:f,exact:!0,truncated:s.truncated||a.truncated||p,...p?{nextCursor:de(o,f.at(-1)?.id??t)}:{},cost:{visitedNodes:s.cost.visitedNodes+a.cost.visitedNodes,inspectedEdges:s.cost.inspectedEdges+a.cost.inspectedEdges}}}function wl(e,t,n){let r=n.direction,i=n.maxDepth??Number.POSITIVE_INFINITY,o=n.limit??Number.POSITIVE_INFINITY,{fingerprint:s,after:a}=bs(t,n,r,i),{adjacency:c,inspectedEdges:d}=vl(e,r,n.kinds),l={queue:[{id:t,depth:0}],seen:new Set([t]),parents:new Map,affected:[],cursorFound:a===void 0||a===t},u=0,f=!1,p=!1;e:for(let m=0;m<l.queue.length;m+=1){n.signal?.throwIfAborted();let h=l.queue[m];u+=1;let v=[...c.get(h.id)].sort();if(h.depth>=i){v.some(b=>!l.seen.has(b))&&(f=!0);continue}for(let b of v)if(ul(l,b,h,t,a,o)==="truncate"){f=!0,p=!0;break e}}if(!l.cursorFound)throw new TypeError(`Unknown impact cursor item: ${a}`);return{root:t,affected:l.affected,exact:!0,truncated:f,...p?{nextCursor:de(s,l.affected.at(-1)?.id??t)}:{},cost:{visitedNodes:u,inspectedEdges:d}}}function vn(e,t,n={}){let r=n.direction??"outgoing";if(r!=="both")return wl(e,t,{...n,direction:r});let i=n.maxDepth??Number.POSITIVE_INFINITY,o=n.limit??Number.POSITIVE_INFINITY,{fingerprint:s,after:a}=bs(t,n,r,i);return bl(e,t,n,a,o,s)}function Es(e){let t=[...e.nodes()],n=ft(t),r=ft(t);for(let c of e.edges())Ye(n,c.source,c.target),Ye(n,c.target,c.source),Ye(r,c.source,c.target);let i=[],o=new Set;for(let c of t){if(o.has(c))continue;let d=[],l=[c];for(o.add(c);l.length>0;){let u=l.pop();d.push(u);for(let f of n.get(u))o.has(f)||(o.add(f),l.push(f))}i.push(d)}let s=t.map(c=>({id:c,degree:n.get(c).size})),a=Math.max(0,...s.map(({degree:c})=>c));return{components:ws(i),stronglyConnected:ks(t,r),orphans:s.filter(({degree:c})=>c===0).map(({id:c})=>c),hubs:s.filter(({degree:c})=>c>0&&c===a),exact:!0,provenance:{algorithm:"component-degree",edgeFamily:"all"}}}function uw(e,t){let n=new Map(e.edges.map(i=>[vs(i),i])),r=new Map(t.edges.map(i=>[vs(i),i]));return{fromVersion:e.version,toVersion:t.version,added:[...r].filter(([i])=>!n.has(i)).map(([,i])=>i),removed:[...n].filter(([i])=>!r.has(i)).map(([,i])=>i),unchangedCount:[...n.keys()].filter(i=>r.has(i)).length,exact:!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]="1745a409-0f91-5f5a-8d2a-e5e61ff667a0")}catch{}})();function Re(e,t){return(t===void 0?void 0:yo(e,t))?.execution_role??_o[e.trim().toLowerCase()]??"agent"}var Mr="blocked_by",Is="blocks",kl=Object.freeze([Mr,Is]),Fr="no-active-blocker";function A(e){return e.trim().toLowerCase()}function wn(e,t){return t?`external:${e}`:`local:${A(e)}`}function Ae(e){let t=new Map,n=typeof e.blocked_by=="string"?e.blocked_by.trim():"";if(n.length>0&&A(n)!==Fr){let r=me(n);t.set(wn(n,r),r?n:A(n))}for(let r of e.dependencies??[]){let i=typeof r.id=="string"?r.id.trim():"";if(r.kind===Mr&&i.length>0&&A(i)!==Fr){let o=me(i)||pe(r.source_kind);t.set(wn(i,o),o?i:A(i))}}return[...t.values()].sort((r,i)=>r.localeCompare(i))}function kn(e){let t=new Map;for(let n of e){let r=A(n.id);r.length!==0&&t.set(r,new Set(Ae(n)))}for(let n of e){let r=A(n.id);if(r.length!==0)for(let i of n.dependencies??[]){let o=i.kind===Is&&typeof i.id=="string"?A(i.id):"";if(o.length===0||o===Fr)continue;let s=t.get(o)??new Set;s.add(r),t.set(o,s)}}return new Map([...t].map(([n,r])=>[n,[...r].sort((i,o)=>i.localeCompare(o))]))}function Cs(e,t){let n=A(e.id);return n.length>0?kn(t).get(n)??Ae(e):Ae(e)}function Nr(e,t,n,r){let i=e,o=typeof i.id=="string"?r?.get(A(i.id))??Cs(i,[...t.values()]):Ae(e),s=new Set((e.dependencies??[]).filter(a=>a.kind===Mr&&pe(a.source_kind)&&typeof a.id=="string"&&a.id.trim().length>0).map(a=>wn(a.id.trim(),!0)));return o.map(a=>{if(me(a)||s.has(wn(a,!0)))return{id:a,title:null,status:null,resolved:!1,external:!0,...typeof e.updated_at=="string"?{blocked_since:e.updated_at}:{},resolver:null};let c=t.get(A(a));return c?{id:a,title:c.title,status:c.status,resolved:$(c.status,n)}:{id:a,title:null,status:null,resolved:!1}})}function En(e,t,n){return Nr(e,t,n)}function mt(e,t){let n=new Map(e.map(s=>[A(s.id),s])),r=kn(e),i=new Set([...Ss(t),...t.blocked_statuses]),o=new Set;for(let s of e){let a=R(s.status,t);i.has(a)&&(t.blocked_statuses.has(a)||Nr(s,n,t,r).some(c=>!c.resolved))&&o.add(A(s.id))}return o}function $r(e,t,n={},r){let i=[...e.ready,...e.decisions,...e.gates];n.includeContainers===!0&&i.push(...e.containers.filter(s=>s.open_blockers.length===0&&!t.blocked_statuses.has(R(s.item.status,t))));let o={ready:[],decisions:[],gates:[]};for(let s of i){let a=Re(s.item.type,r);a==="human"&&n.includeDecisions!==!0?o.decisions.push(s):a==="gate"&&n.includeGates!==!0?o.gates.push(s):o.ready.push(s)}return o}function Ss(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function El(e,t,n){let r=[A(e)],i=new Set;for(;r.length>0;){let o=r.pop();if(!i.has(o)){i.add(o);for(let s of t.get(o)??[]){if(!$(s.status,n))return!0;r.push(A(s.id))}}}return!1}function Il(e){let t=new Map,n=new Map,r=new Map,i=kn(e);for(let o of e){t.set(A(o.id),o);let s=typeof o.parent=="string"?o.parent.trim():"";if(s.length>0){let a=A(s),c=n.get(a)??[];c.push(o),n.set(a,c)}for(let a of i.get(A(o.id))){let c=A(a),d=r.get(c)??[];d.push(o.id),r.set(c,d)}}return{itemsById:t,childrenByParent:n,blockedByReverse:r,blockerIdsByItem:i}}function pt(e,t,n,r){let{itemsById:i,childrenByParent:o,blockedByReverse:s,blockerIdsByItem:a}=Il(t),c=new Set([...Ss(n),...n.blocked_statuses]),d=new Set(t.filter(v=>!$(v.status,n)).map(v=>A(v.id))),l=[],u=[],f=[],p=[],m=[],h=0;for(let v of e){if(!c.has(R(v.status,n)))continue;h+=1;let b=Nr(v,i,n,a).filter(S=>!S.resolved),y=(s.get(A(v.id))??[]).filter(S=>d.has(A(S))).sort((S,P)=>S.localeCompare(P)),w={item:v,open_blockers:b,unblocks:y};if(El(v.id,o,n)){f.push(w);continue}let E=n.blocked_statuses.has(R(v.status,n));if(b.length===0&&!E){let S=Re(v.type,r);S==="human"?p.push(w):S==="gate"?m.push(w):l.push(w)}else u.push(w)}return{ready:l,blocked:u,containers:f,decisions:p,gates:m,active_count:h,container_count:f.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]="738a98bc-eaf0-578d-88e3-1c5f83c8894b")}catch{}})();function ie(e,t="--limit"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0)throw new g(`${t} must be a non-negative integer`,_.USAGE);return r}function In(e,t="--priority"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0||r>4)throw new g(`${t} filter must be 0..4`,_.USAGE);return r}function Ts(e,t,n="--type"){if(e===void 0)return;let r=zt(e,t);if(!r)throw new g(`${n} filter must be one of ${t.types.join("|")}`,_.USAGE);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="75ecca0c-fac8-5a9b-9043-c65731daad4a")}catch{}})();function Pr(e,t){if(e===void 0)return;let n=[],r="";for(let s=0;s<e.length;s+=1){let a=e[s];if(a==="\\"){let c=e[s+1];if(c===","||c==="\\"){r+=c,s+=1;continue}r+=a;continue}if(a===","){n.push(r),r="";continue}r+=a}n.push(r);let i=n.map(s=>s.trim());if(i.some(s=>s.length===0))throw new g(`${t.label} requires at least one non-empty value`,_.USAGE);let o=i.map(s=>t.normalize?.(s)??s);return[...new Set(o)]}function ht(e,t){let n=Pr(e,t);return n===void 0?void 0:new Set(n)}function Rs(e,t,n="--type"){let r=Pr(e,{label:n});if(r===void 0)return;let i=r.map(o=>{let s=zt(o,t);if(!s)throw new g(`${n} filter token "${o}" must be one of ${t.types.join("|")}`,_.USAGE);return s});return new Set(i)}function xs(e,t="--priority"){let n=Pr(e,{label:t});if(n!==void 0)return new Set(n.map(r=>In(r,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]="6c580b70-76eb-51db-8587-99b73dd20875")}catch{}})();var Cl="global",Ow="external",Sl=["open","closed","unknown"],gt=new Map,Tl=240,Rl=2048;function Ds(e,t,n){return(e?.trim()||t).slice(0,n)}function xl(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return typeof t.status=="string"&&(t.title==null||typeof t.title=="string")&&(t.source==null||typeof t.source=="string")&&(t.checkedAt==null||typeof t.checkedAt=="string")}function Lw(e){let t=e.name.trim();if(t.length===0)throw new Error("External dependency resolver name must not be empty");if(gt.has(t))throw new Error(`External dependency resolver already registered: ${t}`);let n={name:t,supports:r=>e.supports(r),resolve:r=>e.resolve(r)};return gt.set(t,n),()=>{gt.get(t)===n&&gt.delete(t)}}async function Fw(e,t={}){let n=e.trim();if(!me(n))return null;let r=[...gt.values()].filter(o=>{try{return o.supports(n)}catch{return!1}}),i=await Promise.allSettled(r.map(o=>Promise.resolve().then(()=>o.resolve(n))));for(let[o,s]of i.entries()){if(s.status!=="fulfilled"||!xl(s.value))continue;let a=r[o],c=s.value,d=Sl.includes(c.status)?c.status:"unknown",l=Ds(c.title,"",Tl),u=Ds(c.source,n,Rl),f=Date.parse(c.checkedAt?.trim()??""),p=Number.isFinite(f)?new Date(f).toISOString():t.now?.()??new Date().toISOString();return{id:n,status:d,resolved:d==="closed",title:l.length>0?l:null,source:u,checked_at:p,resolver:a.name}}return null}function Mw(e){let t=e?.trim();if(t)return pe(t)?Cl:t}function Nw(e,t,n){return Dl(e,t,n)}function Dl(e,t,n){let r=e.trim();return pe(n)||me(r)?r:un(r,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]="283dfa35-9a8e-524c-b6e2-d433d51215ca")}catch{}})();function z(){let e=ne();for(let t of D()?.relationship_kinds??[])for(let n of t.definitions)e.register(n);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 _t(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return t.length>0?t:void 0}function Cn(e){return[e.parent_id,e.child_id,e.source,e.kind,e.holder_id,e.target_id??""].join("\0")}function Al(e,t){let n=new Set,r=[];for(let i of[...e].sort()){if(n.has(i))continue;n.add(i);let o=[{nodeId:i,children:[...t.get(i)??[]].sort(),nextChild:0}];for(;o.length>0;){let s=o.at(-1),a=s.children[s.nextChild];a===void 0?(r.push(s.nodeId),o.pop()):(s.nextChild+=1,n.has(a)||(n.add(a),o.push({nodeId:a,children:[...t.get(a)??[]].sort(),nextChild:0})))}}return r}function Ol(e,t){let n=[...e].sort(),r=Al(n,t),i=new Set,o=Ll(n,t),s=[];for(let a of r.reverse()){if(i.has(a))continue;let c=Fl(a,o,i);(c.length>1||t.get(c[0])?.has(c[0]))&&s.push(c)}return s.sort((a,c)=>a.join("\0").localeCompare(c.join("\0")))}function Ll(e,t){let n=new Map(e.map(r=>[r,new Set]));for(let[r,i]of t)for(let o of i)n.get(o)?.add(r);return n}function Fl(e,t,n){let r=[],i=[e];for(n.add(e);i.length>0;){let o=i.pop();r.push(o);for(let s of[...t.get(o)].sort())n.has(s)||(n.add(s),i.push(s))}return r.sort()}function As(e){let t=new Map;for(let n of e){let r=_t(n?.id);r&&!t.has(r)&&t.set(r,n)}return t}function Ml(e,t,n){let r=_t(t.parent);if(!(!r||!n.has(r)))return{parent_id:r,child_id:e,source:"scalar_parent",kind:"parent",holder_id:e,child_cardinality:"one"}}function Nl(e,t,n,r){let i=_t(t?.id),o=r.resolve(t?.kind);if(!i||!n.has(i)||!o?.hierarchy)return;let s=o.hierarchyDirection==="source_parent";return{parent_id:s?e:i,child_id:s?i:e,source:"dependency",kind:o.kind,holder_id:e,target_id:i,child_cardinality:s?o.incoming:o.outgoing}}function Os(e,t){let n=new Map;for(let[r,i]of e){let o=Ml(r,i,e);o&&n.set(Cn(o),o);for(let s of i.dependencies??[]){let a=Nl(r,s,e,t);a&&n.set(Cn(a),a)}}return[...n.values()].sort((r,i)=>Cn(r).localeCompare(Cn(i)))}function Ls(e,t=z()){return Os(As(e),t)}function $l(e,t,n){let r=new Set(e.filter(i=>i.child_cardinality==="one").map(i=>i.child_id));return[...t].filter(([i,o])=>o.length>1&&r.has(i)).map(([i,o])=>({child_id:i,parent_ids:[...o],legacy_terminal:n.has(i)&&o.every(s=>n.has(s))})).sort((i,o)=>i.child_id.localeCompare(o.child_id))}function Pl(e,t,n){let r=new Map;for(let o of t){if(o.source!=="dependency")continue;let s=r.get(o.child_id)??new Set;s.add(o.parent_id),r.set(o.child_id,s)}let i=[];for(let[o,s]of e){let a=_t(s.parent);if(!a||!e.has(a))continue;let c=[...r.get(o)??[]].filter(d=>d!==a).sort();c.length!==0&&i.push({child_id:o,scalar_parent_id:a,dependency_parent_ids:c,legacy_terminal:n.has(o)&&n.has(a)&&c.every(d=>n.has(d))})}return i.sort((o,s)=>o.child_id.localeCompare(s.child_id))}function Sn(e,t=r=>r==="closed"||r==="canceled",n=z()){let r=As(e),i=Os(r,n),o=Ur(i),s=new Set([...r].filter(([,c])=>t(c.status)).map(([c])=>c)),a=Ol([...r.keys()],new Map([...o.children_by_parent].map(([c,d])=>[c,new Set(d)]))).map(c=>({item_ids:c,legacy_terminal:c.every(d=>s.has(d))}));return{relations:i,cycles:a,cardinality_violations:$l(i,o.parents_by_child,s),divergences:Pl(r,i,s)}}function Kw(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 Ur(e){let t=new Map,n=new Map;for(let r of e){let i=t.get(r.child_id)??new Set;i.add(r.parent_id),t.set(r.child_id,i);let o=n.get(r.parent_id)??new Set;o.add(r.child_id),n.set(r.parent_id,o)}return{parents_by_child:new Map([...t].map(([r,i])=>[r,[...i].sort()])),children_by_parent:new Map([...n].map(([r,i])=>[r,[...i].sort()]))}}function jr(e,t){let n=new Set(t);return e.every(r=>n.has(r))}function zw(e,t,n,r,i){let o=_t(n);if(!o)return;let s=Sn(e,r,i),a=Sn(t,r,i),c=a.divergences.find(u=>!s.divergences.some(f=>f.child_id===u.child_id&&f.scalar_parent_id===u.scalar_parent_id&&jr(u.dependency_parent_ids,f.dependency_parent_ids)));if(c){let u=[c.scalar_parent_id,...c.dependency_parent_ids].sort();throw new g(`Hierarchy mutation would assign ${c.child_id} to multiple parents: ${u.join(", ")}.`,_.CONFLICT,{code:"hierarchy_parent_divergence_created",source_id:o,target_id:c.child_id,verification_errors:u})}let d=a.cardinality_violations.find(u=>(u.child_id===o||u.parent_ids.includes(o))&&!s.cardinality_violations.some(f=>f.child_id===u.child_id&&jr(u.parent_ids,f.parent_ids)));if(d)throw new g(`Hierarchy mutation would assign ${d.child_id} to multiple parents: ${d.parent_ids.join(", ")}.`,_.CONFLICT,{code:"hierarchy_cardinality_created",source_id:o,target_id:d.child_id,verification_errors:d.parent_ids});let l=a.cycles.find(u=>u.item_ids.includes(o)&&!s.cycles.some(f=>jr(u.item_ids,f.item_ids)));if(l)throw new g(`Hierarchy mutation would create a cycle: ${l.item_ids.join(" -> ")}.`,_.CONFLICT,{code:"hierarchy_cycle_created",source_id:o,verification_errors:l.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]="41f814be-ee87-5cae-b674-69c2e7f42655")}catch{}})();function Je(e){if(typeof e!="string")return;let t=e.trim();if(!(!t||["none","null","n/a","na"].includes(t.toLowerCase())))return t}function yt(e){let t=Je(e);return t?.toLowerCase()==="no-active-blocker"?void 0:t}function vt(e,t,n=!0){let r=Je(e);return n&&(pe(t)||r!==void 0&&me(r))}function Hr(e,t){return vt(e,t)?`external\0${e}`:`local\0${e.toLowerCase()}`}function Fs(e,t,n,r){return vt(e,t)?r.get(e):n.get(e.toLowerCase())}function Xe(e,t){let n=e.toLowerCase(),r=t.toLowerCase();return n!==r?n<r?-1:1:e!==t?e<t?-1:1:0}function jl(e){let t=new Map;for(let n of e.dependencies??[]){if(typeof n!="object"||n===null)continue;let r=n,i=Je(r.id);if(!i)continue;let o=typeof r.kind=="string"?r.kind:"related",s=`${o}\0${Hr(i,r.source_kind)}`,a=t.get(s);a?a.count+=1:t.set(s,{target_id:i,kind:o,count:1})}return t}function Ul(e,t=n=>n==="closed"||n==="canceled"){let n=[];for(let r of e)if(!(typeof r?.id!="string"||r.id.trim().length===0))for(let i of jl(r).values())i.count<2||n.push({holder_id:r.id.trim(),target_id:i.target_id,kind:i.kind,occurrences:i.count,holder_status:r.status,legacy_terminal:t(r.status)});return n.sort((r,i)=>{let o=Xe(r.holder_id,i.holder_id);if(o!==0)return o;let s=Xe(r.target_id,i.target_id);return s!==0?s:Xe(r.kind,i.kind)})}function Hl(e,t,n,r,i){if(typeof n!="object"||n===null)return;let o=Je(n.id);if(!o||Hr(o,n.source_kind)!==Hr(t))return;let s=i.resolve(typeof n.kind=="string"?n.kind:"related");if(!(s?.ordering!==!0||(s.precedence??"source_before_target")!=="source_before_target"))return{holder_id:e.id.trim(),target_id:o,dependency_kind:s.kind,holder_status:e.status,legacy_terminal:r(e.status)}}function Bl(e,t=r=>r==="closed"||r==="canceled",n=z()){let r=new Map;for(let i of e){if(typeof i?.id!="string"||i.id.trim().length===0)continue;let o=Je(i.blocked_by);if(o)for(let s of i.dependencies??[]){let a=Hl(i,o,s,t,n);a&&r.set(`${a.holder_id.toLowerCase()}\0${a.target_id.toLowerCase()}\0${a.dependency_kind}`,a)}}return[...r.values()].sort((i,o)=>{let s=Xe(i.holder_id,o.holder_id);if(s!==0)return s;let a=Xe(i.target_id,o.target_id);return a!==0?a:Xe(i.dependency_kind,o.dependency_kind)})}function Br(e,t=n=>n==="closed"||n==="canceled"){let n=e.filter(c=>typeof c?.id=="string"&&c.id.trim().length>0),r=new Set(n.map(c=>c.id.trim().toLowerCase())),i=new Map,o=(c,d,l,u,f)=>{let p=Je(d);if(!p||r.has(p.toLowerCase())||vt(p,void 0,f))return;let m={holder_id:c.id.trim(),target_id:p,kind:l,source:u,holder_status:c.status,legacy_terminal:t(c.status),no_active_blocker_sentinel:p.toLowerCase()==="no-active-blocker"};i.set(`${m.holder_id}::${m.target_id}::${m.kind}::${m.source}`,m)};for(let c of n){o(c,c.parent,"parent","parent",!1),o(c,c.blocked_by,"blocked_by","blocked_by",!0);for(let d of c.dependencies??[]){if(typeof d!="object"||d===null)continue;let l=d;pe(l.source_kind)||o(c,l.id,typeof l.kind=="string"?l.kind:"related","dependency",!0)}}let s=[...i.values()].sort((c,d)=>c.holder_id.localeCompare(d.holder_id)||c.target_id.localeCompare(d.target_id)||c.kind.localeCompare(d.kind)||c.source.localeCompare(d.source)),a=s.filter(c=>c.legacy_terminal);return{active:s.filter(c=>!c.legacy_terminal),legacy_terminal:a,no_active_blocker_sentinels:s.filter(c=>c.no_active_blocker_sentinel)}}function Gl(e){let t=new Map;for(let n of[...e.active,...e.legacy_terminal]){if(n.no_active_blocker_sentinel)continue;let r=n.target_id.trim(),i=r.toLowerCase();t.has(i)||t.set(i,r)}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function Kl(e){let t=new Map;for(let n of e){let r=yt(n.blocked_by);r&&vt(r)&&!t.has(r)&&t.set(r,r);for(let i of n.dependencies??[]){if(typeof i!="object"||i===null||!vt(i.id,i.source_kind))continue;let o=yt(i.id);o&&!t.has(o)&&t.set(o,o)}}return[...t.values()].sort((n,r)=>n.localeCompare(r))}var Ms=new WeakMap;function Tn(e){return e.hierarchyIntegrity??Ms.get(e)}function zl(e,t=z()){let n={};for(let r of e)for(let i of r.dependencies??[]){if(typeof i!="object"||i===null)continue;let o=i.kind;if(typeof o!="string")continue;let s=o.trim().toLowerCase().replaceAll("-","_"),a=t.resolve(o);a&&s!==a.kind&&(n[s]=(n[s]??0)+1)}return Object.fromEntries(Object.entries(n).sort(([r],[i])=>r.localeCompare(i)))}function Qe(e,t,n){let r=n??z(),i=e.filter(m=>typeof m?.id=="string"&&m.id.trim().length>0),o=new Map(i.map(m=>[m.id.trim().toLowerCase(),m.id.trim()])),s=Br(i,t),a=Gl(s);for(let m of a)o.set(m.toLowerCase(),m);let c=Kl(i),d=new Set(o.keys()),l=new Map;for(let m of c){let h=m;for(;d.has(h.toLowerCase());)h=`external:${h}`;l.set(m,h),d.add(h.toLowerCase())}let u=i.map(m=>{let h=yt(m.parent),v=yt(m.blocked_by),b=(m.dependencies??[]).flatMap(y=>{if(typeof y!="object"||y===null)return[];let w=y,E=yt(w.id);return E?[{id:Fs(E,w.source_kind,o,l),kind:typeof w.kind=="string"?w.kind:"related"}]:[]});return{id:m.id.trim(),...h?{parent:o.get(h.toLowerCase())}:{},...v?{blocked_by:Fs(v,void 0,o,l)}:{},dependencies:b}}),f=Sn(i,t,r),p={graph:Bt.fromItems([...u,...a.map(m=>({id:m})),...c.map(m=>({id:l.get(m)}))],r),details:[...i.map(m=>({id:m.id.trim(),title:m.title,status:m.status,...typeof m.type=="string"&&m.type.trim().length>0?{type:m.type.trim()}:{}})),...a.map(m=>({id:m,title:`[missing] ${m}`,status:"missing"})),...c.map(m=>({id:l.get(m),title:`[external] ${m}`,status:"external"}))],missingIdSet:new Set(a.map(m=>m.toLowerCase())),dangling:s,duplicateRows:Ul(i,t),orderingContradictions:Bl(i,t,r),legacyAliasCounts:zl(i,r),hierarchyIntegrity:f};return Ms.set(p,f),p}(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]="19d6f507-d3b1-5ccc-aba5-594983776618")}catch{}})();var Gr=["id","title","status","type","priority","parent","updated_at"],Kr=["id","status","type","title"],Vl={list:"brief","list-all":"full","list-draft":"full","list-open":"brief","list-in-progress":"brief","list-blocked":"brief","list-closed":"brief","list-canceled":"full"},ql=["tree_depth","tree_parent","tree_children","tree_title"];function zr(e=[]){return[...new Set([...yr,"body",...ql,...e])].flatMap(t=>[t,`item.${t}`]).sort()}var e0=["brief","standard","deep"],Wl=["body","linked","claim_state","children","schedule","blockers"],Yl=["linked.files","linked.tests","linked.docs"],Xl=["claim_state.claimed","claim_state.assignee","claim_state.last_claim","claim_state.last_release"],Jl=["schedule.deadline","schedule.start_at","schedule.end_at","schedule.location","schedule.reminders","schedule.events"];function t0(e=[]){return[...[...new Set([...yr,...e,"notes_count","tests_count","collection_counts"])].flatMap(t=>[t,`item.${t}`]),...Wl,...Yl,...Xl,...Jl].sort()}var n0=["id","title","status","type","priority","updated_at","score","matched_fields"],Ql=["score","matched_fields","highlights"],Ns=["id","title","description","type","status","priority","tags","created_at","updated_at","deadline","assignee","author","estimated_minutes","acceptance_criteria","dependencies","comments","notes","learnings","reminders","events","files","tests","docs","close_reason","parent","reviewer","risk","confidence","sprint","release","blocked_by","blocked_reason","reporter","severity","environment","repro_steps","resolution","expected_result","actual_result","affected_version","fixed_version","component","regression","customer_impact","definition_of_ready","order","rank","goal","objective","value","impact","outcome","why_now","plan"];function r0(e=[]){let t=[...new Set(e)];return[...Ql,...Ns,...Ns.map(n=>`item.${n}`),...t,...t.map(n=>`item.${n}`)].sort()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f9d73d74-7c4e-5ea9-b34c-c984b4c15ab3")}catch{}})();function $s(e,t){let n=e.trim().toLowerCase();return t.alias_to_id.get(n)??n}function Hs(e){return{isTerminal(t){return e.terminal_statuses.has($s(t,e))},classify(t){let n=$s(t,e);return e.terminal_canceled_statuses.has(n)?"canceled":e.terminal_statuses.has(n)?"closed":e.blocked_statuses.has(n)?"blocked":e.draft_statuses.has(n)?"draft":n===e.open_status?"open":e.active_statuses.has(n)?"in_progress":"other"}}}function Vr(e){return K(e.acceptance_criteria)===void 0}function qr(e){return!Number.isFinite(e.estimated_minutes)}function Bs(e,t){return t.isTerminal(e.status)?K(e.resolution)===void 0:!1}function Zl(e){return K(e.reviewer)===void 0}function eu(e){return K(e.risk)===void 0}function tu(e){return typeof e.confidence=="number"?!Number.isFinite(e.confidence):K(e.confidence)===void 0}function nu(e){return K(e.sprint)===void 0}function ru(e){return K(e.release)===void 0}function Wr(e){return!!(e.acMissing||e.estimatesMissing||e.resolutionMissing||e.reviewerMissing||e.riskMissing||e.confidenceMissing||e.sprintMissing||e.releaseMissing||e.metadataMissing)}function iu(e,t,n){return[[t.acMissing,Vr(e)],[t.estimatesMissing,qr(e)],[t.resolutionMissing,Bs(e,n)],[t.reviewerMissing,Zl(e)],[t.riskMissing,eu(e)],[t.confidenceMissing,tu(e)],[t.sprintMissing,nu(e)],[t.releaseMissing,ru(e)]].every(([r,i])=>r!==!0||i)}function ou(e,t){return Vr(e)||qr(e)||Bs(e,t)}function Gs(e,t,n){return Wr(t)?!(!iu(e,t,n)||t.metadataMissing&&!ou(e,n)):!0}var Yr=["acceptance_criteria","estimated_minutes","resolution","tags","parent"];function su(e,t){switch(t){case"acceptance_criteria":return!Vr(e);case"estimated_minutes":return!qr(e);case"resolution":return K(e.resolution)!==void 0;case"tags":return Array.isArray(e.tags)&&e.tags.length>0;default:return K(e.parent)!==void 0}}function au(e,t,n){return t==="resolution"?n.isTerminal(e.status):!0}function cu(e,t){return t===0?100:Math.round(e/t*1e3)/10}function Ps(){let e={};for(let t of Yr)e[t]={present:0,applicable:0,percent:100};return e}function js(e,t,n){for(let r of Yr){if(!au(t,r,n))continue;let i=e[r];i.applicable+=1,su(t,r)&&(i.present+=1)}}function Us(e){for(let t of Yr){let n=e[t];n.percent=cu(n.present,n.applicable)}}function s0(e,t){let n=Ps(),r={};for(let i of e){js(n,i,t);let o=r[i.type]??(r[i.type]=Ps());js(o,i,t)}Us(n);for(let i of Object.values(r))Us(i);return{overall:n,by_type:r}}var du={assignee:"(unassigned)",priority:"(no priority)",tag:"(untagged)",parent:"(unparented)",type:"(untyped)",status:"(no status)"};function lu(e){return du[e]}function uu(){return{open:0,in_progress:0,blocked:0,draft:0,closed:0,canceled:0,other:0}}function fu(e,t,n){switch(t){case"assignee":return[K(e.assignee)??null];case"parent":return[K(e.parent)??null];case"type":return[K(e.type)??null];case"status":return[K(e.status)??null];case"priority":return[typeof e.priority=="number"?`P${e.priority}`:null];default:{let r=n.tagPrefix?.trim(),i=(Array.isArray(e.tags)?e.tags:[]).filter(o=>typeof o=="string"&&o.length>0&&(!r||o.startsWith(r)));return i.length>0?i:[null]}}}function a0(e,t,n,r={}){let i=new Map,o=0;for(let a of e){o+=1;let c=n.classify(a.status);for(let d of fu(a,t,r)){let l=d??"\0empty",u=i.get(l);u||(u={label:d??lu(t),key:d,buckets:uu(),total:0},i.set(l,u)),u.buckets[c]+=1,u.total+=1}}let s=[...i.values()].sort((a,c)=>c.total!==a.total?c.total-a.total:a.key===null?1:c.key===null?-1:a.label.localeCompare(c.label));return{dimension:t,rows:s,total_items:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="67f9184e-08b6-5f21-9f92-e60974adbf1e")}catch{}})();var Ze=["notes","learnings","files","docs","tests","comments","deps","body","linked_command"];function Oe(e){return Array.isArray(e)&&e.length>0}function mu(e){return typeof e=="string"&&e.trim().length>0}function pu(e){return Array.isArray(e)?e.some(t=>{if(typeof t!="object"||t===null)return!1;let n=t.command;return typeof n=="string"&&n.trim().length>0}):!1}function zs(e,t){switch(t){case"notes":return Oe(e.notes);case"learnings":return Oe(e.learnings);case"files":return Oe(e.files);case"docs":return Oe(e.docs);case"tests":return Oe(e.tests);case"comments":return Oe(e.comments);case"deps":return Oe(e.dependencies);case"body":return mu(e.body);case"linked_command":return pu(e.tests)}}function Vs(e){return Ze.some(t=>e[t]!==void 0)}function qs(e,t){for(let n of Ze){let r=t[n];if(r===void 0)continue;let i=zs(e,n);if(r==="present"&&!i||r==="absent"&&i)return!1}return!0}function Ws(e){return Ze.some(t=>t!=="body"&&e[t]!==void 0)}function Ys(e){return e.body!==void 0}function Ks(e,t){return t===0?100:Math.round(e/t*1e3)/10}function hu(){let e={};for(let t of Ze)e[t]={present:0,total:0,percent:100};return e}function d0(e){let t=hu(),n=e.length;for(let s of e)for(let a of Ze)zs(s,a)&&(t[a].present+=1);for(let s of Ze)t[s].total=n,t[s].percent=Ks(t[s].present,n);let r=t.body,i=n-r.present,o={present:i,total:n,percent:Ks(i,n)};return{total_items:n,fields:t,body_populated:r,empty_body:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bf7ab12b-2cc6-5266-8da9-c49ef805e3fd")}catch{}})();var gu=e=>({acMissing:e.filterAcMissing===!0,estimatesMissing:e.filterEstimatesMissing===!0,resolutionMissing:e.filterResolutionMissing===!0,metadataMissing:e.filterMetadataMissing===!0,reviewerMissing:e.filterReviewerMissing===!0,riskMissing:e.filterRiskMissing===!0,confidenceMissing:e.filterConfidenceMissing===!0,sprintMissing:e.filterSprintMissing===!0,releaseMissing:e.filterReleaseMissing===!0}),Xs=[{field:"notes",presentKey:"hasNotes",absentKey:"noNotes",presentFlag:"--has-notes",absentFlag:"--no-notes"},{field:"learnings",presentKey:"hasLearnings",absentKey:"noLearnings",presentFlag:"--has-learnings",absentFlag:"--no-learnings"},{field:"files",presentKey:"hasFiles",absentKey:"noFiles",presentFlag:"--has-files",absentFlag:"--no-files"},{field:"docs",presentKey:"hasDocs",absentKey:"noDocs",presentFlag:"--has-docs",absentFlag:"--no-docs"},{field:"tests",presentKey:"hasTests",absentKey:"noTests",presentFlag:"--has-tests",absentFlag:"--no-tests"},{field:"comments",presentKey:"hasComments",absentKey:"noComments",presentFlag:"--has-comments",absentFlag:"--no-comments"},{field:"deps",presentKey:"hasDeps",absentKey:"noDeps",presentFlag:"--has-deps",absentFlag:"--no-deps"},{field:"body",presentKey:"hasBody",absentKey:"emptyBody",presentFlag:"--has-body",absentFlag:"--empty-body"},{field:"linked_command",presentKey:"hasLinkedCommand",absentKey:"noLinkedCommand",presentFlag:"--has-linked-command",absentFlag:"--no-linked-command"}],na=e=>{let t=Xs.find(n=>e[n.presentKey]===!0&&e[n.absentKey]===!0);if(t)throw new g(`Cannot combine ${t.presentFlag} with ${t.absentFlag} for the same field.`,_.USAGE);return Object.fromEntries(Xs.flatMap(n=>e[n.presentKey]===!0?[[n.field,"present"]]:e[n.absentKey]===!0?[[n.field,"absent"]]:[]))},Js=["priority","deadline","updated_at","created_at","title","parent"],Qs=["asc","desc"],ra=new Set(us);function _u(e,t,n){let r=e.filter(s=>s.startsWith("item_list_item_read_failed:")).length,i=e.filter(s=>s.startsWith("item_list_directory_read_failed:")).length,o={status:t?"unchecked":r+i>0?"partial":"complete",unreadable_item_count:r,unreadable_directory_count:i};if(n&&o.status==="partial")throw new g(`List source is incomplete: ${r} item document(s) and ${i} item directory/directories could not be read.`,_.GENERIC_FAILURE,{code:"list_source_incomplete",why:"Strict list reads fail closed so agents and SDK consumers never treat an omitted item as a complete workspace.",nextSteps:["Run pm validate --check-storage-integrity to locate unreadable tracker artifacts.","Repair the reported files or align the installed decoder version, then retry."]});return o}function yu(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length>0}var vu=[{key:"hasNotes",summaryKey:"has_notes"},{key:"hasLearnings",summaryKey:"has_learnings"},{key:"hasFiles",summaryKey:"has_files"},{key:"hasDocs",summaryKey:"has_docs"},{key:"hasTests",summaryKey:"has_tests"},{key:"hasComments",summaryKey:"has_comments"},{key:"hasDeps",summaryKey:"has_deps"},{key:"hasBody",summaryKey:"has_body"},{key:"hasLinkedCommand",summaryKey:"has_linked_command"},{key:"noNotes",summaryKey:"no_notes"},{key:"noLearnings",summaryKey:"no_learnings"},{key:"noFiles",summaryKey:"no_files"},{key:"noDocs",summaryKey:"no_docs"},{key:"noTests",summaryKey:"no_tests"},{key:"noComments",summaryKey:"no_comments"},{key:"noDeps",summaryKey:"no_deps"},{key:"emptyBody",summaryKey:"empty_body"},{key:"noLinkedCommand",summaryKey:"no_linked_command"}],bu=[{key:"filterReviewerMissing",summaryKey:"filter_reviewer_missing"},{key:"filterRiskMissing",summaryKey:"filter_risk_missing"},{key:"filterConfidenceMissing",summaryKey:"filter_confidence_missing"},{key:"filterSprintMissing",summaryKey:"filter_sprint_missing"},{key:"filterReleaseMissing",summaryKey:"filter_release_missing"}];function ia(e,t){for(let n of vu)t[n.key]===!0&&(e[n.summaryKey]=!0)}function oa(e,t){for(let n of bu)t[n.key]===!0&&(e[n.summaryKey]=!0)}function wu(e,t,n){for(let r of n){let i=t[r.optionKey];i!==void 0&&(e[r.summaryKey]=r.normalize?r.normalize(i):i)}}function ku(e){let t={};return ia(t,e),t}function Eu(e){let t={};return oa(t,e),t}var Iu=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"}],Cu=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"limit",summaryKey:"limit"},{optionKey:"offset",summaryKey:"offset"},{optionKey:"includeBody",summaryKey:"include_body"},{optionKey:"compact",summaryKey:"compact"},{optionKey:"fields",summaryKey:"fields"}],Su=[{key:"filterAcMissing",summaryKey:"filter_ac_missing"},{key:"filterEstimatesMissing",summaryKey:"filter_estimates_missing"},{key:"filterResolutionMissing",summaryKey:"filter_resolution_missing"},{key:"filterMetadataMissing",summaryKey:"filter_metadata_missing"}],Tu="-7d";function Ru(e){let{filtersStatus:t,options:n,treeEnabled:r,treeDepth:i,sortField:o,sortOrder:s,runtimeFieldFilters:a}=e,c={};return t!==null&&(c.status=t),n.dependencyBlocked===!0&&(c.blocked_semantics="status_or_dependency"),wu(c,n,Iu),aa(c,n),n.filterAcMissing===!0&&(c.filter_ac_missing=!0),n.filterEstimatesMissing===!0&&(c.filter_estimates_missing=!0),n.filterResolutionMissing===!0&&(c.filter_resolution_missing=!0),n.filterMetadataMissing===!0&&(c.filter_metadata_missing=!0),oa(c,n),ia(c,n),n.limit!==void 0&&(c.limit=n.limit),n.offset!==void 0&&(c.offset=n.offset),n.includeBody===!0&&(c.include_body=!0),n.fields!==void 0&&(c.fields=n.fields),r&&(c.tree=!0,i!==void 0&&(c.tree_depth=i)),o!==void 0&&(c.sort=o,c.order=s),yu(a)&&(c.runtime_filters=a),c}function sa(e,t,n){let r=$(e.status,n),i=$(t.status,n);if(r!==i)return r?1:-1;let o=e.priority-t.priority;if(o!==0)return o;let s=C(t.updated_at,e.updated_at);return s!==0?s:(e.id??"").localeCompare(t.id??"")}function xu(e,t){return[...e].sort((n,r)=>sa(n,r,t))}function Zs(e,t){if(e!==void 0)return ve(e,new Date,t)}function bt(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return ve(n,new Date,t)}function Du(e){let t=e.updatedAfter!=null&&String(e.updatedAfter).trim().length>0;if([e.today===!0,e.recent===!0,t].filter(n=>n).length>1)throw new g("Choose only one updated_at window: --today, --recent, or --updated-after.",_.USAGE);if(e.today===!0){let n=new Date;return n.setHours(0,0,0,0),n.toISOString()}return e.recent===!0?bt(Tu,"recent"):bt(e.updatedAfter,"updated-after")}function aa(e,t){t.today===!0&&(e.today=!0),t.recent===!0&&(e.recent=!0)}function Au(e){if(e==null)return;let t=String(e).trim();if(t.length===0)throw new g("--ids requires at least one non-empty item ID",_.USAGE);let n=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(n.length===0)throw new g("--ids requires at least one non-empty item ID",_.USAGE);return new Set(n)}function ca(e){if(e===void 0)return;let t=String(e).trim(),n=t.length===0?Number.NaN:Number(t);if(!Number.isInteger(n)||n<0)throw new g("Offset filter must be a non-negative integer",_.USAGE);return n}function Ou(e){if(e===void 0)return;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new g("List --fields requires a comma-separated list of field names",_.USAGE);return[...new Set(t)]}function Lu(e,t=e.projectionCommand??"list"){let n=e.compact===!0,r=e.brief===!0,i=e.full===!0,o=Ou(e.fields);if(Number(n)+Number(r)+Number(i)+ +(o!==void 0)>1)throw new g("List projection options are mutually exclusive. Use one of --compact, --brief, --full, or --fields.",_.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:`pm ${t} --brief`,suggested_retry_args:[t,"--brief"]}});return i?{mode:"full",fields:[]}:r?{mode:"brief",fields:[...Kr]}:n?{mode:"compact",fields:[...Gr]}:o?{mode:"fields",fields:[...new Set(o.map(s=>Le(s)))]}:{mode:"full",fields:[]}}function Le(e){return e.startsWith("item.")?e.slice(5):e}function Fu(e,t,n){if(e.mode!=="fields")return;let r=zr(t),i=new Set(r.map(s=>Le(s))),o=e.fields.filter(s=>!i.has(Le(s)));if(o.length>0){let s=[n,"--fields",e.fields.filter(a=>!o.includes(a)).join(",")||"id,title,status"];throw new g(`Unknown list --fields value(s): ${o.join(", ")}`,_.USAGE,{code:"unknown_field_projection",examples:["pm list-open --fields id,title,status,type,updated_at","pm list --fields id,title,parent,priority --limit 10","pm list-all --fields id,title,body --limit 5"],recovery:{allowed_values:r,suggested_retry:Io(s),suggested_retry_args:s}})}}var Mu=new Map([["updated","updated_at"],["update","updated_at"],["modified","updated_at"],["created","created_at"],["create","created_at"]]);function Nu(e){if(e===void 0)return;let t=e.trim().toLowerCase(),n=Mu.get(t);if(n)return n;if(!Js.includes(t))throw new g(`Sort field must be one of ${Js.join("|")} (aliases: updated->updated_at, created->created_at)`,_.USAGE);return t}function $u(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!Qs.includes(t))throw new g(`Sort order must be one of ${Qs.join("|")}`,_.USAGE);return t}function Pu(e){return ie(e,"--tree-depth")}function ju(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new g("Assignee filter must be one of assigned|unassigned",_.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new g(`Invalid assignee filter "${e}". Allowed: assigned|unassigned`,_.USAGE);return t}function ea(e,t){return ys(e,t,{strict:!0})}function da(e){return ht(e,{label:"--tag",normalize:t=>t.toLowerCase()})}function Uu(e,t,n){let r=da(t);if(r===void 0)return;let i=new Set(e.flatMap(s=>s.tags.map(a=>a.trim().toLowerCase()))),o=[...r].filter(s=>!i.has(s));o.length>0&&n.push(`unknown_tags:${o.join(",")}`)}function Hu(e,t){if(e&&[...e].some(n=>n.toLowerCase()==="none"||n.toLowerCase()==="null"))throw new g('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',_.USAGE);if(e!==void 0&&t==="unassigned")throw new g("Cannot combine --assignee with --assignee-filter unassigned",_.USAGE)}function Bu(e,t,n,r){let i=ht(t.assignee,{label:"--assignee"}),o=ju(t.assigneeFilter);Hu(i,o);let s=gu(t),a=na(t);return{idsFilter:Au(t.ids),statusSet:e&&e.length>0?new Set(e):void 0,excludeTerminal:t.excludeTerminal===!0,typeFilter:Rs(t.type,n),tagFilters:da(t.tag),priorityFilter:xs(t.priority),deadlineBefore:Zs(t.deadlineBefore,"deadline-before"),deadlineAfter:Zs(t.deadlineAfter,"deadline-after"),updatedAfter:Du(t),updatedBefore:bt(t.updatedBefore,"updated-before"),createdAfter:bt(t.createdAfter,"created-after"),createdBefore:bt(t.createdBefore,"created-before"),assigneeFilter:i,assigneeModeFilter:o,parentFilter:t.parent?.trim(),treeEnabled:t.tree===!0,sprintFilter:ht(t.sprint,{label:"--sprint"}),releaseFilter:ht(t.release,{label:"--release"}),missingMetadataFilters:s,missingMetadataActive:Wr(s),lifecycleClassifier:Hs(r),contentFieldFilters:a,contentFiltersActive:Vs(a)}}function Gu(e,t,n){return t.idsFilter&&!t.idsFilter.has(e.id)||t.statusSet&&!t.statusSet.has(e.status)||t.excludeTerminal&&$(e.status,n)||t.typeFilter&&!t.typeFilter.has(e.type)||t.tagFilters&&![...t.tagFilters].some(r=>(e.tags??[]).some(i=>i.trim().toLowerCase()===r))?!1:t.priorityFilter===void 0||t.priorityFilter.has(e.priority)}function Ku(e,t){return xo(e,t)}function zu(e,t){return t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee?!1:t.assigneeFilter===void 0||e.assignee!==void 0&&t.assigneeFilter.has(e.assignee)}function Vu(e,t,n){let r=e.parent?.trim().toLowerCase(),i=[...new Set([...n?.get(e.id.trim().toLowerCase())??[],...r?[r]:[]])];return t.parentFilter!==void 0&&!t.treeEnabled&&!i.includes(t.parentFilter.trim().toLowerCase())||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))?!1:t.releaseFilter===void 0||e.release!==void 0&&t.releaseFilter.has(e.release)}function qu(e,t,n,r,i){return!(!Gu(e,t,n)||!Ku(e,t)||!zu(e,t)||!Vu(e,t,i)||t.missingMetadataActive&&!Gs(e,t.missingMetadataFilters,t.lifecycleClassifier)||t.contentFiltersActive&&!qs(e,t.contentFieldFilters)||!gn(e,r))}function Wu(e,t,n,r,i,o,s){let a=Bu(t,n,r,i);return e.filter(c=>qu(c,a,i,o,s))}function wt(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function ta(e,t,n,r){let i=e,o=typeof i.title=="string"?i.title:"",s=r??wt(typeof i.parent=="string"?i.parent:void 0)??null;return{...e,tree_depth:t,tree_parent:s,tree_children:n,tree_title:`${" ".repeat(t)}${o}`}}function Yu(e,t){let n=new Map,r=new Map;for(let i of e){let o=i.id.trim().toLowerCase();n.set(o,i);let s=t?t.parents_by_child.get(o)??[]:[wt(i.parent)?.toLowerCase()].filter(a=>a!==void 0);for(let a of s){let c=r.get(a)??[];c.push(i),r.set(a,c)}}return{byId:n,childrenByParent:r}}function Xu(e,t,n,r,i){return t?[...r.get(t.toLowerCase())??[]]:e.filter(o=>(i?i.parents_by_child.get(o.id.trim().toLowerCase())??[]:[wt(o.parent)?.toLowerCase()].filter(s=>s!==void 0)).every(s=>!n.has(s)))}function Ju(e,t,n,r,i=e){let{byId:o,childrenByParent:s}=Yu(e,r),a=Xu(e,t,o,s,r),c=[],d=new Set,l=new Map(i.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),u=[...a].reverse().map(f=>({node:f,depth:0,parentId:t===void 0?void 0:l.get(t.trim().toLowerCase())??t.trim()}));for(;u.length>0;){let{node:f,depth:p,parentId:m}=u.pop(),h=f.id.trim().toLowerCase();if(d.has(h))continue;d.add(h);let v=s.get(h)??[];if(c.push(ta(f,p,v.length,m)),!(n!==void 0&&p>=n))for(let b of[...v].reverse())u.push({node:b,depth:p+1,parentId:l.get(h)})}if(t===void 0&&n===void 0)for(let f of e){let p=f.id.trim().toLowerCase();d.has(p)||(d.add(p),c.push(ta(f,0,s.get(p)?.length??0)))}return c}function Qu(e,t){return e===t?0:e===null?1:t===null?-1:e.localeCompare(t)}function Zu(e,t){return e===t?0:e===null?1:t===null?-1:C(e,t)}function ef(e,t,n){switch(n){case"priority":return e.priority-t.priority;case"deadline":return Zu(e.deadline??null,t.deadline??null);case"updated_at":return C(e.updated_at,t.updated_at);case"created_at":return C(e.created_at,t.created_at);case"title":return(e.title??"").localeCompare(t.title??"");case"parent":return Qu(e.parent??null,t.parent??null);default:return 0}}function tf(e,t,n,r){return t?[...e].sort((i,o)=>{let s=ef(i,o,t);if(s!==0)return n==="desc"?-s:s;let a=sa(i,o,r);return n==="desc"?-a:a}):xu(e,r)}function nf(e,t,n=!1){let r=Le(t.trim());if(r.length===0)return null;let i=e;return n&&r==="title"&&typeof i.tree_title=="string"?i.tree_title:Object.prototype.hasOwnProperty.call(i,r)?i[r]??null:null}function la(e,t,n=!1){return t.mode==="full"?e:e.map(r=>{let i={};for(let o of t.fields)i[o]=nf(r,o,n);return i})}function rf(e){let t=[];for(let n of e)t.push(n.metadata_key);return t}function of(e,t){let n=ie(e.limit);if(n!==void 0)return n;if(e.noTruncate!==!0)return t>=1e4?20:void 0}function sf(e,t,n){return t.after===void 0?ca(t.offset)??0:He(e,t.after,n,r=>r.id)}function ua(e,t,n){return{...e!==void 0?{applied_limit:e}:{},has_more:t,truncated:t,next_cursor:n??null}}async function af(e,t){let n=O(process.cwd(),t.path);await U(n);let r=await F(n),i=J(r.schema),o=nn(r.schema),s=e.projectionCommand??"list",a=Lu(e,s);return Fu(a,rf(o.definitions),s),{pmRoot:n,settings:r,statusRegistry:i,runtimeFieldFilters:hn(e,o,"list"),typeRegistry:L(r,D()),projection:a}}async function cf(e,t,n){let r=t.projection.fields.some(c=>Le(c)==="body"),i=t.projection.mode==="full"||t.projection.fields.some(c=>ra.has(Le(c))),o=na(e),s=Ws(o),a=Ys(o);return e.includeBody||r||a?await fn(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):i||s?await ms(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):await fe(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema)}function df(e){let t=Nu(e.sort),n=$u(e.order)??"asc",r=e.tree===!0;if(!r&&e.treeDepth!==void 0)throw new g("List --tree-depth requires --tree",_.USAGE);if(!t&&e.order!==void 0)throw new g("List --order requires --sort",_.USAGE);return{sortField:t,sortOrder:n,treeEnabled:r,treeDepth:r?Pu(e.treeDepth):void 0,parentRoot:r?wt(e.parent):void 0}}function lf(e,t,n){let r=ea(t.status,n),i;t.lifecycleBucket==="in_progress"?i=[n.in_progress_status]:t.lifecycleBucket==="open"&&(i=[...n.active_statuses].filter(d=>d!==n.in_progress_status).sort((d,l)=>d.localeCompare(l)));let o=r??i??ea(e,n),s=_s(t.status),a=r||s?{...t,excludeTerminal:!1}:t,c="all";return s?c="all":r!==void 0?c=r.length===1?r[0]:r:t.lifecycleBucket!==void 0?c=t.lifecycleBucket:o!==void 0?c=o.length===1?o[0]:o:a.excludeTerminal===!0&&(c=null),{resolvedStatus:o,explicitAllStatuses:s,effectiveOptions:a,filtersStatus:c}}function uf(e,t,n,r,i){if(t.after!==void 0&&t.offset!==void 0)throw new g("List --after cannot be combined with --offset.",_.USAGE);let o=of(t,e.length),s=sf(e,t,i),a=o===void 0?e.slice(s):e.slice(s,s+o),c=la(a,n,r),d=e.length,l=a.length>0&&s+a.length<d,u=l&&a.length>0?de(i,a[a.length-1].id,s+a.length-1):void 0;return{projected:c,totalMatched:d,pageExtras:ua(o,l,u)}}function fa(e,t,n,r){return Se("list",{pmRoot:r,status:e,options:Xt(t,ps),sort:n.sortField??"default",order:n.sortOrder,tree:n.treeEnabled,tree_depth:n.treeDepth??null})}async function ff(e){let{options:t,runtime:n,statusSelection:r,ordering:i}=e,o=new Set(["status","limit","offset","compact","brief","full","fields","format","stream","includeBody","excludeTerminal","dependencyBlocked","lifecycleBucket","noTruncate","projectionCommand","truncate","notes","learnings","files","docs","tests","comments","deps","linkedCommand"]),s=[n.projection.mode==="full",n.projection.fields.some(p=>{let m=Le(p);return m==="body"||ra.has(m)})].includes(!0);if([t.limit===void 0,t.after!==void 0,t.noTruncate===!0,t.includeBody===!0,t.dependencyBlocked===!0,t.strictRead===!0,i.treeEnabled,i.sortField!==void 0,s,wo(),Object.keys(n.runtimeFieldFilters).length>0,Object.entries(t).some(([p,m])=>m!==void 0&&!o.has(p))].includes(!0))return null;let a=await We(n.pmRoot,[...new Set(Object.values(n.typeRegistry.type_to_folder))]);if(!a)return null;let c=ie(t.limit),d=ca(t.offset)??0,l=await ls({pmRoot:n.pmRoot,expectedSourceCursor:a.source_cursor,query:{statuses:r.resolvedStatus,excludeStatuses:r.resolvedStatus===void 0&&r.effectiveOptions.excludeTerminal===!0?[...n.statusRegistry.terminal_statuses]:void 0,terminalStatuses:[...n.statusRegistry.terminal_statuses],limit:c,offset:d}});if(!l)return null;let u=l.items.length>0&&d+l.items.length<l.total,f=u?de(fa(r.filtersStatus,t,i,n.pmRoot),l.items.at(-1).id,d+l.items.length-1):void 0;return{projected:la(l.items,n.projection,!1),totalMatched:l.total,pageExtras:ua(c,u,f)}}function mf(e){let{filtersStatus:t,options:n,noTruncate:r,treeEnabled:i,treeDepth:o,sortField:s,sortOrder:a,runtimeFieldFilters:c}=e,d={};t!==null&&(d.status=t),n.dependencyBlocked===!0&&(d.blocked_semantics="status_or_dependency");let l=n;for(let u of Cu){let f=l[u.optionKey];f!=null&&(d[u.summaryKey]=f)}for(let u of Su)l[u.key]===!0&&(d[u.summaryKey]=!0);return Object.assign(d,Eu(n),ku(n)),aa(d,n),r&&(d.no_truncate=!0),n.strictRead===!0&&(d.strict_read=!0),i&&(d.tree=!0,o!==void 0&&(d.tree_depth=o)),s!==void 0&&(d.sort=s,d.order=a),d.runtime_filters=c,d}async function kt(e,t,n){let r=await af(t,n),i=[],o=df(t),s=lf(e,t,r.statusRegistry),a=t.noTruncate===!0,c=await ff({options:t,runtime:r,statusSelection:s,ordering:o}),d=c;if(!d){let m=await cf(t,r,i),h=o.treeEnabled||wt(t.parent)!==void 0?Ur(Ls(m,z())):void 0;Uu(m,t.tag,i);let v=Wu(m,s.resolvedStatus,s.effectiveOptions,r.typeRegistry,r.statusRegistry,r.runtimeFieldFilters,h?.parents_by_child),b=t.dependencyBlocked===!0?(()=>{let E=mt(m,r.statusRegistry);return v.filter(S=>E.has(S.id.trim().toLowerCase()))})():v,y=tf(b,o.sortField,o.sortOrder,r.statusRegistry),w=o.treeEnabled?Ju(y,o.parentRoot,o.treeDepth,h,m):y;d=uf(w,t,r.projection,o.treeEnabled,fa(s.filtersStatus,t,o,r.pmRoot))}let l=x(),u=[...new Set(i)].sort((m,h)=>m.localeCompare(h)),f=_u(u,c!==null,t.strictRead===!0),p=r.projection.mode==="full"?null:[...r.projection.fields];if(r.projection.mode==="compact"&&t.compact===!0){let m=Ru({filtersStatus:s.filtersStatus,options:t,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters});return{items:d.projected,count:d.projected.length,total:d.totalMatched,...d.pageExtras,completeness:f,filters:m,projection:{mode:"compact",fields:p},...u.length>0?{warnings:u}:{}}}return{items:d.projected,count:d.projected.length,total:d.totalMatched,...d.pageExtras,completeness:f,filters:mf({filtersStatus:s.filtersStatus,options:t,noTruncate:a,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters}),projection:{mode:r.projection.mode,fields:p},sorting:{sort:o.sortField??"default",order:o.sortField?o.sortOrder:"asc"},now:l,...u.length>0?{warnings:u}:{}}}import{createHash as pf}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 hf=64,gf=8;function _f(e,t){let n=(e.dependencies??[]).map(r=>{if(typeof r!="object"||r===null)return"";let i=r;return`${typeof i.kind=="string"?i.kind:"related"}:${typeof i.id=="string"?i.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??"",n].join("\0")}function Rn(e,t=r=>r==="closed"||r==="canceled",n=ne()){let r=e.filter(o=>typeof o?.id=="string"&&o.id.trim().length>0).map(o=>_f(o,t)).sort(),i=n.list().map(o=>k(o)).sort();return pf("sha256").update(r.join("")).update("").update(i.join("")).digest("hex")}function ma(e,t,n){let r=t??n;if(!Number.isInteger(r)||r<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`);return r}var Xr=class{#e=new Map;#t;#n;constructor(t={}){this.#t=ma("maxResultsPerWorkspace",t.maxResultsPerWorkspace,hf),this.#n=ma("maxWorkspaces",t.maxWorkspaces,gf)}lookup(t,n,r){let i=this.#e.get(t),o=!0;(i===void 0||i.fingerprint!==n)&&(i={fingerprint:n,assembly:r(),results:new Map},o=!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,i);let s=i,a=this.#t;return{assembly:s.assembly,assemblyReused:o,fingerprint:n,memoize(c,d){let l=s.results.get(c);if(l!==void 0||s.results.has(c))return s.results.delete(c),s.results.set(c,l),{value:structuredClone(l),reused:!0};let u=d();return s.results.size>=a&&s.results.delete(s.results.keys().next().value),s.results.set(c,structuredClone(u)),{value:u,reused:!1}}}}clear(){this.#e.clear()}},pa=new Xr;function xn(){return pa}function K0(){pa.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]="c67d6023-2fb2-541f-9541-8aa317368dcf")}catch{}})();var yf=["prerequisite","dependent","ancestor","descendant","provenance","related"],vf=new TextEncoder;function Jr(e,t,n){let r=e??t;if(!Number.isInteger(r)||r<1)throw new TypeError(`Relationship context ${n} must be positive`);return r}function Dn(e){return Math.max(1,Math.ceil(vf.encode(JSON.stringify(e)).byteLength/4))}function Qr(e,t,n){let r=n.resolve(e.kind);if(r?.ordering){let i=(r.precedence??"source_before_target")==="source_before_target"?e.source:e.target;return t===i?"prerequisite":"dependent"}if(r?.hierarchy){let i=r.hierarchyDirection==="source_parent"?e.source:e.target;return t===i?"ancestor":"descendant"}return e.kind==="discovered_from"||e.kind==="incident_from"?"provenance":"related"}function bf(e,t,n,r){let i=e.filter(o=>o.source===t&&o.target===n||o.target===t&&o.source===n).map(o=>Qr(o,n,r));return[...new Set(i)].sort()}function wf(e){return yf.find(t=>e.includes(t))}function kf(e,t,n,r){let i=r.direction??"both",o=r.maxDepth??3;if(!Number.isInteger(o)||o<0)throw new TypeError("Relationship context maxDepth must be non-negative");let s=new Set([t]),a=[{id:t,distance:0}],c=[],d=0,l=!1;for(let u=0;u<a.length;u+=1){r.signal?.throwIfAborted();let f=a[u];if(f.distance>=o&&l)continue;let p=e.neighborEdges(f.id,{direction:i,kinds:r.kinds,signal:r.signal});if(d+=p.meta.inspectedEdges,f.distance>=o){p.value.some(m=>!s.has(m.id))&&(l=!0);continue}for(let{id:m,edge:h}of p.value){if(s.has(m))continue;s.add(m);let v={id:m,distance:f.distance+1,via:f.id,role:Qr(h,m,n)};c.push(v),a.push(v)}}return c.sort((u,f)=>u.distance-f.distance||u.id.localeCompare(f.id)),{rows:c,visitedNodes:a.length,inspectedEdges:d,depthTruncated:l}}function Ef(e,t,n,r){let i={prerequisite:0,dependent:0,ancestor:0,descendant:0,provenance:0,related:0},o=e.neighborEdges(t,{direction:r.direction??"both",kinds:r.kinds,signal:r.signal}).value;for(let{id:s,edge:a}of o)i[Qr(a,s,n)]+=1;return{directEdges:i,directTotal:o.length,rootEdges:o.map(({edge:s})=>s)}}function If(e){let t=[],n=e.initialTokens;for(let r of e.candidates){if(t.length>=e.nodeLimit)break;let i=r.distance===1?bf(e.rootEdges,e.rootId,r.id,e.registry):[],o={...e.details.get(r.id)??{id:r.id},distance:r.distance,role:i.length>0?wf(i):r.role,via:r.via,reasons:i.length>0?i:[`${r.role} via ${r.via} (depth ${r.distance})`]},s=Dn(o);if(n+s>e.tokenBudget)break;t.push(o),n+=s}if(e.candidates.length>0&&t.length===0)throw new TypeError("Relationship context tokenBudget cannot fit one node");return{nodes:t,usedTokens:n}}function Cf(e){let t=e.options.kinds?new Set(e.options.kinds.map(o=>e.registry.require(o).kind)):void 0,n=e.graph.edges().filter(o=>{if(!e.included.has(o.source)||!e.included.has(o.target))return!1;if(t===void 0||t.has(o.kind))return!0;let s=e.registry.resolve(o.kind)?.inverse;return s!==void 0&&t.has(s)}),r=[],i=e.initialTokens;for(let o of n){if(r.length>=e.edgeLimit)break;let s=Dn(o);if(i+s>e.tokenBudget)break;r.push(o),i+=s}return{edges:r,usedTokens:i,candidateCount:n.length}}function ha(e,t,n,r={}){if(!e.nodes().includes(t))throw new TypeError(`Relationship node not found: ${t}`);let i=Jr(r.nodeLimit,20,"nodeLimit"),o=Jr(r.edgeLimit,40,"edgeLimit"),s=Jr(r.tokenBudget,1200,"tokenBudget"),a=r.registry??ne(),c=new Map(n.map(V=>[V.id,V])),d=c.get(t)??{id:t},{evidence:l=[],...u}=d,f=[...l],p=kf(e,t,a,r),{rootEdges:m,...h}=Ef(e,t,a,r),v=Se("relationship-context",{rootId:t,direction:r.direction??"both",kinds:[...r.kinds??[]].sort(),maxDepth:r.maxDepth??3}),b=He(p.rows,r.cursor,v,({id:V})=>V),y=p.rows.slice(b),w=Dn(u)+Dn(f);if(w>s)throw new TypeError("Relationship context tokenBudget cannot fit root and evidence");let E=If({candidates:y,details:c,rootEdges:m,rootId:t,registry:a,nodeLimit:i,tokenBudget:s,initialTokens:w}),{nodes:S}=E,P=new Set([t,...S.map(({id:V})=>V)]),j=Cf({graph:e,included:P,options:r,registry:a,edgeLimit:o,tokenBudget:s,initialTokens:E.usedTokens}),{edges:M,usedTokens:Ce}=j,N=b+S.length,B=N<p.rows.length,Y=S.at(-1),X=j.candidateCount-M.length,te=p.depthTruncated||B||X>0,ae={rootId:t,...u.status===void 0?{}:{rootStatus:u.status},...h,discoveredNodes:p.rows.length,returnedNodes:S.length,returnedEdges:M.length,omittedNodes:p.rows.length-N,omittedEdges:X,evidenceCount:f.length,hasMore:B};return{root:u,summary:ae,nodes:S,edges:M,evidence:f,meta:{exact:!0,truncated:te,completeness:te?"truncated":"complete",nodeLimit:i,edgeLimit:o,tokenBudget:s,usedTokens:Ce,visitedNodes:p.visitedNodes,inspectedEdges:p.inspectedEdges,omittedNodes:p.rows.length-N,omittedEdges:X,...B&&Y?{nextCursor:de(v,Y.id,N-1)}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="620bf4e4-e6d1-5520-89e4-0859f57c7afe")}catch{}})();var Sf=["tree","graph","context"],Tf=["none","repeated"],Rf=["outgoing","incoming","both"],xf=32,Df=200,Af=400,Of=16e3;function Lf(e){let t=e?.trim().toLowerCase()??"tree";if(Sf.includes(t))return t;throw new g(`Invalid --format value "${e}". Use "tree", "graph", or "context".`,_.USAGE)}function he(e,t){if(e===void 0)return;let n=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(n)||n<1)throw new g(`Invalid --${t} value "${e}". Use a positive integer.`,_.USAGE);return n}function An(e){if(e===void 0)return;let t=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(t)||t<0)throw new g(`Invalid --max-depth value "${e}". Use a non-negative integer.`,_.USAGE);return t}function Ff(e){let t=e?.trim().toLowerCase()??"none";if(Tf.includes(t))return t;throw new g(`Invalid --collapse value "${e}". Use "none" or "repeated".`,_.USAGE)}function ei(e){let t=e?.trim().toLowerCase()??"both";if(Rf.includes(t))return t;throw new g(`Invalid --direction value "${e}". Use "outgoing", "incoming", or "both".`,_.USAGE)}function ti(e,t=ne()){if(e===void 0)return;let n=(Array.isArray(e)?e:[e]).flatMap(i=>i.split(",")).map(i=>i.trim()).filter(i=>i.length>0);if(n.length===0)return;let r=new Set;for(let i of n){let o=t.resolve(i);if(!o){let s=t.list().map(a=>a.kind).join(", ");throw new g(`Invalid --kind value "${i}". Registered kinds: ${s}.`,_.USAGE)}r.add(o.kind)}return[...r].sort()}function Mf(e){if(!e||e.length===0)return[];let t=e.map(({id:r,kind:i})=>({id:r.trim(),kind:i.trim().toLowerCase()})).sort((r,i)=>{let o=r.kind.localeCompare(i.kind);return o!==0?o:r.id.localeCompare(i.id)}),n=new Map;for(let r of t){let i=`${r.kind.toLowerCase()}::${r.id.toLowerCase()}`;n.has(i)||n.set(i,{id:r.id,kind:r.kind})}return[...n.values()]}function Nf(e){return{id:e.id,title:e.title,type:e.type,status:e.status,dependencies:Mf(e.dependencies)}}function $f(e){return Yt(new TextEncoder().encode(JSON.stringify({...e,dependencies:void 0})).byteLength)}function Pf(e,t,n,r,i,o,s,a,c){for(let d of t.dependencies){let l=Math.max(1,Math.ceil(JSON.stringify({from:e.id,to:d.id,kind:d.kind}).length/3));if(a.nodes>=a.nodeLimit){e.truncated=!0,a.reasons.add("node_limit");break}if(a.edges>=a.edgeLimit){e.truncated=!0,a.reasons.add("edge_limit");break}if(a.estimatedTokens+l>=a.tokenBudget){e.truncated=!0,a.reasons.add("token_budget");break}a.edges+=1,a.estimatedTokens+=l,e.dependencies.push(_a(d.id,n,r,i,o,s,a,c+1,d.kind))}}function jf(e,t,n,r,i,o,s,a){return s.estimatedTokens>=s.tokenBudget&&t?.dependencies.length?(e.truncated=!0,s.reasons.add("token_budget"),!0):!t||e.cycle?!0:r!==void 0&&a>=r?(t.dependencies.length>0&&(e.truncated=!0,s.reasons.add("max_depth")),!0):i==="repeated"&&o.has(n)?(e.collapsed=!0,!0):!1}function _a(e,t,n,r,i,o,s,a=0,c){let d=e.trim().toLowerCase(),l=t.get(d),u={id:l?.id??e,title:l?.title,type:l?.type,status:l?.status,via:c,missing:!l,cycle:n.has(d),dependencies:[]};if(s.nodes+=1,s.estimatedTokens+=$f(u),jf(u,l,d,r,i,o,s,a))return u;i==="repeated"&&o.add(d);let f=new Set(n);return f.add(d),Pf(u,l,t,f,r,i,o,s,a),u}function ga(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 Uf(e){let t=new Map,n=new Map,r=[e];for(;r.length>0;){let a=r.pop();t.set(a.id,ga(t.get(a.id),{id:a.id,title:a.title,type:a.type,status:a.status,missing:a.missing}));for(let c of a.dependencies){t.set(c.id,ga(t.get(c.id),{id:c.id,title:c.title,type:c.type,status:c.status,missing:c.missing}));let d=c.via??"related",l=`${a.id}::${c.id}::${d}`;n.has(l)||n.set(l,{from:a.id,to:c.id,kind:d}),c.cycle||r.push(c)}}let i=[...t.values()].sort((a,c)=>a.id.localeCompare(c.id)),o=[...n.values()].sort((a,c)=>{let d=a.from.localeCompare(c.from);if(d!==0)return d;let l=a.to.localeCompare(c.to);return l!==0?l:a.kind.localeCompare(c.kind)}),s=i.filter(a=>a.missing).map(a=>a.id);return{root_id:e.id,nodes:i,edges:o,missing_ids:s}}function ya(e,t,n){let r=new Set,i=new Set,o=new Set,s=new Set,a=[{id:e,depth:0}],c=0;for(;c<a.length;){let d=a[c++],l=d.id.trim().toLowerCase();r.add(l);let u=t.get(l);if(!u){o.add(l);continue}if(!(n!==void 0&&d.depth>=n)&&!s.has(l)){s.add(l);for(let f of u.dependencies)i.add(`${l}::${f.id.trim().toLowerCase()}::${f.kind}`),a.push({id:f.id,depth:d.depth+1})}}return{node_count:r.size,edge_count:i.size,edge_basis:"deduplicated_directed",missing_count:o.size}}function Hf(e,t=ne()){let n=An(e.maxDepth),r=he(e.nodeLimit,"node-limit"),i=he(e.edgeLimit,"edge-limit"),o=he(e.tokenBudget,"token-budget"),s=ti(e.kind,t);return{direction:ei(e.direction),...s===void 0?{}:{kinds:s},...n===void 0?{}:{maxDepth:n},...r===void 0?{}:{nodeLimit:r},...i===void 0?{}:{edgeLimit:i},...o===void 0?{}:{tokenBudget:o},...e.cursor?.trim()?{cursor:e.cursor.trim()}:{}}}function Bf(e,t,n,r){return ha(e.graph,t,e.details.map(i=>i.id===t&&r.length>0?{...i,evidence:r}:i),n)}function Zr(e,t,n,r){for(let i of n.slice(0,r)){let o=i?.trim();o&&e.push(`${t}:${o}`)}}async function Gf(e,t,n,r){let i=await ue(e,t,n.id_prefix,n.item_format,r);if(!i)return[];let{document:o}=await Te(i,{schema:n.schema}),s=o.metadata,a=s.files??[],c=s.tests??[],d=s.docs??[],l=[["files",a.length],["tests",c.length],["docs",d.length],["comments",(s.comments??[]).length],["notes",(s.notes??[]).length],["learnings",(s.learnings??[]).length]];if(l.every(([,f])=>f===0))return[];let u=[`linked:${l.map(([f,p])=>`${f}=${p}`).join(",")}`];return Zr(u,"file",a.map(f=>f.path),3),Zr(u,"test",c.map(f=>f.command??f.path),2),Zr(u,"doc",d.map(f=>f.path),2),u}function Kf(e){let{canonicalId:t,context:n,missingCount:r,missingReferences:i,referenceLimit:o,summaryOnly:s}=e;return{id:t,format:"context",node_count:n.nodes.length+1,edge_count:n.edges.length,edge_basis:"deduplicated_directed",missing_count:r,missing_scope:"traversal",missing_reference_count:i.length,...s?{}:{missing_references:i.slice(0,o),context:n}}}function zf(e){let{row:t,missingReachableSet:n,packetIds:r,filteredKinds:i,registry:o}=e;if(t.no_active_blocker_sentinel||!n.has(t.target_id.trim().toLowerCase())||!r.has(t.holder_id))return!1;if(i===void 0)return!0;let s=o.resolve(t.kind);return s!==void 0&&(i.has(s.kind)||s.inverse!==void 0&&i.has(s.inverse))}function va(e,t,n){let r;for(;;){let i=Yt(new TextEncoder().encode(Cr(kr("deps",e),t)).byteLength);if(i===r)return i;n(i),r=i}}function Vf(e){return e instanceof TypeError&&e.message.startsWith("Relationship context tokenBudget cannot fit ")}function qf(e){try{return Bf(e.assembly,e.canonicalId,{...e.contextOptions,...e.internalTokenBudget===void 0?{}:{tokenBudget:e.internalTokenBudget}},e.rootEvidence)}catch(t){if(e.smallestResult!==void 0&&Vf(t))return e.smallestResult;throw t}}function Wf(e){let{assembly:t,canonicalId:n,contextOptions:r,rootEvidence:i,summaryOnly:o,outputFormat:s,missingCount:a,missingReferences:c}=e,d=r.edgeLimit??40,l=r.tokenBudget,u,f;for(;;){let p=qf({assembly:t,canonicalId:n,contextOptions:r,internalTokenBudget:l,rootEvidence:i,smallestResult:f});if("format"in p)return p;let m=p;u??=m.meta.tokenBudget,l??=u;let h=Kf({canonicalId:n,context:m,missingCount:a,missingReferences:c,referenceLimit:d,summaryOnly:o});if(f=h,o||(m.meta.tokenBudget=u,m.meta.usedTokens=va(et(h,!1),s,y=>{m.meta.usedTokens=y}),m.meta.usedTokens<=u))return h;if(d>0){d-=1;continue}let v=l,b=v*u/m.meta.usedTokens;l=Math.min(v-1,Math.max(1,Math.floor(b*.9)))}}function Yf(e){let{assembly:t,canonicalId:n,options:r,rootEvidence:i,summaryOnly:o,outputFormat:s}=e,a=Hf(r,t.graph.registry()),c=t.graph.closure(n,{direction:a.direction,...a.kinds===void 0?{}:{kinds:a.kinds},maxDepth:a.maxDepth??3}),d=c.value.filter(h=>t.missingIdSet.has(h.toLowerCase())),l=new Set(d.map(h=>h.toLowerCase())),u=t.graph.registry(),f=a.kinds?new Set(a.kinds.map(h=>u.require(h).kind)):void 0,p=new Set([n,...c.value]),m=[...t.dangling.active,...t.dangling.legacy_terminal].filter(h=>zf({row:h,missingReachableSet:l,packetIds:p,filteredKinds:f,registry:u}));return Wf({assembly:t,canonicalId:n,contextOptions:a,rootEvidence:i,summaryOnly:o,outputFormat:s,missingCount:d.length,missingReferences:m})}function Xf(e){let t=[e],n;for(;t.length>0;){let r=t.pop();r.dependencies.length>0&&(n=r,t.push(...r.dependencies))}return n?(n.dependencies.pop(),n.truncated=!0,!0):!1}function Jf(e,t,n,r,i,o,s){let a=i??xf,c=he(n.nodeLimit,"node-limit")??Df,d=he(n.edgeLimit,"edge-limit")??Af,l=he(n.tokenBudget,"token-budget")??Of,u={nodeLimit:c,edgeLimit:d,tokenBudget:l,nodes:0,edges:0,estimatedTokens:0,reasons:new Set},f=_a(e,r,new Set,a,t==="graph"?"repeated":o,new Set,u),p=ya(e,r,void 0),m;for(;;){let h=Uf(f),v=u.reasons.size===0?void 0:{reasons:[...u.reasons].sort(),limits:{max_depth:a,node_limit:c,edge_limit:d,token_budget:l},estimated_tokens:0,total_node_count:p.node_count,total_edge_count:p.edge_count,omitted_node_count:Math.max(0,p.node_count-h.nodes.length),omitted_edge_count:Math.max(0,p.edge_count-h.edges.length)},b={id:e,format:t,node_count:h.nodes.length,edge_count:h.edges.length,edge_basis:"deduplicated_directed",missing_count:h.missing_ids.length,...v?{truncation:v}:{}};if(m=t==="tree"?{...b,tree:f}:{...b,graph:h},(m.truncation===void 0?Yt(new TextEncoder().encode(Cr(kr("deps",et(m,!1)),s)).byteLength):va(et(m,!1),s,y=>{m.truncation.estimated_tokens=y}))<=l)return m;if(!Xf(f))return u.reasons.add("token_budget"),m;u.reasons.add("token_budget")}}function et(e,t,n={}){let r={name:e.format==="tree"?"dependency_tree":e.format==="graph"?"dependency_graph":"relationship_context",restore_with:"--full"};return{...e,legacy_alias_counts:n,projection:{mode:t?"summary":"full",declared_field_groups:[r],included_field_groups:t?[]:[r.name]}}}async function fk(e,t,n){let r=O(process.cwd(),n.path);await U(r);let i=Lf(t.format),o=An(t.maxDepth),s=Ff(t.collapse);Wt(t.summary===!0,t.full===!0,"--summary");let a=t.summary===!0,c=await F(r),d=L(c,D()),l=await fe(r,c.item_format,d.type_to_folder,void 0,c.schema),u=J(c.schema),f=new Map(l.map(m=>[m.id.trim().toLowerCase(),Nf(m)])),p=Br(l,m=>$(m,u));for(let m of[...p.active,...p.legacy_terminal]){let h=f.get(m.holder_id.trim().toLowerCase()),v=m.kind.trim().toLowerCase();h&&!h.dependencies.some(b=>b.id.trim().toLowerCase()===m.target_id.trim().toLowerCase()&&b.kind===v)&&h.dependencies.push({id:m.target_id,kind:v})}if(!f.has(e.trim().toLowerCase()))throw new g(`Item ${e} not found`,_.NOT_FOUND);if(i==="context"){let m=f.get(e.trim().toLowerCase()).id,h=a?[]:await Gf(r,m,c,d.type_to_folder),v=w=>$(w,u),b=z(),y=xn().lookup(r,Rn(l,v,b),()=>Qe(l,v,b));return et(Yf({assembly:y.assembly,canonicalId:m,options:t,rootEvidence:h,summaryOnly:a,outputFormat:n.json===!0?"json":"toon"}),a,y.assembly.legacyAliasCounts)}return a?et({id:e,format:i,...ya(e,f,o)},!0,Object.fromEntries(Object.entries(Qe(l,m=>$(m,u)).legacyAliasCounts))):et(Jf(e,i,t,f,o,s,n.json===!0?"json":"toon"),!1,Object.fromEntries(Object.entries(Qe(l,m=>$(m,u)).legacyAliasCounts)))}(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]="f60c628a-2e42-5770-a001-39cce5f92595")}catch{}})();var Qf=ke.paths,Zf=ke.visited_paths,em=ke.path_depth;function ni(e,t){if(!Number.isFinite(t)||!Number.isInteger(t)||t<0)throw new TypeError(`Invalid path ${e} bound: ${String(t)}`)}function On(e,t){return t.hierarchyDirection==="target_parent"?e.target:e.source}function Et(e,t){return(t.precedence??"source_before_target")==="target_before_source"?e.target:e.source}function tt(e,t){let n=Et(e,t);return{predecessor:n,successor:n===e.source?e.target:e.source}}function tm(e,t,n){if(t===void 0)return;let r=e.registry(),i=new Set;for(let o of t){let s=r.require(o),a=s.traversal;if(a==="association")throw new TypeError(`Relationship kind ${s.kind} uses association traversal; use graph impact --direction both`);if(a!==n&&a!=="semantic"){let c=a==="hierarchy"?"graph ancestors or graph descendants":"graph predecessors or graph successors";throw new TypeError(`Relationship kind ${s.kind} uses ${a} traversal; use ${c}`)}i.add(s.kind)}return i}function nm(e,t,n,r,i){let o=e.registry(),s=e.neighborEdges(t,{direction:"both",...n===void 0?{}:{kinds:[...n]}}),a=[],c=new Set;for(let d of s.value){let l=o.require(d.edge.kind);n===void 0&&!l[r]||i(d,l,t)&&(c.has(d.id)||(c.add(d.id),a.push(d.id)))}return{neighbors:a,inspectedEdges:s.meta.inspectedEdges}}function rm(e,t,n,r,i,o){if(t>=n)return e.neighbors.some(s=>!o.seen.has(s))&&(o.truncated=!0),!1;for(let s of e.neighbors)if(!o.seen.has(s)){if(o.seen.add(s),o.queue.push({id:s,depth:t+1}),!o.resumed){s===i&&(o.resumed=!0);continue}if(o.value.length>=r)return o.truncated=!0,!0;o.value.push(s)}return!1}function Ln(e,t,n,r,i){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`);let o=tm(e,n.kinds,r),s=n.limit??Number.POSITIVE_INFINITY,a=n.maxDepth??Number.POSITIVE_INFINITY,c=n.after,d={seen:new Set([t]),value:[],queue:[{id:t,depth:0}],resumed:c===void 0,truncated:!1},l=0,u=0;for(let f=0;f<d.queue.length;f+=1){n.signal?.throwIfAborted();let p=d.queue[f];l+=1;let m=nm(e,p.id,o,r,i);if(u+=m.inspectedEdges,rm(m,p.depth,a,s,c,d))break}if(!d.resumed)throw new TypeError(`Traversal cursor not found in sequence: ${c}`);return{value:d.value,meta:{visitedNodes:l,inspectedEdges:u,truncated:d.truncated,nextCursor:d.value.at(-1)}}}function ba(e,t){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`)}function wa(e,t,n,r,i){let o=e.neighborEdges(t.nodes.at(-1),{direction:r,...n.kinds===void 0?{}:{kinds:n.kinds}});return i.inspectedEdges+=o.meta.inspectedEdges,o.value.filter(s=>!t.nodeSet.has(s.id))}function im(e,t,n,r,i,o,s){for(let a of wa(e,t,r,i,s)){let c=[...t.nodes,a.id],d=new Set(t.nodeSet).add(a.id),l=[...t.edges,a.edge];if(a.id===n){if(s.value.push({nodes:c,edges:l,length:l.length}),s.value.length>=o)return!0}else s.queue.push({nodes:c,nodeSet:d,edges:l})}return!1}function ka(e,t,n={}){return Ln(e,t,n,"hierarchy",(r,i)=>On(r.edge,i)===r.id)}function Ea(e,t,n={}){return Ln(e,t,n,"hierarchy",(r,i,o)=>On(r.edge,i)===o)}function Ia(e,t,n={}){return Ln(e,t,n,"ordering",(r,i)=>Et(r.edge,i)===r.id)}function Ca(e,t,n={}){return Ln(e,t,n,"ordering",(r,i,o)=>Et(r.edge,i)===o)}function om(e,t,n,r,i,o,s,a){let c={value:[],queue:[{nodes:[t],nodeSet:new Set([t]),edges:[]}],inspectedEdges:0},d=0,l=!1,u=i+1;for(let f=0;f<c.queue.length;f+=1){if(r.signal?.throwIfAborted(),c.value.length>=u||d>=o){l=!0;break}let p=c.queue[f];if(d+=1,p.edges.length>=s){wa(e,p,r,a,c).length>0&&(l=!0);continue}if(im(e,p,n,r,a,u,c)){l=!0;break}}return{value:c.value.slice(0,i),meta:{visitedNodes:d,inspectedEdges:c.inspectedEdges,truncated:l}}}function Sa(e,t,n,r={}){ba(e,t),ba(e,n);let i=r.maxPaths??Qf,o=r.maxVisitedPaths??Zf,s=r.maxDepth??em;ni("maxPaths",i),ni("maxVisitedPaths",o),ni("maxDepth",s);let a=r.direction??"outgoing";r.signal?.throwIfAborted();for(let c of r.kinds??[])e.registry().require(c);return t===n?i===0?{value:[],meta:{visitedNodes:1,inspectedEdges:0,truncated:!0}}:{value:[{nodes:[t],edges:[],length:0}],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}}:om(e,t,n,r,i,o,s,a)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="789f7451-ceb1-5e5c-b2b6-45eec49580ce")}catch{}})();var sm=16,am=2,cm=8;function Fn(e,t){if(!Number.isInteger(t)||t<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`)}function Mn(e,t,n){let r=e.registry(),i=t===void 0?void 0:new Set(t.map(o=>r.require(o).kind));for(let o of e.edges()){if(o.source===o.target)continue;let s=r.require(o.kind);i!==void 0&&!(i.has(s.kind)||s.inverse!==void 0&&i.has(s.inverse))||n(o,s)}}function dm(e,t){let n=new Map;Mn(e,t,r=>{Ta(n,r.source,r.target),Ta(n,r.target,r.source)});for(let r of n.values())r.sort();return n}function Ta(e,t,n){let r=e.get(t);r===void 0?e.set(t,[n]):r.push(n)}function lm(e,t){let n=new Map;for(let o of e){let s=t.get(o);n.set(s,(n.get(s)??0)+1)}let r,i=0;for(let[o,s]of n)(s>i||s===i&&o<r)&&(r=o,i=s);return r}function um(e,t){let n=new Map;for(let[i,o]of e){let s=n.get(o);s===void 0?n.set(o,[i]):s.push(i)}let r=[];for(let i of n.values())i.length<t||(i.sort(),r.push({representative:i[0],size:i.length,members:i}));return r.sort((i,o)=>o.size-i.size||i.representative.localeCompare(o.representative))}function Ra(e,t={}){let n=t.maxIterations??sm,r=t.minSize??am;Fn("maxIterations",n),Fn("minSize",r);let i=dm(e,t.kinds),o=e.nodes(),s=new Map(o.map(u=>[u,u])),a=0,c=!1,d=0,l=0;for(;a<n&&!c;){t.signal?.throwIfAborted(),a+=1,c=!0;for(let u of o){d+=1;let f=i.get(u);if(f===void 0)continue;l+=f.length;let p=lm(f,s);p!==s.get(u)&&(s.set(u,p),c=!1)}}return{value:{communities:um(s,r),iterations:a,converged:c},meta:{visitedNodes:d,inspectedEdges:l,truncated:!c}}}function Nn(e){return e.direction==="directed"&&(e.ordering||e.hierarchy)}function $n(e){return e.inverse!==void 0&&e.inverse<e.kind?e.inverse:e.kind}function ri(e,t){return(t.hierarchy?On(e,t):e.source===Et(e,t)?e.target:e.source)===e.target?{from:e.source,to:e.target}:{from:e.target,to:e.source}}function fm(e,t){if(t===void 0)return;let n=e.registry(),r=new Set;for(let i of t){let o=n.require(i);if(!Nn(o))throw new TypeError(`Relationship kind ${o.kind} is not a directed ordering or hierarchy kind`);r.add($n(o))}return r}function mm(e,t){let n=e.registry(),r=new Map;for(let i of e.edges()){let o=n.require(i.kind);if(!Nn(o))continue;let s=$n(o);if(t!==void 0&&!t.has(s))continue;let a=ri(i,o);if(a.from===a.to)continue;let c=r.get(s);c===void 0&&(c={adjacency:new Map,records:[]},r.set(s,c));let d=c.adjacency.get(a.from);d===void 0?c.adjacency.set(a.from,new Set([a.to])):d.add(a.to),c.records.push({...a,edge:i})}return r}function pm(e){let t=new Map;for(let[n,r]of e.adjacency)t.set(n,[...r].sort());return t}function hm(e,t,n,r){let i=[r];for(let o=n;o!==t;o=e.get(o))i.push(o);return i.push(t),i.reverse()}function gm(e,t,n,r,i,o){for(let s of e.get(n.id)??[])if(o.inspectedEdges+=1,!(n.depth===0&&s===t.to)&&!r.has(s)){if(r.set(s,n.id),s===t.to)return hm(r,t.from,n.id,s);i.push({id:s,depth:n.depth+1})}}function _m(e,t,n,r){let i=new Map([[t.from,t.from]]),o=[{id:t.from,depth:0}];for(let s=0;s<o.length;s+=1){let a=o[s];if(r.visitedNodes+=1,a.depth>=n)continue;let c=gm(e,t,a,i,o,r);if(c!==void 0)return c}}function nt(e,t={}){let n=t.maxDepth??cm;Fn("maxDepth",n),t.limit!==void 0&&Fn("limit",t.limit);let r=t.limit??Number.POSITIVE_INFINITY,i=fm(e,t.kinds),o=mm(e,i),s=[],a={visitedNodes:0,inspectedEdges:0},c=!1;e:for(let d of[...o.keys()].sort()){let l=o.get(d),u=pm(l);for(let f of l.records){t.signal?.throwIfAborted();let p=_m(u,f,n,a);if(p!==void 0){if(s.length>=r){c=!0;break e}s.push({edge:f.edge,witness:p})}}}return{value:s,meta:{visitedNodes:a.visitedNodes,inspectedEdges:a.inspectedEdges,truncated:c}}}function ym(e,t,n,r,i){let o=new Set,s=[];for(let a of n){if(a.id===e||o.has(a.id))continue;if(!i.seen.has(a.id)){if(t>=r){i.truncated=!0;continue}i.seen.add(a.id),i.queue.push({id:a.id,depth:t+1})}o.add(a.id),s.push(a.id);let c=i.predecessors.get(a.id);c===void 0&&(c=new Set,i.predecessors.set(a.id,c)),c.add(e)}return s}function vm(e,t,n){let r=n.direction??"outgoing",i=n.maxDepth??Number.POSITIVE_INFINITY,o=[],s=new Map,a={seen:new Set([t]),queue:[{id:t,depth:0}],predecessors:new Map,truncated:!1},c=0;for(let d=0;d<a.queue.length;d+=1){n.signal?.throwIfAborted();let{id:l,depth:u}=a.queue[d];o.push(l);let f=e.neighborEdges(l,{direction:r,...n.kinds===void 0?{}:{kinds:n.kinds}});c+=f.meta.inspectedEdges,s.set(l,ym(l,u,f.value,i,a))}return{order:o,successors:s,predecessors:a.predecessors,inspectedEdges:c,truncated:a.truncated}}function bm(e,t){let n=[],r=new Set([t]),i=[{id:t,index:0}];for(;i.length>0;){let o=i.at(-1),s=e.successors.get(o.id);if(o.index<s.length){let a=s[o.index];o.index+=1,r.has(a)||(r.add(a),i.push({id:a,index:0}))}else n.push(o.id),i.pop()}return n.reverse()}function wm(e,t,n,r){let i=e,o=t;for(;i!==o;){for(;r.get(i)>r.get(o);)i=n.get(i);for(;r.get(o)>r.get(i);)o=n.get(o)}return i}function km(e,t,n){let r;for(let i of[...e].sort())t.has(i)&&(r=r===void 0?i:wm(r,i,t,n));return r}function Em(e,t,n,r,i){let o=new Map([[t,t]]),s=!0;for(;s;){s=!1;for(let a of n){if(i?.throwIfAborted(),a===t)continue;let c=km(e.predecessors.get(a),o,r);c!==void 0&&o.get(a)!==c&&(o.set(a,c),s=!0)}}return o}function xa(e,t,n={}){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`);if(n.maxDepth!==void 0&&(!Number.isInteger(n.maxDepth)||n.maxDepth<0))throw new TypeError(`Invalid maxDepth bound: ${String(n.maxDepth)}`);let r=vm(e,t,n),i=bm(r,t),o=new Map(i.map((d,l)=>[d,l])),s=Em(r,t,i,o,n.signal),a=new Map(i.map(d=>[d,1]));for(let d=i.length-1;d>=0;d-=1){let l=i[d];if(l===t)continue;let u=s.get(l);a.set(u,a.get(u)+a.get(l))}let c=i.filter(d=>d!==t).map(d=>({id:d,idom:s.get(d),dominatedCount:a.get(d)-1})).sort((d,l)=>l.dominatedCount-d.dominatedCount||d.id.localeCompare(l.id));return{value:{root:t,reachableCount:r.order.length,rows:c},meta:{visitedNodes:r.order.length,inspectedEdges:r.inspectedEdges,truncated:r.truncated}}}(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]="3cef3a97-fda4-5811-9e69-04ff722e40a1")}catch{}})();function Da(e){return Math.round(e*1e6)/1e6}function Aa(e,t,n){let r=e.get(t);r===void 0?e.set(t,new Set([n])):r.add(n)}function Oa(e,t){let n=new Map(e.nodes().map(i=>[i,new Set]));Mn(e,t,i=>{n.get(i.source).add(i.target),n.get(i.target).add(i.source)});let r=new Map;for(let[i,o]of n)r.set(i,[...o].sort());return r}function Im(e,t){let n=new Map,r=new Map;return Mn(e,t,(i,o)=>{if(!o.ordering)return;let{predecessor:s,successor:a}=tt(i,o);Aa(r,s,a),Aa(n,a,s)}),{incoming:n,outgoing:r}}function Cm(e,t,n){let r=new Map([[e,0]]),i=new Map([[e,1]]),o=new Map,s=[],a=[e],c=0,d=0;for(let l=0;l<a.length;l+=1){let u=a[l];n.visitedNodes+=1,s.push(u);let f=r.get(u);u!==e&&(c+=1,d+=f);for(let p of t.get(u))if(n.inspectedEdges+=1,r.has(p)||(r.set(p,f+1),a.push(p)),r.get(p)===f+1){i.set(p,(i.get(p)??0)+i.get(u));let m=o.get(p);m===void 0?o.set(p,[u]):m.push(u)}}return{stack:s,sigma:i,predecessors:o,reachableCount:c,distanceSum:d}}function Sm(e,t,n){let r=new Map;for(let i=e.stack.length-1;i>=0;i-=1){let o=e.stack[i],s=(1+(r.get(o)??0))/e.sigma.get(o);for(let a of e.predecessors.get(o)??[])r.set(a,(r.get(a)??0)+e.sigma.get(a)*s);o!==t&&n.set(o,(n.get(o)??0)+(r.get(o)??0))}}function Tm(e,t){return t<=1||e.reachableCount===0?0:e.reachableCount/(t-1)*(e.reachableCount/e.distanceSum)}function Rm(e,t,n,r,i){return{id:e,degree:t.get(e).length,inDegree:n.incoming.get(e)?.size??0,outDegree:n.outgoing.get(e)?.size??0,betweenness:Da((r.get(e)??0)/2),closeness:Da(i.get(e))}}function La(e,t={}){let n=Oa(e,t.kinds),r=Im(e,t.kinds),i=e.nodes(),o=new Map,s=new Map,a={visitedNodes:0,inspectedEdges:0};for(let l of i){t.signal?.throwIfAborted();let u=Cm(l,n,a);s.set(l,Tm(u,i.length)),Sm(u,l,o)}let c=0;for(let l of n.values())c+=l.length;let d=i.map(l=>Rm(l,n,r,o,s)).sort((l,u)=>u.betweenness-l.betweenness||u.degree-l.degree||l.id.localeCompare(u.id));return{value:{nodeCount:i.length,edgeCount:c/2,rows:d},meta:{visitedNodes:a.visitedNodes,inspectedEdges:a.inspectedEdges,truncated:!1}}}function xm(e,t){return e<=t?{source:e,target:t}:{source:t,target:e}}function Dm(e,t,n){let r=t.get(e.node)[e.neighborIndex];if(e.neighborIndex+=1,n.inspectedEdges+=1,r!==e.parent){if(n.discovery.has(r)){n.low.set(e.node,Math.min(n.low.get(e.node),n.discovery.get(r)));return}return e.children+=1,n.discovery.set(r,n.timer),n.low.set(r,n.timer),n.timer+=1,{node:r,parent:e.node,neighborIndex:0,children:0}}}function Am(e,t,n){if(e.parent===null){e.children>1&&n.articulation.add(e.node);return}let r=e.parent,i=n.low.get(e.node);n.low.set(r,Math.min(n.low.get(r),i)),r!==t&&i>=n.discovery.get(r)&&n.articulation.add(r),i>n.discovery.get(r)&&n.bridges.push(xm(r,e.node))}function Om(e,t,n,r){n.discovery.set(e,n.timer),n.low.set(e,n.timer),n.timer+=1;let i=[{node:e,parent:null,neighborIndex:0,children:0}];for(;i.length>0;){r?.throwIfAborted();let o=i.at(-1);if(o.neighborIndex<t.get(o.node).length){let s=Dm(o,t,n);s!==void 0&&i.push(s)}else Am(o,e,n),i.pop()}}function Pn(e,t={}){let n=Oa(e,t.kinds),r={discovery:new Map,low:new Map,timer:0,articulation:new Set,bridges:[],inspectedEdges:0};for(let i of e.nodes())r.discovery.has(i)||Om(i,n,r,t.signal);return{value:{articulationPoints:[...r.articulation].sort(),bridges:r.bridges.sort((i,o)=>i.source.localeCompare(o.source)||i.target.localeCompare(o.target))},meta:{visitedNodes:r.discovery.size,inspectedEdges:r.inspectedEdges,truncated:!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]="32f3ce0d-64ac-5ad4-b27a-2a279718de22")}catch{}})();function Lm(e){let t=e.registry(),n=new Map,r=new Set;for(let i of e.edges()){let o=t.require(i.kind);if(!o.ordering)continue;let{predecessor:s,successor:a}=tt(i,o);if(r.add(s),r.add(a),s===a)continue;let c=n.get(s);c===void 0?n.set(s,new Set([a])):c.add(a)}return{forward:n,participants:r}}function Fm(e,t,n,r){if(e===void 0)return r;let i=r;for(let o of e)t.has(o)&&(i=Math.min(i,n.get(o)));return i}function Mm(e,t,n){let r=n-t;return{id:e,earliestStart:t,earliestFinish:t+1,latestStart:n,latestFinish:n+1,slack:r,critical:r===0}}function Nm(e,t,n,r,i){let o=new Map;for(let s=e.length-1;s>=0;s-=1){let a=e[s],c=Fm(t.forward.get(a),r,o,i);o.set(a,c-1)}return e.map(s=>Mm(s,n[s],o.get(s))).sort((s,a)=>s.slack-a.slack||s.earliestStart-a.earliestStart||s.id.localeCompare(a.id))}function Fa(e,t={}){t.signal?.throwIfAborted();let n=bn(e,{registry:e.registry()}),r=Lm(e),i=new Set(n.order),o=n.order.filter(d=>r.participants.has(d)),s=o.reduce((d,l)=>Math.max(d,n.depth[l]+1),0),a=Nm(o,r,n.depth,i,s),c=a.length>0;return{exact:!0,acyclic:n.acyclic,makespan:s,scheduledCount:a.length,criticalPath:c?n.criticalPath:[],criticalPathLength:c?n.criticalPathLength:0,cycles:n.cycles,rows:a,provenance:{algorithm:"critical-path-method",edgeFamily:"ordering",weighting:"unit"}}}(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]="fa17672a-97a2-5f94-bdfe-9df970cc038b")}catch{}})();function $m(e,t,n){for(let r=e.length-1;r>=0;r-=1){n?.throwIfAborted();let i=t.get(e[r]);for(let o of i.successors){n?.throwIfAborted();let s=t.get(o);if(s.latest===void 0||s.duration===void 0)continue;let a=s.latest-s.duration;(i.latest===void 0||a<i.latest)&&(i.latest=a,i.anchor=s.anchor)}}}function Pm(e,t,n,r){let i=[],o=e;for(;o!==void 0&&i.length<n;)r?.throwIfAborted(),i.push(o),o=t.get(o).predecessor;return i.reverse(),{path:i,path_truncated:o!==void 0}}function jm(e,t,n,r,i){let o=new Map(t.map(a=>[a.id,a])),s=new Map;for(let a of e){i?.throwIfAborted();let c=o.get(a),d=c?.estimated_minutes,l=typeof d=="number"&&Number.isFinite(d)&&d>=0?d:void 0,u={item:c,duration:l,pending:0,successors:new Set,earliest:0};if(c?.deadline!==void 0){let f=Date.parse(c.deadline);Number.isFinite(f)?(u.deadline=(f-n)/6e4,u.latest=u.deadline,u.anchor=a):r(a,"invalid_deadline")}s.set(a,u)}return s}function Um(e,t,n){for(let r of e.edges()){n?.throwIfAborted();let i=e.registry().require(r.kind);if(!i.ordering)continue;let{predecessor:o,successor:s}=tt(r,i),a=t.get(o);a.successors.has(s)||(a.successors.add(s),t.get(s).pending+=1)}}function Hm(e,t,n){let r=e.filter(i=>t.get(i).pending===0);for(let i=0;i<r.length;i+=1){n?.throwIfAborted();let o=r[i],s=t.get(o),a=s.earliest===null||s.duration===void 0?null:s.earliest+s.duration;for(let c of s.successors){n?.throwIfAborted();let d=t.get(c);a===null?d.earliest=null:d.earliest!==null&&(a>d.earliest||a===d.earliest&&(d.predecessor===void 0||o<d.predecessor))&&(d.earliest=a,d.predecessor=o),d.pending-=1,d.pending===0&&r.push(c)}}return r}function Bm(e,t,n,r,i,o,s,a){let c=t.duration;if(t.latest!==void 0){r.scheduled_count+=1;let d=t.latest-c;r.rows.length<o?r.rows.push({id:e,deadline_id:t.anchor,latest_start:new Date(i+d*6e4).toISOString(),slack_minutes:t.earliest===null?null:d-t.earliest}):r.truncated=!0}if(t.deadline!==void 0&&t.earliest!==null&&t.earliest+c>t.deadline)if(r.overcommitted_count+=1,r.overcommitted.length<o){let d=Pm(e,n,Math.min(o,s.remaining),a);s.remaining-=d.path.length,d.path_truncated&&(r.truncated=!0),r.overcommitted.push({deadline_id:e,deadline:t.item.deadline,shortfall_minutes:t.earliest+c-t.deadline,...d})}else r.truncated=!0}function Gm(e,t,n,r,i,o,s,a){let c={remaining:o};for(let d of e){a?.throwIfAborted();let l=t.get(d);if(l.pending>0){s(d,"cycle_or_gated_by_cycle");continue}if(l.duration===void 0){s(d,"unknown_estimate");continue}if(l.latest!==void 0&&!Number.isFinite(new Date(r+(l.latest-l.duration)*6e4).getTime())){s(d,"date_range_exceeded");continue}l.earliest===null&&s(d,"unknown_predecessor_estimate"),Bm(d,l,t,n,r,i,c,a)}}function Ma(e,t,n={}){n.signal?.throwIfAborted();let r=Date.parse(n.now??new Date().toISOString());if(!Number.isFinite(r))throw new TypeError("Invalid scheduling clock");let i=n.maxWork??1e5,o=n.limit??10;for(let[f,p]of[["maxWork",i],["limit",o]])if(!Number.isSafeInteger(p)||p<1)throw new TypeError(`Invalid scheduling ${f}`);let s={as_of:new Date(r).toISOString(),basis:"derived_elapsed_minutes",complete:!0,truncated:!1,work_limit_exceeded:!1,scheduled_count:0,residual_count:0,overcommitted_count:0,rows:[],residuals:[],overcommitted:[]},a=e.nodes(),c=e.edges();if(a.length+c.length+t.length>i)return{...s,complete:!1,work_limit_exceeded:!0};let d=(f,p)=>{s.complete=!1,s.residual_count+=1,s.residuals.length<o?s.residuals.push({id:f,reason:p}):s.truncated=!0},l=jm(a,t,r,d,n.signal);Um(e,l,n.signal);let u=Hm(a,l,n.signal);return $m(u,l,n.signal),Gm(a,l,s,r,o,i,d,n.signal),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]="ccb7d865-8baa-5379-a810-7be494eadcb1")}catch{}})();function rt(){return{nodes:0,isolated:0,degree_leq_one:0,semantic_nodes:0,without_semantic_edges:0,degree_histogram:{}}}function Pa(e,t,n,r){let i={all:rt(),active:rt(),terminal:rt()},o=new Map;for(let s of e.details){if(r?.throwIfAborted(),e.missingIdSet.has(s.id.toLowerCase())||s.status==="external")continue;let a=o.get(s.status)??rt();o.set(s.status,a);let c=e.graph.incidentEdges(s.id),d=c.some(l=>n(l.kind));for(let l of[i.all,i[t(s.status)?"terminal":"active"],a]){l.nodes+=1,l.isolated+=+(c.length===0),c.length<=1&&(l.degree_leq_one+=1),d?l.semantic_nodes+=1:l.without_semantic_edges+=1;let u=String(c.length);l.degree_histogram[u]=(l.degree_histogram[u]??0)+1}}return{coverage_by_lifecycle:i,coverage_by_status:Object.fromEntries([...o].sort(([s],[a])=>s.localeCompare(a)))}}function Na(e){if(!jn(e))return!1;let t=e;if(!["nodes","isolated","degree_leq_one","semantic_nodes","without_semantic_edges"].every(r=>Number.isSafeInteger(t[r])&&Number(t[r])>=0)||!jn(t.degree_histogram))return!1;let n=Object.entries(t.degree_histogram);return n.every(([r,i])=>/^(0|[1-9]\d*)$/.test(r)&&Number.isSafeInteger(i)&&Number(i)>=0)&&n.reduce((r,[,i])=>r+Number(i),0)===t.nodes&&Number(t.isolated)<=Number(t.degree_leq_one)&&Number(t.degree_leq_one)<=Number(t.nodes)&&Number(t.semantic_nodes)+Number(t.without_semantic_edges)===t.nodes}function jn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ja(e){for(let r of["ordering_acyclic","active_ordering_acyclic"])if(e[r]!==void 0&&typeof e[r]!="boolean")return!1;let t=e.coverage_by_lifecycle,n=e.coverage_by_status;return t===void 0&&n===void 0?!0:!jn(t)||!jn(n)?!1:["all","active","terminal"].every(r=>Na(t[r]))&&Object.values(n).every(Na)}function $a(e,t){return Object.fromEntries([...new Set([...Object.keys(e),...Object.keys(t)])].sort().map(n=>{let r=Object.hasOwn(e,n)?e[n]:rt(),i=Object.hasOwn(t,n)?t[n]:rt(),o=Object.fromEntries([...new Set([...Object.keys(r.degree_histogram),...Object.keys(i.degree_histogram)])].sort().map(s=>[s,(i.degree_histogram[s]??0)-(r.degree_histogram[s]??0)]));return[n,{nodes:i.nodes-r.nodes,isolated:i.isolated-r.isolated,degree_leq_one:i.degree_leq_one-r.degree_leq_one,semantic_nodes:i.semantic_nodes-r.semantic_nodes,without_semantic_edges:i.without_semantic_edges-r.without_semantic_edges,degree_histogram:o}]}))}function Ua(e,t){return!e.coverage_by_lifecycle||!t.coverage_by_lifecycle||!e.coverage_by_status||!t.coverage_by_status?{lifecycle_comparable:!1}:{lifecycle_comparable:!0,coverage_by_lifecycle:$a(e.coverage_by_lifecycle,t.coverage_by_lifecycle),coverage_by_status:$a(e.coverage_by_status,t.coverage_by_status)}}(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]="896e1553-b127-532f-ac39-e0d47f29eebc")}catch{}})();var it=["missing_reference_active","missing_reference_terminal","legacy_no_blocker_sentinel","ordering_cycle","legacy_ordering_cycle","ordering_storage_contradiction","legacy_ordering_storage_contradiction","hierarchy_cycle","legacy_hierarchy_cycle","hierarchy_cardinality_violation","legacy_hierarchy_cardinality_violation","hierarchy_direction_violation","legacy_hierarchy_direction_violation","duplicate_edge","legacy_duplicate_edge","duplicate_dependency_row","legacy_duplicate_dependency_row","stale_lifecycle_block","isolated_active_node","sparse_active_node"];(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]="34b2e83e-f6a1-57e7-84ee-4ad83acb2e19")}catch{}})();var Km=25,zm="milestone",Vm="outcome milestone:",qm=new Set(["discovered_from","incident_from","recurs_from","supersedes","verifies"]);function Un(e){return qm.has(e)}var Ha={error:0,warning:1,info:2};function Ba(e){return new Set((e??[]).filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()))}function ot(e,t,n,r,i,o,s,a){let c=[...i].sort((d,l)=>d.localeCompare(l));return{code:e,severity:t,policy:n,message:r(c.length),count:c.length,sample:c.slice(0,o),sample_truncated:c.length>o,remediation:s,...a===void 0?{}:{evidence:[...a].sort((d,l)=>d.localeCompare(l)).slice(0,o)}}}function Wm(e,t){return e.cycles.map(n=>ot(n.legacy_terminal?"legacy_hierarchy_cycle":"hierarchy_cycle",n.legacy_terminal?"info":"error","Structural hierarchy must be acyclic across scalar and registered dependency relationships.",r=>`${r} items participate in one hierarchy cycle.`,n.item_ids,t,n.legacy_terminal?"Preserve historical rows unless an explicit legacy repair is approved.":"Remove or retype one exact hierarchy relation before continuing mutation."))}function Ga(e,t,n){let r=e.cardinality_violations.filter(i=>i.legacy_terminal===n);return r.length===0?[]:[ot(n?"legacy_hierarchy_cardinality_violation":"hierarchy_cardinality_violation",n?"info":"error","Every structural child must resolve to at most one logical parent across all hierarchy spellings.",i=>`${i} child item${i===1?"":"s"} resolve to multiple hierarchy parents.`,r.map(i=>i.child_id),t,n?"Preserve historical rows unless an explicit legacy repair is approved.":"Remove the exact surplus hierarchy rows so each child has one parent.",r.map(i=>`${i.child_id} <- ${i.parent_ids.join(", ")}`))]}function Ka(e,t,n){let r=e.divergences.filter(i=>i.legacy_terminal===n);return r.length===0?[]:[ot(n?"legacy_hierarchy_direction_violation":"hierarchy_direction_violation",n?"info":"error","Scalar parent metadata and dependency-backed hierarchy rows must resolve to the same logical parent.",i=>`${i} child item${i===1?"":"s"} have divergent hierarchy storage surfaces.`,r.map(i=>i.child_id),t,n?"Preserve historical rows unless an explicit legacy repair is approved.":"Align the scalar parent and exact dependency rows to one canonical parent.",r.map(i=>`${i.child_id}: scalar=${i.scalar_parent_id} dependencies=${i.dependency_parent_ids.join(",")}`))]}function Ym(e,t){let n=Tn(e);return n?[...Wm(n,t),...Ga(n,t,!1),...Ga(n,t,!0),...Ka(n,t,!1),...Ka(n,t,!0)]:[]}function Xm(e){let t=e.graph.registry(),n=new Map;for(let r of e.graph.edges()){let i=t.require(r.kind);if(!i.ordering)continue;let[o,s]=(i.precedence??"source_before_target")==="target_before_source"?[r.target,r.source]:[r.source,r.target],a=n.get(o);a?a.push(s):n.set(o,[s])}for(let r of n.values())r.sort((i,o)=>i.localeCompare(o));return n}function Va(e,t){t.indexes.set(e,t.nextIndex),t.lowLinks.set(e,t.nextIndex),t.nextIndex+=1,t.stack.push(e),t.onStack.add(e)}function Jm(e,t,n,r){let i=n.get(e.node)??[];if(e.neighborIndex>=i.length)return!1;let o=i[e.neighborIndex];return e.neighborIndex+=1,r.indexes.has(o)?r.onStack.has(o)&&r.lowLinks.set(e.node,Math.min(r.lowLinks.get(e.node),r.indexes.get(o))):(Va(o,r),t.push({node:o,neighborIndex:0})),!0}function Qm(e,t,n,r){t.pop();let i=t.at(-1);if(i&&r.lowLinks.set(i.node,Math.min(r.lowLinks.get(i.node),r.lowLinks.get(e.node))),r.lowLinks.get(e.node)!==r.indexes.get(e.node))return;let o=[];for(;;){let s=r.stack.pop();if(r.onStack.delete(s),o.push(s),s===e.node)break}(o.length>1||o.length===1&&n.get(o[0])?.includes(o[0]))&&r.components.push(o.sort((s,a)=>s.localeCompare(a)))}function Zm(e){let t={indexes:new Map,lowLinks:new Map,onStack:new Set,stack:[],components:[],nextIndex:0},n=[...e.keys()].sort((r,i)=>r.localeCompare(i));for(let r of n){if(t.indexes.has(r))continue;let i=[{node:r,neighborIndex:0}];for(Va(r,t);i.length>0;){let o=i.at(-1);Jm(o,i,e,t)||Qm(o,i,e,t)}}return t.components.sort((r,i)=>r[0].localeCompare(i[0]))}function ii(e){return`${e.holder_id} -> ${e.target_id} (${e.kind})`}function ee(e,t,n,r,i,o,s,a){t.length!==0&&e.push(ot(r,i,o,s,t,n,a))}function ep(e,t,n){let r=[],i=[...e.dangling.active,...e.dangling.legacy_terminal].filter(o=>!o.no_active_blocker_sentinel);return ee(r,i.filter(o=>!t(o.holder_status)).map(ii),n,"missing_reference_active","error","Active items must not reference absent targets; missing prerequisites distort scheduling.",o=>`${o} active dangling reference(s) to absent items`,"Restore or re-create the referenced item, or remove/retype the reference on the holder."),ee(r,i.filter(o=>t(o.holder_status)).map(ii),n,"missing_reference_terminal","info","Terminal items may retain historical references, but absent targets remain unexplainable context.",o=>`${o} terminal dangling reference(s) to absent items`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),ee(r,e.dangling.no_active_blocker_sentinels.map(ii),n,"legacy_no_blocker_sentinel","info","The pre-structured-dependency no-active-blocker sentinel is retired; real edges carry blocker state.",o=>`${o} legacy no-active-blocker sentinel reference(s)`,"Delete the sentinel reference; blocker state is derived from blocked_by edges."),r}function si(e,t){let n=t.get(e);return n?!n.terminal:!0}function qa(e){return`${e.holder_id} -> ${e.target_id} (blocked_by scalar + ${e.dependency_kind} dependency)`}function tp(e,t){let n=[],r=[];for(let o of e.orderingContradictions??[])(o.legacy_terminal?r:n).push(qa(o));let i=[];return ee(i,n,t,"ordering_storage_contradiction","error","A scalar blocker and same-target structured ordering row must not assert opposite precedence.",o=>`${o} active scalar-versus-structured ordering contradiction(s)`,"Remove the structured dependency row that points the holder before its scalar blocker, or replace both representations with one unambiguous ordering edge."),ee(i,r,t,"legacy_ordering_storage_contradiction","info","Terminal scalar-versus-structured ordering contradictions are exact historical storage defects with no live scheduling effect.",o=>`${o} terminal scalar-versus-structured ordering contradiction(s)`,"Remove the contradictory blocks dependency row in a dedicated changelog-safe closed-item batch; preserve the scalar blocker as the historical precedence record."),i}function np(e,t,n,r){let i=[],o=Xm(e);for(let c of Zm(o)){let d=c.some(f=>si(f,t)),l=new Set(c.map(f=>f.toLowerCase())),u=(e.orderingContradictions??[]).filter(f=>l.has(f.holder_id.toLowerCase())&&l.has(f.target_id.toLowerCase())).map(qa);i.push(d?ot("ordering_cycle","error","Order-bearing relationship kinds must stay acyclic; a cycle makes every member unschedulable.",f=>`execution-order cycle across ${f} item(s)`,c,r,"Remove or retype one ordering edge inside the cycle, or split the work so precedence is linear.",u.length===0?void 0:u):ot("legacy_ordering_cycle","info","Ordering cycles between exclusively terminal items are historical contradictions with no scheduling effect.",f=>`terminal-only execution-order cycle across ${f} item(s)`,c,r,"Leave as history debt, or clean up in a dedicated changelog-safe closed-item batch; never repair closed items ad hoc.",u.length===0?void 0:u))}let s=new Map;for(let[c,d]of o)for(let l of d){let u=s.get(l);u?u.push(c):s.set(l,[c])}let a=[...t.values()].filter(c=>!c.missing&&!c.terminal&&n(c.status)&&!(s.get(c.id)??[]).some(d=>{let l=t.get(d);return l===void 0||!l.terminal})).map(c=>c.id);return ee(i,a,r,"stale_lifecycle_block","warning","A blocked lifecycle status must be backed by at least one open ordering predecessor.",c=>`${c} status-blocked item(s) with no open blocker edge`,'Add a local blocker edge, declare an external blocker with --dep "id=<external-ref>,kind=blocked_by,source_kind=external", or move the item back to an active status.'),i}function Hn(e){let t=e.edges.map(n=>n.kind).sort((n,r)=>n.localeCompare(r));return`${e.from} -> ${e.to} (${t.join(" + ")})`}function ai(e){let t=e.graph.registry(),n=new Map;for(let i of e.graph.edges()){let o=t.require(i.kind);if(!Nn(o))continue;let s=ri(i,o);if(s.from===s.to)continue;let a=`${$n(o)}::${s.from}::${s.to}`,c=n.get(a);c?c.edges.push(i):n.set(a,{...s,edges:[i]})}let r=[...n.values()].filter(i=>i.edges.length>=2);for(let i of r)i.edges.sort((o,s)=>o.kind.localeCompare(s.kind));return r.sort((i,o)=>i.from.localeCompare(o.from)||i.to.localeCompare(o.to))}function rp(e,t,n){let r=[],i=[];for(let s of ai(e))(si(s.from,t)||si(s.to,t)?r:i).push(Hn(s));let o=[];return ee(o,r,n,"duplicate_edge","info","One semantic relationship should be stored once; parallel same-family spellings (reciprocal inverse pairs included) add no information and skew degree metrics.",s=>`${s} duplicated relationship(s) between active endpoints`,"Remove all but one stored spelling of the relationship; keep the canonical direction the holder declared first."),ee(o,i,n,"legacy_duplicate_edge","info","Duplicated spellings between exclusively terminal items are historical noise with no scheduling effect.",s=>`${s} duplicated relationship(s) between terminal endpoints`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),o}function ip(e,t){let n=[],r=[];for(let o of e.duplicateRows??[])(o.legacy_terminal?r:n).push(`${o.holder_id} -> ${o.target_id} (${o.kind} x${o.occurrences})`);let i=[];return ee(i,n,t,"duplicate_dependency_row","warning","One dependency row must be stored once per holder; identical repeated rows are a storage-layer defect invisible to the assembled graph.",o=>`${o} exactly duplicated stored dependency row(s) on active holder(s)`,"Remove the repeated rows so the dependency is stored exactly once; graph semantics are unchanged."),ee(i,r,t,"legacy_duplicate_dependency_row","info","Identical repeated dependency rows on terminal holders are historical storage noise with no scheduling effect.",o=>`${o} exactly duplicated stored dependency row(s) on terminal holder(s)`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),i}function op(e,t){let n=new Map,r={source_to_target:[],target_to_source:[],both:[]};for(let s of e.graph.registry().list())s.outcomeTraversal!==void 0&&r[s.outcomeTraversal].push(s.kind);let i={source_to_target:r.source_to_target.join(","),target_to_source:r.target_to_source.join(","),both:r.both.join(",")},o=(s,a)=>{let c=n.get(a)??new Set;c.add(s),n.set(a,c)};for(let s of e.graph.edges()){t?.throwIfAborted();let a=e.graph.registry().require(s.kind);(a.outcomeTraversal==="source_to_target"||a.outcomeTraversal==="both")&&o(s.source,s.target),(a.outcomeTraversal==="target_to_source"||a.outcomeTraversal==="both")&&o(s.target,s.source)}return{basis:i,reverse:n}}function sp(e,t,n){let r=new Set(e),i=[...e].sort();for(let o=0;o<i.length;o+=1){n?.throwIfAborted();for(let s of[...t.get(i[o])??[]].sort())r.has(s)||(r.add(s),i.push(s))}return r}function ap(e,t,n,r){let i=0,o=0,s=0,a=0;for(let p of e.values())if(r?.throwIfAborted(),!t.has(p.id)&&!(p.missing||p.status==="external")){if(p.terminal){s+=1,n.has(p.id)&&(a+=1);continue}n.has(p.id)?i+=1:o+=1}let c=i+o,d=s-a,l=i+a,u=o+d,f=l+u;return{active_outcome_reachable_nodes:i,active_outcome_unreachable_nodes:o,active_outcome_reachability_basis_points:c===0?0:Math.floor(i*1e4/c),terminal_nodes:s,terminal_outcome_reachable_nodes:a,terminal_outcome_unreachable_nodes:d,terminal_outcome_reachability_basis_points:s===0?0:Math.floor(a*1e4/s),outcome_reachable_nodes:l,outcome_unreachable_nodes:u,outcome_reachability_basis_points:f===0?0:Math.floor(l*1e4/f)}}function cp(e,t,n){let r=new Set(e.details.filter(a=>a.type?.toLowerCase()===zm&&a.title.trim().toLowerCase().startsWith(Vm)).map(a=>a.id)),{basis:i,reverse:o}=op(e,n),s=sp(r,o,n);return{outcome_nodes:r.size,outcome_reachability_basis:i,...ap(t,r,s,n)}}function dp(e,t,n,r,i){e.active+=1;let o=t.type??"(untyped)",s=e.byType.get(o);s||(s={active:0,isolated:0,degree_leq_one:0},e.byType.set(o,s)),s.active+=1,!(n>1)&&(e.degreeLeqOne+=1,s.degree_leq_one+=1,n===0&&(e.isolated+=1,s.isolated+=1),!(r.has(t.id.toLowerCase())||i.has(o.toLowerCase()))&&(n===0?e.isolates.push(t.id):e.sparse.push(t.id)))}function lp(e,t,n,r,i,o,s){let a={active:0,missing:0,isolated:0,degreeLeqOne:0,isolates:[],sparse:[],byType:new Map};for(let y of e.graph.nodes()){s?.throwIfAborted();let w=t.get(y);if(w){if(w.missing){a.missing+=1;continue}w.terminal||dp(a,w,e.graph.incidentEdges(y).length,n,r)}}let{isolates:c,sparse:d}=a,l=[];ee(l,c,i,"isolated_active_node","warning","Active work should be reachable from the graph unless explicitly declared a valid isolate.",y=>`${y} active item(s) with no relationships`,"Link the item to its parent, prerequisite, or origin \u2014 or register it as an exempt isolate."),ee(l,d,i,"sparse_active_node","info","Active items with a single edge often miss an honest semantic partner; sparse is not automatically defective.",y=>`${y} active item(s) with exactly one relationship`,"Investigate for an honest second edge (story->task, defect family, cross-epic complement); do not fabricate one.");let u=e.graph.edges().length,f=nt(e.graph,{signal:s}).value,p=new Set(f.map(({edge:y})=>`${y.source.toLowerCase()}\0${y.target.toLowerCase()}\0${y.kind}`));for(let y of e.orderingContradictions??[])p.add(`${y.holder_id.toLowerCase()}\0${y.target_id.toLowerCase()}\0${y.dependency_kind}`);let m=Object.fromEntries(Object.entries(o).sort(([y],[w])=>y.localeCompare(w))),h=Object.entries(m).reduce((y,[w,E])=>y+(Un(w)?E:0),0),v=Pn(e.graph,{signal:s}).value,b=cp(e,t,s);return{findings:l,profile:{nodes:e.graph.nodes().length,recorded_nodes:e.details.filter(y=>y.status!=="missing"&&y.status!=="external").length,edges:u,informative_edges:u-p.size,redundant_edges:f.length,ordering_contradiction_edges:e.orderingContradictions?.length??0,edge_basis:"deduplicated_directed",edges_by_kind:m,edge_share_by_kind:Object.fromEntries(Object.entries(m).map(([y,w])=>[y,w/u])),semantic_edges:h,semantic_edge_share:u===0?0:h/u,active_nodes:a.active,missing_nodes:a.missing,isolated_active_nodes:a.isolated,degree_leq_one_active_nodes:a.degreeLeqOne,coverage_by_type:Object.fromEntries([...a.byType.entries()].sort(([y],[w])=>y<w?-1:1)),articulation_points:v.articulationPoints.length,bridge_edges:v.bridges.length,...b,finding_subjects_by_code:Object.fromEntries(it.map(y=>[y,0]))}}}function Bn(e,t={}){let n=t.isTerminal??(f=>f==="closed"||f==="canceled"),r=t.isBlocked??(f=>f==="blocked"),i=t.maxSampleSize??Km;if(!Number.isInteger(i)||i<1)throw new TypeError(`Invalid audit sample bound: ${String(t.maxSampleSize)}`);let o=Ba(t.exemptIsolates),s=Ba(t.isolateExemptTypes),a=new Map(e.details.map(f=>[f.id,{id:f.id,status:f.status,missing:e.missingIdSet.has(f.id.toLowerCase()),terminal:n(f.status),...f.type===void 0?{}:{type:f.type}}]));t.signal?.throwIfAborted();let c={};for(let f of e.graph.edges())c[f.kind]=(c[f.kind]??0)+1;let d=ep(e,n,i);d.push(...Ym(e,i)),t.signal?.throwIfAborted(),d.push(...tp(e,i)),t.signal?.throwIfAborted(),d.push(...np(e,a,r,i)),t.signal?.throwIfAborted(),d.push(...rp(e,a,i),...ip(e,i)),t.signal?.throwIfAborted();let l=lp(e,a,o,s,i,c,t.signal);d.push(...l.findings),d.sort((f,p)=>Ha[f.severity]-Ha[p.severity]||f.code.localeCompare(p.code)||f.sample[0].localeCompare(p.sample[0]));let u=l.profile.finding_subjects_by_code;for(let f of d)u[f.code]+=f.count;return{findings:d,profile:{...l.profile,...Pa(e,n,Un,t.signal),ordering_acyclic:!d.some(f=>f.code==="ordering_cycle"||f.code==="legacy_ordering_cycle"),active_ordering_acyclic:!d.some(f=>f.code==="ordering_cycle"),finding_subjects_by_code:u}}}function oi(e,t){let n=[...new Set([...Object.keys(e),...Object.keys(t)])].sort(),r={};for(let i of n){let o=(t[i]??0)-(e[i]??0);o!==0&&(r[i]=o)}return r}function za(e){return e.profile.coverage_by_type??{}}function up(e,t){let n={},r=za(e),i=za(t),o=[...new Set([...Object.keys(r),...Object.keys(i)])].sort();for(let s of o){let a=Object.assign({active:0,isolated:0,degree_leq_one:0},r[s]),c=Object.assign({active:0,isolated:0,degree_leq_one:0},i[s]),d={active:c.active-a.active,isolated:c.isolated-a.isolated,degree_leq_one:c.degree_leq_one-a.degree_leq_one};Object.values(d).some(l=>l!==0)&&(n[s]=d)}return n}function Wa(e,t){let n=up(e,t),{edge_share_by_kind:r={},semantic_edges:i=0,semantic_edge_share:o=0}=e.profile,{edge_share_by_kind:s={},semantic_edges:a=0,semantic_edge_share:c=0}=t.profile,d=e.profile.recorded_nodes??e.profile.nodes,l=t.profile.recorded_nodes??t.profile.nodes,u=e.profile.informative_edges??e.profile.edges,f=t.profile.informative_edges??t.profile.edges,p=e.profile.redundant_edges??0,m=t.profile.redundant_edges??0,h=e.profile.ordering_contradiction_edges??0,v=t.profile.ordering_contradiction_edges??0;return{baseline_saved_at:e.saved_at,same_snapshot:e.fingerprint===t.fingerprint,affected_subjects_by_code:oi(e.affected_subjects_by_code,t.affected_subjects_by_code),profile:{nodes:t.profile.nodes-e.profile.nodes,recorded_nodes:l-d,edges:t.profile.edges-e.profile.edges,informative_edges:f-u,redundant_edges:m-p,ordering_contradiction_edges:v-h,active_nodes:t.profile.active_nodes-e.profile.active_nodes,missing_nodes:t.profile.missing_nodes-e.profile.missing_nodes,isolated_active_nodes:t.profile.isolated_active_nodes-e.profile.isolated_active_nodes,degree_leq_one_active_nodes:t.profile.degree_leq_one_active_nodes-e.profile.degree_leq_one_active_nodes,edges_by_kind:oi(e.profile.edges_by_kind,t.profile.edges_by_kind),edge_share_by_kind:oi(r,s),semantic_edges:a-i,semantic_edge_share:c-o,coverage_by_type:n,...Ua(e.profile,t.profile)}}}import Ya 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]="e5089f2d-3fc5-5843-95ab-ba3dd2ab9582")}catch{}})();var Xa=2,ci=500,fp=64,mp="graph-durable-cache";function Ja(e){return Be(e,mp,30,`graph-cache:${process.pid}`,!1,!1,3e3)}function Ct(e){return Ya.join(e,"runtime","graph-cache.json")}function Qa(e){return Ya.join(e,"runtime","graph-audit-baseline.json")}function di(e){if(e!==null)try{let t=JSON.parse(e);return typeof t!="object"||t===null||t.version!==Xa||typeof t.fingerprint!="string"||typeof t.saved_at!="string"||typeof t.results!="object"||t.results===null||Array.isArray(t.results)?void 0:t}catch{return}}async function li(e,t){let n=await ye(Ct(e)),r=di(n),i=r?.fingerprint===t;return{exists:n!==null,fresh:i,results:i?r.results:{}}}async function ui(e,t,n,r,i){let o=await Ja(e);try{let s=di(await ye(Ct(e))),a=s?.fingerprint===t?s.results:{};delete a[r],a[r]=i;let c=Object.keys(a);for(let d of c.slice(0,Math.max(0,c.length-fp)))delete a[d];await W(Ct(e),JSON.stringify({version:Xa,fingerprint:t,saved_at:new Date().toISOString(),results:a})),n.results=a}finally{await o()}}async function fi(e){let t=await Ja(e);try{await go(Ct(e))}finally{await t()}}async function Za(e,t){let n=Ct(e),r=await ye(n),i=di(r);return i===void 0?{exists:r!==null,fresh:!1,entry_count:0}:{exists:!0,fresh:i.fingerprint===t,entry_count:Object.keys(i.results).length,fingerprint:i.fingerprint.slice(0,12),saved_at:i.saved_at,bytes:Buffer.byteLength(r,"utf8")}}function mi(e,t){return t||e>=ci}function Gn(e){return st(e)&&Object.values(e).every(Fe)}function st(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Fe(e){return Number.isInteger(e)&&Number(e)>=0}function ec(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=1}function It(e,t){return e===void 0||t(e)}function pp(e){return st(e)&&Object.values(e).every(ec)}function hp(e){return st(e)?Object.values(e).every(t=>st(t)&&[t.active,t.isolated,t.degree_leq_one].every(Fe)):!1}function gp(e,t,n){let r=["recorded_nodes","informative_edges","redundant_edges","ordering_contradiction_edges"],i=r.filter(s=>e[s]!==void 0).length;if(i!==0&&i!==r.length||!r.every(s=>It(e[s],Fe)))return;let o={recorded_nodes:e.recorded_nodes??t,informative_edges:e.informative_edges??n,redundant_edges:e.redundant_edges??0,ordering_contradiction_edges:e.ordering_contradiction_edges??0};return o.recorded_nodes<=t&&o.informative_edges<=n&&o.redundant_edges<=n&&o.ordering_contradiction_edges<=n?o:void 0}function _p(e,t,n){let r=[...t,...n,"finding_subjects_by_code"],i=r.filter(o=>e[o]!==void 0).length;return i!==0&&i!==r.length?!1:t.every(o=>It(e[o],Fe))&&n.every(o=>It(e[o],Fe)&&(e[o]===void 0||Number(e[o])<=1e4))&&It(e.finding_subjects_by_code,Gn)}function yp(e,t,n,r){let i=gp(e,n,r);if(i===void 0)return;let o=["articulation_points","bridge_edges","outcome_nodes","active_outcome_reachable_nodes","active_outcome_unreachable_nodes","terminal_nodes","terminal_outcome_reachable_nodes","terminal_outcome_unreachable_nodes","outcome_reachable_nodes","outcome_unreachable_nodes"],s=["active_outcome_reachability_basis_points","terminal_outcome_reachability_basis_points","outcome_reachability_basis_points"];if(!_p(e,o,s)||e.edge_basis!==void 0&&e.edge_basis!=="deduplicated_directed")return;let a=Gn(e.finding_subjects_by_code)?e.finding_subjects_by_code:{};return{edge_basis:"deduplicated_directed",...i,...Object.fromEntries(o.map(c=>[c,e[c]??0])),...Object.fromEntries(s.map(c=>[c,e[c]??0])),finding_subjects_by_code:Object.fromEntries(it.map(c=>[c,a[c]??t[c]??0]))}}function vp(e,t,n,r,i){let o=[n,r,i],s=o.filter(d=>d!==void 0).length;if(s===0)return{edge_share_by_kind:{},semantic_edges:0,semantic_edge_share:0};if(s!==o.length||!pp(n)||!Fe(r)||!ec(i))return;let a=Object.entries(t);if(a.reduce((d,[,l])=>d+l,0)!==e||Object.keys(n).length!==a.length||a.some(([d,l])=>n[d]!==(e===0?0:l/e)))return;let c=a.reduce((d,[l,u])=>d+(Un(l)?u:0),0);if(!(r!==c||i!==(e===0?0:c/e)))return{edge_share_by_kind:n,semantic_edges:r,semantic_edge_share:i}}function bp(e){if(e!==null)try{let t=JSON.parse(e);if(!st(t))return;let n=t,r=n.profile;if(typeof n.saved_at!="string"||typeof n.fingerprint!="string")return;let i=n.affected_subjects_by_code;if(!Gn(i)||!st(r)||!ja(r)||![r.nodes,r.edges,r.active_nodes,r.missing_nodes,r.isolated_active_nodes,r.degree_leq_one_active_nodes].every(Fe)||!Gn(r.edges_by_kind)||!It(r.coverage_by_type,hp))return;let o=vp(r.edges,r.edges_by_kind,r.edge_share_by_kind,r.semantic_edges,r.semantic_edge_share);if(o===void 0)return;let s=yp(r,i,r.nodes,r.edges);if(s===void 0)return;let{coverage_by_type:a={}}=r;return{...n,profile:{...r,...o,...s,coverage_by_type:a}}}catch{return}}async function tc(e){return bp(await ye(Qa(e)))}async function nc(e,t){await W(Qa(e),JSON.stringify(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]="253f392d-4e91-57ec-b656-6134583d57e5")}catch{}})();var wp={missing_reference_active:{op:"investigate",confidence:"medium",rationale:"Restore or re-create the referenced item, or remove/retype the reference on the active holder; the correct fix depends on why the target is absent."},missing_reference_terminal:{op:"waive",confidence:"high",rationale:"Terminal-holder reference to an absent item is historical debt; waive it or clean it up only in a dedicated changelog-safe closed-item batch."},legacy_no_blocker_sentinel:{op:"remove",confidence:"high",rationale:"The pre-structured-dependency no-active-blocker sentinel is retired and carries no information; blocker state derives from blocked_by edges."},ordering_cycle:{op:"investigate",confidence:"low",rationale:"Every cycle member is unschedulable until one ordering edge is removed or retyped; the planner never chooses which edge to cut."},legacy_ordering_cycle:{op:"waive",confidence:"high",rationale:"Terminal-only ordering cycles have no scheduling effect; repairing them would mutate closed history (changelog drag)."},ordering_storage_contradiction:{op:"remove",confidence:"high",rationale:"The structured ordering row asserts the opposite precedence from the same-target scalar blocker; remove that exact dependency row or replace both representations with one unambiguous edge."},legacy_ordering_storage_contradiction:{op:"remove",confidence:"high",rationale:"The terminal holder contains a proven contradictory structured ordering row; remove it in a dedicated changelog-safe batch while preserving the scalar blocker as history."},hierarchy_cycle:{op:"investigate",confidence:"low",rationale:"Cut or retype one exact structural relation in the cycle; the planner preserves every evidence row because intent determines the correct parent."},legacy_hierarchy_cycle:{op:"waive",confidence:"high",rationale:"Terminal-only hierarchy cycles are historical debt; waive them unless an explicit closed-history repair is approved."},hierarchy_cardinality_violation:{op:"investigate",confidence:"medium",rationale:"Choose the canonical parent and remove or retype the exact surplus hierarchy rows; the planner cannot infer ownership intent."},legacy_hierarchy_cardinality_violation:{op:"waive",confidence:"high",rationale:"Multiple parents confined to terminal items are historical debt; waive them unless a dedicated history repair is approved."},hierarchy_direction_violation:{op:"investigate",confidence:"medium",rationale:"Align the scalar parent and dependency-backed hierarchy rows to the intended canonical parent."},legacy_hierarchy_direction_violation:{op:"waive",confidence:"high",rationale:"Divergent hierarchy storage confined to terminal items is historical debt; waive it unless a dedicated history repair is approved."},duplicate_edge:{op:"remove",confidence:"high",rationale:"Parallel same-family spellings state one relationship twice; remove all but one stored spelling, keeping the holder's canonical direction."},legacy_duplicate_edge:{op:"waive",confidence:"high",rationale:"Duplicated spellings between terminal items are historical noise; waive or batch changelog-safe cleanup."},duplicate_dependency_row:{op:"remove",confidence:"high",rationale:"The identical dependency row is stored more than once on the holder; drop the repeats so the row exists exactly once \u2014 graph semantics are unchanged."},legacy_duplicate_dependency_row:{op:"waive",confidence:"high",rationale:"Repeated identical rows on terminal holders are storage noise; waive or clean up only in a changelog-safe closed-item batch."},stale_lifecycle_block:{op:"investigate",confidence:"medium",rationale:`Add a local ordering edge, declare an external blocker with --dep "id=<external-ref>,kind=blocked_by,source_kind=external", or move the item back to an active status; only the holder's owner knows which is true.`},isolated_active_node:{op:"investigate",confidence:"medium",rationale:"Link the item to its parent, prerequisite, or origin \u2014 or register it as an explicitly exempt isolate; the audit never fabricates an edge."},sparse_active_node:{op:"investigate",confidence:"low",rationale:"Investigate for an honest second edge (story-to-task, defect family, cross-epic complement); sparse is not automatically defective."}};function rc(e){return`${e.source} -${e.kind}-> ${e.target}`}function kp(e){let[t,...n]=e.edges;return n.map(r=>({op:"remove",code:"duplicate_edge",subject:rc(r),rationale:"This stored spelling restates the kept canonical edge of the same semantic family; removing it leaves the relationship stated exactly once.",evidence:[`keep: ${rc(t)}`,`group: ${Hn(e)}`],confidence:"high"}))}function Ep(e,t){if(e.code==="duplicate_edge")return e.sample.flatMap(r=>kp(t.get(r)));let n=wp[e.code];return e.sample.map(r=>({op:n.op,code:e.code,subject:r,rationale:n.rationale,evidence:[e.policy],confidence:n.confidence}))}function ic(e,t={}){let{redundancyLimit:n,...r}=t,i=Bn(e,r),o=new Map(ai(e).map(d=>[Hn(d),d])),s=i.findings.flatMap(d=>Ep(d,o)),a=i.findings.some(d=>d.sample_truncated);t.signal?.throwIfAborted();let c=nt(e.graph,{limit:n??t.maxSampleSize??25,...t.signal===void 0?{}:{signal:t.signal}});for(let d of c.value)s.push({op:"remove",code:"redundant_edge",subject:`${d.edge.source} -> ${d.edge.target} (${d.edge.kind})`,rationale:"The stored edge is implied by a longer same-family witness path; shortcut edges are sometimes deliberate emphasis, so confirm intent before removing.",evidence:[`witness: ${d.witness.join(" -> ")}`],confidence:"medium"});return a=a||c.meta.truncated,{steps:s,report:i,truncated:a,cost:{visitedNodes:c.meta.visitedNodes,inspectedEdges:c.meta.inspectedEdges}}}(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]="66df3949-0caf-5f01-8cec-3bba3d1e6111")}catch{}})();var cc=new Set(["ancestors","descendants","predecessors","successors","paths","impact","dominators"]);function oc(e,t,n){let r=e;if(t&&e.subcommand==="audit"){let{nodes:i,recorded_nodes:o,edges:s,active_nodes:a,terminal_nodes:c,missing_nodes:d,ordering_acyclic:l,active_ordering_acyclic:u,coverage_by_lifecycle:f}=e.profile,p=Object.fromEntries(Object.entries(f).map(([m,h])=>{let{degree_histogram:v,...b}=h;return[m,b]}));r={...e,profile:{nodes:i,recorded_nodes:o,edges:s,active_nodes:a,terminal_nodes:c,missing_nodes:d,ordering_acyclic:l,active_ordering_acyclic:u,coverage_by_lifecycle:p}}}return{...r,projection:{mode:t?"summary":"full",declared_field_groups:n===void 0?[]:[{name:n,restore_with:"--full"}],included_field_groups:n===void 0||t?[]:[n]}}}function Ip(e,t,n,r){return{assembly:t,...n===void 0?{}:{kinds:n},maxDepth:An(r.maxDepth),limit:e==="impact"&&Number(r.limit)===0?0:he(r.limit,"limit")??(r.full===!0?Number.MAX_SAFE_INTEGER:ke.rows),after:r.after?.trim()||void 0,direction:ei(r.direction),maxPaths:he(r.maxPaths,"max-paths"),sample:he(r.sample,"sample")??ke.samples,exemptIsolates:sc(r.exemptIsolate),exemptIsolateTypes:sc(r.exemptIsolateType),saveBaseline:r.saveBaseline===!0,summary:r.summary===!0,unbounded:r.full===!0}}function sc(e){return e===void 0?[]:(Array.isArray(e)?e:[e]).flatMap(t=>t.split(",")).map(t=>t.trim()).filter(t=>t.length>0)}function Cp(e,t,n){let r=e.trim().toLowerCase();if(!wr.includes(r))throw gs({command_path:"graph",token:r||"<empty>",allowed:wr});let i=r;if(cc.has(i)&&!t?.trim())throw new g(`graph ${i} requires an item id.`,_.USAGE);if(i==="paths"&&!n?.trim())throw new g("graph paths requires a source and a target item id.",_.USAGE);return i}function pi(e){throw e instanceof TypeError?new g(e.message,_.USAGE):e}function hi(e){return{truncated:e.truncated,cost:{visited_nodes:e.visitedNodes,inspected_edges:e.inspectedEdges}}}function ac(e,t){let n=t.trim().toLowerCase();for(let r of e.details)if(r.id.trim().toLowerCase()===n&&!e.missingIdSet.has(r.id.toLowerCase()))return r.id;throw new g(`Item ${t} not found`,_.NOT_FOUND)}function Sp(e,t,n){let r={ancestors:ka,descendants:Ea,predecessors:Ia,successors:Ca}[e],i;try{i=r(n.assembly.graph,t,{...n.kinds===void 0?{}:{kinds:n.kinds},...n.maxDepth===void 0?{}:{maxDepth:n.maxDepth},limit:n.limit,...n.after===void 0?{}:{after:n.after}})}catch(s){pi(s)}let o=hi(i.meta);return{subcommand:e,root:t,count:i.value.length,...o,...i.meta.nextCursor===void 0?{}:{next_cursor:i.meta.nextCursor},...n.summary?{}:{ids:i.value}}}function Tp(e,t,n){let r=Sa(n.assembly.graph,e,t,{direction:n.direction,...n.kinds===void 0?{}:{kinds:n.kinds},...n.maxDepth===void 0?{}:{maxDepth:n.maxDepth},...n.maxPaths===void 0?{}:{maxPaths:n.maxPaths}});return{subcommand:"paths",root:e,target:t,direction:n.direction,count:r.value.length,...hi(r.meta),...n.summary?{}:{paths:r.value.map(i=>({nodes:i.nodes,kinds:i.edges.map(o=>o.kind),length:i.length}))}}}function Rp(e,t){let n;try{n=vn(t.assembly.graph,e,{direction:t.direction,...t.kinds===void 0?{}:{kinds:t.kinds},...t.maxDepth===void 0?{}:{maxDepth:t.maxDepth},...t.unbounded?{}:{limit:t.limit},...t.after===void 0?{}:{after:t.after}})}catch(r){pi(r)}return{subcommand:"impact",root:e,direction:t.direction,count:n.affected.length,truncated:n.truncated,...n.nextCursor===void 0?{}:{next_cursor:n.nextCursor},cost:{visited_nodes:n.cost.visitedNodes,inspected_edges:n.cost.inspectedEdges},...t.summary?{}:{affected:n.affected}}}function xp(e,t,n){return{acyclic:e.acyclic,ordered_node_count:e.order.length,layer_count:e.layers.length,frontier_count:e.frontier.length,critical_path_length:e.criticalPathLength,cycle_count:e.cycles.length,...t?{}:{frontier:e.frontier.slice(0,n),critical_path:e.criticalPath.slice(0,n),cycles:e.cycles.slice(0,n)}}}function Dp(e,t,n){return{component_count:e.components.length,largest_component_size:e.components[0]?.length??0,orphan_count:e.orphans.length,...t?{}:{orphans:e.orphans.slice(0,n),hubs:e.hubs.slice(0,n)}}}function Ap(e,t,n){let r=0,i=0,o=0;for(let s of e.cycles)r+=Number(s.legacy_terminal);for(let s of e.cardinality_violations)i+=Number(s.legacy_terminal);for(let s of e.divergences)o+=Number(s.legacy_terminal);return{acyclic:e.cycles.length===0,relation_count:e.relations.length,cycle_count:e.cycles.length,active_cycle_count:e.cycles.length-r,legacy_cycle_count:r,cardinality_violation_count:e.cardinality_violations.length,active_cardinality_violation_count:e.cardinality_violations.length-i,legacy_cardinality_violation_count:i,parent_divergence_count:e.divergences.length,active_parent_divergence_count:e.divergences.length-o,legacy_parent_divergence_count:o,...t?{}:{cycles:e.cycles.slice(0,n).map(s=>s.item_ids)}}}function Op(e){let t=e.assembly.graph,n=e.limit,r=bn(t,{registry:t.registry()}),i=Es(t);return{subcommand:"analyze",node_count:t.nodes().length,edge_count:t.edges().length,edge_basis:"deduplicated_directed",sample_limit:n,execution:xp(r,e.summary,n),knowledge:Dp(i,e.summary,n),hierarchy:Ap(Tn(e.assembly),e.summary,n)}}function Lp(e,t){let n=Bn(e.assembly,{isTerminal:t,maxSampleSize:e.sample,...e.exemptIsolates.length===0?{}:{exemptIsolates:e.exemptIsolates},...e.exemptIsolateTypes.length===0?{}:{isolateExemptTypes:e.exemptIsolateTypes}}),r={},i={},o={},s={};for(let d of n.findings)r[d.severity]=(r[d.severity]??0)+1,i[d.code]=(i[d.code]??0)+1,o[d.severity]=(o[d.severity]??0)+d.count,s[d.code]=(s[d.code]??0)+d.count;let{finding_subjects_by_code:a,...c}=n.profile;return{subcommand:"audit",truncated:n.findings.length>e.limit,finding_count:n.findings.length,findings_by_severity:r,findings_by_code:i,affected_subjects_by_severity:o,affected_subjects_by_code:s,profile:e.summary?c:n.profile,legacy_alias_counts:e.assembly.legacyAliasCounts,...e.summary?{}:{findings:n.findings.slice(0,e.limit)}}}function Fp(e){let t=e.limit,n={};e.kinds!==void 0&&(n.kinds=e.kinds);let r=Ra(e.assembly.graph,n),i=r.value;return{subcommand:"communities",community_count:i.communities.length,largest_community_size:i.communities[0]?.size??0,iterations:i.iterations,converged:i.converged,truncated:!i.converged||i.communities.length>t,cost:{visited_nodes:r.meta.visitedNodes,inspected_edges:r.meta.inspectedEdges},...e.summary?{}:{communities:i.communities.slice(0,t).map(o=>({representative:o.representative,size:o.size,members:o.members.slice(0,t)}))}}}function Mp(e){let t;try{t=nt(e.assembly.graph,{...e.kinds===void 0?{}:{kinds:e.kinds},...e.maxDepth===void 0?{}:{maxDepth:e.maxDepth},limit:e.limit})}catch(n){pi(n)}return{subcommand:"redundancy",redundant_count:t.value.length,...hi(t.meta),...e.summary?{}:{redundant:t.value.map(n=>({source:n.edge.source,target:n.edge.target,kind:n.edge.kind,witness:n.witness}))}}}function Np(e,t){let n=t.limit,r=xa(t.assembly.graph,e,{direction:t.direction,...t.kinds===void 0?{}:{kinds:t.kinds},...t.maxDepth===void 0?{}:{maxDepth:t.maxDepth}}),i=r.value.rows.filter(o=>o.dominatedCount>0);return{subcommand:"dominators",root:e,direction:t.direction,reachable_count:r.value.reachableCount,bottleneck_count:i.length,truncated:r.meta.truncated||i.length>n,cost:{visited_nodes:r.meta.visitedNodes,inspected_edges:r.meta.inspectedEdges},...t.summary?{}:{bottlenecks:i.slice(0,n).map(o=>({id:o.id,idom:o.idom,dominated_count:o.dominatedCount}))}}}function $p(e){let t=e.limit,n=Fa(e.assembly.graph),r=n.rows.filter(i=>i.critical).length;return{subcommand:"slack",acyclic:n.acyclic,makespan:n.makespan,scheduled_count:n.scheduledCount,critical_count:r,critical_path_length:n.criticalPathLength,cycle_count:n.cycles.length,truncated:n.rows.length>t,...e.summary?{}:{critical_path:n.criticalPath.slice(0,t),rows:n.rows.slice(0,t).map(i=>({id:i.id,earliest_start:i.earliestStart,latest_start:i.latestStart,slack:i.slack,critical:i.critical}))}}}function Pp(e){let t=e.limit,n=La(e.assembly.graph,e.kinds===void 0?{}:{kinds:e.kinds}),r=n.value;return{subcommand:"centrality",node_count:r.nodeCount,edge_count:r.edgeCount,edge_basis:"simple_undirected",truncated:r.rows.length>t,cost:{visited_nodes:n.meta.visitedNodes,inspected_edges:n.meta.inspectedEdges},...e.summary?{}:{rows:r.rows.slice(0,t).map(i=>({id:i.id,degree:i.degree,in_degree:i.inDegree,out_degree:i.outDegree,betweenness:i.betweenness,closeness:i.closeness}))}}}function jp(e){let t=e.limit,n=Pn(e.assembly.graph,e.kinds===void 0?{}:{kinds:e.kinds}),{articulationPoints:r,bridges:i}=n.value;return{subcommand:"articulation",articulation_count:r.length,bridge_count:i.length,truncated:r.length>t||i.length>t,cost:{visited_nodes:n.meta.visitedNodes,inspected_edges:n.meta.inspectedEdges},...e.summary?{}:{articulation_points:r.slice(0,t),bridges:i.slice(0,t)}}}function Up(e,t){let n=e.limit,r=ic(e.assembly,{isTerminal:t,redundancyLimit:n,maxSampleSize:e.sample,...e.exemptIsolates.length===0?{}:{exemptIsolates:e.exemptIsolates},...e.exemptIsolateTypes.length===0?{}:{isolateExemptTypes:e.exemptIsolateTypes}}),i={},o={};for(let s of r.steps)i[s.op]=(i[s.op]??0)+1,o[s.code]=(o[s.code]??0)+1;return{subcommand:"plan",step_count:r.steps.length,steps_by_op:i,steps_by_code:o,finding_count:r.report.findings.length,truncated:r.truncated||r.steps.length>n,cost:{visited_nodes:r.cost.visitedNodes,inspected_edges:r.cost.inspectedEdges},...e.summary?{}:{steps:r.steps.slice(0,n)}}}function dc(e,t,n,r){return JSON.stringify({projection_version:2,subcommand:e,root:t??null,target:n??null,kinds:r.kinds??null,maxDepth:r.maxDepth??null,limit:r.limit,after:r.after??null,direction:r.direction,maxPaths:r.maxPaths??null,sample:r.sample,exemptIsolates:[...new Set(r.exemptIsolates.map(i=>i.toLowerCase()))].sort(),exemptIsolateTypes:[...new Set(r.exemptIsolateTypes.map(i=>i.toLowerCase()))].sort(),summary:r.summary,unbounded:r.unbounded})}function lc(e,t,n,r,i){return e==="analyze"?Op(r):e==="audit"?Lp(r,i):e==="plan"?Up(r,i):e==="communities"?Fp(r):e==="redundancy"?Mp(r):e==="dominators"?Np(t,r):e==="slack"?$p(r):e==="centrality"?Pp(r):e==="articulation"?jp(r):e==="paths"?Tp(t,n,r):e==="impact"?Rp(t,r):Sp(e,t,r)}function Hp(e,t){if(e!=="index"&&(t.rebuild===!0||t.clear===!0))throw new g("--rebuild and --clear apply only to graph index.",_.USAGE);if(e!=="audit"&&t.saveBaseline===!0)throw new g("--save-baseline applies only to graph audit.",_.USAGE);if(e==="slack"&&t.kind!==void 0)throw new g("graph slack analyzes every ordering kind; --kind is not supported.",_.USAGE);if(t.rebuild===!0&&t.clear===!0)throw new g("graph index accepts either --rebuild or --clear, not both.",_.USAGE);if(t.full===!0&&t.limit!==void 0)throw new g(`graph ${e} accepts either --full or --limit, not both.`,_.USAGE)}async function Bp(e,t,n,r,i,o){let s="status";if(o.clear===!0&&(await fi(e),s="cleared"),o.rebuild===!0){await fi(e);let c=await li(e,t),d={assembly:n.assembly,direction:"both",exemptIsolates:[],exemptIsolateTypes:[],saveBaseline:!1,summary:!0,limit:ke.rows,sample:ke.samples,unbounded:!1};for(let l of["analyze","audit"])await ui(e,t,c,dc(l,void 0,void 0,d),lc(l,void 0,void 0,d,i));s="rebuilt"}let a=await Za(e,t);return{subcommand:"index",action:s,state:a.exists?a.fresh?"fresh":"stale":"absent",entry_count:a.entry_count,item_count:r,min_items_threshold:ci,persist_enabled:mi(r,a.exists),current_fingerprint:t.slice(0,12),...a.saved_at===void 0?{}:{saved_at:a.saved_at},...a.bytes===void 0?{}:{bytes:a.bytes}}}async function Gp(e,t,n,r){let i={saved_at:new Date().toISOString(),fingerprint:t,affected_subjects_by_code:n.affected_subjects_by_code,profile:{...n.profile,finding_subjects_by_code:Object.fromEntries(it.map(s=>[s,n.affected_subjects_by_code[s]??0]))}},o=await tc(e);return r&&await nc(e,i),o===void 0?n:{...n,baseline:Wa(o,i)}}async function Kp(e,t,n,r,i){try{await ui(e,t,n,r,i)}catch{}}function zp(e,t,n,r){if(e.subcommand!=="slack")return;let i=new Set(t.assembly.details.filter(f=>r(f.status)).map(f=>f.id)),o=t.assembly.graph,s=new Bt(o.nodes().filter(f=>!i.has(f)),o.edges().filter(f=>!i.has(f.source)&&!i.has(f.target)),o.registry()),a=Ma(s,n.filter(f=>!i.has(f.id)),{now:x(),limit:t.limit}),{rows:c,residuals:d,overcommitted:l,...u}=a;e.deadline_schedule={population:"active",...u,...t.summary?{}:{rows:c,residuals:d,overcommitted:l}}}async function vE(e,t,n,r,i){let o=Cp(e,t,n);Wt(r.summary===!0,r.full===!0,"--summary");let s=O(process.cwd(),i.path);await U(s);let a=await F(s),c=L(a,D()),d=await fe(s,a.item_format,c.type_to_folder,void 0,a.schema),l=J(a.schema),u=M=>$(M,l);Hp(o,r);let f=z(),p=ti(r.kind,f),m=xn().lookup(s,Rn(d,u,f),()=>Qe(d,u,f)),h=Ip(o,m.assembly,p,r);if(o==="index")return oc(await Bp(s,m.fingerprint,h,d.length,u,r),!1);let v=cc.has(o)?ac(h.assembly,t):void 0,b=o==="paths"?ac(h.assembly,n):void 0,y=dc(o,v,b,h),w=await li(s,m.fingerprint),E=w.results[y],S=m.memoize(y,()=>E!==void 0?structuredClone(E):lc(o,v,b,h,u)),P=mi(d.length,w.exists);!S.reused&&E===void 0&&P&&await Kp(s,m.fingerprint,w,y,S.value);let j=S.value.subcommand==="audit"?await Gp(s,m.fingerprint,S.value,h.saveBaseline):S.value;return j.cache={fingerprint:m.fingerprint.slice(0,12),assembly:m.assemblyReused?"hit":"miss",result:S.reused?"hit":"miss",durable:E!==void 0?"hit":P?"miss":"off"},zp(j,h,d,u),oc(j,h.summary,"result_rows")}import gi from"node:fs/promises";import _i from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="069e2e60-11d9-5a37-a966-9073944d32a2")}catch{}})();var uc=8388608,Vp=new Set(["resolved","failed"]),qp=[{kind:"boolean",matches:e=>typeof e=="boolean"||typeof e=="string"&&/^(?:true|false)$/iu.test(e.trim())},{kind:"single_digit",matches:e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=9||typeof e=="string"&&/^\d$/u.test(e.trim())}];function ge(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function yi(e){return qp.find(t=>t.matches(e))?.kind}function fc(e){let t=new Map,n=0,r=0;return{entries:e.map(i=>{let o=ge(i.agent_provenance)?i.agent_provenance:void 0;if(o===void 0||!Wo(i).ok)return i;let s={},a=!1;for(let[d,l]of Object.entries(o)){let u=ge(l)?yi(l.value):void 0;if(u===void 0){s[d]=l;continue}a=!0,r+=1;let f=i.agent_harness??"unknown",p=`${f}\0${d}\0${u}`,m=t.get(p)??{harness:f,dimension:d,kind:u,count:0};m.count+=1,t.set(p,m)}if(!a)return i;n+=1;let c={...i};return Object.keys(s).length===0?delete c.agent_provenance:c.agent_provenance=s,Yo(i,c,{retainPriorRecord:!0,retainPriorRecordHash:!1})}),receipt:{changed:n>0,events_changed:n,observations_removed:r,invalid_values:[...t.values()].sort((i,o)=>i.harness.localeCompare(o.harness)||i.dimension.localeCompare(o.dimension)||i.kind.localeCompare(o.kind))}}}async function mc(e){let t=[];for(let n of await pc(e)??[])try{let r=await gi.readFile(_i.join(e,"history",n),"utf8");for(let i of r.split(`
1
+ import{$ as W,$f as U,$g as $o,Af as Zt,Aj as fn,Bd as qt,Be as Yt,Bi as os,Cd as wo,Cf as en,Ch as Go,Dh as Ko,Eh as zo,Fg as Ao,Fh as Sr,G as yr,Gf as tn,Gh as Vo,Gi as F,Hd as ko,Hg as Oo,Hh as qo,Hj as ke,Ia as je,Ih as Tr,Ii as ss,Im as _s,Jh as rn,Jm as ys,Kg as Q,Kh as Ve,Ki as as,Lg as R,Mg as $,Mi as ln,Na as br,Ng as Ge,Ni as cs,Nm as Or,Oa as Kt,Ob as wr,Pa as _o,Pd as Wt,Pi as Ar,Q as ho,Qh as on,Qi as un,R as _,Rd as Eo,Rg as Lo,Rh as Wo,Sg as Fo,Sh as Yo,T as g,Tg as Mo,U as vr,Uh as Xo,V as Gt,Va as L,Vd as kr,W as Pe,Wa as zt,Wf as Cr,Wh as sn,X as ce,Xa as yo,Xh as Jo,Xl as gs,Y as ye,Yc as bo,Ye as To,Yh as Qo,Ym as hn,Zm as gn,_g as No,_h as Rr,_j as ps,aa as go,ah as Po,ai as Zo,bb as O,bh as jo,ce as Io,cf as Xt,ch as Uo,ci as qe,cm as mn,df as Se,di as es,dj as ds,ef as de,ei as ts,fi as an,gh as Ke,gi as cn,hb as Ue,hc as vo,hf as Ro,hi as xr,if as He,ig as Do,ii as le,ja as K,ji as Dr,ki as ns,lg as be,li as dn,mi as De,mj as ls,ne as Co,ni as Z,oe as So,of as x,oi as rs,p as ne,ph as Ho,pi as is,qd as D,qe as Er,qf as Ir,qj as us,rf as Jt,ro as me,sf as C,sj as We,sl as hs,so as pe,tb as k,tf as xo,u as Bt,uf as ve,vb as re,vf as Be,vg as J,vj as ue,wh as we,wj as Te,xg as nn,xh as Bo,xj as fs,xm as pn,yf as Qt,yh as ze,yj as ms,zd as Vt,zj as fe}from"./chunk-4PNPDT2N.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]="59842825-3a81-53f4-845d-db2257ec6286")}catch{}})();async function Lr(e){let t=O(process.cwd(),e);await U(t);let n=await F(t),r=L(n,D());return{pmRoot:t,settings:n,typeRegistry:r}}async function _n(e,t,n,r){Ue(e,Ar(t));let i=await ue(e,t,n.id_prefix,n.item_format,r);if(i)return{id:i.id,historyPath:Ue(e,i.id),located:i};let o=un(t,n.id_prefix),s=Ar(t),a=o===s?[o]:[o,s];for(let c of a){let d=Ue(e,c);if(await Gt(d))return{id:c,historyPath:d,located:null}}throw new g(`Item ${t} not found`,_.NOT_FOUND)}(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]="eb2e6046-156c-56ee-a03a-ecaa1cccfb45")}catch{}})();function sw(e,t){let n=le(e),r=e.length>0?e[e.length-1].after_hash:Jo(),i=t===void 0||n.item_hash_version===void 0?void 0:sn(t,n.item_hash_version,be(e.at(-1)?.hash_algorithm)),o=t===void 0?void 0:i===void 0?Xo(t):i[Math.max(0,i.indexOf(r))],s=o===void 0?void 0:o===r,a=[...n.errors];return s===!1&&a.push("verify_failed:current_item_hash_mismatch"),{ok:a.length===0,entries:e.length,errors:a,latest_after_hash:e.length>0?e[e.length-1].after_hash:void 0,current_item_hash:o,current_matches_latest:s}}async function aw(e,t,n={}){let r=O(n.cwd??process.cwd(),n.pmRoot);await U(r);let i=await F(r),o=L(i,D()),s=await _n(r,e,i,o.type_to_folder),a=await ze(s.historyPath,s.id);if(a.length===0)throw new g(`No history exists for ${s.id}; point-in-time reads are unavailable.`,_.NOT_FOUND);let c=as(t,a),d=cs(ln(a,c.historyIndex),c),l=ts(d,{schema:i.schema});if(l.metadata.id!==s.id)throw new g(`History target resolved to item ${l.metadata.id}, expected ${s.id}.`,_.GENERIC_FAILURE);let u=a[c.historyIndex],f=ss(a,!0);return{document:l,reconstructed:!0,as_of_version:f===null?null:f+c.historyIndex+1,as_of_timestamp:u.ts,target:c,history_length:a.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]="403706c5-987d-5db1-95d2-b0eaded98e92")}catch{}})();function ul(e,t,n,r,i,o){if(e.seen.has(t))return"skip";if(e.cursorFound&&e.affected.length>=o)return"truncate";e.seen.add(t),e.parents.set(t,n.id);let s=n.depth+1;return e.queue.push({id:t,depth:s}),e.cursorFound?(e.affected.push({id:t,distance:s,path:yl(r,t,e.parents)}),"continue"):(e.cursorFound=t===i,"skip")}function bs(e,t,n,r){let i=Se("graph impact",{root:e,direction:n,kinds:[...t.kinds??[]].sort(),max_depth:Number.isFinite(r)?r:"unbounded"});return{fingerprint:i,after:t.after===void 0?void 0:Ro(t.after,i)}}function Ye(e,t,n){e.get(t).add(n)}function ft(e){return new Map(e.map(t=>[t,new Set]))}function ws(e){for(let t of e)t.sort();return e.sort((t,n)=>n.length-t.length||t[0].localeCompare(n[0]))}function yn(e){if(Array.isArray(e))return e.map(n=>yn(n));if(e===null||typeof e!="object")return e;let t=e.toJSON;return typeof t=="function"?yn(t.call(e)):Object.fromEntries(Object.entries(e).sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>[n,yn(r)]))}function vs(e){return JSON.stringify(yn(e))}function fl(e,t,n,r){let i=[{id:e,expanded:!1}];for(;i.length>0;){let o=i.pop();if(o.expanded){r.push(o.id);continue}if(n.has(o.id))continue;n.add(o.id),i.push({id:o.id,expanded:!0});let s=[...t.get(o.id)].sort().reverse();for(let a of s)n.has(a)||i.push({id:a,expanded:!1})}}function ml(e,t){let n=new Set,r=[];for(let i of e)n.has(i)||fl(i,t,n,r);return r}function pl(e,t){let n=new Set,r=[];for(let i of[...e].reverse()){if(n.has(i))continue;let o=[],s=[i];for(n.add(i);s.length>0;){let a=s.pop();o.push(a);for(let c of t.get(a))n.has(c)||(n.add(c),s.push(c))}r.push(o)}return ws(r)}function ks(e,t){let n=ft(e);for(let[r,i]of t)for(let o of i)Ye(n,o,r);return pl(ml(e,t),n)}function hl(e,t){let n=ft(e.nodes());for(let r of e.edges()){let i=t.require(r.kind);if(!i.ordering)continue;let o=(i.precedence??"source_before_target")==="source_before_target";Ye(n,o?r.source:r.target,o?r.target:r.source)}return n}function gl(e,t){let n=new Map(e.map(o=>[o,0]));for(let o of t.values())for(let s of o)n.set(s,n.get(s)+1);let r=e.filter(o=>n.get(o)===0).sort(),i=[];for(;r.length>0;){i.push(r);let o=[];for(let s of r)for(let a of t.get(s)){let c=n.get(a)-1;n.set(a,c),c===0&&o.push(a)}r=o.sort()}return i}function _l(e,t){let n=new Map(e.map(s=>[s,0])),r=new Map;for(let s of e)for(let a of t.get(s)){if(!n.has(a))continue;let c=n.get(s)+1,d=r.get(a);(c>n.get(a)||c===n.get(a)&&(d===void 0||s.localeCompare(d)<0))&&(n.set(a,c),r.set(a,s))}let i=[...e].sort((s,a)=>n.get(a)-n.get(s)||s.localeCompare(a))[0],o=i===void 0?[]:[i];for(;o[0]!==void 0&&r.has(o[0]);)o.unshift(r.get(o[0]));return{depth:Object.fromEntries(n),path:o}}function yl(e,t,n){let r=[t],i=t;for(;i!==e;)i=n.get(i),r.push(i);return r.reverse()}function bn(e,t={}){let n=t.registry??ne(),r=[...e.nodes()],i=hl(e,n),o=gl(r,i),s=o.flat(),a=s.length===r.length,c=a?[]:ks(r,i).filter(l=>l.length>1||i.get(l[0]).has(l[0])),d=_l(s,i);return{exact:!0,acyclic:a,order:s,layers:o,frontier:o[0]??[],depth:d.depth,criticalPath:d.path,criticalPathLength:Math.max(0,d.path.length-1),cycles:c,provenance:{algorithm:"kahn-longest-path",edgeFamily:"ordering"}}}function vl(e,t,n){let r=ft(e.nodes()),i=n===void 0?void 0:new Set(n.map(s=>e.registry().require(s).kind)),o=e.edges();for(let s of o){let a=e.registry().require(s.kind);i!==void 0&&!i.has(s.kind)&&(a.inverse===void 0||!i.has(a.inverse))||Ye(r,t==="incoming"?s.target:s.source,t==="incoming"?s.source:s.target)}return{adjacency:r,inspectedEdges:o.length}}function bl(e,t,n,r,i,o){let s=vn(e,t,{...n,after:void 0,direction:"incoming",limit:void 0}),a=vn(e,t,{...n,after:void 0,direction:"outgoing",limit:void 0}),c=new Map,d=[...s.affected,...a.affected].sort((m,h)=>m.distance-h.distance||m.id.localeCompare(h.id)||m.path.join("\0").localeCompare(h.path.join("\0")));for(let m of d)c.has(m.id)||c.set(m.id,m);let l=[...c.values()].sort((m,h)=>m.distance-h.distance||m.id.localeCompare(h.id)),u=r===void 0||r===t?-1:l.findIndex(m=>m.id===r);if(r!==void 0&&r!==t&&u<0)throw new TypeError(`Unknown impact cursor item: ${r}`);let f=l.slice(u+1,u+1+i),p=u+1+f.length<l.length;return{root:t,affected:f,exact:!0,truncated:s.truncated||a.truncated||p,...p?{nextCursor:de(o,f.at(-1)?.id??t)}:{},cost:{visitedNodes:s.cost.visitedNodes+a.cost.visitedNodes,inspectedEdges:s.cost.inspectedEdges+a.cost.inspectedEdges}}}function wl(e,t,n){let r=n.direction,i=n.maxDepth??Number.POSITIVE_INFINITY,o=n.limit??Number.POSITIVE_INFINITY,{fingerprint:s,after:a}=bs(t,n,r,i),{adjacency:c,inspectedEdges:d}=vl(e,r,n.kinds),l={queue:[{id:t,depth:0}],seen:new Set([t]),parents:new Map,affected:[],cursorFound:a===void 0||a===t},u=0,f=!1,p=!1;e:for(let m=0;m<l.queue.length;m+=1){n.signal?.throwIfAborted();let h=l.queue[m];u+=1;let v=[...c.get(h.id)].sort();if(h.depth>=i){v.some(b=>!l.seen.has(b))&&(f=!0);continue}for(let b of v)if(ul(l,b,h,t,a,o)==="truncate"){f=!0,p=!0;break e}}if(!l.cursorFound)throw new TypeError(`Unknown impact cursor item: ${a}`);return{root:t,affected:l.affected,exact:!0,truncated:f,...p?{nextCursor:de(s,l.affected.at(-1)?.id??t)}:{},cost:{visitedNodes:u,inspectedEdges:d}}}function vn(e,t,n={}){let r=n.direction??"outgoing";if(r!=="both")return wl(e,t,{...n,direction:r});let i=n.maxDepth??Number.POSITIVE_INFINITY,o=n.limit??Number.POSITIVE_INFINITY,{fingerprint:s,after:a}=bs(t,n,r,i);return bl(e,t,n,a,o,s)}function Es(e){let t=[...e.nodes()],n=ft(t),r=ft(t);for(let c of e.edges())Ye(n,c.source,c.target),Ye(n,c.target,c.source),Ye(r,c.source,c.target);let i=[],o=new Set;for(let c of t){if(o.has(c))continue;let d=[],l=[c];for(o.add(c);l.length>0;){let u=l.pop();d.push(u);for(let f of n.get(u))o.has(f)||(o.add(f),l.push(f))}i.push(d)}let s=t.map(c=>({id:c,degree:n.get(c).size})),a=Math.max(0,...s.map(({degree:c})=>c));return{components:ws(i),stronglyConnected:ks(t,r),orphans:s.filter(({degree:c})=>c===0).map(({id:c})=>c),hubs:s.filter(({degree:c})=>c>0&&c===a),exact:!0,provenance:{algorithm:"component-degree",edgeFamily:"all"}}}function uw(e,t){let n=new Map(e.edges.map(i=>[vs(i),i])),r=new Map(t.edges.map(i=>[vs(i),i]));return{fromVersion:e.version,toVersion:t.version,added:[...r].filter(([i])=>!n.has(i)).map(([,i])=>i),removed:[...n].filter(([i])=>!r.has(i)).map(([,i])=>i),unchangedCount:[...n.keys()].filter(i=>r.has(i)).length,exact:!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]="1745a409-0f91-5f5a-8d2a-e5e61ff667a0")}catch{}})();function Re(e,t){return(t===void 0?void 0:yo(e,t))?.execution_role??_o[e.trim().toLowerCase()]??"agent"}var Mr="blocked_by",Is="blocks",kl=Object.freeze([Mr,Is]),Fr="no-active-blocker";function A(e){return e.trim().toLowerCase()}function wn(e,t){return t?`external:${e}`:`local:${A(e)}`}function Ae(e){let t=new Map,n=typeof e.blocked_by=="string"?e.blocked_by.trim():"";if(n.length>0&&A(n)!==Fr){let r=me(n);t.set(wn(n,r),r?n:A(n))}for(let r of e.dependencies??[]){let i=typeof r.id=="string"?r.id.trim():"";if(r.kind===Mr&&i.length>0&&A(i)!==Fr){let o=me(i)||pe(r.source_kind);t.set(wn(i,o),o?i:A(i))}}return[...t.values()].sort((r,i)=>r.localeCompare(i))}function kn(e){let t=new Map;for(let n of e){let r=A(n.id);r.length!==0&&t.set(r,new Set(Ae(n)))}for(let n of e){let r=A(n.id);if(r.length!==0)for(let i of n.dependencies??[]){let o=i.kind===Is&&typeof i.id=="string"?A(i.id):"";if(o.length===0||o===Fr)continue;let s=t.get(o)??new Set;s.add(r),t.set(o,s)}}return new Map([...t].map(([n,r])=>[n,[...r].sort((i,o)=>i.localeCompare(o))]))}function Cs(e,t){let n=A(e.id);return n.length>0?kn(t).get(n)??Ae(e):Ae(e)}function Nr(e,t,n,r){let i=e,o=typeof i.id=="string"?r?.get(A(i.id))??Cs(i,[...t.values()]):Ae(e),s=new Set((e.dependencies??[]).filter(a=>a.kind===Mr&&pe(a.source_kind)&&typeof a.id=="string"&&a.id.trim().length>0).map(a=>wn(a.id.trim(),!0)));return o.map(a=>{if(me(a)||s.has(wn(a,!0)))return{id:a,title:null,status:null,resolved:!1,external:!0,...typeof e.updated_at=="string"?{blocked_since:e.updated_at}:{},resolver:null};let c=t.get(A(a));return c?{id:a,title:c.title,status:c.status,resolved:$(c.status,n)}:{id:a,title:null,status:null,resolved:!1}})}function En(e,t,n){return Nr(e,t,n)}function mt(e,t){let n=new Map(e.map(s=>[A(s.id),s])),r=kn(e),i=new Set([...Ss(t),...t.blocked_statuses]),o=new Set;for(let s of e){let a=R(s.status,t);i.has(a)&&(t.blocked_statuses.has(a)||Nr(s,n,t,r).some(c=>!c.resolved))&&o.add(A(s.id))}return o}function $r(e,t,n={},r){let i=[...e.ready,...e.decisions,...e.gates];n.includeContainers===!0&&i.push(...e.containers.filter(s=>s.open_blockers.length===0&&!t.blocked_statuses.has(R(s.item.status,t))));let o={ready:[],decisions:[],gates:[]};for(let s of i){let a=Re(s.item.type,r);a==="human"&&n.includeDecisions!==!0?o.decisions.push(s):a==="gate"&&n.includeGates!==!0?o.gates.push(s):o.ready.push(s)}return o}function Ss(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function El(e,t,n){let r=[A(e)],i=new Set;for(;r.length>0;){let o=r.pop();if(!i.has(o)){i.add(o);for(let s of t.get(o)??[]){if(!$(s.status,n))return!0;r.push(A(s.id))}}}return!1}function Il(e){let t=new Map,n=new Map,r=new Map,i=kn(e);for(let o of e){t.set(A(o.id),o);let s=typeof o.parent=="string"?o.parent.trim():"";if(s.length>0){let a=A(s),c=n.get(a)??[];c.push(o),n.set(a,c)}for(let a of i.get(A(o.id))){let c=A(a),d=r.get(c)??[];d.push(o.id),r.set(c,d)}}return{itemsById:t,childrenByParent:n,blockedByReverse:r,blockerIdsByItem:i}}function pt(e,t,n,r){let{itemsById:i,childrenByParent:o,blockedByReverse:s,blockerIdsByItem:a}=Il(t),c=new Set([...Ss(n),...n.blocked_statuses]),d=new Set(t.filter(v=>!$(v.status,n)).map(v=>A(v.id))),l=[],u=[],f=[],p=[],m=[],h=0;for(let v of e){if(!c.has(R(v.status,n)))continue;h+=1;let b=Nr(v,i,n,a).filter(S=>!S.resolved),y=(s.get(A(v.id))??[]).filter(S=>d.has(A(S))).sort((S,P)=>S.localeCompare(P)),w={item:v,open_blockers:b,unblocks:y};if(El(v.id,o,n)){f.push(w);continue}let E=n.blocked_statuses.has(R(v.status,n));if(b.length===0&&!E){let S=Re(v.type,r);S==="human"?p.push(w):S==="gate"?m.push(w):l.push(w)}else u.push(w)}return{ready:l,blocked:u,containers:f,decisions:p,gates:m,active_count:h,container_count:f.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]="738a98bc-eaf0-578d-88e3-1c5f83c8894b")}catch{}})();function ie(e,t="--limit"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0)throw new g(`${t} must be a non-negative integer`,_.USAGE);return r}function In(e,t="--priority"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0||r>4)throw new g(`${t} filter must be 0..4`,_.USAGE);return r}function Ts(e,t,n="--type"){if(e===void 0)return;let r=zt(e,t);if(!r)throw new g(`${n} filter must be one of ${t.types.join("|")}`,_.USAGE);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="75ecca0c-fac8-5a9b-9043-c65731daad4a")}catch{}})();function Pr(e,t){if(e===void 0)return;let n=[],r="";for(let s=0;s<e.length;s+=1){let a=e[s];if(a==="\\"){let c=e[s+1];if(c===","||c==="\\"){r+=c,s+=1;continue}r+=a;continue}if(a===","){n.push(r),r="";continue}r+=a}n.push(r);let i=n.map(s=>s.trim());if(i.some(s=>s.length===0))throw new g(`${t.label} requires at least one non-empty value`,_.USAGE);let o=i.map(s=>t.normalize?.(s)??s);return[...new Set(o)]}function ht(e,t){let n=Pr(e,t);return n===void 0?void 0:new Set(n)}function Rs(e,t,n="--type"){let r=Pr(e,{label:n});if(r===void 0)return;let i=r.map(o=>{let s=zt(o,t);if(!s)throw new g(`${n} filter token "${o}" must be one of ${t.types.join("|")}`,_.USAGE);return s});return new Set(i)}function xs(e,t="--priority"){let n=Pr(e,{label:t});if(n!==void 0)return new Set(n.map(r=>In(r,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]="6c580b70-76eb-51db-8587-99b73dd20875")}catch{}})();var Cl="global",Ow="external",Sl=["open","closed","unknown"],gt=new Map,Tl=240,Rl=2048;function Ds(e,t,n){return(e?.trim()||t).slice(0,n)}function xl(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return typeof t.status=="string"&&(t.title==null||typeof t.title=="string")&&(t.source==null||typeof t.source=="string")&&(t.checkedAt==null||typeof t.checkedAt=="string")}function Lw(e){let t=e.name.trim();if(t.length===0)throw new Error("External dependency resolver name must not be empty");if(gt.has(t))throw new Error(`External dependency resolver already registered: ${t}`);let n={name:t,supports:r=>e.supports(r),resolve:r=>e.resolve(r)};return gt.set(t,n),()=>{gt.get(t)===n&&gt.delete(t)}}async function Fw(e,t={}){let n=e.trim();if(!me(n))return null;let r=[...gt.values()].filter(o=>{try{return o.supports(n)}catch{return!1}}),i=await Promise.allSettled(r.map(o=>Promise.resolve().then(()=>o.resolve(n))));for(let[o,s]of i.entries()){if(s.status!=="fulfilled"||!xl(s.value))continue;let a=r[o],c=s.value,d=Sl.includes(c.status)?c.status:"unknown",l=Ds(c.title,"",Tl),u=Ds(c.source,n,Rl),f=Date.parse(c.checkedAt?.trim()??""),p=Number.isFinite(f)?new Date(f).toISOString():t.now?.()??new Date().toISOString();return{id:n,status:d,resolved:d==="closed",title:l.length>0?l:null,source:u,checked_at:p,resolver:a.name}}return null}function Mw(e){let t=e?.trim();if(t)return pe(t)?Cl:t}function Nw(e,t,n){return Dl(e,t,n)}function Dl(e,t,n){let r=e.trim();return pe(n)||me(r)?r:un(r,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]="283dfa35-9a8e-524c-b6e2-d433d51215ca")}catch{}})();function z(){let e=ne();for(let t of D()?.relationship_kinds??[])for(let n of t.definitions)e.register(n);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 _t(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return t.length>0?t:void 0}function Cn(e){return[e.parent_id,e.child_id,e.source,e.kind,e.holder_id,e.target_id??""].join("\0")}function Al(e,t){let n=new Set,r=[];for(let i of[...e].sort()){if(n.has(i))continue;n.add(i);let o=[{nodeId:i,children:[...t.get(i)??[]].sort(),nextChild:0}];for(;o.length>0;){let s=o.at(-1),a=s.children[s.nextChild];a===void 0?(r.push(s.nodeId),o.pop()):(s.nextChild+=1,n.has(a)||(n.add(a),o.push({nodeId:a,children:[...t.get(a)??[]].sort(),nextChild:0})))}}return r}function Ol(e,t){let n=[...e].sort(),r=Al(n,t),i=new Set,o=Ll(n,t),s=[];for(let a of r.reverse()){if(i.has(a))continue;let c=Fl(a,o,i);(c.length>1||t.get(c[0])?.has(c[0]))&&s.push(c)}return s.sort((a,c)=>a.join("\0").localeCompare(c.join("\0")))}function Ll(e,t){let n=new Map(e.map(r=>[r,new Set]));for(let[r,i]of t)for(let o of i)n.get(o)?.add(r);return n}function Fl(e,t,n){let r=[],i=[e];for(n.add(e);i.length>0;){let o=i.pop();r.push(o);for(let s of[...t.get(o)].sort())n.has(s)||(n.add(s),i.push(s))}return r.sort()}function As(e){let t=new Map;for(let n of e){let r=_t(n?.id);r&&!t.has(r)&&t.set(r,n)}return t}function Ml(e,t,n){let r=_t(t.parent);if(!(!r||!n.has(r)))return{parent_id:r,child_id:e,source:"scalar_parent",kind:"parent",holder_id:e,child_cardinality:"one"}}function Nl(e,t,n,r){let i=_t(t?.id),o=r.resolve(t?.kind);if(!i||!n.has(i)||!o?.hierarchy)return;let s=o.hierarchyDirection==="source_parent";return{parent_id:s?e:i,child_id:s?i:e,source:"dependency",kind:o.kind,holder_id:e,target_id:i,child_cardinality:s?o.incoming:o.outgoing}}function Os(e,t){let n=new Map;for(let[r,i]of e){let o=Ml(r,i,e);o&&n.set(Cn(o),o);for(let s of i.dependencies??[]){let a=Nl(r,s,e,t);a&&n.set(Cn(a),a)}}return[...n.values()].sort((r,i)=>Cn(r).localeCompare(Cn(i)))}function Ls(e,t=z()){return Os(As(e),t)}function $l(e,t,n){let r=new Set(e.filter(i=>i.child_cardinality==="one").map(i=>i.child_id));return[...t].filter(([i,o])=>o.length>1&&r.has(i)).map(([i,o])=>({child_id:i,parent_ids:[...o],legacy_terminal:n.has(i)&&o.every(s=>n.has(s))})).sort((i,o)=>i.child_id.localeCompare(o.child_id))}function Pl(e,t,n){let r=new Map;for(let o of t){if(o.source!=="dependency")continue;let s=r.get(o.child_id)??new Set;s.add(o.parent_id),r.set(o.child_id,s)}let i=[];for(let[o,s]of e){let a=_t(s.parent);if(!a||!e.has(a))continue;let c=[...r.get(o)??[]].filter(d=>d!==a).sort();c.length!==0&&i.push({child_id:o,scalar_parent_id:a,dependency_parent_ids:c,legacy_terminal:n.has(o)&&n.has(a)&&c.every(d=>n.has(d))})}return i.sort((o,s)=>o.child_id.localeCompare(s.child_id))}function Sn(e,t=r=>r==="closed"||r==="canceled",n=z()){let r=As(e),i=Os(r,n),o=Ur(i),s=new Set([...r].filter(([,c])=>t(c.status)).map(([c])=>c)),a=Ol([...r.keys()],new Map([...o.children_by_parent].map(([c,d])=>[c,new Set(d)]))).map(c=>({item_ids:c,legacy_terminal:c.every(d=>s.has(d))}));return{relations:i,cycles:a,cardinality_violations:$l(i,o.parents_by_child,s),divergences:Pl(r,i,s)}}function Kw(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 Ur(e){let t=new Map,n=new Map;for(let r of e){let i=t.get(r.child_id)??new Set;i.add(r.parent_id),t.set(r.child_id,i);let o=n.get(r.parent_id)??new Set;o.add(r.child_id),n.set(r.parent_id,o)}return{parents_by_child:new Map([...t].map(([r,i])=>[r,[...i].sort()])),children_by_parent:new Map([...n].map(([r,i])=>[r,[...i].sort()]))}}function jr(e,t){let n=new Set(t);return e.every(r=>n.has(r))}function zw(e,t,n,r,i){let o=_t(n);if(!o)return;let s=Sn(e,r,i),a=Sn(t,r,i),c=a.divergences.find(u=>!s.divergences.some(f=>f.child_id===u.child_id&&f.scalar_parent_id===u.scalar_parent_id&&jr(u.dependency_parent_ids,f.dependency_parent_ids)));if(c){let u=[c.scalar_parent_id,...c.dependency_parent_ids].sort();throw new g(`Hierarchy mutation would assign ${c.child_id} to multiple parents: ${u.join(", ")}.`,_.CONFLICT,{code:"hierarchy_parent_divergence_created",source_id:o,target_id:c.child_id,verification_errors:u})}let d=a.cardinality_violations.find(u=>(u.child_id===o||u.parent_ids.includes(o))&&!s.cardinality_violations.some(f=>f.child_id===u.child_id&&jr(u.parent_ids,f.parent_ids)));if(d)throw new g(`Hierarchy mutation would assign ${d.child_id} to multiple parents: ${d.parent_ids.join(", ")}.`,_.CONFLICT,{code:"hierarchy_cardinality_created",source_id:o,target_id:d.child_id,verification_errors:d.parent_ids});let l=a.cycles.find(u=>u.item_ids.includes(o)&&!s.cycles.some(f=>jr(u.item_ids,f.item_ids)));if(l)throw new g(`Hierarchy mutation would create a cycle: ${l.item_ids.join(" -> ")}.`,_.CONFLICT,{code:"hierarchy_cycle_created",source_id:o,verification_errors:l.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]="41f814be-ee87-5cae-b674-69c2e7f42655")}catch{}})();function Je(e){if(typeof e!="string")return;let t=e.trim();if(!(!t||["none","null","n/a","na"].includes(t.toLowerCase())))return t}function yt(e){let t=Je(e);return t?.toLowerCase()==="no-active-blocker"?void 0:t}function vt(e,t,n=!0){let r=Je(e);return n&&(pe(t)||r!==void 0&&me(r))}function Hr(e,t){return vt(e,t)?`external\0${e}`:`local\0${e.toLowerCase()}`}function Fs(e,t,n,r){return vt(e,t)?r.get(e):n.get(e.toLowerCase())}function Xe(e,t){let n=e.toLowerCase(),r=t.toLowerCase();return n!==r?n<r?-1:1:e!==t?e<t?-1:1:0}function jl(e){let t=new Map;for(let n of e.dependencies??[]){if(typeof n!="object"||n===null)continue;let r=n,i=Je(r.id);if(!i)continue;let o=typeof r.kind=="string"?r.kind:"related",s=`${o}\0${Hr(i,r.source_kind)}`,a=t.get(s);a?a.count+=1:t.set(s,{target_id:i,kind:o,count:1})}return t}function Ul(e,t=n=>n==="closed"||n==="canceled"){let n=[];for(let r of e)if(!(typeof r?.id!="string"||r.id.trim().length===0))for(let i of jl(r).values())i.count<2||n.push({holder_id:r.id.trim(),target_id:i.target_id,kind:i.kind,occurrences:i.count,holder_status:r.status,legacy_terminal:t(r.status)});return n.sort((r,i)=>{let o=Xe(r.holder_id,i.holder_id);if(o!==0)return o;let s=Xe(r.target_id,i.target_id);return s!==0?s:Xe(r.kind,i.kind)})}function Hl(e,t,n,r,i){if(typeof n!="object"||n===null)return;let o=Je(n.id);if(!o||Hr(o,n.source_kind)!==Hr(t))return;let s=i.resolve(typeof n.kind=="string"?n.kind:"related");if(!(s?.ordering!==!0||(s.precedence??"source_before_target")!=="source_before_target"))return{holder_id:e.id.trim(),target_id:o,dependency_kind:s.kind,holder_status:e.status,legacy_terminal:r(e.status)}}function Bl(e,t=r=>r==="closed"||r==="canceled",n=z()){let r=new Map;for(let i of e){if(typeof i?.id!="string"||i.id.trim().length===0)continue;let o=Je(i.blocked_by);if(o)for(let s of i.dependencies??[]){let a=Hl(i,o,s,t,n);a&&r.set(`${a.holder_id.toLowerCase()}\0${a.target_id.toLowerCase()}\0${a.dependency_kind}`,a)}}return[...r.values()].sort((i,o)=>{let s=Xe(i.holder_id,o.holder_id);if(s!==0)return s;let a=Xe(i.target_id,o.target_id);return a!==0?a:Xe(i.dependency_kind,o.dependency_kind)})}function Br(e,t=n=>n==="closed"||n==="canceled"){let n=e.filter(c=>typeof c?.id=="string"&&c.id.trim().length>0),r=new Set(n.map(c=>c.id.trim().toLowerCase())),i=new Map,o=(c,d,l,u,f)=>{let p=Je(d);if(!p||r.has(p.toLowerCase())||vt(p,void 0,f))return;let m={holder_id:c.id.trim(),target_id:p,kind:l,source:u,holder_status:c.status,legacy_terminal:t(c.status),no_active_blocker_sentinel:p.toLowerCase()==="no-active-blocker"};i.set(`${m.holder_id}::${m.target_id}::${m.kind}::${m.source}`,m)};for(let c of n){o(c,c.parent,"parent","parent",!1),o(c,c.blocked_by,"blocked_by","blocked_by",!0);for(let d of c.dependencies??[]){if(typeof d!="object"||d===null)continue;let l=d;pe(l.source_kind)||o(c,l.id,typeof l.kind=="string"?l.kind:"related","dependency",!0)}}let s=[...i.values()].sort((c,d)=>c.holder_id.localeCompare(d.holder_id)||c.target_id.localeCompare(d.target_id)||c.kind.localeCompare(d.kind)||c.source.localeCompare(d.source)),a=s.filter(c=>c.legacy_terminal);return{active:s.filter(c=>!c.legacy_terminal),legacy_terminal:a,no_active_blocker_sentinels:s.filter(c=>c.no_active_blocker_sentinel)}}function Gl(e){let t=new Map;for(let n of[...e.active,...e.legacy_terminal]){if(n.no_active_blocker_sentinel)continue;let r=n.target_id.trim(),i=r.toLowerCase();t.has(i)||t.set(i,r)}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function Kl(e){let t=new Map;for(let n of e){let r=yt(n.blocked_by);r&&vt(r)&&!t.has(r)&&t.set(r,r);for(let i of n.dependencies??[]){if(typeof i!="object"||i===null||!vt(i.id,i.source_kind))continue;let o=yt(i.id);o&&!t.has(o)&&t.set(o,o)}}return[...t.values()].sort((n,r)=>n.localeCompare(r))}var Ms=new WeakMap;function Tn(e){return e.hierarchyIntegrity??Ms.get(e)}function zl(e,t=z()){let n={};for(let r of e)for(let i of r.dependencies??[]){if(typeof i!="object"||i===null)continue;let o=i.kind;if(typeof o!="string")continue;let s=o.trim().toLowerCase().replaceAll("-","_"),a=t.resolve(o);a&&s!==a.kind&&(n[s]=(n[s]??0)+1)}return Object.fromEntries(Object.entries(n).sort(([r],[i])=>r.localeCompare(i)))}function Qe(e,t,n){let r=n??z(),i=e.filter(m=>typeof m?.id=="string"&&m.id.trim().length>0),o=new Map(i.map(m=>[m.id.trim().toLowerCase(),m.id.trim()])),s=Br(i,t),a=Gl(s);for(let m of a)o.set(m.toLowerCase(),m);let c=Kl(i),d=new Set(o.keys()),l=new Map;for(let m of c){let h=m;for(;d.has(h.toLowerCase());)h=`external:${h}`;l.set(m,h),d.add(h.toLowerCase())}let u=i.map(m=>{let h=yt(m.parent),v=yt(m.blocked_by),b=(m.dependencies??[]).flatMap(y=>{if(typeof y!="object"||y===null)return[];let w=y,E=yt(w.id);return E?[{id:Fs(E,w.source_kind,o,l),kind:typeof w.kind=="string"?w.kind:"related"}]:[]});return{id:m.id.trim(),...h?{parent:o.get(h.toLowerCase())}:{},...v?{blocked_by:Fs(v,void 0,o,l)}:{},dependencies:b}}),f=Sn(i,t,r),p={graph:Bt.fromItems([...u,...a.map(m=>({id:m})),...c.map(m=>({id:l.get(m)}))],r),details:[...i.map(m=>({id:m.id.trim(),title:m.title,status:m.status,...typeof m.type=="string"&&m.type.trim().length>0?{type:m.type.trim()}:{}})),...a.map(m=>({id:m,title:`[missing] ${m}`,status:"missing"})),...c.map(m=>({id:l.get(m),title:`[external] ${m}`,status:"external"}))],missingIdSet:new Set(a.map(m=>m.toLowerCase())),dangling:s,duplicateRows:Ul(i,t),orderingContradictions:Bl(i,t,r),legacyAliasCounts:zl(i,r),hierarchyIntegrity:f};return Ms.set(p,f),p}(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]="19d6f507-d3b1-5ccc-aba5-594983776618")}catch{}})();var Gr=["id","title","status","type","priority","parent","updated_at"],Kr=["id","status","type","title"],Vl={list:"brief","list-all":"full","list-draft":"full","list-open":"brief","list-in-progress":"brief","list-blocked":"brief","list-closed":"brief","list-canceled":"full"},ql=["tree_depth","tree_parent","tree_children","tree_title"];function zr(e=[]){return[...new Set([...yr,"body",...ql,...e])].flatMap(t=>[t,`item.${t}`]).sort()}var e0=["brief","standard","deep"],Wl=["body","linked","claim_state","children","schedule","blockers"],Yl=["linked.files","linked.tests","linked.docs"],Xl=["claim_state.claimed","claim_state.assignee","claim_state.last_claim","claim_state.last_release"],Jl=["schedule.deadline","schedule.start_at","schedule.end_at","schedule.location","schedule.reminders","schedule.events"];function t0(e=[]){return[...[...new Set([...yr,...e,"notes_count","tests_count","collection_counts"])].flatMap(t=>[t,`item.${t}`]),...Wl,...Yl,...Xl,...Jl].sort()}var n0=["id","title","status","type","priority","updated_at","score","matched_fields"],Ql=["score","matched_fields","highlights"],Ns=["id","title","description","type","status","priority","tags","created_at","updated_at","deadline","assignee","author","estimated_minutes","acceptance_criteria","dependencies","comments","notes","learnings","reminders","events","files","tests","docs","close_reason","parent","reviewer","risk","confidence","sprint","release","blocked_by","blocked_reason","reporter","severity","environment","repro_steps","resolution","expected_result","actual_result","affected_version","fixed_version","component","regression","customer_impact","definition_of_ready","order","rank","goal","objective","value","impact","outcome","why_now","plan"];function r0(e=[]){let t=[...new Set(e)];return[...Ql,...Ns,...Ns.map(n=>`item.${n}`),...t,...t.map(n=>`item.${n}`)].sort()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f9d73d74-7c4e-5ea9-b34c-c984b4c15ab3")}catch{}})();function $s(e,t){let n=e.trim().toLowerCase();return t.alias_to_id.get(n)??n}function Hs(e){return{isTerminal(t){return e.terminal_statuses.has($s(t,e))},classify(t){let n=$s(t,e);return e.terminal_canceled_statuses.has(n)?"canceled":e.terminal_statuses.has(n)?"closed":e.blocked_statuses.has(n)?"blocked":e.draft_statuses.has(n)?"draft":n===e.open_status?"open":e.active_statuses.has(n)?"in_progress":"other"}}}function Vr(e){return K(e.acceptance_criteria)===void 0}function qr(e){return!Number.isFinite(e.estimated_minutes)}function Bs(e,t){return t.isTerminal(e.status)?K(e.resolution)===void 0:!1}function Zl(e){return K(e.reviewer)===void 0}function eu(e){return K(e.risk)===void 0}function tu(e){return typeof e.confidence=="number"?!Number.isFinite(e.confidence):K(e.confidence)===void 0}function nu(e){return K(e.sprint)===void 0}function ru(e){return K(e.release)===void 0}function Wr(e){return!!(e.acMissing||e.estimatesMissing||e.resolutionMissing||e.reviewerMissing||e.riskMissing||e.confidenceMissing||e.sprintMissing||e.releaseMissing||e.metadataMissing)}function iu(e,t,n){return[[t.acMissing,Vr(e)],[t.estimatesMissing,qr(e)],[t.resolutionMissing,Bs(e,n)],[t.reviewerMissing,Zl(e)],[t.riskMissing,eu(e)],[t.confidenceMissing,tu(e)],[t.sprintMissing,nu(e)],[t.releaseMissing,ru(e)]].every(([r,i])=>r!==!0||i)}function ou(e,t){return Vr(e)||qr(e)||Bs(e,t)}function Gs(e,t,n){return Wr(t)?!(!iu(e,t,n)||t.metadataMissing&&!ou(e,n)):!0}var Yr=["acceptance_criteria","estimated_minutes","resolution","tags","parent"];function su(e,t){switch(t){case"acceptance_criteria":return!Vr(e);case"estimated_minutes":return!qr(e);case"resolution":return K(e.resolution)!==void 0;case"tags":return Array.isArray(e.tags)&&e.tags.length>0;default:return K(e.parent)!==void 0}}function au(e,t,n){return t==="resolution"?n.isTerminal(e.status):!0}function cu(e,t){return t===0?100:Math.round(e/t*1e3)/10}function Ps(){let e={};for(let t of Yr)e[t]={present:0,applicable:0,percent:100};return e}function js(e,t,n){for(let r of Yr){if(!au(t,r,n))continue;let i=e[r];i.applicable+=1,su(t,r)&&(i.present+=1)}}function Us(e){for(let t of Yr){let n=e[t];n.percent=cu(n.present,n.applicable)}}function s0(e,t){let n=Ps(),r={};for(let i of e){js(n,i,t);let o=r[i.type]??(r[i.type]=Ps());js(o,i,t)}Us(n);for(let i of Object.values(r))Us(i);return{overall:n,by_type:r}}var du={assignee:"(unassigned)",priority:"(no priority)",tag:"(untagged)",parent:"(unparented)",type:"(untyped)",status:"(no status)"};function lu(e){return du[e]}function uu(){return{open:0,in_progress:0,blocked:0,draft:0,closed:0,canceled:0,other:0}}function fu(e,t,n){switch(t){case"assignee":return[K(e.assignee)??null];case"parent":return[K(e.parent)??null];case"type":return[K(e.type)??null];case"status":return[K(e.status)??null];case"priority":return[typeof e.priority=="number"?`P${e.priority}`:null];default:{let r=n.tagPrefix?.trim(),i=(Array.isArray(e.tags)?e.tags:[]).filter(o=>typeof o=="string"&&o.length>0&&(!r||o.startsWith(r)));return i.length>0?i:[null]}}}function a0(e,t,n,r={}){let i=new Map,o=0;for(let a of e){o+=1;let c=n.classify(a.status);for(let d of fu(a,t,r)){let l=d??"\0empty",u=i.get(l);u||(u={label:d??lu(t),key:d,buckets:uu(),total:0},i.set(l,u)),u.buckets[c]+=1,u.total+=1}}let s=[...i.values()].sort((a,c)=>c.total!==a.total?c.total-a.total:a.key===null?1:c.key===null?-1:a.label.localeCompare(c.label));return{dimension:t,rows:s,total_items:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="67f9184e-08b6-5f21-9f92-e60974adbf1e")}catch{}})();var Ze=["notes","learnings","files","docs","tests","comments","deps","body","linked_command"];function Oe(e){return Array.isArray(e)&&e.length>0}function mu(e){return typeof e=="string"&&e.trim().length>0}function pu(e){return Array.isArray(e)?e.some(t=>{if(typeof t!="object"||t===null)return!1;let n=t.command;return typeof n=="string"&&n.trim().length>0}):!1}function zs(e,t){switch(t){case"notes":return Oe(e.notes);case"learnings":return Oe(e.learnings);case"files":return Oe(e.files);case"docs":return Oe(e.docs);case"tests":return Oe(e.tests);case"comments":return Oe(e.comments);case"deps":return Oe(e.dependencies);case"body":return mu(e.body);case"linked_command":return pu(e.tests)}}function Vs(e){return Ze.some(t=>e[t]!==void 0)}function qs(e,t){for(let n of Ze){let r=t[n];if(r===void 0)continue;let i=zs(e,n);if(r==="present"&&!i||r==="absent"&&i)return!1}return!0}function Ws(e){return Ze.some(t=>t!=="body"&&e[t]!==void 0)}function Ys(e){return e.body!==void 0}function Ks(e,t){return t===0?100:Math.round(e/t*1e3)/10}function hu(){let e={};for(let t of Ze)e[t]={present:0,total:0,percent:100};return e}function d0(e){let t=hu(),n=e.length;for(let s of e)for(let a of Ze)zs(s,a)&&(t[a].present+=1);for(let s of Ze)t[s].total=n,t[s].percent=Ks(t[s].present,n);let r=t.body,i=n-r.present,o={present:i,total:n,percent:Ks(i,n)};return{total_items:n,fields:t,body_populated:r,empty_body:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bf7ab12b-2cc6-5266-8da9-c49ef805e3fd")}catch{}})();var gu=e=>({acMissing:e.filterAcMissing===!0,estimatesMissing:e.filterEstimatesMissing===!0,resolutionMissing:e.filterResolutionMissing===!0,metadataMissing:e.filterMetadataMissing===!0,reviewerMissing:e.filterReviewerMissing===!0,riskMissing:e.filterRiskMissing===!0,confidenceMissing:e.filterConfidenceMissing===!0,sprintMissing:e.filterSprintMissing===!0,releaseMissing:e.filterReleaseMissing===!0}),Xs=[{field:"notes",presentKey:"hasNotes",absentKey:"noNotes",presentFlag:"--has-notes",absentFlag:"--no-notes"},{field:"learnings",presentKey:"hasLearnings",absentKey:"noLearnings",presentFlag:"--has-learnings",absentFlag:"--no-learnings"},{field:"files",presentKey:"hasFiles",absentKey:"noFiles",presentFlag:"--has-files",absentFlag:"--no-files"},{field:"docs",presentKey:"hasDocs",absentKey:"noDocs",presentFlag:"--has-docs",absentFlag:"--no-docs"},{field:"tests",presentKey:"hasTests",absentKey:"noTests",presentFlag:"--has-tests",absentFlag:"--no-tests"},{field:"comments",presentKey:"hasComments",absentKey:"noComments",presentFlag:"--has-comments",absentFlag:"--no-comments"},{field:"deps",presentKey:"hasDeps",absentKey:"noDeps",presentFlag:"--has-deps",absentFlag:"--no-deps"},{field:"body",presentKey:"hasBody",absentKey:"emptyBody",presentFlag:"--has-body",absentFlag:"--empty-body"},{field:"linked_command",presentKey:"hasLinkedCommand",absentKey:"noLinkedCommand",presentFlag:"--has-linked-command",absentFlag:"--no-linked-command"}],na=e=>{let t=Xs.find(n=>e[n.presentKey]===!0&&e[n.absentKey]===!0);if(t)throw new g(`Cannot combine ${t.presentFlag} with ${t.absentFlag} for the same field.`,_.USAGE);return Object.fromEntries(Xs.flatMap(n=>e[n.presentKey]===!0?[[n.field,"present"]]:e[n.absentKey]===!0?[[n.field,"absent"]]:[]))},Js=["priority","deadline","updated_at","created_at","title","parent"],Qs=["asc","desc"],ra=new Set(us);function _u(e,t,n){let r=e.filter(s=>s.startsWith("item_list_item_read_failed:")).length,i=e.filter(s=>s.startsWith("item_list_directory_read_failed:")).length,o={status:t?"unchecked":r+i>0?"partial":"complete",unreadable_item_count:r,unreadable_directory_count:i};if(n&&o.status==="partial")throw new g(`List source is incomplete: ${r} item document(s) and ${i} item directory/directories could not be read.`,_.GENERIC_FAILURE,{code:"list_source_incomplete",why:"Strict list reads fail closed so agents and SDK consumers never treat an omitted item as a complete workspace.",nextSteps:["Run pm validate --check-storage-integrity to locate unreadable tracker artifacts.","Repair the reported files or align the installed decoder version, then retry."]});return o}function yu(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length>0}var vu=[{key:"hasNotes",summaryKey:"has_notes"},{key:"hasLearnings",summaryKey:"has_learnings"},{key:"hasFiles",summaryKey:"has_files"},{key:"hasDocs",summaryKey:"has_docs"},{key:"hasTests",summaryKey:"has_tests"},{key:"hasComments",summaryKey:"has_comments"},{key:"hasDeps",summaryKey:"has_deps"},{key:"hasBody",summaryKey:"has_body"},{key:"hasLinkedCommand",summaryKey:"has_linked_command"},{key:"noNotes",summaryKey:"no_notes"},{key:"noLearnings",summaryKey:"no_learnings"},{key:"noFiles",summaryKey:"no_files"},{key:"noDocs",summaryKey:"no_docs"},{key:"noTests",summaryKey:"no_tests"},{key:"noComments",summaryKey:"no_comments"},{key:"noDeps",summaryKey:"no_deps"},{key:"emptyBody",summaryKey:"empty_body"},{key:"noLinkedCommand",summaryKey:"no_linked_command"}],bu=[{key:"filterReviewerMissing",summaryKey:"filter_reviewer_missing"},{key:"filterRiskMissing",summaryKey:"filter_risk_missing"},{key:"filterConfidenceMissing",summaryKey:"filter_confidence_missing"},{key:"filterSprintMissing",summaryKey:"filter_sprint_missing"},{key:"filterReleaseMissing",summaryKey:"filter_release_missing"}];function ia(e,t){for(let n of vu)t[n.key]===!0&&(e[n.summaryKey]=!0)}function oa(e,t){for(let n of bu)t[n.key]===!0&&(e[n.summaryKey]=!0)}function wu(e,t,n){for(let r of n){let i=t[r.optionKey];i!==void 0&&(e[r.summaryKey]=r.normalize?r.normalize(i):i)}}function ku(e){let t={};return ia(t,e),t}function Eu(e){let t={};return oa(t,e),t}var Iu=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"}],Cu=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"limit",summaryKey:"limit"},{optionKey:"offset",summaryKey:"offset"},{optionKey:"includeBody",summaryKey:"include_body"},{optionKey:"compact",summaryKey:"compact"},{optionKey:"fields",summaryKey:"fields"}],Su=[{key:"filterAcMissing",summaryKey:"filter_ac_missing"},{key:"filterEstimatesMissing",summaryKey:"filter_estimates_missing"},{key:"filterResolutionMissing",summaryKey:"filter_resolution_missing"},{key:"filterMetadataMissing",summaryKey:"filter_metadata_missing"}],Tu="-7d";function Ru(e){let{filtersStatus:t,options:n,treeEnabled:r,treeDepth:i,sortField:o,sortOrder:s,runtimeFieldFilters:a}=e,c={};return t!==null&&(c.status=t),n.dependencyBlocked===!0&&(c.blocked_semantics="status_or_dependency"),wu(c,n,Iu),aa(c,n),n.filterAcMissing===!0&&(c.filter_ac_missing=!0),n.filterEstimatesMissing===!0&&(c.filter_estimates_missing=!0),n.filterResolutionMissing===!0&&(c.filter_resolution_missing=!0),n.filterMetadataMissing===!0&&(c.filter_metadata_missing=!0),oa(c,n),ia(c,n),n.limit!==void 0&&(c.limit=n.limit),n.offset!==void 0&&(c.offset=n.offset),n.includeBody===!0&&(c.include_body=!0),n.fields!==void 0&&(c.fields=n.fields),r&&(c.tree=!0,i!==void 0&&(c.tree_depth=i)),o!==void 0&&(c.sort=o,c.order=s),yu(a)&&(c.runtime_filters=a),c}function sa(e,t,n){let r=$(e.status,n),i=$(t.status,n);if(r!==i)return r?1:-1;let o=e.priority-t.priority;if(o!==0)return o;let s=C(t.updated_at,e.updated_at);return s!==0?s:(e.id??"").localeCompare(t.id??"")}function xu(e,t){return[...e].sort((n,r)=>sa(n,r,t))}function Zs(e,t){if(e!==void 0)return ve(e,new Date,t)}function bt(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return ve(n,new Date,t)}function Du(e){let t=e.updatedAfter!=null&&String(e.updatedAfter).trim().length>0;if([e.today===!0,e.recent===!0,t].filter(n=>n).length>1)throw new g("Choose only one updated_at window: --today, --recent, or --updated-after.",_.USAGE);if(e.today===!0){let n=new Date;return n.setHours(0,0,0,0),n.toISOString()}return e.recent===!0?bt(Tu,"recent"):bt(e.updatedAfter,"updated-after")}function aa(e,t){t.today===!0&&(e.today=!0),t.recent===!0&&(e.recent=!0)}function Au(e){if(e==null)return;let t=String(e).trim();if(t.length===0)throw new g("--ids requires at least one non-empty item ID",_.USAGE);let n=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(n.length===0)throw new g("--ids requires at least one non-empty item ID",_.USAGE);return new Set(n)}function ca(e){if(e===void 0)return;let t=String(e).trim(),n=t.length===0?Number.NaN:Number(t);if(!Number.isInteger(n)||n<0)throw new g("Offset filter must be a non-negative integer",_.USAGE);return n}function Ou(e){if(e===void 0)return;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new g("List --fields requires a comma-separated list of field names",_.USAGE);return[...new Set(t)]}function Lu(e,t=e.projectionCommand??"list"){let n=e.compact===!0,r=e.brief===!0,i=e.full===!0,o=Ou(e.fields);if(Number(n)+Number(r)+Number(i)+ +(o!==void 0)>1)throw new g("List projection options are mutually exclusive. Use one of --compact, --brief, --full, or --fields.",_.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:`pm ${t} --brief`,suggested_retry_args:[t,"--brief"]}});return i?{mode:"full",fields:[]}:r?{mode:"brief",fields:[...Kr]}:n?{mode:"compact",fields:[...Gr]}:o?{mode:"fields",fields:[...new Set(o.map(s=>Le(s)))]}:{mode:"full",fields:[]}}function Le(e){return e.startsWith("item.")?e.slice(5):e}function Fu(e,t,n){if(e.mode!=="fields")return;let r=zr(t),i=new Set(r.map(s=>Le(s))),o=e.fields.filter(s=>!i.has(Le(s)));if(o.length>0){let s=[n,"--fields",e.fields.filter(a=>!o.includes(a)).join(",")||"id,title,status"];throw new g(`Unknown list --fields value(s): ${o.join(", ")}`,_.USAGE,{code:"unknown_field_projection",examples:["pm list-open --fields id,title,status,type,updated_at","pm list --fields id,title,parent,priority --limit 10","pm list-all --fields id,title,body --limit 5"],recovery:{allowed_values:r,suggested_retry:Io(s),suggested_retry_args:s}})}}var Mu=new Map([["updated","updated_at"],["update","updated_at"],["modified","updated_at"],["created","created_at"],["create","created_at"]]);function Nu(e){if(e===void 0)return;let t=e.trim().toLowerCase(),n=Mu.get(t);if(n)return n;if(!Js.includes(t))throw new g(`Sort field must be one of ${Js.join("|")} (aliases: updated->updated_at, created->created_at)`,_.USAGE);return t}function $u(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!Qs.includes(t))throw new g(`Sort order must be one of ${Qs.join("|")}`,_.USAGE);return t}function Pu(e){return ie(e,"--tree-depth")}function ju(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new g("Assignee filter must be one of assigned|unassigned",_.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new g(`Invalid assignee filter "${e}". Allowed: assigned|unassigned`,_.USAGE);return t}function ea(e,t){return ys(e,t,{strict:!0})}function da(e){return ht(e,{label:"--tag",normalize:t=>t.toLowerCase()})}function Uu(e,t,n){let r=da(t);if(r===void 0)return;let i=new Set(e.flatMap(s=>s.tags.map(a=>a.trim().toLowerCase()))),o=[...r].filter(s=>!i.has(s));o.length>0&&n.push(`unknown_tags:${o.join(",")}`)}function Hu(e,t){if(e&&[...e].some(n=>n.toLowerCase()==="none"||n.toLowerCase()==="null"))throw new g('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',_.USAGE);if(e!==void 0&&t==="unassigned")throw new g("Cannot combine --assignee with --assignee-filter unassigned",_.USAGE)}function Bu(e,t,n,r){let i=ht(t.assignee,{label:"--assignee"}),o=ju(t.assigneeFilter);Hu(i,o);let s=gu(t),a=na(t);return{idsFilter:Au(t.ids),statusSet:e&&e.length>0?new Set(e):void 0,excludeTerminal:t.excludeTerminal===!0,typeFilter:Rs(t.type,n),tagFilters:da(t.tag),priorityFilter:xs(t.priority),deadlineBefore:Zs(t.deadlineBefore,"deadline-before"),deadlineAfter:Zs(t.deadlineAfter,"deadline-after"),updatedAfter:Du(t),updatedBefore:bt(t.updatedBefore,"updated-before"),createdAfter:bt(t.createdAfter,"created-after"),createdBefore:bt(t.createdBefore,"created-before"),assigneeFilter:i,assigneeModeFilter:o,parentFilter:t.parent?.trim(),treeEnabled:t.tree===!0,sprintFilter:ht(t.sprint,{label:"--sprint"}),releaseFilter:ht(t.release,{label:"--release"}),missingMetadataFilters:s,missingMetadataActive:Wr(s),lifecycleClassifier:Hs(r),contentFieldFilters:a,contentFiltersActive:Vs(a)}}function Gu(e,t,n){return t.idsFilter&&!t.idsFilter.has(e.id)||t.statusSet&&!t.statusSet.has(e.status)||t.excludeTerminal&&$(e.status,n)||t.typeFilter&&!t.typeFilter.has(e.type)||t.tagFilters&&![...t.tagFilters].some(r=>(e.tags??[]).some(i=>i.trim().toLowerCase()===r))?!1:t.priorityFilter===void 0||t.priorityFilter.has(e.priority)}function Ku(e,t){return xo(e,t)}function zu(e,t){return t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee?!1:t.assigneeFilter===void 0||e.assignee!==void 0&&t.assigneeFilter.has(e.assignee)}function Vu(e,t,n){let r=e.parent?.trim().toLowerCase(),i=[...new Set([...n?.get(e.id.trim().toLowerCase())??[],...r?[r]:[]])];return t.parentFilter!==void 0&&!t.treeEnabled&&!i.includes(t.parentFilter.trim().toLowerCase())||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))?!1:t.releaseFilter===void 0||e.release!==void 0&&t.releaseFilter.has(e.release)}function qu(e,t,n,r,i){return!(!Gu(e,t,n)||!Ku(e,t)||!zu(e,t)||!Vu(e,t,i)||t.missingMetadataActive&&!Gs(e,t.missingMetadataFilters,t.lifecycleClassifier)||t.contentFiltersActive&&!qs(e,t.contentFieldFilters)||!gn(e,r))}function Wu(e,t,n,r,i,o,s){let a=Bu(t,n,r,i);return e.filter(c=>qu(c,a,i,o,s))}function wt(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function ta(e,t,n,r){let i=e,o=typeof i.title=="string"?i.title:"",s=r??wt(typeof i.parent=="string"?i.parent:void 0)??null;return{...e,tree_depth:t,tree_parent:s,tree_children:n,tree_title:`${" ".repeat(t)}${o}`}}function Yu(e,t){let n=new Map,r=new Map;for(let i of e){let o=i.id.trim().toLowerCase();n.set(o,i);let s=t?t.parents_by_child.get(o)??[]:[wt(i.parent)?.toLowerCase()].filter(a=>a!==void 0);for(let a of s){let c=r.get(a)??[];c.push(i),r.set(a,c)}}return{byId:n,childrenByParent:r}}function Xu(e,t,n,r,i){return t?[...r.get(t.toLowerCase())??[]]:e.filter(o=>(i?i.parents_by_child.get(o.id.trim().toLowerCase())??[]:[wt(o.parent)?.toLowerCase()].filter(s=>s!==void 0)).every(s=>!n.has(s)))}function Ju(e,t,n,r,i=e){let{byId:o,childrenByParent:s}=Yu(e,r),a=Xu(e,t,o,s,r),c=[],d=new Set,l=new Map(i.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),u=[...a].reverse().map(f=>({node:f,depth:0,parentId:t===void 0?void 0:l.get(t.trim().toLowerCase())??t.trim()}));for(;u.length>0;){let{node:f,depth:p,parentId:m}=u.pop(),h=f.id.trim().toLowerCase();if(d.has(h))continue;d.add(h);let v=s.get(h)??[];if(c.push(ta(f,p,v.length,m)),!(n!==void 0&&p>=n))for(let b of[...v].reverse())u.push({node:b,depth:p+1,parentId:l.get(h)})}if(t===void 0&&n===void 0)for(let f of e){let p=f.id.trim().toLowerCase();d.has(p)||(d.add(p),c.push(ta(f,0,s.get(p)?.length??0)))}return c}function Qu(e,t){return e===t?0:e===null?1:t===null?-1:e.localeCompare(t)}function Zu(e,t){return e===t?0:e===null?1:t===null?-1:C(e,t)}function ef(e,t,n){switch(n){case"priority":return e.priority-t.priority;case"deadline":return Zu(e.deadline??null,t.deadline??null);case"updated_at":return C(e.updated_at,t.updated_at);case"created_at":return C(e.created_at,t.created_at);case"title":return(e.title??"").localeCompare(t.title??"");case"parent":return Qu(e.parent??null,t.parent??null);default:return 0}}function tf(e,t,n,r){return t?[...e].sort((i,o)=>{let s=ef(i,o,t);if(s!==0)return n==="desc"?-s:s;let a=sa(i,o,r);return n==="desc"?-a:a}):xu(e,r)}function nf(e,t,n=!1){let r=Le(t.trim());if(r.length===0)return null;let i=e;return n&&r==="title"&&typeof i.tree_title=="string"?i.tree_title:Object.prototype.hasOwnProperty.call(i,r)?i[r]??null:null}function la(e,t,n=!1){return t.mode==="full"?e:e.map(r=>{let i={};for(let o of t.fields)i[o]=nf(r,o,n);return i})}function rf(e){let t=[];for(let n of e)t.push(n.metadata_key);return t}function of(e,t){let n=ie(e.limit);if(n!==void 0)return n;if(e.noTruncate!==!0)return t>=1e4?20:void 0}function sf(e,t,n){return t.after===void 0?ca(t.offset)??0:He(e,t.after,n,r=>r.id)}function ua(e,t,n){return{...e!==void 0?{applied_limit:e}:{},has_more:t,truncated:t,next_cursor:n??null}}async function af(e,t){let n=O(process.cwd(),t.path);await U(n);let r=await F(n),i=J(r.schema),o=nn(r.schema),s=e.projectionCommand??"list",a=Lu(e,s);return Fu(a,rf(o.definitions),s),{pmRoot:n,settings:r,statusRegistry:i,runtimeFieldFilters:hn(e,o,"list"),typeRegistry:L(r,D()),projection:a}}async function cf(e,t,n){let r=t.projection.fields.some(c=>Le(c)==="body"),i=t.projection.mode==="full"||t.projection.fields.some(c=>ra.has(Le(c))),o=na(e),s=Ws(o),a=Ys(o);return e.includeBody||r||a?await fn(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):i||s?await ms(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):await fe(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema)}function df(e){let t=Nu(e.sort),n=$u(e.order)??"asc",r=e.tree===!0;if(!r&&e.treeDepth!==void 0)throw new g("List --tree-depth requires --tree",_.USAGE);if(!t&&e.order!==void 0)throw new g("List --order requires --sort",_.USAGE);return{sortField:t,sortOrder:n,treeEnabled:r,treeDepth:r?Pu(e.treeDepth):void 0,parentRoot:r?wt(e.parent):void 0}}function lf(e,t,n){let r=ea(t.status,n),i;t.lifecycleBucket==="in_progress"?i=[n.in_progress_status]:t.lifecycleBucket==="open"&&(i=[...n.active_statuses].filter(d=>d!==n.in_progress_status).sort((d,l)=>d.localeCompare(l)));let o=r??i??ea(e,n),s=_s(t.status),a=r||s?{...t,excludeTerminal:!1}:t,c="all";return s?c="all":r!==void 0?c=r.length===1?r[0]:r:t.lifecycleBucket!==void 0?c=t.lifecycleBucket:o!==void 0?c=o.length===1?o[0]:o:a.excludeTerminal===!0&&(c=null),{resolvedStatus:o,explicitAllStatuses:s,effectiveOptions:a,filtersStatus:c}}function uf(e,t,n,r,i){if(t.after!==void 0&&t.offset!==void 0)throw new g("List --after cannot be combined with --offset.",_.USAGE);let o=of(t,e.length),s=sf(e,t,i),a=o===void 0?e.slice(s):e.slice(s,s+o),c=la(a,n,r),d=e.length,l=a.length>0&&s+a.length<d,u=l&&a.length>0?de(i,a[a.length-1].id,s+a.length-1):void 0;return{projected:c,totalMatched:d,pageExtras:ua(o,l,u)}}function fa(e,t,n,r){return Se("list",{pmRoot:r,status:e,options:Xt(t,ps),sort:n.sortField??"default",order:n.sortOrder,tree:n.treeEnabled,tree_depth:n.treeDepth??null})}async function ff(e){let{options:t,runtime:n,statusSelection:r,ordering:i}=e,o=new Set(["status","limit","offset","compact","brief","full","fields","format","stream","includeBody","excludeTerminal","dependencyBlocked","lifecycleBucket","noTruncate","projectionCommand","truncate","notes","learnings","files","docs","tests","comments","deps","linkedCommand"]),s=[n.projection.mode==="full",n.projection.fields.some(p=>{let m=Le(p);return m==="body"||ra.has(m)})].includes(!0);if([t.limit===void 0,t.after!==void 0,t.noTruncate===!0,t.includeBody===!0,t.dependencyBlocked===!0,t.strictRead===!0,i.treeEnabled,i.sortField!==void 0,s,wo(),Object.keys(n.runtimeFieldFilters).length>0,Object.entries(t).some(([p,m])=>m!==void 0&&!o.has(p))].includes(!0))return null;let a=await We(n.pmRoot,[...new Set(Object.values(n.typeRegistry.type_to_folder))]);if(!a)return null;let c=ie(t.limit),d=ca(t.offset)??0,l=await ls({pmRoot:n.pmRoot,expectedSourceCursor:a.source_cursor,query:{statuses:r.resolvedStatus,excludeStatuses:r.resolvedStatus===void 0&&r.effectiveOptions.excludeTerminal===!0?[...n.statusRegistry.terminal_statuses]:void 0,terminalStatuses:[...n.statusRegistry.terminal_statuses],limit:c,offset:d}});if(!l)return null;let u=l.items.length>0&&d+l.items.length<l.total,f=u?de(fa(r.filtersStatus,t,i,n.pmRoot),l.items.at(-1).id,d+l.items.length-1):void 0;return{projected:la(l.items,n.projection,!1),totalMatched:l.total,pageExtras:ua(c,u,f)}}function mf(e){let{filtersStatus:t,options:n,noTruncate:r,treeEnabled:i,treeDepth:o,sortField:s,sortOrder:a,runtimeFieldFilters:c}=e,d={};t!==null&&(d.status=t),n.dependencyBlocked===!0&&(d.blocked_semantics="status_or_dependency");let l=n;for(let u of Cu){let f=l[u.optionKey];f!=null&&(d[u.summaryKey]=f)}for(let u of Su)l[u.key]===!0&&(d[u.summaryKey]=!0);return Object.assign(d,Eu(n),ku(n)),aa(d,n),r&&(d.no_truncate=!0),n.strictRead===!0&&(d.strict_read=!0),i&&(d.tree=!0,o!==void 0&&(d.tree_depth=o)),s!==void 0&&(d.sort=s,d.order=a),d.runtime_filters=c,d}async function kt(e,t,n){let r=await af(t,n),i=[],o=df(t),s=lf(e,t,r.statusRegistry),a=t.noTruncate===!0,c=await ff({options:t,runtime:r,statusSelection:s,ordering:o}),d=c;if(!d){let m=await cf(t,r,i),h=o.treeEnabled||wt(t.parent)!==void 0?Ur(Ls(m,z())):void 0;Uu(m,t.tag,i);let v=Wu(m,s.resolvedStatus,s.effectiveOptions,r.typeRegistry,r.statusRegistry,r.runtimeFieldFilters,h?.parents_by_child),b=t.dependencyBlocked===!0?(()=>{let E=mt(m,r.statusRegistry);return v.filter(S=>E.has(S.id.trim().toLowerCase()))})():v,y=tf(b,o.sortField,o.sortOrder,r.statusRegistry),w=o.treeEnabled?Ju(y,o.parentRoot,o.treeDepth,h,m):y;d=uf(w,t,r.projection,o.treeEnabled,fa(s.filtersStatus,t,o,r.pmRoot))}let l=x(),u=[...new Set(i)].sort((m,h)=>m.localeCompare(h)),f=_u(u,c!==null,t.strictRead===!0),p=r.projection.mode==="full"?null:[...r.projection.fields];if(r.projection.mode==="compact"&&t.compact===!0){let m=Ru({filtersStatus:s.filtersStatus,options:t,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters});return{items:d.projected,count:d.projected.length,total:d.totalMatched,...d.pageExtras,completeness:f,filters:m,projection:{mode:"compact",fields:p},...u.length>0?{warnings:u}:{}}}return{items:d.projected,count:d.projected.length,total:d.totalMatched,...d.pageExtras,completeness:f,filters:mf({filtersStatus:s.filtersStatus,options:t,noTruncate:a,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters}),projection:{mode:r.projection.mode,fields:p},sorting:{sort:o.sortField??"default",order:o.sortField?o.sortOrder:"asc"},now:l,...u.length>0?{warnings:u}:{}}}import{createHash as pf}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 hf=64,gf=8;function _f(e,t){let n=(e.dependencies??[]).map(r=>{if(typeof r!="object"||r===null)return"";let i=r;return`${typeof i.kind=="string"?i.kind:"related"}:${typeof i.id=="string"?i.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??"",n].join("\0")}function Rn(e,t=r=>r==="closed"||r==="canceled",n=ne()){let r=e.filter(o=>typeof o?.id=="string"&&o.id.trim().length>0).map(o=>_f(o,t)).sort(),i=n.list().map(o=>k(o)).sort();return pf("sha256").update(r.join("")).update("").update(i.join("")).digest("hex")}function ma(e,t,n){let r=t??n;if(!Number.isInteger(r)||r<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`);return r}var Xr=class{#e=new Map;#t;#n;constructor(t={}){this.#t=ma("maxResultsPerWorkspace",t.maxResultsPerWorkspace,hf),this.#n=ma("maxWorkspaces",t.maxWorkspaces,gf)}lookup(t,n,r){let i=this.#e.get(t),o=!0;(i===void 0||i.fingerprint!==n)&&(i={fingerprint:n,assembly:r(),results:new Map},o=!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,i);let s=i,a=this.#t;return{assembly:s.assembly,assemblyReused:o,fingerprint:n,memoize(c,d){let l=s.results.get(c);if(l!==void 0||s.results.has(c))return s.results.delete(c),s.results.set(c,l),{value:structuredClone(l),reused:!0};let u=d();return s.results.size>=a&&s.results.delete(s.results.keys().next().value),s.results.set(c,structuredClone(u)),{value:u,reused:!1}}}}clear(){this.#e.clear()}},pa=new Xr;function xn(){return pa}function K0(){pa.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]="c67d6023-2fb2-541f-9541-8aa317368dcf")}catch{}})();var yf=["prerequisite","dependent","ancestor","descendant","provenance","related"],vf=new TextEncoder;function Jr(e,t,n){let r=e??t;if(!Number.isInteger(r)||r<1)throw new TypeError(`Relationship context ${n} must be positive`);return r}function Dn(e){return Math.max(1,Math.ceil(vf.encode(JSON.stringify(e)).byteLength/4))}function Qr(e,t,n){let r=n.resolve(e.kind);if(r?.ordering){let i=(r.precedence??"source_before_target")==="source_before_target"?e.source:e.target;return t===i?"prerequisite":"dependent"}if(r?.hierarchy){let i=r.hierarchyDirection==="source_parent"?e.source:e.target;return t===i?"ancestor":"descendant"}return e.kind==="discovered_from"||e.kind==="incident_from"?"provenance":"related"}function bf(e,t,n,r){let i=e.filter(o=>o.source===t&&o.target===n||o.target===t&&o.source===n).map(o=>Qr(o,n,r));return[...new Set(i)].sort()}function wf(e){return yf.find(t=>e.includes(t))}function kf(e,t,n,r){let i=r.direction??"both",o=r.maxDepth??3;if(!Number.isInteger(o)||o<0)throw new TypeError("Relationship context maxDepth must be non-negative");let s=new Set([t]),a=[{id:t,distance:0}],c=[],d=0,l=!1;for(let u=0;u<a.length;u+=1){r.signal?.throwIfAborted();let f=a[u];if(f.distance>=o&&l)continue;let p=e.neighborEdges(f.id,{direction:i,kinds:r.kinds,signal:r.signal});if(d+=p.meta.inspectedEdges,f.distance>=o){p.value.some(m=>!s.has(m.id))&&(l=!0);continue}for(let{id:m,edge:h}of p.value){if(s.has(m))continue;s.add(m);let v={id:m,distance:f.distance+1,via:f.id,role:Qr(h,m,n)};c.push(v),a.push(v)}}return c.sort((u,f)=>u.distance-f.distance||u.id.localeCompare(f.id)),{rows:c,visitedNodes:a.length,inspectedEdges:d,depthTruncated:l}}function Ef(e,t,n,r){let i={prerequisite:0,dependent:0,ancestor:0,descendant:0,provenance:0,related:0},o=e.neighborEdges(t,{direction:r.direction??"both",kinds:r.kinds,signal:r.signal}).value;for(let{id:s,edge:a}of o)i[Qr(a,s,n)]+=1;return{directEdges:i,directTotal:o.length,rootEdges:o.map(({edge:s})=>s)}}function If(e){let t=[],n=e.initialTokens;for(let r of e.candidates){if(t.length>=e.nodeLimit)break;let i=r.distance===1?bf(e.rootEdges,e.rootId,r.id,e.registry):[],o={...e.details.get(r.id)??{id:r.id},distance:r.distance,role:i.length>0?wf(i):r.role,via:r.via,reasons:i.length>0?i:[`${r.role} via ${r.via} (depth ${r.distance})`]},s=Dn(o);if(n+s>e.tokenBudget)break;t.push(o),n+=s}if(e.candidates.length>0&&t.length===0)throw new TypeError("Relationship context tokenBudget cannot fit one node");return{nodes:t,usedTokens:n}}function Cf(e){let t=e.options.kinds?new Set(e.options.kinds.map(o=>e.registry.require(o).kind)):void 0,n=e.graph.edges().filter(o=>{if(!e.included.has(o.source)||!e.included.has(o.target))return!1;if(t===void 0||t.has(o.kind))return!0;let s=e.registry.resolve(o.kind)?.inverse;return s!==void 0&&t.has(s)}),r=[],i=e.initialTokens;for(let o of n){if(r.length>=e.edgeLimit)break;let s=Dn(o);if(i+s>e.tokenBudget)break;r.push(o),i+=s}return{edges:r,usedTokens:i,candidateCount:n.length}}function ha(e,t,n,r={}){if(!e.nodes().includes(t))throw new TypeError(`Relationship node not found: ${t}`);let i=Jr(r.nodeLimit,20,"nodeLimit"),o=Jr(r.edgeLimit,40,"edgeLimit"),s=Jr(r.tokenBudget,1200,"tokenBudget"),a=r.registry??ne(),c=new Map(n.map(V=>[V.id,V])),d=c.get(t)??{id:t},{evidence:l=[],...u}=d,f=[...l],p=kf(e,t,a,r),{rootEdges:m,...h}=Ef(e,t,a,r),v=Se("relationship-context",{rootId:t,direction:r.direction??"both",kinds:[...r.kinds??[]].sort(),maxDepth:r.maxDepth??3}),b=He(p.rows,r.cursor,v,({id:V})=>V),y=p.rows.slice(b),w=Dn(u)+Dn(f);if(w>s)throw new TypeError("Relationship context tokenBudget cannot fit root and evidence");let E=If({candidates:y,details:c,rootEdges:m,rootId:t,registry:a,nodeLimit:i,tokenBudget:s,initialTokens:w}),{nodes:S}=E,P=new Set([t,...S.map(({id:V})=>V)]),j=Cf({graph:e,included:P,options:r,registry:a,edgeLimit:o,tokenBudget:s,initialTokens:E.usedTokens}),{edges:M,usedTokens:Ce}=j,N=b+S.length,B=N<p.rows.length,Y=S.at(-1),X=j.candidateCount-M.length,te=p.depthTruncated||B||X>0,ae={rootId:t,...u.status===void 0?{}:{rootStatus:u.status},...h,discoveredNodes:p.rows.length,returnedNodes:S.length,returnedEdges:M.length,omittedNodes:p.rows.length-N,omittedEdges:X,evidenceCount:f.length,hasMore:B};return{root:u,summary:ae,nodes:S,edges:M,evidence:f,meta:{exact:!0,truncated:te,completeness:te?"truncated":"complete",nodeLimit:i,edgeLimit:o,tokenBudget:s,usedTokens:Ce,visitedNodes:p.visitedNodes,inspectedEdges:p.inspectedEdges,omittedNodes:p.rows.length-N,omittedEdges:X,...B&&Y?{nextCursor:de(v,Y.id,N-1)}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="620bf4e4-e6d1-5520-89e4-0859f57c7afe")}catch{}})();var Sf=["tree","graph","context"],Tf=["none","repeated"],Rf=["outgoing","incoming","both"],xf=32,Df=200,Af=400,Of=16e3;function Lf(e){let t=e?.trim().toLowerCase()??"tree";if(Sf.includes(t))return t;throw new g(`Invalid --format value "${e}". Use "tree", "graph", or "context".`,_.USAGE)}function he(e,t){if(e===void 0)return;let n=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(n)||n<1)throw new g(`Invalid --${t} value "${e}". Use a positive integer.`,_.USAGE);return n}function An(e){if(e===void 0)return;let t=typeof e=="number"?e:Number(e.trim());if(!Number.isInteger(t)||t<0)throw new g(`Invalid --max-depth value "${e}". Use a non-negative integer.`,_.USAGE);return t}function Ff(e){let t=e?.trim().toLowerCase()??"none";if(Tf.includes(t))return t;throw new g(`Invalid --collapse value "${e}". Use "none" or "repeated".`,_.USAGE)}function ei(e){let t=e?.trim().toLowerCase()??"both";if(Rf.includes(t))return t;throw new g(`Invalid --direction value "${e}". Use "outgoing", "incoming", or "both".`,_.USAGE)}function ti(e,t=ne()){if(e===void 0)return;let n=(Array.isArray(e)?e:[e]).flatMap(i=>i.split(",")).map(i=>i.trim()).filter(i=>i.length>0);if(n.length===0)return;let r=new Set;for(let i of n){let o=t.resolve(i);if(!o){let s=t.list().map(a=>a.kind).join(", ");throw new g(`Invalid --kind value "${i}". Registered kinds: ${s}.`,_.USAGE)}r.add(o.kind)}return[...r].sort()}function Mf(e){if(!e||e.length===0)return[];let t=e.map(({id:r,kind:i})=>({id:r.trim(),kind:i.trim().toLowerCase()})).sort((r,i)=>{let o=r.kind.localeCompare(i.kind);return o!==0?o:r.id.localeCompare(i.id)}),n=new Map;for(let r of t){let i=`${r.kind.toLowerCase()}::${r.id.toLowerCase()}`;n.has(i)||n.set(i,{id:r.id,kind:r.kind})}return[...n.values()]}function Nf(e){return{id:e.id,title:e.title,type:e.type,status:e.status,dependencies:Mf(e.dependencies)}}function $f(e){return Yt(new TextEncoder().encode(JSON.stringify({...e,dependencies:void 0})).byteLength)}function Pf(e,t,n,r,i,o,s,a,c){for(let d of t.dependencies){let l=Math.max(1,Math.ceil(JSON.stringify({from:e.id,to:d.id,kind:d.kind}).length/3));if(a.nodes>=a.nodeLimit){e.truncated=!0,a.reasons.add("node_limit");break}if(a.edges>=a.edgeLimit){e.truncated=!0,a.reasons.add("edge_limit");break}if(a.estimatedTokens+l>=a.tokenBudget){e.truncated=!0,a.reasons.add("token_budget");break}a.edges+=1,a.estimatedTokens+=l,e.dependencies.push(_a(d.id,n,r,i,o,s,a,c+1,d.kind))}}function jf(e,t,n,r,i,o,s,a){return s.estimatedTokens>=s.tokenBudget&&t?.dependencies.length?(e.truncated=!0,s.reasons.add("token_budget"),!0):!t||e.cycle?!0:r!==void 0&&a>=r?(t.dependencies.length>0&&(e.truncated=!0,s.reasons.add("max_depth")),!0):i==="repeated"&&o.has(n)?(e.collapsed=!0,!0):!1}function _a(e,t,n,r,i,o,s,a=0,c){let d=e.trim().toLowerCase(),l=t.get(d),u={id:l?.id??e,title:l?.title,type:l?.type,status:l?.status,via:c,missing:!l,cycle:n.has(d),dependencies:[]};if(s.nodes+=1,s.estimatedTokens+=$f(u),jf(u,l,d,r,i,o,s,a))return u;i==="repeated"&&o.add(d);let f=new Set(n);return f.add(d),Pf(u,l,t,f,r,i,o,s,a),u}function ga(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 Uf(e){let t=new Map,n=new Map,r=[e];for(;r.length>0;){let a=r.pop();t.set(a.id,ga(t.get(a.id),{id:a.id,title:a.title,type:a.type,status:a.status,missing:a.missing}));for(let c of a.dependencies){t.set(c.id,ga(t.get(c.id),{id:c.id,title:c.title,type:c.type,status:c.status,missing:c.missing}));let d=c.via??"related",l=`${a.id}::${c.id}::${d}`;n.has(l)||n.set(l,{from:a.id,to:c.id,kind:d}),c.cycle||r.push(c)}}let i=[...t.values()].sort((a,c)=>a.id.localeCompare(c.id)),o=[...n.values()].sort((a,c)=>{let d=a.from.localeCompare(c.from);if(d!==0)return d;let l=a.to.localeCompare(c.to);return l!==0?l:a.kind.localeCompare(c.kind)}),s=i.filter(a=>a.missing).map(a=>a.id);return{root_id:e.id,nodes:i,edges:o,missing_ids:s}}function ya(e,t,n){let r=new Set,i=new Set,o=new Set,s=new Set,a=[{id:e,depth:0}],c=0;for(;c<a.length;){let d=a[c++],l=d.id.trim().toLowerCase();r.add(l);let u=t.get(l);if(!u){o.add(l);continue}if(!(n!==void 0&&d.depth>=n)&&!s.has(l)){s.add(l);for(let f of u.dependencies)i.add(`${l}::${f.id.trim().toLowerCase()}::${f.kind}`),a.push({id:f.id,depth:d.depth+1})}}return{node_count:r.size,edge_count:i.size,edge_basis:"deduplicated_directed",missing_count:o.size}}function Hf(e,t=ne()){let n=An(e.maxDepth),r=he(e.nodeLimit,"node-limit"),i=he(e.edgeLimit,"edge-limit"),o=he(e.tokenBudget,"token-budget"),s=ti(e.kind,t);return{direction:ei(e.direction),...s===void 0?{}:{kinds:s},...n===void 0?{}:{maxDepth:n},...r===void 0?{}:{nodeLimit:r},...i===void 0?{}:{edgeLimit:i},...o===void 0?{}:{tokenBudget:o},...e.cursor?.trim()?{cursor:e.cursor.trim()}:{}}}function Bf(e,t,n,r){return ha(e.graph,t,e.details.map(i=>i.id===t&&r.length>0?{...i,evidence:r}:i),n)}function Zr(e,t,n,r){for(let i of n.slice(0,r)){let o=i?.trim();o&&e.push(`${t}:${o}`)}}async function Gf(e,t,n,r){let i=await ue(e,t,n.id_prefix,n.item_format,r);if(!i)return[];let{document:o}=await Te(i,{schema:n.schema}),s=o.metadata,a=s.files??[],c=s.tests??[],d=s.docs??[],l=[["files",a.length],["tests",c.length],["docs",d.length],["comments",(s.comments??[]).length],["notes",(s.notes??[]).length],["learnings",(s.learnings??[]).length]];if(l.every(([,f])=>f===0))return[];let u=[`linked:${l.map(([f,p])=>`${f}=${p}`).join(",")}`];return Zr(u,"file",a.map(f=>f.path),3),Zr(u,"test",c.map(f=>f.command??f.path),2),Zr(u,"doc",d.map(f=>f.path),2),u}function Kf(e){let{canonicalId:t,context:n,missingCount:r,missingReferences:i,referenceLimit:o,summaryOnly:s}=e;return{id:t,format:"context",node_count:n.nodes.length+1,edge_count:n.edges.length,edge_basis:"deduplicated_directed",missing_count:r,missing_scope:"traversal",missing_reference_count:i.length,...s?{}:{missing_references:i.slice(0,o),context:n}}}function zf(e){let{row:t,missingReachableSet:n,packetIds:r,filteredKinds:i,registry:o}=e;if(t.no_active_blocker_sentinel||!n.has(t.target_id.trim().toLowerCase())||!r.has(t.holder_id))return!1;if(i===void 0)return!0;let s=o.resolve(t.kind);return s!==void 0&&(i.has(s.kind)||s.inverse!==void 0&&i.has(s.inverse))}function va(e,t,n){let r;for(;;){let i=Yt(new TextEncoder().encode(Cr(kr("deps",e),t)).byteLength);if(i===r)return i;n(i),r=i}}function Vf(e){return e instanceof TypeError&&e.message.startsWith("Relationship context tokenBudget cannot fit ")}function qf(e){try{return Bf(e.assembly,e.canonicalId,{...e.contextOptions,...e.internalTokenBudget===void 0?{}:{tokenBudget:e.internalTokenBudget}},e.rootEvidence)}catch(t){if(e.smallestResult!==void 0&&Vf(t))return e.smallestResult;throw t}}function Wf(e){let{assembly:t,canonicalId:n,contextOptions:r,rootEvidence:i,summaryOnly:o,outputFormat:s,missingCount:a,missingReferences:c}=e,d=r.edgeLimit??40,l=r.tokenBudget,u,f;for(;;){let p=qf({assembly:t,canonicalId:n,contextOptions:r,internalTokenBudget:l,rootEvidence:i,smallestResult:f});if("format"in p)return p;let m=p;u??=m.meta.tokenBudget,l??=u;let h=Kf({canonicalId:n,context:m,missingCount:a,missingReferences:c,referenceLimit:d,summaryOnly:o});if(f=h,o||(m.meta.tokenBudget=u,m.meta.usedTokens=va(et(h,!1),s,y=>{m.meta.usedTokens=y}),m.meta.usedTokens<=u))return h;if(d>0){d-=1;continue}let v=l,b=v*u/m.meta.usedTokens;l=Math.min(v-1,Math.max(1,Math.floor(b*.9)))}}function Yf(e){let{assembly:t,canonicalId:n,options:r,rootEvidence:i,summaryOnly:o,outputFormat:s}=e,a=Hf(r,t.graph.registry()),c=t.graph.closure(n,{direction:a.direction,...a.kinds===void 0?{}:{kinds:a.kinds},maxDepth:a.maxDepth??3}),d=c.value.filter(h=>t.missingIdSet.has(h.toLowerCase())),l=new Set(d.map(h=>h.toLowerCase())),u=t.graph.registry(),f=a.kinds?new Set(a.kinds.map(h=>u.require(h).kind)):void 0,p=new Set([n,...c.value]),m=[...t.dangling.active,...t.dangling.legacy_terminal].filter(h=>zf({row:h,missingReachableSet:l,packetIds:p,filteredKinds:f,registry:u}));return Wf({assembly:t,canonicalId:n,contextOptions:a,rootEvidence:i,summaryOnly:o,outputFormat:s,missingCount:d.length,missingReferences:m})}function Xf(e){let t=[e],n;for(;t.length>0;){let r=t.pop();r.dependencies.length>0&&(n=r,t.push(...r.dependencies))}return n?(n.dependencies.pop(),n.truncated=!0,!0):!1}function Jf(e,t,n,r,i,o,s){let a=i??xf,c=he(n.nodeLimit,"node-limit")??Df,d=he(n.edgeLimit,"edge-limit")??Af,l=he(n.tokenBudget,"token-budget")??Of,u={nodeLimit:c,edgeLimit:d,tokenBudget:l,nodes:0,edges:0,estimatedTokens:0,reasons:new Set},f=_a(e,r,new Set,a,t==="graph"?"repeated":o,new Set,u),p=ya(e,r,void 0),m;for(;;){let h=Uf(f),v=u.reasons.size===0?void 0:{reasons:[...u.reasons].sort(),limits:{max_depth:a,node_limit:c,edge_limit:d,token_budget:l},estimated_tokens:0,total_node_count:p.node_count,total_edge_count:p.edge_count,omitted_node_count:Math.max(0,p.node_count-h.nodes.length),omitted_edge_count:Math.max(0,p.edge_count-h.edges.length)},b={id:e,format:t,node_count:h.nodes.length,edge_count:h.edges.length,edge_basis:"deduplicated_directed",missing_count:h.missing_ids.length,...v?{truncation:v}:{}};if(m=t==="tree"?{...b,tree:f}:{...b,graph:h},(m.truncation===void 0?Yt(new TextEncoder().encode(Cr(kr("deps",et(m,!1)),s)).byteLength):va(et(m,!1),s,y=>{m.truncation.estimated_tokens=y}))<=l)return m;if(!Xf(f))return u.reasons.add("token_budget"),m;u.reasons.add("token_budget")}}function et(e,t,n={}){let r={name:e.format==="tree"?"dependency_tree":e.format==="graph"?"dependency_graph":"relationship_context",restore_with:"--full"};return{...e,legacy_alias_counts:n,projection:{mode:t?"summary":"full",declared_field_groups:[r],included_field_groups:t?[]:[r.name]}}}async function fk(e,t,n){let r=O(process.cwd(),n.path);await U(r);let i=Lf(t.format),o=An(t.maxDepth),s=Ff(t.collapse);Wt(t.summary===!0,t.full===!0,"--summary");let a=t.summary===!0,c=await F(r),d=L(c,D()),l=await fe(r,c.item_format,d.type_to_folder,void 0,c.schema),u=J(c.schema),f=new Map(l.map(m=>[m.id.trim().toLowerCase(),Nf(m)])),p=Br(l,m=>$(m,u));for(let m of[...p.active,...p.legacy_terminal]){let h=f.get(m.holder_id.trim().toLowerCase()),v=m.kind.trim().toLowerCase();h&&!h.dependencies.some(b=>b.id.trim().toLowerCase()===m.target_id.trim().toLowerCase()&&b.kind===v)&&h.dependencies.push({id:m.target_id,kind:v})}if(!f.has(e.trim().toLowerCase()))throw new g(`Item ${e} not found`,_.NOT_FOUND);if(i==="context"){let m=f.get(e.trim().toLowerCase()).id,h=a?[]:await Gf(r,m,c,d.type_to_folder),v=w=>$(w,u),b=z(),y=xn().lookup(r,Rn(l,v,b),()=>Qe(l,v,b));return et(Yf({assembly:y.assembly,canonicalId:m,options:t,rootEvidence:h,summaryOnly:a,outputFormat:n.json===!0?"json":"toon"}),a,y.assembly.legacyAliasCounts)}return a?et({id:e,format:i,...ya(e,f,o)},!0,Object.fromEntries(Object.entries(Qe(l,m=>$(m,u)).legacyAliasCounts))):et(Jf(e,i,t,f,o,s,n.json===!0?"json":"toon"),!1,Object.fromEntries(Object.entries(Qe(l,m=>$(m,u)).legacyAliasCounts)))}(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]="f60c628a-2e42-5770-a001-39cce5f92595")}catch{}})();var Qf=ke.paths,Zf=ke.visited_paths,em=ke.path_depth;function ni(e,t){if(!Number.isFinite(t)||!Number.isInteger(t)||t<0)throw new TypeError(`Invalid path ${e} bound: ${String(t)}`)}function On(e,t){return t.hierarchyDirection==="target_parent"?e.target:e.source}function Et(e,t){return(t.precedence??"source_before_target")==="target_before_source"?e.target:e.source}function tt(e,t){let n=Et(e,t);return{predecessor:n,successor:n===e.source?e.target:e.source}}function tm(e,t,n){if(t===void 0)return;let r=e.registry(),i=new Set;for(let o of t){let s=r.require(o),a=s.traversal;if(a==="association")throw new TypeError(`Relationship kind ${s.kind} uses association traversal; use graph impact --direction both`);if(a!==n&&a!=="semantic"){let c=a==="hierarchy"?"graph ancestors or graph descendants":"graph predecessors or graph successors";throw new TypeError(`Relationship kind ${s.kind} uses ${a} traversal; use ${c}`)}i.add(s.kind)}return i}function nm(e,t,n,r,i){let o=e.registry(),s=e.neighborEdges(t,{direction:"both",...n===void 0?{}:{kinds:[...n]}}),a=[],c=new Set;for(let d of s.value){let l=o.require(d.edge.kind);n===void 0&&!l[r]||i(d,l,t)&&(c.has(d.id)||(c.add(d.id),a.push(d.id)))}return{neighbors:a,inspectedEdges:s.meta.inspectedEdges}}function rm(e,t,n,r,i,o){if(t>=n)return e.neighbors.some(s=>!o.seen.has(s))&&(o.truncated=!0),!1;for(let s of e.neighbors)if(!o.seen.has(s)){if(o.seen.add(s),o.queue.push({id:s,depth:t+1}),!o.resumed){s===i&&(o.resumed=!0);continue}if(o.value.length>=r)return o.truncated=!0,!0;o.value.push(s)}return!1}function Ln(e,t,n,r,i){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`);let o=tm(e,n.kinds,r),s=n.limit??Number.POSITIVE_INFINITY,a=n.maxDepth??Number.POSITIVE_INFINITY,c=n.after,d={seen:new Set([t]),value:[],queue:[{id:t,depth:0}],resumed:c===void 0,truncated:!1},l=0,u=0;for(let f=0;f<d.queue.length;f+=1){n.signal?.throwIfAborted();let p=d.queue[f];l+=1;let m=nm(e,p.id,o,r,i);if(u+=m.inspectedEdges,rm(m,p.depth,a,s,c,d))break}if(!d.resumed)throw new TypeError(`Traversal cursor not found in sequence: ${c}`);return{value:d.value,meta:{visitedNodes:l,inspectedEdges:u,truncated:d.truncated,nextCursor:d.value.at(-1)}}}function ba(e,t){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`)}function wa(e,t,n,r,i){let o=e.neighborEdges(t.nodes.at(-1),{direction:r,...n.kinds===void 0?{}:{kinds:n.kinds}});return i.inspectedEdges+=o.meta.inspectedEdges,o.value.filter(s=>!t.nodeSet.has(s.id))}function im(e,t,n,r,i,o,s){for(let a of wa(e,t,r,i,s)){let c=[...t.nodes,a.id],d=new Set(t.nodeSet).add(a.id),l=[...t.edges,a.edge];if(a.id===n){if(s.value.push({nodes:c,edges:l,length:l.length}),s.value.length>=o)return!0}else s.queue.push({nodes:c,nodeSet:d,edges:l})}return!1}function ka(e,t,n={}){return Ln(e,t,n,"hierarchy",(r,i)=>On(r.edge,i)===r.id)}function Ea(e,t,n={}){return Ln(e,t,n,"hierarchy",(r,i,o)=>On(r.edge,i)===o)}function Ia(e,t,n={}){return Ln(e,t,n,"ordering",(r,i)=>Et(r.edge,i)===r.id)}function Ca(e,t,n={}){return Ln(e,t,n,"ordering",(r,i,o)=>Et(r.edge,i)===o)}function om(e,t,n,r,i,o,s,a){let c={value:[],queue:[{nodes:[t],nodeSet:new Set([t]),edges:[]}],inspectedEdges:0},d=0,l=!1,u=i+1;for(let f=0;f<c.queue.length;f+=1){if(r.signal?.throwIfAborted(),c.value.length>=u||d>=o){l=!0;break}let p=c.queue[f];if(d+=1,p.edges.length>=s){wa(e,p,r,a,c).length>0&&(l=!0);continue}if(im(e,p,n,r,a,u,c)){l=!0;break}}return{value:c.value.slice(0,i),meta:{visitedNodes:d,inspectedEdges:c.inspectedEdges,truncated:l}}}function Sa(e,t,n,r={}){ba(e,t),ba(e,n);let i=r.maxPaths??Qf,o=r.maxVisitedPaths??Zf,s=r.maxDepth??em;ni("maxPaths",i),ni("maxVisitedPaths",o),ni("maxDepth",s);let a=r.direction??"outgoing";r.signal?.throwIfAborted();for(let c of r.kinds??[])e.registry().require(c);return t===n?i===0?{value:[],meta:{visitedNodes:1,inspectedEdges:0,truncated:!0}}:{value:[{nodes:[t],edges:[],length:0}],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}}:om(e,t,n,r,i,o,s,a)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="789f7451-ceb1-5e5c-b2b6-45eec49580ce")}catch{}})();var sm=16,am=2,cm=8;function Fn(e,t){if(!Number.isInteger(t)||t<1)throw new TypeError(`Invalid ${e} bound: ${String(t)}`)}function Mn(e,t,n){let r=e.registry(),i=t===void 0?void 0:new Set(t.map(o=>r.require(o).kind));for(let o of e.edges()){if(o.source===o.target)continue;let s=r.require(o.kind);i!==void 0&&!(i.has(s.kind)||s.inverse!==void 0&&i.has(s.inverse))||n(o,s)}}function dm(e,t){let n=new Map;Mn(e,t,r=>{Ta(n,r.source,r.target),Ta(n,r.target,r.source)});for(let r of n.values())r.sort();return n}function Ta(e,t,n){let r=e.get(t);r===void 0?e.set(t,[n]):r.push(n)}function lm(e,t){let n=new Map;for(let o of e){let s=t.get(o);n.set(s,(n.get(s)??0)+1)}let r,i=0;for(let[o,s]of n)(s>i||s===i&&o<r)&&(r=o,i=s);return r}function um(e,t){let n=new Map;for(let[i,o]of e){let s=n.get(o);s===void 0?n.set(o,[i]):s.push(i)}let r=[];for(let i of n.values())i.length<t||(i.sort(),r.push({representative:i[0],size:i.length,members:i}));return r.sort((i,o)=>o.size-i.size||i.representative.localeCompare(o.representative))}function Ra(e,t={}){let n=t.maxIterations??sm,r=t.minSize??am;Fn("maxIterations",n),Fn("minSize",r);let i=dm(e,t.kinds),o=e.nodes(),s=new Map(o.map(u=>[u,u])),a=0,c=!1,d=0,l=0;for(;a<n&&!c;){t.signal?.throwIfAborted(),a+=1,c=!0;for(let u of o){d+=1;let f=i.get(u);if(f===void 0)continue;l+=f.length;let p=lm(f,s);p!==s.get(u)&&(s.set(u,p),c=!1)}}return{value:{communities:um(s,r),iterations:a,converged:c},meta:{visitedNodes:d,inspectedEdges:l,truncated:!c}}}function Nn(e){return e.direction==="directed"&&(e.ordering||e.hierarchy)}function $n(e){return e.inverse!==void 0&&e.inverse<e.kind?e.inverse:e.kind}function ri(e,t){return(t.hierarchy?On(e,t):e.source===Et(e,t)?e.target:e.source)===e.target?{from:e.source,to:e.target}:{from:e.target,to:e.source}}function fm(e,t){if(t===void 0)return;let n=e.registry(),r=new Set;for(let i of t){let o=n.require(i);if(!Nn(o))throw new TypeError(`Relationship kind ${o.kind} is not a directed ordering or hierarchy kind`);r.add($n(o))}return r}function mm(e,t){let n=e.registry(),r=new Map;for(let i of e.edges()){let o=n.require(i.kind);if(!Nn(o))continue;let s=$n(o);if(t!==void 0&&!t.has(s))continue;let a=ri(i,o);if(a.from===a.to)continue;let c=r.get(s);c===void 0&&(c={adjacency:new Map,records:[]},r.set(s,c));let d=c.adjacency.get(a.from);d===void 0?c.adjacency.set(a.from,new Set([a.to])):d.add(a.to),c.records.push({...a,edge:i})}return r}function pm(e){let t=new Map;for(let[n,r]of e.adjacency)t.set(n,[...r].sort());return t}function hm(e,t,n,r){let i=[r];for(let o=n;o!==t;o=e.get(o))i.push(o);return i.push(t),i.reverse()}function gm(e,t,n,r,i,o){for(let s of e.get(n.id)??[])if(o.inspectedEdges+=1,!(n.depth===0&&s===t.to)&&!r.has(s)){if(r.set(s,n.id),s===t.to)return hm(r,t.from,n.id,s);i.push({id:s,depth:n.depth+1})}}function _m(e,t,n,r){let i=new Map([[t.from,t.from]]),o=[{id:t.from,depth:0}];for(let s=0;s<o.length;s+=1){let a=o[s];if(r.visitedNodes+=1,a.depth>=n)continue;let c=gm(e,t,a,i,o,r);if(c!==void 0)return c}}function nt(e,t={}){let n=t.maxDepth??cm;Fn("maxDepth",n),t.limit!==void 0&&Fn("limit",t.limit);let r=t.limit??Number.POSITIVE_INFINITY,i=fm(e,t.kinds),o=mm(e,i),s=[],a={visitedNodes:0,inspectedEdges:0},c=!1;e:for(let d of[...o.keys()].sort()){let l=o.get(d),u=pm(l);for(let f of l.records){t.signal?.throwIfAborted();let p=_m(u,f,n,a);if(p!==void 0){if(s.length>=r){c=!0;break e}s.push({edge:f.edge,witness:p})}}}return{value:s,meta:{visitedNodes:a.visitedNodes,inspectedEdges:a.inspectedEdges,truncated:c}}}function ym(e,t,n,r,i){let o=new Set,s=[];for(let a of n){if(a.id===e||o.has(a.id))continue;if(!i.seen.has(a.id)){if(t>=r){i.truncated=!0;continue}i.seen.add(a.id),i.queue.push({id:a.id,depth:t+1})}o.add(a.id),s.push(a.id);let c=i.predecessors.get(a.id);c===void 0&&(c=new Set,i.predecessors.set(a.id,c)),c.add(e)}return s}function vm(e,t,n){let r=n.direction??"outgoing",i=n.maxDepth??Number.POSITIVE_INFINITY,o=[],s=new Map,a={seen:new Set([t]),queue:[{id:t,depth:0}],predecessors:new Map,truncated:!1},c=0;for(let d=0;d<a.queue.length;d+=1){n.signal?.throwIfAborted();let{id:l,depth:u}=a.queue[d];o.push(l);let f=e.neighborEdges(l,{direction:r,...n.kinds===void 0?{}:{kinds:n.kinds}});c+=f.meta.inspectedEdges,s.set(l,ym(l,u,f.value,i,a))}return{order:o,successors:s,predecessors:a.predecessors,inspectedEdges:c,truncated:a.truncated}}function bm(e,t){let n=[],r=new Set([t]),i=[{id:t,index:0}];for(;i.length>0;){let o=i.at(-1),s=e.successors.get(o.id);if(o.index<s.length){let a=s[o.index];o.index+=1,r.has(a)||(r.add(a),i.push({id:a,index:0}))}else n.push(o.id),i.pop()}return n.reverse()}function wm(e,t,n,r){let i=e,o=t;for(;i!==o;){for(;r.get(i)>r.get(o);)i=n.get(i);for(;r.get(o)>r.get(i);)o=n.get(o)}return i}function km(e,t,n){let r;for(let i of[...e].sort())t.has(i)&&(r=r===void 0?i:wm(r,i,t,n));return r}function Em(e,t,n,r,i){let o=new Map([[t,t]]),s=!0;for(;s;){s=!1;for(let a of n){if(i?.throwIfAborted(),a===t)continue;let c=km(e.predecessors.get(a),o,r);c!==void 0&&o.get(a)!==c&&(o.set(a,c),s=!0)}}return o}function xa(e,t,n={}){if(!e.hasNode(t))throw new TypeError(`Relationship node not found: ${t}`);if(n.maxDepth!==void 0&&(!Number.isInteger(n.maxDepth)||n.maxDepth<0))throw new TypeError(`Invalid maxDepth bound: ${String(n.maxDepth)}`);let r=vm(e,t,n),i=bm(r,t),o=new Map(i.map((d,l)=>[d,l])),s=Em(r,t,i,o,n.signal),a=new Map(i.map(d=>[d,1]));for(let d=i.length-1;d>=0;d-=1){let l=i[d];if(l===t)continue;let u=s.get(l);a.set(u,a.get(u)+a.get(l))}let c=i.filter(d=>d!==t).map(d=>({id:d,idom:s.get(d),dominatedCount:a.get(d)-1})).sort((d,l)=>l.dominatedCount-d.dominatedCount||d.id.localeCompare(l.id));return{value:{root:t,reachableCount:r.order.length,rows:c},meta:{visitedNodes:r.order.length,inspectedEdges:r.inspectedEdges,truncated:r.truncated}}}(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]="3cef3a97-fda4-5811-9e69-04ff722e40a1")}catch{}})();function Da(e){return Math.round(e*1e6)/1e6}function Aa(e,t,n){let r=e.get(t);r===void 0?e.set(t,new Set([n])):r.add(n)}function Oa(e,t){let n=new Map(e.nodes().map(i=>[i,new Set]));Mn(e,t,i=>{n.get(i.source).add(i.target),n.get(i.target).add(i.source)});let r=new Map;for(let[i,o]of n)r.set(i,[...o].sort());return r}function Im(e,t){let n=new Map,r=new Map;return Mn(e,t,(i,o)=>{if(!o.ordering)return;let{predecessor:s,successor:a}=tt(i,o);Aa(r,s,a),Aa(n,a,s)}),{incoming:n,outgoing:r}}function Cm(e,t,n){let r=new Map([[e,0]]),i=new Map([[e,1]]),o=new Map,s=[],a=[e],c=0,d=0;for(let l=0;l<a.length;l+=1){let u=a[l];n.visitedNodes+=1,s.push(u);let f=r.get(u);u!==e&&(c+=1,d+=f);for(let p of t.get(u))if(n.inspectedEdges+=1,r.has(p)||(r.set(p,f+1),a.push(p)),r.get(p)===f+1){i.set(p,(i.get(p)??0)+i.get(u));let m=o.get(p);m===void 0?o.set(p,[u]):m.push(u)}}return{stack:s,sigma:i,predecessors:o,reachableCount:c,distanceSum:d}}function Sm(e,t,n){let r=new Map;for(let i=e.stack.length-1;i>=0;i-=1){let o=e.stack[i],s=(1+(r.get(o)??0))/e.sigma.get(o);for(let a of e.predecessors.get(o)??[])r.set(a,(r.get(a)??0)+e.sigma.get(a)*s);o!==t&&n.set(o,(n.get(o)??0)+(r.get(o)??0))}}function Tm(e,t){return t<=1||e.reachableCount===0?0:e.reachableCount/(t-1)*(e.reachableCount/e.distanceSum)}function Rm(e,t,n,r,i){return{id:e,degree:t.get(e).length,inDegree:n.incoming.get(e)?.size??0,outDegree:n.outgoing.get(e)?.size??0,betweenness:Da((r.get(e)??0)/2),closeness:Da(i.get(e))}}function La(e,t={}){let n=Oa(e,t.kinds),r=Im(e,t.kinds),i=e.nodes(),o=new Map,s=new Map,a={visitedNodes:0,inspectedEdges:0};for(let l of i){t.signal?.throwIfAborted();let u=Cm(l,n,a);s.set(l,Tm(u,i.length)),Sm(u,l,o)}let c=0;for(let l of n.values())c+=l.length;let d=i.map(l=>Rm(l,n,r,o,s)).sort((l,u)=>u.betweenness-l.betweenness||u.degree-l.degree||l.id.localeCompare(u.id));return{value:{nodeCount:i.length,edgeCount:c/2,rows:d},meta:{visitedNodes:a.visitedNodes,inspectedEdges:a.inspectedEdges,truncated:!1}}}function xm(e,t){return e<=t?{source:e,target:t}:{source:t,target:e}}function Dm(e,t,n){let r=t.get(e.node)[e.neighborIndex];if(e.neighborIndex+=1,n.inspectedEdges+=1,r!==e.parent){if(n.discovery.has(r)){n.low.set(e.node,Math.min(n.low.get(e.node),n.discovery.get(r)));return}return e.children+=1,n.discovery.set(r,n.timer),n.low.set(r,n.timer),n.timer+=1,{node:r,parent:e.node,neighborIndex:0,children:0}}}function Am(e,t,n){if(e.parent===null){e.children>1&&n.articulation.add(e.node);return}let r=e.parent,i=n.low.get(e.node);n.low.set(r,Math.min(n.low.get(r),i)),r!==t&&i>=n.discovery.get(r)&&n.articulation.add(r),i>n.discovery.get(r)&&n.bridges.push(xm(r,e.node))}function Om(e,t,n,r){n.discovery.set(e,n.timer),n.low.set(e,n.timer),n.timer+=1;let i=[{node:e,parent:null,neighborIndex:0,children:0}];for(;i.length>0;){r?.throwIfAborted();let o=i.at(-1);if(o.neighborIndex<t.get(o.node).length){let s=Dm(o,t,n);s!==void 0&&i.push(s)}else Am(o,e,n),i.pop()}}function Pn(e,t={}){let n=Oa(e,t.kinds),r={discovery:new Map,low:new Map,timer:0,articulation:new Set,bridges:[],inspectedEdges:0};for(let i of e.nodes())r.discovery.has(i)||Om(i,n,r,t.signal);return{value:{articulationPoints:[...r.articulation].sort(),bridges:r.bridges.sort((i,o)=>i.source.localeCompare(o.source)||i.target.localeCompare(o.target))},meta:{visitedNodes:r.discovery.size,inspectedEdges:r.inspectedEdges,truncated:!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]="32f3ce0d-64ac-5ad4-b27a-2a279718de22")}catch{}})();function Lm(e){let t=e.registry(),n=new Map,r=new Set;for(let i of e.edges()){let o=t.require(i.kind);if(!o.ordering)continue;let{predecessor:s,successor:a}=tt(i,o);if(r.add(s),r.add(a),s===a)continue;let c=n.get(s);c===void 0?n.set(s,new Set([a])):c.add(a)}return{forward:n,participants:r}}function Fm(e,t,n,r){if(e===void 0)return r;let i=r;for(let o of e)t.has(o)&&(i=Math.min(i,n.get(o)));return i}function Mm(e,t,n){let r=n-t;return{id:e,earliestStart:t,earliestFinish:t+1,latestStart:n,latestFinish:n+1,slack:r,critical:r===0}}function Nm(e,t,n,r,i){let o=new Map;for(let s=e.length-1;s>=0;s-=1){let a=e[s],c=Fm(t.forward.get(a),r,o,i);o.set(a,c-1)}return e.map(s=>Mm(s,n[s],o.get(s))).sort((s,a)=>s.slack-a.slack||s.earliestStart-a.earliestStart||s.id.localeCompare(a.id))}function Fa(e,t={}){t.signal?.throwIfAborted();let n=bn(e,{registry:e.registry()}),r=Lm(e),i=new Set(n.order),o=n.order.filter(d=>r.participants.has(d)),s=o.reduce((d,l)=>Math.max(d,n.depth[l]+1),0),a=Nm(o,r,n.depth,i,s),c=a.length>0;return{exact:!0,acyclic:n.acyclic,makespan:s,scheduledCount:a.length,criticalPath:c?n.criticalPath:[],criticalPathLength:c?n.criticalPathLength:0,cycles:n.cycles,rows:a,provenance:{algorithm:"critical-path-method",edgeFamily:"ordering",weighting:"unit"}}}(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]="fa17672a-97a2-5f94-bdfe-9df970cc038b")}catch{}})();function $m(e,t,n){for(let r=e.length-1;r>=0;r-=1){n?.throwIfAborted();let i=t.get(e[r]);for(let o of i.successors){n?.throwIfAborted();let s=t.get(o);if(s.latest===void 0||s.duration===void 0)continue;let a=s.latest-s.duration;(i.latest===void 0||a<i.latest)&&(i.latest=a,i.anchor=s.anchor)}}}function Pm(e,t,n,r){let i=[],o=e;for(;o!==void 0&&i.length<n;)r?.throwIfAborted(),i.push(o),o=t.get(o).predecessor;return i.reverse(),{path:i,path_truncated:o!==void 0}}function jm(e,t,n,r,i){let o=new Map(t.map(a=>[a.id,a])),s=new Map;for(let a of e){i?.throwIfAborted();let c=o.get(a),d=c?.estimated_minutes,l=typeof d=="number"&&Number.isFinite(d)&&d>=0?d:void 0,u={item:c,duration:l,pending:0,successors:new Set,earliest:0};if(c?.deadline!==void 0){let f=Date.parse(c.deadline);Number.isFinite(f)?(u.deadline=(f-n)/6e4,u.latest=u.deadline,u.anchor=a):r(a,"invalid_deadline")}s.set(a,u)}return s}function Um(e,t,n){for(let r of e.edges()){n?.throwIfAborted();let i=e.registry().require(r.kind);if(!i.ordering)continue;let{predecessor:o,successor:s}=tt(r,i),a=t.get(o);a.successors.has(s)||(a.successors.add(s),t.get(s).pending+=1)}}function Hm(e,t,n){let r=e.filter(i=>t.get(i).pending===0);for(let i=0;i<r.length;i+=1){n?.throwIfAborted();let o=r[i],s=t.get(o),a=s.earliest===null||s.duration===void 0?null:s.earliest+s.duration;for(let c of s.successors){n?.throwIfAborted();let d=t.get(c);a===null?d.earliest=null:d.earliest!==null&&(a>d.earliest||a===d.earliest&&(d.predecessor===void 0||o<d.predecessor))&&(d.earliest=a,d.predecessor=o),d.pending-=1,d.pending===0&&r.push(c)}}return r}function Bm(e,t,n,r,i,o,s,a){let c=t.duration;if(t.latest!==void 0){r.scheduled_count+=1;let d=t.latest-c;r.rows.length<o?r.rows.push({id:e,deadline_id:t.anchor,latest_start:new Date(i+d*6e4).toISOString(),slack_minutes:t.earliest===null?null:d-t.earliest}):r.truncated=!0}if(t.deadline!==void 0&&t.earliest!==null&&t.earliest+c>t.deadline)if(r.overcommitted_count+=1,r.overcommitted.length<o){let d=Pm(e,n,Math.min(o,s.remaining),a);s.remaining-=d.path.length,d.path_truncated&&(r.truncated=!0),r.overcommitted.push({deadline_id:e,deadline:t.item.deadline,shortfall_minutes:t.earliest+c-t.deadline,...d})}else r.truncated=!0}function Gm(e,t,n,r,i,o,s,a){let c={remaining:o};for(let d of e){a?.throwIfAborted();let l=t.get(d);if(l.pending>0){s(d,"cycle_or_gated_by_cycle");continue}if(l.duration===void 0){s(d,"unknown_estimate");continue}if(l.latest!==void 0&&!Number.isFinite(new Date(r+(l.latest-l.duration)*6e4).getTime())){s(d,"date_range_exceeded");continue}l.earliest===null&&s(d,"unknown_predecessor_estimate"),Bm(d,l,t,n,r,i,c,a)}}function Ma(e,t,n={}){n.signal?.throwIfAborted();let r=Date.parse(n.now??new Date().toISOString());if(!Number.isFinite(r))throw new TypeError("Invalid scheduling clock");let i=n.maxWork??1e5,o=n.limit??10;for(let[f,p]of[["maxWork",i],["limit",o]])if(!Number.isSafeInteger(p)||p<1)throw new TypeError(`Invalid scheduling ${f}`);let s={as_of:new Date(r).toISOString(),basis:"derived_elapsed_minutes",complete:!0,truncated:!1,work_limit_exceeded:!1,scheduled_count:0,residual_count:0,overcommitted_count:0,rows:[],residuals:[],overcommitted:[]},a=e.nodes(),c=e.edges();if(a.length+c.length+t.length>i)return{...s,complete:!1,work_limit_exceeded:!0};let d=(f,p)=>{s.complete=!1,s.residual_count+=1,s.residuals.length<o?s.residuals.push({id:f,reason:p}):s.truncated=!0},l=jm(a,t,r,d,n.signal);Um(e,l,n.signal);let u=Hm(a,l,n.signal);return $m(u,l,n.signal),Gm(a,l,s,r,o,i,d,n.signal),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]="ccb7d865-8baa-5379-a810-7be494eadcb1")}catch{}})();function rt(){return{nodes:0,isolated:0,degree_leq_one:0,semantic_nodes:0,without_semantic_edges:0,degree_histogram:{}}}function Pa(e,t,n,r){let i={all:rt(),active:rt(),terminal:rt()},o=new Map;for(let s of e.details){if(r?.throwIfAborted(),e.missingIdSet.has(s.id.toLowerCase())||s.status==="external")continue;let a=o.get(s.status)??rt();o.set(s.status,a);let c=e.graph.incidentEdges(s.id),d=c.some(l=>n(l.kind));for(let l of[i.all,i[t(s.status)?"terminal":"active"],a]){l.nodes+=1,l.isolated+=+(c.length===0),c.length<=1&&(l.degree_leq_one+=1),d?l.semantic_nodes+=1:l.without_semantic_edges+=1;let u=String(c.length);l.degree_histogram[u]=(l.degree_histogram[u]??0)+1}}return{coverage_by_lifecycle:i,coverage_by_status:Object.fromEntries([...o].sort(([s],[a])=>s.localeCompare(a)))}}function Na(e){if(!jn(e))return!1;let t=e;if(!["nodes","isolated","degree_leq_one","semantic_nodes","without_semantic_edges"].every(r=>Number.isSafeInteger(t[r])&&Number(t[r])>=0)||!jn(t.degree_histogram))return!1;let n=Object.entries(t.degree_histogram);return n.every(([r,i])=>/^(0|[1-9]\d*)$/.test(r)&&Number.isSafeInteger(i)&&Number(i)>=0)&&n.reduce((r,[,i])=>r+Number(i),0)===t.nodes&&Number(t.isolated)<=Number(t.degree_leq_one)&&Number(t.degree_leq_one)<=Number(t.nodes)&&Number(t.semantic_nodes)+Number(t.without_semantic_edges)===t.nodes}function jn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ja(e){for(let r of["ordering_acyclic","active_ordering_acyclic"])if(e[r]!==void 0&&typeof e[r]!="boolean")return!1;let t=e.coverage_by_lifecycle,n=e.coverage_by_status;return t===void 0&&n===void 0?!0:!jn(t)||!jn(n)?!1:["all","active","terminal"].every(r=>Na(t[r]))&&Object.values(n).every(Na)}function $a(e,t){return Object.fromEntries([...new Set([...Object.keys(e),...Object.keys(t)])].sort().map(n=>{let r=Object.hasOwn(e,n)?e[n]:rt(),i=Object.hasOwn(t,n)?t[n]:rt(),o=Object.fromEntries([...new Set([...Object.keys(r.degree_histogram),...Object.keys(i.degree_histogram)])].sort().map(s=>[s,(i.degree_histogram[s]??0)-(r.degree_histogram[s]??0)]));return[n,{nodes:i.nodes-r.nodes,isolated:i.isolated-r.isolated,degree_leq_one:i.degree_leq_one-r.degree_leq_one,semantic_nodes:i.semantic_nodes-r.semantic_nodes,without_semantic_edges:i.without_semantic_edges-r.without_semantic_edges,degree_histogram:o}]}))}function Ua(e,t){return!e.coverage_by_lifecycle||!t.coverage_by_lifecycle||!e.coverage_by_status||!t.coverage_by_status?{lifecycle_comparable:!1}:{lifecycle_comparable:!0,coverage_by_lifecycle:$a(e.coverage_by_lifecycle,t.coverage_by_lifecycle),coverage_by_status:$a(e.coverage_by_status,t.coverage_by_status)}}(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]="896e1553-b127-532f-ac39-e0d47f29eebc")}catch{}})();var it=["missing_reference_active","missing_reference_terminal","legacy_no_blocker_sentinel","ordering_cycle","legacy_ordering_cycle","ordering_storage_contradiction","legacy_ordering_storage_contradiction","hierarchy_cycle","legacy_hierarchy_cycle","hierarchy_cardinality_violation","legacy_hierarchy_cardinality_violation","hierarchy_direction_violation","legacy_hierarchy_direction_violation","duplicate_edge","legacy_duplicate_edge","duplicate_dependency_row","legacy_duplicate_dependency_row","stale_lifecycle_block","isolated_active_node","sparse_active_node"];(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]="34b2e83e-f6a1-57e7-84ee-4ad83acb2e19")}catch{}})();var Km=25,zm="milestone",Vm="outcome milestone:",qm=new Set(["discovered_from","incident_from","recurs_from","supersedes","verifies"]);function Un(e){return qm.has(e)}var Ha={error:0,warning:1,info:2};function Ba(e){return new Set((e??[]).filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()))}function ot(e,t,n,r,i,o,s,a){let c=[...i].sort((d,l)=>d.localeCompare(l));return{code:e,severity:t,policy:n,message:r(c.length),count:c.length,sample:c.slice(0,o),sample_truncated:c.length>o,remediation:s,...a===void 0?{}:{evidence:[...a].sort((d,l)=>d.localeCompare(l)).slice(0,o)}}}function Wm(e,t){return e.cycles.map(n=>ot(n.legacy_terminal?"legacy_hierarchy_cycle":"hierarchy_cycle",n.legacy_terminal?"info":"error","Structural hierarchy must be acyclic across scalar and registered dependency relationships.",r=>`${r} items participate in one hierarchy cycle.`,n.item_ids,t,n.legacy_terminal?"Preserve historical rows unless an explicit legacy repair is approved.":"Remove or retype one exact hierarchy relation before continuing mutation."))}function Ga(e,t,n){let r=e.cardinality_violations.filter(i=>i.legacy_terminal===n);return r.length===0?[]:[ot(n?"legacy_hierarchy_cardinality_violation":"hierarchy_cardinality_violation",n?"info":"error","Every structural child must resolve to at most one logical parent across all hierarchy spellings.",i=>`${i} child item${i===1?"":"s"} resolve to multiple hierarchy parents.`,r.map(i=>i.child_id),t,n?"Preserve historical rows unless an explicit legacy repair is approved.":"Remove the exact surplus hierarchy rows so each child has one parent.",r.map(i=>`${i.child_id} <- ${i.parent_ids.join(", ")}`))]}function Ka(e,t,n){let r=e.divergences.filter(i=>i.legacy_terminal===n);return r.length===0?[]:[ot(n?"legacy_hierarchy_direction_violation":"hierarchy_direction_violation",n?"info":"error","Scalar parent metadata and dependency-backed hierarchy rows must resolve to the same logical parent.",i=>`${i} child item${i===1?"":"s"} have divergent hierarchy storage surfaces.`,r.map(i=>i.child_id),t,n?"Preserve historical rows unless an explicit legacy repair is approved.":"Align the scalar parent and exact dependency rows to one canonical parent.",r.map(i=>`${i.child_id}: scalar=${i.scalar_parent_id} dependencies=${i.dependency_parent_ids.join(",")}`))]}function Ym(e,t){let n=Tn(e);return n?[...Wm(n,t),...Ga(n,t,!1),...Ga(n,t,!0),...Ka(n,t,!1),...Ka(n,t,!0)]:[]}function Xm(e){let t=e.graph.registry(),n=new Map;for(let r of e.graph.edges()){let i=t.require(r.kind);if(!i.ordering)continue;let[o,s]=(i.precedence??"source_before_target")==="target_before_source"?[r.target,r.source]:[r.source,r.target],a=n.get(o);a?a.push(s):n.set(o,[s])}for(let r of n.values())r.sort((i,o)=>i.localeCompare(o));return n}function Va(e,t){t.indexes.set(e,t.nextIndex),t.lowLinks.set(e,t.nextIndex),t.nextIndex+=1,t.stack.push(e),t.onStack.add(e)}function Jm(e,t,n,r){let i=n.get(e.node)??[];if(e.neighborIndex>=i.length)return!1;let o=i[e.neighborIndex];return e.neighborIndex+=1,r.indexes.has(o)?r.onStack.has(o)&&r.lowLinks.set(e.node,Math.min(r.lowLinks.get(e.node),r.indexes.get(o))):(Va(o,r),t.push({node:o,neighborIndex:0})),!0}function Qm(e,t,n,r){t.pop();let i=t.at(-1);if(i&&r.lowLinks.set(i.node,Math.min(r.lowLinks.get(i.node),r.lowLinks.get(e.node))),r.lowLinks.get(e.node)!==r.indexes.get(e.node))return;let o=[];for(;;){let s=r.stack.pop();if(r.onStack.delete(s),o.push(s),s===e.node)break}(o.length>1||o.length===1&&n.get(o[0])?.includes(o[0]))&&r.components.push(o.sort((s,a)=>s.localeCompare(a)))}function Zm(e){let t={indexes:new Map,lowLinks:new Map,onStack:new Set,stack:[],components:[],nextIndex:0},n=[...e.keys()].sort((r,i)=>r.localeCompare(i));for(let r of n){if(t.indexes.has(r))continue;let i=[{node:r,neighborIndex:0}];for(Va(r,t);i.length>0;){let o=i.at(-1);Jm(o,i,e,t)||Qm(o,i,e,t)}}return t.components.sort((r,i)=>r[0].localeCompare(i[0]))}function ii(e){return`${e.holder_id} -> ${e.target_id} (${e.kind})`}function ee(e,t,n,r,i,o,s,a){t.length!==0&&e.push(ot(r,i,o,s,t,n,a))}function ep(e,t,n){let r=[],i=[...e.dangling.active,...e.dangling.legacy_terminal].filter(o=>!o.no_active_blocker_sentinel);return ee(r,i.filter(o=>!t(o.holder_status)).map(ii),n,"missing_reference_active","error","Active items must not reference absent targets; missing prerequisites distort scheduling.",o=>`${o} active dangling reference(s) to absent items`,"Restore or re-create the referenced item, or remove/retype the reference on the holder."),ee(r,i.filter(o=>t(o.holder_status)).map(ii),n,"missing_reference_terminal","info","Terminal items may retain historical references, but absent targets remain unexplainable context.",o=>`${o} terminal dangling reference(s) to absent items`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),ee(r,e.dangling.no_active_blocker_sentinels.map(ii),n,"legacy_no_blocker_sentinel","info","The pre-structured-dependency no-active-blocker sentinel is retired; real edges carry blocker state.",o=>`${o} legacy no-active-blocker sentinel reference(s)`,"Delete the sentinel reference; blocker state is derived from blocked_by edges."),r}function si(e,t){let n=t.get(e);return n?!n.terminal:!0}function qa(e){return`${e.holder_id} -> ${e.target_id} (blocked_by scalar + ${e.dependency_kind} dependency)`}function tp(e,t){let n=[],r=[];for(let o of e.orderingContradictions??[])(o.legacy_terminal?r:n).push(qa(o));let i=[];return ee(i,n,t,"ordering_storage_contradiction","error","A scalar blocker and same-target structured ordering row must not assert opposite precedence.",o=>`${o} active scalar-versus-structured ordering contradiction(s)`,"Remove the structured dependency row that points the holder before its scalar blocker, or replace both representations with one unambiguous ordering edge."),ee(i,r,t,"legacy_ordering_storage_contradiction","info","Terminal scalar-versus-structured ordering contradictions are exact historical storage defects with no live scheduling effect.",o=>`${o} terminal scalar-versus-structured ordering contradiction(s)`,"Remove the contradictory blocks dependency row in a dedicated changelog-safe closed-item batch; preserve the scalar blocker as the historical precedence record."),i}function np(e,t,n,r){let i=[],o=Xm(e);for(let c of Zm(o)){let d=c.some(f=>si(f,t)),l=new Set(c.map(f=>f.toLowerCase())),u=(e.orderingContradictions??[]).filter(f=>l.has(f.holder_id.toLowerCase())&&l.has(f.target_id.toLowerCase())).map(qa);i.push(d?ot("ordering_cycle","error","Order-bearing relationship kinds must stay acyclic; a cycle makes every member unschedulable.",f=>`execution-order cycle across ${f} item(s)`,c,r,"Remove or retype one ordering edge inside the cycle, or split the work so precedence is linear.",u.length===0?void 0:u):ot("legacy_ordering_cycle","info","Ordering cycles between exclusively terminal items are historical contradictions with no scheduling effect.",f=>`terminal-only execution-order cycle across ${f} item(s)`,c,r,"Leave as history debt, or clean up in a dedicated changelog-safe closed-item batch; never repair closed items ad hoc.",u.length===0?void 0:u))}let s=new Map;for(let[c,d]of o)for(let l of d){let u=s.get(l);u?u.push(c):s.set(l,[c])}let a=[...t.values()].filter(c=>!c.missing&&!c.terminal&&n(c.status)&&!(s.get(c.id)??[]).some(d=>{let l=t.get(d);return l===void 0||!l.terminal})).map(c=>c.id);return ee(i,a,r,"stale_lifecycle_block","warning","A blocked lifecycle status must be backed by at least one open ordering predecessor.",c=>`${c} status-blocked item(s) with no open blocker edge`,'Add a local blocker edge, declare an external blocker with --dep "id=<external-ref>,kind=blocked_by,source_kind=external", or move the item back to an active status.'),i}function Hn(e){let t=e.edges.map(n=>n.kind).sort((n,r)=>n.localeCompare(r));return`${e.from} -> ${e.to} (${t.join(" + ")})`}function ai(e){let t=e.graph.registry(),n=new Map;for(let i of e.graph.edges()){let o=t.require(i.kind);if(!Nn(o))continue;let s=ri(i,o);if(s.from===s.to)continue;let a=`${$n(o)}::${s.from}::${s.to}`,c=n.get(a);c?c.edges.push(i):n.set(a,{...s,edges:[i]})}let r=[...n.values()].filter(i=>i.edges.length>=2);for(let i of r)i.edges.sort((o,s)=>o.kind.localeCompare(s.kind));return r.sort((i,o)=>i.from.localeCompare(o.from)||i.to.localeCompare(o.to))}function rp(e,t,n){let r=[],i=[];for(let s of ai(e))(si(s.from,t)||si(s.to,t)?r:i).push(Hn(s));let o=[];return ee(o,r,n,"duplicate_edge","info","One semantic relationship should be stored once; parallel same-family spellings (reciprocal inverse pairs included) add no information and skew degree metrics.",s=>`${s} duplicated relationship(s) between active endpoints`,"Remove all but one stored spelling of the relationship; keep the canonical direction the holder declared first."),ee(o,i,n,"legacy_duplicate_edge","info","Duplicated spellings between exclusively terminal items are historical noise with no scheduling effect.",s=>`${s} duplicated relationship(s) between terminal endpoints`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),o}function ip(e,t){let n=[],r=[];for(let o of e.duplicateRows??[])(o.legacy_terminal?r:n).push(`${o.holder_id} -> ${o.target_id} (${o.kind} x${o.occurrences})`);let i=[];return ee(i,n,t,"duplicate_dependency_row","warning","One dependency row must be stored once per holder; identical repeated rows are a storage-layer defect invisible to the assembled graph.",o=>`${o} exactly duplicated stored dependency row(s) on active holder(s)`,"Remove the repeated rows so the dependency is stored exactly once; graph semantics are unchanged."),ee(i,r,t,"legacy_duplicate_dependency_row","info","Identical repeated dependency rows on terminal holders are historical storage noise with no scheduling effect.",o=>`${o} exactly duplicated stored dependency row(s) on terminal holder(s)`,"Leave as history debt or clean up in a dedicated changelog-safe closed-item batch."),i}function op(e,t){let n=new Map,r={source_to_target:[],target_to_source:[],both:[]};for(let s of e.graph.registry().list())s.outcomeTraversal!==void 0&&r[s.outcomeTraversal].push(s.kind);let i={source_to_target:r.source_to_target.join(","),target_to_source:r.target_to_source.join(","),both:r.both.join(",")},o=(s,a)=>{let c=n.get(a)??new Set;c.add(s),n.set(a,c)};for(let s of e.graph.edges()){t?.throwIfAborted();let a=e.graph.registry().require(s.kind);(a.outcomeTraversal==="source_to_target"||a.outcomeTraversal==="both")&&o(s.source,s.target),(a.outcomeTraversal==="target_to_source"||a.outcomeTraversal==="both")&&o(s.target,s.source)}return{basis:i,reverse:n}}function sp(e,t,n){let r=new Set(e),i=[...e].sort();for(let o=0;o<i.length;o+=1){n?.throwIfAborted();for(let s of[...t.get(i[o])??[]].sort())r.has(s)||(r.add(s),i.push(s))}return r}function ap(e,t,n,r){let i=0,o=0,s=0,a=0;for(let p of e.values())if(r?.throwIfAborted(),!t.has(p.id)&&!(p.missing||p.status==="external")){if(p.terminal){s+=1,n.has(p.id)&&(a+=1);continue}n.has(p.id)?i+=1:o+=1}let c=i+o,d=s-a,l=i+a,u=o+d,f=l+u;return{active_outcome_reachable_nodes:i,active_outcome_unreachable_nodes:o,active_outcome_reachability_basis_points:c===0?0:Math.floor(i*1e4/c),terminal_nodes:s,terminal_outcome_reachable_nodes:a,terminal_outcome_unreachable_nodes:d,terminal_outcome_reachability_basis_points:s===0?0:Math.floor(a*1e4/s),outcome_reachable_nodes:l,outcome_unreachable_nodes:u,outcome_reachability_basis_points:f===0?0:Math.floor(l*1e4/f)}}function cp(e,t,n){let r=new Set(e.details.filter(a=>a.type?.toLowerCase()===zm&&a.title.trim().toLowerCase().startsWith(Vm)).map(a=>a.id)),{basis:i,reverse:o}=op(e,n),s=sp(r,o,n);return{outcome_nodes:r.size,outcome_reachability_basis:i,...ap(t,r,s,n)}}function dp(e,t,n,r,i){e.active+=1;let o=t.type??"(untyped)",s=e.byType.get(o);s||(s={active:0,isolated:0,degree_leq_one:0},e.byType.set(o,s)),s.active+=1,!(n>1)&&(e.degreeLeqOne+=1,s.degree_leq_one+=1,n===0&&(e.isolated+=1,s.isolated+=1),!(r.has(t.id.toLowerCase())||i.has(o.toLowerCase()))&&(n===0?e.isolates.push(t.id):e.sparse.push(t.id)))}function lp(e,t,n,r,i,o,s){let a={active:0,missing:0,isolated:0,degreeLeqOne:0,isolates:[],sparse:[],byType:new Map};for(let y of e.graph.nodes()){s?.throwIfAborted();let w=t.get(y);if(w){if(w.missing){a.missing+=1;continue}w.terminal||dp(a,w,e.graph.incidentEdges(y).length,n,r)}}let{isolates:c,sparse:d}=a,l=[];ee(l,c,i,"isolated_active_node","warning","Active work should be reachable from the graph unless explicitly declared a valid isolate.",y=>`${y} active item(s) with no relationships`,"Link the item to its parent, prerequisite, or origin \u2014 or register it as an exempt isolate."),ee(l,d,i,"sparse_active_node","info","Active items with a single edge often miss an honest semantic partner; sparse is not automatically defective.",y=>`${y} active item(s) with exactly one relationship`,"Investigate for an honest second edge (story->task, defect family, cross-epic complement); do not fabricate one.");let u=e.graph.edges().length,f=nt(e.graph,{signal:s}).value,p=new Set(f.map(({edge:y})=>`${y.source.toLowerCase()}\0${y.target.toLowerCase()}\0${y.kind}`));for(let y of e.orderingContradictions??[])p.add(`${y.holder_id.toLowerCase()}\0${y.target_id.toLowerCase()}\0${y.dependency_kind}`);let m=Object.fromEntries(Object.entries(o).sort(([y],[w])=>y.localeCompare(w))),h=Object.entries(m).reduce((y,[w,E])=>y+(Un(w)?E:0),0),v=Pn(e.graph,{signal:s}).value,b=cp(e,t,s);return{findings:l,profile:{nodes:e.graph.nodes().length,recorded_nodes:e.details.filter(y=>y.status!=="missing"&&y.status!=="external").length,edges:u,informative_edges:u-p.size,redundant_edges:f.length,ordering_contradiction_edges:e.orderingContradictions?.length??0,edge_basis:"deduplicated_directed",edges_by_kind:m,edge_share_by_kind:Object.fromEntries(Object.entries(m).map(([y,w])=>[y,w/u])),semantic_edges:h,semantic_edge_share:u===0?0:h/u,active_nodes:a.active,missing_nodes:a.missing,isolated_active_nodes:a.isolated,degree_leq_one_active_nodes:a.degreeLeqOne,coverage_by_type:Object.fromEntries([...a.byType.entries()].sort(([y],[w])=>y<w?-1:1)),articulation_points:v.articulationPoints.length,bridge_edges:v.bridges.length,...b,finding_subjects_by_code:Object.fromEntries(it.map(y=>[y,0]))}}}function Bn(e,t={}){let n=t.isTerminal??(f=>f==="closed"||f==="canceled"),r=t.isBlocked??(f=>f==="blocked"),i=t.maxSampleSize??Km;if(!Number.isInteger(i)||i<1)throw new TypeError(`Invalid audit sample bound: ${String(t.maxSampleSize)}`);let o=Ba(t.exemptIsolates),s=Ba(t.isolateExemptTypes),a=new Map(e.details.map(f=>[f.id,{id:f.id,status:f.status,missing:e.missingIdSet.has(f.id.toLowerCase()),terminal:n(f.status),...f.type===void 0?{}:{type:f.type}}]));t.signal?.throwIfAborted();let c={};for(let f of e.graph.edges())c[f.kind]=(c[f.kind]??0)+1;let d=ep(e,n,i);d.push(...Ym(e,i)),t.signal?.throwIfAborted(),d.push(...tp(e,i)),t.signal?.throwIfAborted(),d.push(...np(e,a,r,i)),t.signal?.throwIfAborted(),d.push(...rp(e,a,i),...ip(e,i)),t.signal?.throwIfAborted();let l=lp(e,a,o,s,i,c,t.signal);d.push(...l.findings),d.sort((f,p)=>Ha[f.severity]-Ha[p.severity]||f.code.localeCompare(p.code)||f.sample[0].localeCompare(p.sample[0]));let u=l.profile.finding_subjects_by_code;for(let f of d)u[f.code]+=f.count;return{findings:d,profile:{...l.profile,...Pa(e,n,Un,t.signal),ordering_acyclic:!d.some(f=>f.code==="ordering_cycle"||f.code==="legacy_ordering_cycle"),active_ordering_acyclic:!d.some(f=>f.code==="ordering_cycle"),finding_subjects_by_code:u}}}function oi(e,t){let n=[...new Set([...Object.keys(e),...Object.keys(t)])].sort(),r={};for(let i of n){let o=(t[i]??0)-(e[i]??0);o!==0&&(r[i]=o)}return r}function za(e){return e.profile.coverage_by_type??{}}function up(e,t){let n={},r=za(e),i=za(t),o=[...new Set([...Object.keys(r),...Object.keys(i)])].sort();for(let s of o){let a=Object.assign({active:0,isolated:0,degree_leq_one:0},r[s]),c=Object.assign({active:0,isolated:0,degree_leq_one:0},i[s]),d={active:c.active-a.active,isolated:c.isolated-a.isolated,degree_leq_one:c.degree_leq_one-a.degree_leq_one};Object.values(d).some(l=>l!==0)&&(n[s]=d)}return n}function Wa(e,t){let n=up(e,t),{edge_share_by_kind:r={},semantic_edges:i=0,semantic_edge_share:o=0}=e.profile,{edge_share_by_kind:s={},semantic_edges:a=0,semantic_edge_share:c=0}=t.profile,d=e.profile.recorded_nodes??e.profile.nodes,l=t.profile.recorded_nodes??t.profile.nodes,u=e.profile.informative_edges??e.profile.edges,f=t.profile.informative_edges??t.profile.edges,p=e.profile.redundant_edges??0,m=t.profile.redundant_edges??0,h=e.profile.ordering_contradiction_edges??0,v=t.profile.ordering_contradiction_edges??0;return{baseline_saved_at:e.saved_at,same_snapshot:e.fingerprint===t.fingerprint,affected_subjects_by_code:oi(e.affected_subjects_by_code,t.affected_subjects_by_code),profile:{nodes:t.profile.nodes-e.profile.nodes,recorded_nodes:l-d,edges:t.profile.edges-e.profile.edges,informative_edges:f-u,redundant_edges:m-p,ordering_contradiction_edges:v-h,active_nodes:t.profile.active_nodes-e.profile.active_nodes,missing_nodes:t.profile.missing_nodes-e.profile.missing_nodes,isolated_active_nodes:t.profile.isolated_active_nodes-e.profile.isolated_active_nodes,degree_leq_one_active_nodes:t.profile.degree_leq_one_active_nodes-e.profile.degree_leq_one_active_nodes,edges_by_kind:oi(e.profile.edges_by_kind,t.profile.edges_by_kind),edge_share_by_kind:oi(r,s),semantic_edges:a-i,semantic_edge_share:c-o,coverage_by_type:n,...Ua(e.profile,t.profile)}}}import Ya 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]="e5089f2d-3fc5-5843-95ab-ba3dd2ab9582")}catch{}})();var Xa=2,ci=500,fp=64,mp="graph-durable-cache";function Ja(e){return Be(e,mp,30,`graph-cache:${process.pid}`,!1,!1,3e3)}function Ct(e){return Ya.join(e,"runtime","graph-cache.json")}function Qa(e){return Ya.join(e,"runtime","graph-audit-baseline.json")}function di(e){if(e!==null)try{let t=JSON.parse(e);return typeof t!="object"||t===null||t.version!==Xa||typeof t.fingerprint!="string"||typeof t.saved_at!="string"||typeof t.results!="object"||t.results===null||Array.isArray(t.results)?void 0:t}catch{return}}async function li(e,t){let n=await ye(Ct(e)),r=di(n),i=r?.fingerprint===t;return{exists:n!==null,fresh:i,results:i?r.results:{}}}async function ui(e,t,n,r,i){let o=await Ja(e);try{let s=di(await ye(Ct(e))),a=s?.fingerprint===t?s.results:{};delete a[r],a[r]=i;let c=Object.keys(a);for(let d of c.slice(0,Math.max(0,c.length-fp)))delete a[d];await W(Ct(e),JSON.stringify({version:Xa,fingerprint:t,saved_at:new Date().toISOString(),results:a})),n.results=a}finally{await o()}}async function fi(e){let t=await Ja(e);try{await go(Ct(e))}finally{await t()}}async function Za(e,t){let n=Ct(e),r=await ye(n),i=di(r);return i===void 0?{exists:r!==null,fresh:!1,entry_count:0}:{exists:!0,fresh:i.fingerprint===t,entry_count:Object.keys(i.results).length,fingerprint:i.fingerprint.slice(0,12),saved_at:i.saved_at,bytes:Buffer.byteLength(r,"utf8")}}function mi(e,t){return t||e>=ci}function Gn(e){return st(e)&&Object.values(e).every(Fe)}function st(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Fe(e){return Number.isInteger(e)&&Number(e)>=0}function ec(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=1}function It(e,t){return e===void 0||t(e)}function pp(e){return st(e)&&Object.values(e).every(ec)}function hp(e){return st(e)?Object.values(e).every(t=>st(t)&&[t.active,t.isolated,t.degree_leq_one].every(Fe)):!1}function gp(e,t,n){let r=["recorded_nodes","informative_edges","redundant_edges","ordering_contradiction_edges"],i=r.filter(s=>e[s]!==void 0).length;if(i!==0&&i!==r.length||!r.every(s=>It(e[s],Fe)))return;let o={recorded_nodes:e.recorded_nodes??t,informative_edges:e.informative_edges??n,redundant_edges:e.redundant_edges??0,ordering_contradiction_edges:e.ordering_contradiction_edges??0};return o.recorded_nodes<=t&&o.informative_edges<=n&&o.redundant_edges<=n&&o.ordering_contradiction_edges<=n?o:void 0}function _p(e,t,n){let r=[...t,...n,"finding_subjects_by_code"],i=r.filter(o=>e[o]!==void 0).length;return i!==0&&i!==r.length?!1:t.every(o=>It(e[o],Fe))&&n.every(o=>It(e[o],Fe)&&(e[o]===void 0||Number(e[o])<=1e4))&&It(e.finding_subjects_by_code,Gn)}function yp(e,t,n,r){let i=gp(e,n,r);if(i===void 0)return;let o=["articulation_points","bridge_edges","outcome_nodes","active_outcome_reachable_nodes","active_outcome_unreachable_nodes","terminal_nodes","terminal_outcome_reachable_nodes","terminal_outcome_unreachable_nodes","outcome_reachable_nodes","outcome_unreachable_nodes"],s=["active_outcome_reachability_basis_points","terminal_outcome_reachability_basis_points","outcome_reachability_basis_points"];if(!_p(e,o,s)||e.edge_basis!==void 0&&e.edge_basis!=="deduplicated_directed")return;let a=Gn(e.finding_subjects_by_code)?e.finding_subjects_by_code:{};return{edge_basis:"deduplicated_directed",...i,...Object.fromEntries(o.map(c=>[c,e[c]??0])),...Object.fromEntries(s.map(c=>[c,e[c]??0])),finding_subjects_by_code:Object.fromEntries(it.map(c=>[c,a[c]??t[c]??0]))}}function vp(e,t,n,r,i){let o=[n,r,i],s=o.filter(d=>d!==void 0).length;if(s===0)return{edge_share_by_kind:{},semantic_edges:0,semantic_edge_share:0};if(s!==o.length||!pp(n)||!Fe(r)||!ec(i))return;let a=Object.entries(t);if(a.reduce((d,[,l])=>d+l,0)!==e||Object.keys(n).length!==a.length||a.some(([d,l])=>n[d]!==(e===0?0:l/e)))return;let c=a.reduce((d,[l,u])=>d+(Un(l)?u:0),0);if(!(r!==c||i!==(e===0?0:c/e)))return{edge_share_by_kind:n,semantic_edges:r,semantic_edge_share:i}}function bp(e){if(e!==null)try{let t=JSON.parse(e);if(!st(t))return;let n=t,r=n.profile;if(typeof n.saved_at!="string"||typeof n.fingerprint!="string")return;let i=n.affected_subjects_by_code;if(!Gn(i)||!st(r)||!ja(r)||![r.nodes,r.edges,r.active_nodes,r.missing_nodes,r.isolated_active_nodes,r.degree_leq_one_active_nodes].every(Fe)||!Gn(r.edges_by_kind)||!It(r.coverage_by_type,hp))return;let o=vp(r.edges,r.edges_by_kind,r.edge_share_by_kind,r.semantic_edges,r.semantic_edge_share);if(o===void 0)return;let s=yp(r,i,r.nodes,r.edges);if(s===void 0)return;let{coverage_by_type:a={}}=r;return{...n,profile:{...r,...o,...s,coverage_by_type:a}}}catch{return}}async function tc(e){return bp(await ye(Qa(e)))}async function nc(e,t){await W(Qa(e),JSON.stringify(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]="253f392d-4e91-57ec-b656-6134583d57e5")}catch{}})();var wp={missing_reference_active:{op:"investigate",confidence:"medium",rationale:"Restore or re-create the referenced item, or remove/retype the reference on the active holder; the correct fix depends on why the target is absent."},missing_reference_terminal:{op:"waive",confidence:"high",rationale:"Terminal-holder reference to an absent item is historical debt; waive it or clean it up only in a dedicated changelog-safe closed-item batch."},legacy_no_blocker_sentinel:{op:"remove",confidence:"high",rationale:"The pre-structured-dependency no-active-blocker sentinel is retired and carries no information; blocker state derives from blocked_by edges."},ordering_cycle:{op:"investigate",confidence:"low",rationale:"Every cycle member is unschedulable until one ordering edge is removed or retyped; the planner never chooses which edge to cut."},legacy_ordering_cycle:{op:"waive",confidence:"high",rationale:"Terminal-only ordering cycles have no scheduling effect; repairing them would mutate closed history (changelog drag)."},ordering_storage_contradiction:{op:"remove",confidence:"high",rationale:"The structured ordering row asserts the opposite precedence from the same-target scalar blocker; remove that exact dependency row or replace both representations with one unambiguous edge."},legacy_ordering_storage_contradiction:{op:"remove",confidence:"high",rationale:"The terminal holder contains a proven contradictory structured ordering row; remove it in a dedicated changelog-safe batch while preserving the scalar blocker as history."},hierarchy_cycle:{op:"investigate",confidence:"low",rationale:"Cut or retype one exact structural relation in the cycle; the planner preserves every evidence row because intent determines the correct parent."},legacy_hierarchy_cycle:{op:"waive",confidence:"high",rationale:"Terminal-only hierarchy cycles are historical debt; waive them unless an explicit closed-history repair is approved."},hierarchy_cardinality_violation:{op:"investigate",confidence:"medium",rationale:"Choose the canonical parent and remove or retype the exact surplus hierarchy rows; the planner cannot infer ownership intent."},legacy_hierarchy_cardinality_violation:{op:"waive",confidence:"high",rationale:"Multiple parents confined to terminal items are historical debt; waive them unless a dedicated history repair is approved."},hierarchy_direction_violation:{op:"investigate",confidence:"medium",rationale:"Align the scalar parent and dependency-backed hierarchy rows to the intended canonical parent."},legacy_hierarchy_direction_violation:{op:"waive",confidence:"high",rationale:"Divergent hierarchy storage confined to terminal items is historical debt; waive it unless a dedicated history repair is approved."},duplicate_edge:{op:"remove",confidence:"high",rationale:"Parallel same-family spellings state one relationship twice; remove all but one stored spelling, keeping the holder's canonical direction."},legacy_duplicate_edge:{op:"waive",confidence:"high",rationale:"Duplicated spellings between terminal items are historical noise; waive or batch changelog-safe cleanup."},duplicate_dependency_row:{op:"remove",confidence:"high",rationale:"The identical dependency row is stored more than once on the holder; drop the repeats so the row exists exactly once \u2014 graph semantics are unchanged."},legacy_duplicate_dependency_row:{op:"waive",confidence:"high",rationale:"Repeated identical rows on terminal holders are storage noise; waive or clean up only in a changelog-safe closed-item batch."},stale_lifecycle_block:{op:"investigate",confidence:"medium",rationale:`Add a local ordering edge, declare an external blocker with --dep "id=<external-ref>,kind=blocked_by,source_kind=external", or move the item back to an active status; only the holder's owner knows which is true.`},isolated_active_node:{op:"investigate",confidence:"medium",rationale:"Link the item to its parent, prerequisite, or origin \u2014 or register it as an explicitly exempt isolate; the audit never fabricates an edge."},sparse_active_node:{op:"investigate",confidence:"low",rationale:"Investigate for an honest second edge (story-to-task, defect family, cross-epic complement); sparse is not automatically defective."}};function rc(e){return`${e.source} -${e.kind}-> ${e.target}`}function kp(e){let[t,...n]=e.edges;return n.map(r=>({op:"remove",code:"duplicate_edge",subject:rc(r),rationale:"This stored spelling restates the kept canonical edge of the same semantic family; removing it leaves the relationship stated exactly once.",evidence:[`keep: ${rc(t)}`,`group: ${Hn(e)}`],confidence:"high"}))}function Ep(e,t){if(e.code==="duplicate_edge")return e.sample.flatMap(r=>kp(t.get(r)));let n=wp[e.code];return e.sample.map(r=>({op:n.op,code:e.code,subject:r,rationale:n.rationale,evidence:[e.policy],confidence:n.confidence}))}function ic(e,t={}){let{redundancyLimit:n,...r}=t,i=Bn(e,r),o=new Map(ai(e).map(d=>[Hn(d),d])),s=i.findings.flatMap(d=>Ep(d,o)),a=i.findings.some(d=>d.sample_truncated);t.signal?.throwIfAborted();let c=nt(e.graph,{limit:n??t.maxSampleSize??25,...t.signal===void 0?{}:{signal:t.signal}});for(let d of c.value)s.push({op:"remove",code:"redundant_edge",subject:`${d.edge.source} -> ${d.edge.target} (${d.edge.kind})`,rationale:"The stored edge is implied by a longer same-family witness path; shortcut edges are sometimes deliberate emphasis, so confirm intent before removing.",evidence:[`witness: ${d.witness.join(" -> ")}`],confidence:"medium"});return a=a||c.meta.truncated,{steps:s,report:i,truncated:a,cost:{visitedNodes:c.meta.visitedNodes,inspectedEdges:c.meta.inspectedEdges}}}(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]="66df3949-0caf-5f01-8cec-3bba3d1e6111")}catch{}})();var cc=new Set(["ancestors","descendants","predecessors","successors","paths","impact","dominators"]);function oc(e,t,n){let r=e;if(t&&e.subcommand==="audit"){let{nodes:i,recorded_nodes:o,edges:s,active_nodes:a,terminal_nodes:c,missing_nodes:d,ordering_acyclic:l,active_ordering_acyclic:u,coverage_by_lifecycle:f}=e.profile,p=Object.fromEntries(Object.entries(f).map(([m,h])=>{let{degree_histogram:v,...b}=h;return[m,b]}));r={...e,profile:{nodes:i,recorded_nodes:o,edges:s,active_nodes:a,terminal_nodes:c,missing_nodes:d,ordering_acyclic:l,active_ordering_acyclic:u,coverage_by_lifecycle:p}}}return{...r,projection:{mode:t?"summary":"full",declared_field_groups:n===void 0?[]:[{name:n,restore_with:"--full"}],included_field_groups:n===void 0||t?[]:[n]}}}function Ip(e,t,n,r){return{assembly:t,...n===void 0?{}:{kinds:n},maxDepth:An(r.maxDepth),limit:e==="impact"&&Number(r.limit)===0?0:he(r.limit,"limit")??(r.full===!0?Number.MAX_SAFE_INTEGER:ke.rows),after:r.after?.trim()||void 0,direction:ei(r.direction),maxPaths:he(r.maxPaths,"max-paths"),sample:he(r.sample,"sample")??ke.samples,exemptIsolates:sc(r.exemptIsolate),exemptIsolateTypes:sc(r.exemptIsolateType),saveBaseline:r.saveBaseline===!0,summary:r.summary===!0,unbounded:r.full===!0}}function sc(e){return e===void 0?[]:(Array.isArray(e)?e:[e]).flatMap(t=>t.split(",")).map(t=>t.trim()).filter(t=>t.length>0)}function Cp(e,t,n){let r=e.trim().toLowerCase();if(!wr.includes(r))throw gs({command_path:"graph",token:r||"<empty>",allowed:wr});let i=r;if(cc.has(i)&&!t?.trim())throw new g(`graph ${i} requires an item id.`,_.USAGE);if(i==="paths"&&!n?.trim())throw new g("graph paths requires a source and a target item id.",_.USAGE);return i}function pi(e){throw e instanceof TypeError?new g(e.message,_.USAGE):e}function hi(e){return{truncated:e.truncated,cost:{visited_nodes:e.visitedNodes,inspected_edges:e.inspectedEdges}}}function ac(e,t){let n=t.trim().toLowerCase();for(let r of e.details)if(r.id.trim().toLowerCase()===n&&!e.missingIdSet.has(r.id.toLowerCase()))return r.id;throw new g(`Item ${t} not found`,_.NOT_FOUND)}function Sp(e,t,n){let r={ancestors:ka,descendants:Ea,predecessors:Ia,successors:Ca}[e],i;try{i=r(n.assembly.graph,t,{...n.kinds===void 0?{}:{kinds:n.kinds},...n.maxDepth===void 0?{}:{maxDepth:n.maxDepth},limit:n.limit,...n.after===void 0?{}:{after:n.after}})}catch(s){pi(s)}let o=hi(i.meta);return{subcommand:e,root:t,count:i.value.length,...o,...i.meta.nextCursor===void 0?{}:{next_cursor:i.meta.nextCursor},...n.summary?{}:{ids:i.value}}}function Tp(e,t,n){let r=Sa(n.assembly.graph,e,t,{direction:n.direction,...n.kinds===void 0?{}:{kinds:n.kinds},...n.maxDepth===void 0?{}:{maxDepth:n.maxDepth},...n.maxPaths===void 0?{}:{maxPaths:n.maxPaths}});return{subcommand:"paths",root:e,target:t,direction:n.direction,count:r.value.length,...hi(r.meta),...n.summary?{}:{paths:r.value.map(i=>({nodes:i.nodes,kinds:i.edges.map(o=>o.kind),length:i.length}))}}}function Rp(e,t){let n;try{n=vn(t.assembly.graph,e,{direction:t.direction,...t.kinds===void 0?{}:{kinds:t.kinds},...t.maxDepth===void 0?{}:{maxDepth:t.maxDepth},...t.unbounded?{}:{limit:t.limit},...t.after===void 0?{}:{after:t.after}})}catch(r){pi(r)}return{subcommand:"impact",root:e,direction:t.direction,count:n.affected.length,truncated:n.truncated,...n.nextCursor===void 0?{}:{next_cursor:n.nextCursor},cost:{visited_nodes:n.cost.visitedNodes,inspected_edges:n.cost.inspectedEdges},...t.summary?{}:{affected:n.affected}}}function xp(e,t,n){return{acyclic:e.acyclic,ordered_node_count:e.order.length,layer_count:e.layers.length,frontier_count:e.frontier.length,critical_path_length:e.criticalPathLength,cycle_count:e.cycles.length,...t?{}:{frontier:e.frontier.slice(0,n),critical_path:e.criticalPath.slice(0,n),cycles:e.cycles.slice(0,n)}}}function Dp(e,t,n){return{component_count:e.components.length,largest_component_size:e.components[0]?.length??0,orphan_count:e.orphans.length,...t?{}:{orphans:e.orphans.slice(0,n),hubs:e.hubs.slice(0,n)}}}function Ap(e,t,n){let r=0,i=0,o=0;for(let s of e.cycles)r+=Number(s.legacy_terminal);for(let s of e.cardinality_violations)i+=Number(s.legacy_terminal);for(let s of e.divergences)o+=Number(s.legacy_terminal);return{acyclic:e.cycles.length===0,relation_count:e.relations.length,cycle_count:e.cycles.length,active_cycle_count:e.cycles.length-r,legacy_cycle_count:r,cardinality_violation_count:e.cardinality_violations.length,active_cardinality_violation_count:e.cardinality_violations.length-i,legacy_cardinality_violation_count:i,parent_divergence_count:e.divergences.length,active_parent_divergence_count:e.divergences.length-o,legacy_parent_divergence_count:o,...t?{}:{cycles:e.cycles.slice(0,n).map(s=>s.item_ids)}}}function Op(e){let t=e.assembly.graph,n=e.limit,r=bn(t,{registry:t.registry()}),i=Es(t);return{subcommand:"analyze",node_count:t.nodes().length,edge_count:t.edges().length,edge_basis:"deduplicated_directed",sample_limit:n,execution:xp(r,e.summary,n),knowledge:Dp(i,e.summary,n),hierarchy:Ap(Tn(e.assembly),e.summary,n)}}function Lp(e,t){let n=Bn(e.assembly,{isTerminal:t,maxSampleSize:e.sample,...e.exemptIsolates.length===0?{}:{exemptIsolates:e.exemptIsolates},...e.exemptIsolateTypes.length===0?{}:{isolateExemptTypes:e.exemptIsolateTypes}}),r={},i={},o={},s={};for(let d of n.findings)r[d.severity]=(r[d.severity]??0)+1,i[d.code]=(i[d.code]??0)+1,o[d.severity]=(o[d.severity]??0)+d.count,s[d.code]=(s[d.code]??0)+d.count;let{finding_subjects_by_code:a,...c}=n.profile;return{subcommand:"audit",truncated:n.findings.length>e.limit,finding_count:n.findings.length,findings_by_severity:r,findings_by_code:i,affected_subjects_by_severity:o,affected_subjects_by_code:s,profile:e.summary?c:n.profile,legacy_alias_counts:e.assembly.legacyAliasCounts,...e.summary?{}:{findings:n.findings.slice(0,e.limit)}}}function Fp(e){let t=e.limit,n={};e.kinds!==void 0&&(n.kinds=e.kinds);let r=Ra(e.assembly.graph,n),i=r.value;return{subcommand:"communities",community_count:i.communities.length,largest_community_size:i.communities[0]?.size??0,iterations:i.iterations,converged:i.converged,truncated:!i.converged||i.communities.length>t,cost:{visited_nodes:r.meta.visitedNodes,inspected_edges:r.meta.inspectedEdges},...e.summary?{}:{communities:i.communities.slice(0,t).map(o=>({representative:o.representative,size:o.size,members:o.members.slice(0,t)}))}}}function Mp(e){let t;try{t=nt(e.assembly.graph,{...e.kinds===void 0?{}:{kinds:e.kinds},...e.maxDepth===void 0?{}:{maxDepth:e.maxDepth},limit:e.limit})}catch(n){pi(n)}return{subcommand:"redundancy",redundant_count:t.value.length,...hi(t.meta),...e.summary?{}:{redundant:t.value.map(n=>({source:n.edge.source,target:n.edge.target,kind:n.edge.kind,witness:n.witness}))}}}function Np(e,t){let n=t.limit,r=xa(t.assembly.graph,e,{direction:t.direction,...t.kinds===void 0?{}:{kinds:t.kinds},...t.maxDepth===void 0?{}:{maxDepth:t.maxDepth}}),i=r.value.rows.filter(o=>o.dominatedCount>0);return{subcommand:"dominators",root:e,direction:t.direction,reachable_count:r.value.reachableCount,bottleneck_count:i.length,truncated:r.meta.truncated||i.length>n,cost:{visited_nodes:r.meta.visitedNodes,inspected_edges:r.meta.inspectedEdges},...t.summary?{}:{bottlenecks:i.slice(0,n).map(o=>({id:o.id,idom:o.idom,dominated_count:o.dominatedCount}))}}}function $p(e){let t=e.limit,n=Fa(e.assembly.graph),r=n.rows.filter(i=>i.critical).length;return{subcommand:"slack",acyclic:n.acyclic,makespan:n.makespan,scheduled_count:n.scheduledCount,critical_count:r,critical_path_length:n.criticalPathLength,cycle_count:n.cycles.length,truncated:n.rows.length>t,...e.summary?{}:{critical_path:n.criticalPath.slice(0,t),rows:n.rows.slice(0,t).map(i=>({id:i.id,earliest_start:i.earliestStart,latest_start:i.latestStart,slack:i.slack,critical:i.critical}))}}}function Pp(e){let t=e.limit,n=La(e.assembly.graph,e.kinds===void 0?{}:{kinds:e.kinds}),r=n.value;return{subcommand:"centrality",node_count:r.nodeCount,edge_count:r.edgeCount,edge_basis:"simple_undirected",truncated:r.rows.length>t,cost:{visited_nodes:n.meta.visitedNodes,inspected_edges:n.meta.inspectedEdges},...e.summary?{}:{rows:r.rows.slice(0,t).map(i=>({id:i.id,degree:i.degree,in_degree:i.inDegree,out_degree:i.outDegree,betweenness:i.betweenness,closeness:i.closeness}))}}}function jp(e){let t=e.limit,n=Pn(e.assembly.graph,e.kinds===void 0?{}:{kinds:e.kinds}),{articulationPoints:r,bridges:i}=n.value;return{subcommand:"articulation",articulation_count:r.length,bridge_count:i.length,truncated:r.length>t||i.length>t,cost:{visited_nodes:n.meta.visitedNodes,inspected_edges:n.meta.inspectedEdges},...e.summary?{}:{articulation_points:r.slice(0,t),bridges:i.slice(0,t)}}}function Up(e,t){let n=e.limit,r=ic(e.assembly,{isTerminal:t,redundancyLimit:n,maxSampleSize:e.sample,...e.exemptIsolates.length===0?{}:{exemptIsolates:e.exemptIsolates},...e.exemptIsolateTypes.length===0?{}:{isolateExemptTypes:e.exemptIsolateTypes}}),i={},o={};for(let s of r.steps)i[s.op]=(i[s.op]??0)+1,o[s.code]=(o[s.code]??0)+1;return{subcommand:"plan",step_count:r.steps.length,steps_by_op:i,steps_by_code:o,finding_count:r.report.findings.length,truncated:r.truncated||r.steps.length>n,cost:{visited_nodes:r.cost.visitedNodes,inspected_edges:r.cost.inspectedEdges},...e.summary?{}:{steps:r.steps.slice(0,n)}}}function dc(e,t,n,r){return JSON.stringify({projection_version:2,subcommand:e,root:t??null,target:n??null,kinds:r.kinds??null,maxDepth:r.maxDepth??null,limit:r.limit,after:r.after??null,direction:r.direction,maxPaths:r.maxPaths??null,sample:r.sample,exemptIsolates:[...new Set(r.exemptIsolates.map(i=>i.toLowerCase()))].sort(),exemptIsolateTypes:[...new Set(r.exemptIsolateTypes.map(i=>i.toLowerCase()))].sort(),summary:r.summary,unbounded:r.unbounded})}function lc(e,t,n,r,i){return e==="analyze"?Op(r):e==="audit"?Lp(r,i):e==="plan"?Up(r,i):e==="communities"?Fp(r):e==="redundancy"?Mp(r):e==="dominators"?Np(t,r):e==="slack"?$p(r):e==="centrality"?Pp(r):e==="articulation"?jp(r):e==="paths"?Tp(t,n,r):e==="impact"?Rp(t,r):Sp(e,t,r)}function Hp(e,t){if(e!=="index"&&(t.rebuild===!0||t.clear===!0))throw new g("--rebuild and --clear apply only to graph index.",_.USAGE);if(e!=="audit"&&t.saveBaseline===!0)throw new g("--save-baseline applies only to graph audit.",_.USAGE);if(e==="slack"&&t.kind!==void 0)throw new g("graph slack analyzes every ordering kind; --kind is not supported.",_.USAGE);if(t.rebuild===!0&&t.clear===!0)throw new g("graph index accepts either --rebuild or --clear, not both.",_.USAGE);if(t.full===!0&&t.limit!==void 0)throw new g(`graph ${e} accepts either --full or --limit, not both.`,_.USAGE)}async function Bp(e,t,n,r,i,o){let s="status";if(o.clear===!0&&(await fi(e),s="cleared"),o.rebuild===!0){await fi(e);let c=await li(e,t),d={assembly:n.assembly,direction:"both",exemptIsolates:[],exemptIsolateTypes:[],saveBaseline:!1,summary:!0,limit:ke.rows,sample:ke.samples,unbounded:!1};for(let l of["analyze","audit"])await ui(e,t,c,dc(l,void 0,void 0,d),lc(l,void 0,void 0,d,i));s="rebuilt"}let a=await Za(e,t);return{subcommand:"index",action:s,state:a.exists?a.fresh?"fresh":"stale":"absent",entry_count:a.entry_count,item_count:r,min_items_threshold:ci,persist_enabled:mi(r,a.exists),current_fingerprint:t.slice(0,12),...a.saved_at===void 0?{}:{saved_at:a.saved_at},...a.bytes===void 0?{}:{bytes:a.bytes}}}async function Gp(e,t,n,r){let i={saved_at:new Date().toISOString(),fingerprint:t,affected_subjects_by_code:n.affected_subjects_by_code,profile:{...n.profile,finding_subjects_by_code:Object.fromEntries(it.map(s=>[s,n.affected_subjects_by_code[s]??0]))}},o=await tc(e);return r&&await nc(e,i),o===void 0?n:{...n,baseline:Wa(o,i)}}async function Kp(e,t,n,r,i){try{await ui(e,t,n,r,i)}catch{}}function zp(e,t,n,r){if(e.subcommand!=="slack")return;let i=new Set(t.assembly.details.filter(f=>r(f.status)).map(f=>f.id)),o=t.assembly.graph,s=new Bt(o.nodes().filter(f=>!i.has(f)),o.edges().filter(f=>!i.has(f.source)&&!i.has(f.target)),o.registry()),a=Ma(s,n.filter(f=>!i.has(f.id)),{now:x(),limit:t.limit}),{rows:c,residuals:d,overcommitted:l,...u}=a;e.deadline_schedule={population:"active",...u,...t.summary?{}:{rows:c,residuals:d,overcommitted:l}}}async function vE(e,t,n,r,i){let o=Cp(e,t,n);Wt(r.summary===!0,r.full===!0,"--summary");let s=O(process.cwd(),i.path);await U(s);let a=await F(s),c=L(a,D()),d=await fe(s,a.item_format,c.type_to_folder,void 0,a.schema),l=J(a.schema),u=M=>$(M,l);Hp(o,r);let f=z(),p=ti(r.kind,f),m=xn().lookup(s,Rn(d,u,f),()=>Qe(d,u,f)),h=Ip(o,m.assembly,p,r);if(o==="index")return oc(await Bp(s,m.fingerprint,h,d.length,u,r),!1);let v=cc.has(o)?ac(h.assembly,t):void 0,b=o==="paths"?ac(h.assembly,n):void 0,y=dc(o,v,b,h),w=await li(s,m.fingerprint),E=w.results[y],S=m.memoize(y,()=>E!==void 0?structuredClone(E):lc(o,v,b,h,u)),P=mi(d.length,w.exists);!S.reused&&E===void 0&&P&&await Kp(s,m.fingerprint,w,y,S.value);let j=S.value.subcommand==="audit"?await Gp(s,m.fingerprint,S.value,h.saveBaseline):S.value;return j.cache={fingerprint:m.fingerprint.slice(0,12),assembly:m.assemblyReused?"hit":"miss",result:S.reused?"hit":"miss",durable:E!==void 0?"hit":P?"miss":"off"},zp(j,h,d,u),oc(j,h.summary,"result_rows")}import gi from"node:fs/promises";import _i from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="069e2e60-11d9-5a37-a966-9073944d32a2")}catch{}})();var uc=8388608,Vp=new Set(["resolved","failed"]),qp=[{kind:"boolean",matches:e=>typeof e=="boolean"||typeof e=="string"&&/^(?:true|false)$/iu.test(e.trim())},{kind:"single_digit",matches:e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=9||typeof e=="string"&&/^\d$/u.test(e.trim())}];function ge(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function yi(e){return qp.find(t=>t.matches(e))?.kind}function fc(e){let t=new Map,n=0,r=0;return{entries:e.map(i=>{let o=ge(i.agent_provenance)?i.agent_provenance:void 0;if(o===void 0||!Wo(i).ok)return i;let s={},a=!1;for(let[d,l]of Object.entries(o)){let u=ge(l)?yi(l.value):void 0;if(u===void 0){s[d]=l;continue}a=!0,r+=1;let f=i.agent_harness??"unknown",p=`${f}\0${d}\0${u}`,m=t.get(p)??{harness:f,dimension:d,kind:u,count:0};m.count+=1,t.set(p,m)}if(!a)return i;n+=1;let c={...i};return Object.keys(s).length===0?delete c.agent_provenance:c.agent_provenance=s,Yo(i,c,{retainPriorRecord:!0,retainPriorRecordHash:!1})}),receipt:{changed:n>0,events_changed:n,observations_removed:r,invalid_values:[...t.values()].sort((i,o)=>i.harness.localeCompare(o.harness)||i.dimension.localeCompare(o.dimension)||i.kind.localeCompare(o.kind))}}}async function mc(e){let t=[];for(let n of await pc(e)??[])try{let r=await gi.readFile(_i.join(e,"history",n),"utf8");for(let i of r.split(`
2
2
  `)){if(i.trim().length===0)continue;let o=hc(i);if(!(o===null||!ge(o.agent_provenance))&&Object.values(o.agent_provenance).some(s=>ge(s)&&yi(s.value)!==void 0)){t.push(n.slice(0,-6));break}}}catch{}return t}async function pc(e){try{return(await gi.readdir(_i.join(e,"history"))).filter(t=>t.endsWith(".jsonl")).sort()}catch{return null}}async function Wp(e,t,n){let r;try{r=await gi.open(_i.join(e,"history",t),"r");let i=(await r.stat()).size,o=Math.min(i,Math.max(0,n)),s=Buffer.alloc(o),{bytesRead:a}=await r.read(s,0,o,0),c=s.subarray(0,a).toString("utf8"),d=a>=i,l=c.lastIndexOf(`
3
3
  `),u=c;return d||(u=l===-1?"":c.slice(0,l+1)),{content:u,bytesRead:a,complete:d}}catch{return null}finally{await r?.close()}}function hc(e){try{let t=JSON.parse(e);return ge(t)?t:null}catch{return null}}function Yp(e,t,n){let r=typeof e.agent_harness=="string"?e.agent_harness:void 0;if(r===void 0)return;let i=ge(e.agent_provenance)?e.agent_provenance:{};if(Object.entries(i).forEach(([s,a])=>{if(!ge(a))return;let c=yi(a.value);if(!c)return;let d=`${r}\0${s}\0${c}`,l=n.get(d)??{harness:r,dimension:s,kind:c,count:0};l.count+=1,n.set(d,l)}),!ge(e.context))return;let o=e.context.agent_provenance_outcomes;ge(o)&&Object.entries(o).forEach(([s,a])=>{if(!ge(a)||typeof a.resolver!="string"||!Vp.has(String(a.status)))return;let c=`${r}\0${s}\0${a.resolver}`,d=t.get(c)??{harness:r,dimension:s,resolver:a.resolver,attempts:0,successes:0};d.attempts+=1,a.status==="resolved"&&(d.successes+=1),t.set(c,d)})}function Xp(e,t,n,r,i,o){let s=i;for(let a of e.split(`
4
4
  `)){if(a.trim().length===0)continue;if(s>=r)return{eventsRead:s,truncated:!0};s+=1;let c=hc(a);if(c===null){o.malformed_events+=1;continue}if(typeof c.ts=="string"&&Jt(c.ts)){let d=new Date(c.ts).toISOString();(o.earliest_event_at===null||d<o.earliest_event_at)&&(o.earliest_event_at=d),(o.latest_event_at===null||d>o.latest_event_at)&&(o.latest_event_at=d)}Yp(c,t,n)}return{eventsRead:s,truncated:!1}}function Jp(e,t,n){return n?[...e.filter(r=>r.attempts>0&&r.successes===0).map(r=>`provenance_resolver_zero_success:${r.harness}:${r.dimension}:${r.resolver}:${String(r.attempts)}`),...t.map(r=>`provenance_value_domain_invalid:${r.harness}:${r.dimension}:${r.kind}:${String(r.count)}`)]:[]}async function CE(e,t=1e4){if(!Number.isSafeInteger(t)||t<0)throw new RangeError("Provenance event limit must be a non-negative safe integer.");let n={scope:"history_prefix",event_limit:t,byte_limit:uc,bytes_read:0,events_read:0,truncated:!1,unreadable_sources:0,malformed_events:0,earliest_event_at:null,latest_event_at:null,complete:!1},r=new Map,i=new Map,o=0,s=0,a=!1,c=await pc(e);c===null&&(n.unreadable_sources+=1);for(let u of c??[]){let f=await Wp(e,u,Math.max(0,uc-s));if(f===null){n.unreadable_sources+=1;continue}s+=f.bytesRead;let p=Xp(f.content,r,i,t,o,n);if(o=p.eventsRead,p.truncated){a=!0;break}if(!f.complete){a=!0;break}}let d=[...r.values()].sort((u,f)=>u.harness.localeCompare(f.harness)||u.dimension.localeCompare(f.dimension)||u.resolver.localeCompare(f.resolver)),l=[...i.values()].sort((u,f)=>u.harness.localeCompare(f.harness)||u.dimension.localeCompare(f.dimension)||u.kind.localeCompare(f.kind));return n.bytes_read=s,n.events_read=o,n.truncated=a,n.complete=!a&&n.unreadable_sources===0&&n.malformed_events===0,{outcomes:d,sample:n,invalid_values:l,warnings:Jp(d,l,n.complete),events_read:o,truncated:a}}import Qp from"fast-json-patch";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f6def6d2-fbf3-55ce-8654-0c4e76d78a2a")}catch{}})();var Zp=Object.freeze({pm_item_scalar_missing:!0});function at(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length===1&&e.pm_item_scalar_missing===!0}function T(e){return e===void 0?Zp:e}function xe(e){return re(k(e===void 0?{pm_item_scalar_presence:"missing"}:{pm_item_scalar_presence:"present",value:e}))}function vi(e,t){let n=Ge(e);if(n)throw new g(`History merge input (${t}) contains unresolved conflict markers at line ${n.line}. Merge drivers must receive clean per-side versions.`,_.GENERIC_FAILURE);let r=[];for(let[i,o]of e.split(/\r?\n/).entries()){let s=o.trim();if(s)try{let a=JSON.parse(s);if(typeof a!="object"||a===null||Array.isArray(a))throw new TypeError("history entry must be an object");r.push(a)}catch{throw new g(`History merge input (${t}) contains invalid JSON at line ${i+1}.`,_.GENERIC_FAILURE)}}return r}function oe(e){return k({ts:e.ts,author:e.author,op:e.op,patch:e.patch,message:e.message??null})}function eh(e,t){let n=Math.min(e.length,t.length),r=0;for(;r<n&&oe(e[r])===oe(t[r]);)r+=1;return r}function th(e,t,n,r){let i=[...e,...n],o=new Map(i.map((u,f)=>[u,f])),s=new Map(i.map((u,f)=>[oe(u),f])),a=i.map(()=>new Set);for(let u of[e,t]){let f=u.map(p=>o.get(p)??s.get(oe(p)));for(let p=1;p<f.length;p+=1)f[p-1]!==f[p]&&a[f[p-1]].add(f[p])}let c=i.map(()=>0);for(let u of a)for(let f of u)c[f]+=1;let d=i.map((u,f)=>f).filter(u=>c[u]===0),l=[];for(;d.length>0;){d.sort((f,p)=>{let m=i[f],h=i[p],v=C(m.ts,h.ts),b=oe(m),y=oe(h);return v||Number(r.has(y))-Number(r.has(b))});let u=d.shift();l.push(i[u]);for(let f of a[u])c[f]-=1,c[f]===0&&d.push(f)}if(l.length!==i.length)throw new g("History union cannot preserve contradictory original branch event orders; leave the file unresolved for manual recovery.",_.GENERIC_FAILURE);return l}function gc(e){return{entries:e,positions:new Map(e.map((t,n)=>[oe(t),n])),index:-1,document:Zo()}}function Ci(e,t){let n=t??e.index;for(;e.index<n;){let r=xr(e.document,e.entries[e.index+1].patch);if(!r.ok)throw new g("History union cannot preserve a patch that does not apply in its original branch.",_.GENERIC_FAILURE);e.document=r.document,e.index+=1}return e.document}function _c(e,t){if(t!==void 0&&t>e.index+1)throw new g("History union cannot attribute multiple original branch events to one semantic identity; preserve the source histories for manual recovery.",_.GENERIC_FAILURE);return Ci(e,t)}function nh(e,t,n){if(n===0)return;let r=gc(e),i=gc(t),o=Ci(r,n-1);Ci(i,n-1);let s=0,a=new Set([...vc,...bc]);return(c,d)=>{if(s++<n)return c.patch;let l=oe(c),u=_c(r,r.positions.get(l)),f=_c(i,i.positions.get(l)),p=cn(c.patch).filter(y=>{let[w,E]=y.path.slice(1).split("/");return w!=="metadata"||!a.has(E)}),m=xr(d,p);if(!m.ok)throw new g("History union cannot rebase a scalar patch onto the merged replay position; leave the file unresolved for manual recovery.",_.GENERIC_FAILURE);let h=Ec(o.metadata,u.metadata,f.metadata,"ours","latest_document_update",String(u.metadata.updated_at),String(f.metadata.updated_at)),v=m.document;for(let y of a)Object.hasOwn(h.merged,y)?v.metadata[y]=h.merged[y]:delete v.metadata[y];let b=an({metadata:v.metadata,body:v.body});return Qp.compare(d,b)}}function $E(e,t,n){let r=vi(e,"base"),i=vi(t,"ours"),o=vi(n,"theirs"),s=[r,i,o].map(p=>p.filter(m=>m.op==="create"));if(s[0].length===0&&s.slice(1).every(p=>p.length>0)||s.some(p=>p.length>1)||new Set(s.flat().map(oe)).size>1)throw new g("Duplicate item identity: history contains independent or unproven create events. Preserve both branches and assign distinct item ids before merging.",_.CONFLICT,{code:"item_identity_conflict"});let a=eh(i,o);if(a===i.length&&a===o.length)return{merged:De(i),strategy:"identical",common_entries:a,entries_from_ours:0,entries_from_theirs:0,entries_total:i.length,reanchored:!1};if(a===o.length)return{merged:De(i),strategy:"fast_forward_ours",common_entries:a,entries_from_ours:i.length-a,entries_from_theirs:0,entries_total:i.length,reanchored:!1};if(a===i.length)return{merged:De(o),strategy:"fast_forward_theirs",common_entries:a,entries_from_ours:0,entries_from_theirs:o.length-a,entries_total:o.length,reanchored:!1};let c=i.slice(a),d=new Set(c.map(oe)),l=o.slice(a).filter(p=>!d.has(oe(p))),u=th(c,o.slice(a),l,d),f=dn([...i.slice(0,a),...u],void 0,{continuousHashSurface:!0,projectPatch:nh(i,o,a)});if(f.skippedOps>0)throw new g(`History union cannot preserve ${f.skippedOps} patch operation(s) after deterministic suffix ordering; leave the file unresolved for manual recovery.`,_.GENERIC_FAILURE);return{merged:De(f.entries),strategy:"union_reanchor",common_entries:a,entries_from_ours:c.length,entries_from_theirs:l.length,entries_total:f.entries.length,reanchored:!0}}function bi(e,t){let n=Ge(e);if(n)throw new g(`Relationship merge input (${t}) contains unresolved conflict markers at line ${n.line}. Merge drivers must receive clean per-side versions.`,_.GENERIC_FAILURE);let r=[];for(let[i,o]of e.split(/\r?\n/).entries()){let s=o.trim();if(!s)continue;let a;try{a=JSON.parse(s)}catch{throw new g(`Relationship merge input (${t}) contains invalid JSON at line ${i+1}.`,_.GENERIC_FAILURE)}if(typeof a!="object"||a===null||Array.isArray(a)||typeof a.eventId!="string"||typeof a.sequence!="number")throw new g(`Relationship merge input (${t}) line ${i+1} is not a relationship event (eventId + sequence required).`,_.GENERIC_FAILURE);r.push(a)}return r}function Kn(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
@@ -17,4 +17,4 @@ import{$ as W,$d as Io,$e as Xt,$g as Uo,$h as qe,Ad as qt,Ah as Ko,Bd as wo,Bh
17
17
  `)}catch{o.push("workspace_memory_write_failed")}return{snapshot:c,cache_status:"rebuilt",warnings:o}}function Hy(e,t,n=Md){let r=Math.max(0,Math.floor(t)),i=0,o=[];for(let s of e.rollups){if(o.length>=Math.max(0,Math.floor(n)))break;let a=Math.ceil(JSON.stringify(s).length/4);i+a>r||(o.push(s),i+=a)}return o}function $d(e,t,n=Md){if(e.snapshot===null)return;let r=Hy(e.snapshot,t,n);if(r.length!==0)return{cache_status:e.cache_status==="fresh"?"fresh":"rebuilt",source_cursor:e.snapshot.source_cursor,...e.snapshot.completion_time_sources?{completion_time_sources:{...e.snapshot.completion_time_sources}}:{},rollups:r}}function By(e,t,n=5){if(e===null)return[];let r=t.trim().toLowerCase().split(/\s+/u).filter(Boolean);return r.length===0?[]:e.rollups.map(i=>({rollup:i,score:r.filter(o=>[i.key,i.label,...i.outcomes,...i.representative_items.flatMap(s=>[s.id,s.title])].join(" ").toLowerCase().includes(o)).length})).filter(({score:i})=>i>0).sort((i,o)=>o.score-i.score||o.rollup.last_closed_at.localeCompare(i.rollup.last_closed_at)||i.rollup.key.localeCompare(o.rollup.key)).slice(0,Math.max(0,Math.floor(n))).map(({rollup:i})=>i)}function nT(e,t,n=5){let r=By(e.snapshot,t,n);if(r.length!==0)return{cache_status:e.cache_status==="fresh"?"fresh":"rebuilt",matches:r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="599ebac9-d3e8-561d-a971-8164179f1adf")}catch{}})();var Gy=["markdown","toon","json","ndjson"],mr=new Set(["Epic","Feature"]),Bd=10,Gd=1e4,Kd=["hierarchy","activity","progress","recently_created","unparented","workload"],Ky=[...Kd,"blockers","files","staleness","tests"],zy=/^(\d{4})-(\d{2})-(\d{2})/,Vy=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/,qy=/^(\d{4})(\d{2})(\d{2})$/,Wy=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?(Z|[+-]\d{2}:?\d{2})?$/i;function Yy(e){if(!e)return;let t=e.trim().toLowerCase();if(!Gy.includes(t))throw new g("Context format must be one of markdown|toon|json|ndjson",_.USAGE);return t}var Pd=new Set(["id","title","type","status","priority","order","deadline","assignee","tags","tags_inherited","updated_at","parent","children_total","children_closed","completion_pct","blocked","blocker_ids","created_at"]);function Xy(e){if(e===void 0)return;let t=[];for(let n of e.split(",")){let r=n.trim().toLowerCase();if(r.length!==0){if(!Pd.has(r))throw new g(`Context --fields value not projectable: ${r} (valid: ${[...Pd].join(", ")})`,_.USAGE);t.includes(r)||t.push(r)}}if(t.length===0)throw new g("Context --fields requires at least one field name",_.USAGE);return t}function Mt(e,t){return e.map(n=>{let r={},i=n;for(let o of t)r[o]=i[o]??null;return r})}function IT(e,t){let n=Yy(e.format);if(t.json&&n&&n!=="json"&&n!=="ndjson")throw new g("Cannot combine --json with --format markdown|toon",_.USAGE);return t.json?n==="ndjson"?"ndjson":"json":n??"toon"}function Jy(e,t){return ie(e,"--limit")??(t==="full"?Number.MAX_SAFE_INTEGER:Bd)}function ro(e,t){if(e===void 0)return t;let n=typeof e=="number"?e:Number(e);if(!Number.isInteger(n)||n<1)throw new g("--token-budget must be a positive integer",_.USAGE);return n}function Qy(e,t){return t>=Gd&&e===Number.MAX_SAFE_INTEGER?Bd:e}function Zy(e,t){if(!e)return t.default_depth;let n=e.trim().toLowerCase();if(!br.includes(n))throw new g(`Context --depth must be one of ${br.join("|")}`,_.USAGE);return n}function ev(e,t,n){if(e&&e.length>0){let r=[];for(let i of e){let o=i.trim().toLowerCase();if(!Kt.includes(o))throw new g(`Context --section must be one of ${Kt.join("|")}`,_.USAGE);r.includes(o)||r.push(o)}return r}return t==="brief"?[]:t==="full"?[...Kt]:(t==="deep"?Ky:Kd).filter(r=>n.sections[r])}function tv(e,t){return e?ie(e,"--activity-limit")??t.activity_limit:t.activity_limit}function nv(e,t){if(!e)return t.stale_threshold_days;let n=e.trim().toLowerCase(),r=/^(\d+)d?$/.exec(n);if(!r)throw new g("--stale-threshold must be a number of days (e.g. 7 or 7d)",_.USAGE);let i=parseInt(r[1],10);if(i<=0)throw new g("--stale-threshold must be positive",_.USAGE);return i}function jd(e,t){let n=R(e,t),r=Q("blocked",t),i=Q("draft",t);return n===t.in_progress_status?0:t.active_statuses.has(n)?1:r&&n===r?2:i&&n===i?3:t.blocked_statuses.has(n)?5:t.terminal_statuses.has(n)?7:6}function Nt(e,t){let n=Q("closed",t);return R(e,t)===n}function io(e,t){return R(e,t)===t.in_progress_status}function zd(e,t){let n=R(e,t);return n!==t.in_progress_status&&t.active_statuses.has(n)}function rv(e,t){return t.blocked_statuses.has(R(e,t))}var iv=["compact","brief","fields","includeBody","include_body","parent"];function ov(e){let t={...e};for(let n of iv)delete t[n];return t}function oo(e,t){let n=t.trim().toLowerCase(),r=e.find(s=>s.id.trim().toLowerCase()===n);if(!r)return{ids:new Set,found:!1};let i=lt(e),o=$t(r.id,i);return{ids:new Set([r.id,...o.map(s=>s.id)].map(s=>s.trim().toLowerCase())),found:!0}}function sv(e){if(e===void 0)return;let t=e.trim();if(t.length===0)throw new g("Context --parent requires an item id",_.USAGE);return t}function av(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:n-r}function cv(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:C(n,r)}function dv(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function lv(e){let t=zy.exec(e)??Vy.exec(e);if(!t)return!0;let n=Number.parseInt(t[1],10),r=Number.parseInt(t[2],10),i=Number.parseInt(t[3],10);return r>=1&&r<=12&&i>=1&&i<=dv(n,r-1)}function uv(e){let t=qy.exec(e);if(t)return`${t[1]}-${t[2]}-${t[3]}`;let n=Wy.exec(e);if(n){let[,r,i,o,s,a,c,d]=n,l=c?`:${c}`:"",u=d&&d.length===5&&d!=="Z"?`${d.slice(0,3)}:${d.slice(3)}`:d??"";return`${r}-${i}-${o}T${s}:${a}${l}${u}`}return e}function Vd(e){if(typeof e!="string")return Number.NaN;let t=e.trim();if(t.length===0||!lv(t))return Number.NaN;let n=Date.parse(uv(t));return Number.isFinite(n)?n:Number.NaN}function no(e){let t=Vd(e);return Number.isFinite(t)?new Date(t).toISOString():""}function fv(e){let t=Vd(e);return Number.isFinite(t)?new Date(t).toISOString().slice(0,10):"unknown"}function so(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function Ne(e,t,n){let r=jd(e.status,n)-jd(t.status,n);if(r!==0)return r;let i=e.priority-t.priority;if(i!==0)return i;let o=av(e.order,t.order);if(o!==0)return o;let s=cv(e.deadline,t.deadline);if(s!==0)return s;let a=C(no(t.updated_at),no(e.updated_at)),c=e.id.localeCompare(t.id);return a!==0?a:c}function to(e){return Math.max(1,Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4))}function ao(e,t,n=new Set,r="context"){return Sd(e.ranked.map(i=>({id:i.id,item:i.item,rank:i.rank,score:i.score,required:n.has(i.id),cluster:i.item.parent?.trim()||i.item.type,token_costs:{identity:to({id:i.id,title:i.item.title}),summary:to({id:i.id,title:i.item.title,type:i.item.type,status:i.item.status,priority:i.item.priority,parent:i.item.parent}),full:to(i.item)}})),{tokenBudget:t,profile:r,latencyBudgetMs:25})}function co(e){return{...e,included:e.included.map(t=>({id:t.id,projection:t.projection,tokens:t.tokens}))}}function lo(e,t,n){let r=n===void 0?e.ranked:e.ranked.filter(i=>n.has(i.id));return{model:e.model,available_signals:e.available_signals,items:r.map(i=>({id:i.id,rank:i.rank,baseline_rank:i.baseline_rank,score:i.score,contributions:i.contributions,...i.signal_provenance===void 0?{}:{recency:i.signal_provenance.recency}})),candidate_count:e.ranked.length,omitted_count:e.ranked.length-r.length,...t?{feature_store:{source:t.snapshot.source,cache_status:t.cache_status,source_cursor:t.snapshot.source_cursor,generated_at:t.snapshot.generated_at}}:{}}}function qd(e,t){return t>0?Math.round(e/t*100):0}function lt(e){let t=new Map;for(let n of e){let r=so(n.parent);if(!r)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return t}function Pt(e,t,n){let r={id:e.id,title:e.title,type:e.type,status:e.status,priority:e.priority,order:e.order??null,deadline:e.deadline??null,assignee:e.assignee??null,tags:Array.isArray(e.tags)?[...e.tags]:[],updated_at:e.updated_at,parent:so(e.parent)};if(t&&n){let i=$t(e.id,n),o=i.length;if(o>0){let s=i.filter(a=>Nt(a.status,t)).length;r.children_total=o,r.children_closed=s,r.completion_pct=qd(s,o)}}return r}function mv(e){let t=0,n=0,r=0,i=new Set;for(let o of e){if(i.add(o.item_id),o.kind==="deadline"){t+=1;continue}if(o.kind==="reminder"){n+=1;continue}r+=1}return{events:e.length,items:i.size,deadlines:t,reminders:n,scheduled:r}}function pr(...e){return[...new Set(e.flatMap(t=>t??[]))].sort((t,n)=>t.localeCompare(n))}function pv(e,t){return e.filter(n=>!t.terminal_statuses.has(R(n.item_status,t)))}function hv(e,t,n,r){let i=new Map;for(let c of e)i.set(c.id,c);let o=lt(e),s=new Set(t.filter(c=>mr.has(c.type)).map(c=>c.id)),a=[];for(let c of s){let d=i.get(c);if(!d)continue;let l=$t(c,o),u=o.get(c)??[],f=0,p=0,m=0,h=0;for(let b of l)Nt(b.status,n)?f++:io(b.status,n)?m++:rv(b.status,n)?h++:zd(b.status,n)&&p++;let v=u.sort((b,y)=>Ne(b,y,n)).slice(0,r).map(b=>{let y=$t(b.id,o),w=y.filter(E=>Nt(E.status,n)).length;return{id:b.id,title:b.title,type:b.type,status:b.status,children_total:y.length,children_closed:w}});a.push({id:d.id,title:d.title,type:d.type,status:d.status,children_total:l.length,children_closed:f,children_open:p,children_in_progress:m,children_blocked:h,children:v})}return a.sort((c,d)=>{let l=i.get(c.id),u=i.get(d.id);return Ne(l,u,n)}).slice(0,r)}function $t(e,t){let n=[],r=[e],i=new Set;for(;r.length>0;){let o=r.pop();if(i.has(o))continue;i.add(o);let s=t.get(o)??[];for(let a of s)n.push(a),r.push(a.id)}return n}async function gv(e,t){return(await wd({compact:!0,limit:String(e)},t)).compact_activity??[]}function _v(e,t,n,r,i){let o=new Map;for(let c of e){if(!c.parent)continue;let d=o.get(c.parent)??[];d.push(c),o.set(c.parent,d)}let s=t.filter(c=>mr.has(c.type)),a=[];for(let c of s){let d=$t(c.id,o),l=d.length;if(l===0)continue;let u=0,f=0,p=0,m=0;for(let h of d)Nt(h.status,r)?u++:n.has(h.id.trim().toLowerCase())?m++:io(h.status,r)?p++:zd(h.status,r)&&f++;a.push({id:c.id,title:c.title,type:c.type,total:l,closed:u,open:f,in_progress:p,blocked:m,completion_pct:qd(u,l)})}return a.sort((c,d)=>c.completion_pct-d.completion_pct).slice(0,i)}function yv(e,t,n,r){let i=new Map(t.map(o=>[o.id.trim().toLowerCase(),o]));return e.slice(0,r).map(o=>{let s=En(o,i,n),a=s.find(d=>!d.resolved)?.id??s[0]?.id??null,c=a?i.get(a.trim().toLowerCase()):void 0;return{id:o.id,title:o.title,blocked_by:a,blocked_by_title:c?.title??null,blocked_by_status:c?.status??null,blocked_reason:o.blocked_reason??null,unblock_note:o.unblock_note??null}})}function vv(e,t){let n=new Map;for(let r of e)for(let i of r.files??[]){let o=n.get(i.path)??new Set;o.add(r.id),n.set(i.path,o)}return[...n.entries()].map(([r,i])=>({path:r,references:i.size,items:[...i].sort()})).sort((r,i)=>i.references-r.references).slice(0,t)}function bv(e,t,n){let r=new Map;for(let i of e){let o=i.assignee??null,s=r.get(o)??[];s.push(i),r.set(o,s)}return[...r.entries()].map(([i,o])=>({assignee:i,active:o.length,in_progress:o.filter(s=>io(s.status,t)).length,items:o.map(s=>s.id).sort()})).sort((i,o)=>o.active-i.active).slice(0,n)}function wv(e,t,n,r){let i=new Date(n).getTime()-t*24*60*60*1e3;return e.filter(o=>new Date(o.updated_at).getTime()<i).map(o=>({id:o.id,title:o.title,status:o.status,updated_at:o.updated_at,stale_days:Math.floor((new Date(n).getTime()-new Date(o.updated_at).getTime())/(1440*60*1e3))})).sort((o,s)=>s.stale_days-o.stale_days).slice(0,r)}function kv(e,t,n,r){return e.map(i=>({item:i,sortKey:no(i.created_at)})).sort((i,o)=>{let s=C(o.sortKey,i.sortKey);return s!==0?s:i.item.id.localeCompare(o.item.id)}).slice(0,r).map(({item:i})=>({...Pt(i,t,n),created_at:i.created_at}))}function Ev(e,t,n,r){return e.filter(i=>!so(i.parent)&&!mr.has(i.type)).sort((i,o)=>Ne(i,o,t)).slice(0,r).map(i=>Pt(i,t,n))}function Iv(e){let t=0,n=0,r=0,i=0,o=0,s=[];for(let a of e){(a.tests??[]).length>0&&t++;let c=a.test_runs??[];if(c.length>0){n++;let d=!1;for(let l of c)r+=l.passed??0,i+=l.failed??0,o+=l.skipped??0,(l.failed??0)>0&&(d=!0);d&&s.push(a.id)}}return{items_with_tests:t,items_with_recent_runs:n,recent_runs:{passed:r,failed:i,skipped:o},items_failing:s.sort()}}function Ud(e){return`${new Date(e).toISOString().slice(11,16)}Z`}function Wd(e){let t=e.order===null?"-":String(e.order),n=e.deadline??"-",r=e.parent?` parent:${e.parent}`:"",i=e.children_total!==void 0&&e.children_closed!==void 0&&e.completion_pct!==void 0?` children:${e.children_closed}/${e.children_total} done:${e.completion_pct}%`:"",o=e.blocked===!0?` blocked:${e.blocker_ids?.join(",")||"lifecycle"}`:"";return`${e.id} p${e.priority} ${e.status} ${e.type} order:${t} deadline:${n}${r}${i}${o} ${e.title}`}function Cv(e,t){let n=e;return t.map(r=>{let i=n[r];return Array.isArray(i)?`${r}:${i.join(",")}`:`${r}:${i??"-"}`}).join(" ")}function Sv(e){if("reference_only"in e){let n=e.kind==="reminder"?` \u2014 ${e.reminder_text??"reminder"}`:e.kind==="event"?` \u2014 ${e.event_title??"event"}${e.event_recurring?" (recurring)":""}`:"";return`${Ud(e.at)} [${e.kind}] ${e.item_id} (see focus item)${n}`}let t=`${Ud(e.at)} [${e.kind}] ${e.item_id} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder")return`${t} \u2014 ${e.reminder_text}`;if(e.kind==="event"){let n=e.event_recurring?" (recurring)":"",r=e.event_title??e.item_title;return`${t} \u2014 ${r}${n}`}return t}function Hd(e,t,n,r,i){if(e.push(`## ${t}`),n.length===0)e.push(r);else for(let o of n)e.push(`- ${i(o)}`);e.push("")}function Tv(e,t,n){if(t.blocked_fallback.length!==0){e.push("## Blocked fallback");for(let r of t.blocked_fallback)e.push(`- ${n(r)}`);e.push("")}}function Rv(e,t){if(e.push("## Agenda"),e.push(`- events: ${t.agenda.summary.events} (deadlines: ${t.agenda.summary.deadlines}, reminders: ${t.agenda.summary.reminders}, scheduled: ${t.agenda.summary.scheduled})`),t.agenda.events.length===0)e.push("No agenda events matched the selected filters.");else for(let n of t.agenda.events)e.push(`- ${Sv(n)}`);e.push("")}function xv(e,t){if(!(!t.hierarchy||t.hierarchy.length===0)){e.push("## Hierarchy");for(let n of t.hierarchy){let r=n.children_total>0?Math.round(n.children_closed/n.children_total*100):0;e.push(`- ${n.id} ${n.type} ${n.status} "${n.title}" [${n.children_closed}/${n.children_total} done ${r}%]`);for(let i of n.children){let o=i.children_total>0?Math.round(i.children_closed/i.children_total*100):0;e.push(` - ${i.id} ${i.type} ${i.status} "${i.title}" [${i.children_closed}/${i.children_total} done ${o}%]`)}}e.push("")}}function Dv(e,t){if(!(!t.progress||t.progress.length===0)){e.push("## Progress");for(let n of t.progress)e.push(`- ${n.id} "${n.title}" ${n.completion_pct}% (${n.closed}/${n.total} closed, ${n.in_progress} wip, ${n.open} open, ${n.blocked} blocked)`);e.push("")}}function Av(e,t,n,r){if(!(!t.recently_created||t.recently_created.length===0)){e.push("## Recently created");for(let i of t.recently_created)e.push(n?`- ${r(i)}`:`- ${fv(i.created_at)} ${Wd(i)}`);e.push("")}}function Ov(e,t,n){if(!(!t.unparented||t.unparented.length===0)){e.push("## Unparented");for(let r of t.unparented)e.push(`- ${n(r)}`);e.push("")}}function Lv(e,t){if(!(!t.activity||t.activity.length===0)){e.push("## Recent activity");for(let n of t.activity){let r=n.msg?` ${n.msg}`:"";e.push(`- ${n.ts.slice(0,16)}Z ${n.id} ${n.op} by:${n.author}${r}`)}e.push("")}}function Fv(e,t){if(!(!t.blockers||t.blockers.length===0)){e.push("## Blockers");for(let n of t.blockers){let r=n.blocked_by?`blocked_by:${n.blocked_by}(${n.blocked_by_status??"?"})`:"blocked_by:-",i=n.blocked_reason?` reason:"${n.blocked_reason}"`:"",o=n.unblock_note?` unblock:"${n.unblock_note}"`:"";e.push(`- ${n.id} "${n.title}" ${r}${i}${o}`)}e.push("")}}function Mv(e,t){if(!(!t.files||t.files.length===0)){e.push("## Hot files");for(let n of t.files)e.push(`- ${n.path} refs:${n.references} items:[${n.items.join(",")}]`);e.push("")}}function Nv(e,t){if(!(!t.workload||t.workload.length===0)){e.push("## Workload");for(let n of t.workload){let r=n.assignee??"(unassigned)";e.push(`- ${r} active:${n.active} wip:${n.in_progress} items:[${n.items.join(",")}]`)}e.push("")}}function $v(e,t){if(!(!t.staleness||t.staleness.length===0)){e.push("## Stale items");for(let n of t.staleness)e.push(`- ${n.id} ${n.status} stale:${n.stale_days}d last:${n.updated_at.slice(0,10)} "${n.title}"`);e.push("")}}function Pv(e,t){t.tests&&(e.push("## Test health"),e.push(`- items_with_tests: ${t.tests.items_with_tests}`),e.push(`- items_with_recent_runs: ${t.tests.items_with_recent_runs}`),e.push(`- passed: ${t.tests.recent_runs.passed}, failed: ${t.tests.recent_runs.failed}, skipped: ${t.tests.recent_runs.skipped}`),t.tests.items_failing.length>0&&e.push(`- items_failing: [${t.tests.items_failing.join(",")}]`),e.push(""))}function jv(e,t){t.summary.active_items===0&&t.summary.blocked===0&&t.agenda.summary.events===0&&(e.push("## Suggestions"),e.push("No active work items or upcoming events. Consider:"),e.push('- `pm create --type Task --title "..."` to add a new work item'),e.push("- `pm list --status closed --limit 5` to review recent completions"),e.push("- `pm search <keywords>` to find related past work"),e.push("- `pm aggregate` for a full project status overview"))}function CT(e){let t=[],n=e.focus_fields,r=o=>n?Cv(o,n):Wd(o);if(t.push("# pm context"),t.push(""),t.push(`- now: ${e.now}`),t.push(`- depth: ${e.depth}`),e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(`- active_items: ${e.summary.active_items} (in_progress: ${e.summary.in_progress}, open: ${e.summary.open})`),e.summary.total_items!==void 0&&t.push(`- total_items: ${e.summary.total_items} (closed: ${e.summary.closed??0}, canceled: ${e.summary.canceled??0})`),t.push(`- agenda_events: ${e.summary.agenda_events}`),t.push(`- blocked_fallback_used: ${e.summary.blocked_fallback_used}`),e.extension_health){let o=e.extension_health.packages.filter(s=>s.status==="degraded").map(s=>s.name);t.push(`- extensions: ${e.extension_health.ok} ok, ${e.extension_health.degraded} degraded${o.length>0?` (${o.join(", ")})`:""}`)}let i=e.sections_included.filter(o=>o!=="blockers"||(e.blockers?.length??0)>0);if(i.length>0&&t.push(`- sections: ${i.join(", ")}`),t.push(""),Hd(t,"High-level focus",e.high_level,"No high-level active items.",r),Hd(t,"Low-level focus",e.low_level,"No low-level active items.",r),Tv(t,e,r),Rv(t,e),e.workspace_memory){t.push("## Workspace memory");for(let o of e.workspace_memory.rollups)t.push(`- ${o.kind}:${o.key} \u2014 ${o.label} (${o.item_count} completed, latest ${o.last_closed_at})`);t.push("")}return xv(t,e),Dv(t,e),Av(t,e,n,r),Ov(t,e,r),Lv(t,e),Fv(t,e),Mv(t,e),Nv(t,e),$v(t,e),Pv(t,e),jv(t,e),t.join(`
18
18
  `)}async function Uv(e,t){let n=O(process.cwd(),t.path),r=await F(n),i=r.context??ho.context,o=J(r.schema),s=Zy(e.depth,i),a=Jy(e.limit??e.maxItems,s);return{settings:r,contextSettings:i,statusRegistry:o,depth:s,limit:a,sectionsIncluded:ev(e.section,s,i),activityLimit:tv(e.activityLimit,i),staleThresholdDays:nv(e.staleThreshold,i),parentScope:sv(e.parent),focusFields:Xy(e.fields),baseListOptions:ov(e)}}function Hv(e){return e.some(t=>["hierarchy","progress","blockers","staleness","recently_created","unparented"].includes(t))}function Bv(e,t){return{...e,...t,noTruncate:!0,limit:void 0,offset:void 0,after:void 0}}async function Gv(e,t){let n=await kt(void 0,Bv(t.baseListOptions,{excludeTerminal:!1}),e),r=n.items,i=r.filter(a=>!$(a.status,t.statusRegistry)),o=r,s=Kv(t.parentScope,r);return s&&(i=i.filter(a=>s.has(a.id.trim().toLowerCase())),o=o.filter(a=>s.has(a.id.trim().toLowerCase()))),{listed:n,listedItemMetadata:i,allItems:o,fullCorpus:r,subtreeIds:s}}function Kv(e,t){if(e===void 0)return;let n=oo(t,e);if(!n.found)throw new g(`Context --parent item not found: ${e}`,_.NOT_FOUND);return n.ids}function zv(e,t,n,r){let i=new Set(pt(e,t,n,r).containers.map(o=>o.item.id));return new Set(e.filter(o=>mr.has(o.type)||i.has(o.id)||Re(o.type,r)!=="agent").map(o=>o.id))}async function Vv(e,t,n,r,i,o,s,a,c,d,l,u,f,p,m,h){let v=[...e].sort((I,ut)=>Ne(I,ut,i)),b=await tn({pmRoot:f,author:c,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),y=await fr(v,{pmRoot:f,storeKey:"context",statusRegistry:i,now:a,author:c,usageAffinity:b.affinity,claimFocus:m}),w=await ur("context",y.candidates),E=w.ranked.map(I=>I.item),S=i.active_statuses,P=E.filter(I=>S.has(R(I.status,i))),j=u?He(P,d,l,I=>I.id):0,M=u?P.slice(j,j+s):P,Ce=u&&M.length>0&&j+M.length<P.length,N=Ce&&M.length>0?de(l,M[M.length-1].id,j+M.length-1):void 0,B=E.filter(I=>r.has(I.id.trim().toLowerCase())),Y=new Set([...M.map(I=>I.id),...B.slice(0,s).map(I=>I.id)]),X=ao({...w,ranked:w.ranked.filter(I=>Y.has(I.id))},p,new Set(Object.entries(m??{}).filter(([,I])=>I>=1).map(([I])=>I))),te=X.included.map(I=>I.item),ae=te.filter(I=>S.has(R(I.status,i))),V=te.filter(I=>r.has(I.id.trim().toLowerCase())),$e=lt(t),gr=Hv(o)?$e:void 0,q=new Map(n.map(I=>[I.id.trim().toLowerCase(),I])),G=I=>{let ut=Pt(I,i,gr);return r.has(I.id.trim().toLowerCase())&&(ut.blocked=!0,ut.blocker_ids=En(I,q,i).filter(_r=>!_r.resolved).map(_r=>_r.id)),ut},mo=zv(ae,n,i,h),dl=ae.filter(I=>mo.has(I.id)).slice(0,u?M.length:s).map(G),ll=ae.filter(I=>!mo.has(I.id)).slice(0,u?M.length:s).map(G),po=P.length===0;return{activeItems:ae,blockedItems:V,highLevel:dl,lowLevel:ll,blockedFallback:po?V.slice(0,s).map(G):[],blockedFallbackUsed:po,ranking:w,packing:X,featureStore:y,pageExtras:{...u?{applied_limit:s}:{},...Ce?{has_more:!0,truncated:!0}:{},...N?{next_cursor:N}:{}}}}function qv(e,t){return Se("context",{pmRoot:t,options:Xt(e,hs)})}function Wv(e,t){return e.limit!==void 0||e.maxItems!==void 0||e.after!==void 0||t>=Gd}async function Yv(e,t,n,r){let i={...t.baseListOptions,view:"agenda",include:"all",limit:t.parentScope===void 0?String(t.limit):void 0},o=await gd(i,e),s=n===void 0?o.events:o.events.filter(d=>n.has(d.item_id.trim().toLowerCase())),a=pv(s,t.statusRegistry).slice(0,t.limit),c=a.map(d=>r.has(d.item_id)?{at:d.at,date:d.date,kind:d.kind,item_id:d.item_id,reference_only:!0,...d.kind==="reminder"?{reminder_text:d.reminder_text}:{},...d.kind==="event"?{event_title:d.event_title,event_recurring:d.event_recurring}:{}}:d);return{agenda:o,agendaEvents:c,agendaSummary:mv(a)}}function Yd(e,t,n){let r=String(t);return e.filter(i=>R(i.status,n)===r).length}async function Xv(e){let{runtime:t,allItems:n,fullCorpus:r,blockedIds:i,focusGroups:o,now:s,global:a}=e,c=lt(n),d=n.filter(u=>!$(u.status,t.statusRegistry)),l=u=>t.sectionsIncluded.includes(u);return{hierarchy:l("hierarchy")?hv(n,o.activeItems,t.statusRegistry,t.limit):void 0,activity:l("activity")?await gv(t.activityLimit,a):void 0,progress:l("progress")?_v(n,o.activeItems,i,t.statusRegistry,t.limit):void 0,blockersSection:l("blockers")?yv(o.blockedItems,r,t.statusRegistry,t.limit):void 0,recentlyCreated:l("recently_created")?kv(d,t.statusRegistry,c,t.limit):void 0,unparented:l("unparented")?Ev(d,t.statusRegistry,c,t.limit):void 0,filesSection:l("files")?vv(o.activeItems,t.limit):void 0,workload:l("workload")?bv(o.activeItems,t.statusRegistry,t.limit):void 0,staleness:l("staleness")?wv(d,t.staleThresholdDays,s,t.limit):void 0,tests:l("tests")?Iv(o.activeItems):void 0}}function Jv(e,t,n){let r=Q("canceled",t),i=e.filter(s=>t.active_statuses.has(R(s.status,t))),o=Yd(i,t.in_progress_status,t);return{scope:"matching_items",active_items:i.length,open:i.length-o,in_progress:o,blocked:e.filter(s=>n.has(s.id.trim().toLowerCase())).length,total_items:e.length,closed:e.filter(s=>Nt(s.status,t)).length,canceled:e.filter(s=>R(s.status,t)===r).length}}function Qv(e,t,n){t.hierarchy&&(e.hierarchy=t.hierarchy),t.activity&&(e.activity=t.activity),t.progress&&(e.progress=t.progress),t.blockersSection&&(e.blockers=t.blockersSection),t.recentlyCreated&&(e.recently_created=t.recentlyCreated),t.unparented&&(e.unparented=t.unparented),t.filesSection&&(e.files=t.filesSection),t.workload&&(e.workload=t.workload),t.staleness&&(e.staleness=t.staleness),t.tests&&(e.tests=t.tests),n!==void 0&&n.length>0&&(e.warning_details=n)}function Zv(e,t){t&&(e.focus_fields=t,e.high_level=Mt(e.high_level,t),e.low_level=Mt(e.low_level,t),e.blocked_fallback=Mt(e.blocked_fallback,t),e.recently_created&&(e.recently_created=Mt(e.recently_created,t)),e.unparented&&(e.unparented=Mt(e.unparented,t)))}function eb(e,t){let n=[e.high_level,e.low_level,e.blocked_fallback,e.recently_created??[],e.unparented??[]].flat();if(t){for(let o of n)delete o.tags,delete o.tags_inherited;return}let r=new Map(n.map(o=>[o.id,o])),i=new Map(n.map(o=>[o.id,o.tags?[...o.tags].sort().join("\0"):void 0]));for(let o of n){if(!o.parent||!o.tags)continue;let s=r.get(o.parent);s&&i.get(o.id)===i.get(s.id)&&(delete o.tags,o.tags_inherited=s.id)}}function tb(e,t,n){t.length>0||n.length>0||e.agenda.events.length>0||(e.suggestions=['pm create --type Task --title "..." to add a new work item',"pm list --status closed --limit 5 to review recent completions","pm search <keywords> to find related past work","pm aggregate for a full project status overview"])}async function nb(e,t,n,r){try{let i=new Set(t.packing.included.map(c=>c.id)),o=t.ranking.ranked.map(c=>({id:c.id,rank:c.rank,included:i.has(c.id)})),s=new Set(o.map(c=>c.id));for(let c of Zt(e,"context"))s.has(c)||(o.push({id:c,rank:o.length+1,included:!1}),s.add(c));let a=await en({pmRoot:n,author:r,surface:"context",profile:t.packing.profile,rows:o,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});Qt(e,a)}catch{e.warnings=pr(e.warnings,["context_usage_feedback_write_failed"])}}async function rb(e,t,n){if(e)return{};let r=(await bo({pmRoot:t,settings:n,cwd:process.cwd(),noExtensions:!1})).discovered.map(o=>({name:o.name??o.directory,status:o.status==="ok"?"ok":"degraded"})).sort((o,s)=>o.name.localeCompare(s.name)),i=r.filter(o=>o.status==="degraded").length;return r.length===0?{}:{extension_health:{total:r.length,ok:r.length-i,degraded:i,packages:r.slice(0,20),...r.length>20?{truncated:!0}:{}}}}async function ib(e,t){let n=Ho(),r=await No(e),i=n.instance||$o(t);return od(r.semantic_attribution?.[i])}async function ST(e,t){let n=O(process.cwd(),t.path),r=await Uv(e,t),i=await Gv(t,r),o=Qy(r.limit,i.fullCorpus.length),s={...r,limit:o,tokenBudget:ro(e.tokenBudget,Math.max(256,o*160))},a=we(void 0,s.settings.author_default),c=await ib(n,a),d=rb(e.noExtensionHealth===!0,n,s.settings),l=mt(i.fullCorpus,s.statusRegistry),u=await Vv(i.listedItemMetadata,i.allItems,i.fullCorpus,l,s.statusRegistry,s.sectionsIncluded,s.limit,x(),a,e.after,qv(e,n),Wv(e,i.fullCorpus.length),n,s.tokenBudget,c,L(s.settings,D())),f=await Yv(t,s,i.subtreeIds,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(E=>E.id))),p=await Nd(i.fullCorpus,{pmRoot:n,statusRegistry:s.statusRegistry,now:f.agenda.now}),m=pr(i.listed.warnings,f.agenda.warnings,u.ranking.warnings,[...u.featureStore.warnings],p.warnings),h=Yd(u.activeItems,s.statusRegistry.in_progress_status,s.statusRegistry),v=u.activeItems.length-h,b=await Xv({runtime:s,allItems:i.allItems,fullCorpus:i.fullCorpus,blockedIds:l,focusGroups:u,now:f.agenda.now,global:t}),y=Jv(i.allItems,s.statusRegistry,l),w={output_default:"toon",now:f.agenda.now,depth:s.depth,sections_included:s.sectionsIncluded,window:{anchor:f.agenda.anchor,start:f.agenda.range.start,end:f.agenda.range.end,past:f.agenda.range.past,from:f.agenda.range.from,to:f.agenda.range.to},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,limit:e.limit??e.maxItems??null,parent:s.parentScope??null,token_budget:s.tokenBudget,runtime_filters:i.listed.filters.runtime_filters??f.agenda.filters.runtime_filters??{}},summary:{returned_focus:{active_items:u.activeItems.length,in_progress:h,open:v,blocked:u.blockedItems.length},blocked_fallback_used:u.blockedFallbackUsed,high_level:u.highLevel.length,low_level:u.lowLevel.length,agenda_events:f.agendaSummary.events,...y},high_level:u.highLevel,low_level:u.lowLevel,blocked_fallback:u.blockedFallback,agenda:{summary:f.agendaSummary,events:f.agendaEvents},...u.pageExtras};return w.workspace_memory=$d(p,Math.min(800,Math.floor(s.tokenBudget*.2))),Object.assign(w,await d),Qv(w,b,u.featureStore.warning_details),eb(w,e.noTags===!0),e.explainRanking===!0&&(w.ranking=lo(u.ranking,u.featureStore,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(E=>E.id))),w.packing=co(u.packing)),Co(w,[...u.highLevel,...u.lowLevel,...u.blockedFallback].map(E=>({id:E.id,status:R(E.status,s.statusRegistry)===s.statusRegistry.in_progress_status?"in_progress":"open",blocked:E.blocked}))),Zv(w,s.focusFields),So(w),m.length>0&&(w.warnings=m),tb(w,u.activeItems,u.blockedItems),await nb(w,u,n,a),w}(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]="7328ddd0-a555-56d2-9f7d-3496dad501f5")}catch{}})();function Xd(e,t,n){let r={recommended:e.recommended,ready:e.ready},i=()=>Math.max(Er(r,"json"),Er(r,"toon")),o=r.ready.length+ +(r.recommended!==null),s=i(),a=s,c=r.ready;if(a>t&&(r.ready=[],a=i()),s>t&&a<=t){let u=0,f=c.length;for(;u<f;){let p=Math.ceil((u+f)/2);r.ready=c.slice(0,p),i()<=t?u=p:f=p-1}r.ready=c.slice(0,u),a=i()}let d=a>t&&r.recommended!==null;d&&(r.recommended=null,a=i()),e.recommended=r.recommended,e.ready=r.ready,e.summary.recommended=r.recommended!==null;let l=o-r.ready.length-+(r.recommended!==null);n&&l===0&&a<=t||(e.truncation={...e.truncation,...l>0?{ready_total:e.summary.ready}:{},ready_budget:{scope:"recommended_and_ready",budget_tokens:t,estimated_tokens:a,within_budget:a<=t,omitted_count:l,recommendation_omitted:d,restore_budget_tokens:s}},d&&(e.suggestions=[`Ready work exists but the selection budget omitted the recommendation. Retry pm next --token-budget ${s}; use --output-budget to bound the entire response.`]))}(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]="f610c3be-8212-56de-86d4-2b5b9752b87c")}catch{}})();var ob=["markdown","toon","json"],sb=5,ab=1440*60*1e3;function cb(e){if(!e)return;let t=e.trim().toLowerCase();if(!ob.includes(t))throw new g("Next format must be one of markdown|toon|json",_.USAGE);return t}function UT(e,t){let n=cb(e.format);if(t.json&&n&&n!=="json")throw new g("Cannot combine --json with --format markdown|toon",_.USAGE);return t.json?"json":n??"toon"}function Jd(e,t,n){let r=ie(e,t);return r===void 0||r<=0?n:r}function jt(e,t,n,r){return{...Pt(e.item,t,n),open_blocker_count:e.open_blockers.length,blockers:e.open_blockers.map(i=>({id:i.id,title:i.title,status:i.status,...i.external?{external:!0}:{},...i.blocked_since?{blocked_since:i.blocked_since}:{},...i.external?{resolver:i.resolver??null}:{}})),unblocks:e.unblocks,rank:r}}function db(e,t,n,r){let i=e.item,o=[],s=Q("in_progress",t);return o.push(R(i.status,t)===s?"resume work":"ready"),r&&o.push("completed container \u2014 governance closeout"),o.push(`p${i.priority}${i.priority===0?" (highest)":""}`),typeof i.deadline=="string"&&i.deadline.trim().length>0&&o.push(lb(i.deadline,n)),o.push(Ae(i).length>0?"all blockers resolved":"no blockers"),typeof i.parent=="string"&&i.parent.trim().length>0&&o.push(`advances ${i.parent.trim()}`),e.unblocks.length>0&&o.push(`unblocks ${e.unblocks.length} item(s)`),o}function Qd(e,t,n){let r=we(n,t),i=[],o=[];for(let s of e){let a=typeof s.item.assignee=="string"?s.item.assignee.trim():"";a.length>0&&a!==r?o.push({id:s.item.id,assignee:a}):i.push(s)}return{available:i,held:o}}var HT={partitionCallerOwnedReady:Qd,resolveNextCallerAuthor:(e,t)=>Zd(e,t)};function BT(e,t,n){let r=e.filter(i=>Re(i.item.type,n)==="human");return{agent:t?e:e.filter(i=>Re(i.item.type,n)!=="human"),decisions:t?[]:r}}function lb(e,t){let n=Date.parse(e);if(!Number.isFinite(n))return`deadline ${e.trim()}`;let r=new Date(n).toISOString().slice(0,10),i=new Date(Date.parse(t)).toISOString().slice(0,10),o=Math.round((Date.parse(r)-Date.parse(i))/ab);return o<0?`deadline ${r} (overdue ${-o}d)`:o===0?`deadline ${r} (due today)`:`deadline ${r} (in ${o}d)`}function ub(e,t){let n=Q("in_progress",t);return e.filter(r=>R(r.status,t)===n).length}function uo(e,t){return(t.get(e.id.trim().toLowerCase())??[]).length>0}function fb(e,t){return{type:e.type,tag:e.tag,priority:typeof e.priority=="number"?String(e.priority):e.priority,assignee:e.assignee,assigneeFilter:e.assigneeFilter,sprint:e.sprint,release:e.release,noTruncate:!0,...t}}function hr(e,t,n){return[...e].sort((r,i)=>{let o=uo(r.item,t),s=uo(i.item,t);return o!==s?Number(o)-Number(s):Ne(r.item,i.item,n)})}function mb(e){return e.projectedReady.length===0?null:{...e.readyRows[0],reasons:db(e.projectedReady[0],e.statusRegistry,e.now,e.completedContainer)}}function pb(e,t,n){if(e!==null)return;let r=n>0?["No executable recommendation: outcome gates require verification. Inspect gate_needed, or use pm next --include-gates to opt in."]:[];if(t.length>0){let i=t.find(o=>o.blockers.length>0);return[...r,i?`${t.length} item(s) are blocked; unblock the top one by closing ${i.blockers.map(o=>o.id).join(", ")}`:`${t.length} item(s) are blocked; add blocker context or move the top item back to an active status`,"pm next --ready-only after a blocker closes to re-check ready work",'pm create --type Task --title "..." to add new ready work']}return[...r,'pm create --type Task --title "..." to add a new work item',"pm list --status in_progress to review work already underway","pm context --depth deep for the full project snapshot"]}function hb(e,t,n,r){let i={};return e>r&&(i.decision_needed_total=e),t>r&&(i.held_by_others_total=t),n>r+1&&(i.ready_total=n),Object.keys(i).length>0?i:void 0}async function gb(e){try{let t=new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(o=>o.id)]),n=e.ranking.ranked.map(o=>({id:o.id,rank:o.rank,included:t.has(o.id)})),r=new Set(n.map(o=>o.id));for(let o of Zt(e.result,"next"))r.has(o)||(n.push({id:o,rank:n.length+1,included:!1}),r.add(o));let i=await en({pmRoot:e.pmRoot,author:e.author,surface:"next",profile:"next",rows:n,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});Qt(e.result,i)}catch{e.result.warnings=pr(e.result.warnings,["context_usage_feedback_write_failed"])}}async function _b(e){let t=[...new Set([...e.candidatesWarnings??[],...e.corpusWarnings??[],...e.readyRanking.warnings??[],...e.featureStore.warnings])].sort((n,r)=>n.localeCompare(r));return t.length>0&&(e.result.warnings=t),e.result.suggestions=pb(e.recommended,e.blockedRows,e.gateCount),e.tokenBudget!==void 0&&Xd(e.result,e.tokenBudget,e.hasIntentBudget),e.explainRanking&&(e.result.ranking=lo(e.readyRanking,e.featureStore,new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(n=>n.id)])),e.result.packing=co(ao(e.readyRanking,e.packingBudget,new Set,"next"))),await gb({result:e.result,pmRoot:e.pmRoot,author:e.author,ranking:e.readyRanking}),e.result}function yb(e,t,n){if(!n)return e;let r=oo(t,n);if(!r.found)throw new g(`Next --parent item not found: ${n}`,_.NOT_FOUND);return e.filter(i=>r.ids.has(i.id.trim().toLowerCase()))}async function vb(e,t,n,r,i,o,s){let a=e.filter(p=>!uo(p.item,t)),c=s||a.length===0?e:a,d=await tn({pmRoot:o,author:i,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),l=await fr(c.map(p=>p.item),{pmRoot:o,storeKey:"next",statusRegistry:n,now:r,author:i,usageAffinity:d.affinity}),u=await ur("next",l.candidates),f=new Map(c.map(p=>[p.item.id,p]));return{projectedReady:u.ranked.map(p=>f.get(p.id)).filter(p=>p!==void 0),ranking:u,completedContainer:a.length===0&&!s,featureStore:l}}function Zd(e,t){let n=e.assignee?.trim();return we(e.callerAuthor??(n&&n.length>0?n:void 0),t)}async function GT(e,t){let n=O(process.cwd(),t.path),r=await F(n),i=Zd(e,r.author_default),o=J(r.schema),s=L(r,D()),a=x(),c=Jd(e.limit,"--limit",sb),d=ro(e.tokenBudget,Math.max(192,c*128)),l=Jd(e.blockedLimit,"--blocked-limit",c),u=e.readyOnly===!0,f=typeof e.parent=="string"?e.parent.trim():"",p=await kt(void 0,fb(e,{excludeTerminal:!0}),t),m=await kt(void 0,{excludeTerminal:!1,noTruncate:!0},t),h=yb(p.items,m.items,f),v=m.items,b=pt(h,v,o,s),y=lt(v),w=$r(b,o,e,s),E=Qd(w.ready,r.author_default,i),S=hr(E.available,y,o),P=[...b.blocked].sort((q,G)=>Ne(q.item,G.item,o)),{projectedReady:j,ranking:M,completedContainer:Ce,featureStore:N}=await vb(S,y,o,a,i,n,e.includeContainers===!0),B=j.map((q,G)=>jt(q,o,y,G+1)),Y=P.map((q,G)=>jt(q,o,y,G+1)),X=hr(w.decisions,y,o).map((q,G)=>jt(q,o,y,G+1)),te=hr(w.gates,y,o).map((q,G)=>jt(q,o,y,G+1)),ae=hr(b.containers,y,o).map((q,G)=>jt(q,o,y,G+1)),V=mb({projectedReady:j,readyRows:B,statusRegistry:o,now:a,completedContainer:Ce}),$e=hb(X.length,E.held.length,B.length,c)??{};te.length>c&&($e.gate_needed_total=te.length),ae.length>c&&($e.containers_total=ae.length);let gr={output_default:"toon",now:a,recommended:V,ready:B.slice(1,c+1),decision_needed:X.slice(0,c),gate_needed:te.slice(0,c),containers:ae.slice(0,c),blocked:u?[]:Y.slice(0,l),held_by_others:E.held.slice(0,c),summary:{recommended:V!==null,ready:B.length,blocked:Y.length,in_progress:ub(B,o),candidates:b.active_count,containers:b.container_count,decision_needed:X.length,gate_needed:te.length,held_by_others:E.held.length},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,parent:f.length>0?f:null,limit:c,blocked_limit:l,ready_only:u,include_decisions:e.includeDecisions===!0,include_gates:e.includeGates===!0,include_containers:e.includeContainers===!0,token_budget:d},truncation:Object.keys($e).length>0?$e:void 0};return _b({result:gr,recommended:V,blockedRows:Y,gateCount:te.length,candidatesWarnings:p.warnings,corpusWarnings:m.warnings,readyRanking:M,explainRanking:e.explainRanking===!0,pmRoot:n,author:i,packingBudget:d,featureStore:N,tokenBudget:e.tokenBudget===void 0?void 0:d,hasIntentBudget:typeof e.for=="string"})}function KT(e){let t=["# pm next","",...bb(e)];for(let[n,r]of[["Gate verification needed",e.gate_needed],["Containers",e.containers]])r&&r.length>0&&t.push(...Ut(n,r.map(i=>`- ${Ht(i)}`),""));if(t.push(...Ut("Recommended",wb(e.recommended),e.truncation?.ready_budget?.recommendation_omitted?"Recommendation omitted by the selection budget; ready work still exists.":"No ready work.")),t.push(...Ut("Decision needed",(e.decision_needed??[]).map(n=>`- ${Ht(n)}`),"No human-gated decisions.")),t.push(...Ut("Ready",e.ready.map(n=>`- ${Ht(n)}`),"No ready items.")),e.filters.ready_only||t.push(...Ut("Blocked",e.blocked.map(n=>`- ${kb(n)}`),"No blocked items.")),e.suggestions&&e.suggestions.length>0){t.push("## Suggestions");for(let n of e.suggestions)t.push(`- ${n}`)}return t.join(`
19
19
  `).trimEnd()}function bb(e){let t=[`- now: ${e.now}`,`- ready: ${e.summary.ready} (in_progress: ${e.summary.in_progress}), blocked: ${e.summary.blocked}, candidates: ${e.summary.candidates}`];return e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(""),t}function wb(e){return e?[`- ${Ht(e)}`,` why: ${e.reasons.join("; ")}`]:[]}function Ut(e,t,n){return[`## ${e}`,...t.length===0?[n]:t,""]}function kb(e){let t=e.blockers.map(n=>`${n.id}(${n.status??"?"})`).join(", ");return`${Ht(e)} blocked_by:${t}`}function Ht(e){let t=e.deadline??"-",n=e.parent?` parent:${e.parent}`:"",r=e.unblocks.length>0?` unblocks:${e.unblocks.length}`:"";return`${Number.isInteger(e.rank)?`#${e.rank} `:""}${e.id} p${e.priority} ${e.status} ${e.type} deadline:${t}${n}${r} ${e.title}`}import{createHash as Eb}from"node:crypto";import{setTimeout as Ib}from"node:timers/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3483e997-6bee-52bf-a048-8fe5c2427d06")}catch{}})();var tl=1,nl=/^[A-Za-z0-9_-]+$/,Cb=100,el=1e3,Sb=250,nR=Object.freeze({batch_to_row_ratio:.6,fixture_events:200});function se(e){if(e===void 0)return;let t=typeof e=="string"?[e]:e,n=[...new Set(t.flatMap(r=>r.split(",")).map(r=>r.trim()).filter(Boolean))].sort((r,i)=>r.localeCompare(i));return n.length===0?void 0:n}function rl(e){return Eb("sha256").update(k({type:se(e.type),author:se(e.author),item:se(e.item),harness:se(e.harness),agent_instance:se(e.agentInstance),provenance:se(e.provenanceFilter)})).digest("hex").slice(0,24)}function fo(e,t){let n={version:tl,fingerprint:t,ts:e.entry.ts,stream_id:e.stream_id,stream_offset:e.stream_offset};return Buffer.from(JSON.stringify(n),"utf8").toString("base64url")}function il(e,t){if(typeof e!="object"||e===null)return!1;let n=e;return[n.version===tl,n.fingerprint===t,typeof n.ts=="string",typeof n.stream_id=="string",typeof n.stream_offset=="number",Number.isSafeInteger(n.stream_offset),Number(n.stream_offset)>=0].every(Boolean)}function ol(e,t){let n=e.trim();if(n.length===0||n.length>4096||!nl.test(n))throw new g("Invalid mutation event cursor.",_.USAGE,{code:"invalid_event_cursor"});let r;try{r=JSON.parse(Buffer.from(n,"base64url").toString("utf8"))}catch{throw new g("Invalid mutation event cursor.",_.USAGE,{code:"invalid_event_cursor"})}if(!il(r,t))throw new g("Mutation event cursor does not match this query.",_.USAGE,{code:"event_cursor_query_mismatch"});return r}function sl(e){let t=e??Cb;if(!Number.isSafeInteger(t)||t<0||t>el)throw new g(`Mutation event limit must be an integer from 0 to ${el}.`,_.USAGE,{code:"invalid_event_limit"});return t}function al(e){return e instanceof Error&&e.name==="AbortError"}function cl(e,t){let n=e?.trim();if(!n)return{};if(nl.test(n))return{cursor:ol(n,t)};let r=Date.parse(n);if(!Number.isFinite(r))throw new g("Mutation event --since must be an event cursor or ISO timestamp.",_.USAGE,{code:"invalid_event_since"});return{sinceTimestamp:new Date(r).toISOString()}}async function Tb(e,t){let n=await Sr(e,t);if(n===null){if(!await Ko(e))return{...await zo(e,t),source:"authoritative_history"};n=await Sr(e,t)}if(n===null)throw new g("Mutation event index could not be opened after rebuild.",_.GENERIC_FAILURE,{code:"event_index_unavailable"});return{...n,source:"derived_index"}}function Rb(e){let t=e??"batch";if(t!=="batch"&&t!=="row")throw new g("Mutation event cursor mode must be batch or row.",_.USAGE,{code:"invalid_event_cursor_mode"});return t}async function xb(e={}){let t=O(e.cwd??process.cwd(),e.pmRoot);await U(t);let n=sl(e.limit),r=Rb(e.cursorMode);if(e.full===!0&&e.provenance===!0)throw new g("Mutation event projections are mutually exclusive. Use --provenance or --full.",_.USAGE);let i=await F(t),o=i.agent_identity.identity_vocabulary,s=sr(i.agent_identity.harness_signals),a=Vi({provenance:e.provenanceFilter},s),c=se(e.harness),d=rl(e),{cursor:l,sinceTimestamp:u}=cl(e.since,d),f={...l?{after_ts:l.ts,after_stream_id:l.stream_id,after_stream_offset:l.stream_offset}:u?{since_ts:u}:{},ops:se(e.type),authors:se(e.author),harnesses:c,harness_alias_authors:c?Object.entries(o.aliases).filter(([,h])=>c.includes(h)).map(([h])=>h):void 0,agent_instances:se(e.agentInstance),provenance:[...a].map(([h,v])=>({dimension:h,values:[...v]})),stream_ids:se(e.item),limit:n},p=await Tb(t,f),m=p.events.map(h=>({...r==="row"?{cursor:fo(h,d)}:{},item_id:h.stream_id,version:h.stream_offset+1,ts:h.entry.ts,author:h.entry.author,type:h.entry.op,...h.entry.message===void 0?{}:{message:h.entry.message},patch_count:h.entry.patch.length,...e.full===!0?{entry:h.entry}:{},...e.provenance===!0?{provenance:ar(h.entry,o,{itemId:h.stream_id,version:h.stream_offset+1})}:{}}));return{events:m,count:m.length,has_more:p.has_more,cursor_mode:r,...p.events.length===0?{}:{next_cursor:fo(p.events[p.events.length-1],d)},source:p.source,...e.provenanceSummary===!0?{provenance_summary:cr(p.events.map(h=>h.entry),o,s)}:{}}}async function*Db(e={}){let t=e.intervalMs??Sb;if(!Number.isSafeInteger(t)||t<10)throw new g("Mutation event follow interval must be an integer of at least 10ms.",_.USAGE,{code:"invalid_event_follow_interval"});let n=e.since;for(;e.signal?.aborted!==!0;){let r=await xb({...e,cursorMode:e.cursorMode??"batch",since:n});if(yield r.next_cursor===void 0&&n!==void 0?{...r,next_cursor:n}:r,r.events.length>0){n=r.next_cursor;continue}try{await Ib(t,void 0,{signal:e.signal})}catch(i){if(al(i))return;throw i}}}async function*rR(e={}){for await(let t of Db({...e,cursorMode:"row"}))for(let n of t.events)yield n}var iR={decodeMutationEventCursor:ol,encodeMutationEventCursor:fo,eventQueryFingerprint:rl,isAbortError:al,isMutationEventCursorEnvelope:il,parseMutationEventLimit:sl,resolveMutationEventStart:cl};(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]="f091d0c3-f2a7-5d76-8656-4aebe82e9798")}catch{}})();function sR(e,t){let n=t??{};return e.filter(r=>n[r.id]!==r.updated_at).map(r=>r.id).sort((r,i)=>r.localeCompare(i))}export{Lr as a,_n as b,sw as c,aw as d,bn as e,vn as f,Es as g,uw as h,Re as i,kl as j,Ae as k,kn as l,Cs as m,En as n,mt as o,$r as p,pt as q,ie as r,In as s,Ts as t,Pr as u,ht as v,Rs as w,xs as x,Hs as y,Wr as z,Gs as A,s0 as B,a0 as C,Vs as D,qs as E,d0 as F,Cl as G,Ow as H,Sl as I,Lw as J,Fw as K,Mw as L,Nw as M,Dl as N,z as O,Ls as P,Sn as Q,Kw as R,Ur as S,zw as T,yt as U,Ul as V,Bl as W,Br as X,Gl as Y,Qe as Z,Gr as _,Kr as $,Vl as aa,zr as ba,e0 as ca,t0 as da,n0 as ea,r0 as fa,gu as ga,na as ha,Js as ia,Qs as ja,wu as ka,ku as la,Eu as ma,kt as na,Rn as oa,Xr as pa,xn as qa,K0 as ra,ha as sa,he as ta,fk as ua,ka as va,Ea as wa,Ia as xa,Ca as ya,Sa as za,Mn as Aa,Ra as Ba,nt as Ca,xa as Da,La as Ea,Pn as Fa,Fa as Ga,Ma as Ha,Zm as Ia,qa as Ja,Hn as Ka,ai as La,Bn as Ma,Wa as Na,Xa as Oa,ci as Pa,Ct as Qa,Qa as Ra,li as Sa,ui as Ta,fi as Ua,Za as Va,mi as Wa,tc as Xa,nc as Ya,ic as Za,Cp as _a,vE as $a,gC as ab,Xc as bb,sR as cb,fc as db,mc as eb,CE as fb,Zp as gb,at as hb,T as ib,xe as jb,$E as kb,PE as lb,vc as mb,ih as nb,jE as ob,UE as pb,JE as qb,Rc as rb,Yn as sb,Zn as tb,vI as ub,er as vb,Wh as wb,bI as xb,wI as yb,kI as zb,EI as Ab,Xh as Bb,jc as Cb,mg as Db,kg as Eb,HC as Fb,BC as Gb,id as Hb,WC as Ib,YC as Jb,XC as Kb,JC as Lb,od as Mb,iS as Nb,oS as Ob,sS as Pb,gd as Qb,or as Rb,sr as Sb,Vi as Tb,ar as Ub,uS as Vb,qi as Wb,cr as Xb,kS as Yb,wd as Zb,kd as _b,Ot as $b,Yi as ac,lr as bc,W_ as cc,Cd as dc,Z_ as ec,ur as fc,ey as gc,ty as hc,oy as ic,sy as jc,LS as kc,ay as lc,Sd as mc,Xi as nc,Ji as oc,_y as pc,Ey as qc,KS as rc,Qi as sc,Zi as tc,fr as uc,Ld as vc,VS as wc,Dy as xc,Fy as yc,Nd as zc,Hy as Ac,$d as Bc,By as Cc,nT as Dc,Gy as Ec,Xy as Fc,Mt as Gc,IT as Hc,ro as Ic,Zy as Jc,ev as Kc,oo as Lc,Ne as Mc,ao as Nc,co as Oc,lo as Pc,lt as Qc,Pt as Rc,pr as Sc,CT as Tc,eb as Uc,ST as Vc,ob as Wc,UT as Xc,HT as Yc,BT as Zc,GT as _c,KT as $c,nR as ad,xb as bd,Db as cd,rR as dd,iR as ed};
20
- //# sourceMappingURL=chunk-7OEGNA4X.js.map
20
+ //# sourceMappingURL=chunk-X53HM753.js.map