@unbrained/pm-cli 2026.10.25 → 2026.10.26

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 (175) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +28 -0
  3. package/dist/cli/error-guidance.d.ts +5 -0
  4. package/dist/cli/error-guidance.js +2 -2
  5. package/dist/cli/register-mutation.js +2 -2
  6. package/dist/cli-bundle/bundle-manifest.json +1 -1
  7. package/dist/cli-bundle/chunks/{chunk-O3ZTGRIH.js → chunk-25MTQAHX.js} +2 -2
  8. package/dist/cli-bundle/chunks/{chunk-TLMXSYJA.js → chunk-57YPOOED.js} +2 -2
  9. package/dist/cli-bundle/chunks/{chunk-4GD6QOP6.js → chunk-7UDQAINZ.js} +3 -3
  10. package/dist/cli-bundle/chunks/{chunk-LNKPH2DD.js → chunk-ER7RLJW5.js} +2 -2
  11. package/dist/cli-bundle/chunks/{chunk-YCCGZHOR.js → chunk-MWCG25PO.js} +2 -2
  12. package/dist/cli-bundle/chunks/{chunk-444VPGQT.js → chunk-N6FTEILW.js} +5 -5
  13. package/dist/cli-bundle/chunks/{chunk-FNZT4BTE.js → chunk-NGKTROAO.js} +86 -86
  14. package/dist/cli-bundle/chunks/chunk-OCDRHIVQ.js +6 -0
  15. package/dist/cli-bundle/chunks/{chunk-3CYXE6BV.js → chunk-ONC4BBQP.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-RQKDANP7.js → chunk-OUDR2HWR.js} +3 -3
  17. package/dist/cli-bundle/chunks/{chunk-RD6UW3MW.js → chunk-T7T4WLUY.js} +3 -3
  18. package/dist/cli-bundle/chunks/{chunk-MVJGGCGQ.js → chunk-TGOG5BFM.js} +2 -2
  19. package/dist/cli-bundle/chunks/chunk-UF6EXZSP.js +2 -0
  20. package/dist/cli-bundle/chunks/chunk-VS2IIV3F.js +128 -0
  21. package/dist/cli-bundle/chunks/chunk-XAIR53QZ.js +2 -0
  22. package/dist/cli-bundle/chunks/{chunk-VAEB6IUQ.js → chunk-Y42DYMZX.js} +2 -2
  23. package/dist/cli-bundle/chunks/{chunk-EYCVAAIP.js → chunk-YJBIPNDL.js} +2 -2
  24. package/dist/cli-bundle/chunks/{chunk-UI3FD3DW.js → chunk-Z35XAHUN.js} +2 -2
  25. package/dist/cli-bundle/chunks/{chunk-7C3GCLOO.js → chunk-ZLVFUZI4.js} +27 -27
  26. package/dist/cli-bundle/chunks/{chunk-7T3H24HN.js → chunk-ZT64RDMF.js} +2 -2
  27. package/dist/cli-bundle/chunks/{indexed-receipt-blobs-47I6KKDO.js → indexed-receipt-blobs-NWQIDTH7.js} +2 -2
  28. package/dist/cli-bundle/chunks/{mutation-admission-747C6IUR.js → mutation-admission-VTNV6JV2.js} +2 -2
  29. package/dist/cli-bundle/chunks/{register-list-query-COST6KRV.js → register-list-query-LZDWUZS4.js} +2 -2
  30. package/dist/cli-bundle/chunks/register-mutation-M2A7PH42.js +20 -0
  31. package/dist/cli-bundle/chunks/{register-operations-S4LKLUBJ.js → register-operations-E7P2JTXM.js} +2 -2
  32. package/dist/cli-bundle/chunks/{register-setup-3ITZXPOL.js → register-setup-DOV7KGSH.js} +2 -2
  33. package/dist/cli-bundle/chunks/{settlement-hook-5IVCF6ZY.js → settlement-hook-SVD6CO7U.js} +2 -2
  34. package/dist/cli-bundle/chunks/{stage-3UUIYROS.js → stage-LYLEOAQB.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-HMYDUEQK.js → chunk-226XKW3W.js} +3 -3
  36. package/dist/cli-bundle/focused-chunks/chunk-ABMNYWV6.js +2 -0
  37. package/dist/cli-bundle/focused-chunks/{chunk-3M5FZCMC.js → chunk-ADSBGYLW.js} +8 -8
  38. package/dist/cli-bundle/focused-chunks/{chunk-22727JYL.js → chunk-B266DDBJ.js} +2 -2
  39. package/dist/cli-bundle/focused-chunks/{chunk-Y4JHHY24.js → chunk-BH7RE2ZY.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/chunk-BL77VCRB.js +22 -0
  41. package/dist/cli-bundle/focused-chunks/{chunk-77NU7NPN.js → chunk-CSCZYSNZ.js} +2 -2
  42. package/dist/cli-bundle/focused-chunks/{chunk-URWYYJ7K.js → chunk-D5YQ4KAE.js} +2 -2
  43. package/dist/cli-bundle/focused-chunks/{chunk-ZYCOMRFT.js → chunk-E5C24MCV.js} +2 -2
  44. package/dist/cli-bundle/focused-chunks/{chunk-74KC7FUQ.js → chunk-I7H3XF25.js} +2 -2
  45. package/dist/cli-bundle/focused-chunks/chunk-IF6C43IP.js +2 -0
  46. package/dist/cli-bundle/focused-chunks/chunk-KERJNFXY.js +2 -0
  47. package/dist/cli-bundle/focused-chunks/{chunk-46KDJH3K.js → chunk-KTXU5WU6.js} +2 -2
  48. package/dist/cli-bundle/focused-chunks/chunk-NE27VCU7.js +91 -0
  49. package/dist/cli-bundle/focused-chunks/{chunk-NI5SG2M2.js → chunk-NFN2P4TW.js} +2 -2
  50. package/dist/cli-bundle/focused-chunks/{chunk-NC5HUGHU.js → chunk-NLZUI234.js} +4 -4
  51. package/dist/cli-bundle/focused-chunks/chunk-PK5FJIVA.js +12 -0
  52. package/dist/cli-bundle/focused-chunks/{chunk-LWJ2X75I.js → chunk-UHWTPOM4.js} +2 -2
  53. package/dist/cli-bundle/focused-chunks/{chunk-B5JOVH5F.js → chunk-UP765R2V.js} +2 -2
  54. package/dist/cli-bundle/focused-chunks/{chunk-U6HXIF6G.js → chunk-WDWHUJQW.js} +2 -2
  55. package/dist/cli-bundle/focused-chunks/{chunk-7DEZT4JN.js → chunk-YQKLKRMW.js} +2 -2
  56. package/dist/cli-bundle/focused-chunks/chunk-YTEC2EPM.js +3 -0
  57. package/dist/cli-bundle/focused-chunks/{chunk-3FM75SBJ.js → chunk-YW5GHQN2.js} +2 -2
  58. package/dist/cli-bundle/focused-chunks/{indexed-receipt-blobs-YCLN2ZZG.js → indexed-receipt-blobs-YFDNGHCM.js} +2 -2
  59. package/dist/cli-bundle/focused-chunks/{mutation-admission-BQBQXILV.js → mutation-admission-L42E3U5U.js} +2 -2
  60. package/dist/cli-bundle/focused-chunks/{settlement-hook-XVS6P2XI.js → settlement-hook-3CADO4XZ.js} +2 -2
  61. package/dist/cli-bundle/focused-chunks/{stage-VSIL4MTZ.js → stage-TUQHWU7N.js} +2 -2
  62. package/dist/cli-bundle/main.js +4 -4
  63. package/dist/cli-bundle/sdk-authoring.js +1 -1
  64. package/dist/cli-bundle/sdk-contracts.js +2 -2
  65. package/dist/cli-bundle/sdk-core.js +23 -23
  66. package/dist/cli-bundle/sdk-governance.js +1 -1
  67. package/dist/cli-bundle/sdk-graph.js +1 -1
  68. package/dist/cli-bundle/sdk-merge.js +57 -57
  69. package/dist/cli-bundle/sdk-query.js +1 -1
  70. package/dist/cli-bundle/sdk-runtime.js +1 -1
  71. package/dist/cli-bundle/sdk-testing.js +1 -1
  72. package/dist/cli-bundle/sdk.js +9 -9
  73. package/dist/core/extensions/extension-types.d.ts +3 -0
  74. package/dist/core/extensions/extension-types.js +1 -1
  75. package/dist/core/output/mutation-projection.js +1 -1
  76. package/dist/core/policy/workflow-policy-store.js +1 -1
  77. package/dist/core/shared/errors.d.ts +9 -0
  78. package/dist/core/shared/errors.js +1 -1
  79. package/dist/core/shared/secret-rules.d.ts +17 -0
  80. package/dist/core/shared/secret-rules.js +2 -1
  81. package/dist/core/store/item-mutation-precondition.d.ts +8 -0
  82. package/dist/core/store/item-mutation-precondition.js +1 -1
  83. package/dist/core/store/item-store.js +1 -1
  84. package/dist/sdk/cli-contracts/commander-mutation-options.js +1 -1
  85. package/dist/sdk/cli-contracts/completeness.js +1 -1
  86. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  87. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
  88. package/dist/sdk/cli-contracts/registration-helpers.d.ts +1 -1
  89. package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
  90. package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +4 -0
  91. package/dist/sdk/cli-contracts/tool-option-contracts.js +1 -1
  92. package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
  93. package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
  94. package/dist/sdk/cli-contracts/tool-schema.js +1 -1
  95. package/dist/sdk/context-signal-store.js +2 -2
  96. package/dist/sdk/core.d.ts +1 -1
  97. package/dist/sdk/core.js +1 -1
  98. package/dist/sdk/extension-command-context.js +2 -2
  99. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  100. package/dist/sdk/index.d.ts +2 -1
  101. package/dist/sdk/index.js +1 -1
  102. package/dist/sdk/item-transaction.js +1 -1
  103. package/dist/sdk/lifecycle/close-many.d.ts +3 -0
  104. package/dist/sdk/lifecycle/close-many.js +1 -1
  105. package/dist/sdk/lifecycle/close.d.ts +3 -1
  106. package/dist/sdk/lifecycle/close.js +1 -1
  107. package/dist/sdk/lifecycle/create.d.ts +2 -0
  108. package/dist/sdk/lifecycle/create.js +1 -1
  109. package/dist/sdk/lifecycle/plan.d.ts +2 -0
  110. package/dist/sdk/lifecycle/plan.js +1 -1
  111. package/dist/sdk/lifecycle/restore.js +1 -1
  112. package/dist/sdk/lifecycle-policy.d.ts +11 -0
  113. package/dist/sdk/lifecycle-policy.js +1 -1
  114. package/dist/sdk/mutation-guard.d.ts +6 -1
  115. package/dist/sdk/mutation-guard.js +1 -1
  116. package/dist/sdk/output/fit-envelope.d.ts +98 -0
  117. package/dist/sdk/output/fit-envelope.js +2 -0
  118. package/dist/sdk/public-surface.json +1 -1
  119. package/dist/sdk/query.d.ts +1 -0
  120. package/dist/sdk/query.js +1 -1
  121. package/dist/sdk/read-output-session.d.ts +1 -1
  122. package/dist/sdk/read-output-session.js +1 -1
  123. package/dist/sdk/runtime-input.js +1 -1
  124. package/dist/sdk/runtime-primitives.d.ts +1 -1
  125. package/dist/sdk/runtime-primitives.js +1 -1
  126. package/dist/sdk/runtime.d.ts +2 -2
  127. package/dist/sdk/runtime.js +1 -1
  128. package/dist/sdk/scheduling-shortcuts.d.ts +2 -0
  129. package/dist/sdk/scheduling-shortcuts.js +1 -1
  130. package/dist/sdk/workspace-transaction.d.ts +3 -1
  131. package/dist/sdk/workspace-transaction.js +2 -2
  132. package/docs/COMMANDS.md +2 -1
  133. package/docs/MUTATION_INTEGRITY.md +33 -0
  134. package/docs/QUALITY_EVIDENCE.md +9 -0
  135. package/docs/READ_OUTPUT_CONTRACTS.md +55 -1
  136. package/docs/SDK.md +88 -6
  137. package/docs/WORKFLOW_POLICIES.md +14 -1
  138. package/docs/agent-task-token-baseline.json +1 -1
  139. package/docs/agent-task-transcripts.json +1 -1
  140. package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
  141. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +4 -3
  142. package/marketplace.json +1 -1
  143. package/package.json +1 -1
  144. package/packages/pm-beads/package.json +1 -1
  145. package/packages/pm-calendar/extensions/calendar/shortcuts.ts +2 -2
  146. package/packages/pm-calendar/package.json +1 -1
  147. package/packages/pm-command-kit/package.json +1 -1
  148. package/packages/pm-digital-twin/package.json +1 -1
  149. package/packages/pm-governance-audit/package.json +1 -1
  150. package/packages/pm-guide-shell/package.json +1 -1
  151. package/packages/pm-kanban/package.json +1 -1
  152. package/packages/pm-lifecycle-hooks/package.json +1 -1
  153. package/packages/pm-linked-test-adapters/package.json +1 -1
  154. package/packages/pm-search-advanced/package.json +1 -1
  155. package/packages/pm-templates/package.json +1 -1
  156. package/packages/pm-todos/package.json +1 -1
  157. package/packages/pm-vcs/package.json +1 -1
  158. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  159. package/plugins/pm-claude/package.json +1 -1
  160. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  161. package/plugins/pm-codex/package.json +1 -1
  162. package/plugins/pm-codex/plugin.json +1 -1
  163. package/runtime-dependencies.json +1 -1
  164. package/dist/cli-bundle/chunks/chunk-5ZPT67NJ.js +0 -127
  165. package/dist/cli-bundle/chunks/chunk-HMJSFWHK.js +0 -2
  166. package/dist/cli-bundle/chunks/chunk-RLXK2S7P.js +0 -2
  167. package/dist/cli-bundle/chunks/chunk-XYLBOXSH.js +0 -6
  168. package/dist/cli-bundle/chunks/register-mutation-JZVVJUHY.js +0 -20
  169. package/dist/cli-bundle/focused-chunks/chunk-5LBZR6YW.js +0 -2
  170. package/dist/cli-bundle/focused-chunks/chunk-IVLIUPVV.js +0 -12
  171. package/dist/cli-bundle/focused-chunks/chunk-KIIGME23.js +0 -2
  172. package/dist/cli-bundle/focused-chunks/chunk-MT5TYMEU.js +0 -3
  173. package/dist/cli-bundle/focused-chunks/chunk-QH5KMIYZ.js +0 -91
  174. package/dist/cli-bundle/focused-chunks/chunk-W7MCCFYV.js +0 -2
  175. package/dist/cli-bundle/focused-chunks/chunk-WMPDY5ZU.js +0 -21
@@ -1,12 +0,0 @@
1
- import{A as ro,B as io,G as so,I as ao,a as W,b as Bi,c as qi,e as Ae,f as Gi,g as Wi,h as Hi,i as zi,j as Ki,m as Vi,n as Qi,p as Zi,q as eo,t as to,u as an,v as cn,w as H}from"./chunk-77NU7NPN.js";import{$ as Ti,H as ui,I as mi,L as rn,M as ki,Oa as Pi,W as lt,Y as pe,Z as ut,_ as mt,ba as Fi,ca as Mi,da as pt,ea as $i,fa as ht,ga as gt,ha as yt,ia as Oi,ma as Li,na as sn,wa as Ni}from"./chunk-WMPDY5ZU.js";import{Na as Hr,Va as zr}from"./chunk-5LBZR6YW.js";import{C as no,K as oo,a as xe,c as Te,f as Re,g as ji,h as Ui,i as _t,m as Yi,n as Xi,q as Ji}from"./chunk-URWYYJ7K.js";import{A as ft,C as Ri,D as ne,E as re,G as Ai,H as he,K as Di,b as Si,c as Ei,f as xi,h as on}from"./chunk-QH5KMIYZ.js";import{Da as bi,E as pi,F as hi,G as gi,H as yi,I as _i,Ka as dt,La as Ci,M as Ie,Ma as Ii,V as wi,_a as M,aa as ee,ca as te,db as q,ia as vi,r as L,s as I,t as J,x as fi}from"./chunk-LWJ2X75I.js";import{b as le}from"./chunk-3FM75SBJ.js";import{j as P,l as X}from"./chunk-22727JYL.js";import{b as di,c as li}from"./chunk-AK2CI2GI.js";import{$ as Ee,Aa as en,Ad as E,Bd as oi,Ca as Ze,Cd as G,Dc as me,E as Jt,F as Ye,Fa as et,Od as it,Qb as Wr,Qd as ot,Sc as Qr,Sd as st,Tc as Yr,Vc as Xr,Vd as si,Wd as at,Y as Zt,a as Or,aa as Je,fa as Br,ga as qr,gd as Jr,ic as C,ke as ct,le as tn,md as nt,me as ai,nd as fe,ne as ci,oc as Ce,od as Zr,pd as ei,qa as F,qd as ti,rd as ni,sc as Kr,sd as ri,se as nn,tc as ue,td as rt,wa as R,wc as Vr,wd as O,ya as Gr,yc as tt,z as de,zd as ii}from"./chunk-NC5HUGHU.js";import{B as Pr,C as Xe,D as jr,H as Ur,s as Lr,w as Nr,y as f,z as p}from"./chunk-46KDJH3K.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]="b70f6764-9f83-5371-8ebc-1d0d5703bc1f")}catch{}})();var oa=["invalid_envelope","source_incomplete","source_unchecked","filtered_corpus","terminal_items_excluded","strict_read_unproven","page_incomplete","count_mismatch","projection_incomplete","field_omission","omission_receipt_missing","omission_receipt_invalid","read_output_missing","read_output_invalid","read_output_dimensions_incomplete","budget_compaction","budget_omission","session_projection","invalid_item_id","duplicate_item_id"],dn=class extends Error{receipt;constructor(t){super(`Complete-list certification failed: ${t.map(n=>n.code).join(", ")}.`),this.name="PmCompleteListValidationError",this.receipt={contract_version:1,contract:"complete_list",findings:t,recovery:{suggested_retry:"pm list --all --output-include full --strict-read --no-truncate --output-budget unbounded --output-limit unbounded --json",sdk:"await client.listAllComplete()"}}}};function nf(e={}){return Xr({excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0},["full"])}function z(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function x(e,t,n,r){t&&e.push({code:n,message:r})}function sa(e,t){let n=z(e.completeness)?e.completeness:{};x(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),x(t,n.status!=="complete"&&n.status!=="partial","source_unchecked","The source scan did not prove completeness.");let r=n.unreadable_item_count,i=n.unreadable_directory_count;x(t,n.status==="complete"&&(r!==0||i!==0)&&Number.isSafeInteger(r)&&Number.isSafeInteger(i),"source_incomplete","The source scan reports unreadable tracker artifacts despite a complete status."),x(t,n.status==="complete"&&(!Number.isSafeInteger(r)||!Number.isSafeInteger(i)||Number(r)<0||Number(i)<0),"source_unchecked","The source scan did not report safe non-negative unreadable counts.");let o=z(e.filters)?e.filters:{},s=z(o.runtime_filters)?o.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return x(t,o.status!=="all"||Object.keys(s).length>0||Object.keys(o).some(c=>!a.has(c)),"filtered_corpus","The list did not explicitly select every lifecycle status."),x(t,o.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),x(t,o.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),o}function aa(e,t,n){x(n,e.has_more!==!1||e.next_cursor!==null||e.truncated!==!1||e.applied_limit!==void 0||t.no_truncate!==!0,"page_incomplete","Pagination or a row ceiling may have withheld items."),x(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=z(e.projection)?e.projection:{};x(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let i=z(e.omission_receipt)?e.omission_receipt:void 0;x(n,i===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),x(n,i!==void 0&&(i.has_omissions!==!1||i.omitted_field_group_count!==0||!Number.isSafeInteger(i.omitted_field_group_count)||!Array.isArray(i.omitted_field_groups)||i.omitted_field_groups.length!==0),"omission_receipt_invalid","The field-omission receipt is malformed or contradicts its no-omission claim."),x(n,i?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function ca(e){return e.contract_version!==1||e.command!=="list"||e.within_budget!==!0||e.strings_compacted!==!1||e.rows_compacted!==!1||e.result_omitted!==!1}function da(e){if(!Array.isArray(e.requested_dimensions))return!1;let t=new Set(e.requested_dimensions);return["include","amount","cost"].every(n=>t.has(n))}function la(e,t){let n=z(e.read_output)?e.read_output:void 0;x(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),x(t,n!==void 0&&ca(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),x(t,n!==void 0&&!da(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),x(t,n?.strings_compacted===!0||n?.rows_compacted===!0||e.output_budget_truncation!==void 0,"budget_compaction","Universal output shaping compacted the result.");let r=z(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;x(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),x(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function ua(e,t){let n=e.map(r=>z(r)&&typeof r.id=="string"?r.id.trim():"");x(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),x(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function ma(e){if(!z(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:oa[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=sa(t,n);return aa(t,r,n),la(t,n),ua(t.items,n),{ok:n.length===0,findings:n}}function fa(e){let t=ma(e);if(!t.ok)throw new dn(t.findings);let n=e;return{...n,complete_list:{contract_version:1,item_count:n.items.length,unique_item_id_count:new Set(n.items.map(r=>r.id)).size,terminal_items_included:!0,source_complete:!0,full_projection:!0,no_omissions:!0,unbounded:!0}}}function rf(e){fa(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]="499dfc08-cf70-55fe-8868-65c3107e3a91")}catch{}})();async function cf(e,t={}){let n=await so({pmRoot:R(process.cwd(),e.path),exhaustive:t.exhaustive,...t.status===void 0?{}:{statuses:t.status.flatMap(r=>r.split(",").map(i=>i.trim()).filter(Boolean))},...t.since===void 0?{}:{since:t.since},...t.threshold===void 0?{}:{threshold:t.threshold},...t.limit===void 0?{}:{limit:t.limit}});return{...n,clusters:n.clusters.map(r=>{let i=r.id;return{...r,canonical_id:i,close_command:`pm close <duplicate-id> --duplicate-of ${i}`}}),guidance:{strategy:"review_then_close_duplicate",command:"pm close <duplicate-id> --duplicate-of <canonical-id>"}}}(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]="1433b417-e41f-5963-a551-094132afd717")}catch{}})();var co=16;async function lo(e,t,n){let r=F(t,C()).type_to_folder,i=[],o=new Set,s=n;for(;s&&i.length<co;){let a=s.trim().toLowerCase();if(!a||o.has(a))break;o.add(a);let c=await ne(e,s,t.id_prefix,t.item_format,r);if(!c)break;let d=await re(c,{schema:t.schema});i.push(d.document.metadata.id),s=d.document.metadata.parent}return i}async function pf(e){await gi({pmRoot:e.pmRoot,principal:e.principal,itemId:e.itemId,lineageIds:await lo(e.pmRoot,e.settings,e.itemId)})}async function hf(e){await yi(e)}async function gf(e){await _i({pmRoot:e.pmRoot,principal:e.principal,...e.itemId?{itemId:e.itemId,lineageIds:await lo(e.pmRoot,e.settings,e.itemId)}:{}})}var yf={lineage_depth:co,active_items:64,evidence_rows:32};function uo(e){if(!e)return;let t={};for(let n of e.active_item_ids)t[n]=1;e.focused_item_id&&(t[e.focused_item_id]=1);for(let n of e.evidence){let r=/^lineage:(.+)$/u.exec(n)?.[1];r&&t[r]===void 0&&(t[r]=.75)}return Object.keys(t).length>0?t:void 0}import{encode as ha}from"@toon-format/toon";import{createHash as pa}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]="66022e7d-1594-5b88-a283-c64830ff0dfd")}catch{}})();function ln(e){let t=pa("sha256").update("[");for(let n of e)t.update(et(n)).update("\0");return t.update("]").digest("hex")}function wt(e,t){if(t===void 0)return O();let n=ei(t).snapshot,r=`${e}:`,i=n?.slice(r.length);if(!n?.startsWith(r)||!i||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/u.test(i)||!Number.isFinite(Date.parse(i)))throw new p("Query cursor has no supported fixed-window clock.",f.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]});return i}function De(e,t){let n=e.map((a,c)=>({row:a,index:c})),r=fe(t.command,{query:t.query,rows_digest:ln(e)}),i=t.after===void 0?void 0:ti(t.after,r);if(i&&(i.after_index===void 0||i.after_id!==String(i.after_index)||i.after_index>=e.length))throw new p("Query cursor position is outside the matching window.",f.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]});let o=rt(n,{cursor:t.after,fingerprint:r,snapshot:`${t.command}:${t.clock}`,limit:t.limit??e.length,readId:({index:a})=>String(a)}),s=i?.after_index===void 0?0:i.after_index+1;return{...o,rows:o.rows.map(({row:a})=>a),count:o.rows.length,total_count:e.length,page_start:s,omitted_count:e.length-s-o.rows.length,has_more:s+o.rows.length<e.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]="351df2b3-3a1a-528c-96b9-72bb3e2f27fc")}catch{}})();var un=["agenda","day","week","month"],mn=["markdown","toon","json"],ga=["sun","mon","tue","wed","thu","fri","sat"],ya=365,_a=365,yo=28,wa=1e3;function fn(e,t){if(e===void 0)return;let n=Number(e);if(!Number.isInteger(n)||n<0)throw new p(`${t} must be a non-negative integer`,f.USAGE);return n}function va(e){if(!e)return new Set(["deadlines","reminders","events"]);let t=e.trim().toLowerCase();if(t==="all")return new Set(["deadlines","reminders","events"]);let n=t.split(/[|,]/).map(i=>i.trim()).filter(i=>i.length>0);if(n.length===0)throw new p("Calendar include filter must not be empty",f.USAGE);let r=new Set;for(let i of n){if(i==="deadlines"||i==="deadline"){r.add("deadlines");continue}if(i==="reminders"||i==="reminder"){r.add("reminders");continue}if(i==="events"||i==="event"||i==="scheduled"){r.add("events");continue}throw new p("Calendar include filter must be deadlines|reminders|events|scheduled|all",f.USAGE)}return r}function _o(e,t){let n;for(let r of t){let i=Or(e,r,2);i!==null&&(n===void 0||i<n.distance)&&(n={choice:r,distance:i})}return n?.choice}function ba(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!un.includes(t)){let n=_o(t,un);throw new p(`Calendar view must be one of ${un.join("|")}${n?`. Did you mean "${n}"?`:"."}`,f.USAGE)}return t}function ka(e){if(!e)return;let t=e.trim().toLowerCase();if(!mn.includes(t)){let n=_o(t,mn);throw new p(`Calendar format must be one of ${mn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,f.USAGE)}return t}function Rf(e,t){let n=ka(e.format);if(t.json&&n&&n!=="json")throw new p("Cannot combine --json with --format markdown|toon",f.USAGE);return t.json?"json":n??"markdown"}function Sa(e,t){if(e===void 0)return;let n=L(e,t);if(!n){let r=t.definitions.map(i=>i.id);throw new p(`Calendar status filter must be one of ${r.join("|")}`,f.USAGE)}return n}function Ea(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new p("Calendar assignee filter must be one of assigned|unassigned",f.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new p(`Invalid calendar assignee filter "${e}". Allowed: assigned|unassigned`,f.USAGE);return t}function vt(e){return new Date(e).toISOString().slice(0,10)}function wo(e,t){if(!t||t==="UTC")return vt(e);try{let n=new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(e)),r=n.find(s=>s.type==="year")?.value,i=n.find(s=>s.type==="month")?.value,o=n.find(s=>s.type==="day")?.value;if(r&&i&&o)return`${r}-${i}-${o}`}catch{}return vt(e)}function yn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function K(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function vo(e){let t=new Date(yn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return K(t.toISOString(),r)}function Ca(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function Ia(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function xa(e,t){return E(e,t)>=0?e:t}function mo(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function fo(e,t){e.set(t,(e.get(t)??0)+1)}function Ta(e){if(!e)return null;let t=[`freq=${e.freq}`];if(e.interval!==void 0&&t.push(`interval=${e.interval}`),e.count!==void 0&&t.push(`count=${e.count}`),e.until&&t.push(`until=${e.until}`),e.by_weekday&&e.by_weekday.length>0){let n=[...e.by_weekday].sort((r,i)=>de(r)-de(i));t.push(`by_weekday=${n.join("|")}`)}if(e.by_month_day&&e.by_month_day.length>0){let n=[...e.by_month_day].sort((r,i)=>r-i);t.push(`by_month_day=${n.join("|")}`)}if(e.exdates&&e.exdates.length>0){let n=[...e.exdates].sort((r,i)=>r.localeCompare(i));t.push(`exdates=${n.join("|")}`)}return t.join(",")}function bo(e,t,n,r){let i=new Date(Date.UTC(e,t,n,r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds()));if(!(i.getUTCFullYear()!==e||i.getUTCMonth()!==t||i.getUTCDate()!==n))return i.toISOString()}function ko(e){return ga[new Date(e).getUTCDay()]}function Ra(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function Aa(e){let t=new Set;for(let n of e??[]){let r=Ra(n);r&&t.add(r)}return t}function Da(e,t,n,r,i){let o=e??K(n,-(r??_a)),s=t??K(e??n,i??ya);return{start:o,end:E(s,o)>0?s:K(o,1)}}function Fa(e,t,n,r){let i=t.by_weekday!==void 0?[...t.by_weekday]:[ko(e)],o=t.by_month_day!==void 0?[...t.by_month_day]:[new Date(e).getUTCDate()];return{startAt:e,startDate:new Date(e),window:n,maxOccurrences:r??wa,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:Aa(t.exdates),weekdayFilter:t.by_weekday!==void 0?new Set(t.by_weekday):void 0,monthDayFilter:t.by_month_day!==void 0?new Set(t.by_month_day):void 0,sortedWeekdays:[...new Set(i)].sort((s,a)=>de(s)-de(a)),sortedMonthDays:[...new Set(o)].sort((s,a)=>s-a),occurrences:[],produced:0}}function bt(e,t){return E(t,e.startAt)<0?"continue":e.until&&E(t,e.until)>0||E(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,E(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function kt(e,t){let n=ko(t),r=new Date(t).getUTCDate(),i=!e.weekdayFilter||e.weekdayFilter.has(n),o=!e.monthDayFilter||e.monthDayFilter.has(r);return i&&o}function Ma(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!(kt(e,t)&&bt(e,t)==="stop");n+=1)t=K(t,e.interval);return e.occurrences}function $a(e,t,n){let r=de(n),i=K(t,r),o=new Date(i);return new Date(Date.UTC(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate(),e.startDate.getUTCHours(),e.startDate.getUTCMinutes(),e.startDate.getUTCSeconds(),e.startDate.getUTCMilliseconds())).toISOString()}function Oa(e){let t=vo(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=K(t,n*e.interval*7);for(let i of e.sortedWeekdays){let o=$a(e,r,i);if(kt(e,o)&&bt(e,o)==="stop")return e.occurrences}}return e.occurrences}function La(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let i=new Date(Date.UTC(t,n+r*e.interval,1,0,0,0,0));for(let o of e.sortedMonthDays){let s=bo(i.getUTCFullYear(),i.getUTCMonth(),o,e.startDate);if(!(!s||!kt(e,s))&&bt(e,s)==="stop")return e.occurrences}}return e.occurrences}function Na(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let i=t+r*e.interval;for(let o of e.sortedMonthDays){let s=bo(i,n,o,e.startDate);if(!(!s||!kt(e,s))&&bt(e,s)==="stop")return e.occurrences}}return e.occurrences}function Pa(e,t,n,r){let i=Fa(e,t,n,r);return t.freq==="daily"?Ma(i):t.freq==="weekly"?Oa(i):t.freq==="monthly"?La(i):Na(i)}function So(e){return[...e].sort((t,n)=>{let r=E(t.at,n.at);if(r!==0)return r;let i=t.item_priority-n.item_priority;if(i!==0)return i;let o=t.item_id.localeCompare(n.item_id);if(o!==0)return o;let s=t.kind.localeCompare(n.kind);if(s!==0)return s;let a=String(t.event_title).localeCompare(String(n.event_title));return a!==0?a:String(t.reminder_text).localeCompare(String(n.reminder_text))})}function _n(e){return{item_id:e.id,item_title:e.title,item_type:e.type,item_status:e.status,item_priority:e.priority,item_assignee:e.assignee??null,item_deadline:e.deadline??null,item_tags:e.tags}}function ja(e){return e.deadline?{at:e.deadline,date:vt(e.deadline),kind:"deadline",reminder_text:null,event_title:null,event_end:null,event_location:null,event_all_day:null,event_timezone:null,event_recurring:null,event_recurrence_rule:null,..._n(e),item_deadline:e.deadline}:null}function Ua(e){return(e.reminders??[]).map(t=>({at:t.at,date:vt(t.at),kind:"reminder",reminder_text:t.text,event_title:null,event_end:null,event_location:null,event_all_day:null,event_timezone:null,event_recurring:null,event_recurrence_rule:null,..._n(e)}))}function Ba(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function qa(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function Ga(e,t,n,r){let i=Ta(t.recurrence),o=Ba(t.start_at,t.end_at);return(t.recurrence?Pa(t.start_at,t.recurrence,n,r):[t.start_at]).map(s=>({at:s,date:t.all_day===!0?s.slice(0,10):wo(s,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:qa(s,t,o),event_location:t.location??null,event_all_day:t.all_day??null,event_timezone:t.timezone??null,event_recurring:!!t.recurrence,event_recurrence_rule:i,..._n(e)}))}function Wa(e,t,n,r){let i=[];for(let o of e){let s=n.has("deadlines")?ja(o):null;s&&i.push(s),n.has("reminders")&&i.push(...Ua(o));for(let a of n.has("events")?o.events??[]:[])i.push(...Ga(o,a,t,r))}return So(i)}function Ha(e,t,n,r,i){let o=qi(t.type,n),s=t.tag?.trim().toLowerCase(),a=Bi(t.priority),c=Sa(t.status,r),d=t.assignee?.trim(),l=Ea(t.assigneeFilter),u=t.sprint?.trim(),m=t.release?.trim();if(d&&(d.toLowerCase()==="none"||d.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',f.USAGE);if(d!==void 0&&l==="unassigned")throw new p("Cannot combine --assignee with --assignee-filter unassigned",f.USAGE);return e.filter(h=>za(h,{typeFilter:o,tagFilter:s,priorityFilter:a,statusFilter:c,assigneeFilter:d,assigneeModeFilter:l,sprintFilter:u,releaseFilter:m,runtimeFieldFilters:i}))}function za(e,t){return Ka(e,t)&&Va(e,t)&&mt(e,t.runtimeFieldFilters)}function Ka(e,t){return!(t.typeFilter&&e.type!==t.typeFilter||t.tagFilter&&!e.tags.some(n=>n.trim().toLowerCase()===t.tagFilter)||t.priorityFilter!==void 0&&e.priority!==t.priorityFilter||t.statusFilter&&e.status!==t.statusFilter)}function Va(e,t){return!(t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee||t.assigneeFilter!==void 0&&e.assignee!==t.assigneeFilter||t.sprintFilter!==void 0&&e.sprint!==t.sprintFilter||t.releaseFilter!==void 0&&e.release!==t.releaseFilter)}function Qa(e,t,n){return!(t&&E(e.at,t)<0||n&&E(e.at,n)>=0)}function pn(e,t,n){return e.trim().toLowerCase()==="today"?yn(t):G(e,new Date(t),n)}function Ya(e,t,n){let r=t.date?pn(t.date,n,"--date"):n,i=t.past===!0,o=t.fullPeriod===!0,s=t.from?pn(t.from,n,"--from"):void 0,a=t.to?pn(t.to,n,"--to"):void 0;if(s&&a&&E(s,a)>=0)throw new p("Calendar --from must be before --to",f.USAGE);if(e!=="agenda"&&(t.from!==void 0||t.to!==void 0))throw new p("--from and --to are only supported for --view agenda",f.USAGE);if(e==="agenda")return Xa(r,t,n,i,o,s,a);if(e==="day"){let d=yn(r);return hn(r,n,i,o,d,K(d,1))}if(e==="week"){let d=vo(r);return hn(r,n,i,o,d,K(d,7))}let c=Ca(r);return hn(r,n,i,o,c,Ia(r))}function Xa(e,t,n,r,i,o,s){if(i)throw new p("--full-period is only supported for --view day|week|month. For agenda windows, use --from and --to.",f.USAGE);return{anchor:e,start:o??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function hn(e,t,n,r,i,o){let s=n||r;return{anchor:e,start:s?i:xa(i,t),end:o,periodStart:i,periodEnd:o,fullPeriod:s}}function Ja(e){let t=new Map;for(let n of e){let r=t.get(n.date)??[];r.push(n),t.set(n.date,r)}return[...t.entries()].sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>({date:n,count:r.length,events:So(r)}))}function Za(e){let t=new Set,n=new Map,r=new Map,i=0,o=0,s=0,a=0;for(let c of e)t.add(c.item_id),fo(n,c.item_type),fo(r,c.item_status),c.kind==="deadline"?i+=1:c.kind==="reminder"?o+=1:(s+=1,c.event_recurring===!0&&(a+=1));return{events:e.length,items:t.size,deadlines:i,reminders:o,scheduled:s,by_kind:{deadline:i,reminder:o,event:s},by_type:mo(n),by_status:mo(r),recurring_events:a}}function ec(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function Eo(e,t){if(t&&t!=="UTC")try{let n=new Intl.DateTimeFormat("en-GB",{timeZone:t,hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).formatToParts(new Date(e)),r=n.find(o=>o.type==="hour")?.value,i=n.find(o=>o.type==="minute")?.value;if(r&&i)return`${r}:${i}`}catch{}return`${new Date(e).toISOString().slice(11,16)}Z`}function gn(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function tc(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===wo(e.event_end,e.event_timezone)?Eo(e.event_end,e.event_timezone):e.event_end:null}function nc(e){let t=`${Eo(e.at,e.event_timezone)} [${e.kind}] ${e.item_id} type=${e.item_type} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder"){let n=e.reminder_text??"";return`${t} \u2014 ${n} reminder=${JSON.stringify(n)}`}if(e.kind==="event"){let n=[],r=e.event_title??e.item_title;e.event_title!==null&&e.event_title!==e.item_title&&(n.push(r),n.push(`title=${JSON.stringify(r)}`)),e.event_recurring&&(n.push("(recurring)"),n.push("recurring=true"));let i=tc(e);return i&&n.push(`end=${i}`),e.event_all_day!==null&&n.push(`all_day=${e.event_all_day?"true":"false"}`),e.event_timezone&&n.push(`timezone=${e.event_timezone}`),e.event_location&&(n.push(`@ ${e.event_location}`),n.push(`location=${JSON.stringify(e.event_location)}`)),e.event_recurrence_rule&&n.push(`recurrence=${e.event_recurrence_rule}`),e.reminder_text&&n.push(`description=${JSON.stringify(e.reminder_text)}`),`${t} \u2014 ${n.join(" ")}`}return t}function po(e,t){if(t&&t.length>0){e.push("### warnings");for(let n of t)e.push(`- ${n}`);e.push("")}}function Af(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${ec(e.range)}`),e.range.period_start&&e.range.period_end&&(t.push(`- period: ${e.range.period_start} -> ${e.range.period_end}`),t.push(`- period-mode: ${e.range.full_period?"full-period":"active-window"}`)),t.push(`- events: ${e.summary.events} (deadlines: ${e.summary.deadlines}, reminders: ${e.summary.reminders}, scheduled: ${e.summary.scheduled})`),t.push(`- items: ${e.summary.items}`),t.push(`- matching-events: ${e.total_count}; returned: ${e.count}; remaining: ${e.omitted_count} (summary: ${e.summary_scope})`),e.next_cursor&&t.push(`- continue: repeat the same query with --after ${e.next_cursor}`),t.push(`- by-kind: ${gn(e.summary.by_kind)}`),t.push(`- by-type: ${gn(e.summary.by_type)}`),t.push(`- by-status: ${gn(e.summary.by_status)}`),t.push(`- recurring-events: ${e.summary.recurring_events}`),t.push(""),e.events.length===0)return t.push(e.total_count===0?"No calendar events matched the selected filters.":"No calendar events returned on this page. Repeat the same query with --limit 1 or greater to retrieve matching events."),t.push(""),po(t,e.warnings),ho(t.join(`
2
- `));for(let n of e.days){t.push(`## ${n.date} (${n.count})`);for(let r of n.events)t.push(`- ${nc(r)}`);t.push("")}return po(t,e.warnings),ho(t.join(`
3
- `))}function Df(e){return ha(e)}function ho(e){let t=e.length;for(;t>0&&e[t-1]===`
4
- `;)t-=1;return e.slice(0,t)}function rc(e){let t=wt("calendar",e.after),n=ba(e.view),r=Ya(n,e,t),i=W(e.limit),o=va(e.include),s=fn(e.recurrenceLookaheadDays,"Calendar recurrence lookahead days"),a=fn(e.recurrenceLookbackDays,"Calendar recurrence lookback days"),c=fn(e.occurrenceLimit,"Calendar occurrence limit");if(c!==void 0&&c<1)throw new p("Calendar occurrence limit must be >= 1",f.USAGE);let d=o.has("events")&&!o.has("deadlines")&&!o.has("reminders"),l=e.to!==void 0||s!==void 0||a!==void 0||c!==void 0,u=d&&!l;return{nowValue:t,view:n,rangeBounds:r,limit:i,includeSources:o,occurrenceLimit:c,recurrenceLookaheadDays:u?yo:s,recurrenceLookbackWindowDays:u&&a===void 0?0:a,eventsOnlyCapApplied:u}}function ic(e,t){t&&e.push(`recurring_events_default_cap_applied:lookback=0d,lookahead=${yo}d -- use --recurrence-lookback-days/--recurrence-lookahead-days or --to for wider range`)}function go(e,t){return{type:e.type??null,tag:e.tag??null,priority:e.priority??null,status:e.status??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,runtime_filters:t,limit:e.limit??null,include:e.include??null,full_period:e.fullPeriod===!0?"true":null,recurrence_lookahead_days:e.recurrenceLookaheadDays??null,recurrence_lookback_days:e.recurrenceLookbackDays??null,occurrence_limit:e.occurrenceLimit??null}}function oc(e,t){return{start:t.start??null,end:t.end??null,period_start:t.periodStart??null,period_end:t.periodEnd??null,full_period:t.fullPeriod,past:e.past===!0,from:e.from??null,to:e.to??null}}async function Co(e,t){let n=R(process.cwd(),t.path);await q(n);let r=rc(e),i=await M(n),o=P(i.schema),s=X(i.schema),a=ut(e,s,"calendar"),c=F(i,C()),d=[];ic(d,r.eventsOnlyCapApplied);let l=await he(n,i.item_format,c.type_to_folder,d,i.schema),u=Ha(l,e,c,o,a),m=Da(r.rangeBounds.start,r.rangeBounds.end,r.nowValue,r.recurrenceLookbackWindowDays,r.recurrenceLookaheadDays),h=Wa(u,m,r.includeSources,r.occurrenceLimit).filter(k=>Qa(k,r.rangeBounds.start,r.rangeBounds.end)),{rows:g,..._}=De(h,{command:"calendar",after:e.after,clock:r.nowValue,limit:r.limit,query:{pmRoot:n,view:r.view,range:r.rangeBounds,filters:{...go(e,a),limit:void 0},recurringWindow:m,occurrenceLimit:r.occurrenceLimit}}),y=Ja(g),v=[...new Set(d)].sort((k,w)=>k.localeCompare(w));return{view:r.view,output_default:"markdown",now:r.nowValue,anchor:r.rangeBounds.anchor,range:oc(e,r.rangeBounds),filters:go(e,a),..._,summary_scope:"returned_rows",summary:Za(g),events:g,days:y,...v.length>0?{warnings:v}:{}}}import ac from"node:fs/promises";import To 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]="2e0c4f91-ea56-5bec-b071-448eff719fec")}catch{}})();var wn={version:1,aliases:{}};function St(e=[]){let t=new Set(Ie),n=r=>{/^[a-z0-9]+(?:-[a-z0-9]+)*$/u.test(r)&&t.add(r)};for(let r of e){for(let i of Object.keys(r.provenance_environment_keys??{}))n(i);for(let i of Object.keys(r.provenance_resolvers??{}))n(i);for(let i of r.provenance_unavailable_dimensions??[])n(i)}return[...t].sort()}function Io(e){if(e===void 0)return;let t=(typeof e=="string"?[e]:e).flatMap(n=>n.split(",")).map(n=>n.trim()).filter(n=>n.length>0);return t.length===0?void 0:new Set(t)}function vn(e,t){if(e.agent_harness?.trim())return{agent_harness:e.agent_harness,harness_source:"recorded"};let n=t.aliases[e.author];return n?{agent_harness:n,harness_source:"vocabulary"}:{harness_source:"unresolved"}}function sc(e,t=Ie){let n=new Set(t),r=new Map,i=e.provenance===void 0?[]:typeof e.provenance=="string"?[e.provenance]:e.provenance;for(let o of i.flatMap(s=>s.split(","))){let s=o.indexOf("=");if(s<0)throw new p(`Provenance predicate must use dimension=value; received "${o.trim()}".`,f.USAGE,{code:"invalid_provenance_predicate"});let a=o.slice(0,s).trim().toLowerCase(),c=o.slice(s+1).trim();if(!n.has(a))throw new p(`Unknown provenance dimension "${a||o.trim()}". Declared dimensions: ${[...n].sort().join(", ")}.`,f.USAGE,{code:"unknown_provenance_dimension"});if(c.length===0)throw new p(`Provenance predicate must use dimension=value; received "${o.trim()}".`,f.USAGE,{code:"invalid_provenance_predicate"});let d=r.get(a)??new Set;d.add(c),r.set(a,d)}return r}function Et(e,t=wn,n={}){let r=vn(e,t);return{...n.itemId===void 0?{}:{item_id:n.itemId},...n.version===void 0?{}:{version:n.version},ts:e.ts,op:e.op,author:e.author,...e.author_source===void 0?{}:{author_source:e.author_source},...r,vocabulary_version:t.version,...e.agent_instance===void 0?{}:{agent_instance:e.agent_instance},agent_provenance:e.agent_provenance??{},...e.message===void 0?{}:{message:e.message}}}function Ct(e,t=wn,n=Ie){let r=Io(e.harness),i=Io(e.agentInstance),o=sc(e,n);return s=>{let a=vn(s,t).agent_harness;if(r&&(!a||!r.has(a))||i&&!i.has(s.agent_instance??""))return!1;for(let[c,d]of o){let l=s.agent_provenance?.[c];if(!l||!d.has(l.value))return!1}return!0}}function It(e,t=wn,n=Ie){let r=new Set(n),i=new Map,o=0;for(let s of e){for(let a of Object.keys(s.agent_provenance??{}))r.add(a);vn(s,t).agent_harness?o+=1:i.set(s.author,(i.get(s.author)??0)+1)}return{entries:e.length,vocabulary_version:t.version,harness:{resolved:o,unresolved:e.length-o,unresolved_authors:[...i].map(([s,a])=>({author:s,entries:a})).sort((s,a)=>a.entries-s.entries||s.author.localeCompare(a.author)).slice(0,20)},dimensions:[...r].sort().map(s=>{let a=0,c=0;for(let d of e){let l=d.agent_provenance?.[s];l===null?c+=1:l!==void 0&&(a+=1)}return{dimension:s,observed:a,unavailable:c,legacy_missing:e.length-a-c}})}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="aa1ede64-e578-57da-9194-1cd646cee915")}catch{}})();var cc=20,dc=5,lc=15,uc="-24h";function Kf(e){let t={...e};return t.full===!0?(t.raw=!0,t.compact=!1):t.raw===!0&&t.compact===void 0&&(t.compact=!0),delete t.full,t}var mc={digest:"activity_digest",compact:"compact_activity",provenance:"provenance_activity",full:"activity"};function bn(e,t){if(e===void 0)return;let n=e.trim();if(n.length===0)throw new p(`${t} must not be empty`,f.USAGE);return n}function xo(e,t,n){if(e===void 0)return;let r=e.trim();if(r.length===0)throw new p("Activity time bounds must not be empty",f.USAGE);let i=n==="--from"&&/^\d+[hdwm]$/iu.test(r)?`-${r}`:r;return G(i,new Date(t),n)}function fc(e,t,n){return!(e.ts.length===0&&(t||n)||t&&E(e.ts,t)<0||n&&E(e.ts,n)>=0)}function Fe(e,t=""){return typeof e=="string"?e:t}function pc(e,t){return{...t,id:e,ts:Fe(t.ts),author:Fe(t.author,"unknown"),op:Fe(t.op,"unknown"),patch:Array.isArray(t.patch)?t.patch:[],before_hash:Fe(t.before_hash),after_hash:Fe(t.after_hash)}}function hc(e){return[...e].sort((t,n)=>{let r=n.ts.localeCompare(t.ts);if(r!==0)return r;let i=t.id.localeCompare(n.id);return i!==0?i:t.op.localeCompare(n.op)})}async function gc(e){try{return(await ac.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort((t,n)=>t.localeCompare(n))}catch(t){if(jr(t))return[];throw t}}function yc(e){return e.raw!==!0&&e.compact!==!0&&e.provenance!==!0?"digest":e.provenance===!0?"provenance":e.compact===!0||e.raw===!0&&e.compact!==!1?"compact":"full"}function _c(e,t,n){if(e.unbounded!==!0)return t!==void 0?t:n==="digest"?lc:n==="compact"?cc:dc}function wc(e,t,n){let r=t==="digest",i=xo(e.to??(r||e.unbounded!==!0?n:void 0),n,"--to"),o=xo(e.from??(r?uc:void 0),e.from===void 0&&r?i:n,"--from");if(o&&i&&E(o,i)>=0)throw new p("Activity --from must be before --to",f.USAGE);let s=pe(e.limit);if(e.unbounded===!0&&s!==void 0)throw new p("Activity --unbounded cannot be combined with --limit",f.USAGE);return{id:bn(e.id,"Activity --id"),op:bn(e.op,"Activity --op"),author:bn(e.author,"Activity --author"),from:o,to:i,limit:_c(e,s,t),limitSource:e.unbounded===!0||s!==void 0?"explicit":"default",harness:e.harness,agentInstance:e.agentInstance,provenance:e.provenanceFilter}}async function vc(e){let t=R(process.cwd(),e.path);return await q(t),{pmRoot:t,settings:await M(t)}}async function bc(e){let t=F(e.settings,C()),n=await he(e.pmRoot,e.settings.item_format,t.type_to_folder,void 0,e.settings.schema);await Ei({pmRoot:e.pmRoot,settings:e.settings,itemIds:n.map(i=>i.id),commandLabel:"activity"});let r=To.join(e.pmRoot,"history");return await Ce({path:r,scope:"project"}),{historyDir:r,itemsById:new Map(n.map(i=>[i.id,{title:i.title,type:i.type,status:i.status}]))}}function kc(e,t,n){return n.op&&e.op!==n.op||n.author&&e.author!==n.author?!1:fc(t,n.from,n.to)}async function Sc(e,t){let n=[];for(let r of await gc(e)){let i=r.slice(0,-6);if(t.id&&i!==t.id)continue;let o=await te(To.join(e,r),i);for(let s of o){let a=pc(i,s);kc(s,a,t)&&n.push(a)}}return n}function Ec(e){return e.map(t=>({id:t.id,op:t.op,ts:t.ts,author:t.author,...t.message?{msg:t.message}:{}}))}function Cc(e){let t=[...e.entries()].sort(([r,i],[o,s])=>s-i||r.localeCompare(o)),n=t.slice(0,4).map(([r,i])=>`${r}:${i}`);return t.length>n.length&&n.push(`+${t.length-n.length}`),n.join(",")}function Ic(e,t){let n=new Map;for(let r of e){let i=n.get(r.id);if(i===void 0){n.set(r.id,{firstTs:r.ts,lastTs:r.ts,eventCount:1,operations:new Map([[r.op,1]])});continue}i.eventCount+=1,E(r.ts,i.firstTs)<0&&(i.firstTs=r.ts),E(r.ts,i.lastTs)>0&&(i.lastTs=r.ts),i.operations.set(r.op,(i.operations.get(r.op)??0)+1)}return[...n.entries()].map(([r,i])=>{let o=t.get(r);return{id:r,type:o?.type??"unknown",status:o?.status??"unknown",title:(o?.title??"(item metadata unavailable)").slice(0,160),event_count:i.eventCount,first_ts:i.firstTs,last_ts:i.lastTs,operations:Cc(i.operations)}}).sort((r,i)=>E(i.last_ts,r.last_ts)||r.id.localeCompare(i.id))}function xc(e){let t=new Map;for(let i of e)t.set(i.op,(t.get(i.op)??0)+1);let n=[...t.entries()].sort((i,o)=>o[1]-i[1]||i[0].localeCompare(o[0])),r=n.slice(0,8);return r.length<n.length&&r.push([`+${String(n.length-r.length)}`,n.slice(r.length).reduce((i,[,o])=>i+o,0)]),Object.fromEntries(r)}function Tc(e,t,n,r,i){if(e==="digest"){let{rows:a,...c}=De(Ic(t,r),n);return{rows:{activity_digest:a},compact:!1,page:c}}let{rows:o,...s}=De(t,n);return e==="compact"?{rows:{compact_activity:Ec(o)},compact:!0,page:s}:e==="provenance"?{rows:{provenance_activity:o.map(i)},compact:!1,page:s}:{rows:{activity:o},compact:!1,page:s}}async function Ro(e,t){let n=await vc(t),r=yc(e),i=wt("activity",e.after),o=wc(e,r,i),s=await bc(n),a=St(n.settings.agent_identity.harness_signals),c=n.settings.agent_identity.identity_vocabulary,d=Ct({harness:o.harness,agentInstance:o.agentInstance,provenance:o.provenance},c,a),l=hc(await Sc(s.historyDir,o)).filter(d),u=Tc(r,l,{command:"activity",after:e.after,clock:i,limit:o.limit,query:{pmRoot:n.pmRoot,projectionMode:r,filters:{...o,limit:void 0,limitSource:void 0},matching_activity_digest:r==="digest"?ln(l):void 0,vocabulary:c,provenanceDimensions:a}},s.itemsById,m=>Et(m,c,{itemId:m.id}));return{...u.rows,compact:u.compact,projection:{mode:r,row_key:mc[r]},omission_receipt:tt("activity",r),...u.page,window:{anchor:i,from:o.from??null,to:o.to??null},limit:o.limit??null,...r==="digest"?{activity_summary:{window:{from:o.from,to:o.to},event_count:l.length,item_count:u.page.total_count,author_count:new Set(l.map(m=>m.author)).size,operation_counts:xc(l)}}:{},...e.provenanceSummary===!0?{provenance_summary:It(l,c,a)}:{},applied_bound:{kind:o.limit===void 0?"unbounded":"limit",source:o.limitSource,value:o.limit??null}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9cdfc765-7370-57bb-a4dc-be2df8aa1e6f")}catch{}})();var Ao="1970-01-01T00:00:00.000Z";function Me(e){if(typeof e!="string")return null;let t=e.trim();if(!ii(t)&&!/^\d{4}-\d{2}-\d{2}$/u.test(t))return null;try{return G(t,new Date(Number.NaN),"context signal recency coordinate")}catch{return null}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="74b476d9-5f30-5135-9539-5fe3e864c60f")}catch{}})();var kn=["structural","recency","activity_density","graph_proximity","claim_focus","priority_pressure","risk_pressure","deadline_pressure","knowledge_density","author_affinity","usage_affinity","semantic_similarity"],Rc=Symbol("no-context-author"),Ac=Symbol("no-item-assignee");function Do(e,t){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return n.length>0?n:t}function Dc(e){if(typeof e!="string")return;let t=/^v?(\d{4})\.(\d{1,2})\.(\d{1,2})(?:$|[-+])/u.exec(e.trim());if(!t)return;let n=Number(t[1]),r=Number(t[2]),i=Number(t[3]),o=new Date(Date.UTC(n,r-1,i));return o.getUTCFullYear()===n&&o.getUTCMonth()===r-1&&o.getUTCDate()===i?o.toISOString():void 0}function Fc(e){let t=Dc(e.release);return t!==void 0?{source:"release_cohort",coordinate:t}:{source:"created_at",coordinate:Me(e.created_at)??Ao}}function Mc(e){if(!["substantive_history","release_cohort","created_at"].includes(e.source)||(e.source==="substantive_history"?e.history_op!==void 0&&typeof e.history_op!="string"||e.event_class!==void 0&&e.event_class!=="substantive":e.history_op!==void 0||e.event_class!==void 0))throw new TypeError("Context signal recency provenance must match its source");let t=Me(e.coordinate);if(t===null)throw new TypeError("Context signal recency coordinate must be a valid absolute timestamp with millisecond precision");return{...e,coordinate:t}}function $c(e,t){let n=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(n)?1-Math.min(Math.max(n,0),t)/t:0}function Oc(e,t){let n=typeof e=="string"?Date.parse(e):e instanceof Date?e.getTime():typeof e=="number"?e:Number.NaN;if(!Number.isFinite(n)||!Number.isFinite(t))return 0;let r=(n-t)/864e5;return r<=0?1:1/(1+r/30)}function Lc(e){let t=typeof e=="string"?e.trim().toLowerCase():void 0;return t==="critical"||t==="high"?1:t==="medium"?.5:t==="low"?.1:0}function xt(e,t,n){return e?.[t]??n}function Tt(e,t){let n=new Map(e.map(d=>{let l=t.recencyEvidence?.[d.id];return[d.id,l===void 0?Fc(d):Mc(l)]})),r=[...e].sort((d,l)=>{let u=n.get(d.id).coordinate,m=n.get(l.id).coordinate;return E(m,u)||d.id.localeCompare(l.id)}),i=new Map(r.map((d,l)=>[d.id,l])),o=Math.max(e.length-1,1),s=Do(t.author,Rc),a=L("in_progress",t.statusRegistry),c=Date.parse(t.now);return e.map(d=>{let l=Do(d.assignee,Ac)===s,u=(d.comments?.length??0)+(d.notes?.length??0)+(d.learnings?.length??0);return{id:d.id,item:d,signal_provenance:{recency:n.get(d.id)},signals:{recency:e.length===1?1:1-i.get(d.id)/o,activity_density:t.activityDensity?.[d.id],graph_proximity:xt(t.graphProximity,d.id,d.parent?.3:0),claim_focus:xt(t.claimFocus,d.id,I(d.status,t.statusRegistry)===a?1:l?.75:0),priority_pressure:$c(d.priority,4),risk_pressure:Lc(d.risk),deadline_pressure:Oc(d.deadline,c),knowledge_density:xt(t.knowledgeDensity,d.id,Math.min(u/5,1)),author_affinity:xt(t.authorAffinity,d.id,l?1:0),usage_affinity:t.usageAffinity?.[d.id],semantic_similarity:t.semanticSimilarity?.[d.id]}}})}var Nc="context_relevance",Pc={structural:.4,recency:.35,activity_density:.25,graph_proximity:.15,claim_focus:.6,priority_pressure:.35,risk_pressure:.2,deadline_pressure:.45,knowledge_density:.25,author_affinity:.2,usage_affinity:.3,semantic_similarity:.5},jc=new TextEncoder;function Uc(e){let t=new Set;for(let n of e){if(typeof n.id!="string"||n.id.trim().length===0||t.has(n.id))throw new TypeError("Context relevance candidates require unique non-empty ids");t.add(n.id);for(let[r,i]of Object.entries(n.signals??{})){if(r==="structural"||!kn.includes(r))throw new TypeError(`Unknown context relevance signal: ${r}`);if(i!==void 0&&(!Number.isFinite(i)||i<0||i>1))throw new TypeError(`Context relevance signal ${r} must be a finite number from 0 to 1`)}}}function Bc(e){let t={...Pc};for(let[n,r]of Object.entries(e??{}))r!==void 0&&kn.includes(n)&&(t[n]=r);for(let[n,r]of Object.entries(t))if(!Number.isFinite(r)||r<0)throw new TypeError(`Context relevance weight ${n} must be a finite non-negative number`);return t}function Mo(e,t={}){Uc(e);let n=Bc(t.weights),r=Math.max(e.length-1,1),i=new Set(["structural"]);for(let a of e)for(let[c,d]of Object.entries(a.signals??{}))d!==void 0&&i.add(c);let o=kn.filter(a=>i.has(a)),s=e.map((a,c)=>{let d={structural:e.length===1?1:1-c/r,...a.signals},l={},u=0,m=0;for(let h of o){let g=d[h];if(g===void 0)continue;let _=g*n[h];l[h]=_,u+=_,m+=n[h]}return{...a,baseline_rank:c+1,rank:0,score:m===0?0:u/m,contributions:l}});return s.sort((a,c)=>c.score-a.score||a.baseline_rank-c.baseline_rank),s.forEach((a,c)=>{a.rank=c+1}),{model:"default-weighted-v1",available_signals:o,ranked:s}}async function qc(e,t={}){let n=Mo(e,t);if(!t.scorer)return n;let r=await t.scorer({candidates:e,default_report:n}),i=new Map;for(let s of r){if(i.has(s.id)||!Number.isFinite(s.score))throw new TypeError("Context relevance scorer must return one finite score for every candidate");i.set(s.id,s.score)}if(i.size!==e.length||e.some(s=>!i.has(s.id)))throw new TypeError("Context relevance scorer must return one finite score for every candidate");let o=n.ranked.map(s=>{let a=i.get(s.id);return{...s,score:a,contributions:{custom:a}}});return o.sort((s,a)=>a.score-s.score||s.baseline_rank-a.baseline_rank),o.forEach((s,a)=>{s.rank=a+1}),{model:"custom",available_signals:n.available_signals,ranked:o}}async function Rt(e,t,n={}){let r=Mo(t,n),i=await Kr(Nc,{surface:e,candidates:t,default_report:r});if(!i.handled)return i.warnings.length>0?{...r,warnings:i.warnings}:r;if(!Array.isArray(i.result)||!i.result.every(o=>typeof o=="object"&&o!==null&&typeof o.id=="string"&&typeof o.score=="number"&&Number.isFinite(o.score)))return{...r,warnings:[...i.warnings,"extension_context_relevance_invalid_result"]};try{let o=await qc(t,{...n,scorer:()=>i.result});return i.warnings.length>0?{...o,warnings:i.warnings}:o}catch{return{...r,warnings:[...i.warnings,"extension_context_relevance_invalid_result"]}}}var Gc=["ndcg","reciprocal_rank","required_recall","continuity_coverage","token_budget_adherence"];function Fo(e,t){return e.length===0?1:e.filter(n=>t.has(n)).length/e.length}function Wc(e){if(!Number.isFinite(e.actual_tokens)||e.actual_tokens<0||!Number.isFinite(e.token_budget)||e.token_budget<=0)throw new TypeError("Context ranking token counts require actual_tokens >= 0 and token_budget > 0");let t=e.judgments??{},n=e.ranked_ids.map(d=>Math.max(0,t[d]??0)),r=Object.values(t).map(d=>Math.max(0,d)).sort((d,l)=>l-d).slice(0,n.length||1),i=d=>d.reduce((l,u,m)=>l+(2**u-1)/Math.log2(m+2),0),o=i(r),s=n.findIndex(d=>d>0),a=new Set(e.ranked_ids),c=e.actual_tokens<=e.token_budget;return{ndcg:o===0?1:i(n)/o,reciprocal_rank:s<0?0:1/(s+1),required_recall:Fo(e.required_ids??[],a),continuity_coverage:Fo(e.continuity_ids??[],a),token_budget_adherence:c?1:e.token_budget/e.actual_tokens,within_token_budget:c}}function Hc(e){return Math.ceil(jc.encode(JSON.stringify(e)).byteLength/4)}function zc(e){return Math.round(e*1e4)/1e4}function Kc(e,t){let n=t==="context"?[...e.high_level??[],...e.low_level??[],...e.blocked_fallback??[]].map(o=>o.id):[...e.recommended?[e.recommended]:[],...e.ready??[]].map(o=>o.id),r=new Set(n),i=(e.ranking?.items??[]).filter(o=>r.has(o.id)).map(o=>({id:o.id,contributions:o.contributions}));return{rankedIds:n,attribution:i}}async function Vc(e,t){if(e.id.trim().length===0||e.rationale.trim().length===0)throw new TypeError("Context evaluation scenarios require non-empty id and rationale values");let n=e.surface==="context"?await t.context({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"}):await t.next({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"});if(Jr(n)||n.read_output?.result_omitted===!0||n.context_intent?.result_omitted===!0)throw new p(`Cannot evaluate ${e.surface} scenario "${e.id}": the read omitted its useful result.`,f.USAGE,{code:"context_evaluation_read_incomplete",nextSteps:["Increase the read output budget or start a new shared output session, then rerun the scenario."]});let{rankedIds:r,attribution:i}=Kc(n,e.surface),o={...n,ranking:void 0},s=Hc(o);return{id:e.id,surface:e.surface,rationale:e.rationale,ranked_ids:r,actual_tokens:s,metrics:Wc({ranked_ids:r,judgments:e.judgments,required_ids:e.required_ids,continuity_ids:e.continuity_ids,actual_tokens:s,token_budget:e.token_budget}),attribution:i}}function Qc(e,t){if(e.length===0)throw new TypeError("Context evaluation requires at least one scenario report");let n=Gc;for(let o of n)if(!Number.isFinite(t[o]))throw new TypeError(`Context evaluation threshold ${o} must be a finite number`);let r=Object.fromEntries(n.map(o=>[o,zc(e.reduce((s,a)=>s+a.metrics[o],0)/e.length)])),i=n.filter(o=>r[o]<t[o]).map(o=>`${o}:${r[o]}<${t[o]}`);return{scenario_count:e.length,aggregate:r,scenarios:[...e],passed:i.length===0,failures:i}}async function ip(e,t,n){let r=[];for(let i of e)r.push(await Vc(i,t));return Qc(r,n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d07ec2dc-762a-58ab-83ee-734ca1bf76a7")}catch{}})();var Yc={balanced:{redundancyPenalty:.35,uncertaintyPenalty:.2},context:{redundancyPenalty:.45,uncertaintyPenalty:.15},next:{redundancyPenalty:.25,uncertaintyPenalty:.3}},Xc=["identity","summary","full"];function Jc(e){if(!e.id.trim()||!Number.isInteger(e.rank)||e.rank<1)throw new TypeError("Context packing candidates require a non-empty id and positive integer rank");if(!Number.isFinite(e.score)||e.score<0)throw new TypeError("Context packing candidate scores must be finite and non-negative");let t=Xc.map(n=>e.token_costs[n]);if(t.some(n=>!Number.isInteger(n)||n<1)||t[0]>t[1]||t[1]>t[2])throw new TypeError("Context projection costs must be positive monotone integers");if(e.uncertainty!==void 0&&(!Number.isFinite(e.uncertainty)||e.uncertainty<0))throw new TypeError("Context packing uncertainty must be finite and non-negative")}function Zc(e){if(!Number.isInteger(e.tokenBudget)||e.tokenBudget<1)throw new TypeError("Context packing tokenBudget must be a positive integer");let t=e.profile??"balanced",n=Yc[t];if(!n)throw new TypeError("Unknown context packing profile");let r=e.redundancyPenalty??n.redundancyPenalty,i=e.uncertaintyPenalty??n.uncertaintyPenalty;if(!Number.isFinite(r)||r<0||r>1||!Number.isFinite(i)||i<0)throw new TypeError("Context packing penalties must be finite and within their supported ranges");if(e.latencyBudgetMs!==void 0&&(!Number.isFinite(e.latencyBudgetMs)||e.latencyBudgetMs<=0))throw new TypeError("Context packing latencyBudgetMs must be positive");return{redundancy:r,uncertainty:i,profile:t}}function ed(e){let t=new Set;for(let n of e){if(Jc(n),t.has(n.id))throw new TypeError("Context packing candidates require unique ids");t.add(n.id)}return[...e].sort((n,r)=>n.rank-r.rank||n.id.localeCompare(r.id))}function td(e,t,n,r,i){let o=-1,s=0;for(let a=0;a<e.length;a+=1){if(a%128===0&&i()>=r)return{index:o,evaluated:s,timedOut:!0};let c=e[a];if(c.token_costs.identity>t)continue;s+=1;let d=o<0?void 0:e[o],l=n(c)/c.token_costs.identity,u=d===void 0?Number.NEGATIVE_INFINITY:n(d)/d.token_costs.identity;(l>u||l===u&&d!==void 0&&(c.rank<d.rank||c.rank===d.rank&&c.id.localeCompare(d.id)<0))&&(o=a)}return{index:o,evaluated:s,timedOut:!1}}function nd(e){let t=new Set,n=[],r=e.tokenBudget,i=d=>{let l=d.lineage??d.cluster,u=l&&t.has(l)?1-e.redundancyPenalty:1;return Math.max(0,(d.score-e.uncertaintyPenalty*(d.uncertainty??0))*u)},o=d=>{let l=d.token_costs.identity;n.push({...d,projection:"identity",tokens:l,marginal_value:i(d)}),r-=l;let u=d.lineage??d.cluster;u&&t.add(u)};for(let d of e.ordered.filter(l=>l.required))d.token_costs.identity<=r&&o(d);let s=e.ordered.filter(d=>!d.required),a=!0,c=0;for(;s.length>0;){let d=td(s,r,i,e.deadline,e.readClock);if(c+=d.evaluated,d.timedOut&&(a=!1),d.index<0||d.timedOut)break;o(s.splice(d.index,1)[0])}return{included:n,remaining:r,selectionComplete:a,evaluatedCandidates:c}}function rd(e,t){let n=t;for(let r of["summary","full"]){let i=r==="summary"?"identity":"summary",o=[...e].sort((s,a)=>{let c=s.token_costs[r]-s.token_costs[i],d=a.token_costs[r]-a.token_costs[i];return a.marginal_value/Math.max(d,1)-s.marginal_value/Math.max(c,1)||s.rank-a.rank||s.id.localeCompare(a.id)});for(let s of o){if(s.projection!==i)continue;let a=s.token_costs[r]-s.tokens;a>n||(s.projection=r,s.tokens+=a,n-=a)}}return n}function $o(e,t){let n=Zc(t),r=ed(e),i=t.readClock??performance.now.bind(performance),o=t.latencyBudgetMs===void 0?Number.POSITIVE_INFINITY:i()+t.latencyBudgetMs,s=nd({ordered:r,tokenBudget:t.tokenBudget,redundancyPenalty:n.redundancy,uncertaintyPenalty:n.uncertainty,deadline:o,readClock:i}),{included:a}=s,c=rd(a,s.remaining);a.sort((l,u)=>l.rank-u.rank||l.id.localeCompare(u.id));let d=new Set(a.map(l=>l.id));return{included:a,omitted_ids:r.filter(l=>!d.has(l.id)).map(l=>l.id),token_budget:t.tokenBudget,used_tokens:t.tokenBudget-c,remaining_tokens:c,complete:s.selectionComplete&&a.length===e.length&&a.every(l=>l.projection==="full"),selection_complete:s.selectionComplete,termination_reason:s.selectionComplete?"exhausted":"latency_budget",evaluated_candidates:s.evaluatedCandidates,latency_budget_ms:t.latencyBudgetMs??null,profile:n.profile,degradation_ladder:["full","summary","identity"]}}import $e from"node:fs/promises";import Oe from"node:path";import{createHash as Oo,randomUUID as id}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]="01eff51c-7656-5c3f-b0c0-28594fca8a1e")}catch{}})();var Sn=3,En=2,Lo=["recency","activity_density","graph_proximity","priority_pressure","risk_pressure","knowledge_density"],od=new Set(["substantive_history","release_cohort","created_at"]),sd={context_signal_store_invalid:{code:"context_signal_store_invalid",meaning:"The persisted context-signal snapshot was unreadable or invalid and was rebuilt from authoritative items.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot can be loaded without the warning."},context_signal_store_stale:{code:"context_signal_store_stale",meaning:"The persisted context-signal snapshot did not match the authoritative cursor or item corpus and was rebuilt.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot is now fresh."},context_signal_store_write_failed:{code:"context_signal_store_write_failed",meaning:"Context signals were rebuilt in memory, but the derived snapshot could not be persisted.",recovery_command:"pm context",recovery_effect:"Retry the derived snapshot write and confirm the warning clears after storage access is restored."}};function ge(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function No(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=1}function ad(e){let t={};for(let n of Lo){let r=e[n];if(r!==void 0){if(!No(r))throw new TypeError(`Context relevance signal ${n} must be a finite number from 0 to 1`);t[n]=r}}return t}function cd(e,t){let n=e.map(i=>[i.id,t(i)]),r=Math.max(0,...n.map(([,i])=>i));return Object.fromEntries(n.map(([i,o])=>[i,r===0?0:o/r]))}function dd(e){let t=new Map(e.map(i=>[i.id,0])),n=i=>{t.set(i,(t.get(i)??0)+1)};for(let i of e){typeof i.parent=="string"&&i.parent.trim()&&(n(i.id),n(i.parent.trim()));for(let o of i.dependencies??[])typeof o.id!="string"||!o.id.trim()||(n(i.id),n(o.id.trim()))}let r=Math.max(0,...t.values());return Object.fromEntries(e.map(i=>[i.id,r===0?0:t.get(i.id)/r]))}function Po(e,t){return{...t,activityDensity:t.activityDensity??cd(e,n=>(n.comments?.length??0)+(n.notes?.length??0)+(n.learnings?.length??0)+(n.test_runs?.length??0)),graphProximity:t.graphProximity??dd(e)}}function xn(e){let t=Oo("sha256");for(let{id:n,signal_provenance:{recency:r}}of[...e].sort((i,o)=>i.id.localeCompare(o.id)))t.update(JSON.stringify([n,r.source,r.coordinate,r.history_op??null,r.event_class??null]));return`sha256:${t.digest("hex")}`}function ld(e){if(!ge(e))return null;let t=e.signal_provenance;if(![typeof e.id=="string",ge(e.signals),ge(t)].every(Boolean))return null;let n=t.recency;if(!ge(n))return null;let r=Me(n.coordinate);if(r===null)return null;let i=new Set(Lo),o=Object.entries(e.signals);return!o.every(([s,a])=>i.has(s)&&No(a))||![typeof n.source=="string"&&od.has(n.source),["undefined","string"].includes(typeof n.history_op),[void 0,"substantive","maintenance"].includes(n.event_class),n.source==="substantive_history"?n.event_class===void 0||n.event_class==="substantive":n.history_op===void 0&&n.event_class===void 0].every(Boolean)?null:{id:e.id,signals:Object.fromEntries(o),signal_provenance:{recency:{source:n.source,coordinate:r,history_op:n.history_op,event_class:n.event_class}}}}function ud(e,t){let n=Array.from(e,ld);if(n.some(i=>i===null))return null;let r=n;return new Set(r.map(i=>i.id)).size!==r.length||r.some(i=>i.id.trim().length===0)||t!==xn(r)?null:r.sort((i,o)=>i.id.localeCompare(o.id))}function md(e){if(!ge(e)||e.format_version!==Sn||e.signal_set_version!==En||typeof e.source_cursor!="string"||e.source_cursor.trim().length===0||typeof e.recency_evidence_fingerprint!="string"||!/^sha256:[a-f0-9]{64}$/u.test(e.recency_evidence_fingerprint)||typeof e.generated_at!="string"||!Number.isFinite(Date.parse(e.generated_at))||e.source!=="derived_index"&&e.source!=="scan_fallback"||!Array.isArray(e.items))return null;let t=ud(e.items,e.recency_evidence_fingerprint);return t===null?null:{format_version:Sn,signal_set_version:En,source_cursor:e.source_cursor,recency_evidence_fingerprint:e.recency_evidence_fingerprint,generated_at:e.generated_at,source:e.source,items:t}}function jo(e){if(typeof e.sourceCursor!="string"||e.sourceCursor.trim().length===0)throw new TypeError("Context signal source cursor must be non-empty");if(!Number.isFinite(Date.parse(e.now)))throw new TypeError("Context signal snapshot clock must be a valid timestamp");if(e.source!=="derived_index"&&e.source!=="scan_fallback")throw new TypeError("Context signal snapshot source must be derived_index or scan_fallback")}function Uo(e,t,n=xn(e)){let r=e.map(({id:o})=>o);if(new Set(r).size!==r.length||r.some(o=>o.trim().length===0))throw new TypeError("Context signal snapshot item IDs must be unique and non-empty");let i=e.map(({id:o,signals:s,signal_provenance:a})=>({id:o,signals:ad(s),signal_provenance:a})).sort((o,s)=>o.id.localeCompare(s.id));return Object.freeze({format_version:Sn,signal_set_version:En,source_cursor:t.sourceCursor,recency_evidence_fingerprint:n,generated_at:t.now,source:t.source,items:Object.freeze(i.map(o=>Object.freeze(o)))})}function hp(e,t){return jo(t),Uo(Tt(e,Po(e,t)),t)}var Cn=class{filePath;constructor(t){if(typeof t!="string"||t.trim().length===0)throw new TypeError("Context signal store path must be non-empty");this.filePath=Oe.resolve(t)}async read(){try{return JSON.parse(await $e.readFile(this.filePath,"utf8"))}catch(t){if(ge(t)&&Xe(t))return null;throw t}}async write(t){let n=Oe.dirname(this.filePath);await $e.mkdir(n,{recursive:!0});let r=Oe.join(n,`.${Oe.basename(this.filePath)}.${id()}.tmp`);try{await $e.writeFile(r,`${JSON.stringify(t)}
5
- `,{encoding:"utf8",flag:"wx"}),await $e.rename(r,this.filePath)}finally{try{await $e.rm(r,{force:!0})}catch{}}}},In=class{adapter;constructor(t){this.adapter=t}async readOrRebuild(t,n){jo(n);let r=[],i=null;try{let m=await this.adapter.read();i=md(m),m!==null&&i===null&&r.push("context_signal_store_invalid")}catch{r.push("context_signal_store_invalid")}let o=t.map(m=>m.id).sort((m,h)=>m.localeCompare(h)),s=i?.items.map(m=>m.id)??[],a=Tt(t,Po(t,n)),c=xn(a),d=i!==null&&i.source_cursor===n.sourceCursor&&i.recency_evidence_fingerprint===c&&i.source===n.source&&s.length===o.length&&s.every((m,h)=>m===o[h]),l;if(d&&i!==null)l=i;else{i!==null&&r.push("context_signal_store_stale"),l=Uo(a,n,c);try{await this.adapter.write(l)}catch{r.push("context_signal_store_write_failed")}}let u=new Map(l.items.map(m=>[m.id,m]));return{snapshot:l,candidates:a.map(m=>({...m,signals:{...m.signals,...u.get(m.id)?.signals},signal_provenance:u.get(m.id).signal_provenance})),cache_status:d?"fresh":"rebuilt",warnings:r,warning_details:r.map(m=>sd[m])}}};function fd(e){let t=Oo("sha256");for(let n of[...e].sort((r,i)=>r.id.localeCompare(i.id)))t.update(JSON.stringify([n.id,n.updated_at,n.status,n.parent??null,n.priority??null,n.risk??null,(n.dependencies??[]).map(r=>r.id).sort(),n.comments?.length??0,n.notes?.length??0,n.learnings?.length??0,n.test_runs?.length??0]));return`scan:${t.digest("hex")}`}async function At(e,t){let n=t.sourceCursor!==void 0,r=t.source!==void 0;if(n!==r)throw new TypeError("Context signal source and source cursor must be provided together");if(t.storeKey!==void 0&&!/^[a-z0-9](?:[a-z0-9_-]*[a-z0-9])?$/u.test(t.storeKey))throw new TypeError("Context signal store key must be a filesystem-safe identifier");let i=n?null:await ft(t.pmRoot),o=t.sourceCursor??i?.source_cursor??fd(e),s=t.source??(i===null?"scan_fallback":"derived_index"),a=new In(new Cn(Oe.join(t.pmRoot,"runtime",t.storeKey?`context-signals-${t.storeKey}.json`:"context-signals.json"))),c=t.recencyEvidence??Object.fromEntries(Object.entries(await vi(t.pmRoot,e.map(d=>d.id))).map(([d,l])=>[d,{source:"substantive_history",coordinate:l.entry.ts,history_op:l.entry.op,event_class:"substantive"}]));return a.readOrRebuild(e,{...t,recencyEvidence:c,sourceCursor:o,source:s})}import pd from"node:path";import{createHash as hd}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]="61e27cd0-a444-5b66-a8e3-d81c76e4f8ae")}catch{}})();function Bo(e){return e.completed_at!==void 0?{resolved:!0,timestamp:e.completed_at,source:"completed_at",fallback:!1}:e.closed_at!==void 0?{resolved:!0,timestamp:e.closed_at,source:"closed_at",fallback:!0}:e.updated_at!==void 0?{resolved:!0,timestamp:e.updated_at,source:"updated_at",fallback:!0}:{resolved:!1}}import gd from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="df753f1d-cfc1-555e-a411-e1417eab0b53")}catch{}})();var qo=1,yd=1e4,Go=12;function _d(e){let t=new Date(e);return`${t.getUTCFullYear()}-Q${Math.floor(t.getUTCMonth()/3)+1}`}function wd(e,t){let n=new Set,r=e.parent;for(;r&&!n.has(r);){n.add(r);let i=t.get(r);if(!i)return;if(i.type.toLowerCase()==="epic")return i;r=i.parent}}function vd(e){let t=[...e.items].sort((i,o)=>o.completion.timestamp.localeCompare(i.completion.timestamp)||i.item.id.localeCompare(o.item.id)),n=new Set,r=0;for(let{item:i}of t){let o=i.resolution??i.close_reason;o?.trim()&&n.add(o.trim()),r+=(i.notes?.length??0)+(i.learnings?.length??0)}return{kind:e.kind,key:e.key,label:e.label,item_count:t.length,first_closed_at:t.at(-1).completion.timestamp,last_closed_at:t[0].completion.timestamp,representative_items:t.slice(0,5).map(({item:{id:i,title:o}})=>({id:i,title:o})),outcomes:[...n].sort().slice(0,5),knowledge_entries:r}}function bd(e,t){if(!t.sourceCursor.trim())throw new TypeError("Workspace memory source cursor must be non-empty");if(!Number.isFinite(Date.parse(t.now)))throw new TypeError("Workspace memory clock must be a valid timestamp");let n=e.filter(o=>t.statusRegistry.terminal_done_statuses.has(I(o.status,t.statusRegistry))).map(o=>{let s=Bo(o);if(!s.resolved)throw new TypeError(`Completed item ${o.id} has no reporting timestamp`);return{item:o,completion:s}}),r=new Map(e.map(o=>[o.id,o])),i=new Map;for(let o of n){let{item:s,completion:a}=o,c=_d(a.timestamp),d=`epoch:${c}`,l=i.get(d)??{kind:"epoch",key:c,label:c,items:[]};l.items.push(o),i.set(d,l);let u=wd(s,r);if(u){let m=`epic:${u.id}`,h=i.get(m)??{kind:"epic",key:u.id,label:u.title,items:[]};h.items.push(o),i.set(m,h)}}return{format_version:qo,source_cursor:t.sourceCursor,source_item_count:e.length,generated_at:t.now,completion_time_sources:n.reduce((o,{completion:s})=>(o[s.source]+=1,o),{completed_at:0,closed_at:0,updated_at:0}),rollups:[...i.values()].map(vd).sort((o,s)=>s.last_closed_at.localeCompare(o.last_closed_at)||o.kind.localeCompare(s.kind)||o.key.localeCompare(s.key))}}function kd(e){return typeof e=="object"&&e!==null&&"id"in e&&typeof e.id=="string"&&e.id.length>0&&"title"in e&&typeof e.title=="string"}function Sd(e){if(typeof e!="object"||e===null)return!1;let t=e,n=[t.key,t.label].every(i=>typeof i=="string"&&i.length>0),r=[t.first_closed_at,t.last_closed_at].every(i=>typeof i=="string"&&Number.isFinite(Date.parse(i)));return(t.kind==="epoch"||t.kind==="epic")&&n&&Number.isSafeInteger(t.item_count)&&t.item_count>0&&r&&Array.isArray(t.representative_items)&&t.representative_items.every(kd)&&Array.isArray(t.outcomes)&&t.outcomes.every(i=>typeof i=="string")&&Number.isSafeInteger(t.knowledge_entries)&&t.knowledge_entries>=0}function Ed(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return t.format_version!==qo||typeof t.source_cursor!="string"||!t.source_cursor.trim()||!Number.isSafeInteger(t.source_item_count)||t.source_item_count<0||typeof t.generated_at!="string"||!Number.isFinite(Date.parse(t.generated_at))||!Array.isArray(t.rollups)?null:t.rollups.every(Sd)?t:null}function Cd(e){return`scan:${hd("sha256").update(et(e.map(t=>[t.id,t.updated_at,t.status,t.parent]).sort(([t],[n])=>String(t).localeCompare(String(n))))).digest("hex")}`}async function Id(e,t,n){return n!==void 0?n:(await ft(t))?.source_cursor??Cd(e)}async function xd(e){try{let t=Ed(JSON.parse(await gd.readFile(e,"utf8")));return{snapshot:t,invalid:t===null}}catch(t){return{snapshot:null,invalid:!(typeof t=="object"&&t!==null&&"code"in t&&Xe(t))}}}async function Dt(e,t){let n=Math.max(1,Math.floor(t.minimumItems??yd));if(e.length<n)return{snapshot:null,cache_status:"skipped",warnings:[]};let r=await Id(e,t.pmRoot,t.sourceCursor),i=pd.join(t.pmRoot,"runtime","workspace-memory.json"),o=[],s=await xd(i),a=s.snapshot;if(s.invalid&&o.push("workspace_memory_invalid"),a?.source_cursor===r&&a.source_item_count===e.length)return{snapshot:a,cache_status:"fresh",warnings:o};a&&o.push("workspace_memory_stale");let c=bd(e,{statusRegistry:t.statusRegistry,sourceCursor:r,now:t.now});try{await Ur(i,`${JSON.stringify(c)}
6
- `)}catch{o.push("workspace_memory_write_failed")}return{snapshot:c,cache_status:"rebuilt",warnings:o}}function Td(e,t,n=Go){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 Wo(e,t,n=Go){if(e.snapshot===null)return;let r=Td(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 Rd(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 Ho(e,t,n=5){let r=Rd(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]="2355a6b7-2a17-586c-8dd3-182980a708d0")}catch{}})();var Ad=["markdown","toon","json","ndjson"],$t=new Set(["Epic","Feature"]),Rn=10,Yo=1e4,Xo=["hierarchy","activity","progress","recently_created","unparented","workload"],Dd=[...Xo,"blockers","files","staleness","tests"],Fd=/^(\d{4})-(\d{2})-(\d{2})/,Md=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/,$d=/^(\d{4})(\d{2})(\d{2})$/,Od=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?(Z|[+-]\d{2}:?\d{2})?$/i;function Ld(e){if(!e)return;let t=e.trim().toLowerCase();if(!Ad.includes(t))throw new p("Context format must be one of markdown|toon|json|ndjson",f.USAGE);return t}var zo=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 Nd(e){if(e===void 0)return;let t=[];for(let n of e.split(",")){let r=n.trim().toLowerCase();if(r.length!==0){if(!zo.has(r))throw new p(`Context --fields value not projectable: ${r} (valid: ${[...zo].join(", ")})`,f.USAGE);t.includes(r)||t.push(r)}}if(t.length===0)throw new p("Context --fields requires at least one field name",f.USAGE);return t}function Le(e,t){return e.map(n=>{let r={},i=n;for(let o of t)r[o]=i[o]??null;return r})}function Kp(e,t){let n=Ld(e.format);if(t.json&&n&&n!=="json"&&n!=="ndjson")throw new p("Cannot combine --json with --format markdown|toon",f.USAGE);return t.json?n==="ndjson"?"ndjson":"json":n??"toon"}function Pd(e,t){return W(e,"--limit")??(t==="full"?Number.MAX_SAFE_INTEGER:Rn)}function An(e,t){if(e===void 0)return t;let n=typeof e=="number"?e:Number(e);if(!Number.isInteger(n)||n<1)throw new p("--token-budget must be a positive integer",f.USAGE);return n}function jd(e,t){return t>=Yo&&e===Number.MAX_SAFE_INTEGER?Rn:e}function Ud(e,t){if(!e)return t.default_depth;let n=e.trim().toLowerCase();if(!Jt.includes(n))throw new p(`Context --depth must be one of ${Jt.join("|")}`,f.USAGE);return n}function Bd(e,t,n){if(e&&e.length>0){let r=[];for(let i of e){let o=i.trim().toLowerCase();if(!Ye.includes(o))throw new p(`Context --section must be one of ${Ye.join("|")}`,f.USAGE);r.includes(o)||r.push(o)}return r}return t==="brief"?[]:t==="full"?[...Ye]:(t==="deep"?Dd:Xo).filter(r=>n.sections[r])}function qd(e,t){return e?W(e,"--activity-limit")??t.activity_limit:t.activity_limit}function Gd(e,t){if(!e)return t.stale_threshold_days;let n=e.trim().toLowerCase(),r=/^(\d+)d?$/.exec(n);if(!r)throw new p("--stale-threshold must be a number of days (e.g. 7 or 7d)",f.USAGE);let i=parseInt(r[1],10);if(i<=0)throw new p("--stale-threshold must be positive",f.USAGE);return i}function Ko(e,t){let n=I(e,t),r=L("blocked",t),i=L("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 Ne(e,t){let n=L("closed",t);return I(e,t)===n}function Dn(e,t){return I(e,t)===t.in_progress_status}function Jo(e,t){let n=I(e,t);return n!==t.in_progress_status&&t.active_statuses.has(n)}function Wd(e,t){return t.blocked_statuses.has(I(e,t))}var Hd=["compact","brief","fields","includeBody","include_body","parent"];function zd(e){let t={...e};for(let n of Hd)delete t[n];return t}function Fn(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=ye(e),o=Pe(r.id,i);return{ids:new Set([r.id,...o.map(s=>s.id)].map(s=>s.trim().toLowerCase())),found:!0}}function Kd(e){if(e===void 0)return;let t=e.trim();if(t.length===0)throw new p("Context --parent requires an item id",f.USAGE);return t}function Vd(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:n-r}function Qd(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:E(n,r)}function Yd(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function Xd(e){let t=Fd.exec(e)??Md.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<=Yd(n,r-1)}function Jd(e){let t=$d.exec(e);if(t)return`${t[1]}-${t[2]}-${t[3]}`;let n=Od.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 Zo(e){if(typeof e!="string")return Number.NaN;let t=e.trim();if(t.length===0||!Xd(t))return Number.NaN;let n=Date.parse(Jd(t));return Number.isFinite(n)?n:Number.NaN}function Tn(e){let t=Zo(e);return Number.isFinite(t)?new Date(t).toISOString():""}function Zd(e){let t=Zo(e);return Number.isFinite(t)?new Date(t).toISOString().slice(0,10):"unknown"}function Mn(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function ie(e,t,n){let r=Ko(e.status,n)-Ko(t.status,n);if(r!==0)return r;let i=e.priority-t.priority;if(i!==0)return i;let o=Vd(e.order,t.order);if(o!==0)return o;let s=Qd(e.deadline,t.deadline);if(s!==0)return s;let a=E(Tn(t.updated_at),Tn(e.updated_at)),c=e.id.localeCompare(t.id);return a!==0?a:c}function Ft(e){return Math.max(1,Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4))}function $n(e,t,n=new Set,r="context"){return $o(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:Ft({id:i.id,title:i.item.title}),summary:Ft({id:i.id,title:i.item.title,type:i.item.type,status:i.item.status,priority:i.item.priority,parent:i.item.parent}),full:Ft(i.item)}})),{tokenBudget:t,profile:r,latencyBudgetMs:25})}function On(e){return{...e,included:e.included.map(t=>({id:t.id,projection:t.projection,tokens:t.tokens}))}}function Ln(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 Mt(e,t){return t>0?Math.round(e*100/t):0}function ye(e){let t=new Map;for(let n of e){let r=Mn(n.parent);if(!r)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return t}function je(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:Mn(e.parent)};if(t&&n){let i=Pe(e.id,n),o=i.length;if(o>0){let s=i.filter(a=>Ne(a.status,t)).length;r.children_total=o,r.children_closed=s,r.completion_pct=Mt(s,o)}}return r}function el(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 Ot(...e){return[...new Set(e.flatMap(t=>t??[]))].sort((t,n)=>t.localeCompare(n))}function tl(e,t){return e.filter(n=>!t.terminal_statuses.has(I(n.item_status,t)))}function nl(e,t,n,r){let i=new Map;for(let c of e)i.set(c.id,c);let o=ye(e),s=new Set(t.filter(c=>$t.has(c.type)).map(c=>c.id)),a=[];for(let c of s){let d=i.get(c);if(!d)continue;let l=Pe(c,o),u=o.get(c)??[],m=0,h=0,g=0,_=0;for(let v of l)Ne(v.status,n)?m++:Dn(v.status,n)?g++:Wd(v.status,n)?_++:Jo(v.status,n)&&h++;let y=u.sort((v,k)=>ie(v,k,n)).slice(0,r).map(v=>{let k=Pe(v.id,o),w=k.filter(S=>Ne(S.status,n)).length;return{id:v.id,title:v.title,type:v.type,status:v.status,children_total:k.length,children_closed:w}});a.push({id:d.id,title:d.title,type:d.type,status:d.status,children_total:l.length,children_closed:m,children_open:h,children_in_progress:g,children_blocked:_,children:y})}return a.sort((c,d)=>{let l=i.get(c.id),u=i.get(d.id);return ie(l,u,n)}).slice(0,r)}function Pe(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 rl(e,t){return(await Ro({compact:!0,limit:String(e)},t)).compact_activity??[]}function il(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=>$t.has(c.type)),a=[];for(let c of s){let d=Pe(c.id,o),l=d.length;if(l===0)continue;let u=0,m=0,h=0,g=0;for(let _ of d)Ne(_.status,r)?u++:n.has(_.id.trim().toLowerCase())?g++:Dn(_.status,r)?h++:Jo(_.status,r)&&m++;a.push({id:c.id,title:c.title,type:c.type,total:l,closed:u,open:m,in_progress:h,blocked:g,completion_pct:Mt(u,l)})}return a.sort((c,d)=>c.completion_pct-d.completion_pct).slice(0,i)}function ol(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=Re(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 sl(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 al(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=>Dn(s.status,t)).length,items:o.map(s=>s.id).sort()})).sort((i,o)=>o.active-i.active).slice(0,n)}function cl(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 dl(e,t,n,r){return e.map(i=>({item:i,sortKey:Tn(i.created_at)})).sort((i,o)=>{let s=E(o.sortKey,i.sortKey);return s!==0?s:i.item.id.localeCompare(o.item.id)}).slice(0,r).map(({item:i})=>({...je(i,t,n),created_at:i.created_at}))}function ll(e,t,n,r){return e.filter(i=>!Mn(i.parent)&&!$t.has(i.type)).sort((i,o)=>ie(i,o,t)).slice(0,r).map(i=>je(i,t,n))}function ul(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{scope:"matching_active_items",total_items:e.length,items_with_tests:t,items_with_recent_runs:n,recent_runs:{passed:r,failed:i,skipped:o},items_failing:s.sort()}}function Vo(e){return`${new Date(e).toISOString().slice(11,16)}Z`}function es(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 ml(e,t){let n=e;return t.map(r=>{let i=n[r];return Array.isArray(i)?`${r}:${i.join(",")}`:`${r}:${i??"-"}`}).join(" ")}function fl(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`${Vo(e.at)} [${e.kind}] ${e.item_id} (see focus item)${n}`}let t=`${Vo(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 Qo(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 pl(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 hl(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(`- ${fl(n)}`);e.push("")}function gl(e,t){if(!(!t.hierarchy||t.hierarchy.length===0)){e.push("## Hierarchy");for(let n of t.hierarchy){let r=Mt(n.children_closed,n.children_total);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=Mt(i.children_closed,i.children_total);e.push(` - ${i.id} ${i.type} ${i.status} "${i.title}" [${i.children_closed}/${i.children_total} done ${o}%]`)}}e.push("")}}function yl(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 _l(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)}`:`- ${Zd(i.created_at)} ${es(i)}`);e.push("")}}function wl(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 vl(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 bl(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 kl(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 Sl(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 El(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 Cl(e,t,n){let r=[],i=0;for(let o of e.items_failing){if(r.length>=t)break;let s=Ft(o);if(i+s>n)break;r.push(o),i+=s}return r}function Il(e,t){if(!t.tests)return;e.push("## Test health"),e.push(`- ${t.tests.scope}: ${t.tests.total_items}`),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}`);let n=Cl(t.tests,t.applied_limit??Rn,t.filters.token_budget);n.length>0&&e.push(`- items_failing: [${n.join(",")}]`);let r=t.tests.items_failing.length-n.length;r>0&&e.push(`- items_failing_omitted: ${r}`),e.push("")}function xl(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 Vp(e){let t=[],n=e.focus_fields,r=o=>n?ml(o,n):es(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(""),Qo(t,"High-level focus",e.high_level,"No high-level active items.",r),Qo(t,"Low-level focus",e.low_level,"No low-level active items.",r),pl(t,e,r),hl(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 gl(t,e),yl(t,e),_l(t,e,n,r),wl(t,e,r),vl(t,e),bl(t,e),kl(t,e),Sl(t,e),El(t,e),Il(t,e),xl(t,e),t.join(`
7
- `)}async function Tl(e,t){let n=R(process.cwd(),t.path),r=await M(n),i=r.context??Nr.context,o=P(r.schema),s=Ud(e.depth,i),a=Pd(e.limit??e.maxItems,s);return{settings:r,contextSettings:i,statusRegistry:o,depth:s,limit:a,sectionsIncluded:Bd(e.section,s,i),activityLimit:qd(e.activityLimit,i),staleThresholdDays:Gd(e.staleThreshold,i),parentScope:Kd(e.parent),focusFields:Nd(e.fields),baseListOptions:zd(e)}}function Rl(e){return e.some(t=>["hierarchy","progress","blockers","staleness","recently_created","unparented"].includes(t))}function Al(e,t){return{...e,...t,noTruncate:!0,limit:void 0,offset:void 0,after:void 0}}async function Dl(e,t){let n=await H(void 0,Al(t.baseListOptions,{excludeTerminal:!1}),e),r=n.items,i=r.filter(a=>!J(a.status,t.statusRegistry)),o=r,s=Fl(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 Fl(e,t){if(e===void 0)return;let n=Fn(t,e);if(!n.found)throw new p(`Context --parent item not found: ${e}`,f.NOT_FOUND);return n.ids}function Ml(e,t,n,r){let i=new Set(_t(e,t,n,r).containers.map(o=>o.item.id));return new Set(e.filter(o=>$t.has(o.type)||i.has(o.id)||xe(o.type,r)!=="agent").map(o=>o.id))}async function $l(e,t,n,r,i,o,s,a,c,d,l,u,m,h,g,_){let y=[...e].sort((b,Se)=>ie(b,Se,i)),v=await at({pmRoot:m,author:c,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),k=await At(y,{pmRoot:m,storeKey:"context",statusRegistry:i,now:a,author:c,usageAffinity:v.affinity,claimFocus:g}),w=await Rt("context",k.candidates),S=w.ranked.map(b=>b.item),A=i.active_statuses,T=S.filter(b=>A.has(I(b.status,i))),D=u?ri(T,d,l,b=>b.id):0,j=u?T.slice(D,D+s):T,Ve=u&&j.length>0&&D+j.length<T.length,Qe=Ve&&j.length>0?Zr(l,j[j.length-1].id,D+j.length-1):void 0,Z=S.filter(b=>r.has(b.id.trim().toLowerCase())),ke=new Set([...j.map(b=>b.id),...Z.filter(b=>!A.has(I(b.status,i))).slice(0,s).map(b=>b.id)]),se=$n({...w,ranked:w.ranked.filter(b=>ke.has(b.id))},h,new Set(Object.entries(g??{}).filter(([,b])=>b>=1).map(([b])=>b))),Q=se.included.map(b=>b.item),Y=Q.filter(b=>A.has(I(b.status,i))),ae=Q.filter(b=>r.has(b.id.trim().toLowerCase())),ce=ye(t),Yt=Rl(o)?ce:void 0,N=new Map(n.map(b=>[b.id.trim().toLowerCase(),b])),$=b=>{let Se=je(b,i,Yt);return r.has(b.id.trim().toLowerCase())&&(Se.blocked=!0,Se.blocker_ids=Re(b,N,i).filter(Xt=>!Xt.resolved).map(Xt=>Xt.id)),Se},Mr=Ml(Y,n,i,_),ra=Y.filter(b=>Mr.has(b.id)).slice(0,u?j.length:s).map($),ia=Y.filter(b=>!Mr.has(b.id)).slice(0,u?j.length:s).map($),$r=T.length===0;return{activeItems:Y,blockedItems:ae,highLevel:ra,lowLevel:ia,blockedFallback:$r?ae.slice(0,s).map($):[],blockedFallbackUsed:$r,ranking:w,packing:se,featureStore:k,pageExtras:{...u?{applied_limit:s}:{},...Ve?{has_more:!0,truncated:!0}:{},...Qe?{next_cursor:Qe}:{}}}}function Ol(e,t){return fe("context",{pmRoot:t,options:nt(e,Hr)})}function Ll(e,t){return e.limit!==void 0||e.maxItems!==void 0||e.after!==void 0||t>=Yo}async function Nl(e,t,n,r){let i={...t.baseListOptions,after:void 0,view:"agenda",include:"all",limit:t.parentScope===void 0?String(t.limit):void 0},o=await Co(i,e),s=n===void 0?o.events:o.events.filter(d=>n.has(d.item_id.trim().toLowerCase())),a=tl(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:el(a)}}function ts(e,t,n){let r=String(t);return e.filter(i=>I(i.status,n)===r).length}async function Pl(e){let{runtime:t,allItems:n,fullCorpus:r,blockedIds:i,focusGroups:o,now:s,global:a}=e,c=ye(n),d=n.filter(u=>!J(u.status,t.statusRegistry)),l=u=>t.sectionsIncluded.includes(u);return{hierarchy:l("hierarchy")?nl(n,o.activeItems,t.statusRegistry,t.limit):void 0,activity:l("activity")?await rl(t.activityLimit,a):void 0,progress:l("progress")?il(n,o.activeItems,i,t.statusRegistry,t.limit):void 0,blockersSection:l("blockers")?ol(o.blockedItems,r,t.statusRegistry,t.limit):void 0,recentlyCreated:l("recently_created")?dl(d,t.statusRegistry,c,t.limit):void 0,unparented:l("unparented")?ll(d,t.statusRegistry,c,t.limit):void 0,filesSection:l("files")?sl(o.activeItems,t.limit):void 0,workload:l("workload")?al(o.activeItems,t.statusRegistry,t.limit):void 0,staleness:l("staleness")?cl(d,t.staleThresholdDays,s,t.limit):void 0,tests:l("tests")?ul(n.filter(u=>t.statusRegistry.active_statuses.has(I(u.status,t.statusRegistry)))):void 0}}function jl(e,t,n){let r=L("canceled",t),i=e.filter(s=>t.active_statuses.has(I(s.status,t))),o=ts(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=>Ne(s.status,t)).length,canceled:e.filter(s=>I(s.status,t)===r).length}}function Ul(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 Bl(e,t){t&&(e.focus_fields=t,e.high_level=Le(e.high_level,t),e.low_level=Le(e.low_level,t),e.blocked_fallback=Le(e.blocked_fallback,t),e.recently_created&&(e.recently_created=Le(e.recently_created,t)),e.unparented&&(e.unparented=Le(e.unparented,t)))}function ql(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 Gl(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 Wl(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 ot(e,"context"))s.has(c)||(o.push({id:c,rank:o.length+1,included:!1}),s.add(c));let a=await st({pmRoot:n,author:r,surface:"context",profile:t.packing.profile,rows:o,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});it(e,a)}catch{e.warnings=Ot(e.warnings,["context_usage_feedback_write_failed"])}}async function Hl(e,t,n){if(e)return{};let r=(await Wr({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 zl(e,t){let n=wi(),r=await pi(e),i=n.instance||hi(t);return uo(r.semantic_attribution?.[i])}async function Qp(e,t){let n=R(process.cwd(),t.path),r=await Tl(e,t),i=await Dl(t,r),o=jd(r.limit,i.fullCorpus.length),s={...r,limit:o,tokenBudget:An(e.tokenBudget,Math.max(256,o*160))},a=ee(void 0,s.settings.author_default),c=await zl(n,a),d=Hl(e.noExtensionHealth===!0,n,s.settings),l=ji(i.fullCorpus,s.statusRegistry),u=await $l(i.listedItemMetadata,i.allItems,i.fullCorpus,l,s.statusRegistry,s.sectionsIncluded,s.limit,O(),a,e.after,Ol(e,n),Ll(e,i.fullCorpus.length),n,s.tokenBudget,c,F(s.settings,C())),m=await Nl(t,s,i.subtreeIds,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),h=await Dt(i.fullCorpus,{pmRoot:n,statusRegistry:s.statusRegistry,now:m.agenda.now}),g=Ot(i.listed.warnings,m.agenda.warnings,u.ranking.warnings,[...u.featureStore.warnings],h.warnings),_=ts(u.activeItems,s.statusRegistry.in_progress_status,s.statusRegistry),y=u.activeItems.length-_,v=await Pl({runtime:s,allItems:i.allItems,fullCorpus:i.fullCorpus,blockedIds:l,focusGroups:u,now:m.agenda.now,global:t}),k=jl(i.allItems,s.statusRegistry,l),w={output_default:"toon",now:m.agenda.now,depth:s.depth,sections_included:s.sectionsIncluded,window:{anchor:m.agenda.anchor,start:m.agenda.range.start,end:m.agenda.range.end,past:m.agenda.range.past,from:m.agenda.range.from,to:m.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??m.agenda.filters.runtime_filters??{}},summary:{returned_focus:{active_items:u.activeItems.length,in_progress:_,open:y,blocked:u.blockedItems.length},blocked_fallback_used:u.blockedFallbackUsed,high_level:u.highLevel.length,low_level:u.lowLevel.length,agenda_events:m.agendaSummary.events,...k},high_level:u.highLevel,low_level:u.lowLevel,blocked_fallback:u.blockedFallback,agenda:{summary:m.agendaSummary,events:m.agendaEvents},...u.pageExtras};return w.workspace_memory=Wo(h,Math.min(800,Math.floor(s.tokenBudget*.2))),Object.assign(w,await d),Ul(w,v,u.featureStore.warning_details),ql(w,e.noTags===!0),e.explainRanking===!0&&(w.ranking=Ln(u.ranking,u.featureStore,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),w.packing=On(u.packing)),Qr(w,[...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>({id:S.id,status:I(S.status,s.statusRegistry)===s.statusRegistry.in_progress_status?"in_progress":"open",blocked:S.blocked}))),Bl(w,s.focusFields),Yr(w),g.length>0&&(w.warnings=g),Gl(w,u.activeItems,u.blockedItems),await Wl(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 ns(e,t,n){let r={recommended:e.recommended,ready:e.ready},i=()=>Math.max(nn(r,"json"),nn(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,m=c.length;for(;u<m;){let h=Math.ceil((u+m)/2);r.ready=c.slice(0,h),i()<=t?u=h:m=h-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 Kl=["markdown","toon","json"],Vl=5,Ql=1440*60*1e3;function Yl(e){if(!e)return;let t=e.trim().toLowerCase();if(!Kl.includes(t))throw new p("Next format must be one of markdown|toon|json",f.USAGE);return t}function dh(e,t){let n=Yl(e.format);if(t.json&&n&&n!=="json")throw new p("Cannot combine --json with --format markdown|toon",f.USAGE);return t.json?"json":n??"toon"}function rs(e,t,n){let r=W(e,t);return r===void 0||r<=0?n:r}function Ue(e,t,n,r){return{...je(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 Xl(e,t,n,r){let i=e.item,o=[],s=L("in_progress",t);return o.push(I(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(Jl(i.deadline,n)),o.push(Te(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 is(e,t,n){let r=ee(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 lh={partitionCallerOwnedReady:is,resolveNextCallerAuthor:(e,t)=>os(e,t)};function uh(e,t,n){let r=e.filter(i=>xe(i.item.type,n)==="human");return{agent:t?e:e.filter(i=>xe(i.item.type,n)!=="human"),decisions:t?[]:r}}function Jl(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))/Ql);return o<0?`deadline ${r} (overdue ${-o}d)`:o===0?`deadline ${r} (due today)`:`deadline ${r} (in ${o}d)`}function Zl(e,t){let n=L("in_progress",t);return e.filter(r=>I(r.status,t)===n).length}function Nn(e,t){return(t.get(e.id.trim().toLowerCase())??[]).length>0}function eu(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 Lt(e,t,n){return[...e].sort((r,i)=>{let o=Nn(r.item,t),s=Nn(i.item,t);return o!==s?Number(o)-Number(s):ie(r.item,i.item,n)})}function tu(e){return e.projectedReady.length===0?null:{...e.readyRows[0],reasons:Xl(e.projectedReady[0],e.statusRegistry,e.now,e.completedContainer)}}function nu(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 ru(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 iu(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 ot(e.result,"next"))r.has(o)||(n.push({id:o,rank:n.length+1,included:!1}),r.add(o));let i=await st({pmRoot:e.pmRoot,author:e.author,surface:"next",profile:"next",rows:n,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});it(e.result,i)}catch{e.result.warnings=Ot(e.result.warnings,["context_usage_feedback_write_failed"])}}async function ou(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=nu(e.recommended,e.blockedRows,e.gateCount),e.tokenBudget!==void 0&&ns(e.result,e.tokenBudget,e.hasIntentBudget),e.explainRanking&&(e.result.ranking=Ln(e.readyRanking,e.featureStore,new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(n=>n.id)])),e.result.packing=On($n(e.readyRanking,e.packingBudget,new Set,"next"))),await iu({result:e.result,pmRoot:e.pmRoot,author:e.author,ranking:e.readyRanking}),e.result}function su(e,t,n){if(!n)return e;let r=Fn(t,n);if(!r.found)throw new p(`Next --parent item not found: ${n}`,f.NOT_FOUND);return e.filter(i=>r.ids.has(i.id.trim().toLowerCase()))}async function au(e,t,n,r,i,o,s){let a=e.filter(h=>!Nn(h.item,t)),c=s||a.length===0?e:a,d=await at({pmRoot:o,author:i,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),l=await At(c.map(h=>h.item),{pmRoot:o,storeKey:"next",statusRegistry:n,now:r,author:i,usageAffinity:d.affinity}),u=await Rt("next",l.candidates),m=new Map(c.map(h=>[h.item.id,h]));return{projectedReady:u.ranked.map(h=>m.get(h.id)).filter(h=>h!==void 0),ranking:u,completedContainer:a.length===0&&!s,featureStore:l}}function os(e,t){let n=e.assignee?.trim();return ee(e.callerAuthor??(n&&n.length>0?n:void 0),t)}async function mh(e,t){let n=R(process.cwd(),t.path),r=await M(n),i=os(e,r.author_default),o=P(r.schema),s=F(r,C()),a=O(),c=rs(e.limit,"--limit",Vl),d=An(e.tokenBudget,Math.max(192,c*128)),l=rs(e.blockedLimit,"--blocked-limit",c),u=e.readyOnly===!0,m=typeof e.parent=="string"?e.parent.trim():"",h=await H(void 0,eu(e,{excludeTerminal:!0}),t),g=await H(void 0,{excludeTerminal:!1,noTruncate:!0},t),_=su(h.items,g.items,m),y=g.items,v=_t(_,y,o,s),k=ye(y),w=Ui(v,o,e,s),S=is(w.ready,r.author_default,i),A=Lt(S.available,k,o),T=[...v.blocked].sort((N,$)=>ie(N.item,$.item,o)),{projectedReady:D,ranking:j,completedContainer:Ve,featureStore:Qe}=await au(A,k,o,a,i,n,e.includeContainers===!0),Z=D.map((N,$)=>Ue(N,o,k,$+1)),ke=T.map((N,$)=>Ue(N,o,k,$+1)),se=Lt(w.decisions,k,o).map((N,$)=>Ue(N,o,k,$+1)),Q=Lt(w.gates,k,o).map((N,$)=>Ue(N,o,k,$+1)),Y=Lt(v.containers,k,o).map((N,$)=>Ue(N,o,k,$+1)),ae=tu({projectedReady:D,readyRows:Z,statusRegistry:o,now:a,completedContainer:Ve}),ce=ru(se.length,S.held.length,Z.length,c)??{};Q.length>c&&(ce.gate_needed_total=Q.length),Y.length>c&&(ce.containers_total=Y.length);let Yt={output_default:"toon",now:a,recommended:ae,ready:Z.slice(1,c+1),decision_needed:se.slice(0,c),gate_needed:Q.slice(0,c),containers:Y.slice(0,c),blocked:u?[]:ke.slice(0,l),held_by_others:S.held.slice(0,c),summary:{recommended:ae!==null,ready:Z.length,blocked:ke.length,in_progress:Zl(Z,o),candidates:v.active_count,containers:v.container_count,decision_needed:se.length,gate_needed:Q.length,held_by_others:S.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:m.length>0?m: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(ce).length>0?ce:void 0};return ou({result:Yt,recommended:ae,blockedRows:ke,gateCount:Q.length,candidatesWarnings:h.warnings,corpusWarnings:g.warnings,readyRanking:j,explainRanking:e.explainRanking===!0,pmRoot:n,author:i,packingBudget:d,featureStore:Qe,tokenBudget:e.tokenBudget===void 0?void 0:d,hasIntentBudget:typeof e.for=="string"})}function fh(e){let t=["# pm next","",...cu(e)];for(let[n,r]of[["Gate verification needed",e.gate_needed],["Containers",e.containers]])r&&r.length>0&&t.push(...Be(n,r.map(i=>`- ${qe(i)}`),""));if(t.push(...Be("Recommended",du(e.recommended),e.truncation?.ready_budget?.recommendation_omitted?"Recommendation omitted by the selection budget; ready work still exists.":"No ready work.")),t.push(...Be("Decision needed",(e.decision_needed??[]).map(n=>`- ${qe(n)}`),"No human-gated decisions.")),t.push(...Be("Ready",e.ready.map(n=>`- ${qe(n)}`),"No ready items.")),e.filters.ready_only||t.push(...Be("Blocked",e.blocked.map(n=>`- ${lu(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(`
8
- `).trimEnd()}function cu(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 du(e){return e?[`- ${qe(e)}`,` why: ${e.reasons.join("; ")}`]:[]}function Be(e,t,n){return[`## ${e}`,...t.length===0?[n]:t,""]}function lu(e){let t=e.blockers.map(n=>`${n.id}(${n.status??"?"})`).join(", ");return`${qe(e)} blocked_by:${t}`}function qe(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}`}(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]="190eb119-9510-59d6-bb3a-d1f807c68281")}catch{}})();var uu=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],mu=["filterAcMissing","filterEstimatesMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","hasNotes","hasLearnings","hasFiles","hasDocs","hasTests","hasComments","hasDeps","hasBody","hasLinkedCommand","noNotes","noLearnings","noFiles","noDocs","noTests","noComments","noDeps","emptyBody","noLinkedCommand"];function fu(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function hh(e,t,n={}){let r=n.includePagination!==!1;return[t,...uu.map(i=>e?.[i]),...r?[e?.limit,e?.offset]:[]].some(fu)||mu.some(i=>e?.[i]===!0)}function ss(e){return{type:e.type,tag:e.tag,priority:e.priority,deadlineBefore:e.deadlineBefore,deadlineAfter:e.deadlineAfter,assignee:e.assignee,assigneeFilter:e.assigneeFilter,parent:e.parent,sprint:e.sprint,release:e.release}}(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]="59f55926-8d04-52f8-a7fc-d32edd32b760")}catch{}})();var as=["parent","type","priority","status","assignee","tags","sprint","release"];function ds(e,t){let n=lt(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function ls(e,t=["estimate","estimated_minutes","priority"]){let n=e.sum?.trim(),r=e.avg?.trim(),i=n&&n.length>0?n:void 0,o=r&&r.length>0?r:void 0;if(!i&&!o)return null;if(i&&o&&i!==o)throw new p("Aggregate --sum and --avg must target the same numeric field",f.USAGE);let s=i??o;if(!t.includes(s))throw new p(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,f.USAGE);return{field:s,sum:i!==void 0,avg:o!==void 0}}function us(e){let t=e?.trim()??"status";if(t.length===0)throw new p("--group-by requires at least one field name",f.USAGE);let n=Pi(t);if(n.length===0)throw new p("--group-by requires a comma-separated list of fields",f.USAGE);for(let r of n)if(!as.includes(r))throw new p(`Aggregate group fields must be one of ${as.join("|")}; received "${r}"`,f.USAGE);return n}function ms(e){let t=[...new Set(e.map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length===0?null:t.join(",")}function fs(e,t){switch(e){case"parent":return t.parent??null;case"type":return t.type;case"priority":return t.priority;case"status":return t.status;case"assignee":return t.assignee??null;case"tags":return ms(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function ps(e,t){let n=e??null,r=t??null;return n===r?0:n===null?1:r===null?-1:typeof n=="number"&&typeof r=="number"?n-r:String(n).localeCompare(String(r))}function Nt(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var pu={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function cs(e,t){return t==null||t===""?pu[e]:String(t)}function hu(e,t){return e.length===1?cs(e[0],t[e[0]]):e.map(n=>`${n}=${cs(n,t[n])}`).join(" | ")}function hs(e,t,n){for(let r of n){let i=ps(e.group[r],t.group[r]);if(i!==0)return i}return 0}function gs(e,t){let n=e[t];if(typeof n=="number"&&Number.isFinite(n))return n;if(typeof n=="string"){let r=n.trim();if(r.length===0)return null;let i=Number(r);if(Number.isFinite(i))return i}return null}function ys(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Pn(e,t,n){let r=L(String(t),n)??t;if(r===n.open_status){e.open_count+=1;return}if(r==="in_progress"||n.active_statuses.has(r)&&r!==n.open_status){e.in_progress_count+=1;return}if(n.terminal_done_statuses.has(r)||r===n.close_status){e.closed_count+=1;return}e.other_count+=1}function gu(e,t){return{row:{group:e,count:1},numeric_count:t===null?0:1,numeric_sum:t??0,null_count:t===null?1:0,open_count:0,in_progress_count:0,closed_count:0,other_count:0}}function yu(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function _u(e){e.accumulator.row.count+=1,e.includeCompletion&&Pn(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&yu(e.accumulator,e.numericValue)}function wu(e,t,n,r){for(let i of t){let o=Nt(n,i),s=e.get(o);if(s){_u({...r,accumulator:s});continue}let a=gu(i,r.numericValue);r.includeCompletion&&Pn(a,r.item.status,r.statusRegistry),e.set(o,a)}}function vu(e,t){let n={};for(let r of e)n[r]=fs(r,t);return n}function bu(e,t,n){let r=[vu(e,t)];if(n==="tuple")return r;for(let i of e){let o=t[i];if(!Array.isArray(o))continue;let s=[...new Set(o.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(r=r.flatMap(a=>s.map(c=>({...a,[i]:c}))))}return r}function ku(e,t,n,r){let i={...e.row,group_label:hu(t,e.row.group)};return n&&(i.open=e.open_count,i.in_progress=e.in_progress_count,i.closed=e.closed_count,i.other=e.other_count,i.completion_pct=ys(e.closed_count,e.row.count)),r!==null&&(i.null_count=e.null_count,r.sum&&(i.sum=e.numeric_sum),r.avg&&(i.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),i}function Su(e){return{group_by:e.groupBy,set_mode:e.setMode,count:!0,completion:e.includeCompletion,include_unparented:e.includeUnparented,status:e.status?.[0]??null,status_values:e.status,type:e.options.type??null,tag:e.options.tag??null,priority:e.options.priority??null,deadline_before:e.options.deadlineBefore??null,deadline_after:e.options.deadlineAfter??null,assignee:e.options.assignee??null,assignee_filter:e.options.assigneeFilter??null,parent:e.options.parent??null,sprint:e.options.sprint??null,release:e.options.release??null,...e.numericAggregation!==null?{sum:e.options.sum??null,avg:e.options.avg??null,numeric_field:e.numericAggregation.field}:{}}}async function bh(e,t){if(e.count===!1)throw new p("Aggregate grouped counts are always enabled; omit count=false.",f.USAGE);let n=R(process.cwd(),t.path),r=await M(n),i=P(r.schema),o=["estimate","estimated_minutes","priority",...X(r.schema).definitions.filter(w=>w.type==="number").map(w=>w.metadata_key)],s=us(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new p("Aggregate --set-mode must be element or tuple",f.USAGE);let c=ds(e.status,i),d=ls(e,[...new Set(o)].sort((w,S)=>w.localeCompare(S))),l=e.completion===!0,u=e.includeUnparented===!0,m=await H(void 0,{...ss(e),status:e.status,noTruncate:!0,strictRead:!0},t),h=new Map,g=0,_=0,y=0;for(let w of m.items){let S=w;if(s.includes("parent")&&S.parent===void 0&&!u){g+=1;continue}let A=d===null?null:gs(S,d.field),T=bu(s,S,a);wu(h,T,s,{item:S,statusRegistry:i,includeCompletion:l,numericAggregation:d,numericValue:A}),y+=T.length,_+=1}let v=[...h.values()].map(w=>ku(w,s,l,d)).sort((w,S)=>hs(w,S,s)),k=m.warnings&&m.warnings.length>0?m.warnings:void 0;return{...Eu(v,s,e),count:v.length,totals:{items_considered:m.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:Su({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:c,options:e,numericAggregation:d}),now:O(),...k?{warnings:k}:{}}}function Eu(e,t,n){let r=oo(n.limit,"limit")??50,i=n.after===void 0?-1:e.findIndex(a=>Nt(t,a.group)===n.after);if(n.after!==void 0&&i<0)throw new p("Aggregate --after cursor is absent from the current grouping; restart without --after.",f.USAGE);let o=e.slice(i+1,i+1+r),s=i+1+o.length<e.length;return{groups:o,returned_count:o.length,truncated:s,next_after:s?Nt(t,o.at(-1).group):null}}var kh={buildGroupKey:Nt,compareAggregateRows:hs,compareNullableGroupValue:ps,completionPct:ys,normalizeTagGroupValue:ms,parseGroupBy:us,parseNumericAggregation:ls,parseStatus:ds,readNumericAggregateValue:gs,resolveGroupValue:fs,updateCompletionCounts:Pn};(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]="21742dd3-12b5-5285-89d8-036693459eb8")}catch{}})();var _s=1e6,ws=20;function vs(e,t,n,r=ws){if(!Number.isSafeInteger(r)||r<0)throw new p("Child projection sample limit must be a non-negative integer.",f.USAGE);let i=e.trim().toLowerCase(),o={},s=[],a=0;for(let y of t){if(a+=1,a>_s)throw new p(`Child projection exceeded the ${_s.toLocaleString("en-US")} item safety bound.`,f.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let c=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),d=Ji(Xi(s,Yi())),l=new Set(d.children_by_parent.get(i)??[]);for(let y of s)y.parent?.trim().toLowerCase()===i&&l.add(y.id.trim().toLowerCase());let u=[...l].map(y=>c.get(y)),m=0;for(let y of u){let v=y.status.trim().toLowerCase();o[v]=(o[v]??0)+1,J(v,n)||(m+=1)}u.sort((y,v)=>y.id.localeCompare(v.id));let h=u.slice(0,r).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>h.length,_=r===0?ws:r;return{count:u.length,active:m,by_status:Object.fromEntries(Object.entries(o).sort(([y],[v])=>y.localeCompare(v))),sample:h,sample_limit:r,truncated:g,next_offset:g?h.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${h.length} --limit ${_}`:null,scanned:a}}import{readdir as Tu}from"node:fs/promises";import Un 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]="db3fe399-8eb8-5b17-8a9e-89eda4774234")}catch{}})();var Cu=new Set(["event","meeting","reminder"]);function Iu(e){return Cu.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function jn(e){if(!Iu(e))return;let t=[...e.events??[]].sort((r,i)=>r.start_at.localeCompare(i.start_at)),n=t[0];return{deadline:e.deadline??null,start_at:n?.start_at??null,end_at:n?.end_at??null,location:n?.location??null,reminders:[...e.reminders??[]],events: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]="1815b206-18b5-5e76-b863-8b0f8ac2947a")}catch{}})();var Ru=new Set(["epic","feature","milestone","plan"]),Au=new Set(Object.keys(Lr).map(e=>e.toLowerCase()));function qn(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(t=>[t,e[t]?.length??0]))}function Du(e,t,n,r,i){let o=qn(e);return[...t.length>0?["body"]:[],...Object.entries(o).flatMap(([s,a])=>a>0?[s]:[]),...o.files+o.tests+o.docs>0?["linked"]:[],...n===void 0?["children"]:n.count>0?["children"]:[],...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...jn(e)?["schedule"]:[],...r&&Te(e).length>0?["blockers"]:[],...!i.full&&e.dependencies?.some(({id:s,kind:a,...c})=>Object.values(c).some(d=>d!==void 0))?["dependency_provenance"]:[]]}function ks(e){let t=e.trim().toLowerCase();return t.length>0&&(Ru.has(t)||!Au.has(t))}function bs(e){return{ts:e.ts,author:e.author,message:e.message??null}}function Fu(e,t){let n=e?.trim(),r=n&&n.length>0?n:null,i=[...t].reverse().find(s=>s.op==="claim"),o=[...t].reverse().find(s=>s.op==="release");return{claimed:r!==null,assignee:r,last_claim:i?bs(i):null,last_release:o?bs(o):null}}function Mu(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(ct.includes(t))return t;throw new p("Get --depth must be one of brief|standard|deep|full",f.USAGE,{field:"depth",value:e,recovery:{allowed_values:[...ct,"full"]}})}function $u(e,t,n){let r=qn(e),i={...e};if(!n&&e.dependencies!==void 0&&(i.dependencies=e.dependencies.map(({id:g,kind:_})=>({id:g,kind:_}))),t==="deep")return{...i,comments:e.comments??[],notes:e.notes??[],learnings:e.learnings??[],files:e.files??[],tests:e.tests??[],docs:e.docs??[],reminders:e.reminders??[],events:e.events??[],notes_count:r.notes,tests_count:r.tests,collection_counts:r};let{comments:o,notes:s,learnings:a,files:c,tests:d,docs:l,reminders:u,events:m,...h}=i;return{...h,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:r}}function Ou(e){if(e===void 0)return null;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new p("Get --fields requires a comma-separated list of field names",f.USAGE);return t}function Pt(e){return e.startsWith("item.")?e.slice(5):e}function Lu(e,t,n){if(e===null)return;let r=tn(t),i=new Set(r),o=e.filter(s=>{let a=Pt(s);return!i.has(s)&&!i.has(a)});if(o.length>0){let s=["get",n,"--fields",e.filter(a=>!o.includes(a)).join(",")||"id,title,status"];throw new p(`Unknown get --fields value(s): ${o.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:r,suggested_retry:me(s),suggested_retry_args:s}})}}var Nu=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function Pu(e,t,n){return Object.hasOwn(t,n)?t[n]:e[n]!==void 0?e[n]:Nu.has(n)?[]:void 0}function ju(e,t){let n=e,r={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:qn(e)},i={id:e.id};for(let o of t){let s=Pt(o);s==="body"||s==="linked"||s.startsWith("linked.")||s==="claim_state"||s.startsWith("claim_state.")||s==="children"||s.startsWith("children.")||s==="schedule"||s.startsWith("schedule.")||s==="blockers"||(i[s]=Pu(n,r,s))}return i}function Ge(e,t){return e?.some(n=>n===t||n===`item.${t}`)??!1}function _e(e,t){return e.some(n=>{let r=Pt(n);return r===t||r.startsWith(`${t}.`)})}function Uu(e,t){if(e.full&&(e.fields!==void 0||e.depth!==void 0))throw new p("Get projection options are mutually exclusive; remove the extra projection flag and retry.",f.USAGE,{code:"projection_options_mutually_exclusive",flag:"--full",recovery:{suggested_retry:me(["get",t,"--full"]),suggested_retry_args:["get",t,"--full"]}});if(e.tree!==!0&&e.treeDepth!==void 0)throw new p("Get --tree-depth requires --tree",f.USAGE);if(e.at!==void 0&&e.tree===!0)throw new p("Get --at cannot be combined with --tree because workspace-level historical projections are not yet indexed.",f.USAGE);return{depth:e.full?"deep":Mu(e.depth),full:e.full===!0||e.depth?.trim().toLowerCase()==="full",treeDepth:e.tree===!0?W(e.treeDepth,"--tree-depth"):void 0,fields:Ou(e.fields),fieldProjection:e.fields!==void 0}}async function Bu(e,t,n){let r=R(process.cwd(),t.path);await q(r);let i=await M(r),o=F(i,C());if(n!==void 0){let c=await io(e,n,{pmRoot:t.path});return{pmRoot:r,settings:i,typeToFolder:o.type_to_folder,locatedId:c.document.metadata.id,metadata:c.document.metadata,body:c.document.body,historical:c}}let s=await ne(r,e,i.id_prefix,i.item_format,o.type_to_folder);if(!s)throw await Di(r,e,i.id_prefix,o.type_to_folder);let a=await re(s,{schema:i.schema});return{pmRoot:r,settings:i,typeToFolder:o.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function qu(e,t,n,r){let i=[...X(t.schema).definitions.map(o=>o.metadata_key),...le(C())];if(Lu(e,i,r),n&&_e(e??[],"children"))throw new p("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",f.USAGE);if(n&&_e(e??[],"blockers"))throw new p("Get --at cannot project current blocker statuses; read the current item with --fields blockers instead.",f.USAGE)}function Bn(e){let{fieldProjection:t,depth:n,fields:r,field:i}=e;return t?i==="body"||i==="linked"?Ge(r,i):_e(r,i):n!=="brief"}async function Gu(e,t){if(!t)return;let n=Ze(e.pmRoot,e.locatedId),r=await te(n,e.locatedId);return Fu(e.metadata.assignee,e.historical?r.slice(0,e.historical.target.historyIndex+1):r)}function Wu(e,t,n,r){let i=r||Ge(n,"linked.files"),o=r||Ge(n,"linked.tests"),s=r||Ge(n,"linked.docs");!r&&!i&&!o&&!s||(e.linked={files:i?t.metadata.files??[]:[],tests:o?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function Hu(e,t){if(!t)return;let n=P(e.settings.schema),r=await he(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return vs(e.locatedId,r,n)}function zu(e,t){let n=new Map;for(let r of e){let i=r.external?r.id:t.get(r.id.toLowerCase())?.id??r.id;n.set(r.external?`external:${i}`:`local:${i.toLowerCase()}`,{...r,id:i})}return[...n.values()]}async function Ku(e,t){let n=Un.basename(e),r=(await Tu(Un.dirname(e)).catch(i=>{throw no("Cannot verify the blocker's physical file identity",{exitCode:f.GENERIC_FAILURE,context:{code:"blocker_identity_read_failed",required:"Restore access to the blocker item directory, then retry the item read."},cause:i})})).filter(i=>i.toLowerCase()===n.toLowerCase()).sort((i,o)=>+(o===n)-+(i===n)||i.localeCompare(o)).map(i=>Un.parse(i).name)[0];if(r===void 0)throw new p(`Blocker canonical file disappeared during identity verification: ${t}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker file and validate storage integrity before retrying the item read."});return r}async function Vu(e,t,n){if(t.historical!==void 0||!(n.fieldProjection?_e(n.fields,"blockers"):n.depth!=="brief"))return;let r=Te(t.metadata);if(r.length===0)return;let i=new Map([t.metadata.blocked_by,...(t.metadata.dependencies??[]).filter(a=>a.kind==="blocked_by").map(a=>a.id)].filter(a=>typeof a=="string").map(a=>[a.trim().toLowerCase(),a.trim()])),o=new Map;for(let a of r){if(di(a)||!/^(?!\.{1,2}$)[^/\\:\0]+$/u.test(a)||t.metadata.dependencies?.some(l=>l.id.trim()===a&&l.kind==="blocked_by"&&li(l.source_kind)))continue;let c=await ne(t.pmRoot,i.get(a),t.settings.id_prefix,t.settings.item_format,t.typeToFolder);if(c===null)continue;let d=await re(c,{schema:t.settings.schema});if(c.id=await Ku(c.itemPath,c.id),d.document.metadata.id!==c.id)throw new p(`Blocker identity differs from its canonical file: ${c.id}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker identity and validate storage integrity before retrying the item read."});o.set(a.toLowerCase(),d.document.metadata)}let s=zu(Re({blocked_by:t.metadata.blocked_by,dependencies:t.metadata.dependencies,updated_at:t.metadata.updated_at},o,P(t.settings.schema)),o);e.blockers={scope:"declared",open:s.filter(a=>!a.resolved).map(({resolved:a,...c})=>c),closed_count:s.filter(a=>a.resolved).length},!n.fieldProjection&&!n.full&&delete e.item.blocked_by}function Qu(e,t,n,r){if(!r)return;let i=jn(t.metadata);if(i){if(n===null||Ge(n,"schedule")){e.schedule=i;return}e.schedule=Object.fromEntries(Object.entries(i).filter(([o])=>n.some(s=>Pt(s)===`schedule.${o}`)))}}async function Yu(e,t,n,r){if(t.tree!==!0)return;let i=await H(void 0,{parent:e.locatedId,tree:!0,treeDepth:n===void 0?void 0:String(n),full:!0},r);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:n??null,count:i.count,items:i.items.map(o=>o)}}async function Yh(e,t,n={}){let r=Uu(n,e),i=await Bu(e,t,n.at);qu(r.fields,i.settings,i.historical!==void 0,i.locatedId);let o=Bn({...r,field:"body"}),s=Bn({...r,field:"linked"}),a=Bn({...r,field:"claim_state"}),c=i.historical===void 0&&(r.fieldProjection?_e(r.fields,"children"):r.depth==="deep"&&(r.full||ks(i.metadata.type))),d=r.fieldProjection?_e(r.fields,"schedule"):r.depth!=="brief",l=await Gu(i,a),u={item:r.fieldProjection?ju(i.metadata,r.fields):$u(i.metadata,r.depth,r.full)};o&&(u.item.body=i.body),Wu(u,i,r.fields,s),l&&(u.claim_state=l),Qu(u,i,r.fields,d),await Vu(u,i,r);let m=await Hu(i,c);m!==void 0&&(u.children=m);let h=await Yu(i,n,r.treeDepth,t);if(h!==void 0&&(u.tree=h),i.historical&&(u.reconstructed=!0,u.as_of_version=i.historical.as_of_version,u.as_of_timestamp=i.historical.as_of_timestamp),i.historical===void 0)try{await si({pmRoot:i.pmRoot,author:ee(void 0,i.settings.author_default),itemIds:[i.locatedId],intent:"get"})}catch{}return Vr(u,r.fieldProjection?[]:Du(i.metadata,i.body,m,i.historical===void 0,r)),u}var Xh={shouldAutoIncludeGetChildren:ks};(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]="9c9c1249-e52a-5203-8a84-d54211c30202")}catch{}})();function Xu(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function Ju(e,t){return e.map(({entry:n,version:r})=>{let i=new Set,o=bi(n.patch);for(let s of o)i.add(rn(s.path)),s.from&&i.add(rn(s.from));return{index:r,...t?{version:t.offset===null?null:t.offset+r}:{},ts:n.ts,op:n.op,author:n.author,patch_ops:o.length,changed_fields:[...i].sort((s,a)=>s.localeCompare(a))}})}function Zu(e){if(e[0]?.op!=="history_compact_baseline")return;let t=on(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function em(e,t){let n=R(process.cwd(),t.path);await q(n);let r=await M(n),i=F(r,C()),o=e.trim()===dt,s=o?dt:xi(e,r.id_prefix),a=await ne(n,s,r.id_prefix,r.item_format,i.type_to_folder),c=a?.id??s,d=o?Ci(n):Ze(n,c);if(!a&&!await Pr(d))throw new p(`Item ${e} not found`,f.NOT_FOUND);return a&&await Si({pmRoot:n,settings:r,itemId:a.id,commandLabel:"history"}),{historyPath:d,located:a,resolvedId:c,settings:r}}async function cg(e,t,n){let r=pe(t.limit),{historyPath:i,located:o,resolvedId:s,settings:a}=await em(e,n),c=await te(i,s),d=Zu(c),l=a.agent_identity.identity_vocabulary,u=St(a.agent_identity.harness_signals),m=Ct({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),h=tm(c).filter(({entry:T})=>m(T)),g=Xu(h,r),_=g.map(({entry:T})=>T),y=t.compact===!0,v=y?Ju(g,d):void 0,k=t.provenance===!0?g.map(({entry:T,durableVersion:D})=>Et(T,l,{itemId:s,version:D})):void 0,w=t.provenance===!0?"provenance":y?"compact":"full",S={compact:{compact_history:v},provenance:{provenance_history:k},full:{history:_}}[w],A={id:s,...S,compact:y,projection:{mode:w,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[w]},omission_receipt:tt("history",w),count:_.length,limit:r??null,version_addressing:d,...t.provenanceSummary===!0?{provenance_summary:It(h.map(({entry:T})=>T),l,u)}:{}};if((t.diff||t.field!==void 0)&&(A.diff=ki(c,{windowStartIndex:Math.max(0,c.length-_.length),field:t.field})),t.verify){let T=o?(await re(o,{schema:a.schema})).document:void 0;if(A.verification=ro(c,T),s===dt&&A.verification.ok){let D=await Ii(R(process.cwd(),n.path));A.verification={...A.verification,ok:D.ok,errors:D.ok?A.verification.errors:[...A.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:D.ok,workspace_state_mismatches:D.mismatched_documents,workspace_state_missing:D.missing_documents,workspace_state_unreadable:D.unreadable_documents}}}return A}function tm(e){let t=on(e,!0);return e.map((n,r)=>({entry:n,version:r+1,durableVersion:t===null?void 0:t+r+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]="28cc85af-b7e7-5069-97a9-18844352cc59")}catch{}})();function nm(e){if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(t!=="keyword"&&t!=="semantic"&&t!=="hybrid")throw new p("Search mode must be one of keyword|semantic|hybrid",f.USAGE);return t}function jt(e){return e===!0}function Ss(e){return qr(e,0,1)??void 0}function Es(e){if(e===void 0)return"or";let t=e.trim().toLowerCase();if(t!=="and"&&t!=="or"&&t!=="exact")throw new p("Search --match-mode must be one of and|or|exact",f.USAGE);return t}function Cs(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(String(e).trim());if(!Number.isFinite(t)||t<0)throw new p("Search --min-score must be a finite number >= 0",f.USAGE);return t}function oe(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return G(n,new Date,t)}function U(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function Gn(e,t){if(e!==void 0)return G(e,new Date,t)}function rm(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 p("Search --fields requires a comma-separated list of field names",f.USAGE);return[...new Set(t)]}function Ut(e,t="<query>"){let n=e.compact===!0,r=e.full===!0,i=rm(e.fields);if(Number(n)+Number(r)+ +(i!==void 0)>1)throw new p("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",f.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:me(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return n?{mode:"compact",fields:[...ai]}:r?{mode:"full",fields:[]}:i?{mode:"fields",fields:i}:{mode:"full",fields:[]}}function Wn(e,t,n="<query>"){if(e.mode!=="fields")return;let r=ci([...t.definitions.flatMap(s=>[s.key,s.metadata_key]),...le(C())]),i=new Set(r),o=e.fields.filter(s=>{let a=s.trim();return!i.has(a)});if(o.length>0){let s=["search",n,"--fields",e.fields.filter(a=>!o.includes(a)).join(",")||"id,title,status,score"];throw new p(`Unknown search --fields value(s): ${o.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:r,suggested_retry:me(s),suggested_retry_args:s}})}}function Bt(e){let t=U(e);if(!t)throw new p("Search query must not be empty",f.USAGE);return t.split(/\s+/u).filter(Boolean)}function Hn(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var im=["auto","keyword","semantic","hybrid"];function om(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let n=t.trim().toLowerCase();return im.includes(n)?n:"auto"}function zn(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:nm(e.requested),source:"explicit"};let t=om(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Kn(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function Vn(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function Qn(e){let t={title_exact_bonus:10,title_weight:48,description_weight:5,tags_weight:6,status_weight:2,body_weight:1,comments_weight:1,notes_weight:1,learnings_weight:1,reminders_weight:2,events_weight:2,dependencies_weight:3,linked_content_weight:1},n=e.search?.tuning;if(!n)return t;let r=(i,o)=>typeof i=="number"&&Number.isFinite(i)&&i>=0?i:o;return{title_exact_bonus:r(n.title_exact_bonus,t.title_exact_bonus),title_weight:r(n.title_weight,t.title_weight),description_weight:r(n.description_weight,t.description_weight),tags_weight:r(n.tags_weight,t.tags_weight),status_weight:r(n.status_weight,t.status_weight),body_weight:r(n.body_weight,t.body_weight),comments_weight:r(n.comments_weight,t.comments_weight),notes_weight:r(n.notes_weight,t.notes_weight),learnings_weight:r(n.learnings_weight,t.learnings_weight),reminders_weight:r(n.reminders_weight,t.reminders_weight),events_weight:r(n.events_weight,t.events_weight),dependencies_weight:r(n.dependencies_weight,t.dependencies_weight),linked_content_weight:r(n.linked_content_weight,t.linked_content_weight)}}import sm 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]="e1f303b6-a641-5550-b58c-ef023b68d5e4")}catch{}})();function Yn(e){return fe("search",{pmRoot:e.pmRoot===void 0?void 0:sm.resolve(e.pmRoot),query:e.query.trim(),mode:e.mode,options:nt(e.searchOptions,zr)})}function Is(e){let t=rt(e.sorted,{cursor:e.searchOptions.after,fingerprint:Yn(e),limit:e.limit,readId:n=>n.item.id});return{limited:t.rows,pageExtras:{applied_limit:e.limit,...t.has_more?{has_more:!0,truncated:!0}:{},...t.next_cursor?{next_cursor:t.next_cursor}:{}}}}(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]="c8a2412e-2b0c-59c2-81ad-43de4d51562f")}catch{}})();function xs(e){if(typeof e!="string")return!1;let t=e.split(",").map(n=>n.trim().toLowerCase()).filter(Boolean);return t.length===1&&t[0]==="all"}var am=[{optionKey:"status",summaryKey:"status",normalize:e=>xs(e)?"all":e},{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:"assignee",summaryKey:"assignee"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"parent",summaryKey:"parent"}];function we(e){let{mode:t,matchMode:n,options:r,includeLinked:i,titleExact:o,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,runtimeFieldFilters:d}=e,l={};return to(l,r,am),Object.assign(l,cn(r)),Object.assign(l,an(r)),n!==void 0&&n!=="or"&&(l.match_mode=n),i&&(l.include_linked=!0),o&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&r.semanticWeight!==void 0&&(l.hybrid_semantic_weight=c),r.limit!==void 0&&(l.limit=r.limit),d&&Object.keys(d).length>0&&(l.runtime_filters=d),l}function ve(e){let{effectiveMode:t,matchMode:n,options:r,includeLinked:i,titleExact:o,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,queryExpansion:d,rerank:l,runtimeFieldFilters:u}=e,m=h=>h??null;return{mode:t,match_mode:n,status:r.status===void 0||xs(r.status)?"all":r.status,type:m(r.type),tag:m(r.tag),priority:m(r.priority),deadline_before:m(r.deadlineBefore),deadline_after:m(r.deadlineAfter),updated_after:m(r.updatedAfter),updated_before:m(r.updatedBefore),created_after:m(r.createdAfter),created_before:m(r.createdBefore),assignee:m(r.assignee),sprint:m(r.sprint),release:m(r.release),parent:m(r.parent),...cn(r),...an(r),include_linked:i,title_exact:o,phrase_exact:s,score_threshold:a,hybrid_semantic_weight:t==="hybrid"?c:null,query_expansion_enabled:d.enabled,query_expansion_provider:d.provider,rerank_enabled:l.enabled,rerank_model:l.model,rerank_top_k:l.top_k,limit:m(r.limit),runtime_filters:u}}(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]="0272e482-0dab-5970-b19a-4da286fd112b")}catch{}})();var cm=1.2,dm=.75;function Xn(e){return ue(e)}function lm(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return t}function Rs(e){let t=[],n=new Map,r=0;for(let o of e){let s=Xn(o.text),a=lm(s);r+=s.length;for(let c of a.keys())n.set(c,(n.get(c)??0)+1);t.push({id:o.id,termFrequencies:a,length:s.length})}let i=t.length;return{documents:t,documentFrequency:n,documentCount:i,averageDocumentLength:i>0?r/i:0}}function um(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function As(e,t,n){let r=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return r;let i=[...new Set(t.filter(s=>s.length>0))];if(i.length===0)return r;let o=new Map;for(let s of i){let a=e.documentFrequency.get(s);a!==void 0&&o.set(s,um(e.documentCount,a))}if(o.size===0)return r;for(let s of e.documents){let a=0;for(let[c,d]of o){let l=s.termFrequencies.get(c);if(l===void 0)continue;let u=1-n.b+n.b*s.length/e.averageDocumentLength,m=l+n.k1*u;a+=d*(l*(n.k1+1)/m)}a>0&&r.set(s.id,a)}return r}function Ts(e,t,n,r){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(r,Math.max(n,e))}function Ds(e){let t=n=>typeof n=="string"?[n]:typeof n=="number"?[String(n)]:Array.isArray(n)?n.flatMap(t):typeof n=="object"&&n!==null?Object.values(n).flatMap(t):[];return t(Object.values(e)).join(" ")}function Fs(e){let t=e?.search?.bm25;return{k1:Ts(t?.k1,cm,0,1e3),b:Ts(t?.b,dm,0,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]="b75c3c5e-e2b7-5e65-a56a-883dc896290e")}catch{}})();var Jn=4,mm=20,fm=200,pm=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function Zn(e,t){let n=[],r=new Set;for(let i of e){let o=i.trim().replaceAll(/\s+/g," ");if(o.length===0)continue;let s=o.toLowerCase();if(!r.has(s)&&(r.add(s),n.push(o),n.length>=t))break}return n}function hm(e){let t=e.toLowerCase();return t.length>4&&t.endsWith("ies")?`${t.slice(0,-3)}y`:t.length>4&&(t.endsWith("ches")||t.endsWith("shes")||t.endsWith("xes")||t.endsWith("zes")||t.endsWith("sses"))?t.slice(0,-2):t.length>3&&t.endsWith("s")&&!t.endsWith("ss")&&!t.endsWith("us")&&!t.endsWith("is")&&!t.endsWith("as")?t.slice(0,-1):t}function gm(e){let t=e.toLowerCase();return t.length>2&&(!t.endsWith("s")||t.endsWith("ss"))?t.endsWith("y")&&!/[aeiou]y$/u.test(t)?`${t.slice(0,-1)}ies`:t.endsWith("ch")||t.endsWith("sh")||t.endsWith("x")||t.endsWith("z")||t.endsWith("ss")?`${t}es`:`${t}s`:t}function Ms(e,t=Jn){let n=e.trim().replaceAll(/\s+/g," ");if(n.length===0)return[];let r=ue(n);if(r.length===0)return[n];let i=r.filter(a=>!pm.has(a.toLowerCase())),o=r.map(a=>hm(a)),s=i.map(a=>gm(a));return Zn([n,r.join(" "),i.join(" "),o.join(" "),s.join(" ")],Math.max(1,t))}function $s(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?Zn(t.filter(n=>typeof n=="string"),Jn):[]}function Os(e,t,n){return Zn([...e,...t],Math.max(1,n))}function Ls(e,t){let n=e.search?.query_expansion,r=Ee(n?.provider);return{enabled:n?.enabled===!0,provider:r??t,max_queries:Jn}}function Ns(e,t){let n=e.search?.rerank,r=Ee(n?.model),i=Br(n?.top_k)??mm;return{enabled:n?.enabled===!0,model:r??t,top_k:Math.min(fm,i)}}function Ps(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let n=new Map;for(let i of t){if(typeof i!="object"||i===null)continue;let o=Ee(i.id),s=i.score;if(!o||typeof s!="number"||!Number.isFinite(s))continue;let a=n.get(o);(a===void 0||s>a)&&n.set(o,s)}let r=[...n.entries()].map(([i,o])=>({id:i,score:o}));return r.sort((i,o)=>i.score!==o.score?o.score-i.score:i.id.localeCompare(o.id)),r}function ym(e,t){let n=e.length,r=0;for(let i=0;i<n;i+=1)r+=e[i]*t[i];return r}function js(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function _m(e,t,n){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let r=ym(e,t),i=js(t),o=n*i;return!Number.isFinite(r)||!Number.isFinite(n)||!Number.isFinite(i)||!Number.isFinite(o)||o===0?0:Math.max(-1,Math.min(1,r/o))}async function Us(e,t,n,r,i){if(r.length===0)return new Map;let o=Ee(t)??e.model,s=o===e.model?e:{...e,model:o},a=[n.trim(),...r.map(m=>m.text)],c=await pt(s,a,i?{timeout_ms:i}:{}),d=c[0];if(!d)return new Map;let l=js(d),u=new Map;for(let m=0;m<r.length;m+=1){let h=r[m],g=c[m+1];if(!g)continue;let _=_m(d,g,l);u.set(h.id,Math.max(0,Math.min(1,(_+1)/2)))}return u}(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]="a5d1f401-e5eb-5b6e-8b5a-d8135128f44b")}catch{}})();function be(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function V(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function We(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function er(e){let t=e.metadata;return[t.title,t.description,t.status,be(t.tags).join(" "),e.body,V(t.comments).map(n=>n.text).join(" "),V(t.notes).map(n=>n.text).join(" "),V(t.learnings).map(n=>n.text).join(" "),ht(t).join(" "),gt(t).join(" "),We(t.dependencies).map(n=>`${n.id} ${n.kind}`).join(" "),yt(t)]}function tr(e,t){return er(e).some(n=>U(n).includes(t))}function nr(e,t,n){return!n.titleExact&&!n.phraseExact?e:e.filter(r=>!(n.titleExact&&U(r.metadata.title)!==t||n.phraseExact&&!tr(r,t)))}function wm(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null".',f.USAGE)}function vm(e,t,n){let r=Ae(e.assignee,{label:"--assignee"});wm(r);let i=Zi(e),o=eo(e);return{typeFilter:Gi(e.type,t),tagFilter:Ae(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Wi(e.priority),deadlineBefore:Gn(e.deadlineBefore,"deadline-before"),deadlineAfter:Gn(e.deadlineAfter,"deadline-after"),updatedAfter:oe(e.updatedAfter,"updated-after"),updatedBefore:oe(e.updatedBefore,"updated-before"),createdAfter:oe(e.createdAfter,"created-after"),createdBefore:oe(e.createdBefore,"created-before"),assigneeFilter:r,sprintFilter:Ae(e.sprint,{label:"--sprint"}),releaseFilter:Ae(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:n&&n.length>0?new Set(n):void 0,missingMetadataFilters:i,missingMetadataActive:zi(i),contentFieldFilters:o,contentFiltersActive:Vi(o)}}function bm(e,t){return km(e,t)&&oi(e,t)&&Sm(e,t)}function km(e,t){if(t.statusSet&&!t.statusSet.has(e.status)||t.typeFilter&&!t.typeFilter.has(e.type))return!1;let n=t.tagFilter;return!(n&&!be(e.tags).some(r=>n.has(r))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function Sm(e,t){return!(t.assigneeFilter!==void 0&&(e.assignee===void 0||!t.assigneeFilter.has(e.assignee))||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))||t.releaseFilter!==void 0&&(e.release===void 0||!t.releaseFilter.has(e.release))||t.parentFilter!==void 0&&e.parent!==t.parentFilter)}function Em(e,t,n,r){let i=e.metadata;return!(!bm(i,t)||!mt(i,n)||t.missingMetadataActive&&!Ki(i,t.missingMetadataFilters,r)||t.contentFiltersActive&&!Qi(i,t.contentFieldFilters))}function rr(e,t,n,r,i,o){let s=vm(t,n,i);return e.filter(a=>Em(a,s,r,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]="a3f9e7fa-7ebf-5fc7-93a4-f12cff30f4ff")}catch{}})();var Cm=2,Im=120,xm=6,Tm=40,Rm=1e3,Am=900,Dm="\xAB",Fm="\xBB",Bs=60;function qt(e,t){let n=0,r=0;for(;;){let i=e.indexOf(t,r);if(i<0)return n;n+=1,r=i+t.length}}var qs=[{name:"title",weightKey:"title_weight",value:e=>e.metadata.title},{name:"description",weightKey:"description_weight",value:e=>e.metadata.description},{name:"tags",weightKey:"tags_weight",value:e=>be(e.metadata.tags).join(" ")},{name:"status",weightKey:"status_weight",value:e=>typeof e.metadata.status=="string"?e.metadata.status:""},{name:"body",weightKey:"body_weight",value:e=>e.body},{name:"comments",weightKey:"comments_weight",value:e=>V(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>V(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>V(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>ht(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>gt(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>We(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>yt(e.metadata)}],Mm=new Map(qs.map(e=>[e.name,e]));function ir(e,t){let n=t.filter(i=>i.length>0).sort((i,o)=>o.length-i.length).map(i=>i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(n.length===0)return e;let r=new RegExp(n.join("|"),"gi");return e.replace(r,i=>`${Dm}${i}${Fm}`)}function or(e,t){if(e.length===0)return null;let n=e.toLowerCase(),r=-1,i=0;for(let l of t){if(l.length===0)continue;let u=n.indexOf(l);u>=0&&(r<0||u<r)&&(r=u,i=l.length)}if(r<0)return null;let o=Math.max(0,r-Bs),s=Math.min(e.length,r+i+Bs),a=ir(e.slice(o,s),t),c=o>0?"\u2026":"",d=s<e.length?"\u2026":"";return`${c}${a}${d}`}function Gt(e,t,n){let r=[];for(let i of t){let o=Mm.get(i);if(o===void 0)continue;let s=or(o.value(e),n);s!==null&&r.push({field:i,snippet:s})}return r}function $m(e,t,n){return[...qs.map(r=>({name:r.name,value:r.value(e),weight:n[r.weightKey]})),{name:"linked_content",value:t,weight:n.linked_content_weight}]}function Om(e,t,n){let r=U(e.id),i=typeof n=="string"?n.trim().toLowerCase():"",o=U(i),s=o.length>0&&r.startsWith(o)?r.slice(o.length).trim():r;return t!==r&&t!==s?null:{item:e,score:t===r?Rm:Am,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function Lm(e,t,n,r,i){for(let o of e){let s=t.get(o)??0;s>0&&(i.score+=s*r.title_exact_bonus,i.matched.add("title"),i.matchedTokens.add(o));for(let a of n){let c=qt(a.value.toLowerCase(),o);c>0&&(i.score+=c*a.weight,i.matched.add(a.name),i.matchedTokens.add(o))}}}function Nm(e,t,n,r){U(e.title)===t&&(r.score+=Im,r.matched.add("title"));for(let i of n){let o=qt(U(i.value),t);o>0&&(r.score+=o*i.weight*xm,r.matched.add(i.name))}}function sr(e,t,n,r,i,o,s=!1){let a=e.metadata,c=Om(a,n,o);if(c)return c;let d=new Map;for(let g of ue(a.title))d.set(g,(d.get(g)??0)+1);let l=$m(e,r,i),u={score:0,matched:new Set,matchedTokens:new Set};Lm(t,d,l,i,u);let m=new Set(t),h=m.size>0&&u.matchedTokens.size===m.size;return s&&m.size>1&&h&&(u.score+=Tm),t.length>=Cm&&n.includes(" ")&&Nm(a,n,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((g,_)=>g.localeCompare(_)),matched_all_terms:h}}function ar(e,t){return[...e].sort((n,r)=>{let i=r.score-n.score;if(i!==0)return i;let o=J(n.item.status,t),s=J(r.item.status,t);if(o!==s)return o?1:-1;let a=n.item.priority-r.item.priority;if(a!==0)return a;let c=E(r.item.updated_at,n.item.updated_at);return c!==0?c:n.item.id.localeCompare(r.item.id)})}function cr(e,t,n,r,i,o,s,a=!1){return sr(e,t,n,r?i.get(e.metadata.id)??"":"",o,s,a)}function He(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;for(let i of e.values())t=Math.min(t,i),n=Math.max(n,i);if(n===t)return new Map([...e.keys()].map(i=>[i,1]));let r=new Map;for(let[i,o]of e)r.set(i,(o-t)/(n-t));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]="c8484fbd-5fb2-56aa-9d69-26646be262a9")}catch{}})();function Ht(e){let t=[],n=e;for(let r=0;r<5&&n&&typeof n=="object";r+=1){let i=n.code;typeof i=="string"&&t.push(i.toLowerCase()),n=n.cause}return t.join(" ")}function zt(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),n=Ht(e),r=`${t} ${n}`;return r.includes("timed out")||r.includes("timeout")||r.includes("etimedout")?"timeout":r.includes("econnrefused")||r.includes("connection refused")||r.includes("connect ")||r.includes("enotfound")||r.includes("eai_again")||r.includes("econnreset")||r.includes("fetch failed")?"connection":"error"}function dr(e,t){let n=zt(t);return`search_${e}_fallback:${n}:using_keyword_mode`}function Gs(e){return e?.commands?.some(t=>t.command.trim()==="reindex")===!0?{command:"pm reindex --mode hybrid",args:["reindex","--mode","hybrid"]}:{command:"pm install search-advanced --project",args:["install","search-advanced","--project"],follow_up_command:"pm reindex --mode hybrid",follow_up_args:["reindex","--mode","hybrid"]}}async function lr(e,t,n){try{let r=await Ni(e);r.warnings.length>0&&n.push(...r.warnings);let i=ao(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),r.entries);if(i.length===0)return;let o=Gs(C());n.push(...Ws(i.length,o)),process.stderr.write(`[pm] warning: ${i.length} item${i.length===1?" is":"s are"} new or modified since the last reindex and ${i.length===1?"is":"are"} NOT in the semantic index yet \u2014 run '${o.command}'${o.follow_up_command?`, then '${o.follow_up_command}'`:""}. (Write-time embedding is governed by search.mutation_refresh_policy; staleness means the embed was skipped, failed, or the backend was unreachable.)
9
- `)}catch{}}function Ws(e,t){return[`vector_index_stale:${e}`,`vector_index_recovery:${t.args.join(" ")}`,...t.follow_up_args?[`vector_index_recovery_follow_up:${t.follow_up_args.join(" ")}`]:[]]}function Kt(e,t,n,r){if(!t.active)throw new p(`Search mode '${e}' requires a configured embedding provider in settings.providers.openai or settings.providers.ollama`,f.USAGE);if(!n.active&&!r)throw new p(`Search mode '${e}' requires a configured vector store in settings.vector_store.qdrant/settings.vector_store.lancedb or an extension adapter selected by settings.vector_store.adapter`,f.USAGE);return{provider:t.active,vectorStore:n.active??null}}var B=Je;function ze(e){let t=C(),n=ui(t,e);if(!n)return null;let r=n.runtime_definition??n.definition,i=r.query,o=r.queryExpansion??r.query_expansion,s=r.rerank,a=B(r.name)??B(n.definition.name)??e;if(!a)return null;let c={providerName:a,...typeof i=="function"?{query:i}:{},...typeof o=="function"?{queryExpansion:o}:{},...typeof s=="function"?{rerank:s}:{}};return!c.query&&!c.queryExpansion&&!c.rerank?null:c}function ur(e){let t=B(e.search?.provider),n=ze(t);return n?.query?{providerName:n.providerName,query:n.query}:null}function mr(e){let t=C(),n=B(e.vector_store?.adapter),r=mi(t,n);if(!r)return null;let i=r.runtime_definition??r.definition,o=i.query;if(typeof o!="function")return null;let s=i.upsert;return{adapterName:B(i.name)??B(r.definition.name)??n??"extension",query:o,...typeof s=="function"?{upsert:s}:{}}}function fr(e,t,n){let r=Array.isArray(t)?t:t?.hits;if(!Array.isArray(r))throw new p(`Extension search provider "${e}" must return an array of hits or { hits: [...] }`,f.GENERIC_FAILURE);let i=new Set,o=[];for(let s of r){if(typeof s!="object"||s===null)continue;let a=B(s.id),c=s.score;if(!a||typeof c!="number"||!Number.isFinite(c)||i.has(a))continue;let d=n.get(a);if(!d)continue;let l=s.matched_fields,u=Array.isArray(l)&&l.every(m=>typeof m=="string")?[...new Set(l.map(m=>m.trim()).filter(m=>m.length>0))].sort((m,h)=>m.localeCompare(h)):[`provider:${e}`];i.add(a),o.push({item:d.metadata,score:c,matched_fields:u})}return o}function pr(e,t){let n=[],r=new Map;for(let i of e){if(r.has(i.id))continue;let o=t.get(i.id);o&&(r.set(i.id,i.score),n.push({item:o.metadata,score:i.score,matched_fields:["semantic"]}))}return{semanticHits:n,semanticScores:r}}function Wt(e,t){let n=t.filter(c=>c.exact_id_match===!0);if(n.length===0)return e;let r=new Set(n.map(c=>c.item.id)),i=e.filter(c=>!r.has(c.item.id)),o=i.reduce((c,d)=>Math.max(c,d.score),0),s=n.sort((c,d)=>d.score-c.score),a=o+s.length+1;return[...s.map((c,d)=>({...c,score:a-d,matched_fields:["id"]})),...i]}function Vt(e,t,n,r,i="semantic"){let o=new Map(n.map(u=>[u.item.id,u.score])),s=new Map(n.map(u=>[u.item.id,u.matched_fields])),a=He(t),c=He(o),d=new Set([...t.keys(),...o.keys()]),l=1-r;return[...d].map(u=>{let m=e.get(u),h=a.get(u)??0,g=c.get(u)??0,_=h*r+g*l;if(_<=0)return null;let y=new Set;t.has(u)&&y.add(i);for(let v of s.get(u)??[])y.add(v);return{item:m.metadata,score:_,matched_fields:[...y].sort((v,k)=>v.localeCompare(k))}}).filter(u=>u!==null)}function hr(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function gr(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:Ds(Oi(s,{fields:e.corpusFields}))})),n=Rs(t),r=As(n,Xn(e.query),e.bm25Params),i=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...r].map(([a,c])=>({item:i.get(a).metadata,score:c,matched_fields:["bm25"]}));return Wt(s,e.keywordHits)}let o=Vt(i,r,e.keywordHits,e.hybridSemanticWeight,"bm25");return Wt(o,e.keywordHits)}function yr(e){let t=new Map;for(let r of e)for(let i of r){let o=t.get(i.id);(!o||i.score>o.score)&&t.set(i.id,i)}let n=[...t.values()];return n.sort((r,i)=>r.score!==i.score?i.score-r.score:r.id.localeCompare(i.id)),n}function _r(e){let t=e.metadata,n=Array.isArray(t?.tags)?t.tags.join(" "):"";return[t?.title,t?.description,t?.type,t?.status,n,e.body].map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0).join(`
10
- `)}async function Pm(e,t){let n=e.queryExpansion.enabled?Ms(t,e.queryExpansion.max_queries):[t],r=n.length>0?n:[t];if(!e.queryExpansion.enabled)return r;if(e.queryExpansionExtension?.expand)try{let i=await Promise.resolve(e.queryExpansionExtension.expand({query:t,mode:e.requestedMode,settings:e.settings}));return Os(r,$s(i),e.queryExpansion.max_queries)}catch{return e.warnings.push(`search_query_expansion_provider_failed:${e.queryExpansionExtension.providerName}:using_builtin`),r}return e.queryExpansion.provider&&e.queryExpansion.provider!=="openai"&&e.queryExpansion.provider!=="ollama"&&e.warnings.push(`search_query_expansion_provider_unavailable:${e.queryExpansion.provider}:using_builtin`),r}async function jm(e,t,n,r){if(e.extensionVectorAdapter?.query)try{return await Promise.resolve(e.extensionVectorAdapter.query({vector:t,limit:n,settings:e.settings}))}catch(i){if(!e.vectorStore)throw new p(`Extension vector adapter query failed and no built-in fallback store is configured (${i instanceof Error?i.message:String(i)})`,f.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await sn(e.vectorStore,t,n,r)}if(e.vectorStore)return await sn(e.vectorStore,t,n,r);throw new p("Semantic search requires either a configured vector store or an extension vector adapter query handler",f.USAGE)}function Um(e,t,n){return[...e].sort((r,i)=>r.score!==i.score?i.score-r.score:r.item.id.localeCompare(i.item.id)).slice(0,n).map(r=>{let i=t.get(r.item.id);return i?{hit:r,text:_r(i)}:null}).filter(r=>r!==null)}async function Bm(e,t,n){if(!e.rerankExtension?.rerank)return null;try{let r=await Promise.resolve(e.rerankExtension.rerank({query:t,mode:"hybrid",model:e.rerank.model,top_k:e.rerank.top_k,settings:e.settings,candidates:n.map(o=>({id:o.hit.item.id,text:o.text,score:o.hit.score}))})),i=Ps(r);return i.length>0?new Map(i.map(o=>[o.id,o.score])):(e.warnings.push(`search_rerank_provider_invalid_response:${e.rerankExtension.providerName}:using_builtin`),null)}catch{return e.warnings.push(`search_rerank_provider_failed:${e.rerankExtension.providerName}:using_builtin`),null}}async function qm(e,t,n){let r=await Bm(e,t,n);if(r)return r;let i=n.map(o=>({id:o.hit.item.id,text:o.text}));try{return await Us(e.provider,e.rerank.model,t,i,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function Gm(e,t){let n=new Set(t.keys()),r=e.map(i=>{let o=t.get(i.item.id);if(o===void 0)return i;let s=new Set(i.matched_fields);return s.add("rerank"),{...i,score:o,matched_fields:[...s].sort((a,c)=>a.localeCompare(c))}});return r.sort((i,o)=>{let s=n.has(i.item.id),a=n.has(o.item.id);return s!==a?s?-1:1:i.score!==o.score?o.score-i.score:i.item.id.localeCompare(o.item.id)}),r}async function Wm(e,t,n,r){if(!e.rerank.enabled||n.length<=1)return n;let i=Um(n,r,e.rerank.top_k),o=await qm(e,t,i);return o&&o.size>0?Gm(n,o):n}async function wr(e){let t=Math.max(e.limit??e.maxResults,e.maxResults),n=e.embeddingTimeoutMs!==void 0?{timeout_ms:e.embeddingTimeoutMs}:{},r=e.vectorQueryTimeoutMs!==void 0?{timeout_ms:e.vectorQueryTimeoutMs}:{},i=e.query.trim(),o=await Pm(e,i),s=await pt(e.provider,o,n),a=await Promise.all(s.map(async g=>await jm(e,g,t,r))),c=yr(a),d=new Map(e.filteredDocuments.map(g=>[g.metadata.id,g])),{semanticHits:l,semanticScores:u}=pr(c,d),m=u.size;if(e.requestedMode==="semantic")return{hits:Wt(l,e.keywordHits),vectorMatchCount:m};let h=await Wm(e,i,Vt(d,u,e.keywordHits,e.hybridSemanticWeight),d);return{hits:Wt(h,e.keywordHits),vectorMatchCount:m}}function Hs(e){let t=ze(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function zs(e){let t=ze(B(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}import Qt from"node:fs/promises";import vr 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]="de9a1cbd-f277-52ef-adc6-66225f2d2f4f")}catch{}})();function br(e){let t=(e.files??[]).map(s=>({scope:s.scope,path:s.path.trim()})),n=(e.docs??[]).map(s=>({scope:s.scope,path:s.path.trim()})),r=(e.tests??[]).filter(s=>typeof s.path=="string"&&s.path.trim().length>0).map(s=>({scope:s.scope,path:s.path.trim()})),i=[...t,...n,...r].filter(s=>s.path.length>0).sort((s,a)=>s.scope.localeCompare(a.scope)||s.path.localeCompare(a.path)),o=new Map;for(let s of i)o.set(`${s.scope}:${s.path}`,s);return[...o.values()]}async function Ks(e){let t=vr.resolve(e);try{let n=await Qt.realpath(t);return{resolved:t,realpath:n}}catch{return null}}async function kr(e,t){let[n,r]=await Promise.all([Ks(e),Ks(t)]);return{projectContainmentRoot:n,globalContainmentRoot:r}}async function Sr(e,t){let n=br(e.metadata),r=[];for(let i of n){let o=i.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!o)continue;let s=vr.resolve(o.resolved,i.path);if(!Zt(o.resolved,s))continue;let a;try{a=await Qt.realpath(s)}catch{continue}if(Zt(o.realpath,a))try{await Ce({path:s,scope:i.scope}),r.push(await Qt.readFile(s,"utf8"))}catch{}}return r.join(`
11
- `)}async function Er(e,t,n,r){let i=le(C()),o=async(d,l,u)=>{let m=async(h,g)=>{await Ce({path:h,scope:"project"});let _=await Qt.readFile(h,"utf8");return fi(_,{format:g,schema:r,extensionFieldNames:i,onWarning:y=>s.push(y)}).body};try{return await m(l,u)}catch{let h=u==="toon"?"json_markdown":"toon",g=en(e,d.type,d.id,h,n);try{return await m(g,h)}catch{return s.push(`item_list_item_read_failed:${vr.relative(e,g)}`),""}}},s=[],a=await Ri(e,t,n,s,r),c=[];if(a.length===0){let d=await Ai(e,t,n,s,r);for(let l of d){let u=en(e,l.type,l.id,t,n),m=await o(l,u,t);c.push({metadata:l,body:m})}return{documents:c,warnings:[...new Set(s)].sort((l,u)=>l.localeCompare(u))}}for(let d of a){if(typeof d.body=="string"){c.push({metadata:d.metadata,body:d.body});continue}let l=await o(d.metadata,d.item_path,d.item_format);c.push({metadata:d.metadata,body:l})}return{documents:c,warnings:[...new Set(s)].sort((d,l)=>d.localeCompare(l))}}async function Vs(e,t,n){let r=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return r;let i=process.cwd(),o=await kr(i,Gr(i)),s=await Promise.all(n.map(async a=>[a.metadata.id,await Sr(a,o)]));for(let[a,c]of s)r.set(a,c);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]="17122985-4157-5732-9142-444327cb273d")}catch{}})();var Qs=["tag","status","type","priority"];function Cr(e){let t={},n=[];for(let r of e.split(/\s+/).filter(i=>i.length>0)){let i=r.indexOf(":"),o=i>0?r.slice(0,i).toLowerCase():"",s=i>0?r.slice(i+1):"",a=Qs.includes(o)?o:void 0;if(a&&s.length>0&&t[a]===void 0){t[a]=s;continue}n.push(r)}return{residualQuery:n.join(" "),inlineFilters:t}}function Ir(e,t,n){let r={...e};for(let i of Qs){let o=t[i];if(o!==void 0){if(Je(r[i])!==void 0){n.push(`search_inline_filter_ignored:${i}:flag_takes_precedence`);continue}r[i]=o}}return r}function Ys(e,t){let n=[],r=Cr(e),i=Object.keys(r.inlineFilters).length>0;if(i&&r.residualQuery.trim().length===0)throw new p("Inline field:value tokens consumed the entire query, leaving no search terms.",f.USAGE,{examples:["pm search auth tag:area:search","pm list --tag area:search --status open"],nextSteps:["Add keyword terms alongside the inline filters, or use pm list for pure tag/status/type/priority filtering."]});let o=i?r.residualQuery:e,s=Ir(t,r.inlineFilters,n);return{query:o,options:s,inlineWarnings:n,highlight:s.highlight===!0,includeLinked:jt(s.includeLinked),titleExact:jt(s.titleExact),phraseExact:jt(s.phraseExact),matchMode:Es(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:Cs(s.minScore),countOnly:s.count===!0,tokens:Bt(o),normalizedQuery:U(o),limit:pe(s.limit),projection:Ut(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}function Xs(e){if(e.after!==void 0&&e.count===!0)throw new p("Search --after cannot be combined with --count.",f.USAGE)}(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]="d7beacb7-66a5-581f-93f0-68ceb4b8e41e")}catch{}})();function Tr(e,t,n,r,i,o,s,a,c,d,l,u,m,h){let g=m?{total:0,count_only:!0}:{};if(d.mode==="compact"&&r.compact===!0){let y=we({mode:t,matchMode:n,options:r,includeLinked:i,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:o,hybridSemanticWeight:s,runtimeFieldFilters:u});return{query:e.trim(),mode:t,...Fr(h),items:[],count:0,...g,filters:y,...l.length>0?{warnings:l}:{}}}let _=d.mode==="full"?null:[...d.fields];return{query:e.trim(),mode:t,mode_source:h,items:[],count:0,...g,filters:ve({effectiveMode:t,matchMode:n,options:r,includeLinked:i,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:o,hybridSemanticWeight:s,queryExpansion:a,rerank:c,runtimeFieldFilters:u??{}}),projection:{mode:d.mode,fields:_},now:O(),...l.length>0?{warnings:l}:{}}}function Rr(e,t){let n=t.trim();if(n.length===0)return null;if(n==="score")return e.score;if(n==="matched_fields")return e.matched_fields;if(n.startsWith("item.")){let o=n.slice(5);return o.length===0?null:e.item[o]??null}let r=e,i=e.item;return Object.prototype.hasOwnProperty.call(i,n)?i[n]??null:Object.prototype.hasOwnProperty.call(r,n)?r[n]??null:null}function Ar(e,t){return t.mode==="full"?e.map(({matched_all_terms:n,exact_id_match:r,...i})=>i):e.map(n=>{let r={};for(let i of t.fields)r[i]=Rr(n,i);return r})}function Dr(e,t){return Tr(e.query,e.effectiveMode,e.matchMode,e.options,e.includeLinked,e.scoreThreshold,e.hybridSemanticWeight,e.queryExpansion,e.rerank,e.projection,e.warnings,e.runtimeFieldFilters,t,e.modeSource)}function Js(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return xr({query:e.query.trim(),mode:e.effectiveMode,...Fr(e.modeSource),items:[],count:t,total:t,count_only:!0,filters:we({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let n=e.projection.mode==="full"?null:[...e.projection.fields];return xr({query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:[],count:t,total:t,count_only:!0,filters:ve({effectiveMode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,queryExpansion:e.queryExpansion,rerank:e.rerank,runtimeFieldFilters:e.runtimeFieldFilters}),projection:{mode:e.projection.mode,fields:n},now:O()},e.warnings)}function Fr(e){return e==="settings"?{mode_source:e}:{}}function xr(e,t){return t.length===0?e:{...e,warnings:t}}function Ke(e,t){return t?{...e,workspace_memory:t}:e}function Zs(e,t,n){if(!e.highlight)return{hits:n,projection:e.projection};let r=new Map(t.map(o=>[o.metadata.id,o])),i=n.map(o=>({...o,highlights:Gt(r.get(o.item.id),o.matched_fields,e.tokens)}));return e.projection.mode==="full"||e.projection.fields.includes("highlights")?{hits:i,projection:e.projection}:{hits:i,projection:{mode:e.projection.mode,fields:[...e.projection.fields,"highlights"]}}}function ea(e,t,n,r,i,o){let s=r<n?{total:n}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return xr({query:e.query.trim(),mode:e.effectiveMode,...Fr(e.modeSource),items:t,count:t.length,...s,...o,filters:we({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let a=i.mode==="full"?null:[...i.fields];return{query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:t,count:t.length,...s,...o,filters:ve({effectiveMode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,queryExpansion:e.queryExpansion,rerank:e.rerank,runtimeFieldFilters:e.runtimeFieldFilters}),projection:{mode:i.mode,fields:a},now:O(),...e.warnings.length>0?{warnings:e.warnings}:{}}}(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]="3bfd872f-6ed7-551c-a027-3748493de3e9")}catch{}})();var s_={applyFilters:rr,applyExactQueryFilters:nr,applyInlineQueryFilters:Ir,buildHitHighlights:Gt,buildVerboseSearchFilters:ve,buildExplicitSemanticFallbackWarning:dr,buildCompactSearchFilterSummary:we,buildHybridLexicalScore:cr,buildRerankCorpus:_r,buildSemanticHits:pr,classifyImplicitSemanticFallbackReason:zt,collectErrorCauseCodes:Ht,collectExactPhraseFields:er,collectLinkedPaths:br,combineHybridHits:Vt,computeBuiltInBm25Hits:gr,computeSemanticOrHybridHits:wr,resolveBuiltInBm25Mode:hr,countOccurrences:qt,dependencyEntries:We,documentContainsExactPhrase:tr,emptySearchResult:Tr,highlightFieldSnippet:or,loadDocuments:Er,markTokenRuns:ir,parseInlineQueryFilters:Cr,maybeEmitVectorIndexStaleWarning:lr,loadLinkedCorpus:Sr,mergeVectorHitsById:yr,normalizeExtensionProviderHits:fr,normalizeScoreMap:He,parseProjectionConfig:Ut,parseTimestampWindow:oe,parseTokens:Bt,projectSearchHits:Ar,readSearchFieldValue:Rr,requireSemanticDependencies:Kt,resolveExtensionSearchProvider:ur,resolveExtensionSearchProviderByName:ze,resolveExtensionVectorAdapter:mr,resolveLinkedCorpusRoots:kr,scoreDocument:sr,sortHits:ar,stringArray:be,textEntries:V,validateSearchProjectionFields:Wn};async function Hm(e,t){let n=R(process.cwd(),t.path);await q(n);let r=await M(n),i=Ti(r).settings,o=P(i.schema),s=X(i.schema);Wn(e.projection,s,e.query);let a=ut(e.options,s,"search"),c=F(i,C()),d=Mi(i),l=Li(i,n),u=ur(i),m=mr(i),h=Ss(e.options.semanticWeight),g=Ls(i,d.active?.name??null),_=Ns(i,d.active?.model??B(i.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:n,settings:i,statusRegistry:o,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:c,maxResults:Hn(i),scoreThreshold:e.minScoreOverride??Kn(i),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:h,hybridSemanticWeight:h??Vn(i),tuning:Qn(i),providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m,bm25Mode:hr({configuredProvider:B(i.search?.provider),hasEmbeddingProvider:d.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:g,queryExpansionExtension:Hs(g),rerank:_,rerankExtension:zs(i),...zm({requested:e.options.mode,settings:i,configuredProvider:r.search?.provider??null,providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m})}}function zm(e){let t=Fi(e.providerResolution.active?.name,e.configuredProvider)==="configured"&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null),n=e.extensionSearchProvider!==null||t,r=zn({requested:e.requested,settings:e.settings,semanticRunnable:n});return{effectiveMode:r.mode,modeSource:r.source}}async function Km(e,t){let n=await Er(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),r=lt(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),i=Hi(t.statusRegistry),o=rr(n.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,r,i);return{warnings:n.warnings,allDocuments:n.documents,filteredDocuments:nr(o,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function Vm(e,t,n){let r=await Vs(e.includeLinked,t.effectiveMode,n),i=e.matchMode==="or";return n.map(o=>cr(o,e.tokens,e.normalizedQuery,e.includeLinked,r,t.tuning,t.settings.id_prefix,i)).filter(o=>o!==null).filter(o=>e.matchMode!=="and"||o.matched_all_terms===!0)}async function Qm(e,t,n,r,i){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let o=gr({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:n,keywordHits:r,corpusFields:$i(t.settings),bm25Params:Fs(t.settings),hybridSemanticWeight:t.hybridSemanticWeight});return t.bm25Mode==="auto-fallback"&&i.push(`search_${t.effectiveMode}_offline_bm25:no_embedding_provider:using_lexical_bm25`),o}async function Ym(e,t,n,r){if(!t.extensionSearchProvider)return null;let i=t.providerResolution.active!==null&&(t.vectorResolution.active!==null||t.extensionVectorAdapter!==null);try{let o=await Promise.resolve(t.extensionSearchProvider.query({query:e.query,mode:t.effectiveMode,tokens:e.tokens,options:e.options,settings:t.settings,documents:n}));return fr(t.extensionSearchProvider.providerName,o,r)}catch(o){if(!i)throw new p(`Extension search provider "${t.extensionSearchProvider.providerName}" failed: ${o instanceof Error?o.message:String(o)}`,f.GENERIC_FAILURE);return null}}function Xm(e,t,n,r){return t.vectorMatchCount>0?t.hits:(r.push(`search_${e}_degraded:no_vector_matches:results_are_lexical`),e==="semantic"?n:t.hits)}async function Jm(e,t,n,r,i){let o=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);i&&o&&await lr(e.pmRoot,n,r),e.extensionSearchProvider||Kt(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function Zm(e){let{prepared:t,runtime:n,filteredDocuments:r,keywordHits:i,warnings:o,modeWasExplicit:s}=e,a=i,c=await Qm(t,n,r,i,o),d=n.effectiveMode;if(c!==null||d==="keyword")return{effectiveMode:n.effectiveMode,hits:c??a};try{if(await Jm(n,d,r,o,s),r.length===0||t.limit===0)return{effectiveMode:n.effectiveMode,hits:[]};let l=new Map(r.map(u=>[u.metadata.id,u]));if(a=await Ym(t,n,r,l)??a,a===i){let{provider:u,vectorStore:m}=Kt(d,n.providerResolution,n.vectorResolution,n.extensionVectorAdapter!==null),h=await wr({requestedMode:d,query:t.query,filteredDocuments:r,keywordHits:i,hybridSemanticWeight:n.hybridSemanticWeight,limit:t.limit,maxResults:n.maxResults,provider:u,vectorStore:m,extensionVectorAdapter:n.extensionVectorAdapter,queryExpansion:n.queryExpansion,queryExpansionExtension:n.queryExpansionExtension,rerank:n.rerank,rerankExtension:n.rerankExtension,warnings:o,settings:n.settings});a=Xm(d,h,i,o)}return{effectiveMode:n.effectiveMode,hits:a}}catch(l){return o.push(dr(n.effectiveMode,l)),{effectiveMode:"keyword",hits:i}}}function ta(e){e.searchOptions.after!==void 0&&ni(e.searchOptions.after,Yn(e))}async function a_(e,t,n){Xs(t);let r=Ys(e,t),i=await Hm(r,n),o=await Km(r,i),s=o.warnings;s.push(...r.inlineWarnings);let a=await Dt(o.allDocuments.map(S=>S.metadata),{pmRoot:i.pmRoot,statusRegistry:i.statusRegistry,now:O()});s.push(...a.warnings);let c=Ho(a,r.query);i.effectiveMode==="hybrid"&&i.semanticWeightProvided&&i.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let d={query:r.query,modeSource:i.modeSource,matchMode:r.matchMode,options:r.options,includeLinked:r.includeLinked,titleExact:r.titleExact,phraseExact:r.phraseExact,scoreThreshold:i.scoreThreshold,hybridSemanticWeight:i.hybridSemanticWeight,queryExpansion:i.queryExpansion,rerank:i.rerank,projection:r.projection,warnings:s,runtimeFieldFilters:i.runtimeFieldFilters};if(i.effectiveMode==="keyword"&&(o.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return ta({query:r.query,mode:i.effectiveMode,searchOptions:r.options,pmRoot:i.pmRoot}),Ke(Dr({...d,effectiveMode:i.effectiveMode},r.countOnly),c);let l=await Vm(r,i,o.filteredDocuments),u=await Zm({prepared:r,runtime:i,filteredDocuments:o.filteredDocuments,keywordHits:l,warnings:s,modeWasExplicit:r.modeWasExplicit});if(u.effectiveMode!=="keyword"&&u.hits.length===0&&(o.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return ta({query:r.query,mode:u.effectiveMode,searchOptions:r.options,pmRoot:i.pmRoot}),Ke(Dr({...d,effectiveMode:u.effectiveMode},r.countOnly),c);let m=u.hits.filter(S=>S.exact_id_match===!0||S.score>=i.scoreThreshold),h=ar(m,i.statusRegistry),g=h.length,_=Is({pmRoot:i.pmRoot,sorted:h,query:r.query,mode:u.effectiveMode,searchOptions:r.options,limit:r.limit??i.maxResults}),y={...d,effectiveMode:u.effectiveMode};if(r.countOnly)return Ke(Js(y,g),c);let{hits:v,projection:k}=Zs(r,o.filteredDocuments,_.limited),w=Ar(v,k);return Ke(ea(y,w,g,_.limited.length,k,_.pageExtras),c)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f303192a-cac2-588b-b988-e3a8132f4199")}catch{}})();var na=["ndcg","mrr","precision","recall"];function ef(e){if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("Eval minimum must be an object of metric floors");let t={};for(let[n,r]of Object.entries(e)){if(!na.some(i=>i===n))throw new TypeError(`Unknown eval minimum metric: ${n}`);if(typeof r!="number"||!Number.isFinite(r)||r<0||r>1)throw new TypeError(`Eval minimum.${n} must be a finite number in [0, 1]`);t[n]=r}return t}function d_(e,t){let n=ef(t),r=[];for(let i of na){let o=n[i];if(o===void 0)continue;let s=e[i];!Number.isFinite(s)||s<0||s>1?r.push(`${i}:invalid`):s<o&&r.push(`${i}:${s}<${o}`)}return r}export{oa as a,dn as b,nf as c,ma as d,fa as e,rf as f,cf as g,hh as h,lo as i,pf as j,hf as k,gf as l,yf as m,uo as n,Rf as o,Af as p,Df as q,Co as r,St as s,sc as t,Et as u,It as v,Kf as w,Ro as x,kn as y,Tt as z,Nc as A,Mo as B,qc as C,Rt as D,Gc as E,Wc as F,Vc as G,Qc as H,ip as I,Yc as J,$o as K,Sn as L,En as M,sd as N,md as O,hp as P,Cn as Q,In as R,At as S,yd as T,bd as U,Dt as V,Td as W,Wo as X,Rd as Y,Ho as Z,Ad as _,Nd as $,Le as aa,Kp as ba,An as ca,Ud as da,Bd as ea,Fn as fa,ie as ga,$n as ha,On as ia,Ln as ja,ye as ka,je as la,Ot as ma,Vp as na,ql as oa,Qp as pa,Kl as qa,dh as ra,lh as sa,uh as ta,mh as ua,fh as va,bh as wa,kh as xa,_s as ya,ws as za,vs as Aa,Yh as Ba,Xh as Ca,cg as Da,Hn as Ea,zn as Fa,Kn as Ga,Vn as Ha,Qn as Ia,Yn as Ja,Is as Ka,we as La,ve as Ma,Ht as Na,zt as Oa,Gs as Pa,Ws as Qa,s_ as Ra,a_ as Sa,na as Ta,ef as Ua,d_ as Va};
12
- //# sourceMappingURL=chunk-IVLIUPVV.js.map
@@ -1,2 +0,0 @@
1
- import{M as H,N as q,O as N,P as R,Q as Y,R as k,S as _,a as z,g as C,i as F,o as b,q as G,s as V}from"./chunk-MT5TYMEU.js";import{K as x,a as M,q as $,s as B,t as J}from"./chunk-WMPDY5ZU.js";import{ia as P}from"./chunk-NC5HUGHU.js";import{y as g,z as h}from"./chunk-46KDJH3K.js";import{Option as $e}from"commander";(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]="201134b5-01e8-55ae-a099-137b9b6fae92")}catch{}})();function p(e,t,r){if(typeof r!="string")return;let i=r.trim();i.length!==0&&e.push(t,i)}function m(e,t,r){r===!0&&e.push(t)}function A(e,t,r){if(Array.isArray(r))for(let i of r){if(typeof i!="string")continue;let o=i.trim();o.length!==0&&e.push(t,o)}}function ce(e,t){let r=["test",e,"--run","--json","--progress"];return A(r,"--add",t.add),A(r,"--add-json",t.addJson),A(r,"--remove",t.remove),A(r,"--remove-index",Array.isArray(t.removeIndex)?t.removeIndex.map(i=>typeof i=="number"?String(i):i):t.removeIndex),p(r,"--match",t.match),p(r,"--only-index",typeof t.onlyIndex=="number"?String(t.onlyIndex):t.onlyIndex),m(r,"--only-last",t.onlyLast),A(r,"--measure",t.measure),p(r,"--metric-below",t.metricBelow),p(r,"--metric-diff",t.metricDiff),de(r,t),p(r,"--author",t.author),p(r,"--message",t.message),m(r,"--force",t.force),r}function de(e,t){p(e,"--timeout",t.timeout),A(e,"--env-set",t.envSet),A(e,"--env-clear",t.envClear),m(e,"--shared-host-safe",t.sharedHostSafe),p(e,"--pm-context",t.pmContext),m(e,"--override-linked-pm-context",t.overrideLinkedPmContext),p(e,"--workspace-context",t.workspaceContext),m(e,"--override-linked-workspace-context",t.overrideLinkedWorkspaceContext),m(e,"--allow-untrusted-linked-tests",t.allowUntrustedLinkedTests),m(e,"--fail-on-context-mismatch",t.failOnContextMismatch),m(e,"--fail-on-skipped",t.failOnSkipped),m(e,"--fail-on-empty-test-run",t.failOnEmptyTestRun),m(e,"--require-assertions-for-pm",t.requireAssertionsForPm),m(e,"--check-context",t.checkContext),m(e,"--auto-pm-context",t.autoPmContext)}(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]="f491571f-4e99-5892-9c4d-e5129725665a")}catch{}})();function W(e,t){let r=[],i=new Set;for(let o of t.keys){if(!Object.hasOwn(e,o))continue;let s=e[o];if(s!=null){if(typeof s=="string"){r.push(s);continue}if(!Array.isArray(s)||!s.every(n=>typeof n=="string"))return;i.has(s)||(i.add(s),r.push(...s))}}return r.length>0?r.join("; "):void 0}function v(e,t){return e.find(r=>r.target===t)??{target:t,keys:[t]}}function a(e,t){return e[t]===!0?!0:void 0}function y(e,t){return e[t]===!1?!0:void 0}function w(e,t){return t.some(r=>e[r]===!0)?!0:void 0}function L(e,t){for(let[r,i]of Object.entries(t))r==="__proto__"||r==="constructor"||r==="prototype"||Object.hasOwn(e,r)||(e[r]=i)}function K(e,t={}){let r=n=>C(e,v(N,n)),i=n=>F(e,v(R,n)),o=r("type");if(t.requireType!==!1&&o===void 0)throw new h("Missing required option --type <value>. Why required: create resolves runtime schema fields/workflow from item type. Retry: add --type <built-in or configured custom type> (example: --type Task).",g.USAGE);let s={title:r("title"),description:r("description"),type:o,template:r("template"),createMode:r("createMode"),schedulePreset:r("schedulePreset"),status:r("status"),closeReason:r("closeReason"),completedAt:r("completedAt"),priority:r("priority"),tags:r("tags"),addTags:i("addTags"),body:r("body"),deadline:r("deadline"),estimatedMinutes:r("estimatedMinutes"),acceptanceCriteria:W(e,v(R,"acceptanceCriteria")),definitionOfReady:r("definitionOfReady"),order:r("order"),rank:r("rank"),goal:r("goal"),objective:r("objective"),value:r("value"),impact:r("impact"),outcome:r("outcome"),whyNow:r("whyNow"),author:r("author"),message:r("message"),assignee:r("assignee"),parent:r("parent"),allowMissingParent:w(e,["allowMissingParent","allow_missing_parent"])===!0,allowUnresolvedDeps:w(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,allowDuplicate:a(e,"allowDuplicate")===!0,reviewer:r("reviewer"),risk:r("risk"),confidence:r("confidence"),sprint:r("sprint"),release:r("release"),blockedBy:r("blockedBy"),blockedReason:r("blockedReason"),unblockNote:r("unblockNote"),reporter:r("reporter"),severity:r("severity"),environment:r("environment"),reproSteps:r("reproSteps"),resolution:r("resolution"),expectedResult:r("expectedResult"),actualResult:r("actualResult"),affectedVersion:r("affectedVersion"),fixedVersion:r("fixedVersion"),component:r("component"),regression:e.regression===!0?"true":r("regression"),customerImpact:r("customerImpact"),dep:i("dep"),comment:i("comment"),note:i("note"),learning:i("learning"),file:i("file"),test:i("test"),doc:i("doc"),reminder:i("reminder"),event:i("event"),typeOption:i("typeOption"),field:i("field"),unset:i("unset"),clearDeps:a(e,"clearDeps"),clearComments:a(e,"clearComments"),clearNotes:a(e,"clearNotes"),clearLearnings:a(e,"clearLearnings"),clearFiles:a(e,"clearFiles"),clearTests:a(e,"clearTests"),clearDocs:a(e,"clearDocs"),clearReminders:a(e,"clearReminders"),clearEvents:a(e,"clearEvents"),clearTypeOptions:a(e,"clearTypeOptions")};return L(s,e),s}function X(e){let t=o=>C(e,v(k,o)),r=o=>F(e,v(_,o)),i={title:t("title"),description:t("description"),body:t("body"),status:t("status"),closeReason:t("closeReason"),priority:t("priority"),type:t("type"),tags:t("tags"),addTags:r("addTags"),removeTags:r("removeTags"),deadline:t("deadline"),estimatedMinutes:t("estimatedMinutes"),acceptanceCriteria:W(e,v(_,"acceptanceCriteria")),addAc:r("addAc"),removeAc:r("removeAc"),definitionOfReady:t("definitionOfReady"),order:t("order"),rank:t("rank"),goal:t("goal"),objective:t("objective"),value:t("value"),impact:t("impact"),outcome:t("outcome"),whyNow:t("whyNow"),author:t("author"),message:t("message"),force:!!e.force,ownershipMetadataBypass:e.ownershipMetadataBypass===!0?!0:void 0,ownershipDependencyBypass:e.ownershipDependencyBypass===!0?!0:void 0,assignee:t("assignee"),parent:t("parent"),allowUnresolvedDeps:w(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,reviewer:t("reviewer"),risk:t("risk"),confidence:t("confidence"),sprint:t("sprint"),release:t("release"),blockedBy:t("blockedBy"),blockedReason:t("blockedReason"),unblockNote:t("unblockNote"),reporter:t("reporter"),severity:t("severity"),environment:t("environment"),reproSteps:t("reproSteps"),resolution:t("resolution"),expectedResult:t("expectedResult"),actualResult:t("actualResult"),affectedVersion:t("affectedVersion"),fixedVersion:t("fixedVersion"),component:t("component"),regression:e.regression===!0?"true":t("regression"),customerImpact:t("customerImpact"),dep:r("dep"),depRemove:r("depRemove"),replaceDeps:a(e,"replaceDeps"),replaceTests:a(e,"replaceTests"),replaceFiles:a(e,"replaceFiles"),replaceDocs:a(e,"replaceDocs"),comment:r("comment"),note:r("note"),learning:r("learning"),file:r("file"),test:r("test"),doc:r("doc"),reminder:r("reminder"),event:r("event"),typeOption:r("typeOption"),field:r("field"),unset:r("unset"),clearDeps:a(e,"clearDeps"),clearComments:a(e,"clearComments"),clearNotes:a(e,"clearNotes"),clearLearnings:a(e,"clearLearnings"),clearFiles:a(e,"clearFiles"),clearTests:a(e,"clearTests"),clearDocs:a(e,"clearDocs"),clearReminders:a(e,"clearReminders"),clearEvents:a(e,"clearEvents"),clearTypeOptions:a(e,"clearTypeOptions")};return L(i,e),i}function d(e,t){let r=v(z,t),i=C(e,r);if(i!==void 0)return i;for(let o of r.keys){let s=e[o];if(Array.isArray(s)){let n=s.filter(l=>typeof l=="string");if(n.length>0)return n.join(",")}if(t==="ids"&&typeof s=="string")return s;if(typeof s=="number"&&Number.isFinite(s))return String(s)}}function ue(e){let t=a(e,"filterFilesMissing"),r=a(e,"filterDocsMissing");return{filterReviewerMissing:a(e,"filterReviewerMissing"),filterRiskMissing:a(e,"filterRiskMissing"),filterConfidenceMissing:a(e,"filterConfidenceMissing"),filterSprintMissing:a(e,"filterSprintMissing"),filterReleaseMissing:a(e,"filterReleaseMissing"),hasNotes:a(e,"hasNotes"),hasLearnings:a(e,"hasLearnings"),hasFiles:a(e,"hasFiles"),hasDocs:a(e,"hasDocs"),hasTests:a(e,"hasTests"),hasComments:a(e,"hasComments"),hasDeps:a(e,"hasDeps"),hasBody:a(e,"hasBody"),hasLinkedCommand:a(e,"hasLinkedCommand"),noNotes:y(e,"notes"),noLearnings:y(e,"learnings"),noFiles:y(e,"files")??t,filterFilesMissing:t,noDocs:y(e,"docs")??r,filterDocsMissing:r,noTests:y(e,"tests"),noComments:y(e,"comments"),noDeps:y(e,"deps"),emptyBody:a(e,"emptyBody"),noLinkedCommand:y(e,"linkedCommand")}}function Q(e){let t={status:d(e,"status"),type:d(e,"type"),tag:d(e,"tag"),priority:d(e,"priority"),deadlineBefore:d(e,"deadlineBefore"),deadlineAfter:d(e,"deadlineAfter"),updatedAfter:d(e,"updatedAfter"),updatedBefore:d(e,"updatedBefore"),createdAfter:d(e,"createdAfter"),createdBefore:d(e,"createdBefore"),today:a(e,"today"),recent:a(e,"recent"),ids:d(e,"ids"),assignee:d(e,"assignee"),assigneeFilter:d(e,"assigneeFilter"),parent:d(e,"parent"),sprint:d(e,"sprint"),release:d(e,"release"),limit:d(e,"limit"),offset:d(e,"offset"),noTruncate:y(e,"truncate"),includeBody:a(e,"includeBody"),strictRead:a(e,"strictRead"),compact:a(e,"compact"),brief:a(e,"brief"),full:a(e,"full"),fields:d(e,"fields"),sort:d(e,"sort"),order:d(e,"order"),tree:a(e,"tree"),treeDepth:d(e,"treeDepth"),filterAcMissing:a(e,"filterAcMissing"),filterEstimatesMissing:w(e,["filterEstimatesMissing","filterEstimateMissing"]),filterResolutionMissing:a(e,"filterResolutionMissing"),filterMetadataMissing:a(e,"filterMetadataMissing"),...ue(e)};return L(t,e),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]="7a4ac40e-5794-5f50-81b5-8e30b87c02c0")}catch{}})();var fe=Symbol("pm.mcp-mutation-transport"),D={create:{parameters:G,aliases:q,strings:N,repeatables:R},update:{parameters:V,aliases:Y,strings:k,repeatables:_}},me=new Set(["activity","aggregate","context","contracts","deps","files-discover","files-lookup","get","graph","health","history","history-attest","list","next","search","stats","telemetry","validate"]);function S(e){return fe in e}function I(e,t){return S(e)?$(t):B(e,t)}function ct(e,t,r=[]){let i=B(e,{...e,...t});for(let o of r)Reflect.deleteProperty(i,o);return i}function c(e,t){let r=e[t];return typeof r=="string"&&r.trim().length>0?r:void 0}function u(e,t){let r=e[t];return typeof r=="string"?r.trim().length>0?r:void 0:typeof r=="number"&&Number.isFinite(r)?String(r):void 0}function dt(e,t){let r=e[t];return typeof r=="string"?r:typeof r=="number"&&Number.isFinite(r)?String(r):void 0}function O(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ut(e,t){if(typeof e=="number"){if(!Number.isInteger(e))throw new h(`${t} must be a finite integer.`,g.USAGE);return e}if(typeof e=="string"&&e.trim().length>0){let r=Number(e);if(!Number.isInteger(r))throw new h(`${t} must be a finite integer.`,g.USAGE);return r}}function ft(e,t){return typeof e.limit=="number"&&Number.isFinite(e.limit)?e.limit:typeof t.limit=="number"&&Number.isFinite(t.limit)?t.limit:c(e,"limit")??c(t,"limit")}function mt(e){let t=c(e,"outputFormat");return{json:!0,quiet:!0,author:c(e,"author"),path:c(e,"path"),noExtensions:e.noExtensions===!0||e.no_extensions===!0,noPager:!0,outputInclude:c(e,"outputInclude"),outputLimit:u(e,"outputLimit"),outputBudget:u(e,"outputBudget"),outputSession:c(e,"outputSession"),outputCursor:c(e,"outputCursor"),outputFormat:t==="json"||t==="toon"?t:void 0}}var ee=new Set(["tags","blockedBy","blocked_by","skills","fields"]),te=new Set(["comment","note","learning","reminder","event","dep","depRemove","dep_remove","file","doc","test","unset","addGlob","add_glob","migrate","envSet","env_set","envClear","env_clear"]),pe=new Set([...te].filter(e=>e!=="file")),ye=new Set(["files","files-discover","docs","test","test-all"]),re=new Set(["comments","notes","learnings"]);function ge(e,t){if(!(!re.has(e)||!Object.prototype.hasOwnProperty.call(t,"file")))throw new h(`MCP ${e} does not accept options.file. Pass annotation text in options.add instead.`,g.USAGE,{code:"mcp_annotation_file_unavailable",required:"Pass annotation text as JSON data; MCP annotation actions cannot read server-local files."})}var he=new Set(["claim","release","start-task","pause-task","close-task"]),ie={"history-attest":["verify","output","hashAlgorithm"],list:["status","type","tag","priority","limit","offset"],search:["mode","status","type","tag","priority","limit"],create:["title","type","status","description","body","priority","tags","parent","createMode","create_mode","allowMissingParent","allowDuplicate"],update:["parent","allowMissingParent","completedAt"],copy:["allowDuplicate"],close:["duplicateOf","completedAt","releaseAssignment"],claim:["start","next","ifAvailable"],release:["pause","handoff"],comments:["ifAbsent"],notes:["ifAbsent"],learnings:["ifAbsent"],extension:["dryRun","offline"],package:["dryRun","offline"],install:["dryRun"],upgrade:["scope","dryRun","cliOnly","packagesOnly","repair","tag","packageName"],append:["body"]},ne=["outputInclude","outputLimit","outputBudget","outputFormat","outputSession","outputCursor"];function ae(e,t=""){let r={},i=ye.has(t),o=t==="files"||t==="files-discover"||t==="docs",s=re.has(t)?pe:te;for(let[n,l]of Object.entries(e)){if(Array.isArray(l)&&ee.has(n)){r[n]=l.join(",");continue}if(n==="note"&&o){r[n]=l;continue}if(typeof l=="string"&&s.has(n)){r[n]=[l];continue}if(typeof l=="string"&&i&&(n==="add"||n==="remove")){r[n]=[l];continue}r[n]=l}return Object.assign(r,Object.fromEntries(Object.getOwnPropertySymbols(e).map(n=>[n,Reflect.get(e,n)]))),r}function Ae(e,t,r){let i=c(e,"author");return i!==void 0?i:r!==void 0&&he.has(r)?c(e,"assignee")??c(t,"assignee"):void 0}function ve(e,t){return t!==void 0&&e.author===void 0?{...e,author:t}:e}function Oe(e,t,r){let i={},o=D[e],s=new Set([...o.parameters.map(({param:n})=>n),...b.map(({param:n})=>n),...ie[e],...ne,"force"]);for(let n of s){let l=o.aliases.find(f=>f.keys.includes(n))?.keys??[n];t[n]===void 0||l.some(f=>r[f]!==void 0)||(i[n]=t[n])}return i}function T(e,t){throw new h(`Invalid MCP ${e} value for "${t}". No changes were made.`,g.USAGE,{code:"invalid_argument_value",reason:"invalid_mutation_option_value",changed:!1,field:t,required:`Provide valid ${e} field values and an options object; inspect the pm_${e} input schema for supported types.`})}function Te(e,t,r){let i=D[e],o=[...i.parameters,...b,{param:"force"}];for(let{param:s}of o){if(P(H[s]).type!=="boolean")continue;let n=(i.aliases.find(l=>l.keys.includes(s))?.keys??[s]).find(l=>r[l]!==void 0&&typeof r[l]!="boolean");n!==void 0&&T(e,n)}for(let s of["idOnly","fullChangedFields"])t[s]!==void 0&&typeof t[s]!="boolean"&&T(e,s)}function Re(e,t,r){t.options!==void 0&&!O(t.options)&&T(e,"options"),Te(e,t,r);for(let n of ee){let l=r[n];Array.isArray(l)&&l.some(f=>typeof f!="string")&&T(e,n)}let i=le(r,e),o=D[e];for(let{keys:n,target:l}of o.strings)n.some(f=>r[f]!==void 0)&&i[l]===void 0&&T(e,l);let s=o.repeatables.flatMap(({keys:n})=>n).find(n=>{let l=r[n];return l!==void 0&&typeof l!="string"&&(!Array.isArray(l)||l.some(f=>typeof f!="string"))});return s!==void 0&&T(e,s),i}function _e(e,t,r,i){let o=(t==="create"||t==="update")&&S(e),s={...o?Oe(t,e,i):r,...i};return o?Re(t,e,s):ae(s,t)}function pt(e,t){let r=O(e.options)?e.options:void 0,i=P(e.options),o={},s=f=>{i[f]!==void 0||e[f]===void 0||(o[f]=e[f])};for(let f of ie[t??""]??[])s(f);for(let f of ne)s(f);t!==void 0&&S(e)&&ge(t,i);let n=_e(e,t,o,i);if(t==="history-attest"&&S(e)&&(n.output!==void 0||typeof n.verify=="string"))throw new h("MCP history attest does not accept server-local proof paths. Export the returned JSON bundle and pass that JSON object as verify.",g.USAGE);let l=S(e)?e:r??e;return I(l,ve(n,Ae(e,n,t)))}function yt(e){if(e.addNote===void 0)return e;let t={...e};return t.note===void 0&&typeof t.addNote=="string"&&(t.note=t.addNote),delete t.addNote,t}function gt(e){let t={...e};return t.discoveryNote!==void 0&&t.note===void 0&&typeof t.discoveryNote=="string"&&(t.note=t.discoveryNote),delete t.discover,delete t.discoveryNote,t}function Se(e){let t=[],r=!0;for(let i of e.trim().toLowerCase()){if(i>="a"&&i<="z"||i>="0"&&i<="9"){t.push(i),r=!1;continue}r||(t.push("-"),r=!0)}return t.at(-1)==="-"&&t.pop(),t.join("")}function ht(e){return!me.has(Se(e))}function At(e){return e.trim().toLowerCase().split(/\s+/).filter(Boolean).join(" ")}function Ce(e){return Array.isArray(e)?e.map(t=>String(t)).filter(t=>t.length>0):[]}function vt(e,t){let r=new Set(["action","args","author","cwd","fullChangedFields","id","options","path","query","reason","target"]),i={};for(let[s,n]of Object.entries(e))r.has(s)||(i[s]=n);let o={...i,...t};return delete o.args,delete o.author,o}function Ot(e,t){let r=I(t??{},{...t});return{changedFields:e.fullChangedFields===!0?"full":"compact",idOnly:e.idOnly===!0,runnerOptions:r}}function U(e){return{type:u(e,"filterType"),tag:u(e,"filterTag"),priority:u(e,"filterPriority"),deadlineBefore:u(e,"filterDeadlineBefore"),deadlineAfter:u(e,"filterDeadlineAfter"),updatedAfter:u(e,"filterUpdatedAfter"),updatedBefore:u(e,"filterUpdatedBefore"),createdAfter:u(e,"filterCreatedAfter"),createdBefore:u(e,"filterCreatedBefore"),ids:x(e.ids),assignee:u(e,"filterAssignee"),assigneeFilter:u(e,"filterAssigneeFilter")??u(e,"filterAssignee_filter"),parent:u(e,"filterParent"),sprint:u(e,"filterSprint"),release:u(e,"filterRelease"),limit:u(e,"limit"),offset:u(e,"offset")}}function j(e){if(typeof e=="string"&&e.trim().length>0)return e;if(Array.isArray(e))return Ce(e)}function E(e){if(typeof e=="number"&&Number.isFinite(e)||typeof e=="string"&&e.trim().length>0)return e}function Tt(e){let t=j(e.kind),r=j(e.exemptIsolate),i=j(e.exemptIsolateType);return{...t===void 0?{}:{kind:t},maxDepth:E(e.maxDepth),limit:E(e.limit),after:c(e,"after"),direction:c(e,"direction"),maxPaths:E(e.maxPaths),sample:E(e.sample),...r===void 0?{}:{exemptIsolate:r},...i===void 0?{}:{exemptIsolateType:i},saveBaseline:e.saveBaseline===!0,rebuild:e.rebuild===!0,clear:e.clear===!0,summary:e.summary===!0,...e.full===!0?{full:!0}:{}}}function se(e){let t=Q(e);return e.ids!==void 0&&(t.ids=x(e.ids)),t}function Rt(e){return{status:c(e,"filterStatus"),list:O(e.list)?se(e.list):U(e),reason:c(e,"reason"),resolution:c(e,"resolution"),expectedResult:c(e,"expectedResult")??c(e,"expected_result")??c(e,"expected"),actualResult:c(e,"actualResult")??c(e,"actual_result")??c(e,"actual"),validateClose:c(e,"validateClose")??c(e,"validate_close"),author:c(e,"author"),message:c(e,"message"),force:e.force===!0?!0:void 0,dryRun:e.dryRun===!0||e.dry_run===!0?!0:void 0,rollback:M(e.rollback),checkpoint:e.checkpoint===!1||e.noCheckpoint===!0||e.no_checkpoint===!0?!1:void 0}}var be=new Set(["filterStatus","filterType","filterTag","filterPriority","filterDeadlineBefore","filterDeadlineAfter","filterUpdatedAfter","filterUpdatedBefore","filterCreatedAfter","filterCreatedBefore","filterAssignee","filterAssigneeFilter","filterAssignee_filter","filterParent","filterSprint","filterRelease","ids","list","update","limit","offset","dryRun","dry_run","rollback","checkpoint","noCheckpoint","no_checkpoint"]);function Z(e){let t={};for(let[r,i]of Object.entries(e))be.has(r)||(t[r]=i);return oe(t)}function oe(e){return le(e,"update")}function le(e,t){let r=ae(e,t),i=D[t],o=new Set([...i.parameters,...b].filter(({booleanish:s})=>s===!0).map(({param:s})=>s));for(let{keys:s}of i.repeatables)for(let n of s)typeof r[n]=="string"&&(r[n]=[r[n]]);for(let s of i.strings)for(let n of s.keys){let l=r[n];(typeof l=="number"&&Number.isFinite(l)||l===!1&&o.has(n))&&(r[n]=String(l))}return t==="create"?{...K(r,{requireType:!1})}:X(r)}function _t(e){if(O(e.list)||O(e.update)){let t=O(e.update)?e.update:Z(e),r=I(e,oe(t));return{status:u(e,"filterStatus"),list:O(e.list)?se(e.list):U(e),update:J(t,r),dryRun:e.dryRun===!0||e.dry_run===!0?!0:void 0,rollback:M(e.rollback),checkpoint:e.checkpoint===!1||e.noCheckpoint===!0||e.no_checkpoint===!0?!1:void 0}}return{status:u(e,"filterStatus"),list:U(e),update:I(e,Z(e)),dryRun:e.dryRun===!0||e.dry_run===!0?!0:void 0,rollback:M(e.rollback),checkpoint:e.checkpoint===!1||e.noCheckpoint===!0||e.no_checkpoint===!0?!1:void 0}}export{ce as a,S as b,ct as c,c as d,u as e,dt as f,O as g,ut as h,ft as i,mt as j,ie as k,ae as l,pt as m,yt as n,gt as o,Se as p,ht as q,At as r,Ce as s,vt as t,Ot as u,U as v,Tt as w,Rt as x,oe as y,_t as z};
2
- //# sourceMappingURL=chunk-KIIGME23.js.map