@unbrained/pm-cli 2026.10.28 → 2026.10.31
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.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +50 -0
- package/dist/cli/commander-usage.js +2 -2
- package/dist/cli/commands/lifecycle/append.d.ts +4 -0
- package/dist/cli/commands/lifecycle/append.js +1 -1
- package/dist/cli/commands/lifecycle/create.d.ts +4 -0
- package/dist/cli/commands/lifecycle/create.js +1 -1
- package/dist/cli/commands/lifecycle/plan.d.ts +3 -0
- package/dist/cli/commands/lifecycle/plan.js +1 -1
- package/dist/cli/commands/lifecycle/update-many.d.ts +4 -0
- package/dist/cli/commands/lifecycle/update-many.js +1 -1
- package/dist/cli/commands/lifecycle/update.d.ts +4 -0
- package/dist/cli/commands/lifecycle/update.js +1 -1
- package/dist/cli/error-guidance.d.ts +45 -5
- package/dist/cli/error-guidance.js +5 -3
- package/dist/cli/extension-command-help.d.ts +1 -0
- package/dist/cli/extension-command-help.js +2 -2
- package/dist/cli/help-content.js +2 -2
- package/dist/cli/main.d.ts +1 -5
- package/dist/cli/main.js +5 -5
- package/dist/cli/migration-gates.d.ts +1 -1
- package/dist/cli/migration-gates.js +1 -1
- package/dist/cli/preflight-warnings.d.ts +11 -0
- package/dist/cli/preflight-warnings.js +4 -0
- package/dist/cli/register-list-query.js +3 -3
- package/dist/cli/register-mutation.js +2 -2
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/chunk-24J6TNYE.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-YYD5MNAV.js → chunk-2AHSPMKJ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-35Q2B2GJ.js +2 -0
- package/dist/cli-bundle/chunks/chunk-43R7UTWV.js +2 -0
- package/dist/cli-bundle/chunks/chunk-6PSDQ7T7.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-YUBUNECD.js → chunk-BS2KXT24.js} +84 -84
- package/dist/cli-bundle/chunks/{chunk-D3AIQZXF.js → chunk-GMBDZID5.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-HSBTITO4.js +3 -0
- package/dist/cli-bundle/chunks/{chunk-LWW4F4G2.js → chunk-MRUA2Z43.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-P3LNMWL2.js +2 -0
- package/dist/cli-bundle/chunks/chunk-PT7TS6E7.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-TH5KPAN4.js → chunk-SBVX5CMV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-D6P6IBPN.js → chunk-TL3O5GZA.js} +45 -45
- package/dist/cli-bundle/chunks/chunk-U7JXZMU5.js +6 -0
- package/dist/cli-bundle/chunks/{chunk-DM3PICGU.js → chunk-V6EWBTNH.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-VC7TA67O.js +20 -0
- package/dist/cli-bundle/chunks/chunk-WNF6FOL7.js +31 -0
- package/dist/cli-bundle/chunks/chunk-WRXQAW7Q.js +114 -0
- package/dist/cli-bundle/chunks/{chunk-RZQNFHXO.js → chunk-WX25MU4N.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-XDDPSWIW.js +2 -0
- package/dist/cli-bundle/chunks/chunk-YT5D5HNG.js +2 -0
- package/dist/cli-bundle/chunks/chunk-ZTJVOBDU.js +128 -0
- package/dist/cli-bundle/chunks/{indexed-receipt-blobs-LHLE7PSG.js → indexed-receipt-blobs-KGMJVFH2.js} +2 -2
- package/dist/cli-bundle/chunks/item-transaction-UWV6UNSV.js +2 -0
- package/dist/cli-bundle/chunks/{mutation-admission-GKDKHRTZ.js → mutation-admission-I4RHIT3Q.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-MHJJUM6M.js → register-list-query-MVDL5EXG.js} +6 -6
- package/dist/cli-bundle/chunks/register-mutation-GAF7LXRB.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-JLFRL36Q.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-WUZ2ZSMY.js → register-setup-MZN6ONB3.js} +2 -2
- package/dist/cli-bundle/chunks/{settlement-hook-MN3Y7LVX.js → settlement-hook-YWSWFOZY.js} +2 -2
- package/dist/cli-bundle/chunks/{stage-2FYJGGG3.js → stage-2ZORTOF6.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-4GN2ZPT5.js → chunk-2J7T2UCH.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-YLVHHWHN.js → chunk-4PW5XWVI.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-4QPGJO2G.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-IQKLJFJE.js → chunk-57HPXGOQ.js} +18 -18
- package/dist/cli-bundle/focused-chunks/chunk-5MCGYBOQ.js +91 -0
- package/dist/cli-bundle/focused-chunks/chunk-6F6APBCX.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-AFVN2KCP.js +44 -0
- package/dist/cli-bundle/focused-chunks/{chunk-ON5WFDCG.js → chunk-DFUTCKUF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-EA65HVBO.js +12 -0
- package/dist/cli-bundle/focused-chunks/chunk-GP2WU43K.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-C2GLO7HU.js → chunk-HPWT3RBG.js} +54 -54
- package/dist/cli-bundle/focused-chunks/chunk-HSAEEWSI.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-7SZPZOIC.js → chunk-JLXGRDTG.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-JNKRUCVZ.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-JTCGDODH.js → chunk-KH5QJXY7.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KKRIFBSL.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-TUN4M757.js → chunk-MW77Q3AQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-NOKG4RFN.js +22 -0
- package/dist/cli-bundle/focused-chunks/{chunk-DRN4W3YJ.js → chunk-NRBUMDLF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-ML5JIUM6.js → chunk-PC3R5CJV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-PFBQOZPK.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-R3EA3SDW.js → chunk-QFMJGQGO.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-I4X6AKOO.js → chunk-SFQKCA5K.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-WHIE2C6Q.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-Y6UYRMVG.js +6 -0
- package/dist/cli-bundle/focused-chunks/{indexed-receipt-blobs-5H6RMRTK.js → indexed-receipt-blobs-KHWT44EK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/item-transaction-LU75EG7D.js +2 -0
- package/dist/cli-bundle/focused-chunks/{mutation-admission-TM3SVU2O.js → mutation-admission-KDJ7SCPA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{settlement-hook-LBVWWSCF.js → settlement-hook-SJV52ZTV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{stage-7ZBRX2Q2.js → stage-R4KEBO37.js} +2 -2
- package/dist/cli-bundle/main.js +26 -22
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +4 -4
- package/dist/cli-bundle/sdk-core.js +1 -43
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +61 -61
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +11 -11
- package/dist/core/config/nested-settings.js +1 -1
- package/dist/core/extensions/extension-hook-runtime.js +1 -1
- package/dist/core/extensions/extension-types.d.ts +4 -0
- package/dist/core/extensions/extension-types.js +1 -1
- package/dist/core/extensions/loader.js +1 -1
- package/dist/core/history/operation-contract.d.ts +2 -2
- package/dist/core/history/operation-contract.js +1 -1
- package/dist/core/item/literal-mutation-input.d.ts +12 -0
- package/dist/core/item/literal-mutation-input.js +2 -0
- package/dist/core/item/parse.d.ts +2 -0
- package/dist/core/item/parse.js +2 -2
- package/dist/core/lock/lock.js +4 -4
- package/dist/core/output/output.js +3 -3
- package/dist/core/schema/fields-file.js +1 -1
- package/dist/core/sentry/helpers.d.ts +6 -0
- package/dist/core/sentry/helpers.js +1 -1
- package/dist/core/sentry/instrument.d.ts +1 -1
- package/dist/core/sentry/instrument.js +1 -1
- package/dist/core/shared/constants.js +1 -1
- package/dist/core/shared/errors.d.ts +6 -0
- package/dist/core/shared/errors.js +1 -1
- package/dist/core/shared/output-unicode.d.ts +10 -0
- package/dist/core/shared/output-unicode.js +2 -0
- package/dist/core/store/item-store.js +1 -1
- package/dist/core/store/settings-validator.d.ts +1 -0
- package/dist/core/store/settings-validator.js +1 -1
- package/dist/core/store/settings.js +1 -1
- package/dist/core/telemetry/policy.d.ts +8 -0
- package/dist/core/telemetry/policy.js +1 -1
- package/dist/core/telemetry/runtime.js +3 -3
- package/dist/sdk/agent/command-recovery.d.ts +15 -0
- package/dist/sdk/agent/command-recovery.js +1 -1
- package/dist/sdk/cli-bootstrap.js +1 -1
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +28 -0
- package/dist/sdk/cli-contracts/agent-output-contracts.js +2 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
- package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
- package/dist/sdk/cli-contracts/tool-schema.js +1 -1
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +1 -1
- package/dist/sdk/completion/fish.js +4 -4
- package/dist/sdk/completion/zsh.js +3 -3
- package/dist/sdk/config.d.ts +1 -0
- package/dist/sdk/config.js +1 -1
- package/dist/sdk/core.d.ts +1 -0
- package/dist/sdk/core.js +1 -1
- package/dist/sdk/error-runtime.d.ts +9 -0
- package/dist/sdk/error-runtime.js +1 -1
- package/dist/sdk/errors.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
- package/dist/sdk/index.d.ts +2 -2
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/item-transaction.d.ts +33 -2
- package/dist/sdk/item-transaction.js +1 -1
- package/dist/sdk/lifecycle/append.js +1 -1
- package/dist/sdk/lifecycle/claim.js +1 -1
- package/dist/sdk/lifecycle/cli-input.d.ts +4 -0
- package/dist/sdk/lifecycle/cli-input.js +2 -0
- package/dist/sdk/lifecycle/close.js +1 -1
- package/dist/sdk/lifecycle/create.js +1 -1
- package/dist/sdk/lifecycle/legacy-none-tokens.js +1 -1
- package/dist/sdk/lifecycle/plan.d.ts +2 -3
- package/dist/sdk/lifecycle/plan.js +1 -1
- package/dist/sdk/lifecycle/reopen.js +1 -1
- package/dist/sdk/lifecycle/repeated-terminal-state.d.ts +45 -0
- package/dist/sdk/lifecycle/repeated-terminal-state.js +2 -0
- package/dist/sdk/lifecycle/shared-unset-fields.d.ts +9 -0
- package/dist/sdk/lifecycle/shared-unset-fields.js +1 -1
- package/dist/sdk/lifecycle/update-many.d.ts +0 -1
- package/dist/sdk/lifecycle/update-many.js +1 -1
- package/dist/sdk/lifecycle/update.d.ts +29 -1
- package/dist/sdk/lifecycle/update.js +2 -2
- package/dist/sdk/output/table-rows.d.ts +15 -1
- package/dist/sdk/output/table-rows.js +1 -1
- package/dist/sdk/output.d.ts +1 -0
- package/dist/sdk/output.js +2 -2
- package/dist/sdk/ownership-source.d.ts +18 -0
- package/dist/sdk/ownership-source.js +1 -1
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/get.d.ts +1 -1
- package/dist/sdk/query/get.js +1 -1
- package/dist/sdk/query/history.d.ts +2 -0
- package/dist/sdk/query/history.js +1 -1
- package/dist/sdk/query/next-ranking-policy.d.ts +35 -0
- package/dist/sdk/query/next-ranking-policy.js +2 -0
- package/dist/sdk/query/next.d.ts +12 -2
- package/dist/sdk/query/next.js +2 -2
- package/dist/sdk/query/projection-contracts.d.ts +4 -0
- package/dist/sdk/query/projection-contracts.js +1 -1
- package/dist/sdk/read-output/surfaces.d.ts +27 -0
- package/dist/sdk/read-output/surfaces.js +2 -0
- package/dist/sdk/read-output-contracts.js +1 -1
- package/dist/sdk/runtime/mutation-value-validation.d.ts +16 -0
- package/dist/sdk/runtime/mutation-value-validation.js +2 -0
- package/dist/sdk/runtime-input.js +1 -1
- package/dist/sdk/runtime-primitives.d.ts +2 -0
- package/dist/sdk/runtime-primitives.js +1 -1
- package/dist/sdk/runtime.d.ts +14 -0
- package/dist/sdk/runtime.js +1 -1
- package/dist/sdk/structured-mutations.js +1 -1
- package/dist/sdk/test/execution-receipts.d.ts +25 -0
- package/dist/sdk/test/execution-receipts.js +2 -2
- package/dist/sdk/test/execution.d.ts +5 -0
- package/dist/sdk/test/execution.js +2 -2
- package/dist/sdk/workspace-transaction-gc.js +1 -1
- package/dist/sdk/workspace-transaction.d.ts +54 -0
- package/dist/sdk/workspace-transaction.js +2 -2
- package/dist/types.d.ts +2 -0
- package/dist/types.js +1 -1
- package/docs/AGENT_GUIDE.md +1 -1
- package/docs/AGENT_OUTPUT_ENCODINGS.md +12 -0
- package/docs/AGENT_UX_CONTRACTS.md +2 -1
- package/docs/COMMANDS.md +73 -15
- package/docs/CONFIGURATION.md +48 -1
- package/docs/DEVELOPMENT_DEPENDENCY_SECURITY.md +26 -0
- package/docs/OUTPUT_PROJECTION_CONTRACTS.md +24 -2
- package/docs/PACKED_FIRST_RUN.md +2 -1
- package/docs/READ_OUTPUT_CONTRACTS.md +24 -6
- package/docs/SDK.md +207 -11
- package/docs/TESTING.md +46 -2
- package/docs/agent-task-token-baseline.json +1 -1
- package/docs/generated/FLAG_LEXICON_BUDGETS.md +1 -1
- package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +6 -3
- package/marketplace.json +1 -1
- package/package.json +1 -1
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/extensions/calendar/index.ts +1 -0
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/package.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/package.json +1 -1
- package/plugins/pm-codex/plugin.json +1 -1
- package/runtime-dependencies.json +1 -1
- package/dist/cli-bundle/chunks/chunk-2J7I54MQ.js +0 -2
- package/dist/cli-bundle/chunks/chunk-3KMYHYJV.js +0 -2
- package/dist/cli-bundle/chunks/chunk-4D25HF3V.js +0 -2
- package/dist/cli-bundle/chunks/chunk-7V37RC2L.js +0 -114
- package/dist/cli-bundle/chunks/chunk-AHVN4GHF.js +0 -31
- package/dist/cli-bundle/chunks/chunk-CS7QDSUX.js +0 -128
- package/dist/cli-bundle/chunks/chunk-CXUQEZDX.js +0 -8
- package/dist/cli-bundle/chunks/chunk-DKLEDWVW.js +0 -3
- package/dist/cli-bundle/chunks/chunk-E5QBZ4HI.js +0 -8
- package/dist/cli-bundle/chunks/chunk-JESLOJD7.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PQLRKFPZ.js +0 -20
- package/dist/cli-bundle/chunks/chunk-SGFQQXFD.js +0 -2
- package/dist/cli-bundle/chunks/chunk-XHONSCLJ.js +0 -6
- package/dist/cli-bundle/chunks/chunk-ZX3XMTZG.js +0 -2
- package/dist/cli-bundle/chunks/register-mutation-SN425O3R.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-EYUIUGPW.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-3EHVI673.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-46WLWK73.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-6L4KKRK7.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-6VDRAJYX.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-B4ZQJEMT.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-BZSACRVX.js +0 -91
- package/dist/cli-bundle/focused-chunks/chunk-F6UQJJYB.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-L5GX2FGZ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-LPWZERVD.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-OASYSUOH.js +0 -22
- package/dist/cli-bundle/focused-chunks/chunk-QUPGBO2L.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-Z26ZPQH6.js +0 -3
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import{A as so,B as ao,G as lo,I as uo,a as q,b as Gi,c as Wi,e as Ae,f as zi,g as Ki,h as Vi,i as Qi,j as Yi,m as Xi,n as Ji,p as no,q as ro,t as io,u as cn,v as dn,w as H}from"./chunk-F6UQJJYB.js";import{$ as Di,H as pi,I as hi,L as on,M as Ci,Oa as Bi,W as ut,Y as pe,Z as mt,_ as ft,ba as Oi,ca as Li,da as ht,ea as Ni,fa as gt,ga as yt,ha as _t,ia as Pi,ma as ji,na as an,wa as Ui}from"./chunk-OASYSUOH.js";import{Na as Kr,Va as Vr}from"./chunk-46WLWK73.js";import{C as oo,K as co,a as Ie,c as Te,f as Re,g as qi,h as Hi,i as wt,m as Zi,n as eo,q as to}from"./chunk-6VDRAJYX.js";import{B as pt,D as Fi,E as ne,F as re,H as Mi,I as he,L as $i,b as xi,c as Ii,f as Ai,h as sn}from"./chunk-BZSACRVX.js";import{Da as Ei,E as yi,F as _i,G as wi,H as bi,I as vi,Ka as lt,La as Ti,M as xe,Ma as Ri,V as ki,_a as A,aa as ee,ca as te,db as U,ia as Si,r as M,s as x,t as Y,x as gi}from"./chunk-IQKLJFJE.js";import{b as le}from"./chunk-ML5JIUM6.js";import{j as O,l as Q}from"./chunk-TUN4M757.js";import{b as mi,c as fi}from"./chunk-AK2CI2GI.js";import{$ as Ee,Aa as tn,Bd as ai,Ca as et,Cd as E,Dc as me,Dd as ci,E as Zt,Ed as B,F as Xe,Fa as tt,Qb as zr,Qc as Xr,Qd as ot,Sd as st,Uc as Jr,Ud as at,Vc as Zr,Xc as ei,Xd as di,Y as en,Yd as ct,a as Nr,aa as Ze,fa as Hr,ga as Gr,ic as C,id as ti,me as dt,ne as nn,oc as Ce,od as rt,oe as li,pd as fe,pe as ui,qa as R,qd as ni,rd as ri,sc as Qr,sd as ii,tc as ue,td as oi,ud as si,ue as rn,vd as it,wa as T,wc as Yr,ya as Wr,yc as nt,yd as F,z as de}from"./chunk-6L4KKRK7.js";import{B as Ur,C as Je,D as Br,H as qr,s as Pr,w as jr,y as p,z as h}from"./chunk-7SZPZOIC.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f698608a-2f39-5972-b24b-93287af6b373")}catch{}})();var De=class extends RangeError{code;work;minimum_tokens;constructor(t,n,r){super(t),this.name="OutputEnvelopeFitError",this.code=t,this.work=Object.freeze({...n}),this.minimum_tokens=r}};function ln(e,t){if(!Number.isSafeInteger(e)||e<1)throw new RangeError(`${t} must be a positive safe integer`)}function da(e,t,n,r){return t.map(([i,o])=>{if(r.render_calls>=r.max_render_calls)throw new De("output_envelope_work_limit",r);r.render_calls+=1;let s=o(e);if(typeof s!="string")throw new TypeError("Envelope renderers must return strings");let a=n(s);if(!Number.isSafeInteger(a)||a<0)throw new RangeError("Envelope token estimates must be non-negative safe integers");return{name:i,text:s,bytes:Buffer.byteLength(s,"utf8"),estimated_tokens:a}})}function mo(e,t,n,r){let i=t,o=Object.entries(n.renderers),s=n.estimateTokens??(a=>Xr(Buffer.byteLength(a,"utf8")));for(let a=0;a<(n.maxStabilizationPasses??16);a+=1){let c=Object.freeze({...i}),d={...n.buildEnvelope(e,c),output_fit:c},l=da(d,o,s,r),u=Math.max(...l.map(f=>f.bytes)),m=Math.max(...l.map(f=>f.estimated_tokens));if(u===i.output_bytes&&m===i.estimated_tokens)return{envelope:d,renderings:l};i={...i,output_bytes:u,estimated_tokens:m}}throw new De("output_envelope_unstable",r)}function df(e,t){ln(t.tokenBudget,"tokenBudget"),ln(t.maxRenderCalls??1e4,"maxRenderCalls"),ln(t.maxStabilizationPasses??16,"maxStabilizationPasses");let n=t.policy??"prefix";if(n!=="prefix"&&n!=="skip")throw new TypeError("Unknown output envelope fit policy");if(Object.entries(t.renderers).length===0||Object.entries(t.renderers).some(([c,d])=>!c.trim()||typeof d!="function"))throw new TypeError("Envelope fitting requires named callable renderers");let r={evaluated_candidates:0,render_calls:0,max_render_calls:t.maxRenderCalls??1e4},i=[],o=[],s=c=>({version:1,policy:n,total_candidates:e.length,included_indices:Object.freeze([...c]),omitted_count:e.length-c.length,token_budget:t.tokenBudget,estimated_tokens:0,output_bytes:0}),a=mo(i,s(o),t,r);if(a.envelope.output_fit.estimated_tokens>t.tokenBudget)throw new De("output_envelope_infeasible",r,a.envelope.output_fit.estimated_tokens);for(let[c,d]of e.entries()){r.evaluated_candidates+=1;let l=[...i,d],u=[...o,c],m=mo(l,s(u),t,r);if(m.envelope.output_fit.estimated_tokens<=t.tokenBudget)i=l,o=u,a=m;else if(n==="prefix")break}return{rows:i,...a,complete:i.length===e.length,work:Object.freeze({...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]="b70f6764-9f83-5371-8ebc-1d0d5703bc1f")}catch{}})();var la=["invalid_envelope","source_incomplete","source_unchecked","filtered_corpus","terminal_items_excluded","strict_read_unproven","page_incomplete","count_mismatch","projection_incomplete","field_omission","omission_receipt_missing","omission_receipt_invalid","read_output_missing","read_output_invalid","read_output_dimensions_incomplete","budget_compaction","budget_omission","session_projection","invalid_item_id","duplicate_item_id"],un=class extends Error{receipt;constructor(t){super(`Complete-list certification failed: ${t.map(n=>n.code).join(", ")}.`),this.name="PmCompleteListValidationError",this.receipt={contract_version:1,contract:"complete_list",findings:t,recovery:{suggested_retry:"pm list --all --output-include full --strict-read --no-truncate --output-budget unbounded --output-limit unbounded --json",sdk:"await client.listAllComplete()"}}}};function mf(e={}){return ei({excludeTerminal:!1,full:!0,...e.includeBody===void 0?{}:{includeBody:e.includeBody},noTruncate:!0,outputBudget:"unbounded",outputLimit:"unbounded",strictRead:!0},["full"])}function G(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function I(e,t,n,r){t&&e.push({code:n,message:r})}function ua(e,t){let n=G(e.completeness)?e.completeness:{};I(t,n.status==="partial","source_incomplete","The source scan reported unreadable tracker artifacts."),I(t,n.status!=="complete"&&n.status!=="partial","source_unchecked","The source scan did not prove completeness.");let r=n.unreadable_item_count,i=n.unreadable_directory_count;I(t,n.status==="complete"&&(r!==0||i!==0)&&Number.isSafeInteger(r)&&Number.isSafeInteger(i),"source_incomplete","The source scan reports unreadable tracker artifacts despite a complete status."),I(t,n.status==="complete"&&(!Number.isSafeInteger(r)||!Number.isSafeInteger(i)||Number(r)<0||Number(i)<0),"source_unchecked","The source scan did not report safe non-negative unreadable counts.");let o=G(e.filters)?e.filters:{},s=G(o.runtime_filters)?o.runtime_filters:{},a=new Set(["exclude_terminal","include_body","no_truncate","runtime_filters","status","strict_read"]);return I(t,o.status!=="all"||Object.keys(s).length>0||Object.keys(o).some(c=>!a.has(c)),"filtered_corpus","The list did not explicitly select every lifecycle status."),I(t,o.exclude_terminal===!0,"terminal_items_excluded","Terminal lifecycle states were explicitly excluded."),I(t,o.strict_read!==!0,"strict_read_unproven","The result does not echo strict source-read enforcement."),o}function ma(e,t,n){I(n,e.has_more!==!1||e.next_cursor!==null||e.truncated!==!1||e.applied_limit!==void 0||t.no_truncate!==!0,"page_incomplete","Pagination or a row ceiling may have withheld items."),I(n,e.count!==e.items.length||e.total!==e.items.length,"count_mismatch","Envelope counts do not equal the returned item count.");let r=G(e.projection)?e.projection:{};I(n,r.mode!=="full"||r.fields!==null,"projection_incomplete","The result is not the full metadata projection.");let i=G(e.omission_receipt)?e.omission_receipt:void 0;I(n,i===void 0,"omission_receipt_missing","The result carries no field-omission receipt."),I(n,i!==void 0&&(i.has_omissions!==!1||i.omitted_field_group_count!==0||!Number.isSafeInteger(i.omitted_field_group_count)||!Array.isArray(i.omitted_field_groups)||i.omitted_field_groups.length!==0),"omission_receipt_invalid","The field-omission receipt is malformed or contradicts its no-omission claim."),I(n,i?.has_omissions===!0,"field_omission","The omission receipt reports withheld field groups.")}function fa(e){return e.contract_version!==1||e.command!=="list"||e.within_budget!==!0||e.strings_compacted!==!1||e.rows_compacted!==!1||e.result_omitted!==!1}function pa(e){if(!Array.isArray(e.requested_dimensions))return!1;let t=new Set(e.requested_dimensions);return["include","amount","cost"].every(n=>t.has(n))}function ha(e,t){let n=G(e.read_output)?e.read_output:void 0;I(t,n===void 0,"read_output_missing","The result carries no universal read-output receipt."),I(t,n!==void 0&&fa(n),"read_output_invalid","The universal read-output receipt does not prove an intact list result."),I(t,n!==void 0&&!pa(n),"read_output_dimensions_incomplete","The universal read-output receipt does not prove full, unbounded include, amount, and cost dimensions."),I(t,n?.strings_compacted===!0||n?.rows_compacted===!0||e.output_budget_truncation!==void 0,"budget_compaction","Universal output shaping compacted the result.");let r=G(e.output_budget_exceeded)?e.output_budget_exceeded:void 0;I(t,n?.result_omitted===!0||r?.omitted_result===!0,"budget_omission","Universal output shaping omitted the useful result."),I(t,e.read_session!==void 0,"session_projection","A cross-call read session can suppress previously served facts.")}function ga(e,t){let n=e.map(r=>G(r)&&typeof r.id=="string"?r.id.trim():"");I(t,n.some(r=>r.length===0),"invalid_item_id","Every full item row must carry a non-empty string id."),I(t,new Set(n).size!==n.length,"duplicate_item_id","Every item id must occur exactly once.")}function ya(e){if(!G(e)||!Array.isArray(e.items))return{ok:!1,findings:[{code:la[0],message:"The result must be an object with an items array."}]};let t=e,n=[],r=ua(t,n);return ma(t,r,n),ha(t,n),ga(t.items,n),{ok:n.length===0,findings:n}}function _a(e){let t=ya(e);if(!t.ok)throw new un(t.findings);let n=e;return{...n,complete_list:{contract_version:1,item_count:n.items.length,unique_item_id_count:new Set(n.items.map(r=>r.id)).size,terminal_items_included:!0,source_complete:!0,full_projection:!0,no_omissions:!0,unbounded:!0}}}function ff(e){_a(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="499dfc08-cf70-55fe-8868-65c3107e3a91")}catch{}})();async function yf(e,t={}){let n=await lo({pmRoot:T(process.cwd(),e.path),exhaustive:t.exhaustive,...t.status===void 0?{}:{statuses:t.status.flatMap(r=>r.split(",").map(i=>i.trim()).filter(Boolean))},...t.since===void 0?{}:{since:t.since},...t.threshold===void 0?{}:{threshold:t.threshold},...t.limit===void 0?{}:{limit:t.limit}});return{...n,clusters:n.clusters.map(r=>{let i=r.id;return{...r,canonical_id:i,close_command:`pm close <duplicate-id> --duplicate-of ${i}`}}),guidance:{strategy:"review_then_close_duplicate",command:"pm close <duplicate-id> --duplicate-of <canonical-id>"}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1433b417-e41f-5963-a551-094132afd717")}catch{}})();var fo=16;async function po(e,t,n){let r=R(t,C()).type_to_folder,i=[],o=new Set,s=n;for(;s&&i.length<fo;){let a=s.trim().toLowerCase();if(!a||o.has(a))break;o.add(a);let c=await ne(e,s,t.id_prefix,t.item_format,r);if(!c)break;let d=await re(c,{schema:t.schema});i.push(d.document.metadata.id),s=d.document.metadata.parent}return i}async function Sf(e){await wi({pmRoot:e.pmRoot,principal:e.principal,itemId:e.itemId,lineageIds:await po(e.pmRoot,e.settings,e.itemId)})}async function Ef(e){await bi(e)}async function Cf(e){await vi({pmRoot:e.pmRoot,principal:e.principal,...e.itemId?{itemId:e.itemId,lineageIds:await po(e.pmRoot,e.settings,e.itemId)}:{}})}var xf={lineage_depth:fo,active_items:64,evidence_rows:32};function ho(e){if(!e)return;let t={};for(let n of e.active_item_ids)t[n]=1;e.focused_item_id&&(t[e.focused_item_id]=1);for(let n of e.evidence){let r=/^lineage:(.+)$/u.exec(n)?.[1];r&&t[r]===void 0&&(t[r]=.75)}return Object.keys(t).length>0?t:void 0}import{encode as ba}from"@toon-format/toon";import{createHash as wa}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="66022e7d-1594-5b88-a283-c64830ff0dfd")}catch{}})();function mn(e){let t=wa("sha256").update("[");for(let n of e)t.update(tt(n)).update("\0");return t.update("]").digest("hex")}function bt(e,t){if(t===void 0)return F();let n=ri(t).snapshot,r=`${e}:`,i=n?.slice(r.length);if(!n?.startsWith(r)||!i||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/u.test(i)||!Number.isFinite(Date.parse(i)))throw new h("Query cursor has no supported fixed-window clock.",p.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]});return i}function Fe(e,t){let n=e.map((a,c)=>({row:a,index:c})),r=fe(t.command,{query:t.query,rows_digest:mn(e)}),i=t.after===void 0?void 0:ii(t.after,r);if(i&&(i.after_index===void 0||i.after_id!==String(i.after_index)||i.after_index>=e.length))throw new h("Query cursor position is outside the matching window.",p.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]});let o=it(n,{cursor:t.after,fingerprint:r,snapshot:`${t.command}:${t.clock}`,limit:t.limit??e.length,readId:({index:a})=>String(a)}),s=i?.after_index===void 0?0:i.after_index+1;return{...o,rows:o.rows.map(({row:a})=>a),count:o.rows.length,total_count:e.length,page_start:s,omitted_count:e.length-s-o.rows.length,has_more:s+o.rows.length<e.length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="351df2b3-3a1a-528c-96b9-72bb3e2f27fc")}catch{}})();var fn=["agenda","day","week","month"],pn=["markdown","toon","json"],va=["sun","mon","tue","wed","thu","fri","sat"],ka=365,Sa=365,vo=28,Ea=1e3;function hn(e,t){if(e===void 0)return;let n=Number(e);if(!Number.isInteger(n)||n<0)throw new h(`${t} must be a non-negative integer`,p.USAGE);return n}function Ca(e){if(!e)return new Set(["deadlines","reminders","events"]);let t=e.trim().toLowerCase();if(t==="all")return new Set(["deadlines","reminders","events"]);let n=t.split(/[|,]/).map(i=>i.trim()).filter(i=>i.length>0);if(n.length===0)throw new h("Calendar include filter must not be empty",p.USAGE);let r=new Set;for(let i of n){if(i==="deadlines"||i==="deadline"){r.add("deadlines");continue}if(i==="reminders"||i==="reminder"){r.add("reminders");continue}if(i==="events"||i==="event"||i==="scheduled"){r.add("events");continue}throw new h("Calendar include filter must be deadlines|reminders|events|scheduled|all",p.USAGE)}return r}function ko(e,t){let n;for(let r of t){let i=Nr(e,r,2);i!==null&&(n===void 0||i<n.distance)&&(n={choice:r,distance:i})}return n?.choice}function xa(e){if(!e)return"agenda";let t=e.trim().toLowerCase();if(!fn.includes(t)){let n=ko(t,fn);throw new h(`Calendar view must be one of ${fn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,p.USAGE)}return t}function Ia(e){if(!e)return;let t=e.trim().toLowerCase();if(!pn.includes(t)){let n=ko(t,pn);throw new h(`Calendar format must be one of ${pn.join("|")}${n?`. Did you mean "${n}"?`:"."}`,p.USAGE)}return t}function Pf(e,t){let n=Ia(e.format);if(t.json&&n&&n!=="json")throw new h("Cannot combine --json with --format markdown|toon",p.USAGE);return t.json?"json":n??"markdown"}function Ta(e,t){if(e===void 0)return;let n=M(e,t);if(!n){let r=t.definitions.map(i=>i.id);throw new h(`Calendar status filter must be one of ${r.join("|")}`,p.USAGE)}return n}function Ra(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(!t)throw new h("Calendar assignee filter must be one of assigned|unassigned",p.USAGE);if(t!=="assigned"&&t!=="unassigned")throw new h(`Invalid calendar assignee filter "${e}". Allowed: assigned|unassigned`,p.USAGE);return t}function vt(e){return new Date(e).toISOString().slice(0,10)}function So(e,t){if(!t||t==="UTC")return vt(e);try{let n=new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(e)),r=n.find(s=>s.type==="year")?.value,i=n.find(s=>s.type==="month")?.value,o=n.find(s=>s.type==="day")?.value;if(r&&i&&o)return`${r}-${i}-${o}`}catch{}return vt(e)}function wn(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0,0)).toISOString()}function W(e,t){let n=new Date(e);return new Date(n.getTime()+t*24*60*60*1e3).toISOString()}function Eo(e){let t=new Date(wn(e)),n=t.getUTCDay(),r=n===0?-6:1-n;return W(t.toISOString(),r)}function Aa(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),1,0,0,0,0)).toISOString()}function Da(e){let t=new Date(e);return new Date(Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+1,1,0,0,0,0)).toISOString()}function Fa(e,t){return E(e,t)>=0?e:t}function go(e){return Object.fromEntries([...e.entries()].sort(([t],[n])=>t.localeCompare(n)))}function yo(e,t){e.set(t,(e.get(t)??0)+1)}function Ma(e){if(!e)return null;let t=[`freq=${e.freq}`];if(e.interval!==void 0&&t.push(`interval=${e.interval}`),e.count!==void 0&&t.push(`count=${e.count}`),e.until&&t.push(`until=${e.until}`),e.by_weekday&&e.by_weekday.length>0){let n=[...e.by_weekday].sort((r,i)=>de(r)-de(i));t.push(`by_weekday=${n.join("|")}`)}if(e.by_month_day&&e.by_month_day.length>0){let n=[...e.by_month_day].sort((r,i)=>r-i);t.push(`by_month_day=${n.join("|")}`)}if(e.exdates&&e.exdates.length>0){let n=[...e.exdates].sort((r,i)=>r.localeCompare(i));t.push(`exdates=${n.join("|")}`)}return t.join(",")}function Co(e,t,n,r){let i=new Date(Date.UTC(e,t,n,r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds()));if(!(i.getUTCFullYear()!==e||i.getUTCMonth()!==t||i.getUTCDate()!==n))return i.toISOString()}function xo(e){return va[new Date(e).getUTCDay()]}function $a(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():null}function Oa(e){let t=new Set;for(let n of e??[]){let r=$a(n);r&&t.add(r)}return t}function La(e,t,n,r,i){let o=e??W(n,-(r??Sa)),s=t??W(e??n,i??ka);return{start:o,end:E(s,o)>0?s:W(o,1)}}function Na(e,t,n,r){let i=t.by_weekday!==void 0?[...t.by_weekday]:[xo(e)],o=t.by_month_day!==void 0?[...t.by_month_day]:[new Date(e).getUTCDate()];return{startAt:e,startDate:new Date(e),window:n,maxOccurrences:r??Ea,interval:t.interval??1,countLimit:t.count??Number.POSITIVE_INFINITY,until:t.until,excluded:Oa(t.exdates),weekdayFilter:t.by_weekday!==void 0?new Set(t.by_weekday):void 0,monthDayFilter:t.by_month_day!==void 0?new Set(t.by_month_day):void 0,sortedWeekdays:[...new Set(i)].sort((s,a)=>de(s)-de(a)),sortedMonthDays:[...new Set(o)].sort((s,a)=>s-a),occurrences:[],produced:0}}function kt(e,t){return E(t,e.startAt)<0?"continue":e.until&&E(t,e.until)>0||E(t,e.window.end)>=0?"stop":e.excluded.has(t)?"continue":(e.produced+=1,E(t,e.window.start)>=0&&e.occurrences.push(t),e.produced>=e.countLimit||e.occurrences.length>=e.maxOccurrences?"stop":"continue")}function St(e,t){let n=xo(t),r=new Date(t).getUTCDate(),i=!e.weekdayFilter||e.weekdayFilter.has(n),o=!e.monthDayFilter||e.monthDayFilter.has(r);return i&&o}function Pa(e){let t=e.startAt;for(let n=0;n<e.maxOccurrences&&!(St(e,t)&&kt(e,t)==="stop");n+=1)t=W(t,e.interval);return e.occurrences}function ja(e,t,n){let r=de(n),i=W(t,r),o=new Date(i);return new Date(Date.UTC(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate(),e.startDate.getUTCHours(),e.startDate.getUTCMinutes(),e.startDate.getUTCSeconds(),e.startDate.getUTCMilliseconds())).toISOString()}function Ua(e){let t=Eo(e.startAt);for(let n=0;n<e.maxOccurrences;n+=1){let r=W(t,n*e.interval*7);for(let i of e.sortedWeekdays){let o=ja(e,r,i);if(St(e,o)&&kt(e,o)==="stop")return e.occurrences}}return e.occurrences}function Ba(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let i=new Date(Date.UTC(t,n+r*e.interval,1,0,0,0,0));for(let o of e.sortedMonthDays){let s=Co(i.getUTCFullYear(),i.getUTCMonth(),o,e.startDate);if(!(!s||!St(e,s))&&kt(e,s)==="stop")return e.occurrences}}return e.occurrences}function qa(e){let t=e.startDate.getUTCFullYear(),n=e.startDate.getUTCMonth();for(let r=0;r<e.maxOccurrences;r+=1){let i=t+r*e.interval;for(let o of e.sortedMonthDays){let s=Co(i,n,o,e.startDate);if(!(!s||!St(e,s))&&kt(e,s)==="stop")return e.occurrences}}return e.occurrences}function Ha(e,t,n,r){let i=Na(e,t,n,r);return t.freq==="daily"?Pa(i):t.freq==="weekly"?Ua(i):t.freq==="monthly"?Ba(i):qa(i)}function Io(e){return[...e].sort((t,n)=>{let r=E(t.at,n.at);if(r!==0)return r;let i=t.item_priority-n.item_priority;if(i!==0)return i;let o=t.item_id.localeCompare(n.item_id);if(o!==0)return o;let s=t.kind.localeCompare(n.kind);if(s!==0)return s;let a=String(t.event_title).localeCompare(String(n.event_title));return a!==0?a:String(t.reminder_text).localeCompare(String(n.reminder_text))})}function bn(e){return{item_id:e.id,item_title:e.title,item_type:e.type,item_status:e.status,item_priority:e.priority,item_assignee:e.assignee??null,item_deadline:e.deadline??null,item_tags:e.tags}}function Ga(e){return e.deadline?{at:e.deadline,date:vt(e.deadline),kind:"deadline",reminder_text:null,event_title:null,event_end:null,event_location:null,event_all_day:null,event_timezone:null,event_recurring:null,event_recurrence_rule:null,...bn(e),item_deadline:e.deadline}:null}function Wa(e){return(e.reminders??[]).map(t=>({at:t.at,date:vt(t.at),kind:"reminder",reminder_text:t.text,event_title:null,event_end:null,event_location:null,event_all_day:null,event_timezone:null,event_recurring:null,event_recurrence_rule:null,...bn(e)}))}function za(e,t){if(!t)return null;let n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function Ka(e,t,n){return t.recurrence&&n!==null?new Date(new Date(e).getTime()+n).toISOString():t.end_at??null}function Va(e,t,n,r){let i=Ma(t.recurrence),o=za(t.start_at,t.end_at);return(t.recurrence?Ha(t.start_at,t.recurrence,n,r):[t.start_at]).map(s=>({at:s,date:t.all_day===!0?s.slice(0,10):So(s,t.timezone),kind:"event",reminder_text:t.description??null,event_title:t.title??e.title,event_end:Ka(s,t,o),event_location:t.location??null,event_all_day:t.all_day??null,event_timezone:t.timezone??null,event_recurring:!!t.recurrence,event_recurrence_rule:i,...bn(e)}))}function Qa(e,t,n,r){let i=[];for(let o of e){let s=n.has("deadlines")?Ga(o):null;s&&i.push(s),n.has("reminders")&&i.push(...Wa(o));for(let a of n.has("events")?o.events??[]:[])i.push(...Va(o,a,t,r))}return Io(i)}function Ya(e,t,n,r,i){let o=Wi(t.type,n),s=t.tag?.trim().toLowerCase(),a=Gi(t.priority),c=Ta(t.status,r),d=t.assignee?.trim(),l=Ra(t.assigneeFilter),u=t.sprint?.trim(),m=t.release?.trim();if(d&&(d.toLowerCase()==="none"||d.toLowerCase()==="null"))throw new h('--assignee no longer accepts "none" or "null". Use --assignee-filter unassigned.',p.USAGE);if(d!==void 0&&l==="unassigned")throw new h("Cannot combine --assignee with --assignee-filter unassigned",p.USAGE);return e.filter(f=>Xa(f,{typeFilter:o,tagFilter:s,priorityFilter:a,statusFilter:c,assigneeFilter:d,assigneeModeFilter:l,sprintFilter:u,releaseFilter:m,runtimeFieldFilters:i}))}function Xa(e,t){return Ja(e,t)&&Za(e,t)&&ft(e,t.runtimeFieldFilters)}function Ja(e,t){return!(t.typeFilter&&e.type!==t.typeFilter||t.tagFilter&&!e.tags.some(n=>n.trim().toLowerCase()===t.tagFilter)||t.priorityFilter!==void 0&&e.priority!==t.priorityFilter||t.statusFilter&&e.status!==t.statusFilter)}function Za(e,t){return!(t.assigneeModeFilter==="assigned"&&!e.assignee||t.assigneeModeFilter==="unassigned"&&e.assignee||t.assigneeFilter!==void 0&&e.assignee!==t.assigneeFilter||t.sprintFilter!==void 0&&e.sprint!==t.sprintFilter||t.releaseFilter!==void 0&&e.release!==t.releaseFilter)}function ec(e,t,n){return!(t&&E(e.at,t)<0||n&&E(e.at,n)>=0)}function gn(e,t,n){return e.trim().toLowerCase()==="today"?wn(t):B(e,new Date(t),n)}function tc(e,t,n){let r=t.date?gn(t.date,n,"--date"):n,i=t.past===!0,o=t.fullPeriod===!0,s=t.from?gn(t.from,n,"--from"):void 0,a=t.to?gn(t.to,n,"--to"):void 0;if(s&&a&&E(s,a)>=0)throw new h("Calendar --from must be before --to",p.USAGE);if(e!=="agenda"&&(t.from!==void 0||t.to!==void 0))throw new h("--from and --to are only supported for --view agenda",p.USAGE);if(e==="agenda")return nc(r,t,n,i,o,s,a);if(e==="day"){let d=wn(r);return yn(r,n,i,o,d,W(d,1))}if(e==="week"){let d=Eo(r);return yn(r,n,i,o,d,W(d,7))}let c=Aa(r);return yn(r,n,i,o,c,Da(r))}function nc(e,t,n,r,i,o,s){if(i)throw new h("--full-period is only supported for --view day|week|month. For agenda windows, use --from and --to.",p.USAGE);return{anchor:e,start:o??(t.date?e:r?void 0:n),end:s,fullPeriod:!1}}function yn(e,t,n,r,i,o){let s=n||r;return{anchor:e,start:s?i:Fa(i,t),end:o,periodStart:i,periodEnd:o,fullPeriod:s}}function rc(e){let t=new Map;for(let n of e){let r=t.get(n.date)??[];r.push(n),t.set(n.date,r)}return[...t.entries()].sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>({date:n,count:r.length,events:Io(r)}))}function ic(e){let t=new Set,n=new Map,r=new Map,i=0,o=0,s=0,a=0;for(let c of e)t.add(c.item_id),yo(n,c.item_type),yo(r,c.item_status),c.kind==="deadline"?i+=1:c.kind==="reminder"?o+=1:(s+=1,c.event_recurring===!0&&(a+=1));return{events:e.length,items:t.size,deadlines:i,reminders:o,scheduled:s,by_kind:{deadline:i,reminder:o,event:s},by_type:go(n),by_status:go(r),recurring_events:a}}function oc(e){let t=e.start??"unbounded",n=e.end??"unbounded";return`${t} -> ${n}`}function To(e,t){if(t&&t!=="UTC")try{let n=new Intl.DateTimeFormat("en-GB",{timeZone:t,hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).formatToParts(new Date(e)),r=n.find(o=>o.type==="hour")?.value,i=n.find(o=>o.type==="minute")?.value;if(r&&i)return`${r}:${i}`}catch{}return`${new Date(e).toISOString().slice(11,16)}Z`}function _n(e){let t=Object.entries(e);return t.length===0?"empty":t.map(([n,r])=>`${n}=${r}`).join(", ")}function sc(e){return e.event_end?e.event_all_day===!0?e.event_end.slice(0,10):e.date===So(e.event_end,e.event_timezone)?To(e.event_end,e.event_timezone):e.event_end:null}function ac(e){let t=`${To(e.at,e.event_timezone)} [${e.kind}] ${e.item_id} type=${e.item_type} p${e.item_priority} ${e.item_status} ${e.item_title}`;if(e.kind==="reminder"){let n=e.reminder_text??"";return`${t} \u2014 ${n} reminder=${JSON.stringify(n)}`}if(e.kind==="event"){let n=[],r=e.event_title??e.item_title;e.event_title!==null&&e.event_title!==e.item_title&&(n.push(r),n.push(`title=${JSON.stringify(r)}`)),e.event_recurring&&(n.push("(recurring)"),n.push("recurring=true"));let i=sc(e);return i&&n.push(`end=${i}`),e.event_all_day!==null&&n.push(`all_day=${e.event_all_day?"true":"false"}`),e.event_timezone&&n.push(`timezone=${e.event_timezone}`),e.event_location&&(n.push(`@ ${e.event_location}`),n.push(`location=${JSON.stringify(e.event_location)}`)),e.event_recurrence_rule&&n.push(`recurrence=${e.event_recurrence_rule}`),e.reminder_text&&n.push(`description=${JSON.stringify(e.reminder_text)}`),`${t} \u2014 ${n.join(" ")}`}return t}function _o(e,t){if(t&&t.length>0){e.push("### warnings");for(let n of t)e.push(`- ${n}`);e.push("")}}function jf(e){let t=[];if(t.push(`# pm calendar (${e.view})`),t.push(""),t.push(`- now: ${e.now}`),t.push(`- window: ${oc(e.range)}`),e.range.period_start&&e.range.period_end&&(t.push(`- period: ${e.range.period_start} -> ${e.range.period_end}`),t.push(`- period-mode: ${e.range.full_period?"full-period":"active-window"}`)),t.push(`- events: ${e.summary.events} (deadlines: ${e.summary.deadlines}, reminders: ${e.summary.reminders}, scheduled: ${e.summary.scheduled})`),t.push(`- items: ${e.summary.items}`),t.push(`- matching-events: ${e.total_count}; returned: ${e.count}; remaining: ${e.omitted_count} (summary: ${e.summary_scope})`),e.next_cursor&&t.push(`- continue: repeat the same query with --after ${e.next_cursor}`),t.push(`- by-kind: ${_n(e.summary.by_kind)}`),t.push(`- by-type: ${_n(e.summary.by_type)}`),t.push(`- by-status: ${_n(e.summary.by_status)}`),t.push(`- recurring-events: ${e.summary.recurring_events}`),t.push(""),e.events.length===0)return t.push(e.total_count===0?"No calendar events matched the selected filters.":"No calendar events returned on this page. Repeat the same query with --limit 1 or greater to retrieve matching events."),t.push(""),_o(t,e.warnings),wo(t.join(`
|
|
2
|
-
`));for(let n of e.days){t.push(`## ${n.date} (${n.count})`);for(let r of n.events)t.push(`- ${ac(r)}`);t.push("")}return _o(t,e.warnings),wo(t.join(`
|
|
3
|
-
`))}function Uf(e){return ba(e)}function wo(e){let t=e.length;for(;t>0&&e[t-1]===`
|
|
4
|
-
`;)t-=1;return e.slice(0,t)}function cc(e){let t=bt("calendar",e.after),n=xa(e.view),r=tc(n,e,t),i=q(e.limit),o=Ca(e.include),s=hn(e.recurrenceLookaheadDays,"Calendar recurrence lookahead days"),a=hn(e.recurrenceLookbackDays,"Calendar recurrence lookback days"),c=hn(e.occurrenceLimit,"Calendar occurrence limit");if(c!==void 0&&c<1)throw new h("Calendar occurrence limit must be >= 1",p.USAGE);let d=o.has("events")&&!o.has("deadlines")&&!o.has("reminders"),l=e.to!==void 0||s!==void 0||a!==void 0||c!==void 0,u=d&&!l;return{nowValue:t,view:n,rangeBounds:r,limit:i,includeSources:o,occurrenceLimit:c,recurrenceLookaheadDays:u?vo:s,recurrenceLookbackWindowDays:u&&a===void 0?0:a,eventsOnlyCapApplied:u}}function dc(e,t){t&&e.push(`recurring_events_default_cap_applied:lookback=0d,lookahead=${vo}d -- use --recurrence-lookback-days/--recurrence-lookahead-days or --to for wider range`)}function bo(e,t){return{type:e.type??null,tag:e.tag??null,priority:e.priority??null,status:e.status??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,runtime_filters:t,limit:e.limit??null,include:e.include??null,full_period:e.fullPeriod===!0?"true":null,recurrence_lookahead_days:e.recurrenceLookaheadDays??null,recurrence_lookback_days:e.recurrenceLookbackDays??null,occurrence_limit:e.occurrenceLimit??null}}function lc(e,t){return{start:t.start??null,end:t.end??null,period_start:t.periodStart??null,period_end:t.periodEnd??null,full_period:t.fullPeriod,past:e.past===!0,from:e.from??null,to:e.to??null}}async function Ro(e,t){let n=T(process.cwd(),t.path);await U(n);let r=cc(e),i=await A(n),o=O(i.schema),s=Q(i.schema),a=mt(e,s,"calendar"),c=R(i,C()),d=[];dc(d,r.eventsOnlyCapApplied);let l=await he(n,i.item_format,c.type_to_folder,d,i.schema),u=Ya(l,e,c,o,a),m=La(r.rangeBounds.start,r.rangeBounds.end,r.nowValue,r.recurrenceLookbackWindowDays,r.recurrenceLookaheadDays),f=Qa(u,m,r.includeSources,r.occurrenceLimit).filter(k=>ec(k,r.rangeBounds.start,r.rangeBounds.end)),{rows:g,..._}=Fe(f,{command:"calendar",after:e.after,clock:r.nowValue,limit:r.limit,query:{pmRoot:n,view:r.view,range:r.rangeBounds,filters:{...bo(e,a),limit:void 0},recurringWindow:m,occurrenceLimit:r.occurrenceLimit}}),y=rc(g),w=[...new Set(d)].sort((k,b)=>k.localeCompare(b));return{view:r.view,output_default:"markdown",now:r.nowValue,anchor:r.rangeBounds.anchor,range:lc(e,r.rangeBounds),filters:bo(e,a),..._,summary_scope:"returned_rows",summary:ic(g),events:g,days:y,...w.length>0?{warnings:w}:{}}}import mc from"node:fs/promises";import Fo from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2e0c4f91-ea56-5bec-b071-448eff719fec")}catch{}})();var vn={version:1,aliases:{}};function Et(e=[]){let t=new Set(xe),n=r=>{/^[a-z0-9]+(?:-[a-z0-9]+)*$/u.test(r)&&t.add(r)};for(let r of e){for(let i of Object.keys(r.provenance_environment_keys??{}))n(i);for(let i of Object.keys(r.provenance_resolvers??{}))n(i);for(let i of r.provenance_unavailable_dimensions??[])n(i)}return[...t].sort()}function Ao(e){if(e===void 0)return;let t=(typeof e=="string"?[e]:e).flatMap(n=>n.split(",")).map(n=>n.trim()).filter(n=>n.length>0);return t.length===0?void 0:new Set(t)}function kn(e,t){if(e.agent_harness?.trim())return{agent_harness:e.agent_harness,harness_source:"recorded"};let n=t.aliases[e.author];return n?{agent_harness:n,harness_source:"vocabulary"}:{harness_source:"unresolved"}}function uc(e,t=xe){let n=new Set(t),r=new Map,i=e.provenance===void 0?[]:typeof e.provenance=="string"?[e.provenance]:e.provenance;for(let o of i.flatMap(s=>s.split(","))){let s=o.indexOf("=");if(s<0)throw new h(`Provenance predicate must use dimension=value; received "${o.trim()}".`,p.USAGE,{code:"invalid_provenance_predicate"});let a=o.slice(0,s).trim().toLowerCase(),c=o.slice(s+1).trim();if(!n.has(a))throw new h(`Unknown provenance dimension "${a||o.trim()}". Declared dimensions: ${[...n].sort().join(", ")}.`,p.USAGE,{code:"unknown_provenance_dimension"});if(c.length===0)throw new h(`Provenance predicate must use dimension=value; received "${o.trim()}".`,p.USAGE,{code:"invalid_provenance_predicate"});let d=r.get(a)??new Set;d.add(c),r.set(a,d)}return r}function Ct(e,t=vn,n={}){let r=kn(e,t);return{...n.itemId===void 0?{}:{item_id:n.itemId},...n.version===void 0?{}:{version:n.version},ts:e.ts,op:e.op,author:e.author,...e.author_source===void 0?{}:{author_source:e.author_source},...r,vocabulary_version:t.version,...e.agent_instance===void 0?{}:{agent_instance:e.agent_instance},agent_provenance:e.agent_provenance??{},...e.message===void 0?{}:{message:e.message}}}function xt(e,t=vn,n=xe){let r=Ao(e.harness),i=Ao(e.agentInstance),o=uc(e,n);return s=>{let a=kn(s,t).agent_harness;if(r&&(!a||!r.has(a))||i&&!i.has(s.agent_instance??""))return!1;for(let[c,d]of o){let l=s.agent_provenance?.[c];if(!l||!d.has(l.value))return!1}return!0}}function It(e,t=vn,n=xe){let r=new Set(n),i=new Map,o=0;for(let s of e){for(let a of Object.keys(s.agent_provenance??{}))r.add(a);kn(s,t).agent_harness?o+=1:i.set(s.author,(i.get(s.author)??0)+1)}return{entries:e.length,vocabulary_version:t.version,harness:{resolved:o,unresolved:e.length-o,unresolved_authors:[...i].map(([s,a])=>({author:s,entries:a})).sort((s,a)=>a.entries-s.entries||s.author.localeCompare(a.author)).slice(0,20)},dimensions:[...r].sort().map(s=>{let a=0,c=0;for(let d of e){let l=d.agent_provenance?.[s];l===null?c+=1:l!==void 0&&(a+=1)}return{dimension:s,observed:a,unavailable:c,legacy_missing:e.length-a-c}})}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="aa1ede64-e578-57da-9194-1cd646cee915")}catch{}})();var fc=20,pc=5,hc=15,gc="-24h";function np(e){let t={...e};return t.full===!0?(t.raw=!0,t.compact=!1):t.raw===!0&&t.compact===void 0&&(t.compact=!0),delete t.full,t}var yc={digest:"activity_digest",compact:"compact_activity",provenance:"provenance_activity",full:"activity"};function Sn(e,t){if(e===void 0)return;let n=e.trim();if(n.length===0)throw new h(`${t} must not be empty`,p.USAGE);return n}function Do(e,t,n){if(e===void 0)return;let r=e.trim();if(r.length===0)throw new h("Activity time bounds must not be empty",p.USAGE);let i=n==="--from"&&/^\d+[hdwm]$/iu.test(r)?`-${r}`:r;return B(i,new Date(t),n)}function _c(e,t,n){return!(e.ts.length===0&&(t||n)||t&&E(e.ts,t)<0||n&&E(e.ts,n)>=0)}function Me(e,t=""){return typeof e=="string"?e:t}function wc(e,t){return{...t,id:e,ts:Me(t.ts),author:Me(t.author,"unknown"),op:Me(t.op,"unknown"),patch:Array.isArray(t.patch)?t.patch:[],before_hash:Me(t.before_hash),after_hash:Me(t.after_hash)}}function bc(e){return[...e].sort((t,n)=>{let r=n.ts.localeCompare(t.ts);if(r!==0)return r;let i=t.id.localeCompare(n.id);return i!==0?i:t.op.localeCompare(n.op)})}async function vc(e){try{return(await mc.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort((t,n)=>t.localeCompare(n))}catch(t){if(Br(t))return[];throw t}}function kc(e){return e.raw!==!0&&e.compact!==!0&&e.provenance!==!0?"digest":e.provenance===!0?"provenance":e.compact===!0||e.raw===!0&&e.compact!==!1?"compact":"full"}function Sc(e,t,n){if(e.unbounded!==!0)return t!==void 0?t:n==="digest"?hc:n==="compact"?fc:pc}function Ec(e,t,n){let r=t==="digest",i=Do(e.to??(r||e.unbounded!==!0?n:void 0),n,"--to"),o=Do(e.from??(r?gc:void 0),e.from===void 0&&r?i:n,"--from");if(o&&i&&E(o,i)>=0)throw new h("Activity --from must be before --to",p.USAGE);let s=pe(e.limit);if(e.unbounded===!0&&s!==void 0)throw new h("Activity --unbounded cannot be combined with --limit",p.USAGE);return{id:Sn(e.id,"Activity --id"),op:Sn(e.op,"Activity --op"),author:Sn(e.author,"Activity --author"),from:o,to:i,limit:Sc(e,s,t),limitSource:e.unbounded===!0||s!==void 0?"explicit":"default",harness:e.harness,agentInstance:e.agentInstance,provenance:e.provenanceFilter}}async function Cc(e){let t=T(process.cwd(),e.path);return await U(t),{pmRoot:t,settings:await A(t)}}async function xc(e){let t=R(e.settings,C()),n=await he(e.pmRoot,e.settings.item_format,t.type_to_folder,void 0,e.settings.schema);await Ii({pmRoot:e.pmRoot,settings:e.settings,itemIds:n.map(i=>i.id),commandLabel:"activity"});let r=Fo.join(e.pmRoot,"history");return await Ce({path:r,scope:"project"}),{historyDir:r,itemsById:new Map(n.map(i=>[i.id,{title:i.title,type:i.type,status:i.status}]))}}function Ic(e,t,n){return n.op&&e.op!==n.op||n.author&&e.author!==n.author?!1:_c(t,n.from,n.to)}async function Tc(e,t){let n=[];for(let r of await vc(e)){let i=r.slice(0,-6);if(t.id&&i!==t.id)continue;let o=await te(Fo.join(e,r),i);for(let s of o){let a=wc(i,s);Ic(s,a,t)&&n.push(a)}}return n}function Rc(e){return e.map(t=>({id:t.id,op:t.op,ts:t.ts,author:t.author,...t.message?{msg:t.message}:{}}))}function Ac(e){let t=[...e.entries()].sort(([r,i],[o,s])=>s-i||r.localeCompare(o)),n=t.slice(0,4).map(([r,i])=>`${r}:${i}`);return t.length>n.length&&n.push(`+${t.length-n.length}`),n.join(",")}function Dc(e,t){let n=new Map;for(let r of e){let i=n.get(r.id);if(i===void 0){n.set(r.id,{firstTs:r.ts,lastTs:r.ts,eventCount:1,operations:new Map([[r.op,1]])});continue}i.eventCount+=1,E(r.ts,i.firstTs)<0&&(i.firstTs=r.ts),E(r.ts,i.lastTs)>0&&(i.lastTs=r.ts),i.operations.set(r.op,(i.operations.get(r.op)??0)+1)}return[...n.entries()].map(([r,i])=>{let o=t.get(r);return{id:r,type:o?.type??"unknown",status:o?.status??"unknown",title:(o?.title??"(item metadata unavailable)").slice(0,160),event_count:i.eventCount,first_ts:i.firstTs,last_ts:i.lastTs,operations:Ac(i.operations)}}).sort((r,i)=>E(i.last_ts,r.last_ts)||r.id.localeCompare(i.id))}function Fc(e){let t=new Map;for(let i of e)t.set(i.op,(t.get(i.op)??0)+1);let n=[...t.entries()].sort((i,o)=>o[1]-i[1]||i[0].localeCompare(o[0])),r=n.slice(0,8);return r.length<n.length&&r.push([`+${String(n.length-r.length)}`,n.slice(r.length).reduce((i,[,o])=>i+o,0)]),Object.fromEntries(r)}function Mc(e,t,n,r,i){if(e==="digest"){let{rows:a,...c}=Fe(Dc(t,r),n);return{rows:{activity_digest:a},compact:!1,page:c}}let{rows:o,...s}=Fe(t,n);return e==="compact"?{rows:{compact_activity:Rc(o)},compact:!0,page:s}:e==="provenance"?{rows:{provenance_activity:o.map(i)},compact:!1,page:s}:{rows:{activity:o},compact:!1,page:s}}async function Mo(e,t){let n=await Cc(t),r=kc(e),i=bt("activity",e.after),o=Ec(e,r,i),s=await xc(n),a=Et(n.settings.agent_identity.harness_signals),c=n.settings.agent_identity.identity_vocabulary,d=xt({harness:o.harness,agentInstance:o.agentInstance,provenance:o.provenance},c,a),l=bc(await Tc(s.historyDir,o)).filter(d),u=Mc(r,l,{command:"activity",after:e.after,clock:i,limit:o.limit,query:{pmRoot:n.pmRoot,projectionMode:r,filters:{...o,limit:void 0,limitSource:void 0},matching_activity_digest:r==="digest"?mn(l):void 0,vocabulary:c,provenanceDimensions:a}},s.itemsById,m=>Ct(m,c,{itemId:m.id}));return{...u.rows,compact:u.compact,projection:{mode:r,row_key:yc[r]},omission_receipt:nt("activity",r),...u.page,window:{anchor:i,from:o.from??null,to:o.to??null},limit:o.limit??null,...r==="digest"?{activity_summary:{window:{from:o.from,to:o.to},event_count:l.length,item_count:u.page.total_count,author_count:new Set(l.map(m=>m.author)).size,operation_counts:Fc(l)}}:{},...e.provenanceSummary===!0?{provenance_summary:It(l,c,a)}:{},applied_bound:{kind:o.limit===void 0?"unbounded":"limit",source:o.limitSource,value:o.limit??null}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9cdfc765-7370-57bb-a4dc-be2df8aa1e6f")}catch{}})();var $o="1970-01-01T00:00:00.000Z";function $e(e){if(typeof e!="string")return null;let t=e.trim();if(!ai(t)&&!/^\d{4}-\d{2}-\d{2}$/u.test(t))return null;try{return B(t,new Date(Number.NaN),"context signal recency coordinate")}catch{return null}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="74b476d9-5f30-5135-9539-5fe3e864c60f")}catch{}})();var En=["structural","recency","activity_density","graph_proximity","claim_focus","priority_pressure","risk_pressure","deadline_pressure","knowledge_density","author_affinity","usage_affinity","semantic_similarity"],$c=Symbol("no-context-author"),Oc=Symbol("no-item-assignee");function Oo(e,t){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return n.length>0?n:t}function Lc(e){if(typeof e!="string")return;let t=/^v?(\d{4})\.(\d{1,2})\.(\d{1,2})(?:$|[-+])/u.exec(e.trim());if(!t)return;let n=Number(t[1]),r=Number(t[2]),i=Number(t[3]),o=new Date(Date.UTC(n,r-1,i));return o.getUTCFullYear()===n&&o.getUTCMonth()===r-1&&o.getUTCDate()===i?o.toISOString():void 0}function Nc(e){let t=Lc(e.release);return t!==void 0?{source:"release_cohort",coordinate:t}:{source:"created_at",coordinate:$e(e.created_at)??$o}}function Pc(e){if(!["substantive_history","release_cohort","created_at"].includes(e.source)||(e.source==="substantive_history"?e.history_op!==void 0&&typeof e.history_op!="string"||e.event_class!==void 0&&e.event_class!=="substantive":e.history_op!==void 0||e.event_class!==void 0))throw new TypeError("Context signal recency provenance must match its source");let t=$e(e.coordinate);if(t===null)throw new TypeError("Context signal recency coordinate must be a valid absolute timestamp with millisecond precision");return{...e,coordinate:t}}function jc(e,t){let n=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(n)?1-Math.min(Math.max(n,0),t)/t:0}function Uc(e,t){let n=typeof e=="string"?Date.parse(e):e instanceof Date?e.getTime():typeof e=="number"?e:Number.NaN;if(!Number.isFinite(n)||!Number.isFinite(t))return 0;let r=(n-t)/864e5;return r<=0?1:1/(1+r/30)}function Bc(e){let t=typeof e=="string"?e.trim().toLowerCase():void 0;return t==="critical"||t==="high"?1:t==="medium"?.5:t==="low"?.1:0}function Tt(e,t,n){return e?.[t]??n}function Rt(e,t){let n=new Map(e.map(d=>{let l=t.recencyEvidence?.[d.id];return[d.id,l===void 0?Nc(d):Pc(l)]})),r=[...e].sort((d,l)=>{let u=n.get(d.id).coordinate,m=n.get(l.id).coordinate;return E(m,u)||d.id.localeCompare(l.id)}),i=new Map(r.map((d,l)=>[d.id,l])),o=Math.max(e.length-1,1),s=Oo(t.author,$c),a=M("in_progress",t.statusRegistry),c=Date.parse(t.now);return e.map(d=>{let l=Oo(d.assignee,Oc)===s,u=(d.comments?.length??0)+(d.notes?.length??0)+(d.learnings?.length??0);return{id:d.id,item:d,signal_provenance:{recency:n.get(d.id)},signals:{recency:e.length===1?1:1-i.get(d.id)/o,activity_density:t.activityDensity?.[d.id],graph_proximity:Tt(t.graphProximity,d.id,d.parent?.3:0),claim_focus:Tt(t.claimFocus,d.id,x(d.status,t.statusRegistry)===a?1:l?.75:0),priority_pressure:jc(d.priority,4),risk_pressure:Bc(d.risk),deadline_pressure:Uc(d.deadline,c),knowledge_density:Tt(t.knowledgeDensity,d.id,Math.min(u/5,1)),author_affinity:Tt(t.authorAffinity,d.id,l?1:0),usage_affinity:t.usageAffinity?.[d.id],semantic_similarity:t.semanticSimilarity?.[d.id]}}})}var qc="context_relevance",Hc={structural:.4,recency:.35,activity_density:.25,graph_proximity:.15,claim_focus:.6,priority_pressure:.35,risk_pressure:.2,deadline_pressure:.45,knowledge_density:.25,author_affinity:.2,usage_affinity:.3,semantic_similarity:.5},Gc=new TextEncoder;function Wc(e){let t=new Set;for(let n of e){if(typeof n.id!="string"||n.id.trim().length===0||t.has(n.id))throw new TypeError("Context relevance candidates require unique non-empty ids");t.add(n.id);for(let[r,i]of Object.entries(n.signals??{})){if(r==="structural"||!En.includes(r))throw new TypeError(`Unknown context relevance signal: ${r}`);if(i!==void 0&&(!Number.isFinite(i)||i<0||i>1))throw new TypeError(`Context relevance signal ${r} must be a finite number from 0 to 1`)}}}function zc(e){let t={...Hc};for(let[n,r]of Object.entries(e??{}))r!==void 0&&En.includes(n)&&(t[n]=r);for(let[n,r]of Object.entries(t))if(!Number.isFinite(r)||r<0)throw new TypeError(`Context relevance weight ${n} must be a finite non-negative number`);return t}function No(e,t={}){Wc(e);let n=zc(t.weights),r=Math.max(e.length-1,1),i=new Set(["structural"]);for(let a of e)for(let[c,d]of Object.entries(a.signals??{}))d!==void 0&&i.add(c);let o=En.filter(a=>i.has(a)),s=e.map((a,c)=>{let d={structural:e.length===1?1:1-c/r,...a.signals},l={},u=0,m=0;for(let f of o){let g=d[f];if(g===void 0)continue;let _=g*n[f];l[f]=_,u+=_,m+=n[f]}return{...a,baseline_rank:c+1,rank:0,score:m===0?0:u/m,contributions:l}});return s.sort((a,c)=>c.score-a.score||a.baseline_rank-c.baseline_rank),s.forEach((a,c)=>{a.rank=c+1}),{model:"default-weighted-v1",available_signals:o,ranked:s}}async function Kc(e,t={}){let n=No(e,t);if(!t.scorer)return n;let r=await t.scorer({candidates:e,default_report:n}),i=new Map;for(let s of r){if(i.has(s.id)||!Number.isFinite(s.score))throw new TypeError("Context relevance scorer must return one finite score for every candidate");i.set(s.id,s.score)}if(i.size!==e.length||e.some(s=>!i.has(s.id)))throw new TypeError("Context relevance scorer must return one finite score for every candidate");let o=n.ranked.map(s=>{let a=i.get(s.id);return{...s,score:a,contributions:{custom:a}}});return o.sort((s,a)=>a.score-s.score||s.baseline_rank-a.baseline_rank),o.forEach((s,a)=>{s.rank=a+1}),{model:"custom",available_signals:n.available_signals,ranked:o}}async function At(e,t,n={}){let r=No(t,n),i=await Qr(qc,{surface:e,candidates:t,default_report:r});if(!i.handled)return i.warnings.length>0?{...r,warnings:i.warnings}:r;if(!Array.isArray(i.result)||!i.result.every(o=>typeof o=="object"&&o!==null&&typeof o.id=="string"&&typeof o.score=="number"&&Number.isFinite(o.score)))return{...r,warnings:[...i.warnings,"extension_context_relevance_invalid_result"]};try{let o=await Kc(t,{...n,scorer:()=>i.result});return i.warnings.length>0?{...o,warnings:i.warnings}:o}catch{return{...r,warnings:[...i.warnings,"extension_context_relevance_invalid_result"]}}}var Vc=["ndcg","reciprocal_rank","required_recall","continuity_coverage","token_budget_adherence"];function Lo(e,t){return e.length===0?1:e.filter(n=>t.has(n)).length/e.length}function Qc(e){if(!Number.isFinite(e.actual_tokens)||e.actual_tokens<0||!Number.isFinite(e.token_budget)||e.token_budget<=0)throw new TypeError("Context ranking token counts require actual_tokens >= 0 and token_budget > 0");let t=e.judgments??{},n=e.ranked_ids.map(d=>Math.max(0,t[d]??0)),r=Object.values(t).map(d=>Math.max(0,d)).sort((d,l)=>l-d).slice(0,n.length||1),i=d=>d.reduce((l,u,m)=>l+(2**u-1)/Math.log2(m+2),0),o=i(r),s=n.findIndex(d=>d>0),a=new Set(e.ranked_ids),c=e.actual_tokens<=e.token_budget;return{ndcg:o===0?1:i(n)/o,reciprocal_rank:s<0?0:1/(s+1),required_recall:Lo(e.required_ids??[],a),continuity_coverage:Lo(e.continuity_ids??[],a),token_budget_adherence:c?1:e.token_budget/e.actual_tokens,within_token_budget:c}}function Yc(e){return Math.ceil(Gc.encode(JSON.stringify(e)).byteLength/4)}function Xc(e){return Math.round(e*1e4)/1e4}function Jc(e,t){let n=t==="context"?[...e.high_level??[],...e.low_level??[],...e.blocked_fallback??[]].map(o=>o.id):[...e.recommended?[e.recommended]:[],...e.ready??[]].map(o=>o.id),r=new Set(n),i=(e.ranking?.items??[]).filter(o=>r.has(o.id)).map(o=>({id:o.id,contributions:o.contributions}));return{rankedIds:n,attribution:i}}async function Zc(e,t){if(e.id.trim().length===0||e.rationale.trim().length===0)throw new TypeError("Context evaluation scenarios require non-empty id and rationale values");let n=e.surface==="context"?await t.context({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"}):await t.next({...e.options,explainRanking:!0,outputBudget:e.options?.outputBudget??"unbounded"});if(ti(n)||n.read_output?.result_omitted===!0||n.context_intent?.result_omitted===!0)throw new h(`Cannot evaluate ${e.surface} scenario "${e.id}": the read omitted its useful result.`,p.USAGE,{code:"context_evaluation_read_incomplete",nextSteps:["Increase the read output budget or start a new shared output session, then rerun the scenario."]});let{rankedIds:r,attribution:i}=Jc(n,e.surface),o={...n,ranking:void 0},s=Yc(o);return{id:e.id,surface:e.surface,rationale:e.rationale,ranked_ids:r,actual_tokens:s,metrics:Qc({ranked_ids:r,judgments:e.judgments,required_ids:e.required_ids,continuity_ids:e.continuity_ids,actual_tokens:s,token_budget:e.token_budget}),attribution:i}}function ed(e,t){if(e.length===0)throw new TypeError("Context evaluation requires at least one scenario report");let n=Vc;for(let o of n)if(!Number.isFinite(t[o]))throw new TypeError(`Context evaluation threshold ${o} must be a finite number`);let r=Object.fromEntries(n.map(o=>[o,Xc(e.reduce((s,a)=>s+a.metrics[o],0)/e.length)])),i=n.filter(o=>r[o]<t[o]).map(o=>`${o}:${r[o]}<${t[o]}`);return{scenario_count:e.length,aggregate:r,scenarios:[...e],passed:i.length===0,failures:i}}async function fp(e,t,n){let r=[];for(let i of e)r.push(await Zc(i,t));return ed(r,n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d07ec2dc-762a-58ab-83ee-734ca1bf76a7")}catch{}})();var td={balanced:{redundancyPenalty:.35,uncertaintyPenalty:.2},context:{redundancyPenalty:.45,uncertaintyPenalty:.15},next:{redundancyPenalty:.25,uncertaintyPenalty:.3}},nd=["identity","summary","full"];function rd(e){if(!e.id.trim()||!Number.isInteger(e.rank)||e.rank<1)throw new TypeError("Context packing candidates require a non-empty id and positive integer rank");if(!Number.isFinite(e.score)||e.score<0)throw new TypeError("Context packing candidate scores must be finite and non-negative");let t=nd.map(n=>e.token_costs[n]);if(t.some(n=>!Number.isInteger(n)||n<1)||t[0]>t[1]||t[1]>t[2])throw new TypeError("Context projection costs must be positive monotone integers");if(e.uncertainty!==void 0&&(!Number.isFinite(e.uncertainty)||e.uncertainty<0))throw new TypeError("Context packing uncertainty must be finite and non-negative")}function id(e){if(!Number.isInteger(e.tokenBudget)||e.tokenBudget<1)throw new TypeError("Context packing tokenBudget must be a positive integer");let t=e.profile??"balanced",n=td[t];if(!n)throw new TypeError("Unknown context packing profile");let r=e.redundancyPenalty??n.redundancyPenalty,i=e.uncertaintyPenalty??n.uncertaintyPenalty;if(!Number.isFinite(r)||r<0||r>1||!Number.isFinite(i)||i<0)throw new TypeError("Context packing penalties must be finite and within their supported ranges");if(e.latencyBudgetMs!==void 0&&(!Number.isFinite(e.latencyBudgetMs)||e.latencyBudgetMs<=0))throw new TypeError("Context packing latencyBudgetMs must be positive");return{redundancy:r,uncertainty:i,profile:t}}function od(e){let t=new Set;for(let n of e){if(rd(n),t.has(n.id))throw new TypeError("Context packing candidates require unique ids");t.add(n.id)}return[...e].sort((n,r)=>n.rank-r.rank||n.id.localeCompare(r.id))}function sd(e,t,n,r,i){let o=-1,s=0;for(let a=0;a<e.length;a+=1){if(a%128===0&&i()>=r)return{index:o,evaluated:s,timedOut:!0};let c=e[a];if(c.token_costs.identity>t)continue;s+=1;let d=o<0?void 0:e[o],l=n(c)/c.token_costs.identity,u=d===void 0?Number.NEGATIVE_INFINITY:n(d)/d.token_costs.identity;(l>u||l===u&&d!==void 0&&(c.rank<d.rank||c.rank===d.rank&&c.id.localeCompare(d.id)<0))&&(o=a)}return{index:o,evaluated:s,timedOut:!1}}function ad(e){let t=new Set,n=[],r=e.tokenBudget,i=d=>{let l=d.lineage??d.cluster,u=l&&t.has(l)?1-e.redundancyPenalty:1;return Math.max(0,(d.score-e.uncertaintyPenalty*(d.uncertainty??0))*u)},o=d=>{let l=d.token_costs.identity;n.push({...d,projection:"identity",tokens:l,marginal_value:i(d)}),r-=l;let u=d.lineage??d.cluster;u&&t.add(u)};for(let d of e.ordered.filter(l=>l.required))d.token_costs.identity<=r&&o(d);let s=e.ordered.filter(d=>!d.required),a=!0,c=0;for(;s.length>0;){let d=sd(s,r,i,e.deadline,e.readClock);if(c+=d.evaluated,d.timedOut&&(a=!1),d.index<0||d.timedOut)break;o(s.splice(d.index,1)[0])}return{included:n,remaining:r,selectionComplete:a,evaluatedCandidates:c}}function cd(e,t){let n=t;for(let r of["summary","full"]){let i=r==="summary"?"identity":"summary",o=[...e].sort((s,a)=>{let c=s.token_costs[r]-s.token_costs[i],d=a.token_costs[r]-a.token_costs[i];return a.marginal_value/Math.max(d,1)-s.marginal_value/Math.max(c,1)||s.rank-a.rank||s.id.localeCompare(a.id)});for(let s of o){if(s.projection!==i)continue;let a=s.token_costs[r]-s.tokens;a>n||(s.projection=r,s.tokens+=a,n-=a)}}return n}function Po(e,t){let n=id(t),r=od(e),i=t.readClock??performance.now.bind(performance),o=t.latencyBudgetMs===void 0?Number.POSITIVE_INFINITY:i()+t.latencyBudgetMs,s=ad({ordered:r,tokenBudget:t.tokenBudget,redundancyPenalty:n.redundancy,uncertaintyPenalty:n.uncertainty,deadline:o,readClock:i}),{included:a}=s,c=cd(a,s.remaining);a.sort((l,u)=>l.rank-u.rank||l.id.localeCompare(u.id));let d=new Set(a.map(l=>l.id));return{included:a,omitted_ids:r.filter(l=>!d.has(l.id)).map(l=>l.id),token_budget:t.tokenBudget,used_tokens:t.tokenBudget-c,remaining_tokens:c,complete:s.selectionComplete&&a.length===e.length&&a.every(l=>l.projection==="full"),selection_complete:s.selectionComplete,termination_reason:s.selectionComplete?"exhausted":"latency_budget",evaluated_candidates:s.evaluatedCandidates,latency_budget_ms:t.latencyBudgetMs??null,profile:n.profile,degradation_ladder:["full","summary","identity"]}}import Oe from"node:fs/promises";import Le from"node:path";import{createHash as jo,randomUUID as dd}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]="179e487f-baf9-59d1-a438-3ae0c12b00eb")}catch{}})();var Cn=3,xn=2,Uo=["recency","activity_density","graph_proximity","priority_pressure","risk_pressure","knowledge_density"],ld=new Set(["substantive_history","release_cohort","created_at"]),ud={context_signal_store_invalid:{code:"context_signal_store_invalid",meaning:"The persisted context-signal snapshot was unreadable or invalid and was rebuilt from authoritative items.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot can be loaded without the warning."},context_signal_store_stale:{code:"context_signal_store_stale",meaning:"The persisted context-signal snapshot did not match the authoritative cursor or item corpus and was rebuilt.",recovery_command:"pm context",recovery_effect:"Re-read context and confirm the rebuilt snapshot is now fresh."},context_signal_store_write_failed:{code:"context_signal_store_write_failed",meaning:"Context signals were rebuilt in memory, but the derived snapshot could not be persisted.",recovery_command:"pm context",recovery_effect:"Retry the derived snapshot write and confirm the warning clears after storage access is restored."}};function ge(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Bo(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=1}function md(e){let t={};for(let n of Uo){let r=e[n];if(r!==void 0){if(!Bo(r))throw new TypeError(`Context relevance signal ${n} must be a finite number from 0 to 1`);t[n]=r}}return t}function fd(e,t){let n=e.map(i=>[i.id,t(i)]),r=Math.max(0,...n.map(([,i])=>i));return Object.fromEntries(n.map(([i,o])=>[i,r===0?0:o/r]))}function pd(e){let t=new Map(e.map(i=>[i.id,0])),n=i=>{t.set(i,(t.get(i)??0)+1)};for(let i of e){typeof i.parent=="string"&&i.parent.trim()&&(n(i.id),n(i.parent.trim()));for(let o of i.dependencies??[])typeof o.id!="string"||!o.id.trim()||(n(i.id),n(o.id.trim()))}let r=Math.max(0,...t.values());return Object.fromEntries(e.map(i=>[i.id,r===0?0:t.get(i.id)/r]))}function qo(e,t){return{...t,activityDensity:t.activityDensity??fd(e,n=>(n.comments?.length??0)+(n.notes?.length??0)+(n.learnings?.length??0)+(n.test_runs?.length??0)),graphProximity:t.graphProximity??pd(e)}}function Rn(e){let t=jo("sha256");for(let{id:n,signal_provenance:{recency:r}}of[...e].sort((i,o)=>i.id.localeCompare(o.id)))t.update(JSON.stringify([n,r.source,r.coordinate,r.history_op??null,r.event_class??null]));return`sha256:${t.digest("hex")}`}function hd(e){if(!ge(e))return null;let t=e.signal_provenance;if(![typeof e.id=="string",ge(e.signals),ge(t)].every(Boolean))return null;let n=t.recency;if(!ge(n))return null;let r=$e(n.coordinate);if(r===null)return null;let i=new Set(Uo),o=Object.entries(e.signals);return!o.every(([s,a])=>i.has(s)&&Bo(a))||![typeof n.source=="string"&&ld.has(n.source),["undefined","string"].includes(typeof n.history_op),[void 0,"substantive","maintenance"].includes(n.event_class),n.source==="substantive_history"?n.event_class===void 0||n.event_class==="substantive":n.history_op===void 0&&n.event_class===void 0].every(Boolean)?null:{id:e.id,signals:Object.fromEntries(o),signal_provenance:{recency:{source:n.source,coordinate:r,history_op:n.history_op,event_class:n.event_class}}}}function gd(e,t){let n=Array.from(e,hd);if(n.some(i=>i===null))return null;let r=n;return new Set(r.map(i=>i.id)).size!==r.length||r.some(i=>i.id.trim().length===0)||t!==Rn(r)?null:r.sort((i,o)=>i.id.localeCompare(o.id))}function yd(e){if(!ge(e)||e.format_version!==Cn||e.signal_set_version!==xn||typeof e.source_cursor!="string"||e.source_cursor.trim().length===0||typeof e.recency_evidence_fingerprint!="string"||!/^sha256:[a-f0-9]{64}$/u.test(e.recency_evidence_fingerprint)||typeof e.generated_at!="string"||!Number.isFinite(Date.parse(e.generated_at))||e.source!=="derived_index"&&e.source!=="scan_fallback"||!Array.isArray(e.items))return null;let t=gd(e.items,e.recency_evidence_fingerprint);return t===null?null:{format_version:Cn,signal_set_version:xn,source_cursor:e.source_cursor,recency_evidence_fingerprint:e.recency_evidence_fingerprint,generated_at:e.generated_at,source:e.source,items:t}}function Ho(e){if(typeof e.sourceCursor!="string"||e.sourceCursor.trim().length===0)throw new TypeError("Context signal source cursor must be non-empty");if(!Number.isFinite(Date.parse(e.now)))throw new TypeError("Context signal snapshot clock must be a valid timestamp");if(e.source!=="derived_index"&&e.source!=="scan_fallback")throw new TypeError("Context signal snapshot source must be derived_index or scan_fallback")}function Go(e,t,n=Rn(e)){let r=e.map(({id:o})=>o);if(new Set(r).size!==r.length||r.some(o=>o.trim().length===0))throw new TypeError("Context signal snapshot item IDs must be unique and non-empty");let i=e.map(({id:o,signals:s,signal_provenance:a})=>({id:o,signals:md(s),signal_provenance:a})).sort((o,s)=>o.id.localeCompare(s.id));return Object.freeze({format_version:Cn,signal_set_version:xn,source_cursor:t.sourceCursor,recency_evidence_fingerprint:n,generated_at:t.now,source:t.source,items:Object.freeze(i.map(o=>Object.freeze(o)))})}function Ep(e,t){return Ho(t),Go(Rt(e,qo(e,t)),t)}var In=class{filePath;constructor(t){if(typeof t!="string"||t.trim().length===0)throw new TypeError("Context signal store path must be non-empty");this.filePath=Le.resolve(t)}async read(){try{return JSON.parse(await Oe.readFile(this.filePath,"utf8"))}catch(t){if(ge(t)&&Je(t))return null;throw t}}async write(t){let n=Le.dirname(this.filePath);await Oe.mkdir(n,{recursive:!0});let r=Le.join(n,`.${Le.basename(this.filePath)}.${dd()}.tmp`);try{await Oe.writeFile(r,`${JSON.stringify(t)}
|
|
5
|
-
`,{encoding:"utf8",flag:"wx"}),await Oe.rename(r,this.filePath)}finally{try{await Oe.rm(r,{force:!0})}catch{}}}},Tn=class{adapter;constructor(t){this.adapter=t}async readOrRebuild(t,n){Ho(n);let r=[],i=null;try{let m=await this.adapter.read();i=yd(m),m!==null&&i===null&&r.push("context_signal_store_invalid")}catch{r.push("context_signal_store_invalid")}let o=t.map(m=>m.id).sort((m,f)=>m.localeCompare(f)),s=i?.items.map(m=>m.id)??[],a=Rt(t,qo(t,n)),c=Rn(a),d=i!==null&&i.source_cursor===n.sourceCursor&&i.recency_evidence_fingerprint===c&&i.source===n.source&&s.length===o.length&&s.every((m,f)=>m===o[f]),l;if(d&&i!==null)l=i;else{l=Go(a,n,c);try{await this.adapter.write(l)}catch{r.push("context_signal_store_write_failed")}}let u=new Map(l.items.map(m=>[m.id,m]));return{snapshot:l,candidates:a.map(m=>({...m,signals:{...m.signals,...u.get(m.id)?.signals},signal_provenance:u.get(m.id).signal_provenance})),cache_status:d?"fresh":"rebuilt",warnings:r,warning_details:r.map(m=>ud[m])}}};function _d(e){let t=jo("sha256");for(let n of[...e].sort((r,i)=>r.id.localeCompare(i.id)))t.update(JSON.stringify([n.id,n.updated_at,n.status,n.parent??null,n.priority??null,n.risk??null,(n.dependencies??[]).map(r=>r.id).sort(),n.comments?.length??0,n.notes?.length??0,n.learnings?.length??0,n.test_runs?.length??0]));return`scan:${t.digest("hex")}`}async function Dt(e,t){let n=t.sourceCursor!==void 0,r=t.source!==void 0;if(n!==r)throw new TypeError("Context signal source and source cursor must be provided together");if(t.storeKey!==void 0&&!/^[a-z0-9](?:[a-z0-9_-]*[a-z0-9])?$/u.test(t.storeKey))throw new TypeError("Context signal store key must be a filesystem-safe identifier");let i=n?null:await pt(t.pmRoot),o=t.sourceCursor??i?.source_cursor??_d(e),s=t.source??(i===null?"scan_fallback":"derived_index"),a=new Tn(new In(Le.join(t.pmRoot,"runtime",t.storeKey?`context-signals-${t.storeKey}.json`:"context-signals.json"))),c=t.recencyEvidence??Object.fromEntries(Object.entries(await Si(t.pmRoot,e.map(d=>d.id))).map(([d,l])=>[d,{source:"substantive_history",coordinate:l.entry.ts,history_op:l.entry.op,event_class:"substantive"}]));return a.readOrRebuild(e,{...t,recencyEvidence:c,sourceCursor:o,source:s})}import wd from"node:path";import{createHash as bd}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="61e27cd0-a444-5b66-a8e3-d81c76e4f8ae")}catch{}})();function Wo(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 vd from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="df753f1d-cfc1-555e-a411-e1417eab0b53")}catch{}})();var zo=1,kd=1e4,Ko=12;function Sd(e){let t=new Date(e);return`${t.getUTCFullYear()}-Q${Math.floor(t.getUTCMonth()/3)+1}`}function Ed(e,t){let n=new Set,r=e.parent;for(;r&&!n.has(r);){n.add(r);let i=t.get(r);if(!i)return;if(i.type.toLowerCase()==="epic")return i;r=i.parent}}function Cd(e){let t=[...e.items].sort((i,o)=>o.completion.timestamp.localeCompare(i.completion.timestamp)||i.item.id.localeCompare(o.item.id)),n=new Set,r=0;for(let{item:i}of t){let o=i.resolution??i.close_reason;o?.trim()&&n.add(o.trim()),r+=(i.notes?.length??0)+(i.learnings?.length??0)}return{kind:e.kind,key:e.key,label:e.label,item_count:t.length,first_closed_at:t.at(-1).completion.timestamp,last_closed_at:t[0].completion.timestamp,representative_items:t.slice(0,5).map(({item:{id:i,title:o}})=>({id:i,title:o})),outcomes:[...n].sort().slice(0,5),knowledge_entries:r}}function xd(e,t){if(!t.sourceCursor.trim())throw new TypeError("Workspace memory source cursor must be non-empty");if(!Number.isFinite(Date.parse(t.now)))throw new TypeError("Workspace memory clock must be a valid timestamp");let n=e.filter(o=>t.statusRegistry.terminal_done_statuses.has(x(o.status,t.statusRegistry))).map(o=>{let s=Wo(o);if(!s.resolved)throw new TypeError(`Completed item ${o.id} has no reporting timestamp`);return{item:o,completion:s}}),r=new Map(e.map(o=>[o.id,o])),i=new Map;for(let o of n){let{item:s,completion:a}=o,c=Sd(a.timestamp),d=`epoch:${c}`,l=i.get(d)??{kind:"epoch",key:c,label:c,items:[]};l.items.push(o),i.set(d,l);let u=Ed(s,r);if(u){let m=`epic:${u.id}`,f=i.get(m)??{kind:"epic",key:u.id,label:u.title,items:[]};f.items.push(o),i.set(m,f)}}return{format_version:zo,source_cursor:t.sourceCursor,source_item_count:e.length,generated_at:t.now,completion_time_sources:n.reduce((o,{completion:s})=>(o[s.source]+=1,o),{completed_at:0,closed_at:0,updated_at:0}),rollups:[...i.values()].map(Cd).sort((o,s)=>s.last_closed_at.localeCompare(o.last_closed_at)||o.kind.localeCompare(s.kind)||o.key.localeCompare(s.key))}}function Id(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 Td(e){if(typeof e!="object"||e===null)return!1;let t=e,n=[t.key,t.label].every(i=>typeof i=="string"&&i.length>0),r=[t.first_closed_at,t.last_closed_at].every(i=>typeof i=="string"&&Number.isFinite(Date.parse(i)));return(t.kind==="epoch"||t.kind==="epic")&&n&&Number.isSafeInteger(t.item_count)&&t.item_count>0&&r&&Array.isArray(t.representative_items)&&t.representative_items.every(Id)&&Array.isArray(t.outcomes)&&t.outcomes.every(i=>typeof i=="string")&&Number.isSafeInteger(t.knowledge_entries)&&t.knowledge_entries>=0}function Rd(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return t.format_version!==zo||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(Td)?t:null}function Ad(e){return`scan:${bd("sha256").update(tt(e.map(t=>[t.id,t.updated_at,t.status,t.parent]).sort(([t],[n])=>String(t).localeCompare(String(n))))).digest("hex")}`}async function Dd(e,t,n){return n!==void 0?n:(await pt(t))?.source_cursor??Ad(e)}async function Fd(e){try{let t=Rd(JSON.parse(await vd.readFile(e,"utf8")));return{snapshot:t,invalid:t===null}}catch(t){return{snapshot:null,invalid:!(typeof t=="object"&&t!==null&&"code"in t&&Je(t))}}}async function Ft(e,t){let n=Math.max(1,Math.floor(t.minimumItems??kd));if(e.length<n)return{snapshot:null,cache_status:"skipped",warnings:[]};let r=await Dd(e,t.pmRoot,t.sourceCursor),i=wd.join(t.pmRoot,"runtime","workspace-memory.json"),o=[],s=await Fd(i),a=s.snapshot;if(s.invalid&&o.push("workspace_memory_invalid"),a?.source_cursor===r&&a.source_item_count===e.length)return{snapshot:a,cache_status:"fresh",warnings:o};a&&o.push("workspace_memory_stale");let c=xd(e,{statusRegistry:t.statusRegistry,sourceCursor:r,now:t.now});try{await qr(i,`${JSON.stringify(c)}
|
|
6
|
-
`)}catch{o.push("workspace_memory_write_failed")}return{snapshot:c,cache_status:"rebuilt",warnings:o}}function Md(e,t,n=Ko){let r=Math.max(0,Math.floor(t)),i=0,o=[];for(let s of e.rollups){if(o.length>=Math.max(0,Math.floor(n)))break;let a=Math.ceil(JSON.stringify(s).length/4);i+a>r||(o.push(s),i+=a)}return o}function Vo(e,t,n=Ko){if(e.snapshot===null)return;let r=Md(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 $d(e,t,n=5){if(e===null)return[];let r=t.trim().toLowerCase().split(/\s+/u).filter(Boolean);return r.length===0?[]:e.rollups.map(i=>({rollup:i,score:r.filter(o=>[i.key,i.label,...i.outcomes,...i.representative_items.flatMap(s=>[s.id,s.title])].join(" ").toLowerCase().includes(o)).length})).filter(({score:i})=>i>0).sort((i,o)=>o.score-i.score||o.rollup.last_closed_at.localeCompare(i.rollup.last_closed_at)||i.rollup.key.localeCompare(o.rollup.key)).slice(0,Math.max(0,Math.floor(n))).map(({rollup:i})=>i)}function Qo(e,t,n=5){let r=$d(e.snapshot,t,n);if(r.length!==0)return{cache_status:e.cache_status==="fresh"?"fresh":"rebuilt",matches:r}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2355a6b7-2a17-586c-8dd3-182980a708d0")}catch{}})();var Od=["markdown","toon","json","ndjson"],Ot=new Set(["Epic","Feature"]),Dn=10,es=1e4,ts=["hierarchy","activity","progress","recently_created","unparented","workload"],Ld=[...ts,"blockers","files","staleness","tests"],Nd=/^(\d{4})-(\d{2})-(\d{2})/,Pd=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/,jd=/^(\d{4})(\d{2})(\d{2})$/,Ud=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?(Z|[+-]\d{2}:?\d{2})?$/i;function Bd(e){if(!e)return;let t=e.trim().toLowerCase();if(!Od.includes(t))throw new h("Context format must be one of markdown|toon|json|ndjson",p.USAGE);return t}var Yo=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 qd(e){if(e===void 0)return;let t=[];for(let n of e.split(",")){let r=n.trim().toLowerCase();if(r.length!==0){if(!Yo.has(r))throw new h(`Context --fields value not projectable: ${r} (valid: ${[...Yo].join(", ")})`,p.USAGE);t.includes(r)||t.push(r)}}if(t.length===0)throw new h("Context --fields requires at least one field name",p.USAGE);return t}function Ne(e,t){return e.map(n=>{let r={},i=n;for(let o of t)r[o]=i[o]??null;return r})}function nh(e,t){let n=Bd(e.format);if(t.json&&n&&n!=="json"&&n!=="ndjson")throw new h("Cannot combine --json with --format markdown|toon",p.USAGE);return t.json?n==="ndjson"?"ndjson":"json":n??"toon"}function Hd(e,t){return q(e,"--limit")??(t==="full"?Number.MAX_SAFE_INTEGER:Dn)}function Fn(e,t){if(e===void 0)return t;let n=typeof e=="number"?e:Number(e);if(!Number.isInteger(n)||n<1)throw new h("--token-budget must be a positive integer",p.USAGE);return n}function Gd(e,t){return t>=es&&e===Number.MAX_SAFE_INTEGER?Dn:e}function Wd(e,t){if(!e)return t.default_depth;let n=e.trim().toLowerCase();if(!Zt.includes(n))throw new h(`Context --depth must be one of ${Zt.join("|")}`,p.USAGE);return n}function zd(e,t,n){if(e&&e.length>0){let r=[];for(let i of e){let o=i.trim().toLowerCase();if(!Xe.includes(o))throw new h(`Context --section must be one of ${Xe.join("|")}`,p.USAGE);r.includes(o)||r.push(o)}return r}return t==="brief"?[]:t==="full"?[...Xe]:(t==="deep"?Ld:ts).filter(r=>n.sections[r])}function Kd(e,t){return e?q(e,"--activity-limit")??t.activity_limit:t.activity_limit}function Vd(e,t){if(!e)return t.stale_threshold_days;let n=e.trim().toLowerCase(),r=/^(\d+)d?$/.exec(n);if(!r)throw new h("--stale-threshold must be a number of days (e.g. 7 or 7d)",p.USAGE);let i=parseInt(r[1],10);if(i<=0)throw new h("--stale-threshold must be positive",p.USAGE);return i}function Xo(e,t){let n=x(e,t),r=M("blocked",t),i=M("draft",t);return n===t.in_progress_status?0:t.active_statuses.has(n)?1:r&&n===r?2:i&&n===i?3:t.blocked_statuses.has(n)?5:t.terminal_statuses.has(n)?7:6}function Pe(e,t){let n=M("closed",t);return x(e,t)===n}function Mn(e,t){return x(e,t)===t.in_progress_status}function ns(e,t){let n=x(e,t);return n!==t.in_progress_status&&t.active_statuses.has(n)}function Qd(e,t){return t.blocked_statuses.has(x(e,t))}var Yd=["compact","brief","fields","includeBody","include_body","parent"];function Xd(e){let t={...e};for(let n of Yd)delete t[n];return t}function $n(e,t){let n=t.trim().toLowerCase(),r=e.find(s=>s.id.trim().toLowerCase()===n);if(!r)return{ids:new Set,found:!1};let i=ye(e),o=je(r.id,i);return{ids:new Set([r.id,...o.map(s=>s.id)].map(s=>s.trim().toLowerCase())),found:!0}}function Jd(e){if(e===void 0)return;let t=e.trim();if(t.length===0)throw new h("Context --parent requires an item id",p.USAGE);return t}function Zd(e,t){let n=e??null,r=t??null;return n===null&&r===null?0:n===null?1:r===null?-1:n-r}function el(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 tl(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function nl(e){let t=Nd.exec(e)??Pd.exec(e);if(!t)return!0;let n=Number.parseInt(t[1],10),r=Number.parseInt(t[2],10),i=Number.parseInt(t[3],10);return r>=1&&r<=12&&i>=1&&i<=tl(n,r-1)}function rl(e){let t=jd.exec(e);if(t)return`${t[1]}-${t[2]}-${t[3]}`;let n=Ud.exec(e);if(n){let[,r,i,o,s,a,c,d]=n,l=c?`:${c}`:"",u=d&&d.length===5&&d!=="Z"?`${d.slice(0,3)}:${d.slice(3)}`:d??"";return`${r}-${i}-${o}T${s}:${a}${l}${u}`}return e}function rs(e){if(typeof e!="string")return Number.NaN;let t=e.trim();if(t.length===0||!nl(t))return Number.NaN;let n=Date.parse(rl(t));return Number.isFinite(n)?n:Number.NaN}function An(e){let t=rs(e);return Number.isFinite(t)?new Date(t).toISOString():""}function il(e){let t=rs(e);return Number.isFinite(t)?new Date(t).toISOString().slice(0,10):"unknown"}function On(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function ie(e,t,n){let r=Xo(e.status,n)-Xo(t.status,n);if(r!==0)return r;let i=e.priority-t.priority;if(i!==0)return i;let o=Zd(e.order,t.order);if(o!==0)return o;let s=el(e.deadline,t.deadline);if(s!==0)return s;let a=E(An(t.updated_at),An(e.updated_at)),c=e.id.localeCompare(t.id);return a!==0?a:c}function Mt(e){return Math.max(1,Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4))}function Ln(e,t,n=new Set,r="context"){return Po(e.ranked.map(i=>({id:i.id,item:i.item,rank:i.rank,score:i.score,required:n.has(i.id),cluster:i.item.parent?.trim()||i.item.type,token_costs:{identity:Mt({id:i.id,title:i.item.title}),summary:Mt({id:i.id,title:i.item.title,type:i.item.type,status:i.item.status,priority:i.item.priority,parent:i.item.parent}),full:Mt(i.item)}})),{tokenBudget:t,profile:r,latencyBudgetMs:25})}function Nn(e){return{...e,included:e.included.map(t=>({id:t.id,projection:t.projection,tokens:t.tokens}))}}function Pn(e,t,n){let r=n===void 0?e.ranked:e.ranked.filter(i=>n.has(i.id));return{model:e.model,available_signals:e.available_signals,items:r.map(i=>({id:i.id,rank:i.rank,baseline_rank:i.baseline_rank,score:i.score,contributions:i.contributions,...i.signal_provenance===void 0?{}:{recency:i.signal_provenance.recency}})),candidate_count:e.ranked.length,omitted_count:e.ranked.length-r.length,...t?{feature_store:{source:t.snapshot.source,cache_status:t.cache_status,source_cursor:t.snapshot.source_cursor,generated_at:t.snapshot.generated_at}}:{}}}function $t(e,t){return t>0?Math.round(e*100/t):0}function ye(e){let t=new Map;for(let n of e){let r=On(n.parent);if(!r)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return t}function Ue(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:On(e.parent)};if(t&&n){let i=je(e.id,n),o=i.length;if(o>0){let s=i.filter(a=>Pe(a.status,t)).length;r.children_total=o,r.children_closed=s,r.completion_pct=$t(s,o)}}return r}function ol(e){let t=0,n=0,r=0,i=new Set;for(let o of e){if(i.add(o.item_id),o.kind==="deadline"){t+=1;continue}if(o.kind==="reminder"){n+=1;continue}r+=1}return{events:e.length,items:i.size,deadlines:t,reminders:n,scheduled:r}}function Lt(...e){return[...new Set(e.flatMap(t=>t??[]))].sort((t,n)=>t.localeCompare(n))}function sl(e,t){return e.filter(n=>!t.terminal_statuses.has(x(n.item_status,t)))}function al(e,t,n,r){let i=new Map;for(let c of e)i.set(c.id,c);let o=ye(e),s=new Set(t.filter(c=>Ot.has(c.type)).map(c=>c.id)),a=[];for(let c of s){let d=i.get(c);if(!d)continue;let l=je(c,o),u=o.get(c)??[],m=0,f=0,g=0,_=0;for(let w of l)Pe(w.status,n)?m++:Mn(w.status,n)?g++:Qd(w.status,n)?_++:ns(w.status,n)&&f++;let y=u.sort((w,k)=>ie(w,k,n)).slice(0,r).map(w=>{let k=je(w.id,o),b=k.filter(S=>Pe(S.status,n)).length;return{id:w.id,title:w.title,type:w.type,status:w.status,children_total:k.length,children_closed:b}});a.push({id:d.id,title:d.title,type:d.type,status:d.status,children_total:l.length,children_closed:m,children_open:f,children_in_progress:g,children_blocked:_,children:y})}return a.sort((c,d)=>{let l=i.get(c.id),u=i.get(d.id);return ie(l,u,n)}).slice(0,r)}function je(e,t){let n=[],r=[e],i=new Set;for(;r.length>0;){let o=r.pop();if(i.has(o))continue;i.add(o);let s=t.get(o)??[];for(let a of s)n.push(a),r.push(a.id)}return n}async function cl(e,t){return(await Mo({compact:!0,limit:String(e)},t)).compact_activity??[]}function dl(e,t,n,r,i){let o=new Map;for(let c of e){if(!c.parent)continue;let d=o.get(c.parent)??[];d.push(c),o.set(c.parent,d)}let s=t.filter(c=>Ot.has(c.type)),a=[];for(let c of s){let d=je(c.id,o),l=d.length;if(l===0)continue;let u=0,m=0,f=0,g=0;for(let _ of d)Pe(_.status,r)?u++:n.has(_.id.trim().toLowerCase())?g++:Mn(_.status,r)?f++:ns(_.status,r)&&m++;a.push({id:c.id,title:c.title,type:c.type,total:l,closed:u,open:m,in_progress:f,blocked:g,completion_pct:$t(u,l)})}return a.sort((c,d)=>c.completion_pct-d.completion_pct).slice(0,i)}function ll(e,t,n,r){let i=new Map(t.map(o=>[o.id.trim().toLowerCase(),o]));return e.slice(0,r).map(o=>{let s=Re(o,i,n),a=s.find(d=>!d.resolved)?.id??s[0]?.id??null,c=a?i.get(a.trim().toLowerCase()):void 0;return{id:o.id,title:o.title,blocked_by:a,blocked_by_title:c?.title??null,blocked_by_status:c?.status??null,blocked_reason:o.blocked_reason??null,unblock_note:o.unblock_note??null}})}function ul(e,t){let n=new Map;for(let r of e)for(let i of r.files??[]){let o=n.get(i.path)??new Set;o.add(r.id),n.set(i.path,o)}return[...n.entries()].map(([r,i])=>({path:r,references:i.size,items:[...i].sort()})).sort((r,i)=>i.references-r.references).slice(0,t)}function ml(e,t,n){let r=new Map;for(let i of e){let o=i.assignee??null,s=r.get(o)??[];s.push(i),r.set(o,s)}return[...r.entries()].map(([i,o])=>({assignee:i,active:o.length,in_progress:o.filter(s=>Mn(s.status,t)).length,items:o.map(s=>s.id).sort()})).sort((i,o)=>o.active-i.active).slice(0,n)}function fl(e,t,n,r){let i=new Date(n).getTime()-t*24*60*60*1e3;return e.filter(o=>new Date(o.updated_at).getTime()<i).map(o=>({id:o.id,title:o.title,status:o.status,updated_at:o.updated_at,stale_days:Math.floor((new Date(n).getTime()-new Date(o.updated_at).getTime())/(1440*60*1e3))})).sort((o,s)=>s.stale_days-o.stale_days).slice(0,r)}function pl(e,t,n,r){return e.map(i=>({item:i,sortKey:An(i.created_at)})).sort((i,o)=>{let s=E(o.sortKey,i.sortKey);return s!==0?s:i.item.id.localeCompare(o.item.id)}).slice(0,r).map(({item:i})=>({...Ue(i,t,n),created_at:i.created_at}))}function hl(e,t,n,r){return e.filter(i=>!On(i.parent)&&!Ot.has(i.type)).sort((i,o)=>ie(i,o,t)).slice(0,r).map(i=>Ue(i,t,n))}function gl(e){let t=0,n=0,r=0,i=0,o=0,s=[];for(let a of e){(a.tests??[]).length>0&&t++;let c=a.test_runs??[];if(c.length>0){n++;let d=!1;for(let l of c)r+=l.passed??0,i+=l.failed??0,o+=l.skipped??0,(l.failed??0)>0&&(d=!0);d&&s.push(a.id)}}return{scope:"matching_active_items",total_items:e.length,items_with_tests:t,items_with_recent_runs:n,recent_runs:{passed:r,failed:i,skipped:o},items_failing:s.sort()}}function Jo(e){return`${new Date(e).toISOString().slice(11,16)}Z`}function is(e){let t=e.order===null?"-":String(e.order),n=e.deadline??"-",r=e.parent?` parent:${e.parent}`:"",i=e.children_total!==void 0&&e.children_closed!==void 0&&e.completion_pct!==void 0?` children:${e.children_closed}/${e.children_total} done:${e.completion_pct}%`:"",o=e.blocked===!0?` blocked:${e.blocker_ids?.join(",")||"lifecycle"}`:"";return`${e.id} p${e.priority} ${e.status} ${e.type} order:${t} deadline:${n}${r}${i}${o} ${e.title}`}function yl(e,t){let n=e;return t.map(r=>{let i=n[r];return Array.isArray(i)?`${r}:${i.join(",")}`:`${r}:${i??"-"}`}).join(" ")}function _l(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`${Jo(e.at)} [${e.kind}] ${e.item_id} (see focus item)${n}`}let t=`${Jo(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 Zo(e,t,n,r,i){if(e.push(`## ${t}`),n.length===0)e.push(r);else for(let o of n)e.push(`- ${i(o)}`);e.push("")}function wl(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 bl(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(`- ${_l(n)}`);e.push("")}function vl(e,t){if(!(!t.hierarchy||t.hierarchy.length===0)){e.push("## Hierarchy");for(let n of t.hierarchy){let r=$t(n.children_closed,n.children_total);e.push(`- ${n.id} ${n.type} ${n.status} "${n.title}" [${n.children_closed}/${n.children_total} done ${r}%]`);for(let i of n.children){let o=$t(i.children_closed,i.children_total);e.push(` - ${i.id} ${i.type} ${i.status} "${i.title}" [${i.children_closed}/${i.children_total} done ${o}%]`)}}e.push("")}}function kl(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 Sl(e,t,n,r){if(!(!t.recently_created||t.recently_created.length===0)){e.push("## Recently created");for(let i of t.recently_created)e.push(n?`- ${r(i)}`:`- ${il(i.created_at)} ${is(i)}`);e.push("")}}function El(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 Cl(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 xl(e,t){if(!(!t.blockers||t.blockers.length===0)){e.push("## Blockers");for(let n of t.blockers){let r=n.blocked_by?`blocked_by:${n.blocked_by}(${n.blocked_by_status??"?"})`:"blocked_by:-",i=n.blocked_reason?` reason:"${n.blocked_reason}"`:"",o=n.unblock_note?` unblock:"${n.unblock_note}"`:"";e.push(`- ${n.id} "${n.title}" ${r}${i}${o}`)}e.push("")}}function Il(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 Tl(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 Rl(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 Al(e,t,n){let r=[],i=0;for(let o of e.items_failing){if(r.length>=t)break;let s=Mt(o);if(i+s>n)break;r.push(o),i+=s}return r}function Dl(e,t){if(!t.tests)return;e.push("## Test health"),e.push(`- ${t.tests.scope}: ${t.tests.total_items}`),e.push(`- items_with_tests: ${t.tests.items_with_tests}`),e.push(`- items_with_recent_runs: ${t.tests.items_with_recent_runs}`),e.push(`- passed: ${t.tests.recent_runs.passed}, failed: ${t.tests.recent_runs.failed}, skipped: ${t.tests.recent_runs.skipped}`);let n=Al(t.tests,t.applied_limit??Dn,t.filters.token_budget);n.length>0&&e.push(`- items_failing: [${n.join(",")}]`);let r=t.tests.items_failing.length-n.length;r>0&&e.push(`- items_failing_omitted: ${r}`),e.push("")}function Fl(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 rh(e){let t=[],n=e.focus_fields,r=o=>n?yl(o,n):is(o);if(t.push("# pm context"),t.push(""),t.push(`- now: ${e.now}`),t.push(`- depth: ${e.depth}`),e.filters.parent&&t.push(`- scope: subtree of ${e.filters.parent}`),t.push(`- active_items: ${e.summary.active_items} (in_progress: ${e.summary.in_progress}, open: ${e.summary.open})`),e.summary.total_items!==void 0&&t.push(`- total_items: ${e.summary.total_items} (closed: ${e.summary.closed??0}, canceled: ${e.summary.canceled??0})`),t.push(`- agenda_events: ${e.summary.agenda_events}`),t.push(`- blocked_fallback_used: ${e.summary.blocked_fallback_used}`),e.extension_health){let o=e.extension_health.packages.filter(s=>s.status==="degraded").map(s=>s.name);t.push(`- extensions: ${e.extension_health.ok} ok, ${e.extension_health.degraded} degraded${o.length>0?` (${o.join(", ")})`:""}`)}let i=e.sections_included.filter(o=>o!=="blockers"||(e.blockers?.length??0)>0);if(i.length>0&&t.push(`- sections: ${i.join(", ")}`),t.push(""),Zo(t,"High-level focus",e.high_level,"No high-level active items.",r),Zo(t,"Low-level focus",e.low_level,"No low-level active items.",r),wl(t,e,r),bl(t,e),e.workspace_memory){t.push("## Workspace memory");for(let o of e.workspace_memory.rollups)t.push(`- ${o.kind}:${o.key} \u2014 ${o.label} (${o.item_count} completed, latest ${o.last_closed_at})`);t.push("")}return vl(t,e),kl(t,e),Sl(t,e,n,r),El(t,e,r),Cl(t,e),xl(t,e),Il(t,e),Tl(t,e),Rl(t,e),Dl(t,e),Fl(t,e),t.join(`
|
|
7
|
-
`)}async function Ml(e,t){let n=T(process.cwd(),t.path),r=await A(n),i=r.context??jr.context,o=O(r.schema),s=Wd(e.depth,i),a=Hd(e.limit??e.maxItems,s);return{settings:r,contextSettings:i,statusRegistry:o,depth:s,limit:a,sectionsIncluded:zd(e.section,s,i),activityLimit:Kd(e.activityLimit,i),staleThresholdDays:Vd(e.staleThreshold,i),parentScope:Jd(e.parent),focusFields:qd(e.fields),baseListOptions:Xd(e)}}function $l(e){return e.some(t=>["hierarchy","progress","blockers","staleness","recently_created","unparented"].includes(t))}function Ol(e,t){return{...e,...t,noTruncate:!0,limit:void 0,offset:void 0,after:void 0}}async function Ll(e,t){let n=await H(void 0,Ol(t.baseListOptions,{excludeTerminal:!1}),e),r=n.items,i=r.filter(a=>!Y(a.status,t.statusRegistry)),o=r,s=Nl(t.parentScope,r);return s&&(i=i.filter(a=>s.has(a.id.trim().toLowerCase())),o=o.filter(a=>s.has(a.id.trim().toLowerCase()))),{listed:n,listedItemMetadata:i,allItems:o,fullCorpus:r,subtreeIds:s}}function Nl(e,t){if(e===void 0)return;let n=$n(t,e);if(!n.found)throw new h(`Context --parent item not found: ${e}`,p.NOT_FOUND);return n.ids}function Pl(e,t,n,r){let i=new Set(wt(e,t,n,r).containers.map(o=>o.item.id));return new Set(e.filter(o=>Ot.has(o.type)||i.has(o.id)||Ie(o.type,r)!=="agent").map(o=>o.id))}async function jl(e,t,n,r,i,o,s,a,c,d,l,u,m,f,g,_){let y=[...e].sort((v,Se)=>ie(v,Se,i)),w=await ct({pmRoot:m,author:c,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),k=await Dt(y,{pmRoot:m,storeKey:"context",statusRegistry:i,now:a,author:c,usageAffinity:w.affinity,claimFocus:g}),b=await At("context",k.candidates),S=b.ranked.map(v=>v.item),X=i.active_statuses,j=S.filter(v=>X.has(x(v.status,i))),J=u?si(j,d,l,v=>v.id):0,L=u?j.slice(J,J+s):j,Qe=u&&L.length>0&&J+L.length<j.length,Ye=Qe&&L.length>0?ni(l,L[L.length-1].id,J+L.length-1):void 0,Z=S.filter(v=>r.has(v.id.trim().toLowerCase())),ke=new Set([...L.map(v=>v.id),...Z.filter(v=>!X.has(x(v.status,i))).slice(0,s).map(v=>v.id)]),se=Ln({...b,ranked:b.ranked.filter(v=>ke.has(v.id))},f,new Set(Object.entries(g??{}).filter(([,v])=>v>=1).map(([v])=>v))),K=se.included.map(v=>v.item),V=K.filter(v=>X.has(x(v.status,i))),ae=K.filter(v=>r.has(v.id.trim().toLowerCase())),ce=ye(t),Xt=$l(o)?ce:void 0,$=new Map(n.map(v=>[v.id.trim().toLowerCase(),v])),D=v=>{let Se=Ue(v,i,Xt);return r.has(v.id.trim().toLowerCase())&&(Se.blocked=!0,Se.blocker_ids=Re(v,$,i).filter(Jt=>!Jt.resolved).map(Jt=>Jt.id)),Se},Or=Pl(V,n,i,_),aa=V.filter(v=>Or.has(v.id)).slice(0,u?L.length:s).map(D),ca=V.filter(v=>!Or.has(v.id)).slice(0,u?L.length:s).map(D),Lr=j.length===0;return{activeItems:V,blockedItems:ae,highLevel:aa,lowLevel:ca,blockedFallback:Lr?ae.slice(0,s).map(D):[],blockedFallbackUsed:Lr,ranking:b,packing:se,featureStore:k,pageExtras:{...u?{applied_limit:s}:{},...Qe?{has_more:!0,truncated:!0}:{},...Ye?{next_cursor:Ye}:{}}}}function Ul(e,t){return fe("context",{pmRoot:t,options:rt(e,Kr)})}function Bl(e,t){return e.limit!==void 0||e.maxItems!==void 0||e.after!==void 0||t>=es}async function ql(e,t,n,r){let i={...t.baseListOptions,after:void 0,view:"agenda",include:"all",limit:t.parentScope===void 0?String(t.limit):void 0},o=await Ro(i,e),s=n===void 0?o.events:o.events.filter(d=>n.has(d.item_id.trim().toLowerCase())),a=sl(s,t.statusRegistry).slice(0,t.limit),c=a.map(d=>r.has(d.item_id)?{at:d.at,date:d.date,kind:d.kind,item_id:d.item_id,reference_only:!0,...d.kind==="reminder"?{reminder_text:d.reminder_text}:{},...d.kind==="event"?{event_title:d.event_title,event_recurring:d.event_recurring}:{}}:d);return{agenda:o,agendaEvents:c,agendaSummary:ol(a)}}function os(e,t,n){let r=String(t);return e.filter(i=>x(i.status,n)===r).length}async function Hl(e){let{runtime:t,allItems:n,fullCorpus:r,blockedIds:i,focusGroups:o,now:s,global:a}=e,c=ye(n),d=n.filter(u=>!Y(u.status,t.statusRegistry)),l=u=>t.sectionsIncluded.includes(u);return{hierarchy:l("hierarchy")?al(n,o.activeItems,t.statusRegistry,t.limit):void 0,activity:l("activity")?await cl(t.activityLimit,a):void 0,progress:l("progress")?dl(n,o.activeItems,i,t.statusRegistry,t.limit):void 0,blockersSection:l("blockers")?ll(o.blockedItems,r,t.statusRegistry,t.limit):void 0,recentlyCreated:l("recently_created")?pl(d,t.statusRegistry,c,t.limit):void 0,unparented:l("unparented")?hl(d,t.statusRegistry,c,t.limit):void 0,filesSection:l("files")?ul(o.activeItems,t.limit):void 0,workload:l("workload")?ml(o.activeItems,t.statusRegistry,t.limit):void 0,staleness:l("staleness")?fl(d,t.staleThresholdDays,s,t.limit):void 0,tests:l("tests")?gl(n.filter(u=>t.statusRegistry.active_statuses.has(x(u.status,t.statusRegistry)))):void 0}}function Gl(e,t,n){let r=M("canceled",t),i=e.filter(s=>t.active_statuses.has(x(s.status,t))),o=os(i,t.in_progress_status,t);return{scope:"matching_items",active_items:i.length,open:i.length-o,in_progress:o,blocked:e.filter(s=>n.has(s.id.trim().toLowerCase())).length,total_items:e.length,closed:e.filter(s=>Pe(s.status,t)).length,canceled:e.filter(s=>x(s.status,t)===r).length}}function Wl(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 zl(e,t){t&&(e.focus_fields=t,e.high_level=Ne(e.high_level,t),e.low_level=Ne(e.low_level,t),e.blocked_fallback=Ne(e.blocked_fallback,t),e.recently_created&&(e.recently_created=Ne(e.recently_created,t)),e.unparented&&(e.unparented=Ne(e.unparented,t)))}function Kl(e,t){let n=[e.high_level,e.low_level,e.blocked_fallback,e.recently_created??[],e.unparented??[]].flat();if(t){for(let o of n)delete o.tags,delete o.tags_inherited;return}let r=new Map(n.map(o=>[o.id,o])),i=new Map(n.map(o=>[o.id,o.tags?[...o.tags].sort().join("\0"):void 0]));for(let o of n){if(!o.parent||!o.tags)continue;let s=r.get(o.parent);s&&i.get(o.id)===i.get(s.id)&&(delete o.tags,o.tags_inherited=s.id)}}function Vl(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 Ql(e,t,n,r){try{let i=new Set(t.packing.included.map(c=>c.id)),o=t.ranking.ranked.map(c=>({id:c.id,rank:c.rank,included:i.has(c.id)})),s=new Set(o.map(c=>c.id));for(let c of st(e,"context"))s.has(c)||(o.push({id:c,rank:o.length+1,included:!1}),s.add(c));let a=await at({pmRoot:n,author:r,surface:"context",profile:t.packing.profile,rows:o,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});ot(e,a)}catch{e.warnings=Lt(e.warnings,["context_usage_feedback_write_failed"])}}async function Yl(e,t,n){if(e)return{};let r=(await zr({pmRoot:t,settings:n,cwd:process.cwd(),noExtensions:!1})).discovered.map(o=>({name:o.name??o.directory,status:o.status==="ok"?"ok":"degraded"})).sort((o,s)=>o.name.localeCompare(s.name)),i=r.filter(o=>o.status==="degraded").length;return r.length===0?{}:{extension_health:{total:r.length,ok:r.length-i,degraded:i,packages:r.slice(0,20),...r.length>20?{truncated:!0}:{}}}}async function Xl(e,t){let n=ki(),r=await yi(e),i=n.instance||_i(t);return ho(r.semantic_attribution?.[i])}async function ih(e,t){let n=T(process.cwd(),t.path),r=await Ml(e,t),i=await Ll(t,r),o=Gd(r.limit,i.fullCorpus.length),s={...r,limit:o,tokenBudget:Fn(e.tokenBudget,Math.max(256,o*160))},a=ee(void 0,s.settings.author_default),c=await Xl(n,a),d=Yl(e.noExtensionHealth===!0,n,s.settings),l=qi(i.fullCorpus,s.statusRegistry),u=await jl(i.listedItemMetadata,i.allItems,i.fullCorpus,l,s.statusRegistry,s.sectionsIncluded,s.limit,F(),a,e.after,Ul(e,n),Bl(e,i.fullCorpus.length),n,s.tokenBudget,c,R(s.settings,C())),m=await ql(t,s,i.subtreeIds,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),f=await Ft(i.fullCorpus,{pmRoot:n,statusRegistry:s.statusRegistry,now:m.agenda.now}),g=Lt(i.listed.warnings,m.agenda.warnings,u.ranking.warnings,[...u.featureStore.warnings],f.warnings),_=os(u.activeItems,s.statusRegistry.in_progress_status,s.statusRegistry),y=u.activeItems.length-_,w=await Hl({runtime:s,allItems:i.allItems,fullCorpus:i.fullCorpus,blockedIds:l,focusGroups:u,now:m.agenda.now,global:t}),k=Gl(i.allItems,s.statusRegistry,l),b={output_default:"toon",now:m.agenda.now,depth:s.depth,sections_included:s.sectionsIncluded,window:{anchor:m.agenda.anchor,start:m.agenda.range.start,end:m.agenda.range.end,past:m.agenda.range.past,from:m.agenda.range.from,to:m.agenda.range.to},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,limit:e.limit??e.maxItems??null,parent:s.parentScope??null,token_budget:s.tokenBudget,runtime_filters:i.listed.filters.runtime_filters??m.agenda.filters.runtime_filters??{}},summary:{returned_focus:{active_items:u.activeItems.length,in_progress:_,open:y,blocked:u.blockedItems.length},blocked_fallback_used:u.blockedFallbackUsed,high_level:u.highLevel.length,low_level:u.lowLevel.length,agenda_events:m.agendaSummary.events,...k},high_level:u.highLevel,low_level:u.lowLevel,blocked_fallback:u.blockedFallback,agenda:{summary:m.agendaSummary,events:m.agendaEvents},...u.pageExtras};return b.workspace_memory=Vo(f,Math.min(800,Math.floor(s.tokenBudget*.2))),Object.assign(b,await d),Wl(b,w,u.featureStore.warning_details),Kl(b,e.noTags===!0),e.explainRanking===!0&&(b.ranking=Pn(u.ranking,u.featureStore,new Set([...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>S.id))),b.packing=Nn(u.packing)),Jr(b,[...u.highLevel,...u.lowLevel,...u.blockedFallback].map(S=>({id:S.id,status:x(S.status,s.statusRegistry)===s.statusRegistry.in_progress_status?"in_progress":"open",blocked:S.blocked}))),zl(b,s.focusFields),Zr(b),g.length>0&&(b.warnings=g),Vl(b,u.activeItems,u.blockedItems),await Ql(b,u,n,a),b}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7328ddd0-a555-56d2-9f7d-3496dad501f5")}catch{}})();function ss(e,t,n){let r={recommended:e.recommended,ready:e.ready},i=()=>Math.max(rn(r,"json"),rn(r,"toon")),o=r.ready.length+ +(r.recommended!==null),s=i(),a=s,c=r.ready;if(a>t&&(r.ready=[],a=i()),s>t&&a<=t){let u=0,m=c.length;for(;u<m;){let f=Math.ceil((u+m)/2);r.ready=c.slice(0,f),i()<=t?u=f:m=f-1}r.ready=c.slice(0,u),a=i()}let d=a>t&&r.recommended!==null;d&&(r.recommended=null,a=i()),e.recommended=r.recommended,e.ready=r.ready,e.summary.recommended=r.recommended!==null;let l=o-r.ready.length-+(r.recommended!==null);n&&l===0&&a<=t||(e.truncation={...e.truncation,...l>0?{ready_total:e.summary.ready}:{},ready_budget:{scope:"recommended_and_ready",budget_tokens:t,estimated_tokens:a,within_budget:a<=t,omitted_count:l,recommendation_omitted:d,restore_budget_tokens:s}},d&&(e.suggestions=[`Ready work exists but the selection budget omitted the recommendation. Retry pm next --token-budget ${s}; use --output-budget to bound the entire response.`]))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f610c3be-8212-56de-86d4-2b5b9752b87c")}catch{}})();var Jl=["markdown","toon","json"],Zl=5,eu=1440*60*1e3;function tu(e){if(!e)return;let t=e.trim().toLowerCase();if(!Jl.includes(t))throw new h("Next format must be one of markdown|toon|json",p.USAGE);return t}function _h(e,t){let n=tu(e.format);if(t.json&&n&&n!=="json")throw new h("Cannot combine --json with --format markdown|toon",p.USAGE);return t.json?"json":n??"toon"}function as(e,t,n){let r=q(e,t);return r===void 0||r<=0?n:r}function Be(e,t,n,r){return{...Ue(e.item,t,n),open_blocker_count:e.open_blockers.length,blockers:e.open_blockers.map(i=>({id:i.id,title:i.title,status:i.status,...i.external?{external:!0}:{},...i.blocked_since?{blocked_since:i.blocked_since}:{},...i.external?{resolver:i.resolver??null}:{}})),unblocks:e.unblocks,rank:r}}function nu(e,t,n,r){let i=e.item,o=[],s=M("in_progress",t);return o.push(x(i.status,t)===s?"resume work":"ready"),r&&o.push("completed container \u2014 governance closeout"),o.push(`p${i.priority}${i.priority===0?" (highest)":""}`),typeof i.deadline=="string"&&i.deadline.trim().length>0&&o.push(ru(i.deadline,n)),o.push(Te(i).length>0?"all blockers resolved":"no blockers"),typeof i.parent=="string"&&i.parent.trim().length>0&&o.push(`advances ${i.parent.trim()}`),e.unblocks.length>0&&o.push(`unblocks ${e.unblocks.length} item(s)`),o}function cs(e,t,n){let r=ee(n,t),i=[],o=[];for(let s of e){let a=typeof s.item.assignee=="string"?s.item.assignee.trim():"";a.length>0&&a!==r?o.push({id:s.item.id,assignee:a}):i.push(s)}return{available:i,held:o}}var wh={partitionCallerOwnedReady:cs,resolveNextCallerAuthor:(e,t)=>ds(e,t)};function bh(e,t,n){let r=e.filter(i=>Ie(i.item.type,n)==="human");return{agent:t?e:e.filter(i=>Ie(i.item.type,n)!=="human"),decisions:t?[]:r}}function ru(e,t){let n=Date.parse(e);if(!Number.isFinite(n))return`deadline ${e.trim()}`;let r=new Date(n).toISOString().slice(0,10),i=new Date(Date.parse(t)).toISOString().slice(0,10),o=Math.round((Date.parse(r)-Date.parse(i))/eu);return o<0?`deadline ${r} (overdue ${-o}d)`:o===0?`deadline ${r} (due today)`:`deadline ${r} (in ${o}d)`}function iu(e,t){let n=M("in_progress",t);return e.filter(r=>x(r.status,t)===n).length}function jn(e,t){return(t.get(e.id.trim().toLowerCase())??[]).length>0}function ou(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 Nt(e,t,n){return[...e].sort((r,i)=>{let o=jn(r.item,t),s=jn(i.item,t);return o!==s?Number(o)-Number(s):ie(r.item,i.item,n)})}function su(e){return e.projectedReady.length===0?null:{...e.readyRows[0],reasons:nu(e.projectedReady[0],e.statusRegistry,e.now,e.completedContainer)}}function au(e,t,n){if(e!==null)return;let r=n>0?["No executable recommendation: outcome gates require verification. Inspect gate_needed, or use pm next --include-gates to opt in."]:[];if(t.length>0){let i=t.find(o=>o.blockers.length>0);return[...r,i?`${t.length} item(s) are blocked; unblock the top one by closing ${i.blockers.map(o=>o.id).join(", ")}`:`${t.length} item(s) are blocked; add blocker context or move the top item back to an active status`,"pm next --ready-only after a blocker closes to re-check ready work",'pm create --type Task --title "..." to add new ready work']}return[...r,'pm create --type Task --title "..." to add a new work item',"pm list --status in_progress to review work already underway","pm context --depth deep for the full project snapshot"]}function cu(e,t,n,r){let i={};return e>r&&(i.decision_needed_total=e),t>r&&(i.held_by_others_total=t),n>r+1&&(i.ready_total=n),Object.keys(i).length>0?i:void 0}async function du(e){try{let t=new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(o=>o.id)]),n=e.ranking.ranked.map(o=>({id:o.id,rank:o.rank,included:t.has(o.id)})),r=new Set(n.map(o=>o.id));for(let o of st(e.result,"next"))r.has(o)||(n.push({id:o,rank:n.length+1,included:!1}),r.add(o));let i=await at({pmRoot:e.pmRoot,author:e.author,surface:"next",profile:"next",rows:n,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"});ot(e.result,i)}catch{e.result.warnings=Lt(e.result.warnings,["context_usage_feedback_write_failed"])}}async function lu(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=au(e.recommended,e.blockedRows,e.gateCount),e.tokenBudget!==void 0&&ss(e.result,e.tokenBudget,e.hasIntentBudget),e.explainRanking&&(e.result.ranking=Pn(e.readyRanking,e.featureStore,new Set([...e.result.recommended?[e.result.recommended.id]:[],...e.result.ready.map(n=>n.id)])),e.result.packing=Nn(Ln(e.readyRanking,e.packingBudget,new Set,"next"))),await du({result:e.result,pmRoot:e.pmRoot,author:e.author,ranking:e.readyRanking}),e.result}function uu(e,t,n){if(!n)return e;let r=$n(t,n);if(!r.found)throw new h(`Next --parent item not found: ${n}`,p.NOT_FOUND);return e.filter(i=>r.ids.has(i.id.trim().toLowerCase()))}async function mu(e,t,n,r,i,o,s){let a=e.filter(f=>!jn(f.item,t)),c=s||a.length===0?e:a,d=await ct({pmRoot:o,author:i,enabled:process.env.PM_CONTEXT_USAGE_DISABLED!=="1"}),l=await Dt(c.map(f=>f.item),{pmRoot:o,storeKey:"next",statusRegistry:n,now:r,author:i,usageAffinity:d.affinity}),u=await At("next",l.candidates),m=new Map(c.map(f=>[f.item.id,f]));return{projectedReady:u.ranked.map(f=>m.get(f.id)).filter(f=>f!==void 0),ranking:u,completedContainer:a.length===0&&!s,featureStore:l}}function ds(e,t){let n=e.assignee?.trim();return ee(e.callerAuthor??(n&&n.length>0?n:void 0),t)}async function vh(e,t){let n=T(process.cwd(),t.path),r=await A(n),i=ds(e,r.author_default),o=O(r.schema),s=R(r,C()),a=F(),c=as(e.limit,"--limit",Zl),d=Fn(e.tokenBudget,Math.max(192,c*128)),l=as(e.blockedLimit,"--blocked-limit",c),u=e.readyOnly===!0,m=typeof e.parent=="string"?e.parent.trim():"",f=await H(void 0,ou(e,{excludeTerminal:!0}),t),g=await H(void 0,{excludeTerminal:!1,noTruncate:!0},t),_=uu(f.items,g.items,m),y=g.items,w=wt(_,y,o,s),k=ye(y),b=Hi(w,o,e,s),S=cs(b.ready,r.author_default,i),X=Nt(S.available,k,o),j=[...w.blocked].sort(($,D)=>ie($.item,D.item,o)),{projectedReady:J,ranking:L,completedContainer:Qe,featureStore:Ye}=await mu(X,k,o,a,i,n,e.includeContainers===!0),Z=J.map(($,D)=>Be($,o,k,D+1)),ke=j.map(($,D)=>Be($,o,k,D+1)),se=Nt(b.decisions,k,o).map(($,D)=>Be($,o,k,D+1)),K=Nt(b.gates,k,o).map(($,D)=>Be($,o,k,D+1)),V=Nt(w.containers,k,o).map(($,D)=>Be($,o,k,D+1)),ae=su({projectedReady:J,readyRows:Z,statusRegistry:o,now:a,completedContainer:Qe}),ce=cu(se.length,S.held.length,Z.length,c)??{};K.length>c&&(ce.gate_needed_total=K.length),V.length>c&&(ce.containers_total=V.length);let Xt={output_default:"toon",now:a,recommended:ae,ready:Z.slice(1,c+1),decision_needed:se.slice(0,c),gate_needed:K.slice(0,c),containers:V.slice(0,c),blocked:u?[]:ke.slice(0,l),held_by_others:S.held.slice(0,c),summary:{recommended:ae!==null,ready:Z.length,blocked:ke.length,in_progress:iu(Z,o),candidates:w.active_count,containers:w.container_count,decision_needed:se.length,gate_needed:K.length,held_by_others:S.held.length},filters:{type:e.type??null,tag:e.tag??null,priority:e.priority??null,assignee:e.assignee??null,assignee_filter:e.assigneeFilter??null,sprint:e.sprint??null,release:e.release??null,parent:m.length>0?m:null,limit:c,blocked_limit:l,ready_only:u,include_decisions:e.includeDecisions===!0,include_gates:e.includeGates===!0,include_containers:e.includeContainers===!0,token_budget:d},truncation:Object.keys(ce).length>0?ce:void 0};return lu({result:Xt,recommended:ae,blockedRows:ke,gateCount:K.length,candidatesWarnings:f.warnings,corpusWarnings:g.warnings,readyRanking:L,explainRanking:e.explainRanking===!0,pmRoot:n,author:i,packingBudget:d,featureStore:Ye,tokenBudget:e.tokenBudget===void 0?void 0:d,hasIntentBudget:typeof e.for=="string"})}function kh(e){let t=["# pm next","",...fu(e)];for(let[n,r]of[["Gate verification needed",e.gate_needed],["Containers",e.containers]])r&&r.length>0&&t.push(...qe(n,r.map(i=>`- ${He(i)}`),""));if(t.push(...qe("Recommended",pu(e.recommended),e.truncation?.ready_budget?.recommendation_omitted?"Recommendation omitted by the selection budget; ready work still exists.":"No ready work.")),t.push(...qe("Decision needed",(e.decision_needed??[]).map(n=>`- ${He(n)}`),"No human-gated decisions.")),t.push(...qe("Ready",e.ready.map(n=>`- ${He(n)}`),"No ready items.")),e.filters.ready_only||t.push(...qe("Blocked",e.blocked.map(n=>`- ${hu(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 fu(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 pu(e){return e?[`- ${He(e)}`,` why: ${e.reasons.join("; ")}`]:[]}function qe(e,t,n){return[`## ${e}`,...t.length===0?[n]:t,""]}function hu(e){let t=e.blockers.map(n=>`${n.id}(${n.status??"?"})`).join(", ");return`${He(e)} blocked_by:${t}`}function He(e){let t=e.deadline??"-",n=e.parent?` parent:${e.parent}`:"",r=e.unblocks.length>0?` unblocks:${e.unblocks.length}`:"";return`${Number.isInteger(e.rank)?`#${e.rank} `:""}${e.id} p${e.priority} ${e.status} ${e.type} deadline:${t}${n}${r} ${e.title}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="190eb119-9510-59d6-bb3a-d1f807c68281")}catch{}})();var gu=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],yu=["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 _u(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function Eh(e,t,n={}){let r=n.includePagination!==!1;return[t,...gu.map(i=>e?.[i]),...r?[e?.limit,e?.offset]:[]].some(_u)||yu.some(i=>e?.[i]===!0)}function ls(e){return{type:e.type,tag:e.tag,priority:e.priority,deadlineBefore:e.deadlineBefore,deadlineAfter:e.deadlineAfter,assignee:e.assignee,assigneeFilter:e.assigneeFilter,parent:e.parent,sprint:e.sprint,release:e.release}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="59f55926-8d04-52f8-a7fc-d32edd32b760")}catch{}})();var us=["parent","type","priority","status","assignee","tags","sprint","release"];function fs(e,t){let n=ut(e,t,{strict:!0,flagLabel:"--status"});if(!(!n||n.length===0))return n}function ps(e,t=["estimate","estimated_minutes","priority"]){let n=e.sum?.trim(),r=e.avg?.trim(),i=n&&n.length>0?n:void 0,o=r&&r.length>0?r:void 0;if(!i&&!o)return null;if(i&&o&&i!==o)throw new h("Aggregate --sum and --avg must target the same numeric field",p.USAGE);let s=i??o;if(!t.includes(s))throw new h(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,p.USAGE);return{field:s,sum:i!==void 0,avg:o!==void 0}}function hs(e){let t=e?.trim()??"status";if(t.length===0)throw new h("--group-by requires at least one field name",p.USAGE);let n=Bi(t);if(n.length===0)throw new h("--group-by requires a comma-separated list of fields",p.USAGE);for(let r of n)if(!us.includes(r))throw new h(`Aggregate group fields must be one of ${us.join("|")}; received "${r}"`,p.USAGE);return n}function gs(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 ys(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 gs(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function _s(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 Pt(e,t){return e.map(n=>`${n}:${JSON.stringify(t[n]??null)}`).join("|")}var wu={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function ms(e,t){return t==null||t===""?wu[e]:String(t)}function bu(e,t){return e.length===1?ms(e[0],t[e[0]]):e.map(n=>`${n}=${ms(n,t[n])}`).join(" | ")}function ws(e,t,n){for(let r of n){let i=_s(e.group[r],t.group[r]);if(i!==0)return i}return 0}function bs(e,t){let n=e[t];if(typeof n=="number"&&Number.isFinite(n))return n;if(typeof n=="string"){let r=n.trim();if(r.length===0)return null;let i=Number(r);if(Number.isFinite(i))return i}return null}function vs(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Un(e,t,n){let r=M(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 vu(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 ku(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function Su(e){e.accumulator.row.count+=1,e.includeCompletion&&Un(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&ku(e.accumulator,e.numericValue)}function Eu(e,t,n,r){for(let i of t){let o=Pt(n,i),s=e.get(o);if(s){Su({...r,accumulator:s});continue}let a=vu(i,r.numericValue);r.includeCompletion&&Un(a,r.item.status,r.statusRegistry),e.set(o,a)}}function Cu(e,t){let n={};for(let r of e)n[r]=ys(r,t);return n}function xu(e,t,n){let r=[Cu(e,t)];if(n==="tuple")return r;for(let i of e){let o=t[i];if(!Array.isArray(o))continue;let s=[...new Set(o.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(r=r.flatMap(a=>s.map(c=>({...a,[i]:c}))))}return r}function Iu(e,t,n,r){let i={...e.row,group_label:bu(t,e.row.group)};return n&&(i.open=e.open_count,i.in_progress=e.in_progress_count,i.closed=e.closed_count,i.other=e.other_count,i.completion_pct=vs(e.closed_count,e.row.count)),r!==null&&(i.null_count=e.null_count,r.sum&&(i.sum=e.numeric_sum),r.avg&&(i.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),i}function Tu(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 Ah(e,t){if(e.count===!1)throw new h("Aggregate grouped counts are always enabled; omit count=false.",p.USAGE);let n=T(process.cwd(),t.path),r=await A(n),i=O(r.schema),o=["estimate","estimated_minutes","priority",...Q(r.schema).definitions.filter(b=>b.type==="number").map(b=>b.metadata_key)],s=hs(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new h("Aggregate --set-mode must be element or tuple",p.USAGE);let c=fs(e.status,i),d=ps(e,[...new Set(o)].sort((b,S)=>b.localeCompare(S))),l=e.completion===!0,u=e.includeUnparented===!0,m=await H(void 0,{...ls(e),status:e.status,noTruncate:!0,strictRead:!0},t),f=new Map,g=0,_=0,y=0;for(let b of m.items){let S=b;if(s.includes("parent")&&S.parent===void 0&&!u){g+=1;continue}let X=d===null?null:bs(S,d.field),j=xu(s,S,a);Eu(f,j,s,{item:S,statusRegistry:i,includeCompletion:l,numericAggregation:d,numericValue:X}),y+=j.length,_+=1}let w=[...f.values()].map(b=>Iu(b,s,l,d)).sort((b,S)=>ws(b,S,s)),k=m.warnings&&m.warnings.length>0?m.warnings:void 0;return{...Ru(w,s,e),count:w.length,totals:{items_considered:m.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:Tu({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:c,options:e,numericAggregation:d}),now:F(),...k?{warnings:k}:{}}}function Ru(e,t,n){let r=co(n.limit,"limit")??50,i=n.after===void 0?-1:e.findIndex(a=>Pt(t,a.group)===n.after);if(n.after!==void 0&&i<0)throw new h("Aggregate --after cursor is absent from the current grouping; restart without --after.",p.USAGE);let o=e.slice(i+1,i+1+r),s=i+1+o.length<e.length;return{groups:o,returned_count:o.length,truncated:s,next_after:s?Pt(t,o.at(-1).group):null}}var Dh={buildGroupKey:Pt,compareAggregateRows:ws,compareNullableGroupValue:_s,completionPct:vs,normalizeTagGroupValue:gs,parseGroupBy:hs,parseNumericAggregation:ps,parseStatus:fs,readNumericAggregateValue:bs,resolveGroupValue:ys,updateCompletionCounts:Un};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="21742dd3-12b5-5285-89d8-036693459eb8")}catch{}})();var ks=1e6,Ss=20;function Es(e,t,n,r=Ss){if(!Number.isSafeInteger(r)||r<0)throw new h("Child projection sample limit must be a non-negative integer.",p.USAGE);let i=e.trim().toLowerCase(),o={},s=[],a=0;for(let y of t){if(a+=1,a>ks)throw new h(`Child projection exceeded the ${ks.toLocaleString("en-US")} item safety bound.`,p.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let c=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),d=to(eo(s,Zi())),l=new Set(d.children_by_parent.get(i)??[]);for(let y of s)y.parent?.trim().toLowerCase()===i&&l.add(y.id.trim().toLowerCase());let u=[...l].map(y=>c.get(y)),m=0;for(let y of u){let w=y.status.trim().toLowerCase();o[w]=(o[w]??0)+1,Y(w,n)||(m+=1)}u.sort((y,w)=>y.id.localeCompare(w.id));let f=u.slice(0,r).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>f.length,_=r===0?Ss:r;return{count:u.length,active:m,by_status:Object.fromEntries(Object.entries(o).sort(([y],[w])=>y.localeCompare(w))),sample:f,sample_limit:r,truncated:g,next_offset:g?f.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${f.length} --limit ${_}`:null,scanned:a}}import{readdir as Mu}from"node:fs/promises";import qn from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="db3fe399-8eb8-5b17-8a9e-89eda4774234")}catch{}})();var Au=new Set(["event","meeting","reminder"]);function Du(e){return Au.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function Bn(e){if(!Du(e))return;let t=[...e.events??[]].sort((r,i)=>r.start_at.localeCompare(i.start_at)),n=t[0];return{deadline:e.deadline??null,start_at:n?.start_at??null,end_at:n?.end_at??null,location:n?.location??null,reminders:[...e.reminders??[]],events:t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1815b206-18b5-5e76-b863-8b0f8ac2947a")}catch{}})();var $u=new Set(["epic","feature","milestone","plan"]),Ou=new Set(Object.keys(Pr).map(e=>e.toLowerCase()));function Gn(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(t=>[t,e[t]?.length??0]))}function Lu(e,t,n,r,i){let o=Gn(e);return[...t.length>0?["body"]:[],...Object.entries(o).flatMap(([s,a])=>a>0?[s]:[]),...o.files+o.tests+o.docs>0?["linked"]:[],...n===void 0?["children"]:n.count>0?["children"]:[],...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...Bn(e)?["schedule"]:[],...r&&Te(e).length>0?["blockers"]:[],...!i.full&&e.dependencies?.some(({id:s,kind:a,...c})=>Object.values(c).some(d=>d!==void 0))?["dependency_provenance"]:[]]}function xs(e){let t=e.trim().toLowerCase();return t.length>0&&($u.has(t)||!Ou.has(t))}function Cs(e){return{ts:e.ts,author:e.author,message:e.message??null}}function Nu(e,t){let n=e?.trim(),r=n&&n.length>0?n:null,i=[...t].reverse().find(s=>s.op==="claim"),o=[...t].reverse().find(s=>s.op==="release");return{claimed:r!==null,assignee:r,last_claim:i?Cs(i):null,last_release:o?Cs(o):null}}function Pu(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(dt.includes(t))return t;throw new h("Get --depth must be one of brief|standard|deep|full",p.USAGE,{field:"depth",value:e,recovery:{allowed_values:[...dt,"full"]}})}function ju(e,t,n){let r=Gn(e),i={...e};if(!n&&e.dependencies!==void 0&&(i.dependencies=e.dependencies.map(({id:g,kind:_})=>({id:g,kind:_}))),t==="deep")return{...i,comments:e.comments??[],notes:e.notes??[],learnings:e.learnings??[],files:e.files??[],tests:e.tests??[],docs:e.docs??[],reminders:e.reminders??[],events:e.events??[],notes_count:r.notes,tests_count:r.tests,collection_counts:r};let{comments:o,notes:s,learnings:a,files:c,tests:d,docs:l,reminders:u,events:m,...f}=i;return{...f,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:r}}function Uu(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 h("Get --fields requires a comma-separated list of field names",p.USAGE);return t}function jt(e){return e.startsWith("item.")?e.slice(5):e}function Bu(e,t,n){if(e===null)return;let r=nn(t),i=new Set(r),o=e.filter(s=>{let a=jt(s);return!i.has(s)&&!i.has(a)});if(o.length>0){let s=["get",n,"--fields",e.filter(a=>!o.includes(a)).join(",")||"id,title,status"];throw new h(`Unknown get --fields value(s): ${o.join(", ")}`,p.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:r,suggested_retry:me(s),suggested_retry_args:s}})}}var qu=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function Hu(e,t,n){return Object.hasOwn(t,n)?t[n]:e[n]!==void 0?e[n]:qu.has(n)?[]:void 0}function Gu(e,t){let n=e,r={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:Gn(e)},i={id:e.id};for(let o of t){let s=jt(o);s==="body"||s==="linked"||s.startsWith("linked.")||s==="claim_state"||s.startsWith("claim_state.")||s==="children"||s.startsWith("children.")||s==="schedule"||s.startsWith("schedule.")||s==="blockers"||(i[s]=Hu(n,r,s))}return i}function Ge(e,t){return e?.some(n=>n===t||n===`item.${t}`)??!1}function _e(e,t){return e.some(n=>{let r=jt(n);return r===t||r.startsWith(`${t}.`)})}function Wu(e,t){if(e.full&&(e.fields!==void 0||e.depth!==void 0))throw new h("Get projection options are mutually exclusive; remove the extra projection flag and retry.",p.USAGE,{code:"projection_options_mutually_exclusive",flag:"--full",recovery:{suggested_retry:me(["get",t,"--full"]),suggested_retry_args:["get",t,"--full"]}});if(e.tree!==!0&&e.treeDepth!==void 0)throw new h("Get --tree-depth requires --tree",p.USAGE);if(e.at!==void 0&&e.tree===!0)throw new h("Get --at cannot be combined with --tree because workspace-level historical projections are not yet indexed.",p.USAGE);return{depth:e.full?"deep":Pu(e.depth),full:e.full===!0||e.depth?.trim().toLowerCase()==="full",treeDepth:e.tree===!0?q(e.treeDepth,"--tree-depth"):void 0,fields:Uu(e.fields),fieldProjection:e.fields!==void 0}}async function zu(e,t,n){let r=T(process.cwd(),t.path);await U(r);let i=await A(r),o=R(i,C());if(n!==void 0){let c=await ao(e,n,{pmRoot:t.path});return{pmRoot:r,settings:i,typeToFolder:o.type_to_folder,locatedId:c.document.metadata.id,metadata:c.document.metadata,body:c.document.body,historical:c}}let s=await ne(r,e,i.id_prefix,i.item_format,o.type_to_folder);if(!s)throw await $i(r,e,i.id_prefix,o.type_to_folder);let a=await re(s,{schema:i.schema});return{pmRoot:r,settings:i,typeToFolder:o.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function Ku(e,t,n,r){let i=[...Q(t.schema).definitions.map(o=>o.metadata_key),...le(C())];if(Bu(e,i,r),n&&_e(e??[],"children"))throw new h("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",p.USAGE);if(n&&_e(e??[],"blockers"))throw new h("Get --at cannot project current blocker statuses; read the current item with --fields blockers instead.",p.USAGE)}function Hn(e){let{fieldProjection:t,depth:n,fields:r,field:i}=e;return t?i==="body"||i==="linked"?Ge(r,i):_e(r,i):n!=="brief"}async function Vu(e,t){if(!t)return;let n=et(e.pmRoot,e.locatedId),r=await te(n,e.locatedId);return Nu(e.metadata.assignee,e.historical?r.slice(0,e.historical.target.historyIndex+1):r)}function Qu(e,t,n,r){let i=r||Ge(n,"linked.files"),o=r||Ge(n,"linked.tests"),s=r||Ge(n,"linked.docs");!r&&!i&&!o&&!s||(e.linked={files:i?t.metadata.files??[]:[],tests:o?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function Yu(e,t){if(!t)return;let n=O(e.settings.schema),r=await he(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return Es(e.locatedId,r,n)}function Xu(e,t){let n=new Map;for(let r of e){let i=r.external?r.id:t.get(r.id.toLowerCase())?.id??r.id;n.set(r.external?`external:${i}`:`local:${i.toLowerCase()}`,{...r,id:i})}return[...n.values()]}async function Ju(e,t){let n=qn.basename(e),r=(await Mu(qn.dirname(e)).catch(i=>{throw oo("Cannot verify the blocker's physical file identity",{exitCode:p.GENERIC_FAILURE,context:{code:"blocker_identity_read_failed",required:"Restore access to the blocker item directory, then retry the item read."},cause:i})})).filter(i=>i.toLowerCase()===n.toLowerCase()).sort((i,o)=>+(o===n)-+(i===n)||i.localeCompare(o)).map(i=>qn.parse(i).name)[0];if(r===void 0)throw new h(`Blocker canonical file disappeared during identity verification: ${t}`,p.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker file and validate storage integrity before retrying the item read."});return r}async function Zu(e,t,n){if(t.historical!==void 0||!(n.fieldProjection?_e(n.fields,"blockers"):n.depth!=="brief"))return;let r=Te(t.metadata);if(r.length===0)return;let i=new Map([t.metadata.blocked_by,...(t.metadata.dependencies??[]).filter(a=>a.kind==="blocked_by").map(a=>a.id)].filter(a=>typeof a=="string").map(a=>[a.trim().toLowerCase(),a.trim()])),o=new Map;for(let a of r){if(mi(a)||!/^(?!\.{1,2}$)[^/\\:\0]+$/u.test(a)||t.metadata.dependencies?.some(l=>l.id.trim()===a&&l.kind==="blocked_by"&&fi(l.source_kind)))continue;let c=await ne(t.pmRoot,i.get(a),t.settings.id_prefix,t.settings.item_format,t.typeToFolder);if(c===null)continue;let d=await re(c,{schema:t.settings.schema});if(c.id=await Ju(c.itemPath,c.id),d.document.metadata.id!==c.id)throw new h(`Blocker identity differs from its canonical file: ${c.id}`,p.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker identity and validate storage integrity before retrying the item read."});o.set(a.toLowerCase(),d.document.metadata)}let s=Xu(Re({blocked_by:t.metadata.blocked_by,dependencies:t.metadata.dependencies,updated_at:t.metadata.updated_at},o,O(t.settings.schema)),o);e.blockers={scope:"declared",open:s.filter(a=>!a.resolved).map(({resolved:a,...c})=>c),closed_count:s.filter(a=>a.resolved).length},!n.fieldProjection&&!n.full&&delete e.item.blocked_by}function em(e,t,n,r){if(!r)return;let i=Bn(t.metadata);if(i){if(n===null||Ge(n,"schedule")){e.schedule=i;return}e.schedule=Object.fromEntries(Object.entries(i).filter(([o])=>n.some(s=>jt(s)===`schedule.${o}`)))}}async function tm(e,t,n,r){if(t.tree!==!0)return;let i=await H(void 0,{parent:e.locatedId,tree:!0,treeDepth:n===void 0?void 0:String(n),full:!0},r);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:n??null,count:i.count,items:i.items.map(o=>o)}}async function og(e,t,n={}){let r=Wu(n,e),i=await zu(e,t,n.at);Ku(r.fields,i.settings,i.historical!==void 0,i.locatedId);let o=Hn({...r,field:"body"}),s=Hn({...r,field:"linked"}),a=Hn({...r,field:"claim_state"}),c=i.historical===void 0&&(r.fieldProjection?_e(r.fields,"children"):r.depth==="deep"&&(r.full||xs(i.metadata.type))),d=r.fieldProjection?_e(r.fields,"schedule"):r.depth!=="brief",l=await Vu(i,a),u={item:r.fieldProjection?Gu(i.metadata,r.fields):ju(i.metadata,r.depth,r.full)};o&&(u.item.body=i.body),Qu(u,i,r.fields,s),l&&(u.claim_state=l),em(u,i,r.fields,d),await Zu(u,i,r);let m=await Yu(i,c);m!==void 0&&(u.children=m);let f=await tm(i,n,r.treeDepth,t);if(f!==void 0&&(u.tree=f),i.historical&&(u.reconstructed=!0,u.as_of_version=i.historical.as_of_version,u.as_of_timestamp=i.historical.as_of_timestamp),i.historical===void 0)try{await di({pmRoot:i.pmRoot,author:ee(void 0,i.settings.author_default),itemIds:[i.locatedId],intent:"get"})}catch{}return Yr(u,r.fieldProjection?[]:Lu(i.metadata,i.body,m,i.historical===void 0,r)),u}var sg={shouldAutoIncludeGetChildren:xs};(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]="d6a6a9f5-05fa-520c-adb7-222e081324aa")}catch{}})();function nm(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function rm(e,t){return e.map(({entry:n,version:r})=>{let i=new Set,o=Ei(n.patch);for(let s of o)i.add(on(s.path)),s.from&&i.add(on(s.from));return{index:r,...t?{version:t.offset===null?null:t.offset+r}:{},ts:n.ts,op:n.op,author:n.author,patch_ops:o.length,changed_fields:[...i].sort((s,a)=>s.localeCompare(a))}})}function im(e){if(e[0]?.op!=="history_compact_baseline")return;let t=sn(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function om(e,t){let n=T(process.cwd(),t.path);await U(n);let r=await A(n),i=R(r,C()),o=e.trim()===lt,s=o?lt:Ai(e,r.id_prefix),a=await ne(n,s,r.id_prefix,r.item_format,i.type_to_folder),c=a?.id??s,d=o?Ti(n):et(n,c);if(!a&&!await Ur(d))throw new h(`Item ${e} not found`,p.NOT_FOUND);return a&&await xi({pmRoot:n,settings:r,itemId:a.id,commandLabel:"history"}),{historyPath:d,located:a,resolvedId:c,settings:r}}function sm(e){let{resolvedId:t,selectedHistory:n,options:r,limit:i,addressing:o,vocabulary:s,total:a}=e,c=r.compact===!0,d=i===void 0&&(c||r.provenance===!0),l=d?[...n].reverse():n,u=l.map(({entry:y})=>y),m=c?rm(l,o):void 0,f=r.provenance===!0?l.map(({entry:y,durableVersion:w})=>Ct(y,s,{itemId:t,version:w})):void 0,g=r.provenance===!0?"provenance":c?"compact":"full",_={compact:{compact_history:m},provenance:{provenance_history:f},full:{history:u}}[g];return{id:t,..._,compact:c,projection:{mode:g,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[g]},omission_receipt:nt("history",g),count:u.length,total:a,order:d?"newest_first":"oldest_first",limit:i??null,version_addressing:o}}async function yg(e,t,n){let r=pe(t.limit),{historyPath:i,located:o,resolvedId:s,settings:a}=await om(e,n),c=await te(i,s),d=im(c),l=a.agent_identity.identity_vocabulary,u=Et(a.agent_identity.harness_signals),m=xt({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),f=am(c).filter(({entry:y})=>m(y)),g=nm(f,r),_=sm({resolvedId:s,selectedHistory:g,options:t,limit:r,addressing:d,vocabulary:l,total:f.length});if(t.provenanceSummary===!0&&(_.provenance_summary=It(f.map(({entry:y})=>y),l,u)),t.diff||t.field!==void 0){let y=new Set(g.map(({version:w})=>w));_.diff=Ci(c,{windowStartIndex:(g[0]?.version??c.length+1)-1,field:t.field}).filter(w=>y.has(w.index)),_.order==="newest_first"&&_.diff.reverse()}if(t.verify){let y=o?(await re(o,{schema:a.schema})).document:void 0;if(_.verification=so(c,y),s===lt&&_.verification.ok){let w=await Ri(T(process.cwd(),n.path));_.verification={..._.verification,ok:w.ok,errors:w.ok?_.verification.errors:[..._.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:w.ok,workspace_state_mismatches:w.mismatched_documents,workspace_state_missing:w.missing_documents,workspace_state_unreadable:w.unreadable_documents}}}return _}function am(e){let t=sn(e,!0);return e.map((n,r)=>({entry:n,version:r+1,durableVersion:t===null?void 0:t+r+1}))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="28cc85af-b7e7-5069-97a9-18844352cc59")}catch{}})();function cm(e){if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(t!=="keyword"&&t!=="semantic"&&t!=="hybrid")throw new h("Search mode must be one of keyword|semantic|hybrid",p.USAGE);return t}function Ut(e){return e===!0}function Is(e){return Gr(e,0,1)??void 0}function Ts(e){if(e===void 0)return"or";let t=e.trim().toLowerCase();if(t!=="and"&&t!=="or"&&t!=="exact")throw new h("Search --match-mode must be one of and|or|exact",p.USAGE);return t}function Rs(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(String(e).trim());if(!Number.isFinite(t)||t<0)throw new h("Search --min-score must be a finite number >= 0",p.USAGE);return t}function oe(e,t){if(e==null)return;let n=String(e).trim();if(n.length!==0)return B(n,new Date,t)}function N(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function Wn(e,t){if(e!==void 0)return B(e,new Date,t)}function dm(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 h("Search --fields requires a comma-separated list of field names",p.USAGE);return[...new Set(t)]}function Bt(e,t="<query>"){let n=e.compact===!0,r=e.full===!0,i=dm(e.fields);if(Number(n)+Number(r)+ +(i!==void 0)>1)throw new h("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",p.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:me(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return n?{mode:"compact",fields:[...li]}:r?{mode:"full",fields:[]}:i?{mode:"fields",fields:i}:{mode:"full",fields:[]}}function zn(e,t,n="<query>"){if(e.mode!=="fields")return;let r=ui([...t.definitions.flatMap(s=>[s.key,s.metadata_key]),...le(C())]),i=new Set(r),o=e.fields.filter(s=>{let a=s.trim();return!i.has(a)});if(o.length>0){let s=["search",n,"--fields",e.fields.filter(a=>!o.includes(a)).join(",")||"id,title,status,score"];throw new h(`Unknown search --fields value(s): ${o.join(", ")}`,p.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:r,suggested_retry:me(s),suggested_retry_args:s}})}}function qt(e){let t=N(e);if(!t)throw new h("Search query must not be empty",p.USAGE);return t.split(/\s+/u).filter(Boolean)}function Kn(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var lm=["auto","keyword","semantic","hybrid"];function um(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let n=t.trim().toLowerCase();return lm.includes(n)?n:"auto"}function Vn(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:cm(e.requested),source:"explicit"};let t=um(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Qn(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function Yn(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function Xn(e){let t={title_exact_bonus:10,title_weight:48,description_weight:5,tags_weight:6,status_weight:2,body_weight:1,comments_weight:1,notes_weight:1,learnings_weight:1,reminders_weight:2,events_weight:2,dependencies_weight:3,linked_content_weight:1},n=e.search?.tuning;if(!n)return t;let r=(i,o)=>typeof i=="number"&&Number.isFinite(i)&&i>=0?i:o;return{title_exact_bonus:r(n.title_exact_bonus,t.title_exact_bonus),title_weight:r(n.title_weight,t.title_weight),description_weight:r(n.description_weight,t.description_weight),tags_weight:r(n.tags_weight,t.tags_weight),status_weight:r(n.status_weight,t.status_weight),body_weight:r(n.body_weight,t.body_weight),comments_weight:r(n.comments_weight,t.comments_weight),notes_weight:r(n.notes_weight,t.notes_weight),learnings_weight:r(n.learnings_weight,t.learnings_weight),reminders_weight:r(n.reminders_weight,t.reminders_weight),events_weight:r(n.events_weight,t.events_weight),dependencies_weight:r(n.dependencies_weight,t.dependencies_weight),linked_content_weight:r(n.linked_content_weight,t.linked_content_weight)}}import mm from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e1f303b6-a641-5550-b58c-ef023b68d5e4")}catch{}})();function Jn(e){return fe("search",{pmRoot:e.pmRoot===void 0?void 0:mm.resolve(e.pmRoot),query:e.query.trim(),mode:e.mode,options:rt(e.searchOptions,Vr)})}function As(e){let t=it(e.sorted,{cursor:e.searchOptions.after,fingerprint:Jn(e),limit:e.limit,readId:n=>n.item.id});return{limited:t.rows,pageExtras:{applied_limit:e.limit,...t.has_more?{has_more:!0,truncated:!0}:{},...t.next_cursor?{next_cursor:t.next_cursor}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8a2412e-2b0c-59c2-81ad-43de4d51562f")}catch{}})();function Ds(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 fm=[{optionKey:"status",summaryKey:"status",normalize:e=>Ds(e)?"all":e},{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"parent",summaryKey:"parent"}];function we(e){let{mode:t,matchMode:n,options:r,includeLinked:i,titleExact:o,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,runtimeFieldFilters:d}=e,l={};return io(l,r,fm),Object.assign(l,dn(r)),Object.assign(l,cn(r)),n!==void 0&&n!=="or"&&(l.match_mode=n),i&&(l.include_linked=!0),o&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&r.semanticWeight!==void 0&&(l.hybrid_semantic_weight=c),r.limit!==void 0&&(l.limit=r.limit),d&&Object.keys(d).length>0&&(l.runtime_filters=d),l}function be(e){let{effectiveMode:t,matchMode:n,options:r,includeLinked:i,titleExact:o,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,queryExpansion:d,rerank:l,runtimeFieldFilters:u}=e,m=f=>f??null;return{mode:t,match_mode:n,status:r.status===void 0||Ds(r.status)?"all":r.status,type:m(r.type),tag:m(r.tag),priority:m(r.priority),deadline_before:m(r.deadlineBefore),deadline_after:m(r.deadlineAfter),updated_after:m(r.updatedAfter),updated_before:m(r.updatedBefore),created_after:m(r.createdAfter),created_before:m(r.createdBefore),assignee:m(r.assignee),sprint:m(r.sprint),release:m(r.release),parent:m(r.parent),...dn(r),...cn(r),include_linked:i,title_exact:o,phrase_exact:s,score_threshold:a,hybrid_semantic_weight:t==="hybrid"?c:null,query_expansion_enabled:d.enabled,query_expansion_provider:d.provider,rerank_enabled:l.enabled,rerank_model:l.model,rerank_top_k:l.top_k,limit:m(r.limit),runtime_filters:u}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0272e482-0dab-5970-b19a-4da286fd112b")}catch{}})();var pm=1.2,hm=.75;function Zn(e){return ue(e)}function gm(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 o of e){let s=Zn(o.text),a=gm(s);r+=s.length;for(let c of a.keys())n.set(c,(n.get(c)??0)+1);t.push({id:o.id,termFrequencies:a,length:s.length})}let i=t.length;return{documents:t,documentFrequency:n,documentCount:i,averageDocumentLength:i>0?r/i:0}}function ym(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function $s(e,t,n){let r=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return r;let i=[...new Set(t.filter(s=>s.length>0))];if(i.length===0)return r;let o=new Map;for(let s of i){let a=e.documentFrequency.get(s);a!==void 0&&o.set(s,ym(e.documentCount,a))}if(o.size===0)return r;for(let s of e.documents){let a=0;for(let[c,d]of o){let l=s.termFrequencies.get(c);if(l===void 0)continue;let u=1-n.b+n.b*s.length/e.averageDocumentLength,m=l+n.k1*u;a+=d*(l*(n.k1+1)/m)}a>0&&r.set(s.id,a)}return r}function Fs(e,t,n,r){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(r,Math.max(n,e))}function Os(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 Ls(e){let t=e?.search?.bm25;return{k1:Fs(t?.k1,pm,0,1e3),b:Fs(t?.b,hm,0,1)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b75c3c5e-e2b7-5e65-a56a-883dc896290e")}catch{}})();var er=4,_m=20,wm=200,bm=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function tr(e,t){let n=[],r=new Set;for(let i of e){let o=i.trim().replaceAll(/\s+/g," ");if(o.length===0)continue;let s=o.toLowerCase();if(!r.has(s)&&(r.add(s),n.push(o),n.length>=t))break}return n}function vm(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 km(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 Ns(e,t=er){let n=e.trim().replaceAll(/\s+/g," ");if(n.length===0)return[];let r=ue(n);if(r.length===0)return[n];let i=r.filter(a=>!bm.has(a.toLowerCase())),o=r.map(a=>vm(a)),s=i.map(a=>km(a));return tr([n,r.join(" "),i.join(" "),o.join(" "),s.join(" ")],Math.max(1,t))}function Ps(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?tr(t.filter(n=>typeof n=="string"),er):[]}function js(e,t,n){return tr([...e,...t],Math.max(1,n))}function Us(e,t){let n=e.search?.query_expansion,r=Ee(n?.provider);return{enabled:n?.enabled===!0,provider:r??t,max_queries:er}}function Bs(e,t){let n=e.search?.rerank,r=Ee(n?.model),i=Hr(n?.top_k)??_m;return{enabled:n?.enabled===!0,model:r??t,top_k:Math.min(wm,i)}}function qs(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let n=new Map;for(let i of t){if(typeof i!="object"||i===null)continue;let o=Ee(i.id),s=i.score;if(!o||typeof s!="number"||!Number.isFinite(s))continue;let a=n.get(o);(a===void 0||s>a)&&n.set(o,s)}let r=[...n.entries()].map(([i,o])=>({id:i,score:o}));return r.sort((i,o)=>i.score!==o.score?o.score-i.score:i.id.localeCompare(o.id)),r}function Sm(e,t){let n=e.length,r=0;for(let i=0;i<n;i+=1)r+=e[i]*t[i];return r}function Hs(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function Em(e,t,n){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let r=Sm(e,t),i=Hs(t),o=n*i;return!Number.isFinite(r)||!Number.isFinite(n)||!Number.isFinite(i)||!Number.isFinite(o)||o===0?0:Math.max(-1,Math.min(1,r/o))}async function Gs(e,t,n,r,i){if(r.length===0)return new Map;let o=Ee(t)??e.model,s=o===e.model?e:{...e,model:o},a=[n.trim(),...r.map(m=>m.text)],c=await ht(s,a,i?{timeout_ms:i}:{}),d=c[0];if(!d)return new Map;let l=Hs(d),u=new Map;for(let m=0;m<r.length;m+=1){let f=r[m],g=c[m+1];if(!g)continue;let _=Em(d,g,l);u.set(f.id,Math.max(0,Math.min(1,(_+1)/2)))}return u}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a5d1f401-e5eb-5b6e-8b5a-d8135128f44b")}catch{}})();function ve(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function z(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function We(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function nr(e){let t=e.metadata;return[t.title,t.description,t.status,ve(t.tags).join(" "),e.body,z(t.comments).map(n=>n.text).join(" "),z(t.notes).map(n=>n.text).join(" "),z(t.learnings).map(n=>n.text).join(" "),gt(t).join(" "),yt(t).join(" "),We(t.dependencies).map(n=>`${n.id} ${n.kind}`).join(" "),_t(t)]}function rr(e,t){return nr(e).some(n=>N(n).includes(t))}function ir(e,t,n){return!n.titleExact&&!n.phraseExact?e:e.filter(r=>!(n.titleExact&&N(r.metadata.title)!==t||n.phraseExact&&!rr(r,t)))}function Cm(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new h('--assignee no longer accepts "none" or "null".',p.USAGE)}function xm(e,t,n){let r=Ae(e.assignee,{label:"--assignee"});Cm(r);let i=no(e),o=ro(e);return{typeFilter:zi(e.type,t),tagFilter:Ae(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Ki(e.priority),deadlineBefore:Wn(e.deadlineBefore,"deadline-before"),deadlineAfter:Wn(e.deadlineAfter,"deadline-after"),updatedAfter:oe(e.updatedAfter,"updated-after"),updatedBefore:oe(e.updatedBefore,"updated-before"),createdAfter:oe(e.createdAfter,"created-after"),createdBefore:oe(e.createdBefore,"created-before"),assigneeFilter:r,sprintFilter:Ae(e.sprint,{label:"--sprint"}),releaseFilter:Ae(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:n&&n.length>0?new Set(n):void 0,missingMetadataFilters:i,missingMetadataActive:Qi(i),contentFieldFilters:o,contentFiltersActive:Xi(o)}}function Im(e,t){return Tm(e,t)&&ci(e,t)&&Rm(e,t)}function Tm(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&&!ve(e.tags).some(r=>n.has(r))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function Rm(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 Am(e,t,n,r){let i=e.metadata;return!(!Im(i,t)||!ft(i,n)||t.missingMetadataActive&&!Yi(i,t.missingMetadataFilters,r)||t.contentFiltersActive&&!Ji(i,t.contentFieldFilters))}function or(e,t,n,r,i,o){let s=xm(t,n,i);return e.filter(a=>Am(a,s,r,o))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a3f9e7fa-7ebf-5fc7-93a4-f12cff30f4ff")}catch{}})();var Dm=2,Fm=120,Mm=6,$m=40,Om=1e3,Lm=900,Nm="\xAB",Pm="\xBB",Ws=60;function Ht(e,t){let n=0,r=0;for(;;){let i=e.indexOf(t,r);if(i<0)return n;n+=1,r=i+t.length}}var zs=[{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=>ve(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=>z(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>z(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>z(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>gt(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>yt(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>We(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>_t(e.metadata)}],jm=new Map(zs.map(e=>[e.name,e]));function sr(e,t){let n=t.filter(i=>i.length>0).sort((i,o)=>o.length-i.length).map(i=>i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(n.length===0)return e;let r=new RegExp(n.join("|"),"gi");return e.replace(r,i=>`${Nm}${i}${Pm}`)}function ar(e,t){if(e.length===0)return null;let n=e.toLowerCase(),r=-1,i=0;for(let l of t){if(l.length===0)continue;let u=n.indexOf(l);u>=0&&(r<0||u<r)&&(r=u,i=l.length)}if(r<0)return null;let o=Math.max(0,r-Ws),s=Math.min(e.length,r+i+Ws),a=sr(e.slice(o,s),t),c=o>0?"\u2026":"",d=s<e.length?"\u2026":"";return`${c}${a}${d}`}function Gt(e,t,n){let r=[];for(let i of t){let o=jm.get(i);if(o===void 0)continue;let s=ar(o.value(e),n);s!==null&&r.push({field:i,snippet:s})}return r}function Um(e,t,n){return[...zs.map(r=>({name:r.name,value:r.value(e),weight:n[r.weightKey]})),{name:"linked_content",value:t,weight:n.linked_content_weight}]}function Bm(e,t,n){let r=N(e.id),i=typeof n=="string"?n.trim().toLowerCase():"",o=N(i),s=o.length>0&&r.startsWith(o)?r.slice(o.length).trim():r;return t!==r&&t!==s?null:{item:e,score:t===r?Om:Lm,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function qm(e,t,n,r,i){for(let o of e){let s=t.get(o)??0;s>0&&(i.score+=s*r.title_exact_bonus,i.matched.add("title"),i.matchedTokens.add(o));for(let a of n){let c=Ht(a.value.toLowerCase(),o);c>0&&(i.score+=c*a.weight,i.matched.add(a.name),i.matchedTokens.add(o))}}}function Hm(e,t,n,r){N(e.title)===t&&(r.score+=Fm,r.matched.add("title"));for(let i of n){let o=Ht(N(i.value),t);o>0&&(r.score+=o*i.weight*Mm,r.matched.add(i.name))}}function cr(e,t,n,r,i,o,s=!1){let a=e.metadata,c=Bm(a,n,o);if(c)return c;let d=new Map;for(let g of ue(a.title))d.set(g,(d.get(g)??0)+1);let l=Um(e,r,i),u={score:0,matched:new Set,matchedTokens:new Set};qm(t,d,l,i,u);let m=new Set(t),f=m.size>0&&u.matchedTokens.size===m.size;return s&&m.size>1&&f&&(u.score+=$m),t.length>=Dm&&n.includes(" ")&&Hm(a,n,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((g,_)=>g.localeCompare(_)),matched_all_terms:f}}function dr(e,t){return[...e].sort((n,r)=>{let i=r.score-n.score;if(i!==0)return i;let o=Y(n.item.status,t),s=Y(r.item.status,t);if(o!==s)return o?1:-1;let a=n.item.priority-r.item.priority;if(a!==0)return a;let c=E(r.item.updated_at,n.item.updated_at);return c!==0?c:n.item.id.localeCompare(r.item.id)})}function lr(e,t,n,r,i,o,s,a=!1){return cr(e,t,n,r?i.get(e.metadata.id)??"":"",o,s,a)}function ze(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY;for(let i of e.values())t=Math.min(t,i),n=Math.max(n,i);if(n===t)return new Map([...e.keys()].map(i=>[i,1]));let r=new Map;for(let[i,o]of e)r.set(i,(o-t)/(n-t));return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8484fbd-5fb2-56aa-9d69-26646be262a9")}catch{}})();function zt(e){let t=[],n=e;for(let r=0;r<5&&n&&typeof n=="object";r+=1){let i=n.code;typeof i=="string"&&t.push(i.toLowerCase()),n=n.cause}return t.join(" ")}function Kt(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),n=zt(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 ur(e,t){let n=Kt(t);return`search_${e}_fallback:${n}:using_keyword_mode`}function Ks(e){return e?.commands?.some(t=>t.command.trim()==="reindex")===!0?{command:"pm reindex --mode hybrid",args:["reindex","--mode","hybrid"]}:{command:"pm install search-advanced --project",args:["install","search-advanced","--project"],follow_up_command:"pm reindex --mode hybrid",follow_up_args:["reindex","--mode","hybrid"]}}async function mr(e,t,n){try{let r=await Ui(e);r.warnings.length>0&&n.push(...r.warnings);let i=uo(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),r.entries);if(i.length===0)return;let o=Ks(C());n.push(...Vs(i.length,o)),process.stderr.write(`[pm] warning: ${i.length} item${i.length===1?" is":"s are"} new or modified since the last reindex and ${i.length===1?"is":"are"} NOT in the semantic index yet \u2014 run '${o.command}'${o.follow_up_command?`, then '${o.follow_up_command}'`:""}. (Write-time embedding is governed by search.mutation_refresh_policy; staleness means the embed was skipped, failed, or the backend was unreachable.)
|
|
9
|
-
`)}catch{}}function Vs(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 Vt(e,t,n,r){if(!t.active)throw new h(`Search mode '${e}' requires a configured embedding provider in settings.providers.openai or settings.providers.ollama`,p.USAGE);if(!n.active&&!r)throw new h(`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`,p.USAGE);return{provider:t.active,vectorStore:n.active??null}}var P=Ze;function Ke(e){let t=C(),n=pi(t,e);if(!n)return null;let r=n.runtime_definition??n.definition,i=r.query,o=r.queryExpansion??r.query_expansion,s=r.rerank,a=P(r.name)??P(n.definition.name)??e;if(!a)return null;let c={providerName:a,...typeof i=="function"?{query:i}:{},...typeof o=="function"?{queryExpansion:o}:{},...typeof s=="function"?{rerank:s}:{}};return!c.query&&!c.queryExpansion&&!c.rerank?null:c}function fr(e){let t=P(e.search?.provider),n=Ke(t);return n?.query?{providerName:n.providerName,query:n.query}:null}function pr(e){let t=C(),n=P(e.vector_store?.adapter),r=hi(t,n);if(!r)return null;let i=r.runtime_definition??r.definition,o=i.query;if(typeof o!="function")return null;let s=i.upsert;return{adapterName:P(i.name)??P(r.definition.name)??n??"extension",query:o,...typeof s=="function"?{upsert:s}:{}}}function hr(e,t,n){let r=Array.isArray(t)?t:t?.hits;if(!Array.isArray(r))throw new h(`Extension search provider "${e}" must return an array of hits or { hits: [...] }`,p.GENERIC_FAILURE);let i=new Set,o=[];for(let s of r){if(typeof s!="object"||s===null)continue;let a=P(s.id),c=s.score;if(!a||typeof c!="number"||!Number.isFinite(c)||i.has(a))continue;let d=n.get(a);if(!d)continue;let l=s.matched_fields,u=Array.isArray(l)&&l.every(m=>typeof m=="string")?[...new Set(l.map(m=>m.trim()).filter(m=>m.length>0))].sort((m,f)=>m.localeCompare(f)):[`provider:${e}`];i.add(a),o.push({item:d.metadata,score:c,matched_fields:u})}return o}function gr(e,t){let n=[],r=new Map;for(let i of e){if(r.has(i.id))continue;let o=t.get(i.id);o&&(r.set(i.id,i.score),n.push({item:o.metadata,score:i.score,matched_fields:["semantic"]}))}return{semanticHits:n,semanticScores:r}}function Wt(e,t){let n=t.filter(c=>c.exact_id_match===!0);if(n.length===0)return e;let r=new Set(n.map(c=>c.item.id)),i=e.filter(c=>!r.has(c.item.id)),o=i.reduce((c,d)=>Math.max(c,d.score),0),s=n.sort((c,d)=>d.score-c.score),a=o+s.length+1;return[...s.map((c,d)=>({...c,score:a-d,matched_fields:["id"]})),...i]}function Qt(e,t,n,r,i="semantic"){let o=new Map(n.map(u=>[u.item.id,u.score])),s=new Map(n.map(u=>[u.item.id,u.matched_fields])),a=ze(t),c=ze(o),d=new Set([...t.keys(),...o.keys()]),l=1-r;return[...d].map(u=>{let m=e.get(u),f=a.get(u)??0,g=c.get(u)??0,_=f*r+g*l;if(_<=0)return null;let y=new Set;t.has(u)&&y.add(i);for(let w of s.get(u)??[])y.add(w);return{item:m.metadata,score:_,matched_fields:[...y].sort((w,k)=>w.localeCompare(k))}}).filter(u=>u!==null)}function yr(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function _r(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:Os(Pi(s,{fields:e.corpusFields}))})),n=Ms(t),r=$s(n,Zn(e.query),e.bm25Params),i=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...r].map(([a,c])=>({item:i.get(a).metadata,score:c,matched_fields:["bm25"]}));return Wt(s,e.keywordHits)}let o=Qt(i,r,e.keywordHits,e.hybridSemanticWeight,"bm25");return Wt(o,e.keywordHits)}function wr(e){let t=new Map;for(let r of e)for(let i of r){let o=t.get(i.id);(!o||i.score>o.score)&&t.set(i.id,i)}let n=[...t.values()];return n.sort((r,i)=>r.score!==i.score?i.score-r.score:r.id.localeCompare(i.id)),n}function br(e){let t=e.metadata,n=Array.isArray(t?.tags)?t.tags.join(" "):"";return[t?.title,t?.description,t?.type,t?.status,n,e.body].map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0).join(`
|
|
10
|
-
`)}async function Gm(e,t){let n=e.queryExpansion.enabled?Ns(t,e.queryExpansion.max_queries):[t],r=n.length>0?n:[t];if(!e.queryExpansion.enabled)return r;if(e.queryExpansionExtension?.expand)try{let i=await Promise.resolve(e.queryExpansionExtension.expand({query:t,mode:e.requestedMode,settings:e.settings}));return js(r,Ps(i),e.queryExpansion.max_queries)}catch{return e.warnings.push(`search_query_expansion_provider_failed:${e.queryExpansionExtension.providerName}:using_builtin`),r}return e.queryExpansion.provider&&e.queryExpansion.provider!=="openai"&&e.queryExpansion.provider!=="ollama"&&e.warnings.push(`search_query_expansion_provider_unavailable:${e.queryExpansion.provider}:using_builtin`),r}async function Wm(e,t,n,r){if(e.extensionVectorAdapter?.query)try{return await Promise.resolve(e.extensionVectorAdapter.query({vector:t,limit:n,settings:e.settings}))}catch(i){if(!e.vectorStore)throw new h(`Extension vector adapter query failed and no built-in fallback store is configured (${i instanceof Error?i.message:String(i)})`,p.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await an(e.vectorStore,t,n,r)}if(e.vectorStore)return await an(e.vectorStore,t,n,r);throw new h("Semantic search requires either a configured vector store or an extension vector adapter query handler",p.USAGE)}function zm(e,t,n){return[...e].sort((r,i)=>r.score!==i.score?i.score-r.score:r.item.id.localeCompare(i.item.id)).slice(0,n).map(r=>{let i=t.get(r.item.id);return i?{hit:r,text:br(i)}:null}).filter(r=>r!==null)}async function Km(e,t,n){if(!e.rerankExtension?.rerank)return null;try{let r=await Promise.resolve(e.rerankExtension.rerank({query:t,mode:"hybrid",model:e.rerank.model,top_k:e.rerank.top_k,settings:e.settings,candidates:n.map(o=>({id:o.hit.item.id,text:o.text,score:o.hit.score}))})),i=qs(r);return i.length>0?new Map(i.map(o=>[o.id,o.score])):(e.warnings.push(`search_rerank_provider_invalid_response:${e.rerankExtension.providerName}:using_builtin`),null)}catch{return e.warnings.push(`search_rerank_provider_failed:${e.rerankExtension.providerName}:using_builtin`),null}}async function Vm(e,t,n){let r=await Km(e,t,n);if(r)return r;let i=n.map(o=>({id:o.hit.item.id,text:o.text}));try{return await Gs(e.provider,e.rerank.model,t,i,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function Qm(e,t){let n=new Set(t.keys()),r=e.map(i=>{let o=t.get(i.item.id);if(o===void 0)return i;let s=new Set(i.matched_fields);return s.add("rerank"),{...i,score:o,matched_fields:[...s].sort((a,c)=>a.localeCompare(c))}});return r.sort((i,o)=>{let s=n.has(i.item.id),a=n.has(o.item.id);return s!==a?s?-1:1:i.score!==o.score?o.score-i.score:i.item.id.localeCompare(o.item.id)}),r}async function Ym(e,t,n,r){if(!e.rerank.enabled||n.length<=1)return n;let i=zm(n,r,e.rerank.top_k),o=await Vm(e,t,i);return o&&o.size>0?Qm(n,o):n}async function vr(e){let t=Math.max(e.limit??e.maxResults,e.maxResults),n=e.embeddingTimeoutMs!==void 0?{timeout_ms:e.embeddingTimeoutMs}:{},r=e.vectorQueryTimeoutMs!==void 0?{timeout_ms:e.vectorQueryTimeoutMs}:{},i=e.query.trim(),o=await Gm(e,i),s=await ht(e.provider,o,n),a=await Promise.all(s.map(async g=>await Wm(e,g,t,r))),c=wr(a),d=new Map(e.filteredDocuments.map(g=>[g.metadata.id,g])),{semanticHits:l,semanticScores:u}=gr(c,d),m=u.size;if(e.requestedMode==="semantic")return{hits:Wt(l,e.keywordHits),vectorMatchCount:m};let f=await Ym(e,i,Qt(d,u,e.keywordHits,e.hybridSemanticWeight),d);return{hits:Wt(f,e.keywordHits),vectorMatchCount:m}}function Qs(e){let t=Ke(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function Ys(e){let t=Ke(P(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}import Yt from"node:fs/promises";import kr from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="de9a1cbd-f277-52ef-adc6-66225f2d2f4f")}catch{}})();function Sr(e){let t=(e.files??[]).map(s=>({scope:s.scope,path:s.path.trim()})),n=(e.docs??[]).map(s=>({scope:s.scope,path:s.path.trim()})),r=(e.tests??[]).filter(s=>typeof s.path=="string"&&s.path.trim().length>0).map(s=>({scope:s.scope,path:s.path.trim()})),i=[...t,...n,...r].filter(s=>s.path.length>0).sort((s,a)=>s.scope.localeCompare(a.scope)||s.path.localeCompare(a.path)),o=new Map;for(let s of i)o.set(`${s.scope}:${s.path}`,s);return[...o.values()]}async function Xs(e){let t=kr.resolve(e);try{let n=await Yt.realpath(t);return{resolved:t,realpath:n}}catch{return null}}async function Er(e,t){let[n,r]=await Promise.all([Xs(e),Xs(t)]);return{projectContainmentRoot:n,globalContainmentRoot:r}}async function Cr(e,t){let n=Sr(e.metadata),r=[];for(let i of n){let o=i.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!o)continue;let s=kr.resolve(o.resolved,i.path);if(!en(o.resolved,s))continue;let a;try{a=await Yt.realpath(s)}catch{continue}if(en(o.realpath,a))try{await Ce({path:s,scope:i.scope}),r.push(await Yt.readFile(s,"utf8"))}catch{}}return r.join(`
|
|
11
|
-
`)}async function xr(e,t,n,r){let i=le(C()),o=async(d,l,u)=>{let m=async(f,g)=>{await Ce({path:f,scope:"project"});let _=await Yt.readFile(f,"utf8");return gi(_,{format:g,schema:r,extensionFieldNames:i,onWarning:y=>s.push(y)}).body};try{return await m(l,u)}catch{let f=u==="toon"?"json_markdown":"toon",g=tn(e,d.type,d.id,f,n);try{return await m(g,f)}catch{return s.push(`item_list_item_read_failed:${kr.relative(e,g)}`),""}}},s=[],a=await Fi(e,t,n,s,r),c=[];if(a.length===0){let d=await Mi(e,t,n,s,r);for(let l of d){let u=tn(e,l.type,l.id,t,n),m=await o(l,u,t);c.push({metadata:l,body:m})}return{documents:c,warnings:[...new Set(s)].sort((l,u)=>l.localeCompare(u))}}for(let d of a){if(typeof d.body=="string"){c.push({metadata:d.metadata,body:d.body});continue}let l=await o(d.metadata,d.item_path,d.item_format);c.push({metadata:d.metadata,body:l})}return{documents:c,warnings:[...new Set(s)].sort((d,l)=>d.localeCompare(l))}}async function Js(e,t,n){let r=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return r;let i=process.cwd(),o=await Er(i,Wr(i)),s=await Promise.all(n.map(async a=>[a.metadata.id,await Cr(a,o)]));for(let[a,c]of s)r.set(a,c);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="17122985-4157-5732-9142-444327cb273d")}catch{}})();var Zs=["tag","status","type","priority"];function Ir(e){let t={},n=[];for(let r of e.split(/\s+/).filter(i=>i.length>0)){let i=r.indexOf(":"),o=i>0?r.slice(0,i).toLowerCase():"",s=i>0?r.slice(i+1):"",a=Zs.includes(o)?o:void 0;if(a&&s.length>0&&t[a]===void 0){t[a]=s;continue}n.push(r)}return{residualQuery:n.join(" "),inlineFilters:t}}function Tr(e,t,n){let r={...e};for(let i of Zs){let o=t[i];if(o!==void 0){if(Ze(r[i])!==void 0){n.push(`search_inline_filter_ignored:${i}:flag_takes_precedence`);continue}r[i]=o}}return r}function ea(e,t){let n=[],r=Ir(e),i=Object.keys(r.inlineFilters).length>0;if(i&&r.residualQuery.trim().length===0)throw new h("Inline field:value tokens consumed the entire query, leaving no search terms.",p.USAGE,{examples:["pm search auth tag:area:search","pm list --tag area:search --status open"],nextSteps:["Add keyword terms alongside the inline filters, or use pm list for pure tag/status/type/priority filtering."]});let o=i?r.residualQuery:e,s=Tr(t,r.inlineFilters,n);return{query:o,options:s,inlineWarnings:n,highlight:s.highlight===!0,includeLinked:Ut(s.includeLinked),titleExact:Ut(s.titleExact),phraseExact:Ut(s.phraseExact),matchMode:Ts(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:Rs(s.minScore),countOnly:s.count===!0,tokens:qt(o),normalizedQuery:N(o),limit:pe(s.limit),projection:Bt(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}function ta(e){if(e.after!==void 0&&e.count===!0)throw new h("Search --after cannot be combined with --count.",p.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d7beacb7-66a5-581f-93f0-68ceb4b8e41e")}catch{}})();function Ar(e,t,n,r,i,o,s,a,c,d,l,u,m,f){let g=m?{total:0,count_only:!0}:{};if(d.mode==="compact"&&r.compact===!0){let y=we({mode:t,matchMode:n,options:r,includeLinked:i,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:o,hybridSemanticWeight:s,runtimeFieldFilters:u});return{query:e.trim(),mode:t,...$r(f),items:[],count:0,...g,filters:y,...l.length>0?{warnings:l}:{}}}let _=d.mode==="full"?null:[...d.fields];return{query:e.trim(),mode:t,mode_source:f,items:[],count:0,...g,filters:be({effectiveMode:t,matchMode:n,options:r,includeLinked:i,titleExact:r.titleExact===!0,phraseExact:r.phraseExact===!0,scoreThreshold:o,hybridSemanticWeight:s,queryExpansion:a,rerank:c,runtimeFieldFilters:u??{}}),projection:{mode:d.mode,fields:_},now:F(),...l.length>0?{warnings:l}:{}}}function Dr(e,t){let n=t.trim();if(n.length===0)return null;if(n==="score")return e.score;if(n==="matched_fields")return e.matched_fields;if(n.startsWith("item.")){let o=n.slice(5);return o.length===0?null:e.item[o]??null}let r=e,i=e.item;return Object.prototype.hasOwnProperty.call(i,n)?i[n]??null:Object.prototype.hasOwnProperty.call(r,n)?r[n]??null:null}function Fr(e,t){return t.mode==="full"?e.map(({matched_all_terms:n,exact_id_match:r,...i})=>i):e.map(n=>{let r={};for(let i of t.fields)r[i]=Dr(n,i);return r})}function Mr(e,t){return Ar(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 na(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return Rr({query:e.query.trim(),mode:e.effectiveMode,...$r(e.modeSource),items:[],count:t,total:t,count_only:!0,filters:we({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let n=e.projection.mode==="full"?null:[...e.projection.fields];return Rr({query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:[],count:t,total:t,count_only:!0,filters:be({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:F()},e.warnings)}function $r(e){return e==="settings"?{mode_source:e}:{}}function Rr(e,t){return t.length===0?e:{...e,warnings:t}}function Ve(e,t){return t?{...e,workspace_memory:t}:e}function ra(e,t,n){if(!e.highlight)return{hits:n,projection:e.projection};let r=new Map(t.map(o=>[o.metadata.id,o])),i=n.map(o=>({...o,highlights:Gt(r.get(o.item.id),o.matched_fields,e.tokens)}));return e.projection.mode==="full"||e.projection.fields.includes("highlights")?{hits:i,projection:e.projection}:{hits:i,projection:{mode:e.projection.mode,fields:[...e.projection.fields,"highlights"]}}}function ia(e,t,n,r,i,o){let s=r<n?{total:n}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return Rr({query:e.query.trim(),mode:e.effectiveMode,...$r(e.modeSource),items:t,count:t.length,...s,...o,filters:we({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let a=i.mode==="full"?null:[...i.fields];return{query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:t,count:t.length,...s,...o,filters:be({effectiveMode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,queryExpansion:e.queryExpansion,rerank:e.rerank,runtimeFieldFilters:e.runtimeFieldFilters}),projection:{mode:i.mode,fields:a},now:F(),...e.warnings.length>0?{warnings:e.warnings}:{}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3bfd872f-6ed7-551c-a027-3748493de3e9")}catch{}})();var h_={applyFilters:or,applyExactQueryFilters:ir,applyInlineQueryFilters:Tr,buildHitHighlights:Gt,buildVerboseSearchFilters:be,buildExplicitSemanticFallbackWarning:ur,buildCompactSearchFilterSummary:we,buildHybridLexicalScore:lr,buildRerankCorpus:br,buildSemanticHits:gr,classifyImplicitSemanticFallbackReason:Kt,collectErrorCauseCodes:zt,collectExactPhraseFields:nr,collectLinkedPaths:Sr,combineHybridHits:Qt,computeBuiltInBm25Hits:_r,computeSemanticOrHybridHits:vr,resolveBuiltInBm25Mode:yr,countOccurrences:Ht,dependencyEntries:We,documentContainsExactPhrase:rr,emptySearchResult:Ar,highlightFieldSnippet:ar,loadDocuments:xr,markTokenRuns:sr,parseInlineQueryFilters:Ir,maybeEmitVectorIndexStaleWarning:mr,loadLinkedCorpus:Cr,mergeVectorHitsById:wr,normalizeExtensionProviderHits:hr,normalizeScoreMap:ze,parseProjectionConfig:Bt,parseTimestampWindow:oe,parseTokens:qt,projectSearchHits:Fr,readSearchFieldValue:Dr,requireSemanticDependencies:Vt,resolveExtensionSearchProvider:fr,resolveExtensionSearchProviderByName:Ke,resolveExtensionVectorAdapter:pr,resolveLinkedCorpusRoots:Er,scoreDocument:cr,sortHits:dr,stringArray:ve,textEntries:z,validateSearchProjectionFields:zn};async function Xm(e,t){let n=T(process.cwd(),t.path);await U(n);let r=await A(n),i=Di(r).settings,o=O(i.schema),s=Q(i.schema);zn(e.projection,s,e.query);let a=mt(e.options,s,"search"),c=R(i,C()),d=Li(i),l=ji(i,n),u=fr(i),m=pr(i),f=Is(e.options.semanticWeight),g=Us(i,d.active?.name??null),_=Bs(i,d.active?.model??P(i.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:n,settings:i,statusRegistry:o,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:c,maxResults:Kn(i),scoreThreshold:e.minScoreOverride??Qn(i),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:f,hybridSemanticWeight:f??Yn(i),tuning:Xn(i),providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m,bm25Mode:yr({configuredProvider:P(i.search?.provider),hasEmbeddingProvider:d.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:g,queryExpansionExtension:Qs(g),rerank:_,rerankExtension:Ys(i),...Jm({requested:e.options.mode,settings:i,configuredProvider:r.search?.provider??null,providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m})}}function Jm(e){let t=Oi(e.providerResolution.active?.name,e.configuredProvider)==="configured"&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null),n=e.extensionSearchProvider!==null||t,r=Vn({requested:e.requested,settings:e.settings,semanticRunnable:n});return{effectiveMode:r.mode,modeSource:r.source}}async function Zm(e,t){let n=await xr(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),r=ut(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),i=Vi(t.statusRegistry),o=or(n.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,r,i);return{warnings:n.warnings,allDocuments:n.documents,filteredDocuments:ir(o,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function ef(e,t,n){let r=await Js(e.includeLinked,t.effectiveMode,n),i=e.matchMode==="or";return n.map(o=>lr(o,e.tokens,e.normalizedQuery,e.includeLinked,r,t.tuning,t.settings.id_prefix,i)).filter(o=>o!==null).filter(o=>e.matchMode!=="and"||o.matched_all_terms===!0)}async function tf(e,t,n,r,i){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let o=_r({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:n,keywordHits:r,corpusFields:Ni(t.settings),bm25Params:Ls(t.settings),hybridSemanticWeight:t.hybridSemanticWeight});return t.bm25Mode==="auto-fallback"&&i.push(`search_${t.effectiveMode}_offline_bm25:no_embedding_provider:using_lexical_bm25`),o}async function nf(e,t,n,r){if(!t.extensionSearchProvider)return null;let i=t.providerResolution.active!==null&&(t.vectorResolution.active!==null||t.extensionVectorAdapter!==null);try{let o=await Promise.resolve(t.extensionSearchProvider.query({query:e.query,mode:t.effectiveMode,tokens:e.tokens,options:e.options,settings:t.settings,documents:n}));return hr(t.extensionSearchProvider.providerName,o,r)}catch(o){if(!i)throw new h(`Extension search provider "${t.extensionSearchProvider.providerName}" failed: ${o instanceof Error?o.message:String(o)}`,p.GENERIC_FAILURE);return null}}function rf(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 of(e,t,n,r,i){let o=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);i&&o&&await mr(e.pmRoot,n,r),e.extensionSearchProvider||Vt(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function sf(e){let{prepared:t,runtime:n,filteredDocuments:r,keywordHits:i,warnings:o,modeWasExplicit:s}=e,a=i,c=await tf(t,n,r,i,o),d=n.effectiveMode;if(c!==null||d==="keyword")return{effectiveMode:n.effectiveMode,hits:c??a};try{if(await of(n,d,r,o,s),r.length===0||t.limit===0)return{effectiveMode:n.effectiveMode,hits:[]};let l=new Map(r.map(u=>[u.metadata.id,u]));if(a=await nf(t,n,r,l)??a,a===i){let{provider:u,vectorStore:m}=Vt(d,n.providerResolution,n.vectorResolution,n.extensionVectorAdapter!==null),f=await vr({requestedMode:d,query:t.query,filteredDocuments:r,keywordHits:i,hybridSemanticWeight:n.hybridSemanticWeight,limit:t.limit,maxResults:n.maxResults,provider:u,vectorStore:m,extensionVectorAdapter:n.extensionVectorAdapter,queryExpansion:n.queryExpansion,queryExpansionExtension:n.queryExpansionExtension,rerank:n.rerank,rerankExtension:n.rerankExtension,warnings:o,settings:n.settings});a=rf(d,f,i,o)}return{effectiveMode:n.effectiveMode,hits:a}}catch(l){return o.push(ur(n.effectiveMode,l)),{effectiveMode:"keyword",hits:i}}}function oa(e){e.searchOptions.after!==void 0&&oi(e.searchOptions.after,Jn(e))}async function g_(e,t,n){ta(t);let r=ea(e,t),i=await Xm(r,n),o=await Zm(r,i),s=o.warnings;s.push(...r.inlineWarnings);let a=await Ft(o.allDocuments.map(S=>S.metadata),{pmRoot:i.pmRoot,statusRegistry:i.statusRegistry,now:F()});s.push(...a.warnings);let c=Qo(a,r.query);i.effectiveMode==="hybrid"&&i.semanticWeightProvided&&i.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let d={query:r.query,modeSource:i.modeSource,matchMode:r.matchMode,options:r.options,includeLinked:r.includeLinked,titleExact:r.titleExact,phraseExact:r.phraseExact,scoreThreshold:i.scoreThreshold,hybridSemanticWeight:i.hybridSemanticWeight,queryExpansion:i.queryExpansion,rerank:i.rerank,projection:r.projection,warnings:s,runtimeFieldFilters:i.runtimeFieldFilters};if(i.effectiveMode==="keyword"&&(o.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return oa({query:r.query,mode:i.effectiveMode,searchOptions:r.options,pmRoot:i.pmRoot}),Ve(Mr({...d,effectiveMode:i.effectiveMode},r.countOnly),c);let l=await ef(r,i,o.filteredDocuments),u=await sf({prepared:r,runtime:i,filteredDocuments:o.filteredDocuments,keywordHits:l,warnings:s,modeWasExplicit:r.modeWasExplicit});if(u.effectiveMode!=="keyword"&&u.hits.length===0&&(o.filteredDocuments.length===0||r.limit===0&&!r.countOnly))return oa({query:r.query,mode:u.effectiveMode,searchOptions:r.options,pmRoot:i.pmRoot}),Ve(Mr({...d,effectiveMode:u.effectiveMode},r.countOnly),c);let m=u.hits.filter(S=>S.exact_id_match===!0||S.score>=i.scoreThreshold),f=dr(m,i.statusRegistry),g=f.length,_=As({pmRoot:i.pmRoot,sorted:f,query:r.query,mode:u.effectiveMode,searchOptions:r.options,limit:r.limit??i.maxResults}),y={...d,effectiveMode:u.effectiveMode};if(r.countOnly)return Ve(na(y,g),c);let{hits:w,projection:k}=ra(r,o.filteredDocuments,_.limited),b=Fr(w,k);return Ve(ia(y,b,g,_.limited.length,k,_.pageExtras),c)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f303192a-cac2-588b-b988-e3a8132f4199")}catch{}})();var sa=["ndcg","mrr","precision","recall"];function af(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(!sa.some(i=>i===n))throw new TypeError(`Unknown eval minimum metric: ${n}`);if(typeof r!="number"||!Number.isFinite(r)||r<0||r>1)throw new TypeError(`Eval minimum.${n} must be a finite number in [0, 1]`);t[n]=r}return t}function __(e,t){let n=af(t),r=[];for(let i of sa){let o=n[i];if(o===void 0)continue;let s=e[i];!Number.isFinite(s)||s<0||s>1?r.push(`${i}:invalid`):s<o&&r.push(`${i}:${s}<${o}`)}return r}export{De as a,df as b,la as c,un as d,mf as e,ya as f,_a as g,ff as h,yf as i,Eh as j,po as k,Sf as l,Ef as m,Cf as n,xf as o,ho as p,Pf as q,jf as r,Uf as s,Ro as t,Et as u,uc as v,Ct as w,It as x,np as y,Mo as z,En as A,Rt as B,qc as C,No as D,Kc as E,At as F,Vc as G,Qc as H,Zc as I,ed as J,fp as K,td as L,Po as M,Cn as N,xn as O,ud as P,yd as Q,Ep as R,In as S,Tn as T,Dt as U,kd as V,xd as W,Ft as X,Md as Y,Vo as Z,$d as _,Qo as $,Od as aa,qd as ba,Ne as ca,nh as da,Fn as ea,Wd as fa,zd as ga,$n as ha,ie as ia,Ln as ja,Nn as ka,Pn as la,ye as ma,Ue as na,Lt as oa,rh as pa,Kl as qa,ih as ra,Jl as sa,_h as ta,wh as ua,bh as va,vh as wa,kh as xa,Ah as ya,Dh as za,ks as Aa,Ss as Ba,Es as Ca,og as Da,sg as Ea,yg as Fa,Kn as Ga,Vn as Ha,Qn as Ia,Yn as Ja,Xn as Ka,Jn as La,As as Ma,we as Na,be as Oa,zt as Pa,Kt as Qa,Ks as Ra,Vs as Sa,h_ as Ta,g_ as Ua,sa as Va,af as Wa,__ as Xa};
|
|
12
|
-
//# sourceMappingURL=chunk-LPWZERVD.js.map
|