@unbrained/pm-cli 2026.10.5 → 2026.10.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +26 -1
  3. package/dist/cli/register-setup.js +1 -1
  4. package/dist/cli/runtime/projection-retry.js +1 -1
  5. package/dist/cli-bundle/bundle-manifest.json +158 -158
  6. package/dist/cli-bundle/chunks/{chunk-Z66DWDAU.js → chunk-25EW53VO.js} +39 -38
  7. package/dist/cli-bundle/chunks/{chunk-YVBRASXO.js → chunk-3CCVTV6Q.js} +2 -2
  8. package/dist/cli-bundle/chunks/{chunk-5MNOWZPN.js → chunk-3REXBTST.js} +2 -2
  9. package/dist/cli-bundle/chunks/chunk-4WB55TBC.js +80 -0
  10. package/dist/cli-bundle/chunks/{chunk-OOLYASYJ.js → chunk-6STTPXOC.js} +2 -2
  11. package/dist/cli-bundle/chunks/{chunk-AJ7H6XUF.js → chunk-ATB4ZZBQ.js} +2 -2
  12. package/dist/cli-bundle/chunks/{chunk-N4YGSG6F.js → chunk-D4G43LBV.js} +38 -38
  13. package/dist/cli-bundle/chunks/{chunk-HRJ6G6ZG.js → chunk-K6D6DMRT.js} +28 -28
  14. package/dist/cli-bundle/chunks/chunk-KIRHWPZB.js +2 -0
  15. package/dist/cli-bundle/chunks/chunk-O67BH435.js +6 -0
  16. package/dist/cli-bundle/chunks/{chunk-3CYOBJUK.js → chunk-RJHLD64E.js} +2 -2
  17. package/dist/cli-bundle/chunks/{chunk-WFZ4UEOB.js → chunk-TUKO5NF7.js} +2 -2
  18. package/dist/cli-bundle/chunks/{chunk-VZ63DEVJ.js → chunk-XJD47LUH.js} +2 -2
  19. package/dist/cli-bundle/chunks/{register-list-query-75QXHIFH.js → register-list-query-53WYLNZT.js} +2 -2
  20. package/dist/cli-bundle/chunks/{register-mutation-YS54SCHG.js → register-mutation-34XXUBVI.js} +2 -2
  21. package/dist/cli-bundle/chunks/{register-operations-6KHZQSYJ.js → register-operations-WANO6EIM.js} +2 -2
  22. package/dist/cli-bundle/chunks/register-setup-WT37UPBQ.js +2 -0
  23. package/dist/cli-bundle/focused-chunks/{chunk-GITOYRUW.js → chunk-6KFKQD2D.js} +2 -2
  24. package/dist/cli-bundle/focused-chunks/{chunk-UDYRVBOZ.js → chunk-FOHRPFIT.js} +2 -2
  25. package/dist/cli-bundle/focused-chunks/{chunk-DDRN42PB.js → chunk-GRQXL5G5.js} +2 -2
  26. package/dist/cli-bundle/focused-chunks/{chunk-ABV67XCC.js → chunk-JZ4WGUVH.js} +2 -2
  27. package/dist/cli-bundle/focused-chunks/{chunk-B5RSLVE6.js → chunk-NM3PM6O6.js} +2 -2
  28. package/dist/cli-bundle/focused-chunks/chunk-OT7HK7SG.js +2 -0
  29. package/dist/cli-bundle/focused-chunks/{chunk-2CVX3KR3.js → chunk-PCLU34KB.js} +2 -2
  30. package/dist/cli-bundle/focused-chunks/{chunk-5C3IDDW7.js → chunk-QQIE4L42.js} +2 -2
  31. package/dist/cli-bundle/focused-chunks/chunk-RPUNVKXK.js +2 -0
  32. package/dist/cli-bundle/focused-chunks/{chunk-LE4JUCRR.js → chunk-RXSVJPZ7.js} +2 -2
  33. package/dist/cli-bundle/focused-chunks/chunk-SPN5QTZ3.js +30 -0
  34. package/dist/cli-bundle/focused-chunks/{chunk-CLDPTMQY.js → chunk-SUZJNPGB.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-YMU42COG.js → chunk-W4BG5HHS.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/{chunk-C224METM.js → chunk-Y5HXFDTZ.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/{chunk-ECBOPEJE.js → chunk-ZK5SOOPC.js} +61 -61
  38. package/dist/cli-bundle/focused-chunks/chunk-ZQK2XUSS.js +12 -0
  39. package/dist/cli-bundle/main.js +21 -21
  40. package/dist/cli-bundle/sdk-authoring.js +1 -1
  41. package/dist/cli-bundle/sdk-contracts.js +1 -1
  42. package/dist/cli-bundle/sdk-core.js +31 -30
  43. package/dist/cli-bundle/sdk-governance.js +1 -1
  44. package/dist/cli-bundle/sdk-graph.js +1 -1
  45. package/dist/cli-bundle/sdk-merge.js +42 -42
  46. package/dist/cli-bundle/sdk-query.js +1 -1
  47. package/dist/cli-bundle/sdk-runtime.js +1 -1
  48. package/dist/cli-bundle/sdk-testing.js +1 -1
  49. package/dist/cli-bundle/sdk.js +2 -2
  50. package/dist/core/extensions/extension-types.d.ts +2 -0
  51. package/dist/core/extensions/extension-types.js +1 -1
  52. package/dist/sdk/cli-bootstrap.d.ts +5 -1
  53. package/dist/sdk/cli-bootstrap.js +1 -1
  54. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  55. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
  56. package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
  57. package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
  58. package/dist/sdk/cli-contracts/tool-schema.js +1 -1
  59. package/dist/sdk/extension/managed-state.d.ts +2 -0
  60. package/dist/sdk/extension/managed-state.js +1 -1
  61. package/dist/sdk/extension/managed-update-status.d.ts +3 -0
  62. package/dist/sdk/extension/managed-update-status.js +2 -0
  63. package/dist/sdk/extension/source-resolution.d.ts +2 -6
  64. package/dist/sdk/extension/source-resolution.js +1 -1
  65. package/dist/sdk/extension/update-check.d.ts +10 -0
  66. package/dist/sdk/extension/update-check.js +1 -1
  67. package/dist/sdk/extension-command-context.js +2 -1
  68. package/dist/sdk/extension.d.ts +4 -0
  69. package/dist/sdk/extension.js +1 -1
  70. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
  71. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  72. package/dist/sdk/public-surface.json +1 -1
  73. package/dist/sdk/query/get.js +1 -1
  74. package/dist/sdk/read-output-contracts.js +1 -1
  75. package/dist/sdk/runtime-input.js +1 -1
  76. package/dist/sdk/test/execution.d.ts +2 -1
  77. package/dist/sdk/test/execution.js +3 -3
  78. package/docs/DEVELOPMENT_DEPENDENCY_SECURITY.md +36 -0
  79. package/docs/GET_READ_EVIDENCE.md +17 -1
  80. package/docs/OUTPUT_PROJECTION_CONTRACTS.md +23 -0
  81. package/docs/PR_REVIEW_LOOP.md +21 -4
  82. package/docs/README.md +1 -0
  83. package/docs/RELEASING.md +18 -0
  84. package/docs/SDK_CONFIGURATION_SAFETY.md +123 -0
  85. package/docs/generated/FLAG_LEXICON_BUDGETS.md +3 -3
  86. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +4 -3
  87. package/marketplace.json +2 -2
  88. package/package.json +3 -3
  89. package/packages/pm-beads/package.json +1 -1
  90. package/packages/pm-calendar/package.json +1 -1
  91. package/packages/pm-command-kit/package.json +1 -1
  92. package/packages/pm-digital-twin/package.json +1 -1
  93. package/packages/pm-governance-audit/package.json +1 -1
  94. package/packages/pm-guide-shell/package.json +1 -1
  95. package/packages/pm-kanban/package.json +1 -1
  96. package/packages/pm-lifecycle-hooks/package.json +1 -1
  97. package/packages/pm-linked-test-adapters/package.json +1 -1
  98. package/packages/pm-search-advanced/package.json +1 -1
  99. package/packages/pm-templates/package.json +1 -1
  100. package/packages/pm-todos/package.json +1 -1
  101. package/packages/pm-vcs/package.json +1 -1
  102. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  103. package/plugins/pm-claude/package.json +2 -2
  104. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  105. package/plugins/pm-codex/package.json +2 -2
  106. package/plugins/pm-codex/plugin.json +1 -1
  107. package/dist/cli-bundle/chunks/chunk-D332RXZ7.js +0 -80
  108. package/dist/cli-bundle/chunks/chunk-KRVI56QE.js +0 -6
  109. package/dist/cli-bundle/chunks/chunk-TGMONGWX.js +0 -2
  110. package/dist/cli-bundle/chunks/register-setup-RTATEN2M.js +0 -2
  111. package/dist/cli-bundle/focused-chunks/chunk-DOVTUKJQ.js +0 -2
  112. package/dist/cli-bundle/focused-chunks/chunk-GUIF3WVC.js +0 -30
  113. package/dist/cli-bundle/focused-chunks/chunk-RHIH6XIW.js +0 -12
  114. package/dist/cli-bundle/focused-chunks/chunk-XV5RV4ZT.js +0 -2
@@ -0,0 +1,2 @@
1
+ import{$c as v,Jf as $,Wc as I,Xc as C,Yc as L,Zc as A,_c as w,cd as M,cf as D,df as F,dh as B,eh as k,g as P,h as m,hf as V,hl as y,j as S,k as N,na as f,pa as h,vb as _}from"./chunk-D4G43LBV.js";import{Command as Q}from"commander";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="089f4ea0-a211-5e3e-87d3-c5693de8918d")}catch{}})();function Ue(e){return new Q().name("pm").description("Universal, flexible, extensible, agent-optimized project management CLI for any project or programming language.").version(e).showHelpAfterError(!1).allowExcessArguments(!1).allowUnknownOption(!1).configureOutput({writeOut:t=>{$(t)},writeErr:()=>{}}).option("--json","Output JSON instead of TOON; mutations emit a flat receipt with top-level id/status/changed_field_count while reads use documented entity or collection envelopes").option("--lean","Omit null and empty containers from JSON output").option("--token-accounting","Attach a bounded per-section token-cost receipt to command output").option("--output-include <fields>","Retain comma-separated fields or sections in read output").option("--output-limit <count>","Bound rows in read output").option("--output-budget <tokens|unbounded>","Bound estimated tokens in read output or explicitly disable the default ceiling").option("--output-format <toon|json>","Select the result encoding for reads and mutations").option("--output-session <state>","Carry a JSON session budget and served-item ledger across read calls").option("--output-cursor <cursor>","Resume a budget-compacted declared row collection").option("--output-row-contract","Include row selectors, encoding metadata, and read-output receipts").option("--quiet","Suppress stdout output").option("--no-changed-fields","Omit the changed_fields array from mutation output (keeps changed_field_count)").option("--full-changed-fields","Restore the legacy full mutation envelope and changed_fields array").option("--id-only","Print only id and status for single-item mutation output").option("--pm-path <dir>","Explicit tracker storage path for this command (preferred over --path)").option("--path <dir>","Backward-compatible alias for --pm-path; this is the tracker storage path, not a workspace cwd").option("--no-extensions","Disable extension loading").option("--no-pager","Disable pager integration for help and long output").option("--explain","Render extended rationale and examples in help output").option("--all","Reveal every public command and compatibility alias").option("--profile","Print deterministic timing diagnostics").option("--author <id>","Override mutation author for this invocation").exitOverride()}(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]="be9abae1-85ae-5a68-96bc-c738218ace5e")}catch{}})();function Ke(e){return e instanceof h||e instanceof Error?e.message:"Unknown failure"}function ee(e){if(typeof e!="object"||e===null||!("exitCode"in e))return;let t=e.exitCode;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function te(e){let t=Math.trunc(e);return t>f.SUCCESS?t:f.GENERIC_FAILURE}function Ye(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"&&e.code.startsWith("commander.")}function Xe(e,t){if(e instanceof Error)return e;let n=new Error(t),o=ee(e);return o!==void 0&&(n.exitCode=te(o)),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]="8efedca0-725e-520f-ad06-825a0cccddaa")}catch{}})();var R=new Set(["append","claim","close","close-task","comments","copy","delete","deps","docs","files","focus","get","history","history-compact","history-redact","history-repair","learnings","notes","pause-task","release","restore","start-task","test","update"]),z=new Map([["files","discover"],["item","complete"]]),oe=new Map([["append",1],["close",1],["close-task",1],["comments",1],["item complete",1],["learnings",1],["notes",1],["restore",1]]);function G(e){let t=m(e?.trim().toLowerCase()??"");return R.has(t)||z.has(t)}function ne(e,t,n){let o=R.has(n)?t+1:void 0,i=w(e.slice(t+1));if(i===void 0)return o;let s=t+1+i,a=`${n} ${e[s]}`,r=m(a);return r===a?n==="item"&&e[s]==="complete"?s+1:o:G(r)?O(e,s,r):void 0}function O(e,t,n){if(["history","context","ctx","update","close","item"].includes(n))return ne(e,t,n);let o=z.get(n);if(o===void 0)return t+1;let i=e[t+1]?.toLowerCase()===o;return t+(i?2:1)}function ie(e){let t=new Map;for(let n of y(e))for(let o of[n.flag,n.short,...n.aliases??[]])o&&t.set(o,n);return t}function se(e){let t=[];for(let n=0;n<e.length;n+=1){let o=e[n];if(o==="--")break;o==="--id"?(t.push({index:n,consumed:2,value:e[n+1]}),n+=1):o.startsWith("--id=")&&t.push({index:n,consumed:1,value:o.slice(5)})}return t}function re(e,t,n){if(e.indexOf("=")>=0||t===void 0||t.startsWith("-"))return!1;let o=n.get(e);return o!==void 0&&o.value_type!=="boolean"}function ae(e,t,n,o,i){let s=0;for(let a=t;a<e.length;a+=1){let r=e[a];if(r==="--")break;if(r==="--id"){a+=1;continue}if(!r.startsWith("--id=")){if(!r.startsWith("-")){if(a<o)return!0;s+=1;continue}re(r,e[a+1],i)&&(a+=1)}}return s>(oe.get(m(n))??0)}function U(e){let t=w(e),n=t===void 0?void 0:e[t]?.toLowerCase();if(n!=="context"&&n!=="ctx"&&!G(n))return{argv:[...e],changed:!1,conflict:!1};let o=O(e,t,n);if(o===void 0)return{argv:[...e],changed:!1,conflict:!1};let i=o>t+1?`${m(e.slice(t,o-1).join(" "))} ${e[o-1]}`:n,s=ie(i),a=se(e),r=a[0];if(!r||!r.value?.trim())return{argv:[...e],changed:!1,conflict:!1};if(a.length>1||ae(e,o,i,r.index,s))return{argv:[...e],changed:!1,conflict:!0,itemId:r.value};let l=[...e.slice(0,r.index),...e.slice(r.index+r.consumed)],c=w(l),u=O(l,c,n);return l.splice(u,0,r.value),{argv:l,changed:!0,conflict:!1,itemId:r.value}}(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]="f05cec18-5e48-5151-8ada-577c9df5885d")}catch{}})();var le=new Set(["--output-include","--output-limit","--output-budget","--output-format","--output-session","--output-cursor"]),ce=new Set(["toon","json"]);function ue(e,t,n){let o=e[t];if(C.has(o))return n.booleanFlags.add(o),1;let i=o.indexOf("="),s=i>0?o.slice(0,i):o;if(!I.has(s))return 1;let a=i>0?o.slice(i+1):void 0,r=a===void 0&&A(s,e[t+1]),l=a??(r?e[t+1]:void 0);return s==="--author"?n.author=l??"":typeof l=="string"&&l.length>0&&(le.has(s)?n.outputValues:n.pathValues).set(s,l),r?2:1}function de(e){let t={booleanFlags:new Set,outputValues:new Map,pathValues:new Map},n=0;for(;n<e.length&&e[n]!=="--";)n+=ue(e,n,t);return{path:t.pathValues.get("--pm-path")??t.pathValues.get("--path"),noExtensions:t.booleanFlags.has("--no-extensions")||["history attest","history-attest"].includes(X(e)??""),noPager:t.booleanFlags.has("--no-pager"),json:t.booleanFlags.has("--json")?t.outputValues.get("--output-format")!=="toon":t.outputValues.get("--output-format")==="json",quiet:t.booleanFlags.has("--quiet"),lean:t.booleanFlags.has("--lean"),tokenAccounting:t.booleanFlags.has("--token-accounting"),...t.booleanFlags.has("--output-row-contract")?{outputRowContract:!0}:{},...t.outputValues.get("--output-include")===void 0?{}:{outputInclude:t.outputValues.get("--output-include")},...t.outputValues.get("--output-limit")===void 0?{}:{outputLimit:t.outputValues.get("--output-limit")},...t.outputValues.get("--output-budget")===void 0?{}:{outputBudget:t.outputValues.get("--output-budget")},...ce.has(t.outputValues.get("--output-format"))?{outputFormat:t.outputValues.get("--output-format")}:{},...t.outputValues.get("--output-session")===void 0?{}:{outputSession:t.outputValues.get("--output-session")},...t.outputValues.get("--output-cursor")===void 0?{}:{outputCursor:t.outputValues.get("--output-cursor")},...t.author===""?{authorMissingValue:!0}:t.author!==void 0?{author:t.author}:{}}}function q(e){let t=[],n=0;for(;n<e.length;){let o=e[n];if(o==="--")break;if(C.has(o)||o==="--profile"||o==="--id-only"||o==="--full-changed-fields"||o==="--explain"){n+=1;continue}if(I.has(o)){n+=A(o,e[n+1])?2:1;continue}if(L(o)){n+=1;continue}t.push(o),n+=1}return t}function pe(e){let t=q(e);if(t[0]?.trim().toLowerCase()==="help"){let o=[];for(let i=1;i<t.length;i+=1){let s=t[i];if(s.startsWith("-"))break;o.push(s.trim().toLowerCase())}return{requested:!0,commandPathTokens:o}}if(t.findIndex(o=>o==="--help"||o==="-h")<0)return{requested:!1,commandPathTokens:[]};let n=[];for(let o of t){if(o.startsWith("-"))break;n.push(o.trim().toLowerCase())}return{requested:!0,commandPathTokens:n}}function T(e){return w(e)}function fe(e){return v(e)}function me(e,t){return t.noPager?!0:process.stdout.isTTY===!0?!1:pe(e).requested}function dt(e){let t=["PAGER","MANPAGER","GIT_PAGER","LESS"],n=t.map(s=>process.env[s]),o=()=>{for(let[s,a]of t.entries()){let r=n[s];r===void 0?delete process.env[a]:process.env[a]=r}},i=de(e);return me(e,i)&&(process.env.PAGER="cat",process.env.MANPAGER="cat",process.env.GIT_PAGER="cat",(typeof process.env.LESS!="string"||process.env.LESS.trim().length===0)&&(process.env.LESS="FRX")),o}var he=new Set(["install","uninstall","explore","manage","doctor","adopt","adopt-all","activate","deactivate"]);function ge(e){let t=T(e);if(t===void 0||e[t]!=="extension")return[...e];let n=e[t+1];if(!n||n.startsWith("-"))return[...e];if(!he.has(n))return[...e];if(e.includes("--help")||e.includes("-h"))return[...e];let o=`--${n}`;return e.includes(o)?[...e]:[...e.slice(0,t+1),o,...e.slice(t+2)]}var be=new Set(["pm","pm-cli"]);function ye(e,t){let n=T(e);if(n===void 0)return e;let o=e[n];return be.has(o.trim().toLowerCase())?(t.push({from:o,to:[],reason:"executable_alias",confidence:"high"}),[...e.slice(0,n),...e.slice(n+1)]):e}function we(e,t){let n=T(e);if(n!==void 0&&e[n]==="help"){let r=T(e.slice(n+1));n=r===void 0?void 0:n+1+r}if(n===void 0)return e;let o=e[n],i=N[o.trim().toLowerCase()];if(!i)return e;let s=i.split(" "),a=[...e.slice(0,n),...s,...e.slice(n+1)];return t.push({from:o,to:s,reason:"command_alias",confidence:"high"}),a}function E(e){return e.replace(/^--?/,"").replace(/_/g,"-").replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function W(e){return E(e).replace(/-/g,"")}function j(e,t,n){let o=e.get(t);if(o===void 0){e.set(t,n);return}o!==n&&e.set(t,null)}function Ie(e){let t=[],n=o=>{typeof o=="string"&&o.startsWith("--")&&t.push(o)};n(e.flag);for(let o of e.aliases??[])n(o);return t}function _e(e,t){let n=t??y(e),o=new Map,i=new Map,s=new Map,a=new Set;for(let r of n){let l=Ie(r);if(l.length===0)continue;let c=`--${E(l[0])}`;for(let p of l)j(o,E(p),c),j(i,W(p),c);let u=W(c);s.has(c)||s.set(c,u),r.list===!0&&a.add(c)}return{canonicalByNormalized:o,canonicalByCompact:i,canonicalComparables:[...s.entries()].map(([r,l])=>({canonicalFlag:r,comparable:l})),listCanonicalFlags:a}}function K(e,t){let n=E(e),o=t.canonicalByNormalized.get(n);if(typeof o=="string")return{flag:o,reason:"flag_alias",confidence:"high"};let i=n.replace(/-/g,""),s=t.canonicalByCompact.get(i);if(typeof s=="string")return{flag:s,reason:"flag_alias",confidence:"high"};let a=i.length>=8?2:1,r=Number.POSITIVE_INFINITY,l,c=!1;for(let u of t.canonicalComparables){let p=_(i,u.comparable,a);if(p!==null){if(p<r){r=p,l=u.canonicalFlag,c=!1;continue}p===r&&l!==u.canonicalFlag&&(c=!0)}}return!l||c||!Number.isFinite(r)||r<=0?null:{flag:l,reason:"flag_typo",confidence:r>=2?"medium":"high"}}function pt(e){let t=[`${e}s`];return e.endsWith("y")&&e.length>1&&t.push(`${e.slice(0,-1)}ies`),t}function Ce(e,t=!1){if(t||e.includes("://"))return null;let n=e.match(/^([A-Za-z][A-Za-z0-9_-]{1,63})([:=])(.*)$/);if(!n)return null;let o=n[1],i=n[3];return i.length===0?null:{key:o,value:i}}function ve(e,t,n=!1){if(n||!e.startsWith("--"))return{tokens:[e]};let o=e.indexOf("="),i=o>=0?e.slice(0,o):e,s=o>=0?e.slice(o+1):void 0,a=K(i,t);if(!a)return{tokens:[e]};let r=s===void 0?a.flag:`${a.flag}=${s}`;return r===e?{tokens:[e]}:{tokens:[r],event:{from:e,to:[r],reason:a.reason,confidence:a.confidence}}}function ke(e){let t=new Set,n=!1;for(let o=0;o<e.length;o+=1){if(n){t.add(o),n=!1;continue}let i=e[o];n=i==="--path"||i==="--pm-path"}return t}function Te(e){if(!e.startsWith("--"))return null;let t=e.indexOf("=");return t<0?{flag:e}:{flag:e.slice(0,t),inlineValue:e.slice(t+1)}}function Ee(e,t,n){n.push(e[t]);let o=e[t+1];return typeof o=="string"&&o!=="--"?(n.push(o),t+2):t+1}function xe(e,t,n,o){if(n.inlineValue!==void 0)return{originalTokens:[e[t]],value:n.inlineValue,consumed:1};let i=[],s=t+1;for(;s<e.length&&e[s]!=="--"&&!e[s].startsWith("-")&&(i.length===0||o.has(n.flag));)i.push(e[s]),s+=1;let a=i.length===0?1:1+i.length;return{originalTokens:e.slice(t,t+a),value:i.length===0?void 0:i.join(","),consumed:a}}function Se(e,t,n,o){let i=e.get(n);if(i){i.values.push(o.value),i.occurrences+=1;return}e.set(n,{outputIndex:t.length,originalTokens:o.originalTokens,values:[o.value],occurrences:1}),t.push(null)}function Ae(e,t){let n=[],o=[];for(let[i,s]of e){if(!(s.occurrences>=2||t.has(i)&&s.originalTokens.length>2)){o.push({outputIndex:s.outputIndex,tokens:s.originalTokens});continue}let a=`${i}=${s.values.join(",")}`;o.push({outputIndex:s.outputIndex,tokens:[a]}),n.push({from:`${i} (x${s.occurrences})`,to:[a],reason:"list_merge",confidence:"high"})}return{events:n,splices:o}}function Oe(e,t){t.sort((n,o)=>o.outputIndex-n.outputIndex);for(let n of t)e.splice(n.outputIndex,1,...n.tokens)}function Pe(e,t,n=new Set,o=new Set){if(t.size===0)return{argv:[...e],events:[]};let i=[],s=new Map,a=0;for(;a<e.length;){let c=e[a];if(c==="--"){i.push(...e.slice(a));break}if(n.has(c)){a=Ee(e,a,i);continue}let u=Te(c);if(!u||!t.has(u.flag)){i.push(c),a+=1;continue}let p=xe(e,a,u,o);if(p.value===void 0){i.push(c),a+=p.consumed;continue}Se(s,i,u.flag,{originalTokens:p.originalTokens,value:p.value}),a+=p.consumed}let{events:r,splices:l}=Ae(s,o);return Oe(i,l),{argv:i,events:r}}var Y=new Map([["--add",new Set(["command","cmd","path"])],["--remove",new Set(["command","path"])]]);function Ne(e,t){if(e!=="test"||t.length<2)return!1;let n=t[t.length-1],o=t[t.length-2],i=Y.get(o);return i!==void 0&&i.has(n)}function Le(e,t,n){if(t!=="test")return e;let o=[],i=0;for(;i<e.length;){let s=e[i];if(s==="--")return o.push(...e.slice(i)),o;let a=Y.get(s),r=a?e[i+1]:void 0;if(!a||typeof r!="string"||!a.has(r)){o.push(s),i+=1;continue}let l=i+2;for(;l<e.length&&!e[l].startsWith("-");)l+=1;if(l-(i+2)!==1){o.push(s),i+=1;continue}let c=e[i+2],u=`${r}=${c}`;o.push(s,u),n.push({from:`${s} ${r} ${c}`,to:[s,u],reason:"bare_key_value",confidence:"high"}),i+=3}return o}function Me(e,t,n,o){let i=[],s=ke(e);for(let a=0;a<e.length;a+=1){let r=e[a];if(r==="--"){i.push(...e.slice(a));break}let l=s.has(a),c=i[i.length-1];if(r.startsWith("--")){let b=ve(r,t,l);i.push(...b.tokens),b.event&&o.push(b.event);continue}let u=Ce(r,l);if(!u||typeof c=="string"&&c.startsWith("-")&&!c.includes("=")||["search","comments","notes","learnings"].includes(n)||Ne(n,i)){i.push(r);continue}let p=K(u.key,t);if(!p){i.push(r);continue}let g=u.value.startsWith("-")?[`${p.flag}=${u.value}`]:[p.flag,u.value];i.push(...g),o.push({from:r,to:g,reason:"bare_key_value",confidence:p.confidence})}return i}function De(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(n==="--")break;if(n==="--verify"){let o=e[t+1];if(o===void 0||o==="--")throw new h("history attest --verify requires a bundle file.",f.USAGE);e.splice(t,2,`--verify=${o}`)}else(I.has(n)||n==="--output"||n==="--hash-algorithm")&&(t+=1)}}function Fe(e,t){if(!e.some(o=>o==="--help"||o==="-h"))return;let n=new Set(y(t).flatMap(o=>[o.flag,...o.aliases??[],...o.short===void 0?[]:[o.short]]));for(let o=0;o<e.length;o+=1){let i=e[o];if(i==="--")break;i!=="--help"&&i!=="-h"||n.has(e[o-1])&&!C.has(e[o-1])&&(e[o-1]=i)}}function ft(e){let t=[],n=ye(e,t),o=ge(n);(o.length!==n.length||o.some((b,J)=>b!==n[J]))&&t.push({from:n.join(" "),to:[...o],reason:"legacy_extension_action",confidence:"high"});let i=we(o,t),s=U(i);if(s.conflict)throw new h("Provide the item id either positionally or with --id, not both.",f.USAGE);s.changed&&t.push({from:`--id ${s.itemId}`,to:[s.itemId],reason:"item_id_alias",confidence:"high"});let a=fe(s.argv),r=X(s.argv),l=m(r??a??""),c=_e(r??a),u=Me(s.argv,c,l,t),p=Le(u,l,t),g=Pe(p,c.listCanonicalFlags,I,a==="create"?new Set(["--tags"]):new Set);for(let b of g.events)t.push(b);return Fe(g.argv,r??a),r==="history attest"&&De(g.argv),{argv:g.argv,commandName:a,trace:t}}function X(e){let t=q(e),n=t[0]?.trim().toLowerCase(),o=t[1]?.trim().toLowerCase(),i=P(t);return i?i.canonical:(n==="extension"||n==="package"||n==="packages")&&typeof o=="string"&&o.length>0&&!o.startsWith("-")?`${n} ${o}`:n}function mt(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(n==="--")break;if(n==="--type"){let o=e[t+1];if(typeof o=="string"&&o.trim().length>0)return o.trim();continue}if(n.startsWith("--type=")){let o=n.slice(7).trim();if(o.length>0)return 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]="fb625cd9-f8a8-56cf-88ab-abef64051497")}catch{}})();function wt(e){if(e===void 0)return()=>{};let t=e.trim();if(t.length===0)throw new h("--author requires a non-empty value.",f.USAGE,{code:"missing_required_argument",nextSteps:["Pass an explicit author identifier with --author <id>."]});let n=B();k(t);let o=!1;return()=>{o||(o=!0,n===void 0?k(void 0):k(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]="d0e60f7e-e0a8-5ef4-9af7-4a1f102ccb7d")}catch{}})();var d=Object.freeze({clock:"PM_CLOCK",tickMs:"PM_CLOCK_TICK_MS",seed:"PM_SEED"});function x(e,t,n,o){return new h(e,f.USAGE,{code:"invalid_reproducible_process_environment",reason:t,field:n,required:`${d.clock} and ${d.seed}; ${d.tickMs} is optional`,nextSteps:[`Set ${d.clock} to an ISO-8601 instant with Z or a numeric UTC offset and ${d.seed} to a non-empty reproducibility seed.`,`Optionally set ${d.tickMs} to a non-negative integer; it defaults to 1.`,"Unset all three variables to retain normal wall-clock and cryptographic-random behavior."],recovery:{recovery_mode:"compact",provided_fields:o,missing_required_fields:t==="incomplete"?[d.clock,d.seed].filter(i=>!o.includes(i)):void 0}})}function Ve(e){let t=e[d.clock],n=e[d.tickMs],o=e[d.seed],i=[[d.clock,t],[d.tickMs,n],[d.seed,o]].filter(a=>a[1]!==void 0).map(([a])=>a);if(i.length===0)return;if(t===void 0||o===void 0)throw x("Reproducible process execution requires PM_CLOCK and PM_SEED together.","incomplete",t===void 0?d.clock:d.seed,i);if(o.trim().length===0)throw x(`${d.seed} must not be empty.`,"invalid_value",d.seed,i);if(!V(t))throw x(`${d.clock} must be a valid ISO-8601 instant with Z or a numeric UTC offset.`,"invalid_value",d.clock,i);let s=n===void 0?1:Number(n);if(n?.trim().length===0||!Number.isSafeInteger(s)||s<0)throw x(`${d.tickMs} must be a non-negative integer.`,"invalid_value",d.tickMs,i);return D({clock:t,seed:o,tickMs:s})}function $e(e){let t=Ve(e);return t===void 0?n=>n():F(t)}async function Tt(e,t){return $e(e)(t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d5c48881-420f-5673-8696-e770db353cfc")}catch{}})();function Z(e){return e.trim().match(/--[a-z0-9][a-z0-9_-]*/i)?.[0]?.replaceAll("_","-").toLowerCase()}function Ot(e){if(!(!Array.isArray(e)||e.length===0))return v(e)}function Be(e,t){let n=Z(t);if(!n)return;let o=y(e).find(i=>i.flag===n||i.aliases?.includes(n));return o?o.value_type==="boolean"?null:`<${o.value_name??"value"}>`:"<value>"}function Pt(e,t,n){let o=[...e],i=o.indexOf("--"),s=i<0?o.length:i;for(let a of n){let r=Z(a);if(!r||o.slice(0,s).some(u=>u===r||u.startsWith(`${r}=`)))continue;let l=Be(t,r),c=l?[r,l]:[r];o.splice(s,0,...c),s+=c.length}return o.length===e.length?void 0:M(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]="bd9a8d3b-bc6f-5309-a3fb-7e5f41ef9dab")}catch{}})();(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]="a48c9a1f-b959-54a4-a27f-4f662ae7fd31")}catch{}})();var Re={add:["create","append"],fetch:["get"],inspect:["get","health"],log:["history","comments","notes"],ls:["list"],pause:["release"],read:["get"],remove:["delete"],rm:["delete"],show:["get"],start:["start-task"]};function H(e,t){let n=e.trim().toLowerCase(),o=t.trim().toLowerCase();if(o.length===0)return Number.POSITIVE_INFINITY;let i=n.split(" "),s=Re[o]?.indexOf(m(n));if(s!==void 0&&s>=0)return s;if(n===o)return 10;if(i.includes(o))return 11;if(i.some(l=>l.startsWith(o)))return 12;let a=o.length>=5?2:1,r=Number.POSITIVE_INFINITY;for(let l of i){let c=_(l,o,a);c!==null&&(r=Math.min(r,c))}return Number.isFinite(r)?20+r:n.includes(o)?30:Number.POSITIVE_INFINITY}function $t(e,t){return e.map(n=>({path:n,score:H(n,t)})).filter(n=>Number.isFinite(n.score)).sort((n,o)=>n.score!==o.score?n.score-o.score:n.path===o.path?0:n.path<o.path?-1:1).map(n=>n.path)}function Bt(e,t,n){let o=new Set(t),i=S.filter(r=>r.lifecycle==="deprecated").slice().sort((r,l)=>l.alias.length-r.alias.length),s=[],a=e.flatMap(r=>{let l=i.find(u=>r===u.alias||r.startsWith(`${u.alias} `)),c=r;if(l){let u=r.slice(l.alias.length);if(!o.has(`${l.canonical}${u}`))return[];c=`${l.canonical_argv.join(" ")}${u}`}return n!==void 0&&H(r,n)<10&&s.push(c),[c]});return[...new Set(s.length>0?s:a)]}export{Ue as a,Ke as b,ee as c,te as d,Ye as e,Xe as f,G as g,U as h,de as i,q as j,pe as k,T as l,fe as m,dt as n,ge as o,pt as p,Pe as q,Le as r,ft as s,mt as t,wt as u,d as v,Ve as w,$e as x,Tt as y,Ot as z,Be as A,Pt as B,H as C,$t as D,Bt as E};
2
+ //# sourceMappingURL=chunk-KIRHWPZB.js.map
@@ -0,0 +1,6 @@
1
+ import{A as Vo,Bb as si,Cb as Ke,D as Ko,Dc as mi,E as Qo,O as Yo,P as Xo,S as Jo,Sb as ai,Ub as ci,Wb as li,Xb as di,a as pe,b as K,c as Eo,ca as ze,cb as ni,d as So,da as vt,ea as Zo,fa as ei,ga as ti,ha as ri,k as bt,ka as oi,la as Et,ma as St,n as Go,na as Ve,r as $o,ta as ii,v as ye,w as Bo,x as Wo,y as We,z as zo,zc as ui}from"./chunk-ATB4ZZBQ.js";import{$h as lo,$i as wo,$l as Ao,Ai as ho,Al as ko,Am as Mo,Bh as to,Bl as xo,C as O,Ch as ro,Dc as A,Dg as Jr,Dh as oo,E as lt,Eg as Me,Eh as io,Em as Fo,Fg as Fe,Hi as po,Hn as qo,Ic as qr,Im as Do,Jc as dt,Jm as Po,Kh as V,Ki as yo,Km as Ue,L as se,Lh as no,Lm as Ho,M as Re,Mc as Y,Mm as Ge,Nc as Nr,Nh as ht,Ni as He,Nm as $e,O as Ce,Oc as ae,Oh as de,Om as Be,P as Lr,Ph as ue,Pm as Lo,Qf as P,Qh as pt,Rh as H,Sh as so,Tb as D,Th as me,Tm as Oo,Ua as U,Uh as ao,Ui as Le,Um as wt,Wh as yt,Wi as Oe,Xi as go,Xl as Ro,Yi as fe,Yl as Co,Zh as co,Zi as he,_h as Pe,_i as _o,_l as _t,ab as k,ag as x,ai as uo,aj as je,bg as mt,bl as Io,bn as jo,cb as jr,cd as X,cj as bo,dj as vo,eb as z,ed as Ur,ff as I,gb as Ae,ia as Or,if as Te,ih as De,jf as Vr,jh as Zr,kd as Gr,kf as Kr,kg as j,kh as le,km as qe,ko as No,lf as ut,lo as Uo,mf as Qr,mg as J,na as f,om as Ne,pa as h,pd as $r,qd as Br,qi as L,si as q,ud as Wr,uh as ft,ui as mo,vi as Z,vn as ee,wd as zr,wf as Yr,wh as eo,wi as gt,x as xe,xg as Xr,xi as fo,z as Hr,zg as ce,zm as To}from"./chunk-D4G43LBV.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]="c08374a3-4ac6-5f9a-be69-0ac9839bba39")}catch{}})();var jn="PmCliError";function qn(e){if(!Number.isFinite(e))throw new TypeError("createPmCliExpectedError options.exitCode must be a finite number");let t=Math.trunc(e);if(t<=f.SUCCESS)throw new TypeError("createPmCliExpectedError options.exitCode must be a positive exit code");return t}function fi(e,t={}){if(typeof e!="string"||e.trim().length===0)throw new TypeError("createPmCliExpectedError message must be a non-empty string");let r=new h(e,qn(t.exitCode??f.USAGE),t.context??{});return"cause"in t&&Object.defineProperty(r,"cause",{value:t.cause,enumerable:!1,configurable:!0,writable:!0}),r}function Oc(e){if(!(e instanceof Error)||e.name!==jn)return!1;let t=e;return typeof t.exitCode=="number"&&Number.isFinite(t.exitCode)}import pi from"node:fs/promises";import yi 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]="f3603dce-8aeb-5409-80f4-ad3367e35eb9")}catch{}})();function Nn(e,t,r){let o=new Set,i=[];for(let n of e){let s=n.trim();if(s.length===0||o.has(s))continue;o.add(s);let a=t.get(s);if(a===void 0){i.push({id:s,entries:0,selected:!1,skip_reason:"no_stream"});continue}if(a.entries<=r){i.push({id:s,entries:a.entries,selected:!1,skip_reason:"already_compact"});continue}i.push({id:s,entries:a.entries,selected:!0,skip_reason:null})}return i}function Un(e,t){let r=[...e].sort((i,n)=>n.entries-i.entries||i.id.localeCompare(n.id)),o=[];for(let i of r){if(t.scope==="closed"&&i.bucket!=="closed"){o.push({id:i.id,entries:i.entries,selected:!1,skip_reason:"scope_mismatch"});continue}if(i.entries<=t.minEntries){o.push({id:i.id,entries:i.entries,selected:!1,skip_reason:"already_compact"});continue}if(t.allOver!==void 0&&i.entries<=t.allOver){o.push({id:i.id,entries:i.entries,selected:!1,skip_reason:"below_threshold"});continue}o.push({id:i.id,entries:i.entries,selected:!0,skip_reason:null})}return o}function hi(e,t){if(t.ids!==void 0&&t.ids.length>0){let r=new Map(e.map(o=>[o.id,o]));return Nn(t.ids,r,t.minEntries)}return Un(e,t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c6009e5f-840e-5e3a-b8b9-6e9d42d63410")}catch{}})();function Gn(e,t){if(e===void 0)return{kind:"default",raw:null,compactCount:t.length,retainedCount:0};let r=e.trim();if(r.length===0)throw new h("history-compact --before requires a non-empty value.",f.USAGE);if(/^\d+$/.test(r)){let n=Number.parseInt(r,10),s=q(t);if(!Number.isSafeInteger(n)||n<s+1||n>s+t.length+1)throw new h(`history-compact --before version must be between ${s+1} and ${s+t.length+1}.`,f.USAGE);let a=n-s-1;return{kind:"version",raw:r,compactCount:a,retainedCount:t.length-a}}let o=Date.parse(r);if(!Number.isFinite(o))throw new h(`Invalid history-compact --before value "${e}". Use a version number or ISO timestamp.`,f.USAGE);let i=0;for(let[n,s]of t.entries()){let a=Date.parse(s.ts);if(!Number.isFinite(a))throw new h(`History for this item contains invalid timestamp at entry ${n+1}.`,f.GENERIC_FAILURE);if(a>=o)break;i+=1}return{kind:"timestamp",raw:r,compactCount:i,retainedCount:t.length-i}}function $n(e,t){let r=de(),o=de();for(let i=0;i<e.length;i+=1){let n=e[i];r=Z(r,n.patch,i+1,n.op),i+1===t&&(o=structuredClone(r))}return{checkpoint:o,finalReplay:r}}function Bn(e,t){if(!e)return{loadedItem:null,currentItemRawBeforeLock:null,matchedChainBefore:null};let r=t[t.length-1];return{loadedItem:e,currentItemRawBeforeLock:e.raw,matchedChainBefore:eo.some(o=>(r.item_hash_version===void 0||r.item_hash_version===o)&&pt(me(e.document),o,x(r.hash_algorithm)).includes(r.after_hash))}}function Wn(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:t.raw===null?`history-compact compacted full stream (${t.compactCount} entr${t.compactCount===1?"y":"ies"}).`:`history-compact compacted ${t.compactCount} entr${t.compactCount===1?"y":"ies"} before ${t.raw}.`}function zn(e){return e.raw===null?`history-compact baseline snapshot after compacting ${e.compactCount} entr${e.compactCount===1?"y":"ies"}.`:`history-compact baseline snapshot before ${e.raw}.`}function Vn(e){if(!e.changed)return{rewrittenEntries:e.historyEntries,baselineEntryAdded:!1,auditEntryAdded:!1};let{checkpoint:t,finalReplay:r}=$n(e.historyEntries,e.boundary.compactCount),o=e.historyEntries.slice(e.boundary.compactCount),i=q(e.historyEntries,!0),n=e.historyEntries[e.boundary.compactCount-1],s=V({hashAlgorithm:x(n.hash_algorithm),nowIso:e.historyEntries[e.boundary.compactCount-1].ts,author:e.author,op:"history_compact_baseline",before:H(de()),after:H(t),message:zn(e.boundary),context:{history_compaction:{contract_version:1,version_offset:i===null?null:i+e.boundary.compactCount-1,checkpoint_timestamp_semantics:"last_compacted_entry",pruned_entry_count:e.boundary.compactCount,pruned_stream_digest:to(e.historyEntries.slice(0,e.boundary.compactCount)),retained_proof:"stream_digest_and_checkpoint",limitation:"individual_pruned_entries_require_pre_compaction_stream"}}}),a=[ro({...s,before_hash:pt(de(),n.item_hash_version??1,x(n.hash_algorithm))[0],after_hash:n.after_hash,item_hash_version:n.item_hash_version}),...o];return e.dryRun||a.push(V({nowIso:I(),author:e.author,op:"history_compact",before:H(r),after:H(r),message:Wn(e.options,e.boundary)})),{rewrittenEntries:a,baselineEntryAdded:!0,auditEntryAdded:!e.dryRun}}async function Kn(e,t,r){let{pmRoot:o,settings:i,typeRegistry:n}=await pe(r.path),s=await K(o,e,i,n.type_to_folder);return Ke({pmRoot:o,subject:s,settings:i,typeRegistry:n,operation:"history-compact",options:t,transform:a=>Qn(s,t,a)})}function Qn(e,t,r){let o=e.historyPath,i=r.entries,n=r.verification;if(!n.ok)throw new h(`history-compact requires a valid history chain (${n.errors.join(", ")}). Run pm history-repair ${e.id} first.`,f.CONFLICT);let s=Gn(t.before,i),a=s.compactCount>0,c=!!t.dryRun,d=r.author,l=[];a||l.push("history_compact_noop_before_boundary");let u=Bn(r.loadedItem,i);u.matchedChainBefore===!1&&l.push("history_compact_item_chain_mismatch");let{rewrittenEntries:m,baselineEntryAdded:p,auditEntryAdded:g}=Vn({historyEntries:i,boundary:s,changed:a,dryRun:c,author:d,options:t}),_=q(i,!0),y=s.retainedCount>0&&_!==null?_+s.compactCount+1:null;return{changed:a,rewrittenEntries:m,report:({verification:w,warnings:v})=>({id:e.id,dry_run:c,changed:a,compact_boundary:{kind:s.kind,before:s.raw,entries_compacted:s.compactCount,entries_retained:s.retainedCount,first_retained_entry:y},history:{path:o,entries_scanned:i.length,entries_after:m.length,baseline_entry_added:p,audit_entry_added:g,verify_ok:w.ok,verify_errors:w.errors},item:{exists:e.located!==null,path:e.located?.itemPath??null,matched_chain_before:u.matchedChainBefore},warnings:[...new Set([...l,...v])].sort((E,b)=>E.localeCompare(b)),generated_at:I()})}}var Yn=3;function Xn(e){for(let r of["allOver","minEntries"]){let o=e[r];if(o!==void 0&&(!Number.isSafeInteger(o)||o<0))throw new h(`history-compact ${r} must be a non-negative safe integer.`,f.USAGE)}let t=Co(e.ids);if(e.ids!==void 0&&t==="")throw new h("history-compact ids requires at least one valid item ID.",f.USAGE,{code:"bulk_ids_input_empty",required:"Provide one or more string or finite numeric IDs; non-finite and unsupported selector values are rejected."});return{...e,ids:t===void 0?void 0:Ro(t)}}function nl(e,t){let r=t.ids!==void 0&&t.ids.length>0,o=t.allOver!==void 0||t.scope!==void 0;if((e!==void 0?1:0)+(r?1:0)+(o?1:0)==0)throw new h("history-compact: provide an item <id>, or a bulk selector (--ids, --all-over <N>, --closed, or --all-streams).",f.USAGE);if(e!==void 0&&(r||o))throw new h("history-compact: <id> and bulk selectors (--ids/--all-over/--closed/--all-streams) are mutually exclusive; pass one item id, or use bulk mode without a positional id.",f.USAGE);if(r&&o)throw new h("history-compact: --ids is mutually exclusive with --all-over/--closed/--all-streams; pass an explicit id list or a scan selector, not both.",f.USAGE)}function Jn(e){let t=0;for(let r of e.split(/\r?\n/))r.trim().length>0&&(t+=1);return t}async function Zn(e){let t=j(e.settings.schema),r=We(t),o=await je(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema),i=new Map(o.map(d=>[d.id,r.classify(d.status)])),n=yi.join(e.pmRoot,"history"),s=[],a=[];if(!await xe(n))return{candidates:s,preselectionErrors:a};let c=(await pi.readdir(n)).filter(d=>d.endsWith(".jsonl")).sort((d,l)=>d.localeCompare(l));for(let d of c){let l=yi.join(n,d),u=d.slice(0,-6);try{let m=await pi.readFile(l,"utf8");await ae({path:l,scope:"project"}),s.push({id:u,entries:Jn(m),bucket:i.get(u)??null})}catch(m){a.push({id:u,outcome:"errored",entries_before:0,entries_after:null,skip_reason:null,changed:!1,error:m instanceof Error?m.message:String(m)})}}return{candidates:s,preselectionErrors:a}}async function es(e){if(!e.row.selected)return{selected:!1,compacted:!1,errored:!1,result:{id:e.row.id,outcome:"skipped",entries_before:e.row.entries,entries_after:null,skip_reason:e.row.skip_reason,changed:!1,error:null}};try{let t=await Kn(e.row.id,{dryRun:e.dryRun,author:e.options.author,message:e.options.message,force:e.options.force},e.global);return{selected:!0,compacted:!0,errored:!1,result:{id:e.row.id,outcome:"compacted",entries_before:e.row.entries,entries_after:t.history.entries_after,skip_reason:null,changed:t.changed,error:null}}}catch(t){return{selected:!0,compacted:!1,errored:!0,result:{id:e.row.id,outcome:"errored",entries_before:e.row.entries,entries_after:null,skip_reason:null,changed:!1,error:t instanceof Error?t.message:String(t)}}}}async function sl(e,t){let r=Xn(e),{pmRoot:o,settings:i,typeRegistry:n}=await pe(t.path),{candidates:s,preselectionErrors:a}=await Zn({pmRoot:o,settings:i,typeToFolder:n.type_to_folder}),c=r.ids!==void 0&&r.ids.length>0?"ids":"scan",d=e.minEntries??Yn,l=i.history.compact_policy,u=c==="scan"&&e.allOver===void 0&&l.enabled,m=e.allOver??(u?l.max_entries:void 0),p=hi(s,{ids:r.ids,scope:e.scope,minEntries:d,allOver:m}),g=!!e.dryRun,_=[...a],y={streams_considered:s.length+a.length,selected:0,items_compacted:0,items_skipped:0,items_errored:a.length};for(let w of p){let v=await es({row:w,options:r,dryRun:g,global:t});if(_.push(v.result),!v.selected){y.items_skipped+=1;continue}y.selected+=1,v.compacted&&(y.items_compacted+=1),v.errored&&(y.items_errored+=1)}return{bulk:!0,dry_run:g,mode:c,scope:e.scope??null,criteria:{min_entries:d,all_over:m??null,policy_threshold_applied:u},totals:y,results:_,generated_at:I()}}import It 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]="ebf3254f-1fed-5972-b91a-b8ff101675f4")}catch{}})();function kt(e){return Array.isArray(e)?e:typeof e=="string"?[e]:[]}function _i(e){let t=[];for(let r of e)t.includes(r)||t.push(r);return t.includes("g")||t.push("g"),t.join("")}function wi(e){let t=e.trim();if(t.length===0)throw new h("history-redact --regex requires a non-empty pattern.",f.USAGE);let r=t,o="g";if(t.startsWith("/")&&t.length>1){let i=t.lastIndexOf("/");i>0&&(r=t.slice(1,i),o=_i(t.slice(i+1)))}if(r.length===0)throw new h("history-redact --regex cannot use an empty pattern.",f.USAGE);try{new RegExp(r,o)}catch{throw new h("Invalid --regex value; provide a valid JavaScript regular expression.",f.USAGE)}return{kind:"regex",source:r,flags:o}}function bi(e,t){let r=[...new Set(kt(e).map(n=>n.trim()))].filter(n=>n.length>0).map(n=>({kind:"literal",value:n})),o=[...new Set(kt(t).map(n=>n.trim()))].filter(n=>n.length>0).map(wi),i=[...r,...o];if(i.length===0)throw new h("history-redact requires at least one matcher via --literal or --regex.",f.USAGE,{code:"missing_required_argument",required:"Provide --literal <value> and/or --regex <pattern>.",examples:['pm history-redact pm-a1b2 --literal "[redacted_path_prefix]/private"','pm history-redact pm-a1b2 --regex "/192\\\\.168\\\\.[0-9.]+/g" --replacement "[scrubbed_ip]"']});return i}function vi(e,t,r){if(t.length===0)return{value:e,replacements:0};let o=0,i=0;for(;o<=e.length;){let n=e.indexOf(t,o);if(n===-1)break;i+=1,o=n+Math.max(1,t.length)}return i===0?{value:e,replacements:0}:{value:e.split(t).join(r),replacements:i}}function Ei(e,t,r){let o=new RegExp(t.source,t.flags),i=[...e.matchAll(o)];return i.length===0?{value:e,replacements:0}:{value:e.replace(o,r),replacements:i.length}}function xt(e,t,r){let o=e,i=0;for(let n of t){let s=n.kind==="literal"?vi(o,n.value,r):Ei(o,n,r);o=s.value,i+=s.replacements}return{value:o,replacements:i}}function ge(e,t,r){if(typeof e=="string")return xt(e,t,r);if(Array.isArray(e)){let o=0;return{value:e.map(i=>{let n=ge(i,t,r);return o+=n.replacements,n.value}),replacements:o}}if(typeof e=="object"&&e!==null){let o=0,i={};for(let[n,s]of Object.entries(e)){let a=ge(s,t,r);o+=a.replacements,i[n]=a.value}return{value:i,replacements:o}}return{value:e,replacements:0}}function gi(e,t,r){let o=0;return{patch:e.map(i=>{if(!Object.prototype.hasOwnProperty.call(i,"value"))return i;let n=ge(i.value,t,r);return o+=n.replacements,n.replacements>0?{...i,value:n.value}:i}),replacements:o}}function ts(e){let t=structuredClone(ht),r=0,o=0;for(let i=0;i<e.length;i+=1){let n=e[i];ue(t,void 0,x(n.hash_algorithm))!==n.before_hash&&(r+=1),t=Z(t,n.patch,i+1,n.op),ue(t,void 0,x(n.hash_algorithm))!==n.after_hash&&(o+=1)}return{hashMismatchesBefore:r,hashMismatchesAfter:o,finalDocument:t}}function rs(e,t,r){let o=0,i=!1,n=!1,s=e.message;if(typeof e.message=="string"){let d=xt(e.message,t,r);s=d.value,o+=d.replacements,d.replacements>0&&(i=!0)}let a=gi(e.patch,t,r);o+=a.replacements,i||=a.replacements>0;let c=e.reanchor_evidence?.map(d=>{let l=d.patch?gi(d.patch,t,r):{patch:void 0,replacements:0},u=d.record?ge(d.record,t,r):{value:void 0,replacements:0};o+=l.replacements,o+=u.replacements;let m=l.replacements>0||u.replacements>0;if(i||=m,!m)return d;n=!0;let{patch:p,record:g,record_hash:_,record_hash_version:y,...w}=d;return l.replacements>0?w:{...w,patch:d.patch}});return{entry:{...e,message:s,patch:a.patch,...c?{reanchor_evidence:c}:{}},replacements:o,changed:i,reanchorEvidenceRedacted:n}}function os(e,t,r){let o=structuredClone(ht),i=0,n=0,s=[];for(let a=0;a<e.length;a+=1){let c=e[a],d=oo(c);if(!d.ok)throw new h(`history-redact refuses invalid immutable record ${a+1} (${d.error}).`,f.GENERIC_FAILURE);let l=rs(c,t,r);n+=l.replacements,l.changed&&(i+=1);let u=ue(o,void 0,x(c.hash_algorithm));o=Z(o,l.entry.patch,a+1,l.entry.op);let m=ue(o,void 0,x(c.hash_algorithm));s.push(io(c,{...l.entry,before_hash:u,after_hash:m},{retainPriorRecord:l.changed,retainPriorRecordHash:!l.changed}))}return{entries:s,finalDocument:o,entriesChanged:i,replacements:n}}function Si(e){return Object.keys(e.metadata).length>0}function is(e){if(!Si(e.finalDocument))return{raw:null,path:null,document:null};let t=Fe(H(e.finalDocument),{schema:e.settings.schema});if(t.metadata.id!==e.subject.id)throw new h("history-redact would change the item id; narrow your patterns.",f.USAGE);return{document:t,path:z(e.pmRoot,t.metadata.type,e.subject.id,"toon",e.typeToFolder),raw:Me(t,{format:"toon",schema:e.settings.schema})}}function ns(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:`history-redact replaced ${t.replacements} match(es) across ${t.entriesChanged} entr${t.entriesChanged===1?"y":"ies"}.`}function ss(e){let t=[...e.rewritten.entries];if(e.dryRun||!e.changed)return{rewrittenEntries:t,auditEntryAdded:!1};let r=e.nextItemDocument??H(e.rewritten.finalDocument);return t.push(V({nowIso:I(),author:e.author,op:"history_redact",before:r,after:r,message:e.message})),{rewrittenEntries:t,auditEntryAdded:!0}}function as(e){let t=[];return{applyRewrite:async({historyRawUnderLock:r})=>{let o=await Le(e.pmRoot,e.author),i=new Set;e.currentItem.path&&i.add(e.currentItem.path),e.nextItem.path&&i.add(e.nextItem.path);let n=new Map;e.currentItem.path&&e.currentItem.raw!==null&&n.set(e.currentItem.path,e.currentItem.raw);let s=()=>{};try{try{e.nextItem.path&&e.nextItem.raw!==null&&e.nextItem.raw!==e.currentItem.raw&&await O(e.nextItem.path,e.nextItem.raw),e.currentItem.path&&(!e.nextItem.path||e.nextItem.path!==e.currentItem.path)&&await It.rm(e.currentItem.path,{force:!0}),await O(e.subject.historyPath,co(e.rewrittenEntries))}catch(c){try{await cs(e.subject.historyPath,r,i,n)}finally{await ft(e.subject.historyPath)}throw c}await ft(e.subject.historyPath);let a=e.nextItem.path??e.currentItem.path;a&&(t=await Oe({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:e.typeRegistry.type_to_folder,schema:e.settings.schema,itemPath:a,...e.currentItem.path?{previousItemPath:e.currentItem.path}:{},document:e.nextItem.document}))}finally{await o().catch(a=>{s=()=>{throw a}})}s()},afterWrite:async()=>[...t,...await ls(e.subject.historyPath,[e.nextItem.path,e.currentItem.path])]}}async function cs(e,t,r,o){t===null?await It.rm(e,{force:!0}):await O(e,t);for(let i of r){let n=o.get(i);n===void 0?await It.rm(i,{force:!0}):await O(i,n)}}async function ls(e,t){let r=[],o=new Set(t.filter(i=>i!==null));for(let i of o)r.push(...await Y({path:i,scope:"project",op:"history_redact"}));return r.push(...await Y({path:e,scope:"project",op:"history_redact:history"})),r}async function kl(e,t,r){let{pmRoot:o,settings:i,typeRegistry:n}=await pe(r.path),s=t.replacement??"",a=s.length===0,c=a?"[redacted]":s,d=bi(t.literal,t.regex),l=await K(o,e,i,n.type_to_folder);return Ke({pmRoot:o,subject:l,settings:i,typeRegistry:n,operation:"history-redact",options:t,transform:u=>ds({pmRoot:o,subject:l,settings:i,typeRegistry:n,options:t,rules:d,replacement:c,replacementIsDefault:a},u)})}function ds(e,t){let{pmRoot:r,subject:o,settings:i,typeRegistry:n,options:s,rules:a,replacement:c,replacementIsDefault:d}=e,l=t.entries,u=ts(l),m=os(l,a,c),p=u.hashMismatchesBefore+u.hashMismatchesAfter,g=!!s.dryRun,_=m.replacements>0,y=[];p>0&&y.push(`history_redact_preexisting_hash_mismatches:${p}`),_||y.push("history_redact_no_matches");let w={raw:t.loadedItem?.raw??null,path:o.located?.itemPath??null,document:t.loadedItem?.document??null},v=is({pmRoot:r,subject:o,settings:i,typeToFolder:n.type_to_folder,finalDocument:m.finalDocument}),E=(w.path??null)!==(v.path??null)||(w.raw??null)!==(v.raw??null),b=t.author,R=ns(s,m),{rewrittenEntries:S,auditEntryAdded:C}=ss({rewritten:m,dryRun:g,changed:_,nextItemDocument:v.document,author:b,message:R});return{changed:_,rewrittenEntries:S,...as({pmRoot:r,subject:o,settings:i,typeRegistry:n,currentItem:w,nextItem:v,author:b,rewrittenEntries:S}),report:({verification:Ie,warnings:B})=>({id:o.id,dry_run:g,changed:_,patterns:{literal_count:a.filter(W=>W.kind==="literal").length,regex_count:a.filter(W=>W.kind==="regex").length,total_count:a.length,replacement_is_default:d},history:{path:o.historyPath,entries_scanned:l.length,entries_changed:m.entriesChanged,replacements:m.replacements,hash_mismatches_before:u.hashMismatchesBefore,hash_mismatches_after:u.hashMismatchesAfter,preexisting_hash_mismatches:p,audit_entry_added:C,verify_ok:Ie.ok,verify_errors:Ie.errors},item:{existed_before:w.path!==null,exists_after:v.path!==null,path_before:w.path,path_after:v.path,changed:E},warnings:[...new Set([...y,...B])].sort((W,ke)=>W.localeCompare(ke)),generated_at:I()})}}var xl={applyLiteralRule:vi,applyRegexRule:Ei,buildRedactionRules:bi,hasItemMetadata:Si,normalizeRegexFlags:_i,normalizeStringArrayInput:kt,parseRegexRule:wi,redactStringValue:xt,redactUnknownValue:ge};(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]="63c96190-0df9-5803-aa61-b973493a7277")}catch{}})();var Rt={format:"pm-history-attestation",version:1,stream_hash:"exact_file_bytes",rollup_hash:"stable_json_without_workspace_digest",ordering:"stream_id_code_unit_ascending",consistency:"per_stream_snapshot_with_change_detection",trust:"independently_retained_bundle"};import{createHash as us}from"node:crypto";import{isUtf8 as ms}from"node:buffer";import _e from"node:fs/promises";import Ct 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]="a049f799-3807-59b5-96de-51e900798779")}catch{}})();async function Ii(e){try{return(await _e.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort()}catch(t){if(Hr(t))return[];throw t}}function fs(e,t,r,o){let i=t.at(-1),n;for(let c=t.length-1;c>=0;c-=1)if(["history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","merge_reconcile"].includes(t[c].op)){n=t[c];break}let s=t[0]?.context?.history_compaction,a=typeof s=="object"&&s!==null&&"pruned_stream_digest"in s&&typeof s.pruned_stream_digest=="string"?s.pruned_stream_digest:null;return{id:e,entries:t.length,bytes:r,stream_digest:o,latest_after_hash:i?.after_hash??null,latest_record_hash:i?.record_hash??null,latest_hash_algorithm:i?x(i.hash_algorithm):null,rewrite_count:t.reduce((c,d)=>c+(d.reanchor_evidence?.length??0),0),checkpoint_digest:a,last_maintenance:n?{op:n.op,ts:n.ts,record_hash:n.record_hash??null}:null}}function hs(e,t,r){try{if(!/^[A-Za-z0-9_-]+$/u.test(e)||!ms(t))return null;let o=[];for(let i of t.toString("utf8").split(/\r?\n/u)){if(!i.trim())continue;let n=JSON.parse(i);if(typeof n!="object"||n===null||Array.isArray(n))return null;let s=n;if(![s.op,s.author,s.ts,s.before_hash,s.after_hash].every(a=>typeof a=="string")||!Array.isArray(s.patch))return null;o.push(s)}return yt(o).ok?fs(e,o,t.length,r):null}catch{return null}}async function At(e,t){if(!(await _e.stat(e)).isDirectory())throw new TypeError("attestation tracker root must be a directory");let r=Ct.join(e,"history"),o=await Ii(r),i=new Map,n=[];for(let s of o){let a=s.slice(0,-6),c={id:a,digest:null,stream:null};n.push(c);let d=Ct.join(r,s);try{let l=await _e.lstat(d);if(i.set(s,D([l.ino,l.size,l.mtimeMs,l.ctimeMs])),!l.isFile())continue;let u=await _e.readFile(d);c.digest=us(t).update(u).digest("hex"),c.stream=hs(a,u,c.digest)}catch{}}if(D(o)!==D(await Ii(r)))throw new TypeError("attestation history inventory changed during read; retry");for(let[s,a]of i){let c=await _e.lstat(Ct.join(r,s));if(a!==D([c.ino,c.size,c.mtimeMs,c.ctimeMs]))throw new TypeError("attestation history stream changed during read; retry")}return 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]="54d3c0f4-e663-5e31-aa4e-45ea2f6aaf75")}catch{}})();function Tt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Mt(e,t){return Object.keys(e).length===t.length&&t.every(r=>Object.hasOwn(e,r))}function te(e,t){return typeof e=="string"&&(t==="sha256"?/^[a-f0-9]{64}$/u:/^[a-f0-9]{128}$/u).test(e)}function ps(e){return e.entries===0?[e.latest_hash_algorithm,e.latest_after_hash,e.latest_record_hash,e.checkpoint_digest,e.last_maintenance].every(t=>t===null)&&e.rewrite_count===0:e.latest_hash_algorithm!=="sha256"&&e.latest_hash_algorithm!=="sha512"?!1:te(e.latest_after_hash,e.latest_hash_algorithm)&&(e.latest_record_hash===null||te(e.latest_record_hash,e.latest_hash_algorithm))}function ys(e){return e===null?!0:!Tt(e)||!Mt(e,["op","ts","record_hash"])?!1:typeof e.op=="string"&&["history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","merge_reconcile"].includes(e.op)&&typeof e.ts=="string"&&Te(e.ts)&&(e.record_hash===null||te(e.record_hash,"sha256")||te(e.record_hash,"sha512"))}function gs(e,t){return!Tt(e)||!Mt(e,["id","entries","bytes","stream_digest","latest_after_hash","latest_record_hash","latest_hash_algorithm","rewrite_count","checkpoint_digest","last_maintenance"])?!1:typeof e.id=="string"&&/^[A-Za-z0-9_-]+$/u.test(e.id)&&[e.entries,e.bytes,e.rewrite_count].every(r=>typeof r=="number"&&Number.isSafeInteger(r)&&r>=0)&&te(e.stream_digest,t)&&ps(e)&&(e.checkpoint_digest===null||te(e.checkpoint_digest,"sha256"))&&ys(e.last_maintenance)}function ki(e){if(!Tt(e)||!Mt(e,["format","version","hash_algorithm","generated_at","streams","workspace_digest"]))throw new TypeError("Invalid history attestation bundle");if(e.format!==Rt.format||e.version!==1||typeof e.generated_at!="string"||!Te(e.generated_at)||!Array.isArray(e.streams)||e.hash_algorithm!=="sha256"&&e.hash_algorithm!=="sha512")throw new TypeError("Invalid history attestation format");let t=e.hash_algorithm,r;for(let n of e.streams){if(!gs(n,t))throw new TypeError("Invalid history attestation stream");let s=n.id;if(r!==void 0&&s<=r)throw new TypeError("Invalid history attestation stream order");r=s}let{workspace_digest:o,...i}=e;if(mt(D(i),t)!==o)throw new TypeError("History attestation rollup mismatch");return e}async function xi(e={}){let t=x(e.hashAlgorithm),r=e.generatedAt??I();if(!Te(r))throw new TypeError("Invalid history attestation timestamp");let o=await At(k(e.cwd??process.cwd(),e.pmRoot),t),i=o.filter(s=>s.stream===null);if(i.length>0)throw new TypeError(`Cannot export history attestation: invalid streams ${i.map(s=>s.id).join(", ")}`);let n={format:Rt.format,version:1,hash_algorithm:t,generated_at:r,streams:o.map(s=>s.stream)};return ki({...n,workspace_digest:mt(D(n),t)})}async function Ri(e,t={}){let r=ki(e),o=await At(k(t.cwd??process.cwd(),t.pmRoot),r.hash_algorithm),i=new Map(o.map(l=>[l.id,l])),n=new Map(r.streams.map(l=>[l.id,l])),s=r.streams.filter(l=>!i.has(l.id)).map(l=>l.id),a=o.filter(l=>!n.has(l.id)).map(l=>l.id),c=o.filter(l=>l.stream===null).map(l=>l.id),d=[];for(let l of r.streams){let u=i.get(l.id);u&&(u.digest!==l.stream_digest||D(u.stream)!==D(l))&&d.push({id:l.id,before_digest:l.stream_digest,after_digest:u.digest,last_maintenance:u.stream?.last_maintenance??null})}return{ok:s.length+a.length+c.length+d.length===0,workspace_digest:r.workspace_digest,streams_checked:o.length,changed_streams:d.map(l=>l.id),missing_streams:s,added_streams:a,invalid_streams:c,transitions:d}}import Ci 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]="3bca4afb-f1cc-5627-a377-b30e8005a284")}catch{}})();async function Xl(e,t){for(let o of["verify","output","hashAlgorithm"]){let i=e[o];if(!(o==="verify"&&typeof i=="object"&&i!==null)&&i!==void 0&&(typeof i!="string"||i.trim().length===0))throw new h(`history attest ${o} requires a nonempty string.`,f.USAGE)}if(e.verify!==void 0){if(e.output!==void 0||e.hashAlgorithm!==void 0)throw new h("history attest --verify cannot be combined with --output or --hash-algorithm",f.USAGE);let o;try{o=typeof e.verify=="string"?JSON.parse(await Ci.readFile(e.verify,"utf8")):e.verify}catch{throw new h("Cannot read history attestation proof. Provide --verify with a readable JSON proof file.",f.USAGE)}return Ri(o,{pmRoot:t.path})}let r=await xi({pmRoot:t.path,hashAlgorithm:x(e.hashAlgorithm)});if(e.output===void 0)return r;try{await Ci.writeFile(e.output,`${JSON.stringify(r,null,2)}
2
+ `,{flag:"wx",mode:384})}catch{throw new h("Cannot create history attestation proof. Choose --output with a new filename in a writable directory; existing files are never overwritten.",f.USAGE)}return{output:e.output,workspace_digest:r.workspace_digest,streams:r.streams.length}}import _s from"fast-json-patch";import Ft 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]="ebfa0c5e-461b-5078-8272-69086e84b4dc")}catch{}})();async function Ai(e,t,r){let o=await _o(e,{schema:t.schema});return o.error===null?{raw:o.raw,document:o.document}:{raw:o.raw,document:Ti(r),recovered:!0}}function ws(e,t){return mo(e,t,{errorSubject:"restore",allowFutureTimestamp:!0})}function Ti(e){let t=gt(e,e.length-1);return Object.keys(t.metadata).length===0?{metadata:{},body:t.body}:Fe(H(t))}async function bs(e,t,r,o){let i=await K(e,t,r,o),n=i.located?await He({pmRoot:e,settings:r,itemId:i.id,commandLabel:"restore"}):{warnings:[]};return{...i,historyPolicyWarnings:n.warnings}}function vs(e,t){let r=me(e),o=me(t),i=_s.compare(r,o),n=new Set;for(let s of i){if(s.path==="/body"||s.path.startsWith("/body/")){n.add("body");continue}let a=s.path.replace(/^\/(?:metadata|front_matter)\/?/,"").split("/")[0];n.add(a.replaceAll("~1","/").replaceAll("~0","~"))}return Array.from(n).sort((s,a)=>s.localeCompare(a))}async function Es(e){let t=await si({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItemRawBeforeLock,operation:"restore",readItem:r=>Ai(r,e.settings,e.history)});return{loadedItemUnderLock:t.loadedItemUnderLock,existingItemPath:t.locatedUnderLock?.itemPath??null}}function Ss(e,t){return e?{document:e.document,originalRaw:e.raw}:{document:Ti(t),originalRaw:null}}function Is(e){let t=e.document.metadata.assignee?.trim();if(!(t&&t!==e.author&&!e.force))return[];if(e.enforcement==="strict")throw new h(`Item ${e.resolvedId} is assigned to ${t}. Use --force to override.`,f.CONFLICT);return e.enforcement==="warn"?[`ownership_warning:assignee_conflict:${e.resolvedId}:${t}`]:[]}async function ks(e){if(e.existingItemPath&&e.resolvedOriginalRaw!==null&&e.restoredItemPath!==e.existingItemPath){await O(e.existingItemPath,e.resolvedOriginalRaw),await Ft.rm(e.restoredItemPath,{force:!0});return}if(e.existingItemPath&&e.resolvedOriginalRaw!==null){await O(e.existingItemPath,e.resolvedOriginalRaw);return}await Ft.rm(e.restoredItemPath,{force:!0})}async function xs(e){return[...await Y({path:e.restoredItemPath,scope:"project",op:"restore",item_id:e.after.metadata.id,item_type:e.after.metadata.type,before:e.before,after:e.after,changed_fields:["restored"]}),...await Y({path:e.historyPath,scope:"project",op:"restore:history",item_id:e.after.metadata.id,item_type:e.after.metadata.type,before:e.before,after:e.after,changed_fields:["restored"]})]}async function md(e,t,r,o){let i=k(process.cwd(),o.path);await P(i);let n=await L(i),s=U(n,A()),a=await bs(i,e,n,s.type_to_folder),c=a.id,{raw:d,entries:l}=await Zr(a.historyPath,c);if(l.length===0)throw new h(`No history exists for ${c}; restore is unavailable.`,f.NOT_FOUND);let u=ws(t,l),m=fo(gt(l,u.historyIndex),u),p=so(m,{schema:n.schema});if(p.metadata.id!==c)throw new h(`Restore target resolved to item ${p.metadata.id}, expected ${c}.`,f.GENERIC_FAILURE);let g=(a.located?await Ai(a.located,n,l):null)?.raw??null,_=De(r.author,n.author_default),y=await Qr(i,c,n.locks.ttl_seconds,_,!!r.force,n.governance.force_required_for_stale_lock,n.locks.wait_ms);try{let{loadedItemUnderLock:w,existingItemPath:v}=await Es({pmRoot:i,subject:a,settings:n,typeRegistry:s,historyRawBeforeLock:d,currentItemRawBeforeLock:g,history:l}),E="toon",b=Ss(w,l),R=Is({document:b.document,author:_,force:r.force,enforcement:n.governance.ownership_enforcement,resolvedId:c}),S=vs(b.document,p),C=await po({pmRoot:i,settings:n,operation:"restore",author:_,before:b.document,after:p});await Nr({pm_root:i,operation:"restore",before:b.document,after:p,changed_fields:S,sdk:bo({pmRoot:i,settings:n,typeToFolder:s.type_to_folder})});let Ie=Me(p,{format:E,schema:n.schema}),B=z(i,p.metadata.type,c,E,s.type_to_folder),W=await Le(i,_),ke=[];try{await O(B,Ie),v&&B!==v&&await Ft.rm(v);let Ln=V({nowIso:I(),author:_,op:"restore",before:b.document,after:p,message:r.message,context:C.decisions.length===0?void 0:{workflow_policies:C.decisions}});try{await no(a.historyPath,Ln)}catch(On){throw await ks({existingItemPath:v,resolvedOriginalRaw:b.originalRaw,restoredItemPath:B}),On}ke=await Oe({pmRoot:i,preferredFormat:n.item_format,typeToFolder:s.type_to_folder,schema:n.schema,itemPath:B,previousItemPath:v??void 0,document:p})}finally{await W()}let Hn=await xs({restoredItemPath:B,historyPath:a.historyPath,before:b.document,after:p});qr({id:p.metadata.id,op:"restore",item_type:p.metadata.type,previous_status:b.document.metadata.status,status:p.metadata.status,previous:dt(b.document.metadata,S),current:dt(p.metadata,S),changed_fields:S});let Dr=l[u.historyIndex],Pr=q(l,!0);return{item:p.metadata,restored_from:{kind:u.kind,target:u.raw,history_index:u.historyIndex+1,version:Pr===null?null:Pr+u.historyIndex+1,entry_ts:Dr.ts,entry_op:Dr.op},changed_fields:S,warnings:[...C.warnings,...w?.recovered?["restore_unreadable_item_recovered"]:[],...a.historyPolicyWarnings,...R,...ke,...Hn]}}finally{await y()}}(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 Rs=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Cs=["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 As(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function hd(e,t,r={}){let o=r.includePagination!==!1;return[t,...Rs.map(i=>e?.[i]),...o?[e?.limit,e?.offset]:[]].some(As)||Cs.some(i=>e?.[i]===!0)}function Mi(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 Fi=["parent","type","priority","status","assignee","tags","sprint","release"];function Pi(e,t){let r=qe(e,t,{strict:!0,flagLabel:"--status"});if(!(!r||r.length===0))return r}function Hi(e,t=["estimate","estimated_minutes","priority"]){let r=e.sum?.trim(),o=e.avg?.trim(),i=r&&r.length>0?r:void 0,n=o&&o.length>0?o:void 0;if(!i&&!n)return null;if(i&&n&&i!==n)throw new h("Aggregate --sum and --avg must target the same numeric field",f.USAGE);let s=i??n;if(!t.includes(s))throw new h(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,f.USAGE);return{field:s,sum:i!==void 0,avg:n!==void 0}}function Li(e){let t=e?.trim()??"status";if(t.length===0)throw new h("--group-by requires at least one field name",f.USAGE);let r=qo(t);if(r.length===0)throw new h("--group-by requires a comma-separated list of fields",f.USAGE);for(let o of r)if(!Fi.includes(o))throw new h(`Aggregate group fields must be one of ${Fi.join("|")}; received "${o}"`,f.USAGE);return r}function Oi(e){let t=[...new Set(e.map(r=>r.trim().toLowerCase()).filter(r=>r.length>0))].sort((r,o)=>r.localeCompare(o));return t.length===0?null:t.join(",")}function ji(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 Oi(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function qi(e,t){let r=e??null,o=t??null;return r===o?0:r===null?1:o===null?-1:typeof r=="number"&&typeof o=="number"?r-o:String(r).localeCompare(String(o))}function Qe(e,t){return e.map(r=>`${r}:${JSON.stringify(t[r]??null)}`).join("|")}var Ts={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function Di(e,t){return t==null||t===""?Ts[e]:String(t)}function Ms(e,t){return e.length===1?Di(e[0],t[e[0]]):e.map(r=>`${r}=${Di(r,t[r])}`).join(" | ")}function Ni(e,t,r){for(let o of r){let i=qi(e.group[o],t.group[o]);if(i!==0)return i}return 0}function Ui(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let o=r.trim();if(o.length===0)return null;let i=Number(o);if(Number.isFinite(i))return i}return null}function Gi(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Dt(e,t,r){let o=Xr(String(t),r)??t;if(o===r.open_status){e.open_count+=1;return}if(o==="in_progress"||r.active_statuses.has(o)&&o!==r.open_status){e.in_progress_count+=1;return}if(r.terminal_done_statuses.has(o)||o===r.close_status){e.closed_count+=1;return}e.other_count+=1}function Fs(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 Ds(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function Ps(e){e.accumulator.row.count+=1,e.includeCompletion&&Dt(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&Ds(e.accumulator,e.numericValue)}function Hs(e,t,r,o){for(let i of t){let n=Qe(r,i),s=e.get(n);if(s){Ps({...o,accumulator:s});continue}let a=Fs(i,o.numericValue);o.includeCompletion&&Dt(a,o.item.status,o.statusRegistry),e.set(n,a)}}function Ls(e,t){let r={};for(let o of e)r[o]=ji(o,t);return r}function Os(e,t,r){let o=[Ls(e,t)];if(r==="tuple")return o;for(let i of e){let n=t[i];if(!Array.isArray(n))continue;let s=[...new Set(n.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(o=o.flatMap(a=>s.map(c=>({...a,[i]:c}))))}return o}function js(e,t,r,o){let i={...e.row,group_label:Ms(t,e.row.group)};return r&&(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=Gi(e.closed_count,e.row.count)),o!==null&&(i.null_count=e.null_count,o.sum&&(i.sum=e.numeric_sum),o.avg&&(i.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),i}function qs(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 bd(e,t){if(e.count===!1)throw new h("Aggregate grouped counts are always enabled; omit count=false.",f.USAGE);let r=k(process.cwd(),t.path),o=await L(r),i=j(o.schema),n=["estimate","estimated_minutes","priority",...J(o.schema).definitions.filter(E=>E.type==="number").map(E=>E.metadata_key)],s=Li(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new h("Aggregate --set-mode must be element or tuple",f.USAGE);let c=Pi(e.status,i),d=Hi(e,[...new Set(n)].sort((E,b)=>E.localeCompare(b))),l=e.completion===!0,u=e.includeUnparented===!0,m=await Ve(void 0,{...Mi(e),status:e.status,noTruncate:!0,strictRead:!0},t),p=new Map,g=0,_=0,y=0;for(let E of m.items){let b=E;if(s.includes("parent")&&b.parent===void 0&&!u){g+=1;continue}let R=d===null?null:Ui(b,d.field),S=Os(s,b,a);Hs(p,S,s,{item:b,statusRegistry:i,includeCompletion:l,numericAggregation:d,numericValue:R}),y+=S.length,_+=1}let w=[...p.values()].map(E=>js(E,s,l,d)).sort((E,b)=>Ni(E,b,s)),v=m.warnings&&m.warnings.length>0?m.warnings:void 0;return{...Ns(w,s,e),count:w.length,totals:{items_considered:m.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:qs({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:c,options:e,numericAggregation:d}),now:I(),...v?{warnings:v}:{}}}function Ns(e,t,r){let o=ii(r.limit,"limit")??50,i=r.after===void 0?-1:e.findIndex(a=>Qe(t,a.group)===r.after);if(r.after!==void 0&&i<0)throw new h("Aggregate --after cursor is absent from the current grouping; restart without --after.",f.USAGE);let n=e.slice(i+1,i+1+o),s=i+1+n.length<e.length;return{groups:n,returned_count:n.length,truncated:s,next_after:s?Qe(t,n.at(-1).group):null}}var vd={buildGroupKey:Qe,compareAggregateRows:Ni,compareNullableGroupValue:qi,completionPct:Gi,normalizeTagGroupValue:Oi,parseGroupBy:Li,parseNumericAggregation:Hi,parseStatus:Pi,readNumericAggregateValue:Ui,resolveGroupValue:ji,updateCompletionCounts:Dt};(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 $i=1e6,Bi=20;function Wi(e,t,r,o=Bi){if(!Number.isSafeInteger(o)||o<0)throw new h("Child projection sample limit must be a non-negative integer.",f.USAGE);let i=e.trim().toLowerCase(),n={},s=[],a=0;for(let y of t){if(a+=1,a>$i)throw new h(`Child projection exceeded the ${$i.toLocaleString("en-US")} item safety bound.`,f.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let c=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),d=Jo(Xo(s,Yo())),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();n[w]=(n[w]??0)+1,ce(w,r)||(m+=1)}u.sort((y,w)=>y.id.localeCompare(w.id));let p=u.slice(0,o).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>p.length,_=o===0?Bi:o;return{count:u.length,active:m,by_status:Object.fromEntries(Object.entries(n).sort(([y],[w])=>y.localeCompare(w))),sample:p,sample_limit:o,truncated:g,next_offset:g?p.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${p.length} --limit ${_}`:null,scanned:a}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="db3fe399-8eb8-5b17-8a9e-89eda4774234")}catch{}})();var Us=new Set(["event","meeting","reminder"]);function Gs(e){return Us.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function Pt(e){if(!Gs(e))return;let t=[...e.events??[]].sort((o,i)=>o.start_at.localeCompare(i.start_at)),r=t[0];return{deadline:e.deadline??null,start_at:r?.start_at??null,end_at:r?.end_at??null,location:r?.location??null,reminders:[...e.reminders??[]],events:t}}import{readdir as Bs}from"node:fs/promises";import Ht 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]="e2c03bb3-e603-579b-bb44-0b3757a00ea8")}catch{}})();var Ws=new Set(["epic","feature","milestone","plan"]),zs=new Set(Object.keys(Or).map(e=>e.toLowerCase()));function Ot(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(t=>[t,e[t]?.length??0]))}function Vs(e,t,r,o,i){let n=Ot(e);return[...t.length>0?["body"]:[],...Object.entries(n).flatMap(([s,a])=>a>0?[s]:[]),...n.files+n.tests+n.docs>0?["linked"]:[],...r===void 0?["children"]:r.count>0?["children"]:[],...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...Pt(e)?["schedule"]:[],...o&&bt(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 Vi(e){let t=e.trim().toLowerCase();return t.length>0&&(Ws.has(t)||!zs.has(t))}function zi(e){return{ts:e.ts,author:e.author,message:e.message??null}}function Ks(e,t){let r=e?.trim(),o=r&&r.length>0?r:null,i=[...t].reverse().find(s=>s.op==="claim"),n=[...t].reverse().find(s=>s.op==="release");return{claimed:o!==null,assignee:o,last_claim:i?zi(i):null,last_release:n?zi(n):null}}function Qs(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(ze.includes(t))return t;throw new h("Get --depth must be one of brief|standard|deep|full",f.USAGE,{field:"depth",value:e,recovery:{allowed_values:[...ze,"full"]}})}function Ys(e,t,r){let o=Ot(e),i={...e};if(!r&&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:o.notes,tests_count:o.tests,collection_counts:o};let{comments:n,notes:s,learnings:a,files:c,tests:d,docs:l,reminders:u,events:m,...p}=i;return{...p,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:o}}function Xs(e){if(e===void 0)return null;let t=e.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(t.length===0)throw new h("Get --fields requires a comma-separated list of field names",f.USAGE);return t}function Ye(e){return e.startsWith("item.")?e.slice(5):e}function Js(e,t,r){if(e===null)return;let o=vt(t),i=new Set(o),n=e.filter(s=>{let a=Ye(s);return!i.has(s)&&!i.has(a)});if(n.length>0){let s=["get",r,"--fields",e.filter(a=>!n.includes(a)).join(",")||"id,title,status"];throw new h(`Unknown get --fields value(s): ${n.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:o,suggested_retry:X(s),suggested_retry_args:s}})}}var Zs=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function ea(e,t,r){return Object.hasOwn(t,r)?t[r]:e[r]!==void 0?e[r]:Zs.has(r)?[]:void 0}function ta(e,t){let r=e,o={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:Ot(e)},i={id:e.id};for(let n of t){let s=Ye(n);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]=ea(r,o,s))}return i}function we(e,t){return e?.some(r=>r===t||r===`item.${t}`)??!1}function re(e,t){return e.some(r=>{let o=Ye(r);return o===t||o.startsWith(`${t}.`)})}function ra(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.",f.USAGE,{code:"projection_options_mutually_exclusive",flag:"--full",recovery:{suggested_retry:X(["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",f.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.",f.USAGE);return{depth:e.full?"deep":Qs(e.depth),full:e.full===!0||e.depth?.trim().toLowerCase()==="full",treeDepth:e.tree===!0?$o(e.treeDepth,"--tree-depth"):void 0,fields:Xs(e.fields),fieldProjection:e.fields!==void 0}}async function oa(e,t,r){let o=k(process.cwd(),t.path);await P(o);let i=await L(o),n=U(i,A());if(r!==void 0){let c=await So(e,r,{pmRoot:t.path});return{pmRoot:o,settings:i,typeToFolder:n.type_to_folder,locatedId:c.document.metadata.id,metadata:c.document.metadata,body:c.document.body,historical:c}}let s=await fe(o,e,i.id_prefix,i.item_format,n.type_to_folder);if(!s)throw await vo(o,e,i.id_prefix,n.type_to_folder);let a=await he(s,{schema:i.schema});return{pmRoot:o,settings:i,typeToFolder:n.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function ia(e,t,r,o){let i=J(t.schema).definitions.map(n=>n.metadata_key);if(Js(e,i,o),r&&re(e??[],"children"))throw new h("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",f.USAGE);if(r&&re(e??[],"blockers"))throw new h("Get --at cannot project current blocker statuses; read the current item with --fields blockers instead.",f.USAGE)}function Lt(e){let{fieldProjection:t,depth:r,fields:o,field:i}=e;return t?i==="body"||i==="linked"?we(o,i):re(o,i):r!=="brief"}async function na(e,t){if(!t)return;let r=Ae(e.pmRoot,e.locatedId),o=await le(r,e.locatedId);return Ks(e.metadata.assignee,e.historical?o.slice(0,e.historical.target.historyIndex+1):o)}function sa(e,t,r,o){let i=o||we(r,"linked.files"),n=o||we(r,"linked.tests"),s=o||we(r,"linked.docs");!o&&!i&&!n&&!s||(e.linked={files:i?t.metadata.files??[]:[],tests:n?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function aa(e,t){if(!t)return;let r=j(e.settings.schema),o=await je(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return Wi(e.locatedId,o,r)}function ca(e,t){let r=new Map;for(let o of e){let i=o.external?o.id:t.get(o.id.toLowerCase())?.id??o.id;r.set(o.external?`external:${i}`:`local:${i.toLowerCase()}`,{...o,id:i})}return[...r.values()]}async function la(e,t){let r=Ht.basename(e),o=(await Bs(Ht.dirname(e)).catch(i=>{throw fi("Cannot verify the blocker's physical file identity",{exitCode:f.GENERIC_FAILURE,context:{code:"blocker_identity_read_failed",required:"Restore access to the blocker item directory, then retry the item read."},cause:i})})).filter(i=>i.toLowerCase()===r.toLowerCase()).sort((i,n)=>+(n===r)-+(i===r)||i.localeCompare(n)).map(i=>Ht.parse(i).name)[0];if(o===void 0)throw new h(`Blocker canonical file disappeared during identity verification: ${t}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker file and validate storage integrity before retrying the item read."});return o}async function da(e,t,r){if(t.historical!==void 0||!(r.fieldProjection?re(r.fields,"blockers"):r.depth!=="brief"))return;let o=bt(t.metadata);if(o.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()])),n=new Map;for(let a of o){if(No(a)||!/^(?!\.{1,2}$)[^/\\:\0]+$/u.test(a)||t.metadata.dependencies?.some(l=>l.id.trim()===a&&l.kind==="blocked_by"&&Uo(l.source_kind)))continue;let c=await fe(t.pmRoot,i.get(a),t.settings.id_prefix,t.settings.item_format,t.typeToFolder);if(c===null)continue;let d=await he(c,{schema:t.settings.schema});if(c.id=await la(c.itemPath,c.id),d.document.metadata.id!==c.id)throw new h(`Blocker identity differs from its canonical file: ${c.id}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker identity and validate storage integrity before retrying the item read."});n.set(a.toLowerCase(),d.document.metadata)}let s=ca(Go({blocked_by:t.metadata.blocked_by,dependencies:t.metadata.dependencies,updated_at:t.metadata.updated_at},n,j(t.settings.schema)),n);e.blockers={scope:"declared",open:s.filter(a=>!a.resolved).map(({resolved:a,...c})=>c),closed_count:s.filter(a=>a.resolved).length},!r.fieldProjection&&!r.full&&delete e.item.blocked_by}function ua(e,t,r,o){if(!o)return;let i=Pt(t.metadata);if(i){if(r===null||we(r,"schedule")){e.schedule=i;return}e.schedule=Object.fromEntries(Object.entries(i).filter(([n])=>r.some(s=>Ye(s)===`schedule.${n}`)))}}async function ma(e,t,r,o){if(t.tree!==!0)return;let i=await Ve(void 0,{parent:e.locatedId,tree:!0,treeDepth:r===void 0?void 0:String(r),full:!0},o);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:r??null,count:i.count,items:i.items.map(n=>n)}}async function Kd(e,t,r={}){let o=ra(r,e),i=await oa(e,t,r.at);ia(o.fields,i.settings,i.historical!==void 0,i.locatedId);let n=Lt({...o,field:"body"}),s=Lt({...o,field:"linked"}),a=Lt({...o,field:"claim_state"}),c=i.historical===void 0&&(o.fieldProjection?re(o.fields,"children"):o.depth==="deep"&&(o.full||Vi(i.metadata.type))),d=o.fieldProjection?re(o.fields,"schedule"):o.depth!=="brief",l=await na(i,a),u={item:o.fieldProjection?ta(i.metadata,o.fields):Ys(i.metadata,o.depth,o.full)};n&&(u.item.body=i.body),sa(u,i,o.fields,s),l&&(u.claim_state=l),ua(u,i,o.fields,d),await da(u,i,o);let m=await aa(i,c);m!==void 0&&(u.children=m);let p=await ma(i,r,o.treeDepth,t);if(p!==void 0&&(u.tree=p),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 Yr({pmRoot:i.pmRoot,author:De(void 0,i.settings.author_default),itemIds:[i.locatedId],intent:"get"})}catch{}return Ur(u,o.fieldProjection?[]:Vs(i.metadata,i.body,m,i.historical===void 0,o)),u}var Qd={shouldAutoIncludeGetChildren:Vi};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9c9c1249-e52a-5203-8a84-d54211c30202")}catch{}})();function fa(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function ha(e,t){return e.map(({entry:r,version:o})=>{let i=new Set,n=ao(r.patch);for(let s of n)i.add(_t(s.path)),s.from&&i.add(_t(s.from));return{index:o,...t?{version:t.offset===null?null:t.offset+o}:{},ts:r.ts,op:r.op,author:r.author,patch_ops:n.length,changed_fields:[...i].sort((s,a)=>s.localeCompare(a))}})}function pa(e){if(e[0]?.op!=="history_compact_baseline")return;let t=q(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function ya(e,t){let r=k(process.cwd(),t.path);await P(r);let o=await L(r),i=U(o,A()),n=e.trim()===Pe,s=n?Pe:ho(e,o.id_prefix),a=await fe(r,s,o.id_prefix,o.item_format,i.type_to_folder),c=a?.id??s,d=n?lo(r):Ae(r,c);if(!a&&!await xe(d))throw new h(`Item ${e} not found`,f.NOT_FOUND);return a&&await He({pmRoot:r,settings:o,itemId:a.id,commandLabel:"history"}),{historyPath:d,located:a,resolvedId:c,settings:o}}async function nu(e,t,r){let o=Ne(t.limit),{historyPath:i,located:n,resolvedId:s,settings:a}=await ya(e,r),c=await le(i,s),d=pa(c),l=a.agent_identity.identity_vocabulary,u=ai(a.agent_identity.harness_signals),m=li({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),p=ga(c).filter(({entry:S})=>m(S)),g=fa(p,o),_=g.map(({entry:S})=>S),y=t.compact===!0,w=y?ha(g,d):void 0,v=t.provenance===!0?g.map(({entry:S,durableVersion:C})=>ci(S,l,{itemId:s,version:C})):void 0,E=t.provenance===!0?"provenance":y?"compact":"full",b={compact:{compact_history:w},provenance:{provenance_history:v},full:{history:_}}[E],R={id:s,...b,compact:y,projection:{mode:E,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[E]},omission_receipt:Gr("history",E),count:_.length,limit:o??null,version_addressing:d,...t.provenanceSummary===!0?{provenance_summary:di(p.map(({entry:S})=>S),l,u)}:{}};if((t.diff||t.field!==void 0)&&(R.diff=Ao(c,{windowStartIndex:Math.max(0,c.length-_.length),field:t.field})),t.verify){let S=n?(await he(n,{schema:a.schema})).document:void 0;if(R.verification=Eo(c,S),s===Pe&&R.verification.ok){let C=await uo(k(process.cwd(),r.path));R.verification={...R.verification,ok:C.ok,errors:C.ok?R.verification.errors:[...R.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:C.ok,workspace_state_mismatches:C.mismatched_documents,workspace_state_missing:C.missing_documents,workspace_state_unreadable:C.unreadable_documents}}}return R}function ga(e){let t=q(e,!0);return e.map((r,o)=>({entry:r,version:o+1,durableVersion:t===null?void 0:t+o+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]="f7f0c9be-34c2-55fb-8676-de58e96c382f")}catch{}})();function _a(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",f.USAGE);return t}function Xe(e){return e===!0}function Ki(e){return Lr(e,0,1)??void 0}function Qi(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",f.USAGE);return t}function Yi(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",f.USAGE);return t}function Q(e,t){if(e==null)return;let r=String(e).trim();if(r.length!==0)return ut(r,new Date,t)}function T(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function jt(e,t){if(e!==void 0)return ut(e,new Date,t)}function wa(e){if(e===void 0)return;let t=e.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(t.length===0)throw new h("Search --fields requires a comma-separated list of field names",f.USAGE);return[...new Set(t)]}function Je(e,t="<query>"){let r=e.compact===!0,o=e.full===!0,i=wa(e.fields);if(Number(r)+Number(o)+ +(i!==void 0)>1)throw new h("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",f.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:X(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return r?{mode:"compact",fields:[...Zo]}:o?{mode:"full",fields:[]}:i?{mode:"fields",fields:i}:{mode:"full",fields:[]}}function qt(e,t,r="<query>"){if(e.mode!=="fields")return;let o=ei(t.definitions.flatMap(s=>[s.key,s.metadata_key])),i=new Set(o),n=e.fields.filter(s=>{let a=s.trim();return!i.has(a)});if(n.length>0){let s=["search",r,"--fields",e.fields.filter(a=>!n.includes(a)).join(",")||"id,title,status,score"];throw new h(`Unknown search --fields value(s): ${n.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:o,suggested_retry:X(s),suggested_retry_args:s}})}}function Ze(e){let t=T(e);if(!t)throw new h("Search query must not be empty",f.USAGE);return t.split(/\s+/u).filter(Boolean)}function Nt(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var ba=["auto","keyword","semantic","hybrid"];function va(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let r=t.trim().toLowerCase();return ba.includes(r)?r:"auto"}function Ut(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:_a(e.requested),source:"explicit"};let t=va(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Gt(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function $t(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function Bt(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},r=e.search?.tuning;if(!r)return t;let o=(i,n)=>typeof i=="number"&&Number.isFinite(i)&&i>=0?i:n;return{title_exact_bonus:o(r.title_exact_bonus,t.title_exact_bonus),title_weight:o(r.title_weight,t.title_weight),description_weight:o(r.description_weight,t.description_weight),tags_weight:o(r.tags_weight,t.tags_weight),status_weight:o(r.status_weight,t.status_weight),body_weight:o(r.body_weight,t.body_weight),comments_weight:o(r.comments_weight,t.comments_weight),notes_weight:o(r.notes_weight,t.notes_weight),learnings_weight:o(r.learnings_weight,t.learnings_weight),reminders_weight:o(r.reminders_weight,t.reminders_weight),events_weight:o(r.events_weight,t.events_weight),dependencies_weight:o(r.dependencies_weight,t.dependencies_weight),linked_content_weight:o(r.linked_content_weight,t.linked_content_weight)}}import Ea 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 Wt(e){return Br("search",{pmRoot:e.pmRoot===void 0?void 0:Ea.resolve(e.pmRoot),query:e.query.trim(),mode:e.mode,options:$r(e.searchOptions,Io)})}function Xi(e){let t=zr(e.sorted,{cursor:e.searchOptions.after,fingerprint:Wt(e),limit:e.limit,readId:r=>r.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 Ji(e){if(typeof e!="string")return!1;let t=e.split(",").map(r=>r.trim().toLowerCase()).filter(Boolean);return t.length===1&&t[0]==="all"}var Sa=[{optionKey:"status",summaryKey:"status",normalize:e=>Ji(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 oe(e){let{mode:t,matchMode:r,options:o,includeLinked:i,titleExact:n,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,runtimeFieldFilters:d}=e,l={};return oi(l,o,Sa),Object.assign(l,St(o)),Object.assign(l,Et(o)),r!==void 0&&r!=="or"&&(l.match_mode=r),i&&(l.include_linked=!0),n&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&o.semanticWeight!==void 0&&(l.hybrid_semantic_weight=c),o.limit!==void 0&&(l.limit=o.limit),d&&Object.keys(d).length>0&&(l.runtime_filters=d),l}function ie(e){let{effectiveMode:t,matchMode:r,options:o,includeLinked:i,titleExact:n,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,queryExpansion:d,rerank:l,runtimeFieldFilters:u}=e,m=p=>p??null;return{mode:t,match_mode:r,status:o.status===void 0||Ji(o.status)?"all":o.status,type:m(o.type),tag:m(o.tag),priority:m(o.priority),deadline_before:m(o.deadlineBefore),deadline_after:m(o.deadlineAfter),updated_after:m(o.updatedAfter),updated_before:m(o.updatedBefore),created_after:m(o.createdAfter),created_before:m(o.createdBefore),assignee:m(o.assignee),sprint:m(o.sprint),release:m(o.release),parent:m(o.parent),...St(o),...Et(o),include_linked:i,title_exact:n,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(o.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 Ia=1.2,ka=.75;function zt(e){return ee(e)}function xa(e){let t=new Map;for(let r of e)t.set(r,(t.get(r)??0)+1);return t}function en(e){let t=[],r=new Map,o=0;for(let n of e){let s=zt(n.text),a=xa(s);o+=s.length;for(let c of a.keys())r.set(c,(r.get(c)??0)+1);t.push({id:n.id,termFrequencies:a,length:s.length})}let i=t.length;return{documents:t,documentFrequency:r,documentCount:i,averageDocumentLength:i>0?o/i:0}}function Ra(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function tn(e,t,r){let o=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return o;let i=[...new Set(t.filter(s=>s.length>0))];if(i.length===0)return o;let n=new Map;for(let s of i){let a=e.documentFrequency.get(s);a!==void 0&&n.set(s,Ra(e.documentCount,a))}if(n.size===0)return o;for(let s of e.documents){let a=0;for(let[c,d]of n){let l=s.termFrequencies.get(c);if(l===void 0)continue;let u=1-r.b+r.b*s.length/e.averageDocumentLength,m=l+r.k1*u;a+=d*(l*(r.k1+1)/m)}a>0&&o.set(s.id,a)}return o}function Zi(e,t,r,o){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(o,Math.max(r,e))}function rn(e){let t=r=>typeof r=="string"?[r]:typeof r=="number"?[String(r)]:Array.isArray(r)?r.flatMap(t):typeof r=="object"&&r!==null?Object.values(r).flatMap(t):[];return t(Object.values(e)).join(" ")}function on(e){let t=e?.search?.bm25;return{k1:Zi(t?.k1,Ia,0,1e3),b:Zi(t?.b,ka,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 Vt=4,Ca=20,Aa=200,Ta=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function Kt(e,t){let r=[],o=new Set;for(let i of e){let n=i.trim().replaceAll(/\s+/g," ");if(n.length===0)continue;let s=n.toLowerCase();if(!o.has(s)&&(o.add(s),r.push(n),r.length>=t))break}return r}function Ma(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 Fa(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 nn(e,t=Vt){let r=e.trim().replaceAll(/\s+/g," ");if(r.length===0)return[];let o=ee(r);if(o.length===0)return[r];let i=o.filter(a=>!Ta.has(a.toLowerCase())),n=o.map(a=>Ma(a)),s=i.map(a=>Fa(a));return Kt([r,o.join(" "),i.join(" "),n.join(" "),s.join(" ")],Math.max(1,t))}function sn(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?Kt(t.filter(r=>typeof r=="string"),Vt):[]}function an(e,t,r){return Kt([...e,...t],Math.max(1,r))}function cn(e,t){let r=e.search?.query_expansion,o=se(r?.provider);return{enabled:r?.enabled===!0,provider:o??t,max_queries:Vt}}function ln(e,t){let r=e.search?.rerank,o=se(r?.model),i=Ce(r?.top_k)??Ca;return{enabled:r?.enabled===!0,model:o??t,top_k:Math.min(Aa,i)}}function dn(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let r=new Map;for(let i of t){if(typeof i!="object"||i===null)continue;let n=se(i.id),s=i.score;if(!n||typeof s!="number"||!Number.isFinite(s))continue;let a=r.get(n);(a===void 0||s>a)&&r.set(n,s)}let o=[...r.entries()].map(([i,n])=>({id:i,score:n}));return o.sort((i,n)=>i.score!==n.score?n.score-i.score:i.id.localeCompare(n.id)),o}function Da(e,t){let r=e.length,o=0;for(let i=0;i<r;i+=1)o+=e[i]*t[i];return o}function un(e){let t=0;for(let r=0;r<e.length;r+=1)t+=e[r]*e[r];return Math.sqrt(t)}function Pa(e,t,r){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let o=Da(e,t),i=un(t),n=r*i;return!Number.isFinite(o)||!Number.isFinite(r)||!Number.isFinite(i)||!Number.isFinite(n)||n===0?0:Math.max(-1,Math.min(1,o/n))}async function mn(e,t,r,o,i){if(o.length===0)return new Map;let n=se(t)??e.model,s=n===e.model?e:{...e,model:n},a=[r.trim(),...o.map(m=>m.text)],c=await Ue(s,a,i?{timeout_ms:i}:{}),d=c[0];if(!d)return new Map;let l=un(d),u=new Map;for(let m=0;m<o.length;m+=1){let p=o[m],g=c[m+1];if(!g)continue;let _=Pa(d,g,l);u.set(p.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 ne(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function N(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function be(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function Qt(e){let t=e.metadata;return[t.title,t.description,t.status,ne(t.tags).join(" "),e.body,N(t.comments).map(r=>r.text).join(" "),N(t.notes).map(r=>r.text).join(" "),N(t.learnings).map(r=>r.text).join(" "),Ge(t).join(" "),$e(t).join(" "),be(t.dependencies).map(r=>`${r.id} ${r.kind}`).join(" "),Be(t)]}function Yt(e,t){return Qt(e).some(r=>T(r).includes(t))}function Xt(e,t,r){return!r.titleExact&&!r.phraseExact?e:e.filter(o=>!(r.titleExact&&T(o.metadata.title)!==t||r.phraseExact&&!Yt(o,t)))}function Ha(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new h('--assignee no longer accepts "none" or "null".',f.USAGE)}function La(e,t,r){let o=ye(e.assignee,{label:"--assignee"});Ha(o);let i=ti(e),n=ri(e);return{typeFilter:Bo(e.type,t),tagFilter:ye(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:Wo(e.priority),deadlineBefore:jt(e.deadlineBefore,"deadline-before"),deadlineAfter:jt(e.deadlineAfter,"deadline-after"),updatedAfter:Q(e.updatedAfter,"updated-after"),updatedBefore:Q(e.updatedBefore,"updated-before"),createdAfter:Q(e.createdAfter,"created-after"),createdBefore:Q(e.createdBefore,"created-before"),assigneeFilter:o,sprintFilter:ye(e.sprint,{label:"--sprint"}),releaseFilter:ye(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:r&&r.length>0?new Set(r):void 0,missingMetadataFilters:i,missingMetadataActive:zo(i),contentFieldFilters:n,contentFiltersActive:Ko(n)}}function Oa(e,t){return ja(e,t)&&Kr(e,t)&&qa(e,t)}function ja(e,t){if(t.statusSet&&!t.statusSet.has(e.status)||t.typeFilter&&!t.typeFilter.has(e.type))return!1;let r=t.tagFilter;return!(r&&!ne(e.tags).some(o=>r.has(o))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function qa(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 Na(e,t,r,o){let i=e.metadata;return!(!Oa(i,t)||!Mo(i,r)||t.missingMetadataActive&&!Vo(i,t.missingMetadataFilters,o)||t.contentFiltersActive&&!Qo(i,t.contentFieldFilters))}function Jt(e,t,r,o,i,n){let s=La(t,r,i);return e.filter(a=>Na(a,s,o,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]="a3f9e7fa-7ebf-5fc7-93a4-f12cff30f4ff")}catch{}})();var Ua=2,Ga=120,$a=6,Ba=40,Wa=1e3,za=900,Va="\xAB",Ka="\xBB",fn=60;function et(e,t){let r=0,o=0;for(;;){let i=e.indexOf(t,o);if(i<0)return r;r+=1,o=i+t.length}}var hn=[{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=>ne(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=>N(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>N(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>N(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>Ge(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>$e(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>be(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>Be(e.metadata)}],Qa=new Map(hn.map(e=>[e.name,e]));function Zt(e,t){let r=t.filter(i=>i.length>0).sort((i,n)=>n.length-i.length).map(i=>i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(r.length===0)return e;let o=new RegExp(r.join("|"),"gi");return e.replace(o,i=>`${Va}${i}${Ka}`)}function er(e,t){if(e.length===0)return null;let r=e.toLowerCase(),o=-1,i=0;for(let l of t){if(l.length===0)continue;let u=r.indexOf(l);u>=0&&(o<0||u<o)&&(o=u,i=l.length)}if(o<0)return null;let n=Math.max(0,o-fn),s=Math.min(e.length,o+i+fn),a=Zt(e.slice(n,s),t),c=n>0?"\u2026":"",d=s<e.length?"\u2026":"";return`${c}${a}${d}`}function tt(e,t,r){let o=[];for(let i of t){let n=Qa.get(i);if(n===void 0)continue;let s=er(n.value(e),r);s!==null&&o.push({field:i,snippet:s})}return o}function Ya(e,t,r){return[...hn.map(o=>({name:o.name,value:o.value(e),weight:r[o.weightKey]})),{name:"linked_content",value:t,weight:r.linked_content_weight}]}function Xa(e,t,r){let o=T(e.id),i=typeof r=="string"?r.trim().toLowerCase():"",n=T(i),s=n.length>0&&o.startsWith(n)?o.slice(n.length).trim():o;return t!==o&&t!==s?null:{item:e,score:t===o?Wa:za,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function Ja(e,t,r,o,i){for(let n of e){let s=t.get(n)??0;s>0&&(i.score+=s*o.title_exact_bonus,i.matched.add("title"),i.matchedTokens.add(n));for(let a of r){let c=et(a.value.toLowerCase(),n);c>0&&(i.score+=c*a.weight,i.matched.add(a.name),i.matchedTokens.add(n))}}}function Za(e,t,r,o){T(e.title)===t&&(o.score+=Ga,o.matched.add("title"));for(let i of r){let n=et(T(i.value),t);n>0&&(o.score+=n*i.weight*$a,o.matched.add(i.name))}}function tr(e,t,r,o,i,n,s=!1){let a=e.metadata,c=Xa(a,r,n);if(c)return c;let d=new Map;for(let g of ee(a.title))d.set(g,(d.get(g)??0)+1);let l=Ya(e,o,i),u={score:0,matched:new Set,matchedTokens:new Set};Ja(t,d,l,i,u);let m=new Set(t),p=m.size>0&&u.matchedTokens.size===m.size;return s&&m.size>1&&p&&(u.score+=Ba),t.length>=Ua&&r.includes(" ")&&Za(a,r,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((g,_)=>g.localeCompare(_)),matched_all_terms:p}}function rr(e,t){return[...e].sort((r,o)=>{let i=o.score-r.score;if(i!==0)return i;let n=ce(r.item.status,t),s=ce(o.item.status,t);if(n!==s)return n?1:-1;let a=r.item.priority-o.item.priority;if(a!==0)return a;let c=Vr(o.item.updated_at,r.item.updated_at);return c!==0?c:r.item.id.localeCompare(o.item.id)})}function or(e,t,r,o,i,n,s,a=!1){return tr(e,t,r,o?i.get(e.metadata.id)??"":"",n,s,a)}function ve(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;for(let i of e.values())t=Math.min(t,i),r=Math.max(r,i);if(r===t)return new Map([...e.keys()].map(i=>[i,1]));let o=new Map;for(let[i,n]of e)o.set(i,(n-t)/(r-t));return 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]="c8484fbd-5fb2-56aa-9d69-26646be262a9")}catch{}})();function ot(e){let t=[],r=e;for(let o=0;o<5&&r&&typeof r=="object";o+=1){let i=r.code;typeof i=="string"&&t.push(i.toLowerCase()),r=r.cause}return t.join(" ")}function it(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),r=ot(e),o=`${t} ${r}`;return o.includes("timed out")||o.includes("timeout")||o.includes("etimedout")?"timeout":o.includes("econnrefused")||o.includes("connection refused")||o.includes("connect ")||o.includes("enotfound")||o.includes("eai_again")||o.includes("econnreset")||o.includes("fetch failed")?"connection":"error"}function ir(e,t){let r=it(t);return`search_${e}_fallback:${r}:using_keyword_mode`}function pn(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 nr(e,t,r){try{let o=await jo(e);o.warnings.length>0&&r.push(...o.warnings);let i=ni(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),o.entries);if(i.length===0)return;let n=pn(A());r.push(...yn(i.length,n)),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 '${n.command}'${n.follow_up_command?`, then '${n.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.)
3
+ `)}catch{}}function yn(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 nt(e,t,r,o){if(!t.active)throw new h(`Search mode '${e}' requires a configured embedding provider in settings.providers.openai or settings.providers.ollama`,f.USAGE);if(!r.active&&!o)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`,f.USAGE);return{provider:t.active,vectorStore:r.active??null}}var M=Re;function Ee(e){let t=A(),r=ko(t,e);if(!r)return null;let o=r.runtime_definition??r.definition,i=o.query,n=o.queryExpansion??o.query_expansion,s=o.rerank,a=M(o.name)??M(r.definition.name)??e;if(!a)return null;let c={providerName:a,...typeof i=="function"?{query:i}:{},...typeof n=="function"?{queryExpansion:n}:{},...typeof s=="function"?{rerank:s}:{}};return!c.query&&!c.queryExpansion&&!c.rerank?null:c}function sr(e){let t=M(e.search?.provider),r=Ee(t);return r?.query?{providerName:r.providerName,query:r.query}:null}function ar(e){let t=A(),r=M(e.vector_store?.adapter),o=xo(t,r);if(!o)return null;let i=o.runtime_definition??o.definition,n=i.query;if(typeof n!="function")return null;let s=i.upsert;return{adapterName:M(i.name)??M(o.definition.name)??r??"extension",query:n,...typeof s=="function"?{upsert:s}:{}}}function cr(e,t,r){let o=Array.isArray(t)?t:t?.hits;if(!Array.isArray(o))throw new h(`Extension search provider "${e}" must return an array of hits or { hits: [...] }`,f.GENERIC_FAILURE);let i=new Set,n=[];for(let s of o){if(typeof s!="object"||s===null)continue;let a=M(s.id),c=s.score;if(!a||typeof c!="number"||!Number.isFinite(c)||i.has(a))continue;let d=r.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,p)=>m.localeCompare(p)):[`provider:${e}`];i.add(a),n.push({item:d.metadata,score:c,matched_fields:u})}return n}function lr(e,t){let r=[],o=new Map;for(let i of e){if(o.has(i.id))continue;let n=t.get(i.id);n&&(o.set(i.id,i.score),r.push({item:n.metadata,score:i.score,matched_fields:["semantic"]}))}return{semanticHits:r,semanticScores:o}}function rt(e,t){let r=t.filter(c=>c.exact_id_match===!0);if(r.length===0)return e;let o=new Set(r.map(c=>c.item.id)),i=e.filter(c=>!o.has(c.item.id)),n=i.reduce((c,d)=>Math.max(c,d.score),0),s=r.sort((c,d)=>d.score-c.score),a=n+s.length+1;return[...s.map((c,d)=>({...c,score:a-d,matched_fields:["id"]})),...i]}function st(e,t,r,o,i="semantic"){let n=new Map(r.map(u=>[u.item.id,u.score])),s=new Map(r.map(u=>[u.item.id,u.matched_fields])),a=ve(t),c=ve(n),d=new Set([...t.keys(),...n.keys()]),l=1-o;return[...d].map(u=>{let m=e.get(u),p=a.get(u)??0,g=c.get(u)??0,_=p*o+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,v)=>w.localeCompare(v))}}).filter(u=>u!==null)}function dr(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function ur(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:rn(Lo(s,{fields:e.corpusFields}))})),r=en(t),o=tn(r,zt(e.query),e.bm25Params),i=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...o].map(([a,c])=>({item:i.get(a).metadata,score:c,matched_fields:["bm25"]}));return rt(s,e.keywordHits)}let n=st(i,o,e.keywordHits,e.hybridSemanticWeight,"bm25");return rt(n,e.keywordHits)}function mr(e){let t=new Map;for(let o of e)for(let i of o){let n=t.get(i.id);(!n||i.score>n.score)&&t.set(i.id,i)}let r=[...t.values()];return r.sort((o,i)=>o.score!==i.score?i.score-o.score:o.id.localeCompare(i.id)),r}function fr(e){let t=e.metadata,r=Array.isArray(t?.tags)?t.tags.join(" "):"";return[t?.title,t?.description,t?.type,t?.status,r,e.body].map(o=>typeof o=="string"?o.trim():"").filter(o=>o.length>0).join(`
4
+ `)}async function ec(e,t){let r=e.queryExpansion.enabled?nn(t,e.queryExpansion.max_queries):[t],o=r.length>0?r:[t];if(!e.queryExpansion.enabled)return o;if(e.queryExpansionExtension?.expand)try{let i=await Promise.resolve(e.queryExpansionExtension.expand({query:t,mode:e.requestedMode,settings:e.settings}));return an(o,sn(i),e.queryExpansion.max_queries)}catch{return e.warnings.push(`search_query_expansion_provider_failed:${e.queryExpansionExtension.providerName}:using_builtin`),o}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`),o}async function tc(e,t,r,o){if(e.extensionVectorAdapter?.query)try{return await Promise.resolve(e.extensionVectorAdapter.query({vector:t,limit:r,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)})`,f.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await wt(e.vectorStore,t,r,o)}if(e.vectorStore)return await wt(e.vectorStore,t,r,o);throw new h("Semantic search requires either a configured vector store or an extension vector adapter query handler",f.USAGE)}function rc(e,t,r){return[...e].sort((o,i)=>o.score!==i.score?i.score-o.score:o.item.id.localeCompare(i.item.id)).slice(0,r).map(o=>{let i=t.get(o.item.id);return i?{hit:o,text:fr(i)}:null}).filter(o=>o!==null)}async function oc(e,t,r){if(!e.rerankExtension?.rerank)return null;try{let o=await Promise.resolve(e.rerankExtension.rerank({query:t,mode:"hybrid",model:e.rerank.model,top_k:e.rerank.top_k,settings:e.settings,candidates:r.map(n=>({id:n.hit.item.id,text:n.text,score:n.hit.score}))})),i=dn(o);return i.length>0?new Map(i.map(n=>[n.id,n.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 ic(e,t,r){let o=await oc(e,t,r);if(o)return o;let i=r.map(n=>({id:n.hit.item.id,text:n.text}));try{return await mn(e.provider,e.rerank.model,t,i,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function nc(e,t){let r=new Set(t.keys()),o=e.map(i=>{let n=t.get(i.item.id);if(n===void 0)return i;let s=new Set(i.matched_fields);return s.add("rerank"),{...i,score:n,matched_fields:[...s].sort((a,c)=>a.localeCompare(c))}});return o.sort((i,n)=>{let s=r.has(i.item.id),a=r.has(n.item.id);return s!==a?s?-1:1:i.score!==n.score?n.score-i.score:i.item.id.localeCompare(n.item.id)}),o}async function sc(e,t,r,o){if(!e.rerank.enabled||r.length<=1)return r;let i=rc(r,o,e.rerank.top_k),n=await ic(e,t,i);return n&&n.size>0?nc(r,n):r}async function hr(e){let t=Math.max(e.limit??e.maxResults,e.maxResults),r=e.embeddingTimeoutMs!==void 0?{timeout_ms:e.embeddingTimeoutMs}:{},o=e.vectorQueryTimeoutMs!==void 0?{timeout_ms:e.vectorQueryTimeoutMs}:{},i=e.query.trim(),n=await ec(e,i),s=await Ue(e.provider,n,r),a=await Promise.all(s.map(async g=>await tc(e,g,t,o))),c=mr(a),d=new Map(e.filteredDocuments.map(g=>[g.metadata.id,g])),{semanticHits:l,semanticScores:u}=lr(c,d),m=u.size;if(e.requestedMode==="semantic")return{hits:rt(l,e.keywordHits),vectorMatchCount:m};let p=await sc(e,i,st(d,u,e.keywordHits,e.hybridSemanticWeight),d);return{hits:rt(p,e.keywordHits),vectorMatchCount:m}}function gn(e){let t=Ee(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function _n(e){let t=Ee(M(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}import at from"node:fs/promises";import pr 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 yr(e){let t=(e.files??[]).map(s=>({scope:s.scope,path:s.path.trim()})),r=(e.docs??[]).map(s=>({scope:s.scope,path:s.path.trim()})),o=(e.tests??[]).filter(s=>typeof s.path=="string"&&s.path.trim().length>0).map(s=>({scope:s.scope,path:s.path.trim()})),i=[...t,...r,...o].filter(s=>s.path.length>0).sort((s,a)=>s.scope.localeCompare(a.scope)||s.path.localeCompare(a.path)),n=new Map;for(let s of i)n.set(`${s.scope}:${s.path}`,s);return[...n.values()]}async function wn(e){let t=pr.resolve(e);try{let r=await at.realpath(t);return{resolved:t,realpath:r}}catch{return null}}async function gr(e,t){let[r,o]=await Promise.all([wn(e),wn(t)]);return{projectContainmentRoot:r,globalContainmentRoot:o}}async function _r(e,t){let r=yr(e.metadata),o=[];for(let i of r){let n=i.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!n)continue;let s=pr.resolve(n.resolved,i.path);if(!lt(n.resolved,s))continue;let a;try{a=await at.realpath(s)}catch{continue}if(lt(n.realpath,a))try{await ae({path:s,scope:i.scope}),o.push(await at.readFile(s,"utf8"))}catch{}}return o.join(`
5
+ `)}async function wr(e,t,r,o){let i=yo(A()),n=async(d,l,u)=>{let m=async(p,g)=>{await ae({path:p,scope:"project"});let _=await at.readFile(p,"utf8");return Jr(_,{format:g,schema:o,extensionFieldNames:i,onWarning:y=>s.push(y)}).body};try{return await m(l,u)}catch{let p=u==="toon"?"json_markdown":"toon",g=z(e,d.type,d.id,p,r);try{return await m(g,p)}catch{return s.push(`item_list_item_read_failed:${pr.relative(e,g)}`),""}}},s=[],a=await go(e,t,r,s,o),c=[];if(a.length===0){let d=await wo(e,t,r,s,o);for(let l of d){let u=z(e,l.type,l.id,t,r),m=await n(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 n(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 bn(e,t,r){let o=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return o;let i=process.cwd(),n=await gr(i,jr(i)),s=await Promise.all(r.map(async a=>[a.metadata.id,await _r(a,n)]));for(let[a,c]of s)o.set(a,c);return 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]="17122985-4157-5732-9142-444327cb273d")}catch{}})();var vn=["tag","status","type","priority"];function br(e){let t={},r=[];for(let o of e.split(/\s+/).filter(i=>i.length>0)){let i=o.indexOf(":"),n=i>0?o.slice(0,i).toLowerCase():"",s=i>0?o.slice(i+1):"",a=vn.includes(n)?n:void 0;if(a&&s.length>0&&t[a]===void 0){t[a]=s;continue}r.push(o)}return{residualQuery:r.join(" "),inlineFilters:t}}function vr(e,t,r){let o={...e};for(let i of vn){let n=t[i];if(n!==void 0){if(Re(o[i])!==void 0){r.push(`search_inline_filter_ignored:${i}:flag_takes_precedence`);continue}o[i]=n}}return o}function En(e,t){let r=[],o=br(e),i=Object.keys(o.inlineFilters).length>0;if(i&&o.residualQuery.trim().length===0)throw new h("Inline field:value tokens consumed the entire query, leaving no search terms.",f.USAGE,{examples:["pm search auth tag:area:search","pm list --tag area:search --status open"],nextSteps:["Add keyword terms alongside the inline filters, or use pm list for pure tag/status/type/priority filtering."]});let n=i?o.residualQuery:e,s=vr(t,o.inlineFilters,r);return{query:n,options:s,inlineWarnings:r,highlight:s.highlight===!0,includeLinked:Xe(s.includeLinked),titleExact:Xe(s.titleExact),phraseExact:Xe(s.phraseExact),matchMode:Qi(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:Yi(s.minScore),countOnly:s.count===!0,tokens:Ze(n),normalizedQuery:T(n),limit:Ne(s.limit),projection:Je(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}function Sn(e){if(e.after!==void 0&&e.count===!0)throw new h("Search --after cannot be combined with --count.",f.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d7beacb7-66a5-581f-93f0-68ceb4b8e41e")}catch{}})();function Sr(e,t,r,o,i,n,s,a,c,d,l,u,m,p){let g=m?{total:0,count_only:!0}:{};if(d.mode==="compact"&&o.compact===!0){let y=oe({mode:t,matchMode:r,options:o,includeLinked:i,titleExact:o.titleExact===!0,phraseExact:o.phraseExact===!0,scoreThreshold:n,hybridSemanticWeight:s,runtimeFieldFilters:u});return{query:e.trim(),mode:t,...Rr(p),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:p,items:[],count:0,...g,filters:ie({effectiveMode:t,matchMode:r,options:o,includeLinked:i,titleExact:o.titleExact===!0,phraseExact:o.phraseExact===!0,scoreThreshold:n,hybridSemanticWeight:s,queryExpansion:a,rerank:c,runtimeFieldFilters:u??{}}),projection:{mode:d.mode,fields:_},now:I(),...l.length>0?{warnings:l}:{}}}function Ir(e,t){let r=t.trim();if(r.length===0)return null;if(r==="score")return e.score;if(r==="matched_fields")return e.matched_fields;if(r.startsWith("item.")){let n=r.slice(5);return n.length===0?null:e.item[n]??null}let o=e,i=e.item;return Object.prototype.hasOwnProperty.call(i,r)?i[r]??null:Object.prototype.hasOwnProperty.call(o,r)?o[r]??null:null}function kr(e,t){return t.mode==="full"?e.map(({matched_all_terms:r,exact_id_match:o,...i})=>i):e.map(r=>{let o={};for(let i of t.fields)o[i]=Ir(r,i);return o})}function xr(e,t){return Sr(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 In(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return Er({query:e.query.trim(),mode:e.effectiveMode,...Rr(e.modeSource),items:[],count:t,total:t,count_only:!0,filters:oe({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 r=e.projection.mode==="full"?null:[...e.projection.fields];return Er({query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:[],count:t,total:t,count_only:!0,filters:ie({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:r},now:I()},e.warnings)}function Rr(e){return e==="settings"?{mode_source:e}:{}}function Er(e,t){return t.length===0?e:{...e,warnings:t}}function Se(e,t){return t?{...e,workspace_memory:t}:e}function kn(e,t,r){if(!e.highlight)return{hits:r,projection:e.projection};let o=new Map(t.map(n=>[n.metadata.id,n])),i=r.map(n=>({...n,highlights:tt(o.get(n.item.id),n.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 xn(e,t,r,o,i,n){let s=o<r?{total:r}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return Er({query:e.query.trim(),mode:e.effectiveMode,...Rr(e.modeSource),items:t,count:t.length,...s,...n,filters:oe({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,...n,filters:ie({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:I(),...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 tf={applyFilters:Jt,applyExactQueryFilters:Xt,applyInlineQueryFilters:vr,buildHitHighlights:tt,buildVerboseSearchFilters:ie,buildExplicitSemanticFallbackWarning:ir,buildCompactSearchFilterSummary:oe,buildHybridLexicalScore:or,buildRerankCorpus:fr,buildSemanticHits:lr,classifyImplicitSemanticFallbackReason:it,collectErrorCauseCodes:ot,collectExactPhraseFields:Qt,collectLinkedPaths:yr,combineHybridHits:st,computeBuiltInBm25Hits:ur,computeSemanticOrHybridHits:hr,resolveBuiltInBm25Mode:dr,countOccurrences:et,dependencyEntries:be,documentContainsExactPhrase:Yt,emptySearchResult:Sr,highlightFieldSnippet:er,loadDocuments:wr,markTokenRuns:Zt,parseInlineQueryFilters:br,maybeEmitVectorIndexStaleWarning:nr,loadLinkedCorpus:_r,mergeVectorHitsById:mr,normalizeExtensionProviderHits:cr,normalizeScoreMap:ve,parseProjectionConfig:Je,parseTimestampWindow:Q,parseTokens:Ze,projectSearchHits:kr,readSearchFieldValue:Ir,requireSemanticDependencies:nt,resolveExtensionSearchProvider:sr,resolveExtensionSearchProviderByName:Ee,resolveExtensionVectorAdapter:ar,resolveLinkedCorpusRoots:gr,scoreDocument:tr,sortHits:rr,stringArray:ne,textEntries:N,validateSearchProjectionFields:qt};async function ac(e,t){let r=k(process.cwd(),t.path);await P(r);let o=await L(r),i=Fo(o).settings,n=j(i.schema),s=J(i.schema);qt(e.projection,s,e.query);let a=To(e.options,s,"search"),c=U(i,A()),d=Po(i),l=Oo(i,r),u=sr(i),m=ar(i),p=Ki(e.options.semanticWeight),g=cn(i,d.active?.name??null),_=ln(i,d.active?.model??M(i.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:r,settings:i,statusRegistry:n,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:c,maxResults:Nt(i),scoreThreshold:e.minScoreOverride??Gt(i),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:p,hybridSemanticWeight:p??$t(i),tuning:Bt(i),providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m,bm25Mode:dr({configuredProvider:M(i.search?.provider),hasEmbeddingProvider:d.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:g,queryExpansionExtension:gn(g),rerank:_,rerankExtension:_n(i),...cc({requested:e.options.mode,settings:i,configuredProvider:o.search?.provider??null,providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m})}}function cc(e){let t=Do(e.providerResolution.active?.name,e.configuredProvider)==="configured"&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null),r=e.extensionSearchProvider!==null||t,o=Ut({requested:e.requested,settings:e.settings,semanticRunnable:r});return{effectiveMode:o.mode,modeSource:o.source}}async function lc(e,t){let r=await wr(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),o=qe(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),i=We(t.statusRegistry),n=Jt(r.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,o,i);return{warnings:r.warnings,allDocuments:r.documents,filteredDocuments:Xt(n,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function dc(e,t,r){let o=await bn(e.includeLinked,t.effectiveMode,r),i=e.matchMode==="or";return r.map(n=>or(n,e.tokens,e.normalizedQuery,e.includeLinked,o,t.tuning,t.settings.id_prefix,i)).filter(n=>n!==null).filter(n=>e.matchMode!=="and"||n.matched_all_terms===!0)}async function uc(e,t,r,o,i){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let n=ur({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:r,keywordHits:o,corpusFields:Ho(t.settings),bm25Params:on(t.settings),hybridSemanticWeight:t.hybridSemanticWeight});return t.bm25Mode==="auto-fallback"&&i.push(`search_${t.effectiveMode}_offline_bm25:no_embedding_provider:using_lexical_bm25`),n}async function mc(e,t,r,o){if(!t.extensionSearchProvider)return null;let i=t.providerResolution.active!==null&&(t.vectorResolution.active!==null||t.extensionVectorAdapter!==null);try{let n=await Promise.resolve(t.extensionSearchProvider.query({query:e.query,mode:t.effectiveMode,tokens:e.tokens,options:e.options,settings:t.settings,documents:r}));return cr(t.extensionSearchProvider.providerName,n,o)}catch(n){if(!i)throw new h(`Extension search provider "${t.extensionSearchProvider.providerName}" failed: ${n instanceof Error?n.message:String(n)}`,f.GENERIC_FAILURE);return null}}function fc(e,t,r,o){return t.vectorMatchCount>0?t.hits:(o.push(`search_${e}_degraded:no_vector_matches:results_are_lexical`),e==="semantic"?r:t.hits)}async function hc(e,t,r,o,i){let n=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);i&&n&&await nr(e.pmRoot,r,o),e.extensionSearchProvider||nt(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function pc(e){let{prepared:t,runtime:r,filteredDocuments:o,keywordHits:i,warnings:n,modeWasExplicit:s}=e,a=i,c=await uc(t,r,o,i,n),d=r.effectiveMode;if(c!==null||d==="keyword")return{effectiveMode:r.effectiveMode,hits:c??a};try{if(await hc(r,d,o,n,s),o.length===0||t.limit===0)return{effectiveMode:r.effectiveMode,hits:[]};let l=new Map(o.map(u=>[u.metadata.id,u]));if(a=await mc(t,r,o,l)??a,a===i){let{provider:u,vectorStore:m}=nt(d,r.providerResolution,r.vectorResolution,r.extensionVectorAdapter!==null),p=await hr({requestedMode:d,query:t.query,filteredDocuments:o,keywordHits:i,hybridSemanticWeight:r.hybridSemanticWeight,limit:t.limit,maxResults:r.maxResults,provider:u,vectorStore:m,extensionVectorAdapter:r.extensionVectorAdapter,queryExpansion:r.queryExpansion,queryExpansionExtension:r.queryExpansionExtension,rerank:r.rerank,rerankExtension:r.rerankExtension,warnings:n,settings:r.settings});a=fc(d,p,i,n)}return{effectiveMode:r.effectiveMode,hits:a}}catch(l){return n.push(ir(r.effectiveMode,l)),{effectiveMode:"keyword",hits:i}}}function Rn(e){e.searchOptions.after!==void 0&&Wr(e.searchOptions.after,Wt(e))}async function Cn(e,t,r){Sn(t);let o=En(e,t),i=await ac(o,r),n=await lc(o,i),s=n.warnings;s.push(...o.inlineWarnings);let a=await ui(n.allDocuments.map(b=>b.metadata),{pmRoot:i.pmRoot,statusRegistry:i.statusRegistry,now:I()});s.push(...a.warnings);let c=mi(a,o.query);i.effectiveMode==="hybrid"&&i.semanticWeightProvided&&i.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let d={query:o.query,modeSource:i.modeSource,matchMode:o.matchMode,options:o.options,includeLinked:o.includeLinked,titleExact:o.titleExact,phraseExact:o.phraseExact,scoreThreshold:i.scoreThreshold,hybridSemanticWeight:i.hybridSemanticWeight,queryExpansion:i.queryExpansion,rerank:i.rerank,projection:o.projection,warnings:s,runtimeFieldFilters:i.runtimeFieldFilters};if(i.effectiveMode==="keyword"&&(n.filteredDocuments.length===0||o.limit===0&&!o.countOnly))return Rn({query:o.query,mode:i.effectiveMode,searchOptions:o.options,pmRoot:i.pmRoot}),Se(xr({...d,effectiveMode:i.effectiveMode},o.countOnly),c);let l=await dc(o,i,n.filteredDocuments),u=await pc({prepared:o,runtime:i,filteredDocuments:n.filteredDocuments,keywordHits:l,warnings:s,modeWasExplicit:o.modeWasExplicit});if(u.effectiveMode!=="keyword"&&u.hits.length===0&&(n.filteredDocuments.length===0||o.limit===0&&!o.countOnly))return Rn({query:o.query,mode:u.effectiveMode,searchOptions:o.options,pmRoot:i.pmRoot}),Se(xr({...d,effectiveMode:u.effectiveMode},o.countOnly),c);let m=u.hits.filter(b=>b.exact_id_match===!0||b.score>=i.scoreThreshold),p=rr(m,i.statusRegistry),g=p.length,_=Xi({pmRoot:i.pmRoot,sorted:p,query:o.query,mode:u.effectiveMode,searchOptions:o.options,limit:o.limit??i.maxResults}),y={...d,effectiveMode:u.effectiveMode};if(o.countOnly)return Se(In(y,g),c);let{hits:w,projection:v}=kn(o,n.filteredDocuments,_.limited),E=kr(w,v);return Se(xn(y,E,g,_.limited.length,v,_.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 An=["ndcg","mrr","precision","recall"];function Cr(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[r,o]of Object.entries(e)){if(!An.some(i=>i===r))throw new TypeError(`Unknown eval minimum metric: ${r}`);if(typeof o!="number"||!Number.isFinite(o)||o<0||o>1)throw new TypeError(`Eval minimum.${r} must be a finite number in [0, 1]`);t[r]=o}return t}function Tn(e,t){let r=Cr(t),o=[];for(let i of An){let n=r[i];if(n===void 0)continue;let s=e[i];!Number.isFinite(s)||s<0||s>1?o.push(`${i}:invalid`):s<n&&o.push(`${i}:${s}<${n}`)}return 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]="c34cc860-67c7-548b-99ff-f4155ef44bb0")}catch{}})();var Fn=10,G="https://schema.unbrained.dev/pm/eval-query-set/v1",yc={schema:G,accepted_top_level:["array","object"],required_query_fields:["query","relevant_ids"],optional_fields:["mode","description","minimum"],modes:["keyword","semantic","hybrid"]},ct={schema:G,queries:[{query:"offline search",relevant_ids:["pm-75k9"],mode:"keyword"}]},F=class extends Error{constructor(t){super(t),this.name="EvalQuerySetError"}},gc=new Set(["keyword","semantic","hybrid"]);function Mn(e,t){let r=0,o=Math.min(t,e.length);for(let i=0;i<o;i+=1)r+=e[i]/Math.log2(i+2);return r}function _c(e,t,r){if(t.size===0)return 0;let o=e.map(a=>t.has(a)?1:0),i=Mn(o,r),n=Array.from({length:t.size},()=>1),s=Mn(n,r);return s===0?0:i/s}function wc(e,t,r){let o=Math.min(r,e.length);for(let i=0;i<o;i+=1)if(t.has(e[i]))return 1/(i+1);return 0}function Ar(e,t,r){let o=Math.min(r,e.length),i=0;for(let n=0;n<o;n+=1)t.has(e[n])&&(i+=1);return i}function bc(e,t,r){return r<=0?0:Ar(e,t,r)/r}function vc(e,t,r){return t.size===0?0:Ar(e,t,r)/t.size}function Dn(e,t,r){return{ndcg:_c(e,t,r),mrr:wc(e,t,r),precision:bc(e,t,r),recall:vc(e,t,r),relevant_total:t.size,retrieved_relevant:Ar(e,t,r)}}function Pn(e){let t=e.length;if(t===0)return{ndcg:0,mrr:0,precision:0,recall:0,query_count:0};let r=e.reduce((o,i)=>({ndcg:o.ndcg+i.ndcg,mrr:o.mrr+i.mrr,precision:o.precision+i.precision,recall:o.recall+i.recall}),{ndcg:0,mrr:0,precision:0,recall:0});return{ndcg:r.ndcg/t,mrr:r.mrr/t,precision:r.precision/t,recall:r.recall/t,query_count:t}}function Ec(e,t){if(typeof e!="object"||e===null)throw new F(`Eval query at index ${t} must be an object`);let r=e,o=typeof r.query=="string"?r.query.trim():"";if(o.length===0)throw new F(`Eval query at index ${t} must have a non-empty "query" string`);if(!Array.isArray(r.relevant_ids))throw new F(`Eval query at index ${t} must have a "relevant_ids" array`);if(r.relevant_ids.some(n=>typeof n!="string"))throw new F(`Eval query at index ${t} must have a "relevant_ids" array of strings`);let i=[...new Set(r.relevant_ids.map(n=>n.trim()).filter(n=>n.length>0))];if(i.length===0)throw new F(`Eval query at index ${t} must list at least one relevant id`);if(r.mode!==void 0&&(typeof r.mode!="string"||!gc.has(r.mode)))throw new F(`Eval query at index ${t} has an invalid mode (expected keyword|semantic|hybrid)`);return{query:o,relevant_ids:i,...r.minimum===void 0?{}:{minimum:Cr(r.minimum)},...r.mode!==void 0?{mode:r.mode}:{},...typeof r.description=="string"&&r.description.trim().length>0?{description:r.description.trim()}:{}}}function Tr(e){let t=typeof e=="object"&&e!==null&&!Array.isArray(e)?e.schema:void 0;if(t!==void 0&&t!==G)throw new F(`Unsupported eval query set schema; expected "${G}"`);let r=Array.isArray(e)?e:typeof e=="object"&&e!==null?e.queries:void 0;if(!Array.isArray(r))throw new F('Eval query set must be an array of queries or an object with a "queries" array');if(r.length===0)throw new F("Eval query set must contain at least one query");return{schema:G,queries:r.map((o,i)=>Ec(o,i))}}import Sc from"node:fs/promises";import Mr 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]="5d26721c-719a-5c7e-8baf-72cbf1088988")}catch{}})();var Ic=Mr.join("search","eval-queries.json"),Fr={schema:G,examples:[JSON.stringify(ct)],nextSteps:["Create a git-tracked golden-query JSON file that follows the schema, then re-run pm eval."]},kc=new Set(["keyword","semantic","hybrid"]),xc=e=>{if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(!kc.has(t))throw new h("Eval --mode must be one of keyword|semantic|hybrid",f.USAGE);return t},Rc=e=>{if(e===void 0||e==="")return Fn;let t=Ce(e);if(t===null)throw new h("Eval --k must be a positive integer",f.USAGE);return t},Cc=e=>{if(e===void 0||e==="")return;let t=String(e).trim(),r=Number(t);if([t.length===0,!Number.isFinite(r),r<0,r>1].includes(!0))throw new h("Eval --fail-under must be a number in the range [0, 1]",f.USAGE);return r},$=e=>Math.round(e*1e4)/1e4,Ac=async e=>{try{return await Sc.readFile(e,"utf8")}catch{throw new h(`Eval query set not found at ${e}`,f.NOT_FOUND,{...Fr,examples:[`echo '${JSON.stringify(ct)}' > ${e}`,"pm eval --queries ./my-eval.json"]})}},Tc=(e,t)=>{try{return JSON.parse(e)}catch(r){throw new h(`Eval query set at ${t} is not valid JSON: ${r instanceof Error?r.message:String(r)}`,f.USAGE,Fr)}},Mc=e=>{try{return Tr(e)}catch(t){throw new h(t instanceof Error?t.message:String(t),f.USAGE,Fr)}},Fc=async e=>Mc(Tc(await Ac(e),e)),Dc=async(e,t,r,o)=>{let i=e.mode??t,n=(await Cn(e.query,{mode:i,limit:String(r),fields:"id"},o)).items.map(a=>a.id).filter(a=>typeof a=="string"),s=Dn(n,new Set(e.relevant_ids),r);return{metrics:s,report:{query:e.query,...e.minimum===void 0?{}:{violations:Tn(s,e.minimum)},mode:i,relevant_total:s.relevant_total,retrieved_relevant:s.retrieved_relevant,ndcg:$(s.ndcg),mrr:$(s.mrr),precision:$(s.precision),recall:$(s.recall)}}},Pc=(e,t,r,o)=>{let i=Pn(r);return{k:e,query_count:t.length,aggregate:{ndcg:$(i.ndcg),mrr:$(i.mrr),precision:$(i.precision),recall:$(i.recall)},queries:t,...o!==void 0?{fail_under:o}:{},passed:(o===void 0||i.ndcg>=o)&&t.every(n=>(n.violations?.length??0)===0)}},_f=async(e,t)=>{let r=k(process.cwd(),t.path);await P(r);let o=Rc(e.k),i=xc(e.mode),n=Cc(e.failUnder),s=e.queries?Mr.resolve(process.cwd(),e.queries):Mr.join(r,Ic),a=await Fc(s),c=[],d=[];for(let l of a.queries){let{report:u,metrics:m}=await Dc(l,i,o,t);d.push(m),c.push(u)}return Pc(o,c,d,n)};export{jn as a,fi as b,Oc as c,Kn as d,Yn as e,nl as f,sl as g,kl as h,xl as i,Rt as j,ki as k,xi as l,Ri as m,Xl as n,hd as o,md as p,bd as q,vd as r,$i as s,Bi as t,Wi as u,Gs as v,Pt as w,Kd as x,Qd as y,nu as z,Nt as A,Ut as B,Gt as C,$t as D,Bt as E,Wt as F,Xi as G,oe as H,ie as I,ot as J,it as K,pn as L,yn as M,tf as N,Cn as O,An as P,Cr as Q,Tn as R,G as S,yc as T,ct as U,Tr as V,Ic as W,_f as X};
6
+ //# sourceMappingURL=chunk-O67BH435.js.map
@@ -1,3 +1,3 @@
1
- import{a as k,c as I,d as A,e as _,k as T,m as C}from"./chunk-KRVI56QE.js";import{Eb as b,Fb as v,Gb as R}from"./chunk-AJ7H6XUF.js";import{Gc as E,Hn as H,Jf as D,Mf as d,Nf as f,Ro as p,Uo as g,Vo as a,Zl as x,mp as w,na as m,pa as y}from"./chunk-N4YGSG6F.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="631e56aa-4d7e-58b6-bbea-a0d320716b82")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="0bcdd63c-5fd3-585d-a6c5-9393029ef864")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="4dce4f19-071c-54a8-be0d-5975d9e3b34b")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="f330a0c5-a967-5383-9c27-efa4a39e0f0d")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="a178bd8b-fc53-5633-84d5-621b61930581")}catch{}})();function O(t,e){if(typeof t!="string")return;let o=Number.parseInt(t,10);if(!/^\d+$/.test(t.trim())||!Number.isSafeInteger(o))throw new y(`history-compact ${e} must be a non-negative integer.`,m.USAGE);return o}async function S(t,e,o){let r=p(o),n=Date.now(),i=await x(a(e,"ids")),l=i===void 0?void 0:H(i),c=O(e.allOver,"--all-over"),u=O(e.minEntries,"--min-entries");if(e.closed===!0&&e.allStreams===!0)throw new y("history-compact: --closed and --all-streams are mutually exclusive; pick one lifecycle scope.",m.USAGE);let s=e.closed===!0?"closed":e.allStreams===!0?"all-streams":void 0;if((l!==void 0||c!==void 0||s!==void 0)&&typeof e.before=="string")throw new y("history-compact: --before applies only in single-id mode (bulk mode always compacts full streams).",m.USAGE);if(I(t,{ids:l,allOver:c,scope:s}),t!==void 0&&u!==void 0)throw new y("history-compact: --min-entries applies only in bulk mode (single-id mode compacts the named stream).",m.USAGE);if(t===void 0){let h=await A({ids:l,scope:s,allOver:c,minEntries:u,dryRun:e.dryRun===!0,author:a(e,"author"),message:a(e,"message"),force:!!e.force},r);d(h,r),h.totals.items_errored>0&&(process.exitCode=m.GENERIC_FAILURE)}else{let h=await k(t,{before:a(e,"before"),dryRun:e.dryRun===!0,author:a(e,"author"),message:a(e,"message"),force:!!e.force},r);d(h,r)}r.profile&&f(`profile:command=history-compact took_ms=${Date.now()-n}`)}async function N(t,e,o,r){let n=p(r),i=Date.now(),l=await C(t,e,{author:a(o,"author"),message:a(o,"message"),force:!!o.force},n);await w(n,l),d(l,n),n.profile&&f(`profile:command=restore took_ms=${Date.now()-i}`)}async function B(t,e){let o=p(e),r=await T({verify:a(t,"verify"),output:a(t,"output"),hashAlgorithm:a(t,"hashAlgorithm")},o);"format"in r?(E(r),o.quiet||D(`${JSON.stringify(r,null,2)}
1
+ import{d as k,f as I,g as A,h as _,n as T,p as C}from"./chunk-O67BH435.js";import{Eb as b,Fb as v,Gb as R}from"./chunk-ATB4ZZBQ.js";import{Gc as E,Hn as H,Jf as D,Mf as d,Nf as f,Ro as p,Uo as g,Vo as a,Zl as x,mp as w,na as m,pa as y}from"./chunk-D4G43LBV.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="631e56aa-4d7e-58b6-bbea-a0d320716b82")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="0bcdd63c-5fd3-585d-a6c5-9393029ef864")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="4dce4f19-071c-54a8-be0d-5975d9e3b34b")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="f330a0c5-a967-5383-9c27-efa4a39e0f0d")}catch{}})();(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="a178bd8b-fc53-5633-84d5-621b61930581")}catch{}})();function O(t,e){if(typeof t!="string")return;let o=Number.parseInt(t,10);if(!/^\d+$/.test(t.trim())||!Number.isSafeInteger(o))throw new y(`history-compact ${e} must be a non-negative integer.`,m.USAGE);return o}async function S(t,e,o){let r=p(o),n=Date.now(),i=await x(a(e,"ids")),l=i===void 0?void 0:H(i),c=O(e.allOver,"--all-over"),u=O(e.minEntries,"--min-entries");if(e.closed===!0&&e.allStreams===!0)throw new y("history-compact: --closed and --all-streams are mutually exclusive; pick one lifecycle scope.",m.USAGE);let s=e.closed===!0?"closed":e.allStreams===!0?"all-streams":void 0;if((l!==void 0||c!==void 0||s!==void 0)&&typeof e.before=="string")throw new y("history-compact: --before applies only in single-id mode (bulk mode always compacts full streams).",m.USAGE);if(I(t,{ids:l,allOver:c,scope:s}),t!==void 0&&u!==void 0)throw new y("history-compact: --min-entries applies only in bulk mode (single-id mode compacts the named stream).",m.USAGE);if(t===void 0){let h=await A({ids:l,scope:s,allOver:c,minEntries:u,dryRun:e.dryRun===!0,author:a(e,"author"),message:a(e,"message"),force:!!e.force},r);d(h,r),h.totals.items_errored>0&&(process.exitCode=m.GENERIC_FAILURE)}else{let h=await k(t,{before:a(e,"before"),dryRun:e.dryRun===!0,author:a(e,"author"),message:a(e,"message"),force:!!e.force},r);d(h,r)}r.profile&&f(`profile:command=history-compact took_ms=${Date.now()-n}`)}async function N(t,e,o,r){let n=p(r),i=Date.now(),l=await C(t,e,{author:a(o,"author"),message:a(o,"message"),force:!!o.force},n);await w(n,l),d(l,n),n.profile&&f(`profile:command=restore took_ms=${Date.now()-i}`)}async function B(t,e){let o=p(e),r=await T({verify:a(t,"verify"),output:a(t,"output"),hashAlgorithm:a(t,"hashAlgorithm")},o);"format"in r?(E(r),o.quiet||D(`${JSON.stringify(r,null,2)}
2
2
  `)):d(r,o),"ok"in r&&!r.ok&&(process.exitCode=m.GENERIC_FAILURE)}function Z(t,e){t.command(e?"attest":"history-attest",{hidden:!e}).summary("Export or verify history proof.").option("--verify <file>","Compare retained streams with a detached JSON proof").option("--output <file>","Create a proof file and return a compact receipt").option("--hash-algorithm <name>","Bundle digest algorithm: sha256 (default) or sha512").description("Export exact-byte history commitments, or verify an independently retained proof without tracker writes.").action(B),t.command("restore",{hidden:!e}).summary("Restore a version.").argument("<id>","Item id").argument("<target>","Restore target timestamp or version number").option("--author <value>","Mutation author").option("--message <value>","History message").option("--force","Force ownership/lock override").description("Restore an item to an earlier timestamp or version.").action(N),t.command(e?"redact":"history-redact",{hidden:!e}).summary("Redact sensitive values.").argument("<id>","Item id").option("--literal <value>","Literal string to redact (repeatable)",g).option("--regex <value>","Regex pattern to redact (repeatable; accepts /pattern/flags or raw pattern)",g).option("--replacement <value>",'Replacement string (default: "[redacted]")').option("--dry-run","Preview redaction impact without writing item/history files").option("--author <value>","Mutation author").option("--message <value>","Audit history message for the redaction marker entry").option("--force","Force ownership/lock override").description("Redact sensitive literals/patterns from an item history stream and recompute hashes.").action(async(o,r,n)=>{let i=p(n),l=Date.now(),c=Array.isArray(r.literal)?r.literal:void 0,u=Array.isArray(r.regex)?r.regex:void 0,s=await _(o,{literal:c,regex:u,replacement:a(r,"replacement"),dryRun:r.dryRun===!0,author:a(r,"author"),message:a(r,"message"),force:!!r.force},i);s.changed&&!s.dry_run&&await w(i,s),d(s,i),i.profile&&f(`profile:command=history-redact took_ms=${Date.now()-l}`)}),t.command(e?"repair":"history-repair",{hidden:!e}).summary("Repair drift.").argument("[id]","Item id (omit with --all)").option("--salvage-tail","Recover invalid tail; requires verified prefix").option("--all","Scan every stream for drift and repair each drifted stream in one audited pass").option("--dry-run","Preview the re-anchor impact without writing the history file").option("--normalize-provenance","Remove invalid provenance; return aggregate-only evidence").option("--author <value>","Mutation author").option("--message <value>","Audit history message for the repair marker entry").option("--force","Force ownership/lock override").description("Re-anchor a drifted item history chain (recompute hashes, reconcile with the on-disk item) and record an audit marker. Use --all to repair every drifted stream.").action(async(o,r,n)=>{let i=p(n),l=Date.now(),c=r.all===!0;v(o,c);let u={dryRun:r.dryRun===!0,author:a(r,"author"),message:a(r,"message"),force:!!r.force,normalizeProvenance:r.normalizeProvenance===!0,salvageTail:r.salvageTail===!0};if(c){let s=await R(u,i);d(s,i),s.totals.failed>0&&(process.exitCode=m.GENERIC_FAILURE)}else{let s=await b(o,u,i);d(s,i)}i.profile&&f(`profile:command=history-repair took_ms=${Date.now()-l}`)}),t.command(e?"compact":"history-compact",{hidden:!e}).summary("Compact streams.").argument("[id]","Item id (omit when using a bulk selector)").option("--before <value>","Compact entries strictly before this version number or ISO timestamp (single-id mode only)").option("--ids <value>","Bulk IDs: comma/newline text, - stdin, or @path file").option("--all-over <n>","Bulk: compact every stream with more than N entries").option("--closed","Bulk: compact only closed (terminal) items' streams").option("--all-streams","Bulk: compact every history stream regardless of lifecycle state").option("--min-entries <n>","Bulk: skip streams with at most N entries (already compact; default 3)").option("--dry-run","Preview compaction impact without writing the history file").option("--author <value>","Mutation author").option("--message <value>","Audit history message for the compaction marker entry").option("--force","Force ownership/lock override").description("Compact item history streams into a synthetic baseline plus retained tail entries. Pass an item id for one stream, or a bulk selector (--ids/--all-over/--closed/--all-streams) to compact many.").action(S)}export{Z as a};
3
- //# sourceMappingURL=chunk-3CYOBJUK.js.map
3
+ //# sourceMappingURL=chunk-RJHLD64E.js.map
@@ -1,2 +1,2 @@
1
- import{Fa as p,Ga as i,Ha as v,Ia as _}from"./chunk-D332RXZ7.js";import{cb as h}from"./chunk-N4YGSG6F.js";import u from"node:fs/promises";import c 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]="846100a9-4314-5f7c-b892-fa16e09bee5b")}catch{}})();function f(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function y(e){return e!=="invalid"&&e!=="unreadable"}function j(e){let t=JSON.parse(e);if(typeof t!="object"||t===null||Array.isArray(t))throw new SyntaxError("Invalid settings object");let r=t.extensions;if(r===void 0)return{enabled:[],disabled:[]};if(typeof r!="object"||r===null||Array.isArray(r))throw new SyntaxError("Invalid extensions settings");let n=r;if(n.enabled!==void 0&&(!Array.isArray(n.enabled)||!n.enabled.every(a=>typeof a=="string"))||n.disabled!==void 0&&(!Array.isArray(n.disabled)||!n.disabled.every(a=>typeof a=="string")))throw new SyntaxError("Invalid extension enablement lists");return{enabled:n.enabled??[],disabled:n.disabled??[]}}async function S(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){return f(r)?{status:"absent",enabled:[],disabled:[]}:{status:"unreadable",enabled:[],disabled:[],error:{code:"settings_unreadable",path:e}}}try{return{status:"ok",...j(t)}}catch{return{status:"invalid",enabled:[],disabled:[],error:{code:"settings_invalid",path:e}}}}async function A(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){if(f(r))try{if((await u.stat(c.dirname(e))).isDirectory())return{status:"absent",entries:[]}}catch(n){if(f(n))return{status:"absent",entries:[]}}return{status:"unreadable",entries:[],error:{code:"managed_state_unreadable",path:e}}}try{let r=JSON.parse(t),n=_(r);if(!n||typeof r!="object"||r===null||!Array.isArray(r.entries)||n.entries.length!==r.entries.length)throw new SyntaxError("Invalid managed extension state");return{status:"ok",entries:n.entries}}catch{return{status:"invalid",entries:[],error:{code:"managed_state_invalid",path:e}}}}async function I(e){try{return{directories:(await u.readdir(e,{withFileTypes:!0})).filter(t=>t.isDirectory()).map(t=>t.name).sort((t,r)=>t.localeCompare(r))}}catch(t){return f(t)?{directories:[]}:{directories:[],error:{code:"extensions_unreadable",path:e}}}}async function D(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){return f(r)?{manifest:null,error:{code:"manifest_invalid",path:e}}:{manifest:null,error:{code:"manifest_unreadable",path:e}}}try{let r=v(JSON.parse(t));return r?{manifest:r}:{manifest:null,error:{code:"manifest_invalid",path:e}}}catch{return{manifest:null,error:{code:"manifest_invalid",path:e}}}}function M(e){let t=e.manifest?.name??e.directory,r=new Set(p(e.settings.enabled)),n=new Set(p(e.settings.disabled)),a=!y(e.settings.status)||!e.manifest?null:!n.has(t)&&(r.size===0||r.has(t)),o=y(e.managed.status)?e.managed.entries.some(d=>i(d.name)===i(t)||i(d.directory)===i(e.directory)):null;return{name:t,directory:e.directory,scope:e.scope,installed:!0,status:e.manifest?a===!1?"inactive":"installed":"malformed_manifest",configured_enabled:a,managed:o,runtime_active:null,...e.manifest?{version:e.manifest.version}:{}}}async function R(e){let t=e.scope??"project",r=t==="global"?h(e.cwd??process.cwd()):e.pmRoot,n=c.join(r,"extensions"),a=await S(c.join(r,"settings.json")),o=await A(c.join(n,".managed-extensions.json")),d=await I(n),l=[];for(let s of[a,o,d])s.error&&l.push(s.error);let m=e.name?.trim(),b=[];for(let s of d.directories){let x=c.join(n,s,"manifest.json"),g=await D(x);g.error&&l.push(g.error);let w=M({directory:s,scope:t,manifest:g.manifest,settings:a,managed:o});m&&![w.name,s].some(E=>i(E)===i(m))||b.push(w)}return m&&b.length===0&&l.every(s=>s.code!=="extensions_unreadable")&&b.push({name:m,directory:null,scope:t,installed:!1,status:"absent",configured_enabled:y(a.status)?!1:null,managed:y(o.status)?!1:null,runtime_active:null}),{scope:t,complete:l.length===0,settings_status:a.status,managed_state_status:o.status,extensions:b,errors:l}}export{R as a};
2
- //# sourceMappingURL=chunk-WFZ4UEOB.js.map
1
+ import{Fa as p,Ga as i,Ha as v,Ia as _}from"./chunk-4WB55TBC.js";import{cb as h}from"./chunk-D4G43LBV.js";import u from"node:fs/promises";import c 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]="846100a9-4314-5f7c-b892-fa16e09bee5b")}catch{}})();function f(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function y(e){return e!=="invalid"&&e!=="unreadable"}function j(e){let t=JSON.parse(e);if(typeof t!="object"||t===null||Array.isArray(t))throw new SyntaxError("Invalid settings object");let r=t.extensions;if(r===void 0)return{enabled:[],disabled:[]};if(typeof r!="object"||r===null||Array.isArray(r))throw new SyntaxError("Invalid extensions settings");let n=r;if(n.enabled!==void 0&&(!Array.isArray(n.enabled)||!n.enabled.every(a=>typeof a=="string"))||n.disabled!==void 0&&(!Array.isArray(n.disabled)||!n.disabled.every(a=>typeof a=="string")))throw new SyntaxError("Invalid extension enablement lists");return{enabled:n.enabled??[],disabled:n.disabled??[]}}async function S(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){return f(r)?{status:"absent",enabled:[],disabled:[]}:{status:"unreadable",enabled:[],disabled:[],error:{code:"settings_unreadable",path:e}}}try{return{status:"ok",...j(t)}}catch{return{status:"invalid",enabled:[],disabled:[],error:{code:"settings_invalid",path:e}}}}async function A(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){if(f(r))try{if((await u.stat(c.dirname(e))).isDirectory())return{status:"absent",entries:[]}}catch(n){if(f(n))return{status:"absent",entries:[]}}return{status:"unreadable",entries:[],error:{code:"managed_state_unreadable",path:e}}}try{let r=JSON.parse(t),n=_(r);if(!n||typeof r!="object"||r===null||!Array.isArray(r.entries)||n.entries.length!==r.entries.length)throw new SyntaxError("Invalid managed extension state");return{status:"ok",entries:n.entries}}catch{return{status:"invalid",entries:[],error:{code:"managed_state_invalid",path:e}}}}async function I(e){try{return{directories:(await u.readdir(e,{withFileTypes:!0})).filter(t=>t.isDirectory()).map(t=>t.name).sort((t,r)=>t.localeCompare(r))}}catch(t){return f(t)?{directories:[]}:{directories:[],error:{code:"extensions_unreadable",path:e}}}}async function D(e){let t;try{t=await u.readFile(e,"utf8")}catch(r){return f(r)?{manifest:null,error:{code:"manifest_invalid",path:e}}:{manifest:null,error:{code:"manifest_unreadable",path:e}}}try{let r=v(JSON.parse(t));return r?{manifest:r}:{manifest:null,error:{code:"manifest_invalid",path:e}}}catch{return{manifest:null,error:{code:"manifest_invalid",path:e}}}}function M(e){let t=e.manifest?.name??e.directory,r=new Set(p(e.settings.enabled)),n=new Set(p(e.settings.disabled)),a=!y(e.settings.status)||!e.manifest?null:!n.has(t)&&(r.size===0||r.has(t)),o=y(e.managed.status)?e.managed.entries.some(d=>i(d.name)===i(t)||i(d.directory)===i(e.directory)):null;return{name:t,directory:e.directory,scope:e.scope,installed:!0,status:e.manifest?a===!1?"inactive":"installed":"malformed_manifest",configured_enabled:a,managed:o,runtime_active:null,...e.manifest?{version:e.manifest.version}:{}}}async function R(e){let t=e.scope??"project",r=t==="global"?h(e.cwd??process.cwd()):e.pmRoot,n=c.join(r,"extensions"),a=await S(c.join(r,"settings.json")),o=await A(c.join(n,".managed-extensions.json")),d=await I(n),l=[];for(let s of[a,o,d])s.error&&l.push(s.error);let m=e.name?.trim(),b=[];for(let s of d.directories){let x=c.join(n,s,"manifest.json"),g=await D(x);g.error&&l.push(g.error);let w=M({directory:s,scope:t,manifest:g.manifest,settings:a,managed:o});m&&![w.name,s].some(E=>i(E)===i(m))||b.push(w)}return m&&b.length===0&&l.every(s=>s.code!=="extensions_unreadable")&&b.push({name:m,directory:null,scope:t,installed:!1,status:"absent",configured_enabled:y(a.status)?!1:null,managed:y(o.status)?!1:null,runtime_active:null}),{scope:t,complete:l.length===0,settings_status:a.status,managed_state_status:o.status,extensions:b,errors:l}}export{R as a};
2
+ //# sourceMappingURL=chunk-TUKO5NF7.js.map
@@ -1,3 +1,3 @@
1
- import{aa as c,ba as _,da as f,fa as p}from"./chunk-AJ7H6XUF.js";import{yf as d}from"./chunk-N4YGSG6F.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="8467eccc-684d-56cc-8b18-5f2e940abb42")}catch{}})();var g="not-a-declared-intent",i="not-a-declared-field";function m(){let e={get:["pm-domain"],search:["Domain query"]},r=[...new Set(d.map(({command:o})=>o))].map(o=>{let a=d.filter(n=>n.command===o),s=a[0],u=e[s.command]??[];return{probe_id:`${s.command}-invalid-intent`,command:s.command,flag:"--for",rejected_value:g,refusal_args:[s.command,...u,"--for",g],allowed_values:a.map(({intent:n})=>n).sort(),suggested_retry_args:[s.command,...u,"--for",s.intent],error_code:"unknown_context_intent"}}),l=_(),t=Object.keys(c).map(o=>({probe_id:`${o}-invalid-field`,command:o,flag:"--fields",rejected_value:i,refusal_args:[o,"--fields",i],allowed_values:l,suggested_retry_args:[o,"--fields","id,title,status"],error_code:"unknown_field_projection"}));return[...r,...t,{probe_id:"get-invalid-field",command:"get",flag:"--fields",rejected_value:i,refusal_args:["get","pm-domain","--fields",i],allowed_values:f(),suggested_retry_args:["get","pm-domain","--fields","id,title,status"],error_code:"unknown_field_projection"},{probe_id:"list-mutually-exclusive-projection",command:"list",flag:"--projection",rejected_value:"--brief+--full",refusal_args:["list","--brief","--full"],allowed_values:[],suggested_retry_args:["list","--brief"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"get-mutually-exclusive-projection",command:"get",flag:"--projection",rejected_value:"--full+--fields",refusal_args:["get","pm-domain","--full","--fields","id"],allowed_values:[],suggested_retry_args:["get","pm-domain","--full"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"search-mutually-exclusive-projection",command:"search",flag:"--projection",rejected_value:"--full+--fields",refusal_args:["search","Domain query","--full","--fields","id"],allowed_values:[],suggested_retry_args:["search","Domain query","--full"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"package-upgrade-mutually-exclusive-modes",command:"package upgrade",flag:"--cli-only/--packages-only",rejected_value:"--cli-only+--packages-only",refusal_args:["package","upgrade","--cli-only","--packages-only","--dry-run"],allowed_values:[],suggested_retry_args:["package","upgrade","--packages-only","--dry-run"],error_code:"package_upgrade_modes_mutually_exclusive",allowed_values_required:!1},{probe_id:"search-invalid-field",command:"search",flag:"--fields",rejected_value:i,refusal_args:["search","Domain query","--fields",i],allowed_values:p(),suggested_retry_args:["search","Domain query","--fields","id,title,status,score"],error_code:"unknown_field_projection"}].sort((o,a)=>o.probe_id.localeCompare(a.probe_id))}function v(e,r){let l=m().find(a=>a.command===e&&a.flag===r);if(!l)return"No stable core values are declared.";let t=l.allowed_values.filter(a=>!a.startsWith("item.")),o=r==="--fields"?" item.<field> aliases and configured runtime metadata fields are also accepted.":" Configured package and workspace intents may extend this domain.";return`Allowed core values: ${t.join("|")}.${o}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="0b246b9c-4fb8-50ed-9fa9-c7d90f8ba87f")}catch{}})();function y(e){return e.map((r,l)=>{if(typeof r!="object"||r===null||Array.isArray(r))throw new TypeError(`NDJSON row ${l} must be a non-null object.`);let t=JSON.stringify(r);if(t===void 0)throw new TypeError(`NDJSON row ${l} must serialize to a non-null object.`);let o=JSON.parse(t);if(typeof o!="object"||o===null||Array.isArray(o))throw new TypeError(`NDJSON row ${l} must serialize to a non-null object.`);return t}).join(`
1
+ import{aa as c,ba as _,da as f,fa as p}from"./chunk-ATB4ZZBQ.js";import{yf as d}from"./chunk-D4G43LBV.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="8467eccc-684d-56cc-8b18-5f2e940abb42")}catch{}})();var g="not-a-declared-intent",i="not-a-declared-field";function m(){let e={get:["pm-domain"],search:["Domain query"]},r=[...new Set(d.map(({command:o})=>o))].map(o=>{let a=d.filter(n=>n.command===o),s=a[0],u=e[s.command]??[];return{probe_id:`${s.command}-invalid-intent`,command:s.command,flag:"--for",rejected_value:g,refusal_args:[s.command,...u,"--for",g],allowed_values:a.map(({intent:n})=>n).sort(),suggested_retry_args:[s.command,...u,"--for",s.intent],error_code:"unknown_context_intent"}}),l=_(),t=Object.keys(c).map(o=>({probe_id:`${o}-invalid-field`,command:o,flag:"--fields",rejected_value:i,refusal_args:[o,"--fields",i],allowed_values:l,suggested_retry_args:[o,"--fields","id,title,status"],error_code:"unknown_field_projection"}));return[...r,...t,{probe_id:"get-invalid-field",command:"get",flag:"--fields",rejected_value:i,refusal_args:["get","pm-domain","--fields",i],allowed_values:f(),suggested_retry_args:["get","pm-domain","--fields","id,title,status"],error_code:"unknown_field_projection"},{probe_id:"list-mutually-exclusive-projection",command:"list",flag:"--projection",rejected_value:"--brief+--full",refusal_args:["list","--brief","--full"],allowed_values:[],suggested_retry_args:["list","--brief"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"get-mutually-exclusive-projection",command:"get",flag:"--projection",rejected_value:"--full+--fields",refusal_args:["get","pm-domain","--full","--fields","id"],allowed_values:[],suggested_retry_args:["get","pm-domain","--full"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"search-mutually-exclusive-projection",command:"search",flag:"--projection",rejected_value:"--full+--fields",refusal_args:["search","Domain query","--full","--fields","id"],allowed_values:[],suggested_retry_args:["search","Domain query","--full"],error_code:"projection_options_mutually_exclusive",allowed_values_required:!1},{probe_id:"package-upgrade-mutually-exclusive-modes",command:"package upgrade",flag:"--cli-only/--packages-only",rejected_value:"--cli-only+--packages-only",refusal_args:["package","upgrade","--cli-only","--packages-only","--dry-run"],allowed_values:[],suggested_retry_args:["package","upgrade","--packages-only","--dry-run"],error_code:"package_upgrade_modes_mutually_exclusive",allowed_values_required:!1},{probe_id:"search-invalid-field",command:"search",flag:"--fields",rejected_value:i,refusal_args:["search","Domain query","--fields",i],allowed_values:p(),suggested_retry_args:["search","Domain query","--fields","id,title,status,score"],error_code:"unknown_field_projection"}].sort((o,a)=>o.probe_id.localeCompare(a.probe_id))}function v(e,r){let l=m().find(a=>a.command===e&&a.flag===r);if(!l)return"No stable core values are declared.";let t=l.allowed_values.filter(a=>!a.startsWith("item.")),o=r==="--fields"?" item.<field> aliases and configured runtime metadata fields are also accepted.":" Configured package and workspace intents may extend this domain.";return`Allowed core values: ${t.join("|")}.${o}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="0b246b9c-4fb8-50ed-9fa9-c7d90f8ba87f")}catch{}})();function y(e){return e.map((r,l)=>{if(typeof r!="object"||r===null||Array.isArray(r))throw new TypeError(`NDJSON row ${l} must be a non-null object.`);let t=JSON.stringify(r);if(t===void 0)throw new TypeError(`NDJSON row ${l} must serialize to a non-null object.`);let o=JSON.parse(t);if(typeof o!="object"||o===null||Array.isArray(o))throw new TypeError(`NDJSON row ${l} must serialize to a non-null object.`);return t}).join(`
2
2
  `)}function E(e,r){if(r.count!==e.length)throw new TypeError(`NDJSON trailer count ${r.count} does not match ${e.length} ${e.length===1?"row":"rows"}.`);for(let[l,t]of e.entries())if(typeof t=="object"&&t!==null&&!Array.isArray(t)&&Reflect.get(t,"record_type")==="pm.stream.trailer")throw new TypeError(`NDJSON row ${l} uses reserved record_type pm.stream.trailer`);return y([...e,{...r,record_type:"pm.stream.trailer"}])}export{m as a,v as b,y as c,E as d};
3
- //# sourceMappingURL=chunk-VZ63DEVJ.js.map
3
+ //# sourceMappingURL=chunk-XJD47LUH.js.map
@@ -1,4 +1,4 @@
1
- import{b as g,c as I,d as F}from"./chunk-VZ63DEVJ.js";import{a as de}from"./chunk-3CYOBJUK.js";import{L as ie,P as ne,U as ae,n as te,u as A,w as oe}from"./chunk-KRVI56QE.js";import{$a as Q,$c as ee,Hc as K,Tc as W,Vc as X,Xc as Y,Zb as V,_c as Z,aa as q,bd as re,cd as se,dd as le,na as L}from"./chunk-AJ7H6XUF.js";import"./chunk-UZ7BIUCI.js";import{Df as S,Gc as k,Jf as v,Mf as f,Nf as m,Ro as y,Uo as s,Wo as d,ab as O,cp as G,dp as M,ep as $,fp as U,gp as N,hp as B,ip as z,jp as P,kp as H,l as E,lp as J,m as C,mm as R,na as c,nm as T,pa as u,qi as j}from"./chunk-N4YGSG6F.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]="19d28e23-5337-5ec0-83e6-6e43b462ece7")}catch{}})();(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]="a51d6d75-0f11-5bdf-a384-2ca10ef064ef")}catch{}})();async function fe(e,t){let n=y(t),i=Date.now();if([e.raw,e.compact,e.full,e.provenance].filter(l=>l===!0).length>1)throw new u("Activity projection options are mutually exclusive. Use --raw, --compact, --provenance, or --full.",c.USAGE);let a=P(e.stream);if(a&&!n.json)throw new u("--stream requires --json output mode.",c.USAGE);let o=z(e),r=await V(a&&e.full!==!0&&e.provenance!==!0?{...o,raw:!0,compact:!0}:o,n);a?U(r,o,n):f(r,n),n.profile&&m(`profile:command=activity took_ms=${Date.now()-i}`)}function D(e){e.option("--id <value>","Filter by item ID").option("--op <value>","Filter by history operation").option("--author <value>","Filter by history author").option("--from <value>","Lower timestamp bound (ISO/date string or relative)").option("--to <value>","Upper timestamp bound (ISO/date string or relative)").option("--limit <n>","Return only the latest n activity entries").option("--unbounded","Explicitly return every matching activity entry (disables the default bound)").option("--compact","Condensed output: show only id, op, ts, author, msg per entry").option("--raw","Show the legacy compact per-event stream instead of the item digest").option("--full","Show full activity entries with JSON Patch payloads").option("--provenance","Show patch-free author, harness, instance, and extensible provenance").option("--provenance-summary","Include bounded provenance completeness counts").option("--harness <value>","Filter by recorded or vocabulary-resolved harness (repeatable)",s).option("--agent-instance <value>","Filter by privacy-safe agent instance (repeatable)",s).option("--provenance-filter <dimension=value>","Filter by an exact declared provenance value (repeatable)",s).option("--stream [mode]","Emit line-delimited JSON rows (requires --json). Optional mode: rows|ndjson|jsonl").description("Show recent activity across items.").action(fe)}(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]="1a62fe05-4407-5e76-87fa-5109dcca5640")}catch{}})();(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]="25c5349b-60d7-505b-98b0-3ed19e44b791")}catch{}})();(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]="b40cde4c-ca5a-522d-a731-52503c7e4fe0")}catch{}})();(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]="9212f45c-798d-5774-87ce-bb7d6ff5514a")}catch{}})();(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]="deee1339-ac17-5ae9-8add-a9dd766d182e")}catch{}})();(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]="de0fbee0-0bcf-5a46-9013-f7f883d3d0a3")}catch{}})();(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]="b662e21b-a163-5834-8789-65243f4c7c9c")}catch{}})();(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]="5cc1722c-b797-5b95-a493-3925003ba72e")}catch{}})();(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]="35c679a2-9d47-51fa-8bd2-175a4ec48d6b")}catch{}})();(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]="292959c7-8371-5ea6-be0d-350444dca8ef")}catch{}})();function ye(e,t){return!t||t.size===0?!0:e==="context"?t.has("context")||t.has("ctx"):t.has(e)}function ce(e){if(e===void 0)return;if(typeof e!="string")throw new u("List --format must be one of csv|table|json|ndjson|toon",c.USAGE);let t=e.trim().toLowerCase();if(t==="csv"||t==="table"||t==="json"||t==="ndjson"||t==="toon")return t;throw new u("List --format must be one of csv|table|json|ndjson|toon",c.USAGE)}function _(e,t,n,i=!1){if(t===void 0)return n;if(typeof t!="string")throw new u(`${e} --format must be one of ${i?"json|ndjson|toon":"json|toon"}`,c.USAGE);let a=t.trim().toLowerCase();if(a!=="json"&&(a!=="ndjson"||!i)&&a!=="toon")throw new u(`${e} --format must be one of ${i?"json|ndjson|toon":"json|toon"}`,c.USAGE);if(n.json===!0&&a==="toon")throw new u(`${e} cannot combine --json with --format toon`,c.USAGE);return{...n,json:a==="json"||a==="ndjson"}}function he(e,t){q[t]==="brief"&&e.includeBody!==!0&&e.compact!==!0&&e.brief!==!0&&e.full!==!0&&e.fields===void 0&&(e.brief=!0)}function ue(e){e.option("--has-notes","Show only items that have notes").option("--has-learnings","Show only items that have learnings").option("--has-files","Show only items that have linked files").option("--has-docs","Show only items that have linked docs").option("--has-tests","Show only items that have linked tests").option("--has-comments","Show only items that have comments").option("--has-deps","Show only items that have dependencies").option("--has-body","Show only items that have a non-empty body").option("--has-linked-command","Show only items whose linked tests carry a runnable command").option("--no-notes","Show only items that have no notes").option("--no-learnings","Show only items that have no learnings").option("--no-files","Show only items that have no linked files").option("--filter-files-missing","Alias for --no-files").option("--no-docs","Show only items that have no linked docs").option("--filter-docs-missing","Alias for --no-docs").option("--no-tests","Show only items that have no linked tests").option("--no-comments","Show only items that have no comments").option("--no-deps","Show only items that have no dependencies").option("--empty-body","Show only items with an empty body").option("--no-linked-command","Show only items whose linked tests carry no runnable command").option("--filter-reviewer-missing","Show only items missing reviewer").option("--filter-risk-missing","Show only items missing risk").option("--filter-confidence-missing","Show only items missing confidence").option("--filter-sprint-missing","Show only items missing sprint").option("--filter-release-missing","Show only items missing release")}var ve={draft:{name:"list-draft",dependencyBlocked:!1},open:{name:"list-open",dependencyBlocked:!1},in_progress:{name:"list-in-progress",dependencyBlocked:!1},blocked:{name:"list-blocked",dependencyBlocked:!0},closed:{name:"list-closed",dependencyBlocked:!1},canceled:{name:"list-canceled",dependencyBlocked:!1}};function ge(e,t){let n=e.stream===!0,i=ce(e.format),a=i==="csv"||i==="table",o=i==="json"||i==="ndjson"||i==="toon"?_("List",e.format,t,!0):t;if(n&&!o.json)throw new u("--stream requires --json output mode.",c.USAGE);if((a||i==="ndjson")&&n)throw new u("--format csv|table|ndjson cannot be combined with --stream.",c.USAGE);return{streamMode:n,listFormat:i,effectiveGlobal:o}}function be(e,t,n){if(n.listFormat==="csv"||n.listFormat==="table"){k(t);let i=t.items,a=n.listFormat==="csv"?R(i):T(i);!n.effectiveGlobal.quiet&&a.length>0&&v(`${a}
1
+ import{b as g,c as I,d as F}from"./chunk-XJD47LUH.js";import{a as de}from"./chunk-RJHLD64E.js";import{O as ie,S as ne,X as ae,q as te,x as A,z as oe}from"./chunk-O67BH435.js";import{$a as Q,$c as ee,Hc as K,Tc as W,Vc as X,Xc as Y,Zb as V,_c as Z,aa as q,bd as re,cd as se,dd as le,na as L}from"./chunk-ATB4ZZBQ.js";import"./chunk-UZ7BIUCI.js";import{Df as S,Gc as k,Jf as v,Mf as f,Nf as m,Ro as y,Uo as s,Wo as d,ab as O,cp as G,dp as M,ep as $,fp as U,gp as N,hp as B,ip as z,jp as P,kp as H,l as E,lp as J,m as C,mm as R,na as c,nm as T,pa as u,qi as j}from"./chunk-D4G43LBV.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]="19d28e23-5337-5ec0-83e6-6e43b462ece7")}catch{}})();(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]="a51d6d75-0f11-5bdf-a384-2ca10ef064ef")}catch{}})();async function fe(e,t){let n=y(t),i=Date.now();if([e.raw,e.compact,e.full,e.provenance].filter(l=>l===!0).length>1)throw new u("Activity projection options are mutually exclusive. Use --raw, --compact, --provenance, or --full.",c.USAGE);let a=P(e.stream);if(a&&!n.json)throw new u("--stream requires --json output mode.",c.USAGE);let o=z(e),r=await V(a&&e.full!==!0&&e.provenance!==!0?{...o,raw:!0,compact:!0}:o,n);a?U(r,o,n):f(r,n),n.profile&&m(`profile:command=activity took_ms=${Date.now()-i}`)}function D(e){e.option("--id <value>","Filter by item ID").option("--op <value>","Filter by history operation").option("--author <value>","Filter by history author").option("--from <value>","Lower timestamp bound (ISO/date string or relative)").option("--to <value>","Upper timestamp bound (ISO/date string or relative)").option("--limit <n>","Return only the latest n activity entries").option("--unbounded","Explicitly return every matching activity entry (disables the default bound)").option("--compact","Condensed output: show only id, op, ts, author, msg per entry").option("--raw","Show the legacy compact per-event stream instead of the item digest").option("--full","Show full activity entries with JSON Patch payloads").option("--provenance","Show patch-free author, harness, instance, and extensible provenance").option("--provenance-summary","Include bounded provenance completeness counts").option("--harness <value>","Filter by recorded or vocabulary-resolved harness (repeatable)",s).option("--agent-instance <value>","Filter by privacy-safe agent instance (repeatable)",s).option("--provenance-filter <dimension=value>","Filter by an exact declared provenance value (repeatable)",s).option("--stream [mode]","Emit line-delimited JSON rows (requires --json). Optional mode: rows|ndjson|jsonl").description("Show recent activity across items.").action(fe)}(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]="1a62fe05-4407-5e76-87fa-5109dcca5640")}catch{}})();(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]="25c5349b-60d7-505b-98b0-3ed19e44b791")}catch{}})();(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]="b40cde4c-ca5a-522d-a731-52503c7e4fe0")}catch{}})();(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]="9212f45c-798d-5774-87ce-bb7d6ff5514a")}catch{}})();(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]="deee1339-ac17-5ae9-8add-a9dd766d182e")}catch{}})();(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]="de0fbee0-0bcf-5a46-9013-f7f883d3d0a3")}catch{}})();(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]="b662e21b-a163-5834-8789-65243f4c7c9c")}catch{}})();(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]="5cc1722c-b797-5b95-a493-3925003ba72e")}catch{}})();(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]="35c679a2-9d47-51fa-8bd2-175a4ec48d6b")}catch{}})();(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]="292959c7-8371-5ea6-be0d-350444dca8ef")}catch{}})();function ye(e,t){return!t||t.size===0?!0:e==="context"?t.has("context")||t.has("ctx"):t.has(e)}function ce(e){if(e===void 0)return;if(typeof e!="string")throw new u("List --format must be one of csv|table|json|ndjson|toon",c.USAGE);let t=e.trim().toLowerCase();if(t==="csv"||t==="table"||t==="json"||t==="ndjson"||t==="toon")return t;throw new u("List --format must be one of csv|table|json|ndjson|toon",c.USAGE)}function _(e,t,n,i=!1){if(t===void 0)return n;if(typeof t!="string")throw new u(`${e} --format must be one of ${i?"json|ndjson|toon":"json|toon"}`,c.USAGE);let a=t.trim().toLowerCase();if(a!=="json"&&(a!=="ndjson"||!i)&&a!=="toon")throw new u(`${e} --format must be one of ${i?"json|ndjson|toon":"json|toon"}`,c.USAGE);if(n.json===!0&&a==="toon")throw new u(`${e} cannot combine --json with --format toon`,c.USAGE);return{...n,json:a==="json"||a==="ndjson"}}function he(e,t){q[t]==="brief"&&e.includeBody!==!0&&e.compact!==!0&&e.brief!==!0&&e.full!==!0&&e.fields===void 0&&(e.brief=!0)}function ue(e){e.option("--has-notes","Show only items that have notes").option("--has-learnings","Show only items that have learnings").option("--has-files","Show only items that have linked files").option("--has-docs","Show only items that have linked docs").option("--has-tests","Show only items that have linked tests").option("--has-comments","Show only items that have comments").option("--has-deps","Show only items that have dependencies").option("--has-body","Show only items that have a non-empty body").option("--has-linked-command","Show only items whose linked tests carry a runnable command").option("--no-notes","Show only items that have no notes").option("--no-learnings","Show only items that have no learnings").option("--no-files","Show only items that have no linked files").option("--filter-files-missing","Alias for --no-files").option("--no-docs","Show only items that have no linked docs").option("--filter-docs-missing","Alias for --no-docs").option("--no-tests","Show only items that have no linked tests").option("--no-comments","Show only items that have no comments").option("--no-deps","Show only items that have no dependencies").option("--empty-body","Show only items with an empty body").option("--no-linked-command","Show only items whose linked tests carry no runnable command").option("--filter-reviewer-missing","Show only items missing reviewer").option("--filter-risk-missing","Show only items missing risk").option("--filter-confidence-missing","Show only items missing confidence").option("--filter-sprint-missing","Show only items missing sprint").option("--filter-release-missing","Show only items missing release")}var ve={draft:{name:"list-draft",dependencyBlocked:!1},open:{name:"list-open",dependencyBlocked:!1},in_progress:{name:"list-in-progress",dependencyBlocked:!1},blocked:{name:"list-blocked",dependencyBlocked:!0},closed:{name:"list-closed",dependencyBlocked:!1},canceled:{name:"list-canceled",dependencyBlocked:!1}};function ge(e,t){let n=e.stream===!0,i=ce(e.format),a=i==="csv"||i==="table",o=i==="json"||i==="ndjson"||i==="toon"?_("List",e.format,t,!0):t;if(n&&!o.json)throw new u("--stream requires --json output mode.",c.USAGE);if((a||i==="ndjson")&&n)throw new u("--format csv|table|ndjson cannot be combined with --stream.",c.USAGE);return{streamMode:n,listFormat:i,effectiveGlobal:o}}function be(e,t,n){if(n.listFormat==="csv"||n.listFormat==="table"){k(t);let i=t.items,a=n.listFormat==="csv"?R(i):T(i);!n.effectiveGlobal.quiet&&a.length>0&&v(`${a}
2
2
  `)}else if(n.listFormat==="ndjson"){k(t);let i=I(t.items);!n.effectiveGlobal.quiet&&i.length>0&&v(`${i}
3
3
  `)}else n.streamMode?$(e,t,n.effectiveGlobal):f(t,n.effectiveGlobal)}async function we(e){let t=y(e.actionCommand),n=e.aliasContract?{...t,command:e.aliasContract.canonical}:t,i=Date.now();e.aliasContract?.lifecycle==="deprecated"&&await j(O(process.cwd(),n.path)).then(me=>me.ux.deprecation_hints)&&m(C(e.aliasContract));let a=S("list",e.options),o=G(a),r=xe(e,o),{effectiveName:l,effectiveStatus:h,effectiveDependencyBlocked:p,effectiveExcludeTerminal:w}=r;he(o,l),Object.assign(o,{projectionCommand:l}),w&&(o.excludeTerminal=!0),o.dependencyBlocked=p;let x=ge(a,n),pe=await L(p?void 0:h,o,n);be("list",pe,x),n.profile&&m(`profile:command=list took_ms=${Date.now()-i}`)}function xe(e,t){let n=e.name,i=e.status,a=e.dependencyBlocked===!0,o=e.excludeTerminal===!0,r=t.status?.trim().toLowerCase(),l=e.name==="list"&&r!==void 0?ve[r]:void 0;return e.name==="list"&&(e.options.all===!0||r==="all"?(n="list-all",o=!1,t.status=void 0):r!==void 0&&l!==void 0&&(n=l.name,i=r,a=l.dependencyBlocked,o=!1,t.status=void 0)),(n==="list-open"||n==="list-in-progress")&&(t.lifecycleBucket=n==="list-open"?"open":"in_progress",i=void 0),{effectiveName:n,effectiveStatus:i,effectiveDependencyBlocked:a,effectiveExcludeTerminal:o}}function ke(e,t){let{name:n,description:i,status:a,excludeTerminal:o,allowStatusFilter:r,dependencyBlocked:l,aliasContract:h}=t,p=e.command(n,{hidden:h?.hidden===!0}).description(i);r&&p.option("--status <value>","Filter by status (repeatable or comma-separated; matches any; all selects every status)",s),n==="list"&&p.option("--all","Include every lifecycle status"),p.option("--for <intent>",`Apply a declared context intent projection. ${g("list","--for")}`).option("--token-budget <n>","Override the selected intent's maximum estimated output tokens").option("--type <value>","Filter by item type (repeatable or comma-separated; matches any)",s).option("--tag <value>","Filter by tag (repeatable or comma-separated; matches any)",s).option("--priority <value>","Filter by priority (repeatable or comma-separated; matches any)",s).option("--deadline-before <value>","Filter by deadline upper bound (ISO/date string or relative)").option("--deadline-after <value>","Filter by deadline lower bound (ISO/date string or relative)").option("--today","Filter to items updated since local midnight today").option("--recent","Filter to items updated in the last 7 days").option("--updated-after <value>","Updated since ISO timestamp or signed relative (-2h/-7d for past); use last-window ISO").option("--updated-before <value>","Filter by updated_at upper bound: ISO timestamp or signed relative (-2h/+1d)").option("--created-after <value>","Filter by created_at lower bound: ISO timestamp or signed relative (-2h/+1d)").option("--created-before <value>","Filter by created_at upper bound: ISO timestamp or signed relative (-2h/+1d)").option("--ids <value>","Filter by explicit item IDs (comma-separated or repeatable)").option("--assignee <value>","Filter by assignee",s).option("--assignee-filter <value>","Filter assignee presence: assigned|unassigned").option("--parent <value>","Filter by parent item ID").option("--sprint <value>","Filter by sprint",s).option("--release <value>","Filter by release",s).option("--filter-ac-missing","Show only items missing acceptance_criteria").option("--filter-estimates-missing","Show only items missing estimated_minutes").option("--filter-resolution-missing","Show only terminal items missing resolution").option("--filter-metadata-missing","Show only items missing any tracked metadata (AC, estimate, or resolution)").option("--limit <n>","Alias for --output-limit; --output-budget may cap rows").option("--offset <n>","Skip the first n matching rows before limit is applied").option("--after <cursor>","Continue after an opaque next_cursor from a previous list response").option("--no-truncate","Return every matched row after the explicit status and field filters").option("--include-body","Include item body in each returned list row").option("--strict-read","Fail closed if any item document or item directory cannot be read").option("--compact","Render compact list projection fields (mutually exclusive with --brief/--full/--fields)").option("--brief","Ultra-compact output: id, status, type, title only (agent-optimized, mutually exclusive with --compact/--full/--fields)").option("--full","Render full list projection fields (mutually exclusive with --compact/--brief/--fields)").option("--fields <value>",`Render custom comma-separated list fields (mutually exclusive with --compact/--brief/--full). ${g(n,"--fields")}`).option("--sort <value>","Sort field: priority|deadline|updated_at|created_at|title|parent (aliases: updated, created)").option("--order <value>","Sort order: asc|desc (requires --sort)").option("--tree","Render rows in parent/child tree order").option("--tree-depth <n>","Maximum recursion depth with --tree (0 keeps root rows only)").option("--format <value>","Output render mode: csv|table (human export) or json|ndjson|toon (machine output override)").option("--stream","Emit line-delimited JSON rows (requires --json)"),ue(p),p.action(async(w,x)=>{await we({name:n,status:a,excludeTerminal:o,dependencyBlocked:l,options:w,actionCommand:x,aliasContract:h})}),d(p,"--tags <value>","Alias for --tag"),d(p,"--assignee_filter <value>","Alias for --assignee-filter"),d(p,"--tree_depth <n>","Alias for --tree-depth"),d(p,"--token_budget <n>","Alias for --token-budget"),d(p,"--filter-estimate-missing","Alias for --filter-estimates-missing")}async function Se(e,t){let n=y(t),i=Date.now(),a=await te(M(e),n);f(a,n),n.profile&&m(`profile:command=aggregate took_ms=${Date.now()-i}`)}async function _e(e,t){let n=y(t),i=Date.now(),a=H(S("context",e)),o=await X(a,n),r=K(a,n);if(r==="markdown")n.quiet||v(`${W(o)}
4
4
  `);else if(r==="ndjson"){k(o);let l=I([...o.high_level,...o.low_level,...o.blocked_fallback]);!n.quiet&&l.length>0&&v(`${l}
@@ -8,4 +8,4 @@ import{b as g,c as I,d as F}from"./chunk-VZ63DEVJ.js";import{a as de}from"./chun
8
8
  `);return}for await(let a of se({...e,intervalMs:i}))n||v(`${F(a.events,{count:a.count,has_more:a.has_more,next_cursor:a.next_cursor??null,source:a.source,heartbeat:a.count===0})}
9
9
  `)}function je(e){return e.cursor_mode==="row"?I(e.events):F(e.events,{count:e.count,has_more:e.has_more,next_cursor:e.next_cursor??null,source:e.source,...e.provenance_summary===void 0?{}:{provenance_summary:e.provenance_summary}})}async function Re(e,t){let n=y(t),i=Date.now(),a=Ce(e,n.path);if(e.follow===!0){await Oe(a,e,n.quiet===!0);return}let o=await re(a);if(k(o),n.json){f(o,n),n.profile&&m(`profile:command=events took_ms=${Date.now()-i}`);return}let r=je(o);!n.quiet&&r.length>0&&v(`${r}
10
10
  `),n.profile&&m(`profile:command=events took_ms=${Date.now()-i}`)}async function Te(e,t,n,i,a){let o=y(a),r=Date.now(),l=await Q(e,t,n,{...Array.isArray(i.kind)?{kind:i.kind}:{},maxDepth:typeof i.maxDepth=="string"?i.maxDepth:void 0,limit:typeof i.limit=="string"?i.limit:void 0,after:typeof i.after=="string"?i.after:void 0,direction:typeof i.direction=="string"?i.direction:void 0,maxPaths:typeof i.maxPaths=="string"?i.maxPaths:void 0,sample:typeof i.sample=="string"?i.sample:void 0,...Array.isArray(i.exemptIsolate)?{exemptIsolate:i.exemptIsolate}:{},...Array.isArray(i.exemptIsolateType)?{exemptIsolateType:i.exemptIsolateType}:{},saveBaseline:i.saveBaseline===!0,rebuild:i.rebuild===!0,clear:i.clear===!0,summary:i.summary===!0,full:i.full===!0},o);f(l,o),o.profile&&m(`profile:command=graph took_ms=${Date.now()-r}`)}function At(e,t){let n=t?.commandFilter,i=o=>ye(o,n),a=[{name:"list",description:"List active items with optional lifecycle-status and project filters.",excludeTerminal:!0,allowStatusFilter:!0},{name:"list-all",description:"List all items with optional filters.",excludeTerminal:!1,allowStatusFilter:!0},{name:"list-draft",description:"List draft items with optional filters.",status:"draft"},{name:"list-open",description:"List open items with optional filters.",status:"open",excludeTerminal:!1,allowStatusFilter:!1},{name:"list-in-progress",description:"List in-progress items with optional filters.",status:"in_progress",excludeTerminal:!1,allowStatusFilter:!1},{name:"list-blocked",description:"List blocked items (blocked status or open blocked_by dependencies, matching pm next) with optional filters.",dependencyBlocked:!0,excludeTerminal:!1,allowStatusFilter:!1},{name:"list-closed",description:"List closed items with optional filters.",status:"closed"},{name:"list-canceled",description:"List canceled items with optional filters.",status:"canceled"}];for(let o of a)if(i(o.name)){let r=E(o.name);ke(e,{...o,...r?.registration==="commander"?{aliasContract:r}:{}})}if(i("aggregate")){let o=e.command("aggregate").description("Group item counts and numeric measures.").option("--set-mode <value>","Set grouping: element (default)|tuple").option("--limit <value>","Group page size (default: 50)").option("--after <value>","Continue with next_after cursor").option("--group-by <value>","Fields: parent,type,priority,status,assignee,tags,sprint,release (comma-separated)").option("--count","Counts (default)").option("--completion","Status counts and completion_pct").option("--sum <field>","Group numeric sum").option("--avg <field>","Group numeric average").option("--include-unparented","Keep unparented group").option("--status <value>","Item status").option("--type <value>","Item type").option("--tag <value>","Filter by tag").option("--priority <value>","Filter by priority").option("--deadline-before <value>","Latest deadline (ISO/date or relative)").option("--deadline-after <value>","Earliest deadline (ISO/date or relative)").option("--assignee <value>","Filter by assignee").option("--assignee-filter <value>","Assignee presence: assigned|unassigned").option("--parent <value>","Parent ID").option("--sprint <value>","Filter by sprint").option("--release <value>","Filter by release");d(o,"--include_unparented","Alias for --include-unparented"),d(o,"--assignee_filter <value>","Alias for --assignee-filter"),o.action(Se)}if(i("context")){let o=e.command("context").alias("ctx").description("Show a token-efficient project context snapshot for next-work decisions.").option("--for <intent>",`Apply a declared context intent projection. ${g("context","--for")}`).option("--date <value>","Anchor date/time for agenda window calculations (ISO/date string or relative)").option("--from <value>","Agenda lower bound (ISO/date string or relative)").option("--to <value>","Agenda upper bound (ISO/date string or relative)").option("--past","Include past agenda entries in bounded windows").option("--type <value>","Filter by item type").option("--tag <value>","Filter by tag").option("--priority <value>","Filter by priority").option("--assignee <value>","Filter by assignee").option("--assignee-filter <value>","Filter assignee presence: assigned|unassigned").option("--sprint <value>","Filter by sprint").option("--release <value>","Filter by release").option("--parent <id>","Scope the snapshot to one item's subtree (the item plus all descendants)").option("--limit <n>","Limit focus and agenda rows per section").option("--after <cursor>","Continue ranked focus after a next_cursor from a previous context response").option("--format <value>","Context output format override: markdown|toon|json|ndjson").option("--depth <value>","Context depth: brief|standard|deep|full (full = every section, no per-section cap)").option("--section <value...>","Include specific sections (repeatable; overrides --depth)").option("--fields <value>","Project focus rows to a comma-separated field subset (e.g. id,title,priority)").option("--activity-limit <n>","Limit recent activity entries (default: settings or 10)").option("--stale-threshold <value>","Staleness cutoff in days (e.g. 7 or 7d; default: settings or 7)").option("--explain-ranking","Include the scorer model, per-signal contributions, and ranked candidate ids").option("--token-budget <n>","Maximum estimated tokens spent on ranked focus rows").option("--no-extension-health","Omit the installed extension health summary").option("--no-tags","Omit tag arrays from context focus rows");d(o,"--assignee_filter <value>","Alias for --assignee-filter"),d(o,"--max-items <n>","Alias for --limit"),d(o,"--explain_ranking","Alias for --explain-ranking"),d(o,"--token_budget <n>","Alias for --token-budget"),o.action(_e)}if(i("next")){let o=e.command("next").description("Recommend the next actionable (unblocked, ready) work item with rationale + blocked companion.").option("--for <intent>",`Apply a declared context intent projection. ${g("next","--for")}`).option("--type <value>","Filter candidate items by type").option("--tag <value>","Filter candidate items by tag").option("--priority <value>","Filter candidate items by priority").option("--assignee <value>","Filter candidate items by assignee").option("--assignee-filter <value>","Filter assignee presence: assigned|unassigned").option("--sprint <value>","Filter candidate items by sprint").option("--release <value>","Filter candidate items by release").option("--parent <id>","Scope to one item's subtree (the item plus all descendants)").option("--limit <n>","Limit ready rows (default: 5; non-positive falls back to default)").option("--blocked-limit <n>","Limit blocked rows (default: same as --limit)").option("--ready-only","Omit the blocked companion list").option("--include-decisions","Include human-gated Decision items in the claimable ready queue").option("--include-gates","Include outcome gates in the ready queue").option("--include-containers","Include containers with unfinished descendants in the ready queue").option("--format <value>","Next output format override: markdown|toon|json").option("--explain-ranking","Include the scorer model, per-signal contributions, and ranked ready ids").option("--token-budget <n>","Maximum estimated tokens spent on the ranked ready queue");d(o,"--assignee_filter <value>","Alias for --assignee-filter"),d(o,"--blocked_limit <n>","Alias for --blocked-limit"),d(o,"--ready_only","Alias for --ready-only"),d(o,"--explain_ranking","Alias for --explain-ranking"),d(o,"--token_budget <n>","Alias for --token-budget"),o.action(Ie)}if(i("search")){let o=e.command("search").argument("<keywords...>","Keyword query tokens").description("Search items with keyword, semantic, or hybrid retrieval. Inline field:value tokens (tag:/status:/type:/priority:) in the query are parsed as filters, e.g. 'auth tag:area:search status:open'.").option("--for <intent>",`Apply a declared context intent projection. ${g("search","--for")}`).option("--token-budget <n>","Override the selected intent's maximum estimated output tokens").option("--mode <value>","Search mode: keyword|semantic|hybrid (default: auto)").option("--semantic","Shorthand for --mode semantic").option("--hybrid","Shorthand for --mode hybrid").option("--match-mode <value>","Token match mode: and|or|exact (default: or with all-terms ranking bonus; and = hard-require every token; exact = exact phrase)").option("--min-score <value>","Per-query minimum score threshold (finite number >= 0); overrides settings search.score_threshold for this query only").option("--count","Return only the count of matching items (post-filter/threshold, pre-limit); skips hit rows").option("--semantic-weight <value>","Override hybrid semantic weight for this query (0..1); invalid values fall back to settings").option("--include-linked","Include linked files, docs, and tests in the searchable corpus").option("--title-exact","Require exact normalized title match for the full query string").option("--phrase-exact","Require exact normalized phrase match in searchable text").option("--highlight","Emit per-field matched-text snippets (wrapped in \xAB\u2026\xBB) on each hit; off by default").option("--status <value>","Filter by status before query (all, open/closed/canceled aliases, or configured status id; CSV)").option("--type <value>","Filter by item type").option("--tag <value>","Filter by tag").option("--priority <value>","Filter by priority").option("--deadline-before <value>","Filter by deadline upper bound (ISO/date string or relative)").option("--deadline-after <value>","Filter by deadline lower bound (ISO/date string or relative)").option("--updated-after <value>",'Filter by updated_at lower bound: ISO timestamp or signed relative (e.g. "-2h"/"-7d" for the past)').option("--updated-before <value>","Filter by updated_at upper bound: ISO timestamp or signed relative (-2h/+1d)").option("--created-after <value>","Filter by created_at lower bound: ISO timestamp or signed relative (-2h/+1d)").option("--created-before <value>","Filter by created_at upper bound: ISO timestamp or signed relative (-2h/+1d)").option("--assignee <value>","Filter by assignee").option("--sprint <value>","Filter by sprint").option("--release <value>","Filter by release").option("--parent <value>","Filter by parent item ID").option("--compact","Render compact search hits (default; mutually exclusive with --full/--fields)").option("--full","Render full search hits with nested item payloads (mutually exclusive with --compact/--fields)").option("--fields <value>",`Render custom comma-separated search hit fields (mutually exclusive with --compact/--full). ${g("search","--fields")}`).option("--format <value>","Search output format override: json|ndjson|toon").option("--limit <n>","Limit returned item count").option("--after <cursor>","Continue after an opaque next_cursor from a previous search response");ue(o),o.action(Ae),d(o,"--tags <value>","Alias for --tag"),d(o,"--token_budget <n>","Alias for --token-budget")}if(i("eval")&&e.command("eval").description("Evaluate search relevance against a curated golden-query set: reports nDCG@k, MRR@k, precision@k, and recall@k per query plus the macro average. Use --fail-under as a CI gate.").option("--mode <value>","Default retrieval mode for queries without their own: keyword|semantic|hybrid (default: keyword)").option("--k <n>","Metric cutoff @k (positive integer; default: 10)").option("--fail-under <value>","Exit non-zero when aggregate nDCG@k falls below this threshold (0..1); CI gate").option("--queries <path>",`Query JSON (${ne}); default: search/eval-queries.json; errors show an example`).option("--format <value>","Eval output format override: json|toon").action(Fe),i("get")){let o=e.command("get").argument("<id>","Item id").option("--for <intent>",`Apply a declared context intent projection. ${g("get","--for")}`).option("--token-budget <n>","Override the selected intent's maximum estimated output tokens").option("--depth <value>","brief|standard|deep|full (default: standard)").option("--full","Full details and children for any type; excludes --depth/--fields").option("--fields <value>",`Render custom comma-separated item metadata fields. ${g("get","--fields")}`).option("--tree","Include descendants rooted at the requested item").option("--tree-depth <n>","Maximum subtree depth for --tree descendants").option("--at <version-or-timestamp>","Reconstruct a verified historical item state without mutating it").option("--format <value>","Get output format override: json|toon").description("Show item details by ID.").action(De);d(o,"--tree_depth <n>","Alias for --tree-depth"),d(o,"--token_budget <n>","Alias for --token-budget")}if(i("history")){let o=e.command("history").enablePositionalOptions().argument("<id>","Item id").option("--limit <n>","Latest n entries").option("--compact","Index, time, op, author, patch count, fields").option("--full","Full entries with JSON Patches").option("--provenance","Authors and provenance; no patches").option("--provenance-summary","Count provenance completeness").option("--harness <value>","Recorded/resolved harness (repeatable)",s).option("--agent-instance <value>","Agent instance (repeatable)",s).option("--provenance-filter <dimension=value>","Exact provenance match (repeatable)",s).option("--diff","Before/after field diffs").option("--field <name>","Filter changed field; implies --diff").option("--verify","Verify full chain and replay").option("--strict-exit","With --verify, fail on integrity errors").option("--fail-on-warn","Alias for --strict-exit").option("--format <value>","Output: json|toon").description("Show item history entries.").action(Ee);de(o,!0),D(o.command("activity"))}i("events")&&e.command("events").option("--since <cursor-or-timestamp>","Resume strictly after a durable cursor, or include events from an ISO timestamp").option("--type <value>","Filter by mutation operation (repeatable or comma-separated)",s).option("--author <value>","Filter by mutation author (repeatable or comma-separated)",s).option("--item <value>","Filter by item or workspace stream id (repeatable or comma-separated)",s).option("--limit <n>","Return at most 1,000 events (default: 100)").option("--cursor-mode <mode>","Cursor framing: batch emits one terminal trailer (default); row preserves one cursor per event").option("--full","Include each complete authoritative history entry").option("--provenance","Include patch-free author, harness, instance, and extensible provenance").option("--provenance-summary","Include bounded provenance completeness counts").option("--harness <value>","Filter by recorded or vocabulary-resolved harness (repeatable)",s).option("--agent-instance <value>","Filter by privacy-safe agent instance (repeatable)",s).option("--provenance-filter <dimension=value>","Filter by an exact declared provenance value (repeatable)",s).option("--follow","Continue emitting committed events as newline-delimited JSON").option("--interval-ms <n>","Empty-read delay while following (minimum: 10ms; default: 250ms)").description("Emit cursor-resumable committed mutation facts as newline-delimited JSON.").action(Re),i("activity")&&D(e.command("activity",{hidden:!0})),i("graph")&&e.command("graph").argument("<subcommand>","Graph query (ancestors, descendants, predecessors, successors, paths, impact, analyze, audit, communities, redundancy, dominators, slack, centrality, articulation, plan, index)").argument("[id]","Root item id (traversals, paths, impact, and dominators)").argument("[target]","Target item id (paths only)").option("--kind <value>","Restrict traversal to registered relationship kinds (repeatable or comma-separated)",s).option("--max-depth <value>","Maximum traversal depth (non-negative integer)").option("--limit <value>","Maximum returned rows per bounded collection").option("--after <value>","Resume a traversal after this previously returned node id").option("--direction <value>","Edge orientation for paths/impact (outgoing, incoming, or both)").option("--max-paths <value>","Maximum enumerated paths (paths only)").option("--sample <value>","Maximum evidence sample entries per audit finding (audit only)").option("--exempt-isolate <value>","Item ids treated as explicitly valid isolates by the audit (repeatable or comma-separated)",s).option("--exempt-isolate-type <value>","Item types whose active isolates are policy-valid for the audit (repeatable or comma-separated)",s).option("--save-baseline","Persist the audit census as the change-since-baseline comparison point (audit only)").option("--rebuild","Rebuild and warm the durable graph index (index only)").option("--clear","Delete the durable graph index (index only)").option("--summary","Return counts-first envelopes without row collections").option("--full","Return the complete graph row projection").description("Bounded workspace relationship-graph queries, analytics, and governance audit.").action(Te)}var Ft={resolveReadCommandOutputFormat:_,parseListFormat:ce};export{Ft as _testOnlyRegisterListQuery,At as registerListQueryCommands};
11
- //# sourceMappingURL=register-list-query-75QXHIFH.js.map
11
+ //# sourceMappingURL=register-list-query-53WYLNZT.js.map