@unbrained/pm-cli 2026.9.29 → 2026.9.30

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 (88) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +9 -0
  3. package/dist/cli/main.js +1 -1
  4. package/dist/cli-bundle/bundle-manifest.json +156 -156
  5. package/dist/cli-bundle/chunks/{chunk-4DOL43PF.js → chunk-6XTJLOKW.js} +2 -2
  6. package/dist/cli-bundle/chunks/{chunk-S5A2UIRV.js → chunk-6YEET7XI.js} +22 -22
  7. package/dist/cli-bundle/chunks/{chunk-U3QJGJYN.js → chunk-A6NDNRCK.js} +3 -3
  8. package/dist/cli-bundle/chunks/{chunk-5KEPG36D.js → chunk-BNAT4EYR.js} +9 -9
  9. package/dist/cli-bundle/chunks/{chunk-OTLIM22J.js → chunk-BTCE36JS.js} +2 -2
  10. package/dist/cli-bundle/chunks/{chunk-SJI55O65.js → chunk-BX4LEJX4.js} +2 -2
  11. package/dist/cli-bundle/chunks/{chunk-GP6QTYSD.js → chunk-EGAIIWI3.js} +2 -2
  12. package/dist/cli-bundle/chunks/chunk-FYTXVVZG.js +2 -0
  13. package/dist/cli-bundle/chunks/{chunk-SC6JHXFT.js → chunk-O23CQ5T4.js} +27 -27
  14. package/dist/cli-bundle/chunks/{chunk-SEJ53XDN.js → chunk-UIAH7UFK.js} +65 -65
  15. package/dist/cli-bundle/chunks/{chunk-2AQKVJMW.js → chunk-USTAFHIM.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-PJSQAWWQ.js → chunk-XRN3JYNN.js} +73 -73
  17. package/dist/cli-bundle/chunks/{chunk-P75SO5HO.js → chunk-YM342ELM.js} +2 -2
  18. package/dist/cli-bundle/chunks/{register-list-query-R3ELWWPY.js → register-list-query-SYNBVMNG.js} +2 -2
  19. package/dist/cli-bundle/chunks/{register-mutation-WHXJXIHJ.js → register-mutation-4GSUK23D.js} +2 -2
  20. package/dist/cli-bundle/chunks/{register-operations-7ASWBYQG.js → register-operations-7FCJUC4Z.js} +2 -2
  21. package/dist/cli-bundle/chunks/{register-setup-FDRTUG54.js → register-setup-YTWW2KL5.js} +2 -2
  22. package/dist/cli-bundle/focused-chunks/{chunk-MRH4A542.js → chunk-3CAZ7Z4R.js} +2 -2
  23. package/dist/cli-bundle/focused-chunks/{chunk-5MC57KRC.js → chunk-4AORVUT4.js} +2 -2
  24. package/dist/cli-bundle/focused-chunks/{chunk-FBIRNSYP.js → chunk-AKB3JN57.js} +33 -33
  25. package/dist/cli-bundle/focused-chunks/{chunk-T4H6Q44B.js → chunk-EFD4ATS7.js} +2 -2
  26. package/dist/cli-bundle/focused-chunks/{chunk-NXQZMKW5.js → chunk-EVMH4SKN.js} +2 -2
  27. package/dist/cli-bundle/focused-chunks/{chunk-6OXJVE74.js → chunk-IDB6E3ZV.js} +27 -27
  28. package/dist/cli-bundle/focused-chunks/{chunk-2O3QFI3G.js → chunk-IQBFYQF2.js} +2 -2
  29. package/dist/cli-bundle/focused-chunks/{chunk-NY6FLQTN.js → chunk-KZULQIAG.js} +2 -2
  30. package/dist/cli-bundle/focused-chunks/{chunk-KLKKCHWM.js → chunk-MOUCTR72.js} +2 -2
  31. package/dist/cli-bundle/focused-chunks/{chunk-7URX7FMY.js → chunk-OMBDUJWZ.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/{chunk-AZE7KUHG.js → chunk-RIJQQOEZ.js} +2 -2
  33. package/dist/cli-bundle/focused-chunks/{chunk-IFBA3ZAT.js → chunk-T4PZJQG4.js} +2 -2
  34. package/dist/cli-bundle/focused-chunks/{chunk-DZVOCJFY.js → chunk-UPOMLSW7.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-AVP5C674.js → chunk-XB5Q2P7Z.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/{chunk-K3AIMRIK.js → chunk-XUCXRZZZ.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/{chunk-4A4DO5ZT.js → chunk-ZJ3CLTV4.js} +2 -2
  38. package/dist/cli-bundle/main.js +2 -2
  39. package/dist/cli-bundle/sdk-authoring.js +1 -1
  40. package/dist/cli-bundle/sdk-contracts.js +1 -1
  41. package/dist/cli-bundle/sdk-core.js +22 -22
  42. package/dist/cli-bundle/sdk-governance.js +1 -1
  43. package/dist/cli-bundle/sdk-graph.js +1 -1
  44. package/dist/cli-bundle/sdk-merge.js +32 -32
  45. package/dist/cli-bundle/sdk-query.js +1 -1
  46. package/dist/cli-bundle/sdk-runtime.js +1 -1
  47. package/dist/cli-bundle/sdk-testing.js +1 -1
  48. package/dist/cli-bundle/sdk.js +2 -2
  49. package/dist/core/extensions/extension-types.d.ts +13 -0
  50. package/dist/core/extensions/extension-types.js +1 -1
  51. package/dist/core/history/workspace-history.d.ts +17 -0
  52. package/dist/core/history/workspace-history.js +1 -1
  53. package/dist/sdk/extension-command-context.d.ts +1 -7
  54. package/dist/sdk/extension-command-context.js +1 -1
  55. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  56. package/dist/sdk/lifecycle/update.d.ts +2 -0
  57. package/dist/sdk/lifecycle/update.js +1 -1
  58. package/dist/sdk/merge/install.js +1 -1
  59. package/dist/sdk/public-surface.json +1 -1
  60. package/dist/sdk/runtime.js +1 -1
  61. package/dist/sdk/structured-mutations.js +1 -1
  62. package/dist/sdk/testing.js +1 -1
  63. package/docs/MERGE_SAFETY.md +11 -6
  64. package/docs/README.md +1 -0
  65. package/docs/RELEASE_RELIABILITY.md +26 -4
  66. package/docs/SDK_AUDITED_MUTATIONS.md +52 -0
  67. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +4 -3
  68. package/marketplace.json +2 -2
  69. package/package.json +1 -1
  70. package/packages/pm-beads/package.json +1 -1
  71. package/packages/pm-calendar/package.json +1 -1
  72. package/packages/pm-command-kit/package.json +1 -1
  73. package/packages/pm-digital-twin/package.json +1 -1
  74. package/packages/pm-governance-audit/package.json +1 -1
  75. package/packages/pm-guide-shell/package.json +1 -1
  76. package/packages/pm-kanban/package.json +1 -1
  77. package/packages/pm-lifecycle-hooks/package.json +1 -1
  78. package/packages/pm-linked-test-adapters/package.json +1 -1
  79. package/packages/pm-search-advanced/package.json +1 -1
  80. package/packages/pm-templates/package.json +1 -1
  81. package/packages/pm-todos/package.json +1 -1
  82. package/packages/pm-vcs/package.json +1 -1
  83. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  84. package/plugins/pm-claude/package.json +2 -2
  85. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  86. package/plugins/pm-codex/package.json +2 -2
  87. package/plugins/pm-codex/plugin.json +1 -1
  88. package/dist/cli-bundle/chunks/chunk-D32HVIB2.js +0 -2
@@ -1,4 +1,4 @@
1
- import{$ as dt,E as Vt,F as co,Ia as So,O as nt,Q as le,Qa as G,R as rt,Ra as Io,S as ot,Sa as To,T as mo,Ua as Ce,V as yo,Va as Ro,W as _o,Wa as Ao,X as st,Xa as Do,Y as wo,Ya as Fo,Z as at,Za as Mo,_ as ct,aa as vo,ab as $o,bb as Oo,db as jo,ea as bo,eb as Uo,fa as Xt,g as so,h as ao,hb as Bo,ib as Jt,jb as Zt,kb as W,oa as ko,ob as Ho,pb as Go,ub as qo,wb as zo,za as pe}from"./chunk-DZVOCJFY.js";import{e as zt,f as Kt,g as Kr,h as Vr}from"./chunk-7URX7FMY.js";import{Na as Nr,Va as Lr}from"./chunk-AVP5C674.js";import{$ as te,$a as Yt,Aa as ro,Ab as me,C as ee,Db as go,Ha as tt,Hb as Ee,Ia as oo,Ja as io,Jb as Eo,Mb as Qt,Nb as Co,Ob as xo,Pb as lt,S as N,Sa as $,T as A,Tb as No,U as Q,Ub as Lo,Va as lo,Wa as uo,X as to,Xb as Po,Za as fo,e as Yr,ea as no,f as Xr,g as Qr,h as Jr,i as Zr,jc as Wo,m as Se,rb as it,tb as po,v as eo,vb as B,wb as ue,xb as fe,zb as ho}from"./chunk-6OXJVE74.js";import{b as Ir,n as P,p as X}from"./chunk-4A4DO5ZT.js";import{$ as m,$c as Ve,Be as qt,Ca as be,Cd as Gr,Da as ze,H as ce,Ia as Dr,Ja as Fr,Jc as C,M as Ht,N as We,Oc as ke,Sa as F,Sc as Pr,Td as M,V as Cr,Wd as Wr,Xd as E,Ya as T,Yc as de,Yd as qr,Z as xr,Zc as jr,Zd as H,_a as Mr,aa as p,ab as Wt,bd as Ye,cb as Ke,cd as Xe,dd as Ur,de as Qe,fe as Je,hd as Br,he as Ze,i as Er,id as Hr,ke as zr,le as et,qb as $r,sa as Tr,ta as qe,ua as Rr,wa as Ar,xb as Or,za as Gt}from"./chunk-MRH4A542.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]="5f9ac16a-d51e-5f69-9379-1d3b2e971014")}catch{}})();var Hs=["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"],en=class extends Error{receipt;constructor(t){super(`Complete-list certification failed: ${t.map(n=>n.code).join(", ")}.`),this.name="PmCompleteListValidationError",this.receipt={contract_version:1,contract:"complete_list",findings:t,recovery:{suggested_retry:"pm list --all --output-include full --strict-read --no-truncate --output-budget unbounded --output-limit unbounded --json",sdk:"await client.listAllComplete()"}}}};function Nf(e={}){return Gr({excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0},["full"])}function q(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function x(e,t,n,r){t&&e.push({code:n,message:r})}function Gs(e,t){let n=q(e.completeness)?e.completeness:{};x(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),x(t,n.status!=="complete"&&n.status!=="partial","source_unchecked","The source scan did not prove completeness.");let r=n.unreadable_item_count,o=n.unreadable_directory_count;x(t,n.status==="complete"&&(r!==0||o!==0)&&Number.isSafeInteger(r)&&Number.isSafeInteger(o),"source_incomplete","The source scan reports unreadable tracker artifacts despite a complete status."),x(t,n.status==="complete"&&(!Number.isSafeInteger(r)||!Number.isSafeInteger(o)||Number(r)<0||Number(o)<0),"source_unchecked","The source scan did not report safe non-negative unreadable counts.");let i=q(e.filters)?e.filters:{},s=q(i.runtime_filters)?i.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return x(t,i.status!=="all"||Object.keys(s).length>0||Object.keys(i).some(d=>!a.has(d)),"filtered_corpus","The list did not explicitly select every lifecycle status."),x(t,i.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),x(t,i.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),i}function Ws(e,t,n){x(n,e.has_more!==!1||e.next_cursor!==null||e.truncated!==!1||e.applied_limit!==void 0||t.no_truncate!==!0,"page_incomplete","Pagination or a row ceiling may have withheld items."),x(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=q(e.projection)?e.projection:{};x(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let o=q(e.omission_receipt)?e.omission_receipt:void 0;x(n,o===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),x(n,o!==void 0&&(o.has_omissions!==!1||o.omitted_field_group_count!==0||!Number.isSafeInteger(o.omitted_field_group_count)||!Array.isArray(o.omitted_field_groups)||o.omitted_field_groups.length!==0),"omission_receipt_invalid","The field-omission receipt is malformed or contradicts its no-omission claim."),x(n,o?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function qs(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 zs(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 Ks(e,t){let n=q(e.read_output)?e.read_output:void 0;x(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),x(t,n!==void 0&&qs(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),x(t,n!==void 0&&!zs(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),x(t,n?.strings_compacted===!0||n?.rows_compacted===!0||e.output_budget_truncation!==void 0,"budget_compaction","Universal output shaping compacted the result.");let r=q(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;x(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),x(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function Vs(e,t){let n=e.map(r=>q(r)&&typeof r.id=="string"?r.id.trim():"");x(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),x(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function Ys(e){if(!q(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:Hs[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=Gs(t,n);return Ws(t,r,n),Ks(t,n),Vs(t.items,n),{ok:n.length===0,findings:n}}function Xs(e){let t=Ys(e);if(!t.ok)throw new en(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 Lf(e){Xs(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="499dfc08-cf70-55fe-8868-65c3107e3a91")}catch{}})();async function Bf(e,t={}){let n=await qo({pmRoot:T(process.cwd(),e.path),exhaustive:t.exhaustive,...t.status===void 0?{}:{statuses:t.status.flatMap(r=>r.split(",").map(o=>o.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 o=r.id;return{...r,canonical_id:o,close_command:`pm close <duplicate-id> --duplicate-of ${o}`}}),guidance:{strategy:"review_then_close_duplicate",command:"pm close <duplicate-id> --duplicate-of <canonical-id>"}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="05df81b3-2fbd-5d83-88e3-be300091dd09")}catch{}})();var Ko=16;async function Vo(e,t,n){let r=F(t,C()).type_to_folder,o=[],i=new Set,s=n;for(;s&&o.length<Ko;){let a=s.trim().toLowerCase();if(!a||i.has(a))break;i.add(a);let d=await ue(e,s,t.id_prefix,t.item_format,r);if(!d)break;let c=await fe(d,{schema:t.schema});o.push(c.document.metadata.id),s=c.document.metadata.parent}return o}async function Kf(e){await Qr({pmRoot:e.pmRoot,principal:e.principal,itemId:e.itemId,lineageIds:await Vo(e.pmRoot,e.settings,e.itemId)})}async function Vf(e){await Jr(e)}async function Yf(e){await Zr({pmRoot:e.pmRoot,principal:e.principal,...e.itemId?{itemId:e.itemId,lineageIds:await Vo(e.pmRoot,e.settings,e.itemId)}:{}})}var Xf={lineage_depth:Ko,active_items:64,evidence_rows:32};function Yo(e){if(!e)return;let t={};for(let n of e.active_item_ids)t[n]=1;e.focused_item_id&&(t[e.focused_item_id]=1);for(let n of e.evidence){let r=/^lineage:(.+)$/u.exec(n)?.[1];r&&t[r]===void 0&&(t[r]=.75)}return Object.keys(t).length>0?t:void 0}import{encode as Qs}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]="77dd912c-158f-5280-8112-dd971be4df3b")}catch{}})();var tn=["agenda","day","week","month"],nn=["markdown","toon","json"],Js=["sun","mon","tue","wed","thu","fri","sat"],Zs=365,ea=365,Jo=28,ta=1e3;function rn(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 na(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(o=>o.trim()).filter(o=>o.length>0);if(n.length===0)throw new p("Calendar include filter must not be empty",m.USAGE);let r=new Set;for(let o of n){if(o==="deadlines"||o==="deadline"){r.add("deadlines");continue}if(o==="reminders"||o==="reminder"){r.add("reminders");continue}if(o==="events"||o==="event"||o==="scheduled"){r.add("events");continue}throw new p("Calendar include filter must be deadlines|reminders|events|scheduled|all",m.USAGE)}return r}function Zo(e,t){let n;for(let r of t){let o=Er(e,r,2);o!==null&&(n===void 0||o<n.distance)&&(n={choice:r,distance:o})}return n?.choice}function ra(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!tn.includes(t)){let n=Zo(t,tn);throw new p(`Calendar view must be one of ${tn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function oa(e){if(!e)return;let t=e.trim().toLowerCase();if(!nn.includes(t)){let n=Zo(t,nn);throw new p(`Calendar format must be one of ${nn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function rm(e,t){let n=oa(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 ia(e,t){if(e===void 0)return;let n=N(e,t);if(!n){let r=t.definitions.map(o=>o.id);throw new p(`Calendar status filter must be one of ${r.join("|")}`,m.USAGE)}return n}function sa(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 ut(e){return new Date(e).toISOString().slice(0,10)}function ei(e,t){if(!t||t==="UTC")return ut(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,o=n.find(s=>s.type==="month")?.value,i=n.find(s=>s.type==="day")?.value;if(r&&o&&i)return`${r}-${o}-${i}`}catch{}return ut(e)}function cn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function z(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function ti(e){let t=new Date(cn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return z(t.toISOString(),r)}function aa(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function ca(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function da(e,t){return E(e,t)>=0?e:t}function Xo(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function Qo(e,t){e.set(t,(e.get(t)??0)+1)}function la(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,o)=>ce(r)-ce(o));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,o)=>r-o);t.push(`by_month_day=${n.join("|")}`)}if(e.exdates&&e.exdates.length>0){let n=[...e.exdates].sort((r,o)=>r.localeCompare(o));t.push(`exdates=${n.join("|")}`)}return t.join(",")}function ni(e,t,n,r){let o=new Date(Date.UTC(e,t,n,r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds()));if(!(o.getUTCFullYear()!==e||o.getUTCMonth()!==t||o.getUTCDate()!==n))return o.toISOString()}function ri(e){return Js[new Date(e).getUTCDay()]}function ua(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function fa(e){let t=new Set;for(let n of e??[]){let r=ua(n);r&&t.add(r)}return t}function ma(e,t,n,r,o){let i=e??z(n,-(r??ea)),s=t??z(e??n,o??Zs);return{start:i,end:E(s,i)>0?s:z(i,1)}}function pa(e,t,n,r){let o=t.by_weekday!==void 0?[...t.by_weekday]:[ri(e)],i=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??ta,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:fa(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(o)].sort((s,a)=>ce(s)-ce(a)),sortedMonthDays:[...new Set(i)].sort((s,a)=>s-a),occurrences:[],produced:0}}function ft(e,t){return E(t,e.startAt)<0?"continue":e.until&&E(t,e.until)>0||E(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,E(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function mt(e,t){let n=ri(t),r=new Date(t).getUTCDate(),o=!e.weekdayFilter||e.weekdayFilter.has(n),i=!e.monthDayFilter||e.monthDayFilter.has(r);return o&&i}function ha(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!(mt(e,t)&&ft(e,t)==="stop");n+=1)t=z(t,e.interval);return e.occurrences}function ga(e,t,n){let r=ce(n),o=z(t,r),i=new Date(o);return new Date(Date.UTC(i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate(),e.startDate.getUTCHours(),e.startDate.getUTCMinutes(),e.startDate.getUTCSeconds(),e.startDate.getUTCMilliseconds())).toISOString()}function ya(e){let t=ti(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=z(t,n*e.interval*7);for(let o of e.sortedWeekdays){let i=ga(e,r,o);if(mt(e,i)&&ft(e,i)==="stop")return e.occurrences}}return e.occurrences}function _a(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let o=new Date(Date.UTC(t,n+r*e.interval,1,0,0,0,0));for(let i of e.sortedMonthDays){let s=ni(o.getUTCFullYear(),o.getUTCMonth(),i,e.startDate);if(!(!s||!mt(e,s))&&ft(e,s)==="stop")return e.occurrences}}return e.occurrences}function wa(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let o=t+r*e.interval;for(let i of e.sortedMonthDays){let s=ni(o,n,i,e.startDate);if(!(!s||!mt(e,s))&&ft(e,s)==="stop")return e.occurrences}}return e.occurrences}function va(e,t,n,r){let o=pa(e,t,n,r);return t.freq==="daily"?ha(o):t.freq==="weekly"?ya(o):t.freq==="monthly"?_a(o):wa(o)}function oi(e){return[...e].sort((t,n)=>{let r=E(t.at,n.at);if(r!==0)return r;let o=t.item_priority-n.item_priority;if(o!==0)return o;let i=t.item_id.localeCompare(n.item_id);if(i!==0)return i;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 dn(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 ba(e){return e.deadline?{at:e.deadline,date:ut(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,...dn(e),item_deadline:e.deadline}:null}function ka(e){return(e.reminders??[]).map(t=>({at:t.at,date:ut(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,...dn(e)}))}function Sa(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function Ea(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function Ca(e,t,n,r){let o=la(t.recurrence),i=Sa(t.start_at,t.end_at);return(t.recurrence?va(t.start_at,t.recurrence,n,r):[t.start_at]).map(a=>({at:a,date:t.all_day===!0?a.slice(0,10):ei(a,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:Ea(a,t,i),event_location:t.location??null,event_all_day:t.all_day??null,event_timezone:t.timezone??null,event_recurring:!!t.recurrence,event_recurrence_rule:o,...dn(e)}))}function xa(e,t,n,r){let o=[];for(let i of e){let s=n.has("deadlines")?ba(i):null;s&&o.push(s),n.has("reminders")&&o.push(...ka(i));for(let a of n.has("events")?i.events??[]:[])o.push(...Ca(i,a,t,r))}return oi(o)}function Ia(e,t,n,r,o){let i=To(t.type,n),s=t.tag?.trim().toLowerCase(),a=Io(t.priority),d=ia(t.status,r),c=t.assignee?.trim(),l=sa(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=>Ta(h,{typeFilter:i,tagFilter:s,priorityFilter:a,statusFilter:d,assigneeFilter:c,assigneeModeFilter:l,sprintFilter:u,releaseFilter:f,runtimeFieldFilters:o}))}function Ta(e,t){return Ra(e,t)&&Aa(e,t)&&ot(e,t.runtimeFieldFilters)}function Ra(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 Aa(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 Da(e,t,n){return!(t&&E(e.at,t)<0||n&&E(e.at,n)>=0)}function on(e,t,n){return e.trim().toLowerCase()==="today"?cn(t):H(e,new Date(t),n)}function Fa(e,t,n){let r=t.date?on(t.date,n,"--date"):n,o=t.past===!0,i=t.fullPeriod===!0,s=t.from?on(t.from,n,"--from"):void 0,a=t.to?on(t.to,n,"--to"):void 0;if(s&&a&&E(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 Ma(r,t,n,o,i,s,a);if(e==="day"){let c=cn(r);return sn(r,n,o,i,c,z(c,1))}if(e==="week"){let c=ti(r);return sn(r,n,o,i,c,z(c,7))}let d=aa(r);return sn(r,n,o,i,d,ca(r))}function Ma(e,t,n,r,o,i,s){if(o)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:i??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function sn(e,t,n,r,o,i){let s=n||r;return{anchor:e,start:s?o:da(o,t),end:i,periodStart:o,periodEnd:i,fullPeriod:s}}function $a(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:oi(r)}))}function Oa(e){let t=new Set,n=new Map,r=new Map,o=0,i=0,s=0,a=0;for(let d of e)t.add(d.item_id),Qo(n,d.item_type),Qo(r,d.item_status),d.kind==="deadline"?o+=1:d.kind==="reminder"?i+=1:(s+=1,d.event_recurring===!0&&(a+=1));return{events:e.length,items:t.size,deadlines:o,reminders:i,scheduled:s,by_kind:{deadline:o,reminder:i,event:s},by_type:Xo(n),by_status:Xo(r),recurring_events:a}}function Na(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function ii(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(i=>i.type==="hour")?.value,o=n.find(i=>i.type==="minute")?.value;if(r&&o)return`${r}:${o}`}catch{}return`${new Date(e).toISOString().slice(11,16)}Z`}function an(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function La(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===ei(e.event_end,e.event_timezone)?ii(e.event_end,e.event_timezone):e.event_end:null}function Pa(e){let t=`${ii(e.at,e.event_timezone)} [${e.kind}] ${e.item_id} type=${e.item_type} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder"){let n=e.reminder_text??"";return`${t} \u2014 ${n} reminder=${JSON.stringify(n)}`}if(e.kind==="event"){let n=[],r=e.event_title??e.item_title;e.event_title!==null&&e.event_title!==e.item_title&&(n.push(r),n.push(`title=${JSON.stringify(r)}`)),e.event_recurring&&(n.push("(recurring)"),n.push("recurring=true"));let i=La(e);return i&&n.push(`end=${i}`),e.event_all_day!==null&&n.push(`all_day=${e.event_all_day?"true":"false"}`),e.event_timezone&&n.push(`timezone=${e.event_timezone}`),e.event_location&&(n.push(`@ ${e.event_location}`),n.push(`location=${JSON.stringify(e.event_location)}`)),e.event_recurrence_rule&&n.push(`recurrence=${e.event_recurrence_rule}`),e.reminder_text&&n.push(`description=${JSON.stringify(e.reminder_text)}`),`${t} \u2014 ${n.join(" ")}`}return t}function om(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${Na(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: ${an(e.summary.by_kind)}`),t.push(`- by-type: ${an(e.summary.by_type)}`),t.push(`- by-status: ${an(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{$ as dt,E as Vt,F as co,Ia as So,O as nt,Q as le,Qa as G,R as rt,Ra as Io,S as ot,Sa as To,T as mo,Ua as Ce,V as yo,Va as Ro,W as _o,Wa as Ao,X as st,Xa as Do,Y as wo,Ya as Fo,Z as at,Za as Mo,_ as ct,aa as vo,ab as $o,bb as Oo,db as jo,ea as bo,eb as Uo,fa as Xt,g as so,h as ao,hb as Bo,ib as Jt,jb as Zt,kb as W,oa as ko,ob as Ho,pb as Go,ub as qo,wb as zo,za as pe}from"./chunk-UPOMLSW7.js";import{e as zt,f as Kt,g as Kr,h as Vr}from"./chunk-OMBDUJWZ.js";import{Na as Nr,Va as Lr}from"./chunk-XB5Q2P7Z.js";import{$a as fo,Ba as ro,Bb as ho,Cb as me,D as ee,Fb as go,Ia as tt,Ja as oo,Jb as Ee,Ka as io,Lb as Eo,Ob as Qt,Pb as Co,Qb as xo,Rb as lt,T as N,U as A,Ua as $,V as Q,Vb as No,Wb as Lo,Xa as lo,Y as to,Ya as uo,Zb as Po,aa as te,bb as Yt,f as Yr,fa as no,g as Xr,h as Qr,i as Jr,j as Zr,lc as Wo,n as Se,tb as it,vb as po,w as eo,xb as B,yb as ue,zb as fe}from"./chunk-IDB6E3ZV.js";import{b as Ir,n as P,p as X}from"./chunk-ZJ3CLTV4.js";import{$ as m,$c as Ve,Be as qt,Ca as be,Cd as Gr,Da as ze,H as ce,Ia as Dr,Ja as Fr,Jc as C,M as Ht,N as We,Oc as ke,Sa as F,Sc as Pr,Td as M,V as Cr,Wd as Wr,Xd as E,Ya as T,Yc as de,Yd as qr,Z as xr,Zc as jr,Zd as H,_a as Mr,aa as p,ab as Wt,bd as Ye,cb as Ke,cd as Xe,dd as Ur,de as Qe,fe as Je,hd as Br,he as Ze,i as Er,id as Hr,ke as zr,le as et,qb as $r,sa as Tr,ta as qe,ua as Rr,wa as Ar,xb as Or,za as Gt}from"./chunk-3CAZ7Z4R.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]="5f9ac16a-d51e-5f69-9379-1d3b2e971014")}catch{}})();var Hs=["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"],en=class extends Error{receipt;constructor(t){super(`Complete-list certification failed: ${t.map(n=>n.code).join(", ")}.`),this.name="PmCompleteListValidationError",this.receipt={contract_version:1,contract:"complete_list",findings:t,recovery:{suggested_retry:"pm list --all --output-include full --strict-read --no-truncate --output-budget unbounded --output-limit unbounded --json",sdk:"await client.listAllComplete()"}}}};function Nf(e={}){return Gr({excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0},["full"])}function q(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function x(e,t,n,r){t&&e.push({code:n,message:r})}function Gs(e,t){let n=q(e.completeness)?e.completeness:{};x(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),x(t,n.status!=="complete"&&n.status!=="partial","source_unchecked","The source scan did not prove completeness.");let r=n.unreadable_item_count,o=n.unreadable_directory_count;x(t,n.status==="complete"&&(r!==0||o!==0)&&Number.isSafeInteger(r)&&Number.isSafeInteger(o),"source_incomplete","The source scan reports unreadable tracker artifacts despite a complete status."),x(t,n.status==="complete"&&(!Number.isSafeInteger(r)||!Number.isSafeInteger(o)||Number(r)<0||Number(o)<0),"source_unchecked","The source scan did not report safe non-negative unreadable counts.");let i=q(e.filters)?e.filters:{},s=q(i.runtime_filters)?i.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return x(t,i.status!=="all"||Object.keys(s).length>0||Object.keys(i).some(d=>!a.has(d)),"filtered_corpus","The list did not explicitly select every lifecycle status."),x(t,i.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),x(t,i.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),i}function Ws(e,t,n){x(n,e.has_more!==!1||e.next_cursor!==null||e.truncated!==!1||e.applied_limit!==void 0||t.no_truncate!==!0,"page_incomplete","Pagination or a row ceiling may have withheld items."),x(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=q(e.projection)?e.projection:{};x(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let o=q(e.omission_receipt)?e.omission_receipt:void 0;x(n,o===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),x(n,o!==void 0&&(o.has_omissions!==!1||o.omitted_field_group_count!==0||!Number.isSafeInteger(o.omitted_field_group_count)||!Array.isArray(o.omitted_field_groups)||o.omitted_field_groups.length!==0),"omission_receipt_invalid","The field-omission receipt is malformed or contradicts its no-omission claim."),x(n,o?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function qs(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 zs(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 Ks(e,t){let n=q(e.read_output)?e.read_output:void 0;x(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),x(t,n!==void 0&&qs(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),x(t,n!==void 0&&!zs(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),x(t,n?.strings_compacted===!0||n?.rows_compacted===!0||e.output_budget_truncation!==void 0,"budget_compaction","Universal output shaping compacted the result.");let r=q(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;x(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),x(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function Vs(e,t){let n=e.map(r=>q(r)&&typeof r.id=="string"?r.id.trim():"");x(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),x(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function Ys(e){if(!q(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:Hs[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=Gs(t,n);return Ws(t,r,n),Ks(t,n),Vs(t.items,n),{ok:n.length===0,findings:n}}function Xs(e){let t=Ys(e);if(!t.ok)throw new en(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 Lf(e){Xs(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="499dfc08-cf70-55fe-8868-65c3107e3a91")}catch{}})();async function Bf(e,t={}){let n=await qo({pmRoot:T(process.cwd(),e.path),exhaustive:t.exhaustive,...t.status===void 0?{}:{statuses:t.status.flatMap(r=>r.split(",").map(o=>o.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 o=r.id;return{...r,canonical_id:o,close_command:`pm close <duplicate-id> --duplicate-of ${o}`}}),guidance:{strategy:"review_then_close_duplicate",command:"pm close <duplicate-id> --duplicate-of <canonical-id>"}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="05df81b3-2fbd-5d83-88e3-be300091dd09")}catch{}})();var Ko=16;async function Vo(e,t,n){let r=F(t,C()).type_to_folder,o=[],i=new Set,s=n;for(;s&&o.length<Ko;){let a=s.trim().toLowerCase();if(!a||i.has(a))break;i.add(a);let d=await ue(e,s,t.id_prefix,t.item_format,r);if(!d)break;let c=await fe(d,{schema:t.schema});o.push(c.document.metadata.id),s=c.document.metadata.parent}return o}async function Kf(e){await Qr({pmRoot:e.pmRoot,principal:e.principal,itemId:e.itemId,lineageIds:await Vo(e.pmRoot,e.settings,e.itemId)})}async function Vf(e){await Jr(e)}async function Yf(e){await Zr({pmRoot:e.pmRoot,principal:e.principal,...e.itemId?{itemId:e.itemId,lineageIds:await Vo(e.pmRoot,e.settings,e.itemId)}:{}})}var Xf={lineage_depth:Ko,active_items:64,evidence_rows:32};function Yo(e){if(!e)return;let t={};for(let n of e.active_item_ids)t[n]=1;e.focused_item_id&&(t[e.focused_item_id]=1);for(let n of e.evidence){let r=/^lineage:(.+)$/u.exec(n)?.[1];r&&t[r]===void 0&&(t[r]=.75)}return Object.keys(t).length>0?t:void 0}import{encode as Qs}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]="77dd912c-158f-5280-8112-dd971be4df3b")}catch{}})();var tn=["agenda","day","week","month"],nn=["markdown","toon","json"],Js=["sun","mon","tue","wed","thu","fri","sat"],Zs=365,ea=365,Jo=28,ta=1e3;function rn(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 na(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(o=>o.trim()).filter(o=>o.length>0);if(n.length===0)throw new p("Calendar include filter must not be empty",m.USAGE);let r=new Set;for(let o of n){if(o==="deadlines"||o==="deadline"){r.add("deadlines");continue}if(o==="reminders"||o==="reminder"){r.add("reminders");continue}if(o==="events"||o==="event"||o==="scheduled"){r.add("events");continue}throw new p("Calendar include filter must be deadlines|reminders|events|scheduled|all",m.USAGE)}return r}function Zo(e,t){let n;for(let r of t){let o=Er(e,r,2);o!==null&&(n===void 0||o<n.distance)&&(n={choice:r,distance:o})}return n?.choice}function ra(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!tn.includes(t)){let n=Zo(t,tn);throw new p(`Calendar view must be one of ${tn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function oa(e){if(!e)return;let t=e.trim().toLowerCase();if(!nn.includes(t)){let n=Zo(t,nn);throw new p(`Calendar format must be one of ${nn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,m.USAGE)}return t}function rm(e,t){let n=oa(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 ia(e,t){if(e===void 0)return;let n=N(e,t);if(!n){let r=t.definitions.map(o=>o.id);throw new p(`Calendar status filter must be one of ${r.join("|")}`,m.USAGE)}return n}function sa(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 ut(e){return new Date(e).toISOString().slice(0,10)}function ei(e,t){if(!t||t==="UTC")return ut(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,o=n.find(s=>s.type==="month")?.value,i=n.find(s=>s.type==="day")?.value;if(r&&o&&i)return`${r}-${o}-${i}`}catch{}return ut(e)}function cn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function z(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function ti(e){let t=new Date(cn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return z(t.toISOString(),r)}function aa(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function ca(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function da(e,t){return E(e,t)>=0?e:t}function Xo(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function Qo(e,t){e.set(t,(e.get(t)??0)+1)}function la(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,o)=>ce(r)-ce(o));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,o)=>r-o);t.push(`by_month_day=${n.join("|")}`)}if(e.exdates&&e.exdates.length>0){let n=[...e.exdates].sort((r,o)=>r.localeCompare(o));t.push(`exdates=${n.join("|")}`)}return t.join(",")}function ni(e,t,n,r){let o=new Date(Date.UTC(e,t,n,r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds()));if(!(o.getUTCFullYear()!==e||o.getUTCMonth()!==t||o.getUTCDate()!==n))return o.toISOString()}function ri(e){return Js[new Date(e).getUTCDay()]}function ua(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function fa(e){let t=new Set;for(let n of e??[]){let r=ua(n);r&&t.add(r)}return t}function ma(e,t,n,r,o){let i=e??z(n,-(r??ea)),s=t??z(e??n,o??Zs);return{start:i,end:E(s,i)>0?s:z(i,1)}}function pa(e,t,n,r){let o=t.by_weekday!==void 0?[...t.by_weekday]:[ri(e)],i=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??ta,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:fa(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(o)].sort((s,a)=>ce(s)-ce(a)),sortedMonthDays:[...new Set(i)].sort((s,a)=>s-a),occurrences:[],produced:0}}function ft(e,t){return E(t,e.startAt)<0?"continue":e.until&&E(t,e.until)>0||E(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,E(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function mt(e,t){let n=ri(t),r=new Date(t).getUTCDate(),o=!e.weekdayFilter||e.weekdayFilter.has(n),i=!e.monthDayFilter||e.monthDayFilter.has(r);return o&&i}function ha(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!(mt(e,t)&&ft(e,t)==="stop");n+=1)t=z(t,e.interval);return e.occurrences}function ga(e,t,n){let r=ce(n),o=z(t,r),i=new Date(o);return new Date(Date.UTC(i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate(),e.startDate.getUTCHours(),e.startDate.getUTCMinutes(),e.startDate.getUTCSeconds(),e.startDate.getUTCMilliseconds())).toISOString()}function ya(e){let t=ti(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=z(t,n*e.interval*7);for(let o of e.sortedWeekdays){let i=ga(e,r,o);if(mt(e,i)&&ft(e,i)==="stop")return e.occurrences}}return e.occurrences}function _a(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let o=new Date(Date.UTC(t,n+r*e.interval,1,0,0,0,0));for(let i of e.sortedMonthDays){let s=ni(o.getUTCFullYear(),o.getUTCMonth(),i,e.startDate);if(!(!s||!mt(e,s))&&ft(e,s)==="stop")return e.occurrences}}return e.occurrences}function wa(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let o=t+r*e.interval;for(let i of e.sortedMonthDays){let s=ni(o,n,i,e.startDate);if(!(!s||!mt(e,s))&&ft(e,s)==="stop")return e.occurrences}}return e.occurrences}function va(e,t,n,r){let o=pa(e,t,n,r);return t.freq==="daily"?ha(o):t.freq==="weekly"?ya(o):t.freq==="monthly"?_a(o):wa(o)}function oi(e){return[...e].sort((t,n)=>{let r=E(t.at,n.at);if(r!==0)return r;let o=t.item_priority-n.item_priority;if(o!==0)return o;let i=t.item_id.localeCompare(n.item_id);if(i!==0)return i;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 dn(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 ba(e){return e.deadline?{at:e.deadline,date:ut(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,...dn(e),item_deadline:e.deadline}:null}function ka(e){return(e.reminders??[]).map(t=>({at:t.at,date:ut(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,...dn(e)}))}function Sa(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function Ea(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function Ca(e,t,n,r){let o=la(t.recurrence),i=Sa(t.start_at,t.end_at);return(t.recurrence?va(t.start_at,t.recurrence,n,r):[t.start_at]).map(a=>({at:a,date:t.all_day===!0?a.slice(0,10):ei(a,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:Ea(a,t,i),event_location:t.location??null,event_all_day:t.all_day??null,event_timezone:t.timezone??null,event_recurring:!!t.recurrence,event_recurrence_rule:o,...dn(e)}))}function xa(e,t,n,r){let o=[];for(let i of e){let s=n.has("deadlines")?ba(i):null;s&&o.push(s),n.has("reminders")&&o.push(...ka(i));for(let a of n.has("events")?i.events??[]:[])o.push(...Ca(i,a,t,r))}return oi(o)}function Ia(e,t,n,r,o){let i=To(t.type,n),s=t.tag?.trim().toLowerCase(),a=Io(t.priority),d=ia(t.status,r),c=t.assignee?.trim(),l=sa(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=>Ta(h,{typeFilter:i,tagFilter:s,priorityFilter:a,statusFilter:d,assigneeFilter:c,assigneeModeFilter:l,sprintFilter:u,releaseFilter:f,runtimeFieldFilters:o}))}function Ta(e,t){return Ra(e,t)&&Aa(e,t)&&ot(e,t.runtimeFieldFilters)}function Ra(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 Aa(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 Da(e,t,n){return!(t&&E(e.at,t)<0||n&&E(e.at,n)>=0)}function on(e,t,n){return e.trim().toLowerCase()==="today"?cn(t):H(e,new Date(t),n)}function Fa(e,t,n){let r=t.date?on(t.date,n,"--date"):n,o=t.past===!0,i=t.fullPeriod===!0,s=t.from?on(t.from,n,"--from"):void 0,a=t.to?on(t.to,n,"--to"):void 0;if(s&&a&&E(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 Ma(r,t,n,o,i,s,a);if(e==="day"){let c=cn(r);return sn(r,n,o,i,c,z(c,1))}if(e==="week"){let c=ti(r);return sn(r,n,o,i,c,z(c,7))}let d=aa(r);return sn(r,n,o,i,d,ca(r))}function Ma(e,t,n,r,o,i,s){if(o)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:i??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function sn(e,t,n,r,o,i){let s=n||r;return{anchor:e,start:s?o:da(o,t),end:i,periodStart:o,periodEnd:i,fullPeriod:s}}function $a(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:oi(r)}))}function Oa(e){let t=new Set,n=new Map,r=new Map,o=0,i=0,s=0,a=0;for(let d of e)t.add(d.item_id),Qo(n,d.item_type),Qo(r,d.item_status),d.kind==="deadline"?o+=1:d.kind==="reminder"?i+=1:(s+=1,d.event_recurring===!0&&(a+=1));return{events:e.length,items:t.size,deadlines:o,reminders:i,scheduled:s,by_kind:{deadline:o,reminder:i,event:s},by_type:Xo(n),by_status:Xo(r),recurring_events:a}}function Na(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function ii(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(i=>i.type==="hour")?.value,o=n.find(i=>i.type==="minute")?.value;if(r&&o)return`${r}:${o}`}catch{}return`${new Date(e).toISOString().slice(11,16)}Z`}function an(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function La(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===ei(e.event_end,e.event_timezone)?ii(e.event_end,e.event_timezone):e.event_end:null}function Pa(e){let t=`${ii(e.at,e.event_timezone)} [${e.kind}] ${e.item_id} type=${e.item_type} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder"){let n=e.reminder_text??"";return`${t} \u2014 ${n} reminder=${JSON.stringify(n)}`}if(e.kind==="event"){let n=[],r=e.event_title??e.item_title;e.event_title!==null&&e.event_title!==e.item_title&&(n.push(r),n.push(`title=${JSON.stringify(r)}`)),e.event_recurring&&(n.push("(recurring)"),n.push("recurring=true"));let i=La(e);return i&&n.push(`end=${i}`),e.event_all_day!==null&&n.push(`all_day=${e.event_all_day?"true":"false"}`),e.event_timezone&&n.push(`timezone=${e.event_timezone}`),e.event_location&&(n.push(`@ ${e.event_location}`),n.push(`location=${JSON.stringify(e.event_location)}`)),e.event_recurrence_rule&&n.push(`recurrence=${e.event_recurrence_rule}`),e.reminder_text&&n.push(`description=${JSON.stringify(e.reminder_text)}`),`${t} \u2014 ${n.join(" ")}`}return t}function om(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${Na(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: ${an(e.summary.by_kind)}`),t.push(`- by-type: ${an(e.summary.by_type)}`),t.push(`- by-status: ${an(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(`- ${Pa(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 ja(t.join(`
3
3
  `))}function im(e){return Qs(e)}function ja(e){let t=e.length;for(;t>0&&e[t-1]===`
4
4
  `;)t-=1;return e.slice(0,t)}function Ua(e){let t=M(),n=ra(e.view),r=Fa(n,e,t),o=G(e.limit),i=na(e.include),s=rn(e.recurrenceLookaheadDays,"Calendar recurrence lookahead days"),a=rn(e.recurrenceLookbackDays,"Calendar recurrence lookback days"),d=rn(e.occurrenceLimit,"Calendar occurrence limit");if(d!==void 0&&d<1)throw new p("Calendar occurrence limit must be >= 1",m.USAGE);let c=i.has("events")&&!i.has("deadlines")&&!i.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:o,includeSources:i,occurrenceLimit:d,recurrenceLookaheadDays:u?Jo:s,recurrenceLookbackWindowDays:u&&a===void 0?0:a,eventsOnlyCapApplied:u}}function Ba(e,t){t&&e.push(`recurring_events_default_cap_applied:lookback=0d,lookahead=${Jo}d -- use --recurrence-lookback-days/--recurrence-lookahead-days or --to for wider range`)}function Ha(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 Ga(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 si(e,t){let n=T(process.cwd(),t.path);await B(n);let r=Ua(e),o=await $(n),i=P(o.schema),s=X(o.schema),a=rt(e,s,"calendar"),d=F(o,C()),c=[];Ba(c,r.eventsOnlyCapApplied);let l=await me(n,o.item_format,d.type_to_folder,c,o.schema),u=Ia(l,e,d,i,a),f=ma(r.rangeBounds.start,r.rangeBounds.end,r.nowValue,r.recurrenceLookbackWindowDays,r.recurrenceLookaheadDays),g=xa(u,f,r.includeSources,r.occurrenceLimit).filter(k=>Da(k,r.rangeBounds.start,r.rangeBounds.end)),_=r.limit===void 0?g:g.slice(0,r.limit),y=$a(_),w=[...new Set(c)].sort((k,v)=>k.localeCompare(v));return{view:r.view,output_default:"markdown",now:r.nowValue,anchor:r.rangeBounds.anchor,range:Ga(e,r.rangeBounds),filters:Ha(e,a),summary:Oa(_),events:_,days:y,...w.length>0?{warnings:w}:{}}}import qa from"node:fs/promises";import li 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]="94a81e04-bb02-5c2e-9362-4cf7212d66e6")}catch{}})();var ln={version:1,aliases:{}};function pt(e=[]){let t=new Set(Se),n=r=>{/^[a-z0-9]+(?:-[a-z0-9]+)*$/u.test(r)&&t.add(r)};for(let r of e){for(let o of Object.keys(r.provenance_environment_keys??{}))n(o);for(let o of Object.keys(r.provenance_resolvers??{}))n(o);for(let o of r.provenance_unavailable_dimensions??[])n(o)}return[...t].sort()}function ai(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 un(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 Wa(e,t=Se){let n=new Set(t),r=new Map,o=e.provenance===void 0?[]:typeof e.provenance=="string"?[e.provenance]:e.provenance;for(let i of o.flatMap(s=>s.split(","))){let s=i.indexOf("=");if(s<0)throw new p(`Provenance predicate must use dimension=value; received "${i.trim()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let a=i.slice(0,s).trim().toLowerCase(),d=i.slice(s+1).trim();if(!n.has(a))throw new p(`Unknown provenance dimension "${a||i.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 "${i.trim()}".`,m.USAGE,{code:"invalid_provenance_predicate"});let c=r.get(a)??new Set;c.add(d),r.set(a,c)}return r}function ht(e,t=ln,n={}){let r=un(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 gt(e,t=ln,n=Se){let r=ai(e.harness),o=ai(e.agentInstance),i=Wa(e,n);return s=>{let d=un(s,t).agent_harness;if(r&&(!d||!r.has(d))||o&&!o.has(s.agent_instance??""))return!1;for(let[c,l]of i){let u=s.agent_provenance?.[c];if(!u||!l.has(u.value))return!1}return!0}}function yt(e,t=ln,n=Se){let r=new Set(n),o=new Map,i=0;for(let s of e){for(let d of Object.keys(s.agent_provenance??{}))r.add(d);un(s,t).agent_harness?i+=1:o.set(s.author,(o.get(s.author)??0)+1)}return{entries:e.length,vocabulary_version:t.version,harness:{resolved:i,unresolved:e.length-i,unresolved_authors:[...o].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]="03488490-bc4a-5988-9ceb-46800c6d7833")}catch{}})();var za=20,Ka=5,Va=15,Ya="-24h";function vm(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 Xa={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 ci(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 o=n==="--from"&&/^\d+[hdwm]$/iu.test(r)?`-${r}`:r;return H(o,new Date(t),n)}function Qa(e,t,n){return!(e.ts.length===0&&(t||n)||t&&E(e.ts,t)<0||n&&E(e.ts,n)>=0)}function di(e,t){return t===void 0?e:e.slice(0,t)}function xe(e,t=""){return typeof e=="string"?e:t}function Ja(e,t){return{...t,id:e,ts:xe(t.ts),author:xe(t.author,"unknown"),op:xe(t.op,"unknown"),patch:Array.isArray(t.patch)?t.patch:[],before_hash:xe(t.before_hash),after_hash:xe(t.after_hash)}}function Za(e){return[...e].sort((t,n)=>{let r=n.ts.localeCompare(t.ts);if(r!==0)return r;let o=t.id.localeCompare(n.id);return o!==0?o:t.op.localeCompare(n.op)})}async function ec(e){try{return(await qa.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort((t,n)=>t.localeCompare(n))}catch(t){if(Rr(t))return[];throw t}}function tc(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 nc(e,t,n){if(e.unbounded!==!0)return t!==void 0?t:n==="digest"?Va:n==="compact"?za:Ka}function rc(e,t){let n=M(),r=t==="digest",o=ci(e.to??(r?n:void 0),n,"--to"),i=ci(e.from??(r?Ya:void 0),e.from===void 0&&r?o:n,"--from");if(i&&o&&E(i,o)>=0)throw new p("Activity --from must be before --to",m.USAGE);let s=le(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:i,to:o,limit:nc(e,s,t),limitSource:e.unbounded===!0||s!==void 0?"explicit":"default",harness:e.harness,agentInstance:e.agentInstance,provenance:e.provenanceFilter}}async function oc(e){let t=T(process.cwd(),e.path);return await B(t),{pmRoot:t,settings:await $(t)}}async function ic(e){let t=F(e.settings,C()),n=await me(e.pmRoot,e.settings.item_format,t.type_to_folder,void 0,e.settings.schema);await uo({pmRoot:e.pmRoot,settings:e.settings,itemIds:n.map(o=>o.id),commandLabel:"activity"});let r=li.join(e.pmRoot,"history");return await ke({path:r,scope:"project"}),{historyDir:r,itemsById:new Map(n.map(o=>[o.id,{title:o.title,type:o.type,status:o.status}]))}}function sc(e,t,n){return n.op&&e.op!==n.op||n.author&&e.author!==n.author?!1:Qa(t,n.from,n.to)}async function ac(e,t){let n=[];for(let r of await ec(e)){let o=r.slice(0,-6);if(t.id&&o!==t.id)continue;let i=await te(li.join(e,r),o);for(let s of i){let a=Ja(o,s);sc(s,a,t)&&n.push(a)}}return n}function cc(e){return e.map(t=>({id:t.id,op:t.op,ts:t.ts,author:t.author,...t.message?{msg:t.message}:{}}))}function dc(e){let t=[...e.entries()].sort(([r,o],[i,s])=>s-o||r.localeCompare(i)),n=t.slice(0,4).map(([r,o])=>`${r}:${o}`);return t.length>n.length&&n.push(`+${t.length-n.length}`),n.join(",")}function lc(e,t){let n=new Map;for(let r of e){let o=n.get(r.id);if(o===void 0){n.set(r.id,{firstTs:r.ts,lastTs:r.ts,eventCount:1,operations:new Map([[r.op,1]])});continue}o.eventCount+=1,E(r.ts,o.firstTs)<0&&(o.firstTs=r.ts),E(r.ts,o.lastTs)>0&&(o.lastTs=r.ts),o.operations.set(r.op,(o.operations.get(r.op)??0)+1)}return[...n.entries()].map(([r,o])=>{let i=t.get(r);return{id:r,type:i?.type??"unknown",status:i?.status??"unknown",title:(i?.title??"(item metadata unavailable)").slice(0,160),event_count:o.eventCount,first_ts:o.firstTs,last_ts:o.lastTs,operations:dc(o.operations)}}).sort((r,o)=>E(o.last_ts,r.last_ts)||r.id.localeCompare(o.id))}function uc(e){let t=new Map;for(let o of e)t.set(o.op,(t.get(o.op)??0)+1);let n=[...t.entries()].sort((o,i)=>i[1]-o[1]||o[0].localeCompare(i[0])),r=n.slice(0,8);return r.length<n.length&&r.push([`+${String(n.length-r.length)}`,n.slice(r.length).reduce((o,[,i])=>o+i,0)]),Object.fromEntries(r)}function fc(e,t,n,r,o){if(e==="digest"){let s=lc(t,r),a=di(s,n);return{rows:{activity_digest:a},compact:!1,totalRows:s.length,returnedRows:a.length}}let i=di(t,n);return e==="compact"?{rows:{compact_activity:cc(i)},compact:!0,totalRows:t.length,returnedRows:i.length}:e==="provenance"?{rows:{provenance_activity:i.map(o)},compact:!1,totalRows:t.length,returnedRows:i.length}:{rows:{activity:i},compact:!1,totalRows:t.length,returnedRows:i.length}}async function ui(e,t){let n=await oc(t),r=tc(e),o=rc(e,r),i=await ic(n),s=pt(n.settings.agent_identity.harness_signals),a=n.settings.agent_identity.identity_vocabulary,d=gt({harness:o.harness,agentInstance:o.agentInstance,provenance:o.provenance},a,s),c=Za(await ac(i.historyDir,o)).filter(d),l=fc(r,c,o.limit,i.itemsById,f=>ht(f,a,{itemId:f.id})),u=l.totalRows-l.returnedRows;return{...l.rows,compact:l.compact,projection:{mode:r,row_key:Xa[r]},omission_receipt:Ve("activity",r),count:l.returnedRows,total_count:l.totalRows,limit:o.limit??null,omitted_count:u,has_more:u>0,...r==="digest"?{activity_summary:{window:{from:o.from,to:o.to},event_count:c.length,item_count:l.totalRows,author_count:new Set(c.map(f=>f.author)).size,operation_counts:uc(c)}}:{},...e.provenanceSummary===!0?{provenance_summary:yt(c,a,s)}:{},applied_bound:{kind:o.limit===void 0?"unbounded":"limit",source:o.limitSource,value:o.limit??null}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9a4301eb-d8a5-52c0-8bf0-f65b3b9a96a3")}catch{}})();var fi="1970-01-01T00:00:00.000Z";function Ie(e){if(typeof e!="string")return null;let t=e.trim();if(!Wr(t)&&!/^\d{4}-\d{2}-\d{2}$/u.test(t))return null;try{return H(t,new Date(Number.NaN),"context signal recency coordinate")}catch{return null}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="33841a67-2bd5-5cbd-a9d4-14833ddcf9d2")}catch{}})();var mn=["structural","recency","activity_density","graph_proximity","claim_focus","priority_pressure","risk_pressure","deadline_pressure","knowledge_density","author_affinity","usage_affinity","semantic_similarity"],mc=Symbol("no-context-author"),pc=Symbol("no-item-assignee");function mi(e,t){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return n.length>0?n:t}function hc(e){if(typeof e!="string")return;let t=/^v?(\d{4})\.(\d{1,2})\.(\d{1,2})(?:$|[-+])/u.exec(e.trim());if(!t)return;let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]),i=new Date(Date.UTC(n,r-1,o));return i.getUTCFullYear()===n&&i.getUTCMonth()===r-1&&i.getUTCDate()===o?i.toISOString():void 0}function gc(e){let t=hc(e.release);return t!==void 0?{source:"release_cohort",coordinate:t}:{source:"created_at",coordinate:Ie(e.created_at)??fi}}function yc(e){if(!["substantive_history","release_cohort","created_at"].includes(e.source)||(e.source==="substantive_history"?e.history_op!==void 0&&typeof e.history_op!="string"||e.event_class!==void 0&&e.event_class!=="substantive":e.history_op!==void 0||e.event_class!==void 0))throw new TypeError("Context signal recency provenance must match its source");let t=Ie(e.coordinate);if(t===null)throw new TypeError("Context signal recency coordinate must be a valid absolute timestamp with millisecond precision");return{...e,coordinate:t}}function _c(e,t){let n=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(n)?1-Math.min(Math.max(n,0),t)/t:0}function wc(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 vc(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 _t(e,t,n){return e?.[t]??n}function wt(e,t){let n=new Map(e.map(c=>{let l=t.recencyEvidence?.[c.id];return[c.id,l===void 0?gc(c):yc(l)]})),r=[...e].sort((c,l)=>{let u=n.get(c.id).coordinate,f=n.get(l.id).coordinate;return E(f,u)||c.id.localeCompare(l.id)}),o=new Map(r.map((c,l)=>[c.id,l])),i=Math.max(e.length-1,1),s=mi(t.author,mc),a=N("in_progress",t.statusRegistry),d=Date.parse(t.now);return e.map(c=>{let l=mi(c.assignee,pc)===s,u=(c.comments?.length??0)+(c.notes?.length??0)+(c.learnings?.length??0);return{id:c.id,item:c,signal_provenance:{recency:n.get(c.id)},signals:{recency:e.length===1?1:1-o.get(c.id)/i,activity_density:t.activityDensity?.[c.id],graph_proximity:_t(t.graphProximity,c.id,c.parent?.3:0),claim_focus:_t(t.claimFocus,c.id,A(c.status,t.statusRegistry)===a?1:l?.75:0),priority_pressure:_c(c.priority,4),risk_pressure:vc(c.risk),deadline_pressure:wc(c.deadline,d),knowledge_density:_t(t.knowledgeDensity,c.id,Math.min(u/5,1)),author_affinity:_t(t.authorAffinity,c.id,l?1:0),usage_affinity:t.usageAffinity?.[c.id],semantic_similarity:t.semanticSimilarity?.[c.id]}}})}var bc="context_relevance",kc={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},Sc=new TextEncoder;function Ec(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,o]of Object.entries(n.signals??{})){if(r==="structural"||!mn.includes(r))throw new TypeError(`Unknown context relevance signal: ${r}`);if(o!==void 0&&(!Number.isFinite(o)||o<0||o>1))throw new TypeError(`Context relevance signal ${r} must be a finite number from 0 to 1`)}}}function Cc(e){let t={...kc};for(let[n,r]of Object.entries(e??{}))r!==void 0&&mn.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 hi(e,t={}){Ec(e);let n=Cc(t.weights),r=Math.max(e.length-1,1),o=new Set(["structural"]);for(let a of e)for(let[d,c]of Object.entries(a.signals??{}))c!==void 0&&o.add(d);let i=mn.filter(a=>o.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 i){let g=c[h];if(g===void 0)continue;let _=g*n[h];l[h]=_,u+=_,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:i,ranked:s}}async function xc(e,t={}){let n=hi(e,t);if(!t.scorer)return n;let r=await t.scorer({candidates:e,default_report:n}),o=new Map;for(let s of r){if(o.has(s.id)||!Number.isFinite(s.score))throw new TypeError("Context relevance scorer must return one finite score for every candidate");o.set(s.id,s.score)}if(o.size!==e.length||e.some(s=>!o.has(s.id)))throw new TypeError("Context relevance scorer must return one finite score for every candidate");let i=n.ranked.map(s=>{let a=o.get(s.id);return{...s,score:a,contributions:{custom:a}}});return i.sort((s,a)=>a.score-s.score||s.baseline_rank-a.baseline_rank),i.forEach((s,a)=>{s.rank=a+1}),{model:"custom",available_signals:n.available_signals,ranked:i}}async function vt(e,t,n={}){let r=hi(t,n),o=await Pr(bc,{surface:e,candidates:t,default_report:r});if(!o.handled)return o.warnings.length>0?{...r,warnings:o.warnings}:r;if(!Array.isArray(o.result)||!o.result.every(i=>typeof i=="object"&&i!==null&&typeof i.id=="string"&&typeof i.score=="number"&&Number.isFinite(i.score)))return{...r,warnings:[...o.warnings,"extension_context_relevance_invalid_result"]};try{let i=await xc(t,{...n,scorer:()=>o.result});return o.warnings.length>0?{...i,warnings:o.warnings}:i}catch{return{...r,warnings:[...o.warnings,"extension_context_relevance_invalid_result"]}}}var Ic=["ndcg","reciprocal_rank","required_recall","continuity_coverage","token_budget_adherence"];function pi(e,t){return e.length===0?1:e.filter(n=>t.has(n)).length/e.length}function Tc(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),o=c=>c.reduce((l,u,f)=>l+(2**u-1)/Math.log2(f+2),0),i=o(r),s=n.findIndex(c=>c>0),a=new Set(e.ranked_ids),d=e.actual_tokens<=e.token_budget;return{ndcg:i===0?1:o(n)/i,reciprocal_rank:s<0?0:1/(s+1),required_recall:pi(e.required_ids??[],a),continuity_coverage:pi(e.continuity_ids??[],a),token_budget_adherence:d?1:e.token_budget/e.actual_tokens,within_token_budget:d}}function Rc(e){return Math.ceil(Sc.encode(JSON.stringify(e)).byteLength/4)}function Ac(e){return Math.round(e*1e4)/1e4}function Dc(e,t){let n=t==="context"?[...e.high_level??[],...e.low_level??[],...e.blocked_fallback??[]].map(i=>i.id):[...e.recommended?[e.recommended]:[],...e.ready??[]].map(i=>i.id),r=new Set(n),o=(e.ranking?.items??[]).filter(i=>r.has(i.id)).map(i=>({id:i.id,contributions:i.contributions}));return{rankedIds:n,attribution:o}}async function Fc(e,t){if(e.id.trim().length===0||e.rationale.trim().length===0)throw new TypeError("Context evaluation scenarios require non-empty id and rationale values");let n=e.surface==="context"?await t.context({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"}):await t.next({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"}),{rankedIds:r,attribution:o}=Dc(n,e.surface),i={...n,ranking:void 0},s=Rc(i);return{id:e.id,surface:e.surface,rationale:e.rationale,ranked_ids:r,actual_tokens:s,metrics:Tc({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:o}}function Mc(e,t){if(e.length===0)throw new TypeError("Context evaluation requires at least one scenario report");let n=Ic;for(let i of n)if(!Number.isFinite(t[i]))throw new TypeError(`Context evaluation threshold ${i} must be a finite number`);let r=Object.fromEntries(n.map(i=>[i,Ac(e.reduce((s,a)=>s+a.metrics[i],0)/e.length)])),o=n.filter(i=>r[i]<t[i]).map(i=>`${i}:${r[i]}<${t[i]}`);return{scenario_count:e.length,aggregate:r,scenarios:[...e],passed:o.length===0,failures:o}}async function Tm(e,t,n){let r=[];for(let o of e)r.push(await Fc(o,t));return Mc(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]="a533ce49-ef4f-50a0-9785-acd716999b29")}catch{}})();var $c={balanced:{redundancyPenalty:.35,uncertaintyPenalty:.2},context:{redundancyPenalty:.45,uncertaintyPenalty:.15},next:{redundancyPenalty:.25,uncertaintyPenalty:.3}},Oc=["identity","summary","full"];function Nc(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=Oc.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 Lc(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=$c[t];if(!n)throw new TypeError("Unknown context packing profile");let r=e.redundancyPenalty??n.redundancyPenalty,o=e.uncertaintyPenalty??n.uncertaintyPenalty;if(!Number.isFinite(r)||r<0||r>1||!Number.isFinite(o)||o<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:o,profile:t}}function Pc(e){let t=new Set;for(let n of e){if(Nc(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 jc(e,t,n,r,o){let i=-1,s=0;for(let a=0;a<e.length;a+=1){if(a%128===0&&o()>=r)return{index:i,evaluated:s,timedOut:!0};let d=e[a];if(d.token_costs.identity>t)continue;s+=1;let c=i<0?void 0:e[i],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))&&(i=a)}return{index:i,evaluated:s,timedOut:!1}}function Uc(e){let t=new Set,n=[],r=e.tokenBudget,o=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)},i=c=>{let l=c.token_costs.identity;n.push({...c,projection:"identity",tokens:l,marginal_value:o(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&&i(c);let s=e.ordered.filter(c=>!c.required),a=!0,d=0;for(;s.length>0;){let c=jc(s,r,o,e.deadline,e.readClock);if(d+=c.evaluated,c.timedOut&&(a=!1),c.index<0||c.timedOut)break;i(s.splice(c.index,1)[0])}return{included:n,remaining:r,selectionComplete:a,evaluatedCandidates:d}}function Bc(e,t){let n=t;for(let r of["summary","full"]){let o=r==="summary"?"identity":"summary",i=[...e].sort((s,a)=>{let d=s.token_costs[r]-s.token_costs[o],c=a.token_costs[r]-a.token_costs[o];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 i){if(s.projection!==o)continue;let a=s.token_costs[r]-s.tokens;a>n||(s.projection=r,s.tokens+=a,n-=a)}}return n}function gi(e,t){let n=Lc(t),r=Pc(e),o=t.readClock??performance.now.bind(performance),i=t.latencyBudgetMs===void 0?Number.POSITIVE_INFINITY:o()+t.latencyBudgetMs,s=Uc({ordered:r,tokenBudget:t.tokenBudget,redundancyPenalty:n.redundancy,uncertaintyPenalty:n.uncertainty,deadline:i,readClock:o}),{included:a}=s,d=Bc(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 Te from"node:fs/promises";import Re from"node:path";import{createHash as yi,randomUUID as Hc}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="190679b7-4723-5c76-be57-2ec88b92b109")}catch{}})();var pn=3,hn=2,_i=["recency","activity_density","graph_proximity","priority_pressure","risk_pressure","knowledge_density"],Gc=new Set(["substantive_history","release_cohort","created_at"]),Wc={context_signal_store_invalid:{code:"context_signal_store_invalid",meaning:"The persisted context-signal snapshot was unreadable or invalid and was rebuilt from authoritative items.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot can be loaded without the warning."},context_signal_store_stale:{code:"context_signal_store_stale",meaning:"The persisted context-signal snapshot did not match the authoritative cursor or item corpus and was rebuilt.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot is now fresh."},context_signal_store_write_failed:{code:"context_signal_store_write_failed",meaning:"Context signals were rebuilt in memory, but the derived snapshot could not be persisted.",recovery_command:"pm context",recovery_effect:"Retry the derived snapshot write and confirm the warning clears after storage access is restored."}};function he(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function wi(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=1}function qc(e){let t={};for(let n of _i){let r=e[n];if(r!==void 0){if(!wi(r))throw new TypeError(`Context relevance signal ${n} must be a finite number from 0 to 1`);t[n]=r}}return t}function zc(e,t){let n=e.map(o=>[o.id,t(o)]),r=Math.max(0,...n.map(([,o])=>o));return Object.fromEntries(n.map(([o,i])=>[o,r===0?0:i/r]))}function Kc(e){let t=new Map(e.map(o=>[o.id,0])),n=o=>{t.set(o,(t.get(o)??0)+1)};for(let o of e){typeof o.parent=="string"&&o.parent.trim()&&(n(o.id),n(o.parent.trim()));for(let i of o.dependencies??[])typeof i.id!="string"||!i.id.trim()||(n(o.id),n(i.id.trim()))}let r=Math.max(0,...t.values());return Object.fromEntries(e.map(o=>[o.id,r===0?0:t.get(o.id)/r]))}function vi(e,t){return{...t,activityDensity:t.activityDensity??zc(e,n=>(n.comments?.length??0)+(n.notes?.length??0)+(n.learnings?.length??0)+(n.test_runs?.length??0)),graphProximity:t.graphProximity??Kc(e)}}function _n(e){let t=yi("sha256");for(let{id:n,signal_provenance:{recency:r}}of[...e].sort((o,i)=>o.id.localeCompare(i.id)))t.update(JSON.stringify([n,r.source,r.coordinate,r.history_op??null,r.event_class??null]));return`sha256:${t.digest("hex")}`}function Vc(e){if(!he(e))return null;let t=e.signal_provenance;if(![typeof e.id=="string",he(e.signals),he(t)].every(Boolean))return null;let n=t.recency;if(!he(n))return null;let r=Ie(n.coordinate);if(r===null)return null;let o=new Set(_i),i=Object.entries(e.signals);return!i.every(([s,a])=>o.has(s)&&wi(a))||![typeof n.source=="string"&&Gc.has(n.source),["undefined","string"].includes(typeof n.history_op),[void 0,"substantive","maintenance"].includes(n.event_class),n.source==="substantive_history"?n.event_class===void 0||n.event_class==="substantive":n.history_op===void 0&&n.event_class===void 0].every(Boolean)?null:{id:e.id,signals:Object.fromEntries(i),signal_provenance:{recency:{source:n.source,coordinate:r,history_op:n.history_op,event_class:n.event_class}}}}function Yc(e,t){let n=Array.from(e,Vc);if(n.some(o=>o===null))return null;let r=n;return new Set(r.map(o=>o.id)).size!==r.length||r.some(o=>o.id.trim().length===0)||t!==_n(r)?null:r.sort((o,i)=>o.id.localeCompare(i.id))}function Xc(e){if(!he(e)||e.format_version!==pn||e.signal_set_version!==hn||typeof e.source_cursor!="string"||e.source_cursor.trim().length===0||typeof e.recency_evidence_fingerprint!="string"||!/^sha256:[a-f0-9]{64}$/u.test(e.recency_evidence_fingerprint)||typeof e.generated_at!="string"||!Number.isFinite(Date.parse(e.generated_at))||e.source!=="derived_index"&&e.source!=="scan_fallback"||!Array.isArray(e.items))return null;let t=Yc(e.items,e.recency_evidence_fingerprint);return t===null?null:{format_version:pn,signal_set_version:hn,source_cursor:e.source_cursor,recency_evidence_fingerprint:e.recency_evidence_fingerprint,generated_at:e.generated_at,source:e.source,items:t}}function bi(e){if(typeof e.sourceCursor!="string"||e.sourceCursor.trim().length===0)throw new TypeError("Context signal source cursor must be non-empty");if(!Number.isFinite(Date.parse(e.now)))throw new TypeError("Context signal snapshot clock must be a valid timestamp");if(e.source!=="derived_index"&&e.source!=="scan_fallback")throw new TypeError("Context signal snapshot source must be derived_index or scan_fallback")}function ki(e,t,n=_n(e)){let r=e.map(({id:i})=>i);if(new Set(r).size!==r.length||r.some(i=>i.trim().length===0))throw new TypeError("Context signal snapshot item IDs must be unique and non-empty");let o=e.map(({id:i,signals:s,signal_provenance:a})=>({id:i,signals:qc(s),signal_provenance:a})).sort((i,s)=>i.id.localeCompare(s.id));return Object.freeze({format_version:pn,signal_set_version:hn,source_cursor:t.sourceCursor,recency_evidence_fingerprint:n,generated_at:t.now,source:t.source,items:Object.freeze(o.map(i=>Object.freeze(i)))})}function jm(e,t){return bi(t),ki(wt(e,vi(e,t)),t)}var gn=class{filePath;constructor(t){if(typeof t!="string"||t.trim().length===0)throw new TypeError("Context signal store path must be non-empty");this.filePath=Re.resolve(t)}async read(){try{return JSON.parse(await Te.readFile(this.filePath,"utf8"))}catch(t){if(he(t)&&qe(t))return null;throw t}}async write(t){let n=Re.dirname(this.filePath);await Te.mkdir(n,{recursive:!0});let r=Re.join(n,`.${Re.basename(this.filePath)}.${Hc()}.tmp`);try{await Te.writeFile(r,`${JSON.stringify(t)}
@@ -9,4 +9,4 @@ import{$ as dt,E as Vt,F as co,Ia as So,O as nt,Q as le,Qa as G,R as rt,Ra as Io
9
9
  `)}catch{}}function Ts(e,t){return[`vector_index_stale:${e}`,`vector_index_recovery:${t.args.join(" ")}`,...t.follow_up_args?[`vector_index_recovery_follow_up:${t.follow_up_args.join(" ")}`]:[]]}function Lt(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 U=ze;function Ue(e){let t=C(),n=so(t,e);if(!n)return null;let r=n.runtime_definition??n.definition,o=r.query,i=r.queryExpansion??r.query_expansion,s=r.rerank,a=U(r.name)??U(n.definition.name)??e;if(!a)return null;let d={providerName:a,...typeof o=="function"?{query:o}:{},...typeof i=="function"?{queryExpansion:i}:{},...typeof s=="function"?{rerank:s}:{}};return!d.query&&!d.queryExpansion&&!d.rerank?null:d}function er(e){let t=U(e.search?.provider),n=Ue(t);return n?.query?{providerName:n.providerName,query:n.query}:null}function tr(e){let t=C(),n=U(e.vector_store?.adapter),r=ao(t,n);if(!r)return null;let o=r.runtime_definition??r.definition,i=o.query;if(typeof i!="function")return null;let s=o.upsert;return{adapterName:U(o.name)??U(r.definition.name)??n??"extension",query:i,...typeof s=="function"?{upsert:s}:{}}}function nr(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 o=new Set,i=[];for(let s of r){if(typeof s!="object"||s===null)continue;let a=U(s.id),d=s.score;if(!a||typeof d!="number"||!Number.isFinite(d)||o.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}`];o.add(a),i.push({item:c.metadata,score:d,matched_fields:u})}return i}function rr(e,t){let n=[],r=new Map;for(let o of e){if(r.has(o.id))continue;let i=t.get(o.id);i&&(r.set(o.id,o.score),n.push({item:i.metadata,score:o.score,matched_fields:["semantic"]}))}return{semanticHits:n,semanticScores:r}}function $t(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)),o=e.filter(c=>!r.has(c.item.id)),i=o.reduce((c,l)=>Math.max(c,l.score),0),s=n.sort((c,l)=>l.score-c.score),a=i+s.length+1;return[...s.map((c,l)=>({...c,score:a-l,matched_fields:["id"]})),...o]}function Pt(e,t,n,r,o="semantic"){let i=new Map(n.map(u=>[u.item.id,u.score])),s=new Map(n.map(u=>[u.item.id,u.matched_fields])),a=je(t),d=je(i),c=new Set([...t.keys(),...i.keys()]),l=1-r;return[...c].map(u=>{let f=e.get(u),h=a.get(u)??0,g=d.get(u)??0,_=h*r+g*l;if(_<=0)return null;let y=new Set;t.has(u)&&y.add(o);for(let w of s.get(u)??[])y.add(w);return{item:f.metadata,score:_,matched_fields:[...y].sort((w,k)=>w.localeCompare(k))}}).filter(u=>u!==null)}function or(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function ir(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:hs(vo(s,{fields:e.corpusFields}))})),n=ms(t),r=ps(n,Un(e.query),e.bm25Params),o=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...r].map(([a,d])=>({item:o.get(a).metadata,score:d,matched_fields:["bm25"]}));return $t(s,e.keywordHits)}let i=Pt(o,r,e.keywordHits,e.hybridSemanticWeight,"bm25");return $t(i,e.keywordHits)}function sr(e){let t=new Map;for(let r of e)for(let o of r){let i=t.get(o.id);(!i||o.score>i.score)&&t.set(o.id,o)}let n=[...t.values()];return n.sort((r,o)=>r.score!==o.score?o.score-r.score:r.id.localeCompare(o.id)),n}function ar(e){let t=e.metadata,n=Array.isArray(t?.tags)?t.tags.join(" "):"";return[t?.title,t?.description,t?.type,t?.status,n,e.body].map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0).join(`
10
10
  `)}async function _f(e,t){let n=e.queryExpansion.enabled?ys(t,e.queryExpansion.max_queries):[t],r=n.length>0?n:[t];if(!e.queryExpansion.enabled)return r;if(e.queryExpansionExtension?.expand)try{let o=await Promise.resolve(e.queryExpansionExtension.expand({query:t,mode:e.requestedMode,settings:e.settings}));return ws(r,_s(o),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 wf(e,t,n,r){if(e.extensionVectorAdapter?.query)try{return await Promise.resolve(e.extensionVectorAdapter.query({vector:t,limit:n,settings:e.settings}))}catch(o){if(!e.vectorStore)throw new p(`Extension vector adapter query failed and no built-in fallback store is configured (${o instanceof Error?o.message:String(o)})`,m.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await Xt(e.vectorStore,t,n,r)}if(e.vectorStore)return await Xt(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 vf(e,t,n){return[...e].sort((o,i)=>o.score!==i.score?i.score-o.score:o.item.id.localeCompare(i.item.id)).slice(0,n).map(o=>{let i=t.get(o.item.id);return i?{hit:o,text:ar(i)}:null}).filter(o=>o!==null)}async function bf(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(i=>({id:i.hit.item.id,text:i.text,score:i.hit.score}))})),o=ks(r);return o.length>0?new Map(o.map(i=>[i.id,i.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 kf(e,t,n){let r=await bf(e,t,n);if(r)return r;let o=n.map(i=>({id:i.hit.item.id,text:i.text}));try{return await Es(e.provider,e.rerank.model,t,o,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function Sf(e,t){let n=new Set(t.keys()),r=e.map(o=>{let i=t.get(o.item.id);if(i===void 0)return o;let s=new Set(o.matched_fields);return s.add("rerank"),{...o,score:i,matched_fields:[...s].sort((a,d)=>a.localeCompare(d))}});return r.sort((o,i)=>{let s=n.has(o.item.id),a=n.has(i.item.id);return s!==a?s?-1:1:o.score!==i.score?i.score-o.score:o.item.id.localeCompare(i.item.id)}),r}async function Ef(e,t,n,r){if(!e.rerank.enabled||n.length<=1)return n;let o=vf(n,r,e.rerank.top_k),i=await kf(e,t,o);return i&&i.size>0?Sf(n,i):n}async function cr(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}:{},o=e.query.trim(),i=await _f(e,o),s=await st(e.provider,i,n),a=await Promise.all(s.map(async g=>await wf(e,g,t,r))),d=sr(a),c=new Map(e.filteredDocuments.map(g=>[g.metadata.id,g])),{semanticHits:l,semanticScores:u}=rr(d,c),f=u.size;if(e.requestedMode==="semantic")return{hits:$t(l,e.keywordHits),vectorMatchCount:f};let h=await Ef(e,o,Pt(c,u,e.keywordHits,e.hybridSemanticWeight),c);return{hits:$t(h,e.keywordHits),vectorMatchCount:f}}function Rs(e){let t=Ue(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function As(e){let t=Ue(U(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}import jt from"node:fs/promises";import dr 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]="6e743cc1-3ff0-58b1-bf11-351d1655864c")}catch{}})();function lr(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()})),o=[...t,...n,...r].filter(s=>s.path.length>0).sort((s,a)=>s.scope.localeCompare(a.scope)||s.path.localeCompare(a.path)),i=new Map;for(let s of o)i.set(`${s.scope}:${s.path}`,s);return[...i.values()]}async function Ds(e){let t=dr.resolve(e);try{let n=await jt.realpath(t);return{resolved:t,realpath:n}}catch{return null}}async function ur(e,t){let[n,r]=await Promise.all([Ds(e),Ds(t)]);return{projectContainmentRoot:n,globalContainmentRoot:r}}async function fr(e,t){let n=lr(e.metadata),r=[];for(let o of n){let i=o.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!i)continue;let s=dr.resolve(i.resolved,o.path);if(!Gt(i.resolved,s))continue;let a;try{a=await jt.realpath(s)}catch{continue}if(Gt(i.realpath,a))try{await ke({path:s,scope:o.scope}),r.push(await jt.readFile(s,"utf8"))}catch{}}return r.join(`
11
11
  `)}async function mr(e,t,n,r){let o=Ir(C()),i=async(c,l,u)=>{let f=async(h,g)=>{await ke({path:h,scope:"project"});let _=await jt.readFile(h,"utf8");return to(_,{format:g,schema:r,extensionFieldNames:o,onWarning:w=>s.push(w)}).body};try{return await f(l,u)}catch{let h=u==="toon"?"json_markdown":"toon",g=Wt(e,c.type,c.id,h,n);try{return await f(g,h)}catch{return s.push(`item_list_item_read_failed:${dr.relative(e,g)}`),""}}},s=[],a=await po(e,t,n,s,r),d=[];if(a.length===0){let c=await ho(e,t,n,s,r);for(let l of c){let u=Wt(e,l.type,l.id,t,n),f=await i(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 i(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))}}async function Fs(e,t,n){let r=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return r;let o=process.cwd(),i=await ur(o,Mr(o)),s=await Promise.all(n.map(async a=>[a.metadata.id,await fr(a,i)]));for(let[a,d]of s)r.set(a,d);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5ff2b814-42b0-50fc-92dd-17e9fc521982")}catch{}})();var Ms=["tag","status","type","priority"];function pr(e){let t={},n=[];for(let r of e.split(/\s+/).filter(o=>o.length>0)){let o=r.indexOf(":"),i=o>0?r.slice(0,o).toLowerCase():"",s=o>0?r.slice(o+1):"",a=Ms.includes(i)?i: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 hr(e,t,n){let r={...e};for(let o of Ms){let i=t[o];if(i!==void 0){if(ze(r[o])!==void 0){n.push(`search_inline_filter_ignored:${o}:flag_takes_precedence`);continue}r[o]=i}}return r}function $s(e,t){let n=[],r=pr(e),o=Object.keys(r.inlineFilters).length>0;if(o&&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 i=o?r.residualQuery:e,s=hr(t,r.inlineFilters,n);return{query:i,options:s,inlineWarnings:n,highlight:s.highlight===!0,includeLinked:Rt(s.includeLinked),titleExact:Rt(s.titleExact),phraseExact:Rt(s.phraseExact),matchMode:cs(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:ds(s.minScore),countOnly:s.count===!0,tokens:Dt(i),normalizedQuery:j(i),limit:le(s.limit),projection:At(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}function Os(e){if(e.after!==void 0&&e.count===!0)throw new p("Search --after cannot be combined with --count.",m.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="984a6fdc-9383-5f89-8e71-b0d3ed2a35cc")}catch{}})();function yr(e,t,n,r,o,i,s,a,d,c,l,u,f,h){let g=f?{total:0,count_only:!0}:{};if(c.mode==="compact"&&r.compact===!0){let w=ye({mode:t,matchMode:n,options:r,includeLinked:o,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:i,hybridSemanticWeight:s,runtimeFieldFilters:u});return{query:e.trim(),mode:t,...br(h),items:[],count:0,...g,filters:w,...l.length>0?{warnings:l}:{}}}let y=c.mode==="full"?null:[...c.fields];return{query:e.trim(),mode:t,mode_source:h,items:[],count:0,...g,filters:_e({effectiveMode:t,matchMode:n,options:r,includeLinked:o,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:i,hybridSemanticWeight:s,queryExpansion:a,rerank:d,runtimeFieldFilters:u??{}}),projection:{mode:c.mode,fields:y},now:M(),...l.length>0?{warnings:l}:{}}}function _r(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 i=n.slice(5);return i.length===0?null:e.item[i]??null}let r=e,o=e.item;return Object.prototype.hasOwnProperty.call(o,n)?o[n]??null:Object.prototype.hasOwnProperty.call(r,n)?r[n]??null:null}function wr(e,t){return t.mode==="full"?e.map(({matched_all_terms:n,exact_id_match:r,...o})=>o):e.map(n=>{let r={};for(let o of t.fields)r[o]=_r(n,o);return r})}function vr(e,t){return yr(e.query,e.effectiveMode,e.matchMode,e.options,e.includeLinked,e.scoreThreshold,e.hybridSemanticWeight,e.queryExpansion,e.rerank,e.projection,e.warnings,e.runtimeFieldFilters,t,e.modeSource)}function Ns(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return gr({query:e.query.trim(),mode:e.effectiveMode,...br(e.modeSource),items:[],count:t,total:t,count_only:!0,filters:ye({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 gr({query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:[],count:t,total:t,count_only:!0,filters:_e({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 br(e){return e==="settings"?{mode_source:e}:{}}function gr(e,t){return t.length===0?e:{...e,warnings:t}}function Be(e,t){return t?{...e,workspace_memory:t}:e}function Ls(e,t,n){if(!e.highlight)return{hits:n,projection:e.projection};let r=new Map(t.map(i=>[i.metadata.id,i])),o=n.map(i=>({...i,highlights:Mt(r.get(i.item.id),i.matched_fields,e.tokens)}));return e.projection.mode==="full"||e.projection.fields.includes("highlights")?{hits:o,projection:e.projection}:{hits:o,projection:{mode:e.projection.mode,fields:[...e.projection.fields,"highlights"]}}}function Ps(e,t,n,r,o,i){let s=r<n?{total:n}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return gr({query:e.query.trim(),mode:e.effectiveMode,...br(e.modeSource),items:t,count:t.length,...s,...i,filters:ye({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=o.mode==="full"?null:[...o.fields];return{query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:t,count:t.length,...s,...i,filters:_e({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:o.mode,fields:a},now:M(),...e.warnings.length>0?{warnings:e.warnings}:{}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9e7719a0-9efa-59c2-85d5-e7a5eb30d8e3")}catch{}})();var wy={applyFilters:zn,applyExactQueryFilters:qn,applyInlineQueryFilters:hr,buildHitHighlights:Mt,buildVerboseSearchFilters:_e,buildExplicitSemanticFallbackWarning:Jn,buildCompactSearchFilterSummary:ye,buildHybridLexicalScore:Qn,buildRerankCorpus:ar,buildSemanticHits:rr,classifyImplicitSemanticFallbackReason:Nt,collectErrorCauseCodes:Ot,collectExactPhraseFields:Gn,collectLinkedPaths:lr,combineHybridHits:Pt,computeBuiltInBm25Hits:ir,computeSemanticOrHybridHits:cr,resolveBuiltInBm25Mode:or,countOccurrences:Ft,dependencyEntries:Pe,documentContainsExactPhrase:Wn,emptySearchResult:yr,highlightFieldSnippet:Vn,loadDocuments:mr,markTokenRuns:Kn,parseInlineQueryFilters:pr,maybeEmitVectorIndexStaleWarning:Zn,loadLinkedCorpus:fr,mergeVectorHitsById:sr,normalizeExtensionProviderHits:nr,normalizeScoreMap:je,parseProjectionConfig:At,parseTimestampWindow:re,parseTokens:Dt,projectSearchHits:wr,readSearchFieldValue:_r,requireSemanticDependencies:Lt,resolveExtensionSearchProvider:er,resolveExtensionSearchProviderByName:Ue,resolveExtensionVectorAdapter:tr,resolveLinkedCorpusRoots:ur,scoreDocument:Yn,sortHits:Xn,stringArray:we,textEntries:K,validateSearchProjectionFields:$n};async function Cf(e,t){let n=T(process.cwd(),t.path);await B(n);let r=await $(n),o=mo(r).settings,i=P(o.schema),s=X(o.schema);$n(e.projection,s,e.query);let a=rt(e.options,s,"search"),d=F(o,C()),c=_o(o),l=bo(o,n),u=er(o),f=tr(o),h=as(e.options.semanticWeight),g=vs(o,c.active?.name??null),_=bs(o,c.active?.model??U(o.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:n,settings:o,statusRegistry:i,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:d,maxResults:On(o),scoreThreshold:e.minScoreOverride??Ln(o),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:h,hybridSemanticWeight:h??Pn(o),tuning:jn(o),providerResolution:c,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:f,bm25Mode:or({configuredProvider:U(o.search?.provider),hasEmbeddingProvider:c.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:g,queryExpansionExtension:Rs(g),rerank:_,rerankExtension:As(o),...xf({requested:e.options.mode,settings:o,configuredProvider:r.search?.provider??null,providerResolution:c,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:f})}}function xf(e){let n=yo(e.providerResolution.active?.name,e.configuredProvider)==="configured"&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null),r=e.extensionSearchProvider!==null||n,o=Nn({requested:e.requested,settings:e.settings,semanticRunnable:r});return{effectiveMode:o.mode,modeSource:o.source}}async function If(e,t){let n=await mr(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),r=nt(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),o=Do(t.statusRegistry),i=zn(n.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,r,o);return{warnings:n.warnings,allDocuments:n.documents,filteredDocuments:qn(i,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function Tf(e,t,n){let r=await Fs(e.includeLinked,t.effectiveMode,n),o=e.matchMode==="or";return n.map(i=>Qn(i,e.tokens,e.normalizedQuery,e.includeLinked,r,t.tuning,t.settings.id_prefix,o)).filter(i=>i!==null).filter(i=>e.matchMode!=="and"||i.matched_all_terms===!0)}async function Rf(e,t,n,r,o){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let i=ir({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:n,keywordHits:r,corpusFields:wo(t.settings),bm25Params:gs(t.settings),hybridSemanticWeight:t.hybridSemanticWeight});return t.bm25Mode==="auto-fallback"&&o.push(`search_${t.effectiveMode}_offline_bm25:no_embedding_provider:using_lexical_bm25`),i}async function Af(e,t,n,r){if(!t.extensionSearchProvider)return null;let o=t.providerResolution.active!==null&&(t.vectorResolution.active!==null||t.extensionVectorAdapter!==null);try{let i=await Promise.resolve(t.extensionSearchProvider.query({query:e.query,mode:t.effectiveMode,tokens:e.tokens,options:e.options,settings:t.settings,documents:n}));return nr(t.extensionSearchProvider.providerName,i,r)}catch(i){if(!o)throw new p(`Extension search provider "${t.extensionSearchProvider.providerName}" failed: ${i instanceof Error?i.message:String(i)}`,m.GENERIC_FAILURE);return null}}function Df(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 Ff(e,t,n,r,o){let i=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);o&&i&&await Zn(e.pmRoot,n,r),e.extensionSearchProvider||Lt(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function Mf(e){let{prepared:t,runtime:n,filteredDocuments:r,keywordHits:o,warnings:i,modeWasExplicit:s}=e,a=o,d=await Rf(t,n,r,o,i),c=n.effectiveMode;if(d!==null||c==="keyword")return{effectiveMode:n.effectiveMode,hits:d??a};try{if(await Ff(n,c,r,i,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 Af(t,n,r,l)??a,a===o){let{provider:u,vectorStore:f}=Lt(c,n.providerResolution,n.vectorResolution,n.extensionVectorAdapter!==null),h=await cr({requestedMode:c,query:t.query,filteredDocuments:r,keywordHits:o,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:i,settings:n.settings});a=Df(c,h,o,i)}return{effectiveMode:n.effectiveMode,hits:a}}catch(l){return i.push(Jn(n.effectiveMode,l)),{effectiveMode:"keyword",hits:o}}}async function vy(e,t,n){Os(t);let r=$s(e,t),o=await Cf(r,n),i=await If(r,o),s=i.warnings;s.push(...r.inlineWarnings);let a=await kt(i.allDocuments.map(S=>S.metadata),{pmRoot:o.pmRoot,statusRegistry:o.statusRegistry,now:M()});s.push(...a.warnings);let d=Ii(a,r.query);o.effectiveMode==="hybrid"&&o.semanticWeightProvided&&o.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let c={query:r.query,modeSource:o.modeSource,matchMode:r.matchMode,options:r.options,includeLinked:r.includeLinked,titleExact:r.titleExact,phraseExact:r.phraseExact,scoreThreshold:o.scoreThreshold,hybridSemanticWeight:o.hybridSemanticWeight,queryExpansion:o.queryExpansion,rerank:o.rerank,projection:r.projection,warnings:s,runtimeFieldFilters:o.runtimeFieldFilters};if(o.effectiveMode==="keyword"&&(i.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return Be(vr({...c,effectiveMode:o.effectiveMode},r.countOnly),d);let l=await Tf(r,o,i.filteredDocuments),u=await Mf({prepared:r,runtime:o,filteredDocuments:i.filteredDocuments,keywordHits:l,warnings:s,modeWasExplicit:r.modeWasExplicit});if(u.effectiveMode!=="keyword"&&u.hits.length===0&&(i.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return Be(vr({...c,effectiveMode:u.effectiveMode},r.countOnly),d);let f=u.hits.filter(S=>S.exact_id_match===!0||S.score>=o.scoreThreshold),h=Xn(f,o.statusRegistry),g=h.length,_=ls({sorted:h,query:r.query,mode:u.effectiveMode,searchOptions:r.options,limit:r.limit??o.maxResults}),y={...c,effectiveMode:u.effectiveMode};if(r.countOnly)return Be(Ns(y,g),d);let{hits:w,projection:k}=Ls(r,i.filteredDocuments,_.limited),v=wr(w,k);return Be(Ps(y,v,g,_.limited.length,k,_.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]="b152a753-033c-593f-8b81-feb68b0a895f")}catch{}})();var js=["ndcg","mrr","precision","recall"];function $f(e){if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("Eval minimum must be an object of metric floors");let t={};for(let[n,r]of Object.entries(e)){if(!js.some(o=>o===n))throw new TypeError(`Unknown eval minimum metric: ${n}`);if(typeof r!="number"||!Number.isFinite(r)||r<0||r>1)throw new TypeError(`Eval minimum.${n} must be a finite number in [0, 1]`);t[n]=r}return t}function ky(e,t){let n=$f(t),r=[];for(let o of js){let i=n[o];if(i===void 0)continue;let s=e[o];!Number.isFinite(s)||s<0||s>1?r.push(`${o}:invalid`):s<i&&r.push(`${o}:${s}<${i}`)}return r}export{Hs as a,en as b,Nf as c,Ys as d,Xs as e,Lf as f,Bf as g,Pp as h,Vo as i,Kf as j,Vf as k,Yf as l,Xf as m,Yo as n,rm as o,om as p,im as q,si as r,pt as s,Wa as t,ht as u,yt as v,vm as w,ui as x,mn as y,wt as z,bc as A,hi as B,xc as C,vt as D,Ic as E,Tc as F,Fc as G,Mc as H,Tm as I,$c as J,gi as K,pn as L,hn as M,Wc as N,Xc as O,jm as P,gn as Q,yn as R,bt as S,td as T,id as U,kt as V,fd as W,xi as X,md as Y,Ii as Z,pd as _,bd as $,Ae as aa,gp as ba,bn as ca,Ed as da,Cd as ea,Sn as fa,ne as ga,Cn as ha,xn as ia,In as ja,ge as ka,Me as la,Et as ma,yp as na,Cl as oa,_p as pa,Al as qa,Fp as ra,Mp as sa,$p as ta,Op as ua,Np as va,Wp as wa,qp as xa,ns as ya,rs as za,os as Aa,mh as Ba,ph as Ca,Ch as Da,On as Ea,Nn as Fa,Ln as Ga,Pn as Ha,jn as Ia,ju as Ja,ls as Ka,ye as La,_e as Ma,Ot as Na,Nt as Oa,Is as Pa,Ts as Qa,wy as Ra,vy as Sa,js as Ta,$f as Ua,ky as Va};
12
- //# sourceMappingURL=chunk-T4H6Q44B.js.map
12
+ //# sourceMappingURL=chunk-EFD4ATS7.js.map