@unbrained/pm-cli 2026.8.22 → 2026.8.23

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 (168) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +28 -0
  3. package/dist/cli/error-guidance.d.ts +13 -0
  4. package/dist/cli/error-guidance.js +62 -6
  5. package/dist/cli/main.js +13 -4
  6. package/dist/cli/register-mutation.js +6 -6
  7. package/dist/cli/register-operations.d.ts +73 -0
  8. package/dist/cli/register-operations.js +39 -14
  9. package/dist/cli/register-setup.js +3 -3
  10. package/dist/cli/schema-registration-helpers.d.ts +8 -1
  11. package/dist/cli/schema-registration-helpers.js +14 -5
  12. package/dist/cli-bundle/bundle-manifest.json +155 -155
  13. package/dist/cli-bundle/chunks/chunk-3ENVHX6C.js +36 -0
  14. package/dist/cli-bundle/chunks/{chunk-QI2CT3IX.js → chunk-DW2CGEMU.js} +2 -2
  15. package/dist/cli-bundle/chunks/{chunk-WG4STC36.js → chunk-EG6CLDZT.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-MYYI3ZOA.js → chunk-F3AI2JFL.js} +2 -2
  17. package/dist/cli-bundle/chunks/{chunk-U6GQ4VMV.js → chunk-HWZ6CELB.js} +4 -4
  18. package/dist/cli-bundle/chunks/chunk-HZBMLSZI.js +201 -0
  19. package/dist/cli-bundle/chunks/chunk-JB4KZWBF.js +3 -0
  20. package/dist/cli-bundle/chunks/chunk-KPH73XXJ.js +2 -0
  21. package/dist/cli-bundle/chunks/{chunk-BWX4SK46.js → chunk-KXPMB2YL.js} +58 -58
  22. package/dist/cli-bundle/chunks/{chunk-MZTZQTMS.js → chunk-QDVHNHAQ.js} +2 -2
  23. package/dist/cli-bundle/chunks/chunk-TFI5V5N2.js +13 -0
  24. package/dist/cli-bundle/chunks/{register-list-query-HZKBQNWW.js → register-list-query-UJB5FMV2.js} +2 -2
  25. package/dist/cli-bundle/chunks/register-mutation-NX5XE4VX.js +20 -0
  26. package/dist/cli-bundle/chunks/register-operations-RXIJIYXC.js +2 -0
  27. package/dist/cli-bundle/chunks/{register-setup-QK4OTOXN.js → register-setup-GFUZEKRE.js} +2 -2
  28. package/dist/cli-bundle/focused-chunks/{chunk-2POVTNLY.js → chunk-37Z4OEAP.js} +2 -2
  29. package/dist/cli-bundle/focused-chunks/chunk-3UPTYG44.js +8 -0
  30. package/dist/cli-bundle/focused-chunks/{chunk-E2EWYPY6.js → chunk-5S7E72FY.js} +2 -2
  31. package/dist/cli-bundle/focused-chunks/{chunk-GMYPD4FX.js → chunk-AUFH5H35.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/chunk-E7X25GC3.js +2 -0
  33. package/dist/cli-bundle/focused-chunks/{chunk-3LKU6PTJ.js → chunk-FQCSTBWE.js} +2 -2
  34. package/dist/cli-bundle/focused-chunks/{chunk-6S2MO3Q3.js → chunk-FZS4H32O.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/chunk-IFLWKY2R.js +156 -0
  36. package/dist/cli-bundle/focused-chunks/{chunk-PMGJUFNQ.js → chunk-JOWDB2MH.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/chunk-LYVSW5VM.js +2 -0
  38. package/dist/cli-bundle/focused-chunks/chunk-MRCNF3U6.js +2 -0
  39. package/dist/cli-bundle/focused-chunks/{chunk-A2BC5PQL.js → chunk-OFVUGTLJ.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/{chunk-2ARQGDDW.js → chunk-OGLQBL46.js} +2 -2
  41. package/dist/cli-bundle/focused-chunks/{chunk-R6SR45XU.js → chunk-OY7QAV4Y.js} +48 -47
  42. package/dist/cli-bundle/focused-chunks/chunk-QGFNI65N.js +26 -0
  43. package/dist/cli-bundle/focused-chunks/{chunk-D6RBZEJJ.js → chunk-R27IDGHD.js} +2 -2
  44. package/dist/cli-bundle/focused-chunks/chunk-UYRFYCDQ.js +5 -0
  45. package/dist/cli-bundle/focused-chunks/{chunk-PH2OXXVZ.js → chunk-ZHVA42R5.js} +9 -9
  46. package/dist/cli-bundle/main.js +13 -13
  47. package/dist/cli-bundle/sdk-authoring.js +1 -1
  48. package/dist/cli-bundle/sdk-contracts.js +2 -2
  49. package/dist/cli-bundle/sdk-core.js +40 -40
  50. package/dist/cli-bundle/sdk-governance.js +1 -1
  51. package/dist/cli-bundle/sdk-graph.js +1 -1
  52. package/dist/cli-bundle/sdk-merge.js +33 -32
  53. package/dist/cli-bundle/sdk-query.js +1 -1
  54. package/dist/cli-bundle/sdk-runtime.js +1 -1
  55. package/dist/cli-bundle/sdk-testing.js +1 -1
  56. package/dist/cli-bundle/sdk.js +5 -5
  57. package/dist/core/config/nested-settings.js +8 -2
  58. package/dist/core/config/positional-value.d.ts +1 -1
  59. package/dist/core/config/positional-value.js +5 -2
  60. package/dist/core/history/history.js +3 -3
  61. package/dist/core/item/item-format.js +66 -12
  62. package/dist/core/reproducibility/context.d.ts +4 -0
  63. package/dist/core/reproducibility/context.js +14 -8
  64. package/dist/core/shared/author.d.ts +55 -1
  65. package/dist/core/shared/author.js +333 -16
  66. package/dist/core/shared/constants.js +3 -2
  67. package/dist/core/store/settings-validator.d.ts +1 -0
  68. package/dist/core/store/settings-validator.js +6 -3
  69. package/dist/core/store/settings.js +5 -2
  70. package/dist/mcp/server.d.ts +1 -1
  71. package/dist/mcp/server.js +30 -9
  72. package/dist/sdk/agent/identity-config.d.ts +63 -0
  73. package/dist/sdk/agent/identity-config.js +107 -0
  74. package/dist/sdk/agent/refusal-corpus-contracts.d.ts +76 -0
  75. package/dist/sdk/agent/refusal-corpus-contracts.js +194 -0
  76. package/dist/sdk/cli-contracts/agent-output-contracts.js +6 -4
  77. package/dist/sdk/cli-contracts/enum-contracts.d.ts +4 -0
  78. package/dist/sdk/cli-contracts/enum-contracts.js +9 -2
  79. package/dist/sdk/cli-contracts/flag-contracts.js +9 -2
  80. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +4 -4
  81. package/dist/sdk/cli-contracts/registration-helpers.js +5 -2
  82. package/dist/sdk/cli-contracts/tool-parameter-tables.js +22 -2
  83. package/dist/sdk/cli-contracts/tool-schema.d.ts +1 -1
  84. package/dist/sdk/cli-contracts/tool-schema.js +14 -3
  85. package/dist/sdk/cli-contracts.d.ts +3 -3
  86. package/dist/sdk/cli-contracts.js +4 -4
  87. package/dist/sdk/config.d.ts +6 -1
  88. package/dist/sdk/config.js +119 -14
  89. package/dist/sdk/context-intent-contracts.js +4 -2
  90. package/dist/sdk/core-governance.d.ts +1 -1
  91. package/dist/sdk/core-governance.js +3 -3
  92. package/dist/sdk/extension/scaffold.js +11 -5
  93. package/dist/sdk/flag-invocation-contracts.js +4 -2
  94. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +50 -2
  95. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +87 -38
  96. package/dist/sdk/governance/assurance-action.js +30 -10
  97. package/dist/sdk/governance/validate.d.ts +2 -2
  98. package/dist/sdk/governance/validate.js +39 -14
  99. package/dist/sdk/index.d.ts +7 -2
  100. package/dist/sdk/index.js +8 -3
  101. package/dist/sdk/lifecycle/create.js +6 -3
  102. package/dist/sdk/lifecycle/update.js +5 -3
  103. package/dist/sdk/merge/three-way.js +105 -26
  104. package/dist/sdk/read-output-budget.d.ts +21 -0
  105. package/dist/sdk/read-output-budget.js +39 -2
  106. package/dist/sdk/read-output-contracts.d.ts +5 -3
  107. package/dist/sdk/read-output-contracts.js +20 -12
  108. package/dist/sdk/reproducibility/process.d.ts +19 -0
  109. package/dist/sdk/reproducibility/process.js +88 -0
  110. package/dist/sdk/runtime-primitives.d.ts +1 -1
  111. package/dist/sdk/runtime-primitives.js +3 -3
  112. package/dist/sdk/runtime.js +6 -5
  113. package/dist/sdk/test/batch.d.ts +6 -0
  114. package/dist/sdk/test/batch.js +15 -3
  115. package/dist/sdk/test/entry.d.ts +1 -1
  116. package/dist/sdk/test/entry.js +3 -2
  117. package/dist/sdk/test/execution.d.ts +28 -3
  118. package/dist/sdk/test/execution.js +193 -34
  119. package/dist/sdk/test/parsers.d.ts +6 -0
  120. package/dist/sdk/test/parsers.js +21 -2
  121. package/dist/sdk/test/trust.d.ts +33 -0
  122. package/dist/sdk/test/trust.js +207 -0
  123. package/dist/types.d.ts +23 -0
  124. package/dist/types.js +2 -2
  125. package/docs/AGENT_PROVENANCE_ADR.md +41 -5
  126. package/docs/CONFIGURATION.md +4 -0
  127. package/docs/DIAGNOSTIC_OUTPUT_CONTRACTS.md +19 -2
  128. package/docs/MERGE_SAFETY.md +15 -1
  129. package/docs/READ_OUTPUT_CONTRACTS.md +11 -1
  130. package/docs/REPRODUCIBLE_WORKSPACES.md +42 -8
  131. package/docs/SDK.md +9 -0
  132. package/docs/SDK_AGENT_SESSION_CONTEXT.md +6 -4
  133. package/docs/SDK_EVIDENCE_TRACEABILITY.md +1 -1
  134. package/docs/TESTING.md +75 -8
  135. package/docs/agent-task-token-baseline.json +2 -2
  136. package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
  137. package/marketplace.json +2 -2
  138. package/package.json +2 -2
  139. package/packages/pm-beads/package.json +1 -1
  140. package/packages/pm-calendar/package.json +1 -1
  141. package/packages/pm-command-kit/package.json +1 -1
  142. package/packages/pm-digital-twin/package.json +1 -1
  143. package/packages/pm-governance-audit/package.json +1 -1
  144. package/packages/pm-guide-shell/package.json +1 -1
  145. package/packages/pm-kanban/package.json +1 -1
  146. package/packages/pm-lifecycle-hooks/package.json +1 -1
  147. package/packages/pm-linked-test-adapters/package.json +1 -1
  148. package/packages/pm-search-advanced/package.json +1 -1
  149. package/packages/pm-templates/package.json +1 -1
  150. package/packages/pm-todos/package.json +1 -1
  151. package/packages/pm-vcs/package.json +1 -1
  152. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  153. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  154. package/sdk/public-surface.json +427 -17
  155. package/dist/cli-bundle/chunks/chunk-EMWDM5FI.js +0 -13
  156. package/dist/cli-bundle/chunks/chunk-HYG6LRL4.js +0 -200
  157. package/dist/cli-bundle/chunks/chunk-SMWXHMVB.js +0 -35
  158. package/dist/cli-bundle/chunks/chunk-VMMIL3SI.js +0 -2
  159. package/dist/cli-bundle/chunks/chunk-YBPJAOQQ.js +0 -3
  160. package/dist/cli-bundle/chunks/register-mutation-HTKEEGRD.js +0 -20
  161. package/dist/cli-bundle/chunks/register-operations-6EMRWJJY.js +0 -2
  162. package/dist/cli-bundle/focused-chunks/chunk-2AZT5WXZ.js +0 -2
  163. package/dist/cli-bundle/focused-chunks/chunk-5SHSBMX2.js +0 -2
  164. package/dist/cli-bundle/focused-chunks/chunk-C4S4A4JJ.js +0 -5
  165. package/dist/cli-bundle/focused-chunks/chunk-L5LDSRO2.js +0 -155
  166. package/dist/cli-bundle/focused-chunks/chunk-MB37AYN6.js +0 -26
  167. package/dist/cli-bundle/focused-chunks/chunk-MCOR37QK.js +0 -2
  168. package/dist/cli-bundle/focused-chunks/chunk-WZE4LIPW.js +0 -8
@@ -1,4 +1,4 @@
1
- import{a as cn,b as dn,d as un,e as ln,f as fn,g as mn,h as pn}from"./chunk-A2BC5PQL.js";import{C as Ti,D as xe,Da as $i,F as fe,G as Ce,H as Ie,Ha as ji,I as Fi,L as Ri,M as yt,N as Ai,O as _n,P as wn,Q as bn,R as Mi,V as Di,W as vn,da as Li,f as xi,g as Ci,h as yn,i as Ii,ma as Te,va as Oi}from"./chunk-PH2OXXVZ.js";import{Ma as Gr,Ua as qr,t as Hr}from"./chunk-2ARQGDDW.js";import{b as Ni,e as kn,f as vt,g as Pi}from"./chunk-GMYPD4FX.js";import{A as Xr,Aa as oi,B as Qr,C as Jr,Ca as si,D as Zr,Da as ai,E as ei,Fa as je,Ha as se,Hb as _t,I as Pe,Ia as gn,Ib as wt,Ja as ci,La as di,Lb as bt,Ma as ui,N as ti,Oa as Ue,Ra as li,Sa as pt,Ta as fi,U as Z,Ua as mi,V as M,X as S,Y as ft,Z as B,_ as mt,_a as pi,ab as R,cb as hi,db as gi,fb as yi,gb as ht,ib as _i,ja as D,ka as O,l as F,la as K,mb as wi,nb as bi,o as hn,oa as ni,ob as Ee,pa as ri,pb as vi,q as Ne,qa as ii,qb as ki,r as Vr,ra as H,sb as N,tb as q,u as Yr,ub as z,vb as gt,wb as ae,xb as Si,ya as Se,zb as Ei}from"./chunk-L5LDSRO2.js";import{$ as jr,Fa as Kr,G as L,H as dt,M as I,O as Pr,Q as Le,S as le,Sa as P,Ua as G,V as Oe,W as $,a as Dr,aa as Ur,h as $r,q as De,r as at,s as Nr,t as ct,u as J,x as an}from"./chunk-3LKU6PTJ.js";import{b as ke,c as Wr,e as lt}from"./chunk-6S2MO3Q3.js";import{E as we,J as sn,K as st,S as Lr,W as Or,Xa as be,Y as m,Ya as ve,Z as p,Za as $e,aa as Br,bb as ut,cb as zr}from"./chunk-C4S4A4JJ.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]="c14a67b4-102d-5219-b2b3-15d39da36627")}catch{}})();var oc=["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"],Sn=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 vh(e={}){return{excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0}}function ee(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function A(e,t,n,r){t&&e.push({code:n,message:r})}function sc(e,t){let n=ee(e.completeness)?e.completeness:{};A(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),A(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;A(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."),A(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=ee(e.filters)?e.filters:{},s=ee(o.runtime_filters)?o.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return A(t,o.status!=="all"||Object.keys(s).length>0||Object.keys(o).some(d=>!a.has(d)),"filtered_corpus","The list did not explicitly select every lifecycle status."),A(t,o.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),A(t,o.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),o}function ac(e,t,n){A(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."),A(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=ee(e.projection)?e.projection:{};A(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let i=ee(e.omission_receipt)?e.omission_receipt:void 0;A(n,i===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),A(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."),A(n,i?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function cc(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 dc(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 uc(e,t){let n=ee(e.read_output)?e.read_output:void 0;A(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),A(t,n!==void 0&&cc(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),A(t,n!==void 0&&!dc(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),A(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=ee(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;A(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),A(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function lc(e,t){let n=e.map(r=>ee(r)&&typeof r.id=="string"?r.id.trim():"");A(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),A(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function fc(e){if(!ee(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:oc[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=sc(t,n);return ac(t,r,n),uc(t,n),lc(t.items,n),{ok:n.length===0,findings:n}}function mc(e){let t=fc(e);if(!t.ok)throw new Sn(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 kh(e){mc(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]="47c087c2-124a-58b7-a5c9-09403235f4a2")}catch{}})();function pc(e,t){let n=-1;return e.forEach((r,i)=>{let o=Date.parse(r.ts);if(!Number.isFinite(o))throw new p(`History for this item contains invalid timestamp at entry ${i+1}.`,m.GENERIC_FAILURE);o<=t&&(n=i)}),n}function hc(e){let t=e[0]?.ts??null,n=e.at(-1)?.ts??null,r={code:"history_target_out_of_range",required:"Choose a target within the available item history.",why:"Point-in-time reads and restores can only reconstruct recorded versions.",examples:[],nextSteps:["Run pm history <id> to inspect available versions and timestamps."],valid_range:{first_version:null,last_version:null,first_timestamp:t,last_timestamp:n}};return n!==null&&(r.examples=["1",String(e.length),n],r.valid_range.first_version=1,r.valid_range.last_version=e.length),{guidance:r,lastTimestamp:n}}function Ui(e,t){let n={};if(t instanceof Error&&t.message.trim().length>0&&(n.reason=t.message.trim()),typeof t!="object"||t===null)return n;let r=t;if(typeof r.index=="number"&&Number.isInteger(r.index)&&r.index>=0&&(n.patchIndex=r.index),typeof r.operation=="object"&&r.operation!==null){let i=r.operation;Object.assign(n,Object.fromEntries(["op","path","from"].flatMap(o=>{let s=i[o];return typeof s=="string"?[[o,s]]:[]})))}if(n.patchIndex!==void 0){let i=e[n.patchIndex];i&&(n.op??=i.op,n.path??=i.path,n.from??=i.from)}return n}function Bi(e,t,n={}){let r=e.trim(),i=n.errorSubject??"history",o=i==="restore"?"Restore":"History",{guidance:s,lastTimestamp:a}=hc(t);if(!r)throw new p(`Missing ${i} target. Use a timestamp or version number.`,m.USAGE,s);if(/^\d+$/.test(r)){let l=Number(r);if(!Number.isSafeInteger(l)||l<1||l>t.length)throw new p(`${o} version must be between 1 and ${t.length} for this item.`,m.USAGE,s);return{kind:"version",raw:r,historyIndex:l-1}}let d=Date.parse(r);if(!Number.isFinite(d))throw new p(`Invalid ${i} target "${e}". Use a positive version number or ISO timestamp.`,m.USAGE,s);let c=pc(t,d);if(c<0||n.allowFutureTimestamp!==!0&&d>Date.parse(a))throw new p(i==="restore"?`No history entries exist at or before timestamp ${r}.`:`No history entry exists at timestamp ${r}.`,m.USAGE,s);return{kind:"timestamp",raw:r,historyIndex:c}}function Be(e,t,n,r){let i=ui(e,t);if(i.ok)return i.document;let o=Ui(t,i.error),s=[`history_op=${r}`,o.patchIndex===void 0?null:`patch_index=${o.patchIndex}`,o.op?`op=${o.op}`:null,o.path?`path=${o.path}`:null,o.from?`from=${o.from}`:null].filter(a=>a!==null);throw new p(`Failed to apply history patch at entry ${n} (${s.join(", ")}). ${o.reason??String(i.error)}`,m.GENERIC_FAILURE)}function Ki(e,t){let n=structuredClone(je);for(let r=0;r<=t;r+=1){let i=e[r];if(!i)throw new p(`History target entry ${r+1} does not exist.`,m.USAGE);if(se(n)!==i.before_hash)throw new p(`History hash mismatch before replay at entry ${r+1}.`,m.GENERIC_FAILURE);if(n=Be(n,i.patch,r+1,i.op),se(n)!==i.after_hash)throw new p(`History hash mismatch after replay at entry ${r+1}.`,m.GENERIC_FAILURE)}return n}function Hi(e,t){if(Object.keys(e.metadata).length>0)return e;throw new p(`History target ${t.raw} resolves to a deleted state; choose a version or timestamp where the item exists.`,m.USAGE)}import En from"node:fs/promises";import gc 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]="a2ec9f1a-aae2-59d5-8c9a-7acd8bf5a7a2")}catch{}})();function yc(e){if(!e.itemDocument)return[];let t=e.itemDocument.metadata?.assignee?.trim();if(!t||t===e.author||e.force)return[];let n=pi(e.settings);if(n.ownership_enforcement==="strict")throw new p(`Item ${e.subjectId} is assigned to ${t}. Use --force to override.`,m.CONFLICT);return n.ownership_enforcement==="warn"?[`ownership_warning:assignee_conflict:${e.subjectId}:${t}`]:[]}async function _c(e){let t=await ct(e.subject.historyPath);if(t!==e.historyRawBeforeLock)throw new p(`History for ${e.subject.id} changed while waiting for lock; retry ${e.operation}.`,m.CONFLICT);let n=await q(e.pmRoot,e.subject.id,e.settings.id_prefix,e.settings.item_format,e.typeRegistry.type_to_folder),r=n?await z(n,{schema:e.settings.schema}):null;if((r?.raw??null)!==(e.currentItemRawBeforeLock??null))throw new p(`Item ${e.subject.id} changed while waiting for lock; retry ${e.operation}.`,m.CONFLICT);return{historyRawUnderLock:t,locatedUnderLock:n,loadedItemUnderLock:r}}async function $h(e){let t=e.writeHistoryRaw??J;try{await t(e.historyPath,e.nextHistoryRaw),await Se(e.historyPath)}catch(n){try{e.historyRawUnderLock===null?await gc.rm(e.historyPath,{force:!0}):await t(e.historyPath,e.historyRawUnderLock),await Se(e.historyPath)}catch(r){throw new AggregateError([n,r],`History rewrite failed and rollback also failed: ${String(n)}`)}throw n}}async function Gi(e){let t=[...yc({itemDocument:e.itemDocument,subjectId:e.subject.id,author:e.author,force:e.force,settings:e.settings})],n=await mt(e.pmRoot,e.subject.id,e.settings.locks.ttl_seconds,e.author,!!e.force,e.settings.governance.force_required_for_stale_lock,e.settings.locks.wait_ms);try{let r=await _c({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItemRawBeforeLock,operation:e.operation});return await e.applyRewrite(r),e.applyPostRewrite&&t.push(...await e.applyPostRewrite(r)),t}finally{await 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]="05b945f2-4f96-5f88-98ff-84cc856d0d57")}catch{}})();function qi(e){return Array.isArray(e)?e:typeof e=="string"?[e]:[]}function wc(e){let t=[];for(let n of e)t.includes(n)||t.push(n);return t.includes("g")||t.push("g"),t.join("")}function bc(e){let t=e.trim();if(t.length===0)throw new p("history-redact --regex requires a non-empty pattern.",m.USAGE);let n=t,r="g";if(t.startsWith("/")&&t.length>1){let i=t.lastIndexOf("/");i>0&&(n=t.slice(1,i),r=wc(t.slice(i+1)))}if(n.length===0)throw new p("history-redact --regex cannot use an empty pattern.",m.USAGE);try{new RegExp(n,r)}catch{throw new p("Invalid --regex value; provide a valid JavaScript regular expression.",m.USAGE)}return{kind:"regex",source:n,flags:r}}function vc(e,t){let n=[...new Set(qi(e).map(o=>o.trim()))].filter(o=>o.length>0).map(o=>({kind:"literal",value:o})),r=[...new Set(qi(t).map(o=>o.trim()))].filter(o=>o.length>0).map(bc),i=[...n,...r];if(i.length===0)throw new p("history-redact requires at least one matcher via --literal or --regex.",m.USAGE,{code:"missing_required_argument",required:"Provide --literal <value> and/or --regex <pattern>.",examples:['pm history-redact pm-a1b2 --literal "[redacted_path_prefix]/private"','pm history-redact pm-a1b2 --regex "/192\\\\.168\\\\.[0-9.]+/g" --replacement "[scrubbed_ip]"']});return i}function kc(e,t,n){if(t.length===0)return{value:e,replacements:0};let r=0,i=0;for(;r<=e.length;){let o=e.indexOf(t,r);if(o===-1)break;i+=1,r=o+Math.max(1,t.length)}return i===0?{value:e,replacements:0}:{value:e.split(t).join(n),replacements:i}}function Sc(e,t,n){let r=new RegExp(t.source,t.flags),i=[...e.matchAll(r)];return i.length===0?{value:e,replacements:0}:{value:e.replace(r,n),replacements:i.length}}function zi(e,t,n){let r=e,i=0;for(let o of t){let s=o.kind==="literal"?kc(r,o.value,n):Sc(r,o,n);r=s.value,i+=s.replacements}return{value:r,replacements:i}}function xn(e,t,n){if(typeof e=="string")return zi(e,t,n);if(Array.isArray(e)){let r=0;return{value:e.map(o=>{let s=xn(o,t,n);return r+=s.replacements,s.value}),replacements:r}}if(typeof e=="object"&&e!==null){let r=0,i={};for(let[o,s]of Object.entries(e)){let a=xn(s,t,n);r+=a.replacements,i[o]=a.value}return{value:i,replacements:r}}return{value:e,replacements:0}}function Ec(e){let t=structuredClone(je),n=0,r=0;for(let i=0;i<e.length;i+=1){let o=e[i];se(t)!==o.before_hash&&(n+=1),t=Be(t,o.patch,i+1,o.op),se(t)!==o.after_hash&&(r+=1)}return{hashMismatchesBefore:n,hashMismatchesAfter:r,finalDocument:t}}function xc(e,t,n){let r=0,i=!1,o=e.message;if(typeof e.message=="string"){let a=zi(e.message,t,n);o=a.value,r+=a.replacements,a.replacements>0&&(i=!0)}let s=e.patch.map(a=>{if(!Object.prototype.hasOwnProperty.call(a,"value"))return a;let d=xn(a.value,t,n);return r+=d.replacements,d.replacements>0?(i=!0,{...a,value:d.value}):a});return{entry:{...e,message:o,patch:s},replacements:r,changed:i}}function Cc(e,t,n){let r=structuredClone(je),i=0,o=0,s=[];for(let a=0;a<e.length;a+=1){let d=xc(e[a],t,n);o+=d.replacements,d.changed&&(i+=1);let c=se(r);r=Be(r,d.entry.patch,a+1,d.entry.op);let l=se(r);s.push({...d.entry,before_hash:c,after_hash:l})}return{entries:s,finalDocument:r,entriesChanged:i,replacements:o}}function Ic(e){return Object.keys(e.metadata).length>0}async function Tc(e,t){let n=e.located?.itemPath??null;if(!e.located)return{raw:null,path:n,document:null};let r=await z(e.located,{schema:t.schema});return{raw:r.raw,path:n,document:r.document}}function Fc(e){if(!Ic(e.finalDocument))return{raw:null,path:null,document:null};let t=ii(gn(e.finalDocument),{schema:e.settings.schema});if(t.metadata.id!==e.subject.id)throw new p("history-redact would change the item id; narrow your patterns.",m.USAGE);return{document:t,path:Le(e.pmRoot,t.metadata.type,e.subject.id,"toon",e.typeToFolder),raw:ri(t,{format:"toon",schema:e.settings.schema})}}function Rc(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:`history-redact replaced ${t.replacements} match(es) across ${t.entriesChanged} entr${t.entriesChanged===1?"y":"ies"}.`}function Ac(e){let t=[...e.rewritten.entries];if(e.dryRun||!e.changed)return{rewrittenEntries:t,auditEntryAdded:!1};let n=e.nextItemDocument??gn(e.rewritten.finalDocument);return t.push(ai({nowIso:M(),author:e.author,op:"history_redact",before:n,after:n,message:e.message})),{rewrittenEntries:t,auditEntryAdded:!0}}async function Mc(e){let t=[];return Gi({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItem.raw,operation:"history-redact",author:e.author,force:e.force,itemDocument:e.currentItem.document,applyRewrite:async({historyRawUnderLock:n})=>{let r=await bi(e.pmRoot,e.author),i=new Set;e.currentItem.path&&i.add(e.currentItem.path),e.nextItem.path&&i.add(e.nextItem.path);let o=new Map;e.currentItem.path&&e.currentItem.raw!==null&&o.set(e.currentItem.path,e.currentItem.raw);let s=()=>{};try{try{e.nextItem.path&&e.nextItem.raw!==null&&e.nextItem.raw!==e.currentItem.raw&&await J(e.nextItem.path,e.nextItem.raw),e.currentItem.path&&(!e.nextItem.path||e.nextItem.path!==e.currentItem.path)&&await En.rm(e.currentItem.path,{force:!0}),await J(e.subject.historyPath,li(e.rewrittenEntries))}catch(d){try{await Dc(e.subject.historyPath,n,i,o)}finally{await Se(e.subject.historyPath)}throw d}await Se(e.subject.historyPath);let a=e.nextItem.path??e.currentItem.path;a&&(t=await vi({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:e.typeRegistry.type_to_folder,schema:e.settings.schema,itemPath:a,...e.currentItem.path?{previousItemPath:e.currentItem.path}:{},document:e.nextItem.document}))}finally{await r().catch(a=>{s=()=>{throw a}})}s()},applyPostRewrite:async()=>[...t,...await Lc(e.subject.historyPath,[e.nextItem.path,e.currentItem.path])]})}async function Dc(e,t,n,r){t===null?await En.rm(e,{force:!0}):await J(e,t);for(let i of n){let o=r.get(i);o===void 0?await En.rm(i,{force:!0}):await J(i,o)}}async function Lc(e,t){let n=[],r=new Set(t.filter(i=>i!==null));for(let i of r)n.push(...await hn({path:i,scope:"project",op:"history_redact"}));return n.push(...await hn({path:e,scope:"project",op:"history_redact:history"})),n}async function Cn(e,t,n,r){let i=await q(e,t,n.id_prefix,n.item_format,r);if(i)return{id:i.id,historyPath:le(e,i.id),located:i};let o=ht(t,n.id_prefix),s=yi(t),a=o===s?[o]:[o,s];for(let d of a){let c=le(e,d);if(await De(c))return{id:d,historyPath:c,located:null}}throw new p(`Item ${t} not found`,m.NOT_FOUND)}async function og(e,t,n){let r=I(process.cwd(),n.path);await N(r);let i=await R(r),o=L(i,F()),s=t.replacement??"",a=s.length===0,d=a?"[redacted]":s,c=vc(t.literal,t.regex),l=await Cn(r,e,i,o.type_to_folder);if(!await De(l.historyPath))throw new p(`No history stream exists for ${l.id}.`,m.NOT_FOUND);let u=await ct(l.historyPath),f=await H(l.historyPath,l.id);if(f.length===0)throw new p(`No history entries exist for ${l.id}; nothing to redact.`,m.USAGE);let h=Ec(f),y=Cc(f,c,d),g=h.hashMismatchesBefore+h.hashMismatchesAfter,w=!!t.dryRun,_=y.replacements>0,b=[];g>0&&b.push(`history_redact_preexisting_hash_mismatches:${g}`),_||b.push("history_redact_no_matches");let v=await Tc(l,i),E=Fc({pmRoot:r,subject:l,settings:i,typeToFolder:o.type_to_folder,finalDocument:y.finalDocument}),T=(v.path??null)!==(E.path??null)||(v.raw??null)!==(E.raw??null),C=Z(t.author,i.author_default),x=Rc(t,y),{rewrittenEntries:de,auditEntryAdded:ge}=Ac({rewritten:y,dryRun:w,changed:_,nextItemDocument:E.document,author:C,message:x}),ie=Ue(de);if(!ie.ok)throw new p(`history-redact produced an invalid rewritten chain (${ie.errors.join(", ")}).`,m.GENERIC_FAILURE);return!w&&_&&b.push(...await Mc({pmRoot:r,subject:l,settings:i,typeRegistry:o,historyRawBeforeLock:u,currentItem:v,nextItem:E,author:C,force:t.force,rewrittenEntries:de})),{id:l.id,dry_run:w,changed:_,patterns:{literal_count:c.filter(U=>U.kind==="literal").length,regex_count:c.filter(U=>U.kind==="regex").length,total_count:c.length,replacement_is_default:a},history:{path:l.historyPath,entries_scanned:f.length,entries_changed:y.entriesChanged,replacements:y.replacements,hash_mismatches_before:h.hashMismatchesBefore,hash_mismatches_after:h.hashMismatchesAfter,preexisting_hash_mismatches:g,audit_entry_added:ge,verify_ok:ie.ok,verify_errors:ie.errors},item:{existed_before:v.path!==null,exists_after:E.path!==null,path_before:v.path,path_after:E.path,changed:T},warnings:[...new Set(b)].sort((U,oe)=>U.localeCompare(oe)),generated_at:M()}}(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]="aca866d3-32b9-5212-bb4b-f1484e41bb27")}catch{}})();function Wi(e,t){let n=Ue(e),r=e.length>0?e[e.length-1].after_hash:si(),i=t===void 0?void 0:oi(t),o=i===void 0?void 0:i===r,s=[...n.errors];return o===!1&&s.push("verify_failed:current_item_hash_mismatch"),{ok:s.length===0,entries:e.length,errors:s,latest_after_hash:e.length>0?e[e.length-1].after_hash:void 0,current_item_hash:i,current_matches_latest:o}}async function Vi(e,t,n={}){let r=I(n.cwd??process.cwd(),n.pmRoot);await N(r);let i=await R(r),o=L(i,F()),s=await Cn(r,e,i,o.type_to_folder),a=await H(s.historyPath,s.id);if(a.length===0)throw new p(`No history exists for ${s.id}; point-in-time reads are unavailable.`,m.NOT_FOUND);let d=Bi(t,a),c=Hi(Ki(a,d.historyIndex),d),l=ci(c,{schema:i.schema});if(l.metadata.id!==s.id)throw new p(`History target resolved to item ${l.metadata.id}, expected ${s.id}.`,m.GENERIC_FAILURE);let u=a[d.historyIndex];return{document:l,reconstructed:!0,as_of_version:d.historyIndex+1,as_of_timestamp:u.ts,target:d,history_length:a.length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="eb044a23-d43b-5e9c-9ae7-4ac91b5e587a")}catch{}})();function j(e,t="--limit"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0)throw new p(`${t} must be a non-negative integer`,m.USAGE);return r}function kt(e,t="--priority"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0||r>4)throw new p(`${t} filter must be 0..4`,m.USAGE);return r}function Yi(e,t,n="--type"){if(e===void 0)return;let r=dt(e,t);if(!r)throw new p(`${n} filter must be one of ${t.types.join("|")}`,m.USAGE);return r}import $c from"node:fs/promises";import Zi 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]="8b010e79-a73a-5760-ac05-8dc88484cd69")}catch{}})();var In={version:1,aliases:{}};function St(e=[]){let t=new Set(Pe),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 Xi(e){if(e===void 0)return;let n=(typeof e=="string"?[e]:e).flatMap(r=>r.split(",")).map(r=>r.trim()).filter(r=>r.length>0);return n.length===0?void 0:new Set(n)}function Tn(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 Oc(e,t=Pe){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()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let a=o.slice(0,s).trim().toLowerCase(),d=o.slice(s+1).trim();if(!n.has(a))throw new p(`Unknown provenance dimension "${a||o.trim()}". Declared dimensions: ${[...n].sort().join(", ")}.`,m.USAGE,{code:"unknown_provenance_dimension"});if(d.length===0)throw new p(`Provenance predicate must use dimension=value; received "${o.trim()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let c=r.get(a)??new Set;c.add(d),r.set(a,c)}return r}function Et(e,t=In,n={}){let r=Tn(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 xt(e,t=In,n=Pe){let r=Xi(e.harness),i=Xi(e.agentInstance),o=Oc(e,n);return s=>{let d=Tn(s,t).agent_harness;if(r&&(!d||!r.has(d))||i&&!i.has(s.agent_instance??""))return!1;for(let[c,l]of o){let u=s.agent_provenance?.[c];if(!u||!l.has(u.value))return!1}return!0}}function Ct(e,t=In,n=Pe){let r=new Set(n),i=new Map,o=0;for(let s of e){for(let d of Object.keys(s.agent_provenance??{}))r.add(d);Tn(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,d=0;for(let c of e){let l=c.agent_provenance?.[s];l===null?d+=1:l!==void 0&&(a+=1)}return{dimension:s,observed:a,unavailable:d,legacy_missing:e.length-a-d}})}}(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]="7005305a-5fd4-56b8-a0a0-5612e8bf48cc")}catch{}})();var Nc=20,Pc=5,jc=15,Uc="-24h";function Pg(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 Bc={digest:"activity_digest",compact:"compact_activity",provenance:"provenance_activity",full:"activity"};function Fn(e,t){if(e===void 0)return;let n=e.trim();if(n.length===0)throw new p(`${t} must not be empty`,m.USAGE);return n}function Qi(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",m.USAGE);let i=n==="--from"&&/^\d+[hdwm]$/iu.test(r)?`-${r}`:r;return B(i,new Date(t),n)}function Kc(e,t,n){return!(e.ts.length===0&&(t||n)||t&&S(e.ts,t)<0||n&&S(e.ts,n)>=0)}function Ji(e,t){return t===void 0?e:e.slice(0,t)}function Ke(e,t=""){return typeof e=="string"?e:t}function Hc(e,t){return{...t,id:e,ts:Ke(t.ts),author:Ke(t.author,"unknown"),op:Ke(t.op,"unknown"),patch:Array.isArray(t.patch)?t.patch:[],before_hash:Ke(t.before_hash),after_hash:Ke(t.after_hash)}}function Gc(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 qc(e){try{return(await $c.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort((t,n)=>t.localeCompare(n))}catch(t){if(Nr(t))return[];throw t}}function zc(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 Wc(e,t,n){if(e.unbounded!==!0)return t!==void 0?t:n==="digest"?jc:n==="compact"?Nc:Pc}function Vc(e,t){let n=M(),r=t==="digest",i=Qi(e.to??(r?n:void 0),n,"--to"),o=Qi(e.from??(r?Uc:void 0),e.from===void 0&&r?i:n,"--from");if(o&&i&&S(o,i)>=0)throw new p("Activity --from must be before --to",m.USAGE);let s=fe(e.limit);if(e.unbounded===!0&&s!==void 0)throw new p("Activity --unbounded cannot be combined with --limit",m.USAGE);return{id:Fn(e.id,"Activity --id"),op:Fn(e.op,"Activity --op"),author:Fn(e.author,"Activity --author"),from:o,to:i,limit:Wc(e,s,t),limitSource:e.unbounded===!0||s!==void 0?"explicit":"default",harness:e.harness,agentInstance:e.agentInstance,provenance:e.provenanceFilter}}async function Yc(e){let t=I(process.cwd(),e.path);return await N(t),{pmRoot:t,settings:await R(t)}}async function Xc(e){let t=L(e.settings,F()),n=await ae(e.pmRoot,e.settings.item_format,t.type_to_folder,void 0,e.settings.schema);await gi({pmRoot:e.pmRoot,settings:e.settings,itemIds:n.map(i=>i.id),commandLabel:"activity"});let r=Zi.join(e.pmRoot,"history");return await Ne({path:r,scope:"project"}),{historyDir:r,itemsById:new Map(n.map(i=>[i.id,{title:i.title,type:i.type,status:i.status}]))}}function Qc(e,t,n){return n.op&&e.op!==n.op||n.author&&e.author!==n.author?!1:Kc(t,n.from,n.to)}async function Jc(e,t){let n=[];for(let r of await qc(e)){let i=r.slice(0,-6);if(t.id&&i!==t.id)continue;let o=await H(Zi.join(e,r),i);for(let s of o){let a=Hc(i,s);Qc(s,a,t)&&n.push(a)}}return n}function Zc(e){return e.map(t=>({id:t.id,op:t.op,ts:t.ts,author:t.author,...t.message?{msg:t.message}:{}}))}function ed(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 td(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,S(r.ts,i.firstTs)<0&&(i.firstTs=r.ts),S(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:ed(i.operations)}}).sort((r,i)=>S(i.last_ts,r.last_ts)||r.id.localeCompare(i.id))}function nd(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 rd(e,t,n,r,i){if(e==="digest"){let s=td(t,r),a=Ji(s,n);return{rows:{activity_digest:a},compact:!1,totalRows:s.length,returnedRows:a.length}}let o=Ji(t,n);return e==="compact"?{rows:{compact_activity:Zc(o)},compact:!0,totalRows:t.length,returnedRows:o.length}:e==="provenance"?{rows:{provenance_activity:o.map(i)},compact:!1,totalRows:t.length,returnedRows:o.length}:{rows:{activity:o},compact:!1,totalRows:t.length,returnedRows:o.length}}async function eo(e,t){let n=await Yc(t),r=zc(e),i=Vc(e,r),o=await Xc(n),s=St(n.settings.agent_identity.harness_signals),a=n.settings.agent_identity.identity_vocabulary,d=xt({harness:i.harness,agentInstance:i.agentInstance,provenance:i.provenance},a,s),c=Gc(await Jc(o.historyDir,i)).filter(d),l=rd(r,c,i.limit,o.itemsById,f=>Et(f,a,{itemId:f.id})),u=l.totalRows-l.returnedRows;return{...l.rows,compact:l.compact,projection:{mode:r,row_key:Bc[r]},omission_receipt:lt("activity",r),count:l.returnedRows,total_count:l.totalRows,limit:i.limit??null,omitted_count:u,has_more:u>0,...r==="digest"?{activity_summary:{window:{from:i.from,to:i.to},event_count:c.length,item_count:l.totalRows,author_count:new Set(c.map(f=>f.author)).size,operation_counts:nd(c)}}:{},...e.provenanceSummary===!0?{provenance_summary:Ct(c,a,s)}:{},applied_bound:{kind:i.limit===void 0?"unbounded":"limit",source:i.limitSource,value:i.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]="1035bd62-b012-5249-bd53-31b39f21b2d3")}catch{}})();function Rn(e,t){if(e===void 0)return;let n=[],r="";for(let s=0;s<e.length;s+=1){let a=e[s];if(a==="\\"){let d=e[s+1];if(d===","||d==="\\"){r+=d,s+=1;continue}r+=a;continue}if(a===","){n.push(r),r="";continue}r+=a}n.push(r);let i=n.map(s=>s.trim());if(i.some(s=>s.length===0))throw new p(`${t.label} requires at least one non-empty value`,m.USAGE);let o=i.map(s=>t.normalize?.(s)??s);return[...new Set(o)]}function W(e,t){let n=Rn(e,t);return n===void 0?void 0:new Set(n)}function It(e,t,n="--type"){let r=Rn(e,{label:n});if(r===void 0)return;let i=r.map(o=>{let s=dt(o,t);if(!s)throw new p(`${n} filter token "${o}" must be one of ${t.types.join("|")}`,m.USAGE);return s});return new Set(i)}function Tt(e,t="--priority"){let n=Rn(e,{label:t});if(n!==void 0)return new Set(n.map(r=>kt(r,t)))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5b7b3eaf-a792-5f44-9981-8c82ce511070")}catch{}})();function to(e,t){let n=e.trim().toLowerCase();return t.alias_to_id.get(n)??n}function Ft(e){return{isTerminal(t){return e.terminal_statuses.has(to(t,e))},classify(t){let n=to(t,e);return e.terminal_canceled_statuses.has(n)?"canceled":e.terminal_statuses.has(n)?"closed":e.blocked_statuses.has(n)?"blocked":e.draft_statuses.has(n)?"draft":n===e.open_status?"open":e.active_statuses.has(n)?"in_progress":"other"}}}function An(e){return $(e.acceptance_criteria)===void 0}function Mn(e){return!Number.isFinite(e.estimated_minutes)}function oo(e,t){return t.isTerminal(e.status)?$(e.resolution)===void 0:!1}function id(e){return $(e.reviewer)===void 0}function od(e){return $(e.risk)===void 0}function sd(e){return typeof e.confidence=="number"?!Number.isFinite(e.confidence):$(e.confidence)===void 0}function ad(e){return $(e.sprint)===void 0}function cd(e){return $(e.release)===void 0}function He(e){return!!(e.acMissing||e.estimatesMissing||e.resolutionMissing||e.reviewerMissing||e.riskMissing||e.confidenceMissing||e.sprintMissing||e.releaseMissing||e.metadataMissing)}function dd(e,t,n){return[[t.acMissing,An(e)],[t.estimatesMissing,Mn(e)],[t.resolutionMissing,oo(e,n)],[t.reviewerMissing,id(e)],[t.riskMissing,od(e)],[t.confidenceMissing,sd(e)],[t.sprintMissing,ad(e)],[t.releaseMissing,cd(e)]].every(([i,o])=>i!==!0||o)}function ud(e,t){return An(e)||Mn(e)||oo(e,t)}function Rt(e,t,n){return He(t)?!(!dd(e,t,n)||t.metadataMissing&&!ud(e,n)):!0}var Dn=["acceptance_criteria","estimated_minutes","resolution","tags","parent"];function ld(e,t){switch(t){case"acceptance_criteria":return!An(e);case"estimated_minutes":return!Mn(e);case"resolution":return $(e.resolution)!==void 0;case"tags":return Array.isArray(e.tags)&&e.tags.length>0;default:return $(e.parent)!==void 0}}function fd(e,t,n){return t==="resolution"?n.isTerminal(e.status):!0}function md(e,t){return t===0?100:Math.round(e/t*1e3)/10}function no(){let e={};for(let t of Dn)e[t]={present:0,applicable:0,percent:100};return e}function ro(e,t,n){for(let r of Dn){if(!fd(t,r,n))continue;let i=e[r];i.applicable+=1,ld(t,r)&&(i.present+=1)}}function io(e){for(let t of Dn){let n=e[t];n.percent=md(n.present,n.applicable)}}function zg(e,t){let n=no(),r={};for(let i of e){ro(n,i,t);let o=r[i.type]??(r[i.type]=no());ro(o,i,t)}io(n);for(let i of Object.values(r))io(i);return{overall:n,by_type:r}}var pd={assignee:"(unassigned)",priority:"(no priority)",tag:"(untagged)",parent:"(unparented)",type:"(untyped)",status:"(no status)"};function hd(e){return pd[e]}function gd(){return{open:0,in_progress:0,blocked:0,draft:0,closed:0,canceled:0,other:0}}function yd(e,t,n){switch(t){case"assignee":return[$(e.assignee)??null];case"parent":return[$(e.parent)??null];case"type":return[$(e.type)??null];case"status":return[$(e.status)??null];case"priority":return[typeof e.priority=="number"?`P${e.priority}`:null];default:{let r=n.tagPrefix?.trim(),o=(Array.isArray(e.tags)?e.tags:[]).filter(s=>typeof s=="string"&&s.length>0&&(!r||s.startsWith(r)));return o.length>0?o:[null]}}}function Wg(e,t,n,r={}){let i=new Map,o=0;for(let a of e){o+=1;let d=n.classify(a.status);for(let c of yd(a,t,r)){let l=c??"\0empty",u=i.get(l);u||(u={label:c??hd(t),key:c,buckets:gd(),total:0},i.set(l,u)),u.buckets[d]+=1,u.total+=1}}let s=[...i.values()].sort((a,d)=>d.total!==a.total?d.total-a.total:a.key===null?1:d.key===null?-1:a.label.localeCompare(d.label));return{dimension:t,rows:s,total_items:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="03824e4b-562b-5e12-a89a-9dd091ae7fd3")}catch{}})();var Fe=["notes","learnings","files","docs","tests","comments","deps","body","linked_command"];function me(e){return Array.isArray(e)&&e.length>0}function _d(e){return typeof e=="string"&&e.trim().length>0}function wd(e){return Array.isArray(e)?e.some(t=>{if(typeof t!="object"||t===null)return!1;let n=t.command;return typeof n=="string"&&n.trim().length>0}):!1}function ao(e,t){switch(t){case"notes":return me(e.notes);case"learnings":return me(e.learnings);case"files":return me(e.files);case"docs":return me(e.docs);case"tests":return me(e.tests);case"comments":return me(e.comments);case"deps":return me(e.dependencies);case"body":return _d(e.body);case"linked_command":return wd(e.tests)}}function At(e){return Fe.some(t=>e[t]!==void 0)}function Mt(e,t){for(let n of Fe){let r=t[n];if(r===void 0)continue;let i=ao(e,n);if(r==="present"&&!i||r==="absent"&&i)return!1}return!0}function co(e){return Fe.some(t=>t!=="body"&&e[t]!==void 0)}function uo(e){return e.body!==void 0}function so(e,t){return t===0?100:Math.round(e/t*1e3)/10}function bd(){let e={};for(let t of Fe)e[t]={present:0,total:0,percent:100};return e}function Yg(e){let t=bd(),n=e.length;for(let s of e)for(let a of Fe)ao(s,a)&&(t[a].present+=1);for(let s of Fe)t[s].total=n,t[s].percent=so(t[s].present,n);let r=t.body,i=n-r.present,o={present:i,total:n,percent:so(i,n)};return{total_items:n,fields:t,body_populated:r,empty_body:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="93e8c187-e198-50fc-bf2c-7dae2ea42219")}catch{}})();var Dt=e=>({acMissing:e.filterAcMissing===!0,estimatesMissing:e.filterEstimatesMissing===!0,resolutionMissing:e.filterResolutionMissing===!0,metadataMissing:e.filterMetadataMissing===!0,reviewerMissing:e.filterReviewerMissing===!0,riskMissing:e.filterRiskMissing===!0,confidenceMissing:e.filterConfidenceMissing===!0,sprintMissing:e.filterSprintMissing===!0,releaseMissing:e.filterReleaseMissing===!0}),lo=[{field:"notes",presentKey:"hasNotes",absentKey:"noNotes",presentFlag:"--has-notes",absentFlag:"--no-notes"},{field:"learnings",presentKey:"hasLearnings",absentKey:"noLearnings",presentFlag:"--has-learnings",absentFlag:"--no-learnings"},{field:"files",presentKey:"hasFiles",absentKey:"noFiles",presentFlag:"--has-files",absentFlag:"--no-files"},{field:"docs",presentKey:"hasDocs",absentKey:"noDocs",presentFlag:"--has-docs",absentFlag:"--no-docs"},{field:"tests",presentKey:"hasTests",absentKey:"noTests",presentFlag:"--has-tests",absentFlag:"--no-tests"},{field:"comments",presentKey:"hasComments",absentKey:"noComments",presentFlag:"--has-comments",absentFlag:"--no-comments"},{field:"deps",presentKey:"hasDeps",absentKey:"noDeps",presentFlag:"--has-deps",absentFlag:"--no-deps"},{field:"body",presentKey:"hasBody",absentKey:"emptyBody",presentFlag:"--has-body",absentFlag:"--empty-body"},{field:"linked_command",presentKey:"hasLinkedCommand",absentKey:"noLinkedCommand",presentFlag:"--has-linked-command",absentFlag:"--no-linked-command"}],qe=e=>{let t=lo.find(n=>e[n.presentKey]===!0&&e[n.absentKey]===!0);if(t)throw new p(`Cannot combine ${t.presentFlag} with ${t.absentFlag} for the same field.`,m.USAGE);return Object.fromEntries(lo.flatMap(n=>e[n.presentKey]===!0?[[n.field,"present"]]:e[n.absentKey]===!0?[[n.field,"absent"]]:[]))},fo=["priority","deadline","updated_at","created_at","title","parent"],mo=["asc","desc"],yo=new Set(wi);function vd(e,t,n){let r=e.filter(s=>s.startsWith("item_list_item_read_failed:")).length,i=e.filter(s=>s.startsWith("item_list_directory_read_failed:")).length,o={status:t?"unchecked":r+i>0?"partial":"complete",unreadable_item_count:r,unreadable_directory_count:i};if(n&&o.status==="partial")throw new p(`List source is incomplete: ${r} item document(s) and ${i} item directory/directories could not be read.`,m.GENERIC_FAILURE,{code:"list_source_incomplete",why:"Strict list reads fail closed so agents and SDK consumers never treat an omitted item as a complete workspace.",nextSteps:["Run pm validate --check-storage-integrity to locate unreadable tracker artifacts.","Repair the reported files or align the installed decoder version, then retry."]});return o}function kd(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length>0}var Sd=[{key:"hasNotes",summaryKey:"has_notes"},{key:"hasLearnings",summaryKey:"has_learnings"},{key:"hasFiles",summaryKey:"has_files"},{key:"hasDocs",summaryKey:"has_docs"},{key:"hasTests",summaryKey:"has_tests"},{key:"hasComments",summaryKey:"has_comments"},{key:"hasDeps",summaryKey:"has_deps"},{key:"hasBody",summaryKey:"has_body"},{key:"hasLinkedCommand",summaryKey:"has_linked_command"},{key:"noNotes",summaryKey:"no_notes"},{key:"noLearnings",summaryKey:"no_learnings"},{key:"noFiles",summaryKey:"no_files"},{key:"noDocs",summaryKey:"no_docs"},{key:"noTests",summaryKey:"no_tests"},{key:"noComments",summaryKey:"no_comments"},{key:"noDeps",summaryKey:"no_deps"},{key:"emptyBody",summaryKey:"empty_body"},{key:"noLinkedCommand",summaryKey:"no_linked_command"}],Ed=[{key:"filterReviewerMissing",summaryKey:"filter_reviewer_missing"},{key:"filterRiskMissing",summaryKey:"filter_risk_missing"},{key:"filterConfidenceMissing",summaryKey:"filter_confidence_missing"},{key:"filterSprintMissing",summaryKey:"filter_sprint_missing"},{key:"filterReleaseMissing",summaryKey:"filter_release_missing"}];function _o(e,t){for(let n of Sd)t[n.key]===!0&&(e[n.summaryKey]=!0)}function wo(e,t){for(let n of Ed)t[n.key]===!0&&(e[n.summaryKey]=!0)}function On(e,t,n){for(let r of n){let i=t[r.optionKey];i!==void 0&&(e[r.summaryKey]=r.normalize?r.normalize(i):i)}}function ze(e){let t={};return _o(t,e),t}function We(e){let t={};return wo(t,e),t}var xd=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"}],Cd=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"limit",summaryKey:"limit"},{optionKey:"offset",summaryKey:"offset"},{optionKey:"includeBody",summaryKey:"include_body"},{optionKey:"compact",summaryKey:"compact"},{optionKey:"fields",summaryKey:"fields"}],Id=[{key:"filterAcMissing",summaryKey:"filter_ac_missing"},{key:"filterEstimatesMissing",summaryKey:"filter_estimates_missing"},{key:"filterResolutionMissing",summaryKey:"filter_resolution_missing"},{key:"filterMetadataMissing",summaryKey:"filter_metadata_missing"}],Td="-7d";function bo(e){let{filtersStatus:t,options:n,treeEnabled:r,treeDepth:i,sortField:o,sortOrder:s,runtimeFieldFilters:a}=e,d={};return t!==null&&(d.status=t),n.dependencyBlocked===!0&&(d.blocked_semantics="status_or_dependency"),On(d,n,xd),ko(d,n),n.filterAcMissing===!0&&(d.filter_ac_missing=!0),n.filterEstimatesMissing===!0&&(d.filter_estimates_missing=!0),n.filterResolutionMissing===!0&&(d.filter_resolution_missing=!0),n.filterMetadataMissing===!0&&(d.filter_metadata_missing=!0),wo(d,n),_o(d,n),n.limit!==void 0&&(d.limit=n.limit),n.offset!==void 0&&(d.offset=n.offset),n.includeBody===!0&&(d.include_body=!0),n.fields!==void 0&&(d.fields=n.fields),r&&(d.tree=!0,i!==void 0&&(d.tree_depth=i)),o!==void 0&&(d.sort=o,d.order=s),kd(a)&&(d.runtime_filters=a),d}function $n(e,t,n){let r=K(e.status,n),i=K(t.status,n);if(r!==i)return r?1:-1;let o=e.priority-t.priority;if(o!==0)return o;let s=S(t.updated_at,e.updated_at);return s!==0?s:(e.id??"").localeCompare(t.id??"")}function Fd(e,t){return[...e].sort((n,r)=>$n(n,r,t))}function po(e,t){if(e!==void 0)return B(e,new Date,t)}function Ge(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return B(n,new Date,t)}function vo(e){let t=e.updatedAfter!=null&&String(e.updatedAfter).trim().length>0;if([e.today===!0,e.recent===!0,t].filter(r=>r).length>1)throw new p("Choose only one updated_at window: --today, --recent, or --updated-after.",m.USAGE);if(e.today===!0){let r=new Date;return r.setHours(0,0,0,0),r.toISOString()}return e.recent===!0?Ge(Td,"recent"):Ge(e.updatedAfter,"updated-after")}function ko(e,t){t.today===!0&&(e.today=!0),t.recent===!0&&(e.recent=!0)}function So(e){if(e==null)return;let t=String(e).trim();if(t.length===0)throw new p("--ids requires at least one non-empty item ID",m.USAGE);let n=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(n.length===0)throw new p("--ids requires at least one non-empty item ID",m.USAGE);return new Set(n)}function Nn(e){if(e===void 0)return;let t=String(e).trim(),n=t.length===0?Number.NaN:Number(t);if(!Number.isInteger(n)||n<0)throw new p("Offset filter must be a non-negative integer",m.USAGE);return n}function Eo(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("List --fields requires a comma-separated list of field names",m.USAGE);return[...new Set(t)]}function xo(e,t=e.projectionCommand??"list"){let n=e.compact===!0,r=e.brief===!0,i=e.full===!0,o=Eo(e.fields);if(Number(n)+Number(r)+Number(i)+ +(o!==void 0)>1)throw new p("List projection options are mutually exclusive. Use one of --compact, --brief, --full, or --fields.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:`pm ${t} --brief`,suggested_retry_args:[t,"--brief"]}});return i?{mode:"full",fields:[]}:r?{mode:"brief",fields:[...dn]}:n?{mode:"compact",fields:[...cn]}:o?{mode:"fields",fields:[...new Set(o.map(a=>ce(a)))]}:{mode:"full",fields:[]}}function ce(e){return e.startsWith("item.")?e.slice(5):e}function Rd(e,t,n){if(e.mode!=="fields")return;let r=un(t),i=new Set(r.map(s=>ce(s))),o=e.fields.filter(s=>!i.has(ce(s)));if(o.length>0)throw new p(`Unknown list --fields value(s): ${o.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm list-open --fields id,title,status,type,updated_at","pm list --fields id,title,parent,priority --limit 10","pm list-all --fields id,title,body --limit 5"],recovery:{allowed_values:r,suggested_retry:`pm ${n} --fields id,title,status --limit 10`,suggested_retry_args:[n,"--fields","id,title,status","--limit","10"]}})}var Ad=new Map([["updated","updated_at"],["update","updated_at"],["modified","updated_at"],["created","created_at"],["create","created_at"]]);function Co(e){if(e===void 0)return;let t=e.trim().toLowerCase(),n=Ad.get(t);if(n)return n;if(!fo.includes(t))throw new p(`Sort field must be one of ${fo.join("|")} (aliases: updated->updated_at, created->created_at)`,m.USAGE);return t}function Io(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!mo.includes(t))throw new p(`Sort order must be one of ${mo.join("|")}`,m.USAGE);return t}function Md(e){return j(e,"--tree-depth")}function To(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new p("Assignee filter must be one of assigned|unassigned",m.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new p(`Invalid assignee filter "${e}". Allowed: assigned|unassigned`,m.USAGE);return t}function ho(e,t){return xe(e,t,{strict:!0})}function Fo(e){return W(e,{label:"--tag",normalize:t=>t.toLowerCase()})}function Dd(e,t,n){let r=Fo(t);if(r===void 0)return;let i=new Set(e.flatMap(s=>s.tags.map(a=>a.trim().toLowerCase()))),o=[...r].filter(s=>!i.has(s));o.length>0&&n.push(`unknown_tags:${o.join(",")}`)}function Ld(e,t){if(e&&[...e].some(n=>n.toLowerCase()==="none"||n.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',m.USAGE);if(e!==void 0&&t==="unassigned")throw new p("Cannot combine --assignee with --assignee-filter unassigned",m.USAGE)}function Od(e,t,n,r){let i=W(t.assignee,{label:"--assignee"}),o=To(t.assigneeFilter);Ld(i,o);let s=Dt(t),a=qe(t);return{idsFilter:So(t.ids),statusSet:e&&e.length>0?new Set(e):void 0,excludeTerminal:t.excludeTerminal===!0,typeFilter:It(t.type,n),tagFilters:Fo(t.tag),priorityFilter:Tt(t.priority),deadlineBefore:po(t.deadlineBefore,"deadline-before"),deadlineAfter:po(t.deadlineAfter,"deadline-after"),updatedAfter:vo(t),updatedBefore:Ge(t.updatedBefore,"updated-before"),createdAfter:Ge(t.createdAfter,"created-after"),createdBefore:Ge(t.createdBefore,"created-before"),assigneeFilter:i,assigneeModeFilter:o,parentFilter:t.parent?.trim(),treeEnabled:t.tree===!0,sprintFilter:W(t.sprint,{label:"--sprint"}),releaseFilter:W(t.release,{label:"--release"}),missingMetadataFilters:s,missingMetadataActive:He(s),lifecycleClassifier:Ft(r),contentFieldFilters:a,contentFiltersActive:At(a)}}function $d(e,t,n){return t.idsFilter&&!t.idsFilter.has(e.id)||t.statusSet&&!t.statusSet.has(e.status)||t.excludeTerminal&&K(e.status,n)||t.typeFilter&&!t.typeFilter.has(e.type)||t.tagFilters&&![...t.tagFilters].some(r=>(e.tags??[]).some(i=>i.trim().toLowerCase()===r))?!1:t.priorityFilter===void 0||t.priorityFilter.has(e.priority)}function Nd(e,t){return ft(e,t)}function Pd(e,t){return t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee?!1:t.assigneeFilter===void 0||e.assignee!==void 0&&t.assigneeFilter.has(e.assignee)}function jd(e,t,n){let r=e.parent?.trim().toLowerCase(),i=[...new Set([...n?.get(e.id.trim().toLowerCase())??[],...r?[r]:[]])];return t.parentFilter!==void 0&&!t.treeEnabled&&!i.includes(t.parentFilter.trim().toLowerCase())||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))?!1:t.releaseFilter===void 0||e.release!==void 0&&t.releaseFilter.has(e.release)}function Ud(e,t,n,r,i){return!(!$d(e,t,n)||!Nd(e,t)||!Pd(e,t)||!jd(e,t,i)||t.missingMetadataActive&&!Rt(e,t.missingMetadataFilters,t.lifecycleClassifier)||t.contentFiltersActive&&!Mt(e,t.contentFieldFilters)||!Ie(e,r))}function Ro(e,t,n,r,i,o,s){let a=Od(t,n,r,i);return e.filter(d=>Ud(d,a,i,o,s))}function Re(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Ln(e,t,n,r){let i=e,o=typeof i.title=="string"?i.title:"",s=r??Re(typeof i.parent=="string"?i.parent:void 0)??null;return{...e,tree_depth:t,tree_parent:s,tree_children:n,tree_title:`${" ".repeat(t)}${o}`}}function Bd(e,t){let n=new Map,r=new Map;for(let i of e){let o=i.id.trim().toLowerCase();n.set(o,i);let s=t?t.parents_by_child.get(o)??[]:[Re(i.parent)?.toLowerCase()].filter(a=>a!==void 0);for(let a of s){let d=r.get(a)??[];d.push(i),r.set(a,d)}}return{byId:n,childrenByParent:r}}function Kd(e,t,n,r,i){return t?[...r.get(t.toLowerCase())??[]]:e.filter(o=>(i?i.parents_by_child.get(o.id.trim().toLowerCase())??[]:[Re(o.parent)?.toLowerCase()].filter(a=>a!==void 0)).every(a=>!n.has(a)))}function Ao(e,t,n,r,i=e){let{byId:o,childrenByParent:s}=Bd(e,r),a=Kd(e,t,o,s,r),d=[],c=new Set,l=new Map(i.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),u=[...a].reverse().map(f=>({node:f,depth:0,parentId:t===void 0?void 0:l.get(t.trim().toLowerCase())??t.trim()}));for(;u.length>0;){let{node:f,depth:h,parentId:y}=u.pop(),g=f.id.trim().toLowerCase();if(c.has(g))continue;c.add(g);let w=s.get(g)??[];if(d.push(Ln(f,h,w.length,y)),!(n!==void 0&&h>=n))for(let _ of[...w].reverse())u.push({node:_,depth:h+1,parentId:l.get(g)})}if(t===void 0&&n===void 0)for(let f of e){let h=f.id.trim().toLowerCase();c.has(h)||(c.add(h),d.push(Ln(f,0,s.get(h)?.length??0)))}return d}function Mo(e,t){return e===t?0:e===null?1:t===null?-1:e.localeCompare(t)}function Do(e,t){return e===t?0:e===null?1:t===null?-1:S(e,t)}function Lo(e,t,n){switch(n){case"priority":return e.priority-t.priority;case"deadline":return Do(e.deadline??null,t.deadline??null);case"updated_at":return S(e.updated_at,t.updated_at);case"created_at":return S(e.created_at,t.created_at);case"title":return(e.title??"").localeCompare(t.title??"");case"parent":return Mo(e.parent??null,t.parent??null);default:return 0}}function Oo(e,t,n,r){return t?[...e].sort((i,o)=>{let s=Lo(i,o,t);if(s!==0)return n==="desc"?-s:s;let a=$n(i,o,r);return n==="desc"?-a:a}):Fd(e,r)}function $o(e,t,n=!1){let r=ce(t.trim());if(r.length===0)return null;let i=e;return n&&r==="title"&&typeof i.tree_title=="string"?i.tree_title:Object.prototype.hasOwnProperty.call(i,r)?i[r]??null:null}function Pn(e,t,n=!1){return t.mode==="full"?e:e.map(r=>{let i={};for(let o of t.fields)i[o]=$o(r,o,n);return i})}function No(e){let t=[];for(let n of e)t.push(n.metadata_key);return t}function Po(e,t){if(e.noTruncate!==!0)return j(e.limit)??(t>=1e4?20:void 0)}function Hd(e,t,n){return t.after===void 0?Nn(t.offset)??0:ut(e,t.after,n,r=>r.id)}function jo(e,t,n){return{...e!==void 0?{applied_limit:e}:{},has_more:t,truncated:t,next_cursor:n??null}}async function Gd(e,t){let n=I(process.cwd(),t.path);await N(n);let r=await R(n),i=P(r.schema),o=G(r.schema),s=e.projectionCommand??"list",a=xo(e,s);return Rd(a,No(o.definitions),s),{pmRoot:n,settings:r,statusRegistry:i,runtimeFieldFilters:Ce(e,o,"list"),typeRegistry:L(r,F()),projection:a}}async function qd(e,t,n){let r=t.projection.fields.some(d=>ce(d)==="body"),i=t.projection.mode==="full"||t.projection.fields.some(d=>yo.has(ce(d))),o=qe(e),s=co(o),a=uo(o);return e.includeBody||r||a?await Si(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):i||s?await gt(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):await ae(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema)}function zd(e){let t=Co(e.sort),n=Io(e.order)??"asc",r=e.tree===!0;if(!r&&e.treeDepth!==void 0)throw new p("List --tree-depth requires --tree",m.USAGE);if(!t&&e.order!==void 0)throw new p("List --order requires --sort",m.USAGE);return{sortField:t,sortOrder:n,treeEnabled:r,treeDepth:r?Md(e.treeDepth):void 0,parentRoot:r?Re(e.parent):void 0}}function Wd(e,t,n){let r=ho(t.status,n),i=r??ho(e,n),o=Ti(t.status),s=r||o?{...t,excludeTerminal:!1}:t,a=o?"all":i===void 0?s.excludeTerminal===!0?null:"all":i.length===1?i[0]:i;return{resolvedStatus:i,explicitAllStatuses:o,effectiveOptions:s,filtersStatus:a}}function Vd(e,t,n,r,i){if(t.after!==void 0&&t.offset!==void 0)throw new p("List --after cannot be combined with --offset.",m.USAGE);let o=Po(t,e.length),s=Hd(e,t,i),a=o===void 0?e.slice(s):e.slice(s,s+o),d=Pn(a,n,r),c=e.length,l=a.length>0&&s+a.length<c,u=l&&a.length>0?$e(i,a[a.length-1].id,s+a.length-1):void 0;return{projected:d,totalMatched:c,pageExtras:jo(o,l,u)}}function Uo(e,t,n){return ve("list",{status:e,options:be(t,Hr),sort:n.sortField??"default",order:n.sortOrder,tree:n.treeEnabled,tree_depth:n.treeDepth??null})}async function Yd(e){let{options:t,runtime:n,statusSelection:r,ordering:i}=e,o=new Set(["status","limit","offset","compact","brief","full","fields","format","stream","includeBody","excludeTerminal","dependencyBlocked","noTruncate","projectionCommand","truncate","notes","learnings","files","docs","tests","comments","deps","linkedCommand"]),s=[n.projection.mode==="full",n.projection.fields.some(y=>{let g=ce(y);return g==="body"||yo.has(g)})].includes(!0);if([t.limit===void 0,t.after!==void 0,t.noTruncate===!0,t.includeBody===!0,t.dependencyBlocked===!0,t.strictRead===!0,i.treeEnabled,i.sortField!==void 0,s,Vr(),Object.keys(n.runtimeFieldFilters).length>0,Object.entries(t).some(([y,g])=>g!==void 0&&!o.has(y))].includes(!0))return null;let d=await Ee(n.pmRoot,[...new Set(Object.values(n.typeRegistry.type_to_folder))]);if(!d)return null;let c=j(t.limit),l=Nn(t.offset)??0,u=await _i({pmRoot:n.pmRoot,expectedSourceCursor:d.source_cursor,query:{statuses:r.resolvedStatus,excludeStatuses:r.resolvedStatus===void 0&&r.effectiveOptions.excludeTerminal===!0?[...n.statusRegistry.terminal_statuses]:void 0,terminalStatuses:[...n.statusRegistry.terminal_statuses],limit:c,offset:l}});if(!u)return null;let f=u.items.length>0&&l+u.items.length<u.total,h=f?$e(Uo(r.filtersStatus,t,i),u.items.at(-1).id,l+u.items.length-1):void 0;return{projected:Pn(u.items,n.projection,!1),totalMatched:u.total,pageExtras:jo(c,f,h)}}function Xd(e){let{filtersStatus:t,options:n,noTruncate:r,treeEnabled:i,treeDepth:o,sortField:s,sortOrder:a,runtimeFieldFilters:d}=e,c={};t!==null&&(c.status=t),n.dependencyBlocked===!0&&(c.blocked_semantics="status_or_dependency");let l=n;for(let u of Cd){let f=l[u.optionKey];f!=null&&(c[u.summaryKey]=f)}for(let u of Id)l[u.key]===!0&&(c[u.summaryKey]=!0);return Object.assign(c,We(n),ze(n)),ko(c,n),r&&(c.no_truncate=!0),n.strictRead===!0&&(c.strict_read=!0),i&&(c.tree=!0,o!==void 0&&(c.tree_depth=o)),s!==void 0&&(c.sort=s,c.order=a),c.runtime_filters=d,c}async function te(e,t,n){let r=await Gd(t,n),i=[],o=zd(t),s=Wd(e,t,r.statusRegistry),a=t.noTruncate===!0,d=await Yd({options:t,runtime:r,statusSelection:s,ordering:o}),c=d;if(!c){let g=await qd(t,r,i),_=o.treeEnabled||Re(t.parent)!==void 0?bt(wt(g,_t())):void 0;Dd(g,t.tag,i);let b=Ro(g,s.resolvedStatus,s.effectiveOptions,r.typeRegistry,r.statusRegistry,r.runtimeFieldFilters,_?.parents_by_child),v=t.dependencyBlocked===!0?(()=>{let C=vt(g,r.statusRegistry);return b.filter(x=>C.has(x.id.trim().toLowerCase()))})():b,E=Oo(v,o.sortField,o.sortOrder,r.statusRegistry),T=o.treeEnabled?Ao(E,o.parentRoot,o.treeDepth,_,g):E;c=Vd(T,t,r.projection,o.treeEnabled,Uo(s.filtersStatus,t,o))}let l=M(),u=[...new Set(i)].sort((g,w)=>g.localeCompare(w)),f=vd(u,d!==null,t.strictRead===!0),h=r.projection.mode==="full"?null:[...r.projection.fields];if(r.projection.mode==="compact"&&t.compact===!0){let g=bo({filtersStatus:s.filtersStatus,options:t,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters});return{items:c.projected,count:c.projected.length,total:c.totalMatched,...c.pageExtras,completeness:f,filters:g,projection:{mode:"compact",fields:h},...u.length>0?{warnings:u}:{}}}return{items:c.projected,count:c.projected.length,total:c.totalMatched,...c.pageExtras,completeness:f,filters:Xd({filtersStatus:s.filtersStatus,options:t,noTruncate:a,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters}),projection:{mode:r.projection.mode,fields:h},sorting:{sort:o.sortField??"default",order:o.sortField?o.sortOrder:"asc"},now:l,...u.length>0?{warnings:u}:{}}}var Ey={applyFilters:Ro,buildCompactListFilterSummary:bo,buildContentFilterEcho:ze,buildGovernanceMissingFilterEcho:We,resolveContentFieldFilters:qe,resolveMissingMetadataFilters:Dt,compareBySortField:Lo,compareDefaultSort:$n,compareNullableString:Mo,compareNullableTimestamp:Do,normalizeProjectionField:ce,parseAssigneeFilter:To,parseFieldSelectors:Eo,parseIdsFilter:So,parseOffset:Nn,parseProjectionConfig:xo,resolveListUpdatedAfter:vo,resolveListPageLimit:Po,parseSortField:Co,parseSortOrder:Io,orderItemsAsTree:Ao,projectListItems:Pn,readListFieldValue:$o,runtimeMetadataKeysForProjection:No,sortItems:Oo,trimNonEmpty:Re,withTreeMetadata:Ln};(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]="ab1153b1-2d91-58a5-9b4a-1d9c5f35a54a")}catch{}})();var Qd=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Jd=["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 Zd(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function Iy(e,t,n={}){let r=n.includePagination!==!1;return[t,...Qd.map(o=>e?.[o]),...r?[e?.limit,e?.offset]:[]].some(Zd)||Jd.some(o=>e?.[o]===!0)}function Bo(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]="56486369-9164-58d3-ac34-46d57859f96d")}catch{}})();var Ko=["parent","type","priority","status","assignee","tags","sprint","release"];function Go(e,t){let n=xe(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function qo(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",m.USAGE);let s=i??o;if(!t.includes(s))throw new p(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,m.USAGE);return{field:s,sum:i!==void 0,avg:o!==void 0}}function zo(e){let t=e?.trim()??"status";if(t.length===0)throw new p("--group-by requires at least one field name",m.USAGE);let n=Oi(t);if(n.length===0)throw new p("--group-by requires a comma-separated list of fields",m.USAGE);for(let r of n)if(!Ko.includes(r))throw new p(`Aggregate group fields must be one of ${Ko.join("|")}; received "${r}"`,m.USAGE);return n}function Wo(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 Vo(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 Wo(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function Yo(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 Xo(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var eu={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function Ho(e,t){return t==null||t===""?eu[e]:String(t)}function tu(e,t){return e.length===1?Ho(e[0],t[e[0]]):e.map(n=>`${n}=${Ho(n,t[n])}`).join(" | ")}function Qo(e,t,n){for(let r of n){let i=Yo(e.group[r],t.group[r]);if(i!==0)return i}return 0}function Jo(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let i=r.trim();if(i.length===0)return null;let o=Number(i);if(Number.isFinite(o))return o}return null}function Zo(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function jn(e,t,n){let r=D(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 nu(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 ru(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function iu(e){e.accumulator.row.count+=1,e.includeCompletion&&jn(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&ru(e.accumulator,e.numericValue)}function ou(e,t){let n={};for(let r of e)n[r]=Vo(r,t);return n}function su(e,t,n,r){let i={...e.row,group_label:tu(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=Zo(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 au(e){return{group_by:e.groupBy,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 My(e,t){if(e.count===!1)throw new p("Aggregate grouped counts are always enabled; omit count=false.",m.USAGE);let n=I(process.cwd(),t.path),r=await R(n),i=P(r.schema),o=["estimate","estimated_minutes","priority",...G(r.schema).definitions.filter(_=>_.type==="number").map(_=>_.metadata_key)],s=zo(e.groupBy),a=Go(e.status,i),d=qo(e,[...new Set(o)].sort((_,b)=>_.localeCompare(b))),c=e.completion===!0,l=e.includeUnparented===!0,u=await te(void 0,{...Bo(e),status:e.status},t),f=new Map,h=0,y=0;for(let _ of u.items){let b=_,v=ou(s,b);if(s.includes("parent")&&v.parent===null&&!l){h+=1;continue}let E=Xo(s,v),T=f.get(E),C=d===null?null:Jo(b,d.field);if(T)iu({accumulator:T,item:b,statusRegistry:i,includeCompletion:c,numericAggregation:d,numericValue:C});else{let x=nu(v,C);c&&jn(x,b.status,i),f.set(E,x)}y+=1}let g=[...f.values()].map(_=>su(_,s,c,d)).sort((_,b)=>Qo(_,b,s)),w=u.warnings&&u.warnings.length>0?u.warnings:void 0;return{groups:g,count:g.length,totals:{items_considered:u.items.length,items_grouped:y,items_skipped_unparented:h},filters:au({groupBy:s,includeCompletion:c,includeUnparented:l,status:a,options:e,numericAggregation:d}),now:M(),...w?{warnings:w}:{}}}var Dy={buildGroupKey:Xo,compareAggregateRows:Qo,compareNullableGroupValue:Yo,completionPct:Zo,normalizeTagGroupValue:Wo,parseGroupBy:zo,parseNumericAggregation:qo,parseStatus:Go,readNumericAggregateValue:Jo,resolveGroupValue:Vo,updateCompletionCounts:jn};import{encode as cu}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="47de55f1-589f-5743-bcb8-3b7a6302dfbb")}catch{}})();var Un=["agenda","day","week","month"],Bn=["markdown","toon","json"],du=["sun","mon","tue","wed","thu","fri","sat"],uu=365,lu=365,ns=28,fu=1e3;function Kn(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`,m.USAGE);return n}function mu(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",m.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",m.USAGE)}return r}function rs(e,t){let n;for(let r of t){let i=Dr(e,r,2);i!==null&&(n===void 0||i<n.distance)&&(n={choice:r,distance:i})}return n?.choice}function pu(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!Un.includes(t)){let n=rs(t,Un);throw new p(`Calendar view must be one of ${Un.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function hu(e){if(!e)return;let t=e.trim().toLowerCase();if(!Bn.includes(t)){let n=rs(t,Bn);throw new p(`Calendar format must be one of ${Bn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function Uy(e,t){let n=hu(e.format);if(t.json&&n&&n!=="json")throw new p("Cannot combine --json with --format markdown|toon",m.USAGE);return t.json?"json":n??"markdown"}function gu(e,t){if(e===void 0)return;let n=D(e,t);if(!n){let r=t.definitions.map(i=>i.id);throw new p(`Calendar status filter must be one of ${r.join("|")}`,m.USAGE)}return n}function yu(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",m.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new p(`Invalid calendar assignee filter "${e}". Allowed: assigned|unassigned`,m.USAGE);return t}function Lt(e){return new Date(e).toISOString().slice(0,10)}function is(e,t){if(!t||t==="UTC")return Lt(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 Lt(e)}function zn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function ne(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function os(e){let t=new Date(zn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return ne(t.toISOString(),r)}function _u(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function wu(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function bu(e,t){return S(e,t)>=0?e:t}function es(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function ts(e,t){e.set(t,(e.get(t)??0)+1)}function vu(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)=>we(r)-we(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 ss(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 as(e){return du[new Date(e).getUTCDay()]}function ku(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function Su(e){let t=new Set;for(let n of e??[]){let r=ku(n);r&&t.add(r)}return t}function Eu(e,t,n,r,i){let o=e??ne(n,-(r??lu)),s=t??ne(e??n,i??uu);return{start:o,end:S(s,o)>0?s:ne(o,1)}}function xu(e,t,n,r){let i=t.by_weekday!==void 0?[...t.by_weekday]:[as(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??fu,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:Su(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)=>we(s)-we(a)),sortedMonthDays:[...new Set(o)].sort((s,a)=>s-a),occurrences:[],produced:0}}function Ot(e,t){return S(t,e.startAt)<0?"continue":e.until&&S(t,e.until)>0||S(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,S(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function $t(e,t){let n=as(t),r=new Date(t).getUTCDate(),i=!e.weekdayFilter||e.weekdayFilter.has(n),o=!e.monthDayFilter||e.monthDayFilter.has(r);return i&&o}function Cu(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!($t(e,t)&&Ot(e,t)==="stop");n+=1)t=ne(t,e.interval);return e.occurrences}function Iu(e,t,n){let r=we(n),i=ne(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 Tu(e){let t=os(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=ne(t,n*e.interval*7);for(let i of e.sortedWeekdays){let o=Iu(e,r,i);if($t(e,o)&&Ot(e,o)==="stop")return e.occurrences}}return e.occurrences}function Fu(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=ss(i.getUTCFullYear(),i.getUTCMonth(),o,e.startDate);if(!(!s||!$t(e,s))&&Ot(e,s)==="stop")return e.occurrences}}return e.occurrences}function Ru(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=ss(i,n,o,e.startDate);if(!(!s||!$t(e,s))&&Ot(e,s)==="stop")return e.occurrences}}return e.occurrences}function Au(e,t,n,r){let i=xu(e,t,n,r);return t.freq==="daily"?Cu(i):t.freq==="weekly"?Tu(i):t.freq==="monthly"?Fu(i):Ru(i)}function cs(e){return[...e].sort((t,n)=>{let r=S(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 Wn(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 Mu(e){return e.deadline?{at:e.deadline,date:Lt(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,...Wn(e),item_deadline:e.deadline}:null}function Du(e){return(e.reminders??[]).map(t=>({at:t.at,date:Lt(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,...Wn(e)}))}function Lu(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function Ou(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function $u(e,t,n,r){let i=vu(t.recurrence),o=Lu(t.start_at,t.end_at);return(t.recurrence?Au(t.start_at,t.recurrence,n,r):[t.start_at]).map(a=>({at:a,date:t.all_day===!0?a.slice(0,10):is(a,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:Ou(a,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,...Wn(e)}))}function Nu(e,t,n,r){let i=[];for(let o of e){let s=n.has("deadlines")?Mu(o):null;s&&i.push(s),n.has("reminders")&&i.push(...Du(o));for(let a of n.has("events")?o.events??[]:[])i.push(...$u(o,a,t,r))}return cs(i)}function Pu(e,t,n,r,i){let o=Yi(t.type,n),s=t.tag?.trim().toLowerCase(),a=kt(t.priority),d=gu(t.status,r),c=t.assignee?.trim(),l=yu(t.assigneeFilter),u=t.sprint?.trim(),f=t.release?.trim();if(c&&(c.toLowerCase()==="none"||c.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',m.USAGE);if(c!==void 0&&l==="unassigned")throw new p("Cannot combine --assignee with --assignee-filter unassigned",m.USAGE);return e.filter(h=>ju(h,{typeFilter:o,tagFilter:s,priorityFilter:a,statusFilter:d,assigneeFilter:c,assigneeModeFilter:l,sprintFilter:u,releaseFilter:f,runtimeFieldFilters:i}))}function ju(e,t){return Uu(e,t)&&Bu(e,t)&&Ie(e,t.runtimeFieldFilters)}function Uu(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 Bu(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 Ku(e,t,n){return!(t&&S(e.at,t)<0||n&&S(e.at,n)>=0)}function Hn(e,t,n){return e.trim().toLowerCase()==="today"?zn(t):B(e,new Date(t),n)}function Hu(e,t,n){let r=t.date?Hn(t.date,n,"--date"):n,i=t.past===!0,o=t.fullPeriod===!0,s=t.from?Hn(t.from,n,"--from"):void 0,a=t.to?Hn(t.to,n,"--to"):void 0;if(s&&a&&S(s,a)>=0)throw new p("Calendar --from must be before --to",m.USAGE);if(e!=="agenda"&&(t.from!==void 0||t.to!==void 0))throw new p("--from and --to are only supported for --view agenda",m.USAGE);if(e==="agenda")return Gu(r,t,n,i,o,s,a);if(e==="day"){let c=zn(r);return Gn(r,n,i,o,c,ne(c,1))}if(e==="week"){let c=os(r);return Gn(r,n,i,o,c,ne(c,7))}let d=_u(r);return Gn(r,n,i,o,d,wu(r))}function Gu(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.",m.USAGE);return{anchor:e,start:o??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function Gn(e,t,n,r,i,o){let s=n||r;return{anchor:e,start:s?i:bu(i,t),end:o,periodStart:i,periodEnd:o,fullPeriod:s}}function qu(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:cs(r)}))}function zu(e){let t=new Set,n=new Map,r=new Map,i=0,o=0,s=0,a=0;for(let d of e)t.add(d.item_id),ts(n,d.item_type),ts(r,d.item_status),d.kind==="deadline"?i+=1:d.kind==="reminder"?o+=1:(s+=1,d.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:es(n),by_status:es(r),recurring_events:a}}function Wu(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function ds(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 qn(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function Vu(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===is(e.event_end,e.event_timezone)?ds(e.event_end,e.event_timezone):e.event_end:null}function Yu(e){let t=`${ds(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 o=Vu(e);return o&&n.push(`end=${o}`),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 By(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${Wu(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(`- by-kind: ${qn(e.summary.by_kind)}`),t.push(`- by-type: ${qn(e.summary.by_type)}`),t.push(`- by-status: ${qn(e.summary.by_status)}`),t.push(`- recurring-events: ${e.summary.recurring_events}`),t.push(""),e.events.length===0)return t.push("No calendar events matched the selected filters."),t.join(`
1
+ import{a as cn,b as dn,d as un,e as ln,f as fn,g as mn,h as pn}from"./chunk-OFVUGTLJ.js";import{C as Ti,D as xe,Da as $i,F as fe,G as Ce,H as Ie,Ha as ji,I as Fi,L as Ri,M as yt,N as Ai,O as _n,P as wn,Q as bn,R as Mi,V as Di,W as vn,da as Li,f as xi,g as Ci,h as yn,i as Ii,ma as Te,va as Oi}from"./chunk-ZHVA42R5.js";import{Ma as Gr,Ua as qr,t as Hr}from"./chunk-OGLQBL46.js";import{b as Ni,e as kn,f as vt,g as Pi}from"./chunk-AUFH5H35.js";import{A as Xr,Ab as gt,B as Qr,Bb as ae,C as Jr,Cb as Si,D as Zr,Da as Se,E as ei,Eb as Ei,Fa as oi,Ha as si,I as Pe,Ia as ai,Ka as je,Ma as se,Mb as _t,Na as gn,Nb as wt,Oa as ci,Qa as di,Qb as bt,R as ti,Ra as ui,Ta as Ue,Wa as li,Xa as pt,Y as Z,Ya as fi,Z as M,Za as mi,aa as S,ba as ft,ca as B,da as mt,db as pi,fb as R,hb as hi,ib as gi,kb as yi,l as F,lb as ht,nb as _i,o as hn,oa as D,pa as O,q as Ne,qa as K,r as Vr,rb as wi,sb as bi,ta as ni,tb as Ee,u as Yr,ua as ri,ub as vi,va as ii,vb as ki,wa as H,xb as N,yb as q,zb as z}from"./chunk-IFLWKY2R.js";import{$ as jr,Fa as Kr,G as L,H as dt,M as I,O as Pr,Q as Le,S as le,Sa as P,Ua as G,V as Oe,W as $,a as Dr,aa as Ur,h as $r,q as De,r as at,s as Nr,t as ct,u as J,x as an}from"./chunk-FQCSTBWE.js";import{b as ke,c as Wr,e as lt}from"./chunk-FZS4H32O.js";import{$a as $e,E as we,J as sn,K as st,S as Lr,W as Or,Y as m,Z as p,Za as be,_a as ve,aa as Br,db as ut,eb as zr}from"./chunk-UYRFYCDQ.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]="c14a67b4-102d-5219-b2b3-15d39da36627")}catch{}})();var oc=["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"],Sn=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 vh(e={}){return{excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0}}function ee(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function A(e,t,n,r){t&&e.push({code:n,message:r})}function sc(e,t){let n=ee(e.completeness)?e.completeness:{};A(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),A(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;A(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."),A(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=ee(e.filters)?e.filters:{},s=ee(o.runtime_filters)?o.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return A(t,o.status!=="all"||Object.keys(s).length>0||Object.keys(o).some(d=>!a.has(d)),"filtered_corpus","The list did not explicitly select every lifecycle status."),A(t,o.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),A(t,o.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),o}function ac(e,t,n){A(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."),A(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=ee(e.projection)?e.projection:{};A(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let i=ee(e.omission_receipt)?e.omission_receipt:void 0;A(n,i===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),A(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."),A(n,i?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function cc(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 dc(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 uc(e,t){let n=ee(e.read_output)?e.read_output:void 0;A(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),A(t,n!==void 0&&cc(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),A(t,n!==void 0&&!dc(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),A(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=ee(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;A(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),A(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function lc(e,t){let n=e.map(r=>ee(r)&&typeof r.id=="string"?r.id.trim():"");A(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),A(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function fc(e){if(!ee(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:oc[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=sc(t,n);return ac(t,r,n),uc(t,n),lc(t.items,n),{ok:n.length===0,findings:n}}function mc(e){let t=fc(e);if(!t.ok)throw new Sn(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 kh(e){mc(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]="47c087c2-124a-58b7-a5c9-09403235f4a2")}catch{}})();function pc(e,t){let n=-1;return e.forEach((r,i)=>{let o=Date.parse(r.ts);if(!Number.isFinite(o))throw new p(`History for this item contains invalid timestamp at entry ${i+1}.`,m.GENERIC_FAILURE);o<=t&&(n=i)}),n}function hc(e){let t=e[0]?.ts??null,n=e.at(-1)?.ts??null,r={code:"history_target_out_of_range",required:"Choose a target within the available item history.",why:"Point-in-time reads and restores can only reconstruct recorded versions.",examples:[],nextSteps:["Run pm history <id> to inspect available versions and timestamps."],valid_range:{first_version:null,last_version:null,first_timestamp:t,last_timestamp:n}};return n!==null&&(r.examples=["1",String(e.length),n],r.valid_range.first_version=1,r.valid_range.last_version=e.length),{guidance:r,lastTimestamp:n}}function Ui(e,t){let n={};if(t instanceof Error&&t.message.trim().length>0&&(n.reason=t.message.trim()),typeof t!="object"||t===null)return n;let r=t;if(typeof r.index=="number"&&Number.isInteger(r.index)&&r.index>=0&&(n.patchIndex=r.index),typeof r.operation=="object"&&r.operation!==null){let i=r.operation;Object.assign(n,Object.fromEntries(["op","path","from"].flatMap(o=>{let s=i[o];return typeof s=="string"?[[o,s]]:[]})))}if(n.patchIndex!==void 0){let i=e[n.patchIndex];i&&(n.op??=i.op,n.path??=i.path,n.from??=i.from)}return n}function Bi(e,t,n={}){let r=e.trim(),i=n.errorSubject??"history",o=i==="restore"?"Restore":"History",{guidance:s,lastTimestamp:a}=hc(t);if(!r)throw new p(`Missing ${i} target. Use a timestamp or version number.`,m.USAGE,s);if(/^\d+$/.test(r)){let l=Number(r);if(!Number.isSafeInteger(l)||l<1||l>t.length)throw new p(`${o} version must be between 1 and ${t.length} for this item.`,m.USAGE,s);return{kind:"version",raw:r,historyIndex:l-1}}let d=Date.parse(r);if(!Number.isFinite(d))throw new p(`Invalid ${i} target "${e}". Use a positive version number or ISO timestamp.`,m.USAGE,s);let c=pc(t,d);if(c<0||n.allowFutureTimestamp!==!0&&d>Date.parse(a))throw new p(i==="restore"?`No history entries exist at or before timestamp ${r}.`:`No history entry exists at timestamp ${r}.`,m.USAGE,s);return{kind:"timestamp",raw:r,historyIndex:c}}function Be(e,t,n,r){let i=ui(e,t);if(i.ok)return i.document;let o=Ui(t,i.error),s=[`history_op=${r}`,o.patchIndex===void 0?null:`patch_index=${o.patchIndex}`,o.op?`op=${o.op}`:null,o.path?`path=${o.path}`:null,o.from?`from=${o.from}`:null].filter(a=>a!==null);throw new p(`Failed to apply history patch at entry ${n} (${s.join(", ")}). ${o.reason??String(i.error)}`,m.GENERIC_FAILURE)}function Ki(e,t){let n=structuredClone(je);for(let r=0;r<=t;r+=1){let i=e[r];if(!i)throw new p(`History target entry ${r+1} does not exist.`,m.USAGE);if(se(n)!==i.before_hash)throw new p(`History hash mismatch before replay at entry ${r+1}.`,m.GENERIC_FAILURE);if(n=Be(n,i.patch,r+1,i.op),se(n)!==i.after_hash)throw new p(`History hash mismatch after replay at entry ${r+1}.`,m.GENERIC_FAILURE)}return n}function Hi(e,t){if(Object.keys(e.metadata).length>0)return e;throw new p(`History target ${t.raw} resolves to a deleted state; choose a version or timestamp where the item exists.`,m.USAGE)}import En from"node:fs/promises";import gc 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]="a2ec9f1a-aae2-59d5-8c9a-7acd8bf5a7a2")}catch{}})();function yc(e){if(!e.itemDocument)return[];let t=e.itemDocument.metadata?.assignee?.trim();if(!t||t===e.author||e.force)return[];let n=pi(e.settings);if(n.ownership_enforcement==="strict")throw new p(`Item ${e.subjectId} is assigned to ${t}. Use --force to override.`,m.CONFLICT);return n.ownership_enforcement==="warn"?[`ownership_warning:assignee_conflict:${e.subjectId}:${t}`]:[]}async function _c(e){let t=await ct(e.subject.historyPath);if(t!==e.historyRawBeforeLock)throw new p(`History for ${e.subject.id} changed while waiting for lock; retry ${e.operation}.`,m.CONFLICT);let n=await q(e.pmRoot,e.subject.id,e.settings.id_prefix,e.settings.item_format,e.typeRegistry.type_to_folder),r=n?await z(n,{schema:e.settings.schema}):null;if((r?.raw??null)!==(e.currentItemRawBeforeLock??null))throw new p(`Item ${e.subject.id} changed while waiting for lock; retry ${e.operation}.`,m.CONFLICT);return{historyRawUnderLock:t,locatedUnderLock:n,loadedItemUnderLock:r}}async function $h(e){let t=e.writeHistoryRaw??J;try{await t(e.historyPath,e.nextHistoryRaw),await Se(e.historyPath)}catch(n){try{e.historyRawUnderLock===null?await gc.rm(e.historyPath,{force:!0}):await t(e.historyPath,e.historyRawUnderLock),await Se(e.historyPath)}catch(r){throw new AggregateError([n,r],`History rewrite failed and rollback also failed: ${String(n)}`)}throw n}}async function Gi(e){let t=[...yc({itemDocument:e.itemDocument,subjectId:e.subject.id,author:e.author,force:e.force,settings:e.settings})],n=await mt(e.pmRoot,e.subject.id,e.settings.locks.ttl_seconds,e.author,!!e.force,e.settings.governance.force_required_for_stale_lock,e.settings.locks.wait_ms);try{let r=await _c({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItemRawBeforeLock,operation:e.operation});return await e.applyRewrite(r),e.applyPostRewrite&&t.push(...await e.applyPostRewrite(r)),t}finally{await 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]="05b945f2-4f96-5f88-98ff-84cc856d0d57")}catch{}})();function qi(e){return Array.isArray(e)?e:typeof e=="string"?[e]:[]}function wc(e){let t=[];for(let n of e)t.includes(n)||t.push(n);return t.includes("g")||t.push("g"),t.join("")}function bc(e){let t=e.trim();if(t.length===0)throw new p("history-redact --regex requires a non-empty pattern.",m.USAGE);let n=t,r="g";if(t.startsWith("/")&&t.length>1){let i=t.lastIndexOf("/");i>0&&(n=t.slice(1,i),r=wc(t.slice(i+1)))}if(n.length===0)throw new p("history-redact --regex cannot use an empty pattern.",m.USAGE);try{new RegExp(n,r)}catch{throw new p("Invalid --regex value; provide a valid JavaScript regular expression.",m.USAGE)}return{kind:"regex",source:n,flags:r}}function vc(e,t){let n=[...new Set(qi(e).map(o=>o.trim()))].filter(o=>o.length>0).map(o=>({kind:"literal",value:o})),r=[...new Set(qi(t).map(o=>o.trim()))].filter(o=>o.length>0).map(bc),i=[...n,...r];if(i.length===0)throw new p("history-redact requires at least one matcher via --literal or --regex.",m.USAGE,{code:"missing_required_argument",required:"Provide --literal <value> and/or --regex <pattern>.",examples:['pm history-redact pm-a1b2 --literal "[redacted_path_prefix]/private"','pm history-redact pm-a1b2 --regex "/192\\\\.168\\\\.[0-9.]+/g" --replacement "[scrubbed_ip]"']});return i}function kc(e,t,n){if(t.length===0)return{value:e,replacements:0};let r=0,i=0;for(;r<=e.length;){let o=e.indexOf(t,r);if(o===-1)break;i+=1,r=o+Math.max(1,t.length)}return i===0?{value:e,replacements:0}:{value:e.split(t).join(n),replacements:i}}function Sc(e,t,n){let r=new RegExp(t.source,t.flags),i=[...e.matchAll(r)];return i.length===0?{value:e,replacements:0}:{value:e.replace(r,n),replacements:i.length}}function zi(e,t,n){let r=e,i=0;for(let o of t){let s=o.kind==="literal"?kc(r,o.value,n):Sc(r,o,n);r=s.value,i+=s.replacements}return{value:r,replacements:i}}function xn(e,t,n){if(typeof e=="string")return zi(e,t,n);if(Array.isArray(e)){let r=0;return{value:e.map(o=>{let s=xn(o,t,n);return r+=s.replacements,s.value}),replacements:r}}if(typeof e=="object"&&e!==null){let r=0,i={};for(let[o,s]of Object.entries(e)){let a=xn(s,t,n);r+=a.replacements,i[o]=a.value}return{value:i,replacements:r}}return{value:e,replacements:0}}function Ec(e){let t=structuredClone(je),n=0,r=0;for(let i=0;i<e.length;i+=1){let o=e[i];se(t)!==o.before_hash&&(n+=1),t=Be(t,o.patch,i+1,o.op),se(t)!==o.after_hash&&(r+=1)}return{hashMismatchesBefore:n,hashMismatchesAfter:r,finalDocument:t}}function xc(e,t,n){let r=0,i=!1,o=e.message;if(typeof e.message=="string"){let a=zi(e.message,t,n);o=a.value,r+=a.replacements,a.replacements>0&&(i=!0)}let s=e.patch.map(a=>{if(!Object.prototype.hasOwnProperty.call(a,"value"))return a;let d=xn(a.value,t,n);return r+=d.replacements,d.replacements>0?(i=!0,{...a,value:d.value}):a});return{entry:{...e,message:o,patch:s},replacements:r,changed:i}}function Cc(e,t,n){let r=structuredClone(je),i=0,o=0,s=[];for(let a=0;a<e.length;a+=1){let d=xc(e[a],t,n);o+=d.replacements,d.changed&&(i+=1);let c=se(r);r=Be(r,d.entry.patch,a+1,d.entry.op);let l=se(r);s.push({...d.entry,before_hash:c,after_hash:l})}return{entries:s,finalDocument:r,entriesChanged:i,replacements:o}}function Ic(e){return Object.keys(e.metadata).length>0}async function Tc(e,t){let n=e.located?.itemPath??null;if(!e.located)return{raw:null,path:n,document:null};let r=await z(e.located,{schema:t.schema});return{raw:r.raw,path:n,document:r.document}}function Fc(e){if(!Ic(e.finalDocument))return{raw:null,path:null,document:null};let t=ii(gn(e.finalDocument),{schema:e.settings.schema});if(t.metadata.id!==e.subject.id)throw new p("history-redact would change the item id; narrow your patterns.",m.USAGE);return{document:t,path:Le(e.pmRoot,t.metadata.type,e.subject.id,"toon",e.typeToFolder),raw:ri(t,{format:"toon",schema:e.settings.schema})}}function Rc(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:`history-redact replaced ${t.replacements} match(es) across ${t.entriesChanged} entr${t.entriesChanged===1?"y":"ies"}.`}function Ac(e){let t=[...e.rewritten.entries];if(e.dryRun||!e.changed)return{rewrittenEntries:t,auditEntryAdded:!1};let n=e.nextItemDocument??gn(e.rewritten.finalDocument);return t.push(ai({nowIso:M(),author:e.author,op:"history_redact",before:n,after:n,message:e.message})),{rewrittenEntries:t,auditEntryAdded:!0}}async function Mc(e){let t=[];return Gi({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItem.raw,operation:"history-redact",author:e.author,force:e.force,itemDocument:e.currentItem.document,applyRewrite:async({historyRawUnderLock:n})=>{let r=await bi(e.pmRoot,e.author),i=new Set;e.currentItem.path&&i.add(e.currentItem.path),e.nextItem.path&&i.add(e.nextItem.path);let o=new Map;e.currentItem.path&&e.currentItem.raw!==null&&o.set(e.currentItem.path,e.currentItem.raw);let s=()=>{};try{try{e.nextItem.path&&e.nextItem.raw!==null&&e.nextItem.raw!==e.currentItem.raw&&await J(e.nextItem.path,e.nextItem.raw),e.currentItem.path&&(!e.nextItem.path||e.nextItem.path!==e.currentItem.path)&&await En.rm(e.currentItem.path,{force:!0}),await J(e.subject.historyPath,li(e.rewrittenEntries))}catch(d){try{await Dc(e.subject.historyPath,n,i,o)}finally{await Se(e.subject.historyPath)}throw d}await Se(e.subject.historyPath);let a=e.nextItem.path??e.currentItem.path;a&&(t=await vi({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:e.typeRegistry.type_to_folder,schema:e.settings.schema,itemPath:a,...e.currentItem.path?{previousItemPath:e.currentItem.path}:{},document:e.nextItem.document}))}finally{await r().catch(a=>{s=()=>{throw a}})}s()},applyPostRewrite:async()=>[...t,...await Lc(e.subject.historyPath,[e.nextItem.path,e.currentItem.path])]})}async function Dc(e,t,n,r){t===null?await En.rm(e,{force:!0}):await J(e,t);for(let i of n){let o=r.get(i);o===void 0?await En.rm(i,{force:!0}):await J(i,o)}}async function Lc(e,t){let n=[],r=new Set(t.filter(i=>i!==null));for(let i of r)n.push(...await hn({path:i,scope:"project",op:"history_redact"}));return n.push(...await hn({path:e,scope:"project",op:"history_redact:history"})),n}async function Cn(e,t,n,r){let i=await q(e,t,n.id_prefix,n.item_format,r);if(i)return{id:i.id,historyPath:le(e,i.id),located:i};let o=ht(t,n.id_prefix),s=yi(t),a=o===s?[o]:[o,s];for(let d of a){let c=le(e,d);if(await De(c))return{id:d,historyPath:c,located:null}}throw new p(`Item ${t} not found`,m.NOT_FOUND)}async function og(e,t,n){let r=I(process.cwd(),n.path);await N(r);let i=await R(r),o=L(i,F()),s=t.replacement??"",a=s.length===0,d=a?"[redacted]":s,c=vc(t.literal,t.regex),l=await Cn(r,e,i,o.type_to_folder);if(!await De(l.historyPath))throw new p(`No history stream exists for ${l.id}.`,m.NOT_FOUND);let u=await ct(l.historyPath),f=await H(l.historyPath,l.id);if(f.length===0)throw new p(`No history entries exist for ${l.id}; nothing to redact.`,m.USAGE);let h=Ec(f),y=Cc(f,c,d),g=h.hashMismatchesBefore+h.hashMismatchesAfter,w=!!t.dryRun,_=y.replacements>0,b=[];g>0&&b.push(`history_redact_preexisting_hash_mismatches:${g}`),_||b.push("history_redact_no_matches");let v=await Tc(l,i),E=Fc({pmRoot:r,subject:l,settings:i,typeToFolder:o.type_to_folder,finalDocument:y.finalDocument}),T=(v.path??null)!==(E.path??null)||(v.raw??null)!==(E.raw??null),C=Z(t.author,i.author_default),x=Rc(t,y),{rewrittenEntries:de,auditEntryAdded:ge}=Ac({rewritten:y,dryRun:w,changed:_,nextItemDocument:E.document,author:C,message:x}),ie=Ue(de);if(!ie.ok)throw new p(`history-redact produced an invalid rewritten chain (${ie.errors.join(", ")}).`,m.GENERIC_FAILURE);return!w&&_&&b.push(...await Mc({pmRoot:r,subject:l,settings:i,typeRegistry:o,historyRawBeforeLock:u,currentItem:v,nextItem:E,author:C,force:t.force,rewrittenEntries:de})),{id:l.id,dry_run:w,changed:_,patterns:{literal_count:c.filter(U=>U.kind==="literal").length,regex_count:c.filter(U=>U.kind==="regex").length,total_count:c.length,replacement_is_default:a},history:{path:l.historyPath,entries_scanned:f.length,entries_changed:y.entriesChanged,replacements:y.replacements,hash_mismatches_before:h.hashMismatchesBefore,hash_mismatches_after:h.hashMismatchesAfter,preexisting_hash_mismatches:g,audit_entry_added:ge,verify_ok:ie.ok,verify_errors:ie.errors},item:{existed_before:v.path!==null,exists_after:E.path!==null,path_before:v.path,path_after:E.path,changed:T},warnings:[...new Set(b)].sort((U,oe)=>U.localeCompare(oe)),generated_at:M()}}(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]="aca866d3-32b9-5212-bb4b-f1484e41bb27")}catch{}})();function Wi(e,t){let n=Ue(e),r=e.length>0?e[e.length-1].after_hash:si(),i=t===void 0?void 0:oi(t),o=i===void 0?void 0:i===r,s=[...n.errors];return o===!1&&s.push("verify_failed:current_item_hash_mismatch"),{ok:s.length===0,entries:e.length,errors:s,latest_after_hash:e.length>0?e[e.length-1].after_hash:void 0,current_item_hash:i,current_matches_latest:o}}async function Vi(e,t,n={}){let r=I(n.cwd??process.cwd(),n.pmRoot);await N(r);let i=await R(r),o=L(i,F()),s=await Cn(r,e,i,o.type_to_folder),a=await H(s.historyPath,s.id);if(a.length===0)throw new p(`No history exists for ${s.id}; point-in-time reads are unavailable.`,m.NOT_FOUND);let d=Bi(t,a),c=Hi(Ki(a,d.historyIndex),d),l=ci(c,{schema:i.schema});if(l.metadata.id!==s.id)throw new p(`History target resolved to item ${l.metadata.id}, expected ${s.id}.`,m.GENERIC_FAILURE);let u=a[d.historyIndex];return{document:l,reconstructed:!0,as_of_version:d.historyIndex+1,as_of_timestamp:u.ts,target:d,history_length:a.length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="eb044a23-d43b-5e9c-9ae7-4ac91b5e587a")}catch{}})();function j(e,t="--limit"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0)throw new p(`${t} must be a non-negative integer`,m.USAGE);return r}function kt(e,t="--priority"){if(e===void 0)return;let n=String(e).trim(),r=n.length===0?Number.NaN:Number(n);if(!Number.isInteger(r)||r<0||r>4)throw new p(`${t} filter must be 0..4`,m.USAGE);return r}function Yi(e,t,n="--type"){if(e===void 0)return;let r=dt(e,t);if(!r)throw new p(`${n} filter must be one of ${t.types.join("|")}`,m.USAGE);return r}import $c from"node:fs/promises";import Zi 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]="8b010e79-a73a-5760-ac05-8dc88484cd69")}catch{}})();var In={version:1,aliases:{}};function St(e=[]){let t=new Set(Pe),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 Xi(e){if(e===void 0)return;let n=(typeof e=="string"?[e]:e).flatMap(r=>r.split(",")).map(r=>r.trim()).filter(r=>r.length>0);return n.length===0?void 0:new Set(n)}function Tn(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 Oc(e,t=Pe){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()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let a=o.slice(0,s).trim().toLowerCase(),d=o.slice(s+1).trim();if(!n.has(a))throw new p(`Unknown provenance dimension "${a||o.trim()}". Declared dimensions: ${[...n].sort().join(", ")}.`,m.USAGE,{code:"unknown_provenance_dimension"});if(d.length===0)throw new p(`Provenance predicate must use dimension=value; received "${o.trim()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let c=r.get(a)??new Set;c.add(d),r.set(a,c)}return r}function Et(e,t=In,n={}){let r=Tn(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 xt(e,t=In,n=Pe){let r=Xi(e.harness),i=Xi(e.agentInstance),o=Oc(e,n);return s=>{let d=Tn(s,t).agent_harness;if(r&&(!d||!r.has(d))||i&&!i.has(s.agent_instance??""))return!1;for(let[c,l]of o){let u=s.agent_provenance?.[c];if(!u||!l.has(u.value))return!1}return!0}}function Ct(e,t=In,n=Pe){let r=new Set(n),i=new Map,o=0;for(let s of e){for(let d of Object.keys(s.agent_provenance??{}))r.add(d);Tn(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,d=0;for(let c of e){let l=c.agent_provenance?.[s];l===null?d+=1:l!==void 0&&(a+=1)}return{dimension:s,observed:a,unavailable:d,legacy_missing:e.length-a-d}})}}(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]="7005305a-5fd4-56b8-a0a0-5612e8bf48cc")}catch{}})();var Nc=20,Pc=5,jc=15,Uc="-24h";function Pg(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 Bc={digest:"activity_digest",compact:"compact_activity",provenance:"provenance_activity",full:"activity"};function Fn(e,t){if(e===void 0)return;let n=e.trim();if(n.length===0)throw new p(`${t} must not be empty`,m.USAGE);return n}function Qi(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",m.USAGE);let i=n==="--from"&&/^\d+[hdwm]$/iu.test(r)?`-${r}`:r;return B(i,new Date(t),n)}function Kc(e,t,n){return!(e.ts.length===0&&(t||n)||t&&S(e.ts,t)<0||n&&S(e.ts,n)>=0)}function Ji(e,t){return t===void 0?e:e.slice(0,t)}function Ke(e,t=""){return typeof e=="string"?e:t}function Hc(e,t){return{...t,id:e,ts:Ke(t.ts),author:Ke(t.author,"unknown"),op:Ke(t.op,"unknown"),patch:Array.isArray(t.patch)?t.patch:[],before_hash:Ke(t.before_hash),after_hash:Ke(t.after_hash)}}function Gc(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 qc(e){try{return(await $c.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort((t,n)=>t.localeCompare(n))}catch(t){if(Nr(t))return[];throw t}}function zc(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 Wc(e,t,n){if(e.unbounded!==!0)return t!==void 0?t:n==="digest"?jc:n==="compact"?Nc:Pc}function Vc(e,t){let n=M(),r=t==="digest",i=Qi(e.to??(r?n:void 0),n,"--to"),o=Qi(e.from??(r?Uc:void 0),e.from===void 0&&r?i:n,"--from");if(o&&i&&S(o,i)>=0)throw new p("Activity --from must be before --to",m.USAGE);let s=fe(e.limit);if(e.unbounded===!0&&s!==void 0)throw new p("Activity --unbounded cannot be combined with --limit",m.USAGE);return{id:Fn(e.id,"Activity --id"),op:Fn(e.op,"Activity --op"),author:Fn(e.author,"Activity --author"),from:o,to:i,limit:Wc(e,s,t),limitSource:e.unbounded===!0||s!==void 0?"explicit":"default",harness:e.harness,agentInstance:e.agentInstance,provenance:e.provenanceFilter}}async function Yc(e){let t=I(process.cwd(),e.path);return await N(t),{pmRoot:t,settings:await R(t)}}async function Xc(e){let t=L(e.settings,F()),n=await ae(e.pmRoot,e.settings.item_format,t.type_to_folder,void 0,e.settings.schema);await gi({pmRoot:e.pmRoot,settings:e.settings,itemIds:n.map(i=>i.id),commandLabel:"activity"});let r=Zi.join(e.pmRoot,"history");return await Ne({path:r,scope:"project"}),{historyDir:r,itemsById:new Map(n.map(i=>[i.id,{title:i.title,type:i.type,status:i.status}]))}}function Qc(e,t,n){return n.op&&e.op!==n.op||n.author&&e.author!==n.author?!1:Kc(t,n.from,n.to)}async function Jc(e,t){let n=[];for(let r of await qc(e)){let i=r.slice(0,-6);if(t.id&&i!==t.id)continue;let o=await H(Zi.join(e,r),i);for(let s of o){let a=Hc(i,s);Qc(s,a,t)&&n.push(a)}}return n}function Zc(e){return e.map(t=>({id:t.id,op:t.op,ts:t.ts,author:t.author,...t.message?{msg:t.message}:{}}))}function ed(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 td(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,S(r.ts,i.firstTs)<0&&(i.firstTs=r.ts),S(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:ed(i.operations)}}).sort((r,i)=>S(i.last_ts,r.last_ts)||r.id.localeCompare(i.id))}function nd(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 rd(e,t,n,r,i){if(e==="digest"){let s=td(t,r),a=Ji(s,n);return{rows:{activity_digest:a},compact:!1,totalRows:s.length,returnedRows:a.length}}let o=Ji(t,n);return e==="compact"?{rows:{compact_activity:Zc(o)},compact:!0,totalRows:t.length,returnedRows:o.length}:e==="provenance"?{rows:{provenance_activity:o.map(i)},compact:!1,totalRows:t.length,returnedRows:o.length}:{rows:{activity:o},compact:!1,totalRows:t.length,returnedRows:o.length}}async function eo(e,t){let n=await Yc(t),r=zc(e),i=Vc(e,r),o=await Xc(n),s=St(n.settings.agent_identity.harness_signals),a=n.settings.agent_identity.identity_vocabulary,d=xt({harness:i.harness,agentInstance:i.agentInstance,provenance:i.provenance},a,s),c=Gc(await Jc(o.historyDir,i)).filter(d),l=rd(r,c,i.limit,o.itemsById,f=>Et(f,a,{itemId:f.id})),u=l.totalRows-l.returnedRows;return{...l.rows,compact:l.compact,projection:{mode:r,row_key:Bc[r]},omission_receipt:lt("activity",r),count:l.returnedRows,total_count:l.totalRows,limit:i.limit??null,omitted_count:u,has_more:u>0,...r==="digest"?{activity_summary:{window:{from:i.from,to:i.to},event_count:c.length,item_count:l.totalRows,author_count:new Set(c.map(f=>f.author)).size,operation_counts:nd(c)}}:{},...e.provenanceSummary===!0?{provenance_summary:Ct(c,a,s)}:{},applied_bound:{kind:i.limit===void 0?"unbounded":"limit",source:i.limitSource,value:i.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]="1035bd62-b012-5249-bd53-31b39f21b2d3")}catch{}})();function Rn(e,t){if(e===void 0)return;let n=[],r="";for(let s=0;s<e.length;s+=1){let a=e[s];if(a==="\\"){let d=e[s+1];if(d===","||d==="\\"){r+=d,s+=1;continue}r+=a;continue}if(a===","){n.push(r),r="";continue}r+=a}n.push(r);let i=n.map(s=>s.trim());if(i.some(s=>s.length===0))throw new p(`${t.label} requires at least one non-empty value`,m.USAGE);let o=i.map(s=>t.normalize?.(s)??s);return[...new Set(o)]}function W(e,t){let n=Rn(e,t);return n===void 0?void 0:new Set(n)}function It(e,t,n="--type"){let r=Rn(e,{label:n});if(r===void 0)return;let i=r.map(o=>{let s=dt(o,t);if(!s)throw new p(`${n} filter token "${o}" must be one of ${t.types.join("|")}`,m.USAGE);return s});return new Set(i)}function Tt(e,t="--priority"){let n=Rn(e,{label:t});if(n!==void 0)return new Set(n.map(r=>kt(r,t)))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5b7b3eaf-a792-5f44-9981-8c82ce511070")}catch{}})();function to(e,t){let n=e.trim().toLowerCase();return t.alias_to_id.get(n)??n}function Ft(e){return{isTerminal(t){return e.terminal_statuses.has(to(t,e))},classify(t){let n=to(t,e);return e.terminal_canceled_statuses.has(n)?"canceled":e.terminal_statuses.has(n)?"closed":e.blocked_statuses.has(n)?"blocked":e.draft_statuses.has(n)?"draft":n===e.open_status?"open":e.active_statuses.has(n)?"in_progress":"other"}}}function An(e){return $(e.acceptance_criteria)===void 0}function Mn(e){return!Number.isFinite(e.estimated_minutes)}function oo(e,t){return t.isTerminal(e.status)?$(e.resolution)===void 0:!1}function id(e){return $(e.reviewer)===void 0}function od(e){return $(e.risk)===void 0}function sd(e){return typeof e.confidence=="number"?!Number.isFinite(e.confidence):$(e.confidence)===void 0}function ad(e){return $(e.sprint)===void 0}function cd(e){return $(e.release)===void 0}function He(e){return!!(e.acMissing||e.estimatesMissing||e.resolutionMissing||e.reviewerMissing||e.riskMissing||e.confidenceMissing||e.sprintMissing||e.releaseMissing||e.metadataMissing)}function dd(e,t,n){return[[t.acMissing,An(e)],[t.estimatesMissing,Mn(e)],[t.resolutionMissing,oo(e,n)],[t.reviewerMissing,id(e)],[t.riskMissing,od(e)],[t.confidenceMissing,sd(e)],[t.sprintMissing,ad(e)],[t.releaseMissing,cd(e)]].every(([i,o])=>i!==!0||o)}function ud(e,t){return An(e)||Mn(e)||oo(e,t)}function Rt(e,t,n){return He(t)?!(!dd(e,t,n)||t.metadataMissing&&!ud(e,n)):!0}var Dn=["acceptance_criteria","estimated_minutes","resolution","tags","parent"];function ld(e,t){switch(t){case"acceptance_criteria":return!An(e);case"estimated_minutes":return!Mn(e);case"resolution":return $(e.resolution)!==void 0;case"tags":return Array.isArray(e.tags)&&e.tags.length>0;default:return $(e.parent)!==void 0}}function fd(e,t,n){return t==="resolution"?n.isTerminal(e.status):!0}function md(e,t){return t===0?100:Math.round(e/t*1e3)/10}function no(){let e={};for(let t of Dn)e[t]={present:0,applicable:0,percent:100};return e}function ro(e,t,n){for(let r of Dn){if(!fd(t,r,n))continue;let i=e[r];i.applicable+=1,ld(t,r)&&(i.present+=1)}}function io(e){for(let t of Dn){let n=e[t];n.percent=md(n.present,n.applicable)}}function zg(e,t){let n=no(),r={};for(let i of e){ro(n,i,t);let o=r[i.type]??(r[i.type]=no());ro(o,i,t)}io(n);for(let i of Object.values(r))io(i);return{overall:n,by_type:r}}var pd={assignee:"(unassigned)",priority:"(no priority)",tag:"(untagged)",parent:"(unparented)",type:"(untyped)",status:"(no status)"};function hd(e){return pd[e]}function gd(){return{open:0,in_progress:0,blocked:0,draft:0,closed:0,canceled:0,other:0}}function yd(e,t,n){switch(t){case"assignee":return[$(e.assignee)??null];case"parent":return[$(e.parent)??null];case"type":return[$(e.type)??null];case"status":return[$(e.status)??null];case"priority":return[typeof e.priority=="number"?`P${e.priority}`:null];default:{let r=n.tagPrefix?.trim(),o=(Array.isArray(e.tags)?e.tags:[]).filter(s=>typeof s=="string"&&s.length>0&&(!r||s.startsWith(r)));return o.length>0?o:[null]}}}function Wg(e,t,n,r={}){let i=new Map,o=0;for(let a of e){o+=1;let d=n.classify(a.status);for(let c of yd(a,t,r)){let l=c??"\0empty",u=i.get(l);u||(u={label:c??hd(t),key:c,buckets:gd(),total:0},i.set(l,u)),u.buckets[d]+=1,u.total+=1}}let s=[...i.values()].sort((a,d)=>d.total!==a.total?d.total-a.total:a.key===null?1:d.key===null?-1:a.label.localeCompare(d.label));return{dimension:t,rows:s,total_items:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="03824e4b-562b-5e12-a89a-9dd091ae7fd3")}catch{}})();var Fe=["notes","learnings","files","docs","tests","comments","deps","body","linked_command"];function me(e){return Array.isArray(e)&&e.length>0}function _d(e){return typeof e=="string"&&e.trim().length>0}function wd(e){return Array.isArray(e)?e.some(t=>{if(typeof t!="object"||t===null)return!1;let n=t.command;return typeof n=="string"&&n.trim().length>0}):!1}function ao(e,t){switch(t){case"notes":return me(e.notes);case"learnings":return me(e.learnings);case"files":return me(e.files);case"docs":return me(e.docs);case"tests":return me(e.tests);case"comments":return me(e.comments);case"deps":return me(e.dependencies);case"body":return _d(e.body);case"linked_command":return wd(e.tests)}}function At(e){return Fe.some(t=>e[t]!==void 0)}function Mt(e,t){for(let n of Fe){let r=t[n];if(r===void 0)continue;let i=ao(e,n);if(r==="present"&&!i||r==="absent"&&i)return!1}return!0}function co(e){return Fe.some(t=>t!=="body"&&e[t]!==void 0)}function uo(e){return e.body!==void 0}function so(e,t){return t===0?100:Math.round(e/t*1e3)/10}function bd(){let e={};for(let t of Fe)e[t]={present:0,total:0,percent:100};return e}function Yg(e){let t=bd(),n=e.length;for(let s of e)for(let a of Fe)ao(s,a)&&(t[a].present+=1);for(let s of Fe)t[s].total=n,t[s].percent=so(t[s].present,n);let r=t.body,i=n-r.present,o={present:i,total:n,percent:so(i,n)};return{total_items:n,fields:t,body_populated:r,empty_body:o}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="93e8c187-e198-50fc-bf2c-7dae2ea42219")}catch{}})();var Dt=e=>({acMissing:e.filterAcMissing===!0,estimatesMissing:e.filterEstimatesMissing===!0,resolutionMissing:e.filterResolutionMissing===!0,metadataMissing:e.filterMetadataMissing===!0,reviewerMissing:e.filterReviewerMissing===!0,riskMissing:e.filterRiskMissing===!0,confidenceMissing:e.filterConfidenceMissing===!0,sprintMissing:e.filterSprintMissing===!0,releaseMissing:e.filterReleaseMissing===!0}),lo=[{field:"notes",presentKey:"hasNotes",absentKey:"noNotes",presentFlag:"--has-notes",absentFlag:"--no-notes"},{field:"learnings",presentKey:"hasLearnings",absentKey:"noLearnings",presentFlag:"--has-learnings",absentFlag:"--no-learnings"},{field:"files",presentKey:"hasFiles",absentKey:"noFiles",presentFlag:"--has-files",absentFlag:"--no-files"},{field:"docs",presentKey:"hasDocs",absentKey:"noDocs",presentFlag:"--has-docs",absentFlag:"--no-docs"},{field:"tests",presentKey:"hasTests",absentKey:"noTests",presentFlag:"--has-tests",absentFlag:"--no-tests"},{field:"comments",presentKey:"hasComments",absentKey:"noComments",presentFlag:"--has-comments",absentFlag:"--no-comments"},{field:"deps",presentKey:"hasDeps",absentKey:"noDeps",presentFlag:"--has-deps",absentFlag:"--no-deps"},{field:"body",presentKey:"hasBody",absentKey:"emptyBody",presentFlag:"--has-body",absentFlag:"--empty-body"},{field:"linked_command",presentKey:"hasLinkedCommand",absentKey:"noLinkedCommand",presentFlag:"--has-linked-command",absentFlag:"--no-linked-command"}],qe=e=>{let t=lo.find(n=>e[n.presentKey]===!0&&e[n.absentKey]===!0);if(t)throw new p(`Cannot combine ${t.presentFlag} with ${t.absentFlag} for the same field.`,m.USAGE);return Object.fromEntries(lo.flatMap(n=>e[n.presentKey]===!0?[[n.field,"present"]]:e[n.absentKey]===!0?[[n.field,"absent"]]:[]))},fo=["priority","deadline","updated_at","created_at","title","parent"],mo=["asc","desc"],yo=new Set(wi);function vd(e,t,n){let r=e.filter(s=>s.startsWith("item_list_item_read_failed:")).length,i=e.filter(s=>s.startsWith("item_list_directory_read_failed:")).length,o={status:t?"unchecked":r+i>0?"partial":"complete",unreadable_item_count:r,unreadable_directory_count:i};if(n&&o.status==="partial")throw new p(`List source is incomplete: ${r} item document(s) and ${i} item directory/directories could not be read.`,m.GENERIC_FAILURE,{code:"list_source_incomplete",why:"Strict list reads fail closed so agents and SDK consumers never treat an omitted item as a complete workspace.",nextSteps:["Run pm validate --check-storage-integrity to locate unreadable tracker artifacts.","Repair the reported files or align the installed decoder version, then retry."]});return o}function kd(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length>0}var Sd=[{key:"hasNotes",summaryKey:"has_notes"},{key:"hasLearnings",summaryKey:"has_learnings"},{key:"hasFiles",summaryKey:"has_files"},{key:"hasDocs",summaryKey:"has_docs"},{key:"hasTests",summaryKey:"has_tests"},{key:"hasComments",summaryKey:"has_comments"},{key:"hasDeps",summaryKey:"has_deps"},{key:"hasBody",summaryKey:"has_body"},{key:"hasLinkedCommand",summaryKey:"has_linked_command"},{key:"noNotes",summaryKey:"no_notes"},{key:"noLearnings",summaryKey:"no_learnings"},{key:"noFiles",summaryKey:"no_files"},{key:"noDocs",summaryKey:"no_docs"},{key:"noTests",summaryKey:"no_tests"},{key:"noComments",summaryKey:"no_comments"},{key:"noDeps",summaryKey:"no_deps"},{key:"emptyBody",summaryKey:"empty_body"},{key:"noLinkedCommand",summaryKey:"no_linked_command"}],Ed=[{key:"filterReviewerMissing",summaryKey:"filter_reviewer_missing"},{key:"filterRiskMissing",summaryKey:"filter_risk_missing"},{key:"filterConfidenceMissing",summaryKey:"filter_confidence_missing"},{key:"filterSprintMissing",summaryKey:"filter_sprint_missing"},{key:"filterReleaseMissing",summaryKey:"filter_release_missing"}];function _o(e,t){for(let n of Sd)t[n.key]===!0&&(e[n.summaryKey]=!0)}function wo(e,t){for(let n of Ed)t[n.key]===!0&&(e[n.summaryKey]=!0)}function On(e,t,n){for(let r of n){let i=t[r.optionKey];i!==void 0&&(e[r.summaryKey]=r.normalize?r.normalize(i):i)}}function ze(e){let t={};return _o(t,e),t}function We(e){let t={};return wo(t,e),t}var xd=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"}],Cd=[{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"ids",summaryKey:"ids"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"assigneeFilter",summaryKey:"assignee_filter"},{optionKey:"parent",summaryKey:"parent"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"limit",summaryKey:"limit"},{optionKey:"offset",summaryKey:"offset"},{optionKey:"includeBody",summaryKey:"include_body"},{optionKey:"compact",summaryKey:"compact"},{optionKey:"fields",summaryKey:"fields"}],Id=[{key:"filterAcMissing",summaryKey:"filter_ac_missing"},{key:"filterEstimatesMissing",summaryKey:"filter_estimates_missing"},{key:"filterResolutionMissing",summaryKey:"filter_resolution_missing"},{key:"filterMetadataMissing",summaryKey:"filter_metadata_missing"}],Td="-7d";function bo(e){let{filtersStatus:t,options:n,treeEnabled:r,treeDepth:i,sortField:o,sortOrder:s,runtimeFieldFilters:a}=e,d={};return t!==null&&(d.status=t),n.dependencyBlocked===!0&&(d.blocked_semantics="status_or_dependency"),On(d,n,xd),ko(d,n),n.filterAcMissing===!0&&(d.filter_ac_missing=!0),n.filterEstimatesMissing===!0&&(d.filter_estimates_missing=!0),n.filterResolutionMissing===!0&&(d.filter_resolution_missing=!0),n.filterMetadataMissing===!0&&(d.filter_metadata_missing=!0),wo(d,n),_o(d,n),n.limit!==void 0&&(d.limit=n.limit),n.offset!==void 0&&(d.offset=n.offset),n.includeBody===!0&&(d.include_body=!0),n.fields!==void 0&&(d.fields=n.fields),r&&(d.tree=!0,i!==void 0&&(d.tree_depth=i)),o!==void 0&&(d.sort=o,d.order=s),kd(a)&&(d.runtime_filters=a),d}function $n(e,t,n){let r=K(e.status,n),i=K(t.status,n);if(r!==i)return r?1:-1;let o=e.priority-t.priority;if(o!==0)return o;let s=S(t.updated_at,e.updated_at);return s!==0?s:(e.id??"").localeCompare(t.id??"")}function Fd(e,t){return[...e].sort((n,r)=>$n(n,r,t))}function po(e,t){if(e!==void 0)return B(e,new Date,t)}function Ge(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return B(n,new Date,t)}function vo(e){let t=e.updatedAfter!=null&&String(e.updatedAfter).trim().length>0;if([e.today===!0,e.recent===!0,t].filter(r=>r).length>1)throw new p("Choose only one updated_at window: --today, --recent, or --updated-after.",m.USAGE);if(e.today===!0){let r=new Date;return r.setHours(0,0,0,0),r.toISOString()}return e.recent===!0?Ge(Td,"recent"):Ge(e.updatedAfter,"updated-after")}function ko(e,t){t.today===!0&&(e.today=!0),t.recent===!0&&(e.recent=!0)}function So(e){if(e==null)return;let t=String(e).trim();if(t.length===0)throw new p("--ids requires at least one non-empty item ID",m.USAGE);let n=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(n.length===0)throw new p("--ids requires at least one non-empty item ID",m.USAGE);return new Set(n)}function Nn(e){if(e===void 0)return;let t=String(e).trim(),n=t.length===0?Number.NaN:Number(t);if(!Number.isInteger(n)||n<0)throw new p("Offset filter must be a non-negative integer",m.USAGE);return n}function Eo(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("List --fields requires a comma-separated list of field names",m.USAGE);return[...new Set(t)]}function xo(e,t=e.projectionCommand??"list"){let n=e.compact===!0,r=e.brief===!0,i=e.full===!0,o=Eo(e.fields);if(Number(n)+Number(r)+Number(i)+ +(o!==void 0)>1)throw new p("List projection options are mutually exclusive. Use one of --compact, --brief, --full, or --fields.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:`pm ${t} --brief`,suggested_retry_args:[t,"--brief"]}});return i?{mode:"full",fields:[]}:r?{mode:"brief",fields:[...dn]}:n?{mode:"compact",fields:[...cn]}:o?{mode:"fields",fields:[...new Set(o.map(a=>ce(a)))]}:{mode:"full",fields:[]}}function ce(e){return e.startsWith("item.")?e.slice(5):e}function Rd(e,t,n){if(e.mode!=="fields")return;let r=un(t),i=new Set(r.map(s=>ce(s))),o=e.fields.filter(s=>!i.has(ce(s)));if(o.length>0)throw new p(`Unknown list --fields value(s): ${o.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm list-open --fields id,title,status,type,updated_at","pm list --fields id,title,parent,priority --limit 10","pm list-all --fields id,title,body --limit 5"],recovery:{allowed_values:r,suggested_retry:`pm ${n} --fields id,title,status --limit 10`,suggested_retry_args:[n,"--fields","id,title,status","--limit","10"]}})}var Ad=new Map([["updated","updated_at"],["update","updated_at"],["modified","updated_at"],["created","created_at"],["create","created_at"]]);function Co(e){if(e===void 0)return;let t=e.trim().toLowerCase(),n=Ad.get(t);if(n)return n;if(!fo.includes(t))throw new p(`Sort field must be one of ${fo.join("|")} (aliases: updated->updated_at, created->created_at)`,m.USAGE);return t}function Io(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!mo.includes(t))throw new p(`Sort order must be one of ${mo.join("|")}`,m.USAGE);return t}function Md(e){return j(e,"--tree-depth")}function To(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new p("Assignee filter must be one of assigned|unassigned",m.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new p(`Invalid assignee filter "${e}". Allowed: assigned|unassigned`,m.USAGE);return t}function ho(e,t){return xe(e,t,{strict:!0})}function Fo(e){return W(e,{label:"--tag",normalize:t=>t.toLowerCase()})}function Dd(e,t,n){let r=Fo(t);if(r===void 0)return;let i=new Set(e.flatMap(s=>s.tags.map(a=>a.trim().toLowerCase()))),o=[...r].filter(s=>!i.has(s));o.length>0&&n.push(`unknown_tags:${o.join(",")}`)}function Ld(e,t){if(e&&[...e].some(n=>n.toLowerCase()==="none"||n.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',m.USAGE);if(e!==void 0&&t==="unassigned")throw new p("Cannot combine --assignee with --assignee-filter unassigned",m.USAGE)}function Od(e,t,n,r){let i=W(t.assignee,{label:"--assignee"}),o=To(t.assigneeFilter);Ld(i,o);let s=Dt(t),a=qe(t);return{idsFilter:So(t.ids),statusSet:e&&e.length>0?new Set(e):void 0,excludeTerminal:t.excludeTerminal===!0,typeFilter:It(t.type,n),tagFilters:Fo(t.tag),priorityFilter:Tt(t.priority),deadlineBefore:po(t.deadlineBefore,"deadline-before"),deadlineAfter:po(t.deadlineAfter,"deadline-after"),updatedAfter:vo(t),updatedBefore:Ge(t.updatedBefore,"updated-before"),createdAfter:Ge(t.createdAfter,"created-after"),createdBefore:Ge(t.createdBefore,"created-before"),assigneeFilter:i,assigneeModeFilter:o,parentFilter:t.parent?.trim(),treeEnabled:t.tree===!0,sprintFilter:W(t.sprint,{label:"--sprint"}),releaseFilter:W(t.release,{label:"--release"}),missingMetadataFilters:s,missingMetadataActive:He(s),lifecycleClassifier:Ft(r),contentFieldFilters:a,contentFiltersActive:At(a)}}function $d(e,t,n){return t.idsFilter&&!t.idsFilter.has(e.id)||t.statusSet&&!t.statusSet.has(e.status)||t.excludeTerminal&&K(e.status,n)||t.typeFilter&&!t.typeFilter.has(e.type)||t.tagFilters&&![...t.tagFilters].some(r=>(e.tags??[]).some(i=>i.trim().toLowerCase()===r))?!1:t.priorityFilter===void 0||t.priorityFilter.has(e.priority)}function Nd(e,t){return ft(e,t)}function Pd(e,t){return t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee?!1:t.assigneeFilter===void 0||e.assignee!==void 0&&t.assigneeFilter.has(e.assignee)}function jd(e,t,n){let r=e.parent?.trim().toLowerCase(),i=[...new Set([...n?.get(e.id.trim().toLowerCase())??[],...r?[r]:[]])];return t.parentFilter!==void 0&&!t.treeEnabled&&!i.includes(t.parentFilter.trim().toLowerCase())||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))?!1:t.releaseFilter===void 0||e.release!==void 0&&t.releaseFilter.has(e.release)}function Ud(e,t,n,r,i){return!(!$d(e,t,n)||!Nd(e,t)||!Pd(e,t)||!jd(e,t,i)||t.missingMetadataActive&&!Rt(e,t.missingMetadataFilters,t.lifecycleClassifier)||t.contentFiltersActive&&!Mt(e,t.contentFieldFilters)||!Ie(e,r))}function Ro(e,t,n,r,i,o,s){let a=Od(t,n,r,i);return e.filter(d=>Ud(d,a,i,o,s))}function Re(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Ln(e,t,n,r){let i=e,o=typeof i.title=="string"?i.title:"",s=r??Re(typeof i.parent=="string"?i.parent:void 0)??null;return{...e,tree_depth:t,tree_parent:s,tree_children:n,tree_title:`${" ".repeat(t)}${o}`}}function Bd(e,t){let n=new Map,r=new Map;for(let i of e){let o=i.id.trim().toLowerCase();n.set(o,i);let s=t?t.parents_by_child.get(o)??[]:[Re(i.parent)?.toLowerCase()].filter(a=>a!==void 0);for(let a of s){let d=r.get(a)??[];d.push(i),r.set(a,d)}}return{byId:n,childrenByParent:r}}function Kd(e,t,n,r,i){return t?[...r.get(t.toLowerCase())??[]]:e.filter(o=>(i?i.parents_by_child.get(o.id.trim().toLowerCase())??[]:[Re(o.parent)?.toLowerCase()].filter(a=>a!==void 0)).every(a=>!n.has(a)))}function Ao(e,t,n,r,i=e){let{byId:o,childrenByParent:s}=Bd(e,r),a=Kd(e,t,o,s,r),d=[],c=new Set,l=new Map(i.map(f=>[f.id.trim().toLowerCase(),f.id.trim()])),u=[...a].reverse().map(f=>({node:f,depth:0,parentId:t===void 0?void 0:l.get(t.trim().toLowerCase())??t.trim()}));for(;u.length>0;){let{node:f,depth:h,parentId:y}=u.pop(),g=f.id.trim().toLowerCase();if(c.has(g))continue;c.add(g);let w=s.get(g)??[];if(d.push(Ln(f,h,w.length,y)),!(n!==void 0&&h>=n))for(let _ of[...w].reverse())u.push({node:_,depth:h+1,parentId:l.get(g)})}if(t===void 0&&n===void 0)for(let f of e){let h=f.id.trim().toLowerCase();c.has(h)||(c.add(h),d.push(Ln(f,0,s.get(h)?.length??0)))}return d}function Mo(e,t){return e===t?0:e===null?1:t===null?-1:e.localeCompare(t)}function Do(e,t){return e===t?0:e===null?1:t===null?-1:S(e,t)}function Lo(e,t,n){switch(n){case"priority":return e.priority-t.priority;case"deadline":return Do(e.deadline??null,t.deadline??null);case"updated_at":return S(e.updated_at,t.updated_at);case"created_at":return S(e.created_at,t.created_at);case"title":return(e.title??"").localeCompare(t.title??"");case"parent":return Mo(e.parent??null,t.parent??null);default:return 0}}function Oo(e,t,n,r){return t?[...e].sort((i,o)=>{let s=Lo(i,o,t);if(s!==0)return n==="desc"?-s:s;let a=$n(i,o,r);return n==="desc"?-a:a}):Fd(e,r)}function $o(e,t,n=!1){let r=ce(t.trim());if(r.length===0)return null;let i=e;return n&&r==="title"&&typeof i.tree_title=="string"?i.tree_title:Object.prototype.hasOwnProperty.call(i,r)?i[r]??null:null}function Pn(e,t,n=!1){return t.mode==="full"?e:e.map(r=>{let i={};for(let o of t.fields)i[o]=$o(r,o,n);return i})}function No(e){let t=[];for(let n of e)t.push(n.metadata_key);return t}function Po(e,t){if(e.noTruncate!==!0)return j(e.limit)??(t>=1e4?20:void 0)}function Hd(e,t,n){return t.after===void 0?Nn(t.offset)??0:ut(e,t.after,n,r=>r.id)}function jo(e,t,n){return{...e!==void 0?{applied_limit:e}:{},has_more:t,truncated:t,next_cursor:n??null}}async function Gd(e,t){let n=I(process.cwd(),t.path);await N(n);let r=await R(n),i=P(r.schema),o=G(r.schema),s=e.projectionCommand??"list",a=xo(e,s);return Rd(a,No(o.definitions),s),{pmRoot:n,settings:r,statusRegistry:i,runtimeFieldFilters:Ce(e,o,"list"),typeRegistry:L(r,F()),projection:a}}async function qd(e,t,n){let r=t.projection.fields.some(d=>ce(d)==="body"),i=t.projection.mode==="full"||t.projection.fields.some(d=>yo.has(ce(d))),o=qe(e),s=co(o),a=uo(o);return e.includeBody||r||a?await Si(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):i||s?await gt(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema):await ae(t.pmRoot,t.settings.item_format,t.typeRegistry.type_to_folder,n,t.settings.schema)}function zd(e){let t=Co(e.sort),n=Io(e.order)??"asc",r=e.tree===!0;if(!r&&e.treeDepth!==void 0)throw new p("List --tree-depth requires --tree",m.USAGE);if(!t&&e.order!==void 0)throw new p("List --order requires --sort",m.USAGE);return{sortField:t,sortOrder:n,treeEnabled:r,treeDepth:r?Md(e.treeDepth):void 0,parentRoot:r?Re(e.parent):void 0}}function Wd(e,t,n){let r=ho(t.status,n),i=r??ho(e,n),o=Ti(t.status),s=r||o?{...t,excludeTerminal:!1}:t,a=o?"all":i===void 0?s.excludeTerminal===!0?null:"all":i.length===1?i[0]:i;return{resolvedStatus:i,explicitAllStatuses:o,effectiveOptions:s,filtersStatus:a}}function Vd(e,t,n,r,i){if(t.after!==void 0&&t.offset!==void 0)throw new p("List --after cannot be combined with --offset.",m.USAGE);let o=Po(t,e.length),s=Hd(e,t,i),a=o===void 0?e.slice(s):e.slice(s,s+o),d=Pn(a,n,r),c=e.length,l=a.length>0&&s+a.length<c,u=l&&a.length>0?$e(i,a[a.length-1].id,s+a.length-1):void 0;return{projected:d,totalMatched:c,pageExtras:jo(o,l,u)}}function Uo(e,t,n){return ve("list",{status:e,options:be(t,Hr),sort:n.sortField??"default",order:n.sortOrder,tree:n.treeEnabled,tree_depth:n.treeDepth??null})}async function Yd(e){let{options:t,runtime:n,statusSelection:r,ordering:i}=e,o=new Set(["status","limit","offset","compact","brief","full","fields","format","stream","includeBody","excludeTerminal","dependencyBlocked","noTruncate","projectionCommand","truncate","notes","learnings","files","docs","tests","comments","deps","linkedCommand"]),s=[n.projection.mode==="full",n.projection.fields.some(y=>{let g=ce(y);return g==="body"||yo.has(g)})].includes(!0);if([t.limit===void 0,t.after!==void 0,t.noTruncate===!0,t.includeBody===!0,t.dependencyBlocked===!0,t.strictRead===!0,i.treeEnabled,i.sortField!==void 0,s,Vr(),Object.keys(n.runtimeFieldFilters).length>0,Object.entries(t).some(([y,g])=>g!==void 0&&!o.has(y))].includes(!0))return null;let d=await Ee(n.pmRoot,[...new Set(Object.values(n.typeRegistry.type_to_folder))]);if(!d)return null;let c=j(t.limit),l=Nn(t.offset)??0,u=await _i({pmRoot:n.pmRoot,expectedSourceCursor:d.source_cursor,query:{statuses:r.resolvedStatus,excludeStatuses:r.resolvedStatus===void 0&&r.effectiveOptions.excludeTerminal===!0?[...n.statusRegistry.terminal_statuses]:void 0,terminalStatuses:[...n.statusRegistry.terminal_statuses],limit:c,offset:l}});if(!u)return null;let f=u.items.length>0&&l+u.items.length<u.total,h=f?$e(Uo(r.filtersStatus,t,i),u.items.at(-1).id,l+u.items.length-1):void 0;return{projected:Pn(u.items,n.projection,!1),totalMatched:u.total,pageExtras:jo(c,f,h)}}function Xd(e){let{filtersStatus:t,options:n,noTruncate:r,treeEnabled:i,treeDepth:o,sortField:s,sortOrder:a,runtimeFieldFilters:d}=e,c={};t!==null&&(c.status=t),n.dependencyBlocked===!0&&(c.blocked_semantics="status_or_dependency");let l=n;for(let u of Cd){let f=l[u.optionKey];f!=null&&(c[u.summaryKey]=f)}for(let u of Id)l[u.key]===!0&&(c[u.summaryKey]=!0);return Object.assign(c,We(n),ze(n)),ko(c,n),r&&(c.no_truncate=!0),n.strictRead===!0&&(c.strict_read=!0),i&&(c.tree=!0,o!==void 0&&(c.tree_depth=o)),s!==void 0&&(c.sort=s,c.order=a),c.runtime_filters=d,c}async function te(e,t,n){let r=await Gd(t,n),i=[],o=zd(t),s=Wd(e,t,r.statusRegistry),a=t.noTruncate===!0,d=await Yd({options:t,runtime:r,statusSelection:s,ordering:o}),c=d;if(!c){let g=await qd(t,r,i),_=o.treeEnabled||Re(t.parent)!==void 0?bt(wt(g,_t())):void 0;Dd(g,t.tag,i);let b=Ro(g,s.resolvedStatus,s.effectiveOptions,r.typeRegistry,r.statusRegistry,r.runtimeFieldFilters,_?.parents_by_child),v=t.dependencyBlocked===!0?(()=>{let C=vt(g,r.statusRegistry);return b.filter(x=>C.has(x.id.trim().toLowerCase()))})():b,E=Oo(v,o.sortField,o.sortOrder,r.statusRegistry),T=o.treeEnabled?Ao(E,o.parentRoot,o.treeDepth,_,g):E;c=Vd(T,t,r.projection,o.treeEnabled,Uo(s.filtersStatus,t,o))}let l=M(),u=[...new Set(i)].sort((g,w)=>g.localeCompare(w)),f=vd(u,d!==null,t.strictRead===!0),h=r.projection.mode==="full"?null:[...r.projection.fields];if(r.projection.mode==="compact"&&t.compact===!0){let g=bo({filtersStatus:s.filtersStatus,options:t,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters});return{items:c.projected,count:c.projected.length,total:c.totalMatched,...c.pageExtras,completeness:f,filters:g,projection:{mode:"compact",fields:h},...u.length>0?{warnings:u}:{}}}return{items:c.projected,count:c.projected.length,total:c.totalMatched,...c.pageExtras,completeness:f,filters:Xd({filtersStatus:s.filtersStatus,options:t,noTruncate:a,treeEnabled:o.treeEnabled,treeDepth:o.treeDepth,sortField:o.sortField,sortOrder:o.sortOrder,runtimeFieldFilters:r.runtimeFieldFilters}),projection:{mode:r.projection.mode,fields:h},sorting:{sort:o.sortField??"default",order:o.sortField?o.sortOrder:"asc"},now:l,...u.length>0?{warnings:u}:{}}}var Ey={applyFilters:Ro,buildCompactListFilterSummary:bo,buildContentFilterEcho:ze,buildGovernanceMissingFilterEcho:We,resolveContentFieldFilters:qe,resolveMissingMetadataFilters:Dt,compareBySortField:Lo,compareDefaultSort:$n,compareNullableString:Mo,compareNullableTimestamp:Do,normalizeProjectionField:ce,parseAssigneeFilter:To,parseFieldSelectors:Eo,parseIdsFilter:So,parseOffset:Nn,parseProjectionConfig:xo,resolveListUpdatedAfter:vo,resolveListPageLimit:Po,parseSortField:Co,parseSortOrder:Io,orderItemsAsTree:Ao,projectListItems:Pn,readListFieldValue:$o,runtimeMetadataKeysForProjection:No,sortItems:Oo,trimNonEmpty:Re,withTreeMetadata:Ln};(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]="ab1153b1-2d91-58a5-9b4a-1d9c5f35a54a")}catch{}})();var Qd=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Jd=["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 Zd(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function Iy(e,t,n={}){let r=n.includePagination!==!1;return[t,...Qd.map(o=>e?.[o]),...r?[e?.limit,e?.offset]:[]].some(Zd)||Jd.some(o=>e?.[o]===!0)}function Bo(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]="56486369-9164-58d3-ac34-46d57859f96d")}catch{}})();var Ko=["parent","type","priority","status","assignee","tags","sprint","release"];function Go(e,t){let n=xe(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function qo(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",m.USAGE);let s=i??o;if(!t.includes(s))throw new p(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,m.USAGE);return{field:s,sum:i!==void 0,avg:o!==void 0}}function zo(e){let t=e?.trim()??"status";if(t.length===0)throw new p("--group-by requires at least one field name",m.USAGE);let n=Oi(t);if(n.length===0)throw new p("--group-by requires a comma-separated list of fields",m.USAGE);for(let r of n)if(!Ko.includes(r))throw new p(`Aggregate group fields must be one of ${Ko.join("|")}; received "${r}"`,m.USAGE);return n}function Wo(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 Vo(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 Wo(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function Yo(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 Xo(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var eu={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function Ho(e,t){return t==null||t===""?eu[e]:String(t)}function tu(e,t){return e.length===1?Ho(e[0],t[e[0]]):e.map(n=>`${n}=${Ho(n,t[n])}`).join(" | ")}function Qo(e,t,n){for(let r of n){let i=Yo(e.group[r],t.group[r]);if(i!==0)return i}return 0}function Jo(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let i=r.trim();if(i.length===0)return null;let o=Number(i);if(Number.isFinite(o))return o}return null}function Zo(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function jn(e,t,n){let r=D(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 nu(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 ru(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function iu(e){e.accumulator.row.count+=1,e.includeCompletion&&jn(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&ru(e.accumulator,e.numericValue)}function ou(e,t){let n={};for(let r of e)n[r]=Vo(r,t);return n}function su(e,t,n,r){let i={...e.row,group_label:tu(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=Zo(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 au(e){return{group_by:e.groupBy,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 My(e,t){if(e.count===!1)throw new p("Aggregate grouped counts are always enabled; omit count=false.",m.USAGE);let n=I(process.cwd(),t.path),r=await R(n),i=P(r.schema),o=["estimate","estimated_minutes","priority",...G(r.schema).definitions.filter(_=>_.type==="number").map(_=>_.metadata_key)],s=zo(e.groupBy),a=Go(e.status,i),d=qo(e,[...new Set(o)].sort((_,b)=>_.localeCompare(b))),c=e.completion===!0,l=e.includeUnparented===!0,u=await te(void 0,{...Bo(e),status:e.status},t),f=new Map,h=0,y=0;for(let _ of u.items){let b=_,v=ou(s,b);if(s.includes("parent")&&v.parent===null&&!l){h+=1;continue}let E=Xo(s,v),T=f.get(E),C=d===null?null:Jo(b,d.field);if(T)iu({accumulator:T,item:b,statusRegistry:i,includeCompletion:c,numericAggregation:d,numericValue:C});else{let x=nu(v,C);c&&jn(x,b.status,i),f.set(E,x)}y+=1}let g=[...f.values()].map(_=>su(_,s,c,d)).sort((_,b)=>Qo(_,b,s)),w=u.warnings&&u.warnings.length>0?u.warnings:void 0;return{groups:g,count:g.length,totals:{items_considered:u.items.length,items_grouped:y,items_skipped_unparented:h},filters:au({groupBy:s,includeCompletion:c,includeUnparented:l,status:a,options:e,numericAggregation:d}),now:M(),...w?{warnings:w}:{}}}var Dy={buildGroupKey:Xo,compareAggregateRows:Qo,compareNullableGroupValue:Yo,completionPct:Zo,normalizeTagGroupValue:Wo,parseGroupBy:zo,parseNumericAggregation:qo,parseStatus:Go,readNumericAggregateValue:Jo,resolveGroupValue:Vo,updateCompletionCounts:jn};import{encode as cu}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="47de55f1-589f-5743-bcb8-3b7a6302dfbb")}catch{}})();var Un=["agenda","day","week","month"],Bn=["markdown","toon","json"],du=["sun","mon","tue","wed","thu","fri","sat"],uu=365,lu=365,ns=28,fu=1e3;function Kn(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`,m.USAGE);return n}function mu(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",m.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",m.USAGE)}return r}function rs(e,t){let n;for(let r of t){let i=Dr(e,r,2);i!==null&&(n===void 0||i<n.distance)&&(n={choice:r,distance:i})}return n?.choice}function pu(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!Un.includes(t)){let n=rs(t,Un);throw new p(`Calendar view must be one of ${Un.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function hu(e){if(!e)return;let t=e.trim().toLowerCase();if(!Bn.includes(t)){let n=rs(t,Bn);throw new p(`Calendar format must be one of ${Bn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function Uy(e,t){let n=hu(e.format);if(t.json&&n&&n!=="json")throw new p("Cannot combine --json with --format markdown|toon",m.USAGE);return t.json?"json":n??"markdown"}function gu(e,t){if(e===void 0)return;let n=D(e,t);if(!n){let r=t.definitions.map(i=>i.id);throw new p(`Calendar status filter must be one of ${r.join("|")}`,m.USAGE)}return n}function yu(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",m.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new p(`Invalid calendar assignee filter "${e}". Allowed: assigned|unassigned`,m.USAGE);return t}function Lt(e){return new Date(e).toISOString().slice(0,10)}function is(e,t){if(!t||t==="UTC")return Lt(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 Lt(e)}function zn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function ne(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function os(e){let t=new Date(zn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return ne(t.toISOString(),r)}function _u(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function wu(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function bu(e,t){return S(e,t)>=0?e:t}function es(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function ts(e,t){e.set(t,(e.get(t)??0)+1)}function vu(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)=>we(r)-we(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 ss(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 as(e){return du[new Date(e).getUTCDay()]}function ku(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function Su(e){let t=new Set;for(let n of e??[]){let r=ku(n);r&&t.add(r)}return t}function Eu(e,t,n,r,i){let o=e??ne(n,-(r??lu)),s=t??ne(e??n,i??uu);return{start:o,end:S(s,o)>0?s:ne(o,1)}}function xu(e,t,n,r){let i=t.by_weekday!==void 0?[...t.by_weekday]:[as(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??fu,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:Su(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)=>we(s)-we(a)),sortedMonthDays:[...new Set(o)].sort((s,a)=>s-a),occurrences:[],produced:0}}function Ot(e,t){return S(t,e.startAt)<0?"continue":e.until&&S(t,e.until)>0||S(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,S(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function $t(e,t){let n=as(t),r=new Date(t).getUTCDate(),i=!e.weekdayFilter||e.weekdayFilter.has(n),o=!e.monthDayFilter||e.monthDayFilter.has(r);return i&&o}function Cu(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!($t(e,t)&&Ot(e,t)==="stop");n+=1)t=ne(t,e.interval);return e.occurrences}function Iu(e,t,n){let r=we(n),i=ne(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 Tu(e){let t=os(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=ne(t,n*e.interval*7);for(let i of e.sortedWeekdays){let o=Iu(e,r,i);if($t(e,o)&&Ot(e,o)==="stop")return e.occurrences}}return e.occurrences}function Fu(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=ss(i.getUTCFullYear(),i.getUTCMonth(),o,e.startDate);if(!(!s||!$t(e,s))&&Ot(e,s)==="stop")return e.occurrences}}return e.occurrences}function Ru(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=ss(i,n,o,e.startDate);if(!(!s||!$t(e,s))&&Ot(e,s)==="stop")return e.occurrences}}return e.occurrences}function Au(e,t,n,r){let i=xu(e,t,n,r);return t.freq==="daily"?Cu(i):t.freq==="weekly"?Tu(i):t.freq==="monthly"?Fu(i):Ru(i)}function cs(e){return[...e].sort((t,n)=>{let r=S(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 Wn(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 Mu(e){return e.deadline?{at:e.deadline,date:Lt(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,...Wn(e),item_deadline:e.deadline}:null}function Du(e){return(e.reminders??[]).map(t=>({at:t.at,date:Lt(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,...Wn(e)}))}function Lu(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function Ou(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function $u(e,t,n,r){let i=vu(t.recurrence),o=Lu(t.start_at,t.end_at);return(t.recurrence?Au(t.start_at,t.recurrence,n,r):[t.start_at]).map(a=>({at:a,date:t.all_day===!0?a.slice(0,10):is(a,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:Ou(a,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,...Wn(e)}))}function Nu(e,t,n,r){let i=[];for(let o of e){let s=n.has("deadlines")?Mu(o):null;s&&i.push(s),n.has("reminders")&&i.push(...Du(o));for(let a of n.has("events")?o.events??[]:[])i.push(...$u(o,a,t,r))}return cs(i)}function Pu(e,t,n,r,i){let o=Yi(t.type,n),s=t.tag?.trim().toLowerCase(),a=kt(t.priority),d=gu(t.status,r),c=t.assignee?.trim(),l=yu(t.assigneeFilter),u=t.sprint?.trim(),f=t.release?.trim();if(c&&(c.toLowerCase()==="none"||c.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',m.USAGE);if(c!==void 0&&l==="unassigned")throw new p("Cannot combine --assignee with --assignee-filter unassigned",m.USAGE);return e.filter(h=>ju(h,{typeFilter:o,tagFilter:s,priorityFilter:a,statusFilter:d,assigneeFilter:c,assigneeModeFilter:l,sprintFilter:u,releaseFilter:f,runtimeFieldFilters:i}))}function ju(e,t){return Uu(e,t)&&Bu(e,t)&&Ie(e,t.runtimeFieldFilters)}function Uu(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 Bu(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 Ku(e,t,n){return!(t&&S(e.at,t)<0||n&&S(e.at,n)>=0)}function Hn(e,t,n){return e.trim().toLowerCase()==="today"?zn(t):B(e,new Date(t),n)}function Hu(e,t,n){let r=t.date?Hn(t.date,n,"--date"):n,i=t.past===!0,o=t.fullPeriod===!0,s=t.from?Hn(t.from,n,"--from"):void 0,a=t.to?Hn(t.to,n,"--to"):void 0;if(s&&a&&S(s,a)>=0)throw new p("Calendar --from must be before --to",m.USAGE);if(e!=="agenda"&&(t.from!==void 0||t.to!==void 0))throw new p("--from and --to are only supported for --view agenda",m.USAGE);if(e==="agenda")return Gu(r,t,n,i,o,s,a);if(e==="day"){let c=zn(r);return Gn(r,n,i,o,c,ne(c,1))}if(e==="week"){let c=os(r);return Gn(r,n,i,o,c,ne(c,7))}let d=_u(r);return Gn(r,n,i,o,d,wu(r))}function Gu(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.",m.USAGE);return{anchor:e,start:o??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function Gn(e,t,n,r,i,o){let s=n||r;return{anchor:e,start:s?i:bu(i,t),end:o,periodStart:i,periodEnd:o,fullPeriod:s}}function qu(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:cs(r)}))}function zu(e){let t=new Set,n=new Map,r=new Map,i=0,o=0,s=0,a=0;for(let d of e)t.add(d.item_id),ts(n,d.item_type),ts(r,d.item_status),d.kind==="deadline"?i+=1:d.kind==="reminder"?o+=1:(s+=1,d.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:es(n),by_status:es(r),recurring_events:a}}function Wu(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function ds(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 qn(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function Vu(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===is(e.event_end,e.event_timezone)?ds(e.event_end,e.event_timezone):e.event_end:null}function Yu(e){let t=`${ds(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 o=Vu(e);return o&&n.push(`end=${o}`),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 By(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${Wu(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(`- by-kind: ${qn(e.summary.by_kind)}`),t.push(`- by-type: ${qn(e.summary.by_type)}`),t.push(`- by-status: ${qn(e.summary.by_status)}`),t.push(`- recurring-events: ${e.summary.recurring_events}`),t.push(""),e.events.length===0)return t.push("No calendar events matched the selected filters."),t.join(`
2
2
  `);for(let n of e.days){t.push(`## ${n.date} (${n.count})`);for(let r of n.events)t.push(`- ${Yu(r)}`);t.push("")}if(e.warnings&&e.warnings.length>0){t.push("### warnings");for(let n of e.warnings)t.push(`- ${n}`);t.push("")}return Xu(t.join(`
3
3
  `))}function Ky(e){return cu(e)}function Xu(e){let t=e.length;for(;t>0&&e[t-1]===`
4
4
  `;)t-=1;return e.slice(0,t)}function Qu(e){let t=M(),n=pu(e.view),r=Hu(n,e,t),i=j(e.limit),o=mu(e.include),s=Kn(e.recurrenceLookaheadDays,"Calendar recurrence lookahead days"),a=Kn(e.recurrenceLookbackDays,"Calendar recurrence lookback days"),d=Kn(e.occurrenceLimit,"Calendar occurrence limit");if(d!==void 0&&d<1)throw new p("Calendar occurrence limit must be >= 1",m.USAGE);let c=o.has("events")&&!o.has("deadlines")&&!o.has("reminders"),l=e.to!==void 0||s!==void 0||a!==void 0||d!==void 0,u=c&&!l;return{nowValue:t,view:n,rangeBounds:r,limit:i,includeSources:o,occurrenceLimit:d,recurrenceLookaheadDays:u?ns:s,recurrenceLookbackWindowDays:u&&a===void 0?0:a,eventsOnlyCapApplied:u}}function Ju(e,t){t&&e.push(`recurring_events_default_cap_applied:lookback=0d,lookahead=${ns}d -- use --recurrence-lookback-days/--recurrence-lookahead-days or --to for wider range`)}function Zu(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 el(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 us(e,t){let n=I(process.cwd(),t.path);await N(n);let r=Qu(e),i=await R(n),o=P(i.schema),s=G(i.schema),a=Ce(e,s,"calendar"),d=L(i,F()),c=[];Ju(c,r.eventsOnlyCapApplied);let l=await ae(n,i.item_format,d.type_to_folder,c,i.schema),u=Pu(l,e,d,o,a),f=Eu(r.rangeBounds.start,r.rangeBounds.end,r.nowValue,r.recurrenceLookbackWindowDays,r.recurrenceLookaheadDays),y=Nu(u,f,r.includeSources,r.occurrenceLimit).filter(b=>Ku(b,r.rangeBounds.start,r.rangeBounds.end)),g=r.limit===void 0?y:y.slice(0,r.limit),w=qu(g),_=[...new Set(c)].sort((b,v)=>b.localeCompare(v));return{view:r.view,output_default:"markdown",now:r.nowValue,anchor:r.rangeBounds.anchor,range:el(e,r.rangeBounds),filters:Zu(e,a),summary:zu(g),events:g,days:w,..._.length>0?{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]="7eefe5f0-364d-559a-b365-0e7d539ee19e")}catch{}})();var Vn=["structural","recency","activity_density","graph_proximity","claim_focus","priority_pressure","risk_pressure","deadline_pressure","knowledge_density","author_affinity","usage_affinity","semantic_similarity"],tl=Symbol("no-context-author"),nl=Symbol("no-item-assignee");function ls(e,t){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return n.length>0?n:t}function rl(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 il(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 ol(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 Nt(e,t,n){return e?.[t]??n}function Pt(e,t){let n=c=>{if(typeof c!="string")return"";try{return B(c,new Date(Number.NaN),"updated_at")}catch{return""}},r=[...e].sort((c,l)=>{let u=n(c.updated_at),f=n(l.updated_at);return S(f,u)||c.id.localeCompare(l.id)}),i=new Map(r.map((c,l)=>[c.id,l])),o=Math.max(e.length-1,1),s=ls(t.author,tl),a=D("in_progress",t.statusRegistry),d=Date.parse(t.now);return e.map(c=>{let l=ls(c.assignee,nl)===s,u=(c.comments?.length??0)+(c.notes?.length??0)+(c.learnings?.length??0);return{id:c.id,item:c,signals:{recency:e.length===1?1:1-i.get(c.id)/o,activity_density:t.activityDensity?.[c.id],graph_proximity:Nt(t.graphProximity,c.id,c.parent?.3:0),claim_focus:Nt(t.claimFocus,c.id,O(c.status,t.statusRegistry)===a?1:l?.75:0),priority_pressure:rl(c.priority,4),risk_pressure:ol(c.risk),deadline_pressure:il(c.deadline,d),knowledge_density:Nt(t.knowledgeDensity,c.id,Math.min(u/5,1)),author_affinity:Nt(t.authorAffinity,c.id,l?1:0),usage_affinity:t.usageAffinity?.[c.id],semantic_similarity:t.semanticSimilarity?.[c.id]}}})}var sl="context_relevance",al={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},cl=new TextEncoder;function dl(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"||!Vn.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 ul(e){let t={...al};for(let[n,r]of Object.entries(e??{}))r!==void 0&&Vn.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 ms(e,t={}){dl(e);let n=ul(t.weights),r=Math.max(e.length-1,1),i=new Set(["structural"]);for(let a of e)for(let[d,c]of Object.entries(a.signals??{}))c!==void 0&&i.add(d);let o=Vn.filter(a=>i.has(a)),s=e.map((a,d)=>{let c={structural:e.length===1?1:1-d/r,...a.signals},l={},u=0,f=0;for(let h of o){let y=c[h];if(y===void 0)continue;let g=y*n[h];l[h]=g,u+=g,f+=n[h]}return{...a,baseline_rank:d+1,rank:0,score:f===0?0:u/f,contributions:l}});return s.sort((a,d)=>d.score-a.score||a.baseline_rank-d.baseline_rank),s.forEach((a,d)=>{a.rank=d+1}),{model:"default-weighted-v1",available_signals:o,ranked:s}}async function ll(e,t={}){let n=ms(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 jt(e,t,n={}){let r=ms(t,n),i=await Yr(sl,{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 ll(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 fl=["ndcg","reciprocal_rank","required_recall","continuity_coverage","token_budget_adherence"];function fs(e,t){return e.length===0?1:e.filter(n=>t.has(n)).length/e.length}function ml(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(c=>Math.max(0,t[c]??0)),r=Object.values(t).map(c=>Math.max(0,c)).sort((c,l)=>l-c).slice(0,n.length||1),i=c=>c.reduce((l,u,f)=>l+(2**u-1)/Math.log2(f+2),0),o=i(r),s=n.findIndex(c=>c>0),a=new Set(e.ranked_ids),d=e.actual_tokens<=e.token_budget;return{ndcg:o===0?1:i(n)/o,reciprocal_rank:s<0?0:1/(s+1),required_recall:fs(e.required_ids??[],a),continuity_coverage:fs(e.continuity_ids??[],a),token_budget_adherence:d?1:e.token_budget/e.actual_tokens,within_token_budget:d}}function pl(e){return Math.ceil(cl.encode(JSON.stringify(e)).byteLength/4)}function hl(e){return Math.round(e*1e4)/1e4}function gl(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 yl(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:"unbounded"}):await t.next({...e.options,explainRanking:!0,outputBudget:"unbounded"}),{rankedIds:r,attribution:i}=gl(n,e.surface),o={...n,ranking:void 0},s=pl(o);return{id:e.id,surface:e.surface,rationale:e.rationale,ranked_ids:r,actual_tokens:s,metrics:ml({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 _l(e,t){if(e.length===0)throw new TypeError("Context evaluation requires at least one scenario report");let n=fl;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,hl(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 Wy(e,t,n){let r=[];for(let i of e)r.push(await yl(i,t));return _l(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]="b5c90a16-c075-5dc6-a326-ad2da7a6ef6d")}catch{}})();var wl={balanced:{redundancyPenalty:.35,uncertaintyPenalty:.2},context:{redundancyPenalty:.45,uncertaintyPenalty:.15},next:{redundancyPenalty:.25,uncertaintyPenalty:.3}},bl=["identity","summary","full"];function vl(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=bl.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 kl(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=wl[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 Sl(e){let t=new Set;for(let n of e){if(vl(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 El(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 d=e[a];if(d.token_costs.identity>t)continue;s+=1;let c=o<0?void 0:e[o],l=n(d)/d.token_costs.identity,u=c===void 0?Number.NEGATIVE_INFINITY:n(c)/c.token_costs.identity;(l>u||l===u&&c!==void 0&&(d.rank<c.rank||d.rank===c.rank&&d.id.localeCompare(c.id)<0))&&(o=a)}return{index:o,evaluated:s,timedOut:!1}}function xl(e){let t=new Set,n=[],r=e.tokenBudget,i=c=>{let l=c.lineage??c.cluster,u=l&&t.has(l)?1-e.redundancyPenalty:1;return Math.max(0,(c.score-e.uncertaintyPenalty*(c.uncertainty??0))*u)},o=c=>{let l=c.token_costs.identity;n.push({...c,projection:"identity",tokens:l,marginal_value:i(c)}),r-=l;let u=c.lineage??c.cluster;u&&t.add(u)};for(let c of e.ordered.filter(l=>l.required))c.token_costs.identity<=r&&o(c);let s=e.ordered.filter(c=>!c.required),a=!0,d=0;for(;s.length>0;){let c=El(s,r,i,e.deadline,e.readClock);if(d+=c.evaluated,c.timedOut&&(a=!1),c.index<0||c.timedOut)break;o(s.splice(c.index,1)[0])}return{included:n,remaining:r,selectionComplete:a,evaluatedCandidates:d}}function Cl(e,t){let n=t;for(let r of["summary","full"]){let i=r==="summary"?"identity":"summary",o=[...e].sort((s,a)=>{let d=s.token_costs[r]-s.token_costs[i],c=a.token_costs[r]-a.token_costs[i];return a.marginal_value/Math.max(c,1)-s.marginal_value/Math.max(d,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 ps(e,t){let n=kl(t),r=Sl(e),i=t.readClock??performance.now.bind(performance),o=t.latencyBudgetMs===void 0?Number.POSITIVE_INFINITY:i()+t.latencyBudgetMs,s=xl({ordered:r,tokenBudget:t.tokenBudget,redundancyPenalty:n.redundancy,uncertaintyPenalty:n.uncertainty,deadline:o,readClock:i}),{included:a}=s,d=Cl(a,s.remaining);a.sort((l,u)=>l.rank-u.rank||l.id.localeCompare(u.id));let c=new Set(a.map(l=>l.id));return{included:a,omitted_ids:r.filter(l=>!c.has(l.id)).map(l=>l.id),token_budget:t.tokenBudget,used_tokens:t.tokenBudget-d,remaining_tokens:d,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{randomUUID as Il}from"node:crypto";import{appendFile as Tl,mkdir as Fl,readFile as Rl,rename as Al,stat as Ml,writeFile as Dl}from"node:fs/promises";import hs 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]="5f4ccd28-a001-54aa-8378-893025c69b96")}catch{}})();var gs=2048,ys=30,_s=864e5,Ll=262144,Ol="context-usage-ledger",V=class extends TypeError{code="context_usage_validation_failed";constructor(t){super(t),this.name="ContextUsageValidationError"}};function ws(e){return hs.join(e,"runtime","context-usage.jsonl")}function Ve(e){let t=e.now??new Date().toISOString(),n=Date.parse(t);if(!Number.isFinite(n))throw new V("Context usage now must be a valid timestamp");return{iso:new Date(n).toISOString(),ms:n}}async function bs(e){try{let n=(await Rl(ws(e.pmRoot),"utf8")).split(`
@@ -13,4 +13,4 @@ import{a as cn,b as dn,d as un,e as ln,f as fn,g as mn,h as pn}from"./chunk-A2BC
13
13
  `)}catch{}}function Np(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(" ")}`]:[]]}var Wb={applyFilters:Da,applyExactQueryFilters:Ma,applyInlineQueryFilters:Fa,buildHitHighlights:Ua,buildVerboseSearchFilters:it,buildExplicitSemanticFallbackWarning:Ca,buildCompactSearchFilterSummary:rt,buildHybridLexicalScore:Ha,buildRerankCorpus:Ja,buildSemanticHits:Va,classifyImplicitSemanticFallbackReason:xa,collectErrorCauseCodes:Ea,collectExactPhraseFields:Ra,collectLinkedPaths:La,combineHybridHits:Ar,computeBuiltInBm25Hits:Xa,computeSemanticOrHybridHits:Za,resolveBuiltInBm25Mode:Ya,countOccurrences:Fr,dependencyEntries:Tr,documentContainsExactPhrase:Aa,emptySearchResult:Ga,highlightFieldSnippet:ja,loadDocuments:ec,markTokenRuns:Pa,parseInlineQueryFilters:Ta,maybeEmitVectorIndexStaleWarning:Ia,loadLinkedCorpus:$a,mergeVectorHitsById:Qa,normalizeExtensionProviderHits:Wa,normalizeScoreMap:xr,parseProjectionConfig:hr,parseTimestampWindow:Me,parseTokens:yr,projectSearchHits:nc,readSearchFieldValue:tc,requireSemanticDependencies:Rr,resolveExtensionSearchProvider:qa,resolveExtensionSearchProviderByName:tn,resolveExtensionVectorAdapter:za,resolveLinkedCorpusRoots:Oa,scoreDocument:Ba,sortHits:Ka,stringArray:en,textEntries:he,validateSearchProjectionFields:gr};function Ta(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=Sa.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 Fa(e,t,n){let r={...e};for(let i of Sa){let o=t[i];if(o!==void 0){if($(r[i])!==void 0){n.push(`search_inline_filter_ignored:${i}:flag_takes_precedence`);continue}r[i]=o}}return r}function en(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function he(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function Tr(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function Ra(e){let t=e.metadata;return[t.title,t.description,t.status,en(t.tags).join(" "),e.body,he(t.comments).map(n=>n.text).join(" "),he(t.notes).map(n=>n.text).join(" "),he(t.learnings).map(n=>n.text).join(" "),_n(t).join(" "),wn(t).join(" "),Tr(t.dependencies).map(n=>`${n.id} ${n.kind}`).join(" "),bn(t)]}function Aa(e,t){return Ra(e).some(n=>re(n).includes(t))}function Ma(e,t,n){return!n.titleExact&&!n.phraseExact?e:e.filter(r=>!(n.titleExact&&re(r.metadata.title)!==t||n.phraseExact&&!Aa(r,t)))}function Pp(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null".',m.USAGE)}function jp(e,t,n){let r=W(e.assignee,{label:"--assignee"});Pp(r);let i=Dt(e),o=qe(e);return{typeFilter:It(e.type,t),tagFilter:W(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Tt(e.priority),deadlineBefore:pr(e.deadlineBefore,"deadline-before"),deadlineAfter:pr(e.deadlineAfter,"deadline-after"),updatedAfter:Me(e.updatedAfter,"updated-after"),updatedBefore:Me(e.updatedBefore,"updated-before"),createdAfter:Me(e.createdAfter,"created-after"),createdBefore:Me(e.createdBefore,"created-before"),assigneeFilter:r,sprintFilter:W(e.sprint,{label:"--sprint"}),releaseFilter:W(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:n&&n.length>0?new Set(n):void 0,missingMetadataFilters:i,missingMetadataActive:He(i),contentFieldFilters:o,contentFiltersActive:At(o)}}function Up(e,t){return Bp(e,t)&&Kp(e,t)&&Hp(e,t)}function Bp(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&&!en(e.tags).some(r=>n.has(r))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function Kp(e,t){return ft(e,t)}function Hp(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 Gp(e,t,n,r){let i=e.metadata;return!(!Up(i,t)||!Ie(i,n)||t.missingMetadataActive&&!Rt(i,t.missingMetadataFilters,r)||t.contentFiltersActive&&!Mt(i,t.contentFieldFilters))}function Da(e,t,n,r,i,o){let s=jp(t,n,i);return e.filter(a=>Gp(a,s,r,o))}function Fr(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}}function qp(e){return Te(e)}function La(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 va(e){let t=Ir.resolve(e);try{let n=await Jt.realpath(t);return{resolved:t,realpath:n}}catch{return null}}async function Oa(e,t){let[n,r]=await Promise.all([va(e),va(t)]);return{projectContainmentRoot:n,globalContainmentRoot:r}}async function $a(e,t){let n=La(e.metadata),r=[];for(let i of n){let o=i.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!o)continue;let s=Ir.resolve(o.resolved,i.path);if(!an(o.resolved,s))continue;let a;try{a=await Jt.realpath(s)}catch{continue}if(an(o.realpath,a))try{await Ne({path:s,scope:i.scope}),r.push(await Jt.readFile(s,"utf8"))}catch{}}return r.join(`
14
14
  `)}var Na=[{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=>en(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=>he(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>he(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>he(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>_n(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>wn(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>Tr(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>bn(e.metadata)}],zp=new Map(Na.map(e=>[e.name,e]));function Wp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Pa(e,t){let n=t.filter(i=>i.length>0).sort((i,o)=>o.length-i.length).map(Wp);if(n.length===0)return e;let r=new RegExp(n.join("|"),"gi");return e.replace(r,i=>`${Lp}${i}${Op}`)}function ja(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-ba),s=Math.min(e.length,r+i+ba),a=Pa(e.slice(o,s),t),d=o>0?"\u2026":"",c=s<e.length?"\u2026":"";return`${d}${a}${c}`}function Ua(e,t,n){let r=[];for(let i of t){let o=zp.get(i);if(o===void 0)continue;let s=ja(o.value(e),n);s!==null&&r.push({field:i,snippet:s})}return r}function Vp(e,t,n){return[...Na.map(r=>({name:r.name,value:r.value(e),weight:n[r.weightKey]})),{name:"linked_content",value:t,weight:n.linked_content_weight}]}function Yp(e,t,n){let r=re(e.id),i=typeof n=="string"?n.trim().toLowerCase():"",o=re(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?Mp:Dp,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function Xp(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 d=Fr(a.value.toLowerCase(),o);d>0&&(i.score+=d*a.weight,i.matched.add(a.name),i.matchedTokens.add(o))}}}function Qp(e,t,n,r){re(e.title)===t&&(r.score+=Fp,r.matched.add("title"));for(let o of n){let s=Fr(re(o.value),t);s>0&&(r.score+=s*o.weight*Rp,r.matched.add(o.name))}}function Ba(e,t,n,r,i,o,s=!1){let a=e.metadata,d=Yp(a,n,o);if(d)return d;let c=new Map;for(let g of qp(a.title))c.set(g,(c.get(g)??0)+1);let l=Vp(e,r,i),u={score:0,matched:new Set,matchedTokens:new Set};Xp(t,c,l,i,u);let f=new Set(t),h=f.size>0&&u.matchedTokens.size===f.size;return s&&f.size>1&&h&&(u.score+=Ap),t.length>=Tp&&n.includes(" ")&&Qp(a,n,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((g,w)=>g.localeCompare(w)),matched_all_terms:h}}function Ka(e,t){return[...e].sort((n,r)=>{let i=r.score-n.score;if(i!==0)return i;let o=K(n.item.status,t),s=K(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 d=S(r.item.updated_at,n.item.updated_at);return d!==0?d:n.item.id.localeCompare(r.item.id)})}function Ha(e,t,n,r,i,o,s,a=!1){return Ba(e,t,n,r?i.get(e.metadata.id)??"":"",o,s,a)}function xr(e){if(e.size===0)return new Map;let t=[...e.values()],n=Math.min(...t),r=Math.max(...t);if(r===n)return new Map([...e.keys()].map(o=>[o,1]));let i=new Map;for(let[o,s]of e)i.set(o,(s-n)/(r-n));return i}function Ga(e,t,n,r,i,o,s,a,d,c,l,u,f=!1){let h=f?{total:0,count_only:!0}:{};if(c.mode==="compact"&&r.compact===!0){let w=rt({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,items:[],count:0,...h,filters:w,...l.length>0?{warnings:l}:{}}}let g=c.mode==="full"?null:[...c.fields];return{query:e.trim(),mode:t,items:[],count:0,...h,filters:it({effectiveMode:t,matchMode:n,options:r,includeLinked:i,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:o,hybridSemanticWeight:s,queryExpansion:a,rerank:d,runtimeFieldFilters:u??{}}),projection:{mode:c.mode,fields:g},now:M(),...l.length>0?{warnings:l}:{}}}function Rr(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`,m.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`,m.USAGE);return{provider:t.active,vectorStore:n.active??null}}var Y=$;function tn(e){let t=F(),n=xi(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=Y(r.name)??Y(n.definition.name)??e;if(!a)return null;let d={providerName:a,...typeof i=="function"?{query:i}:{},...typeof o=="function"?{queryExpansion:o}:{},...typeof s=="function"?{rerank:s}:{}};return!d.query&&!d.queryExpansion&&!d.rerank?null:d}function qa(e){let t=Y(e.search?.provider),n=tn(t);return n?.query?{providerName:n.providerName,query:n.query}:null}function za(e){let t=F(),n=Y(e.vector_store?.adapter),r=Ci(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:Y(i.name)??Y(r.definition.name)??n??"extension",query:o,...typeof s=="function"?{upsert:s}:{}}}function Wa(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: [...] }`,m.GENERIC_FAILURE);let i=new Set,o=[];for(let s of r){if(typeof s!="object"||s===null)continue;let a=Y(s.id),d=s.score;if(!a||typeof d!="number"||!Number.isFinite(d)||i.has(a))continue;let c=n.get(a);if(!c)continue;let l=s.matched_fields,u=Array.isArray(l)&&l.every(f=>typeof f=="string")?[...new Set(l.map(f=>f.trim()).filter(f=>f.length>0))].sort((f,h)=>f.localeCompare(h)):[`provider:${e}`];i.add(a),o.push({item:c.metadata,score:d,matched_fields:u})}return o}function Va(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 Zt(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,l)=>Math.max(c,l.score),0),s=n.sort((c,l)=>l.score-c.score),a=o+s.length+1;return[...s.map((c,l)=>({...c,score:a-l,matched_fields:["id"]})),...i]}function Ar(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=xr(t),d=xr(o),c=new Set([...t.keys(),...o.keys()]),l=1-r;return[...c].map(u=>{let f=e.get(u),h=a.get(u)??0,y=d.get(u)??0,g=h*r+y*l;if(g<=0)return null;let w=new Set;t.has(u)&&w.add(i);for(let _ of s.get(u)??[])w.add(_);return{item:f.metadata,score:g,matched_fields:[...w].sort((_,b)=>_.localeCompare(b))}}).filter(u=>u!==null)}function Ya(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function Xa(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:_a(Mi(s,{fields:e.corpusFields}))})),n=ga(t),r=ya(n,Er(e.query),e.bm25Params),i=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...r].map(([a,d])=>({item:i.get(a).metadata,score:d,matched_fields:["bm25"]}));return Zt(s,e.keywordHits)}let o=Ar(i,r,e.keywordHits,e.hybridSemanticWeight,"bm25");return Zt(o,e.keywordHits)}function Qa(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 Ja(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(`
15
15
  `)}async function Jp(e,t){let n=e.queryExpansion.enabled?aa(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 da(r,ca(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 Zp(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)})`,m.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await vn(e.vectorStore,t,n,r)}if(e.vectorStore)return await vn(e.vectorStore,t,n,r);throw new p("Semantic search requires either a configured vector store or an extension vector adapter query handler",m.USAGE)}function eh(e,t,n){return[...e].sort((i,o)=>i.score!==o.score?o.score-i.score:i.item.id.localeCompare(o.item.id)).slice(0,n).map(i=>{let o=t.get(i.item.id);return o?{hit:i,text:Ja(o)}:null}).filter(i=>i!==null)}async function th(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=fa(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 nh(e,t,n){let r=await th(e,t,n);if(r)return r;let i=n.map(o=>({id:o.hit.item.id,text:o.text}));try{return await pa(e.provider,e.rerank.model,t,i,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function rh(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,d)=>a.localeCompare(d))}});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 ih(e,t,n,r){if(!e.rerank.enabled||n.length<=1)return n;let i=eh(n,r,e.rerank.top_k),o=await nh(e,t,i);return o&&o.size>0?rh(n,o):n}async function Za(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 Jp(e,i),s=await yt(e.provider,o,n),a=await Promise.all(s.map(async y=>await Zp(e,y,t,r))),d=Qa(a),c=new Map(e.filteredDocuments.map(y=>[y.metadata.id,y])),{semanticHits:l,semanticScores:u}=Va(d,c),f=u.size;if(e.requestedMode==="semantic")return{hits:Zt(l,e.keywordHits),vectorMatchCount:f};let h=await ih(e,i,Ar(c,u,e.keywordHits,e.hybridSemanticWeight),c);return{hits:Zt(h,e.keywordHits),vectorMatchCount:f}}async function ec(e,t,n,r){let i=$r(F()),o=async(c,l,u)=>{let f=async(h,y)=>{await Ne({path:h,scope:"project"});let g=await Jt.readFile(h,"utf8");return ni(g,{format:y,schema:r,extensionFieldNames:i,onWarning:_=>s.push(_)}).body};try{return await f(l,u)}catch{let h=u==="toon"?"json_markdown":"toon",y=Le(e,c.type,c.id,h,n);try{return await f(y,h)}catch{return s.push(`item_list_item_read_failed:${Ir.relative(e,y)}`),""}}},s=[],a=await ki(e,t,n,s,r),d=[];if(a.length===0){let c=await gt(e,t,n,s,r);for(let l of c){let u=Le(e,l.type,l.id,t,n),f=await o(l,u,t);d.push({metadata:l,body:f})}return{documents:d,warnings:[...new Set(s)].sort((l,u)=>l.localeCompare(u))}}for(let c of a){if(typeof c.body=="string"){d.push({metadata:c.metadata,body:c.body});continue}let l=await o(c.metadata,c.item_path,c.item_format);d.push({metadata:c.metadata,body:l})}return{documents:d,warnings:[...new Set(s)].sort((c,l)=>c.localeCompare(l))}}function tc(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 nc(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]=tc(n,i);return r})}function oh(e){let t=tn(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function sh(e){let t=tn(Y(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}function ah(e,t){let n=[],r=Ta(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.",m.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=Fa(t,r.inlineFilters,n);return{query:o,options:s,inlineWarnings:n,highlight:s.highlight===!0,includeLinked:Xt(s.includeLinked),titleExact:Xt(s.titleExact),phraseExact:Xt(s.phraseExact),matchMode:oa(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:sa(s.minScore),countOnly:s.count===!0,tokens:yr(o),normalizedQuery:re(o),limit:fe(s.limit),projection:hr(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}async function ch(e,t){let n=I(process.cwd(),t.path);await N(n);let r=await R(n),i=Fi(r).settings,o=P(i.schema),s=G(i.schema);gr(e.projection,s,e.query);let a=Ce(e.options,s,"search"),d=L(i,F()),c=Ri(i),l=Di(i,n),u=qa(i),f=za(i),h=ia(e.options.semanticWeight),y=ua(i,c.active?.name??null),g=la(i,c.active?.model??Y(i.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:n,settings:i,statusRegistry:o,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:d,maxResults:_r(i),scoreThreshold:e.minScoreOverride??wr(i),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:h,hybridSemanticWeight:h??br(i),tuning:vr(i),providerResolution:c,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:f,bm25Mode:Ya({configuredProvider:Y(i.search?.provider),hasEmbeddingProvider:c.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:y,queryExpansionExtension:oh(y),rerank:g,rerankExtension:sh(i),effectiveMode:ra(e.options.mode)}}async function dh(e,t){let n=await ec(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),r=xe(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),i=Ft(t.statusRegistry),o=Da(n.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,r,i);return{warnings:n.warnings,allDocuments:n.documents,filteredDocuments:Ma(o,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function uh(e,t,n){let r=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return r;let i=process.cwd(),o=await Oa(i,Pr(i)),s=await Promise.all(n.map(async a=>[a.metadata.id,await $a(a,o)]));for(let[a,d]of s)r.set(a,d);return r}async function lh(e,t,n){let r=await uh(e.includeLinked,t.effectiveMode,n),i=e.matchMode==="or";return n.map(o=>Ha(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)}function ka(e,t){return Ga(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)}async function fh(e,t,n,r,i){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let o=Xa({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:n,keywordHits:r,corpusFields:Ai(t.settings),bm25Params:wa(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 mh(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 Wa(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)}`,m.GENERIC_FAILURE);return null}}function ph(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 hh(e,t,n,r,i){let o=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);i&&o&&await Ia(e.pmRoot,n,r),e.extensionSearchProvider||Rr(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function gh(e){let{prepared:t,runtime:n,filteredDocuments:r,keywordHits:i,warnings:o,modeWasExplicit:s}=e,a=i,d=await fh(t,n,r,i,o),c=n.effectiveMode;if(d!==null||c==="keyword")return{effectiveMode:n.effectiveMode,hits:d??a};try{if(await hh(n,c,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 mh(t,n,r,l)??a,a===i){let{provider:u,vectorStore:f}=Rr(c,n.providerResolution,n.vectorResolution,n.extensionVectorAdapter!==null),h=await Za({requestedMode:c,query:t.query,filteredDocuments:r,keywordHits:i,hybridSemanticWeight:n.hybridSemanticWeight,limit:t.limit,maxResults:n.maxResults,provider:u,vectorStore:f,extensionVectorAdapter:n.extensionVectorAdapter,queryExpansion:n.queryExpansion,queryExpansionExtension:n.queryExpansionExtension,rerank:n.rerank,rerankExtension:n.rerankExtension,warnings:o,settings:n.settings});a=ph(c,h,i,o)}return{effectiveMode:n.effectiveMode,hits:a}}catch(l){return o.push(Ca(n.effectiveMode,l)),{effectiveMode:"keyword",hits:i}}}function yh(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return Cr({query:e.query.trim(),mode:e.effectiveMode,items:[],count:t,total:t,count_only:!0,filters:rt({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 Cr({query:e.query.trim(),mode:e.effectiveMode,items:[],count:t,total:t,count_only:!0,filters:it({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:M()},e.warnings)}function Cr(e,t){return t.length===0?e:{...e,warnings:t}}function Qt(e,t){return t?{...e,workspace_memory:t}:e}function _h(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:Ua(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 wh(e,t,n,r,i,o){let s=r<n?{total:n}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return Cr({query:e.query.trim(),mode:e.effectiveMode,items:t,count:t.length,...s,...o,filters:rt({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,items:t,count:t.length,...s,...o,filters:it({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:M(),...e.warnings.length>0?{warnings:e.warnings}:{}}}function bh(e){if(e.after!==void 0&&e.count===!0)throw new p("Search --after cannot be combined with --count.",m.USAGE)}async function Vb(e,t,n){bh(t);let r=ah(e,t),i=await ch(r,n),o=await dh(r,i),s=o.warnings;s.push(...r.inlineWarnings);let a=await Gt(o.allDocuments.map(E=>E.metadata),{pmRoot:i.pmRoot,statusRegistry:i.statusRegistry,now:M()});s.push(...a.warnings);let d=Rs(a,r.query);i.effectiveMode==="hybrid"&&i.semanticWeightProvided&&i.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let c={query:r.query,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 Qt(ka({...c,effectiveMode:i.effectiveMode},r.countOnly),d);let l=await lh(r,i,o.filteredDocuments),u=await gh({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 Qt(ka({...c,effectiveMode:u.effectiveMode},r.countOnly),d);let f=u.hits.filter(E=>E.exact_id_match===!0||E.score>=i.scoreThreshold),h=Ka(f,i.statusRegistry),y=h.length,g=na({sorted:h,query:r.query,mode:u.effectiveMode,searchOptions:r.options,limit:r.limit??i.maxResults}),w={...c,effectiveMode:u.effectiveMode};if(r.countOnly)return Qt(yh(w,y),d);let{hits:_,projection:b}=_h(r,o.filteredDocuments,g.limited),v=nc(_,b);return Qt(wh(w,v,y,g.limited.length,b,g.pageExtras),d)}(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]="6152efa9-8338-57f0-b3de-5707befed019")}catch{}})();async function Zb(e,t={}){let n=await ji({pmRoot:I(process.cwd(),e.path),...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>"}}}export{oc as a,Sn as b,vh as c,fc as d,mc as e,kh as f,Bi as g,Be as h,Ki as i,Hi as j,$h as k,Gi as l,Cn as m,og as n,Vi as o,j as p,kt as q,Yi as r,St as s,Oc as t,Et as u,Ct as v,Pg as w,eo as x,Iy as y,Rn as z,W as A,It as B,Tt as C,Ft as D,zg as E,Wg as F,Yg as G,Dt as H,qe as I,fo as J,mo as K,On as L,ze as M,We as N,te as O,Ey as P,My as Q,Dy as R,Uy as S,By as T,Ky as U,us as V,Vn as W,Pt as X,sl as Y,ms as Z,ll as _,jt as $,fl as aa,ml as ba,yl as ca,_l as da,Wy as ea,wl as fa,ps as ga,V as ha,Ut as ia,e_ as ja,Ss as ka,Bt as la,Yn as ma,Xn as na,jl as oa,ql as pa,zl as qa,Qn as ra,Jn as sa,Ht as ta,Ql as ua,tf as va,Gt as wa,df as xa,Fs as ya,uf as za,Rs as Aa,Ms as Ba,S_ as Ca,E_ as Da,x_ as Ea,C_ as Fa,Ds as Ga,lf as Ha,_f as Ia,Qe as Ja,q_ as Ka,tr as La,vf as Ma,kf as Na,rr as Oa,pe as Pa,or as Qa,sr as Ra,ar as Sa,Ae as Ta,tt as Ua,qt as Va,z_ as Wa,bm as Xa,W_ as Ya,xm as Za,iw as _a,ow as $a,Rm as ab,sw as bb,aw as cb,hw as db,Xs as eb,Qs as fb,Js as gb,Nw as hb,Pw as ib,rt as jb,it as kb,hp as lb,na as mb,_r as nb,wr as ob,br as pb,vr as qb,Ea as rb,xa as sb,$p as tb,Np as ub,Wb as vb,Vb as wb,Zb as xb};
16
- //# sourceMappingURL=chunk-E2EWYPY6.js.map
16
+ //# sourceMappingURL=chunk-5S7E72FY.js.map
@@ -1,2 +1,2 @@
1
- import{ka as I,la as b}from"./chunk-L5LDSRO2.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="de8a82e1-0b02-5d5a-9086-686529a1ccab")}catch{}})();var v="blocked_by",D="blocks",T=Object.freeze([v,D]),y="no-active-blocker";function l(e){return e.trim().toLowerCase()}function p(e){let n=new Set,t=typeof e.blocked_by=="string"?l(e.blocked_by):"";t.length>0&&t!==y&&n.add(t);for(let o of e.dependencies??[]){let c=typeof o.id=="string"?l(o.id):"";o.kind===v&&c.length>0&&c!==y&&n.add(c)}return[...n].sort((o,c)=>o.localeCompare(c))}function k(e){let n=new Map;for(let t of e){let o=l(t.id);o.length!==0&&n.set(o,new Set(p(t)))}for(let t of e){let o=l(t.id);if(o.length!==0)for(let c of t.dependencies??[]){let s=c.kind===D&&typeof c.id=="string"?l(c.id):"";if(s.length===0||s===y)continue;let d=n.get(s)??new Set;d.add(o),n.set(s,d)}}return new Map([...n].map(([t,o])=>[t,[...o].sort((c,s)=>c.localeCompare(s))]))}function S(e,n){let t=l(e.id);return t.length>0?k(n).get(t)??p(e):p(e)}function B(e,n,t,o){let c=e;return(typeof c.id=="string"?o?.get(l(c.id))??S(c,[...n.values()]):p(e)).map(d=>{let r=n.get(l(d));return r?{id:d,title:r.title,status:r.status,resolved:b(r.status,t)}:{id:d,title:null,status:null,resolved:!1}})}function O(e,n,t){return B(e,n,t)}function K(e,n){let t=new Map(e.map(d=>[l(d.id),d])),o=k(e),c=new Set([...C(n),...n.blocked_statuses]),s=new Set;for(let d of e){let r=I(d.status,n);if(!c.has(r))continue;(n.blocked_statuses.has(r)||B(d,t,n,o).some(f=>!f.resolved))&&s.add(l(d.id))}return s}function C(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function A(e,n,t){let o=[l(e)],c=new Set;for(;o.length>0;){let s=o.pop();if(!c.has(s)){c.add(s);for(let d of n.get(s)??[]){if(!b(d.status,t))return!0;o.push(l(d.id))}}}return!1}function L(e){let n=new Map,t=new Map,o=new Map,c=k(e);for(let s of e){n.set(l(s.id),s);let d=typeof s.parent=="string"?s.parent.trim():"";if(d.length>0){let r=l(d),a=t.get(r)??[];a.push(s),t.set(r,a)}for(let r of c.get(l(s.id))){let a=l(r),f=o.get(a)??[];f.push(s.id),o.set(a,f)}}return{itemsById:n,childrenByParent:t,blockedByReverse:o,blockerIdsByItem:c}}function M(e,n,t){let{itemsById:o,childrenByParent:c,blockedByReverse:s,blockerIdsByItem:d}=L(n),r=new Set([...C(t),...t.blocked_statuses]),a=new Set(n.filter(i=>!b(i.status,t)).map(i=>l(i.id))),f=[],h=[],m=0,_=0;for(let i of e){if(!r.has(I(i.status,t)))continue;if(m+=1,A(i.id,c,t)){_+=1;continue}let g=B(i,o,t,d).filter(u=>!u.resolved),E=(s.get(l(i.id))??[]).filter(u=>a.has(l(u))).sort((u,x)=>u.localeCompare(x)),w={item:i,open_blockers:g,unblocks:E},N=t.blocked_statuses.has(I(i.status,t));g.length===0&&!N?f.push(w):h.push(w)}return{ready:f,blocked:h,active_count:m,container_count:_}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cc271a73-9767-54bb-a142-d4d4569e3c6a")}catch{}})();export{T as a,p as b,k as c,S as d,O as e,K as f,M as g};
2
- //# sourceMappingURL=chunk-GMYPD4FX.js.map
1
+ import{pa as I,qa as b}from"./chunk-IFLWKY2R.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="de8a82e1-0b02-5d5a-9086-686529a1ccab")}catch{}})();var v="blocked_by",D="blocks",T=Object.freeze([v,D]),y="no-active-blocker";function l(e){return e.trim().toLowerCase()}function p(e){let n=new Set,t=typeof e.blocked_by=="string"?l(e.blocked_by):"";t.length>0&&t!==y&&n.add(t);for(let o of e.dependencies??[]){let c=typeof o.id=="string"?l(o.id):"";o.kind===v&&c.length>0&&c!==y&&n.add(c)}return[...n].sort((o,c)=>o.localeCompare(c))}function k(e){let n=new Map;for(let t of e){let o=l(t.id);o.length!==0&&n.set(o,new Set(p(t)))}for(let t of e){let o=l(t.id);if(o.length!==0)for(let c of t.dependencies??[]){let s=c.kind===D&&typeof c.id=="string"?l(c.id):"";if(s.length===0||s===y)continue;let d=n.get(s)??new Set;d.add(o),n.set(s,d)}}return new Map([...n].map(([t,o])=>[t,[...o].sort((c,s)=>c.localeCompare(s))]))}function S(e,n){let t=l(e.id);return t.length>0?k(n).get(t)??p(e):p(e)}function B(e,n,t,o){let c=e;return(typeof c.id=="string"?o?.get(l(c.id))??S(c,[...n.values()]):p(e)).map(d=>{let r=n.get(l(d));return r?{id:d,title:r.title,status:r.status,resolved:b(r.status,t)}:{id:d,title:null,status:null,resolved:!1}})}function O(e,n,t){return B(e,n,t)}function K(e,n){let t=new Map(e.map(d=>[l(d.id),d])),o=k(e),c=new Set([...C(n),...n.blocked_statuses]),s=new Set;for(let d of e){let r=I(d.status,n);if(!c.has(r))continue;(n.blocked_statuses.has(r)||B(d,t,n,o).some(f=>!f.resolved))&&s.add(l(d.id))}return s}function C(e){return e.active_statuses.size>0?e.active_statuses:new Set([e.open_status])}function A(e,n,t){let o=[l(e)],c=new Set;for(;o.length>0;){let s=o.pop();if(!c.has(s)){c.add(s);for(let d of n.get(s)??[]){if(!b(d.status,t))return!0;o.push(l(d.id))}}}return!1}function L(e){let n=new Map,t=new Map,o=new Map,c=k(e);for(let s of e){n.set(l(s.id),s);let d=typeof s.parent=="string"?s.parent.trim():"";if(d.length>0){let r=l(d),a=t.get(r)??[];a.push(s),t.set(r,a)}for(let r of c.get(l(s.id))){let a=l(r),f=o.get(a)??[];f.push(s.id),o.set(a,f)}}return{itemsById:n,childrenByParent:t,blockedByReverse:o,blockerIdsByItem:c}}function M(e,n,t){let{itemsById:o,childrenByParent:c,blockedByReverse:s,blockerIdsByItem:d}=L(n),r=new Set([...C(t),...t.blocked_statuses]),a=new Set(n.filter(i=>!b(i.status,t)).map(i=>l(i.id))),f=[],h=[],m=0,_=0;for(let i of e){if(!r.has(I(i.status,t)))continue;if(m+=1,A(i.id,c,t)){_+=1;continue}let g=B(i,o,t,d).filter(u=>!u.resolved),E=(s.get(l(i.id))??[]).filter(u=>a.has(l(u))).sort((u,x)=>u.localeCompare(x)),w={item:i,open_blockers:g,unblocks:E},N=t.blocked_statuses.has(I(i.status,t));g.length===0&&!N?f.push(w):h.push(w)}return{ready:f,blocked:h,active_count:m,container_count:_}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cc271a73-9767-54bb-a142-d4d4569e3c6a")}catch{}})();export{T as a,p as b,k as c,S as d,O as e,K as f,M as g};
2
+ //# sourceMappingURL=chunk-AUFH5H35.js.map