@unbrained/pm-cli 2026.9.30 → 2026.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +12 -0
  3. package/dist/cli/register-list-query.d.ts +8 -5
  4. package/dist/cli/register-list-query.js +2 -2
  5. package/dist/cli-bundle/bundle-manifest.json +82 -82
  6. package/dist/cli-bundle/chunks/{chunk-6XTJLOKW.js → chunk-7E2EBJLY.js} +2 -2
  7. package/dist/cli-bundle/chunks/{chunk-O23CQ5T4.js → chunk-A2UPOCSW.js} +7 -7
  8. package/dist/cli-bundle/chunks/{chunk-BTCE36JS.js → chunk-AYHLUJKD.js} +2 -2
  9. package/dist/cli-bundle/chunks/{chunk-6YEET7XI.js → chunk-DGOIXJZJ.js} +42 -42
  10. package/dist/cli-bundle/chunks/{chunk-BX4LEJX4.js → chunk-HGJLVN56.js} +2 -2
  11. package/dist/cli-bundle/chunks/{chunk-A6NDNRCK.js → chunk-JAVO3Z42.js} +2 -2
  12. package/dist/cli-bundle/chunks/{chunk-EGAIIWI3.js → chunk-SCZMJ5DC.js} +2 -2
  13. package/dist/cli-bundle/chunks/{chunk-FYTXVVZG.js → chunk-TV3YDE36.js} +2 -2
  14. package/dist/cli-bundle/chunks/{chunk-XRN3JYNN.js → chunk-VWVFKPLX.js} +2 -2
  15. package/dist/cli-bundle/chunks/{register-list-query-SYNBVMNG.js → register-list-query-L6HAHW7V.js} +6 -6
  16. package/dist/cli-bundle/chunks/{register-mutation-4GSUK23D.js → register-mutation-6OCZVTW5.js} +2 -2
  17. package/dist/cli-bundle/chunks/{register-operations-7FCJUC4Z.js → register-operations-3E5U4TOE.js} +2 -2
  18. package/dist/cli-bundle/chunks/{register-setup-YTWW2KL5.js → register-setup-VUD37N4A.js} +2 -2
  19. package/dist/cli-bundle/focused-chunks/{chunk-KZULQIAG.js → chunk-6275G2AN.js} +2 -2
  20. package/dist/cli-bundle/focused-chunks/{chunk-EFD4ATS7.js → chunk-DJPP2HAK.js} +2 -2
  21. package/dist/cli-bundle/focused-chunks/{chunk-AKB3JN57.js → chunk-YBQ27KG7.js} +45 -45
  22. package/dist/cli-bundle/main.js +2 -2
  23. package/dist/cli-bundle/sdk-contracts.js +1 -1
  24. package/dist/cli-bundle/sdk-core.js +1 -1
  25. package/dist/cli-bundle/sdk-governance.js +1 -1
  26. package/dist/cli-bundle/sdk-merge.js +22 -22
  27. package/dist/cli-bundle/sdk-query.js +1 -1
  28. package/dist/cli-bundle/sdk-runtime.js +1 -1
  29. package/dist/cli-bundle/sdk-testing.js +1 -1
  30. package/dist/cli-bundle/sdk.js +1 -1
  31. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
  32. package/dist/sdk/merge/install.d.ts +2 -2
  33. package/dist/sdk/merge/install.js +1 -1
  34. package/dist/sdk/public-surface.json +1 -1
  35. package/dist/sdk/query/get.d.ts +19 -15
  36. package/dist/sdk/query/get.js +1 -1
  37. package/docs/BOUNDED_CONTEXT_READS.md +10 -7
  38. package/docs/COMMANDS.md +1 -1
  39. package/docs/MERGE_SAFETY.md +12 -6
  40. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +4 -3
  41. package/marketplace.json +2 -2
  42. package/package.json +1 -1
  43. package/packages/pm-beads/package.json +1 -1
  44. package/packages/pm-calendar/package.json +1 -1
  45. package/packages/pm-command-kit/package.json +1 -1
  46. package/packages/pm-digital-twin/package.json +1 -1
  47. package/packages/pm-governance-audit/package.json +1 -1
  48. package/packages/pm-guide-shell/package.json +1 -1
  49. package/packages/pm-kanban/package.json +1 -1
  50. package/packages/pm-lifecycle-hooks/package.json +1 -1
  51. package/packages/pm-linked-test-adapters/package.json +1 -1
  52. package/packages/pm-search-advanced/package.json +1 -1
  53. package/packages/pm-templates/package.json +1 -1
  54. package/packages/pm-todos/package.json +1 -1
  55. package/packages/pm-vcs/package.json +1 -1
  56. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  57. package/plugins/pm-claude/package.json +2 -2
  58. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  59. package/plugins/pm-codex/package.json +2 -2
  60. package/plugins/pm-codex/plugin.json +1 -1
@@ -5,8 +5,8 @@ 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
5
5
  `,{encoding:"utf8",flag:"wx"}),await Te.rename(r,this.filePath)}finally{try{await Te.rm(r,{force:!0})}catch{}}}},yn=class{adapter;constructor(t){this.adapter=t}async readOrRebuild(t,n){bi(n);let r=[],o=null;try{let f=await this.adapter.read();o=Xc(f),f!==null&&o===null&&r.push("context_signal_store_invalid")}catch{r.push("context_signal_store_invalid")}let i=t.map(f=>f.id).sort((f,h)=>f.localeCompare(h)),s=o?.items.map(f=>f.id)??[],a=wt(t,vi(t,n)),d=_n(a),c=o!==null&&o.source_cursor===n.sourceCursor&&o.recency_evidence_fingerprint===d&&o.source===n.source&&s.length===i.length&&s.every((f,h)=>f===i[h]),l;if(c&&o!==null)l=o;else{o!==null&&r.push("context_signal_store_stale"),l=ki(a,n,d);try{await this.adapter.write(l)}catch{r.push("context_signal_store_write_failed")}}let u=new Map(l.items.map(f=>[f.id,f]));return{snapshot:l,candidates:a.map(f=>({...f,signals:{...f.signals,...u.get(f.id)?.signals},signal_provenance:u.get(f.id).signal_provenance})),cache_status:c?"fresh":"rebuilt",warnings:r,warning_details:r.map(f=>Wc[f])}}};function Qc(e){let t=yi("sha256");for(let n of[...e].sort((r,o)=>r.id.localeCompare(o.id)))t.update(JSON.stringify([n.id,n.updated_at,n.status,n.parent??null,n.priority??null,n.risk??null,(n.dependencies??[]).map(r=>r.id).sort(),n.comments?.length??0,n.notes?.length??0,n.learnings?.length??0,n.test_runs?.length??0]));return`scan:${t.digest("hex")}`}async function bt(e,t){let n=t.sourceCursor!==void 0,r=t.source!==void 0;if(n!==r)throw new TypeError("Context signal source and source cursor must be provided together");if(t.storeKey!==void 0&&!/^[a-z0-9](?:[a-z0-9_-]*[a-z0-9])?$/u.test(t.storeKey))throw new TypeError("Context signal store key must be a filesystem-safe identifier");let o=n?null:await it(t.pmRoot),i=t.sourceCursor??o?.source_cursor??Qc(e),s=t.source??(o===null?"scan_fallback":"derived_index"),a=new yn(new gn(Re.join(t.pmRoot,"runtime",t.storeKey?`context-signals-${t.storeKey}.json`:"context-signals.json"))),d=t.recencyEvidence??Object.fromEntries(Object.entries(await no(t.pmRoot,e.map(c=>c.id))).map(([c,l])=>[c,{source:"substantive_history",coordinate:l.entry.ts,history_op:l.entry.op,event_class:"substantive"}]));return a.readOrRebuild(e,{...t,recencyEvidence:d,sourceCursor:i,source:s})}import Jc from"node:path";import{createHash as Zc}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]="ee5f5c8d-37f9-577d-87a7-bb43be7c1186")}catch{}})();function Si(e){return e.completed_at!==void 0?{resolved:!0,timestamp:e.completed_at,source:"completed_at",fallback:!1}:e.closed_at!==void 0?{resolved:!0,timestamp:e.closed_at,source:"closed_at",fallback:!0}:e.updated_at!==void 0?{resolved:!0,timestamp:e.updated_at,source:"updated_at",fallback:!0}:{resolved:!1}}import ed from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="51bac04a-5a6e-53b3-806f-fa0bf6f8e7b4")}catch{}})();var Ei=1,td=1e4,Ci=12;function nd(e){let t=new Date(e);return`${t.getUTCFullYear()}-Q${Math.floor(t.getUTCMonth()/3)+1}`}function rd(e,t){let n=new Set,r=e.parent;for(;r&&!n.has(r);){n.add(r);let o=t.get(r);if(!o)return;if(o.type.toLowerCase()==="epic")return o;r=o.parent}}function od(e){let t=[...e.items].sort((o,i)=>i.completion.timestamp.localeCompare(o.completion.timestamp)||o.item.id.localeCompare(i.item.id)),n=new Set,r=0;for(let{item:o}of t){let i=o.resolution??o.close_reason;i?.trim()&&n.add(i.trim()),r+=(o.notes?.length??0)+(o.learnings?.length??0)}return{kind:e.kind,key:e.key,label:e.label,item_count:t.length,first_closed_at:t.at(-1).completion.timestamp,last_closed_at:t[0].completion.timestamp,representative_items:t.slice(0,5).map(({item:{id:o,title:i}})=>({id:o,title:i})),outcomes:[...n].sort().slice(0,5),knowledge_entries:r}}function id(e,t){if(!t.sourceCursor.trim())throw new TypeError("Workspace memory source cursor must be non-empty");if(!Number.isFinite(Date.parse(t.now)))throw new TypeError("Workspace memory clock must be a valid timestamp");let n=e.filter(i=>t.statusRegistry.terminal_done_statuses.has(A(i.status,t.statusRegistry))).map(i=>{let s=Si(i);if(!s.resolved)throw new TypeError(`Completed item ${i.id} has no reporting timestamp`);return{item:i,completion:s}}),r=new Map(e.map(i=>[i.id,i])),o=new Map;for(let i of n){let{item:s,completion:a}=i,d=nd(a.timestamp),c=`epoch:${d}`,l=o.get(c)??{kind:"epoch",key:d,label:d,items:[]};l.items.push(i),o.set(c,l);let u=rd(s,r);if(u){let f=`epic:${u.id}`,h=o.get(f)??{kind:"epic",key:u.id,label:u.title,items:[]};h.items.push(i),o.set(f,h)}}return{format_version:Ei,source_cursor:t.sourceCursor,source_item_count:e.length,generated_at:t.now,completion_time_sources:n.reduce((i,{completion:s})=>(i[s.source]+=1,i),{completed_at:0,closed_at:0,updated_at:0}),rollups:[...o.values()].map(od).sort((i,s)=>s.last_closed_at.localeCompare(i.last_closed_at)||i.kind.localeCompare(s.kind)||i.key.localeCompare(s.key))}}function sd(e){return typeof e=="object"&&e!==null&&"id"in e&&typeof e.id=="string"&&e.id.length>0&&"title"in e&&typeof e.title=="string"}function ad(e){if(typeof e!="object"||e===null)return!1;let t=e,n=[t.key,t.label].every(o=>typeof o=="string"&&o.length>0),r=[t.first_closed_at,t.last_closed_at].every(o=>typeof o=="string"&&Number.isFinite(Date.parse(o)));return(t.kind==="epoch"||t.kind==="epic")&&n&&Number.isSafeInteger(t.item_count)&&t.item_count>0&&r&&Array.isArray(t.representative_items)&&t.representative_items.every(sd)&&Array.isArray(t.outcomes)&&t.outcomes.every(o=>typeof o=="string")&&Number.isSafeInteger(t.knowledge_entries)&&t.knowledge_entries>=0}function cd(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return t.format_version!==Ei||typeof t.source_cursor!="string"||!t.source_cursor.trim()||!Number.isSafeInteger(t.source_item_count)||t.source_item_count<0||typeof t.generated_at!="string"||!Number.isFinite(Date.parse(t.generated_at))||!Array.isArray(t.rollups)?null:t.rollups.every(ad)?t:null}function dd(e){return`scan:${Zc("sha256").update($r(e.map(t=>[t.id,t.updated_at,t.status,t.parent]).sort(([t],[n])=>String(t).localeCompare(String(n))))).digest("hex")}`}async function ld(e,t,n){return n!==void 0?n:(await it(t))?.source_cursor??dd(e)}async function ud(e){try{let t=cd(JSON.parse(await ed.readFile(e,"utf8")));return{snapshot:t,invalid:t===null}}catch(t){return{snapshot:null,invalid:!(typeof t=="object"&&t!==null&&"code"in t&&qe(t))}}}async function kt(e,t){let n=Math.max(1,Math.floor(t.minimumItems??td));if(e.length<n)return{snapshot:null,cache_status:"skipped",warnings:[]};let r=await ld(e,t.pmRoot,t.sourceCursor),o=Jc.join(t.pmRoot,"runtime","workspace-memory.json"),i=[],s=await ud(o),a=s.snapshot;if(s.invalid&&i.push("workspace_memory_invalid"),a?.source_cursor===r&&a.source_item_count===e.length)return{snapshot:a,cache_status:"fresh",warnings:i};a&&i.push("workspace_memory_stale");let d=id(e,{statusRegistry:t.statusRegistry,sourceCursor:r,now:t.now});try{await Ar(o,`${JSON.stringify(d)}
6
6
  `)}catch{i.push("workspace_memory_write_failed")}return{snapshot:d,cache_status:"rebuilt",warnings:i}}function fd(e,t,n=Ci){let r=Math.max(0,Math.floor(t)),o=0,i=[];for(let s of e.rollups){if(i.length>=Math.max(0,Math.floor(n)))break;let a=Math.ceil(JSON.stringify(s).length/4);o+a>r||(i.push(s),o+=a)}return i}function xi(e,t,n=Ci){if(e.snapshot===null)return;let r=fd(e.snapshot,t,n);if(r.length!==0)return{cache_status:e.cache_status==="fresh"?"fresh":"rebuilt",source_cursor:e.snapshot.source_cursor,...e.snapshot.completion_time_sources?{completion_time_sources:{...e.snapshot.completion_time_sources}}:{},rollups:r}}function md(e,t,n=5){if(e===null)return[];let r=t.trim().toLowerCase().split(/\s+/u).filter(Boolean);return r.length===0?[]:e.rollups.map(o=>({rollup:o,score:r.filter(i=>[o.key,o.label,...o.outcomes,...o.representative_items.flatMap(s=>[s.id,s.title])].join(" ").toLowerCase().includes(i)).length})).filter(({score:o})=>o>0).sort((o,i)=>i.score-o.score||i.rollup.last_closed_at.localeCompare(o.rollup.last_closed_at)||o.rollup.key.localeCompare(i.rollup.key)).slice(0,Math.max(0,Math.floor(n))).map(({rollup:o})=>o)}function Ii(e,t,n=5){let r=md(e.snapshot,t,n);if(r.length!==0)return{cache_status:e.cache_status==="fresh"?"fresh":"rebuilt",matches:r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ec0faae4-1fdb-5c7c-bcf1-eb338d73958a")}catch{}})();var pd=["markdown","toon","json","ndjson"],St=new Set(["Epic","Feature"]),Fi=10,Mi=1e4,$i=["hierarchy","activity","progress","recently_created","unparented","workload"],hd=[...$i,"blockers","files","staleness","tests"],gd=/^(\d{4})-(\d{2})-(\d{2})/,yd=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/,_d=/^(\d{4})(\d{2})(\d{2})$/,wd=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?(Z|[+-]\d{2}:?\d{2})?$/i;function vd(e){if(!e)return;let t=e.trim().toLowerCase();if(!pd.includes(t))throw new p("Context format must be one of markdown|toon|json|ndjson",m.USAGE);return t}var Ti=new Set(["id","title","type","status","priority","order","deadline","assignee","tags","tags_inherited","updated_at","parent","children_total","children_closed","completion_pct","blocked","blocker_ids","created_at"]);function bd(e){if(e===void 0)return;let t=[];for(let n of e.split(",")){let r=n.trim().toLowerCase();if(r.length!==0){if(!Ti.has(r))throw new p(`Context --fields value not projectable: ${r} (valid: ${[...Ti].join(", ")})`,m.USAGE);t.includes(r)||t.push(r)}}if(t.length===0)throw new p("Context --fields requires at least one field name",m.USAGE);return t}function Ae(e,t){return e.map(n=>{let r={},o=n;for(let i of t)r[i]=o[i]??null;return r})}function gp(e,t){let n=vd(e.format);if(t.json&&n&&n!=="json"&&n!=="ndjson")throw new p("Cannot combine --json with --format markdown|toon",m.USAGE);return t.json?n==="ndjson"?"ndjson":"json":n??"toon"}function kd(e,t){return G(e,"--limit")??(t==="full"?Number.MAX_SAFE_INTEGER:Fi)}function bn(e,t){if(e===void 0)return t;let n=typeof e=="number"?e:Number(e);if(!Number.isInteger(n)||n<1)throw new p("--token-budget must be a positive integer",m.USAGE);return n}function Sd(e,t){return t>=Mi&&e===Number.MAX_SAFE_INTEGER?Fi:e}function Ed(e,t){if(!e)return t.default_depth;let n=e.trim().toLowerCase();if(!Ht.includes(n))throw new p(`Context --depth must be one of ${Ht.join("|")}`,m.USAGE);return n}function Cd(e,t,n){if(e&&e.length>0){let o=[];for(let i of e){let s=i.trim().toLowerCase();if(!We.includes(s))throw new p(`Context --section must be one of ${We.join("|")}`,m.USAGE);o.includes(s)||o.push(s)}return o}return t==="brief"?[]:t==="full"?[...We]:(t==="deep"?hd:$i).filter(o=>n.sections[o])}function xd(e,t){return e?G(e,"--activity-limit")??t.activity_limit:t.activity_limit}function Id(e,t){if(!e)return t.stale_threshold_days;let n=e.trim().toLowerCase(),r=/^(\d+)d?$/.exec(n);if(!r)throw new p("--stale-threshold must be a number of days (e.g. 7 or 7d)",m.USAGE);let o=parseInt(r[1],10);if(o<=0)throw new p("--stale-threshold must be positive",m.USAGE);return o}function Ri(e,t){let n=A(e,t),r=N("blocked",t),o=N("draft",t);return n===t.in_progress_status?0:t.active_statuses.has(n)?1:r&&n===r?2:o&&n===o?3:t.blocked_statuses.has(n)?5:t.terminal_statuses.has(n)?7:6}function De(e,t){let n=N("closed",t);return A(e,t)===n}function kn(e,t){return A(e,t)===t.in_progress_status}function Oi(e,t){let n=A(e,t);return n!==t.in_progress_status&&t.active_statuses.has(n)}function Td(e,t){return t.blocked_statuses.has(A(e,t))}var Rd=["compact","brief","fields","includeBody","include_body","parent"];function Ad(e){let t={...e};for(let n of Rd)delete t[n];return t}function Sn(e,t){let n=t.trim().toLowerCase(),r=e.find(a=>a.id.trim().toLowerCase()===n);if(!r)return{ids:new Set,found:!1};let o=ge(e),i=Fe(r.id,o);return{ids:new Set([r.id,...i.map(a=>a.id)].map(a=>a.trim().toLowerCase())),found:!0}}function Dd(e){if(e===void 0)return;let t=e.trim();if(t.length===0)throw new p("Context --parent requires an item id",m.USAGE);return t}function Fd(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:n-r}function Md(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:E(n,r)}function $d(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function Od(e){let t=gd.exec(e)??yd.exec(e);if(!t)return!0;let n=Number.parseInt(t[1],10),r=Number.parseInt(t[2],10),o=Number.parseInt(t[3],10);return r>=1&&r<=12&&o>=1&&o<=$d(n,r-1)}function Nd(e){let t=_d.exec(e);if(t)return`${t[1]}-${t[2]}-${t[3]}`;let n=wd.exec(e);if(n){let[,r,o,i,s,a,d,c]=n,l=d?`:${d}`:"",u=c&&c.length===5&&c!=="Z"?`${c.slice(0,3)}:${c.slice(3)}`:c??"";return`${r}-${o}-${i}T${s}:${a}${l}${u}`}return e}function Ni(e){if(typeof e!="string")return Number.NaN;let t=e.trim();if(t.length===0||!Od(t))return Number.NaN;let n=Date.parse(Nd(t));return Number.isFinite(n)?n:Number.NaN}function vn(e){let t=Ni(e);return Number.isFinite(t)?new Date(t).toISOString():""}function Ld(e){let t=Ni(e);return Number.isFinite(t)?new Date(t).toISOString().slice(0,10):"unknown"}function En(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function ne(e,t,n){let r=Ri(e.status,n)-Ri(t.status,n);if(r!==0)return r;let o=e.priority-t.priority;if(o!==0)return o;let i=Fd(e.order,t.order);if(i!==0)return i;let s=Md(e.deadline,t.deadline);if(s!==0)return s;let a=E(vn(t.updated_at),vn(e.updated_at)),d=e.id.localeCompare(t.id);return a!==0?a:d}function wn(e){return Math.max(1,Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4))}function Cn(e,t,n=new Set,r="context"){return gi(e.ranked.map(o=>({id:o.id,item:o.item,rank:o.rank,score:o.score,required:n.has(o.id),cluster:o.item.parent?.trim()||o.item.type,token_costs:{identity:wn({id:o.id,title:o.item.title}),summary:wn({id:o.id,title:o.item.title,type:o.item.type,status:o.item.status,priority:o.item.priority,parent:o.item.parent}),full:wn(o.item)}})),{tokenBudget:t,profile:r,latencyBudgetMs:25})}function xn(e){return{...e,included:e.included.map(t=>({id:t.id,projection:t.projection,tokens:t.tokens}))}}function In(e,t,n){let r=n===void 0?e.ranked:e.ranked.filter(o=>n.has(o.id));return{model:e.model,available_signals:e.available_signals,items:r.map(o=>({id:o.id,rank:o.rank,baseline_rank:o.baseline_rank,score:o.score,contributions:o.contributions,...o.signal_provenance===void 0?{}:{recency:o.signal_provenance.recency}})),candidate_count:e.ranked.length,omitted_count:e.ranked.length-r.length,...t?{feature_store:{source:t.snapshot.source,cache_status:t.cache_status,source_cursor:t.snapshot.source_cursor,generated_at:t.snapshot.generated_at}}:{}}}function Li(e,t){return t>0?Math.round(e/t*100):0}function ge(e){let t=new Map;for(let n of e){let r=En(n.parent);if(!r)continue;let o=t.get(r)??[];o.push(n),t.set(r,o)}return t}function Me(e,t,n){let r={id:e.id,title:e.title,type:e.type,status:e.status,priority:e.priority,order:e.order??null,deadline:e.deadline??null,assignee:e.assignee??null,tags:Array.isArray(e.tags)?[...e.tags]:[],updated_at:e.updated_at,parent:En(e.parent)};if(t&&n){let o=Fe(e.id,n),i=o.length;if(i>0){let s=o.filter(a=>De(a.status,t)).length;r.children_total=i,r.children_closed=s,r.completion_pct=Li(s,i)}}return r}function Pd(e){let t=0,n=0,r=0,o=new Set;for(let i of e){if(o.add(i.item_id),i.kind==="deadline"){t+=1;continue}if(i.kind==="reminder"){n+=1;continue}r+=1}return{events:e.length,items:o.size,deadlines:t,reminders:n,scheduled:r}}function Et(...e){return[...new Set(e.flatMap(t=>t??[]))].sort((t,n)=>t.localeCompare(n))}function jd(e,t){return e.filter(n=>!t.terminal_statuses.has(A(n.item_status,t)))}function Ud(e,t,n,r){let o=new Map;for(let d of e)o.set(d.id,d);let i=ge(e),s=new Set(t.filter(d=>St.has(d.type)).map(d=>d.id)),a=[];for(let d of s){let c=o.get(d);if(!c)continue;let l=Fe(d,i),u=i.get(d)??[],f=0,h=0,g=0,_=0;for(let w of l)De(w.status,n)?f++:kn(w.status,n)?g++:Td(w.status,n)?_++:Oi(w.status,n)&&h++;let y=u.sort((w,k)=>ne(w,k,n)).slice(0,r).map(w=>{let k=Fe(w.id,i),v=k.filter(S=>De(S.status,n)).length;return{id:w.id,title:w.title,type:w.type,status:w.status,children_total:k.length,children_closed:v}});a.push({id:c.id,title:c.title,type:c.type,status:c.status,children_total:l.length,children_closed:f,children_open:h,children_in_progress:g,children_blocked:_,children:y})}return a.sort((d,c)=>{let l=o.get(d.id),u=o.get(c.id);return ne(l,u,n)}).slice(0,r)}function Fe(e,t){let n=[],r=[e],o=new Set;for(;r.length>0;){let i=r.pop();if(o.has(i))continue;o.add(i);let s=t.get(i)??[];for(let a of s)n.push(a),r.push(a.id)}return n}async function Bd(e,t){return(await ui({compact:!0,limit:String(e)},t)).compact_activity??[]}function Hd(e,t,n,r,o){let i=new Map;for(let d of e){if(!d.parent)continue;let c=i.get(d.parent)??[];c.push(d),i.set(d.parent,c)}let s=t.filter(d=>St.has(d.type)),a=[];for(let d of s){let c=Fe(d.id,i),l=c.length;if(l===0)continue;let u=0,f=0,h=0,g=0;for(let _ of c)De(_.status,r)?u++:n.has(_.id.trim().toLowerCase())?g++:kn(_.status,r)?h++:Oi(_.status,r)&&f++;a.push({id:d.id,title:d.title,type:d.type,total:l,closed:u,open:f,in_progress:h,blocked:g,completion_pct:Li(u,l)})}return a.sort((d,c)=>d.completion_pct-c.completion_pct).slice(0,o)}function Gd(e,t,n,r){let o=new Map(t.map(i=>[i.id.trim().toLowerCase(),i]));return e.slice(0,r).map(i=>{let s=Qt(i,o,n),a=s.find(c=>!c.resolved)?.id??s[0]?.id??null,d=a?o.get(a.trim().toLowerCase()):void 0;return{id:i.id,title:i.title,blocked_by:a,blocked_by_title:d?.title??null,blocked_by_status:d?.status??null,blocked_reason:i.blocked_reason??null,unblock_note:i.unblock_note??null}})}function Wd(e,t){let n=new Map;for(let r of e)for(let o of r.files??[]){let i=n.get(o.path)??new Set;i.add(r.id),n.set(o.path,i)}return[...n.entries()].map(([r,o])=>({path:r,references:o.size,items:[...o].sort()})).sort((r,o)=>o.references-r.references).slice(0,t)}function qd(e,t,n){let r=new Map;for(let o of e){let i=o.assignee??null,s=r.get(i)??[];s.push(o),r.set(i,s)}return[...r.entries()].map(([o,i])=>({assignee:o,active:i.length,in_progress:i.filter(s=>kn(s.status,t)).length,items:i.map(s=>s.id).sort()})).sort((o,i)=>i.active-o.active).slice(0,n)}function zd(e,t,n,r){let o=new Date(n).getTime()-t*24*60*60*1e3;return e.filter(i=>new Date(i.updated_at).getTime()<o).map(i=>({id:i.id,title:i.title,status:i.status,updated_at:i.updated_at,stale_days:Math.floor((new Date(n).getTime()-new Date(i.updated_at).getTime())/(1440*60*1e3))})).sort((i,s)=>s.stale_days-i.stale_days).slice(0,r)}function Kd(e,t,n,r){return e.map(o=>({item:o,sortKey:vn(o.created_at)})).sort((o,i)=>{let s=E(i.sortKey,o.sortKey);return s!==0?s:o.item.id.localeCompare(i.item.id)}).slice(0,r).map(({item:o})=>({...Me(o,t,n),created_at:o.created_at}))}function Vd(e,t,n,r){return e.filter(o=>!En(o.parent)&&!St.has(o.type)).sort((o,i)=>ne(o,i,t)).slice(0,r).map(o=>Me(o,t,n))}function Yd(e){let t=0,n=0,r=0,o=0,i=0,s=[];for(let a of e){(a.tests??[]).length>0&&t++;let d=a.test_runs??[];if(d.length>0){n++;let c=!1;for(let l of d)r+=l.passed??0,o+=l.failed??0,i+=l.skipped??0,(l.failed??0)>0&&(c=!0);c&&s.push(a.id)}}return{items_with_tests:t,items_with_recent_runs:n,recent_runs:{passed:r,failed:o,skipped:i},items_failing:s.sort()}}function Ai(e){return`${new Date(e).toISOString().slice(11,16)}Z`}function Pi(e){let t=e.order===null?"-":String(e.order),n=e.deadline??"-",r=e.parent?` parent:${e.parent}`:"",o=e.children_total!==void 0&&e.children_closed!==void 0&&e.completion_pct!==void 0?` children:${e.children_closed}/${e.children_total} done:${e.completion_pct}%`:"",i=e.blocked===!0?` blocked:${e.blocker_ids?.join(",")||"lifecycle"}`:"";return`${e.id} p${e.priority} ${e.status} ${e.type} order:${t} deadline:${n}${r}${o}${i} ${e.title}`}function Xd(e,t){let n=e;return t.map(r=>{let o=n[r];return Array.isArray(o)?`${r}:${o.join(",")}`:`${r}:${o??"-"}`}).join(" ")}function Qd(e){if("reference_only"in e){let n=e.kind==="reminder"?` \u2014 ${e.reminder_text??"reminder"}`:e.kind==="event"?` \u2014 ${e.event_title??"event"}${e.event_recurring?" (recurring)":""}`:"";return`${Ai(e.at)} [${e.kind}] ${e.item_id} (see focus item)${n}`}let t=`${Ai(e.at)} [${e.kind}] ${e.item_id} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder")return`${t} \u2014 ${e.reminder_text}`;if(e.kind==="event"){let n=e.event_recurring?" (recurring)":"",r=e.event_title??e.item_title;return`${t} \u2014 ${r}${n}`}return t}function Di(e,t,n,r,o){if(e.push(`## ${t}`),n.length===0)e.push(r);else for(let i of n)e.push(`- ${o(i)}`);e.push("")}function Jd(e,t,n){if(t.blocked_fallback.length!==0){e.push("## Blocked fallback");for(let r of t.blocked_fallback)e.push(`- ${n(r)}`);e.push("")}}function Zd(e,t){if(e.push("## Agenda"),e.push(`- events: ${t.agenda.summary.events} (deadlines: ${t.agenda.summary.deadlines}, reminders: ${t.agenda.summary.reminders}, scheduled: ${t.agenda.summary.scheduled})`),t.agenda.events.length===0)e.push("No agenda events matched the selected filters.");else for(let n of t.agenda.events)e.push(`- ${Qd(n)}`);e.push("")}function el(e,t){if(!(!t.hierarchy||t.hierarchy.length===0)){e.push("## Hierarchy");for(let n of t.hierarchy){let r=n.children_total>0?Math.round(n.children_closed/n.children_total*100):0;e.push(`- ${n.id} ${n.type} ${n.status} "${n.title}" [${n.children_closed}/${n.children_total} done ${r}%]`);for(let o of n.children){let i=o.children_total>0?Math.round(o.children_closed/o.children_total*100):0;e.push(` - ${o.id} ${o.type} ${o.status} "${o.title}" [${o.children_closed}/${o.children_total} done ${i}%]`)}}e.push("")}}function tl(e,t){if(!(!t.progress||t.progress.length===0)){e.push("## Progress");for(let n of t.progress)e.push(`- ${n.id} "${n.title}" ${n.completion_pct}% (${n.closed}/${n.total} closed, ${n.in_progress} wip, ${n.open} open, ${n.blocked} blocked)`);e.push("")}}function nl(e,t,n,r){if(!(!t.recently_created||t.recently_created.length===0)){e.push("## Recently created");for(let o of t.recently_created)e.push(n?`- ${r(o)}`:`- ${Ld(o.created_at)} ${Pi(o)}`);e.push("")}}function rl(e,t,n){if(!(!t.unparented||t.unparented.length===0)){e.push("## Unparented");for(let r of t.unparented)e.push(`- ${n(r)}`);e.push("")}}function ol(e,t){if(!(!t.activity||t.activity.length===0)){e.push("## Recent activity");for(let n of t.activity){let r=n.msg?` ${n.msg}`:"";e.push(`- ${n.ts.slice(0,16)}Z ${n.id} ${n.op} by:${n.author}${r}`)}e.push("")}}function il(e,t){if(!(!t.blockers||t.blockers.length===0)){e.push("## Blockers");for(let n of t.blockers){let r=n.blocked_by?`blocked_by:${n.blocked_by}(${n.blocked_by_status??"?"})`:"blocked_by:-",o=n.blocked_reason?` reason:"${n.blocked_reason}"`:"",i=n.unblock_note?` unblock:"${n.unblock_note}"`:"";e.push(`- ${n.id} "${n.title}" ${r}${o}${i}`)}e.push("")}}function sl(e,t){if(!(!t.files||t.files.length===0)){e.push("## Hot files");for(let n of t.files)e.push(`- ${n.path} refs:${n.references} items:[${n.items.join(",")}]`);e.push("")}}function al(e,t){if(!(!t.workload||t.workload.length===0)){e.push("## Workload");for(let n of t.workload){let r=n.assignee??"(unassigned)";e.push(`- ${r} active:${n.active} wip:${n.in_progress} items:[${n.items.join(",")}]`)}e.push("")}}function cl(e,t){if(!(!t.staleness||t.staleness.length===0)){e.push("## Stale items");for(let n of t.staleness)e.push(`- ${n.id} ${n.status} stale:${n.stale_days}d last:${n.updated_at.slice(0,10)} "${n.title}"`);e.push("")}}function dl(e,t){t.tests&&(e.push("## Test health"),e.push(`- items_with_tests: ${t.tests.items_with_tests}`),e.push(`- items_with_recent_runs: ${t.tests.items_with_recent_runs}`),e.push(`- passed: ${t.tests.recent_runs.passed}, failed: ${t.tests.recent_runs.failed}, skipped: ${t.tests.recent_runs.skipped}`),t.tests.items_failing.length>0&&e.push(`- items_failing: [${t.tests.items_failing.join(",")}]`),e.push(""))}function ll(e,t){t.summary.active_items===0&&t.summary.blocked===0&&t.agenda.summary.events===0&&(e.push("## Suggestions"),e.push("No active work items or upcoming events. Consider:"),e.push('- `pm create --type Task --title "..."` to add a new work item'),e.push("- `pm list --status closed --limit 5` to review recent completions"),e.push("- `pm search <keywords>` to find related past work"),e.push("- `pm aggregate` for a full project status overview"))}function yp(e){let t=[],n=e.focus_fields,r=i=>n?Xd(i,n):Pi(i);if(t.push("# pm context"),t.push(""),t.push(`- now: ${e.now}`),t.push(`- depth: ${e.depth}`),e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(`- active_items: ${e.summary.active_items} (in_progress: ${e.summary.in_progress}, open: ${e.summary.open})`),e.summary.total_items!==void 0&&t.push(`- total_items: ${e.summary.total_items} (closed: ${e.summary.closed??0}, canceled: ${e.summary.canceled??0})`),t.push(`- agenda_events: ${e.summary.agenda_events}`),t.push(`- blocked_fallback_used: ${e.summary.blocked_fallback_used}`),e.extension_health){let i=e.extension_health.packages.filter(s=>s.status==="degraded").map(s=>s.name);t.push(`- extensions: ${e.extension_health.ok} ok, ${e.extension_health.degraded} degraded${i.length>0?` (${i.join(", ")})`:""}`)}let o=e.sections_included.filter(i=>i!=="blockers"||(e.blockers?.length??0)>0);if(o.length>0&&t.push(`- sections: ${o.join(", ")}`),t.push(""),Di(t,"High-level focus",e.high_level,"No high-level active items.",r),Di(t,"Low-level focus",e.low_level,"No low-level active items.",r),Jd(t,e,r),Zd(t,e),e.workspace_memory){t.push("## Workspace memory");for(let i of e.workspace_memory.rollups)t.push(`- ${i.kind}:${i.key} \u2014 ${i.label} (${i.item_count} completed, latest ${i.last_closed_at})`);t.push("")}return el(t,e),tl(t,e),nl(t,e,n,r),rl(t,e,r),ol(t,e),il(t,e),sl(t,e),al(t,e),cl(t,e),dl(t,e),ll(t,e),t.join(`
7
7
  `)}async function ul(e,t){let n=T(process.cwd(),t.path),r=await $(n),o=r.context??xr.context,i=P(r.schema),s=Ed(e.depth,o),a=kd(e.limit??e.maxItems,s);return{settings:r,contextSettings:o,statusRegistry:i,depth:s,limit:a,sectionsIncluded:Cd(e.section,s,o),activityLimit:xd(e.activityLimit,o),staleThresholdDays:Id(e.staleThreshold,o),parentScope:Dd(e.parent),focusFields:bd(e.fields),baseListOptions:Ad(e)}}function fl(e){return e.some(t=>["hierarchy","progress","blockers","staleness","recently_created","unparented"].includes(t))}function ml(e,t){return{...e,...t,noTruncate:!0,limit:void 0,offset:void 0,after:void 0}}async function pl(e,t){let n=await W(void 0,ml(t.baseListOptions,{excludeTerminal:!1}),e),r=n.items,o=r.filter(a=>!Q(a.status,t.statusRegistry)),i=r,s=hl(t.parentScope,r);return s&&(o=o.filter(a=>s.has(a.id.trim().toLowerCase())),i=i.filter(a=>s.has(a.id.trim().toLowerCase()))),{listed:n,listedItemMetadata:o,allItems:i,fullCorpus:r,subtreeIds:s}}function hl(e,t){if(e===void 0)return;let n=Sn(t,e);if(!n.found)throw new p(`Context --parent item not found: ${e}`,m.NOT_FOUND);return n.ids}function gl(e,t,n,r){let o=new Set(lt(e,t,n,r).containers.map(i=>i.item.id));return new Set(e.filter(i=>St.has(i.type)||o.has(i.id)||Ee(i.type,r)!=="agent").map(i=>i.id))}async function yl(e,t,n,r,o,i,s,a,d,c,l,u,f,h,g,_){let y=[...e].sort((b,ae)=>ne(b,ae,o)),w=await et({pmRoot:f,author:d,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),k=await bt(y,{pmRoot:f,storeKey:"context",statusRegistry:o,now:a,author:d,usageAffinity:w.affinity,claimFocus:g}),v=await vt("context",k.candidates),S=v.ranked.map(b=>b.item),J=o.active_statuses,R=S.filter(b=>J.has(A(b.status,o))),D=u?Br(R,c,l,b=>b.id):0,I=u?R.slice(D,D+s):R,He=u&&I.length>0&&D+I.length<R.length,Ge=He&&I.length>0?Ur(l,I[I.length-1].id,D+I.length-1):void 0,Z=S.filter(b=>r.has(b.id.trim().toLowerCase())),ve=new Set([...I.map(b=>b.id),...Z.slice(0,s).map(b=>b.id)]),oe=Cn({...v,ranked:v.ranked.filter(b=>ve.has(b.id))},h,new Set(Object.entries(g??{}).filter(([,b])=>b>=1).map(([b])=>b))),V=oe.included.map(b=>b.item),Y=V.filter(b=>J.has(A(b.status,o))),ie=V.filter(b=>r.has(b.id.trim().toLowerCase())),se=ge(t),Ut=fl(i)?se:void 0,L=new Map(n.map(b=>[b.id.trim().toLowerCase(),b])),O=b=>{let ae=Me(b,o,Ut);return r.has(b.id.trim().toLowerCase())&&(ae.blocked=!0,ae.blocker_ids=Qt(b,L,o).filter(Bt=>!Bt.resolved).map(Bt=>Bt.id)),ae},kr=gl(Y,n,o,_),Us=Y.filter(b=>kr.has(b.id)).slice(0,u?I.length:s).map(O),Bs=Y.filter(b=>!kr.has(b.id)).slice(0,u?I.length:s).map(O),Sr=R.length===0;return{activeItems:Y,blockedItems:ie,highLevel:Us,lowLevel:Bs,blockedFallback:Sr?ie.slice(0,s).map(O):[],blockedFallbackUsed:Sr,ranking:v,packing:oe,featureStore:k,pageExtras:{...u?{applied_limit:s}:{},...He?{has_more:!0,truncated:!0}:{},...Ge?{next_cursor:Ge}:{}}}}function _l(e){return Xe("context",Ye(e,Nr))}function wl(e,t){return e.limit!==void 0||e.maxItems!==void 0||e.after!==void 0||t>=Mi}async function vl(e,t,n,r){let o={...t.baseListOptions,view:"agenda",include:"all",limit:t.parentScope===void 0?String(t.limit):void 0},i=await si(o,e),s=n===void 0?i.events:i.events.filter(c=>n.has(c.item_id.trim().toLowerCase())),a=jd(s,t.statusRegistry).slice(0,t.limit),d=a.map(c=>r.has(c.item_id)?{at:c.at,date:c.date,kind:c.kind,item_id:c.item_id,reference_only:!0,...c.kind==="reminder"?{reminder_text:c.reminder_text}:{},...c.kind==="event"?{event_title:c.event_title,event_recurring:c.event_recurring}:{}}:c);return{agenda:i,agendaEvents:d,agendaSummary:Pd(a)}}function ji(e,t,n){let r=String(t);return e.filter(o=>A(o.status,n)===r).length}async function bl(e){let{runtime:t,allItems:n,fullCorpus:r,blockedIds:o,focusGroups:i,now:s,global:a}=e,d=ge(n),c=n.filter(u=>!Q(u.status,t.statusRegistry)),l=u=>t.sectionsIncluded.includes(u);return{hierarchy:l("hierarchy")?Ud(n,i.activeItems,t.statusRegistry,t.limit):void 0,activity:l("activity")?await Bd(t.activityLimit,a):void 0,progress:l("progress")?Hd(n,i.activeItems,o,t.statusRegistry,t.limit):void 0,blockersSection:l("blockers")?Gd(i.blockedItems,r,t.statusRegistry,t.limit):void 0,recentlyCreated:l("recently_created")?Kd(c,t.statusRegistry,d,t.limit):void 0,unparented:l("unparented")?Vd(c,t.statusRegistry,d,t.limit):void 0,filesSection:l("files")?Wd(i.activeItems,t.limit):void 0,workload:l("workload")?qd(i.activeItems,t.statusRegistry,t.limit):void 0,staleness:l("staleness")?zd(c,t.staleThresholdDays,s,t.limit):void 0,tests:l("tests")?Yd(i.activeItems):void 0}}function kl(e,t,n){let r=N("canceled",t),o=e.filter(s=>t.active_statuses.has(A(s.status,t))),i=ji(o,t.in_progress_status,t);return{scope:"matching_items",active_items:o.length,open:o.length-i,in_progress:i,blocked:e.filter(s=>n.has(s.id.trim().toLowerCase())).length,total_items:e.length,closed:e.filter(s=>De(s.status,t)).length,canceled:e.filter(s=>A(s.status,t)===r).length}}function Sl(e,t,n){t.hierarchy&&(e.hierarchy=t.hierarchy),t.activity&&(e.activity=t.activity),t.progress&&(e.progress=t.progress),t.blockersSection&&(e.blockers=t.blockersSection),t.recentlyCreated&&(e.recently_created=t.recentlyCreated),t.unparented&&(e.unparented=t.unparented),t.filesSection&&(e.files=t.filesSection),t.workload&&(e.workload=t.workload),t.staleness&&(e.staleness=t.staleness),t.tests&&(e.tests=t.tests),n!==void 0&&n.length>0&&(e.warning_details=n)}function El(e,t){t&&(e.focus_fields=t,e.high_level=Ae(e.high_level,t),e.low_level=Ae(e.low_level,t),e.blocked_fallback=Ae(e.blocked_fallback,t),e.recently_created&&(e.recently_created=Ae(e.recently_created,t)),e.unparented&&(e.unparented=Ae(e.unparented,t)))}function Cl(e,t){let n=[e.high_level,e.low_level,e.blocked_fallback,e.recently_created??[],e.unparented??[]].flat();if(t){for(let i of n)delete i.tags,delete i.tags_inherited;return}let r=new Map(n.map(i=>[i.id,i])),o=new Map(n.map(i=>[i.id,i.tags?[...i.tags].sort().join("\0"):void 0]));for(let i of n){if(!i.parent||!i.tags)continue;let s=r.get(i.parent);s&&o.get(i.id)===o.get(s.id)&&(delete i.tags,i.tags_inherited=s.id)}}function xl(e,t,n){t.length>0||n.length>0||e.agenda.events.length>0||(e.suggestions=['pm create --type Task --title "..." to add a new work item',"pm list --status closed --limit 5 to review recent completions","pm search <keywords> to find related past work","pm aggregate for a full project status overview"])}async function Il(e,t,n,r){try{let o=new Set(t.packing.included.map(d=>d.id)),i=t.ranking.ranked.map(d=>({id:d.id,rank:d.rank,included:o.has(d.id)})),s=new Set(i.map(d=>d.id));for(let d of Je(e,"context"))s.has(d)||(i.push({id:d,rank:i.length+1,included:!1}),s.add(d));let a=await Ze({pmRoot:n,author:r,surface:"context",profile:t.packing.profile,rows:i,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});Qe(e,a)}catch{e.warnings=Et(e.warnings,["context_usage_feedback_write_failed"])}}async function Tl(e,t,n){if(e)return{};let o=(await Or({pmRoot:t,settings:n,cwd:process.cwd(),noExtensions:!1})).discovered.map(s=>({name:s.name??s.directory,status:s.status==="ok"?"ok":"degraded"})).sort((s,a)=>s.name.localeCompare(a.name)),i=o.filter(s=>s.status==="degraded").length;return o.length===0?{}:{extension_health:{total:o.length,ok:o.length-i,degraded:i,packages:o.slice(0,20),...o.length>20?{truncated:!0}:{}}}}async function Rl(e,t){let n=eo(),r=await Yr(e),o=n.instance||Xr(t);return Yo(r.semantic_attribution?.[o])}async function _p(e,t){let n=T(process.cwd(),t.path),r=await ul(e,t),o=await pl(t,r),i=Sd(r.limit,o.fullCorpus.length),s={...r,limit:i,tokenBudget:bn(e.tokenBudget,Math.max(256,i*160))},a=ee(void 0,s.settings.author_default),d=await Rl(n,a),c=Tl(e.noExtensionHealth===!0,n,s.settings),l=Co(o.fullCorpus,s.statusRegistry),u=await yl(o.listedItemMetadata,o.allItems,o.fullCorpus,l,s.statusRegistry,s.sectionsIncluded,s.limit,M(),a,e.after,_l(e),wl(e,o.fullCorpus.length),n,s.tokenBudget,d,F(s.settings,C())),f=await vl(t,s,o.subtreeIds,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),h=await kt(o.fullCorpus,{pmRoot:n,statusRegistry:s.statusRegistry,now:f.agenda.now}),g=Et(o.listed.warnings,f.agenda.warnings,u.ranking.warnings,[...u.featureStore.warnings],h.warnings),_=ji(u.activeItems,s.statusRegistry.in_progress_status,s.statusRegistry),y=u.activeItems.length-_,w=await bl({runtime:s,allItems:o.allItems,fullCorpus:o.fullCorpus,blockedIds:l,focusGroups:u,now:f.agenda.now,global:t}),k=kl(o.allItems,s.statusRegistry,l),v={output_default:"toon",now:f.agenda.now,depth:s.depth,sections_included:s.sectionsIncluded,window:{anchor:f.agenda.anchor,start:f.agenda.range.start,end:f.agenda.range.end,past:f.agenda.range.past,from:f.agenda.range.from,to:f.agenda.range.to},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,limit:e.limit??e.maxItems??null,parent:s.parentScope??null,token_budget:s.tokenBudget,runtime_filters:o.listed.filters.runtime_filters??f.agenda.filters.runtime_filters??{}},summary:{returned_focus:{active_items:u.activeItems.length,in_progress:_,open:y,blocked:u.blockedItems.length},blocked_fallback_used:u.blockedFallbackUsed,high_level:u.highLevel.length,low_level:u.lowLevel.length,agenda_events:f.agendaSummary.events,...k},high_level:u.highLevel,low_level:u.lowLevel,blocked_fallback:u.blockedFallback,agenda:{summary:f.agendaSummary,events:f.agendaEvents},...u.pageExtras};return v.workspace_memory=xi(h,Math.min(800,Math.floor(s.tokenBudget*.2))),Object.assign(v,await c),Sl(v,w,u.featureStore.warning_details),Cl(v,e.noTags===!0),e.explainRanking===!0&&(v.ranking=In(u.ranking,u.featureStore,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),v.packing=xn(u.packing)),El(v,s.focusFields),g.length>0&&(v.warnings=g),xl(v,u.activeItems,u.blockedItems),await Il(v,u,n,a),v}(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]="7b1a6347-904d-5c7d-a86d-23e6232b9467")}catch{}})();function Ui(e,t,n){let r={recommended:e.recommended,ready:e.ready},o=()=>Math.max(qt(r,"json"),qt(r,"toon")),i=r.ready.length+ +(r.recommended!==null),s=o(),a=s,d=r.ready;if(a>t&&(r.ready=[],a=o()),s>t&&a<=t){let u=0,f=d.length;for(;u<f;){let h=Math.ceil((u+f)/2);r.ready=d.slice(0,h),o()<=t?u=h:f=h-1}r.ready=d.slice(0,u),a=o()}let c=a>t&&r.recommended!==null;c&&(r.recommended=null,a=o()),e.recommended=r.recommended,e.ready=r.ready,e.summary.recommended=r.recommended!==null;let l=i-r.ready.length-+(r.recommended!==null);n&&l===0&&a<=t||(e.truncation={...e.truncation,...l>0?{ready_total:e.summary.ready}:{},ready_budget:{scope:"recommended_and_ready",budget_tokens:t,estimated_tokens:a,within_budget:a<=t,omitted_count:l,recommendation_omitted:c,restore_budget_tokens:s}},c&&(e.suggestions=[`Ready work exists but the selection budget omitted the recommendation. Retry pm next --token-budget ${s}; use --output-budget to bound the entire response.`]))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0497aebe-9963-5025-9266-124455dd4567")}catch{}})();var Al=["markdown","toon","json"],Dl=5,Fl=1440*60*1e3;function Ml(e){if(!e)return;let t=e.trim().toLowerCase();if(!Al.includes(t))throw new p("Next format must be one of markdown|toon|json",m.USAGE);return t}function Fp(e,t){let n=Ml(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??"toon"}function Bi(e,t,n){let r=G(e,t);return r===void 0||r<=0?n:r}function $e(e,t,n,r){return{...Me(e.item,t,n),open_blocker_count:e.open_blockers.length,blockers:e.open_blockers.map(o=>({id:o.id,title:o.title,status:o.status,...o.external?{external:!0}:{},...o.blocked_since?{blocked_since:o.blocked_since}:{},...o.external?{resolver:o.resolver??null}:{}})),unblocks:e.unblocks,rank:r}}function $l(e,t,n,r){let o=e.item,i=[],s=N("in_progress",t);return i.push(A(o.status,t)===s?"resume work":"ready"),r&&i.push("completed container \u2014 governance closeout"),i.push(`p${o.priority}${o.priority===0?" (highest)":""}`),typeof o.deadline=="string"&&o.deadline.trim().length>0&&i.push(Ol(o.deadline,n)),i.push(Eo(o).length>0?"all blockers resolved":"no blockers"),typeof o.parent=="string"&&o.parent.trim().length>0&&i.push(`advances ${o.parent.trim()}`),e.unblocks.length>0&&i.push(`unblocks ${e.unblocks.length} item(s)`),i}function Hi(e,t,n){let r=ee(n,t),o=[],i=[];for(let s of e){let a=typeof s.item.assignee=="string"?s.item.assignee.trim():"";a.length>0&&a!==r?i.push({id:s.item.id,assignee:a}):o.push(s)}return{available:o,held:i}}var Mp={partitionCallerOwnedReady:Hi,resolveNextCallerAuthor:(e,t)=>Gi(e,t)};function $p(e,t,n){let r=e.filter(o=>Ee(o.item.type,n)==="human");return{agent:t?e:e.filter(o=>Ee(o.item.type,n)!=="human"),decisions:t?[]:r}}function Ol(e,t){let n=Date.parse(e);if(!Number.isFinite(n))return`deadline ${e.trim()}`;let r=new Date(n).toISOString().slice(0,10),o=new Date(Date.parse(t)).toISOString().slice(0,10),i=Math.round((Date.parse(r)-Date.parse(o))/Fl);return i<0?`deadline ${r} (overdue ${-i}d)`:i===0?`deadline ${r} (due today)`:`deadline ${r} (in ${i}d)`}function Nl(e,t){let n=N("in_progress",t);return e.filter(r=>A(r.status,t)===n).length}function Tn(e,t){return(t.get(e.id.trim().toLowerCase())??[]).length>0}function Ll(e,t){return{type:e.type,tag:e.tag,priority:typeof e.priority=="number"?String(e.priority):e.priority,assignee:e.assignee,assigneeFilter:e.assigneeFilter,sprint:e.sprint,release:e.release,noTruncate:!0,...t}}function Ct(e,t,n){return[...e].sort((r,o)=>{let i=Tn(r.item,t),s=Tn(o.item,t);return i!==s?Number(i)-Number(s):ne(r.item,o.item,n)})}function Pl(e){return e.projectedReady.length===0?null:{...e.readyRows[0],reasons:$l(e.projectedReady[0],e.statusRegistry,e.now,e.completedContainer)}}function jl(e,t,n){if(e!==null)return;let r=n>0?["No executable recommendation: outcome gates require verification. Inspect gate_needed, or use pm next --include-gates to opt in."]:[];if(t.length>0){let o=t.find(i=>i.blockers.length>0);return[...r,o?`${t.length} item(s) are blocked; unblock the top one by closing ${o.blockers.map(i=>i.id).join(", ")}`:`${t.length} item(s) are blocked; add blocker context or move the top item back to an active status`,"pm next --ready-only after a blocker closes to re-check ready work",'pm create --type Task --title "..." to add new ready work']}return[...r,'pm create --type Task --title "..." to add a new work item',"pm list --status in_progress to review work already underway","pm context --depth deep for the full project snapshot"]}function Ul(e,t,n,r){let o={};return e>r&&(o.decision_needed_total=e),t>r&&(o.held_by_others_total=t),n>r+1&&(o.ready_total=n),Object.keys(o).length>0?o:void 0}async function Bl(e){try{let t=new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(i=>i.id)]),n=e.ranking.ranked.map(i=>({id:i.id,rank:i.rank,included:t.has(i.id)})),r=new Set(n.map(i=>i.id));for(let i of Je(e.result,"next"))r.has(i)||(n.push({id:i,rank:n.length+1,included:!1}),r.add(i));let o=await Ze({pmRoot:e.pmRoot,author:e.author,surface:"next",profile:"next",rows:n,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});Qe(e.result,o)}catch{e.result.warnings=Et(e.result.warnings,["context_usage_feedback_write_failed"])}}async function Hl(e){let t=[...new Set([...e.candidatesWarnings??[],...e.corpusWarnings??[],...e.readyRanking.warnings??[],...e.featureStore.warnings])].sort((n,r)=>n.localeCompare(r));return t.length>0&&(e.result.warnings=t),e.result.suggestions=jl(e.recommended,e.blockedRows,e.gateCount),e.tokenBudget!==void 0&&Ui(e.result,e.tokenBudget,e.hasIntentBudget),e.explainRanking&&(e.result.ranking=In(e.readyRanking,e.featureStore,new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(n=>n.id)])),e.result.packing=xn(Cn(e.readyRanking,e.packingBudget,new Set,"next"))),await Bl({result:e.result,pmRoot:e.pmRoot,author:e.author,ranking:e.readyRanking}),e.result}function Gl(e,t,n){if(!n)return e;let r=Sn(t,n);if(!r.found)throw new p(`Next --parent item not found: ${n}`,m.NOT_FOUND);return e.filter(o=>r.ids.has(o.id.trim().toLowerCase()))}async function Wl(e,t,n,r,o,i,s){let a=e.filter(g=>!Tn(g.item,t)),d=s||a.length===0?e:a,c=await et({pmRoot:i,author:o,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),l=await bt(d.map(g=>g.item),{pmRoot:i,storeKey:"next",statusRegistry:n,now:r,author:o,usageAffinity:c.affinity}),u=await vt("next",l.candidates),f=new Map(d.map(g=>[g.item.id,g]));return{projectedReady:u.ranked.map(g=>f.get(g.id)).filter(g=>g!==void 0),ranking:u,completedContainer:a.length===0&&!s,featureStore:l}}function Gi(e,t){let n=e.assignee?.trim();return ee(e.callerAuthor??(n&&n.length>0?n:void 0),t)}async function Op(e,t){let n=T(process.cwd(),t.path),r=await $(n),o=Gi(e,r.author_default),i=P(r.schema),s=F(r,C()),a=M(),d=Bi(e.limit,"--limit",Dl),c=bn(e.tokenBudget,Math.max(192,d*128)),l=Bi(e.blockedLimit,"--blocked-limit",d),u=e.readyOnly===!0,f=typeof e.parent=="string"?e.parent.trim():"",h=await W(void 0,Ll(e,{excludeTerminal:!0}),t),g=await W(void 0,{excludeTerminal:!1,noTruncate:!0},t),_=Gl(h.items,g.items,f),y=g.items,w=lt(_,y,i,s),k=ge(y),v=xo(w,i,e,s),S=Hi(v.ready,r.author_default,o),J=Ct(S.available,k,i),R=[...w.blocked].sort((L,O)=>ne(L.item,O.item,i)),{projectedReady:D,ranking:I,completedContainer:He,featureStore:Ge}=await Wl(J,k,i,a,o,n,e.includeContainers===!0),Z=D.map((L,O)=>$e(L,i,k,O+1)),ve=R.map((L,O)=>$e(L,i,k,O+1)),oe=Ct(v.decisions,k,i).map((L,O)=>$e(L,i,k,O+1)),V=Ct(v.gates,k,i).map((L,O)=>$e(L,i,k,O+1)),Y=Ct(w.containers,k,i).map((L,O)=>$e(L,i,k,O+1)),ie=Pl({projectedReady:D,readyRows:Z,statusRegistry:i,now:a,completedContainer:He}),se=Ul(oe.length,S.held.length,Z.length,d)??{};V.length>d&&(se.gate_needed_total=V.length),Y.length>d&&(se.containers_total=Y.length);let Ut={output_default:"toon",now:a,recommended:ie,ready:Z.slice(1,d+1),decision_needed:oe.slice(0,d),gate_needed:V.slice(0,d),containers:Y.slice(0,d),blocked:u?[]:ve.slice(0,l),held_by_others:S.held.slice(0,d),summary:{recommended:ie!==null,ready:Z.length,blocked:ve.length,in_progress:Nl(Z,i),candidates:w.active_count,containers:w.container_count,decision_needed:oe.length,gate_needed:V.length,held_by_others:S.held.length},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,parent:f.length>0?f:null,limit:d,blocked_limit:l,ready_only:u,include_decisions:e.includeDecisions===!0,include_gates:e.includeGates===!0,include_containers:e.includeContainers===!0,token_budget:c},truncation:Object.keys(se).length>0?se:void 0};return Hl({result:Ut,recommended:ie,blockedRows:ve,gateCount:V.length,candidatesWarnings:h.warnings,corpusWarnings:g.warnings,readyRanking:I,explainRanking:e.explainRanking===!0,pmRoot:n,author:o,packingBudget:c,featureStore:Ge,tokenBudget:e.tokenBudget===void 0?void 0:c,hasIntentBudget:typeof e.for=="string"})}function Np(e){let t=["# pm next","",...ql(e)];for(let[n,r]of[["Gate verification needed",e.gate_needed],["Containers",e.containers]])r&&r.length>0&&t.push(...Oe(n,r.map(o=>`- ${Ne(o)}`),""));if(t.push(...Oe("Recommended",zl(e.recommended),e.truncation?.ready_budget?.recommendation_omitted?"Recommendation omitted by the selection budget; ready work still exists.":"No ready work.")),t.push(...Oe("Decision needed",(e.decision_needed??[]).map(n=>`- ${Ne(n)}`),"No human-gated decisions.")),t.push(...Oe("Ready",e.ready.map(n=>`- ${Ne(n)}`),"No ready items.")),e.filters.ready_only||t.push(...Oe("Blocked",e.blocked.map(n=>`- ${Kl(n)}`),"No blocked items.")),e.suggestions&&e.suggestions.length>0){t.push("## Suggestions");for(let n of e.suggestions)t.push(`- ${n}`)}return t.join(`
8
- `).trimEnd()}function ql(e){let t=[`- now: ${e.now}`,`- ready: ${e.summary.ready} (in_progress: ${e.summary.in_progress}), blocked: ${e.summary.blocked}, candidates: ${e.summary.candidates}`];return e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(""),t}function zl(e){return e?[`- ${Ne(e)}`,` why: ${e.reasons.join("; ")}`]:[]}function Oe(e,t,n){return[`## ${e}`,...t.length===0?[n]:t,""]}function Kl(e){let t=e.blockers.map(n=>`${n.id}(${n.status??"?"})`).join(", ");return`${Ne(e)} blocked_by:${t}`}function Ne(e){let t=e.deadline??"-",n=e.parent?` parent:${e.parent}`:"",r=e.unblocks.length>0?` unblocks:${e.unblocks.length}`:"";return`${Number.isInteger(e.rank)?`#${e.rank} `:""}${e.id} p${e.priority} ${e.status} ${e.type} deadline:${t}${n}${r} ${e.title}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2a9a4dc0-8027-5761-9bbf-cac1ef83bd10")}catch{}})();var Vl=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Yl=["filterAcMissing","filterEstimatesMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","hasNotes","hasLearnings","hasFiles","hasDocs","hasTests","hasComments","hasDeps","hasBody","hasLinkedCommand","noNotes","noLearnings","noFiles","noDocs","noTests","noComments","noDeps","emptyBody","noLinkedCommand"];function Xl(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function Pp(e,t,n={}){let r=n.includePagination!==!1;return[t,...Vl.map(i=>e?.[i]),...r?[e?.limit,e?.offset]:[]].some(Xl)||Yl.some(i=>e?.[i]===!0)}function Wi(e){return{type:e.type,tag:e.tag,priority:e.priority,deadlineBefore:e.deadlineBefore,deadlineAfter:e.deadlineAfter,assignee:e.assignee,assigneeFilter:e.assigneeFilter,parent:e.parent,sprint:e.sprint,release:e.release}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7a4a98b2-3872-506d-b88d-877b0033dd2d")}catch{}})();var qi=["parent","type","priority","status","assignee","tags","sprint","release"];function Ki(e,t){let n=nt(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function Vi(e,t=["estimate","estimated_minutes","priority"]){let n=e.sum?.trim(),r=e.avg?.trim(),o=n&&n.length>0?n:void 0,i=r&&r.length>0?r:void 0;if(!o&&!i)return null;if(o&&i&&o!==i)throw new p("Aggregate --sum and --avg must target the same numeric field",m.USAGE);let s=o??i;if(!t.includes(s))throw new p(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,m.USAGE);return{field:s,sum:o!==void 0,avg:i!==void 0}}function Yi(e){let t=e?.trim()??"status";if(t.length===0)throw new p("--group-by requires at least one field name",m.USAGE);let n=So(t);if(n.length===0)throw new p("--group-by requires a comma-separated list of fields",m.USAGE);for(let r of n)if(!qi.includes(r))throw new p(`Aggregate group fields must be one of ${qi.join("|")}; received "${r}"`,m.USAGE);return n}function Xi(e){let t=[...new Set(e.map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length===0?null:t.join(",")}function Qi(e,t){switch(e){case"parent":return t.parent??null;case"type":return t.type;case"priority":return t.priority;case"status":return t.status;case"assignee":return t.assignee??null;case"tags":return Xi(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function Ji(e,t){let n=e??null,r=t??null;return n===r?0:n===null?1:r===null?-1:typeof n=="number"&&typeof r=="number"?n-r:String(n).localeCompare(String(r))}function xt(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var Ql={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function zi(e,t){return t==null||t===""?Ql[e]:String(t)}function Jl(e,t){return e.length===1?zi(e[0],t[e[0]]):e.map(n=>`${n}=${zi(n,t[n])}`).join(" | ")}function Zi(e,t,n){for(let r of n){let o=Ji(e.group[r],t.group[r]);if(o!==0)return o}return 0}function es(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let o=r.trim();if(o.length===0)return null;let i=Number(o);if(Number.isFinite(i))return i}return null}function ts(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Rn(e,t,n){let r=N(String(t),n)??t;if(r===n.open_status){e.open_count+=1;return}if(r==="in_progress"||n.active_statuses.has(r)&&r!==n.open_status){e.in_progress_count+=1;return}if(n.terminal_done_statuses.has(r)||r===n.close_status){e.closed_count+=1;return}e.other_count+=1}function Zl(e,t){return{row:{group:e,count:1},numeric_count:t===null?0:1,numeric_sum:t??0,null_count:t===null?1:0,open_count:0,in_progress_count:0,closed_count:0,other_count:0}}function eu(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function tu(e){e.accumulator.row.count+=1,e.includeCompletion&&Rn(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&eu(e.accumulator,e.numericValue)}function nu(e,t,n,r){for(let o of t){let i=xt(n,o),s=e.get(i);if(s){tu({...r,accumulator:s});continue}let a=Zl(o,r.numericValue);r.includeCompletion&&Rn(a,r.item.status,r.statusRegistry),e.set(i,a)}}function ru(e,t){let n={};for(let r of e)n[r]=Qi(r,t);return n}function ou(e,t,n){let r=[ru(e,t)];if(n==="tuple")return r;for(let o of e){let i=t[o];if(!Array.isArray(i))continue;let s=[...new Set(i.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(r=r.flatMap(a=>s.map(d=>({...a,[o]:d}))))}return r}function iu(e,t,n,r){let o={...e.row,group_label:Jl(t,e.row.group)};return n&&(o.open=e.open_count,o.in_progress=e.in_progress_count,o.closed=e.closed_count,o.other=e.other_count,o.completion_pct=ts(e.closed_count,e.row.count)),r!==null&&(o.null_count=e.null_count,r.sum&&(o.sum=e.numeric_sum),r.avg&&(o.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),o}function su(e){return{group_by:e.groupBy,set_mode:e.setMode,count:!0,completion:e.includeCompletion,include_unparented:e.includeUnparented,status:e.status?.[0]??null,status_values:e.status,type:e.options.type??null,tag:e.options.tag??null,priority:e.options.priority??null,deadline_before:e.options.deadlineBefore??null,deadline_after:e.options.deadlineAfter??null,assignee:e.options.assignee??null,assignee_filter:e.options.assigneeFilter??null,parent:e.options.parent??null,sprint:e.options.sprint??null,release:e.options.release??null,...e.numericAggregation!==null?{sum:e.options.sum??null,avg:e.options.avg??null,numeric_field:e.numericAggregation.field}:{}}}async function Wp(e,t){if(e.count===!1)throw new p("Aggregate grouped counts are always enabled; omit count=false.",m.USAGE);let n=T(process.cwd(),t.path),r=await $(n),o=P(r.schema),i=["estimate","estimated_minutes","priority",...X(r.schema).definitions.filter(v=>v.type==="number").map(v=>v.metadata_key)],s=Yi(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new p("Aggregate --set-mode must be element or tuple",m.USAGE);let d=Ki(e.status,o),c=Vi(e,[...new Set(i)].sort((v,S)=>v.localeCompare(S))),l=e.completion===!0,u=e.includeUnparented===!0,f=await W(void 0,{...Wi(e),status:e.status,noTruncate:!0,strictRead:!0},t),h=new Map,g=0,_=0,y=0;for(let v of f.items){let S=v;if(s.includes("parent")&&S.parent===void 0&&!u){g+=1;continue}let J=c===null?null:es(S,c.field),R=ou(s,S,a);nu(h,R,s,{item:S,statusRegistry:o,includeCompletion:l,numericAggregation:c,numericValue:J}),y+=R.length,_+=1}let w=[...h.values()].map(v=>iu(v,s,l,c)).sort((v,S)=>Zi(v,S,s)),k=f.warnings&&f.warnings.length>0?f.warnings:void 0;return{...au(w,s,e),count:w.length,totals:{items_considered:f.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:su({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:d,options:e,numericAggregation:c}),now:M(),...k?{warnings:k}:{}}}function au(e,t,n){let r=Wo(n.limit,"limit")??50,o=n.after===void 0?-1:e.findIndex(a=>xt(t,a.group)===n.after);if(n.after!==void 0&&o<0)throw new p("Aggregate --after cursor is absent from the current grouping; restart without --after.",m.USAGE);let i=e.slice(o+1,o+1+r),s=o+1+i.length<e.length;return{groups:i,returned_count:i.length,truncated:s,next_after:s?xt(t,i.at(-1).group):null}}var qp={buildGroupKey:xt,compareAggregateRows:Zi,compareNullableGroupValue:Ji,completionPct:ts,normalizeTagGroupValue:Xi,parseGroupBy:Yi,parseNumericAggregation:Vi,parseStatus:Ki,readNumericAggregateValue:es,resolveGroupValue:Qi,updateCompletionCounts:Rn};(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]="acda1c64-cb50-57b5-868d-a27ca6912979")}catch{}})();var ns=1e6,rs=20;function os(e,t,n,r=rs){if(!Number.isSafeInteger(r)||r<0)throw new p("Child projection sample limit must be a non-negative integer.",m.USAGE);let o=e.trim().toLowerCase(),i={},s=[],a=0;for(let y of t){if(a+=1,a>ns)throw new p(`Child projection exceeded the ${ns.toLocaleString("en-US")} item safety bound.`,m.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let d=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),c=Po(Lo(s,No())),l=new Set(c.children_by_parent.get(o)??[]);for(let y of s)y.parent?.trim().toLowerCase()===o&&l.add(y.id.trim().toLowerCase());let u=[...l].map(y=>d.get(y)),f=0;for(let y of u){let w=y.status.trim().toLowerCase();i[w]=(i[w]??0)+1,Q(w,n)||(f+=1)}u.sort((y,w)=>y.id.localeCompare(w.id));let h=u.slice(0,r).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>h.length,_=r===0?rs:r;return{count:u.length,active:f,by_status:Object.fromEntries(Object.entries(i).sort(([y],[w])=>y.localeCompare(w))),sample:h,sample_limit:r,truncated:g,next_offset:g?h.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${h.length} --limit ${_}`:null,scanned:a}}(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]="926ca5b2-8cfc-56e7-8cbf-fb0e7152d834")}catch{}})();var cu=new Set(["event","meeting","reminder"]);function du(e){return cu.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function An(e){if(!du(e))return;let t=[...e.events??[]].sort((r,o)=>r.start_at.localeCompare(o.start_at)),n=t[0];return{deadline:e.deadline??null,start_at:n?.start_at??null,end_at:n?.end_at??null,location:n?.location??null,reminders:[...e.reminders??[]],events:t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="26bf8487-2515-5885-b6de-56ba6292fb65")}catch{}})();var uu=new Set(["epic","feature","milestone","plan"]),fu=new Set(Object.keys(Cr).map(e=>e.toLowerCase()));function Fn(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(n=>[n,e[n]?.length??0]))}function mu(e,t){let n=Fn(e);return[...t.length>0?["body"]:[],...Object.entries(n).flatMap(([r,o])=>o>0?[r]:[]),...n.files+n.tests+n.docs>0?["linked"]:[],"children",...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...An(e)?["schedule"]:[]]}function ss(e){let t=e.trim().toLowerCase();return t.length>0&&(uu.has(t)||!fu.has(t))}function is(e){return{ts:e.ts,author:e.author,message:e.message??null}}function pu(e,t){let n=e?.trim(),r=n&&n.length>0?n:null,o=[...t].reverse().find(s=>s.op==="claim"),i=[...t].reverse().find(s=>s.op==="release");return{claimed:r!==null,assignee:r,last_claim:o?is(o):null,last_release:i?is(i):null}}function hu(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(zt.includes(t))return t;throw new p("Get --depth must be one of brief|standard|deep|full",m.USAGE)}function gu(e,t){let n=Fn(e);if(t==="deep")return{...e,comments:e.comments??[],notes:e.notes??[],learnings:e.learnings??[],files:e.files??[],tests:e.tests??[],docs:e.docs??[],reminders:e.reminders??[],events:e.events??[],notes_count:n.notes,tests_count:n.tests,collection_counts:n};let{comments:r,notes:o,learnings:i,files:s,tests:a,docs:d,reminders:c,events:l,...u}=e;return{...u,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:n}}function yu(e){if(e===void 0)return null;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new p("Get --fields requires a comma-separated list of field names",m.USAGE);return t}function Tt(e){return e.startsWith("item.")?e.slice(5):e}function _u(e,t,n){if(e===null)return;let r=Kt(t),o=new Set(r),i=e.filter(s=>{let a=Tt(s);return!o.has(s)&&!o.has(a)});if(i.length>0){let s=["get",n,"--fields","id,title,status"];throw new p(`Unknown get --fields value(s): ${i.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:r,suggested_retry:de(s),suggested_retry_args:s}})}}var wu=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function vu(e,t,n){return Object.hasOwn(t,n)?t[n]:e[n]!==void 0?e[n]:wu.has(n)?[]:void 0}function bu(e,t){let n=e,r={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:Fn(e)},o={id:e.id};for(let i of t){let s=Tt(i);s==="body"||s==="linked"||s.startsWith("linked.")||s==="claim_state"||s.startsWith("claim_state.")||s==="children"||s.startsWith("children.")||s==="schedule"||s.startsWith("schedule.")||(o[s]=vu(n,r,s))}return o}function Le(e,t){return e?.some(n=>n===t||n===`item.${t}`)??!1}function It(e,t){return e.some(n=>{let r=Tt(n);return r===t||r.startsWith(`${t}.`)})}function ku(e,t){if(e.full&&(e.fields!==void 0||e.depth!==void 0))throw new p("Get projection options are mutually exclusive; remove the extra projection flag and retry.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:de(["get",t,"--full"]),suggested_retry_args:["get",t,"--full"]}});if(e.tree!==!0&&e.treeDepth!==void 0)throw new p("Get --tree-depth requires --tree",m.USAGE);if(e.at!==void 0&&e.tree===!0)throw new p("Get --at cannot be combined with --tree because workspace-level historical projections are not yet indexed.",m.USAGE);return{depth:e.full?"deep":hu(e.depth),treeDepth:e.tree===!0?G(e.treeDepth,"--tree-depth"):void 0,fields:yu(e.fields),fieldProjection:e.fields!==void 0}}async function Su(e,t,n){let r=T(process.cwd(),t.path);await B(r);let o=await $(r),i=F(o,C());if(n!==void 0){let d=await Go(e,n,{pmRoot:t.path});return{pmRoot:r,settings:o,typeToFolder:i.type_to_folder,locatedId:d.document.metadata.id,metadata:d.document.metadata,body:d.document.body,historical:d}}let s=await ue(r,e,o.id_prefix,o.item_format,i.type_to_folder);if(!s)throw await go(r,e,o.id_prefix,i.type_to_folder);let a=await fe(s,{schema:o.schema});return{pmRoot:r,settings:o,typeToFolder:i.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function Eu(e,t,n,r){let o=X(t.schema).definitions.map(i=>i.metadata_key);if(_u(e,o,r),n&&It(e??[],"children"))throw new p("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",m.USAGE)}function Dn(e){let{fieldProjection:t,depth:n,fields:r,field:o}=e;return t?o==="body"||o==="linked"?Le(r,o):It(r,o):n!=="brief"}async function Cu(e,t){if(!t)return;let n=Ke(e.pmRoot,e.locatedId),r=await te(n,e.locatedId);return pu(e.metadata.assignee,e.historical?r.slice(0,e.historical.target.historyIndex+1):r)}function xu(e,t,n,r){let o=r||Le(n,"linked.files"),i=r||Le(n,"linked.tests"),s=r||Le(n,"linked.docs");!r&&!o&&!i&&!s||(e.linked={files:o?t.metadata.files??[]:[],tests:i?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function Iu(e,t){if(!t)return;let n=P(e.settings.schema),r=await me(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return os(e.locatedId,r,n)}function Tu(e,t,n,r){if(!r)return;let o=An(t.metadata);if(o){if(n===null||Le(n,"schedule")){e.schedule=o;return}e.schedule=Object.fromEntries(Object.entries(o).filter(([i])=>n.some(s=>Tt(s)===`schedule.${i}`)))}}async function Ru(e,t,n,r){if(t.tree!==!0)return;let o=await W(void 0,{parent:e.locatedId,tree:!0,treeDepth:n===void 0?void 0:String(n),full:!0},r);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:n??null,count:o.count,items:o.items.map(i=>i)}}async function mh(e,t,n={}){let r=ku(n,e),o=await Su(e,t,n.at);Eu(r.fields,o.settings,o.historical!==void 0,o.locatedId);let i=Dn({...r,field:"body"}),s=Dn({...r,field:"linked"}),a=Dn({...r,field:"claim_state"}),d=o.historical===void 0&&(r.fieldProjection?It(r.fields,"children"):r.depth==="deep"&&ss(o.metadata.type)),c=r.fieldProjection?It(r.fields,"schedule"):r.depth!=="brief",l=await Cu(o,a),u={item:r.fieldProjection?bu(o.metadata,r.fields):gu(o.metadata,r.depth)};i&&(u.item.body=o.body),xu(u,o,r.fields,s),l&&(u.claim_state=l),Tu(u,o,r.fields,c);let f=await Iu(o,d);f!==void 0&&(u.children=f);let h=await Ru(o,n,r.treeDepth,t);if(h!==void 0&&(u.tree=h),o.historical&&(u.reconstructed=!0,u.as_of_version=o.historical.as_of_version,u.as_of_timestamp=o.historical.as_of_timestamp),o.historical===void 0)try{await zr({pmRoot:o.pmRoot,author:ee(void 0,o.settings.author_default),itemIds:[o.locatedId],intent:"get"})}catch{}return jr(u,mu(o.metadata,o.body)),u}var ph={shouldAutoIncludeGetChildren:ss};(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]="0cc18a30-5068-5c59-b559-7afc4d446ed8")}catch{}})();function Au(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function Du(e,t){return e.map(({entry:n,version:r})=>{let o=new Set,i=ro(n.patch);for(let s of i)o.add(Vt(s.path)),s.from&&o.add(Vt(s.from));return{index:r,...t?{version:t.offset===null?null:t.offset+r}:{},ts:n.ts,op:n.op,author:n.author,patch_ops:i.length,changed_fields:[...o].sort((s,a)=>s.localeCompare(a))}})}function Fu(e){if(e[0]?.op!=="history_compact_baseline")return;let t=Yt(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function Mu(e,t){let n=T(process.cwd(),t.path);await B(n);let r=await $(n),o=F(r,C()),i=e.trim()===tt,s=i?tt:fo(e,r.id_prefix),a=await ue(n,s,r.id_prefix,r.item_format,o.type_to_folder),d=a?.id??s,c=i?oo(n):Ke(n,d);if(!a&&!await Tr(c))throw new p(`Item ${e} not found`,m.NOT_FOUND);return a&&await lo({pmRoot:n,settings:r,itemId:a.id,commandLabel:"history"}),{historyPath:c,located:a,resolvedId:d,settings:r}}async function Ch(e,t,n){let r=le(t.limit),{historyPath:o,located:i,resolvedId:s,settings:a}=await Mu(e,n),d=await te(o,s),c=Fu(d),l=a.agent_identity.identity_vocabulary,u=pt(a.agent_identity.harness_signals),f=gt({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),h=$u(d).filter(({entry:D})=>f(D)),g=Au(h,r),_=g.map(({entry:D})=>D),y=t.compact===!0,w=y?Du(g,c):void 0,k=t.provenance===!0?g.map(({entry:D,durableVersion:I})=>ht(D,l,{itemId:s,version:I})):void 0,v=t.provenance===!0?"provenance":y?"compact":"full",S={compact:{compact_history:w},provenance:{provenance_history:k},full:{history:_}}[v],R={id:s,...S,compact:y,projection:{mode:v,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[v]},omission_receipt:Ve("history",v),count:_.length,limit:r??null,version_addressing:c,...t.provenanceSummary===!0?{provenance_summary:yt(h.map(({entry:D})=>D),l,u)}:{}};if((t.diff||t.field!==void 0)&&(R.diff=co(d,{windowStartIndex:Math.max(0,d.length-_.length),field:t.field})),t.verify){let D=i?(await fe(i,{schema:a.schema})).document:void 0;if(R.verification=Ho(d,D),s===tt&&R.verification.ok){let I=await io(T(process.cwd(),n.path));R.verification={...R.verification,ok:I.ok,errors:I.ok?R.verification.errors:[...R.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:I.ok,workspace_state_mismatches:I.mismatched_documents,workspace_state_missing:I.missing_documents,workspace_state_unreadable:I.unreadable_documents}}}return R}function $u(e){let t=Yt(e,!0);return e.map((n,r)=>({entry:n,version:r+1,durableVersion:t===null?void 0:t+r+1}))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6a84083a-153e-590f-bb9b-cde96ed09a74")}catch{}})();function Ou(e){if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(t!=="keyword"&&t!=="semantic"&&t!=="hybrid")throw new p("Search mode must be one of keyword|semantic|hybrid",m.USAGE);return t}function Rt(e){return e===!0}function as(e){return Fr(e,0,1)??void 0}function cs(e){if(e===void 0)return"or";let t=e.trim().toLowerCase();if(t!=="and"&&t!=="or"&&t!=="exact")throw new p("Search --match-mode must be one of and|or|exact",m.USAGE);return t}function ds(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(String(e).trim());if(!Number.isFinite(t)||t<0)throw new p("Search --min-score must be a finite number >= 0",m.USAGE);return t}function re(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return H(n,new Date,t)}function j(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function Mn(e,t){if(e!==void 0)return H(e,new Date,t)}function Nu(e){if(e===void 0)return;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new p("Search --fields requires a comma-separated list of field names",m.USAGE);return[...new Set(t)]}function At(e,t="<query>"){let n=e.compact===!0,r=e.full===!0,o=Nu(e.fields);if(Number(n)+Number(r)+ +(o!==void 0)>1)throw new p("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:de(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return n?{mode:"compact",fields:[...Kr]}:r?{mode:"full",fields:[]}:o?{mode:"fields",fields:o}:{mode:"full",fields:[]}}function $n(e,t,n="<query>"){if(e.mode!=="fields")return;let r=Vr(t.definitions.flatMap(s=>[s.key,s.metadata_key])),o=new Set(r),i=e.fields.filter(s=>{let a=s.trim();return!o.has(a)});if(i.length>0){let s=["search",n,"--fields","id,title,status,score"];throw new p(`Unknown search --fields value(s): ${i.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:r,suggested_retry:de(s),suggested_retry_args:s}})}}function Dt(e){let t=j(e);if(!t)throw new p("Search query must not be empty",m.USAGE);return t.split(/\s+/u).filter(Boolean)}function On(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var Lu=["auto","keyword","semantic","hybrid"];function Pu(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let n=t.trim().toLowerCase();return Lu.includes(n)?n:"auto"}function Nn(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:Ou(e.requested),source:"explicit"};let t=Pu(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Ln(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function Pn(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function jn(e){let t={title_exact_bonus:10,title_weight:48,description_weight:5,tags_weight:6,status_weight:2,body_weight:1,comments_weight:1,notes_weight:1,learnings_weight:1,reminders_weight:2,events_weight:2,dependencies_weight:3,linked_content_weight:1},n=e.search?.tuning;if(!n)return t;let r=(o,i)=>typeof o=="number"&&Number.isFinite(o)&&o>=0?o:i;return{title_exact_bonus:r(n.title_exact_bonus,t.title_exact_bonus),title_weight:r(n.title_weight,t.title_weight),description_weight:r(n.description_weight,t.description_weight),tags_weight:r(n.tags_weight,t.tags_weight),status_weight:r(n.status_weight,t.status_weight),body_weight:r(n.body_weight,t.body_weight),comments_weight:r(n.comments_weight,t.comments_weight),notes_weight:r(n.notes_weight,t.notes_weight),learnings_weight:r(n.learnings_weight,t.learnings_weight),reminders_weight:r(n.reminders_weight,t.reminders_weight),events_weight:r(n.events_weight,t.events_weight),dependencies_weight:r(n.dependencies_weight,t.dependencies_weight),linked_content_weight:r(n.linked_content_weight,t.linked_content_weight)}}(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]="91b01dd0-6a8d-5b97-96d2-c27f4044c009")}catch{}})();function ju(e){return Xe("search",{query:e.query.trim(),mode:e.mode,options:Ye(e.searchOptions,Lr)})}function ls(e){let t=Hr(e.sorted,{cursor:e.searchOptions.after,fingerprint:ju(e),limit:e.limit,readId:n=>n.item.id});return{limited:t.rows,pageExtras:{applied_limit:e.limit,...t.has_more?{has_more:!0,truncated:!0}:{},...t.next_cursor?{next_cursor:t.next_cursor}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="48888c80-60e1-5905-afd5-8c1b6e532f99")}catch{}})();function us(e){if(typeof e!="string")return!1;let t=e.split(",").map(n=>n.trim().toLowerCase()).filter(Boolean);return t.length===1&&t[0]==="all"}var Uu=[{optionKey:"status",summaryKey:"status",normalize:e=>us(e)?"all":e},{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"parent",summaryKey:"parent"}];function ye(e){let{mode:t,matchMode:n,options:r,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:d,runtimeFieldFilters:c}=e,l={};return Bo(l,r,Uu),Object.assign(l,Zt(r)),Object.assign(l,Jt(r)),n!==void 0&&n!=="or"&&(l.match_mode=n),o&&(l.include_linked=!0),i&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&r.semanticWeight!==void 0&&(l.hybrid_semantic_weight=d),r.limit!==void 0&&(l.limit=r.limit),c&&Object.keys(c).length>0&&(l.runtime_filters=c),l}function _e(e){let{effectiveMode:t,matchMode:n,options:r,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:d,queryExpansion:c,rerank:l,runtimeFieldFilters:u}=e,f=h=>h??null;return{mode:t,match_mode:n,status:r.status===void 0||us(r.status)?"all":r.status,type:f(r.type),tag:f(r.tag),priority:f(r.priority),deadline_before:f(r.deadlineBefore),deadline_after:f(r.deadlineAfter),updated_after:f(r.updatedAfter),updated_before:f(r.updatedBefore),created_after:f(r.createdAfter),created_before:f(r.createdBefore),assignee:f(r.assignee),sprint:f(r.sprint),release:f(r.release),parent:f(r.parent),...Zt(r),...Jt(r),include_linked:o,title_exact:i,phrase_exact:s,score_threshold:a,hybrid_semantic_weight:t==="hybrid"?d:null,query_expansion_enabled:c.enabled,query_expansion_provider:c.provider,rerank_enabled:l.enabled,rerank_model:l.model,rerank_top_k:l.top_k,limit:f(r.limit),runtime_filters:u}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bc52818b-d37f-5d00-954d-d50203a433c2")}catch{}})();var Bu=1.2,Hu=.75;function Un(e){return pe(e)}function Gu(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return t}function ms(e){let t=[],n=new Map,r=0;for(let i of e){let s=Un(i.text),a=Gu(s);r+=s.length;for(let d of a.keys())n.set(d,(n.get(d)??0)+1);t.push({id:i.id,termFrequencies:a,length:s.length})}let o=t.length;return{documents:t,documentFrequency:n,documentCount:o,averageDocumentLength:o>0?r/o:0}}function Wu(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function ps(e,t,n){let r=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return r;let o=[...new Set(t.filter(s=>s.length>0))];if(o.length===0)return r;let i=new Map;for(let s of o){let a=e.documentFrequency.get(s);a!==void 0&&i.set(s,Wu(e.documentCount,a))}if(i.size===0)return r;for(let s of e.documents){let a=0;for(let[d,c]of i){let l=s.termFrequencies.get(d);if(l===void 0)continue;let u=1-n.b+n.b*s.length/e.averageDocumentLength,f=l+n.k1*u;a+=c*(l*(n.k1+1)/f)}a>0&&r.set(s.id,a)}return r}function fs(e,t,n,r){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(r,Math.max(n,e))}function hs(e){let t=n=>typeof n=="string"?[n]:typeof n=="number"?[String(n)]:Array.isArray(n)?n.flatMap(t):typeof n=="object"&&n!==null?Object.values(n).flatMap(t):[];return t(Object.values(e)).join(" ")}function gs(e){let t=e?.search?.bm25;return{k1:fs(t?.k1,Bu,0,1e3),b:fs(t?.b,Hu,0,1)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e2985104-efdb-59e5-9674-2dd865ebdf56")}catch{}})();var Bn=4,qu=20,zu=200,Ku=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function Hn(e,t){let n=[],r=new Set;for(let o of e){let i=o.trim().replaceAll(/\s+/g," ");if(i.length===0)continue;let s=i.toLowerCase();if(!r.has(s)&&(r.add(s),n.push(i),n.length>=t))break}return n}function Vu(e){let t=e.toLowerCase();return t.length>4&&t.endsWith("ies")?`${t.slice(0,-3)}y`:t.length>4&&(t.endsWith("ches")||t.endsWith("shes")||t.endsWith("xes")||t.endsWith("zes")||t.endsWith("sses"))?t.slice(0,-2):t.length>3&&t.endsWith("s")&&!t.endsWith("ss")&&!t.endsWith("us")&&!t.endsWith("is")&&!t.endsWith("as")?t.slice(0,-1):t}function Yu(e){let t=e.toLowerCase();return t.length>2&&(!t.endsWith("s")||t.endsWith("ss"))?t.endsWith("y")&&!/[aeiou]y$/u.test(t)?`${t.slice(0,-1)}ies`:t.endsWith("ch")||t.endsWith("sh")||t.endsWith("x")||t.endsWith("z")||t.endsWith("ss")?`${t}es`:`${t}s`:t}function ys(e,t=Bn){let n=e.trim().replaceAll(/\s+/g," ");if(n.length===0)return[];let r=pe(n);if(r.length===0)return[n];let o=r.filter(a=>!Ku.has(a.toLowerCase())),i=r.map(a=>Vu(a)),s=o.map(a=>Yu(a));return Hn([n,r.join(" "),o.join(" "),i.join(" "),s.join(" ")],Math.max(1,t))}function _s(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?Hn(t.filter(n=>typeof n=="string"),Bn):[]}function ws(e,t,n){return Hn([...e,...t],Math.max(1,n))}function vs(e,t){let r=e.search?.query_expansion,o=be(r?.provider);return{enabled:r?.enabled===!0,provider:o??t,max_queries:Bn}}function bs(e,t){let r=e.search?.rerank,o=be(r?.model),s=Dr(r?.top_k)??qu;return{enabled:r?.enabled===!0,model:o??t,top_k:Math.min(zu,s)}}function ks(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let n=new Map;for(let o of t){if(typeof o!="object"||o===null)continue;let i=be(o.id),s=o.score;if(!i||typeof s!="number"||!Number.isFinite(s))continue;let a=n.get(i);(a===void 0||s>a)&&n.set(i,s)}let r=[...n.entries()].map(([o,i])=>({id:o,score:i}));return r.sort((o,i)=>o.score!==i.score?i.score-o.score:o.id.localeCompare(i.id)),r}function Xu(e,t){let n=e.length,r=0;for(let o=0;o<n;o+=1)r+=e[o]*t[o];return r}function Ss(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function Qu(e,t,n){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let r=Xu(e,t),o=Ss(t),i=n*o;return!Number.isFinite(r)||!Number.isFinite(n)||!Number.isFinite(o)||!Number.isFinite(i)||i===0?0:Math.max(-1,Math.min(1,r/i))}async function Es(e,t,n,r,o){if(r.length===0)return new Map;let i=be(t)??e.model,s=i===e.model?e:{...e,model:i},a=[n.trim(),...r.map(f=>f.text)],d=await st(s,a,o?{timeout_ms:o}:{}),c=d[0];if(!c)return new Map;let l=Ss(c),u=new Map;for(let f=0;f<r.length;f+=1){let h=r[f],g=d[f+1];if(!g)continue;let _=Qu(c,g,l);u.set(h.id,Math.max(0,Math.min(1,(_+1)/2)))}return u}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a5e4bd88-a099-559f-8194-7b56f325eb0e")}catch{}})();function we(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function K(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function Pe(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function Gn(e){let t=e.metadata;return[t.title,t.description,t.status,we(t.tags).join(" "),e.body,K(t.comments).map(n=>n.text).join(" "),K(t.notes).map(n=>n.text).join(" "),K(t.learnings).map(n=>n.text).join(" "),at(t).join(" "),ct(t).join(" "),Pe(t.dependencies).map(n=>`${n.id} ${n.kind}`).join(" "),dt(t)]}function Wn(e,t){return Gn(e).some(n=>j(n).includes(t))}function qn(e,t,n){return!n.titleExact&&!n.phraseExact?e:e.filter(r=>!(n.titleExact&&j(r.metadata.title)!==t||n.phraseExact&&!Wn(r,t)))}function Ju(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null".',m.USAGE)}function Zu(e,t,n){let r=Ce(e.assignee,{label:"--assignee"});Ju(r);let o=jo(e),i=Uo(e);return{typeFilter:Ro(e.type,t),tagFilter:Ce(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Ao(e.priority),deadlineBefore:Mn(e.deadlineBefore,"deadline-before"),deadlineAfter:Mn(e.deadlineAfter,"deadline-after"),updatedAfter:re(e.updatedAfter,"updated-after"),updatedBefore:re(e.updatedBefore,"updated-before"),createdAfter:re(e.createdAfter,"created-after"),createdBefore:re(e.createdBefore,"created-before"),assigneeFilter:r,sprintFilter:Ce(e.sprint,{label:"--sprint"}),releaseFilter:Ce(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:n&&n.length>0?new Set(n):void 0,missingMetadataFilters:o,missingMetadataActive:Fo(o),contentFieldFilters:i,contentFiltersActive:$o(i)}}function ef(e,t){return tf(e,t)&&qr(e,t)&&nf(e,t)}function tf(e,t){if(t.statusSet&&!t.statusSet.has(e.status)||t.typeFilter&&!t.typeFilter.has(e.type))return!1;let n=t.tagFilter;return!(n&&!we(e.tags).some(r=>n.has(r))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function nf(e,t){return!(t.assigneeFilter!==void 0&&(e.assignee===void 0||!t.assigneeFilter.has(e.assignee))||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))||t.releaseFilter!==void 0&&(e.release===void 0||!t.releaseFilter.has(e.release))||t.parentFilter!==void 0&&e.parent!==t.parentFilter)}function rf(e,t,n,r){let o=e.metadata;return!(!ef(o,t)||!ot(o,n)||t.missingMetadataActive&&!Mo(o,t.missingMetadataFilters,r)||t.contentFiltersActive&&!Oo(o,t.contentFieldFilters))}function zn(e,t,n,r,o,i){let s=Zu(t,n,o);return e.filter(a=>rf(a,s,r,i))}(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]="5a927991-1dbe-5906-a0eb-7da2534b6905")}catch{}})();var of=2,sf=120,af=6,cf=40,df=1e3,lf=900,uf="\xAB",ff="\xBB",Cs=60;function Ft(e,t){let n=0,r=0;for(;;){let o=e.indexOf(t,r);if(o<0)return n;n+=1,r=o+t.length}}var xs=[{name:"title",weightKey:"title_weight",value:e=>e.metadata.title},{name:"description",weightKey:"description_weight",value:e=>e.metadata.description},{name:"tags",weightKey:"tags_weight",value:e=>we(e.metadata.tags).join(" ")},{name:"status",weightKey:"status_weight",value:e=>typeof e.metadata.status=="string"?e.metadata.status:""},{name:"body",weightKey:"body_weight",value:e=>e.body},{name:"comments",weightKey:"comments_weight",value:e=>K(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>K(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>K(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>at(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>ct(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>Pe(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>dt(e.metadata)}],mf=new Map(xs.map(e=>[e.name,e]));function Kn(e,t){let n=t.filter(o=>o.length>0).sort((o,i)=>i.length-o.length).map(o=>o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(n.length===0)return e;let r=new RegExp(n.join("|"),"gi");return e.replace(r,o=>`${uf}${o}${ff}`)}function Vn(e,t){if(e.length===0)return null;let n=e.toLowerCase(),r=-1,o=0;for(let l of t){if(l.length===0)continue;let u=n.indexOf(l);u>=0&&(r<0||u<r)&&(r=u,o=l.length)}if(r<0)return null;let i=Math.max(0,r-Cs),s=Math.min(e.length,r+o+Cs),a=Kn(e.slice(i,s),t),d=i>0?"\u2026":"",c=s<e.length?"\u2026":"";return`${d}${a}${c}`}function Mt(e,t,n){let r=[];for(let o of t){let i=mf.get(o);if(i===void 0)continue;let s=Vn(i.value(e),n);s!==null&&r.push({field:o,snippet:s})}return r}function pf(e,t,n){return[...xs.map(r=>({name:r.name,value:r.value(e),weight:n[r.weightKey]})),{name:"linked_content",value:t,weight:n.linked_content_weight}]}function hf(e,t,n){let r=j(e.id),o=typeof n=="string"?n.trim().toLowerCase():"",i=j(o),s=i.length>0&&r.startsWith(i)?r.slice(i.length).trim():r;return t!==r&&t!==s?null:{item:e,score:t===r?df:lf,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function gf(e,t,n,r,o){for(let i of e){let s=t.get(i)??0;s>0&&(o.score+=s*r.title_exact_bonus,o.matched.add("title"),o.matchedTokens.add(i));for(let a of n){let d=Ft(a.value.toLowerCase(),i);d>0&&(o.score+=d*a.weight,o.matched.add(a.name),o.matchedTokens.add(i))}}}function yf(e,t,n,r){j(e.title)===t&&(r.score+=sf,r.matched.add("title"));for(let i of n){let s=Ft(j(i.value),t);s>0&&(r.score+=s*i.weight*af,r.matched.add(i.name))}}function Yn(e,t,n,r,o,i,s=!1){let a=e.metadata,d=hf(a,n,i);if(d)return d;let c=new Map;for(let _ of pe(a.title))c.set(_,(c.get(_)??0)+1);let l=pf(e,r,o),u={score:0,matched:new Set,matchedTokens:new Set};gf(t,c,l,o,u);let f=new Set(t),h=f.size>0&&u.matchedTokens.size===f.size;return s&&f.size>1&&h&&(u.score+=cf),t.length>=of&&n.includes(" ")&&yf(a,n,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((_,y)=>_.localeCompare(y)),matched_all_terms:h}}function Xn(e,t){return[...e].sort((n,r)=>{let o=r.score-n.score;if(o!==0)return o;let i=Q(n.item.status,t),s=Q(r.item.status,t);if(i!==s)return i?1:-1;let a=n.item.priority-r.item.priority;if(a!==0)return a;let d=E(r.item.updated_at,n.item.updated_at);return d!==0?d:n.item.id.localeCompare(r.item.id)})}function Qn(e,t,n,r,o,i,s,a=!1){return Yn(e,t,n,r?o.get(e.metadata.id)??"":"",i,s,a)}function je(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;for(let o of e.values())t=Math.min(t,o),n=Math.max(n,o);if(n===t)return new Map([...e.keys()].map(o=>[o,1]));let r=new Map;for(let[o,i]of e)r.set(o,(i-t)/(n-t));return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0175d395-3f87-5a93-8d4f-a3150aaf16ae")}catch{}})();function Ot(e){let t=[],n=e;for(let r=0;r<5&&n&&typeof n=="object";r+=1){let o=n.code;typeof o=="string"&&t.push(o.toLowerCase()),n=n.cause}return t.join(" ")}function Nt(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),n=Ot(e),r=`${t} ${n}`;return r.includes("timed out")||r.includes("timeout")||r.includes("etimedout")?"timeout":r.includes("econnrefused")||r.includes("connection refused")||r.includes("connect ")||r.includes("enotfound")||r.includes("eai_again")||r.includes("econnreset")||r.includes("fetch failed")?"connection":"error"}function Jn(e,t){let n=Nt(t);return`search_${e}_fallback:${n}:using_keyword_mode`}function Is(e){return e?.commands?.some(n=>n.command.trim()==="reindex")===!0?{command:"pm reindex --mode hybrid",args:["reindex","--mode","hybrid"]}:{command:"pm install search-advanced --project",args:["install","search-advanced","--project"],follow_up_command:"pm reindex --mode hybrid",follow_up_args:["reindex","--mode","hybrid"]}}async function Zn(e,t,n){try{let r=await ko(e);r.warnings.length>0&&n.push(...r.warnings);let o=zo(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),r.entries);if(o.length===0)return;let i=Is(C());n.push(...Ts(o.length,i)),process.stderr.write(`[pm] warning: ${o.length} item${o.length===1?" is":"s are"} new or modified since the last reindex and ${o.length===1?"is":"are"} NOT in the semantic index yet \u2014 run '${i.command}'${i.follow_up_command?`, then '${i.follow_up_command}'`:""}. (Write-time embedding is governed by search.mutation_refresh_policy; staleness means the embed was skipped, failed, or the backend was unreachable.)
8
+ `).trimEnd()}function ql(e){let t=[`- now: ${e.now}`,`- ready: ${e.summary.ready} (in_progress: ${e.summary.in_progress}), blocked: ${e.summary.blocked}, candidates: ${e.summary.candidates}`];return e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(""),t}function zl(e){return e?[`- ${Ne(e)}`,` why: ${e.reasons.join("; ")}`]:[]}function Oe(e,t,n){return[`## ${e}`,...t.length===0?[n]:t,""]}function Kl(e){let t=e.blockers.map(n=>`${n.id}(${n.status??"?"})`).join(", ");return`${Ne(e)} blocked_by:${t}`}function Ne(e){let t=e.deadline??"-",n=e.parent?` parent:${e.parent}`:"",r=e.unblocks.length>0?` unblocks:${e.unblocks.length}`:"";return`${Number.isInteger(e.rank)?`#${e.rank} `:""}${e.id} p${e.priority} ${e.status} ${e.type} deadline:${t}${n}${r} ${e.title}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2a9a4dc0-8027-5761-9bbf-cac1ef83bd10")}catch{}})();var Vl=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Yl=["filterAcMissing","filterEstimatesMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","hasNotes","hasLearnings","hasFiles","hasDocs","hasTests","hasComments","hasDeps","hasBody","hasLinkedCommand","noNotes","noLearnings","noFiles","noDocs","noTests","noComments","noDeps","emptyBody","noLinkedCommand"];function Xl(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function Pp(e,t,n={}){let r=n.includePagination!==!1;return[t,...Vl.map(i=>e?.[i]),...r?[e?.limit,e?.offset]:[]].some(Xl)||Yl.some(i=>e?.[i]===!0)}function Wi(e){return{type:e.type,tag:e.tag,priority:e.priority,deadlineBefore:e.deadlineBefore,deadlineAfter:e.deadlineAfter,assignee:e.assignee,assigneeFilter:e.assigneeFilter,parent:e.parent,sprint:e.sprint,release:e.release}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7a4a98b2-3872-506d-b88d-877b0033dd2d")}catch{}})();var qi=["parent","type","priority","status","assignee","tags","sprint","release"];function Ki(e,t){let n=nt(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function Vi(e,t=["estimate","estimated_minutes","priority"]){let n=e.sum?.trim(),r=e.avg?.trim(),o=n&&n.length>0?n:void 0,i=r&&r.length>0?r:void 0;if(!o&&!i)return null;if(o&&i&&o!==i)throw new p("Aggregate --sum and --avg must target the same numeric field",m.USAGE);let s=o??i;if(!t.includes(s))throw new p(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,m.USAGE);return{field:s,sum:o!==void 0,avg:i!==void 0}}function Yi(e){let t=e?.trim()??"status";if(t.length===0)throw new p("--group-by requires at least one field name",m.USAGE);let n=So(t);if(n.length===0)throw new p("--group-by requires a comma-separated list of fields",m.USAGE);for(let r of n)if(!qi.includes(r))throw new p(`Aggregate group fields must be one of ${qi.join("|")}; received "${r}"`,m.USAGE);return n}function Xi(e){let t=[...new Set(e.map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length===0?null:t.join(",")}function Qi(e,t){switch(e){case"parent":return t.parent??null;case"type":return t.type;case"priority":return t.priority;case"status":return t.status;case"assignee":return t.assignee??null;case"tags":return Xi(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function Ji(e,t){let n=e??null,r=t??null;return n===r?0:n===null?1:r===null?-1:typeof n=="number"&&typeof r=="number"?n-r:String(n).localeCompare(String(r))}function xt(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var Ql={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function zi(e,t){return t==null||t===""?Ql[e]:String(t)}function Jl(e,t){return e.length===1?zi(e[0],t[e[0]]):e.map(n=>`${n}=${zi(n,t[n])}`).join(" | ")}function Zi(e,t,n){for(let r of n){let o=Ji(e.group[r],t.group[r]);if(o!==0)return o}return 0}function es(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let o=r.trim();if(o.length===0)return null;let i=Number(o);if(Number.isFinite(i))return i}return null}function ts(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Rn(e,t,n){let r=N(String(t),n)??t;if(r===n.open_status){e.open_count+=1;return}if(r==="in_progress"||n.active_statuses.has(r)&&r!==n.open_status){e.in_progress_count+=1;return}if(n.terminal_done_statuses.has(r)||r===n.close_status){e.closed_count+=1;return}e.other_count+=1}function Zl(e,t){return{row:{group:e,count:1},numeric_count:t===null?0:1,numeric_sum:t??0,null_count:t===null?1:0,open_count:0,in_progress_count:0,closed_count:0,other_count:0}}function eu(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function tu(e){e.accumulator.row.count+=1,e.includeCompletion&&Rn(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&eu(e.accumulator,e.numericValue)}function nu(e,t,n,r){for(let o of t){let i=xt(n,o),s=e.get(i);if(s){tu({...r,accumulator:s});continue}let a=Zl(o,r.numericValue);r.includeCompletion&&Rn(a,r.item.status,r.statusRegistry),e.set(i,a)}}function ru(e,t){let n={};for(let r of e)n[r]=Qi(r,t);return n}function ou(e,t,n){let r=[ru(e,t)];if(n==="tuple")return r;for(let o of e){let i=t[o];if(!Array.isArray(i))continue;let s=[...new Set(i.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(r=r.flatMap(a=>s.map(d=>({...a,[o]:d}))))}return r}function iu(e,t,n,r){let o={...e.row,group_label:Jl(t,e.row.group)};return n&&(o.open=e.open_count,o.in_progress=e.in_progress_count,o.closed=e.closed_count,o.other=e.other_count,o.completion_pct=ts(e.closed_count,e.row.count)),r!==null&&(o.null_count=e.null_count,r.sum&&(o.sum=e.numeric_sum),r.avg&&(o.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),o}function su(e){return{group_by:e.groupBy,set_mode:e.setMode,count:!0,completion:e.includeCompletion,include_unparented:e.includeUnparented,status:e.status?.[0]??null,status_values:e.status,type:e.options.type??null,tag:e.options.tag??null,priority:e.options.priority??null,deadline_before:e.options.deadlineBefore??null,deadline_after:e.options.deadlineAfter??null,assignee:e.options.assignee??null,assignee_filter:e.options.assigneeFilter??null,parent:e.options.parent??null,sprint:e.options.sprint??null,release:e.options.release??null,...e.numericAggregation!==null?{sum:e.options.sum??null,avg:e.options.avg??null,numeric_field:e.numericAggregation.field}:{}}}async function Wp(e,t){if(e.count===!1)throw new p("Aggregate grouped counts are always enabled; omit count=false.",m.USAGE);let n=T(process.cwd(),t.path),r=await $(n),o=P(r.schema),i=["estimate","estimated_minutes","priority",...X(r.schema).definitions.filter(v=>v.type==="number").map(v=>v.metadata_key)],s=Yi(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new p("Aggregate --set-mode must be element or tuple",m.USAGE);let d=Ki(e.status,o),c=Vi(e,[...new Set(i)].sort((v,S)=>v.localeCompare(S))),l=e.completion===!0,u=e.includeUnparented===!0,f=await W(void 0,{...Wi(e),status:e.status,noTruncate:!0,strictRead:!0},t),h=new Map,g=0,_=0,y=0;for(let v of f.items){let S=v;if(s.includes("parent")&&S.parent===void 0&&!u){g+=1;continue}let J=c===null?null:es(S,c.field),R=ou(s,S,a);nu(h,R,s,{item:S,statusRegistry:o,includeCompletion:l,numericAggregation:c,numericValue:J}),y+=R.length,_+=1}let w=[...h.values()].map(v=>iu(v,s,l,c)).sort((v,S)=>Zi(v,S,s)),k=f.warnings&&f.warnings.length>0?f.warnings:void 0;return{...au(w,s,e),count:w.length,totals:{items_considered:f.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:su({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:d,options:e,numericAggregation:c}),now:M(),...k?{warnings:k}:{}}}function au(e,t,n){let r=Wo(n.limit,"limit")??50,o=n.after===void 0?-1:e.findIndex(a=>xt(t,a.group)===n.after);if(n.after!==void 0&&o<0)throw new p("Aggregate --after cursor is absent from the current grouping; restart without --after.",m.USAGE);let i=e.slice(o+1,o+1+r),s=o+1+i.length<e.length;return{groups:i,returned_count:i.length,truncated:s,next_after:s?xt(t,i.at(-1).group):null}}var qp={buildGroupKey:xt,compareAggregateRows:Zi,compareNullableGroupValue:Ji,completionPct:ts,normalizeTagGroupValue:Xi,parseGroupBy:Yi,parseNumericAggregation:Vi,parseStatus:Ki,readNumericAggregateValue:es,resolveGroupValue:Qi,updateCompletionCounts:Rn};(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]="acda1c64-cb50-57b5-868d-a27ca6912979")}catch{}})();var ns=1e6,rs=20;function os(e,t,n,r=rs){if(!Number.isSafeInteger(r)||r<0)throw new p("Child projection sample limit must be a non-negative integer.",m.USAGE);let o=e.trim().toLowerCase(),i={},s=[],a=0;for(let y of t){if(a+=1,a>ns)throw new p(`Child projection exceeded the ${ns.toLocaleString("en-US")} item safety bound.`,m.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let d=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),c=Po(Lo(s,No())),l=new Set(c.children_by_parent.get(o)??[]);for(let y of s)y.parent?.trim().toLowerCase()===o&&l.add(y.id.trim().toLowerCase());let u=[...l].map(y=>d.get(y)),f=0;for(let y of u){let w=y.status.trim().toLowerCase();i[w]=(i[w]??0)+1,Q(w,n)||(f+=1)}u.sort((y,w)=>y.id.localeCompare(w.id));let h=u.slice(0,r).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>h.length,_=r===0?rs:r;return{count:u.length,active:f,by_status:Object.fromEntries(Object.entries(i).sort(([y],[w])=>y.localeCompare(w))),sample:h,sample_limit:r,truncated:g,next_offset:g?h.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${h.length} --limit ${_}`:null,scanned:a}}(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]="926ca5b2-8cfc-56e7-8cbf-fb0e7152d834")}catch{}})();var cu=new Set(["event","meeting","reminder"]);function du(e){return cu.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function An(e){if(!du(e))return;let t=[...e.events??[]].sort((r,o)=>r.start_at.localeCompare(o.start_at)),n=t[0];return{deadline:e.deadline??null,start_at:n?.start_at??null,end_at:n?.end_at??null,location:n?.location??null,reminders:[...e.reminders??[]],events:t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4f77ad73-bb93-5b04-b33b-c0666e55f83a")}catch{}})();var uu=new Set(["epic","feature","milestone","plan"]),fu=new Set(Object.keys(Cr).map(e=>e.toLowerCase()));function Fn(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(n=>[n,e[n]?.length??0]))}function mu(e,t,n){let r=Fn(e);return[...t.length>0?["body"]:[],...Object.entries(r).flatMap(([o,i])=>i>0?[o]:[]),...r.files+r.tests+r.docs>0?["linked"]:[],...n===void 0?["children"]:n.count>0?["children"]:[],...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...An(e)?["schedule"]:[]]}function ss(e){let t=e.trim().toLowerCase();return t.length>0&&(uu.has(t)||!fu.has(t))}function is(e){return{ts:e.ts,author:e.author,message:e.message??null}}function pu(e,t){let n=e?.trim(),r=n&&n.length>0?n:null,o=[...t].reverse().find(s=>s.op==="claim"),i=[...t].reverse().find(s=>s.op==="release");return{claimed:r!==null,assignee:r,last_claim:o?is(o):null,last_release:i?is(i):null}}function hu(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(zt.includes(t))return t;throw new p("Get --depth must be one of brief|standard|deep|full",m.USAGE)}function gu(e,t){let n=Fn(e);if(t==="deep")return{...e,comments:e.comments??[],notes:e.notes??[],learnings:e.learnings??[],files:e.files??[],tests:e.tests??[],docs:e.docs??[],reminders:e.reminders??[],events:e.events??[],notes_count:n.notes,tests_count:n.tests,collection_counts:n};let{comments:r,notes:o,learnings:i,files:s,tests:a,docs:d,reminders:c,events:l,...u}=e;return{...u,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:n}}function yu(e){if(e===void 0)return null;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new p("Get --fields requires a comma-separated list of field names",m.USAGE);return t}function Tt(e){return e.startsWith("item.")?e.slice(5):e}function _u(e,t,n){if(e===null)return;let r=Kt(t),o=new Set(r),i=e.filter(s=>{let a=Tt(s);return!o.has(s)&&!o.has(a)});if(i.length>0){let s=["get",n,"--fields","id,title,status"];throw new p(`Unknown get --fields value(s): ${i.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:r,suggested_retry:de(s),suggested_retry_args:s}})}}var wu=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function vu(e,t,n){return Object.hasOwn(t,n)?t[n]:e[n]!==void 0?e[n]:wu.has(n)?[]:void 0}function bu(e,t){let n=e,r={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:Fn(e)},o={id:e.id};for(let i of t){let s=Tt(i);s==="body"||s==="linked"||s.startsWith("linked.")||s==="claim_state"||s.startsWith("claim_state.")||s==="children"||s.startsWith("children.")||s==="schedule"||s.startsWith("schedule.")||(o[s]=vu(n,r,s))}return o}function Le(e,t){return e?.some(n=>n===t||n===`item.${t}`)??!1}function It(e,t){return e.some(n=>{let r=Tt(n);return r===t||r.startsWith(`${t}.`)})}function ku(e,t){if(e.full&&(e.fields!==void 0||e.depth!==void 0))throw new p("Get projection options are mutually exclusive; remove the extra projection flag and retry.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:de(["get",t,"--full"]),suggested_retry_args:["get",t,"--full"]}});if(e.tree!==!0&&e.treeDepth!==void 0)throw new p("Get --tree-depth requires --tree",m.USAGE);if(e.at!==void 0&&e.tree===!0)throw new p("Get --at cannot be combined with --tree because workspace-level historical projections are not yet indexed.",m.USAGE);return{depth:e.full?"deep":hu(e.depth),full:e.full===!0||e.depth?.trim().toLowerCase()==="full",treeDepth:e.tree===!0?G(e.treeDepth,"--tree-depth"):void 0,fields:yu(e.fields),fieldProjection:e.fields!==void 0}}async function Su(e,t,n){let r=T(process.cwd(),t.path);await B(r);let o=await $(r),i=F(o,C());if(n!==void 0){let d=await Go(e,n,{pmRoot:t.path});return{pmRoot:r,settings:o,typeToFolder:i.type_to_folder,locatedId:d.document.metadata.id,metadata:d.document.metadata,body:d.document.body,historical:d}}let s=await ue(r,e,o.id_prefix,o.item_format,i.type_to_folder);if(!s)throw await go(r,e,o.id_prefix,i.type_to_folder);let a=await fe(s,{schema:o.schema});return{pmRoot:r,settings:o,typeToFolder:i.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function Eu(e,t,n,r){let o=X(t.schema).definitions.map(i=>i.metadata_key);if(_u(e,o,r),n&&It(e??[],"children"))throw new p("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",m.USAGE)}function Dn(e){let{fieldProjection:t,depth:n,fields:r,field:o}=e;return t?o==="body"||o==="linked"?Le(r,o):It(r,o):n!=="brief"}async function Cu(e,t){if(!t)return;let n=Ke(e.pmRoot,e.locatedId),r=await te(n,e.locatedId);return pu(e.metadata.assignee,e.historical?r.slice(0,e.historical.target.historyIndex+1):r)}function xu(e,t,n,r){let o=r||Le(n,"linked.files"),i=r||Le(n,"linked.tests"),s=r||Le(n,"linked.docs");!r&&!o&&!i&&!s||(e.linked={files:o?t.metadata.files??[]:[],tests:i?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function Iu(e,t){if(!t)return;let n=P(e.settings.schema),r=await me(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return os(e.locatedId,r,n)}function Tu(e,t,n,r){if(!r)return;let o=An(t.metadata);if(o){if(n===null||Le(n,"schedule")){e.schedule=o;return}e.schedule=Object.fromEntries(Object.entries(o).filter(([i])=>n.some(s=>Tt(s)===`schedule.${i}`)))}}async function Ru(e,t,n,r){if(t.tree!==!0)return;let o=await W(void 0,{parent:e.locatedId,tree:!0,treeDepth:n===void 0?void 0:String(n),full:!0},r);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:n??null,count:o.count,items:o.items.map(i=>i)}}async function mh(e,t,n={}){let r=ku(n,e),o=await Su(e,t,n.at);Eu(r.fields,o.settings,o.historical!==void 0,o.locatedId);let i=Dn({...r,field:"body"}),s=Dn({...r,field:"linked"}),a=Dn({...r,field:"claim_state"}),d=o.historical===void 0&&(r.fieldProjection?It(r.fields,"children"):r.depth==="deep"&&(r.full||ss(o.metadata.type))),c=r.fieldProjection?It(r.fields,"schedule"):r.depth!=="brief",l=await Cu(o,a),u={item:r.fieldProjection?bu(o.metadata,r.fields):gu(o.metadata,r.depth)};i&&(u.item.body=o.body),xu(u,o,r.fields,s),l&&(u.claim_state=l),Tu(u,o,r.fields,c);let f=await Iu(o,d);f!==void 0&&(u.children=f);let h=await Ru(o,n,r.treeDepth,t);if(h!==void 0&&(u.tree=h),o.historical&&(u.reconstructed=!0,u.as_of_version=o.historical.as_of_version,u.as_of_timestamp=o.historical.as_of_timestamp),o.historical===void 0)try{await zr({pmRoot:o.pmRoot,author:ee(void 0,o.settings.author_default),itemIds:[o.locatedId],intent:"get"})}catch{}return jr(u,mu(o.metadata,o.body,f)),u}var ph={shouldAutoIncludeGetChildren:ss};(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]="0cc18a30-5068-5c59-b559-7afc4d446ed8")}catch{}})();function Au(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function Du(e,t){return e.map(({entry:n,version:r})=>{let o=new Set,i=ro(n.patch);for(let s of i)o.add(Vt(s.path)),s.from&&o.add(Vt(s.from));return{index:r,...t?{version:t.offset===null?null:t.offset+r}:{},ts:n.ts,op:n.op,author:n.author,patch_ops:i.length,changed_fields:[...o].sort((s,a)=>s.localeCompare(a))}})}function Fu(e){if(e[0]?.op!=="history_compact_baseline")return;let t=Yt(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function Mu(e,t){let n=T(process.cwd(),t.path);await B(n);let r=await $(n),o=F(r,C()),i=e.trim()===tt,s=i?tt:fo(e,r.id_prefix),a=await ue(n,s,r.id_prefix,r.item_format,o.type_to_folder),d=a?.id??s,c=i?oo(n):Ke(n,d);if(!a&&!await Tr(c))throw new p(`Item ${e} not found`,m.NOT_FOUND);return a&&await lo({pmRoot:n,settings:r,itemId:a.id,commandLabel:"history"}),{historyPath:c,located:a,resolvedId:d,settings:r}}async function Ch(e,t,n){let r=le(t.limit),{historyPath:o,located:i,resolvedId:s,settings:a}=await Mu(e,n),d=await te(o,s),c=Fu(d),l=a.agent_identity.identity_vocabulary,u=pt(a.agent_identity.harness_signals),f=gt({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),h=$u(d).filter(({entry:D})=>f(D)),g=Au(h,r),_=g.map(({entry:D})=>D),y=t.compact===!0,w=y?Du(g,c):void 0,k=t.provenance===!0?g.map(({entry:D,durableVersion:I})=>ht(D,l,{itemId:s,version:I})):void 0,v=t.provenance===!0?"provenance":y?"compact":"full",S={compact:{compact_history:w},provenance:{provenance_history:k},full:{history:_}}[v],R={id:s,...S,compact:y,projection:{mode:v,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[v]},omission_receipt:Ve("history",v),count:_.length,limit:r??null,version_addressing:c,...t.provenanceSummary===!0?{provenance_summary:yt(h.map(({entry:D})=>D),l,u)}:{}};if((t.diff||t.field!==void 0)&&(R.diff=co(d,{windowStartIndex:Math.max(0,d.length-_.length),field:t.field})),t.verify){let D=i?(await fe(i,{schema:a.schema})).document:void 0;if(R.verification=Ho(d,D),s===tt&&R.verification.ok){let I=await io(T(process.cwd(),n.path));R.verification={...R.verification,ok:I.ok,errors:I.ok?R.verification.errors:[...R.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:I.ok,workspace_state_mismatches:I.mismatched_documents,workspace_state_missing:I.missing_documents,workspace_state_unreadable:I.unreadable_documents}}}return R}function $u(e){let t=Yt(e,!0);return e.map((n,r)=>({entry:n,version:r+1,durableVersion:t===null?void 0:t+r+1}))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6a84083a-153e-590f-bb9b-cde96ed09a74")}catch{}})();function Ou(e){if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(t!=="keyword"&&t!=="semantic"&&t!=="hybrid")throw new p("Search mode must be one of keyword|semantic|hybrid",m.USAGE);return t}function Rt(e){return e===!0}function as(e){return Fr(e,0,1)??void 0}function cs(e){if(e===void 0)return"or";let t=e.trim().toLowerCase();if(t!=="and"&&t!=="or"&&t!=="exact")throw new p("Search --match-mode must be one of and|or|exact",m.USAGE);return t}function ds(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(String(e).trim());if(!Number.isFinite(t)||t<0)throw new p("Search --min-score must be a finite number >= 0",m.USAGE);return t}function re(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return H(n,new Date,t)}function j(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function Mn(e,t){if(e!==void 0)return H(e,new Date,t)}function Nu(e){if(e===void 0)return;let t=e.split(",").map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new p("Search --fields requires a comma-separated list of field names",m.USAGE);return[...new Set(t)]}function At(e,t="<query>"){let n=e.compact===!0,r=e.full===!0,o=Nu(e.fields);if(Number(n)+Number(r)+ +(o!==void 0)>1)throw new p("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",m.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:de(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return n?{mode:"compact",fields:[...Kr]}:r?{mode:"full",fields:[]}:o?{mode:"fields",fields:o}:{mode:"full",fields:[]}}function $n(e,t,n="<query>"){if(e.mode!=="fields")return;let r=Vr(t.definitions.flatMap(s=>[s.key,s.metadata_key])),o=new Set(r),i=e.fields.filter(s=>{let a=s.trim();return!o.has(a)});if(i.length>0){let s=["search",n,"--fields","id,title,status,score"];throw new p(`Unknown search --fields value(s): ${i.join(", ")}`,m.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:r,suggested_retry:de(s),suggested_retry_args:s}})}}function Dt(e){let t=j(e);if(!t)throw new p("Search query must not be empty",m.USAGE);return t.split(/\s+/u).filter(Boolean)}function On(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var Lu=["auto","keyword","semantic","hybrid"];function Pu(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let n=t.trim().toLowerCase();return Lu.includes(n)?n:"auto"}function Nn(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:Ou(e.requested),source:"explicit"};let t=Pu(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Ln(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function Pn(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function jn(e){let t={title_exact_bonus:10,title_weight:48,description_weight:5,tags_weight:6,status_weight:2,body_weight:1,comments_weight:1,notes_weight:1,learnings_weight:1,reminders_weight:2,events_weight:2,dependencies_weight:3,linked_content_weight:1},n=e.search?.tuning;if(!n)return t;let r=(o,i)=>typeof o=="number"&&Number.isFinite(o)&&o>=0?o:i;return{title_exact_bonus:r(n.title_exact_bonus,t.title_exact_bonus),title_weight:r(n.title_weight,t.title_weight),description_weight:r(n.description_weight,t.description_weight),tags_weight:r(n.tags_weight,t.tags_weight),status_weight:r(n.status_weight,t.status_weight),body_weight:r(n.body_weight,t.body_weight),comments_weight:r(n.comments_weight,t.comments_weight),notes_weight:r(n.notes_weight,t.notes_weight),learnings_weight:r(n.learnings_weight,t.learnings_weight),reminders_weight:r(n.reminders_weight,t.reminders_weight),events_weight:r(n.events_weight,t.events_weight),dependencies_weight:r(n.dependencies_weight,t.dependencies_weight),linked_content_weight:r(n.linked_content_weight,t.linked_content_weight)}}(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]="91b01dd0-6a8d-5b97-96d2-c27f4044c009")}catch{}})();function ju(e){return Xe("search",{query:e.query.trim(),mode:e.mode,options:Ye(e.searchOptions,Lr)})}function ls(e){let t=Hr(e.sorted,{cursor:e.searchOptions.after,fingerprint:ju(e),limit:e.limit,readId:n=>n.item.id});return{limited:t.rows,pageExtras:{applied_limit:e.limit,...t.has_more?{has_more:!0,truncated:!0}:{},...t.next_cursor?{next_cursor:t.next_cursor}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="48888c80-60e1-5905-afd5-8c1b6e532f99")}catch{}})();function us(e){if(typeof e!="string")return!1;let t=e.split(",").map(n=>n.trim().toLowerCase()).filter(Boolean);return t.length===1&&t[0]==="all"}var Uu=[{optionKey:"status",summaryKey:"status",normalize:e=>us(e)?"all":e},{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"parent",summaryKey:"parent"}];function ye(e){let{mode:t,matchMode:n,options:r,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:d,runtimeFieldFilters:c}=e,l={};return Bo(l,r,Uu),Object.assign(l,Zt(r)),Object.assign(l,Jt(r)),n!==void 0&&n!=="or"&&(l.match_mode=n),o&&(l.include_linked=!0),i&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&r.semanticWeight!==void 0&&(l.hybrid_semantic_weight=d),r.limit!==void 0&&(l.limit=r.limit),c&&Object.keys(c).length>0&&(l.runtime_filters=c),l}function _e(e){let{effectiveMode:t,matchMode:n,options:r,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:d,queryExpansion:c,rerank:l,runtimeFieldFilters:u}=e,f=h=>h??null;return{mode:t,match_mode:n,status:r.status===void 0||us(r.status)?"all":r.status,type:f(r.type),tag:f(r.tag),priority:f(r.priority),deadline_before:f(r.deadlineBefore),deadline_after:f(r.deadlineAfter),updated_after:f(r.updatedAfter),updated_before:f(r.updatedBefore),created_after:f(r.createdAfter),created_before:f(r.createdBefore),assignee:f(r.assignee),sprint:f(r.sprint),release:f(r.release),parent:f(r.parent),...Zt(r),...Jt(r),include_linked:o,title_exact:i,phrase_exact:s,score_threshold:a,hybrid_semantic_weight:t==="hybrid"?d:null,query_expansion_enabled:c.enabled,query_expansion_provider:c.provider,rerank_enabled:l.enabled,rerank_model:l.model,rerank_top_k:l.top_k,limit:f(r.limit),runtime_filters:u}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bc52818b-d37f-5d00-954d-d50203a433c2")}catch{}})();var Bu=1.2,Hu=.75;function Un(e){return pe(e)}function Gu(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return t}function ms(e){let t=[],n=new Map,r=0;for(let i of e){let s=Un(i.text),a=Gu(s);r+=s.length;for(let d of a.keys())n.set(d,(n.get(d)??0)+1);t.push({id:i.id,termFrequencies:a,length:s.length})}let o=t.length;return{documents:t,documentFrequency:n,documentCount:o,averageDocumentLength:o>0?r/o:0}}function Wu(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function ps(e,t,n){let r=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return r;let o=[...new Set(t.filter(s=>s.length>0))];if(o.length===0)return r;let i=new Map;for(let s of o){let a=e.documentFrequency.get(s);a!==void 0&&i.set(s,Wu(e.documentCount,a))}if(i.size===0)return r;for(let s of e.documents){let a=0;for(let[d,c]of i){let l=s.termFrequencies.get(d);if(l===void 0)continue;let u=1-n.b+n.b*s.length/e.averageDocumentLength,f=l+n.k1*u;a+=c*(l*(n.k1+1)/f)}a>0&&r.set(s.id,a)}return r}function fs(e,t,n,r){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(r,Math.max(n,e))}function hs(e){let t=n=>typeof n=="string"?[n]:typeof n=="number"?[String(n)]:Array.isArray(n)?n.flatMap(t):typeof n=="object"&&n!==null?Object.values(n).flatMap(t):[];return t(Object.values(e)).join(" ")}function gs(e){let t=e?.search?.bm25;return{k1:fs(t?.k1,Bu,0,1e3),b:fs(t?.b,Hu,0,1)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e2985104-efdb-59e5-9674-2dd865ebdf56")}catch{}})();var Bn=4,qu=20,zu=200,Ku=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function Hn(e,t){let n=[],r=new Set;for(let o of e){let i=o.trim().replaceAll(/\s+/g," ");if(i.length===0)continue;let s=i.toLowerCase();if(!r.has(s)&&(r.add(s),n.push(i),n.length>=t))break}return n}function Vu(e){let t=e.toLowerCase();return t.length>4&&t.endsWith("ies")?`${t.slice(0,-3)}y`:t.length>4&&(t.endsWith("ches")||t.endsWith("shes")||t.endsWith("xes")||t.endsWith("zes")||t.endsWith("sses"))?t.slice(0,-2):t.length>3&&t.endsWith("s")&&!t.endsWith("ss")&&!t.endsWith("us")&&!t.endsWith("is")&&!t.endsWith("as")?t.slice(0,-1):t}function Yu(e){let t=e.toLowerCase();return t.length>2&&(!t.endsWith("s")||t.endsWith("ss"))?t.endsWith("y")&&!/[aeiou]y$/u.test(t)?`${t.slice(0,-1)}ies`:t.endsWith("ch")||t.endsWith("sh")||t.endsWith("x")||t.endsWith("z")||t.endsWith("ss")?`${t}es`:`${t}s`:t}function ys(e,t=Bn){let n=e.trim().replaceAll(/\s+/g," ");if(n.length===0)return[];let r=pe(n);if(r.length===0)return[n];let o=r.filter(a=>!Ku.has(a.toLowerCase())),i=r.map(a=>Vu(a)),s=o.map(a=>Yu(a));return Hn([n,r.join(" "),o.join(" "),i.join(" "),s.join(" ")],Math.max(1,t))}function _s(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?Hn(t.filter(n=>typeof n=="string"),Bn):[]}function ws(e,t,n){return Hn([...e,...t],Math.max(1,n))}function vs(e,t){let r=e.search?.query_expansion,o=be(r?.provider);return{enabled:r?.enabled===!0,provider:o??t,max_queries:Bn}}function bs(e,t){let r=e.search?.rerank,o=be(r?.model),s=Dr(r?.top_k)??qu;return{enabled:r?.enabled===!0,model:o??t,top_k:Math.min(zu,s)}}function ks(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let n=new Map;for(let o of t){if(typeof o!="object"||o===null)continue;let i=be(o.id),s=o.score;if(!i||typeof s!="number"||!Number.isFinite(s))continue;let a=n.get(i);(a===void 0||s>a)&&n.set(i,s)}let r=[...n.entries()].map(([o,i])=>({id:o,score:i}));return r.sort((o,i)=>o.score!==i.score?i.score-o.score:o.id.localeCompare(i.id)),r}function Xu(e,t){let n=e.length,r=0;for(let o=0;o<n;o+=1)r+=e[o]*t[o];return r}function Ss(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function Qu(e,t,n){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let r=Xu(e,t),o=Ss(t),i=n*o;return!Number.isFinite(r)||!Number.isFinite(n)||!Number.isFinite(o)||!Number.isFinite(i)||i===0?0:Math.max(-1,Math.min(1,r/i))}async function Es(e,t,n,r,o){if(r.length===0)return new Map;let i=be(t)??e.model,s=i===e.model?e:{...e,model:i},a=[n.trim(),...r.map(f=>f.text)],d=await st(s,a,o?{timeout_ms:o}:{}),c=d[0];if(!c)return new Map;let l=Ss(c),u=new Map;for(let f=0;f<r.length;f+=1){let h=r[f],g=d[f+1];if(!g)continue;let _=Qu(c,g,l);u.set(h.id,Math.max(0,Math.min(1,(_+1)/2)))}return u}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a5e4bd88-a099-559f-8194-7b56f325eb0e")}catch{}})();function we(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function K(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function Pe(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function Gn(e){let t=e.metadata;return[t.title,t.description,t.status,we(t.tags).join(" "),e.body,K(t.comments).map(n=>n.text).join(" "),K(t.notes).map(n=>n.text).join(" "),K(t.learnings).map(n=>n.text).join(" "),at(t).join(" "),ct(t).join(" "),Pe(t.dependencies).map(n=>`${n.id} ${n.kind}`).join(" "),dt(t)]}function Wn(e,t){return Gn(e).some(n=>j(n).includes(t))}function qn(e,t,n){return!n.titleExact&&!n.phraseExact?e:e.filter(r=>!(n.titleExact&&j(r.metadata.title)!==t||n.phraseExact&&!Wn(r,t)))}function Ju(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new p('--assignee no longer accepts "none" or "null".',m.USAGE)}function Zu(e,t,n){let r=Ce(e.assignee,{label:"--assignee"});Ju(r);let o=jo(e),i=Uo(e);return{typeFilter:Ro(e.type,t),tagFilter:Ce(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Ao(e.priority),deadlineBefore:Mn(e.deadlineBefore,"deadline-before"),deadlineAfter:Mn(e.deadlineAfter,"deadline-after"),updatedAfter:re(e.updatedAfter,"updated-after"),updatedBefore:re(e.updatedBefore,"updated-before"),createdAfter:re(e.createdAfter,"created-after"),createdBefore:re(e.createdBefore,"created-before"),assigneeFilter:r,sprintFilter:Ce(e.sprint,{label:"--sprint"}),releaseFilter:Ce(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:n&&n.length>0?new Set(n):void 0,missingMetadataFilters:o,missingMetadataActive:Fo(o),contentFieldFilters:i,contentFiltersActive:$o(i)}}function ef(e,t){return tf(e,t)&&qr(e,t)&&nf(e,t)}function tf(e,t){if(t.statusSet&&!t.statusSet.has(e.status)||t.typeFilter&&!t.typeFilter.has(e.type))return!1;let n=t.tagFilter;return!(n&&!we(e.tags).some(r=>n.has(r))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function nf(e,t){return!(t.assigneeFilter!==void 0&&(e.assignee===void 0||!t.assigneeFilter.has(e.assignee))||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))||t.releaseFilter!==void 0&&(e.release===void 0||!t.releaseFilter.has(e.release))||t.parentFilter!==void 0&&e.parent!==t.parentFilter)}function rf(e,t,n,r){let o=e.metadata;return!(!ef(o,t)||!ot(o,n)||t.missingMetadataActive&&!Mo(o,t.missingMetadataFilters,r)||t.contentFiltersActive&&!Oo(o,t.contentFieldFilters))}function zn(e,t,n,r,o,i){let s=Zu(t,n,o);return e.filter(a=>rf(a,s,r,i))}(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]="5a927991-1dbe-5906-a0eb-7da2534b6905")}catch{}})();var of=2,sf=120,af=6,cf=40,df=1e3,lf=900,uf="\xAB",ff="\xBB",Cs=60;function Ft(e,t){let n=0,r=0;for(;;){let o=e.indexOf(t,r);if(o<0)return n;n+=1,r=o+t.length}}var xs=[{name:"title",weightKey:"title_weight",value:e=>e.metadata.title},{name:"description",weightKey:"description_weight",value:e=>e.metadata.description},{name:"tags",weightKey:"tags_weight",value:e=>we(e.metadata.tags).join(" ")},{name:"status",weightKey:"status_weight",value:e=>typeof e.metadata.status=="string"?e.metadata.status:""},{name:"body",weightKey:"body_weight",value:e=>e.body},{name:"comments",weightKey:"comments_weight",value:e=>K(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>K(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>K(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>at(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>ct(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>Pe(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>dt(e.metadata)}],mf=new Map(xs.map(e=>[e.name,e]));function Kn(e,t){let n=t.filter(o=>o.length>0).sort((o,i)=>i.length-o.length).map(o=>o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(n.length===0)return e;let r=new RegExp(n.join("|"),"gi");return e.replace(r,o=>`${uf}${o}${ff}`)}function Vn(e,t){if(e.length===0)return null;let n=e.toLowerCase(),r=-1,o=0;for(let l of t){if(l.length===0)continue;let u=n.indexOf(l);u>=0&&(r<0||u<r)&&(r=u,o=l.length)}if(r<0)return null;let i=Math.max(0,r-Cs),s=Math.min(e.length,r+o+Cs),a=Kn(e.slice(i,s),t),d=i>0?"\u2026":"",c=s<e.length?"\u2026":"";return`${d}${a}${c}`}function Mt(e,t,n){let r=[];for(let o of t){let i=mf.get(o);if(i===void 0)continue;let s=Vn(i.value(e),n);s!==null&&r.push({field:o,snippet:s})}return r}function pf(e,t,n){return[...xs.map(r=>({name:r.name,value:r.value(e),weight:n[r.weightKey]})),{name:"linked_content",value:t,weight:n.linked_content_weight}]}function hf(e,t,n){let r=j(e.id),o=typeof n=="string"?n.trim().toLowerCase():"",i=j(o),s=i.length>0&&r.startsWith(i)?r.slice(i.length).trim():r;return t!==r&&t!==s?null:{item:e,score:t===r?df:lf,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function gf(e,t,n,r,o){for(let i of e){let s=t.get(i)??0;s>0&&(o.score+=s*r.title_exact_bonus,o.matched.add("title"),o.matchedTokens.add(i));for(let a of n){let d=Ft(a.value.toLowerCase(),i);d>0&&(o.score+=d*a.weight,o.matched.add(a.name),o.matchedTokens.add(i))}}}function yf(e,t,n,r){j(e.title)===t&&(r.score+=sf,r.matched.add("title"));for(let i of n){let s=Ft(j(i.value),t);s>0&&(r.score+=s*i.weight*af,r.matched.add(i.name))}}function Yn(e,t,n,r,o,i,s=!1){let a=e.metadata,d=hf(a,n,i);if(d)return d;let c=new Map;for(let _ of pe(a.title))c.set(_,(c.get(_)??0)+1);let l=pf(e,r,o),u={score:0,matched:new Set,matchedTokens:new Set};gf(t,c,l,o,u);let f=new Set(t),h=f.size>0&&u.matchedTokens.size===f.size;return s&&f.size>1&&h&&(u.score+=cf),t.length>=of&&n.includes(" ")&&yf(a,n,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((_,y)=>_.localeCompare(y)),matched_all_terms:h}}function Xn(e,t){return[...e].sort((n,r)=>{let o=r.score-n.score;if(o!==0)return o;let i=Q(n.item.status,t),s=Q(r.item.status,t);if(i!==s)return i?1:-1;let a=n.item.priority-r.item.priority;if(a!==0)return a;let d=E(r.item.updated_at,n.item.updated_at);return d!==0?d:n.item.id.localeCompare(r.item.id)})}function Qn(e,t,n,r,o,i,s,a=!1){return Yn(e,t,n,r?o.get(e.metadata.id)??"":"",i,s,a)}function je(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;for(let o of e.values())t=Math.min(t,o),n=Math.max(n,o);if(n===t)return new Map([...e.keys()].map(o=>[o,1]));let r=new Map;for(let[o,i]of e)r.set(o,(i-t)/(n-t));return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0175d395-3f87-5a93-8d4f-a3150aaf16ae")}catch{}})();function Ot(e){let t=[],n=e;for(let r=0;r<5&&n&&typeof n=="object";r+=1){let o=n.code;typeof o=="string"&&t.push(o.toLowerCase()),n=n.cause}return t.join(" ")}function Nt(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),n=Ot(e),r=`${t} ${n}`;return r.includes("timed out")||r.includes("timeout")||r.includes("etimedout")?"timeout":r.includes("econnrefused")||r.includes("connection refused")||r.includes("connect ")||r.includes("enotfound")||r.includes("eai_again")||r.includes("econnreset")||r.includes("fetch failed")?"connection":"error"}function Jn(e,t){let n=Nt(t);return`search_${e}_fallback:${n}:using_keyword_mode`}function Is(e){return e?.commands?.some(n=>n.command.trim()==="reindex")===!0?{command:"pm reindex --mode hybrid",args:["reindex","--mode","hybrid"]}:{command:"pm install search-advanced --project",args:["install","search-advanced","--project"],follow_up_command:"pm reindex --mode hybrid",follow_up_args:["reindex","--mode","hybrid"]}}async function Zn(e,t,n){try{let r=await ko(e);r.warnings.length>0&&n.push(...r.warnings);let o=zo(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),r.entries);if(o.length===0)return;let i=Is(C());n.push(...Ts(o.length,i)),process.stderr.write(`[pm] warning: ${o.length} item${o.length===1?" is":"s are"} new or modified since the last reindex and ${o.length===1?"is":"are"} NOT in the semantic index yet \u2014 run '${i.command}'${i.follow_up_command?`, then '${i.follow_up_command}'`:""}. (Write-time embedding is governed by search.mutation_refresh_policy; staleness means the embed was skipped, failed, or the backend was unreachable.)
9
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-EFD4ATS7.js.map
12
+ //# sourceMappingURL=chunk-DJPP2HAK.js.map