@unbrained/pm-cli 2026.9.18 → 2026.9.20

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 (189) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +963 -924
  3. package/dist/cli/invocation-profile.d.ts +26 -0
  4. package/dist/cli/invocation-profile.js +3 -0
  5. package/dist/cli/main.d.ts +10 -76
  6. package/dist/cli/main.js +1 -2
  7. package/dist/cli/register-operations.js +1 -1
  8. package/dist/cli/runtime/activation.d.ts +51 -0
  9. package/dist/cli/runtime/activation.js +2 -0
  10. package/dist/cli/runtime/invocation-options.d.ts +41 -0
  11. package/dist/cli/runtime/invocation-options.js +2 -0
  12. package/dist/cli/runtime/selection.d.ts +29 -0
  13. package/dist/cli/runtime/selection.js +2 -0
  14. package/dist/cli/runtime/telemetry-outcome.d.ts +20 -0
  15. package/dist/cli/runtime/telemetry-outcome.js +2 -0
  16. package/dist/cli-bundle/bundle-manifest.json +156 -156
  17. package/dist/cli-bundle/chunks/{chunk-T4J2X3RK.js → chunk-2FEKKSLN.js} +1255 -1255
  18. package/dist/cli-bundle/chunks/{chunk-XFGWFVR3.js → chunk-2QLXN6HZ.js} +46 -46
  19. package/dist/cli-bundle/chunks/chunk-2UNYUB4A.js +2 -0
  20. package/dist/cli-bundle/chunks/chunk-33R5PEKI.js +8 -0
  21. package/dist/cli-bundle/chunks/chunk-7YUYLYJQ.js +6 -0
  22. package/dist/cli-bundle/chunks/{chunk-GRFRKHFC.js → chunk-FBWAECBI.js} +3 -3
  23. package/dist/cli-bundle/chunks/chunk-GRHSNUQO.js +20 -0
  24. package/dist/cli-bundle/chunks/chunk-HAFSMFJK.js +3 -0
  25. package/dist/cli-bundle/chunks/chunk-JBJUOOJI.js +238 -0
  26. package/dist/cli-bundle/chunks/chunk-K7RWRJLT.js +29 -0
  27. package/dist/cli-bundle/chunks/{chunk-AOD5WE6U.js → chunk-QZTS23BV.js} +2 -2
  28. package/dist/cli-bundle/chunks/chunk-TTFVQB4S.js +2 -0
  29. package/dist/cli-bundle/chunks/{register-list-query-43EQISX7.js → register-list-query-5V43MYPN.js} +6 -6
  30. package/dist/cli-bundle/chunks/{register-mutation-TSZNAKEU.js → register-mutation-EVRYSU72.js} +4 -4
  31. package/dist/cli-bundle/chunks/register-operations-LJU5H2CU.js +2 -0
  32. package/dist/cli-bundle/chunks/register-setup-HJUNGYBB.js +2 -0
  33. package/dist/cli-bundle/focused-chunks/chunk-3XPBKIV6.js +12 -0
  34. package/dist/cli-bundle/focused-chunks/{chunk-PNCUNPSA.js → chunk-5BLRMUMK.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-QVVOXVYI.js → chunk-6MNKQKT6.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/{chunk-246P5AK7.js → chunk-DPBTIFW7.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/chunk-DRNXMOSV.js +2 -0
  38. package/dist/cli-bundle/focused-chunks/chunk-FXAZPSU6.js +165 -0
  39. package/dist/cli-bundle/focused-chunks/{chunk-YJYSFWSW.js → chunk-HYPK5OPA.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/{chunk-GEFWBVPQ.js → chunk-IA5CCSBB.js} +2 -2
  41. package/dist/cli-bundle/focused-chunks/{chunk-C6SH62BX.js → chunk-ISEOBALS.js} +2 -2
  42. package/dist/cli-bundle/focused-chunks/{chunk-7UZHYT5B.js → chunk-K5ZCBC6Y.js} +3 -3
  43. package/dist/cli-bundle/focused-chunks/chunk-L6L4XCLY.js +2 -0
  44. package/dist/cli-bundle/focused-chunks/chunk-N6KI3LWF.js +3 -0
  45. package/dist/cli-bundle/focused-chunks/chunk-PC6ZZVNP.js +20 -0
  46. package/dist/cli-bundle/focused-chunks/chunk-RQL5WLNZ.js +30 -0
  47. package/dist/cli-bundle/focused-chunks/{chunk-MMX7BQLH.js → chunk-U2SB2BMM.js} +2 -2
  48. package/dist/cli-bundle/focused-chunks/chunk-UIS5FVHH.js +59 -0
  49. package/dist/cli-bundle/main.js +26 -27
  50. package/dist/cli-bundle/sdk-authoring.js +1 -1
  51. package/dist/cli-bundle/sdk-contracts.js +2 -2
  52. package/dist/cli-bundle/sdk-core.js +39 -39
  53. package/dist/cli-bundle/sdk-governance.js +1 -1
  54. package/dist/cli-bundle/sdk-graph.js +1 -1
  55. package/dist/cli-bundle/sdk-merge.js +42 -42
  56. package/dist/cli-bundle/sdk-query.js +1 -1
  57. package/dist/cli-bundle/sdk-runtime.js +1 -1
  58. package/dist/cli-bundle/sdk-testing.js +1 -1
  59. package/dist/cli-bundle/sdk.js +8 -8
  60. package/dist/cli.js +1 -1
  61. package/dist/core/checkpoint/mutation-checkpoint.d.ts +1 -1
  62. package/dist/core/checkpoint/mutation-checkpoint.js +2 -2
  63. package/dist/core/diagnostics/remediation.js +1 -1
  64. package/dist/core/extensions/extension-types.d.ts +2 -2
  65. package/dist/core/extensions/loader.d.ts +9 -15
  66. package/dist/core/extensions/loader.js +1 -1
  67. package/dist/core/extensions/manifest-parser.d.ts +5 -0
  68. package/dist/core/extensions/manifest-parser.js +2 -0
  69. package/dist/core/extensions/registration-contracts.d.ts +34 -0
  70. package/dist/core/extensions/registration-contracts.js +2 -0
  71. package/dist/core/fs/atomic-create.d.ts +7 -0
  72. package/dist/core/fs/atomic-create.js +2 -0
  73. package/dist/core/governance/issue-codes.d.ts +10 -1
  74. package/dist/core/governance/issue-codes.js +1 -1
  75. package/dist/core/history/history.js +1 -1
  76. package/dist/core/schema/runtime-schema.d.ts +1 -1
  77. package/dist/core/schema/runtime-schema.js +2 -2
  78. package/dist/core/session/session-state.js +1 -1
  79. package/dist/core/store/settings-concurrency.d.ts +7 -0
  80. package/dist/core/store/settings-concurrency.js +2 -0
  81. package/dist/core/store/settings.d.ts +8 -1
  82. package/dist/core/store/settings.js +3 -2
  83. package/dist/core/validate/fix-planning.d.ts +3 -3
  84. package/dist/core/validate/fix-planning.js +1 -1
  85. package/dist/sdk/agent/refusal-reachability.d.ts +1 -1
  86. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  87. package/dist/sdk/completion/bash.d.ts +3 -0
  88. package/dist/sdk/completion/bash.js +2 -0
  89. package/dist/sdk/completion/fish.d.ts +3 -0
  90. package/dist/sdk/completion/fish.js +1054 -0
  91. package/dist/sdk/completion/shared.d.ts +103 -0
  92. package/dist/sdk/completion/shared.js +2 -0
  93. package/dist/sdk/completion/zsh.d.ts +3 -0
  94. package/dist/sdk/completion/zsh.js +1109 -0
  95. package/dist/sdk/completion.d.ts +5 -30
  96. package/dist/sdk/completion.js +1 -2160
  97. package/dist/sdk/contracts.d.ts +1 -0
  98. package/dist/sdk/contracts.js +1 -1
  99. package/dist/sdk/extension/install-runtime.d.ts +1 -1
  100. package/dist/sdk/extension/install-runtime.js +2 -2
  101. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  102. package/dist/sdk/governance/closure-timestamps.d.ts +32 -0
  103. package/dist/sdk/governance/closure-timestamps.js +2 -0
  104. package/dist/sdk/governance/health.js +1 -1
  105. package/dist/sdk/governance/provenance-health.d.ts +27 -0
  106. package/dist/sdk/governance/provenance-health.js +1 -1
  107. package/dist/sdk/governance/validate-normalization.d.ts +2 -0
  108. package/dist/sdk/governance/validate-normalization.js +1 -1
  109. package/dist/sdk/governance/validate.js +1 -1
  110. package/dist/sdk/governance.d.ts +1 -0
  111. package/dist/sdk/governance.js +1 -1
  112. package/dist/sdk/graph/index.d.ts +1 -0
  113. package/dist/sdk/graph/index.js +1 -1
  114. package/dist/sdk/graph/query-contracts.d.ts +18 -0
  115. package/dist/sdk/graph/query-contracts.js +2 -0
  116. package/dist/sdk/graph/run.d.ts +2 -0
  117. package/dist/sdk/graph/run.js +1 -1
  118. package/dist/sdk/graph/traversal.js +1 -1
  119. package/dist/sdk/lifecycle-policy.js +1 -1
  120. package/dist/sdk/public-surface.json +1 -1
  121. package/dist/sdk/query/search/corpus.d.ts +27 -0
  122. package/dist/sdk/query/search/corpus.js +2 -0
  123. package/dist/sdk/query/search/filters.d.ts +27 -0
  124. package/dist/sdk/query/search/filters.js +2 -0
  125. package/dist/sdk/query/search/input.d.ts +28 -0
  126. package/dist/sdk/query/search/input.js +2 -0
  127. package/dist/sdk/query/search/lexical.d.ts +34 -0
  128. package/dist/sdk/query/search/lexical.js +2 -0
  129. package/dist/sdk/query/search/response.d.ts +34 -0
  130. package/dist/sdk/query/search/response.js +2 -0
  131. package/dist/sdk/query/search/semantic.d.ts +229 -0
  132. package/dist/sdk/query/search/semantic.js +3 -0
  133. package/dist/sdk/query/search/types.d.ts +123 -0
  134. package/dist/sdk/query/search/types.js +2 -0
  135. package/dist/sdk/query/search.d.ts +13 -364
  136. package/dist/sdk/query/search.js +1 -2
  137. package/dist/sdk/runtime/actions.d.ts +4 -0
  138. package/dist/sdk/runtime/actions.js +2 -0
  139. package/dist/sdk/runtime/context.d.ts +38 -0
  140. package/dist/sdk/runtime/context.js +2 -0
  141. package/dist/sdk/runtime/schema.d.ts +4 -0
  142. package/dist/sdk/runtime/schema.js +2 -0
  143. package/dist/sdk/runtime.d.ts +90 -95
  144. package/dist/sdk/runtime.js +1 -1
  145. package/docs/ARCHITECTURE.md +68 -0
  146. package/docs/HISTORY_GOVERNANCE_REPAIR.md +66 -0
  147. package/docs/MCP_OPTION_CONFORMANCE.md +41 -0
  148. package/docs/OUTPUT_PROJECTION_CONTRACTS.md +18 -2
  149. package/docs/PERFORMANCE.md +37 -0
  150. package/docs/README.md +1 -0
  151. package/docs/SDK_AGENT_SESSION_CONTEXT.md +28 -4
  152. package/docs/SDK_LIFECYCLE.md +16 -2
  153. package/docs/WORKSPACE_CONCURRENCY.md +67 -0
  154. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +4 -3
  155. package/marketplace.json +2 -2
  156. package/package.json +3 -3
  157. package/packages/pm-beads/package.json +1 -1
  158. package/packages/pm-calendar/package.json +1 -1
  159. package/packages/pm-command-kit/package.json +1 -1
  160. package/packages/pm-digital-twin/package.json +1 -1
  161. package/packages/pm-governance-audit/package.json +1 -1
  162. package/packages/pm-guide-shell/package.json +1 -1
  163. package/packages/pm-kanban/package.json +1 -1
  164. package/packages/pm-lifecycle-hooks/package.json +1 -1
  165. package/packages/pm-linked-test-adapters/package.json +1 -1
  166. package/packages/pm-search-advanced/package.json +1 -1
  167. package/packages/pm-templates/package.json +1 -1
  168. package/packages/pm-todos/package.json +1 -1
  169. package/packages/pm-vcs/package.json +1 -1
  170. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  171. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  172. package/dist/cli-bundle/chunks/chunk-CA5DRNGA.js +0 -29
  173. package/dist/cli-bundle/chunks/chunk-CI2JCBN2.js +0 -237
  174. package/dist/cli-bundle/chunks/chunk-FZZVWWQP.js +0 -2
  175. package/dist/cli-bundle/chunks/chunk-IPR2ICDO.js +0 -20
  176. package/dist/cli-bundle/chunks/chunk-WD7BQXA7.js +0 -6
  177. package/dist/cli-bundle/chunks/chunk-WUDF7HWM.js +0 -2
  178. package/dist/cli-bundle/chunks/chunk-X2EVS624.js +0 -3
  179. package/dist/cli-bundle/chunks/chunk-Y2OK7IAD.js +0 -8
  180. package/dist/cli-bundle/chunks/register-operations-KFZIKATY.js +0 -2
  181. package/dist/cli-bundle/chunks/register-setup-KTJ4ZE65.js +0 -2
  182. package/dist/cli-bundle/focused-chunks/chunk-7D6M45AN.js +0 -30
  183. package/dist/cli-bundle/focused-chunks/chunk-BVOQRMHF.js +0 -164
  184. package/dist/cli-bundle/focused-chunks/chunk-HRANNGHM.js +0 -2
  185. package/dist/cli-bundle/focused-chunks/chunk-LG3SYXBX.js +0 -20
  186. package/dist/cli-bundle/focused-chunks/chunk-LI6IGGB3.js +0 -2
  187. package/dist/cli-bundle/focused-chunks/chunk-QKG7JD34.js +0 -3
  188. package/dist/cli-bundle/focused-chunks/chunk-QYQFBJXD.js +0 -59
  189. package/dist/cli-bundle/focused-chunks/chunk-ZDX2BCOT.js +0 -12
@@ -1,237 +0,0 @@
1
- var tS=Object.defineProperty;var hV=(e,t)=>{for(var r in t)tS(e,r,{get:t[r],enumerable:!0})};(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]="c7018240-2680-597f-9e71-e4b3f46ef91d")}catch{}})();var Vi=[["history-redact","history redact"],["history-repair","history repair"],["history-compact","history compact"],["activity","history activity"],["restore","history restore"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"commander",owner:"pm-tqel"})),xm=[...["next","focus"].map(e=>({alias:e,canonical:`context ${e}`,owner:"pm-kcs4"})),...["stats","health","validate","gc","telemetry","eval","test-all"].map(e=>({alias:e,canonical:`ops ${e}`,owner:"pm-6apl"})),...["normalize","reindex"].map(e=>({alias:e,canonical:`ops ${e}`,owner:"pm-3i9q8g"})),{alias:"events",canonical:"history events",owner:"pm-3i9q8g"}].map(e=>({...e,canonical_argv:e.canonical.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap"})),Nm=[["update-many","update many"],["close-many","close many"],["delete","close delete"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:"pm-ik19"})),Wi=[...xm,...Nm,...[...["comments","notes","learnings","files","docs","deps","append","test"].map(e=>[e,`item ${e}`,"pm-yql1"]),["test-runs-worker","item test worker","pm-lp4j"],...["statuses","tags","types"].map(e=>[`completion-${e}`,`completion ${e}`,"pm-szdc"]),["history-author-acknowledge","history acknowledge","pm-djyvbk"],["copy","item copy","pm-m6g87m"],["merge","workspace merge","pm-m6g87m"],["duplicates","item duplicates","pm-fmy9ih"],["dedupe-audit","item duplicates audit","pm-fmy9ih"],["dedupe-merge","item duplicates merge","pm-fmy9ih"],["comments-audit","item audit-comments","pm-fmy9ih"],["search-advanced","search advanced","pm-wfskfn"],...["meet","event","remind"].map(e=>[e,`calendar ${e}`,"pm-o3fh"])].map(([e,t,r])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:r}))],Yi=[{alias:"history-attest",canonical:"history attest",canonical_argv:["history","attest"],lifecycle:"permanent",hidden:!0,registration:"commander",owner:"pm-3z0k"},...Vi,...Wi,...["discover","lookup"].map(e=>({alias:`files ${e}`,canonical:`item files ${e}`,canonical_argv:["item","files",e],lifecycle:"permanent",hidden:!0,registration:"bootstrap",owner:"pm-yql1"}))];function rS(e){let t;for(let r of Yi)r.canonical_argv.length<=(t?.canonical_argv.length??0)||r.canonical_argv.every((n,o)=>n===(o===0&&e[o]==="ctx"?"context":e[o]))&&(t=r);return t}function Dm(e){let t=e.trim().replace(/\s+/gu," ");return Yi.find(r=>r.canonical===t.replace(/^ctx /u,"context "))?.alias??t}function Ke(e){return Dm(e)}var go=[...Yi,...[["ctx","context"],["packages","package"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:[t],lifecycle:"permanent",hidden:!1,registration:"commander",owner:"pm-pbyu"})),...[["start-task","claim","--start"],["pause-task","release","--pause"],["close-task","close","--release-assignment"]].map(([e,t,r])=>({alias:e,canonical:t,canonical_argv:[t,r],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-eq4x"})),{alias:"tests",canonical:"item test",canonical_argv:["item","test"],lifecycle:"permanent",hidden:!1,registration:"bootstrap",owner:"pm-u4t9gp"},...[["fetch","get"],["read","get"],["show","get"],["view","get"],["comment","comments"],["note","notes"],["learning","learnings"]].map(([e,t])=>({alias:e,canonical:["comments","notes","learnings"].includes(t)?`item ${t}`:t,canonical_argv:["comments","notes","learnings"].includes(t)?["item",t]:[t],lifecycle:"permanent",hidden:!1,registration:"bootstrap",owner:"pm-pbyu"})),...[["extension list","extension catalog"],["extension scaffold","extension init"],["package list","package catalog"],["package scaffold","package init"],["packages list","packages catalog"],["packages scaffold","packages init"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"permanent",hidden:!1,registration:"commander",owner:"pm-ya7x55"})),{alias:"list-all",canonical:"list",canonical_argv:["list","--all"],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-pfqi"},...[["list-draft","draft"],["list-open","open"],["list-in-progress","in_progress"],["list-blocked","blocked"],["list-closed","closed"],["list-canceled","canceled"]].map(([e,t])=>({alias:e,canonical:"list",canonical_argv:["list","--status",t],lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-pfqi"})),...[["extension","package"],["install","package install"],["upgrade","package upgrade"]].map(([e,t])=>({alias:e,canonical:t,canonical_argv:t.split(" "),lifecycle:"deprecated",hidden:!0,registration:"commander",owner:"pm-tnud"}))],nS=Object.fromEntries(go.filter(e=>e.registration==="bootstrap").map(e=>[e.alias,e.canonical]));function sl(e){let t=e.trim().toLowerCase();return go.find(r=>r.alias===t)}function oS(e){return`Deprecated command \`${e.alias}\`; use \`pm ${e.canonical_argv.join(" ")}\`.`}import*as ae from"node:fs/promises";import Ki from"node:path";import iS from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1240aa49-b3fa-57d3-b6e1-7f911005a757")}catch{}})();var sS=[10,25,50,100];async function Xi(e){await ae.mkdir(e,{recursive:!0})}async function re(e){try{return await ae.access(e),!0}catch{return!1}}function yo(e){return X(e)||kr(e,"ENOTDIR")}function X(e){return kr(e,"ENOENT")}async function V(e){try{return await ae.readFile(e,"utf8")}catch(t){if(yo(t))return null;throw t}}async function F(e,t){let r=Ki.dirname(e);await Xi(r);let n=Ki.join(r,`.${Ki.basename(e)}.${process.pid}.${Date.now()}.${iS.randomBytes(4).toString("hex")}.tmp`);await ae.writeFile(n,t,"utf8");try{await ae.rename(n,e)}catch(o){if(process.platform==="win32"&&(kr(o,"EPERM")||kr(o,"EBUSY"))){let i=o;for(let s of sS){await new Promise(a=>setTimeout(a,s));try{await ae.rename(n,e);return}catch(a){if(i=a,!kr(a,"EPERM")&&!kr(a,"EBUSY"))break}}try{await ae.unlink(n)}catch{}throw i}if(kr(o,"EXDEV")){try{await ae.copyFile(n,e)}finally{try{await ae.unlink(n)}catch{}}return}try{await ae.unlink(n)}catch{}throw o}}async function ho(e,t){let r=Ki.dirname(e);await Xi(r);let n=await ae.open(e,"a");try{await n.writeFile(`${t}
2
- `,"utf8")}finally{await n.close()}}async function bo(e){try{await ae.unlink(e)}catch(t){if(!yo(t))throw t}}function kr(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===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]="9ddd9ea4-8586-5d3d-9ed8-0bf9da49b9a5")}catch{}})();var mt=["commands","renderers","hooks","schema","importers","search","parser","preflight","services"],Ji=2,al=Object.freeze({migration:"schema",validation:"schema"}),kV=Object.freeze({version:Ji,capabilities:[...mt],legacy_aliases:{...al}}),Zi=["off","warn","enforce"],Qi=["off","warn","enforce"],es=["none","restricted","strict"],Pm=["block","warn"],ts=["commands.override","commands.handler","hooks.beforecommand","hooks.beforemutation","hooks.aftercommand","hooks.onwrite","hooks.onread","hooks.onindex","schema.flags","schema.itemfields","schema.itemtypes","schema.relationshipkinds","schema.migrations","schema.profiles","parser.override","preflight.override","services.override","renderers.override","importers.importer","importers.exporter","search.provider","search.vectorstore","services.assuranceprovider"],mn=["output_format","error_format","help_format","lock_acquire","lock_release","history_append","item_store_write","item_store_delete","context_relevance","command_result"];function rs(){return{mode:"off",trust_mode:"off",require_provenance:!1,trusted_extensions:[],default_sandbox_profile:"none",allowed_extensions:[],blocked_extensions:[],allowed_capabilities:[],blocked_capabilities:[],allowed_surfaces:[],blocked_surfaces:[],allowed_commands:[],blocked_commands:[],allowed_actions:[],blocked_actions:[],allowed_services:[],blocked_services:[],extension_overrides:[]}}(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]="0d16c1b3-1bc5-5973-a20d-78ada79d4c9b")}catch{}})();var Mm=["goal","objective","value","impact","outcome","why_now","parent","reviewer","risk","confidence","sprint","release","blocked_by","blocked_reason","unblock_note","reporter","severity","environment","repro_steps","resolution","expected_result","actual_result"],aS=["id","title","description","type","pm_format_version","source_type","type_options","status","priority","tags","created_at","updated_at","deadline","reminders","events","closed_at","completed_at","assignee","claim_principal","source_owner","author","estimated_minutes","acceptance_criteria","design","external_ref","definition_of_ready","order",...Mm,"affected_version","fixed_version","component","regression","customer_impact","dependencies","comments","notes","learnings","files","tests","test_runs","docs","close_reason","duplicate_of","plan_mode","plan_scope","plan_harness","plan_resume_context","plan_validation","plan_decisions","plan_discoveries","plan_steps"],Xe=aS;(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]="6e329ab1-f22d-5749-b8a4-0a6e7a1c8023")}catch{}})();var ll=Object.freeze([{id:"draft",roles:["draft"]},{id:"open",roles:["active","default_open"]},{id:"in_progress",aliases:["in-progress"],roles:["active"]},{id:"blocked",roles:["blocked"]},{id:"closed",roles:["terminal","terminal_done","default_close"]},{id:"canceled",aliases:["cancelled"],roles:["terminal","terminal_canceled","default_cancel"]}]),dl=Object.freeze({draft_status:"draft",open_status:"open",in_progress_status:"in_progress",blocked_status:"blocked",close_status:"closed",canceled_status:"canceled"}),ns=".agents/pm",os="settings.json",cS="Closed at creation via pm create",lS=["","epics","features","tasks","chores","issues","schema","history","search","extensions","locks"],dS=["decisions","events","reminders","milestones","meetings","plans"],IV=[...lS,...dS],Ee={Epic:"epics",Feature:"features",Task:"tasks",Chore:"chores",Issue:"issues",Decision:"decisions",Event:"events",Reminder:"reminders",Milestone:"milestones",Meeting:"meetings",Plan:"plans"},ul={minimal:{ownership_enforcement:"none",create_mode_default:"progressive",close_validation_default:"off",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"core",force_required_for_stale_lock:!1,duplicate_detection_mode:"off",duplicate_detection_threshold:.8,duplicate_detection_limit:3},default:{ownership_enforcement:"warn",create_mode_default:"progressive",close_validation_default:"warn",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"core",force_required_for_stale_lock:!0,duplicate_detection_mode:"strict",duplicate_detection_threshold:.8,duplicate_detection_limit:3},strict:{ownership_enforcement:"strict",create_mode_default:"strict",close_validation_default:"strict",require_close_reason:!0,parent_reference:"strict_error",metadata_profile:"strict",force_required_for_stale_lock:!0,duplicate_detection_mode:"strict",duplicate_detection_threshold:.8,duplicate_detection_limit:3}},uS=["no active blocker","ready for planned execution sequencing","work completed","work is closed"],cl={blocked_reason:["no active blocker because work is closed","work is closed"],resolution:["closed with implementation evidence","closed with verification evidence","work completed and recorded","work is closed"],actual_result:["closed and recorded","work completed","work completed and recorded"]};function Lm(e){return e?[...e]:void 0}var C={version:1,id_prefix:"pm-",ids:{token_length:4},author_default:"",agent_identity:{probes_enabled:!0,identity_vocabulary:{version:1,aliases:{}},harness_signals:[]},mutation_guard:{require_attributed_author:!1,secret_guard:"advise",stale_in_progress_hours:72},item_format:"toon",locks:{ttl_seconds:1800,wait_ms:3e3},checkpoints:{retention_days:14},output:{default_format:"toon"},ux:{deprecation_hints:!0},history:{missing_stream:"auto_create",compact_policy:{enabled:!1,max_entries:500,trigger:"health_warn"}},validation:{sprint_release_format:"warn",parent_reference:"warn",metadata_profile:"core",metadata_required_fields:[],lifecycle_stale_blocker_reason_patterns:[...uS],lifecycle_closure_like_blocked_reason_patterns:[...cl.blocked_reason],lifecycle_closure_like_resolution_patterns:[...cl.resolution],lifecycle_closure_like_actual_result_patterns:[...cl.actual_result],estimate_defaults_by_type:{}},governance:{preset:"minimal",...ul.minimal},workflow:{definition_of_done:[]},testing:{record_results_to_items:!1,allow_untrusted_linked_tests:!1},telemetry:{enabled:!0,first_run_prompt_completed:!1,capture_level:"redacted",endpoint:"https://pm-cli.unbrained.dev/v1/events",installation_id:"",retention_days:365},agent_guidance:{prompt_completed:!1,declined:!1,declined_at:"",template_version:1,last_checked_files:[]},item_types:{definitions:[]},schema:{version:1,files:{types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"},statuses:ll.map(e=>({...e,aliases:Lm(e.aliases),roles:Lm(e.roles)})),fields:[],workflow:{...dl},unknown_field_policy:"allow"},extensions:{enabled:[],disabled:[],policy:rs()},search:{score_threshold:0,hybrid_semantic_weight:.7,max_results:50,embedding_model:"",embedding_batch_size:32,embedding_timeout_ms:3e4,scanner_max_batch_retries:3,provider:"",default_mode:"auto",mutation_refresh_policy:"semantic_configured",query_expansion:{enabled:!1,provider:""},rerank:{enabled:!1,model:"",top_k:20}},providers:{openai:{base_url:"",api_key:"",model:""},ollama:{base_url:"",model:""}},context:{default_depth:"brief",activity_limit:10,stale_threshold_days:7,sections:{hierarchy:!0,activity:!0,progress:!0,recently_created:!0,unparented:!0,blockers:!0,files:!0,workload:!0,staleness:!0,tests:!0}},vector_store:{adapter:"",collection_name:"pm_items",qdrant:{url:"",api_key:""},lancedb:{path:""}}},_n={metadata:{},body:""},_={SUCCESS:0,GENERIC_FAILURE:1,USAGE:2,NOT_FOUND:3,CONFLICT:4,DEPENDENCY_FAILED:5,NO_EFFECT:6,PARTIAL_EFFECT:7},fS=Object.freeze({unknown_command:"usage",unknown_option:"usage",missing_required_option:"usage",missing_required_argument:"usage",invalid_command_usage:"usage",linked_test_value_not_quoted:"usage",invalid_argument_value:"validation",health_findings:"validation",validation_findings:"validation",close_through_update:"validation",no_update_fields:"validation",unsupported_update_option:"validation",tracker_not_initialized:"validation",item_not_found:"validation",ownership_conflict:"conflict",lock_conflict:"conflict",terminal_state_conflict:"conflict",dependency_failed:"runtime",init_gitignore_unwritable:"runtime",merge_git_config_unwritable:"runtime",command_failed:"runtime",unknown_error:"runtime"});function is(e){let t=(e??"").trim().toLowerCase();if(t.length===0)return"unknown";let r=fS[t];return typeof r=="string"?r:t.includes("conflict")||t.includes("locked")?"conflict":t.startsWith("unknown_")||t.startsWith("missing_required_")?"usage":t.startsWith("invalid_")||t.endsWith("_not_found")||t.includes("validation")?"validation":t.endsWith("_error")||t.endsWith("_failed")?"runtime":"unknown"}(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]="0f7e5fb3-86d2-5af5-a189-a40dd223ef26")}catch{}})();var g=class extends Error{exitCode;code;context;constructor(t,r,n={}){super(t),this.name="PmCliError",this.exitCode=r,this.context=n,this.code=n.code}};(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]="49fe564d-671f-5425-96fe-517cb323f773")}catch{}})();function U(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function pS(e){return U(e)??void 0}function wo(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t-=1;return t===e.length?e:e.slice(0,t)}function gn(e){return Array.isArray(e)&&e.every(t=>typeof t=="number"&&Number.isFinite(t))}function G(e){if(e instanceof Error){let t=e.message.trim();return t.length>0?t:e.name}return String(e)}function ss(e){let t=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(t)?t:null}function $m(e){let t=ss(e);return t===null||t<=0||!Number.isInteger(t)?null:t}function NV(e,t,r){let n=ss(e);return n===null||n<t||n>r?null:n}function mS(e){return typeof e!="object"||e===null||Array.isArray(e)?null:e}function Ar(e){return typeof e!="object"||e===null?null:e}function Fm(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function jm(e){let t=Fm(e);if(!t)return null;if(typeof t.activate=="function")return t;let r=Fm(t.default);return typeof r?.activate=="function"?r:null}function _S(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e}:{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="43f7bd27-7874-56f9-a497-e6f67a3ae9be")}catch{}})();function yn(e){let t=Math.ceil(e.size/2);for(let r of e.keys()){if(t===0)return;e.delete(r),t-=1}}import gS from"node:crypto";import{AsyncLocalStorage as yS}from"node:async_hooks";(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]="38ed5847-939e-5846-bc7d-6d257d36a25f")}catch{}})();var fl=new yS,Um=1024;function hS(e){let t=Date.parse(e.clock);if(!Number.isFinite(t))throw new Error(`Invalid reproducible workspace clock: ${e.clock}`);if(!Number.isSafeInteger(e.tickMs)||e.tickMs<0)throw new Error("Reproducible workspace tickMs must be a non-negative integer");if(e.seed.trim().length===0)throw new Error("Reproducible workspace seed must not be empty");return{...e,clock:new Date(t).toISOString()}}function bS(e){let r={...hS(e),clockReads:0,tokenReads:0};return n=>fl.run(r,n)}async function FV(e,t){return bS(e)(t)}function zm(){let e=fl.getStore();if(e===void 0)return;let t=new Date(Date.parse(e.clock)+e.clockReads*e.tickMs).toISOString();return e.clockReads+=1,t}function qm(e){let t=fl.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>Um)throw new Error(`Reproducible token length must be an integer between 0 and ${Um}`);let r="";for(;r.length<e;){let n=gS.createHash("sha256").update(`${t.seed}\0${t.tokenReads}`).digest();t.tokenReads+=1;for(let o of n)if(r+=(o%36).toString(36),r.length===e)break}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a5bd8db9-cd23-5529-ad78-b7e87bd43b59")}catch{}})();var wS=/^([+-]?)(\d+)([hdwm])$/i,vS=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,ES=/^(\d{4})(\d{2})(\d{2})$/,TS=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,kS=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,AS=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,SS=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.\d+)?(?:Z|[+-](\d{2}):(\d{2}))$/i;function Z(){return zm()??new Date().toISOString()}function Ot(e){return Number.isFinite(Date.parse(e))}function _l(e){let t=SS.exec(e);if(!t||!Number.isFinite(Date.parse(e)))return!1;let[,r,n,o,i,s,a,c,l]=t,[d,u,f,p,m,h]=[r,n,o,i,s,a].map(Number);return u>=1&&u<=12&&f>=1&&f<=gl(d,u-1)&&p<=23&&m<=59&&h<=59&&(c===void 0||Number(c)<=23)&&(l===void 0||Number(l)<=59)}function hn(e){let t=/\.(\d+)(?:Z|[+-]\d{2}:\d{2})$/iu.exec(e)?.[1];return _l(e)&&(t===void 0||/^\d{0,3}0*$/u.test(t))}var OS=1e4,as=new Map;function Hm(e){let t=as.get(e);if(t!==void 0)return t;let r=Date.parse(e);return as.size>=OS&&yn(as),as.set(e,r),r}function be(e,t){let r=Hm(e),n=Hm(t);return Number.isFinite(r)&&Number.isFinite(n)&&r!==n?r-n:e.localeCompare(t)}function HV(e,t){return!(t.deadlineBefore&&(!e.deadline||be(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||be(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&be(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&be(e.updated_at,t.updatedBefore)>0||t.createdAfter&&be(e.created_at,t.createdAfter)<0||t.createdBefore&&be(e.created_at,t.createdBefore)>0)}function pl(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function ml(e){if(!e)return"";if(e.toUpperCase()==="Z")return"Z";let t=/^([+-]\d{2})(\d{2})$/.exec(e);return t?`${t[1]}:${t[2]}`:e}function CS(e,t,r){r&&r!==t&&(e.includes(r)||e.push(r))}function IS(e){let t=[],r=l=>CS(t,e,l),n=ES.exec(e);if(n){let[,l,d,u]=n;r(`${l}-${d}-${u}`)}let o=TS.exec(e);if(o){let[,l,d,u,f,p,m,h,b]=o,w=m?`:${m}`:"";r(`${l}-${d}-${u}T${f}:${p}${w}${pl(h)}${ml(b)}`)}let i=kS.exec(e);if(i){let[,l,d,u,f,p,m]=i,h=f?`:${f}`:"";r(`${l}T${d}:${u}${h}${pl(p)}${ml(m)}`)}let s=AS.exec(e);if(s){let[,l,d,u,f,p,m]=s,h=f?`:${f}`:"";r(`${l}T${d}:${u}${h}${pl(p)}${ml(m)}`)}let a=10,c=e.slice(0,a);if(xS(c)){let l=a;for(;l<e.length&&NS(e[l]);)l+=1;l<e.length&&r(`${c}T${e.slice(l)}`)}return t}function RS(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let r of IS(e)){let n=Date.parse(r);if(Number.isFinite(n))return n}return Number.NaN}function xS(e){if(e.length!==10)return!1;for(let t=0;t<e.length;t+=1){let r=e[t];if(t===4||t===7){if(r!=="-")return!1;continue}let n=r.charCodeAt(0);if(n<48||n>57)return!1}return!0}function NS(e){return e?e===" "||e===" "||e===`
3
- `||e==="\r"||e==="\f"||e==="\v":!1}function gl(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var DS=["January","February","March","April","May","June","July","August","September","October","November","December"],PS=/^(\d{4})-(\d{2})-(\d{2})/,MS=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function LS(e,t,r){let n=PS.exec(t)??MS.exec(t);if(!n)return;let o=Number.parseInt(n[1],10),i=Number.parseInt(n[2],10),s=Number.parseInt(n[3],10),a=r?.trim()||"deadline";if(i<1||i>12)throw new g(`Invalid ${a} value "${e}". Month "${n[2]}" is out of range \u2014 use a month between 01 and 12.`,_.USAGE);let c=gl(o,i-1);if(s<1||s>c)throw new g(`Invalid ${a} value "${e}". ${DS[i-1]} ${o} has ${c} days, so day "${n[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,_.USAGE)}function FS(e,t){let r=new Date(e.getTime()),n=r.getUTCDate(),o=r.getUTCMonth()+t,i=r.getUTCFullYear()+Math.floor(o/12),s=(o%12+12)%12,a=Math.min(n,gl(i,s));return r.setUTCFullYear(i,s,a),r}function $S(e,t=new Date,r="deadline"){let n=e.trim();if(n.toLowerCase()==="now")return t.toISOString();let o=wS.exec(n);if(o){let s=o[1]==="-"?-1:1,a=Number.parseInt(o[2],10)*s,c=o[3].toLowerCase();if(c==="m")return FS(t,a).toISOString();let l=c==="h"?3600*1e3:c==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*l).toISOString()}LS(e,n,r);let i=RS(n);if(!Number.isFinite(i)){let s=r.trim().length>0?r.trim():"deadline",a=vS.test(n)?"Compound relative expressions like +3d+1h are not supported; use a single relative token (for example +3d) or an ISO/date string.":'Use ISO/date string input, "now", or relative +6h/-6h/+1d/-1d/+2w/-2w/+6m/-6m.';throw new g(`Invalid ${s} value "${e}". ${a}`,_.USAGE)}return new Date(i).toISOString()}import{mkdir as jS,readFile as US}from"node:fs/promises";import Gm 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]="9d3152f0-afc9-5be8-9303-b02ea2666631")}catch{}})();function zS(e){let t=e.trim();if(!t)throw new g("--rollback requires a non-empty checkpoint ID",_.USAGE);if(!/^[a-zA-Z0-9._-]+$/.test(t))throw new g("--rollback checkpoint ID must match [a-zA-Z0-9._-]+",_.USAGE);return t}function qS(e,t){let r=t.replace(/[-:.TZ]/g,"").slice(0,14),n=Math.random().toString(36).slice(2,8);return`${e}-${r}-${n}`}function Bm(e,t){return Gm.join(e,"checkpoints",t)}function Vm(e,t,r){return Gm.join(Bm(e,t),`${r}.json`)}async function HS(e,t,r,n){let o=Bm(e,t);await jS(o,{recursive:!0});let i=Vm(e,t,r);return await F(i,`${JSON.stringify(n,null,2)}
4
- `),i}function GS(e,t){if(!Array.isArray(e.items))throw new g(`Checkpoint ${t} is missing items`,_.GENERIC_FAILURE);return e.items.map(r=>{if(!r||typeof r!="object")throw new g(`Checkpoint ${t} contains an invalid item entry`,_.GENERIC_FAILURE);let n=r;if(typeof n.id!="string"||n.id.trim().length===0)throw new g(`Checkpoint ${t} contains an item entry without ID`,_.GENERIC_FAILURE);if(typeof n.target_updated_at!="string"||n.target_updated_at.trim().length===0)throw new g(`Checkpoint ${t} contains an item entry without target_updated_at`,_.GENERIC_FAILURE);return{id:n.id.trim(),target_updated_at:n.target_updated_at.trim()}})}async function BS(e,t,r,n){let o=zS(r),i=Vm(e,t,o);if(!await re(i))throw new g(`Checkpoint ${o} not found`,_.NOT_FOUND);let s=await US(i,"utf8"),a;try{a=JSON.parse(s)}catch(d){throw new g(`Checkpoint ${o} contains invalid JSON: ${G(d)}`,_.GENERIC_FAILURE)}if(!a||typeof a!="object")throw new g(`Checkpoint ${o} is invalid`,_.GENERIC_FAILURE);let c=a;if(c.schema_version!==n)throw new g(`Checkpoint ${o} has unsupported schema version`,_.GENERIC_FAILURE);let l=GS(c,o);return{record:c,items:l,path:i,id:typeof c.id=="string"?c.id:o,created_at:typeof c.created_at=="string"?c.created_at:Z(),author:typeof c.author=="string"?c.author:"unknown"}}async function VS(e,t){let r=[],n=[];for(let o of e)try{let i=await t(o.id,o.target_updated_at);r.push({id:o.id,status:"restored",changed_fields:i.changed_fields,warnings:i.warnings}),n.push(o.id)}catch(i){r.push({id:o.id,status:"failed",error:G(i)})}return{rows:r,restored_ids:n,failed_count:r.filter(o=>o.status==="failed").length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="31da4a5a-1e85-5d77-a09f-2736cc44d850")}catch{}})();var WS=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function yl(e){return typeof e!="string"?null:WS[e.trim().toLowerCase()]??null}function hl(e){let t=[],r=n=>{if(Array.isArray(n)){for(let o of n)r(o);return}if(typeof n=="string"){for(let o of n.split(",")){let i=o.trim();i.length>0&&t.push(i)}return}n!=null&&t.push(n)};return r(e),t}function Wm(e,t){return t==="string"?!0:t==="number"?typeof e=="number"?Number.isFinite(e):typeof e=="string"&&e.trim().length>0&&Number.isFinite(Number(e)):typeof e=="boolean"?!0:typeof e=="string"&&["true","false","1","0"].includes(e.trim().toLowerCase())}(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]="de2a2a0e-8a39-5569-9af9-cbf557bce2a9")}catch{}})();function ot(e,t,r){if(e===t)return 0;if(Math.abs(e.length-t.length)>r)return null;let n=t.length+1,o=new Array(n),i=new Array(n),s=new Array(n);for(let c=0;c<n;c+=1)o[c]=0,i[c]=c;for(let c=1;c<=e.length;c+=1){s[0]=c;let l=s[0];for(let d=1;d<=t.length;d+=1){let u=e[c-1]===t[d-1]?0:1,f=i[d-1]+u,p=s[d-1]+1,m=i[d]+1,h=Math.min(f,p,m);c>1&&d>1&&e[c-1]===t[d-2]&&e[c-2]===t[d-1]&&(h=Math.min(h,o[d-2]+1)),s[d]=h,h<l&&(l=h)}if(l>r)return null;for(let d=0;d<n;d+=1)o[d]=i[d],i[d]=s[d]}let a=i[t.length];return a<=r?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8ed4af4c-40cf-5902-930b-78a4758871b2")}catch{}})();var o5=[{code:"unknown_lifecycle_action"}];function YS(e,t){let r=e.trim().toLowerCase();if(r.length===0)return;let n=Math.floor(r.length/3);return t.map(o=>({candidate:o,distance:ot(r,o.toLowerCase(),n)??Number.POSITIVE_INFINITY})).filter(({distance:o})=>Number.isFinite(o)).sort((o,i)=>o.distance!==i.distance?o.distance-i.distance:o.candidate.localeCompare(i.candidate))[0]?.candidate}function Ym(e){return["pm",...e].map(t=>/^[A-Za-z0-9_./:@=-]+$/u.test(t)?t:JSON.stringify(t)).join(" ")}function KS(e){let t=e.command_path.trim().replaceAll(/\s+/gu," "),r=e.token.trim(),n=r.length===0?"<empty>":r,o=[...new Set(e.allowed.map(f=>f.trim()))].filter(Boolean).sort((f,p)=>f.localeCompare(p));if(t.length===0||n.length===0||o.length===0)throw new TypeError("Unknown-subcommand contracts require a path, token, and allowed set");let i=t.split(" "),s=e.trailing_args??[],a=e.display_name??`pm ${t}`,c=e.token_kind??"subcommand",l=e.retry_command?void 0:YS(n,o),d=Ym([...i,n,...s]),u=e.retry_command??(l?Ym([...i,l,...s]):void 0);return new g(`Unknown ${a} ${c} "${n}". Allowed: ${o.join(", ")}${e.message_suffix??""}`,e.exit_code??_.USAGE,{code:"unknown_subcommand",reason:"unknown_positional_token",examples:[...u?[u]:[],...e.examples??[],`pm ${t} --help`],nextSteps:u?[`Retry with the suggested command: ${u}`]:["Choose one value from recovery.allowed_values."],recovery:{attempted_command:d,allowed_values:o,suggested_retry:u,fallback_candidates:e.fallback_candidates}})}(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]="de5f8d66-b9dc-555c-a52f-33b1b5368be3")}catch{}})();var XS="__pm_suppress_host_output",bl="@unbrained/pm-cli:suppress-host-output:v1";function Km(e){return e===void 0?{__pm_suppress_host_output:bl}:{__pm_suppress_host_output:bl,result:e}}function cs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&e[XS]===bl}import bn from"node:fs";import Ct from"node:path";import{fileURLToPath as JS}from"node:url";(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]="dc77f588-e4ea-59fc-908f-51b41114430a")}catch{}})();var ZS="@unbrained/pm-cli";function QS(e){try{return JSON.parse(bn.readFileSync(e,"utf8")).name===ZS}catch{return!1}}function eO(e){let t=bn.existsSync(e)&&bn.statSync(e).isDirectory()?Ct.resolve(e):Ct.dirname(Ct.resolve(e));for(;;){let r=Ct.join(t,"package.json");if(bn.existsSync(r)&&QS(r))return t;let n=Ct.dirname(t);if(n===t)return;t=n}}function It(e,t=[]){let r=JS(e),n=eO(r);return n||Ct.resolve(Ct.dirname(r),...t)}function wl(e,t=[]){try{let r=Ct.join(It(e,t),"package.json");if(!bn.existsSync(r))return;let n=JSON.parse(bn.readFileSync(r,"utf8"));return typeof n.version=="string"&&n.version.trim().length>0?n.version:void 0}catch{return}}function tO(e=process.env,t="PM_CLI_PACKAGE_ROOT",r,n=[]){let o=e[t];return typeof o=="string"&&o.trim().length>0?Ct.resolve(o.trim()):r?It(r,n):process.cwd()}(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]="a966bb77-c4be-593b-93f5-b6277072160e")}catch{}})();var wn=["Epic","Feature","Task","Chore","Issue","Decision","Event","Reminder","Milestone","Meeting","Plan"],Xm=wn,vn=["draft","open","in_progress","blocked","closed","canceled"],ls=["draft","active","blocked","terminal","terminal_done","terminal_canceled","default_open","default_close","default_cancel"],En=["string","number","boolean","string_array","array","object"],ds=["create","update","update_many","list","search","calendar","context"],us=["allow","warn","reject"],u5=["blocks","parent","child","parent_child","child_of","related","related_to","discovered_from","blocked_by","incident_from","epic","implements","recurs_from","supersedes","task","verifies"],f5=["project","global"],p5=["low","medium","high","critical"],fs=["low","medium","high","critical"],ps=["low","medium","high"];var Jm=["minimal","default","strict","custom"],m5=["none","warn","strict"],_5=["progressive","strict"],g5=["off","warn","strict"],y5=["off","warn","strict"];var ms=["daily","weekly","monthly","yearly"],vo=["mon","tue","wed","thu","fri","sat","sun"];function vl(e){return vo.indexOf(e)}var Zm=["draft","research","review","approved","executing","paused","completed","superseded"],_s=["pending","in_progress","completed","blocked","skipped","superseded"],Qm=["codex","claude-code","cursor","generic"],e_=["related","blocks","blocked_by","depends_on","discovered_from","implements","recurs_from","verifies","supersedes"],h5=["brief","standard","deep","full"],b5=["hierarchy","activity","progress","recently_created","unparented","blockers","files","workload","staleness","tests"];(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]="0ca7f52c-fb31-5cd9-b689-a918f4e61816")}catch{}})();import sO 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]="7647d826-e562-5f8e-86b2-2e40d8714b4d")}catch{}})();function Wt(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function rO(e){let t=e.key.trim();if(t.length===0)return null;let r=Wt(e.aliases),n=e.description?.trim();return{key:t,values:Wt(e.values),required:e.required===!0?!0:void 0,aliases:r.length>0?r:void 0,description:n&&n.length>0?n:void 0}}var nO=e=>e,r_=e=>{let t=e.trim().toLowerCase();return t==="create"||t==="update"?t:null};function oO(e,t){let r=t(e.command);if(r===null)return null;let n=e.option.trim();return n.length===0?null:{command:r,option:n,required:e.required,visible:e.visible,enabled:e.enabled}}function iO(e,t){let r=new Map;for(let n of e??[]){let o=oO(n,t);o&&r.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...r.values()].sort((n,o)=>n.command===o.command?n.option.localeCompare(o.option):n.command.localeCompare(o.command))}function t_(e,t){return t?Wt(e):void 0}function El(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Tl(e){if(e===void 0||e==="agent"||e==="human"||e==="gate")return e;throw new Error("Item type execution_role must be agent, human, or gate.")}function gs(e,t={}){let r=t.resolvePolicyCommand??nO,n=e.name.trim();if(n.length===0)return null;let o=e.required_create_fields!==void 0,i=e.required_create_repeatables!==void 0,s=e.options!==void 0,a=e.command_option_policies!==void 0,c=Wt(e.aliases),l=(e.options??[]).map(u=>rO(u)).filter(u=>u!==null).sort((u,f)=>u.key.localeCompare(f.key)),d=iO(e.command_option_policies,r);return{name:n,description:El(e.description),default_status:El(e.default_status),...e.execution_role===void 0?{}:{execution_role:Tl(e.execution_role)},folder:El(e.folder),aliases:c.length>0?c:void 0,required_create_fields:t_(e.required_create_fields,o),required_create_repeatables:t_(e.required_create_repeatables,i),options:s?l:void 0,command_option_policies:a?d:void 0}}(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]="69ea08ca-3793-51d7-a971-95abf442028f")}catch{}})();var aO=Object.freeze({decision:"human",milestone:"gate"}),cO=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],lO=["dep","comment","note","learning","file","test","doc"],Al=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],dO=["title","description","type","status","priority","tags","body",...Al,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],uO=["title","description","body","status","closeReason","priority","type","tags",...Al,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],o_={"close-reason":"closeReason",close_reason:"closeReason","estimated-minutes":"estimatedMinutes",estimated_minutes:"estimatedMinutes",estimate:"estimatedMinutes","acceptance-criteria":"acceptanceCriteria",acceptance_criteria:"acceptanceCriteria",ac:"acceptanceCriteria","definition-of-ready":"definitionOfReady",definition_of_ready:"definitionOfReady",rank:"order","why-now":"whyNow",why_now:"whyNow","blocked-by":"blockedBy",blocked_by:"blockedBy","blocked-reason":"blockedReason",blocked_reason:"blockedReason","unblock-note":"unblockNote",unblock_note:"unblockNote","repro-steps":"reproSteps",repro_steps:"reproSteps","expected-result":"expectedResult",expected_result:"expectedResult","actual-result":"actualResult",actual_result:"actualResult","affected-version":"affectedVersion",affected_version:"affectedVersion","fixed-version":"fixedVersion",fixed_version:"fixedVersion","customer-impact":"customerImpact",customer_impact:"customerImpact","type-option":"typeOption",type_option:"typeOption",type_options:"typeOption"},fO={...o_},pO={...o_},i_=[["deadline","--deadline"],["estimatedMinutes","--estimate/--estimated-minutes"],["acceptanceCriteria","--acceptance-criteria/--ac"],["definitionOfReady","--definition-of-ready"],["order","--order/--rank"],["goal","--goal"],["objective","--objective"],["value","--value"],["impact","--impact"],["outcome","--outcome"],["whyNow","--why-now"],["assignee","--assignee"],["parent","--parent"],["reviewer","--reviewer"],["risk","--risk"],["confidence","--confidence"],["sprint","--sprint"],["release","--release"],["blockedBy","--blocked-by"],["blockedReason","--blocked-reason"],["unblockNote","--unblock-note"],["reporter","--reporter"],["severity","--severity"],["environment","--environment"],["reproSteps","--repro-steps"],["resolution","--resolution"],["expectedResult","--expected-result"],["actualResult","--actual-result"],["affectedVersion","--affected-version"],["fixedVersion","--fixed-version"],["component","--component"],["regression","--regression"],["customerImpact","--customer-impact"]],s_=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function a_(e){return Object.fromEntries(e)}var mO=a_([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...i_,["author","--author"],["message","--message"],["dep","--dep"],...s_]),_O=a_([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...i_,...s_,["author","--author"],["message","--message"],["force","--force"]]);function gO(e){return e.trim().replace(/^--+/,"").toLowerCase()}function yO(e){return e==="create"?dO:uO}function hO(e){return e==="create"?fO:pO}function Sl(e,t){let r=gO(t);if(r.length===0)return;let n=hO(e)[r];return n||yO(e).find(o=>o.toLowerCase()===r)}function bO(e,t){return(e==="create"?mO:_O)[t]??`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function To(e){let t=wO(e);return t.length===0?"items":t.endsWith("s")?t:`${t}s`}function ys(e){let t=e.trim(),n=t.replaceAll("\\","/").replace(/^\/+/,""),o=sO.posix.normalize(n);if(t.includes("\0")||/^[A-Za-z]:/.test(o)||o==="."||o===".."||o.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return o}function wO(e){let t=e.trim().toLowerCase(),r="",n=!1;for(let o of t){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){n&&r.length>0&&(r+="-"),r+=o,n=!1;continue}r.length>0&&(n=!0)}return r}function vO(e){return gs(e,{resolvePolicyCommand:r_})}function Eo(e,t){let r=e[t];return Array.isArray(r)?r.filter(n=>typeof n=="string"):void 0}function EO(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;return typeof t.key!="string"?null:{key:t.key,values:Eo(t,"values")??[],required:t.required===void 0?void 0:!!t.required,aliases:Eo(t,"aliases"),description:typeof t.description=="string"?t.description:void 0}}function TO(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e;if(typeof t.command!="string"||typeof t.option!="string")return null;let r=t.command.trim().toLowerCase();return r!=="create"&&r!=="update"?null:{command:r,option:t.option,required:t.required===void 0?void 0:!!t.required,visible:t.visible===void 0?void 0:!!t.visible,enabled:t.enabled===void 0?void 0:!!t.enabled}}function kO(e){if(Array.isArray(e.options))return e.options.map(t=>EO(t)).filter(t=>t!==null)}function AO(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(t=>TO(t)).filter(t=>t!==null)}function SO(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let t=e,r=typeof t.name=="string"?t.name:"";if(r.trim().length===0)return null;let n=typeof t.folder=="string"?t.folder:void 0,o=typeof t.description=="string"?t.description:void 0,i=typeof t.default_status=="string"?t.default_status:void 0;return{name:r,description:o,default_status:i,execution_role:Tl(t.execution_role),folder:n,aliases:Eo(t,"aliases"),required_create_fields:Eo(t,"required_create_fields"),required_create_repeatables:Eo(t,"required_create_repeatables"),options:kO(t),command_option_policies:AO(t)}}function OO(e,t){return e.required_create_fields?Wt(e.required_create_fields):t?.required_create_fields??[]}function CO(e,t){return e.required_create_repeatables?Wt(e.required_create_repeatables):t?.required_create_repeatables??[]}function IO(e,t){return e.options?e.options:t?.options?[...t.options]:[]}function RO(e,t){return e.command_option_policies?e.command_option_policies:t?.command_option_policies?[...t.command_option_policies]:[]}function xO(e,t){let r=t?.name??e.name,n=e.description??t?.description,o=e.default_status??t?.default_status,i=ys(e.folder??t?.folder??To(r)),s={name:r,execution_role:e.execution_role,folder:i,aliases:Wt([...t?.aliases??[],...e.aliases??[]]),required_create_fields:OO(e,t),required_create_repeatables:CO(e,t),options:IO(e,t),command_option_policies:RO(e,t)};return n&&(s.description=n),o&&(s.default_status=o),s}function n_(e,t){for(let r of e){let n=vO(r);if(!n)continue;let o=n.name.toLowerCase(),i=t.get(o);t.set(o,xO({...n,execution_role:n.execution_role??i?.execution_role},i))}}function NO(e){if(!e)return[];let t=[];for(let r of e.item_types??[]){let n=r.types;if(Array.isArray(n))for(let o of n){let i=SO(o);i&&t.push(i)}}return t}function ko(e,t=null){let r=new Map;for(let c of Xm)r.set(c.toLowerCase(),{name:c,execution_role:aO[c.toLowerCase()]??"agent",folder:Ee[c],aliases:[],required_create_fields:[...cO],required_create_repeatables:[...lO],options:[],command_option_policies:[]});n_(e.item_types?.definitions??[],r),n_(NO(t),r);let n=[...r.values()].sort((c,l)=>c.name.localeCompare(l.name)),o={},i={},s={};for(let c of n){o[c.name]=c,s[c.name]=c.folder,i[c.name.toLowerCase()]=c.name;for(let l of c.aliases)i[l.toLowerCase()]=c.name}let a=[...new Set(n.map(c=>c.folder))].sort((c,l)=>c.localeCompare(l));return{types:n.map(c=>c.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function c_(e,t){if(e!==void 0)return t.alias_to_type[e.trim().toLowerCase()]}function l_(e,t){let r=c_(e,t);if(r)return t.by_type[r]}function DO(e,t,r,n){for(let o of n){let i=Sl(r,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${r}" on type "${t.name}"`)}}function kl(e,t,r){if(r){e.add(t);return}e.delete(t)}function PO(e,t,r,n){let o=Sl(r,n.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${n.option}" for command "${r}" on type "${t.name}"`);return}n.required!==void 0&&kl(e.required,o,n.required),n.visible!==void 0&&kl(e.hidden,o,!n.visible),n.enabled!==void 0&&kl(e.disabled,o,!n.enabled)}function MO(e,t,r){for(let n of t.command_option_policies)n.command===r&&PO(e,t,r,n)}function LO(e,t,r){for(let n of e.required)e.disabled.has(n)&&e.errors.push(`Option "${n}" cannot be both required and disabled for command "${r}" on type "${t.name}"`)}function FO(e,t,r){let n=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:n};return DO(a,e,t,r),MO(a,e,t),LO(a,e,t),{required:[...o],hidden:[...i].sort((c,l)=>c.localeCompare(l)),disabled:[...s].sort((c,l)=>c.localeCompare(l)),errors:n}}function $O(e){let t=new Map;for(let r of e.options){t.set(r.key.toLowerCase(),r);for(let n of r.aliases??[])t.set(n.toLowerCase(),r)}return t}function jO(e,t,r){let n=e.values;if(n.length===0)return t;let i=new Map(n.map(s=>[s.toLowerCase(),s])).get(t.toLowerCase());if(!i){r.push(`Invalid value "${t}" for type option "${e.key}". Allowed: ${n.join(", ")}`);return}return i}function UO(e,t,r){let n=l_(e,r);if(!n)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=$O(n),s={};for(let[c,l]of Object.entries(t??{})){let d=c.trim(),u=l.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let f=i.get(d.toLowerCase());if(!f){let m=n.options.map(h=>h.key).join(", ");o.push(n.options.length>0?`Unknown type option "${d}" for type "${n.name}". Allowed: ${m}`:`Type "${n.name}" does not define any configurable type options`);continue}let p=jO(f,u,o);p!==void 0&&(s[f.key]=p)}for(let c of n.options)c.required&&!(c.key in s)&&o.push(`Missing required type option "${c.key}" for type "${n.name}"`);let a=Object.keys(s).sort((c,l)=>c.localeCompare(l));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(c=>[c,s[c]])),errors:o}}import{readFileSync as zO,readdirSync as qO,statSync as HO}from"node:fs";import GO from"node:os";import M 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]="124443e3-a20b-5fd6-a1d9-e4a09b17dc4a")}catch{}})();var BO={json_markdown:".md",toon:".toon"},VO={".md":"json_markdown",".toon":"toon"},WO=new Set([".git","coverage","dist","node_modules"]),hs=[".md",".toon"];function Ao(e){try{return HO(e),!0}catch{return!1}}function d_(e){try{let t=JSON.parse(zO(e,"utf8"));return typeof t!="object"||t===null||Array.isArray(t)?!1:"id_prefix"in t||"item_format"in t}catch{return!1}}function YO(e){let t=M.resolve(e);for(;;){let r=M.join(t,ns),n=M.join(r,os);if(Ao(n))return r;let o=M.join(t,os);if(Ao(o)&&d_(o))return t;let i=M.dirname(t);if(i===t)return;t=i}}function u_(e){return YO(e)??M.resolve(e,ns)}function M5(e,t){let r=t?M.resolve(t):void 0;try{return qO(M.resolve(e),{withFileTypes:!0}).filter(n=>n.isDirectory()&&!WO.has(n.name)).map(n=>M.join(M.resolve(e),n.name)).filter(n=>n!==r).filter(n=>Ao(Te(n))).filter(n=>d_(Te(n))).sort((n,o)=>n.localeCompare(o))[0]}catch{return}}function So(e,t){let r=process.env.PM_PATH,n=t?.trim()||r?.trim();if(n){let o=M.resolve(e,n);if(!Ao(Te(o))){let i=M.join(o,ns);if(Ao(Te(i)))return i}return o}return u_(e)}function KO(e){let t=M.resolve(e),r=M.dirname(t);return M.basename(t)==="pm"&&M.basename(r)===".agents"?M.dirname(r):t}function Rt(e){let t=process.env.PM_GLOBAL_PATH?.trim(),r=t&&t.length>0?t:M.join(GO.homedir(),".pm-cli");return M.resolve(e,r)}function Te(e){return M.join(e,os)}function XO(e,t,r=Ee){let n=r[t]??To(t);return M.join(e,n)}function Tn(e,t,r,n="toon",o=Ee){return M.join(XO(e,t,o),`${r}${BO[n]}`)}function Oo(e){let t=e.replaceAll("\\","/"),r=M.posix.extname(t).toLowerCase();return VO[r]??null}function _t(e,t){if(!/^(?!\.{1,2}$)[^/\\:\0]+$/.test(t))throw new g("Invalid history item id: expected a single filename.",_.USAGE);return M.join(e,"history",`${t}.jsonl`)}function f_(e,t){return M.join(e,"locks",`${t}.lock`)}function Ol(e){return M.join(e,"runtime")}function bs(e){return M.join(Ol(e),"test-runs")}function JO(e){return M.join(bs(e),"runs")}function L5(e,t){return M.join(JO(e),`${t}.json`)}function ZO(e){return M.join(bs(e),"stdout")}function QO(e){return M.join(bs(e),"stderr")}function F5(e,t){return M.join(ZO(e),`${t}.log`)}function $5(e,t){return M.join(QO(e),`${t}.log`)}function eC(e){return M.join(bs(e),"results")}function j5(e,t){return M.join(eC(e),`${t}.json`)}import{constants as Yt}from"node:os";(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]="aaf1c6ce-1bc9-5974-a38f-7daf8e4e63cc")}catch{}})();var p_=new Map([["EACCES",{summary:"was denied filesystem permission",recovery:"Grant the required filesystem access, then retry.",category:"permission"}],["EDQUOT",{summary:"exceeded the filesystem quota",recovery:"Raise or reclaim the filesystem quota, then retry.",category:"capacity"}],["EMFILE",{summary:"exhausted the process file-descriptor limit",recovery:"Close unused file handles or raise the process limit, then retry.",category:"resource"}],["ENFILE",{summary:"exhausted the host file-descriptor limit",recovery:"Free host file descriptors or raise the host limit, then retry.",category:"resource"}],["ENOMEM",{summary:"ran out of available memory",recovery:"Free memory or reduce concurrent work, then retry.",category:"resource"}],["ENOSPC",{summary:"ran out of storage space",recovery:"Free storage on the filesystem holding the project, then retry.",category:"capacity"}],["EPERM",{summary:"was denied by the host permission policy",recovery:"Grant the required filesystem permission, then retry.",category:"permission"}],["EROFS",{summary:"targeted a read-only filesystem",recovery:"Use a writable project filesystem or remount it read-write, then retry.",category:"permission"}]]),tC=/^[a-z][a-z0-9_]{0,63}$/u,rC=new Map([[Yt.errno.EACCES,"EACCES"],[Yt.errno.EDQUOT,"EDQUOT"],[Yt.errno.EMFILE,"EMFILE"],[Yt.errno.ENFILE,"ENFILE"],[Yt.errno.ENOMEM,"ENOMEM"],[Yt.errno.ENOSPC,"ENOSPC"],[Yt.errno.EPERM,"EPERM"],[Yt.errno.EROFS,"EROFS"]].filter(([e])=>Number.isInteger(e))),nC={capacity:{code:"host_environment_capacity_fault"},permission:{code:"host_environment_permission_fault"},resource:{code:"host_environment_resource_fault"}};function oC(e){if(typeof e!="object"||e===null)return null;let t=e;return typeof t.code=="string"&&p_.has(t.code)?t.code:typeof t.errno!="number"||!Number.isInteger(t.errno)?null:rC.get(Math.abs(t.errno))??null}function iC(e,t,r={}){let n=oC(e);if(n===null)return null;if(!tC.test(t))throw new g("Host environment operation labels must be bounded identifiers.",_.USAGE,{code:"host_environment_operation_invalid",field:"operation"});let o=p_.get(n);return new g(`Host filesystem operation ${t} ${o.summary}.`,_.GENERIC_FAILURE,{code:r.codes?.[o.category]??nC[o.category].code,reason:n,required:o.recovery,why:r.why??"The operating system refused a required project filesystem operation.",nextSteps:[o.recovery,...r.nextSteps??[]],...r.suggestedRetry?{recovery:{suggested_retry:r.suggestedRetry}}:{}})}async function m_(e,t,r={}){try{return await t()}catch(n){throw iC(n,e,r)??n}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4c00e38a-27df-5315-91e8-d35c03ed6bf3")}catch{}})();var Cl=[{kind:"blocked_by",direction:"directed",traversal:"ordering",inverse:"blocks",ordering:!0,precedence:"target_before_source",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["depends_on"],compatibilityVersion:1,allowSelf:!1},{kind:"blocks",direction:"directed",traversal:"ordering",inverse:"blocked_by",ordering:!0,precedence:"source_before_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"parent",direction:"directed",traversal:"hierarchy",outcomeTraversal:"source_to_target",inverse:"child",ordering:!1,hierarchy:!0,hierarchyDirection:"target_parent",outgoing:"one",incoming:"many",lifecycle:"supersedable",aliases:["child_of","epic"],compatibilityVersion:1,allowSelf:!1},{kind:"child",direction:"directed",traversal:"hierarchy",outcomeTraversal:"target_to_source",inverse:"parent",ordering:!1,hierarchy:!0,hierarchyDirection:"source_parent",outgoing:"many",incoming:"one",lifecycle:"supersedable",aliases:["parent_child","task"],compatibilityVersion:1,allowSelf:!1},{kind:"related",direction:"undirected",traversal:"association",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"recurs_from",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,temporalOrder:"source_after_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",traversal:"semantic",outcomeTraversal:"source_to_target",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",traversal:"semantic",outcomeTraversal:"both",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!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]="b658dc99-fdbb-5d10-9dd6-5f5c263bf48b")}catch{}})();function Es(e){return e.trim().toLowerCase().replaceAll("-","_")}function sC(e){if(e===void 0)return;let t=Es(e);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return t}function Rl(e,t=new Set){if(e===null||typeof e!="object"||t.has(e))return e;if(t.add(e),Array.isArray(e)){for(let r of e)Rl(r,t);return Object.freeze(e)}for(let r of Object.values(e))Rl(r,t);return Object.freeze(e)}function aC(e,t){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${t}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${t}`)}function cC(e,t){if(e.temporalOrder!==void 0&&e.temporalOrder!=="source_after_target")throw new TypeError(`Invalid relationship temporal order for ${t}`);if(e.direction!=="directed"&&e.temporalOrder!==void 0)throw new TypeError(`Undirected relationship kind cannot declare temporal order: ${t}`)}function lC(e,t){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${t}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${t}`)}function dC(e){if(typeof e!="object"||e===null)throw new TypeError("Relationship kind definition requires an object");if(typeof e.kind!="string")throw new TypeError("Relationship kind requires a string identifier");let t=Es(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(t))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${t}`);return t}function uC(e,t){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${t}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${t}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${t}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${t}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${t}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${t}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${t}`);if(e.traversal!==void 0&&!["hierarchy","ordering","semantic","association"].includes(e.traversal))throw new TypeError(`Invalid relationship traversal family for ${t}`);if(e.outcomeTraversal!==void 0&&!["source_to_target","target_to_source","both"].includes(e.outcomeTraversal))throw new TypeError(`Invalid outcome traversal for ${t}`);if(e.direction==="undirected"&&e.outcomeTraversal!==void 0&&e.outcomeTraversal!=="both")throw new TypeError(`Undirected relationship kind cannot declare directional outcome traversal: ${t}`)}function fC(e,t){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${t}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(r=>typeof r!="string")))throw new TypeError(`Invalid relationship aliases for ${t}`)}function pC(e){return e.traversal?e.traversal:e.ordering?"ordering":e.hierarchy?"hierarchy":e.direction==="undirected"?"association":"semantic"}var xl=class{#e=new Map;#r=new Map;constructor(t=Cl){for(let r of t)this.register(r)}register(t){let r=dC(t);if(uC(t,r),fC(t,r),aC(t,r),cC(t,r),lC(t,r),this.#e.has(r)||this.#r.has(r))throw new TypeError(`Relationship kind already registered: ${r}`);let n=sC(t.inverse),o=[...new Set((t.aliases??[]).map(Es))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===r||this.#e.has(s)||this.#r.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...t,kind:r,traversal:pC(t),hierarchy:t.hierarchy??!1,hierarchyDirection:t.hierarchy?t.hierarchyDirection??"source_parent":void 0,inverse:n,aliases:Object.freeze(o),payloadSchema:t.payloadSchema?Rl(structuredClone(t.payloadSchema)):void 0});this.#e.set(r,i);for(let s of o)this.#r.set(s,r);return this}resolve(t){if(typeof t!="string")return;let r=Es(t);return this.#e.get(this.#r.get(r)??r)}require(t){let r=this.resolve(t);if(!r)throw new TypeError(`Unknown relationship kind: ${t}`);return r}list(){return Object.freeze([...this.#e.values()].sort((t,r)=>t.kind.localeCompare(r.kind)))}};function Nl(){return new xl}var Sr=Nl();function Y5(e){return Sr.require(e).kind}function K5(e){return Sr.resolve(e)?.kind}function X5(e,t=Sr){return t.resolve(e)?.ordering===!0}function mC(e,t,r,n=Sr){let o=Co(e),i=Co(t);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=n.require(r);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function ws(e,t){return e.source.localeCompare(t.source)||e.target.localeCompare(t.target)||e.kind.localeCompare(t.kind)}function _C(e,t,r){let n=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!t.has(n)||!t.has(o))throw new TypeError(`Relationship endpoint not found: ${n} -> ${o}`);let i=mC(n,o,e.kind,r),s=Object.freeze({...e,source:n,target:o,kind:i.kind}),a=i.direction==="undirected"?[n,o].sort().join("\0"):`${n}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function vs(e,t,r){let n=e.get(t);n?n.push(r):e.set(t,[r])}function Co(e){return typeof e=="string"?e.trim():""}function Il(e,t){let r=Co(e);return r&&t.has(r)?r:void 0}function gC(e,t,r){let n=[t],o=t;for(;o!==e;)o=r.get(o),n.push(o);return n.reverse()}var __=class e{#e;#r;#o;#n;#s=new Map;#a=new Map;constructor(t,r,n=Sr){this.#e=n,this.#r=new Set([...t].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#r].sort());let o=new Map;for(let i of r){let{edge:s,identity:a}=_C(i,this.#r,n);o.set(a,s)}this.#n=Object.freeze([...o.values()].sort(ws));for(let i of this.#n)vs(this.#s,i.source,i),vs(this.#a,i.target,i),n.require(i.kind).direction==="undirected"&&(vs(this.#s,i.target,i),vs(this.#a,i.source,i))}static fromItems(t,r=Sr){let n=new Set(t.map(i=>Co(i.id)).filter(Boolean)),o=[];for(let i of t){let s=Co(i.id);if(!s)continue;let a=Il(i.parent,n);a&&o.push({source:s,target:a,kind:"parent"});let c=Il(i.blocked_by,n);c&&o.push({source:s,target:c,kind:"blocked_by"});for(let l of i.dependencies??[]){let d=Il(l.id,n);d&&r.resolve(l.kind)&&o.push({source:s,target:d,kind:l.kind,createdAt:l.created_at,author:l.author})}}return new e(n,o,r)}edges(){return this.#n}incidentEdges(t){this.#i(t);let r=this.#s.get(t)??[],n=this.#a.get(t)??[];if(r.length===0)return Object.freeze([...n]);if(n.length===0)return Object.freeze([...r]);let o=[],i=0,s=0;for(;i<r.length||s<n.length;){let a=r[i],c=n[s],l=a===void 0?c:c===void 0||ws(a,c)<=0?a:c;o.at(-1)!==l&&o.push(l),a===l&&(i+=1),c===l&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(t){return this.#r.has(t)}registry(){return this.#e}#i(t){if(!this.#r.has(t))throw new TypeError(`Relationship node not found: ${t}`)}#c(t,r){if(!r)return!0;let n=this.#e.require(t.kind);return r.has(t.kind)||n.inverse!==void 0&&r.has(n.inverse)}#t(t,r,n){let o=[...r==="incoming"?[]:this.#s.get(t)??[],...r==="outgoing"?[]:this.#a.get(t)??[]];return[...new Set(o)].filter(i=>this.#c(i,n)).map(i=>({id:i.source===t?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||ws(i.edge,s.edge))}adjacency(t,r={}){this.#i(t),r.signal?.throwIfAborted();let n=r.kinds?new Set(r.kinds.map(c=>this.#e.require(c).kind)):void 0,o=this.#t(t,r.direction??"outgoing",n),i=r.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(c=>c.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(t,r={}){this.#i(t),r.signal?.throwIfAborted();let n=r.kinds?new Set(r.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#t(t,r.direction??"outgoing",n),i=r.limit??Number.POSITIVE_INFINITY,s=o.slice(0,i);return{value:s,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:s.length<o.length,nextCursor:s.at(-1)?.id}}}closure(t,r={}){this.#i(t);let n=r.kinds?new Set(r.kinds.map(p=>this.#e.require(p).kind)):void 0,o=r.direction??"outgoing",i=r.limit??Number.POSITIVE_INFINITY,s=r.maxDepth??Number.POSITIVE_INFINITY,a=new Set([t]),c=[],l=[{id:t,depth:0}],d=0,u=0,f=!1;e:for(let p=0;p<l.length;p+=1){r.signal?.throwIfAborted();let m=l[p];d+=1;let h=this.#t(m.id,o,n);if(u+=h.length,m.depth>=s){h.some(b=>!a.has(b.id))&&(f=!0);continue}for(let b of h)if(!a.has(b.id)){if(c.length>=i){f=!0;break e}a.add(b.id),c.push(b.id),l.push({id:b.id,depth:m.depth+1})}}return{value:c,meta:{visitedNodes:d,inspectedEdges:u,truncated:f,nextCursor:c.at(-1)}}}shortestPath(t,r,n={}){if(this.#i(t),this.#i(r),t===r)return{value:[t],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=n.kinds?new Set(n.kinds.map(p=>this.#e.require(p).kind)):void 0,i=n.direction??"outgoing",s=n.maxDepth??Number.POSITIVE_INFINITY,a=[{id:t,depth:0}],c=new Map,l=new Set([t]),d=0,u=0,f=!1;for(let p=0;p<a.length;p+=1){n.signal?.throwIfAborted();let m=a[p];d+=1;let h=this.#t(m.id,i,o);if(u+=h.length,m.depth>=s){h.some(b=>!l.has(b.id))&&(f=!0);continue}for(let b of h)if(!l.has(b.id)){if(c.set(b.id,m.id),b.id===r)return{value:gC(t,r,c),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};l.add(b.id),a.push({id:b.id,depth:m.depth+1})}}return{value:[],meta:{visitedNodes:d,inspectedEdges:u,truncated:f}}}subgraph(t,r={}){let n=this.closure(t,r),o=[t,...n.value].sort(),i=new Set(o),s=r.kinds?new Set(r.kinds.map(c=>this.#e.require(c).kind)):void 0,a=new Set;for(let c of o)for(let l of this.#s.get(c)??[])i.has(l.source)&&i.has(l.target)&&this.#c(l,s)&&a.add(l);return{value:{nodes:o,edges:[...a].sort(ws)},meta:n.meta}}};function J5(e,t,r=Sr){return{source:e,target:t.id,kind:r.require(t.kind).kind,createdAt:t.created_at,author:t.author}}(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]="1ddb0411-5fdd-56af-a524-0f6830c288a5")}catch{}})();function Io(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function Kt(e){return mt.includes(e)}function g_(e){let t=e.trim().toLowerCase();return Kt(t)?t:null}function y_(e){return e.filter(t=>!Kt(t))}function Dl(e){let t=e.trim().toLowerCase();return t.length===0?null:al[t]??null}function h_(e){let t=Io([...e].map(i=>i.toLowerCase())),r=[],n=[];for(let i of t){let s=Dl(i);if(s){r.push(s),n.push({alias:i,target:s});continue}r.push(i)}let o=[...new Map(n.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:Io(r),legacy_aliases:o}}function yC(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let r=Dl(t);if(r)return r;let n=Math.max(1,Math.floor(t.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of mt){let a=ot(t,s,n);a!==null&&a<i&&(i=a,o=s)}return o}function b_(e,t,r){let n=mt.join(","),o=yC(r)??"none";return`extension_capability_unknown:${e}:${t}:${r}:allowed=${n}:suggested=${o}`}function w_(e,t,r){let n=r.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${t}:aliases=${n}`}function hC(e){let t=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!t)return null;let[,r,n,o,i,s]=t,a=r,c=i.split(",").map(p=>p.trim()).filter(p=>p.length>0),l=Dl(o),u=(s==="none"?void 0:s)??l??void 0;return{layer:a,name:n,capability:o,allowed_capabilities:c,capability_contract_version:Ji,suggested_capability:u,suggestion_source:u?l===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:l??void 0}}function bC(e){let t=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!t)return[];let[,r,n,o]=t,i=r,s=[...mt],a=[];for(let c of o.split(",")){let[l,d]=c.split(">"),u=l?.trim(),f=d?.trim().toLowerCase();!u||!f||!Kt(f)||a.push({layer:i,name:n,capability:u,allowed_capabilities:s,capability_contract_version:Ji,suggested_capability:f,suggestion_source:"legacy_alias",legacy_alias_target:f})}return 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]="01116a5e-62d1-591b-9fd0-84ac6e99f8d0")}catch{}})();function Ro(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Pl(){return{overrides:[],handlers:[]}}function Ml(){return{overrides:[]}}function Ll(){return{overrides:[]}}function Fl(){return{overrides:[]}}function $l(){return{overrides:[]}}function Ts(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[],assurance_providers:[]}}(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]="720821b8-d18d-5a10-a8b9-f16073dc1fc4")}catch{}})();function J(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function wC(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function Le(e){return e?z(e):{}}function Fe(e){return e?z(e):wC()}function z(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7d96fda0-1f2f-5e34-99da-c3c5ad0f53f6")}catch{}})();var vC=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),EC=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","assurance_providers","parser_overrides","service_overrides","renderer_overrides"];function TC(e,t){for(let r of EC){let n=e[r];if(n===void 0)continue;if(!Array.isArray(n)||n.some(i=>typeof i!="string"))return!1;let o=n.map(i=>vC.has(r)?J(i):i.trim()).filter(i=>i.length>0);t[r]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function kC(e){if(!Array.isArray(e))return null;let t=[];for(let r of e){if(typeof r!="object"||r===null)return null;let n=r;if(n.format!=="json"&&n.format!=="toon"||!Array.isArray(n.commands)||n.commands.some(o=>typeof o!="string")||typeof n.result_discriminator!="boolean")return null;t.push({format:n.format,commands:[...new Set(n.commands.map(o=>J(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:n.result_discriminator})}return t.sort((r,n)=>r.format.localeCompare(n.format))}function AC(e){if(!Array.isArray(e))return null;let t=[];for(let r of e){if(typeof r!="object"||r===null)return null;let n=r.commands;if(!Array.isArray(n)||n.some(o=>typeof o!="string"))return null;t.push({commands:[...new Set(n.map(o=>J(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return t}function jl(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let t=e;if(t.schema_version!==1)return null;let r={schema_version:1};if(!TC(t,r))return null;let n=t.preflight_overrides;if(n!==void 0&&(!Number.isInteger(n)||n<0))return null;typeof n=="number"&&(r.preflight_overrides=n);let o=t.renderer_ownership;if(o!==void 0){let s=kC(o);if(s===null)return null;r.renderer_ownership=s}let i=t.preflight_ownership;if(i!==void 0){let s=AC(i);if(s===null)return null;r.preflight_ownership=s}return r}function i4(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,...e.assurance_providers?{assurance_providers:e.assurance_providers}:{},parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}(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]="9961b408-ad70-5556-84dd-5ca1b1497c27")}catch{}})();var SC=new Set(["name","version","entry","priority","description","author","capabilities","manifest_version","pm_min_version","pm_max_version","engines","trusted","provenance","sandbox_profile","permissions","activation","contributions","legacy_capability_aliases"]);function OC(e){return{unknownKeys:Object.keys(e).filter(t=>!SC.has(t)).sort((t,r)=>t>r?1:-1),missingVersionBounds:e.pm_min_version===void 0&&e.pm_max_version===void 0}}function CC(e){let t=OC(e),r=t.unknownKeys.map(n=>({code:"manifest_unknown_key",path:n,...n==="compatibility"?{suggested_key:"pm_min_version"}:{},message:n==="compatibility"?'Manifest key "compatibility" is ignored; declare the canonical pm_min_version and optional pm_max_version fields instead.':`Manifest key "${n}" is not part of the extension manifest contract and will be ignored.`}));return t.missingVersionBounds&&r.push({code:"no_version_bounds_declared",path:"$",suggested_key:"pm_min_version",message:"No canonical pm version bounds are declared; add pm_min_version so compatibility intent is explicit."}),{ok:r.length===0,findings:r}}function v_(e,t,r){return CC(r).findings.map(n=>n.code==="manifest_unknown_key"?`extension_manifest_unknown_key:${e}:${t.name}:key=${n.path}${n.suggested_key?`:suggested=${n.suggested_key}`:""}`:`extension_manifest_no_version_bounds:${e}:${t.name}:suggested=pm_min_version`)}import IC from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c036d6cf-6a10-5c74-9e2f-e7c953339e2c")}catch{}})();function RC(e){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return e.toString();if(e===void 0)return"undefined";if(typeof e=="symbol")return e.toString();if(typeof e=="function")return`[function:${e.name||"anonymous"}]`}function xC(e){let t=Object.keys(e).sort(),r={};for(let n of t){let o=e[n];o!==void 0&&(r[n]=ks(o))}return r}function ks(e){let t=RC(e);if(t!==void 0)return t;if(Array.isArray(e))return e.map(n=>ks(n));if(e instanceof Date)return e.toISOString();let r=e;if(typeof r.toJSON=="function"){let n=r.toJSON();if(n!==e)return ks(n)}return xC(e)}function L(e){return JSON.stringify(ks(e))}function E_(e,t,r,n){for(let o=0;o<t.length;o+=1)if(!r.has(o)&&n(e,t[o]))return r.add(o),!0;return!1}function NC(e,t){if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.toString()===t.toString()}function DC(e,t){if(e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime()}function PC(e,t){if(!(e instanceof Set||t instanceof Set))return;if(!(e instanceof Set&&t instanceof Set)||e.size!==t.size)return!1;let r=[...t],n=new Set;for(let o of e)if(!E_(o,r,n,le))return!1;return!0}function MC(e,t){if(!(e instanceof Map||t instanceof Map))return;if(!(e instanceof Map&&t instanceof Map)||e.size!==t.size)return!1;let r=[...t.entries()],n=new Set;for(let[o,i]of e.entries())if(!E_([o,i],r,n,([a,c],[l,d])=>le(a,l)&&le(c,d)))return!1;return!0}function LC(e,t){if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((r,n)=>le(r,t[n]))}function FC(e,t){let r=Object.keys(e).sort((o,i)=>o.localeCompare(i)),n=Object.keys(t).sort((o,i)=>o.localeCompare(i));if(r.length!==n.length)return!1;for(let o=0;o<r.length;o+=1){let i=r[o];if(i!==n[o]||!le(e[i],t[i]))return!1}return!0}var $C=[NC,DC,PC,MC,LC];function le(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||typeof e!="object"||typeof t!="object")return!1;for(let r of $C){let n=r(e,t);if(n!==void 0)return n}return FC(e,t)}function As(e){return IC.createHash("sha256").update(e,"utf8").digest("hex")}function R(e,t){let r={};for(let o of t){let i=e[o];i!==void 0&&(r[o]=i)}let n=Object.keys(e).filter(o=>!t.includes(o)).sort((o,i)=>o.localeCompare(i));for(let o of n){let i=e[o];i!==void 0&&(r[o]=i)}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="736cf7fc-d4da-57ce-90d8-2432085dd2c8")}catch{}})();var jC=5e3;async function xo(e,t,r){let n=[];for(let o of e)try{await o.run(z(r))}catch{n.push(`extension_hook_failed:${o.layer}:${o.name}:${t}`)}return n}async function T_(e,t){return xo(e.beforeCommand,"beforeCommand",t)}function UC(e,t,r){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new g(`Extension mutation guard ${t.name} returned an invalid decision.`,_.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${t.layer}:${t.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let n=e,o=typeof n.code=="string"?n.code.trim():"",i=typeof n.remediation=="string"?n.remediation.trim():"";if(o.length===0||i.length===0)throw new g(`Extension mutation guard ${t.name} returned an invalid denial.`,_.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${t.layer}:${t.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof n.message=="string"?n.message.trim():"";throw new g(s||`Extension mutation guard ${t.name} denied ${r}.`,_.CONFLICT,{code:o,reason:`${t.layer}:${t.name}`,nextSteps:[i]})}async function Ul(e,t){for(let r of e.beforeMutation??[]){let n,o;try{let i=Promise.resolve().then(()=>r.run({pm_root:t.pm_root,operation:t.operation,before:t.before===null?null:z(t.before),after:t.after===null?null:z(t.after),changed_fields:[...t.changed_fields],sdk:t.sdk}));i.catch(()=>{}),n=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new g(`Extension mutation guard ${r.name} timed out before ${t.operation}.`,_.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},jC),o.unref?.()})])}catch(i){throw i instanceof g?i:new g(`Extension mutation guard ${r.name} failed before ${t.operation}.`,_.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}UC(n,r,t.operation)}}async function k_(e,t){return xo(e.afterCommand,"afterCommand",t)}async function zl(e,t){return xo(e.onWrite,"onWrite",t)}async function ql(e,t){return xo(e.onRead,"onRead",t)}async function Hl(e,t){return xo(e.onIndex,"onIndex",t)}function zC(e){let t="";e instanceof Error&&typeof e.message=="string"?t=e.message:typeof e=="string"?t=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(t=e.message);let r=t.replace(/\s+/gu," ").trim();if(r.length===0)return"";let n=300;return r.length>n?`${r.slice(0,n-1)}\u2026`:r}function Ss(e,t){if(typeof e!="object"||e===null||typeof e[t]!="string")return;let r=String(e[t]).replace(/\s+/gu," ").trim();return r.length>0?r.slice(0,300):void 0}function qC(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let t=e.exit_code;if(typeof t!="number"||!Number.isInteger(t)||t<1||t>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return t}async function Gl(e,t){let r=J(t.command);if(r.length===0)return{handled:!1,result:null,warnings:[]};let n=[...e.handlers].reverse().find(o=>o.command===r);if(!n)return{handled:!1,result:null,warnings:[]};try{let o=await n.run({command:r,args:z(t.args),options:z(t.options),global:z(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,...t.sdk===void 0?{}:{sdk:t.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",qC(o)],["errorCode",Ss(o,"code")],["remediation",Ss(o,"remediation")]].filter(i=>i[1]!==void 0))}}catch(o){let i=typeof o=="object"&&o!==null&&"exitCode"in o?o.exitCode:void 0;if(typeof i=="number"&&Number.isFinite(i))throw o;return{handled:!1,result:null,warnings:[`extension_command_handler_failed:${n.layer}:${n.name}:${n.command}`],errorMessage:zC(o),...Object.fromEntries([["errorCode",Ss(o,"code")],["remediation",Ss(o,"remediation")]].filter(s=>s[1]!==void 0))}}}async function Bl(e,t){let r=J(t.command);if(r.length===0)return{overridden:!1,context:{command:r,args:z(t.args),options:Le(t.options),global:Fe(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};let n=[...e.overrides].reverse().find(o=>o.command===r);if(!n)return{overridden:!1,context:{command:r,args:z(t.args),options:Le(t.options),global:Fe(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]};try{let o=await Promise.resolve(n.run({command:r,args:z(t.args),options:Le(t.options),global:Fe(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel}))??{},i=Array.isArray(o.args)?z(o.args):z(t.args),s=o.options?Le(o.options):Le(t.options),a=o.global?Fe(o.global):Fe(t.global);return{overridden:!0,context:{command:r,args:i,options:s,global:a,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[]}}catch{return{overridden:!1,context:{command:r,args:z(t.args),options:Le(t.options),global:Fe(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},warnings:[`extension_parser_override_failed:${n.layer}:${n.name}:${n.command}`]}}}async function Vl(e,t){let r={command:J(t.command),args:z(t.args),options:Le(t.options),global:Fe(t.global),pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel},n=z(t.decision),o=[...e.overrides].reverse().find(i=>!i.commands?.length||i.commands.includes(r.command));if(!o)return{overridden:!1,context:r,decision:n,warnings:[]};try{let i=await Promise.resolve(o.run({command:r.command,args:z(r.args),options:Le(r.options),global:Fe(r.global),pm_root:r.pm_root,source_workspace_root:r.source_workspace_root,repo_root:r.repo_root,pm_root_rel:r.pm_root_rel,decision:z(n)}))??{},s={command:r.command,args:Array.isArray(i.args)?z(i.args):r.args,options:i.options?Le(i.options):r.options,global:i.global?Fe(i.global):r.global,pm_root:r.pm_root,source_workspace_root:r.source_workspace_root,repo_root:r.repo_root,pm_root_rel:r.pm_root_rel},a={enforce_item_format_gate:typeof i.enforce_item_format_gate=="boolean"?i.enforce_item_format_gate:n.enforce_item_format_gate,run_preflight_item_format_sync:typeof i.run_preflight_item_format_sync=="boolean"?i.run_preflight_item_format_sync:n.run_preflight_item_format_sync,run_extension_migrations:typeof i.run_extension_migrations=="boolean"?i.run_extension_migrations:n.run_extension_migrations,enforce_mandatory_migration_gate:typeof i.enforce_mandatory_migration_gate=="boolean"?i.enforce_mandatory_migration_gate:n.enforce_mandatory_migration_gate};return{overridden:!0,context:s,decision:a,warnings:[]}}catch{return{overridden:!1,context:r,decision:n,warnings:[`extension_preflight_override_failed:${o.layer}:${o.name}`]}}}function A_(e){return{handled:!1,result:e.payload,warnings:[]}}function S_(e,t){return[...e.overrides].reverse().filter(r=>r.service===t)}function O_(e){return{service:e.service,command:e.command?J(e.command):void 0,args:e.args?z(e.args):void 0,options:e.options?Le(e.options):void 0,global:e.global?Fe(e.global):void 0,pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,payload:z(e.payload)}}function HC(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let t=e.handled;return t===!0?Object.hasOwn(e,"result"):t===!1&&Reflect.ownKeys(e).length===1}function C_(e,t){return HC(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:t.payload}:t.service==="output_format"&&e==null?{handled:!1,result:t.payload}:{handled:!0,result:e}}function I_(e,t,r){return t.service==="output_format"&&typeof e=="object"&&e!==null&&le(e,r.payload)}function R_(e,t,r){if(t.handled){if(e.passThrough===!0){r.push(`extension_service_pass_through_contract_violated:${e.layer}:${e.name}:${e.service}`);return}return{handled:!0,result:t.result,warnings:r}}}function Wl(e,t){let r=S_(e,t.service);if(r.length===0)return A_(t);let n=[];for(let o of r)try{let i=O_(t),s=o.run(i);if(s instanceof Promise){n.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(I_(s,t,i)){n.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=R_(o,C_(s,t),n);if(a)return a}catch{n.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:n}}async function Yl(e,t){let r=S_(e,t.service);if(r.length===0)return A_(t);let n=[];for(let o of r)try{let i=O_(t),s=await Promise.resolve(o.run(i));if(I_(s,t,i)){n.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=R_(o,C_(s,t),n);if(a)return a}catch{n.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:t.payload,warnings:n}}function Kl(e,t){let r=J(t.command);if(r.length===0)return{overridden:!1,result:t.result,warnings:[]};let n=[...e.overrides].reverse().find(o=>o.command===r);if(!n)return{overridden:!1,result:t.result,warnings:[]};try{let o=Le(t.options),i=Fe(t.global),s=n.run({command:r,args:z(t.args),options:o,global:i,pm_root:t.pm_root,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:z(t.result)});return s instanceof Promise?{overridden:!1,result:t.result,warnings:[`extension_command_override_async_unsupported:${n.layer}:${n.name}:${n.command}`]}:{overridden:!0,result:s,warnings:[]}}catch{return{overridden:!1,result:t.result,warnings:[`extension_command_override_failed:${n.layer}:${n.name}:${n.command}`]}}}function GC(e,t,r){if((e.commands?.length??0)>0&&!e.commands?.includes(t))return!1;if(e.resultDiscriminator===void 0)return!0;try{return e.resultDiscriminator(z(r))}catch{return!1}}function Xl(e,t){let r=typeof t.command=="string"?J(t.command):"",n=[...e.overrides].reverse().find(o=>o.format===t.format&&GC(o,r,t.result));if(!n)return{overridden:!1,rendered:null,warnings:[]};try{let o=Array.isArray(t.args)?z(t.args):[],i=Le(t.options),s=Fe(t.global),a=typeof t.pm_root=="string"?t.pm_root:"",c=n.run({format:t.format,command:r,args:o,options:i,global:s,pm_root:a,source_workspace_root:t.source_workspace_root,repo_root:t.repo_root,pm_root_rel:t.pm_root_rel,result:z(t.result)});return c==null?{overridden:!1,rendered:null,warnings:[]}:typeof c!="string"?{overridden:!1,rendered:null,warnings:[`extension_renderer_invalid_result:${n.layer}:${n.name}:${n.format}`]}:{overridden:!0,rendered:c,warnings:[]}}catch{return{overridden:!1,rendered:null,warnings:[`extension_renderer_failed:${n.layer}:${n.name}:${n.format}`]}}}import xr from"node:fs/promises";import Rr from"node:path";import{pathToFileURL as mI}from"node:url";import x_ from"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]="83a29a06-1b0b-52e6-9617-2fc03861cb18")}catch{}})();function Jl(e,t){let r=x_.relative(e,t);return r.length===0?!0:!r.startsWith("..")&&!x_.isAbsolute(r)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="99f785c2-7c67-5564-9423-3439c41b4557")}catch{}})();var Os=En;function Cs(e){let t=e.trim().toLowerCase();return Os.includes(t)?t:null}function N_(e){let t=e.trim().toLowerCase();if(t.length===0)return null;let r=Math.max(1,Math.floor(t.length*.34));for(let n of Os)if(ot(t,n,r)!==null)return n;return null}import BC from"node:fs/promises";import No 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]="6d77d806-1c41-5235-b56b-802089979395")}catch{}})();async function D_(e,t){let r=No.dirname(t.manifest_path),n=No.relative(r,t.entry_path);if(n.startsWith("..")||No.isAbsolute(n))throw new Error(`Cannot snapshot extension entry outside its package directory: ${t.entry_path}`);let o=No.join(e,`${t.layer}-${t.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await m_("extension_module_graph_snapshot",()=>BC.cp(r,o,{recursive:!0,force:!0})),No.join(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]="44b86710-2d6f-57fe-912d-1cf7482a4f86")}catch{}})();function P_(e){let t={beforeCommand:e.hooks.beforeCommand.length,beforeMutation:e.hooks.beforeMutation.length,afterCommand:e.hooks.afterCommand.length,onWrite:e.hooks.onWrite.length,onRead:e.hooks.onRead.length,onIndex:e.hooks.onIndex.length,commandOverrides:e.commands.overrides.length,commandHandlers:e.commands.handlers.length,parserOverrides:e.parsers.overrides.length,preflightOverrides:e.preflight.overrides.length,serviceOverrides:e.services.overrides.length,rendererOverrides:e.renderers.overrides.length,registrations:Object.fromEntries(Object.entries(e.registrations).map(([r,n])=>[r,n.length]))};return()=>{e.hooks.beforeCommand.length=t.beforeCommand,e.hooks.beforeMutation.length=t.beforeMutation,e.hooks.afterCommand.length=t.afterCommand,e.hooks.onWrite.length=t.onWrite,e.hooks.onRead.length=t.onRead,e.hooks.onIndex.length=t.onIndex,e.commands.overrides.length=t.commandOverrides,e.commands.handlers.length=t.commandHandlers,e.parsers.overrides.length=t.parserOverrides,e.preflight.overrides.length=t.preflightOverrides,e.services.overrides.length=t.serviceOverrides,e.renderers.overrides.length=t.rendererOverrides;for(let[r,n]of Object.entries(t.registrations))e.registrations[r].length=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]="092f2852-fa07-5f0f-8266-e9e2ca078cb6")}catch{}})();function M_(e){let t=typeof e=="function"?e:e.run;if(typeof t!="function")throw new TypeError("registerPreflight override requires a function handler");let r=[...new Set((typeof e=="function"?[]:e.commands??[]).map(n=>{if(typeof n!="string"||n.trim().length===0)throw new TypeError("registerPreflight ownership.commands must contain non-empty command paths");return J(n)}))];return{run:t,...r.length>0?{commands:r}:{}}}function L_(e){let t=[];for(let r=1;r<e.overrides.length;r+=1){let n=e.overrides[r];for(let o of e.overrides.slice(0,r))n.commands?.length&&o.commands?.length&&!o.commands.some(i=>n.commands.includes(i))||t.push(`extension_preflight_override_collision:${n.layer}:${n.name}:${o.layer}:${o.name}`)}return 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]="09c95125-68bd-512b-bb09-c9ef0b2f676e")}catch{}})();function F_(e){if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError("registerService ownership must be an object");if(Reflect.ownKeys(e).some(t=>t!=="passThrough"))throw new TypeError("registerService ownership supports only passThrough");if(e.passThrough!==void 0&&typeof e.passThrough!="boolean")throw new TypeError("registerService ownership.passThrough must be a boolean when provided");return e.passThrough===!0}(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]="aade6230-a71b-5cbc-bc9d-022f20e521bd")}catch{}})();function pe(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return t}function we(e,t){if(t!==void 0&&typeof t!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function oe(e,t){if(t!==void 0&&(typeof t!="string"||t.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function $_(e,t){if(t===void 0)return;let r=n=>typeof n=="string"||typeof n=="number"||typeof n=="boolean";if(Array.isArray(t)){for(let[n,o]of t.entries())if(!r(o))throw new TypeError(`${e}[${n}] must be a string, number, or boolean`);return}if(!r(t))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function Or(e,t){if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[r,n]of t.entries())if(typeof n!="string"||n.trim().length===0)throw new TypeError(`${e}[${r}] must be a non-empty string`)}}function Do(e,t){if(Or(e,t),!Array.isArray(t))return[];let r=[],n=new Set;for(let o of t){let i=o.trim();i.length===0||n.has(i)||(n.add(i),r.push(i))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="34536eba-0f92-5599-a807-5b39b000e733")}catch{}})();var Zl=Object.freeze(["workspace","intake","context","lifecycle","evidence","graph","quality","automation","extensions","internal"]);(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]="ca48c32a-e4e0-5da5-b9cb-b1f713646bad")}catch{}})();var VC=new Set(Zl);function WC(e){if(e!==void 0&&!VC.has(String(e)))throw new Error(`registerCommand definition.family must be one of: ${Zl.join(", ")}`)}function j_(e){oe("registerCommand definition.action",e.action),oe("registerCommand definition.family",e.family),oe("registerCommand definition.description",e.description),oe("registerCommand definition.intent",e.intent),oe("registerCommand definition.tier",e.tier);let t=e.tier;if(t!==void 0&&t!=="core"&&t!=="standard"&&t!=="full"&&t!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal");WC(e.family)}(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]="1729c469-5e9c-5d8c-8137-ec506c9fd31b")}catch{}})();function YC(e){let t=pe("registerExporter options.output",e),r=new Set(["channel","receipt","media_type"]);for(let n of Object.keys(t))if(!r.has(n))throw new TypeError(`registerExporter options.output contains unsupported field ${n}`);if(t.channel!=="stdout"&&t.channel!=="file")throw new TypeError("registerExporter options.output.channel must be stdout|file");if(t.receipt!==void 0&&t.receipt!=="suppress"&&t.receipt!=="render")throw new TypeError("registerExporter options.output.receipt must be suppress|render");if(t.channel==="stdout"&&t.receipt==="render")throw new TypeError("registerExporter stdout artifacts cannot render a host receipt");return oe("registerExporter options.output.media_type",t.media_type),{channel:t.channel,receipt:t.receipt??(t.channel==="stdout"?"suppress":"render"),...typeof t.media_type=="string"?{media_type:t.media_type}:{}}}function U_(e,t,r){if(e==="registerImporter"&&t.output!==void 0)throw new TypeError("registerImporter options.output is exporter-only");if(e!=="registerExporter"||t.output===void 0)return;let n=YC(t.output);return!r&&n.channel==="stdout"&&(t.description="Export items with the registered extension adapter. Artifact bytes are written exclusively to stdout and the host receipt is suppressed by default."),n}function Ql(e,t,r){return{registration:t,action:r,command:e.command,args:z(e.args),options:z(e.options),global:z(e.global),pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,...e.sdk===void 0?{}:{sdk:e.sdk}}}(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]="09098e5c-d021-53ae-96b5-c56394c304da")}catch{}})();var ed=Object.freeze([{flag:"--json"},{flag:"--lean"},{flag:"--token-accounting"},{flag:"--output-include",value_name:"fields"},{flag:"--output-limit",value_name:"count"},{flag:"--output-budget",value_name:"tokens"},{flag:"--output-format",value_name:"toon|json"},{flag:"--output-session",value_name:"state"},{flag:"--output-cursor",value_name:"cursor"},{flag:"--output-row-contract"},{flag:"--quiet"},{flag:"--no-changed-fields"},{flag:"--full-changed-fields"},{flag:"--id-only"},{flag:"--pm-path",aliases:["--path"]},{flag:"--no-extensions"},{flag:"--no-pager"},{flag:"--profile"},{flag:"--help"},{flag:"--author",value_name:"id"}]),td=new Set(ed.flatMap(e=>[e.flag,...e.aliases??[]]));(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]="f823edae-b035-5547-8d81-2761a9a44034")}catch{}})();var KC=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function XC(e){if(typeof e!="string")return null;let t=e.trim(),r=t.split(/[ =]/,1)[0];return td.has(r)?"host_owned_flag_collision":KC.test(t)?null:"malformed_long_flag"}function z_(e,t){let r=[e,t].find(i=>typeof i=="string"&&td.has(i.trim().split(/[ =]/,1)[0]));if(typeof r=="string")return{token:r.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let n=e.trim(),o=XC(n);return o===null?null:{token:n,failure:o}}function q_(e,t){return t==="host_owned_flag_collision"?`cannot shadow host-owned global flag "${e}"; read it from context.global instead`:`long flag "${e}" must start with a double-dash name such as "--my-flag" or "--my-flag <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]="d2feae50-9a1e-54fa-98a3-df529be63069")}catch{}})();function H_(e){return typeof e=="string"?e:String(e)}function Po(e){let r=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(r)?r.split(/[.-]/).map(n=>Number(n)):null}function rd(e,t){let r=Po(e),n=Po(t);if(!r||!n)return null;let o=Math.max(r.length,n.length);for(let i=0;i<o;i+=1){let s=r[i]??0,a=n[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function G_(e,t){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:t};let r=H_(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:t};if(!Po(r))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:t};if(t===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:null};let n=rd(t,r);return n===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:t}:n<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:r,current:t}:{kind:"pm_min_version",status:"ok",allowed:!0,required:r,current:t}}function B_(e,t,r){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:t};let n=H_(e);if(typeof e!="string"||n.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:n,current:t};if(/^[<>=~^]/.test(n.trim())||!Po(n))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:n,current:t};if(t===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:n,current:null};let o=rd(t,n);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:n,current:t}:o>0?r==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:n,current:t}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:n,current:t}:{kind:"pm_max_version",status:"ok",allowed:!0,required:n,current: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]="8ea4597b-6a2b-5061-b490-d8aff3fbe7aa")}catch{}})();function Je(e){return typeof e!="string"?"":e.trim().toLowerCase()}function q(e){return new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))}function JC(e){let t=e.trim().toLowerCase();if(t.length===0)return"";let r=t.split(/[.:/]/).map(n=>n.replace(/[\s_-]+/g,"")).filter(n=>n.length>0);return r.length===0?"":r.length===1?r[0]:`${r[0]}.${r.slice(1).join("")}`}function kn(e){return new Set((e??[]).map(t=>JC(t)).filter(t=>t.length>0))}function V_(e){let t=Je(e);return Zi.includes(t)?t:"off"}function W_(e){let t=Je(e);return Qi.includes(t)?t:"off"}function Mo(e){let t=Je(e);return es.includes(t)?t:"none"}function nd(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return Pm.includes(t)?t:void 0}function Y_(e){if(typeof e=="string"){let t=nd(e)??"block";return{global:t,project:t}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:nd(e.global)??"block",project:nd(e.project)??"block"}:{global:"block",project:"block"}}function ZC(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function W(e){return[...new Set(e)].sort((t,r)=>t.localeCompare(r))}function QC(e){let t=Je(e.name);return t.length===0?null:{name:t,normalized:{name:t,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?Mo(e.sandbox_profile):void 0,allowedCapabilities:q(e.allowed_capabilities),blockedCapabilities:q(e.blocked_capabilities),allowedSurfaces:kn(e.allowed_surfaces),blockedSurfaces:kn(e.blocked_surfaces),allowedCommands:q(e.allowed_commands),blockedCommands:q(e.blocked_commands),allowedActions:q(e.allowed_actions),blockedActions:q(e.blocked_actions),allowedServices:q(e.allowed_services),blockedServices:q(e.blocked_services)}}}function K_(e){let t=new Map;for(let r of e??[]){let n=QC(r);n&&t.set(n.name,n.normalized)}return t}function eI(e){let t=[],r=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of W([...e.allowedCapabilities,...e.blockedCapabilities]))Kt(o)||t.push(`extension_policy_unknown_capability:${o}`);for(let o of r)for(let i of W([...o.allowedCapabilities,...o.blockedCapabilities]))Kt(i)||t.push(`extension_policy_unknown_capability:${o.name}:${i}`);let n=new Set(ts);for(let o of W([...e.allowedSurfaces,...e.blockedSurfaces]))n.has(o)||t.push(`extension_policy_unknown_surface:${o}`);for(let o of r)for(let i of W([...o.allowedSurfaces,...o.blockedSurfaces]))n.has(i)||t.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(t)].sort((o,i)=>o.localeCompare(i))}function X_(e){let t=e.extensions?.policy??{},r=q(t.allowed_capabilities),n=q(t.blocked_capabilities),o=kn(t.allowed_surfaces),i=kn(t.blocked_surfaces),s=K_(t.extension_overrides);return{mode:V_(t.mode),trustMode:W_(t.trust_mode),pmMaxVersionExceededMode:Y_(t.pm_max_version_exceeded_mode),requireProvenance:t.require_provenance===!0,trustedExtensions:q(t.trusted_extensions),defaultSandboxProfile:Mo(t.default_sandbox_profile),allowedExtensions:q(t.allowed_extensions),blockedExtensions:q(t.blocked_extensions),allowedCapabilities:r,blockedCapabilities:n,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:q(t.allowed_commands),blockedCommands:q(t.blocked_commands),allowedActions:q(t.allowed_actions),blockedActions:q(t.blocked_actions),allowedServices:q(t.allowed_services),blockedServices:q(t.blocked_services),overridesByName:s,warnings:eI({allowedCapabilities:r,blockedCapabilities:n,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function J_(e){let t=[...e.overridesByName.values()].sort((r,n)=>r.name.localeCompare(n.name)).map(r=>({name:r.name,...r.disabled?{disabled:!0}:{},...r.requireTrusted?{require_trusted:!0}:{},...r.requireProvenance?{require_provenance:!0}:{},...r.sandboxProfile?{sandbox_profile:r.sandboxProfile}:{},...r.allowedCapabilities.size>0?{allowed_capabilities:W(r.allowedCapabilities)}:{},...r.blockedCapabilities.size>0?{blocked_capabilities:W(r.blockedCapabilities)}:{},...r.allowedSurfaces.size>0?{allowed_surfaces:W(r.allowedSurfaces)}:{},...r.blockedSurfaces.size>0?{blocked_surfaces:W(r.blockedSurfaces)}:{},...r.allowedCommands.size>0?{allowed_commands:W(r.allowedCommands)}:{},...r.blockedCommands.size>0?{blocked_commands:W(r.blockedCommands)}:{},...r.allowedActions.size>0?{allowed_actions:W(r.allowedActions)}:{},...r.blockedActions.size>0?{blocked_actions:W(r.blockedActions)}:{},...r.allowedServices.size>0?{allowed_services:W(r.allowedServices)}:{},...r.blockedServices.size>0?{blocked_services:W(r.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:ZC(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:W(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:W(e.allowedExtensions),blocked_extensions:W(e.blockedExtensions),allowed_capabilities:W(e.allowedCapabilities),blocked_capabilities:W(e.blockedCapabilities),allowed_surfaces:W(e.allowedSurfaces),blocked_surfaces:W(e.blockedSurfaces),allowed_commands:W(e.allowedCommands),blocked_commands:W(e.blockedCommands),allowed_actions:W(e.allowedActions),blocked_actions:W(e.blockedActions),allowed_services:W(e.allowedServices),blocked_services:W(e.blockedServices),extension_overrides:t}}function Z_(e){let t=K_(e.extension_overrides);return{mode:V_(e.mode),trustMode:W_(e.trust_mode),pmMaxVersionExceededMode:Y_(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:q(e.trusted_extensions),defaultSandboxProfile:Mo(e.default_sandbox_profile),allowedExtensions:q(e.allowed_extensions),blockedExtensions:q(e.blocked_extensions),allowedCapabilities:q(e.allowed_capabilities),blockedCapabilities:q(e.blocked_capabilities),allowedSurfaces:kn(e.allowed_surfaces),blockedSurfaces:kn(e.blocked_surfaces),allowedCommands:q(e.allowed_commands),blockedCommands:q(e.blocked_commands),allowedActions:q(e.allowed_actions),blockedActions:q(e.blocked_actions),allowedServices:q(e.allowed_services),blockedServices:q(e.blocked_services),overridesByName:t,warnings:[]}}function Xt(e,t){return e.overridesByName.get(Je(t))??null}function An(e,t,r,n,o){return t.has(r)?o:e.size>0&&!e.has(r)?n:null}function Q_(e,t,r){let n=r.trim().toLowerCase(),o=Xt(e,t.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return An(i,s,n,"capability_not_allowlisted","capability_blocked")}function tI(e,t,r){let n=Xt(e,t.name),o=n&&n.allowedSurfaces.size>0?n.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...n?n.blockedSurfaces:[]]);return An(o,i,r,"surface_not_allowlisted","surface_blocked")}function rI(e,t,r){let n=J(r);if(n.length===0)return null;let o=Xt(e,t.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return An(i,s,n,"command_not_allowlisted","command_blocked")}function nI(e,t,r){let n=Je(r).replace(/\s+/g,"-");if(n.length===0)return null;let o=Xt(e,t.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return An(i,s,n,"action_not_allowlisted","action_blocked")}function oI(e,t,r){let n=Je(r);if(n.length===0)return null;let o=Xt(e,t.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return An(i,s,n,"service_not_allowlisted","service_blocked")}function iI(e,t){let r=Je(t.name);return Xt(e,t.name)?.disabled===!0?"extension_override_disabled":An(e.allowedExtensions,e.blockedExtensions,r,"extension_not_allowlisted","extension_blocked")}function sI(e,t){if(e.trustMode==="off")return null;let r=Xt(e,t.name),n=Je(t.name),o=t.trusted===!0,i=t.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(n)?"extension_not_trusted":(r?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||r?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function aI(e,t){if(e.mode==="off")return null;let n=Xt(e,t.name)?.sandboxProfile??t.sandboxProfile??e.defaultSandboxProfile;if(n==="none")return null;let o=t.permissions;if(!o)return"sandbox_permissions_missing";let i=s=>o[s]===!0;return n==="restricted"?i("process_spawn")?"sandbox_restricted_disallows_process_spawn":i("env_write")?"sandbox_restricted_disallows_env_write":null:i("process_spawn")?"sandbox_strict_disallows_process_spawn":i("network")?"sandbox_strict_disallows_network":i("fs_write")?"sandbox_strict_disallows_fs_write":i("env_write")?"sandbox_strict_disallows_env_write":null}function Is(e,t,r,n,o={}){let i=Object.entries(o).sort((a,c)=>a[0].localeCompare(c[0])).map(([a,c])=>`${a}=${c}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${t}:${r.layer}:${r.name}:reason=${n}${s}`}function eg(e,t){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let r=[],n=iI(e,t);n&&r.push({reason:n,scope:"extension",mode:e.mode});let o=sI(e,t);o&&r.push({reason:o,scope:"trust",mode:e.trustMode});let i=aI(e,t);i&&r.push({reason:i,scope:"extension",mode:e.mode});let s=r.find(c=>c.mode==="enforce");if(s)return{allowed:!1,warning:Is("blocked",s.scope,t,s.reason)};let a=r.find(c=>c.mode==="warn");return a?{allowed:!0,warning:Is("violation",a.scope,t,a.reason)}:{allowed:!0,warning:null}}function tg(e,t,r){if(e.mode==="off")return{allowed:!0,warning:null};let n=Q_(e,t,r);return n?{allowed:e.mode==="warn",warning:Is(e.mode==="warn"?"violation":"blocked","capability",t,n,{capability:r.trim().toLowerCase()})}:{allowed:!0,warning:null}}function cI(e,t,r,n,o){let i=typeof n=="string"?Q_(e,t,n):null,s=tI(e,t,r),a=o.command?rI(e,t,o.command):null,c=o.action?nI(e,t,o.action):null,l=o.service?oI(e,t,o.service):null;return i??s??a??c??l}function lI(e,t,r,n){let o={method:Je(e).replace(/\s+/g,"_"),surface:t};return r&&(o.capability=r),n.command&&(o.command=J(n.command)),n.action&&(o.action=Je(n.action).replace(/\s+/g,"-")),n.service&&(o.service=Je(n.service)),o}function rg(e,t,r,n,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=cI(e,t,r,o,s);if(!a)return{allowed:!0,warning:null};let c=Is(e.mode==="warn"?"violation":"blocked","registration",t,a,lI(n,r,o,s));return{allowed:e.mode==="warn",warning: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]="483b4197-5498-568a-bcc4-abd6999a07cc")}catch{}})();function ng(e){return e==="toon"||e==="json"}function og(e){return mn.includes(e)}function Cr(e,t){if(typeof t!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}var ig=Symbol("extension_registration_trace");function xt(e,t){let r=new TypeError(e);return Object.defineProperty(r,ig,{value:t,enumerable:!1,configurable:!1,writable:!1}),r}function sg(e){return e instanceof Error?e[ig]:void 0}function Lo(e){if(e===null)return null;if(Array.isArray(e))return e.map(t=>Lo(t));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let t=e,r={};for(let n of Object.keys(t).sort((o,i)=>o.localeCompare(i)))r[n]=Lo(t[n]);return r}return e}function Fo(e){if(Array.isArray(e))return e.map(t=>Fo(t));if(typeof e=="object"&&e!==null){let t=e,r={};for(let n of Object.keys(t).sort((o,i)=>o.localeCompare(i)))r[n]=Fo(t[n]);return r}return e}function Sn(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Lo(t)}function $o(e,t){if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError(`${e} requires an object definition`);return Fo(t)}function Rs(e,t){if(!Array.isArray(t))throw new TypeError(`${e} requires an array of object definitions`);return t.map(r=>Sn(e,r))}function Ie(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function jo(e,t){if(typeof t!="function")throw new TypeError(`${e} requires a function handler`)}function od(e){return e.trim().toLowerCase().split(/\s+/).filter(t=>t.length>0).join(" ")}function id(e,t){return J(`${e} ${t}`)}function Uo(e,t){return Object.defineProperty(e,"runtime_definition",{value:t,enumerable:!1,writable:!1,configurable:!1}),e}var dI=new Set(["low","medium","high"]),uI=new Set(["number","string_set"]),fI=new Set(["string","number","boolean"]);function ag(e,t){if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return t.trim()}function pI(e,t,r){let n=`registerAssuranceMeasurementProvider provider.keys.${t}`,o=pe(n,r);if(!uI.has(String(o.value_type)))throw new TypeError(`${n}.value_type must be number or string_set`);if(oe(`${n}.description`,o.description),o.parameters===void 0)return;let i=pe(`${n}.parameters`,o.parameters);for(let[s,a]of Object.entries(i)){let c=`${n}.parameters.${s}`;ag(`${c}.name`,s);let l=pe(c,a);if(!fI.has(String(l.type)))throw new TypeError(`${c}.type must be string, number, or boolean`);we(`${c}.required`,l.required),oe(`${c}.description`,l.description)}if(Object.keys(i).length>50)throw new TypeError(`assurance provider ${e} key ${t} exceeds 50 parameters`)}function cg(e){let t=pe("registerAssuranceMeasurementProvider provider",e),r=ag("registerAssuranceMeasurementProvider provider.id",t.id);if(!/^[a-z0-9][a-z0-9-]*$/u.test(r))throw new TypeError("registerAssuranceMeasurementProvider provider.id must be a stable lowercase id");if(!dI.has(String(t.cost_class)))throw new TypeError("registerAssuranceMeasurementProvider provider.cost_class must be low, medium, or high");if(typeof t.network!="boolean")throw new TypeError("registerAssuranceMeasurementProvider provider.network must be boolean");let n=pe("registerAssuranceMeasurementProvider provider.keys",t.keys);if(Object.keys(n).length===0)throw new TypeError("registerAssuranceMeasurementProvider provider.keys requires at least one key");for(let[o,i]of Object.entries(n)){if(!/^[a-z0-9][a-z0-9-]*$/u.test(o))throw new TypeError(`registerAssuranceMeasurementProvider provider key ${o} must be a stable lowercase id`);pI(r,o,i)}if(t.timeout_ms!==void 0&&(typeof t.timeout_ms!="number"||!Number.isInteger(t.timeout_ms)||t.timeout_ms<1||t.timeout_ms>3e5))throw new TypeError("registerAssuranceMeasurementProvider provider.timeout_ms must be an integer from 1 through 300000");if(typeof t.resolve!="function")throw new TypeError("registerAssuranceMeasurementProvider provider.resolve requires a function handler")}(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]="b35d854e-5025-5999-abe7-507f1a25647f")}catch{}})();function lg(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(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]="2f54ac29-9bf8-51f4-9352-8f57d1b5a798")}catch{}})();var _I=100,dg=null,gI=Object.freeze(rs()),ug=0;function yI(e=Date.now()){return ug+=1,`${ug}-${e}`}function fg(e,t){let r=e[t];if(r!=null)return typeof r!="string"||r.trim().length===0?null:r.trim()}function hI(e){if(e==null)return;let t=Ar(e);if(!t)return null;let r={};for(let n of Object.keys(t).sort((o,i)=>o.localeCompare(i))){if(n.trim().length===0)return null;let o=t[n];if(typeof o!="string"||o.trim().length===0)return null;r[n.trim()]=o.trim()}return Object.keys(r).length>0?r:void 0}function sd(e,t){let r=e[t];return typeof r!="string"||r.trim().length===0?null:r.trim()}function vg(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function Ir(e){if(e!=null)return typeof e!="boolean"?null:e}function bI(e){let t=vg(e.priority);return t===void 0?_I:t}function wI(e){let t=e.sandbox_profile;if(t==null)return;if(typeof t!="string")return null;let r=Mo(t);return r!==t.trim().toLowerCase()?null:r}function ad(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function vI(e){if(e==null)return;let t=Ar(e);if(!t)return null;let r=ad(t.source),n=ad(t.signature),o=ad(t.attestation),i=t.verified===void 0||t.verified===null?void 0:typeof t.verified=="boolean"?t.verified:null;return i===null?null:{...r?{source:r}:{},...n?{signature:n}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function EI(e){if(e==null)return;let t=Ar(e);if(!t)return null;let r=Ir(t.fs_read),n=Ir(t.fs_write),o=Ir(t.network),i=Ir(t.env_read),s=Ir(t.env_write),a=Ir(t.process_spawn);return[r,n,o,i,s,a].includes(null)?null:{...typeof r=="boolean"?{fs_read:r}:{},...typeof n=="boolean"?{fs_write:n}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function TI(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(r=>typeof r!="string"))return null;let t=h_(e);return{capabilities:t.capabilities,legacy_aliases:t.legacy_aliases}}function kI(e){if(e==null)return;let t=Ar(e);if(!t)return null;let r=t.commands;if(r==null)return;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;let n=[...new Set(r.map(o=>J(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return n.length>0?{commands:n}:void 0}function AI(e){let t=vg(e.manifest_version);if(t===null)return null;let r=fg(e,"pm_min_version");if(r===null)return null;let n=fg(e,"pm_max_version");if(n===null)return null;let o=hI(e.engines);if(o===null)return null;let i=Ir(e.trusted);if(i===null)return null;let s=wI(e);if(s===null)return null;let a=vI(e.provenance);if(a===null)return null;let c=EI(e.permissions);if(c===null)return null;let l=TI(e.capabilities);if(l===null)return null;let d=kI(e.activation);if(d===null)return null;let u=jl(e.contributions);return u===null?null:{manifest_version:t,pm_min_version:r,pm_max_version:n,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:c,capabilities:l.capabilities,legacy_capability_aliases:l.legacy_aliases,activation:d,contributions:u}}function SI(e){if(typeof e!="object"||e===null)return null;let t=e,r=sd(t,"name");if(r===null)return null;let n=sd(t,"version");if(n===null)return null;let o=sd(t,"entry");if(o===null)return null;let i=bI(t);if(i===null)return null;let s=AI(t);return s===null?null:{name:r,version:n,entry:o,priority:i,manifest_version:s.manifest_version,pm_min_version:s.pm_min_version,pm_max_version:s.pm_max_version,engines:s.engines,trusted:s.trusted,provenance:s.provenance,sandbox_profile:s.sandbox_profile,permissions:s.permissions,activation:s.activation,contributions:s.contributions,capabilities:s.capabilities,legacy_capability_aliases:s.legacy_capability_aliases.length>0?s.legacy_capability_aliases:void 0}}function OI(e,t,r){return r.has(e)?!1:t.size===0?!0:t.has(e)}async function CI(e,t){let[r,n]=await Promise.all([xr.realpath(e),xr.realpath(t)]);return Jl(r,n)}function Eg(e,t=process.cwd()){return{global:Rr.join(Rt(t),"extensions"),project:Rr.join(e,"extensions")}}async function II(e){try{return(await xr.readdir(e,{withFileTypes:!0})).filter(r=>r.isDirectory()).map(r=>r.name).sort((r,n)=>r.localeCompare(n))}catch{return[]}}function RI(e){let t={layer:e.layer,directory:e.directory,manifest_path:e.manifest_path,name:e.manifest.name,version:e.manifest.version,entry:e.manifest.entry,priority:e.manifest.priority,entry_path:e.entry_path,manifest_version:e.manifest.manifest_version,pm_min_version:e.manifest.pm_min_version,pm_max_version:e.manifest.pm_max_version,engines:e.manifest.engines,trusted:e.manifest.trusted,provenance:e.manifest.provenance,sandbox_profile:e.manifest.sandbox_profile,permissions:e.manifest.permissions,capabilities:[...e.manifest.capabilities],activation:e.manifest.activation?{commands:[...e.manifest.activation.commands]}:void 0,contributions:e.manifest.contributions??e.contributions};return e.source_package&&(t.source_package=e.source_package),e.source_aliases&&(t.source_aliases=[...e.source_aliases]),t}function pg(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function xI(e){let t=new Map;try{let r=JSON.parse(await xr.readFile(Rr.join(e,".managed-extensions.json"),"utf8")),o=Ar(r)?.entries;if(!Array.isArray(o))return t;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=pg(s.source?.package),c=[s.source?.input,s.source?.name,a].map(u=>pg(u)).filter(u=>u!==void 0),l=jl(s.contributions),d={aliases:[...new Set(c)],...a?{package_name:a}:{},...l?{contributions:l}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&t.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&t.set(`name:${s.name.trim()}`,d)}}catch{return t}return t}function mg(e){return[...e].sort((t,r)=>{if(t.manifest.priority!==r.manifest.priority)return t.manifest.priority-r.manifest.priority;let n=t.manifest.name.localeCompare(r.manifest.name);return n!==0?n:t.directory.localeCompare(r.directory)})}function NI(e,t){let r=[...mg(e),...mg(t)],n=[];for(let o of r){let i=n.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&n.splice(i,1),n.push(o)}return n}async function _g(e,t,r,n,o){let i=[],s=[],a=[],c=await II(t),l=await xI(t);for(let d of c){let u=await MI(e,t,d,r,n,l,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function DI(){return{diagnostics:[],warnings:[],candidates:[]}}function gg(e,t,r,n){return{diagnostic:{layer:e,directory:t,manifest_path:r,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[n],candidate:null}}function PI(e,t,r,n,o,i,s){let a=v_(e,t,r);Array.isArray(t.legacy_capability_aliases)&&t.legacy_capability_aliases.length>0&&a.push(w_(e,t.name,t.legacy_capability_aliases));for(let c of y_(t.capabilities))a.push(b_(e,t.name,c));return n?o||a.push(`extension_entry_missing:${e}:${t.name}`):a.push(`extension_entry_outside_extension:${e}:${t.name}`),i.warning&&a.push(i.warning),s.warning&&a.push(s.warning),a}async function MI(e,t,r,n,o,i,s){let a=Rr.join(t,r),c=Rr.join(a,"manifest.json");if(!await re(c))return gg(e,r,c,`extension_manifest_missing:${e}:${r}`);let l,d;try{let P=JSON.parse(await xr.readFile(c,"utf8"));d=Ar(P),l=SI(P)}catch{d=null,l=null}if(!l||!d)return gg(e,r,c,`extension_manifest_invalid:${e}:${r}`);let u=Rr.resolve(a,l.entry),f=Jl(a,u),p=f?await re(u):!1,m=f&&p?await CI(a,u):f,h=OI(l.name,n,o),b=await FI(e,l),w=await $I(e,l,s),E=PI(e,l,d,m,p,b,w),O=m&&p&&b.allowed&&w.allowed,B=i.get(`directory:${r}`)??i.get(`name:${l.name}`);return{diagnostic:{layer:e,directory:r,manifest_path:c,name:l.name,version:l.version,entry:l.entry,priority:l.priority,entry_path:u,enabled:h,status:O?"ok":"warn"},warnings:E,candidate:lg({layer:e,directory:r,manifestPath:c,entryPath:u,manifest:l,sourceIdentity:B,extensionReady:O,enabledForLoad:h})}}async function Tg(e){let t=Eg(e.pmRoot,e.cwd??process.cwd()),r=Io(e.settings.extensions.enabled),n=Io(e.settings.extensions.disabled),o=X_(e.settings),i=J_(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:t,configured_enabled:r,configured_disabled:n,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(r),a=new Set(n),c=e.ignoreGlobalExtensions===!0?DI():await _g("global",t.global,s,a,o.pmMaxVersionExceededMode.global),l=await _g("project",t.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=NI(c.candidates,l.candidates),f=[];for(let p of u){let m={layer:p.layer,name:p.manifest.name,trusted:p.manifest.trusted===!0,provenanceVerified:p.manifest.provenance?.verified===!0,sandboxProfile:p.manifest.sandbox_profile,permissions:p.manifest.permissions&&typeof p.manifest.permissions=="object"?{fs_read:p.manifest.permissions.fs_read,fs_write:p.manifest.permissions.fs_write,network:p.manifest.permissions.network,env_read:p.manifest.permissions.env_read,env_write:p.manifest.permissions.env_write,process_spawn:p.manifest.permissions.process_spawn}:void 0},h=eg(o,m);if(h.warning&&d.push(h.warning),!!h.allowed){for(let b of p.manifest.capabilities){let w=tg(o,m,b);w.warning&&d.push(w.warning)}f.push(RI(p))}}return{disabled_by_flag:!1,roots:t,configured_enabled:r,configured_disabled:n,discovered:[...c.diagnostics,...l.diagnostics],effective:f,warnings:[...new Set([...c.warnings,...l.warnings,...d])],policy:i}}function xs(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function LI(){try{let e=It(import.meta.url,["../../.."]),t=await xr.readFile(Rr.join(e,"package.json"),"utf8"),r=JSON.parse(t);return typeof r.version=="string"&&r.version.trim().length>0?r.version.trim():null}catch{return null}}function kg(){return dg??=LI(),dg}function Ag(e,t,r){let n=r.current??"unknown";if(r.kind==="pm_min_version")switch(r.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${t.name}:required=${r.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${t.name}:required=${r.required}:current=${n}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${t.name}:required=${r.required}:current=${n}`;default:return}switch(r.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${t.name}:allowed=${r.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${t.name}:allowed=${r.required}:current=${n}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${t.name}:allowed=${r.required}:current=${n}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${t.name}:allowed=${r.required}:current=${n}`;default:return}}async function FI(e,t){if(t.pm_min_version===void 0)return{allowed:!0};let r=G_(t.pm_min_version,await kg()),n=Ag(e,t,r);return n?{allowed:r.allowed,warning:n}:{allowed:r.allowed}}async function $I(e,t,r){if(t.pm_max_version===void 0)return{allowed:!0};let n=B_(t.pm_max_version,await kg(),r),o=Ag(e,t,n);return o?{allowed:n.allowed,warning:o}:{allowed:n.allowed}}async function yg(e){try{let t=await xr.stat(e);return`${Math.trunc(t.mtimeMs)}-${t.size}`}catch{return"missing"}}async function jI(e,t){let r=e.entry_path;t.module_graph_snapshot_root&&(r=await D_(t.module_graph_snapshot_root,e));let n=new URL(mI(r).href);if(!(t.cache_bust===!0||typeof t.reload_token=="string"))return n.href;let[i,s]=await Promise.all([yg(e.entry_path),yg(e.manifest_path)]),a=t.reload_token??yI();return n.searchParams.set("pm_ext_reload",a),n.searchParams.set("pm_ext_entry",i),n.searchParams.set("pm_ext_manifest",s),n.href}async function UI(e){let t=await Tg(e),r=[],n=[],o=[...t.warnings];if(t.disabled_by_flag)return{...t,warnings:o,loaded:r,failed:n};let i=typeof e.extensionFilter=="function"?t.effective.filter(e.extensionFilter):t.effective;for(let s of i)try{let c=await import(await jI(s,e));r.push({...s,module:c})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),n.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:xs(a)})}return{...t,warnings:o,loaded:r,failed:n}}var hg=5e3,zI=2147483647;function qI(e){let r={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let n=e.deactivate;r.deactivate=n.bind(e)}return r}function Sg(e){let t=jm(e);return t?qI(t):null}async function CW(e,t,r={}){let n=HI(r?.deactivate_timeout_ms),o=new Set((t?.failed??[]).map(d=>`${d.layer}:${d.name}`)),i=[];for(let d of e.loaded){if(o.has(`${d.layer}:${d.name}`))continue;let u=Sg(d.module);!u||typeof u.deactivate!="function"||i.push({extension:d,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:d,deactivate:u})=>{try{return await GI(u,n),{ok:!0}}catch(f){return{ok:!1,layer:d.layer,name:d.name,error:xs(f)}}})),a=[],c=[],l=0;for(let d of s){if(d.ok){l+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),c.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:l,warnings:a,failed:c}}function HI(e){return typeof e!="number"||e<0?hg:e===0||e===1/0?0:Number.isFinite(e)?Math.min(zI,Math.max(1,Math.floor(e))):hg}async function GI(e,t){if(t===0){await e();return}let r;try{let n=Promise.resolve().then(()=>e());n.catch(()=>{}),await Promise.race([n,new Promise((o,i)=>{r=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${t}ms`))},t),r.unref?.()})])}finally{clearTimeout(r)}}var BI=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function cd(e,t){return Rs(e,t).map(r=>(r.repeatable===!0&&(r.list=!0),r))}function VI(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function bg(e,t){if(t===void 0)return e.replace(/\s+/g,"-");if(typeof t!="string"||t.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let r=VI(t);if(r.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return r}function wg(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let t=[];for(let[n,o]of e.entries()){let i=pe(`registerCommand definition.arguments[${n}]`,o),s=Ie(`registerCommand definition.arguments[${n}].name`,i.name);if(we(`registerCommand definition.arguments[${n}].required`,i.required),we(`registerCommand definition.arguments[${n}].variadic`,i.variadic),oe(`registerCommand definition.arguments[${n}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${n}].name must not contain spaces`);let a={name:s};i.required===!0&&(a.required=!0),i.variadic===!0&&(a.variadic=!0),typeof i.description=="string"&&(a.description=i.description.trim()),t.push(a)}let r=t.map((n,o)=>n.variadic?o:-1).filter(n=>n>=0);if(r.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(r.length===1&&r[0]!==t.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return t}function ld(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[t,r]of e.entries()){let n=pe(`registerFlags flags[${t}]`,r),o=Object.keys(n).filter(c=>!BI.has(c)).sort((c,l)=>c.localeCompare(l));if(o.length>0)throw new TypeError(`registerFlags flags[${t}] contains unknown field(s): ${o.join(", ")}`);let i=n.long,s=n.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${t}] requires at least one of long or short`);oe(`registerFlags flags[${t}].long`,i),oe(`registerFlags flags[${t}].short`,s);let a=z_(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${t}] ${q_(a.token,a.failure)}`);if(oe(`registerFlags flags[${t}].value_name`,n.value_name),oe(`registerFlags flags[${t}].description`,n.description),we(`registerFlags flags[${t}].required`,n.required),we(`registerFlags flags[${t}].enabled`,n.enabled),we(`registerFlags flags[${t}].visible`,n.visible),we(`registerFlags flags[${t}].list`,n.list),we(`registerFlags flags[${t}].repeatable`,n.repeatable),n.list!==void 0&&n.repeatable!==void 0&&n.list!==n.repeatable)throw new TypeError(`registerFlags flags[${t}].list and repeatable must match when both are provided`);if($_(`registerFlags flags[${t}].default`,n.default),Array.isArray(n.default)&&n.list!==!0&&n.repeatable!==!0)throw new TypeError(`registerFlags flags[${t}].default cannot be an array unless list is true.`);WI(`registerFlags flags[${t}]`,n)}}function WI(e,t){let r=(typeof t.value_type=="string"?t.value_type:void 0)??(typeof t.type=="string"?t.type:void 0);if(r===void 0)return;let n=yl(r);if(n===null)throw new TypeError(`${e} value_type "${r}" is not a known flag value type (expected one of: string, number, boolean).`);if(t.default===void 0)return;let o=t.list===!0||t.repeatable===!0?hl(t.default):[t.default];for(let[i,s]of o.entries())if(!Wm(s,n)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${n}.`)}}function YI(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[t,r]of e.entries()){let n=pe(`registerItemFields fields[${t}]`,r);Ie(`registerItemFields fields[${t}].name`,n.name);let o=Ie(`registerItemFields fields[${t}].type`,n.type);if(Cs(o)===null){let i=N_(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${t}].type "${o}" is not a known field type (expected one of: ${Os.join(", ")}).${s}`)}we(`registerItemFields fields[${t}].optional`,n.optional)}}function KI(e,t){if(t===void 0)return;let r=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(t))throw new TypeError(`${r} must be an array when provided`);for(let[n,o]of t.entries()){let i=`${r}[${n}]`,s=pe(i,o);Ie(`${i}.command`,s.command),Ie(`${i}.option`,s.option),we(`${i}.enabled`,s.enabled),we(`${i}.required`,s.required),we(`${i}.visible`,s.visible)}}function XI(e,t){if(t===void 0)return;let r=`registerItemTypes types[${e}].options`;if(!Array.isArray(t))throw new TypeError(`${r} must be an array when provided`);for(let[n,o]of t.entries()){let i=`${r}[${n}]`,s=pe(i,o);Ie(`${i}.key`,s.key),Or(`${i}.values`,s.values),we(`${i}.required`,s.required),Or(`${i}.aliases`,s.aliases)}}function JI(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[t,r]of e.entries()){let n=`registerItemTypes types[${t}]`,o=pe(n,r);Ie(`${n}.name`,o.name),oe(`${n}.folder`,o.folder),Or(`${n}.aliases`,o.aliases),Or(`${n}.required_create_fields`,o.required_create_fields),Or(`${n}.required_create_repeatables`,o.required_create_repeatables),KI(t,o.command_option_policies),XI(t,o.options)}}function ZI(e){let t=pe("registerMigration definition",e);if(t.id!==void 0&&typeof t.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(t.description!==void 0&&typeof t.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(t.status!==void 0&&typeof t.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(we("registerMigration definition.mandatory",t.mandatory),t.run!==void 0&&typeof t.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var Og=["types","statuses","fields","workflows","config","templates","packages"],QI={types:(e,t)=>{if(t.name!==void 0&&typeof t.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,t)=>{if(typeof t.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(t.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[r,n]of t.allowed_transitions.entries())if(!Array.isArray(n))throw new TypeError(`${e}.allowed_transitions[${r}] must be a [from, to] array`)},templates:(e,t)=>{if(typeof t.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof t.options!="object"||t.options===null||Array.isArray(t.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,t)=>{if(typeof t.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function e0(e){let t=pe("registerProfile profile",e);if(Ie("registerProfile profile.name",t.name),Ie("registerProfile profile.title",t.title),t.summary!==void 0&&typeof t.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let r of Og){let n=t[r];if(n!==void 0){if(!Array.isArray(n))throw new TypeError(`registerProfile profile.${r} must be an array when provided`);for(let[o,i]of n.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${r}[${o}] must be an object`);QI[r]?.(`registerProfile profile.${r}[${o}]`,i)}}}}function t0(e){e.summary===void 0&&(e.summary="");for(let t of Og)e[t]===void 0&&(e[t]=[]);return e}function r0(e){if(!Array.isArray(e.capabilities))return null;let t=new Set;for(let r of e.capabilities){let n=r.trim().toLowerCase();Kt(n)&&t.add(n)}return t}function Q(e,t,r){let n=r0(e);if(n!==null&&!n.has(t))throw xt(`${r} requires capability '${t}' in extension manifest capabilities`,{method:r,registration_index:-1,capability:t,missing_capability:t,expected_schema:`"capabilities": [..., "${t}"]`,received:e.capabilities,hint:`Add "${t}" to ${e.name} manifest capabilities, or remove the ${r} registration call.`})}function n0(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(t=>mt.includes(t))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function o0(e){return{layer:e.layer,name:e.name,trusted:e.trusted===!0,provenanceVerified:e.provenance?.verified===!0,sandboxProfile:e.sandbox_profile,permissions:e.permissions&&typeof e.permissions=="object"?{fs_read:e.permissions.fs_read,fs_write:e.permissions.fs_write,network:e.permissions.network,env_read:e.permissions.env_read,env_write:e.permissions.env_write,process_spawn:e.permissions.process_spawn}:void 0}}var dd=class{extension;hooks;#e;#r;#o;#n;#s;#a;#i;#c;#t;#l;#d;#u;constructor(t,r,n,o,i,s,a,c,l,d,u){this.#e=t,this.extension=n0(t),this.#r=o0(t),this.#o=r,this.#n=n,this.#s=o,this.#a=i,this.#i=s,this.#c=a,this.#t=c,this.#l=l,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.registerAssuranceMeasurementProvider=this.registerAssuranceMeasurementProvider.bind(this),this.hooks={beforeCommand:f=>this.registerBeforeCommand(f),beforeMutation:f=>this.registerBeforeMutation(f),afterCommand:f=>this.registerAfterCommand(f),onWrite:f=>this.registerOnWrite(f),onRead:f=>this.registerOnRead(f),onIndex:f=>this.registerOnIndex(f)}}allowRegistration(t,r,n,o){let i=rg(this.#u,this.#r,t,r,n,o);return i.warning&&this.#l.push(i.warning),i.allowed}registerCommandTrace(t,r,n,o,i){return{method:"registerCommand",registration_index:t==="override"?this.#n.overrides.length:this.#n.handlers.length,command:r,expected_schema:n,received:Lo(o),hint:i}}registerCommandOverride(t,r){let n=J(t);if(n.length===0)throw xt("registerCommand requires a non-empty command name",this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',t,"Provide a non-empty command path as the first argument."));if(typeof r!="function"){let o=this.registerCommandTrace("override",n,'registerCommand("<command>", (context) => unknown)',r,"Provide a function as the second registerCommand argument.");throw xt(`registerCommand requires an override function when command name is provided (command="${n}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:n})&&this.#n.overrides.push({layer:this.#e.layer,name:this.#e.name,command:n,run:r})}resolveCommandDefinitionRunHandler(t,r){let n=typeof t.run=="function"?t.run:void 0,o=typeof t.handler=="function"?t.handler:void 0;return!n&&o&&this.#l.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${r}`),n??o}registerCommandDefinition(t){if(typeof t!="object"||t===null)throw xt("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof t.name!="string")throw xt("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",t,"Set command definition.name to a non-empty string command path."));let r=J(t.name);if(r.length===0)throw xt("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",t.name,"{ name: string; run: (context) => unknown; }",t,"Ensure command definition.name contains a non-empty command path."));let n=this.resolveCommandDefinitionRunHandler(t,r);if(typeof n!="function"){let o=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; }",n,"Define command definition.run as a function.");throw xt(`registerCommand requires a command definition run handler (command="${r}", registration_index=${o.registration_index})`,o)}try{j_(t);let o=bg(r,t.action);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:r,action:o}))return;let i=t.description?.trim(),s=t.intent?.trim(),a=Do("registerCommand definition.examples",t.examples),c=Do("registerCommand definition.failure_hints",t.failure_hints),l=wg(t.arguments);t.flags!==void 0&&(Q(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(ld(t.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cd("registerCommand definition.flags",t.flags)})));let d={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:o,examples:a,failure_hints:c,arguments:l,tier:t.tier??"standard",family:t.family??"extensions"};i&&(d.description=i),s&&(d.intent=s),this.#t.commands.push(d)}catch(o){let i=xs(o),s=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",t,i),a=xt(`registerCommand definition metadata invalid (command="${r}", registration_index=${s.registration_index}): ${i}`,s);this.#l.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${r}`),this.#d.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#n.handlers.push({layer:this.#e.layer,name:this.#e.name,command:r,run:n})}registerCommand(t,r){if(Q(this.#e,"commands","registerCommand"),typeof t=="string"){this.registerCommandOverride(t,r);return}this.registerCommandDefinition(t)}registerParser(t,r){if(Q(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let n=J(Ie("registerParser command",t));jo("registerParser override",r),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:n,run:r})}registerPreflight(t){if(Q(this.#e,"preflight","registerPreflight"),!this.allowRegistration("preflight.override","registerPreflight","preflight"))return;let r=M_(t);this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,...r})}registerService(t,r,n={}){Q(this.#e,"services","registerService");let o=String(t).trim().toLowerCase();if(!og(o))throw new TypeError(`registerService service must be one of: ${mn.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:o})&&(jo("registerService override",r),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:o,run:r,...F_(n)?{passThrough:!0}:{}}))}registerRenderer(t,r,n={}){if(Q(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof r!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(t).trim().toLowerCase();if(!ng(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(t)}`);if(n.resultDiscriminator!==void 0&&typeof n.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((n.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return J(s)}))];this.#c.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:r,commands:i,...n.resultDiscriminator?{resultDiscriminator:n.resultDiscriminator}:{}})}registerFlags(t,r){if(Q(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let n=J(Ie("registerFlags targetCommand",t));ld(r);let o=cd("registerFlags flags",r);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:n,flags:o})}registerItemFields(t){if(Q(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;YI(t);let r=Rs("registerItemFields fields",t);if(r.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#t.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:r})}registerItemTypes(t){if(Q(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;JI(t);let r=Rs("registerItemTypes types",t);if(r.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#t.item_types.push({layer:this.#e.layer,name:this.#e.name,types:r})}registerRelationshipKinds(t){if(Q(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(t))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(t.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let r=Nl();for(let o of this.#t.relationship_kinds)for(let i of o.definitions)r.register(i);let n=t.map(o=>(r.register(o),r.require(o.kind)));this.#t.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:n})}registerMigration(t){if(Q(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;ZI(t);let r=$o("registerMigration definition",t);this.#t.migrations.push(Uo({layer:this.#e.layer,name:this.#e.name,definition:Sn("registerMigration definition",t)},r))}registerProfile(t){if(Q(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let r=Fo(t);e0(r),this.#t.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:t0(r)})}registerImportExportCommandFlags(t,r,n){n.flags!==void 0&&(Q(this.#e,"schema",`${t} options.flags`),this.allowRegistration("schema.flags",`${t} options.flags`,"schema")&&(ld(n.flags),this.#t.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:cd(`${t} options.flags`,n.flags)})))}applyImportExportCommandMetadata(t,r,n){if(n!==void 0&&(typeof n!="object"||n===null||Array.isArray(n)))throw new TypeError(`${t} options must be an object when provided`);let o=`${t==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...n,description:n?.description??o,arguments:n?.arguments??i},a=U_(t,s,n?.description!==void 0);oe(`${t} options.action`,s.action),oe(`${t} options.description`,s.description),oe(`${t} options.intent`,s.intent);let c=bg(r,s.action),l=Do(`${t} options.examples`,s.examples),d=Do(`${t} options.failure_hints`,s.failure_hints),u=wg(s.arguments);this.registerImportExportCommandFlags(t,r,s);let f={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:c,examples:l,failure_hints:d,arguments:u},p=s.description?.trim();p&&(f.description=p);let m=s.intent?.trim();return m&&(f.intent=m),this.#t.commands.push(f),a}registerImporter(t,r,n){if(Q(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=od(Ie("registerImporter name",t));jo("registerImporter importer",r);let i=id(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,n),this.#t.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#n.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r(Ql(s,o,"import"))})}registerExporter(t,r,n){if(Q(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=od(Ie("registerExporter name",t));jo("registerExporter exporter",r);let i=id(o,"export"),s=this.applyImportExportCommandMetadata("registerExporter",i,n);this.#t.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o,...s===void 0?{}:{output:s}}),this.#n.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async a=>{let c=await r(Ql(a,o,"export"));return s?.receipt==="suppress"&&!cs(c)?Km(c):c}})}registerSearchProvider(t){if(Q(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let r=$o("registerSearchProvider provider",t);this.#t.search_providers.push(Uo({layer:this.#e.layer,name:this.#e.name,definition:Sn("registerSearchProvider provider",t)},r))}registerVectorStoreAdapter(t){if(Q(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let r=$o("registerVectorStoreAdapter adapter",t);this.#t.vector_store_adapters.push(Uo({layer:this.#e.layer,name:this.#e.name,definition:Sn("registerVectorStoreAdapter adapter",t)},r))}registerAssuranceMeasurementProvider(t){if(Q(this.#e,"services","registerAssuranceMeasurementProvider"),!this.allowRegistration("services.assuranceprovider","registerAssuranceMeasurementProvider","services"))return;if(cg(t),t.network&&this.#e.permissions?.network!==!0)throw new TypeError("registerAssuranceMeasurementProvider network provider requires permissions.network=true");let r=$o("registerAssuranceMeasurementProvider provider",t);this.#t.assurance_providers.push(Uo({layer:this.#e.layer,name:this.#e.name,network_permission:this.#e.permissions?.network===!0,definition:Sn("registerAssuranceMeasurementProvider provider",t)},r))}registerBeforeCommand(t){Q(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(Cr("beforeCommand",t),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerBeforeMutation(t){Q(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(Cr("beforeMutation",t),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerAfterCommand(t){Q(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(Cr("afterCommand",t),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnWrite(t){Q(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(Cr("onWrite",t),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnRead(t){Q(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(Cr("onRead",t),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:t}))}registerOnIndex(t){Q(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(Cr("onIndex",t),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:t}))}};function i0(e,t,r,n,o,i,s,a,c,l,d){return new dd(e,t,r,n,o,i,s,a,c,l,d)}function s0(e){let t=e.commands.length,r=e.flags.reduce((s,a)=>s+a.flags.length,0),n=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:t,flags:r,item_fields:n,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length,...(e.assurance_providers?.length??0)>0?{assurance_providers:e.assurance_providers.length}:{}}}function a0(e){let t=[],r=(i,s)=>{let a=new Map;for(let c of i){let l=a.get(c.command)??[];l.push(c),a.set(c.command,l)}for(let c of[...a.keys()].sort((l,d)=>l.localeCompare(d))){let l=a.get(c);if(l.length<=1)continue;let d=l[l.length-1];for(let u of l.slice(0,-1))t.push(`${s}:${c}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};r(e.handlers,"extension_command_handler_collision"),r(e.overrides,"extension_command_override_collision");let n=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>n.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(c=>c.command===i),a=e.overrides.filter(c=>c.command===i);for(let c of a)for(let l of s)t.push(`extension_command_override_handler_overlap:${i}:${c.layer}:${c.name}:${l.layer}:${l.name}`)}return t}function c0(e){let t=new Map;for(let n of e.overrides){let o=t.get(n.format)??[];o.push(n),t.set(n.format,o)}let r=[];for(let n of[...t.keys()].sort((o,i)=>o.localeCompare(i))){let o=t.get(n);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))i.commands?.length&&s.commands?.length&&!s.commands.some(a=>i.commands?.includes(a))||r.push(`extension_renderer_collision:${n}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return r}function l0(e){let t=[],r=new Map;for(let n of e.overrides){let o=r.get(n.command)??[];o.push(n),r.set(n.command,o)}for(let n of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(n);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_parser_override_collision:${n}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}var d0=new Set(["output_format"]);function u0(e){let t=[],r=new Map;for(let n of e.overrides){let o=r.get(n.service)??[];o.push(n),r.set(n.service,o)}for(let n of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(n);if(o.length<=1||d0.has(n))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))t.push(`extension_service_override_collision:${n}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return t}async function f0(e){let t=Z_(e.policy??gI),r=Ro(),n=Pl(),o=Ml(),i=Ll(),s=Fl(),a=$l(),c=Ts(),l=[],d=[];for(let p of e.loaded){let m=Sg(p.module);if(!m)continue;let h=l.length,b=P_({hooks:r,commands:n,parsers:o,preflight:i,services:s,renderers:a,registrations:c});try{await m.activate(i0(p,r,n,o,i,s,a,c,d,l,t)),l.length>h&&(b(),d.push(`extension_activation_rolled_back:${p.layer}:${p.name}`))}catch(w){b(),d.push(`extension_activate_failed:${p.layer}:${p.name}`);let E=sg(w);l.push({layer:p.layer,name:p.name,entry_path:p.entry_path,error:xs(w),trace:E})}}let u=[...a0(n),...l0(o),...L_(i),...u0(s),...c0(a)],f=[...new Set([...d,...u])];return{hooks:r,commands:n,parsers:o,preflight:i,services:s,renderers:a,registrations:c,failed:l,warnings:f,hook_counts:{before_command:r.beforeCommand.length,before_mutation:r.beforeMutation.length,after_command:r.afterCommand.length,on_write:r.onWrite.length,on_read:r.onRead.length,on_index:r.onIndex.length},command_override_count:n.overrides.length,command_handler_count:n.handlers.length,parser_override_count:o.overrides.length,preflight_override_count:i.overrides.length,service_override_count:s.overrides.length,renderer_override_count:a.overrides.length,registration_counts:s0(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]="b2cf7f56-432d-5c74-ba0f-248c42a97255")}catch{}})();function p0(e){return{...e,hooks:Ro(),profileEnabled:!!e.globalOptions.profile,migrationBlockers:[]}}(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]="07566a0b-2917-5ed8-828a-d811ae48dfaf")}catch{}})();function DW(){let e=Promise.resolve(),t=new Set;return{async read(r){let n=e,o,i=new Promise(s=>{o=s});t.add(i),await n;try{return await r()}finally{t.delete(i),o()}},write(r){let o=Promise.all([e,...t]).then(()=>r());return e=o.then(()=>{},()=>{}),o}}}function Cg(){let e=Promise.resolve(),t=0,r=[],n=()=>{if(t!==0)return;let o=r.splice(0);for(let i of o)i()};return{enqueue(o){t++;let i=e.then(()=>o());return e=i.then(()=>{},()=>{}).finally(()=>{t--,n()}),i},idle(){return t===0?Promise.resolve():new Promise(o=>r.push(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]="71c44385-0182-50f8-8e05-3aeebfe57ad9")}catch{}})();var m0={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService","registerAssuranceMeasurementProvider"]},Ig=":";function Rg(e,t){return`${e}${Ig}${ud(t)}`}function _0(e){return e.slice(e.indexOf(Ig)+1)}function ud(e){return e.trim().toLowerCase()}function g0(e){if(!Array.isArray(e))return[];let t=new Set;for(let r of e){let n=g_(r);n!==null&&t.add(n)}return[...t].sort((r,n)=>r.localeCompare(n))}function xg(e){let t=new Map,r=(d,u)=>{for(let f of d){let p=Rg(f.layer,f.name),m=t.get(p);m===void 0&&(m=new Set,t.set(p,m)),m.add(u)}},{registrations:n,commands:o,parsers:i,preflight:s,services:a,renderers:c,hooks:l}=e;return r(n.commands,"commands"),r(o.overrides,"commands"),r(o.handlers,"commands"),r(n.flags,"schema"),r(n.item_fields,"schema"),r(n.item_types,"schema"),r(n.relationship_kinds??[],"schema"),r(n.migrations,"schema"),r(n.profiles,"schema"),r(n.importers,"importers"),r(n.exporters,"importers"),r(n.search_providers,"search"),r(n.vector_store_adapters,"search"),r(i.overrides,"parser"),r(s.overrides,"preflight"),r(a.overrides,"services"),r(n.assurance_providers??[],"services"),r(c.overrides,"renderers"),r(l.beforeCommand,"hooks"),r(l.beforeMutation,"hooks"),r(l.afterCommand,"hooks"),r(l.onWrite,"hooks"),r(l.onRead,"hooks"),r(l.onIndex,"hooks"),t}function y0(e,t={}){let r=xg(e),n=new Set;t.extensionName!==void 0&&n.add(ud(t.extensionName));for(let i of t.extensionNames??[])n.add(ud(i));let o=new Set;for(let[i,s]of r)if(!(n.size>0&&!n.has(_0(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function h0(e,t){let r=xg(t),n=[];for(let o of e){let i=g0(o.capabilities);if(i.length===0)continue;let s=r.get(Rg(o.layer,o.name))??new Set,a=[...s].sort((l,d)=>l.localeCompare(d)),c=i.filter(l=>!s.has(l));n.push({layer:o.layer,name:o.name,declared:i,used:a,unused:c})}return n}import{existsSync as b0}from"node:fs";import{AsyncLocalStorage as w0}from"node:async_hooks";import Nt 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]="40b169fc-3c5f-5b2a-8fed-a9388b07d9f7")}catch{}})();var Dt=null,On=null,zo=null,qo=null,Cn=null,Ho=null,Go=null,Jt=null,Ds,Ns=[],Dg=new w0;function H(){return Dg.getStore()}function Pg(e){return Dg.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var v0=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function Ng(e){let t=Nt.resolve(e);for(;;){if(b0(Nt.join(t,".git")))return t;let r=Nt.dirname(t);if(r===t)return;t=r}}function Ps(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),r=Ng(t)??Nt.resolve(t),n=Ng(r);if(!e)return{source_workspace_root:r,...n?{repo_root:n}:{}};let o=Nt.relative(r,Nt.resolve(e)),i=o.length>0&&!o.startsWith(`..${Nt.sep}`)&&o!==".."&&!Nt.isAbsolute(o);return{source_workspace_root:r,...n?{repo_root:n}:{},...i?{pm_root_rel:o.split(Nt.sep).join("/")}:{}}}function E0(e){let t=H();if(t){t.hooks=e;return}Dt=e}function T0(e){let t=H();if(t){t.commands=e;return}On=e}function k0(e){let t=H();if(t){t.parsers=e;return}zo=e}function A0(e){let t=H();if(t){t.preflight=e;return}qo=e}function S0(e){let t=H();if(t){t.services=e;return}Cn=e}function O0(e){let t=H();if(t){t.renderers=e;return}Ho=e}function C0(e){let t=H();if(t){t.registrations=e;return}Go=e}function Zt(){let e=H();return e?e.registrations:Go}function I0(){let e=H();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=null,e.affectedItems=[];return}Dt=null,On=null,zo=null,qo=null,Cn=null,Ho=null,Go=null,Jt=null,Ds=null}function R0(e){let t=e?{...e,...Ps(e.pm_root)}:null,r=H();if(r){r.commandContext=t;return}Jt=t}function Mg(){let e=H(),t=e?e.commandContext:Jt;return t?{...t,args:[...t.args],options:t.options?{...t.options}:{},global:t.global?{...t.global}:void 0}:null}function Lg(e){let t=H()??{commandContext:Jt,hooks:Dt,commands:On,parsers:zo,preflight:qo,services:Cn,renderers:Ho,registrations:Go};return t.commandContext?.command!==e||[t.hooks,t.preflight,t.services,t.renderers].some(o=>Object.values(o??{}).some(i=>i.length>0))||[t.commands,t.parsers].some(o=>Object.values(o??{}).some(i=>i.some(s=>s.command===e)))?!1:!Object.entries(t.registrations??{}).some(([o,i])=>["migrations","search_providers","vector_store_adapters","assurance_providers"].includes(o)&&i.length>0)}function Qt(e){let t=H();if(t){t.commandResult=e;return}Ds=e}function x0(){let e=H();return e?e.commandResult:Ds}function Ms(e){if(!e)return;let t=H();t?t.affectedItems.push(e):Ns.push(e)}function Bo(e,t){if(!e||!e.id)return{};let r={id:e.id,type:e.type,status:e.status};if(!Array.isArray(t))return r;let n=e;for(let o of t){if(typeof o!="string")continue;let i=o.startsWith("unset:")?o.slice(6):o;i==="id"||i==="type"||i==="status"||v0.has(i)||Object.hasOwn(n,i)&&n[i]!==void 0&&(r[i]=n[i])}return r}function N0(){let e=H(),t=e?.affectedItems??Ns;if(t.length===0)return;let r=t;return e?e.affectedItems=[]:Ns=[],r}function D0(){let e=H();if(e){e.hooks=null,e.commands=null,e.parsers=null,e.preflight=null,e.services=null,e.renderers=null,e.registrations=null,e.commandContext=null,e.commandResult=void 0,e.affectedItems=[];return}Dt=null,On=null,zo=null,qo=null,Cn=null,Ho=null,Go=null,Jt=null,Ds=void 0,Ns=[]}async function ke(e){let t=H(),r=t?t.hooks:Dt;return r?zl(r,e):[]}async function Ls(e){let t=H(),r=t?t.hooks:Dt;r&&await Ul(r,e)}async function it(e){let t=H(),r=t?t.hooks:Dt;return r?ql(r,e):[]}function fd(){let e=H();return((e?e.hooks:Dt)?.onRead?.length??0)>0}async function P0(e){let t=H(),r=t?t.hooks:Dt;return r?Hl(r,e):[]}function Fg(e){let t=H(),r=t?t.commands:On,n=t?t.commandContext:Jt;return!r||!n?{overridden:!1,result:e,warnings:[]}:Kl(r,{command:n.command,args:[...n.args],options:n.options?{...n.options}:{},global:n.global?{...n.global}:void 0,pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel,result:e})}async function M0(e){let t=H(),r=t?t.commands:On;return r?Gl(r,{...e,...Ps(e.pm_root)}):{handled:!1,result:null,warnings:[]}}async function L0(e){let t=H(),r=t?t.parsers:zo;return r?Bl(r,{...e,...Ps(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},warnings:[]}}async function F0(e){let t=H(),r=t?t.preflight:qo;return r?Vl(r,{...e,...Ps(e.pm_root)}):{overridden:!1,context:{command:e.command,args:[...e.args],options:{...e.options},global:{...e.global},pm_root:e.pm_root},decision:{...e.decision},warnings:[]}}function $g(e,t){let r=H(),n=r?r.renderers:Ho,o=r?r.commandContext:Jt;return n?Xl(n,{format:e,command:o?.command,args:o?[...o.args]:[],options:o?.options?{...o.options}:{},global:o?.global?{...o.global}:void 0,pm_root:o?.pm_root,source_workspace_root:o?.source_workspace_root,repo_root:o?.repo_root,pm_root_rel:o?.pm_root_rel,result:t}):{overridden:!1,rendered:null,warnings:[]}}function jg(e,t){let r=H(),n=r?r.commandContext:Jt;return{service:e,command:n?.command,args:n?[...n.args]:[],options:n?.options?{...n.options}:{},global:n?.global?{...n.global}:void 0,pm_root:n?.pm_root,source_workspace_root:n?.source_workspace_root,repo_root:n?.repo_root,pm_root_rel:n?.pm_root_rel,payload:t}}async function Ze(e,t){let r=H(),n=r?r.services:Cn;return n?Yl(n,jg(e,t)):{handled:!1,result:t,warnings:[]}}function pd(e,t){let r=H(),n=r?r.services:Cn;return n?Wl(n,jg(e,t)):{handled:!1,result:t,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]="84305ac5-3641-52f5-80f2-22c0f0ae70ae")}catch{}})();var Nr=new Set(Xe),Fs=Object.freeze({get size(){return Nr.size},has(e){return Nr.has(e)},entries(){return Nr.entries()},keys(){return Nr.keys()},values(){return Nr.values()},forEach(e,t){Nr.forEach(r=>e.call(t,r,r,Fs))},[Symbol.iterator](){return Nr.values()}});function Ug(e){if(typeof e!="string")return null;let t=e.trim();return t.length>0?t:null}function zg(e){return typeof e!="string"?null:Cs(e)}function $0(e){try{return structuredClone(e)}catch{return e}}function j0(e){let t=e.trim(),r=t.indexOf("=");if(r<=0)throw new g(`--field entries must use name=value syntax, received: ${e}`,_.USAGE);let n=t.slice(0,r).trim(),o=t.slice(r+1);return{key:n,value:o}}function U0(e){return`--${e.replaceAll("_","-")}`}function z0(e,t,r){try{let n=JSON.parse(e);if(r==="array"&&Array.isArray(n)||r==="object"&&typeof n=="object"&&n!==null&&!Array.isArray(n))return n}catch{}throw new g(`--field ${t}=... must be valid JSON ${r}`,_.USAGE)}function q0(e,t,r){if(t==="string")return r;if(t==="number"){let n=r.trim();if(n.length===0)throw new g(`--field ${e}=... must be a number`,_.USAGE);let o=Number(n);if(!Number.isFinite(o))throw new g(`--field ${e}=... must be a number`,_.USAGE);return o}if(t==="boolean"){let n=r.trim().toLowerCase();if(n==="true"||n==="1"||n==="yes")return!0;if(n==="false"||n==="0"||n==="no")return!1;throw new g(`--field ${e}=... must be one of true|false|1|0|yes|no`,_.USAGE)}return t==="string_array"?r.split(/[\n,|]/u).map(n=>n.trim()).filter(n=>n.length>0):z0(r,e,t)}function md(e){let t=new Map;if(!e)return t;for(let r of e.item_fields)for(let n of r.fields){let o=Ug(n.name),i=zg(n.type);if(!o||!i)continue;let s=t.get(o);if(s&&s.type!==i)throw new g(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,_.USAGE,{code:"extension_item_field_type_conflict",nextSteps:["Make every active extension declaration for this field use the same type."]});t.set(o,{name:o,type:i})}return t}function qg(e){if(Fs.has(e))throw new g(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[...Fs].sort((t,r)=>t.localeCompare(r)).join(", ")}.`,_.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function Vo(e){return[...md(e).keys()].sort((t,r)=>t.localeCompare(r))}function H0(e,t){if(!e||e.length===0)return{};let r=md(t),n={};for(let o of e){let{key:i,value:s}=j0(o),a=r.get(i);if(!a){if(Fs.has(i)){let l=U0(i);throw new g(`--field ${i} is a core item field, not an extension field`,_.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[l]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${l} <value>`,`When closing an item, pm close <id> also accepts ${l} <value>.`]})}let c=[...r.keys()].sort((l,d)=>l.localeCompare(d));throw new g(`--field ${i} is not declared by an active extension item-field registration`,_.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:c},nextSteps:c.length>0?[`Use one of the declared fields: ${c.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}qg(a.name),n[a.name]=q0(a.name,a.type,s)}return n}function G0(e,t){return t==="string"?typeof e=="string":t==="number"?typeof e=="number"&&Number.isFinite(e):t==="boolean"?typeof e=="boolean":t==="array"?Array.isArray(e):t==="string_array"?Array.isArray(e)&&e.every(r=>typeof r=="string"):typeof e=="object"&&e!==null&&!Array.isArray(e)}function B0(e,t){return!t||t.length===0?!0:t.some(r=>Object.is(r,e))}function V0(e,t,r={}){if(t){md(t);for(let n of t.item_fields)for(let o of n.fields){let i=Ug(o.name);if(!i)continue;qg(i),!(i in e)&&!r.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=$0(o.default));let s=e[i];if(s===void 0)continue;let a=zg(o.type);if(a&&!G0(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let c=Array.isArray(o.values)?o.values:void 0;if(!B0(s,c))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(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]="fdacd8ac-787a-5639-84d5-a32b6ce79d41")}catch{}})();function er(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function XW(e,t){let r=er(t);return!e||!r?null:[...e.assurance_providers??[]].reverse().find(n=>er(n.definition.id)===r)??null}function W0(e,t){let r=er(t);return!e||!r?null:[...e.search_providers].reverse().find(o=>(er(o.runtime_definition?.name)??er(o.definition?.name))===r)??null}function Y0(e,t){let r=er(t);return!e||!r?null:[...e.vector_store_adapters].reverse().find(o=>(er(o.runtime_definition?.name)??er(o.definition?.name))===r)??null}function JW(e){return e.runtime_definition??e.definition}(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]="74ce3524-6c25-5646-b1a0-5ca8a3759034")}catch{}})();var Pt="-",Gg=new Set(["actual_result","body","cmd","command","customer_impact","description","environment","expected_result","impact","location","message","note","outcome","repro_steps","resolution","text","title","unblock_note","value","why_now"]);function t3(e,t){if(e.startsWith("```")||e.includes(`
5
- `))return!0;let r=t.map(n=>n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|");return new RegExp(`^(?:[-*+]\\s+)?(?:${r})\\s*[:=]`,"i").test(e)}function Bg(e){let t=e.trim();if(t==="")return[];let n=(Q0(t)??t.split(",")).map(o=>o.trim()).filter(Boolean).map(o=>o.toLowerCase());return Array.from(new Set(n)).sort((o,i)=>o.localeCompare(i))}function Vg(e){if(!Array.isArray(e)||e.length===0)return[];let t=[];for(let r of e)if(typeof r=="string")for(let n of Bg(r))t.push(n);return Array.from(new Set(t)).sort((r,n)=>r.localeCompare(n))}function Wg(e){return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()).filter(Boolean):[]}function K0(e){return typeof e!="string"?[]:e.split(";").map(t=>t.trim()).filter(Boolean)}function X0(e,t,r){let n=e.map(s=>s.trim()).filter(Boolean);for(let s of t??[]){let a=s.trim();if(a.includes(";"))throw new g('Acceptance criteria added with --add-ac cannot contain ";" because semicolons delimit stored criteria',_.USAGE,{code:"acceptance_criteria_semicolon_forbidden",required:"Pass one semicolon-free criterion per --add-ac value",why:"A semicolon inside one criterion would be re-read as multiple criteria",nextSteps:["Split the text into repeated --add-ac values, or replace the semicolon with punctuation that is not the storage delimiter"]});a.length>0&&!n.includes(a)&&n.push(a)}let o=[],i=n;for(let s of r??[]){let a=s.trim();if(a.length!==0){if(!i.includes(a)){o.push(a);continue}i=i.filter(c=>c!==a)}}return{criteria:i,unmatchedRemovals:o}}function J0(e,t){let r=Wg(e);if(!t||t.length===0)return Array.from(new Set(r)).sort((o,i)=>o.localeCompare(i));let n=new Set(r);for(let o of Vg(t))n.add(o);return Array.from(n).sort((o,i)=>o.localeCompare(i))}function Z0(e,t){let r=Array.from(new Set(Wg(e))).sort((o,i)=>o.localeCompare(i));if(!t||t.length===0)return r;let n=new Set(Vg(t));return n.size===0?r:r.filter(o=>!n.has(o))}function Q0(e){if(!e.startsWith("["))return null;let t;try{t=JSON.parse(e)}catch{return null}return t.map(n=>typeof n=="string"||typeof n=="number"||typeof n=="boolean"?String(n):"").filter(n=>n.length>0)}function _d(e){return e.replace(/\r\n/g,`
6
- `)}function Yg(e){let t=_d(e).trim();if(!t.startsWith("```"))return e;let r=t.split(`
7
- `);return r.length<2||r.at(-1)?.trim()!=="```"?e:r.slice(1,-1).join(`
8
- `)}function eR(e){let t=[],r="",n=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(i==="\\"&&e[o+1]===","){r+=",",o+=1;continue}if(i==="\\"&&e[o+1]!==void 0){r+=`${i}${e[o+1]}`,o+=1;continue}if(i==='"'){n=!n,r+=i;continue}if(i===","&&!n){t.push(r),r="";continue}r+=i}return r.trim()&&t.push(r),t}function Kg(e){let t=e.trim();if(t.startsWith('"')&&t.endsWith('"')){try{let r=JSON.parse(t);if(typeof r=="string")return r}catch{}return t.slice(1,-1).replace(/\\"/g,'"')}return e}function tR(e){let t=e.indexOf("="),r=e.indexOf(":"),n=t>=0,o=r>=0;return n&&o?Math.min(t,r):n?t:o?r:-1}function rR(e,t){if((t==="--add"||t==="--add-glob")&&(/[./\\]/.test(e)||/\.[a-z]{1,6}$/i.test(e.trim())))return"For file/doc paths use: path=<file-path>[,scope=project|global]. The scope field is optional and defaults to project (example: path=src/api.ts or path=README.md,scope=project). ";if(t!=="--event")return"";let r=e.toLowerCase(),n=r.includes("recur_")||r.includes("recurrence")?' Recurrence list values must stay in one field and use "|" delimiters (for example recur_by_weekday=mon|wed or recur_by_month_day=1|15).':"",o=r.includes("recur_byweekday")?" Use recur_by_weekday (with underscores) for weekday recurrence filters.":"";return`${n}${o}`}function Hg(e,t){let r=e.replaceAll(/\s+/g," ").trim(),n=r.length>160?`${r.slice(0,157)}...`:r,o=rR(e,t);return`Invalid ${t} value "${n}". Expected key=value entries separated by commas. `+o+`Also accepts markdown-style key/value lines (for example "- path: README.md"). Use ${t} ${Pt} to read piped stdin input.`}function nR(e){let t=Yg(e).trim();if(t.length===0||!t.includes(`
9
- `)&&!t.startsWith("-")&&!t.startsWith("*")&&!t.startsWith("+"))return null;let r={},n,o=_d(t).split(`
10
- `).map(i=>i.trim()).filter(i=>i.length>0);for(let i of o){let s=i.match(/^(?:[-*+]\s+)?([a-zA-Z0-9_.-]+)\s*(=|:)\s*(.*)$/);if(s){let a=s[1].trim();r[a]=Kg(s[3].trim()),n=a;continue}if(n&&Gg.has(n.toLowerCase())){r[n]=`${r[n]}
11
- ${i}`;continue}return null}return r}function oR(e,t){let r=Yg(e).trim();if(!r)throw new g(`${t} cannot be empty`,_.USAGE);let n=nR(r);if(n)return n;let o={},i,s=eR(r);for(let a of s){let c=tR(a);if(c>=0){let l=a.slice(0,c).trim();if(!l)throw new g(Hg(e,t),_.USAGE);let d=Kg(a.slice(c+1).trim());o[l]=d,i=l;continue}if(i&&Gg.has(i.toLowerCase())){o[i]=`${o[i]},${a}`;continue}throw new g(Hg(e,t),_.USAGE)}return o}var iR=/^[A-Za-z]:[\\/]/,sR=/^(?:[-*+]\s+)?[A-Za-z_][A-Za-z0-9_.-]*\s*=/;function aR(e){let t=e.trim();return iR.test(t)?!1:sR.test(t)}function r3(e,t,r,n){if(!(n||!e.includes(",")))throw new g(`${t} received an ambiguous comma-bearing bare ${r}. Repeat ${t} for multiple values, or quote or escape literal commas in a structured key=<value> entry.`,_.USAGE,{code:"bare_comma_entry_ambiguous",required:`Use one ${t} per bare ${r}, or quote or escape literal commas in a structured key=<value> entry.`})}function cR(e,t,r){let n=new Set(r.map(i=>i.toLowerCase())),o=Object.keys(e).filter(i=>!n.has(i.toLowerCase()));if(o.length>0)throw new g(`${t} does not recognize key${o.length>1?"s":""} ${o.map(i=>`"${i}"`).join(", ")}. Allowed keys: ${r.join(", ")}.`,_.USAGE);for(let i of Object.keys(e)){let s=i.toLowerCase();if(s!==i){if(Object.hasOwn(e,s))throw new g(`${t} provides key "${i}" more than once after case normalization.`,_.USAGE);e[s]=e[i],delete e[i]}}}async function lR(e){if(process.stdin.isTTY===!0)throw new g(`${e} value "${Pt}" requires piped stdin input. Pipe content into the command, or end manual stdin with Ctrl+D (Unix/macOS) or Ctrl+Z then Enter (Windows).`,_.USAGE);return process.stdin.setEncoding("utf8"),await new Promise((t,r)=>{let n="";process.stdin.on("data",o=>{n+=o}),process.stdin.on("end",()=>{t(_d(n))}),process.stdin.on("error",o=>{r(o)})})}var Dr=Symbol("all-mutation-stdin-fields"),st=new WeakMap;function Xg(e){return st.set(e,Dr),e}function dR(e,t){let r=st.get(e);return r===Dr||st.set(e,new Set([...r??[],...t])),e}function uR(e,t){let r=st.get(e);return r===void 0||st.set(t,r===Dr?r:new Set(r)),t}function n3(e,t){let r=st.get(e),n=st.get(t);return r===void 0||n===Dr?t:r===Dr?(st.set(t,r),t):(st.set(t,new Set([...n??[],...r])),t)}function fR(e){return st.get(e)!==Dr}function $s(e,t){let r=st.get(e);return r!==Dr&&!r?.has(t)}function pR(e){let t;for(let r of e){if(r.resolveToken===!1||r.value===void 0)continue;let o=(Array.isArray(r.value)?r.value:[r.value]).filter(i=>i.trim()===Pt).length;if(o>1)throw new g(`${r.optionName} accepts "${Pt}" stdin token at most once per command invocation`,_.USAGE);if(o!==0){if(t!==void 0&&t!==r.optionName)throw new g(`Only one option may use "${Pt}" stdin token per command invocation. Already used by ${t}.`,_.USAGE);t=r.optionName}}}async function o3(e,t,r){let n=e,o=[...t,...r];pR(o.map(([a,c])=>({value:n[a],optionName:c,resolveToken:$s(e,a)})));let i=In(),s={...n};for(let[a,c]of t)s[a]=await i.resolveValue(n[a],c,$s(e,a));for(let[a,c]of r)s[a]=await i.resolveList(n[a],c,$s(e,a));return Xg(s)}function In(){let e,t,r=async i=>{if(t&&t!==i)throw new g(`Only one option may use "${Pt}" stdin token per command invocation. Already used by ${t}.`,_.USAGE);return t=i,e||(e=lR(i)),await e};return{resolveValue:async(i,s,a=!0)=>{if(!a)return i;if(i!==void 0)return i.trim()!==Pt?i:await r(s)},resolveList:async(i,s,a=!0)=>{if(!a)return i;if(!i)return;let c=i.map((u,f)=>u.trim()===Pt?f:-1).filter(u=>u>=0);if(c.length===0)return i;if(c.length>1)throw new g(`${s} accepts "${Pt}" stdin token at most once per command invocation`,_.USAGE);let l=await r(s),d=[...i];return d[c[0]]=l,d}}}function mR(e,t){let r=Number(e);if(!Number.isFinite(r))throw new g(`Invalid ${t} value "${e}"`,_.USAGE);return r}function _R(e,t){let r=e.trim(),n=Number(r);if(r===""||!Number.isInteger(n)||n<0)throw new g(`Invalid ${t} value "${e}". Expected a non-negative integer.`,_.USAGE);return n}import{readFile as gR}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]="854a0596-b0ec-5d2e-85b1-5444d8d7b622")}catch{}})();var yR=e=>gR(e,"utf8"),hR=async e=>await In().resolveValue("-",e);function gd(e){return[...new Set(e.split(/[,\r\n]+/).map(t=>t.trim()).filter(t=>t.length>0))]}function bR(e){let t=[];for(let n of e)if(typeof n=="string")t.push(n);else if(typeof n=="number"&&Number.isFinite(n))t.push(String(n));else return"";let r=gd(t.join(`
12
- `));return r.length>0?r.join(","):""}function Jg(e){if(e===void 0)return;if(typeof e=="number")return Number.isFinite(e)?String(e):"";if(Array.isArray(e))return bR(e);if(typeof e!="string")return"";let t=gd(e);return t.length>0?t.join(","):""}async function wR(e,t="--ids",r={}){if(e===void 0)return;let n=e.trim(),o=e;try{if(n==="-")o=await(r.readStdin??hR)(t);else if(n.startsWith("@")){let s=n.slice(1).trim();if(s.length===0)throw new g(`${t} @path requires a non-empty file path.`,_.USAGE,{code:"bulk_ids_input_missing_path",required:`Pass ${t} @<path>, ${t} -, or inline IDs.`});o=await(r.readFile??yR)(s)}}catch(s){if(s instanceof g)throw s;let a=s instanceof Error?s.message:String(s);throw new g(`${t} could not read ${n==="-"?"stdin":`"${n.slice(1).trim()}"`}: ${a}`,_.NOT_FOUND,{code:"bulk_ids_input_unreadable",required:`Provide readable newline/comma-delimited IDs via ${t} -, ${t} @<path>, or inline argv text.`,nextSteps:[`Retry with inline IDs: ${t} pm-a1b2,pm-c3d4`,`Or pipe IDs: pm list --id-only | pm update-many ${t} - --dry-run`]})}let i=Jg(o);if(i!=="")return i;throw new g(`${t} requires at least one non-empty item ID.`,_.USAGE,{code:"bulk_ids_input_empty",required:"Provide one or more comma- or newline-delimited IDs through argv, stdin, or @path."})}import{createHash as vR}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1e3cba21-c5a4-541a-9841-484cfbb70f4e")}catch{}})();var f3=["sha256","sha512"],ER="sha256",Zg="sha256";function Pr(e){if(e===void 0)return ER;if(e==="sha256"||e==="sha512")return e;throw new TypeError(`unsupported_history_hash_algorithm:${String(e)}`)}function tr(e,t){return vR(Pr(t)).update(e,"utf8").digest("hex")}(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]="24b1fb96-5c1e-5669-be21-fdeef4d413a6")}catch{}})();function Qg(e){let t=[],r=e[0]?.op==="history_compact_baseline",n=r?1:void 0,o=!1;for(let[i,s]of e.entries())s.op==="delete"&&(o=!0),s.op==="create"&&(n!==void 0&&t.push({prior_genesis_index:n,repeated_create_index:i+1,sequence:o?"delete_then_create":r?"checkpoint_then_create":"multiple_creates"}),n??=i+1,o=!1);return t}import ey 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]="d66d32f8-a5f2-5068-bcd0-b93094d7c6a4")}catch{}})();var TR=2e3,js=new Map;function $e(e){if(typeof e!="string")return"";let t=js.get(e);if(t!==void 0)return t;let r=e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_");return js.size>=TR&&yn(js),js.set(e,r),r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="87798e93-c34c-5355-aa60-695fb9e3eef1")}catch{}})();var Ae=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),ny=dl,hd=ll,kR=["create","update"],AR=new Set(ls),SR=new Set(En),OR=new Set(ds),CR=new Set(us),IR=new Set(["string","number","boolean","array","object"]),RR=16;function oy(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var xR=[e=>e.type===void 0||typeof e.type=="string"&&IR.has(e.type),e=>!Object.hasOwn(e,"const")||zs(e.const),e=>e.enum===void 0||Array.isArray(e.enum)&&e.enum.every(t=>zs(t)),e=>e.min_length===void 0||Number.isInteger(e.min_length)&&e.min_length>=0,e=>e.min_items===void 0||Number.isInteger(e.min_items)&&e.min_items>=0,e=>e.format===void 0||e.format==="date-time",e=>e.required===void 0||Array.isArray(e.required)&&e.required.every(t=>typeof t=="string"&&t.length>0),e=>e.additional_properties===void 0||typeof e.additional_properties=="boolean",e=>e.properties===void 0||oy(e.properties),e=>e.one_of===void 0||Array.isArray(e.one_of)&&e.one_of.length>0];function zs(e,t=new Set){if(e===null||typeof e=="string"||typeof e=="boolean")return!0;if(typeof e=="number")return Number.isFinite(e);if(typeof e!="object"||t.has(e))return!1;t.add(e);let r=Array.isArray(e)?e.every(n=>zs(n,t)):Object.values(e).every(n=>zs(n,t));return t.delete(e),r}function Us(e,t=0,r=new Set){if(!oy(e)||t>RR||r.has(e))return;r.add(e);let n=e,o=n.type,i=n.enum,s=n.one_of,a=n.properties,c=n.items,l=n.required,d=n.min_length,u=n.min_items,f=n.format,p=n.additional_properties;if(!xR.every(E=>E(n))){r.delete(e);return}let m=a===void 0?void 0:Object.fromEntries(Object.entries(a).map(([E,O])=>[E,Us(O,t+1,r)])),h=c===void 0?void 0:Us(c,t+1,r),b=s===void 0?void 0:s.map(E=>Us(E,t+1,r));if([...Object.values(m??{}),...c===void 0?[]:[h],...b??[]].some(E=>E===void 0)){r.delete(e);return}return r.delete(e),Object.fromEntries(Object.entries({type:o,const:Object.hasOwn(n,"const")?n.const:void 0,enum:i,min_length:d,min_items:u,format:f,properties:m,required:l===void 0?void 0:[...new Set(l)],additional_properties:p,items:h,one_of:b}).filter(([,E])=>E!==void 0))}function Yo(e){let t=Array.isArray(e)?e:[];return[...new Set(t.map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0))].sort((r,n)=>r.localeCompare(n))}function je(e){if(typeof e!="string"||e.length===0)return;let t=$e(e);return t.length>0?t:void 0}function NR(e){return e.startsWith("--")?e.slice(2):e}function ty(e){return typeof e=="string"?NR(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function iy(e){return e.replaceAll("_","-")}function DR(e){let t=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[r,...n]=t;return`${r}${n.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function yd(e,t){let r=je(e.id);if(!r)return null;let n=[...new Set(Yo(e.aliases).map($e).filter(a=>a.length>0))].sort((a,c)=>a.localeCompare(c)),o=Yo(e.roles).filter(a=>AR.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:t;return{id:r,aliases:n,roles:o,description:i&&i.length>0?i:void 0,order:s}}function PR(e){return{draft_status:je(e?.draft_status),open_status:je(e?.open_status),in_progress_status:je(e?.in_progress_status),blocked_status:je(e?.blocked_status),close_status:je(e?.close_status),canceled_status:je(e?.canceled_status)}}function sy(e,t){if(!Array.isArray(t)||t.length!==2)return;let r=$e(t[0]),n=$e(t[1]);r.length===0||n.length===0||e.pairs.some(o=>o[0]===r&&o[1]===n)||e.pairs.push([r,n])}function MR(e){let t=typeof e?.type=="string"?e.type.trim():"";if(t.length===0||!Array.isArray(e?.allowed_transitions))return null;let r={type:t,pairs:[],denyAll:e.allowed_transitions.length===0};for(let n of e.allowed_transitions)sy(r,n);return{typeKey:t.toLowerCase(),record:r}}function LR(e){if(!Array.isArray(e)||e.length===0)return;let t=new Map;for(let n of e){let o=MR(n);if(o===null)continue;let i=t.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)sy(i,s);t.set(o.typeKey,i)}let r=[];for(let n of t.values())(n.pairs.length>0||n.denyAll)&&r.push({type:n.type,allowed_transitions:n.pairs});return r.sort((n,o)=>n.type.localeCompare(o.type)),r.length>0?r:void 0}function ay(e){let t=$e(e.key??"");if(!t)return null;let r=$e(e.metadata_key??e.front_matter_key??t),n=ty(e.cli_flag??iy(t));if(!n)return null;let o=Yo(e.cli_aliases).map(u=>ty(u)).filter(u=>u.length>0&&u!==n),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=SR.has(i)?i:"string",a=(()=>{let u=Yo(e.commands).filter(f=>OR.has(f));return u.length>0?u:[...kR]})(),c=e.description?.trim(),l=Yo(e.required_types),d=e.value_schema===void 0?void 0:Us(e.value_schema);return e.value_schema!==void 0&&d===void 0?null:{key:t,metadata_key:r,cli_flag:n,cli_aliases:o,description:c&&c.length>0?c:void 0,type:s,commands:a,repeatable:[e.repeatable===!0,s==="string_array"].includes(!0),required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:l,allow_unset:e.allow_unset!==!1,value_schema:d}}function FR(e){let t=new Map;for(let[n,o]of e.entries()){let i=yd(o,n);i&&t.set(i.id,i)}let r=ry([...t.values()]);return r.length>0?r:ry(hd.map((n,o)=>yd(n,o)).filter(n=>n!==null))}function ry(e){return e.sort((t,r)=>t.order===r.order?t.id.localeCompare(r.id):t.order-r.order)}function $R(e){let t=new Map;for(let r of e??[]){let n=ay(r);n&&t.set(n.key,n)}return[...t.values()].sort((r,n)=>r.key.localeCompare(n.key))}function jR(e){return{id:e.id,aliases:e.aliases.length>0?[...e.aliases]:void 0,roles:e.roles.length>0?[...e.roles]:void 0,description:e.description,order:e.order}}function UR(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==iy(e.key)?e.cli_flag:void 0,cli_aliases:e.cli_aliases.length>0?[...e.cli_aliases]:void 0,description:e.description,type:e.type,commands:[...e.commands],repeatable:e.repeatable===!0?!0:void 0,required:e.required===!0?!0:void 0,required_on_create:e.required_on_create===!0?!0:void 0,required_types:e.required_types.length>0?[...e.required_types]:void 0,allow_unset:e.allow_unset===!1?!1:void 0,value_schema:e.value_schema}}function zR(e){let t=typeof e=="string"?e.trim().toLowerCase():"allow";return CR.has(t)?t:"allow"}function gt(e){let t={...Ae,...e?.files},r=e?.statuses&&e.statuses.length>0?e.statuses:hd,n=FR(r),o=$R(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:t,statuses:n.map(jR),fields:o.map(UR),workflow:{...ny,...PR(e?.workflow)},type_workflows:LR(e?.type_workflows),unknown_field_policy:zR(e?.unknown_field_policy)}}function qR(e){return`${JSON.stringify(e,null,2)}
13
- `}function HR(){return{definitions:[]}}function GR(){return{statuses:hd}}function BR(){return{fields:[]}}function VR(){return{workflow:ny}}function WR(e,t,r){try{return JSON.parse(e)}catch{r.push(t);return}}function YR(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.definitions))return t.definitions;if(typeof t.item_types=="object"&&t.item_types!==null){let r=t.item_types;if(Array.isArray(r.definitions))return r.definitions}}function KR(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.statuses))return t.statuses;if(Array.isArray(t.definitions))return t.definitions}function XR(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.fields))return t.fields;if(Array.isArray(t.definitions))return t.definitions}function JR(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;return typeof t.workflow=="object"&&t.workflow!==null&&!Array.isArray(t.workflow)?t.workflow:typeof t.workflows=="object"&&t.workflows!==null&&!Array.isArray(t.workflows)?t.workflows:t}function ZR(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(Array.isArray(t.type_workflows))return t.type_workflows}function Re(e,t,r){let n=t?.trim()||r;return ey.isAbsolute(n)?n:ey.join(e,n)}function QR(e,t){return Re(e,t.files.types,Ae.types)}async function cy(e,t){let r=gt(t),n=[{path:Re(e,r.files.types,Ae.types),seed:HR()},{path:Re(e,r.files.statuses,Ae.statuses),seed:GR()},{path:Re(e,r.files.fields,Ae.fields),seed:BR()},{path:Re(e,r.files.workflows,Ae.workflows),seed:VR()}],o=[];for(let i of n)await re(i.path)||(await F(i.path,qR(i.seed)),o.push(i.path));return{created_paths:o}}async function ly(e,t){let r=gt(t),n=[],o=Re(e,r.files.types,Ae.types),i=Re(e,r.files.statuses,Ae.statuses),s=Re(e,r.files.fields,Ae.fields),a=Re(e,r.files.workflows,Ae.workflows),c,l,d,u,f,p=async(O,B)=>{let P=await V(O);if(P!==null)return WR(P,B,n)},m=await p(o,"runtime_schema_types_invalid_json");m!==void 0&&(c=YR(m),c===void 0&&n.push("runtime_schema_types_invalid_shape"));let h=await p(i,"runtime_schema_statuses_invalid_json");h!==void 0&&(l=KR(h),l===void 0&&n.push("runtime_schema_statuses_invalid_shape"));let b=await p(s,"runtime_schema_fields_invalid_json");b!==void 0&&(d=XR(b),d===void 0&&n.push("runtime_schema_fields_invalid_shape"));let w=await p(a,"runtime_schema_workflows_invalid_json");return w!==void 0&&(u=JR(w),u===void 0&&n.push("runtime_schema_workflows_invalid_shape"),f=ZR(w)),{schema:gt({...r,statuses:[...r.statuses,...l??[]],fields:[...r.fields,...d??[]],workflow:{...r.workflow,...u},type_workflows:[...r.type_workflows??[],...f??[]]}),type_definitions_from_file:c,warnings:n,created_paths:[]}}function Wo(e,t,r,n=!1){let i=r.map(a=>je(a)).filter(a=>typeof a=="string").find(a=>e.some(c=>c.id===a));if(n&&i!==void 0)return i;let s=e.find(a=>a.roles.includes(t));return s!==void 0?s.id:i??e[0]?.id}function ex(e){let t=new Map,r=new Map;for(let n of e){r.set(n.id,n),t.set(n.id,n.id),t.set(n.id.replaceAll("_","-"),n.id),t.set(n.id.replaceAll("_"," "),n.id);for(let o of n.aliases)t.set(o,n.id),t.set(o.replaceAll("_","-"),n.id),t.set(o.replaceAll("_"," "),n.id)}return{aliasToId:t,byId:r}}function tx(e){let t={activeStatuses:new Set,blockedStatuses:new Set,draftStatuses:new Set,terminalCanceledStatuses:new Set,terminalDoneStatuses:new Set,terminalStatuses:new Set};for(let r of e){let n=new Set(r.roles);(n.has("terminal")||n.has("terminal_done")||n.has("terminal_canceled"))&&t.terminalStatuses.add(r.id),n.has("terminal_done")&&t.terminalDoneStatuses.add(r.id),n.has("terminal_canceled")&&t.terminalCanceledStatuses.add(r.id),n.has("active")&&t.activeStatuses.add(r.id),n.has("blocked")&&t.blockedStatuses.add(r.id),n.has("draft")&&t.draftStatuses.add(r.id)}return t}function bd(e){let t=gt(e),r=t.statuses.map((w,E)=>yd(w,E)).filter(w=>w!==null),{aliasToId:n,byId:o}=ex(r),{activeStatuses:i,blockedStatuses:s,draftStatuses:a,terminalCanceledStatuses:c,terminalDoneStatuses:l,terminalStatuses:d}=tx(r),u=t.workflow,f=je(u.open_status)??Wo(r,"default_open",["open","in_progress",vn[0]]),p=je(u.in_progress_status)??Wo(r,"active",["in_progress","in-progress",f],!0),m=je(u.blocked_status)??Wo(r,"blocked",["blocked"]),h=je(u.close_status)??Wo(r,"default_close",["closed","done","complete"]),b=je(u.canceled_status)??Wo(r,"default_cancel",["canceled","cancelled"]);return{definitions:r,by_id:o,alias_to_id:n,terminal_statuses:d,terminal_done_statuses:l,terminal_canceled_statuses:c,active_statuses:i,blocked_statuses:s,draft_statuses:a,open_status:f,in_progress_status:p,blocked_status:m,close_status:h,canceled_status:b}}function qs(e,t){let r=$e(e);if(r)return t.alias_to_id.get(r)}function wd(e){let t=gt(e),r=new Map,n=t.fields.map(c=>ay(c)).filter(c=>c!==null);for(let c of n)r.set(c.key,c);let o=[...r.values()].sort((c,l)=>c.key.localeCompare(l.key)),i=new Map,s=new Map,a=new Map;for(let c of o){i.set(c.key,c),s.set(c.cli_flag,c);for(let l of c.cli_aliases)s.set(l,c);for(let l of c.commands){let d=a.get(l)??[];d.push(c),a.set(l,d)}}for(let[c,l]of a.entries())l.sort((d,u)=>d.key.localeCompare(u.key)),a.set(c,l);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function dy(e){return DR(e.key)}function rx(e,t){let r=qs(e,t);return r?t.terminal_statuses.has(r):!1}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="42eb2987-269d-5b18-b0fe-5b4334fdb6a0")}catch{}})();var nx=16;function vd(e){let t=e.trim().replaceAll(/[^A-Za-z0-9]+/g," ").split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(t.length===0)return e;let[r,...n]=t;return`${r}${n.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function ox(e){return[...new Set([dy(e),vd(e.key),vd(e.cli_flag),...e.cli_aliases.map(t=>vd(t))])]}function Hs(e,t){for(let r of ox(t)){if(!Object.hasOwn(e,r))continue;let n=e[r];if(n!==void 0)return n}}function py(e){return Array.isArray(e)?e.flatMap(t=>py(t)).map(t=>t.trim()).filter(t=>t.length>0):typeof e=="string"?e.split(/[,\n|]/).map(t=>t.trim()).filter(t=>t.length>0):e==null?[]:[String(e).trim()].filter(t=>t.length>0)}function uy(e,t){if(typeof e=="boolean")return e;if(typeof e=="number"){if(e===1)return!0;if(e===0)return!1}if(typeof e=="string"){let r=e.trim().toLowerCase();if(r==="true"||r==="1"||r==="yes")return!0;if(r==="false"||r==="0"||r==="no")return!1}throw new g(`${t} must be one of true|false|1|0|yes|no`,_.USAGE)}function fy(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let r=typeof e=="string"?e.trim():String(e),n=Number(r);if(!Number.isFinite(n))throw new g(`${t} must be a number`,_.USAGE);return n}function ix(e,t,r){let n=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(r==="array"&&Array.isArray(n)||r==="object"&&typeof n=="object"&&n!==null&&!Array.isArray(n))return n;throw new g(`${t} must be valid JSON ${r}`,_.USAGE)}function sx(e,t){return t===void 0?!0:t==="array"?Array.isArray(e):t==="object"?typeof e=="object"&&e!==null&&!Array.isArray(e):typeof e===t}function ax(e,t,r){if(t.const!==void 0&&L(e)!==L(t.const))return`${r} must equal ${L(t.const)}`;if(t.enum!==void 0&&!t.enum.some(n=>L(n)===L(e)))return`${r} must be one of ${t.enum.map(n=>L(n)).join("|")}`;if(!sx(e,t.type))return`${r} must match configured type ${String(t.type)}`;if(typeof e=="string"){if(t.min_length!==void 0&&e.length<t.min_length)return`${r} must contain at least ${t.min_length} characters`;if(t.format==="date-time"&&!_l(e))return`${r} must be an RFC 3339 date-time`}}function cx(e,t,r,n){if(Array.isArray(e)){if(t.min_items!==void 0&&e.length<t.min_items)return`${r} must contain at least ${t.min_items} items`;if(t.items)for(let[o,i]of e.entries()){let s=Gs(i,t.items,`${r}[${o}]`,n+1);if(s)return s}}}function lx(e,t,r,n){if(typeof e!="object"||e===null||Array.isArray(e))return;let o=e;for(let i of t.required??[])if(!Object.hasOwn(o,i))return`${r}.${i} is required`;for(let[i,s]of Object.entries(o)){let a=t.properties?.[i];if(!a){if(t.additional_properties===!1)return`${r}.${i} is not allowed`;continue}let c=Gs(s,a,`${r}.${i}`,n+1);if(c)return c}}function Gs(e,t,r,n=0){if(n>nx)return`${r} value schema exceeds maximum depth`;let o=ax(e,t,r);if(o)return o;let i=cx(e,t,r,n);if(i)return i;let s=lx(e,t,r,n);if(s)return s;if(!t.one_of)return;let a=0;for(let c of t.one_of)if(Gs(e,c,r,n+1)===void 0&&(a+=1,a>1))break;return a===1?void 0:`${r} must match exactly one configured schema variant`}function Mr(e,t,r){if(!e.value_schema||t===void 0)return t;let n=Gs(t,e.value_schema,r);if(n)throw new g(n,_.USAGE);return t}function Lr(e,t,r){let n=r??`--${e.cli_flag}`;if(e.type==="array"||e.type==="object"){let i=Array.isArray(t)?t[t.length-1]:t;return i===void 0?void 0:Mr(e,ix(i,n,e.type),n)}if(e.repeatable||e.type==="string_array"){let i=py(t);return e.type==="number"?Mr(e,i.map(s=>fy(s,n)),n):e.type==="boolean"?Mr(e,i.map(s=>uy(s,n)),n):Mr(e,i,n)}let o=Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return e.type==="number"?Mr(e,fy(o,n),n):e.type==="boolean"?Mr(e,uy(o,n),n):Mr(e,typeof o=="string"?o:String(o),n)}function dx(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function ux(e,t,r){let n={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=Hs(e,i);if(s===void 0){dx(i,r)&&o.push(`--${i.cli_flag}`);continue}n[i.metadata_key]=Lr(i,s)}return{values:n,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function fx(e,t,r=["update"]){let n={},o=(r??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=Hs(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),n[s.metadata_key]=Lr(s,a)))}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]="8ee74259-29b1-5795-9253-9fa0869e4585")}catch{}})();var Rn=1,my=1;function I3(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=Rn?t:Rn}function _y(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=Rn))return e}function px(e,t=my){return e<t?"outdated":e>t?"ahead":"current"}function R3(e,t=my){let r=[],n=[];for(let o of e){let i=px(o.version,t);i==="outdated"?r.push(o.ref):i==="ahead"&&n.push(o.ref)}return{outdated:r.sort((o,i)=>o.localeCompare(i)),ahead:n.sort((o,i)=>o.localeCompare(i))}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6bb283b8-5c81-562a-926e-e48b83e6ebc8")}catch{}})();var mx={"in-progress":"in_progress",cancelled:"canceled"};function Fr(e,t){if(t){let o=qs(e,t);if(o)return o}if(typeof e!="string")return;let r=e.trim().toLowerCase();if(!r)return;let n=mx[r]??r;if(vn.includes(n))return n}function gy(e,t){return Fr(e,t)??e}function _x(e,t){return t.terminal_statuses.has(gy(e,t))}import{encode as bx}from"@toon-format/toon";import{isDeepStrictEqual as yy}from"node:util";import{decode as gx}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e48e0cc7-7577-5702-ac17-a4529697444e")}catch{}})();function Ed(e){return{value:gx(e),usedScalarBracketEscape:!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]="45fa31ba-dea9-56db-b971-84c11e8a1c88")}catch{}})();var yx=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function hx(e){if(e.length===0)return[];let t=e.split(/\r?\n/),r=[];for(let n=0;n<t.length;n+=1){let o=t[n]??"",i=o.match(yx);if(!i)continue;let s=i[1];r.push({line:n+1,marker:s,text:o})}return r}function Bs(e){return hx(e)[0]}(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]="48df511d-df81-56f7-bb1d-f10230b43cfa")}catch{}})();var Sd=new Set(["schema","tracker","auto"]),wy=new Set(["source","isolated","snapshot"]),wx=new Set(["legacy","local_mutation","local_source_ref","acknowledged","invalid_provenance","foreign_source_ref"]),vx=new Set(["passed","failed","stopped","canceled"]),Ex=new Set(_s);function Dn(e){return e.replaceAll("\\","/")}function vy(e){for(let t of e)if(t!==0)return t;return 0}function Ws(e){for(let[t,r]of Object.entries(e))r===void 0&&delete e[t]}var Ey=["id","title","description","created_at","updated_at"],Tx=new Set(Xe);function Ty(e){if(e?.schema)return{statusRegistry:bd(e.schema),fieldRegistry:wd(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function kx(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(r=>r.toLowerCase()).includes(t.trim().toLowerCase()):!1}function rr(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new g(`Invalid item metadata: ${e}`,_.GENERIC_FAILURE,{code:"item_document_invalid",reason:e.includes("required")?"missing_required_field":"schema_validation_error",...t?{field:t}:{},required:"Provide an item document whose metadata satisfies the active runtime schema.",why:e})}function Jo(e,t){throw new g(t,_.GENERIC_FAILURE,{code:"item_document_invalid",reason:"syntax_error",format:e,required:`Provide a syntactically valid ${e==="toon"?"TOON":"JSON Markdown"} item document.`,why:"The document could not be decoded far enough to validate item metadata."})}function ky(e){let t=new Set(Tx);for(let r of e.fieldRegistry?.definitions??[])t.add(r.metadata_key);for(let r of e.extensionFieldNames)t.add(r);return t}function I(e,t){e||rr(t)}function Zo(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&rr(t),e}function Td(e,t){let r=e[t];I(typeof r=="string",`${t} must be a string`),I(Ot(r),`${t} must be a valid ISO timestamp`)}function hy(e,t,r){let n=e[t];n!==void 0&&I(typeof n=="number"&&Number.isInteger(n)&&n>=1,`${r} must be an integer >= 1`)}function Od(e,t,r){let n=e[t];n!==void 0&&(I(typeof n=="string",`${r} must be a string`),I(Ot(n),`${r} must be a valid ISO timestamp`))}function Ax(e){if(e!==void 0){I(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){I(typeof t=="string","event.recurrence.by_weekday entries must be strings");let r=t.trim().toLowerCase();I(vo.includes(r),`event.recurrence.by_weekday entries must be one of: ${vo.join(", ")}`)}}}function Sx(e){if(e!==void 0){I(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)I(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function Ox(e){if(e!==void 0){I(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)I(typeof t=="string","event.recurrence.exdates entries must be strings"),I(Ot(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function Cx(e){let t=Zo(e,"event.recurrence must be an object");I(typeof t.freq=="string","event.recurrence.freq must be a string");let r=t.freq.trim().toLowerCase();I(ms.includes(r),`event.recurrence.freq must be one of: ${ms.join(", ")}`),hy(t,"interval","event.recurrence.interval"),hy(t,"count","event.recurrence.count"),Od(t,"until","event.recurrence.until"),Ax(t.by_weekday),Sx(t.by_month_day),Ox(t.exdates)}function Ix(e){for(let n of Ey)I(typeof e[n]=="string",`${n} is required and must be a string`);let t=e.type;I(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let r=e.pm_format_version;return r!==void 0&&I(typeof r=="number"&&Number.isInteger(r)&&r>=Rn,`pm_format_version must be an integer >= ${Rn}`),t}function Rx(e,t){let r=e.status;I(typeof r=="string"&&r.trim().length>0,"status must be a non-empty string");let n=t?.statusRegistry,o=Fr(r,n),i=n?n.definitions.map(s=>s.id):[...vn];I(o!==void 0,`status must be one of: ${i.join(", ")}`)}function xx(e){let t=e.priority;I(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let r=e.tags;I(Array.isArray(r),"tags must be an array");for(let n of r)I(typeof n=="string","tags entries must be strings")}function Nx(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){I(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let r=t.trim().toLowerCase(),n=r==="med"||ps.includes(r);I(n,`confidence string value must be one of: ${[...ps,"med"].join(", ")}`);return}I(!1,"confidence must be a number or string")}}function Dx(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&rr("severity must be a string");let r=t.trim().toLowerCase(),n=r==="med"||fs.includes(r);I(n,`severity value must be one of: ${[...fs,"med"].join(", ")}`)}function Px(e){e.regression!==void 0&&typeof e.regression!="boolean"&&rr("regression must be a boolean")}function Mx(e){let t=e.reminders;if(t!==void 0){I(Array.isArray(t),"reminders must be an array");for(let r of t){let n=Zo(r,"reminders entries must be objects");I(typeof n.at=="string","reminder.at must be a string"),I(Ot(n.at),"reminder.at must be a valid ISO timestamp"),I(typeof n.text=="string","reminder.text must be a string"),I(n.text.trim().length>0,"reminder.text must not be empty")}}}function Lx(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(I(typeof e[t]=="string",`event.${t} must be a string`),I(e[t].trim().length>0,`event.${t} must not be empty`))}function Fx(e){e.recurrence!==void 0&&(Cx(e.recurrence),e.recurrence.until!==void 0&&I(be(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function $x(e){let t=Zo(e,"events entries must be objects");I(typeof t.start_at=="string","event.start_at must be a string"),I(Ot(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(I(typeof t.end_at=="string","event.end_at must be a string"),I(Ot(t.end_at),"event.end_at must be a valid ISO timestamp"),I(be(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Lx(t),t.all_day!==void 0&&I(typeof t.all_day=="boolean","event.all_day must be a boolean"),Fx(t)}function jx(e){let t=e.events;if(t!==void 0){I(Array.isArray(t),"events must be an array");for(let r of t)$x(r)}}function Ux(e){for(let t of["source_type","source_owner","design","external_ref"]){let r=e[t];r!==void 0&&I(typeof r=="string",`${t} must be a string`)}}function zx(e){let t=e.type_options;if(t===void 0)return;let r=Zo(t,"type_options must be an object");for(let[n,o]of Object.entries(r))I(n.trim().length>0,"type_options keys must be non-empty"),I(typeof o=="string","type_options values must be strings"),I(o.trim().length>0,"type_options values must be non-empty strings")}function qx(e,t,r){if(r?.fieldRegistry)for(let n of r.fieldRegistry.definitions){let o=e[n.metadata_key];if(o===void 0){kx(n,t)&&rr(`missing required schema field: ${n.metadata_key}`);continue}try{e[n.metadata_key]=Lr(n,o,`metadata field "${n.metadata_key}"`)}catch(i){rr(String(i?.message).replace(/^Invalid\s+/u,""))}}}function Hx(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let r=ky(t),n=Object.keys(e).filter(o=>!r.has(o)).sort((o,i)=>o.localeCompare(i));n.length!==0&&(t.unknownFieldPolicy==="reject"?rr(`unknown schema fields are not allowed: ${n.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${n.join(",")}`))}function Cd(e,t){let r=Zo(e,"item metadata must be an object"),n=Ix(r);Rx(r,t),xx(r),Nx(r),Dx(r),Px(r),Td(r,"created_at"),Td(r,"updated_at"),r.deadline!==void 0&&Td(r,"deadline"),Mx(r),jx(r),Od(r,"closed_at","closed_at"),Od(r,"completed_at","completed_at"),Ux(r),zx(r),qx(r,n,t),Hx(r,t)}function Gx(e){if(!(!e||e.length===0))return[...e].map(t=>({id:t.id.trim(),kind:t.kind,created_at:t.created_at,author:t.author?.trim()||void 0,source_kind:t.source_kind?.trim()||void 0,author_source:t.author_source})).sort((t,r)=>{let n=be(t.created_at,r.created_at);if(n!==0)return n;let o=t.id.localeCompare(r.id);if(o!==0)return o;let i=t.kind.localeCompare(r.kind);return i!==0?i:(t.source_kind??"").localeCompare(r.source_kind??"")})}function kd(e){if(!(!e||e.length===0))return[...e].sort((t,r)=>{let n=be(t.created_at,r.created_at);if(n!==0)return n;let o=t.text.localeCompare(r.text);return o!==0?o:t.author.localeCompare(r.author)})}function Bx(e){if(!e||e.length===0)return;let t=[...e].map(r=>({at:r.at,text:r.text.trim()})).filter(r=>r.text.length>0).sort((r,n)=>{let o=be(r.at,n.at);return o!==0?o:r.text.localeCompare(n.text)});return t.length===0?void 0:t}function Vx(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!ms.includes(t))return;let r=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>vo.includes(s)))).sort((s,a)=>vl(s)-vl(a)),n=Array.from(new Set((e.by_month_day??[]).filter(s=>Number.isInteger(s)&&s>=1&&s<=31).map(s=>s))).sort((s,a)=>s-a),o=Array.from(new Set((e.exdates??[]).map(s=>s.trim()).filter(s=>Ot(s)))).sort((s,a)=>be(s,a)),i={freq:t,interval:e.interval!==void 0&&e.interval>1?e.interval:void 0,count:e.count,until:e.until?.trim()||void 0,by_weekday:r.length>0?r:void 0,by_month_day:n.length>0?n:void 0,exdates:o.length>0?o:void 0};for(let[s,a]of Object.entries(i))a===void 0&&delete i[s];return i}function Wx(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map(Yx).sort(Kx)}function Yx(e){let t={start_at:e.start_at,end_at:e.end_at||void 0,title:e.title?.trim()||void 0,description:e.description?.trim()||void 0,location:e.location?.trim()||void 0,all_day:e.all_day,timezone:e.timezone?.trim()||void 0,recurrence:Vx(e.recurrence)};return Ws(t),t}function Kx(e,t){return vy([be(e.start_at,t.start_at),(e.end_at??"").localeCompare(t.end_at??""),(e.title??"").localeCompare(t.title??""),+!!e.all_day-+!!t.all_day,(e.timezone??"").localeCompare(t.timezone??""),(e.location??"").localeCompare(t.location??""),(e.description??"").localeCompare(t.description??""),JSON.stringify(e.recurrence??{}).localeCompare(JSON.stringify(t.recurrence??{}))])}function Xx(e){if(!(!e||e.length===0))return e.map(t=>({path:Dn(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function Jx(e){if(!e||e.length===0)return;let t=e.map(tN).filter(r=>r.run_id.length>0&&r.started_at.length>0&&r.finished_at.length>0&&r.recorded_at.length>0).sort((r,n)=>vy([be(r.recorded_at,n.recorded_at),r.run_id.localeCompare(n.run_id),r.kind.localeCompare(n.kind)]));return t.length>0?t:void 0}function xn(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function Zx(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function Ad(e){return typeof e=="string"?e:""}function Qx(e){if(!Array.isArray(e))return;let t=e.filter(n=>n!==null&&typeof n=="object"&&typeof n.name=="string"&&n.name.trim().length>0&&typeof n.value=="number"&&Number.isFinite(n.value)&&typeof n.recorded_at=="string"&&n.recorded_at.trim().length>0).map(n=>({name:n.name.trim(),value:n.value,unit:typeof n.unit=="string"&&n.unit.trim()||void 0,threshold:typeof n.threshold=="number"&&Number.isFinite(n.threshold)?n.threshold:void 0,recorded_at:n.recorded_at.trim()})),r=[...new Map(t.map(n=>[n.name,n])).values()].sort((n,o)=>n.name.localeCompare(o.name)).slice(0,32);return r.length>0?r:void 0}function Vs(e,t){return typeof e=="string"&&t.has(e)?e:void 0}function eN(e){if(!Array.isArray(e))return;let t=e.filter(r=>r&&typeof r.command=="string"&&r.command.trim().length>0).slice(0,32).map(r=>({command:r.command.trim(),requested_pm_context_mode:Vs(r.requested_pm_context_mode,Sd),pm_context_mode:Vs(r.pm_context_mode,Sd),workspace_context_mode:Vs(r.workspace_context_mode,wy),trust_reason:Vs(r.trust_reason,wx)}));return t.length>0?t:void 0}function tN(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",r=e.kind==="test"||e.kind==="test-all"?e.kind:"test",n=vx.has(e.status)?e.status:"failed",o={run_id:t,kind:r,status:n,started_at:Ad(e.started_at),finished_at:Ad(e.finished_at),recorded_at:Ad(e.recorded_at),attempt:Zx(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:xn(e.passed)??0,failed:xn(e.failed)??0,skipped:xn(e.skipped)??0,items:xn(e.items),linked_tests:xn(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:Qx(e.measurements),executions:eN(e.executions)};return Ws(o),o}function rN(e){if(!(!Array.isArray(e)||e.length===0))return e.map(aN)}function Ko(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(r=>typeof r=="string").map(r=>r.trim()).filter(r=>r.length>0))].sort((r,n)=>r.localeCompare(n));return t.length>0?t:void 0}function Rd(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function xd(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function by(e){if(!Rd(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),String(n).trim()]).filter(([r,n])=>r.length>0&&!xd(r)&&n.length>0).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function nN(e){if(!Rd(e))return;let t=Object.entries(e).map(([r,n])=>[r.trim(),Number(n)]).filter(([r,n])=>r.length>0&&!xd(r)&&Number.isFinite(n)).sort(([r],[n])=>r.localeCompare(n));return t.length>0?Object.fromEntries(t):void 0}function oN(e){let t=e?.trim().toLowerCase();if(!(!t||!Sd.has(t)))return t}function iN(e){let t=e?.trim().toLowerCase();if(!(!t||!wy.has(t)))return t}function sN(e,t){if(t===!0)return{provenance_invalid:!0};if(e===void 0)return{};if(!Rd(e))return{provenance_invalid:!0};let r=S(e.author),n=S(e.created_at),o=e.source_kind;return!r||!n||!Ot(n)||o!=="local_mutation"&&o!=="merge_union"?{provenance_invalid:!0}:{provenance:{author:r,created_at:n,source_kind:o,source_ref:S(e.source_ref)}}}function aN(e){let t={command:e.command?.trim()||void 0,path:e.path?Dn(e.path):void 0,scope:e.scope,timeout_seconds:typeof e.timeout_seconds=="number"&&Number.isFinite(e.timeout_seconds)&&e.timeout_seconds>0?e.timeout_seconds:void 0,pm_context_mode:oN(e.pm_context_mode),workspace_context_mode:iN(e.workspace_context_mode),...sN(e.provenance,e.provenance_invalid),env_set:by(e.env_set),env_clear:Ko(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:Ko(e.assert_stdout_contains),assert_stdout_regex:Ko(e.assert_stdout_regex),assert_stderr_contains:Ko(e.assert_stderr_contains),assert_stderr_regex:Ko(e.assert_stderr_regex),assert_stdout_min_lines:xn(e.assert_stdout_min_lines),assert_json_field_equals:by(e.assert_json_field_equals),assert_json_field_gte:nN(e.assert_json_field_gte),note:e.note?.trim()||void 0};return Ws(t),t}function cN(e){if(!(!e||e.length===0))return[...e].map(t=>({path:Dn(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,r)=>{let n=t.scope.localeCompare(r.scope);if(n!==0)return n;let o=t.path.localeCompare(r.path);return o!==0?o:(t.note??"").localeCompare(r.note??"")})}function S(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function lN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=S(n.id),i=S(n.kind);if(!o||!i)continue;let s={id:o,kind:i},a=S(n.note);a&&(s.note=a),n.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function dN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=S(n.path);if(!o)continue;let i={path:Dn(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=S(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function uN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=S(n.command),i=S(n.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=Dn(i));let a=S(n.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function fN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=S(n.path);if(!o)continue;let i={path:Dn(o)};(n.scope==="project"||n.scope==="global")&&(i.scope=n.scope);let s=S(n.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function pN(e){if(e===null||typeof e!="object")return;let t=e,r=S(t.id),n=S(t.title),o=S(t.status),i=o&&Ex.has(o)?o:void 0,s=ss(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",c=typeof t.updated_at=="string"?t.updated_at:"";if(!r||!n||!i||!Number.isFinite(s)||!a||!c)return;let l={id:r,order:s,title:n,status:i,created_at:a,updated_at:c};return mN(l,t),l}function mN(e,t){let r=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of r){let a=S(t[s]);a&&(e[i]=a)}let n=typeof t.completed_at=="string"?t.completed_at:void 0;n&&n.length>0&&(e.completed_at=n);let o=[["linked_items","linked_items",lN],["files","files",dN],["tests","tests",uN],["docs","docs",fN]];for(let[i,s,a]of o){let c=a(t[s]);c&&(e[i]=c)}}function _N(e){if(!Array.isArray(e))return;let t=e.flatMap(r=>{let n=pN(r);return n?[n]:[]});return t.sort((r,n)=>r.order-n.order),t.length>0?t:void 0}function gN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=S(n.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},c=S(n.rationale);c&&(a.rationale=c);let l=S(n.evidence);l&&(a.evidence=l);let d=S(n.step_id);d&&(a.step_id=d),t.push(a)}return t.length>0?t:void 0}function yN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=typeof n.ts=="string"?n.ts:"",i=typeof n.author=="string"?n.author:"",s=S(n.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},c=S(n.step_id);c&&(a.step_id=c),t.push(a)}return t.length>0?t:void 0}function hN(e){if(!Array.isArray(e))return;let t=[];for(let r of e){if(r===null||typeof r!="object")continue;let n=r,o=S(n.text);if(!o)continue;let i={text:o},s=S(n.command);s&&(i.command=s);let a=S(n.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function bN(e){if(!e)return;let t=Object.entries(e).map(([r,n])=>[r.trim(),n.trim()]).filter(([r,n])=>r.length>0&&n.length>0).sort((r,n)=>r[0].localeCompare(n[0]));if(t.length!==0)return Object.fromEntries(t)}function Nn(e){let t=0;for(;t<e.length&&e[t]===`
14
- `;)t+=1;return e.slice(t).trimEnd()}function wN(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(ps.includes(t))return t}function vN(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(fs.includes(t))return t}function Xo(e){return e||void 0}function EN(e,t){let r=e,n=t;for(let[o,i]of Object.entries(n))xd(o)||Object.prototype.hasOwnProperty.call(r,o)||i===void 0||(r[o]=i)}function TN(e,t){if(!t?.fieldRegistry)return;let r=e;for(let n of t.fieldRegistry.definitions){let o=r[n.metadata_key];o!==void 0&&(r[n.metadata_key]=Lr(n,o,`metadata field "${n.metadata_key}"`))}}function kN(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let r=ky(t),o=Object.keys(e).filter(i=>!r.has(i)).sort((i,s)=>i.localeCompare(s));o.length>0&&t.unknownFieldPolicy==="reject"&&rr(`unknown schema fields are not allowed: ${o.join(", ")}`),o.length>0&&t.onWarning?.(`item_unknown_schema_fields:${o.join(",")}`)}function Qo(e,t={}){let r=Ty(t),n=Fr(e.status,r?.statusRegistry)??e.status,o=Array.from(new Set((Array.isArray(e.tags)?e.tags:[]).filter(s=>typeof s=="string").map(s=>s.trim().toLowerCase()).filter(Boolean))).sort((s,a)=>s.localeCompare(a)),i={id:e.id,title:e.title,description:e.description,type:e.type,pm_format_version:_y(e.pm_format_version),source_type:S(e.source_type),type_options:bN(e.type_options),status:n,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:Gx(e.dependencies),comments:kd(e.comments),notes:kd(e.notes),learnings:kd(e.learnings),files:Xx(e.files),tests:rN(e.tests),test_runs:Jx(e.test_runs),docs:cN(e.docs),deadline:Xo(e.deadline),reminders:Bx(e.reminders),events:Wx(e.events),closed_at:Xo(e.closed_at),completed_at:Xo(e.completed_at),assignee:S(e.assignee),claim_principal:S(e.claim_principal),source_owner:S(e.source_owner),author:Xo(e.author),estimated_minutes:e.estimated_minutes,acceptance_criteria:e.acceptance_criteria??void 0,design:e.design??void 0,external_ref:e.external_ref??void 0,definition_of_ready:S(e.definition_of_ready),order:e.order,goal:S(e.goal),objective:S(e.objective),value:S(e.value),impact:S(e.impact),outcome:S(e.outcome),why_now:S(e.why_now),parent:S(e.parent),reviewer:S(e.reviewer),risk:e.risk??void 0,confidence:wN(e.confidence),sprint:S(e.sprint),release:S(e.release),blocked_by:S(e.blocked_by),blocked_reason:S(e.blocked_reason),unblock_note:S(e.unblock_note),reporter:S(e.reporter),severity:vN(e.severity),environment:S(e.environment),repro_steps:S(e.repro_steps),resolution:S(e.resolution),expected_result:S(e.expected_result),actual_result:S(e.actual_result),affected_version:S(e.affected_version),fixed_version:S(e.fixed_version),component:S(e.component),regression:e.regression,customer_impact:S(e.customer_impact),close_reason:Xo(e.close_reason),plan_mode:S(e.plan_mode),plan_scope:S(e.plan_scope),plan_harness:S(e.plan_harness),plan_resume_context:S(e.plan_resume_context),plan_steps:_N(e.plan_steps),plan_decisions:gN(e.plan_decisions),plan_discoveries:yN(e.plan_discoveries),plan_validation:hN(e.plan_validation)};return EN(i,e),TN(i,r),kN(i,r),Ws(i),i}function Ay(e){return R(e,Xe)}function AN(e){let t=0,r=!1,n=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(r){if(n){n=!1;continue}if(i==="\\"){n=!0;continue}i==='"'&&(r=!1);continue}if(i==='"'){r=!0;continue}if(i==="{"){t+=1;continue}if(i==="}"&&(t-=1,t===0))return o}return-1}function SN(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=AN(e);if(t<0)return{frontMatter:"",body:e};let r=e.slice(0,t+1),n=e.slice(t+1).replace(/^\r?\n+/,"");return{frontMatter:r,body:n}}function ON(e){let t=e.charCodeAt(0)===65279?e.slice(1):e,r=t.match(/^[ \t]*---[ \t]*(?:\r?\n|$)/);if(!r)return{content:t,stripped:!1};let n=r[0].length;for(;n<t.length;){let o=t.indexOf(`
15
- `,n),i=o===-1?t.length:o,s=t.slice(n,i).replace(/\r$/,""),a=o===-1?i:i+1;if(s.trim()==="---")return{content:t.slice(a).replace(/^\s+/,""),stripped:!0};n=a}return{content:t,stripped:!1}}function Id(e,t){return Qo(e,{...t,onWarning:void 0})}function CN(e,t,r={}){let n=ON(e);n.stripped&&r.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=SN(n.content);o||(e.trimStart().startsWith("{")&&Jo("json_markdown","JSON front matter is not valid JSON"),Jo("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{Jo("json_markdown","JSON front matter is not valid JSON")}return Cd(s,t),{metadata:Id(s,r),body:Nn(i)}}function IN(e,t,r={}){let n;try{n=Ed(e).value}catch{Jo("toon","TOON item document is not valid TOON")}I(typeof n=="object"&&n!==null&&!Array.isArray(n),"TOON item document must be an object");let o=n;if(!Ey.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&Jo("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return Cd(o.front_matter,t),I(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:Id(o.front_matter,r),body:Nn(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return I(i===void 0||typeof i=="string","TOON item document body must be a string"),Cd(s,t),{metadata:Id(s,r),body:Nn(typeof i=="string"?i:"")}}function RN(e,t={}){let r=Qo(e.metadata,t),n=Ay(r),o=JSON.stringify(n,null,2),i=Nn(e.body??"");return i?`${o}
16
-
17
- ${i}
18
- `:`${o}
19
- `}function xN(e,t={}){let r=Qo(e.metadata,t),n=Ay(r),o=Nn(e.body??""),i={...n,body:o},s=JSON.parse(JSON.stringify(i)),a=bx(s),c;try{c=Ed(a).value}catch(l){throw new g("Refusing to persist a TOON item document that the configured decoder cannot read back.",_.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_error",format:"toon",required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:l instanceof Error?l.message:String(l)})}if(!yy(c,s)){let l=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:{},d=Object.keys(s).find(u=>!yy(s[u],l[u]))??"document";throw new g(`Refusing to persist a lossy TOON item document; round-trip mismatch at field "${d}".`,_.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_mismatch",format:"toon",field:d,required:"Upgrade or repair the TOON codec before retrying the mutation; no item bytes were written.",why:"The encoded document decoded to a value different from the canonical item payload."})}return`${a}
20
- `}function $r(e,t={}){let r=Bs(e);if(r)throw new g(`Merge conflict markers detected in item document at line ${r.line} (${r.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,_.GENERIC_FAILURE,{code:"merge_conflict_markers_detected",reason:"merge_conflict",required:"Resolve merge-conflict markers in the item file before parsing or mutation commands.",why:"Partially merged documents can corrupt item metadata and history integrity.",examples:["git status","git add <resolved-file> && git commit"],nextSteps:["Resolve conflicts, save the file, then rerun the pm command."]});let n=t.format??"toon",o=Ty(t);return n==="toon"?IN(e,o,t):CN(e,o,t)}function ei(e,t={}){return(t.format??"toon")==="toon"?xN(e,t):RN(e,t)}function Qe(e,t={}){return{metadata:Qo(e.metadata,t),body:Nn(e.body??"")}}(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]="82c79093-2a40-5b4c-8d41-637b0ae03c4f")}catch{}})();function Nd(e){return e}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="da97ee67-b4ef-5eed-94d4-03c9b3b494be")}catch{}})();var Sy=["append","cancel","claim","close","comment_add","comment_edit","comment_delete","create","delete","docs_add","docs_remove","files_add","files_remove","files_discover","history_author_acknowledge","history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","import","improvement_observe","learning_add","learning_edit","learning_delete","normalize","note_add","note_edit","note_delete","plan_create_metadata","plan_create_initial_step","plan_add_step","plan_reorder_step","plan_remove_step","plan_link_step","plan_unlink_step","plan_append_decision","plan_append_discovery","plan_append_validation","plan_resume","plan_approve","plan_materialize","plan_update_step","plan_complete_step","plan_block_step","policy_approve","policy_refused","release","reopen","restore","schema_migration","schema_migration_reference","test_run_track","tests_add","tests_remove","tests_update","update","update_audit","update_ownership_bypass","workspace_snapshot_restore","extension_migrations_apply","merge_reconcile"],Oy=["history:author-acknowledge","settings:write","init:type_preset","templates:save","profile:apply-types","profile:apply-statuses","profile:apply-fields","profile:apply-config","schema:add-type","schema:remove-type","schema:add-status","schema:remove-status","schema:add-field","schema:remove-field","schema:apply-preset","schema:infer-types","schema:policy-put","schema:policy-remove","schema:policy-mode","assurance:bundle:apply","assurance:gate:verdict","telemetry:install_id","telemetry:first_run_prompt","telemetry:clear","item_format:auto_select_default"],Dd={"init:type-preset":"init:type_preset"},Cy=["^config:(?:set|unset):[a-z][a-z0-9_.:-]*$","^assurance:(?:measurement|invariant|gate):(?:put|remove)$","^schema_(?:rename_type|rename_status|remap_status|rename_field|remove_type|remove_status|remove_field)(?:_compensate)?$","^extension:[a-z][a-z0-9_-]*:[a-z][a-z0-9_]*$"],e9={version:1,item:Sy,workspace:Oy,aliases:Dd,patterns:Cy,read_policy:"preserve_original_operation",custom_operation_grammar:"extension:<package_name>:<snake_case_operation>",legacy_custom_operation_grammar:"lowercase segments separated by underscore, hyphen, colon, or dot; optional opaque colon-suffixed retry key",excluded_surfaces:["json_patch","on_write_hook","telemetry_span"]},NN=new Set([...Sy,...Oy]),DN=Cy.map(e=>new RegExp(e,"u"));function Iy(e){return Object.hasOwn(Dd,e)?Dd[e]:e}function t9(e){let t=Iy(e);if(NN.has(t)||DN.some(r=>r.test(t)))return t;throw new TypeError("Undeclared history operation; use a native contract identity or extension:<package_name>:<snake_case_operation>.")}function Ys(e){let t=Iy(e),r=t.indexOf(":"),n=r<0?t:t.slice(0,r),o=r<0||r<t.length-1&&!/[\s\p{C}]/u.test(t.slice(r+1));if(/^[a-z][a-z0-9]*(?:[_.-][a-z0-9]+)*$/u.test(n)&&o)return t;throw new TypeError("History operation must use lowercase alphanumeric segments with an optional non-whitespace colon-suffixed retry key.")}import{AsyncLocalStorage as PN}from"node:async_hooks";(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]="27a9b88e-ee47-55c8-b511-07ce9754346c")}catch{}})();var Pd=new PN,Ry=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function Ks(e,t){let r=typeof e=="string"?e.trim():"";return r.length>0?r.slice(0,t):void 0}function nr(e,t){if(e===void 0)return;let r=typeof e=="object"&&e!==null?e:{},n=Ks(r.id,128),o=Ks(r.parent_id,128);if(n===void 0||!Ry.test(n)||o!==void 0&&!Ry.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=Ks(r.label,256);return{id:n,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function Pn(e){let t={};for(let[r,n]of Object.entries(e??{}).slice(0,32)){let o=r.trim().toLowerCase().slice(0,64),i=Ks(n,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function MN(e,t,r){let n=Pd.getStore(),o=Pn({role:t.PM_AGENT_SESSION_ROLE,topic:t.PM_AGENT_SESSION_TOPIC}),i=nr(t.PM_AGENT_EPISODE_ID===void 0?void 0:{id:t.PM_AGENT_EPISODE_ID,label:t.PM_AGENT_EPISODE_LABEL,parent_id:t.PM_AGENT_EPISODE_PARENT_ID},!1),s={...Pn(n?.provenance),...o,...Pn(e?.provenance)},a=nr(e?.episode,!1)??nr(r,!1)??i??nr(n?.episode,!1);return Object.keys(s).length===0&&a===void 0?void 0:{...Object.keys(s).length===0?{}:{provenance:s},...a===void 0?{}:{episode:a}}}function Xs(e,t){return MN(e.session_context,t,e.client_info?.episode)??{}}function LN(e,t){let r=Pd.getStore(),n=nr(e.episode,!0),o=nr(r?.episode,!1),i=n!==void 0&&n.parent_id===void 0&&o!==void 0?{...n,parent_id:o.id}:n,s={...Pn(r?.provenance),...Pn(e.provenance)};return Pd.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function FN(e){let t=Pn(e.provenance),r=nr(e.episode,!0);return{...r===void 0?{}:{PM_AGENT_EPISODE_ID:r.id,...r.label===void 0?{}:{PM_AGENT_EPISODE_LABEL:r.label},...r.parent_id===void 0?{}:{PM_AGENT_EPISODE_PARENT_ID:r.parent_id}},...t.role===void 0?{}:{PM_AGENT_SESSION_ROLE:t.role},...t.topic===void 0?{}:{PM_AGENT_SESSION_TOPIC:t.topic}}}import{createHash as xy}from"node:crypto";import{existsSync as Md,promises as Ny,readFileSync as $N}from"node:fs";import yt 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]="9cefffc1-c3d6-5c4a-980f-d9d3eaef0f58")}catch{}})();var jN="session.json";function Ld(e,t){return typeof e=="string"&&e.length>0&&e.length<=t}function Dy(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=e,r=["implementer","planner","release-operator"].includes(String(t.role)),n=["high","medium"].includes(String(t.confidence)),o=Ld(t.topic,256),i=Array.isArray(t.evidence)&&t.evidence.length<=32&&t.evidence.every(c=>typeof c=="string"&&c.length<=128),s=Array.isArray(t.active_item_ids)&&t.active_item_ids.length<=64&&t.active_item_ids.every(c=>Ld(c,128)),a=t.focused_item_id===void 0||Ld(t.focused_item_id,128);if([r,n,o,i,s,a,t.rule_version==="v2"].every(Boolean))return t}function UN(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).slice(0,128).flatMap(([r,n])=>{let o=Dy(n);return o&&r.length<=128?[[r,o]]:[]});return t.length>0?Object.fromEntries(t):void 0}function Fd(e){return yt.join(Ol(e),jN)}async function Js(e){try{let t=await Ny.readFile(Fd(e),"utf8"),r=JSON.parse(t);if(r===null||typeof r!="object"||Array.isArray(r))return{};let n=r,o=n.focused_item,i=UN(n.semantic_attribution);return typeof o=="string"&&o.trim().length>0?{focused_item:o,...i?{semantic_attribution:i}:{}}:i?{semantic_attribution:i}:{}}catch{return{}}}async function $d(e,t){let r=Fd(e);await Ny.mkdir(yt.dirname(r),{recursive:!0}),await F(r,JSON.stringify(t))}function jd(e){return/#([a-f0-9]{24})$/u.exec(e.trim())?.[1]??`author-${xy("sha256").update(e).digest("hex").slice(0,24)}`}function Ud(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].slice(0,32).map(t=>t.slice(0,128))}function zd(e){let t=[...new Set(e)].sort((o,i)=>o.localeCompare(i));if(t.length===1)return t[0];let r=`workset:${t.join("+")}`;return r.length<=256?r:`workset:${t.join("+").slice(0,230)}+${xy("sha256").update(t.join("\0")).digest("hex").slice(0,12)}`}async function qd(e,t,r){let n=await Js(e),o={...n.semantic_attribution},i=r(o[t]);i===void 0?delete o[t]:o[t]=i;let s={...n};Object.keys(o).length===0?delete s.semantic_attribution:s.semantic_attribution=o,await $d(e,s)}async function d9(e){let t=jd(e.principal);await qd(e.pmRoot,t,r=>{let n=[...new Set([...r?.active_item_ids??[],e.itemId])].slice(-64).sort((i,s)=>i.localeCompare(s)),o=r?.focused_item_id;return{role:"implementer",topic:o??zd(n),confidence:o?"high":"medium",rule_version:"v2",evidence:Ud([...n.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:n,...o?{focused_item_id:o}:{}}})}async function u9(e){let t=jd(e.principal);await qd(e.pmRoot,t,r=>{if(!r)return;let n=r.active_item_ids.filter(i=>i!==e.itemId);if(n.length===0&&!r.focused_item_id)return;let o=r.focused_item_id;return{...r,role:"release-operator",topic:o??zd(n),confidence:o?"high":"medium",evidence:Ud([...n.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],`release:${e.itemId}`]),active_item_ids:n}})}async function f9(e){let t=jd(e.principal);await qd(e.pmRoot,t,r=>{let n=r?.active_item_ids??[];if(!e.itemId&&n.length===0)return;let o=e.itemId;return{role:o?"planner":r.role,topic:o??zd(n),confidence:o?"high":"medium",rule_version:"v2",evidence:Ud([...n.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:n,...o?{focused_item_id:o}:{}}})}function zN(e,t){let r=t.PM_PATH?.trim();if(r){let o=yt.resolve(e,r);if(Md(yt.join(o,"settings.json")))return o;let i=yt.join(o,".agents","pm");if(Md(yt.join(i,"settings.json")))return i}let n=yt.resolve(e);for(let o=0;o<32;o+=1){let i=yt.join(n,".agents","pm");if(Md(yt.join(i,"settings.json")))return i;let s=yt.dirname(n);if(s===n)break;n=s}}function Py(e){if(!e.key)return;let t=zN(e.cwd,e.env);if(t)try{let r=JSON.parse($N(Fd(t),"utf8"));return Dy(r.semantic_attribution?.[e.key])}catch{return}}async function qN(e){return(await Js(e)).focused_item}async function HN(e,t){let r=await Js(e);await $d(e,{...r,focused_item:t})}async function GN(e){let r={...await Js(e)};delete r.focused_item,await $d(e,r)}import{AsyncLocalStorage as Wd}from"node:async_hooks";import{createHash as BN}from"node:crypto";import xe from"node:fs";import $y from"node:os";import zr 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]="c39d3d14-b0b5-5309-b89a-9da08e1a939a")}catch{}})();var Yd=["model","effort","role","topic","version"],ea=new Wd,jy=new Wd,ta=new Wd,Kd=[{harness:"claude-code",environment_keys:["CLAUDE_CODE","CLAUDECODE"],model_environment_keys:["ANTHROPIC_MODEL","CLAUDE_MODEL"],session_environment_keys:["CLAUDE_CODE_SESSION_ID"],provenance_environment_keys:{effort:["CLAUDE_EFFORT"]},provenance_resolvers:{model:"claude_session_file",version:"claude_session_file"},provenance_unavailable_dimensions:["role","topic"],argv_markers:["claude","claude-code"],client_names:["claude","claude-code","claude code"]},{harness:"codex",environment_keys:["CODEX_HOME","CODEX_CI","CODEX_THREAD_ID"],model_environment_keys:["CODEX_MODEL"],session_environment_keys:["CODEX_THREAD_ID"],provenance_environment_keys:{effort:["CODEX_REASONING_EFFORT","CODEX_EFFORT"],role:["CODEX_SESSION_ROLE"]},provenance_resolvers:{model:"codex_session_file",effort:"codex_session_file",version:"ai_agent_version"},provenance_unavailable_dimensions:["topic"],argv_markers:["codex"],client_names:["codex"]},{harness:"pi",environment_keys:["PI_AGENT","PI_CODING_AGENT"],model_environment_keys:["PI_MODEL"],session_environment_keys:["PI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["pi"],client_names:["pi"]},{harness:"opencode",environment_keys:["OPENCODE","OPENCODE_SESSION_ID"],model_environment_keys:["OPENCODE_MODEL"],session_environment_keys:["OPENCODE_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["opencode"],client_names:["opencode"]},{harness:"cursor",environment_keys:["CURSOR_AGENT","CURSOR_TRACE_ID"],model_environment_keys:["CURSOR_MODEL"],session_environment_keys:["CURSOR_TRACE_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["cursor"],client_names:["cursor"]},{harness:"aider",environment_keys:["AIDER","AIDER_MODEL"],model_environment_keys:["AIDER_MODEL"],session_environment_keys:["AIDER_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["aider"],client_names:["aider"]},{harness:"gemini-cli",environment_keys:["GEMINI_CLI","GEMINI_CLI_HOME"],model_environment_keys:["GEMINI_MODEL"],session_environment_keys:["GEMINI_CLI_SESSION_ID"],provenance_unavailable_dimensions:["effort","role","topic"],argv_markers:["gemini","gemini-cli"],client_names:["gemini","gemini-cli","gemini cli"]},{harness:"ci",environment_keys:["CI","GITHUB_ACTIONS","BUILDKITE","GITLAB_CI"],provenance_unavailable_dimensions:["model","effort","role","topic"],argv_markers:[],client_names:[]}],Uy=Object.freeze({max_bytes:1048576,max_lines:4096,network_access:!1,subprocess_access:!1}),VN=Object.freeze({...Uy,max_bytes:4194304}),Hd=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function WN(e){let t=ir(e).provenance_unavailable_dimensions,r=new Set(["model","version",...Object.keys(e.provenance_environment_keys??{}),...Object.keys(e.provenance_resolvers??{})]);return Object.freeze({contract_version:1,adapter_version:"v1",priority:0,harness:e.harness,descriptor:e,supported_dimensions:Object.freeze([...r].sort()),native_sources:Object.freeze(["environment","argv","mcp_client",...Object.values(e.provenance_resolvers??{}).some(n=>n?.endsWith("session_file"))?["session_file"]:[]]),probe_policy:e.harness==="codex"?VN:Uy,normalization:Object.freeze({model_family:"v1",effort:"v1",preserve_raw:!0}),confidence:"high",waivers:Object.freeze(Object.fromEntries(t.map(n=>[n,"Harness does not expose this dimension."])))})}var Xd=Object.freeze(Kd.filter(e=>e.harness!=="ci").map(WN).sort((e,t)=>e.harness.localeCompare(t.harness))),Ur=new Map,Mn=new Map;function ee(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function or(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function ir(e){let t=e.harness.trim().toLowerCase();if(!Hd.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:or(e.environment_keys),model_environment_keys:or(e.model_environment_keys),session_environment_keys:or(e.session_environment_keys),provenance_environment_keys:Object.fromEntries(Object.entries(e.provenance_environment_keys??{}).slice(0,32).map(([r,n])=>[r.trim().toLowerCase().slice(0,64),or(n)]).filter(([r])=>Hd.test(r))),provenance_resolvers:Object.fromEntries(Object.entries(e.provenance_resolvers??{}).slice(0,32).map(([r,n])=>[r.trim().toLowerCase().slice(0,64),n]).filter(r=>typeof r[0]=="string"&&Hd.test(r[0])&&(r[1]==="ai_agent_version"||r[1]==="claude_session_file"||r[1]==="codex_session_file"))),provenance_unavailable_dimensions:or(e.provenance_unavailable_dimensions).map(r=>r.toLowerCase()),argv_markers:or(e.argv_markers).map(r=>r.toLowerCase()),client_names:or(e.client_names).map(r=>r.toLowerCase())}}var zy=Kd.map(ir);function YN(e,t){return JSON.stringify(e)===JSON.stringify(t)}function Qs(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(n=>n.length>0).includes(t)||e.trim().toLowerCase()===t}function Jd(e=[]){let t=new Map(Kd.filter(o=>o.harness!=="ci").map(o=>[o.harness,ir(o)]));for(let{adapter:o}of Ur.values())t.set(o.harness,ir(o.descriptor));let r=[...t.values(),...zy.filter(o=>o.harness==="ci"),...[...Mn.values()].map(o=>o.descriptor),...ta.getStore()?.descriptors??[],...e.map(ir)],n=new Set;for(let o of r){if(n.has(o.harness))throw new Error(`Harness signal descriptor collision for "${o.harness}"`);n.add(o.harness)}return r}function Zd(e,t){for(let r of t??[]){let n=ee(e[r]);if(n)return n.slice(0,256)}}function KN(e,t){if(t==="role"){let r=e.slice(0,8).map(n=>n.trim().toLowerCase()).find(n=>["claim","create","update","close","release","review"].includes(n));if(r==="review")return"reviewer";if(r)return"implementer"}}function qy(e,t){let r=t==="model"?["--model","--agent-model"]:[`--agent-${t}`],n=e.slice(0,8);for(let o=0;o<n.length;o+=1){let i=n[o].slice(0,512);if(r.includes(i))return ee(n[o+1])?.slice(0,256);let s=r.find(a=>i.startsWith(`${a}=`));if(s)return ee(i.slice(s.length+1))?.slice(0,256)}}var XN=new Set(["implementation","implementer","investigator","orchestrator","planner","release-operator","reviewer"]);function jr(e,t){if(e!=="role"||t===void 0)return t;let r=t.trim().toLowerCase().replaceAll(/[_\s]+/gu,"-");return XN.has(r)?r:void 0}function Gd(e,t){return ee(e?.[t])?.slice(0,256)}var JN=1048576,Vd=4194304,Zs=new Map,My=Object.freeze({}),Bd=new Map,Ly=Object.freeze({});function Fy(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function ZN(e){let t;try{t=JSON.parse(e)}catch{return Ly}let r=Fy(t);if(!r)return Ly;let n=[{value:r,depth:0}],o=0,i,s;for(;n.length>0&&o<64;){let a=n.shift();if(o+=1,i??=ee(a.value.model)?.slice(0,256),s??=ee(a.value.version)?.slice(0,256),i&&s)break;if(!(a.depth>=4))for(let c of Object.values(a.value)){let l=Fy(c);l&&n.push({value:l,depth:a.depth+1})}}return Object.freeze({model:i,version:s})}function Hy(e){try{return xe.lstatSync(e).isFile()?"available":"missing"}catch(t){return yo(t)?"missing":"failed"}}function QN(e,t){let r;try{r=xe.readdirSync(e,{withFileTypes:!0}).filter(o=>o.isDirectory()).sort((o,i)=>o.name.localeCompare(i.name)).slice(0,512).map(o=>{let i=zr.join(e,o.name,`${t}.jsonl`);return{candidate:i,status:Hy(i)}})}catch(o){return{status:yo(o)?"missing":"failed"}}let n=r.filter(({status:o})=>o==="available").map(({candidate:o})=>o);return n.length===0?{status:r.some(({status:o})=>o==="failed")?"failed":"missing"}:n.length>1?{status:"ambiguous"}:{status:"available",path:n[0]}}function Gy(e,t){let r=ee(t.CLAUDE_CODE_SESSION_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return{status:"unavailable"};let o=zr.resolve(e.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),i=zr.join(e.home_dir??$y.homedir(),".claude","projects"),s=zr.join(i,o,`${r}.jsonl`),a=ee(e.session_file),c=a&&zr.basename(a)===`${r}.jsonl`?a:void 0;for(let l of[c,s]){if(!l)continue;let d=Hy(l);if(d==="available")return{status:d,path:l};if(d==="failed")return{status:d}}return QN(i,r)}function eD(e,t,r){let n=Gy(t,r);if(n.status==="available")try{let o=xe.openSync(n.path,xe.constants.O_RDONLY|xe.constants.O_NOFOLLOW);try{let i=xe.fstatSync(o),s=`${n.path}\0${i.size}\0${i.mtimeMs}`,a=Bd.get(s);if(a)return a[e];let c=Math.min(i.size,JN),l=Math.min(c,Math.ceil(c/2)),d=Math.min(c-l,i.size-l),u=Buffer.alloc(l);xe.readSync(o,u,0,l,0);let f=Buffer.alloc(d);d>0&&xe.readSync(o,f,0,d,i.size-d);let p={},m=i.size<=c?Buffer.concat([u,f]).toString("utf8").split(`
21
- `):[...u.toString("utf8").split(`
22
- `).slice(0,4096),...f.toString("utf8").split(`
23
- `).slice(-4096)];for(let b of m){if(b.length===0||b.length>262144)continue;let w=ZN(b);if(p.model??=w.model,p.version??=w.version,p.model&&p.version)break}let h=Object.freeze(p);return Bd.clear(),Bd.set(s,h),h[e]}finally{xe.closeSync(o)}}catch{return}}function tD(e,t){let r=0,n=(o,i)=>{if(i>4||r>=512)return;let s;try{s=xe.readdirSync(o,{withFileTypes:!0}).sort((a,c)=>c.name.localeCompare(a.name))}catch{return}for(let a of s){if(r+=1,r>512)return;let c=zr.join(o,a.name);if(a.isFile()&&a.name.endsWith(`-${t}.jsonl`))return c;if(a.isDirectory()){let l=n(c,i+1);if(l)return l}}};return n(e,0)}function rD(e){if(e<=Vd)return[{offset:0,length:e}];let t=Math.floor(Vd/2);return[{offset:e-t,length:t},{offset:0,length:t}]}function nD(e,t){if(t.length===0||t.length>262144)return;let r;try{r=JSON.parse(t)}catch{return}if(typeof r!="object"||r===null||Array.isArray(r))return;let n=r;if(n.type!=="turn_context")return;let o=typeof n.payload=="object"&&n.payload!==null?n.payload:void 0;e.model??=ee(o?.model)?.slice(0,256),e.effort??=ee(o?.effort)?.slice(0,256)}function oD(e,t){let r={},n=4096;for(let o of rD(t)){let i=Buffer.alloc(o.length);xe.readSync(e,i,0,o.length,o.offset);let s=i.toString("utf8").split(`
24
- `).reverse().slice(0,n);n-=s.length;for(let a of s)if(nD(r,a),r.model&&r.effort)break;if(r.model&&r.effort||n<=0)break}return r}function iD(e,t,r){let n=ee(r.CODEX_THREAD_ID);if(!n||!/^[A-Za-z0-9_-]{1,128}$/u.test(n))return;let o=zr.join(t.home_dir??$y.homedir(),".codex","sessions"),i=`${o}\0${n}`,s=Zs.get(i);if(s)return s[e];let a=tD(o,n);if(!a){Zs.set(i,My);return}try{let c=xe.openSync(a,"r");try{let l=xe.fstatSync(c).size,d=oD(c,l);return Zs.set(i,d),d[e]}finally{xe.closeSync(c)}}catch{Zs.set(i,My);return}}function sD(e,t,r,n){let o=ta.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(ee(r.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let s=n?.provenance_resolvers[e];if(s==="claude_session_file")return eD(e,t,r);if(s==="codex_session_file")return iD(e,t,r);if(s==="ai_agent_version"){let a=ee(r.AI_AGENT);return!a||!n||!Qs(a,n.harness)?void 0:/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(a)?.[1]?.slice(0,256)}}function aD(e,t,r,n){if(e==="ai_agent_version"){let o=ee(n.AI_AGENT);return o!==void 0&&Qs(o,t.harness)?"available":"unavailable"}return e==="codex_session_file"?ee(n.CODEX_THREAD_ID)!==void 0?"available":"unavailable":Gy(r,n).status}function Qd(e){return e||(jy.getStore()??{env:process.env,argv:process.argv})}function cD(e,t,r,n){let o=e.environment_keys.some(a=>ee(t[a])!==void 0),i=e.argv_markers.some(a=>r.some(c=>{let l=c.replaceAll("\\","/");return Qs(l.slice(l.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>n===a||Qs(n,a));return o||i||s}function lD(e,t){if(!t)return;let r;if(e==="topic"&&(r=t.topic),e==="role"&&(r=t.role),!!r)return{value:r,source:"inferred",confidence:t.confidence,rule_version:t.rule_version,evidence:t.evidence}}function dD(e){let t=e.find(([r])=>r!==void 0);return t?.[0]?{value:t[0],source:t[1]}:void 0}function uD(e,t,r,n,o,i){let s=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,a=new Set([...Yd,...Object.keys(n?.provenance_environment_keys??{})]),c,l,d;a.has(e)&&(c=jr(e,ee(r[s])?.slice(0,256)),d=jr(e,qy(t.argv??[],e)),l=jr(e,KN(t.argv??[],e)));let u={...n?.provenance_environment_keys,model:n?.model_environment_keys},f={...t.client_info?.provenance,model:t.client_info?.model},p=Gd(o?.provenance,e),m=jr(e,Zd(r,u[e])),h=jr(e,Gd(f,e)),b=jr(e,Gd(t.provenance,e)),w=sD(e,t,r,n);return dD([[c,"override"],[p,"session"],[d,"argv"],[m,"environment"],[h,"mcp_client"],[b,"host"],[w,"probe"]])??lD(e,i)??(l?{value:l,source:"argv"}:void 0)}function fD(e,t){if(!(!e||!t))return BN("sha256").update(`pm-agent-instance:v1\0${e}\0${t}`).digest("hex").slice(0,24)}function pD(e,t,r,n,o){let i=Object.keys(r?.provenance_environment_keys??{}),s=new Set([...Yd,...i,...Object.keys(r?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(n?.provenance??{})]),a={};for(let c of s){let l=uD(c,e,t,r,n,o);l?a[c]=l:r&&(c!=="version"||r.provenance_unavailable_dimensions.includes(c))&&(a[c]=null)}return a}function E9(e){let t=e.map(ir),r=new Map(zy.map(i=>[i.harness,i])),n=new Set;for(let i of t){if(n.has(i.harness)||r.has(i.harness))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);let s=Mn.get(i.harness);if(s&&!YN(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);n.add(i.harness)}for(let i of t){let s=Mn.get(i.harness);Mn.set(i.harness,{descriptor:i,registrations:(s?.registrations??0)+1})}let o=!0;return()=>{if(o){o=!1;for(let i of t){let s=Mn.get(i.harness);!s||s.registrations<=1?Mn.delete(i.harness):s.registrations-=1}}}}function mD(e){let t=ir(e.descriptor),r=e.harness.trim().toLowerCase();if(e.contract_version!==1)throw new Error(`Unsupported provenance adapter contract for "${r}": ${e.contract_version}`);if(t.harness!==r)throw new Error(`Provenance adapter harness "${r}" does not match descriptor "${t.harness}".`);let n=ee(e.adapter_version)?.slice(0,64);if(!n)throw new Error(`Provenance adapter "${r}" requires a version.`);if(!Number.isSafeInteger(e.priority))throw new Error(`Provenance adapter "${r}" requires an integer priority.`);if(e.probe_policy.network_access!==!1||e.probe_policy.subprocess_access!==!1||e.probe_policy.max_bytes>Vd||e.probe_policy.max_lines>4096)throw new Error(`Provenance adapter "${r}" exceeds the bounded local probe policy.`);return Object.freeze({...e,adapter_version:n,harness:r,descriptor:t,supported_dimensions:Object.freeze(or(e.supported_dimensions).map(o=>o.toLowerCase()).sort()),native_sources:Object.freeze([...new Set(e.native_sources)]),probe_policy:Object.freeze({...e.probe_policy}),normalization:Object.freeze({...e.normalization}),...e.waivers?{waivers:Object.freeze(Object.fromEntries(Object.entries(e.waivers).slice(0,32).map(([o,i])=>[o.slice(0,64),i.slice(0,256)])))}:{}})}function _D(){let e=new Map(Xd.map(t=>[t.harness,t]));for(let{adapter:t}of Ur.values())e.set(t.harness,t);return Object.freeze([...e.values()].sort((t,r)=>t.harness.localeCompare(r.harness)))}function gD(e){let t=e.map(mD),r=new Map(Xd.map(i=>[i.harness,i])),n=new Set;for(let i of t){if(n.has(i.harness))throw new Error(`Provenance adapter collision for "${i.harness}".`);let s=r.get(i.harness);if(s&&i.priority<=s.priority)throw new Error(`Provenance adapter override for "${i.harness}" requires priority greater than ${s.priority}.`);let a=Ur.get(i.harness);if(a&&JSON.stringify(a.adapter)!==JSON.stringify(i))throw new Error(`Provenance adapter collision for "${i.harness}".`);n.add(i.harness)}for(let i of t){let s=Ur.get(i.harness);Ur.set(i.harness,{adapter:i,registrations:(s?.registrations??0)+1})}let o=!0;return()=>{if(o){o=!1;for(let i of t){let s=Ur.get(i.harness);!s||s.registrations<=1?Ur.delete(i.harness):s.registrations-=1}}}}function yD(e,t){let r=t.trim().slice(0,256),n=r.toLowerCase();if(e==="model"){let o=/^(gpt-\d+(?:\.\d+)?)/u.exec(n)?.[1];o&&(n=o)}else n=n.replaceAll(/[_\s-]+/gu,""),n={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"xhigh",max:"max",ultra:"ultra"}[n]??n;return{raw:r,normalized:n,vocabulary:"v1"}}function hD(e,t){return jy.run(e,t)}function bD(e,t,r={}){let n=e.map(ir);return Jd(n),ta.run({descriptors:n,probesEnabled:r.probesEnabled!==!1},t)}function ti(e){let t=Qd(e),r=t.env??{},n=Jd(t.descriptors),o=[...(t.argv??[]).slice(0,3),...t.process_labels??[]].slice(0,64).map(m=>m.slice(0,512)),i=t.client_info?.name.trim().toLowerCase()??"",s=n.find(m=>cD(m,r,o,i)),a=Xs(t,r),c=[Zd(r,s?.session_environment_keys),ee(t.client_info?.session)?.slice(0,256)].find(m=>m!==void 0),l=fD(s?.harness,c),d=Py({cwd:t.cwd??process.cwd(),env:r,key:l}),u=pD(t,r,s,a,d),f=u.model,p=[["harness",s?.harness],["model",f?.value],["model_source",f?.source],["session",c],["instance",l],["provenance",Object.keys(u).length>0?u:void 0],["episode",a.episode]];return Object.fromEntries(p.filter(m=>m[1]!==void 0))}function wD(e){return e==="unavailable"?{status:"unavailable",reason:"harness_unavailable"}:e==="missing"?{status:"unavailable",reason:"resolver_input_missing"}:{status:"failed",reason:"resolver_failed"}}function vD(e,t,r,n,o,i,s){let a=r?.provenance_resolvers[e];if(t.provenance?.[e])return{status:"resolved",...a?{resolver:a}:{},rule_version:"v1"};if(s)return{status:"unavailable",reason:"invalid_value",rule_version:"v1"};if(a){if(!i)return{status:"unavailable",reason:"probes_disabled",resolver:a,rule_version:"v1"};let c=aD(a,r,n,o);return{...wD(c),resolver:a,rule_version:"v1"}}return{status:r?.provenance_unavailable_dimensions.includes(e)?"unavailable":"not_configured",reason:r?.provenance_unavailable_dimensions.includes(e)?"harness_unavailable":"resolver_not_configured",rule_version:"v1"}}function eu(e){let t=Qd(e),r=ti(t),n=Jd(t.descriptors).find(l=>l.harness===r.harness),o=t.env??{},i=t.probes_enabled!==!1&&ta.getStore()?.probesEnabled!==!1&&!["0","false","off"].includes(ee(o.PM_AGENT_PROBES)?.toLowerCase()??""),s=Xs(t,o),a=[o.PM_AGENT_ROLE,s.provenance?.role,Zd(o,n?.provenance_environment_keys.role),t.client_info?.provenance?.role,t.provenance?.role,qy(t.argv??[],"role")].some(l=>{let d=ee(l)?.slice(0,256);return d!==void 0&&jr("role",d)===void 0}),c=Object.fromEntries(Yd.map(l=>[l,vD(l,r,n,t,o,i,l==="role"&&a)]));return{...r,provenance_outcomes:c}}function tu(){return process.env.PM_AUTHOR}function ED(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function T9(e){return ti(e).harness}function TD(e,t,r){let n=Qd(r),o=ti(n);if(e!==void 0){let s=ee(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(n.env?.PM_AUTHOR!==void 0){let s=ee(n.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=ee(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function By(e){let t=ea.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function Vy(e){let t=ea.getStore();return t?.author!==e?e.startsWith("harness:")?{harness:e.slice(8)}:{}:{...t.harness?{harness:t.harness}:{},...t.model?{model:t.model}:{},...t.model_source?{model_source:t.model_source}:{},...t.session?{session:t.session}:{},...t.instance?{instance:t.instance}:{},...t.provenance?{provenance:t.provenance}:{},...t.episode?{episode:t.episode}:{}}}function ru(e){let t=ea.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function ri(e,t){let r=TD(e,t);return ea.enterWith(r),r.author}import{constants as kD}from"node:fs";import et from"node:fs/promises";import na from"node:path";import{randomUUID as nu}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f0484213-41f9-583e-bd0f-f85e507682b2")}catch{}})();function AD(e){let t;try{t=JSON.parse(e)}catch{return{info:null,warnings:["lock_info_invalid_json"]}}if(typeof t!="object"||t===null||Array.isArray(t))return{info:null,warnings:["lock_info_invalid_shape"]};let r=t,n=r.id,o=r.pid,i=r.owner,s=r.token,a=r.created_at,c=r.ttl_seconds;return typeof n!="string"||typeof o!="number"||!Number.isFinite(o)||typeof i!="string"||s!==void 0&&(typeof s!="string"||s.trim().length===0)||typeof a!="string"||typeof c!="number"||!Number.isFinite(c)?{info:null,warnings:["lock_info_invalid_shape"]}:{info:{id:n,pid:o,owner:i,...typeof s=="string"?{token:s}:{},created_at:a,ttl_seconds:c},warnings:[]}}async function ra(e,t=!0){try{let r=await et.readFile(e,"utf8");return t&&await it({path:e,scope:"project"}),AD(r)}catch(r){return X(r)?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function Mt(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function SD(e,t,r=process.platform){if(Mt(e,"EEXIST"))return!0;if(!Mt(e,"EPERM")&&!Mt(e,"EACCES")&&!Mt(e,"EBUSY"))return!1;try{return await et.lstat(t),!0}catch(n){if(r!=="win32"||!X(n)&&!Mt(n,"EPERM")&&!Mt(n,"EACCES")&&!Mt(n,"EBUSY"))return!1}try{return await et.access(na.dirname(t),kD.W_OK),!0}catch{return!1}}async function Zy(e,t){await ke({path:e,scope:"project",op:t})}function OD(e,t,r,n=nu()){return{id:e,pid:process.pid,owner:t,token:n,created_at:Z(),ttl_seconds:r}}async function CD(e,t,r,n,o){await et.mkdir(na.dirname(e),{recursive:!0});let i=await lu(e,t);if(i===null)throw Object.assign(new Error("Lock initialization is contended"),{code:"EEXIST"});try{let s=await et.open(e,"wx");try{try{await s.writeFile(`${JSON.stringify(OD(t,r,n,o),null,2)}
25
- `,"utf8")}finally{await s.close()}}catch(a){throw await ou(e,"lock:release"),a}}finally{await i()}await Zy(e,"lock:create")}async function ou(e,t){try{return await et.unlink(e),await Zy(e,t),!0}catch{return!1}}async function ID(e,t,r,n){let o=Date.now(),i=eh;for(;;){let s=await lu(e,t);if(s!==null){try{let l=await ra(e,!1);Wy(l.info,t,r,n)&&await ou(e,"lock:release")}finally{await s()}return}let a=await ra(e,!1);if(!Wy(a.info,t,r,n))return;let c=Date.now()-o;if(c>=Yy)return;await nh(Math.min(i,Yy-c)),i=Math.min(i*2,iu)}}function Wy(e,t,r,n){return e?.id===t&&e.pid===process.pid&&e.owner===r&&e.token===n}function Qy(e,t){let r=e?.created_at?Date.parse(e.created_at):Number.NaN;return(Number.isFinite(r)?Date.now()-r:Number.POSITIVE_INFINITY)>t*1e3}function RD(e){return e?.owner?` (owner ${e.owner})`:""}var eh=25,iu=200,xD=250,ND=3,DD=".stale-cleanup",th="owner.json",rh=1e4,Yy=rh+iu,PD=60*6e4;function Ky(e){if(typeof e=="string"){let t=e.trim();if(!/^\d+$/.test(t))return;let r=Number(t);return Number.isSafeInteger(r)?r:void 0}if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return Math.trunc(e)}function MD(e){let t=process.env.PM_LOCK_WAIT_MS,r=Ky(t);if(r!==void 0)return r;let n=Ky(e);return n!==void 0?n:0}function nh(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(r=>setTimeout(r,t))}function oh(e,t,r){let n=r>0?` after waiting ${r}ms`:"";return new g(`Item ${e} is locked${RD(t)}${n}`,_.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:xD}})}function LD(e){if(typeof e=="function")return e;if(typeof e=="object"&&e!==null&&"release"in e){let t=e.release;return typeof t=="function"?t:null}return null}function FD(e,t,r,n){if(!r&&n){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new g(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,_.CONFLICT)}}function $D(e){let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!="object"||t===null||Array.isArray(t))return null;let r=t,n=r.pid,o=r.token,i=r.process_start_identity;return typeof n!="number"||!Number.isInteger(n)||n<=0||typeof o!="string"||o.length===0||i!==void 0&&(typeof i!="string"||!/^\d+$/u.test(i))?null:{pid:n,token:o,...typeof i=="string"?{process_start_identity:i}:{}}}async function ih(e){try{return $D(await et.readFile(na.join(e,th),"utf8"))}catch{return null}}function jD(e){if(!Number.isSafeInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return!Mt(t,"ESRCH")}}function UD(e){let t=e.lastIndexOf(")");if(t<0)return null;let r=e.slice(t+2).trim().split(/\s+/u)[19];return r!==void 0&&/^\d+$/u.test(r)?r:null}async function sh(e){try{return UD(await et.readFile(`/proc/${e}/stat`,"utf8"))}catch{return null}}async function su(e=process.pid){let t=await sh(e);return{pid:e,...t===null?{}:{process_start_identity:t}}}async function au(e,t,r){if(!jD(e.pid))return!1;let n=await sh(e.pid);return e.process_start_identity!==void 0&&n!==null?n===e.process_start_identity:t<=r}async function cu(e){try{return await et.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function Xy(e,t){let r=await ih(e);r===null||r.token!==t||await cu(e)}async function Jy(e){try{await et.mkdir(e)}catch(r){return Mt(r,"EEXIST"),null}let t={...await su(),token:nu()};try{await et.writeFile(na.join(e,th),`${JSON.stringify(t)}
26
- `,"utf8")}catch{return await cu(e),null}return t}async function zD(e){let t;try{let n=await et.stat(e);if(t=Date.now()-n.mtimeMs,t<=rh)return!1}catch(n){return X(n)}let r=await ih(e);return r!==null&&await au(r,t,PD)?!1:cu(e)}async function lu(e,t){let r=`${e}${DD}`,n=await Jy(r);if(n!==null)return async()=>Xy(r,n.token);if(!await zD(r))return null;let o=await Jy(r);return o===null?null:async()=>Xy(r,o.token)}async function qD(e){let t=await lu(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let r=await ra(e.lockPath);if(r.info===null&&r.warnings.length===0)return{lockInfo:r,shouldRetryCreate:!0,staleRemovalCounted:!1};if(!Qy(r.info,e.ttlSeconds))return{lockInfo:r,shouldRetryCreate:!1,staleRemovalCounted:!1};if(FD(e.id,r,e.force,e.forceRequiredForStaleLock),e.staleRemovals>=ND)throw oh(e.id,r.info,Date.now()-e.startedAtMs);return{lockInfo:r,shouldRetryCreate:await ou(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function ie(e,t,r,n,o=!1,i=!0,s){let a=await Ze("lock_acquire",{pm_root:e,id:t,ttl_seconds:r,owner:n,force:o,force_required_for_stale_lock:i});if(a.handled){let m=LD(a.result);if(m)return async()=>{await Promise.resolve(m()),await Ze("lock_release",{pm_root:e,id:t,owner:n})}}let c=f_(e,t),l=MD(s),d=Date.now(),u=0,f=eh,p=nu();for(;;)try{return await CD(c,t,n,r,p),async()=>{await ID(c,t,n,p),await Ze("lock_release",{pm_root:e,id:t,owner:n})}}catch(m){if(!await SD(m,c))throw new g(`Failed to acquire lock for ${t}: ${G(m)}`,_.GENERIC_FAILURE);let h=await ra(c);if(Qy(h.info,r)){let w=await qD({lockPath:c,id:t,ttlSeconds:r,force:o,forceRequiredForStaleLock:i,staleRemovals:u,waitBudgetMs:l,startedAtMs:d,fallbackLockInfo:h});if(h=w.lockInfo,w.staleRemovalCounted&&(u+=1),w.shouldRetryCreate)continue}let b=Date.now()-d;if(l===0||b>=l)throw oh(t,h.info,l===0?0:b);await nh(Math.min(f,l-b)),f=Math.min(f*2,iu)}}(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]="bfa74c9e-a366-5b09-a7bc-869226fb6140")}catch{}})();async function HD(e,t){let r=await V(e);if(r===null)return{raw:r,entries:[]};if(await it({path:e,scope:"project"}),r.trim()==="")return{raw:r,entries:[]};let n=Bs(r);if(n)throw new g(`History for ${t} contains merge conflict markers at line ${n.line} (${n.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,_.GENERIC_FAILURE,{code:"history_merge_conflict_markers_detected",required:"Repair the history stream by resolving merge-conflict markers.",why:"Conflict markers break JSONL parsing and invalidate deterministic audit history.",examples:[`pm history ${t}`,`pm restore ${t} <timestamp-or-version>`],nextSteps:["Resolve or restore the history file, then rerun the command."]});let o=[];for(let[i,s]of r.split(/\r?\n/).entries()){let a=s.trim();if(a)try{o.push(JSON.parse(a))}catch{throw new g(`History for ${t} contains invalid JSON at line ${i+1}. Repair or restore the history stream and retry.`,_.GENERIC_FAILURE,{code:"history_json_invalid",nextSteps:[`Run pm history-repair ${t} --salvage-tail --dry-run to check whether only an invalid suffix is damaged.`]})}}return{raw:r,entries:o}}async function Ue(e,t){return(await HD(e,t)).entries}(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]="9d5caf29-c1f2-5120-bc0b-c64a0bdd19ff")}catch{}})();var H9=1,GD=["docs_add","files_add","history:author-acknowledge","history_author_acknowledge","history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","normalize","release","test_run_track","tests_add","tests_remove","update_audit","update_ownership_bypass"],BD=["append","cancel","claim","close","comment_add","create","learning_add","note_add","reopen"],VD=new Set(GD),WD=new Set(BD),YD=new Set(["actual_result","affected_version","assignee","blocked_by","blocked_reason","close_reason","confidence","customer_impact","definition_of_ready","dependencies","docs","environment","expected_result","files","fixed_version","goal","impact","learnings","notes","objective","order","outcome","parent","release","reminders","reporter","repro_steps","resolution","reviewer","severity","sprint","tests","test_runs","unblock_note","updated_at","value","why_now"]);function KD(e){let t=e.path.split("/").filter(Boolean);return t[0]==="metadata"||t[0]==="front_matter"?t[1]:t[0]==="body"?"body":void 0}function Ln(e){return e.event_class==="substantive"||e.event_class==="maintenance"?e.event_class:VD.has(e.op)?"maintenance":WD.has(e.op)||e.op!=="update"?"substantive":Array.isArray(e.patch)&&e.patch.length>0&&e.patch.every(t=>{let r=KD(t);return r!==void 0&&YD.has(r)})?"maintenance":"substantive"}(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]="6e88d6b7-aa5f-5515-8ea4-481916b12ef1")}catch{}})();var oa="changed_fields",XD="changed_field_count",du="rows",JD=new Set(["apply","rollback"]),dh=new Set(["deleted","would_delete"]),ah=256,ch={start_task:["claim","update"],pause_task:["update","release"],close_task:["close","release"]};function ZD(e,t){if(!ze(e)||typeof e.action!="string"||typeof e.id!="string"||e.id.length===0)return null;let r=Object.hasOwn(ch,e.action)?ch[e.action]:void 0;if(!r||!r.every(i=>{let s=e[i];return ze(s)&&ze(s.item)&&s.item.id===e.id&&Array.isArray(s.changed_fields)&&s.changed_fields.every(a=>typeof a=="string")}))return null;let n=e[r.at(-1)],o=fh(n);return t.idOnly?o:!t.compactEnvelope&&t.changedFields!=="compact"?null:{...e,...t.compactEnvelope?{...o,changed_field_count:new Set(r.flatMap(i=>e[i].changed_fields)).size}:{},...Object.fromEntries(r.map(i=>[i,ni(e[i],t)]))}}function lh(e){return typeof e!="string"||e.length<=ah?e:`${e.slice(0,ah-1)}\u2026`}function QD(e){if(!ze(e))return null;let t={...e};return t.reason=lh(t.reason),ze(t.previous_terminal)&&(t.previous_terminal=Object.fromEntries(Object.entries(t.previous_terminal).map(([r,n])=>[r,lh(n)]))),t}function ze(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function uh(e){let t=e[oa];if(!Array.isArray(t))return null;let r=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[n,o]of Object.entries(e))n!==oa&&(r[n]=o);return r[XD]=t.length,r}function eP(e){return"item"in e&&Array.isArray(e[oa])}function tP(e){return typeof e.mode=="string"&&JD.has(e.mode)&&Array.isArray(e[du])}function rP(e,t){let r=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(r,e),r[du]=t,r}function fh(e){if(!ze(e))return null;let t=ze(e.item)?e.item:ze(e.plan)?e.plan:null;if(t===null)return null;let r=typeof t.id=="string"?t.id:void 0,n=typeof e.outcome=="string"&&dh.has(e.outcome)?e.outcome:typeof t.status=="string"?t.status:void 0;return r?n?{id:r,status:n,...typeof e.deleted=="boolean"?{deleted:e.deleted}:{}}:{id:r}:null}function nP(e){if(!ze(e)||!ze(e.item)||typeof e.item.id!="string")return null;let t=e[oa];if(!Array.isArray(t))return null;let r={id:e.item.id,...typeof e.outcome=="string"&&dh.has(e.outcome)?{status:e.outcome}:typeof e.item.status=="string"?{status:e.item.status}:{},...typeof e.deleted=="boolean"?{deleted:e.deleted}:{},...typeof e.previous_status=="string"?{previous_status:e.previous_status}:{},changed_field_count:t.length};return oP(e,e.item,r),r}function oP(e,t,r){let n=typeof e.close_reason=="string"?e.close_reason:typeof t.close_reason=="string"?t.close_reason:void 0;n!==void 0&&(r.close_reason=n);let o=QD(e.recurrence);if(o!==null&&(r.recurrence=o),Array.isArray(e.warnings)&&e.warnings.length>0&&(r.warnings=e.warnings),ze(e.recovery)&&(r.recovery=e.recovery),typeof e.claimed_by=="string"||typeof e.released_by=="string")for(let i of["claimed_by","released_by","previous_assignee","forced","skipped","available","attempts","suggestions"])Object.hasOwn(e,i)&&(r[i]=e[i])}function iP(e){let t=tP(e)?e[du]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let r=!1,n=t.map(o=>{if(!ze(o))return o;let i=uh(o);return i?(r=!0,i):o});return r?{projected:rP(e,n),changed:!0}:{projected:e,changed:!1}}function ni(e,t={}){let r=ZD(e,t);if(r!==null)return r;if(t.idOnly===!0){let c=fh(e);if(c!==null)return c}if(t.compactEnvelope===!0){let c=nP(e);if(c!==null)return c}if((t.changedFields??"full")==="full"||!ze(e))return e;let o=!1,i=e,s=eP(e)?uh(e):null;s!==null&&(i=s,o=!0);let a=iP(i);return a.changed&&(i=a.projected,o=!0),o?i:e}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4f014bd9-39b6-5017-93ed-f0e7fba8497a")}catch{}})();var ph=e=>{let t='"',r=0;for(let n of e){if(n==="\\"){r+=1;continue}t+="\\".repeat(n==='"'?r*2+1:r),t+=n,r=0}return`${t}${"\\".repeat(r*2)}"`},mh=(e,t=process.platform)=>(t==="win32"?/^[A-Za-z0-9._:/\\@=-]+$/:/^[A-Za-z0-9._:/@=-]+$/).test(e)?e:t==="win32"?ph(e):`"${e.replace(/(["\\$`])/g,"\\$1")}"`,Lt=(e,t=process.platform)=>{let r=e.map(n=>mh(n,t)).join(" ");return r.length>0?`pm ${r}`:"pm"};(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]="b18eefc1-0d1d-5c9c-b98a-b96771070301")}catch{}})();var _h=new Set(["--pm-path","--path","--author","--output-include","--output-limit","--output-budget","--output-format","--output-session","--output-cursor"]),sP=new Set(["--no-extensions","--no-pager","--json","--quiet","--lean","--token-accounting","--output-row-contract","--all"]);function aP(e){let t=e.indexOf("=");return t>0&&_h.has(e.slice(0,t))}function cP(e,t){return typeof t!="string"?!1:e==="--path"||e==="--pm-path"||!t.startsWith("-")}function ia(e){for(let t=0;t<e.length;t+=1){let r=e[t];if(r==="--")return;if(_h.has(r)){t+=cP(r,e[t+1])?1:0;continue}if(!(aP(r)||sP.has(r)||r==="--profile"||r==="--id-only"||r==="--explain")&&!r.startsWith("-"))return t}}function W9(e){let t=ia(e);return t===void 0?void 0:e[t].trim().toLowerCase()}(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]="49de148c-3c60-547b-b3bc-d0a71e013dc6")}catch{}})();var lP=new Set(["--literal","--regex","--replacement"]);function dP(e){let t=ia(e);if(t===void 0)return!1;if(e[t]==="history-redact")return!0;if(e[t]!=="history")return!1;let r=e.slice(t+1),n=ia(r);return n!==void 0&&r[n]==="redact"}function J9(e){if(!dP(e))return[...e];let t=[],r=!1;for(let n of e){if(r){t.push("[redacted]"),r=!1;continue}r=!1;let o=n.indexOf("="),i=o>=0?n.slice(0,o):n;if(!lP.has(i)){t.push(n);continue}if(o>=0){t.push(`${i}=[redacted]`);continue}t.push(i),r=!0}return 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]="6c87b004-3647-531a-9599-d37fd91c2807")}catch{}})();var bh=new WeakMap;function t6(e,t){bh.set(e,new Set(t))}var gh='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',uP={context:{row_keys:["high_level","low_level"],fields:"supported"},get:{row_keys:["children"],fields:"supported"},list:{row_keys:["items"],fields:"supported"},next:{row_keys:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],fields:"unsupported"},search:{row_keys:["items"],fields:"supported"},activity:{row_keys:["activity_digest","compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},fP=[{command:"activity",complete_mode:"full",omissions_by_mode:{digest:[{name:"event_rows",restore_with:"--raw"}],compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function r6(e,t,r){if(e&&t)throw new g(`${r} cannot be combined with --full`,_.USAGE)}function ht(e,t=new Set){let r=e.filter(n=>!t.has(n.name)).map(n=>({...n}));return{has_omissions:r.length>0,omitted_field_group_count:r.length,omitted_field_groups:r}}function n6(e,t){let r=fP.find(o=>o.command===e);if(r===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===r.complete_mode)return ht([]);let n=r.omissions_by_mode[t];if(n===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return ht(n)}var pP=[{name:"hierarchy",restore_with:"--depth standard"},{name:"activity",restore_with:"--depth standard"},{name:"progress",restore_with:"--depth standard"},{name:"blockers",restore_with:"--depth standard"},{name:"recently_created",restore_with:"--depth standard"},{name:"unparented",restore_with:"--depth standard"},{name:"files",restore_with:"--depth deep"},{name:"workload",restore_with:"--depth standard"},{name:"staleness",restore_with:"--depth deep"},{name:"tests",restore_with:"--depth deep"},{name:"workspace_memory",restore_with:"--depth deep"}];function qe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var mP=new Set([void 0,"tabular_when_uniform"]),_P=new Set(["collection","none"]),gP=new Set(["supported","unsupported"]);function yh(e,t){return Array.isArray(e)&&(t||e.length>0)&&e.every(r=>typeof r=="string"&&r.length>0)&&new Set(e).size===e.length}function yP(e){return qe(e)&&typeof e.command=="string"&&e.command.trim().length>0&&_P.has(e.row_kind)&&yh(e.row_keys,!0)&&(e.continuation_row_keys===void 0||yh(e.continuation_row_keys,!1))&&gP.has(e.fields)&&mP.has(e.toon_encoding)&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var hP={ancestors:["ids"],descendants:["ids"],predecessors:["ids"],successors:["ids"],paths:["paths"],impact:["affected"],audit:["findings"],communities:["communities"],redundancy:["redundant"],dominators:["bottlenecks"],slack:["rows"],centrality:["rows"],articulation:["articulation_points","bridges"],plan:["steps"]},bP={context:["sections_included","high_level","low_level"],get:["item"],list:["items","projection"],next:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items","projection"],activity:["activity_digest","compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function wP(e,t){let r=e.trim().toLowerCase().split(/\s+/u,1)[0],n=r?.startsWith("list-")?"list":r;if(n==="graph"){let s=typeof t.subcommand=="string"?t.subcommand:"";if(s.length===0)return;let a=hP[s];if(a===void 0)return;let c=a.filter(l=>Array.isArray(t[l])||qe(t[l]));return{command:"graph",row_kind:c.length>0?"collection":"none",row_keys:c,fields:"unsupported",...c.length>0?{jq_selector:gh}:{},toon_encoding:"tabular_when_uniform"}}let o=uP[n],i=bP[n];return o===void 0||i===void 0||!i.some(s=>Object.hasOwn(t,s))?void 0:(()=>{let s=o.row_keys.filter(a=>{let c=a.split(".").reduce((l,d)=>qe(l)?l[d]:void 0,t);return Array.isArray(c)||qe(c)});return{command:n,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:gh}:{},toon_encoding:"tabular_when_uniform"}})()}function vP(e){if(!qe(e.projection)||typeof e.projection.mode!="string"||e.projection.mode.trim().length===0)return;let t=e.projection.declared_field_groups,r=e.projection.included_field_groups;if(!Array.isArray(t)||!Array.isArray(r))return;let n=t.filter(s=>qe(s)&&typeof s.name=="string"&&s.name.trim().length>0&&typeof s.restore_with=="string"&&s.restore_with.trim().length>0),o=r.filter(s=>typeof s=="string");if(n.length!==t.length||o.length!==r.length)return;let i=new Set(n.map(s=>s.name));if(!(i.size!==n.length||new Set(o).size!==o.length||o.some(s=>!i.has(s))))return ht(n,new Set(o))}function EP(e){if(!Array.isArray(e.sections_included))return;let t=ht(pP,new Set(e.sections_included.filter(r=>typeof r=="string")));return qe(e.summary)&&e.summary.scope==="matching_items"&&(t.summary_scope="matching_items"),t}function TP(e){if(!qe(e.item))return;let t=e.item,r=["comments","notes","learnings","files","tests","docs","reminders","events"],n=["body","children","claim_state","linked","schedule"],o=bh.get(e),i=a=>r.includes(a)||a==="body"?t:e,s=["body",...r,...n.slice(1)].filter(a=>o===void 0||o.has(a)||Object.hasOwn(i(a),a)).map(a=>({name:a,restore_with:`--fields ${a}`}));return ht(s,new Set(s.flatMap(({name:a})=>Object.hasOwn(i(a),a)?[a]:[])))}function hh(e){if(qe(e.projection))return ht([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function kP(e){if(!qe(e.projection))return ht([]);if(typeof e.projection.mode=="string")return ht([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function AP(e){if(!(!qe(e.selected)||typeof e.selected.summary!="boolean"))return ht([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function SP(e,t){let r=vP(t);if(r!==void 0)return r;let[n]=e.split(/\s+/u,1);if(n==="context")return EP(t);if(n==="get")return TP(t);if(n==="list"||n.startsWith("list-"))return hh(t);if(n==="search")return hh(t)??ht([{name:"projection_metadata",restore_with:"--full"}]);if(n==="health")return kP(t);if(n==="contracts")return AP(t)}function wh(e,t){if(e===void 0||!qe(t))return t;let r=SP(e,t),n=t.row_contract,o=yP(n)?n:wP(e,t),i=o!==void 0?{...t,row_contract:o}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;return qe(i.omission_receipt)||r===void 0?i:{...i,omission_receipt:r}}import{createHash as OP}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="15037266-75b7-5f8d-9565-e7848e720a49")}catch{}})();var uu=1,Eh=4096,CP=/^[A-Za-z0-9_-]+$/;function vh(e){return e.replace(/^--/u,"").replace(/[-_]([a-z0-9])/gu,(t,r)=>r.toUpperCase())}function l6(e,t){let r=new Set;for(let n of t)if(n.cursor_semantics==="presentation"){r.add(vh(n.flag));for(let o of n.aliases??[])r.add(vh(o))}return Object.fromEntries(Object.entries(e).filter(([n])=>!r.has(n)))}function d6(e,t){return OP("sha256").update(e).update("\0").update(L(t)).digest("hex").slice(0,24)}function oi(e,t,r,n){return Buffer.from(JSON.stringify({version:uu,fingerprint:e,after_id:t,...r===void 0?{}:{after_index:r},...n===void 0?{}:{snapshot:n}})).toString("base64url")}function qr(e){return new g(e,_.USAGE,{code:"invalid_query_cursor",nextSteps:["Repeat the original query without --after to obtain a fresh cursor."]})}function IP(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e;return t.version===uu&&typeof t.fingerprint=="string"&&typeof t.after_id=="string"&&t.after_id.length>0&&(t.after_index===void 0||Number.isSafeInteger(t.after_index)&&t.after_index>=0)&&(t.snapshot===void 0||typeof t.snapshot=="string"&&t.snapshot.length>0)}function fu(e){if(typeof e!="string")throw qr("Query cursor is malformed.");let t=e.trim();if(t.length===0||t.length>Eh||!CP.test(t))throw qr("Query cursor is malformed.");let r;try{r=JSON.parse(Buffer.from(t,"base64url").toString("utf8"))}catch{throw qr("Query cursor is malformed.")}if(!IP(r))throw qr("Query cursor version or payload is unsupported.");return r}function pu(e,t){let r=fu(e);if(r.fingerprint!==t)throw qr(`Query cursor does not match the current filters, sort, or query (${r.fingerprint} != ${t}).`);return{after_id:r.after_id,...r.after_index===void 0?{}:{after_index:r.after_index},...r.snapshot===void 0?{}:{snapshot:r.snapshot}}}function u6(e,t){return pu(e,t).after_id}function RP(e,t,r,n){if(t===void 0)return 0;let o=pu(t,r),i=e.findIndex(s=>n(s)===o.after_id);if(i<0){if(o.after_index!==void 0)return Math.min(o.after_index,e.length);throw qr(`Query cursor item ${o.after_id} is no longer present in this result set.`)}return i+1}function f6(e,t){if(t.cursor!==void 0&&pu(t.cursor,t.fingerprint).snapshot!==t.snapshot)throw qr("Query cursor does not match the requested snapshot.");let r=RP(e,t.cursor,t.fingerprint,t.readId),n=e.slice(r,r+t.limit),o=n.length>0&&r+n.length<e.length,i=n.at(-1);return{rows:n,has_more:o,...o&&i!==void 0?{next_cursor:oi(t.fingerprint,t.readId(i),r+n.length-1,t.snapshot)}:{}}}var p6=Object.freeze({version:uu,max_length:Eh});(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]="85bc6b10-700a-5d06-970f-d544833dd059")}catch{}})();var xP=new Set(["applied_bound","completeness","budget_retention_policy","continuation_contract","continuation_kind","continuation_path","filters","omission_receipt","output_budget_truncation","projection","read_output","read_session","row_contract","sorting"]);function Fn(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Th(e,t){let r=e;for(let n of t.split("."))if(Array.isArray(r)){if(!/^\d+$/u.test(n))return;r=r[Number(n)]}else{if(!Fn(r))return;r=r[n]}return r}function mu(e,t,r){let n=t.split("."),o=(i,s)=>{if(s===n.length)return r;let a=n[s];if(Array.isArray(i)){let l=Number(a),d=[...i];return d[l]=o(i[l],s+1),d}let c=i;return{...c,[a]:o(c[a],s+1)}};return o(e,0)}function kh(e,t,r){let n=$n(e).find(i=>i.path===t);if(!n)return e;let o=Array.isArray(n.value)?n.value.slice(r):Object.fromEntries(Object.entries(n.value).slice(r));return mu(e,t,o)}function sa(e){let t=e.row_contract;return Fn(t)&&Array.isArray(t.row_keys)?t.row_keys.filter(r=>typeof r=="string"&&r.trim().length>0):Object.entries(e).filter(([,r])=>Array.isArray(r)).map(([r])=>r)}function NP(e){let t=e.row_contract;return Fn(t)&&Array.isArray(t.continuation_row_keys)?t.continuation_row_keys.filter(r=>typeof r=="string"&&r.trim().length>0):sa(e)}function sr(e){return sa(e).flatMap(t=>{let r=Th(e,t);return Array.isArray(r)||Fn(r)?[{path:t,value:r}]:[]})}function $n(e){return NP(e).flatMap(t=>{let r=Th(e,t);return Array.isArray(r)||Fn(r)?[{path:t,value:r}]:[]})}function aa(e){let t=sr(e),r=new Set(t.map(o=>o.path)),n=(o,i)=>{if(Array.isArray(o)){r.has(i)||t.push({path:i,value:o}),o.forEach((s,a)=>n(s,`${i}.${a}`));return}if(Fn(o))for(let[s,a]of Object.entries(o))i.length===0&&xP.has(s)||n(a,i.length===0?s:`${i}.${s}`)};return n(e,""),t}function ca(e){return sr(e).reduce((t,r)=>t+(Array.isArray(r.value)?r.value.length:Object.keys(r.value).length),0)}function ii(e,t){let r=e;for(let n of sr(r)){let o=Array.isArray(n.value)?n.value.map((i,s)=>t(i,n.path,s)):Object.fromEntries(Object.entries(n.value).map(([i,s],a)=>[i,t(s,n.path,a)]));r=mu(r,n.path,o)}return r}function Ah(e,t){let r=e,n=!1;for(let o of sr(r)){let i=Array.isArray(o.value)?o.value:Object.entries(o.value);if(i.length<=t)continue;n=!0;let s=Array.isArray(o.value)?i.slice(0,t):Object.fromEntries(i.slice(0,t));r=mu(r,o.path,s)}return{result:r,truncated:n}}import{AsyncLocalStorage as wL}from"node:async_hooks";import{stripVTControlCharacters as eM}from"node:util";import{createHash as Oh}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8b0d8654-211b-57bf-852f-8a153849e8fd")}catch{}})();var DP=["policies","policy-put","policy-remove","policy-mode","policy-check","policy-approve","policy-presets"],Sh=256,_u=64;function Ne(e){throw new g(`Invalid workflow policy: ${e}`,_.USAGE,{code:"workflow_policy_invalid",nextSteps:["Inspect pm schema policies and correct the declaration using pm schema policy-put."]})}function Ft(e,t,r){if(typeof e!="object"||e===null||Array.isArray(e))return Ne(`${r} must be an object`);let n=e;return Object.keys(n).some(o=>!t.includes(o))?Ne(`${r} contains an unknown key`):n}function Hr(e,t,r=128){return typeof e!="string"||!e.trim()||e.length>r?Ne(`${t} must be nonempty text of at most ${r} characters`):e.trim()}function si(e,t){if(!Array.isArray(e)||e.length===0||e.length>_u)return Ne(`${t} requires 1-${_u} terms`);let r=e.map(n=>Hr(n,t));return t==="fields"&&r.some(n=>!/^[a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*){0,7}$/.test(n)||n.split(".").some(o=>["__proto__","constructor","prototype"].includes(o)))?Ne("fields must be safe metadata paths of at most eight segments"):[...new Set(r)]}function PP(e){let t=Ft(e,["kind","fields","authors","allowed"],"rule");return t.kind==="transition"?(Ft(t,["kind","allowed"],"transition rule"),!Array.isArray(t.allowed)||t.allowed.length>_u?Ne("transition.allowed must be a bounded array"):{kind:"transition",allowed:t.allowed.map(r=>!Array.isArray(r)||r.length!==2?Ne("transition pairs need two statuses"):[Hr(r[0],"from"),Hr(r[1],"to")])}):t.kind==="authors"?(Ft(t,["kind","authors"],"authors rule"),{kind:"authors",authors:si(t.authors,"authors")}):t.kind==="require_fields"?(Ft(t,["kind","fields"],"require_fields rule"),{kind:"require_fields",fields:si(t.fields,"fields")}):t.kind==="field_writers"||t.kind==="approval"?(Ft(t,["kind","fields","authors"],"field rule"),{kind:t.kind,fields:si(t.fields,"fields"),authors:si(t.authors,"authors")}):Ne("unknown rule kind")}function MP(e){let t={},r=Ft(e,["types","tags","statuses","operations","parents","dependency"],"subject");for(let n of["types","tags","statuses","operations","parents"])r[n]!==void 0&&(t[n]=si(r[n],n));if(r.dependency!==void 0){let n=Ft(r.dependency,["kind","id"],"dependency");t.dependency={kind:Hr(n.kind,"dependency kind"),...n.id===void 0?{}:{id:Hr(n.id,"dependency id")}}}return t}function LP(e){let t=Ft(e,["id","description","subject","effect","rule"],"policy"),r=Hr(t.id,"id");return/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(r)?t.effect!==void 0&&(typeof t.effect!="string"||!["advise","warn","refuse"].includes(t.effect))?Ne("effect must be advise, warn, or refuse"):{id:r,rule:PP(t.rule),...t.subject===void 0?{}:{subject:MP(t.subject)},...t.description===void 0?{}:{description:Hr(t.description,"description",500)},...t.effect===void 0?{}:{effect:t.effect}}:Ne("id must be a stable token")}function gu(e){let t=Ft(e,["version","enforcement","policies"],"document");if(t.version!==1)return Ne("unsupported version");if(t.enforcement!==void 0&&t.enforcement!=="advise"&&t.enforcement!=="refuse")return Ne("enforcement must be advise or refuse");if(!Array.isArray(t.policies)||t.policies.length>Sh)return Ne(`policies must contain at most ${Sh} declarations`);let r=t.policies.map(LP);return new Set(r.map(n=>n.id)).size!==r.length?Ne("duplicate policy id"):{version:1,enforcement:t.enforcement??"advise",policies:r}}function la(e,t){let r=e;for(let n of t.split(".")){if(typeof r!="object"||r===null||!Object.hasOwn(r,n))return;r=r[n]}return r}function FP(e){return e==null?!1:typeof e=="string"?e.trim().length>0:typeof e=="number"?Number.isFinite(e):Array.isArray(e)?e.length>0:typeof e=="object"?Object.keys(e).length>0:!0}function Ch(e){return Oh("sha256").update(L(e)).digest("hex")}function $P(e,t){let r=e.rule.kind==="approval"?e.rule.fields:[];return Oh("sha256").update(L({id:t.id,fields:r.map(n=>[n,la(t,n)])})).digest("hex")}function jP(e,t){return Array.isArray(t)&&t.some(r=>typeof r=="object"&&r!==null&&"kind"in r&&r.kind===e.kind&&(e.id===void 0||"id"in r&&r.id===e.id))}function UP(e,t,r){return!(e.types&&!e.types.some(n=>n.toLowerCase()===String(t.type).toLowerCase())||e.statuses&&!e.statuses.includes(String(t.status))||e.operations&&!e.operations.includes(r)||e.parents&&!e.parents.includes(String(t.parent))||e.tags&&(!Array.isArray(t.tags)||!e.tags.some(n=>t.tags.includes(n)))||e.dependency&&!jP(e.dependency,t.dependencies))}function yu(e,t){if(t.completeness_only&&(e.rule.kind!=="require_fields"||e.subject?.operations!==void 0)||e.rule.kind==="approval"&&t.before===null)return!1;let r=e.subject??{},n=t.after?.status??t.before?.status;return[t.before,t.after].some(o=>o!==null&&UP(r,{...o,status:n},t.operation))}function zP(e,t,r,n){let o=["type","tags","parent","dependencies"].some(s=>!le(t.before?.[s],t.after?.[s]));return t.after&&(t.completeness_only||r||n||o)?e.filter(s=>!FP(la(t.after,s))):[]}function qP(e,t,r,n){let o=t.after??t.before,i=$P(e,o);return t.approvals?.some(s=>s.policy_fingerprint===n&&s.content_fingerprint===i&&s.author!==t.author&&r.includes(s.author))??!1}function HP(e,t,r){let n=e.rule,o=t.before?.status!==t.after?.status,i="fields"in n&&n.fields.some(s=>!le(la(t.before,s),la(t.after,s)));switch(n.kind){case"require_fields":{let s=zP(n.fields,t,o,i);return{satisfied:s.length===0,missing_fields:s,remediation:"Supply the declared required fields before this lifecycle transition."}}case"transition":return{satisfied:!o||n.allowed.some(([s,a])=>s===String(t.before?.status??"$create")&&a===String(t.after?.status??"$delete")),missing_fields:[],remediation:"Choose a declared allowed transition; inspect pm schema policies."};case"authors":return{satisfied:n.authors.includes(t.author),missing_fields:[],remediation:"Have a declared workflow actor perform this operation."};case"field_writers":return{satisfied:!i||n.authors.includes(t.author),missing_fields:[],remediation:"Have a declared field writer change the protected fields."};case"approval":return{satisfied:!o||qP(e,t,n.authors,r),missing_fields:[],remediation:`Record an independent approval with pm schema policy-approve <item-id> --policy ${e.id} after preparing the reviewed fields.`}}}function Ih(e,t,r){let n=e.policies.filter(o=>yu(o,t)).map(o=>{let i=o.effect??"advise",s=r(o);return{policy_id:o.id,policy_fingerprint:s,rule:o.rule.kind,effect:i==="refuse"&&e.enforcement!=="refuse"?"warn":i,...HP(o,t,s)}});return{allowed:!n.some(o=>!o.satisfied&&o.effect==="refuse"),decisions:n,warnings:n.filter(o=>!o.satisfied).map(o=>`workflow_policy:${o.effect}:${o.policy_id}:${o.rule}`)}}function Rh(e,t){return Ih(e,t,Ch)}function w6(e){let t=gu(e),r=new Map(t.policies.map(n=>[n,Ch(n)]));return n=>Ih(t,n,o=>r.get(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]="1dd71b26-fc38-5304-9156-f32b57cc1cc0")}catch{}})();var xh=[...mt],Nh=[...mn],Dh=[...Zi],GP=[...Qi],BP=[...es],Ph=[...ts],ai=["init","config","extension","package","packages","install","upgrade","create","item","copy","focus","list","list-all","list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled","aggregate","context","ctx","get","graph","search","duplicates","eval","next","history","events","history-redact","history-repair","history-compact","history-attest","history-author-acknowledge","merge","schema","profile","activity","restore","update","update-many","close","close-many","delete","append","comments","notes","learnings","files","docs","deps","plan","test","test-all","telemetry","stats","health","validate","assurance","gc","workspace","contracts","claim","release","start-task","pause-task","close-task","meet","event","remind","help"],A6=["ancestors","descendants","predecessors","successors","paths","impact","analyze","audit","communities","redundancy","dominators","slack","centrality","articulation","plan","index"],VP=["install","reconcile","report","driver"],Mh=["init","install","uninstall","explore","manage","describe","reload","doctor","catalog","adopt","adopt-all","activate","deactivate"],Lh=["upgrade"],Fh=["reopen"],hu={help:"Commander help rendering has no SDK operation result.",packages:"The plural package alias only renders package-oriented help."},at=Object.freeze(ai.flatMap(e=>e in hu?[]:e==="extension"||e==="package"?[...Mh.map(t=>`${e}-${t}`),...e==="package"?Lh.map(t=>`package-${t}`):[],e]:e==="item"?Fh.map(t=>`item-${t}`):[e])),$h=Object.freeze(go.filter(e=>e.lifecycle==="deprecated"&&e.registration==="commander"&&at.includes(e.alias)).map(e=>e.alias)),WP=Object.freeze(at.filter(e=>!$h.includes(e)));function YP(e=ai,t=at,r=hu){let n=new Set(t),o=new Set(e);return{missing_cli_actions:e.filter(i=>!n.has(i)&&!t.some(s=>s.startsWith(`${i}-`))&&r[i]===void 0),waived_cli_actions:e.filter(i=>!n.has(i)&&!t.some(s=>s.startsWith(`${i}-`))&&r[i]!==void 0),stale_waivers:Object.keys(r).filter(i=>!o.has(i)||n.has(i)||t.some(s=>s.startsWith(`${i}-`)))}}function KP(e){return at.includes(e)}function XP(e){return xh.includes(e)}function JP(e){return Nh.includes(e)}function ZP(e){return Dh.includes(e)}function QP(e){return Ph.includes(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b4036040-c0b8-5d01-b490-3405722fd1c5")}catch{}})();var Uh=["full","compact","brief","summary","counts"],tM=["mutation","read","discovery","governance"],bu=["error","warning","validation_summary","recovery_bundle"],zh=["full","omit_explanation","limit_collections","compact_recovery","action_only"],rM=new Set(["append","claim","close","close-many","close-task","comments","config","copy","create","delete","docs","event","files","focus","history-author-acknowledge","history-compact","history-redact","history-repair","init","item","learnings","meet","notes","pause-task","release","remind","restore","schema","start-task","update","update-many"]),nM=new Set(["contracts","extension","help","install","package","packages","profile","upgrade"]),oM=new Set(["gc","health","merge","stats","telemetry","test","test-all","validate"]),iM={mutation:2e3,read:4e3,discovery:3e3,governance:6e3},sM=3,aM=2,cM=192,lM={error:{text:768,json:2e3},warning:{text:768,json:2e3},validation_summary:{text:1500,json:3e3},recovery_bundle:{text:768,json:2e3}},qh=bu.map(e=>({diagnostic_class:e,default_max_estimated_tokens_by_format:lM[e],minimum_max_estimated_tokens:cM,degradation_ladder:zh,corrective_action_paths:["required","recovery.suggested_retry","recovery.suggested_retry_args","recovery.next_best_command","next_steps[0]"],token_estimate:"ceil(utf8_bytes / 4)"})),dM=new Map(qh.map(e=>[e.diagnostic_class,e]));function Hh(e){let[t=""]=Ke(e).split(/\s+/u);return rM.has(t)?"mutation":nM.has(t)?"discovery":oM.has(t)?"governance":"read"}function wu(e,t=Hh(e)){let r=e.trim().replace(/\s+/gu," ");if(r.length===0)throw new TypeError("command must be a non-empty command path");let n=iM[t];return Gh({command:r,budget_class:t,default_max_estimated_tokens:n,default_max_estimated_tokens_by_format:{toon:n,json:Math.ceil(n*sM/aM)},degradation_ladder:Uh,allows_unbounded_opt_out:!0,token_estimate:"ceil(utf8_bytes / 4)"})}function Gh(e){if(!Number.isSafeInteger(e.default_max_estimated_tokens)||e.default_max_estimated_tokens<=0)throw new RangeError("default_max_estimated_tokens must be a positive safe integer");for(let[t,r]of Object.entries(e.default_max_estimated_tokens_by_format))if(!Number.isSafeInteger(r)||r<=0)throw new RangeError(`default_max_estimated_tokens_by_format.${t} must be a positive safe integer`);return e}var Bh=ai.map(e=>wu(e)),uM=new Map(Bh.map(e=>[e.command,e]));function vu(e,t={}){let r=e.trim().replace(/\s+/gu," "),[n]=Ke(r).split(" "),o=uM.get(n);return o?{...o,command:r}:t.generateFallback?wu(r):null}function cr(e){return Math.ceil(Math.max(0,e)/4)}function Eu(e){let t=dM.get(e);if(t===void 0)throw new TypeError(`diagnosticClass must be one of: ${bu.join(", ")}`);return t}function ar(e){return cr(Buffer.byteLength(JSON.stringify(e,null,2),"utf8"))}function fM(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Tu(e){if(!fM(e))return;let t={};for(let r of["suggested_retry","suggested_retry_args","next_best_command","allowed_values","candidate_commands","missing","missing_required_fields","option_scope","retry_after_ms"]){let n=e[r];Array.isArray(n)?t[r]=r==="suggested_retry_args"?n:n.slice(0,3):n!==void 0&&(t[r]=n)}return Object.keys(t).length>0?t:void 0}function pM(e,t){return typeof e!="string"||e.length<=t?e:`${e.slice(0,Math.max(1,t-3))}...`}function Gr(e,t){if(Buffer.byteLength(e,"utf8")<=t)return e;let r="...",n=Array.from(e),o=0,i=n.length;for(;o<i;){let s=Math.ceil((o+i)/2),a=`${n.slice(0,s).join("")}${r}`;Buffer.byteLength(a,"utf8")<=t?o=s:i=s-1}return`${n.slice(0,o).join("")}${r}`}function Vh(e){let t={};for(let r of["code","required","recovery","next_steps","exit_code","type","title","detail","why","examples"])Object.hasOwn(e,r)&&e[r]!==void 0&&(t[r]=e[r]);for(let[r,n]of Object.entries(e))r!=="__proto__"&&!Object.hasOwn(t,r)&&(t[r]=n);return t}var mM=new Set(["limit_collections","compact_recovery","action_only"]),_M=new Set(["compact_recovery","action_only"]);function gM(e){let t={code:typeof e.code=="string"?e.code:"diagnostic",required:pM(e.required,160)??"Inspect the diagnostic code and retry with corrected input."},r=Tu(e.recovery);return r!==void 0?t.recovery=r:Array.isArray(e.next_steps)&&(t.next_steps=e.next_steps.slice(0,1)),e.exit_code!==void 0&&(t.exit_code=e.exit_code),e.type!==void 0&&(t.type=e.type),t}function yM(e,t){let r=structuredClone(e);if(t!=="full"&&(delete r.why,delete r.examples),mM.has(t))for(let[n,o]of Object.entries(r))Array.isArray(o)&&(r[n]=o.slice(0,3));if(_M.has(t)){let n=Tu(r.recovery);n?r.recovery=n:delete r.recovery}return t!=="action_only"?Vh(r):gM(r)}function jn(e,t){let r={...e,diagnostic_output:{...t,estimated_tokens:0}};for(let n=0;n<4;n+=1){let o=ar(r),i=r.diagnostic_output;if(i.estimated_tokens===o)break;i.estimated_tokens=o}return r}function hM(e,t,r){let n=jn(e,t);for(let i of["recovery","exit_code"])ar(n)<=r||e[i]===void 0||(delete e[i],n=jn(e,t));let o=40;for(;ar(n)>r&&o>4;)o-=4,e.code=Gr(String(e.code),o),e.required=Gr(String(e.required),o),n=jn(e,t);return n}function bM(e,t){let r=e.diagnostic_output,{estimated_tokens:n,...o}=r,i=o.omitted_fields.slice(0,8).map(u=>Gr(u,32)),s={...o,omitted_fields:i,...o.omitted_fields.length>i.length?{omitted_fields_overflow_count:o.omitted_fields.length-i.length}:{}},a=Tu(e.recovery),c=a&&ar(a)<=48?a:void 0,l={code:Gr(String(e.code),320),required:Gr(String(e.required),320),...c?{recovery:c}:{},...e.exit_code!==void 0?{exit_code:e.exit_code}:{}},d=jn(l,s);for(;ar(d)>t&&s.omitted_fields.length>0;)s.omitted_fields.pop(),s.omitted_fields_overflow_count=o.omitted_fields.length-s.omitted_fields.length,d=jn(l,s);return d=hM(l,s,t),d}function wM(e,t={}){let r=e,n=t.diagnosticClass??"error",o=Eu(n),i=t.maxEstimatedTokens;if(i!==void 0&&(!Number.isSafeInteger(i)||i<o.minimum_max_estimated_tokens))throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${o.minimum_max_estimated_tokens}`);let s=i??o.default_max_estimated_tokens_by_format.json,a=ar(r),c=Object.keys(r);if(a<=s)return Vh(structuredClone(r));let l;for(let[d,u]of o.degradation_ladder.entries()){let f=yM(r,u),p=c.filter(h=>!Object.hasOwn(f,h)),m=jn(f,{diagnostic_class:n,format:"json",budget:s,budget_source:i===void 0?"default":"explicit",original_estimated_tokens:a,truncated:d>0,degradation_steps:o.degradation_ladder.slice(0,d+1),omitted_fields:p});if(l=m,ar(m)<=s)break}return ar(l)>s&&(l=bM(l,s)),l}function jh(e){return eM(e).replace(/\r\n/gu,`
27
- `).replace(/[^\P{Cc}\n]/gu," ")}function vM(e,t,r={}){let n=r.diagnosticClass??"error",o=Eu(n),i=r.maxEstimatedTokens;if(i!==void 0&&(!Number.isSafeInteger(i)||i<o.minimum_max_estimated_tokens))throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${o.minimum_max_estimated_tokens}`);let s=i??o.default_max_estimated_tokens_by_format.text,a=jh(e),c=cr(Buffer.byteLength(a,"utf8")),l=c>s,d=`What is required:
28
- `,f=`
29
-
30
- ${Gr(a.trimStart().split(/\r?\n/u,1)[0].trim(),320)}
31
-
32
- Diagnostic output exceeded its declared ${s}-token ceiling; rerun with structured JSON for the bounded recovery envelope.`,p=jh(t).trim()||"Inspect the diagnostic code and retry with corrected input.",m=Math.max(1,s*4-Buffer.byteLength(`${d}${f}`,"utf8")),h=l?`${d}${Gr(p,m)}${f}`:a;return{output:h,diagnostic_output:{diagnostic_class:n,format:"text",budget:s,budget_source:i===void 0?"default":"explicit",original_estimated_tokens:c,estimated_tokens:cr(Buffer.byteLength(h,"utf8")),truncated:l,degradation_steps:l?[...o.degradation_ladder]:["full"],omitted_fields:l?["explanation","collections"]:[]}}}import{createHash as EM}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="de370088-9285-5b33-8c7f-da8e9bb88286")}catch{}})();var TM=4096,kM=Object.freeze(["queue_draining","queue_entries","queue_exists","queue_high_retry_entries","queue_invalid_rows","queue_max_attempts","queue_rows_total","queue_size_bytes","pending_otel_spans","last_attempted_flush_at","last_failed_flush_at","last_otel_attempt_at","last_otel_failure_at","last_otel_success_at","last_successful_flush_at"]),Yh=Object.freeze({health:Object.freeze({version:3,paths:Object.freeze(["checks"]),ignored_detail_field_names_by_row:Object.freeze({telemetry:kM}),guarantee:"nonvolatile_snapshot_and_stable_configuration"})});function li(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ci(e){return Array.isArray(e)?e.map(ci):li(e)?Object.fromEntries(Object.entries(e).map(([t,r])=>[t,ci(r)])):e}function Wh(e,t){if(!li(e))return ci(e);let r=typeof e.name=="string"?e.name:void 0,n=r!==void 0&&Object.hasOwn(t.ignored_detail_field_names_by_row,r)?t.ignored_detail_field_names_by_row[r]:void 0;return Object.fromEntries(Object.entries(e).map(([o,i])=>o!=="details"||!n||!li(i)?[o,ci(i)]:[o,Object.fromEntries(Object.entries(i).filter(([s])=>!n.includes(s)).map(([s,a])=>[s,ci(a)]))]))}function AM(e,t){return Array.isArray(e)?e.map(r=>Wh(r,t)):Wh(e,t)}function da(e,t,r){let n=r?Yh[r]:void 0,o=n?.paths.includes(e)===!0;return EM("sha256").update(L({path:e,value:o?AM(t,n):t,...o?{fingerprint_policy_version:n.version}:{}})).digest("base64url").slice(0,16)}function ku(e){return Buffer.from(JSON.stringify({v:1,c:e.command,p:e.path,o:e.offset,n:e.total_rows,f:e.fingerprint}),"utf8").toString("base64url")}function Au(e){if(e.length>TM)throw new g("The read-output continuation cursor is malformed or unsupported.",_.USAGE,{code:"read_output_cursor_invalid"});let t;try{t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"))}catch{t=null}if(!li(t)||t.v!==1||bt(String(t.c??""))!==t.c||typeof t.p!="string"||t.p.length===0||!Number.isSafeInteger(t.o)||t.o<0||!Number.isSafeInteger(t.n)||t.n<1||typeof t.f!="string"||t.f.length===0)throw new g("The read-output continuation cursor is malformed or unsupported.",_.USAGE,{code:"read_output_cursor_invalid"});return{version:1,command:t.c,path:t.p,offset:t.o,total_rows:t.n,fingerprint:t.f}}function Kh(e){if(!Array.isArray(e.assertions))return e;let t=r=>!li(r)||r.verdict==="pass"?4:r.verdict==="retired"?3:r.enforcement==="block"?0:r.enforcement==="warn"?1:2;return{...e,assertions:e.assertions.map((r,n)=>({row:r,index:n})).sort((r,n)=>t(r.row)-t(n.row)||r.index-n.index).map(({row:r})=>r),budget_retention_policy:"verdict_priority"}}function Xh(e,t,r){if(!r)return e;if(r.command!==t)throw new g(`The read-output cursor belongs to ${r.command}, not ${t}.`,_.USAGE,{code:"read_output_cursor_command_mismatch"});let n=$n(e).find(i=>i.path===r.path),o=n?Array.isArray(n.value)?n.value.length:Object.keys(n.value).length:0;if(!n||o!==r.total_rows||r.offset>o||da(r.path,n.value,t)!==r.fingerprint)throw new g("The read-output continuation no longer matches the declared row collection; restart the bounded read.",_.USAGE,{code:"read_output_cursor_stale"});return kh(e,r.path,r.offset)}(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]="999accf0-d4e1-5dc4-92a0-4ea7d745ac48")}catch{}})();var Su=256,di=1e4,SM=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$/u,Jh=/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u,OM=new Set(["version","id","token_budget","spent_tokens","seen_item_ids"]),CM=[{valid:e=>e.version===1,reason:"version must equal 1."},{valid:e=>typeof e.id=="string"&&SM.test(e.id),reason:"id must be 1-64 portable identifier characters."},{valid:e=>Number.isSafeInteger(e.token_budget)&&e.token_budget>=Su,reason:`token_budget must be a safe integer of at least ${Su}.`},{valid:e=>Number.isSafeInteger(e.spent_tokens)&&e.spent_tokens>=0&&e.spent_tokens<=e.token_budget,reason:"spent_tokens must be a non-negative safe integer no larger than token_budget."},{valid:e=>Array.isArray(e.seen_item_ids)&&e.seen_item_ids.length<=di&&e.seen_item_ids.every(t=>typeof t=="string"&&Jh.test(t)),reason:`seen_item_ids must contain at most ${di} portable item identifiers.`}];function fa(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ua(e){throw new g(`--output-session ${e}`,_.USAGE,{code:"invalid_read_output_session",field:"outputSession"})}function pa(e){if(e===void 0)return;let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{ua("must be a valid JSON object.")}fa(t)||ua("must be a JSON object.");let r=Object.keys(t).filter(i=>!OM.has(i));r.length>0&&ua(`contains unknown field "${r.sort()[0]}".`);let n=CM.find(i=>!i.valid(t));n!==void 0&&ua(n.reason);let o=[...new Set(t.seen_item_ids)].sort();return{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:o}}function Zh(e){if(fa(e))return typeof e.id=="string"?e.id:typeof e.item_id=="string"?e.item_id:fa(e.item)&&typeof e.item.id=="string"?e.item.id:void 0}function IM(e){let t=new Set,r=0,n=sr(e),o=new Set(n.map(({path:s})=>s)),i=Object.entries(e).flatMap(([s,a])=>Array.isArray(a)&&!o.has(s)?[{path:s,value:a}]:[]);for(let s of[...n,...i]){let a=Array.isArray(s.value)?s.value:Object.values(s.value);for(let c of a){if(!fa(c))continue;if(typeof c.context_ref=="string"){r+=1;continue}let l=Zh(c);l!==void 0&&Jh.test(l)&&t.add(l)}}return{deliveredIds:t,suppressedRepeatCount:r}}function Qh(e,t){let r=new Set(t.seen_item_ids);return ii(e,n=>{let o=Zh(n);return o!==void 0&&r.has(o)?{id:o,context_ref:`session:${t.id}:${o}`}:n})}function Ou(e,t,r){let{deliveredIds:n,suppressedRepeatCount:o}=IM(e),i=new Set(t.seen_item_ids),s=[...n].filter(h=>!i.has(h)).sort(),a=s.slice(0,di-t.seen_item_ids.length),c=[...t.seen_item_ids,...a].sort(),l=s.length-a.length,d={contract_version:1,id:t.id,measurement_scope:"complete_read_envelope",estimator:"ceil(utf8_bytes / 4)",token_budget:t.token_budget,spent_before_tokens:t.spent_tokens,spent_this_call_tokens:0,charged_this_call_tokens:0,spent_total_tokens:t.spent_tokens,remaining_tokens:t.token_budget-t.spent_tokens,exhausted:!1,seen_before_count:t.seen_item_ids.length,new_item_count:n.size,...l===0?{}:{seen_item_overflow_count:l},suppressed_repeat_count:o,reference_format:"session:<session-id>:<item-id>",restore_reference_with:"pm get <item-id> --brief",next_state:{version:1,id:t.id,token_budget:t.token_budget,spent_tokens:t.spent_tokens,seen_item_ids:c}},u={...e,read_session:d},f=h=>{d.spent_this_call_tokens=h,d.charged_this_call_tokens=Math.min(t.token_budget-t.spent_tokens,h),d.spent_total_tokens=Math.min(t.token_budget,t.spent_tokens+d.charged_this_call_tokens),d.remaining_tokens=Math.max(0,t.token_budget-d.spent_total_tokens),d.exhausted=d.remaining_tokens<Su,d.next_state.spent_tokens=d.spent_total_tokens},p=0,m=0;for(let h=0;h<8;h+=1){f(p);let b=ui(u,r);if(b===p)return u;m=Math.max(m,b),p=b}return f(m),u}function eb(e){return Math.max(0,e.token_budget-e.spent_tokens)}(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]="8a044fa0-4028-5527-b6ff-43ec995e8830")}catch{}})();var Br=["include","amount","cost","encoding"],cb=["list","context","search","get","next","health","deps","graph","history","activity","validate","events","contracts","comments","notes","files","docs","stats","aggregate","duplicates","package-catalog","package-manage","comments-audit","assurance"],lb=["canonical","legacy","intent","default"],pi={include:"--output-include",amount:"--output-limit",cost:"--output-budget",encoding:"--output-format"},Cu=Symbol.for("pm.readOutputInvocationProvenance"),db=Object.freeze(Br.map(e=>pi[e])),ub=Object.freeze(["--output-session","--output-cursor","--output-row-contract"]),fb={list:{include:["--brief","--compact","--fields","--full"],amount:["--after","--limit","--no-truncate"],cost:["--token-budget"],encoding:["--format","--stream"]},context:{include:["--fields","--section"],amount:["--after","--depth","--limit"],cost:["--token-budget"],encoding:["--format"]},search:{include:["--compact","--fields","--full"],amount:["--after","--limit"],cost:["--token-budget"],encoding:["--format"]},get:{include:["--fields","--full"],amount:["--depth"],cost:["--token-budget"],encoding:["--format"]},next:{amount:["--blocked-limit","--limit"],cost:["--token-budget"],encoding:["--format"]},health:{include:["--brief","--check-only","--full","--summary"]},deps:{include:["--collapse","--full","--summary"],amount:["--edge-limit","--max-depth","--node-limit"],cost:["--token-budget"],encoding:["--format"]},graph:{include:["--full","--summary"],amount:["--after","--limit","--max-depth","--max-paths"]},history:{include:["--compact","--full"],amount:["--limit"],encoding:["--format"]},activity:{include:["--compact","--full"],amount:["--limit","--unbounded"],encoding:["--stream"]},validate:{include:["--counts","--full"]},events:{include:["--full"],amount:["--limit"],encoding:["--follow"]},contracts:{include:["--full","--summary"]},comments:{amount:["--limit"]},notes:{amount:["--limit"]},files:{amount:["--limit","--no-truncate","--offset"]},docs:{},stats:{},aggregate:{},duplicates:{amount:["--limit"]},"package-catalog":{},"package-manage":{},"comments-audit":{},assurance:{}},pb=new Set(["--collapse","--fields","--section"]),Ru=Object.freeze({"--after":"--after retains cursor-position semantics; use --output-limit <n> separately to bound returned rows.","--check-only":"--check-only retains health side-effect semantics; --output-include does not suppress vector refresh.","--collapse":"--collapse retains dependency grouping semantics; --output-include does not replace it.","--depth":"--depth retains traversal or detail-depth semantics; --output-limit does not replace it.","--follow":"--follow retains event-tail semantics; --output-format does not enable following.","--max-depth":"--max-depth retains graph traversal-depth semantics; --output-limit does not replace it.","--max-paths":"--max-paths retains graph path-search semantics; use --output-limit separately to bound returned rows.","--no-truncate":"--no-truncate is a compatibility alias; prefer --output-limit unbounded.","--offset":"--offset retains positional pagination semantics; use --output-limit separately to bound returned rows.","--stream":"--stream retains command streaming semantics; --output-format selects only static result encoding.","--unbounded":"--unbounded is a compatibility alias; prefer --output-limit unbounded."});function xu(e){return e.slice(2).replaceAll("-","_")}function RM(e,t){let r=Ru[e];if(r!==void 0)return r;let n=t==="include"?pb.has(e)?"<csv>":xu(e):t==="amount"?"<n>":t==="cost"?"<tokens>":"<toon|json>";return`${e} is a compatibility alias; prefer ${pi[t]} ${n}.`}function xM(e){let t=fb[e],r=Object.freeze(Object.fromEntries(Br.map(n=>[n,Object.freeze({dimension:n,canonical_option:pi[n],applicable:!0,inapplicable_reason:null,legacy_aliases:Object.freeze((t[n]??[]).map(o=>Object.freeze({flag:o,semantics:Ru[o]===void 0?"replacement":"behavior_preserving",migration_hint:RM(o,n),visibility:"hidden_alias"})))})])));return Object.freeze({command:e,dimensions:r,precedence:lb,budget_retention_policy:e==="assurance"?"verdict_priority":"ordered_prefix",projection_modes:Object.freeze([...Nu(e).keys()])})}var NM=Object.freeze(cb.map(xM)),DM=new Map(NM.map(e=>[e.command,e]));function bt(e,t={}){let r=Ke(e.trim().toLowerCase()),o=r==="package catalog"||r==="packages catalog"||r==="package-catalog"||(r==="package"||r==="packages"||r==="extension")&&(t.catalog===!0||t.target==="catalog"||t.action==="catalog")?"package-catalog":r==="package manage"||r==="package-manage"?"package-manage":r.split(" ")[0],i=o.startsWith("list-")?"list":o==="ctx"?"context":o;return cb.includes(i)?i:void 0}var PM=["outputInclude","output_include","outputLimit","output_limit","outputBudget","output_budget","outputFormat","output_format","outputSession","output_session","outputCursor","output_cursor","outputRowContract","output_row_contract"],MM={comments:["add","body","stdin","file","edit","delete"],notes:["add","addJson","stdin","file","edit","delete"],files:["add","addGlob","remove","migrate","apply","note"],docs:["add","addGlob","remove","migrate","note"],"package-catalog":["activate","adopt","adoptAll","deactivate","doctor","init","install","manage","migrate","reload","scaffold","uninstall"]};function LM(e){return PM.some(t=>t!=="outputFormat"&&t!=="output_format"&&e[t]!==void 0)}var FM=[{keys:["outputInclude","output_include"],valid:e=>fi(e)!==void 0,message:"--output-include requires at least one comma-separated field or section."},{keys:["outputLimit","output_limit"],valid:e=>e==="unbounded"||zn(e)!==void 0,message:"--output-limit must be a positive integer or unbounded."},{keys:["outputBudget","output_budget"],valid:e=>e==="unbounded"||zn(e)!==void 0,message:"--output-budget must be a positive integer or unbounded."},{keys:["outputSession","output_session"],valid:e=>(pa(e),!0),message:"--output-session must be a valid session-state object."},{keys:["outputCursor","output_cursor"],valid:e=>typeof e=="string"&&e.trim().length>0,message:"--output-cursor requires a non-empty continuation cursor."}];function e8(e,t){let r=t.outputFormat??t.output_format;if(r!==void 0&&r!=="json"&&r!=="toon")throw new g("--output-format must be toon or json.",_.USAGE);if(!LM(t))return;let n=bt(e,t);if(!n)throw new g(`Universal output controls apply only to read commands; ${e||"this command"} is not a read surface.`,_.USAGE);if((MM[n]??[]).some(o=>t[o]!==void 0&&t[o]!==!1))throw new g(`Universal output controls cannot be combined with a ${n} mutation.`,_.USAGE);for(let o of FM){let i=o.keys.map(s=>t[s]).find(s=>s!==void 0);if(i!==void 0&&!o.valid(i))throw new g(o.message,_.USAGE)}}function Nu(e){let t=bt(e);return t?new Map((fb[t].include??[]).filter(r=>!pb.has(r)&&Ru[r]===void 0).map(r=>[xu(r),mb(r)])):new Map}function $M(e,t,r){let n=fi(t)??[],o=Nu(e),i=[],s=[],a=r,c=a[Cu],l=new Set(c?.canonical_include_modes??[]),d=new Set(c?.explicit_legacy_aliases??[]);for(let p of n){let m=o.get(p);if(m===void 0){i.push(p);continue}let h=`--${p.replaceAll("_","-")}`;gb(_b(r,h))&&d.add(h),r[m]=!0,s.push(p),l.add(p)}let u=bt(e)==="get"?i.filter(p=>p!=="item"):[],f=u.length>0;return f&&(r.fields=[...new Set([...fi(r.fields)??[],...u])].join(","),l.add("fields")),(s.length>0||f)&&(a[Cu]={canonical_include_modes:[...l],explicit_legacy_aliases:[...d],...c?.cli_invocation_observed===!0?{cli_invocation_observed:!0}:{}}),{selectors:i,modes:s}}function t8(e,t){let r=t.outputInclude??t.output_include;if(r===void 0)return;let{selectors:n,modes:o}=$M(e,r,t);if(o.length===0)return;let i=n.length>0?n.join(","):void 0;t.outputInclude=i,Object.hasOwn(t,"output_include")&&(t.output_include=i)}function mb(e){return e.slice(2).replace(/-([a-z])/gu,(t,r)=>r.toUpperCase())}function _b(e,t){let r=mb(t);if(Object.hasOwn(e,r))return e[r];let n=t.slice(2).replaceAll("-","_");if(Object.hasOwn(e,n))return e[n];if(t==="--no-truncate"&&e.truncate===!1)return!0}function gb(e){return e!==void 0&&e!==!1&&e!==null}function fi(e){let r=(Array.isArray(e)?e:[e]).flatMap(n=>typeof n=="string"?n.split(","):[]).map(n=>n.trim()).filter(Boolean);return r.length>0?[...new Set(r)]:void 0}function zn(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function jM(e,t,r,n){for(let o of e.legacy_aliases){if(n(o.flag))continue;let i=_b(t,o.flag),s={value:i,flag:o.flag};if(gb(i)&&r(s))return s}}function tb(e,t){let r=fi(e);if(r)return{source:"canonical",value:r};if(t)return{source:"legacy",value:fi(t.value)??[xu(t.flag)]}}function rb(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let r=zn(e);if(r!==void 0)return{source:"canonical",value:r};if(!t)return;if(t.flag==="--no-truncate"||t.flag==="--unbounded")return{source:"legacy",value:"unbounded"};let n=zn(t.value);return n===void 0?void 0:{source:"legacy",value:n}}function nb(e,t){if(e==="unbounded")return{source:"canonical",value:"unbounded"};let r=zn(e);if(r!==void 0)return{source:"canonical",value:r};if(!t)return;let n=zn(t.value);return n===void 0?void 0:{source:"legacy",value:n}}function ob(e,t){if(e==="json"||e==="toon")return{source:"canonical",value:e};if(t)return t.flag==="--stream"||t.flag==="--follow"?{source:"legacy",value:"stream"}:t.value==="json"||t.value==="toon"?{source:"legacy",value:t.value}:void 0}function UM(e,t,r){if(!e)return!1;let n=new Set(e.explicit_legacy_aliases);if(e.cli_invocation_observed===!0)return!n.has(r);let o=new Set(e.canonical_include_modes.map(i=>`--${i.replaceAll("_","-")}`));return t==="include"&&o.has(r)&&!n.has(r)}function zM(e,t,r){return e.trim().toLowerCase().replaceAll(/\s+/gu," ").split(" ")[0]==="list-all"||t.amount?.flag==="--no-truncate"||t.include?.flag==="--full"||r?.canonical_include_modes.includes("full")===!0}function qM(e,t){return Br.flatMap(r=>e[r]?.source==="canonical"||r==="include"&&(t?.canonical_include_modes.length??0)>0?[pi[r]]:[])}function yb(e,t){let r=bt(e,t);if(!r)return;let n=DM.get(r),o=t[Cu],i={include:E=>tb(void 0,E),amount:E=>rb(void 0,E),cost:E=>nb(void 0,E),encoding:E=>ob(void 0,E)},s=Object.fromEntries(Br.map(E=>[E,jM(n.dimensions[E],t,O=>i[E](O)!==void 0,O=>UM(o,E,O))])),a=Br.flatMap(E=>{let O=s[E];return O?[O.flag]:[]}),c=Br.flatMap(E=>{let O=s[E];return O?[n.dimensions[E].legacy_aliases.find(P=>P.flag===O.flag).migration_hint]:[]}),l=ob(t.outputFormat??t.output_format,s.encoding),d=tb(t.outputInclude??t.output_include,s.include),u=rb(t.outputLimit??t.output_limit,s.amount),f=nb(t.outputBudget??t.output_budget,s.cost),p=zM(e,s,o),m=vu(e,{generateFallback:!0}),h=l?.value==="json"||t.resolvedOutputFormat==="json"?"json":"toon",b=f??(p?{source:"intent",value:"unbounded"}:{source:"default",value:m.default_max_estimated_tokens_by_format[h]});return{command:r,include:d,amount:u,cost:b,encoding:l,canonical_options_used:qM({include:d,amount:u,cost:b,encoding:l},o),legacy_aliases_used:a,migration_hints:c,precedence:lb}}function ct(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var Du=new Set(["applied_bound","applied_limit","completeness","continuation_kind","continuation_path","continuation_contract","count","filters","has_more","next_cursor","now","omission_receipt","projection","budget_retention_policy","row_contract","sorting","total","truncated"]),HM=["collection_counts","notes_count","tests_count"];function hb(e,t){let r=new Set(t.map(n=>n.split(".")[0]));return Object.fromEntries(Object.entries(e).filter(([n])=>r.has(n)))}function GM(e){let t=ct(e.item)?e.item:{},r=[...new Set([...Object.keys(t),...HM.filter(o=>Object.hasOwn(t,o))])].sort((o,i)=>o.localeCompare(i)),n=Object.keys(e).filter(o=>o!=="item"&&o!=="read_output"&&!Du.has(o)).sort((o,i)=>o.localeCompare(i));return{item:t,itemFields:r,sections:n,valid:[...r,"item",...r.map(o=>`item.${o}`),...n]}}function BM(e,t){let r=GM(e),n=t.filter(u=>!r.valid.includes(u));if(n.length>0)throw new g(`Unknown --output-include selector(s) for get: ${n.join(", ")}. Valid selectors: ${r.valid.join(", ")}.`,_.USAGE);let o=t.includes("item"),i=t.flatMap(u=>u.startsWith("item.")?[u.slice(5)]:r.itemFields.includes(u)?[u]:[]).filter((u,f,p)=>p.indexOf(u)===f);if(o&&i.length>0)throw new g("--output-include cannot mix a full item with projected item fields; use item or item.<field>, not both.",_.USAGE);let s=new Set(t.filter(u=>r.sections.includes(u))),a=Object.fromEntries(Object.entries(e).filter(([u])=>Du.has(u)||s.has(u)));o?a.item=r.item:i.length>0&&(a.item=hb(r.item,i));let c=[...o?[]:i.length>0?r.itemFields.filter(u=>!i.includes(u)).map(u=>({name:`item.${u}`,restore_with:`--output-include item.${u}`})):[{name:"item",restore_with:"--output-include item"}],...r.sections.filter(u=>!s.has(u)).map(u=>({name:u,restore_with:`--output-include ${u}`}))],d=[...ct(a.omission_receipt)&&Array.isArray(a.omission_receipt.omitted_field_groups)?a.omission_receipt.omitted_field_groups:[],...c];return a.omission_receipt={has_omissions:d.length>0,omitted_field_group_count:d.length,omitted_field_groups:d},a}function ib(e){let t=0;return ii({...e},r=>(ct(r)&&Object.keys(r).length>0&&(t+=1),r)),t}function VM(e,t,r,n){if(ib(t)===0||ib(r)>0)return;let o=[...Nu(e).keys()],i=o.length>0?` Declared ${e} projection modes: ${o.join(", ")}.`:` The ${e} surface declares no projection modes; name row fields instead.`;throw new g(`Unknown --output-include selector(s) for ${e}: ${n.join(", ")}. No selector matched any returned row field.${i}`,_.USAGE)}function WM(e,t,r){if(e==="get")return BM(t,r);let n=sa(t),o=r.flatMap(s=>n.flatMap(a=>s.startsWith(`${a}.`)?[s.slice(a.length+1)]:[])),i=r.some(s=>Object.hasOwn(t,s.split(".")[0])&&!n.some(a=>s.startsWith(`${a}.`)));if(n.length>0&&(!i||o.length>0)){let s={...t},a=o.length>0?o:r,c=ii(s,l=>ct(l)?hb(l,a):l);return VM(e,t,c,a),c}return Object.fromEntries(Object.entries(t).filter(([s])=>r.some(a=>a.split(".")[0]===s)||Du.has(s)))}function YM(e,t){if(t==="unbounded")return e;let{result:r,truncated:n}=Ah(e,t);return n&&(r.has_more=!0,r.truncated=!0,typeof r.count=="number"&&(r.count=ca(r)),r.applied_bound={kind:"output_limit",source:"explicit",value:t}),r}function KM(e){return Br.filter(t=>e[t]!==void 0&&e[t]?.source!=="default"||e.canonical_options_used.includes(pi[t]))}function bb(e){let t=e.resolvedOutputFormat??e.outputFormat??e.output_format??e.format;return t==="json"||t==="toon"?t:void 0}function ma(e,t,r,n){let o=Ou(e,t,n);Un(e,o);for(let i=0;i<8;i+=1){let s=r.estimated_tokens,a=o.read_session.spent_this_call_tokens;lr(o,r,n);let c=o;o=Ou(o,t,n),Un(c,o);let l=o.read_session.spent_this_call_tokens;if(r.estimated_tokens===s&&l===a)return o}return o}function Pu(e,t){if(!ct(e.read_output))return e;let r=bb(t),n=e.read_output,o=pa(t.outputSession??t.output_session);return o===void 0?(lr(e,n,r),e):ma(e,o,n,r)}function XM(e,t){if(e!=="validate")return t;let r=ct(t.projection)?t.projection:void 0;if(!(Array.isArray(r?.declared_field_groups)?r.declared_field_groups:[]).some(u=>ct(u)&&u.name==="diagnostic_rows"))return t;let o=[...new Set(aa(t).map(({path:u})=>u).filter(u=>/^checks\.\d+\.details\./u.test(u)))],i=o.filter(u=>!o.some(f=>f!==u&&u.startsWith(`${f}.`)));if(i.length===0)return t;let s=ct(t.row_contract)?t.row_contract:{},a=Array.isArray(s.row_keys)?s.row_keys.filter(u=>typeof u=="string"):[],c=Array.isArray(s.continuation_row_keys)?s.continuation_row_keys.filter(u=>typeof u=="string"):[],l=a.length>0?a:i,d=[...new Set(i)];return JSON.stringify(l)===JSON.stringify(a)&&JSON.stringify(d)===JSON.stringify(c)?t:{...t,row_contract:{...s,row_keys:l,continuation_row_keys:d,jq_selector:typeof s.jq_selector=="string"?s.jq_selector:".checks[].details"}}}function JM(e,t,r,n){let o={...e};return t.include?.source==="canonical"&&(o=WM(t.command,o,t.include.value)),t.command==="assurance"&&(o=Kh(o)),o=Xh(o,t.command,n),t.amount?.source==="canonical"&&(o=YM(o,t.amount.value)),r===void 0?o:Qh(o,r)}function ZM(e,t){return[...e.cost!==void 0&&e.cost.value!=="unbounded"&&(e.cost.source==="canonical"||e.cost.source==="default")?[{source:e.cost.source,tokens:e.cost.value}]:[],...t===void 0?[]:[{source:"session",tokens:eb(t)}]].sort((n,o)=>n.tokens-o.tokens)[0]}function wb(e){let t=e.canonical_options_used;return t&&t.length>0?{canonical_options_used:t}:{}}function QM(e,t,r,n,o,i){let s={contract_version:1,command:e.command,requested_dimensions:t,...n.source==="default"?{budget_source:n.source,budget_tokens:n.tokens}:{},precedence:e.precedence,...wb(e),legacy_aliases_used:[],migration_hints:[],estimated_tokens:0,within_budget:!1,strings_compacted:!1,rows_compacted:!1,result_omitted:!0,...r===void 0?{omitted_result_estimated_tokens:o}:{}},a={output_budget_exceeded:{omitted_result:!0,reason:"requested_budget_infeasible",restore_with:"Unbounded",recovery:{outputBudget:"unbounded"}},read_output:s},c=r===void 0?a:ma(a,r,s,i);if(r===void 0&&lr(c,s,i),r!==void 0&&s.estimated_tokens>n.tokens)throw new g("The remaining output-session budget cannot fit its mandatory receipts; start a new session with a larger token_budget.",_.USAGE);return c}function eL(e,t){return t.outputRowContract===!0||t.output_row_contract===!0||e.canonical_options_used.includes("--output-include")||e.command==="list"&&e.canonical_options_used.length>0&&e.include?.value.includes("full")===!0}function tL(e,t,r,n,o){if(t!==void 0||eL(e,o))return!1;if(e.amount?.source==="canonical"&&e.amount.value!=="unbounded"){let i=e.amount.value;if(sr(r).some(({value:s})=>(Array.isArray(s)?s.length:Object.keys(s).length)>i))return!1}return e.cost===void 0||e.cost.value==="unbounded"||e.cost.source==="legacy"||ui(o.outputRowContract===!1?Object.fromEntries(Object.entries(r).filter(([i])=>i!=="row_contract")):r,n)<=e.cost.value}function rL(e,t,r,n,o,i,s){if(!r.rows_compacted)return;let a=t.amount?.value==="unbounded"?["amount"]:[],c=new Map($n(e).map(m=>[m.path,Array.isArray(m.value)?m.value.length:Object.keys(m.value).length])),l=[...s.entries()].flatMap(([m,h])=>{let b=c.get(m);if(b>=h.rows)return[];let w=h.baseOffset+b;return[{path:m,cursor:ku({command:t.command,path:m,offset:w,total_rows:h.totalRows,fingerprint:h.fingerprint}),retained_rows:b,remaining_rows:h.totalRows-w,total_rows:h.totalRows}]}),d=l[0],u=d?"; page --output-cursor":"",f=n.source==="session"?`Truncated by the remaining ${n.tokens}-token session budget; start a new output session with a larger token_budget${u}.`:`${n.tokens}-token: raise --output-budget${u}`;r.migration_hints=[f,...t.migration_hints];let p=Iu({effective_budget_tokens:n.tokens,measured_result_tokens:i});d&&!o&&(typeof e.next_cursor!="string"||e.continuation_kind==="output_cursor")&&(e.next_cursor=d.cursor),e.continuation_kind=o?"producer_cursor":d?"output_cursor":"none",e.output_budget_truncation={reason:"output_budget_reached",budget_source:n.source,budget_tokens:n.tokens,overridden_dimensions:a,compacted_row_paths:r.compacted_row_paths,continuation_cursor_rebased:o,continuation_available:l.length>0,recovery_budget_multiplier:d?1:p.recovery_budget_multiplier,continuations:l,restore_with:d?"recovery":`Retry with --output-budget ${p.output_budget} because no declared row collection can be continued.`,recovery:d?{cursor:d.cursor,cli:"--output-cursor",sdk:"outputCursor",mcp:"outputCursor"}:{cli:`--output-budget ${p.output_budget}`,sdk:{outputBudget:p.output_budget},mcp:{outputBudget:p.output_budget}}}}function nL(e,t,r,n){if(typeof r!="string"||!Array.isArray(e.items))return!1;let o=e.items.length;if(o===0||o>=t)return!1;let i;try{i=fu(r)}catch{return!1}let s=i.after_index;if(s===void 0)return!1;let a=e.items.at(-1);if(Object.prototype.toString.call(a)!=="[object Object]")return!1;let c=Reflect.get(a,"id");if(typeof c!="string"||c.length===0)return!1;let l=n?s-(t-o):s+o;return l<0?!1:(e.next_cursor=oi(i.fingerprint,c,l,i.snapshot),!0)}function oL(e,t,r,n){let o=new Map($n(e).map(s=>{let a=Array.isArray(s.value)?s.value.length:Object.keys(s.value).length,c=r?.path===s.path;return[s.path,{rows:a,totalRows:c?r.total_rows:a,baseOffset:c?r.offset:0,fingerprint:c?r.fingerprint:da(s.path,s.value,t)}]})),i=typeof e.next_cursor=="string";return{collectionsBeforeBudget:o,originalItemCount:Array.isArray(e.items)?e.items.length:0,cursorContinuesExistingPage:i,cursorSource:i?e.next_cursor:n.after}}function iL(e,t,r,n,o,i,s,a){let c=t.command==="assurance"&&Array.isArray(e.assertions)?e.assertions.filter(l=>ct(l)&&l.verdict!=="pass").length:0;return ab(e,r,n.tokens,c>0?new Map([["assertions",c]]):new Map,a,l=>{let d=nL(l,i.originalItemCount,i.cursorSource,i.cursorContinuesExistingPage);rL(l,t,r,n,d,s,i.collectionsBeforeBudget),o!==void 0&&Object.assign(l,ma(l,o,r,a))})}function vb(e,t,r){let n=yb(e,t);if(!n)return r;let o=bb(t),i=pa(t.outputSession??t.output_session),s=t.outputCursor??t.output_cursor,a=typeof s=="string"?Au(s):void 0,c=KM(n),l=XM(n.command,r);if(a===void 0&&tL(n,i,l,o,t))return l;let d=ZM(n,i),u=JM(l,n,i,a);Un(u,u,t.outputRowContract===!1);let f={contract_version:1,command:n.command,requested_dimensions:c,...d?.source==="default"?{budget_source:d.source,budget_tokens:d.tokens}:{},precedence:n.precedence,...wb(n),legacy_aliases_used:n.legacy_aliases_used,migration_hints:n.migration_hints,estimated_tokens:0,within_budget:!0,strings_compacted:!1,rows_compacted:!1,result_omitted:!1};if(u.read_output=f,u=i===void 0?u:ma(u,i,f,o),lr(u,f,o),d!==void 0&&f.estimated_tokens>d.tokens){let p=sb(n.command,t,u);p!==void 0&&(f.applied_depth="brief",f.degradation_reason="output_budget_reached",Un(u,p),u=Pu(p,t)),f.estimated_tokens>d.tokens&&(u=iL(u,n,f,d,i,oL(u,n.command,a,t),f.estimated_tokens,o))}return d!==void 0&&f.estimated_tokens>d.tokens?QM(n,c,i,d,f.estimated_tokens,o):u}function Eb(e){return ct(e)&&ct(e.output_budget_exceeded)&&e.output_budget_exceeded.omitted_result===!0&&e.output_budget_exceeded.reason==="requested_budget_infeasible"}function Tb(e,t){let r=t.outputFormat??t.output_format;if(r==="json"||r==="toon")return r;let n=yb(e,t)?.encoding;return n?.value==="json"||n?.value==="toon"?n.value:void 0}import{randomUUID as dL}from"node:crypto";import{randomUUID as sL}from"node:crypto";import{constants as qn}from"node:fs";import{lstat as kb,mkdir as aL,open as Sb,rename as cL,rm as lL}from"node:fs/promises";import _a 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]="72eb01a9-e8b8-59cd-b178-3c594d3faff9")}catch{}})();var $t={max_serving_rows:256,max_bytes:262144,max_event_bytes:32768,retained_byte_fraction:.5,max_events:2048,retention_days:30},fe=class extends TypeError{code="context_usage_validation_failed";constructor(t){super(t),this.name="ContextUsageValidationError"}};function Vr(e){let t=Date.parse(e.now??new Date().toISOString());if(!Number.isFinite(t))throw new fe("Context usage now must be a valid timestamp");return{iso:new Date(t).toISOString(),ms:t}}function Ob(e){let t=e.maxBytes??$t.max_bytes,r=e.maxEvents??$t.max_events,n=e.retentionDays??$t.retention_days;if(!Number.isSafeInteger(t)||t<1024||t>$t.max_bytes||!Number.isSafeInteger(r)||r<1||!Number.isFinite(n)||n<=0)throw new fe("Context usage retention requires positive maxEvents and retentionDays, and maxBytes from 1024 through 262144");return{maxBytes:t,maxEvents:r,cutoff:Vr(e).ms-n*864e5}}async function Cb(e,t){if(!(await kb(_a.dirname(e))).isDirectory())throw new fe("Context usage runtime must be a real directory");try{if((await kb(e)).isSymbolicLink())throw new fe("Context usage ledger must not be a symbolic link")}catch(n){if(!X(n))throw n}let r=await Sb(e,t|qn.O_NOFOLLOW|qn.O_NONBLOCK,384);try{let n=await r.stat();if(!n.isFile()||n.nlink!==1)throw new fe("Context usage ledger must be an unshared regular file");return r}catch(n){throw await r.close(),n}}async function ga(e){let t=Ob(e);try{let r=await Cb(_a.join(e.pmRoot,"runtime","context-usage.jsonl"),qn.O_RDONLY);try{let n=(await r.stat()).size,o=Math.max(0,n-t.maxBytes),i=Buffer.alloc(Math.min(n,t.maxBytes)),{bytesRead:s}=await r.read(i,0,i.length,o),a=i.subarray(0,s).toString("utf8");return(o>0?a.includes(`
33
- `)?a.slice(a.indexOf(`
34
- `)+1):"":a).split(`
35
- `).flatMap(l=>{try{let d=JSON.parse(l);return d&&Date.parse(d.at)>=t.cutoff?[d]:[]}catch{return[]}}).slice(-t.maxEvents)}finally{await r.close()}}catch{return[]}}function Ab(e,t,r){let n=[],o=0;for(let i=e.length-1;i>=0&&n.length<r;i-=1){let s=`${JSON.stringify(e[i])}
36
- `;if(o+=Buffer.byteLength(s),o>t)break;n.push(s)}return n.reverse().join("")}async function mi(e,t,r){let n=Ob(e),o=_a.join(e.pmRoot,"runtime","context-usage.jsonl"),i=Math.floor(n.maxBytes*$t.retained_byte_fraction),s=Math.min($t.max_event_bytes,i);if(t.some(f=>Buffer.byteLength(`${JSON.stringify(f)}
37
- `)>s))throw new fe("Context usage event exceeds the declared byte ceiling");let a=t.filter(f=>Date.parse(f.at)>=n.cutoff),c=Ab(a,i,n.maxEvents),l=performance.now(),d=await ie(e.pmRoot,"context-usage-ledger",30,`context-usage:${process.pid}`,!1,!1,3e3),u=performance.now()-l;try{await aL(_a.dirname(o),{recursive:!0});let f=await Cb(o,qn.O_WRONLY|qn.O_CREAT|qn.O_APPEND);try{let p=(await f.stat()).size,m=r===void 0?void 0:await ga(e);if(m?.some(O=>O.kind==="delivery"&&O.serve_id===r))return{written_bytes:0,ledger_bytes:p,compacted:!1,lock_wait_ms:u};if(!(e.maxEvents!==void 0||e.retentionDays!==void 0)&&p+Buffer.byteLength(c)<=n.maxBytes)return await f.writeFile(c,"utf8"),{written_bytes:Buffer.byteLength(c),ledger_bytes:p+Buffer.byteLength(c),compacted:!1,lock_wait_ms:u};let b=Ab([...m??await ga(e),...a],i,n.maxEvents),w=`${o}.${process.pid}.${sL()}.tmp`,E=await Sb(w,"wx",384);try{try{await E.writeFile(b,"utf8")}finally{await E.close()}return await f.close(),f=void 0,await cL(w,o),{written_bytes:Buffer.byteLength(b),ledger_bytes:Buffer.byteLength(b),compacted:!0,lock_wait_ms:u}}finally{await lL(w,{force:!0})}}finally{await f?.close()}}finally{await d()}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3b38d564-6034-54ae-ad24-eddba01a2c5c")}catch{}})();var uL=864e5,ya=Symbol.for("@unbrained/pm-cli/context-usage-serving-receipt");function me(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function p8(e,t){let r=me(e);r!==null&&t!==null&&(r[ya]=t)}function Hn(e,t){let r=me(e),n=me(t),o=r?.[ya];n!==null&&o!==void 0&&(n[ya]=o)}function fL(e){return me(e)?.[ya]??null}function Rb(e){let t=me(e);for(let r of["read_output","context_intent"])if(me(t?.[r])?.result_omitted===!0)return!0;return!1}function dr(e,t){typeof t=="string"&&t.trim().length>0&&e.add(t.trim())}function xb(e,t){if(Array.isArray(t))for(let r of t)dr(e,me(r)?.id)}function Ib(e,t){if(Array.isArray(t))for(let r of t)dr(e,r)}function pL(e,t){let r=me(e.recommended)===null?[]:[e.recommended];for(let n of["ready","decision_needed","gate_needed","containers","blocked","held_by_others"])Array.isArray(e[n])&&r.push(...e[n]);for(let n of r){let o=me(n);dr(t,o?.id);for(let i of Array.isArray(o?.blockers)?o.blockers:[])dr(t,me(i)?.id);for(let i of Array.isArray(o?.unblocks)?o.unblocks:[])dr(t,i)}}function mL(e,t){for(let r of["high_level","low_level","blocked_fallback","recently_created","unparented","activity","progress","blockers","staleness"])xb(t,e[r]);for(let r of Array.isArray(e.blockers)?e.blockers:[])dr(t,me(r)?.blocked_by);_L(e,t)}function _L(e,t){for(let o of Array.isArray(e.hierarchy)?e.hierarchy:[]){let i=me(o);dr(t,i?.id),xb(t,i?.children)}for(let o of["files","workload"])for(let i of Array.isArray(e[o])?e[o]:[])Ib(t,me(i)?.items);let r=me(e.agenda);for(let o of Array.isArray(r?.events)?r.events:[])dr(t,me(o)?.item_id);let n=me(e.tests);Ib(t,n?.items_failing)}function gL(e,t){let r=me(e);if(r===null||Rb(e))return[];let n=new Set;return t==="next"?pL(r,n):mL(r,n),[...n]}async function m8(e){let t=fL(e.result);if(t===null)return!1;let r=Rb(e.result);return await yL({pmRoot:e.pmRoot,receipt:t,deliveredItemIds:gL(e.result,t.surface),resultOmitted:r}),!0}async function _8(e){if([process.env.PM_CONTEXT_USAGE_DISABLED==="1",e.enabled===!1].includes(!0))return null;if(!e.author.trim()||e.rows.some(o=>!o.id.trim()||!Number.isInteger(o.rank)||o.rank<1))throw new fe("Context usage serving requires an author and valid ranked rows");let t=e.rows.map(o=>({id:o.id.trim(),rank:o.rank,included:o.included}));if(new Set(t.map(o=>o.id)).size!==t.length)throw new fe("Context usage serving requires unique normalized row ids");let r=t.slice(0,$t.max_serving_rows),n={serve_id:dL(),author:e.author.trim(),surface:e.surface,rows:t,recorded_item_ids:r.map(o=>o.id)};return n.storage=await mi(e,[{kind:"serve",schema_version:2,serve_id:n.serve_id,at:Vr(e).iso,author:e.author.trim(),surface:e.surface,profile:e.profile.trim()||"balanced",rows:r,candidate_count:t.length,omitted_row_count:t.length-r.length,result_omitted:!1,packed_item_ids:r.filter(o=>o.included).map(o=>o.id)}]),n}async function yL(e){if(e.receipt===null||process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return;let t=new Set(e.receipt.rows.map(i=>i.id)),r=[...new Set(e.deliveredItemIds.map(i=>i.trim()))];if(r.some(i=>i.length===0||!t.has(i))||e.resultOmitted&&r.length>0)throw new fe("Context usage delivery requires emitted ranked ids and zero ids for an omitted result");let n=new Set(e.receipt.recorded_item_ids??e.receipt.rows.map(i=>i.id)),o={kind:"delivery",schema_version:2,serve_id:e.receipt.serve_id,at:Vr(e).iso,author:e.receipt.author,surface:e.receipt.surface,result_omitted:e.resultOmitted,delivered_item_ids:r.filter(i=>n.has(i))};await mi(e,[o],o.serve_id)}async function g8(e){if(!(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)){if(!e.author.trim()||!e.itemId.trim()||!e.intent.trim())throw new fe("Context usage touch requires author, itemId, and intent");await mi(e,[{kind:"touch",at:Vr(e).iso,author:e.author.trim(),item_id:e.itemId.trim(),intent:e.intent.trim()}])}}async function y8(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1||e.itemIds.length===0)return;let t=e.author.trim(),r=e.intent.trim();if(!t||!r)throw new fe("Context usage touch requires author and intent");let n=new Set;for(let s of e.itemIds){if(typeof s!="string")throw new fe("Context usage touch requires string itemIds");let a=s.trim();if(!a)throw new fe("Context usage touch requires non-empty itemId");n.add(a)}let o=Vr(e).iso,i=[...n].map(s=>({kind:"touch",at:o,author:t,item_id:s,intent:r}));await mi(e,i)}function hL(e,t,r,n){return e.find(({entry:o,time:i})=>o.item_id===t&&i>=r&&i-r<=n)?.time}function bL(e,t){let r=new Map;for(let n of e)n.kind==="delivery"&&n.schema_version===2&&n.author===t&&!r.has(n.serve_id)&&r.set(n.serve_id,n);return r}async function h8(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return{affinity:{},positive_judgments:0,serving_events:0,untrusted_serving_events:0};let t=await ga(e),r=Vr(e).ms,n=(e.horizonHours??24)*36e5;if(![Number.isFinite(n),n>0].every(Boolean))throw new fe("Context usage horizonHours must be positive");let o=e.author.trim(),i=t.filter(p=>p.kind==="touch").filter(p=>p.author===o).map(p=>({entry:p,time:Date.parse(p.at)})),s=new Map,a=0,c=0,l=0,d=bL(t,o);t.filter(p=>p.kind==="serve").filter(p=>p.author===o).forEach(p=>{if(![p.schema_version===2,!!p.serve_id].every(Boolean)){c+=1;return}a+=1;let m=Date.parse(p.at),h=d.get(p.serve_id),b=new Set(h?.delivered_item_ids??[]);for(let w of p.rows){if(!b.has(w.id))continue;let E=hL(i,w.id,m,n);if(E===void 0)continue;l+=1;let O=Math.max(0,(r-E)/uL);s.set(w.id,(s.get(w.id)??0)+Math.exp(-O/14))}});let u=Math.max(0,...s.values());return{affinity:Object.fromEntries([...s.entries()].map(([p,m])=>[p,u===0?.05:.05+.95*m/u])),positive_judgments:l,serving_events:a,untrusted_serving_events: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]="8bf25242-1b7a-501d-9540-7559cb97bcc6")}catch{}})();var Db=Object.freeze([{command:"context",intent:"orient",description:"Bounded active hierarchy, ownership, blockers, and recent progress.",included_field_groups:["summary","focus","hierarchy","blockers","activity"],token_budget:3e3,source:"core"},{command:"context",intent:"handoff",description:"Active ownership, evidence, decisions, and immediate continuation context.",included_field_groups:["summary","focus","in_progress","decisions","activity"],token_budget:2200,source:"core"},{command:"get",intent:"inspect",description:"Standard-depth item metadata, relationships, evidence, and lifecycle state.",included_field_groups:["item","children","claim_state","linked"],token_budget:3200,source:"core"},{command:"list",intent:"triage",description:"A budget-derived page of compact governance, ownership, priority, and blocker rows for triage.",included_field_groups:["identity","governance","ownership","dependencies"],token_budget:3200,source:"core"},{command:"next",intent:"execute",description:"The highest-ranked actionable work with concise ranking evidence.",included_field_groups:["recommended"],token_budget:1200,source:"core"},{command:"search",intent:"discover",description:"A budget-derived page of ranked canonical lineage candidates with compact match evidence.",included_field_groups:["identity","status","lineage","match"],token_budget:1800,source:"core"}]),Pb=new wL;function vL(){return Pb.getStore()??Db}function C8(e,t){return Pb.run(TL(e.workspaceContracts,e.packageContracts),t)}function EL(e,t){let r=e.command.trim().toLowerCase(),n=e.intent.trim().toLowerCase(),o=`${r}:${n}`;if(!/^[a-z0-9][a-z0-9-]*$/.test(r)||!/^[a-z0-9][a-z0-9-]*$/.test(n))throw new TypeError(`Invalid context intent command or name: ${o}`);if(e.description.trim().length===0)throw new TypeError(`Context intent ${o} requires a non-empty description`);if(!Number.isSafeInteger(e.token_budget)||e.token_budget<=0)throw new TypeError(`Context intent ${o} requires a positive integer token_budget`);let i=[...new Set(e.included_field_groups.map(s=>s.trim()).filter(Boolean))];if(i.length===0)throw new TypeError(`Context intent ${o} requires included_field_groups`);return{command:r,intent:n,description:e.description.trim(),included_field_groups:i,token_budget:e.token_budget,source:t}}function TL(e=[],t=[]){let r=[{source:"core",contracts:Db,allowOverride:!1},{source:"package",contracts:t,allowOverride:!1},{source:"workspace",contracts:e,allowOverride:!0}],n=new Map,o=new Set;for(let i of r){o.clear();for(let s of i.contracts){let a=EL(s,i.source),c=`${a.command}:${a.intent}`;if(o.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);if(o.add(c),!i.allowOverride&&n.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);n.set(c,a)}}return[...n.values()].sort((i,s)=>i.command.localeCompare(s.command)||i.intent.localeCompare(s.intent))}function Mb(e,t,r=vL(),n=[]){let o=e.trim().toLowerCase(),i=t.trim().toLowerCase(),s=r.find(f=>f.command===o&&f.intent===i);if(s)return{...s,source:s.source??"core"};let a=r.filter(f=>f.command===o).map(f=>f.intent);if(a.length===0)return;let c=a.map(f=>{let p=Array.from({length:i.length+1},(m,h)=>h);for(let m=1;m<=f.length;m+=1){let h=p[0];p[0]=m;for(let b=1;b<=i.length;b+=1){let w=p[b];p[b]=Math.min(p[b]+1,p[b-1]+1,h+(f[m-1]===i[b-1]?0:1)),h=w}}return{candidate:f,distance:p[i.length]}}).sort((f,p)=>f.distance-p.distance||f.candidate.localeCompare(p.candidate))[0].candidate,l=[o,...n,"--for",i],d=[o,...n,"--for",c],u=Lt(d);throw new g(`Unknown context intent "${i}" for ${o}. Did you mean "${c}"?`,_.USAGE,{code:"unknown_context_intent",reason:"unknown_intent",field:"for",flag:"--for",value:i,required:`Use a declared ${o} intent.`,why:"Intent names are command-local contracts and cannot be inferred from output section names.",nextSteps:[u],recovery:{recovery_mode:"compact",attempted_command:Lt(l),allowed_values:[...a].sort(),suggested_retry:u,suggested_retry_args:d}})}var Lb={context:(e,t,r)=>{e.depth===void 0&&(e.depth=t.intent==="handoff"?"deep":"standard"),e.section===void 0&&(e.section=t.intent==="handoff"?["activity","progress","blockers"]:["hierarchy","blockers","activity"]);let n=ba(e.tokenBudget,t.token_budget),o=wa("context",t.intent,n,r),i=Wr(e.limit),s=String(i===void 0?o:Math.min(i,o));(e.limit===void 0||i!==void 0)&&(e.limit=s),e.activityLimit===void 0&&(e.activityLimit=s)},get:e=>{e.depth===void 0&&e.fields===void 0&&(e.depth="standard")},list:(e,t,r)=>{e.brief===void 0&&e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.fields="id,title,status,type,priority,parent,assignee,risk,blocked_by");let n=ba(e.tokenBudget,t.token_budget),o=wa("list",t.intent,n,r),i=Wr(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))},next:e=>{e.readyOnly===void 0&&(e.readyOnly=!0)},search:(e,t,r)=>{e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.compact=!0);let n=ba(e.tokenBudget,t.token_budget),o=wa("search",t.intent,n,r),i=Wr(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))}};function I8(e,t,r=[]){let n=t.tokenBudget??t.token_budget;if(typeof t.for!="string"){if(n!==void 0&&(e==="get"||e==="list"||e==="search"))throw new g("--token-budget requires a declared context intent selected with --for",_.USAGE,{code:"missing_required_option",field:"for",required:"Select a context intent with --for when setting --token-budget.",why:"A token-budget override has no projection contract to constrain without a selected intent.",nextSteps:["Retry with --for <intent> --token-budget <n>, or omit --token-budget."]});if(t.tokenBudget!==void 0||t.token_budget===void 0)return t;let a={...t,tokenBudget:n};return delete a.token_budget,a}let o=Mb(e,t.for,void 0,r),i=Wr(n)!==void 0,s={...t};return s.tokenBudget===void 0&&n!==void 0&&(s.tokenBudget=n),delete s.token_budget,s.tokenBudget===void 0&&(s.tokenBudget=String(o.token_budget)),Lb[e](s,o,i),s}var kL={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},ha=256;function Mu(e){return Array.isArray(e)?e.map(Mu):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,r])=>[t,Mu(r)])):typeof e=="string"&&e.length>240?`${e.slice(0,240)}\u2026`:e}function Wr(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function ba(e,t){let r=Wr(e);if(r===void 0)return t;if(r<ha)throw new g(`Context intent token budget must be at least ${ha}`,_.USAGE,{code:"invalid_argument_value",reason:"below_minimum",field:"tokenBudget",required:`Use an integer token budget of at least ${ha}.`,why:"Smaller ceilings cannot contain the minimum machine-readable intent receipt.",nextSteps:[`Retry with --token-budget ${ha} or omit the override.`]});return r}function wa(e,t,r,n){if(e==="get"||e==="next")return;let o=e==="context"&&t==="orient",i=e==="context"?o?1200:800:e==="list"?520:480,s=e==="context"?o?600:500:16,a=Math.max(e==="context"?1:2,Math.floor((r-i)/s));return n?a:Math.min(e==="context"?20:100,a)}function ur(e,t){let r=t.estimated_tokens;for(;;){t.estimated_tokens=r;let n=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(n===r)return;r=n}}var Nb={context:["high_level","low_level","blocked_fallback","recently_created","unparented","hierarchy","activity","blockers"],get:["children"],list:["items"],next:["ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items"]};function Fb(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"));return typeof t.fingerprint!="string"||!Number.isSafeInteger(t.after_index)?void 0:{fingerprint:t.fingerprint,after_index:t.after_index,...typeof t.snapshot=="string"?{snapshot:t.snapshot}:{}}}catch{return}}function AL(e){if(e===null||typeof e!="object")return;if(typeof e.id=="string")return e.id;let t=e.item?.id;return typeof t=="string"?t:void 0}function SL(e,t,r){let n=!1;for(;;){if(ur(e,t),t.estimated_tokens<=t.token_budget||r.length<=1)return n;let o=Buffer.byteLength(JSON.stringify(r),"utf8"),i=(t.estimated_tokens-t.token_budget)*4;r.splice(-Math.min(r.length-1,Math.max(1,Math.ceil(i/Math.max(1,Math.ceil(o/r.length)))))),n=!0}}function OL(e,t,r){let n=e.items,o=typeof e.next_cursor=="string",i=o?e.next_cursor:r.after;if(!Array.isArray(n)||typeof i!="string")return!1;let s=Fb(i);if(s===void 0)return!1;let a=n.length,c=[...n],l=!1;for(;;){if(l=SL(e,t,n)||l,!l)return!1;let d=AL(n.at(-1));if(d===void 0)return n.splice(0,n.length,...c),ur(e,t),!1;if(e.next_cursor=oi(s.fingerprint,d,o?s.after_index-(a-n.length):s.after_index+n.length,s.snapshot),ur(e,t),t.estimated_tokens<=t.token_budget||n.length<=1)break}return typeof e.count=="number"&&(e.count=n.length),typeof e.applied_limit=="number"&&(e.applied_limit=n.length),!0}function CL(e,t,r,n){if(e==="list"||e==="search")return OL(t,r,n);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(ur(t,r),r.estimated_tokens<=r.token_budget)return o;let i=Nb[e].map(f=>({key:f,rows:Array.isArray(t[f])?t[f]:[]})).filter(({rows:f})=>f.length>0).sort((f,p)=>p.rows.length-f.rows.length||f.key.localeCompare(p.key))[0];if(i===void 0)return o;let s=Nb[e].reduce((f,p)=>f+(Array.isArray(t[p])?t[p].length:0),0);if(s<=1)return o;let a=Math.min(i.rows.length,s-1),c=Buffer.byteLength(JSON.stringify(i.rows),"utf8"),l=Math.max(1,Math.ceil(c/i.rows.length)),d=(r.estimated_tokens-r.token_budget)*4,u=Math.min(a,Math.max(1,Math.ceil(d/l)));i.rows.splice(-u,u),o=!0}}function IL(e,t,r){if(typeof t.for!="string")return r;let n=e.startsWith("list-")?"list":e;if(!(n in Lb))return r;let o=n,i=Mb(o,t.for),s=ba(t.tokenBudget??t.token_budget,i.token_budget),a={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:s,declared_token_budget:i.token_budget,token_budget_override:s-i.token_budget,estimated_tokens:0,within_budget:!0,degradation:kL[o],declaration_feasible:!0,result_omitted:!1},c={...r},l=wa(o,i.intent,a.token_budget,Wr(t.tokenBudget??t.token_budget)!==void 0);if(l!==void 0){let u=Wr(t.limit),f=u!==void 0&&u<l;a.budget_derived_limit=l,a.binding_constraint=f?"explicit_limit":"token_budget",a.limit_reason=f?"The caller supplied a smaller row limit than the budget-derived ceiling.":"The selected intent token budget constrains the effective row ceiling.",c.budget_derived_limit=l}let d={...c,context_intent:a};return ur(d,a),a.estimated_tokens>a.token_budget&&(a.degradation="recursive_budget_compaction",d={...Mu(c),context_intent:a},ur(d,a)),a.estimated_tokens>a.token_budget&&CL(o,d,a,t)&&(a.degradation="budget_row_compaction",ur(d,a)),a.declaration_feasible=a.estimated_tokens<=a.declared_token_budget,a.estimated_tokens>a.token_budget&&(a.degradation="budget_receipt_only",a.result_omitted=!0,a.within_budget=!1,d={budget_exceeded:{omitted_result:!0,reason:a.token_budget_override===0?"declared_budget_infeasible":"effective_budget_infeasible",restore_with:xL(e,o,i.intent,a,c)},context_intent:a}),d}function RL(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let r=Fb(e.after)?.fingerprint??"opaque_cursor",n={...t};for(let o of["applied_limit","completeness","context_intent","count","filters","has_more","now","omission_receipt","projection","row_contract","sorting","total","truncated"])delete n[o];return n.continuation_contract={fingerprint:r,metadata:"reference",restore_with:"omit --after"},n}function Lu(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function xL(e,t,r,n,o){let i=t==="get"&&Lu(o.item)&&typeof o.item.id=="string"?o.item.id:t==="search"&&typeof o.query=="string"?o.query:void 0,s=i===void 0?"":` '${i.replaceAll("'",`'"'"'`)}'`,a=t==="get"?"":` --limit ${n.budget_derived_limit??1}`;return`pm ${e}${s} --for ${r} --token-budget ${Math.ceil(n.estimated_tokens/100)*100}${a}`}function Gn(e,t){if(Lu(e))return typeof e[t]=="number"?e[t]:void 0}function NL(e,t){let r=e;for(let n=0;n<8;n+=1){let o=Gn(r.context_intent,"estimated_tokens"),i=Gn(r.read_output,"estimated_tokens"),s=Gn(r.read_session,"spent_this_call_tokens");if(Lu(r.context_intent)&&ur(r,r.context_intent),r=Pu(r,t),Gn(r.context_intent,"estimated_tokens")===o&&Gn(r.read_output,"estimated_tokens")===i&&Gn(r.read_session,"spent_this_call_tokens")===s)break}return r}function $b(e,t,r){let n=wh(e,r),o=typeof n=="object"&&n!==null&&!Array.isArray(n)?vb(e??"",{...t,outputRowContract:t.outputRowContract===!0||t.output_row_contract===!0},RL(t,IL(e??"",t,n))):n;if(Hn(r,o),t.outputRowContract===!0||t.output_row_contract===!0||typeof o!="object"||o===null||Array.isArray(o)||!Object.hasOwn(o,"row_contract"))return o;let i=Object.fromEntries(Object.entries(o).filter(([a])=>a!=="row_contract"));Object.defineProperty(i,"row_contract",{value:o.row_contract,enumerable:!1,configurable:!0});let s=NL(i,t);return delete s.row_contract,Hn(o,s),s}(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]="83c82348-64f8-5f10-9396-b03add0b7932")}catch{}})();var Bn=["result_rows","envelope","diagnostics","hints"],DL=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,PL=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,ML=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,LL=8;function Fu(e){return Buffer.byteLength(e,"utf8")}function jb(e){return Fu(JSON.stringify(e)??"null")}function FL(e,t){return PL.test(e)?"diagnostics":ML.test(e)?"hints":DL.test(e)||Array.isArray(t)?"result_rows":"envelope"}function $L(e){let t={result_rows:0,envelope:0,diagnostics:0,hints:0};if(typeof e!="object"||e===null||Array.isArray(e))return t[Array.isArray(e)?"result_rows":"envelope"]=jb(e),t;for(let[r,n]of Object.entries(e))t[FL(r,n)]+=jb({[r]:n});return Object.values(t).every(r=>r===0)&&(t.envelope=1),t}function jL(e,t){let r=Bn.reduce((s,a)=>s+t[a],0),n=Bn.map(s=>({section:s,value:e*t[s]/r})),o={result_rows:0,envelope:0,diagnostics:0,hints:0};for(let s of n)o[s.section]=Math.floor(s.value);let i=e-Bn.reduce((s,a)=>s+o[a],0);for(let s of[...n].sort((a,c)=>c.value-Math.floor(c.value)-(a.value-Math.floor(a.value))||Bn.indexOf(a.section)-Bn.indexOf(c.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function Ub(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function zb(e,t){let r=Fu(t(e)),n=jL(r,$L(e)),o=Object.fromEntries(Bn.map(a=>[a,{bytes:n[a],estimated_tokens:cr(n[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:r,total_estimated_tokens:cr(r),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=Ub(e,i);for(let a=0;a<LL;a+=1){let c=Fu(t(s))-r;if(c===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:c,accounting_receipt_estimated_tokens:cr(c)},s=Ub(e,i)}return s}import{encode as Gb}from"@toon-format/toon";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2ca9480d-0ae4-50e8-887e-c4183501d92c")}catch{}})();var UL=new Set(Object.values(_)),$u="__pm_native_output",qb=!1;function se(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function qu(e){let t={read_output:{result_omitted:!0}};Hn(e,t),Qt(t)}function zL(e,t,r){if(r){Qt(e);return}qu(t)}function qL(e){return se(e)&&e[$u]===!0}function HL(e){if(!se(e)||e[$u]!==!0)return e;let{[$u]:t,...r}=e;return r}function ju(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function GL(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.SUCCESS)}function BL(){(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=_.GENERIC_FAILURE)}function Uu(e){if(e==="stdout"){GL();return}BL()}function Hb(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function VL(){qb||(qb=!0,process.stdout.on("error",e=>{if(ju(e)){Uu("stdout");return}Hb(e)}),process.stderr.on("error",e=>{if(ju(e)){Uu("stderr");return}Hb(e)}))}function Bb(e,t){VL();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(r){if(ju(r))return Uu(e),!1;throw r}}function jt(e){return Bb("stdout",e)}function Vn(e){return Bb("stderr",e)}function zu(e){return typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"?String(e):e===null?"null":JSON.stringify(e)}function WL(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Vb(e){if(e.length===0||!e.every(se))return!1;let t=Object.keys(e[0]);return t.length>0&&e.every(r=>Object.keys(r).length===t.length&&t.every(n=>Object.hasOwn(r,n)&&WL(r[n])))}function Wb(e,t){let r=" ".repeat(t);return e.split(`
38
- `).map(n=>`${r}${n}`).join(`
39
- `)}function YL(e,t,r){let n=" ".repeat(r);return!se(t)&&!Array.isArray(t)?`${n}${e}: ${zu(t)}`:Array.isArray(t)&&t.length===0?`${n}${e}: []`:Array.isArray(t)&&Vb(t)?Wb(Gb({[e]:t}),r):se(t)&&Object.keys(t).length===0?`${n}${e}: {}`:`${n}${e}:
40
- ${Hu(t,r+1)}`}function va(e){if(e!=null){if(Array.isArray(e)){let t=e.map(r=>va(r)).filter(r=>r!==void 0);return t.length>0?t:void 0}if(se(e)){let t={};for(let[r,n]of Object.entries(e)){if(r==="omitted_field_groups"&&Array.isArray(n)&&n.length===0){t[r]=[];continue}let o=va(n);o!==void 0&&(t[r]=o)}return Object.keys(t).length>0?t:void 0}return e}}function Hu(e,t){let r=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":Vb(e)?Wb(Gb(e),t):e.map(n=>{if(!se(n)&&!Array.isArray(n))return`${r}- ${zu(n)}`;let i=Hu(n,t+1).split(`
41
- `),[s,...a]=i;return a.length===0?`${r}- ${s.trimStart()}`:`${r}- ${s.trimStart()}
42
- ${a.join(`
43
- `)}`}).join(`
44
- `);if(se(e)){let n=Object.entries(e);return n.length===0?"{}":n.map(([o,i])=>YL(o,i,t)).join(`
45
- `)}return`${r}${zu(e)}`}function KL(e){if(!se(e)||e.output_default!=="markdown"||typeof e.view!="string"||!Array.isArray(e.events)||!Array.isArray(e.days))return null;let t=[`# pm calendar (${e.view})`,""],r=se(e.summary)?e.summary:{};if(t.push(`- events: ${String(r.events??0)}`),t.push(""),e.events.length===0)return t.push("No calendar events matched the selected filters."),`${t.join(`
46
- `)}
47
- `;for(let n of e.events){if(!se(n))continue;let o=typeof n.kind=="string"?n.kind:"event",i=typeof n.item_title=="string"?n.item_title:"",s=typeof n.item_id=="string"?n.item_id:"",a=typeof n.reminder_text=="string"&&n.reminder_text.length>0?` ${n.reminder_text}`:"";t.push(`- [${o}] ${s} ${i}${a}`.trim())}return`${t.join(`
48
- `)}
49
- `}function XL(e){return e.json===!0||e.json===void 0&&e.defaultOutputFormat==="json"?"json":"toon"}var JL=new Set(["filters","now","projection","sorting"]);function ZL(e){let t=va(e);if(!se(t)||!Array.isArray(t.items))return t??null;let r=Object.fromEntries(Object.entries(t).filter(([n])=>!JL.has(n)));return r.has_more!==!0&&delete r.next_cursor,r}function QL(e,t){if(!se(e)||!Array.isArray(e.run_results)||!e.run_results.every(se))return e;let r=e.run_results,n=r.map(s=>s.execution_context).filter(s=>s!==void 0),o=n.length===r.length&&n.length>0&&n.every(s=>JSON.stringify(s)===JSON.stringify(n[0]))?n[0]:void 0,i=r.map(s=>{let{execution_context:a,stdout:c,stderr:l,...d}=s;return o===void 0?s:!t||s.status!=="passed"?{...d,stdout:c,stderr:l}:d});return{...e,...o===void 0?{}:{execution_context:o},run_results:i}}function eF(e){if(!se(e)||!Array.isArray(e.items)||Object.hasOwn(e,"details")||!se(e.projection)||e.projection.mode!=="brief"||!se(e.completeness)||e.completeness.status!=="complete"||[e.completeness.unreadable_item_count,e.completeness.unreadable_directory_count].some(u=>u!==0)||[e.has_more,e.truncated].some(u=>u!==!1)||e.count!==e.items.length||e.total!==e.count||!se(e.omission_receipt)||JSON.stringify(e.omission_receipt.omitted_field_groups)!==JSON.stringify([{name:"full_item_fields",restore_with:"--full"}]))return e;let{total:t,has_more:r,truncated:n,next_cursor:o,completeness:i,projection:s,now:a,omission_receipt:c,sorting:l,...d}=e;return{...d,...se(l)&&l.sort==="default"?{}:{sorting:l},details:"--full"}}function Ea(e,t){if(t==="json")return`${JSON.stringify(e,null,2)}
50
- `;let r=va(eF(e));return r===void 0?`{}
51
- `:`${Hu(r,0)}
52
- `}function tF(e,t,r,n){let o=t?{handled:!1,result:e,warnings:[]}:pd("output_format",{command:r.command,args:r.commandArgs,command_options:r.commandOptions,global:{...r},pm_root:r.pmRoot,format:n,options:{...r},result:e}),i=o.warnings.find(s=>s.startsWith("extension_output_format_payload_echo_deprecated:"));return i!==void 0&&Vn(`Warning: ${i}. Returning context.payload now declines safely for compatibility; migrate the override to declineServiceOverride() or { handled: false }.
53
- `),o.handled&&typeof o.result=="string"?{result:o.result,rendered:o.result.endsWith(`
54
- `)?o.result:`${o.result}
55
- `,structuredDeliveryPreserved:!1}:{result:o.handled?o.result:e,rendered:null,structuredDeliveryPreserved:!o.handled||se(o.result)}}function rF(e,t,r){let n=Mg(),o=r.command??n?.command,i={...n?.options,...r.commandOptions,...Object.fromEntries([["outputInclude",r.outputInclude],["outputLimit",r.outputLimit],["outputBudget",r.outputBudget],["outputFormat",r.outputFormat],["outputSession",r.outputSession],["outputCursor",r.outputCursor],["outputRowContract",r.outputRowContract]].filter(w=>w[1]!==void 0))},s=Tb(o??"",i)??XL(r),a={...i,resolvedOutputFormat:s},c={...r,command:o,commandOptions:a},l=tF(e,t,c,s);if(l.rendered!==null)return qu(e),l.rendered;let d=l.result;Hn(e,d);let u=o==="test"?QL(d,r.lean===!0):d,f=$b(o,a,u);Eb(f)&&(process.exitCode||=_.USAGE);let{structuredDeliveryPreserved:p}=l,m=w=>{if(s==="toon"){let O=KL(w);if(O!==null)return O}let E=t?{rendered:null}:$g(s,w);return E.rendered!==null?(p=!1,E.rendered.endsWith(`
56
- `)?E.rendered:`${E.rendered}
57
- `):s==="json"?Ea(r.lean===!0?ZL(w):w,"json"):Ea(w,"toon")},h=r.tokenAccounting===!0?zb(f,m):f,b=m(h);return zL(h,e,r.quiet!==!0&&p),b}function nF(e,t){let r=Fg(e),n=cs(r.result)?r.result:null,o=qL(r.result),i=n?n.result:HL(r.result);return Qt(i),n?(qu(i),""):rF(i,o,t)}function Yb(e,t){se(e)&&Number.isInteger(e.exit_code)&&UL.has(Number(e.exit_code))&&(process.exitCode===void 0||process.exitCode===_.SUCCESS)&&(process.exitCode=Number(e.exit_code));let r=t.idOnly?ni(e,{idOnly:!0}):t.fullChangedFields?e:t.noChangedFields?ni(e,{changedFields:"compact"}):ni(e,{compactEnvelope:!0}),n=nF(r,t);t.quiet||jt(n)}function Gu(e){let t=pd("error_format",{message:e}),r=t.handled&&typeof t.result=="string"?t.result:e;Vn(r.endsWith(`
58
- `)?r:`${r}
59
- `)}(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]="be0a8071-52f7-56a6-9830-a60e0d2cf29d")}catch{}})();var oF=8,iF=64,sF=5,aF=4,Kb=100;function sb(e,t,r){if(e!=="get"||!Bu(r.item)||["fields","outputInclude","output_include","outputCursor","output_cursor"].some(l=>t[l]!==void 0)||t.full===!0||t.tree===!0||t.depth!==void 0&&t.depth!=="standard")return;let n=r.item,o=["linked","claim_state","schedule"],i=o.filter(l=>Object.hasOwn(r,l)),s=Object.fromEntries(Object.entries(r).filter(([l])=>!o.includes(l)));s.item=Object.fromEntries(Object.entries(n).filter(([l])=>l!=="body")),Object.hasOwn(n,"body")&&i.push("body");let c=[...Bu(r.omission_receipt)&&Array.isArray(r.omission_receipt.omitted_field_groups)?r.omission_receipt.omitted_field_groups:[],...i.map(l=>({name:l,restore_with:`--fields ${l}`}))];return s.omission_receipt={has_omissions:c.length>0,omitted_field_group_count:c.length,omitted_field_groups:c},s}function Iu(e){let t=Math.trunc(e.effective_budget_tokens),r=Math.trunc(e.measured_result_tokens);if(!Number.isSafeInteger(t)||t<=0||!Number.isSafeInteger(r)||r<=0)return{output_budget:"unbounded",recovery_budget_multiplier:null,rule_version:"v1"};let n=Math.max(t+1,r),o=Math.ceil(n*sF/aF),i=Math.ceil(o/Kb)*Kb;return Number.isSafeInteger(i)?{output_budget:i,recovery_budget_multiplier:i/t,rule_version:"v1"}:{output_budget:"unbounded",recovery_budget_multiplier:null,rule_version:"v1"}}function Un(e,t,r=!1){let n=Object.getOwnPropertyDescriptor(e,"row_contract");n&&(r||n.enumerable===!1)&&Object.defineProperty(t,"row_contract",{...n,enumerable:!1})}function ui(e,t){let r=t===void 0?JSON.stringify(e):Ea(e,t);return Math.ceil(Buffer.byteLength(r,"utf8")/4)}function Bu(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Vu(e,t){return typeof e=="string"?e.length<=240?e:(t.compacted=!0,`${e.slice(0,240)}\u2026`):Array.isArray(e)?e.map(r=>Vu(r,t)):Bu(e)?Object.fromEntries(Object.entries(e).map(([r,n])=>[r,Vu(n,t)])):e}function lr(e,t,r){let n=t.estimated_tokens;for(let o=0;o<oF;o+=1){t.estimated_tokens=n;let i=ui(e,r);if(i===n)return;n=i}t.estimated_tokens=n}function cF(e,t){return aa(e).filter(r=>(Array.isArray(r.value)?r.value.length:Object.keys(r.value).length)>Math.max(1,t.get(r.path)??0)).map(r=>({collection:r,length:Array.isArray(r.value)?r.value.length:Object.keys(r.value).length})).sort((r,n)=>n.length-r.length||r.collection.path.localeCompare(n.collection.path))[0]?.collection}function lF(e,t,r,n,o,i){for(let s=0;s<iF;s+=1){if(i?.(e),lr(e,t,o),t.estimated_tokens<=r)return;let a=cF(e,n);if(!a)return;let c=Math.max(1,n.get(a.path)??0),l=Array.isArray(a.value)?[...a.value]:Object.entries(a.value),d=m=>{if(Array.isArray(a.value)){a.value.length=m;for(let h=0;h<m;h+=1)a.value[h]=l[h]}else{for(let h of Object.keys(a.value))delete a.value[h];Object.defineProperties(a.value,Object.getOwnPropertyDescriptors(Object.fromEntries(l.slice(0,m))))}typeof e.count=="number"&&(e.count=ca(e)),a.path==="items"&&(e.applied_limit=m),i?.(e),lr(e,t,o)};t.rows_compacted=!0,t.compacted_row_paths=[...new Set([...t.compacted_row_paths??[],a.path])].sort((m,h)=>m.localeCompare(h)),e.has_more=!0,e.truncated=!0;let u=c,f=l.length-1,p=c;for(;u<=f;){let m=Math.floor((u+f)/2);d(m),t.estimated_tokens<=r?(p=m,u=m+1):f=m-1}d(p)}}function ab(e,t,r,n=new Map,o,i){let s={compacted:!1},a=Vu(e,s);return Un(e,a),t.strings_compacted=s.compacted,a.read_output=t,lF(a,t,r,n,o,i),lr(a,t,o),a}import mw from"fast-json-patch";import dw from"node:fs/promises";import DF from"node:path";import ne from"node:fs/promises";import de from"node:path";import{randomUUID as Jb}from"node:crypto";import{createRequire as dF}from"node:module";(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]="542d77d0-7bb8-5ed0-a1da-09de33d3767f")}catch{}})();var uF="history-event-index.sqlite",Yu="5",fF=8,pF="history-event-index",Ku=300,Zb=3e4,mF="history-event-index-invalidation",_F="history-event-index-invalidations",gF=Ku*2*1e3,Oa=Symbol("history-index-lock-contended"),Yr=new Map;function gi(e){return de.join(e,"runtime",uF)}function Ia(e){return de.join(e,"runtime",_F)}async function yF(e){let t=await ne.readdir(Ia(e)).catch(r=>{if(X(r))return[];throw r});return{pending:t.filter(r=>r.endsWith(".pending")).sort(),committed:t.filter(r=>r.endsWith(".committed")).sort()}}async function Wu(e){let t=await yF(e);return{pending:(await Promise.all(t.pending.map(async n=>{let o=/^(\d+)-(unknown|\d+)-(\d+)-.+\.pending$/u.exec(n);if(o!==null){let i=o[2];if(await au({pid:Number(o[1]),...i==="unknown"?{}:{process_start_identity:i}},Math.max(0,Date.now()-Number(o[3])),gF))return n}return await ne.rm(de.join(Ia(e),n),{force:!0}),null}))).filter(n=>n!==null),committed:t.committed}}async function _i(e,t){let r=await ie(e,mF,Ku,`history-event-index-invalidation:${process.pid}`,!1,!1,Zb);try{return await t()}finally{await r()}}async function hF(e){let t=Ia(e);await ne.mkdir(t,{recursive:!0});let r=Jb(),n=await su(),o=de.join(t,`${n.pid}-${n.process_start_identity??"unknown"}-${Date.now()}-${r}.pending`);return await ne.writeFile(o,`pending
60
- `,{flag:"wx"}),{pendingPath:o,committedPath:de.join(t,`${r}.committed`)}}function bF(e,t){return e.length===t.length&&e.every((r,n)=>r===t[n])}async function Ta(e){try{await ne.rm(gi(e),{force:!0})}catch{}}async function Ra(e,t){let r=await ie(e,pF,Ku,`history-event-index:${process.pid}`,!1,!1,Zb);try{return await t()}finally{await r()}}async function Qb(e){let t=de.join(e,"history"),r=await ne.readdir(t,{withFileTypes:!0}).catch(s=>{if(typeof s=="object"&&s!==null&&"code"in s&&s.code==="ENOENT")return[];throw s}),n=Yr.get(e)??{streams:new Map,ordered_events:[]},o=new Set,i=!Yr.has(e);for(let s of r.filter(a=>a.isFile()&&a.name.endsWith(".jsonl")).sort((a,c)=>a.name.localeCompare(c.name))){let a=s.name.slice(0,-6);o.add(a);let c=de.join(t,s.name),l=await ne.stat(c,{bigint:!0}),d=[l.dev,l.ino,l.size,l.mtimeNs,l.ctimeNs].join(":");if(n.streams.get(a)?.signature===d)continue;let u=await ew(c,a);n.streams.set(a,{signature:d,byte_size:Number(l.size),events:u.map((f,p)=>({stream_id:a,stream_offset:p,entry:f}))}),i=!0}for(let s of n.streams.keys())o.has(s)||(n.streams.delete(s),i=!0);if(i&&(n.ordered_events=[...n.streams.values()].flatMap(s=>s.events).sort(Xu)),Yr.delete(e),Yr.set(e,n),Yr.size>fF){let s=Yr.keys().next().value;Yr.delete(s)}return{events:n.ordered_events,stream_byte_sizes:new Map([...n.streams].map(([s,a])=>[s,a.byte_size]))}}async function ew(e,t){let r=await Ue(e,t);for(let[n,o]of r.entries())if(typeof o.ts!="string"||!hn(o.ts.trim()))throw new g(`History for ${t} contains an invalid or sub-millisecond timestamp at line ${n+1}. Repair or restore the history stream and retry.`,_.GENERIC_FAILURE,{code:"history_timestamp_invalid"});return r.map(n=>({...n,ts:new Date(n.ts.trim()).toISOString()}))}async function wF(e){return(await Qb(e)).events}function vF(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}function EF(e,t){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>=22?vF(t):null}var ka;function xa(){return ka!==void 0||(ka=EF(process.versions.node,dF(import.meta.url))),ka}function TF(e){e.exec(`
61
- PRAGMA journal_mode = OFF;
62
- PRAGMA synchronous = OFF;
63
- CREATE TABLE metadata (
64
- key TEXT PRIMARY KEY,
65
- value TEXT NOT NULL
66
- ) STRICT;
67
- CREATE TABLE events (
68
- stream_id TEXT NOT NULL,
69
- stream_offset INTEGER NOT NULL,
70
- ts TEXT NOT NULL,
71
- author TEXT NOT NULL,
72
- agent_harness TEXT,
73
- agent_instance TEXT,
74
- op TEXT NOT NULL,
75
- event_class TEXT NOT NULL CHECK(event_class IN ('substantive', 'maintenance')),
76
- entry_json TEXT NOT NULL,
77
- PRIMARY KEY(stream_id, stream_offset)
78
- ) STRICT;
79
- CREATE TABLE streams (
80
- stream_id TEXT PRIMARY KEY,
81
- byte_size INTEGER NOT NULL CHECK(byte_size >= 0)
82
- ) STRICT;
83
- CREATE INDEX events_order
84
- ON events(ts, stream_id, stream_offset);
85
- CREATE INDEX events_op_order
86
- ON events(op, ts, stream_id, stream_offset);
87
- CREATE INDEX events_class_stream_order
88
- ON events(event_class, stream_id, ts, stream_offset);
89
- CREATE INDEX events_author_order
90
- ON events(author, ts, stream_id, stream_offset);
91
- CREATE INDEX events_harness_order
92
- ON events(agent_harness, ts, stream_id, stream_offset);
93
- CREATE INDEX events_instance_order
94
- ON events(agent_instance, ts, stream_id, stream_offset);
95
- `),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(Yu)}function tw(e,t){let r={...t.entry,ts:new Date(t.entry.ts.trim()).toISOString()};e.prepare(`INSERT INTO events(
96
- stream_id, stream_offset, ts, author, agent_harness,
97
- agent_instance, op, event_class, entry_json
98
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(t.stream_id,t.stream_offset,r.ts,r.author,r.agent_harness??null,r.agent_instance??null,r.op,Ln(r),JSON.stringify(r))}function rw(e){let t=JSON.parse(String(e.entry_json));return typeof t.ts!="string"||!hn(t.ts.trim())?null:{stream_id:String(e.stream_id),stream_offset:Number(e.stream_offset),entry:{...t,ts:new Date(t.ts.trim()).toISOString()}}}function nw(e,t,r){e.prepare(`INSERT INTO streams(stream_id, byte_size) VALUES (?, ?)
99
- ON CONFLICT(stream_id) DO UPDATE SET byte_size = excluded.byte_size`).run(t,r)}async function kF(e){let t=xa();return t?Ra(e,async()=>{let r;try{r=await _i(e,()=>Wu(e))}catch(s){if(s instanceof g&&s.code==="lock_conflict")return!1;throw s}if(r.pending.length>0)return!1;let n=gi(e);await ne.mkdir(de.dirname(n),{recursive:!0});let o=`${n}.${Jb()}.tmp`,i;try{i=new t(o),TF(i),i.exec("BEGIN IMMEDIATE");let s=await Qb(e);for(let c of s.events)tw(i,c);for(let[c,l]of s.stream_byte_sizes)nw(i,c,l);i.exec("COMMIT"),i.close(),i=void 0;let a=await _i(e,async()=>{let c=await Wu(e);return c.pending.length>0||!bF(r.committed,c.committed)?!1:(await ne.rm(n,{force:!0}),await ne.rename(o,n),await Promise.all(r.committed.map(l=>ne.rm(de.join(Ia(e),l),{force:!0}))),!0)});return a||await ne.rm(o,{force:!0}),a}catch(s){throw i?.close(),await ne.rm(o,{force:!0}),s}}):!1}function Aa(e,t){return!t||t.length===0||t.includes(e)}function Xu(e,t){return e.entry.ts.localeCompare(t.entry.ts)||e.stream_id.localeCompare(t.stream_id)||e.stream_offset-t.stream_offset}function Ca(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():e}function AF(e,t){if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){if(Xu(e,{stream_id:t.after_stream_id,stream_offset:t.after_stream_offset,entry:{...e.entry,ts:Ca(t.after_ts)}})<=0)return!1}else if(t.since_ts!==void 0&&e.entry.ts<Ca(t.since_ts))return!1;return!0}function SF(e,t){return!t.harnesses||t.harnesses.length===0||t.harnesses.includes(e.entry.agent_harness??"")?!0:e.entry.agent_harness===void 0&&(t.harness_alias_authors??[]).includes(e.entry.author)}function OF(e,t){return!AF(e,t)||!Aa(e.entry.op,t.ops)||!Aa(e.entry.author,t.authors)||!Aa(e.entry.agent_instance??"",t.agent_instances)||!Aa(e.stream_id,t.stream_ids)||!SF(e,t)?!1:(t.provenance??[]).every(r=>{let n=e.entry.agent_provenance?.[r.dimension]?.value;return n!==void 0&&r.values.includes(n)})}async function nY(e,t){let r=Math.max(0,Math.floor(t.limit)),n=(await wF(e)).filter(o=>OF(o,t)).slice(0,r+1);return{events:n.slice(0,t.limit),has_more:n.length>t.limit}}async function ow(e,t,r){let n=de.dirname(de.dirname(e)),o=xa();if(!o){await r();return}let i=!1;try{await Ra(n,async()=>{let s=gi(n);try{await ne.access(s)}catch{await r();return}let a;try{if(a=new o(s),a.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==Yu)throw new TypeError("Unsupported history event index version")}catch{a?.close(),await ne.rm(s,{force:!0}),await r();return}try{a.exec("PRAGMA busy_timeout = 5000"),a.exec("BEGIN IMMEDIATE")}catch(l){throw a.close(),l}let c=!1;try{await r(),c=!0,i=!0;let l=de.basename(e,".jsonl"),d=a.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(l);tw(a,{stream_id:l,stream_offset:Number(d.value),entry:t}),nw(a,l,(await ne.stat(e)).size),a.exec("COMMIT"),a.close()}catch(l){if(a?.close(),!c)throw l;await Ta(n)}})}catch(s){if(i){await Ta(n);return}if(!(s instanceof g)||s.code!=="lock_conflict")throw s;let a;try{await _i(n,async()=>{let c=await hF(n);a=c.pendingPath;try{await r(),i=!0}catch(l){throw await ne.rm(c.pendingPath,{force:!0}),l}await ne.rename(c.pendingPath,c.committedPath),await Ta(n)})}catch(c){if(i){await Ta(n);try{await ne.rm(a,{force:!0})}catch{}return}throw c}}}async function Ju(e){await ne.rm(gi(de.dirname(de.dirname(e))),{force:!0})}function Sa(e,t,r,n){!n||n.length===0||(e.push(`${r} IN (${n.map(()=>"?").join(", ")})`),t.push(...n))}function CF(e,t,r,n){if(!r||r.length===0)return;let o=r.map(()=>"?").join(", "),i=n??[];if(i.length>0){e.push(`(agent_harness IN (${o}) OR (agent_harness IS NULL AND author IN (${i.map(()=>"?").join(", ")})))`),t.push(...r,...i);return}e.push(`agent_harness IN (${o})`),t.push(...r)}async function iw(e,t){let r=await Wu(e);if(r.pending.length>0||r.committed.length>0)return;let n=new t(gi(e),{readOnly:!0});try{if(n.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value===Yu)return n}catch(o){throw n.close(),o}n.close()}async function oY(e,t){let r=xa();if(!r)return null;let n=[],o=[];if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){n.push("(ts > ? OR (ts = ? AND stream_id > ?) OR (ts = ? AND stream_id = ? AND stream_offset > ?))");let a=Ca(t.after_ts);o.push(a,a,t.after_stream_id,a,t.after_stream_id,t.after_stream_offset)}else t.since_ts!==void 0&&(n.push("ts >= ?"),o.push(Ca(t.since_ts)));Sa(n,o,"op",t.ops),Sa(n,o,"author",t.authors),CF(n,o,t.harnesses,t.harness_alias_authors),Sa(n,o,"agent_instance",t.agent_instances);for(let a of t.provenance??[])n.push(`json_extract(entry_json, '$.agent_provenance.${a.dimension}.value') IN (${a.values.map(()=>"?").join(", ")})`),o.push(...a.values);Sa(n,o,"stream_id",t.stream_ids);let i=n.length===0?"":` WHERE ${n.join(" AND ")}`,s;try{return await Ra(e,async()=>_i(e,async()=>{if(s=await iw(e,r),!s)return null;let a=await RF(s,e,t.stream_ids);if(!await aw(s,e,a))return s.close(),s=void 0,null;let c=s.prepare(`SELECT stream_id, stream_offset, entry_json
100
- FROM events${i}
101
- ORDER BY ts, stream_id, stream_offset
102
- LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),l=c.slice(0,t.limit).map(rw);return s.close(),s=void 0,l.includes(null)?null:{events:l,has_more:c.length>t.limit}}))}catch{return s?.close(),null}}function sw(e,t){let r=Object.create(null);for(let n of e){if(!t.has(n.stream_id)||Ln(n.entry)!=="substantive")continue;let o=r[n.stream_id];(o===void 0||Xu(o,n)<0)&&(r[n.stream_id]=n)}return r}async function IF(e,t){if(de.basename(t)!==t)return null;try{return(await ne.stat(de.join(e,"history",`${t}.jsonl`))).size}catch(r){if(X(r))return 0;throw r}}async function aw(e,t,r){for(let n=0;n<r.length;n+=500){let o=r.slice(n,n+500),i=new Map(e.prepare(`SELECT stream_id, byte_size FROM streams
103
- WHERE stream_id IN (${o.map(()=>"?").join(", ")})`).all(...o).map(a=>[String(a.stream_id),Number(a.byte_size)])),s=await Promise.all(o.map(a=>IF(t,a)));for(let[a,c]of s.entries()){if(c===null)return!1;let l=o[a],d=i.get(l);if(!(c===0&&d===void 0)&&c!==d)return!1}}return!0}async function RF(e,t,r){if(r&&r.length>0)return[...new Set(r.filter(i=>i.trim().length>0))];let n=e.prepare("SELECT stream_id FROM streams").all().map(i=>String(i.stream_id)),o=await ne.readdir(de.join(t,"history"),{withFileTypes:!0}).then(i=>i.filter(s=>s.isFile()&&s.name.endsWith(".jsonl")).map(s=>s.name.slice(0,-6))).catch(i=>{if(X(i))return[];throw i});return[...new Set([...n,...o])]}async function Xb(e,t,r,n){if(!e)return null;let o;try{return await Ra(t,async()=>_i(t,async()=>{if(o=await iw(t,e),!o)return null;if(!await aw(o,t,r))return o.close(),o=void 0,null;let i=[];for(let s=0;s<r.length;s+=500){let a=r.slice(s,s+500),l=o.prepare(`SELECT stream_id, stream_offset, entry_json
104
- FROM (
105
- SELECT stream_id, stream_offset, entry_json,
106
- ROW_NUMBER() OVER (
107
- PARTITION BY stream_id
108
- ORDER BY ts DESC, stream_offset DESC
109
- ) AS recency_rank
110
- FROM events
111
- WHERE event_class = 'substantive'
112
- AND stream_id IN (${a.map(()=>"?").join(", ")})
113
- )
114
- WHERE recency_rank = 1`).all(...a).map(rw);if(l.includes(null))return o.close(),o=void 0,null;i.push(...l)}return o.close(),o=void 0,sw(i,n)}))}catch(i){return o?.close(),i instanceof g&&i.code==="lock_conflict"?Oa:null}}async function iY(e,t){let r=[...new Set(t.filter(a=>a.trim().length>0&&de.basename(a)===a))];if(r.length===0)return{};let n=new Set(r),o=xa(),i=await Xb(o,e,r,n);if(i!==null&&i!==Oa)return i;if(o&&i!==Oa)try{if(await kF(e)){let a=await Xb(o,e,r,n);if(a!==null&&a!==Oa)return a}}catch{}let s=[];return await Promise.all(r.map(async a=>{let c=de.join(e,"history",`${a}.jsonl`);(await ew(c,a).catch(d=>{if(d instanceof g&&d.code==="history_timestamp_invalid")return[];throw d})).forEach((d,u)=>{s.push({stream_id:a,stream_offset:u,entry:d})})})),sw(s,n)}import Zu from"node:fs/promises";import Wn 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]="979782f5-f4ee-5df5-a68a-0c51ab0548ae")}catch{}})();var xF=Wn.join("runtime","history-drift-cache.json"),cw={EINVAL:"invalid_cache_path",EISDIR:"cache_path_is_directory",ENOENT:"invalid_cache_path",ENOTDIR:"invalid_cache_path",ERR_FS_EISDIR:"cache_path_is_directory"};function lw(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function NF(e){let t=Wn.join(e,xF),r=!1,n="invalid_cache_path";try{r=(await Zu.stat(await Zu.realpath(e))).isDirectory()}catch(o){let i=lw(o);n=i===void 0?"unknown":cw[i]??"filesystem_error"}if(!r){Vn(`[pm] warning: history_drift_cache_invalidation_failed:${n}
115
- `);return}try{await Zu.rm(t,{force:!0})}catch(o){let i=lw(o);if(X(o))return;let s=i===void 0?"unknown":cw[i]??"filesystem_error";Vn(`[pm] warning: history_drift_cache_invalidation_failed:${s}
116
- `)}}async function Na(e){let t=Wn.dirname(Wn.resolve(e));Wn.basename(t)==="history"&&await NF(Wn.dirname(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]="6583b1e2-5eae-5e97-af83-a78adac1d571")}catch{}})();var PF={front_matter:{},body:""},pr=3,Yn=[1,2,3],_w=1,gw=[1];function rf(e){return tr(L(e),e.hash_algorithm)}function Kr(e){return As(L(e))}function MF(e){return As(L(e))}function Ma(e){let t={...e,record_hash_version:_w},{record_hash:r,...n}=t;return{...t,record_hash:rf(n)}}function yi(e){try{Pr(e.hash_algorithm)}catch{return{ok:!1,error:"unsupported_history_hash_algorithm"}}if(e.record_hash_version===void 0&&e.record_hash===void 0)return{ok:!0,coverage:"item_state_only"};if(e.record_hash_version===void 0||e.record_hash===void 0)return{ok:!1,error:"incomplete_record_hash_envelope"};if(!gw.includes(e.record_hash_version))return{ok:!1,error:"unsupported_record_hash_version"};let{record_hash:t,...r}=e;return rf(r)===e.record_hash?{ok:!0,coverage:"record_and_item_state"}:{ok:!1,error:"record_hash_mismatch"}}function LF(e,t){let r={before_hash:e.before_hash,after_hash:e.after_hash,patch_hash:Kr(e.patch)};return e.hash_algorithm!==void 0&&(r.hash_algorithm=e.hash_algorithm),e.item_hash_version!==void 0&&(r.item_hash_version=e.item_hash_version),t.retainOriginalPatch&&(r.patch=structuredClone(e.patch)),t.retainPriorRecordHash!==!1&&e.record_hash_version!==void 0&&e.record_hash!==void 0&&(r.record_hash_version=e.record_hash_version,r.record_hash=e.record_hash,r.record=structuredClone(e)),r}function nf(e,t,r={}){let n=yi(e);if(!n.ok)throw new TypeError(n.error);let o=Kr(e.patch),i=r.retainPriorRecord===!0||e.before_hash!==t.before_hash||e.after_hash!==t.after_hash||e.item_hash_version!==t.item_hash_version||e.hash_algorithm!==t.hash_algorithm||o!==Kr(t.patch),s=Ma({...t,...i?{reanchor_evidence:[...t.reanchor_evidence??[],LF(e,r)]}:{}}),a=La(s);if(!a.ok)throw new TypeError(a.error);return s}function yw(e){return!Array.isArray(e)||Object.keys(e).length!==e.length?!1:e.every(t=>!Xr(t)||typeof t.path!="string"?!1:t.op==="move"||t.op==="copy"?typeof t.from=="string":["add","replace","test"].includes(t.op)?Object.hasOwn(t,"value"):t.op==="remove")}function FF(e){return Xr(e)&&typeof e.ts=="string"&&typeof e.author=="string"&&typeof e.op=="string"&&typeof e.before_hash=="string"&&typeof e.after_hash=="string"&&yw(e.patch)}function $F(e){let t=e.record_hash_version!==void 0,r=e.record_hash!==void 0;return t===r}function jF(e){return!Xr(e)||!$F(e)||typeof e.before_hash!="string"||typeof e.after_hash!="string"||typeof e.patch_hash!="string"||!/^[a-f0-9]{64}$/u.test(e.patch_hash)||e.patch!==void 0&&!yw(e.patch)||e.record_hash_version!==void 0&&typeof e.record_hash_version!="number"||e.record_hash!==void 0&&(typeof e.record_hash!="string"||!/^(?:[a-f0-9]{64}|[a-f0-9]{128})$/u.test(e.record_hash))?!1:e.record===void 0||FF(e.record)}function UF(e){try{for(let t of e){if(!jF(t))return!1;Pr(t.hash_algorithm)}return!0}catch{return!1}}function zF(e){let t=e.record;return t!==void 0&&t.before_hash===e.before_hash&&t.after_hash===e.after_hash&&t.item_hash_version===e.item_hash_version&&t.hash_algorithm===e.hash_algorithm&&t.record_hash_version===e.record_hash_version&&t.record_hash===e.record_hash&&Kr(t.patch)===e.patch_hash}function qF(e,t,r){if(t.patch&&Kr(t.patch)!==t.patch_hash)return{kind:"patch_hash_mismatch"};if(t.record)return zF(t)?{kind:"record",entry:t.record}:{kind:"record_hash_mismatch"};let n=t.patch??e.patch;if(Kr(n)!==t.patch_hash)return{kind:"digest_only"};let o={...e,before_hash:t.before_hash,after_hash:t.after_hash,patch:n,hash_algorithm:t.hash_algorithm,...t.item_hash_version===void 0?{}:{item_hash_version:t.item_hash_version},...t.record_hash_version===void 0?{}:{record_hash_version:t.record_hash_version},...t.record_hash===void 0?{}:{record_hash:t.record_hash},...r.length===0?{}:{reanchor_evidence:r}};return t.hash_algorithm===void 0&&delete o.hash_algorithm,r.length===0&&delete o.reanchor_evidence,t.item_hash_version===void 0&&delete o.item_hash_version,t.record_hash_version===void 0||t.record_hash===void 0?{kind:"legacy",entry:o}:{kind:"record",entry:o}}function La(e){let t=e.reanchor_evidence;if(t===void 0)return{ok:!0,coverage:"none"};if(!Array.isArray(t)||!UF(t))return{ok:!1,error:"rewrite_evidence_invalid"};if(t.length===0)return{ok:!0,coverage:"none"};let r=e;for(let n=t.length-1;n>=0;n-=1){let o=t[n],i=qF(r,o,t.slice(0,n));if(i.kind==="patch_hash_mismatch")return{ok:!1,error:"rewrite_evidence_patch_hash_mismatch"};if(i.kind==="record_hash_mismatch")return{ok:!1,error:"rewrite_evidence_record_hash_mismatch"};if(i.kind==="digest_only")return{ok:!0,coverage:"digest_only"};if(i.kind==="legacy")return{ok:!0,coverage:"legacy_anchor_only"};if(!yi(i.entry).ok)return{ok:!1,error:"rewrite_evidence_record_hash_mismatch"};r=i.entry}return{ok:!0,coverage:"complete"}}function Da(e,t){return(e??"").localeCompare(t??"")}function uw(e,t){return(e??0)-(t??0)}function fr(e,t,r){return JSON.stringify(e??r).localeCompare(JSON.stringify(t??r))}function HF(e,t){return[e.scope.localeCompare(t.scope),Da(e.path,t.path),Da(e.command,t.command),uw(e.timeout_seconds,t.timeout_seconds),Da(e.pm_context_mode,t.pm_context_mode),+!!e.shared_host_safe-+!!t.shared_host_safe,fr(e.env_clear,t.env_clear,[]),fr(e.env_set,t.env_set,{}),fr(e.assert_stdout_contains,t.assert_stdout_contains,[]),fr(e.assert_stdout_regex,t.assert_stdout_regex,[]),fr(e.assert_stderr_contains,t.assert_stderr_contains,[]),fr(e.assert_stderr_regex,t.assert_stderr_regex,[]),uw(e.assert_stdout_min_lines,t.assert_stdout_min_lines),fr(e.assert_json_field_equals,t.assert_json_field_equals,{}),fr(e.assert_json_field_gte,t.assert_json_field_gte,{}),Da(e.note,t.note)].find(n=>n!==0)??0}function GF(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function BF(e,t){let r=GF(t);if(r.length===0)return!0;let n=e;for(let o of r){let i=/^(0|[1-9]\d*)$/.test(o)?Number(o):-1,s=Array.isArray(n)?i>=0&&i<n.length?n[i]:void 0:Xr(n)&&Object.prototype.hasOwnProperty.call(n,o)?n[o]:void 0;if(s===void 0)return!1;n=s}return!0}function VF(e,t){let r=[],n=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!BF(n,o.path)?{...o,op:"add"}:o;r.push(i),n=mw.applyPatch(n,[i],!0,!0).newDocument}return r}function Pa(e,t,r=!1){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let o=Qe(e),s=t===1||t===2&&r?{...o.metadata,...o.metadata.dependencies===void 0?{}:{dependencies:o.metadata.dependencies.map(l=>({...l,id:l.id.toLowerCase()}))},...o.metadata.tests===void 0?{}:{tests:o.metadata.tests.map(({workspace_context_mode:l,provenance:d,provenance_invalid:u,...f})=>f)},...o.metadata.test_runs===void 0?{}:{test_runs:o.metadata.test_runs.map(({executions:l,...d})=>d)}}:o.metadata,a=t===1&&s.tests?{...s,tests:[...s.tests].sort(HF)}:s;return{front_matter:R(a,Xe),body:o.body}}function fw(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let r=Qe(e);return{metadata:R(r.metadata,Xe),body:r.body}}function WF(e){return of(e,pr)}function of(e,t,r){if(!Yn.some(n=>n===t))throw new TypeError(`unsupported_item_hash_version:${String(t)}`);return tr(L(Pa(e,t)),r)}function hw(e,t,r){let n=of(e,t,r);return t===2?[n,tr(L(Pa(e,t,!0)),r)]:[n]}function YF(){return As(L(PF))}function Ut(e){let t=Ys(e.op),r=Pa(e.before,pr),n=Pa(e.after,pr),o=fw(e.before),i=fw(e.after),s=mw.compare(o,i),a=VF(o,s),c=Vy(e.author),l=c.harness?Object.fromEntries(Object.entries(eu().provenance_outcomes).filter(([,p])=>p.resolver!==void 0&&p.status!=="resolved")):void 0,d=l===void 0||Object.keys(l).length===0?e.context:{...e.context,agent_provenance_outcomes:l},u=e.hashAlgorithm??Zg,f={hash_algorithm:u,ts:e.nowIso,author:e.author,author_source:e.authorSource??By(e.author),...c.harness?{agent_harness:c.harness}:{},...c.model?{agent_model:c.model}:{},...c.model_source?{agent_model_source:c.model_source}:{},...c.instance?{agent_instance:c.instance}:{},...c.provenance?{agent_provenance:c.provenance}:{},...c.episode?{agent_episode:c.episode}:{},op:t,patch:a,before_hash:tr(L(r),u),after_hash:tr(L(n),u),item_hash_version:pr,message:e.message===void 0?void 0:e.message,...d===void 0?{}:{context:d}};return Ma({...f,event_class:Ln(f)})}function Xr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Qu(e){return new g(e,_.GENERIC_FAILURE,{code:"history_timestamp_invalid"})}function bw(e){let t=e.ts.trim();if(t.length===0)return Z();if(!hn(t))throw Qu("History timestamp must be a valid RFC 3339 date-time with millisecond precision");if(t!==e.ts)throw Qu("History timestamp must not contain surrounding whitespace");return e.ts}function pw(e,t){let r=e.ts;if(typeof r=="string"&&r.trim().length>0){if(!hn(r))throw Qu("History timestamp must be a valid RFC 3339 date-time with millisecond precision");return e}return{...e,ts:t}}function ef(e,t){let r=bw(t);if(typeof e=="string"){let n;try{n=JSON.parse(e)}catch{return e}return Xr(n)?JSON.stringify(pw(n,r)):e}return Xr(e)?JSON.stringify(pw(e,r)):JSON.stringify(e)}async function KF(e,t,r){if(r===!1)return!0;if(typeof r=="string"){let s=ef(r,t);return await tf(e,s),await Na(e),await Ju(e),!0}if(typeof r!="object"||r===null)return!1;let n=r;if(n.skip===!0)return!0;let o=typeof n.history_path=="string"?n.history_path:e,i=ef(typeof n.line=="string"?n.line:n.entry??t,t);return await tf(o,i),await Na(o),await Ju(o),!0}async function tf(e,t){let r;try{r=JSON.parse(t)}catch{r=null}if(!Xr(r)||r.op!=="create"){await ho(e,t);return}await dw.mkdir(DF.dirname(e),{recursive:!0});try{await dw.writeFile(e,`${t}
117
- `,{encoding:"utf8",flag:"wx"})}catch(n){throw n.code!=="EEXIST"?n:new g("This item identity is reserved by an existing history stream.",_.CONFLICT,{code:"item_identity_reserved",required:"Choose a new item ID or restore the original item from its history.",nextSteps:["Run pm history <id> --full, then pm restore <id> <version> to recover the original item."]})}}async function zt(e,t){let r=await Ze("history_append",{history_path:e,entry:t});if(r.handled&&await KF(e,t,r.result))return;let n=t.ts.trim().length>0?t:{...t,ts:bw(t)},o=Ma({...n,hash_algorithm:Pr(n.hash_algorithm),event_class:Ln(n)});await ow(e,o,async()=>{await tf(e,ef(o,o))}),await Na(e)}import af from"fast-json-patch";(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]="7a0fa585-7e3c-57fd-b29c-c26e9c522cb1")}catch{}})();var Kn={metadata:{},body:""};function Xn(){return structuredClone(Kn)}function $Y(e,t=pr,r){return sf(e,t,r)[0]}function sf(e,t,r){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return hw(hi(e),t,r)}catch{}let n=tr(L({replay_fallback:!0,metadata:e.metadata,body:e.body}),r);return t===2?[n,n]:[n]}function Ew(e,t,r,n){let o=Pr(n.hash_algorithm),i=sf(e,r,o),s=sf(t,r,o);return{beforeHashes:i,afterHashes:s,pairIndex:i.findIndex((a,c)=>a===n.before_hash&&s[c]===n.after_hash),beforeIndex:i.indexOf(n.before_hash),afterIndex:s.indexOf(n.after_hash)}}function hi(e){return{metadata:e.metadata,body:e.body}}function XF(e,t={}){return Qe(hi(e),t)}function JF(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=Qe(e);return{metadata:R(t.metadata,Xe),body:t.body}}function ww(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function ZF(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function cf(e){return Array.isArray(e)?e.filter(ZF).map(t=>({...t,path:ww(t.path),from:typeof t.from=="string"?ww(t.from):void 0})):[]}function QF(e){return typeof e=="object"&&e!==null&&"metadata"in e&&"body"in e&&typeof e.body=="string"&&typeof e.metadata=="object"&&e.metadata!==null}function qt(e,t){try{let r=cf(t),n=af.applyPatch(structuredClone(e),r,!0,!1).newDocument;return QF(n)?{ok:!0,document:{metadata:n.metadata,body:n.body}}:{ok:!1,error:new Error("history_replay_invalid_document_shape")}}catch(r){return{ok:!1,error:r}}}function e$(e){return[...new Set(e.map(t=>t.item_hash_version).filter(t=>t!==void 0&&Yn.includes(t)))]}function Tw(e){return e!==void 0&&!Yn.includes(e)}function t$(e,t){return e!==void 0?[e]:t===void 0?[...Yn]:[t]}function kw(e){let t=yi(e);if(!t.ok)return t.error;let r=La(e);return r.ok?void 0:r.error}function r$(e,t){let r=kw(e);if(r)return{ok:!1,error:r};let n=qt(t,e.patch);return n.ok?{ok:!0,document:n.document}:{ok:!1,error:"patch_apply_failed"}}function n$(e,t){let r=kw(e);if(r)throw new TypeError(`${r}:entry_${t+1}`)}function lf(e){let t=Xn(),r,n,o=Qg(e).map(i=>`verify_failed:duplicate_create:entry_${i.repeated_create_index}:prior_${i.prior_genesis_index}`);for(let i=0;i<e.length;i+=1){let s=e[i],a=s.item_hash_version,c=Tw(a);c&&o.push(`verify_failed:unsupported_item_hash_version:${String(a)}:entry_${i+1}`);let l=r$(s,t);if(!l.ok)return{ok:!1,errors:[...o,`verify_failed:${l.error}:entry_${i+1}`]};if(c){t=l.document,r=void 0,n=void 0;continue}let u=t$(a,n).map(m=>({version:m,match:Ew(t,l.document,m,s)})),f=u.find(({match:m})=>m.pairIndex>=0);if(f===void 0){let m=u.some(({match:h})=>h.beforeIndex>=0);return{ok:!1,errors:[...o,`verify_failed:${m?"after":"before"}_hash_mismatch:entry_${i+1}`]}}let p=f.version;t=l.document,r=p,n=a??n}return o.length>0?{ok:!1,errors:o,...r===void 0?{}:{item_hash_version:r}}:{ok:!0,errors:[],...r===void 0?{}:{item_hash_version:r}}}function lt(e){let t=lf(e);return{ok:t.ok,errors:t.errors}}function vw(e,t){try{return{ok:!0,document:af.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function o$(e,t){let r=structuredClone(e),n=0,o=0;for(let a of cf(t)){let c=vw(r,a);if(c.ok){r=c.document;continue}if(a.op==="replace"){let l=vw(r,{...a,op:"add"});if(l.ok){r=l.document,n+=1;continue}}o+=1}let i=r;return{document:{metadata:typeof i.metadata=="object"&&i.metadata!==null?i.metadata:{},body:typeof i.body=="string"?i.body:e.body},convertedReplaceToAdd:n,skippedOps:o}}function i$(e){let t=e$(e);if(t.length===1)return t[0];let r=lf(e);return r.ok&&r.item_hash_version!==void 0?r.item_hash_version:t.length===0?1:pr}function s$(e,t){let r=qt(e,t.patch);if(r.ok)return{next:r.document,patch:t.patch,repaired:!1,converted:0,skipped:0};let n=o$(e,t.patch);return{next:n.document,patch:af.compare(e,n.document),repaired:!0,converted:n.convertedReplaceToAdd,skipped:n.skippedOps}}function a$(e,t=i$(e),r={}){let n=e.findIndex(p=>Tw(p.item_hash_version));if(n>=0)throw new TypeError(`unsupported_item_hash_version:${String(e[n]?.item_hash_version)}:entry_${n+1}`);let o=Xn(),i=[],s=[],a=0,c=0,l=0,d=0,u,f=t!==1||e.some(p=>p.item_hash_version!==void 0);for(let p=0;p<e.length;p+=1){let m=e[p];n$(m,p);let h=s$(o,m),{next:b,patch:w,repaired:E,converted:O,skipped:B}=h;l+=O,d+=B,c+=Number(E);let P=Ew(o,b,t,m);u===void 0||r.continuousHashSurface!==!0?u=[P.pairIndex,P.beforeIndex,P.afterIndex,Math.min(u??0,P.beforeHashes.length-1)].find(pn=>pn>=0):u=Math.min(u,P.beforeHashes.length-1);let he=P.beforeHashes[u],Oe=P.afterHashes[u],Ye=he!==m.before_hash||Oe!==m.after_hash;Ye&&(a+=1);let Ce={...m,patch:w,before_hash:he,after_hash:Oe};f?Ce.item_hash_version=t:delete Ce.item_hash_version;let Tr=Ce.item_hash_version!==m.item_hash_version;(Ye||E||Tr)&&(Ce=nf(m,Ce,{retainOriginalPatch:E})),i.push(Ce),s.push({index:p+1,rehashed:Ye,patch_repaired:E,converted_replace_to_add:O,skipped_ops:B}),o=b}return{entries:i,finalDocument:o,entriesRehashed:a,entriesPatchRepaired:c,convertedReplaceToAdd:l,skippedOps:d,details:s,itemHashVersion:t,explicitItemHashVersion:f}}function jY(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
118
- `)}
119
- `}(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]="b0ab458f-0faf-5653-9862-43cbe9cf8f1f")}catch{}})();function Aw(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function df(e){if(e==="/body"||e.startsWith("/body/"))return"body";if(e==="/metadata"||e.startsWith("/metadata/")||e==="/front_matter"||e.startsWith("/front_matter/")){let r=e.replace(/^\/(?:metadata|front_matter)\/?/,"").split("/")[0];return r?Aw(r):"metadata"}let t=e.replace(/^\//,"").split("/")[0];return t?Aw(t):"root"}function Fa(e,t){return t==="body"?e.body:t==="metadata"?e.metadata:t==="root"?e:e.metadata[t]}function c$(e,t){let r=t?.windowStartIndex??0,n=t?.field;if(e.length===0||r>=e.length)return[];let o=Xn(),i=[];for(let s=0;s<e.length;s+=1){let a=e[s],c=o,l=qt(o,a.patch),d;l.ok?(d=l.document,o=d):d=c;let u=new Set;for(let p of a.patch)u.add(df(p.path)),p.from!==void 0&&u.add(df(p.from));let f=[...u].sort((p,m)=>p.localeCompare(m));if(s>=r)if(n!==void 0){if(!u.has(n))continue;let p={field:n,before:Fa(c,n),after:Fa(d,n)};i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:[n],changes:[p]})}else{let p=f.map(m=>({field:m,before:Fa(c,m),after:Fa(d,m)}));i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:f,changes:p})}}return i}import l$ from"node:fs/promises";import d$ 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]="99eadab1-5338-5d75-b600-fa0463053375")}catch{}})();function u$(e){return[...new Set(e.filter(t=>t.trim().length>0))].sort((t,r)=>t.localeCompare(r))}function f$(e,t){return new g(`Missing history stream for ${e}. ${t} requires history streams when settings.history.missing_stream is strict_error.`,_.NOT_FOUND)}async function p$(e,t){return await Xi(d$.dirname(e)),await(await l$.open(e,"a")).close(),ke({path:e,scope:"project",op:`${t}:history:auto_create`})}async function $a(e){return Sw({pmRoot:e.pmRoot,settings:e.settings,itemIds:[e.itemId],commandLabel:e.commandLabel})}async function Sw(e){let t=u$(e.itemIds),r=[],n=[];for(let o of t){let i=_t(e.pmRoot,o);if(!await re(i)){if(e.settings.history.missing_stream==="strict_error")throw f$(o,e.commandLabel);n.push(...await p$(i,e.commandLabel)),n.push(`history_stream_auto_created:${o}`),r.push(o)}}return{auto_created_ids:r,warnings:n}}import Ow from"node:fs/promises";import Jn 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]="e2a2001e-b162-599e-b262-76d2223a343c")}catch{}})();var mr="_workspace";function Jr(e){return Jn.join(e,"history",`${mr}.jsonl`)}function uf(e,t){return{metadata:{id:mr,title:"Workspace state",description:"Audited singleton workspace document state.",type:"Chore",status:"open",priority:2,tags:["workspace-history"],created_at:t,updated_at:t,documents:e},body:""}}function Zn(e,t=e.length){let r=Xn();for(let n of e.slice(0,t))r=qt(r,n.patch).document;return hi(r)}function bi(e){return"documents"in e.metadata&&typeof e.metadata.documents=="object"&&e.metadata.documents!==null&&!Array.isArray(e.metadata.documents)?e.metadata.documents:{}}function wi(e){throw new g(`Workspace history verification failed: ${e.join(", ")}`,_.CONFLICT,{code:"workspace_history_chain_invalid",reason:"workspace_history_chain_verification_failed",verification_errors:[...e],required:"Repair the _workspace history chain before reading, reconciling, restoring, or appending audited singleton state.",why:"Continuing against an unverifiable append-only stream could hide or compound workspace state corruption.",examples:["pm history _workspace --verify --json","pm validate --check-history-drift --fix-hints --json"],nextSteps:["Inspect the exact verification_errors and preserve the corrupt stream as evidence.","Use the history-drift remediation returned by validate before retrying the refused operation."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify --json"}})}function ff(e,t){let r=Jn.resolve(t),n=Jn.relative(e,r).replaceAll("\\","/");if(n.length===0||n===".."||n.startsWith("../")||Jn.isAbsolute(n))throw new TypeError("Workspace history document path must stay inside the tracker root");return{documentPath:n,absolutePath:r}}async function m$(e){let t=await Ue(Jr(e),mr),r=lt(t);r.ok||wi(r.errors);let n=bi(t.length===0?_n:Zn(t)),o=[],i=[],s=[],a=[];for(let c of Object.keys(n).sort()){let l;try{let d=ff(e,Jn.resolve(e,c));if(l=await V(d.absolutePath),l===null){s.push(c);continue}let u=JSON.parse(l);(L(u)===L(n[c])?o:i).push(c)}catch{a.push(c)}}return{ok:i.length===0&&s.length===0&&a.length===0,document_count:Object.keys(n).length,matching_documents:o,mismatched_documents:i,missing_documents:s,unreadable_documents:a}}async function Cw(e){let t=Jr(e.pmRoot),r=await Ue(t,mr),n=lt(r);n.ok||wi(n.errors);let o=e.idempotencyKey===void 0?void 0:r.find(u=>u.op===`${e.op}:${e.idempotencyKey}`);if(o)return{entry:o,historyPath:t};let i=Z(),s=r.length===0?_n:Zn(r),a=bi(s),c=a[e.documentPath];if(c!==void 0&&L(c)!==L(e.before))throw new g(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,_.CONFLICT,{code:"workspace_history_state_conflict",reason:"out_of_band_workspace_state",required:"Reconcile the singleton document with its matching _workspace history state before retrying the mutation.",why:"Accepting the write would make the append-only audit stream describe a state that was not actually observed.",examples:["pm history _workspace --verify","pm validate --check-history-drift --fix-hints"],nextSteps:["Review the version-control change that altered the singleton and preserve the intended document plus its matching workspace history.","Rerun the original mutation only after the on-disk singleton agrees with the latest audited workspace state."],recovery:{recovery_mode:"compact",next_best_command:"pm history _workspace --verify"}});let l=uf({...a,[e.documentPath]:e.after},r.length===0?i:s.metadata.created_at),d=Ut({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:l,message:e.message});return await zt(t,d),{entry:d,historyPath:t}}async function _$(e){let t=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Cw(e)}finally{await t()}}async function pf(e){let t=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let r=Jr(e.pmRoot),n=await Ue(r,mr),o=lt(n);o.ok||wi(o.errors);let i=n.length===0?_n:Zn(n),s=Ut({nowIso:Z(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await zt(r,s),{entry:s,historyPath:r}}finally{await t()}}async function Iw(e,t){if(t===e.raw)return!1;let r=t===null?null:JSON.parse(t),n=JSON.parse(e.raw);await F(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await Cw({pmRoot:e.pmRoot,documentPath:Jn.relative(e.pmRoot,e.filePath).replaceAll("\\","/"),before:r,after:n,op:e.op,author:e.author,lockTtlSeconds:e.lockTtlSeconds,lockWaitMs:e.lockWaitMs,message:e.message})}catch(o){throw t===null?await Ow.rm(e.filePath,{force:!0}):await F(e.filePath,t),o}return!0}async function g$(e){let t=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let r=await V(e.filePath),n=await e.mutate(r);return{changed:await Iw({...e,raw:n.raw},r),result:n.result}}finally{await t()}}async function mf(e){let t=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Iw(e,await V(e.filePath))}finally{await t()}}async function y$(e){let t=e.authorizationDecision.trim();if(!t)throw new TypeError("Workspace history reconciliation requires an authorization decision");let r=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:n,absolutePath:o}=ff(e.pmRoot,e.filePath),i=Jr(e.pmRoot),s=await Ue(i,mr),a=lt(s);a.ok||wi(a.errors);let c=Zn(s),l=bi(c);if(!Object.hasOwn(l,n))throw new TypeError(`Workspace history does not govern document ${n}`);let d=await V(o);if(d===null)throw new TypeError(`Workspace history document is missing: ${n}`);let u=JSON.parse(d);if(L(l[n])===L(u))return{changed:!1,historyPath:i};let f=Z(),p=Ut({nowIso:f,author:e.author,op:e.op,before:c,after:uf({...l,[n]:u},c.metadata.created_at),message:e.message,context:{reason:"out_of_band_workspace_state_reconciliation",document_path:n,authorization_decision:t}});return await zt(i,p),{changed:!0,entry:p,historyPath:i}}finally{await r()}}async function h$(e){let t=await ie(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let{documentPath:r,absolutePath:n}=ff(e.pmRoot,e.filePath),o=await Ue(Jr(e.pmRoot),mr),i=lt(o);if(i.ok||wi(i.errors),!Number.isInteger(e.targetVersion)||e.targetVersion<1||e.targetVersion>o.length)throw new TypeError(`Invalid workspace history target version: ${String(e.targetVersion)}`);let s=bi(Zn(o,e.targetVersion))[r];if(s===void 0)throw new TypeError(`Workspace history version ${e.targetVersion} does not contain ${r}`);let a=await V(n),c=`${JSON.stringify(s,null,2)}
120
- `;if(a===c)return{document_path:r,restored_from_version:e.targetVersion,changed:!1};let l=Zn(o),d=Z(),u=Ut({nowIso:d,author:e.author,op:e.op,before:l,after:uf({...bi(l),[r]:s},l.metadata.created_at),message:e.message,context:{reason:"workspace_state_restore",document_path:r,restored_from_version:e.targetVersion,replaced_out_of_band_state:!0}});await F(n,c);try{await zt(Jr(e.pmRoot),u)}catch(f){throw a===null?await Ow.rm(n,{force:!0}):await F(n,a),f}return{document_path:r,restored_from_version:e.targetVersion,changed:!0}}finally{await t()}}import{readFile as b$}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]="e6571e4b-c436-5af7-be01-c3fce3a9c5d3")}catch{}})();var w$=e=>b$(e,"utf8");async function v$(e,t,r=w$){if(t!==void 0)throw new g("--body and --body-file are mutually exclusive; provide the body inline with --body or from a file with --body-file, not both.",_.USAGE,{code:"body_file_conflicts_with_body",required:"Choose exactly one body source.",why:"Both --body and --body-file set the item body; allowing both would make the effective body ambiguous.",nextSteps:["Re-run with only --body <text> or only --body-file <path>."]});let n=e.trim();if(n.length===0)throw new g("--body-file requires a file path.",_.USAGE,{code:"body_file_missing_path",required:"Pass a readable file path: --body-file <path>.",why:"An empty --body-file value has no file to read the body from."});if(n==="-")return await In().resolveValue("-","--body-file");try{return await r(n)}catch(o){let i=o?.code,s=i==="EISDIR",a=i?` (${i})`:"";throw new g(s?`--body-file "${n}" is a directory, not a file. Point it at a readable file.`:`--body-file could not read "${n}"${a}. Check that the file exists and is readable.`,_.NOT_FOUND,{code:"body_file_unreadable",required:"Point --body-file at an existing, readable file.",why:`The body content is loaded from the file at the supplied path, so an unreadable path cannot produce a body${i?` (underlying error: ${i})`:""}.`,nextSteps:[`Verify the path: ls -l "${n}"`,"Or pipe the body with --body-file -.","Or pass the body inline with --body <text>."]})}}import E$ from"node:crypto";import ja 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]="1a689c0c-972a-5aff-a15e-ea48fcdf478b")}catch{}})();function xw(e){let t=[],r=!1;for(let n of(e??"").toLowerCase()){let o=n.charCodeAt(0),i=o>=48&&o<=57,s=o>=97&&o<=122;if(!i&&!s){r=t.length>0;continue}r&&(t.push("-"),r=!1),t.push(n)}return t.length===0?"pm-":`${t.join("")}-`}function Qn(e){let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),t}function Ht(e,t){let r=xw(t),n=Qn(e);return n.startsWith(r)?n:`${r}${n}`}function T$(e){let t=qm(e);if(t!==void 0)return t;let r="";for(let n=0;n<e;n+=1)r+=E$.randomInt(0,36).toString(36);return r}async function k$(e,t,r){let n=[...new Set(Object.values(r))].flatMap(o=>[ja.join(e,o,`${t}.md`),ja.join(e,o,`${t}.toon`)]);return n.push(ja.join(e,"history",`${t}.jsonl`)),(await Promise.all(n.map(o=>re(o)))).some(Boolean)}var Rw=4,Nw=12;function A$(e){return typeof e!="number"||!Number.isFinite(e)?Rw:Math.min(Nw,Math.max(Rw,Math.trunc(e)))}async function S$(e,t,r={}){let n=A$(r.tokenLength),o=Math.min(n+6,Nw),i=0;for(;n<=o;){for(let s=0;s<32;s+=1){let a=`${xw(t)}${T$(n)}`;if(!await(r.probeExisting===!1?re(ja.join(e,"history",`${a}.jsonl`)):k$(e,a,r.typeToFolder??Ee)))return a;i+=1}n+=1}throw new Error(`Unable to generate unique id after ${i} attempts`)}(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]="91874535-458b-5a33-a68a-96f44bd2e1f8")}catch{}})();var O$=new Set(["none","null","undefined"]);function TK(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new g("Config set parent-reference-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function C$(e){if(typeof e!="string")throw new g("--parent must be a string. Use --unset parent to clear this field.",_.USAGE);let t=e.trim();if(t.length===0)throw new g("--parent must not be empty. Use --parent none to unset.",_.USAGE);if(Dw(t))throw new g(`--parent must not use placeholder token "${t}". Use --unset parent to clear this field.`,_.USAGE);return t}function Dw(e){return O$.has(e.trim().toLowerCase())}function I$(e,t){if(t==="strict_error")throw new g(`Parent item "${e}" was not found. Create it first or use --parent none.`,_.USAGE);return{warnings:[`validation_warning:parent_reference_missing:${e}`]}}function R$(e,t,r){let n=Ht(e,r),o=Ht(t,r);if(n!==o)return;let i=t!==o||e!==n?` (normalized from parent "${t}" and item "${e}")`:"";throw new g(`Parent item "${o}" cannot be the same as item "${n}"${i}. Use --unset parent to clear this field.`,_.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]="b0306587-b3bb-5f82-bb56-7939d1976870")}catch{}})();var _f={critical:0,high:1,medium:2,low:3,minimal:4},x$=Object.keys(_f),N$=`numbers 0..4 (0=critical, 1=high, 2=medium, 3=low, 4=minimal) or names (${x$.join(", ")}), case-insensitive`;function Ua(e){return new g(`Invalid priority "${e}". Accepted values: ${N$}.`,_.USAGE)}function D$(e){if(typeof e=="number"){if(Number.isInteger(e)&&e>=0&&e<=4)return e;throw Ua(String(e))}if(typeof e!="string")throw Ua(String(e));let t=e.trim();if(t.length===0)throw Ua(e);let r=t.toLowerCase();if(Object.prototype.hasOwnProperty.call(_f,r))return _f[r];if(/^[0-4]$/.test(t))return Number(t);throw Ua(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bfb46357-04de-55a0-b132-779c153314de")}catch{}})();var P$=/^[A-Za-z0-9][A-Za-z0-9._/-]*$/,M$=64;function RK(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new g("Config set sprint-release-format-policy requires --policy with one of: warn, strict_error (alias: strict)",_.USAGE)}function L$(e,t,r){let n=t.trim();if(n.length===0)throw new g(`--${e} must not be empty. Use --${e} none to unset.`,_.USAGE);if(n.length<=M$&&P$.test(n))return{value:n,warnings:[]};let i="Expected 1-64 characters matching [A-Za-z0-9][A-Za-z0-9._/-]* (no spaces).";if(r==="strict_error")throw new g(`Invalid --${e} value "${n}". ${i}`,_.USAGE);return{value:n,warnings:[`validation_warning:${e}_format:${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]="0eff4d63-2691-5130-bc12-4957218393b5")}catch{}})();var Pw={open:"open_status",closed:"close_status",canceled:"canceled_status",cancelled:"canceled_status"},Mw="all";function LK(e){if(typeof e!="string")return!1;let t=e.split(",").map(r=>r.trim().toLowerCase()).filter(r=>r.length>0);return t.length===1&&t[0]===Mw}function F$(e,t){let r=e.trim().toLowerCase();if(r.length===0)return;let n=Pw[r];return n?t[n]:Fr(e,t)}function $$(e){let t=new Set(Object.keys(Pw));for(let r of e.definitions){t.add(r.id);for(let n of r.aliases)t.add(n)}return[...t]}function j$(e,t){let r=e.trim().toLowerCase(),n,o=Number.POSITIVE_INFINITY;for(let i of $$(t)){let s=ot(r,i.toLowerCase(),2);s!==null&&s<o&&(n=i,o=s)}return n}function U$(e,t,r){if(typeof e!="string")return;let n=r?.strict===!0,o=r?.flagLabel??"--status",i=e.split(",").map(c=>c.trim()).filter(c=>c.length>0);if(i.length===0)return;if(i.filter(c=>c.trim().toLowerCase()===Mw).length>0){if(i.length===1)return;throw new g(`Invalid ${o} value "all". Use it by itself, or omit ${o} to search every status.`,_.USAGE)}let a=[];for(let c of i){let l=F$(c,t);if(l===void 0){if(n){let d=j$(c,t);throw new g(`Invalid ${o} value "${c}". Use open|closed|canceled or a configured status id${d?`. Did you mean "${d}"?`:"."}`,_.USAGE)}a.push(c);continue}a.push(l)}return[...new Set(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]="eb151177-d326-5ce4-9624-87f6393046e0")}catch{}})();var z$={bug:"Issue",bugfix:"Issue",defect:"Issue",incident:"Issue",enhancement:"Feature",story:"Feature",userstory:"Feature","user-story":"Feature","user story":"Feature",change:"Chore",ticket:"Task",todo:"Task"};function q$(e){if(e!==void 0)return z$[e.trim().toLowerCase()]}(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]="41196e9d-00c2-5473-848d-7563463c42a7")}catch{}})();function Fw(e){let t=[],r=new Set;for(let n of e)for(let o of Object.keys(n))r.has(o)||(r.add(o),t.push(o));return t}function gf(e){return e==null?"":Array.isArray(e)?e.map(t=>gf(t)).join(";"):typeof e=="object"?JSON.stringify(e):String(e)}function Lw(e){return/[",\r\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function H$(e){if(e.length===0)return"";let t=Fw(e),r=[t.map(n=>Lw(n)).join(",")];for(let n of e)r.push(t.map(o=>Lw(gf(n[o]))).join(","));return r.join(`
121
- `)}function G$(e){if(e.length===0)return"";let t=Fw(e),r=e.map(s=>t.map(a=>gf(s[a]))),n=t.map((s,a)=>Math.max(s.length,...r.map(c=>c[a].length))),o=(s,a)=>s.padEnd(n[a]),i=[t.map((s,a)=>o(s,a)).join(" | ")];i.push(n.map(s=>"-".repeat(s)).join("-+-"));for(let s of r)i.push(s.map((a,c)=>o(a,c)).join(" | "));return i.join(`
122
- `)}(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]="df9abedd-6e84-5712-8e5e-4e510ec3ed60")}catch{}})();function B$(e,t="--limit"){if(e===void 0)return;let r=Number(e);if(!Number.isFinite(r)||r<0)throw new g(`${t} must be a non-negative number`,_.USAGE);return Math.floor(r)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="24688724-53cd-5375-ae7e-cfe098cd0dc8")}catch{}})();var V$=new Map(wn.map(e=>[e.toLowerCase(),e])),W$=/^[A-Za-z][A-Za-z0-9_-]*$/;function $w(e,t){if(!W$.test(e))throw new Error(`${t} "${e}" is not a valid identifier. Use a single letter-led token of letters, digits, hyphen, or underscore with no spaces or punctuation (e.g. "Spike" or "code-review").`)}function yf(e){return V$.get(e.trim().toLowerCase())}function zw(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function Y$(e){return e.replace(/[\\"`$]/g,t=>`\\${t}`)}function qw(e){let t=new Map;for(let r of e){let n=r.trim();if(n.length===0)continue;let o=n.toLowerCase();t.has(o)||t.set(o,n)}return[...t.values()].sort((r,n)=>r.localeCompare(n))}function BK(e){let t=(e.name??"").trim();if(t.length===0)throw new Error("Type name must not be empty.");$w(t,"Type name");let r=yf(t);if(r)throw new Error(`Cannot redefine built-in item type "${r}". Built-in types are reserved: ${wn.join(", ")}.`);let n=e.description?.trim(),o=e.defaultStatus?.trim(),i=e.folder?.trim(),s=i&&i.length>0?ys(i):void 0,a=qw(e.aliases??[]);for(let c of a){$w(c,"Alias");let l=yf(c);if(l)throw new Error(`Alias "${c}" collides with built-in item type "${l}". Built-in types are reserved: ${wn.join(", ")}.`)}return{name:t,description:n&&n.length>0?n:void 0,defaultStatus:o&&o.length>0?o:void 0,folder:s,aliases:a}}function VK(e,t){let r=e.name.toLowerCase(),n=new Map;for(let i of t.definitions){if(typeof i.name!="string")continue;let s=i.name.trim();if(!(s.length===0||s.toLowerCase()===r)){n.set(s.toLowerCase(),s);for(let a of zw(i.aliases))a.trim().length>0&&n.set(a.trim().toLowerCase(),s)}}let o=n.get(r);if(o)throw new Error(`Type name "${e.name}" collides with an alias of existing item type "${o}".`);for(let i of e.aliases){let s=n.get(i.toLowerCase());if(s)throw new Error(`Alias "${i}" already maps to existing item type "${s}".`)}}function jw(e,t){return typeof t=="string"&&t.trim().length>0?ys(t).toLowerCase():To(e).toLowerCase()}function WK(e,t,r){let n=e.name.toLowerCase(),o=jw(e.name,e.folder),i=a=>{throw new Error(`Item type "${e.name}" would store items in folder "${o}", which already belongs to existing item type "${a}". Pass a distinct --folder to keep their storage separate.`)};for(let a of t.definitions){if(typeof a.name!="string")continue;let c=a.name.trim();c.length===0||c.toLowerCase()===n||jw(c,a.folder)===o&&i(c)}let s=r?.get(o);s!==void 0&&s.toLowerCase()!==n&&i(s)}function YK(e){if(e==null||e.trim().length===0)return{definitions:[]};let t;try{t=JSON.parse(e)}catch{throw new Error("schema/types.json contains invalid JSON.")}return{definitions:K$(t)}}function K$(e){let t=X$(e);if(!t)return[];let r=[];for(let n of t){if(typeof n!="object"||n===null||Array.isArray(n))continue;let o=n;typeof o.name!="string"||o.name.trim().length===0||r.push(o)}return r}function X$(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let t=e;if(Array.isArray(t.definitions))return t.definitions;if(typeof t.item_types=="object"&&t.item_types!==null){let r=t.item_types;if(Array.isArray(r.definitions))return r.definitions}}function KK(e,t){let r=t.name.toLowerCase(),n=e.definitions.slice(),o=n.findIndex(c=>typeof c.name=="string"&&c.name.trim().toLowerCase()===r),i=o>=0?n[o]:void 0,s=qw([...zw(i?.aliases),...t.aliases]),a={...i,name:t.name};return t.folder!==void 0&&(a.folder=t.folder),s.length>0?a.aliases=s:a.aliases!==void 0&&delete a.aliases,Uw(a,"description",t.description),Uw(a,"default_status",t.defaultStatus),o>=0?n[o]=a:n.push(a),n.sort((c,l)=>c.name.localeCompare(l.name)),{file:{definitions:n},definition:a,replaced:o>=0,...i&&typeof i.name=="string"?{previousName:i.name}:{}}}function XK(e,t){let r=(t??"").trim();if(r.length===0)throw new Error("Type name must not be empty.");let n=yf(r);if(n)throw new Error(`Cannot remove built-in item type "${n}". Built-in types are reserved: ${wn.join(", ")}.`);let o=r.toLowerCase(),i=e.definitions.slice(),s=i.findIndex(c=>typeof c.name=="string"&&c.name.trim().toLowerCase()===o);if(s<0)return{file:{definitions:i},removed:!1};let[a]=i.splice(s,1);return{file:{definitions:i},removed:!0,definition:a}}function Uw(e,t,r){let n=e;r!==void 0&&(n[t]=r)}function JK(e){return`${JSON.stringify({definitions:e.definitions},null,2)}
123
- `}function J$(e,t){let r=e.trim().length>0?e.trim():e,n=t?.trim()||".agents/pm/schema/types.json";return`To register a custom type, run: pm schema add-type "${Y$(r)}" (writes ${n}).`}function Z$(e,t,r){return`Invalid type value "${e}". Allowed: ${t.join(", ")}. ${J$(e,r)}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7778b388-1b28-53e7-a06e-ef6441b0ed68")}catch{}})();function Hw(e,t){return le(e,t)}function Q$(e,t,r){let n={};for(let o of t.command_to_fields.get(r)??[]){let i=Hs(e,o);i!==void 0&&(n[o.metadata_key]=Lr(o,i))}return n}function ej(e,t){for(let[r,n]of Object.entries(t)){let o=e[r];if(Array.isArray(n)){if(Array.isArray(o)){let i=o.map(a=>String(a));if(!n.map(a=>String(a)).every(a=>i.includes(a)))return!1;continue}if(!Hw(o,n[n.length-1]))return!1;continue}if(!Hw(o,n))return!1}return!0}(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]="8c5aba7a-21a0-5d99-943a-877085caca57")}catch{}})();function Gw(e){return typeof e=="string"?e.trim().toLowerCase():""}function za(e,t){let r=$e(e);return r.length===0?"":t?.alias_to_id?.get(r)??r}function tj(e){let t=Array.isArray(e?.type_workflows)?e.type_workflows:[],r=new Map;for(let n of t){let o=Gw(n?.type);if(o.length===0||!Array.isArray(n?.allowed_transitions))continue;let i=n.allowed_transitions,s=r.get(o)??{pairs:[],denyAll:!1};i.length===0&&(s.denyAll=!0);for(let a of i){if(!Array.isArray(a)||a.length!==2)continue;let c=$e(a[0]),l=$e(a[1]);c.length===0||l.length===0||s.pairs.some(d=>d[0]===c&&d[1]===l)||s.pairs.push([c,l])}r.set(o,s)}return[...r.entries()].filter(([,n])=>n.pairs.length>0||n.denyAll).map(([n,o])=>({type:n,allowed_transitions:o.pairs})).sort((n,o)=>n.type.localeCompare(o.type))}function rj(e){let t=Gw(e.typeName),r=e.typeWorkflows.find(s=>s.type===t);if(!r)return{allowed:!0,hasRule:!1,allowedTransitions:[]};let n=za(e.fromStatus,e.statusRegistry),o=za(e.toStatus,e.statusRegistry);return n.length>0&&n===o?{allowed:!0,hasRule:!0,allowedTransitions:r.allowed_transitions}:{allowed:r.allowed_transitions.some(s=>{let a=za(s[0],e.statusRegistry),c=za(s[1],e.statusRegistry);return a===n&&c===o}),hasRule:!0,allowedTransitions:r.allowed_transitions}}function nj(e){return e.length===0?"(no transitions allowed)":e.map(t=>`${t[0]} -> ${t[1]}`).join(", ")}(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]="245ec731-790e-55ae-9bb6-3eeaaefe27ee")}catch{}})();var _e={ok:!1},v=e=>typeof e=="string"?{ok:!0,value:e}:_e,D=e=>typeof e=="boolean"?{ok:!0,value:e}:_e;function Y(e={}){return t=>typeof t!="number"||!Number.isFinite(t)||e.int&&(!Number.isInteger(t)||!Number.isSafeInteger(t))||e.positive&&t<=0||typeof e.min=="number"&&t<e.min||typeof e.max=="number"&&t>e.max?_e:{ok:!0,value:t}}function j(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:_e}function A(e,t){return r=>{if(!Array.isArray(r)||t!==void 0&&r.length>t)return _e;let n=[];for(let o of r){let i=e(o);if(!i.ok)return _e;n.push(i.value)}return{ok:!0,value:n}}}function bf(e,t){return r=>typeof r=="string"&&r.length>0&&r.length<=e&&r===r.trim()&&(t===void 0||t.test(r))?{ok:!0,value:r}:_e}function y(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function qa(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return _e;let r={};for(let[n,o]of Object.entries(t)){let i=e(o);if(!i.ok)return _e;r[n]=i.value}return{ok:!0,value:r}}}function x(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return _e;let r=t,n={};for(let[o,i]of Object.entries(e)){let s=i(r[o]);if(!s.ok)return _e;s.value!==void 0&&(n[o]=s.value)}return{ok:!0,value:n}}}var oj=x({key:v,values:A(v),required:y(D),aliases:y(A(v)),description:y(v)}),ij=x({command:j("create","update"),option:v,required:y(D),visible:y(D),enabled:y(D)}),sj=x({name:v,description:y(v),default_status:y(v),execution_role:y(j("agent","human","gate")),folder:y(v),aliases:y(A(v)),required_create_fields:y(A(v)),required_create_repeatables:y(A(v)),options:y(A(oj)),command_option_policies:y(A(ij))}),aj=x({id:v,aliases:y(A(v)),roles:y(A(j(...ls))),description:y(v),order:y(Y())}),cj=x({key:v,metadata_key:y(v),front_matter_key:y(v),cli_flag:y(v),cli_aliases:y(A(v)),description:y(v),type:y(j(...En)),commands:y(A(j(...ds))),repeatable:y(D),required:y(D),required_on_create:y(D),required_types:y(A(v)),allow_unset:y(D)}),lj=e=>{if(!Array.isArray(e)||e.length!==2)return _e;let[t,r]=e;return typeof t!="string"||typeof r!="string"?_e:{ok:!0,value:[t,r]}},dj=x({type:v,allowed_transitions:A(lj)}),uj=y(x({version:y(Y({int:!0})),files:y(x({types:y(v),statuses:y(v),fields:y(v),workflows:y(v)})),statuses:y(A(aj)),fields:y(A(cj)),workflow:y(x({draft_status:y(v),open_status:y(v),in_progress_status:y(v),blocked_status:y(v),close_status:y(v),canceled_status:y(v)})),type_workflows:y(A(dj)),unknown_field_policy:y(j(...us))})),fj=y(x({preset:y(j(...Jm)),ownership_enforcement:y(j("none","warn","strict")),create_mode_default:y(j("progressive","strict")),close_validation_default:y(j("off","warn","strict")),require_close_reason:y(D),parent_reference:y(j("warn","strict_error")),metadata_profile:y(j("core","strict","custom")),force_required_for_stale_lock:y(D),create_default_type:y(v),workflow_enforcement:y(j("off","warn","strict")),duplicate_detection_mode:y(j("off","advisory","strict")),duplicate_detection_threshold:y(Y({min:0,max:1})),duplicate_detection_limit:y(Y({int:!0,min:0,max:20}))})),pj=x({name:v,disabled:y(D),require_trusted:y(D),require_provenance:y(D),sandbox_profile:y(j("none","restricted","strict")),allowed_capabilities:y(A(v)),blocked_capabilities:y(A(v)),allowed_surfaces:y(A(v)),blocked_surfaces:y(A(v)),allowed_commands:y(A(v)),blocked_commands:y(A(v)),allowed_actions:y(A(v)),blocked_actions:y(A(v)),allowed_services:y(A(v)),blocked_services:y(A(v))}),hf=j("block","warn"),mj=e=>typeof e=="string"?hf(e):x({global:y(hf),project:y(hf)})(e),_j=y(x({mode:y(j("off","warn","enforce")),trust_mode:y(j("off","warn","enforce")),pm_max_version_exceeded_mode:y(mj),require_provenance:y(D),trusted_extensions:y(A(v)),default_sandbox_profile:y(j("none","restricted","strict")),allowed_extensions:y(A(v)),blocked_extensions:y(A(v)),allowed_capabilities:y(A(v)),blocked_capabilities:y(A(v)),allowed_surfaces:y(A(v)),blocked_surfaces:y(A(v)),allowed_commands:y(A(v)),blocked_commands:y(A(v)),allowed_actions:y(A(v)),blocked_actions:y(A(v)),allowed_services:y(A(v)),blocked_services:y(A(v)),extension_overrides:y(A(pj))})),Zr=bf(128),gj=x({harness:bf(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:y(A(Zr,64)),model_environment_keys:y(A(Zr,64)),session_environment_keys:y(A(Zr,64)),provenance_environment_keys:y(qa(A(Zr,64))),provenance_resolvers:y(qa(j("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:y(A(Zr,64)),argv_markers:y(A(Zr,64)),client_names:y(A(Zr,64))}),yj=x({version:Y({int:!0}),id_prefix:v,ids:y(x({token_length:y(Y({int:!0,min:4,max:12}))})),author_default:v,agent_identity:y(x({probes_enabled:y(D),identity_vocabulary:y(x({version:Y({int:!0,positive:!0}),aliases:qa(bf(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:A(gj)})),mutation_guard:y(x({require_attributed_author:y(D),secret_guard:y(j("off","advise","block")),stale_in_progress_hours:y(Y({int:!0,positive:!0}))})),item_format:y(j("toon","json_markdown")),locks:x({ttl_seconds:Y({int:!0}),wait_ms:y(Y({int:!0,min:0}))}),checkpoints:y(x({retention_days:y(Y({int:!0,positive:!0}))})),output:x({default_format:j("toon","json")}),ux:y(x({deprecation_hints:y(D)})),history:y(x({missing_stream:j("auto_create","strict_error"),compact_policy:y(x({enabled:y(D),max_entries:y(Y({int:!0,positive:!0})),trigger:y(j("health_warn","auto"))}))})),validation:y(x({sprint_release_format:j("warn","strict_error"),parent_reference:y(j("warn","strict_error")),metadata_profile:y(j("core","strict","custom")),metadata_required_fields:y(A(v)),lifecycle_stale_blocker_reason_patterns:y(A(v)),lifecycle_closure_like_blocked_reason_patterns:y(A(v)),lifecycle_closure_like_resolution_patterns:y(A(v)),lifecycle_closure_like_actual_result_patterns:y(A(v)),estimate_defaults_by_type:y(qa(Y({int:!0,positive:!0})))})),governance:fj,workflow:y(x({definition_of_done:A(v)})),testing:y(x({record_results_to_items:D,allow_untrusted_linked_tests:y(D)})),telemetry:y(x({enabled:D,first_run_prompt_completed:y(D),capture_level:y(j("minimal","redacted","max")),endpoint:y(v),installation_id:y(v),retention_days:y(Y({int:!0,positive:!0}))})),agent_guidance:y(x({prompt_completed:y(D),declined:y(D),declined_at:y(v),template_version:y(Y({int:!0,positive:!0})),last_checked_files:y(A(v))})),item_types:y(x({definitions:A(sj)})),schema:uj,context:y(x({default_depth:y(j("brief","standard","deep")),activity_limit:y(Y({int:!0,positive:!0})),stale_threshold_days:y(Y({int:!0,positive:!0})),sections:y(x({hierarchy:y(D),activity:y(D),progress:y(D),recently_created:y(D),unparented:y(D),blockers:y(D),files:y(D),workload:y(D),staleness:y(D),tests:y(D)}))})),extensions:x({enabled:A(v),disabled:A(v),policy:_j}),search:x({score_threshold:Y(),hybrid_semantic_weight:y(Y()),max_results:Y({int:!0}),embedding_model:v,embedding_corpus_max_characters:y(Y()),embedding_batch_size:Y({int:!0}),embedding_timeout_ms:y(Y({int:!0})),scanner_max_batch_retries:Y({int:!0}),provider:y(v),default_mode:y(j("auto","keyword","semantic","hybrid")),corpus_fields:y(A(v)),mutation_refresh_policy:y(j("cache_only","semantic_configured","semantic_auto")),query_expansion:y(x({enabled:y(D),provider:y(v)})),rerank:y(x({enabled:y(D),model:y(v),top_k:y(Y({int:!0,positive:!0}))})),bm25:y(x({k1:y(Y()),b:y(Y())}))}),providers:x({openai:x({base_url:v,api_key:v,model:v}),ollama:x({base_url:v,model:v})}),vector_store:x({adapter:y(v),collection_name:y(v),qdrant:x({url:v,api_key:v}),lancedb:x({path:v})})});function Bw(e){let t=yj(e);return t.ok?{success:!0,data:t.value}:{success:!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]="833a4f8a-7e5d-5480-a526-4e1ebaadd0a8")}catch{}})();var hj={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},Vw=120;function wf(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function Yw(e){let t=new Map;for(let[r,n]of Object.entries(e))t.set(r.toLowerCase(),n);return t}var bj=Yw(hj),Ww=new WeakMap;function wj(e){let t=Ww.get(e);if(t)return t;let r=Yw(e);return Ww.set(e,r),r}function a7(e,t){let r=(e??"").trim().toLowerCase();if(r.length===0)return Vw;if(t){let o=wj(t).get(r);if(wf(o))return Math.floor(o)}let n=bj.get(r);return wf(n)?Math.floor(n):Vw}function vf(e){let t={};if(e===null||typeof e!="object"||Array.isArray(e))return t;for(let[r,n]of Object.entries(e)){let o=r.trim();o.length===0||!wf(n)||(t[o]=Math.floor(n))}return t}import{stat as vj}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]="7c23ef10-ea7a-5680-8850-822e7d0c07a6")}catch{}})();var Ha=new Map;function Kw(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}async function Ej(e){try{let t=await vj(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function _r(e){let t=Kw(e),r=await Promise.all(t.map(n=>Ej(n)));return r.sort((n,o)=>n.path.localeCompare(o.path)),r}function vi(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r+=1){let n=e[r],o=t[r];if(n.path!==o.path||n.mtime_ms!==o.mtime_ms||n.size!==o.size)return!1}return!0}function Xw(e){return Ha.get(e)}function Ga(e,t){let r=Kw(t.tracked_paths),n=[...t.signatures].map(o=>({path:o.path,mtime_ms:o.mtime_ms,size:o.size})).sort((o,i)=>o.path.localeCompare(i.path));Ha.set(e,{tracked_paths:r,signatures:n,value:t.value})}function wt(e){if(e){Ha.delete(e);return}Ha.clear()}(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]="665677ea-4d55-5858-8b21-6dee20bfd46b")}catch{}})();var Tj="settings:write",tv=Symbol("pm.settings.persist_source"),kj=128,Aj=new Set(["off","advisory","strict"]);function Jw(e){return structuredClone(ul[e])}function Sj(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:C.governance.preset}function Zw(e,t){let r=typeof t.create_default_type=="string"?t.create_default_type.trim():void 0;return r&&r.length>0&&(e.create_default_type=r),(t.workflow_enforcement==="off"||t.workflow_enforcement==="warn"||t.workflow_enforcement==="strict")&&(e.workflow_enforcement=t.workflow_enforcement),t.require_close_reason===!1&&(e.require_close_reason=!1),e.duplicate_detection_mode=t.duplicate_detection_mode,e.duplicate_detection_threshold=t.duplicate_detection_threshold,e.duplicate_detection_limit=t.duplicate_detection_limit,e}function Oj(e){return e.preset==="custom"?Zw({preset:"custom",ownership_enforcement:e.ownership_enforcement,create_mode_default:e.create_mode_default,close_validation_default:e.close_validation_default,parent_reference:e.parent_reference,metadata_profile:e.metadata_profile,force_required_for_stale_lock:e.force_required_for_stale_lock},e):Zw({preset:e.preset},e)}function Cj(e){let t=typeof e.create_default_type=="string"?e.create_default_type.trim():void 0,r={};t&&t.length>0&&(r.create_default_type=t),(e.workflow_enforcement==="off"||e.workflow_enforcement==="warn"||e.workflow_enforcement==="strict")&&(r.workflow_enforcement=e.workflow_enforcement),typeof e.require_close_reason=="boolean"&&(r.require_close_reason=e.require_close_reason),Aj.has(String(e.duplicate_detection_mode))&&(r.duplicate_detection_mode=e.duplicate_detection_mode);let n=e.duplicate_detection_threshold;[typeof n=="number",Number.isFinite(n),Number(n)>=0,Number(n)<=1].every(Boolean)&&(r.duplicate_detection_threshold=n);let o=e.duplicate_detection_limit;return[typeof o=="number",Number.isSafeInteger(o),Number(o)>=0,Number(o)<=20].every(Boolean)&&(r.duplicate_detection_limit=o),r}function Va(e){let t=e.governance??{},r=Sj(t.preset),n=Cj(t);if(r==="custom"){let s=Jw("default"),a=n.require_close_reason??s.require_close_reason;return{preset:r,ownership_enforcement:t.ownership_enforcement??s.ownership_enforcement,create_mode_default:t.create_mode_default??s.create_mode_default,close_validation_default:t.close_validation_default??s.close_validation_default,parent_reference:t.parent_reference??s.parent_reference,metadata_profile:t.metadata_profile??s.metadata_profile,force_required_for_stale_lock:t.force_required_for_stale_lock??s.force_required_for_stale_lock,...n,require_close_reason:a,duplicate_detection_mode:n.duplicate_detection_mode??s.duplicate_detection_mode,duplicate_detection_threshold:n.duplicate_detection_threshold??s.duplicate_detection_threshold,duplicate_detection_limit:n.duplicate_detection_limit??s.duplicate_detection_limit}}let o=Jw(r),i=n.require_close_reason??o.require_close_reason;return{preset:r,...o,...n,require_close_reason:i}}function rv(){return structuredClone(C)}function nv(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:C.search.mutation_refresh_policy}function ov(e){return e==="auto"||e==="keyword"||e==="semantic"||e==="hybrid"?e:"auto"}function iv(e){return typeof e=="boolean"?e:C.search.query_expansion.enabled}function sv(e){return typeof e!="string"?C.search.query_expansion.provider:e.trim()}function av(e){return typeof e=="boolean"?e:C.search.rerank.enabled}function cv(e){return typeof e!="string"?C.search.rerank.model:e.trim()}function lv(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:C.search.rerank.top_k}function dv(e){if(typeof e!="string")return C.vector_store.collection_name;let r=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,kj);return r.length>0?r:C.vector_store.collection_name}function Ef(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function Ij(e,t){let r=e.schema,n=Ef(r?.statuses),o=Ef(r?.fields),i=Ef(r?.type_workflows);return{source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:eo(e.item_types?.definitions),has_source_schema_statuses:n.present,source_schema_statuses:n.values,has_source_schema_fields:o.present,source_schema_fields:o.values,has_source_schema_type_workflows:i.present,source_schema_type_workflows:i.values,runtime_item_type_definitions:eo(t.item_types?.definitions),runtime_schema_statuses:structuredClone(t.schema.statuses),runtime_schema_fields:structuredClone(t.schema.fields),runtime_schema_type_workflows:structuredClone(t.schema.type_workflows??[])}}function Of(e,t){Object.defineProperty(e,tv,{value:t,writable:!0,configurable:!0,enumerable:!1})}function Cf(e){let t=e[tv];if(!(!t||typeof t!="object"))return t}function Rj(e){let t=Cf(e);if(t){let r=structuredClone(t);r.source_settings.item_format=e.item_format,Of(e,r)}}function Ba(e){let t=structuredClone(e.settings),r=Cf(e.settings);return r&&Of(t,r),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function xj(e,t,r){let n=gt(t);return[r,Re(e,n.files.types,Ae.types),Re(e,n.files.statuses,Ae.statuses),Re(e,n.files.fields,Ae.fields),Re(e,n.files.workflows,Ae.workflows)]}async function Nj(e,t,r){let n=await _r(t);Ga(e,{tracked_paths:t,signatures:n,value:Ba(r)})}async function Dj(e,t,r){try{await Nj(e,t,r)}catch{wt(e)}}function Qw(e,t){return e.find(r=>r.path===t)}function Pj(e,t,r){for(let n of r){let o=Qw(e,n),i=Qw(t,n);if(!o||!i||!vi([o],[i]))return!1}return!0}async function Tf(e,t,r,n,o){try{let i=await _r(t);if(!Pj(n,i,o)){wt(e);return}Ga(e,{tracked_paths:t,signatures:i,value:Ba(r)})}catch{wt(e)}}function Mj(e,t){let r=gt(e.schema),n=eo(e.item_types?.definitions);if(!t)return{item_type_definitions:n,schema_statuses:r.statuses,schema_fields:r.fields,schema_type_workflows:r.type_workflows};let o=r.type_workflows??[],i=le(n,t.runtime_item_type_definitions),s=le(r.statuses,t.runtime_schema_statuses),a=le(r.fields,t.runtime_schema_fields),c=le(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?eo(t.source_item_type_definitions):[]:n,schema_statuses:s?t.has_source_schema_statuses?structuredClone(t.source_schema_statuses):[]:r.statuses,schema_fields:a?t.has_source_schema_fields?structuredClone(t.source_schema_fields):[]:r.fields,schema_type_workflows:c?t.has_source_schema_type_workflows?structuredClone(t.source_schema_type_workflows):void 0:r.type_workflows}}function Ei(e){return{settings:rv(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function Lj(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function Af(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function uv(e){let t=C.agent_guidance,r=e?.template_version;return{prompt_completed:e?.prompt_completed===!0,declined:e?.declined===!0,declined_at:typeof e?.declined_at=="string"?e.declined_at:t.declined_at,template_version:typeof r=="number"&&Number.isInteger(r)&&r>0?r:t.template_version,last_checked_files:Af(e?.last_checked_files??t.last_checked_files)}}function dt(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function Fj(e){return e==="off"||e==="warn"||e==="enforce"?e:C.extensions.policy.mode}function $j(e){return e==="off"||e==="warn"||e==="enforce"?e:C.extensions.policy.trust_mode}function fv(e){return e==="none"||e==="restricted"||e==="strict"?e:C.extensions.policy.default_sandbox_profile}function jj(e){let t=e.name.trim().toLowerCase();if(t.length===0)return null;let r={name:t};e.disabled===!0&&(r.disabled=!0),e.require_trusted===!0&&(r.require_trusted=!0),e.require_provenance===!0&&(r.require_provenance=!0),e.sandbox_profile!==void 0&&(r.sandbox_profile=fv(e.sandbox_profile));let n=dt(e.allowed_capabilities),o=dt(e.blocked_capabilities),i=dt(e.allowed_surfaces),s=dt(e.blocked_surfaces),a=dt(e.allowed_commands),c=dt(e.blocked_commands),l=dt(e.allowed_actions),d=dt(e.blocked_actions),u=dt(e.allowed_services),f=dt(e.blocked_services);return n.length>0&&(r.allowed_capabilities=n),o.length>0&&(r.blocked_capabilities=o),i.length>0&&(r.allowed_surfaces=i),s.length>0&&(r.blocked_surfaces=s),a.length>0&&(r.allowed_commands=a),c.length>0&&(r.blocked_commands=c),l.length>0&&(r.allowed_actions=l),d.length>0&&(r.blocked_actions=d),u.length>0&&(r.allowed_services=u),f.length>0&&(r.blocked_services=f),r}function Uj(e){let t=new Map;for(let r of e??[]){let n=jj(r);n&&t.set(n.name,n)}return[...t.values()].sort((r,n)=>r.name.localeCompare(n.name))}function kf(e){return e==="block"||e==="warn"?e:void 0}function zj(e){if(typeof e=="string")return kf(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=kf(e.global),r=kf(e.project);return t===void 0&&r===void 0?void 0:{...t!==void 0?{global:t}:{},...r!==void 0?{project:r}:{}}}}function He(e,t){return dt(e?.[t]??C.extensions.policy[t])}function pv(e){let t=zj(e?.pm_max_version_exceeded_mode);return{mode:Fj(e?.mode),trust_mode:$j(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:He(e,"trusted_extensions"),default_sandbox_profile:fv(e?.default_sandbox_profile),allowed_extensions:He(e,"allowed_extensions"),blocked_extensions:He(e,"blocked_extensions"),allowed_capabilities:He(e,"allowed_capabilities"),blocked_capabilities:He(e,"blocked_capabilities"),allowed_surfaces:He(e,"allowed_surfaces"),blocked_surfaces:He(e,"blocked_surfaces"),allowed_commands:He(e,"allowed_commands"),blocked_commands:He(e,"blocked_commands"),allowed_actions:He(e,"allowed_actions"),blocked_actions:He(e,"blocked_actions"),allowed_services:He(e,"allowed_services"),blocked_services:He(e,"blocked_services"),extension_overrides:Uj(e?.extension_overrides??C.extensions.policy.extension_overrides)}}function mv(e){return[...new Set((e??[]).map(r=>r.trim().toLowerCase().replaceAll("-","_")))].filter(r=>r.length>0).sort((r,n)=>r.localeCompare(n)).filter(r=>["author","acceptance_criteria","estimated_minutes","close_reason","reviewer","risk","confidence","sprint","release"].includes(r))}function gr(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function ce(e,t){return e===void 0?t:e}function Ge(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function Sf(e){return Array.isArray(e)?e:[]}function qj(e,t,r){return{...t.validation,...e.validation,parent_reference:r.parent_reference,metadata_profile:r.metadata_profile,metadata_required_fields:mv(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:gr(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:gr(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:gr(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:gr(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:vf(e.validation?.estimate_defaults_by_type)}}function Hj(e,t){return{enabled:e.telemetry?.enabled??t.telemetry.enabled,first_run_prompt_completed:e.telemetry?.first_run_prompt_completed??t.telemetry.first_run_prompt_completed,capture_level:e.telemetry?.capture_level??t.telemetry.capture_level,endpoint:e.telemetry?.endpoint??t.telemetry.endpoint,installation_id:e.telemetry?.installation_id??t.telemetry.installation_id,retention_days:e.telemetry?.retention_days??t.telemetry.retention_days}}function Gj(e,t){return{...t.search,...e.search,default_mode:ov(e.search?.default_mode),mutation_refresh_policy:nv(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:iv(e.search?.query_expansion?.enabled),provider:sv(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:av(e.search?.rerank?.enabled),model:cv(e.search?.rerank?.model),top_k:lv(e.search?.rerank?.top_k)}}}function Bj(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:dv(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function Vj(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function Wj(e,t){return{default_depth:e.context?.default_depth??t.context.default_depth,activity_limit:e.context?.activity_limit??t.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??t.context.stale_threshold_days,sections:{...t.context.sections,...e.context?.sections}}}function Yj(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function eo(e){let t=(e??[]).map(n=>gs(n)).filter(n=>n!==null),r=new Map;for(let n of t)r.set(n.name.toLowerCase(),n);return[...r.values()].sort((n,o)=>n.name.localeCompare(o.name))}function _v(e){let t=rv(),r=Va({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:Vj(e,t),locks:{...t.locks,...e.locks},ids:{...t.ids,...e.ids},agent_identity:structuredClone(e.agent_identity??t.agent_identity),mutation_guard:{...t.mutation_guard,...e.mutation_guard},checkpoints:{...t.checkpoints,...e.checkpoints},output:{...t.output,...e.output},ux:{...t.ux,...e.ux},history:{...t.history,...e.history,compact_policy:{...t.history.compact_policy,...e.history?.compact_policy}},validation:qj(e,t,r),governance:r,workflow:{definition_of_done:[...e.workflow?.definition_of_done??t.workflow.definition_of_done]},testing:{record_results_to_items:e.testing?.record_results_to_items??t.testing.record_results_to_items,allow_untrusted_linked_tests:e.testing?.allow_untrusted_linked_tests??t.testing.allow_untrusted_linked_tests},telemetry:Hj(e,t),agent_guidance:uv(e.agent_guidance??t.agent_guidance),item_types:{definitions:eo(e.item_types?.definitions)},schema:gt(e.schema??t.schema),context:Wj(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:pv(e.extensions.policy??t.extensions.policy)},search:Gj(e,t),providers:Yj(e,t),vector_store:Bj(e,t)}}function Kj(e){e.agent_identity=R(e.agent_identity,["probes_enabled","identity_vocabulary","harness_signals"]);let t=e.agent_identity;Object.hasOwn(t,"identity_vocabulary")&&(t.identity_vocabulary=R(Ge(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=Sf(e.agent_identity.harness_signals).map(r=>R(Ge(r),["harness","environment_keys","model_environment_keys","session_environment_keys","provenance_environment_keys","provenance_resolvers","provenance_unavailable_dimensions","argv_markers","client_names"])),e.locks=R(e.locks,["ttl_seconds","wait_ms"]),e.ids=R(e.ids,["token_length"]),e.mutation_guard=R(e.mutation_guard,["require_attributed_author","secret_guard","stale_in_progress_hours"]),e.checkpoints=R(e.checkpoints,["retention_days"]),e.output=R(e.output,["default_format"]),e.ux=R(e.ux,["deprecation_hints"]),e.history=R(e.history,["missing_stream","compact_policy"]),e.validation=R(e.validation,["sprint_release_format","parent_reference","metadata_profile","metadata_required_fields","lifecycle_stale_blocker_reason_patterns","lifecycle_closure_like_blocked_reason_patterns","lifecycle_closure_like_resolution_patterns","lifecycle_closure_like_actual_result_patterns","estimate_defaults_by_type"]),e.governance=R(e.governance,["preset","ownership_enforcement","create_mode_default","close_validation_default","require_close_reason","parent_reference","metadata_profile","force_required_for_stale_lock","create_default_type","workflow_enforcement","duplicate_detection_mode","duplicate_detection_threshold","duplicate_detection_limit"]),e.workflow=R(e.workflow,["definition_of_done"]),e.testing=R(e.testing,["record_results_to_items","allow_untrusted_linked_tests"]),e.telemetry=R(e.telemetry,["enabled","first_run_prompt_completed","capture_level","endpoint","installation_id","retention_days"]),e.agent_guidance=R(e.agent_guidance,["prompt_completed","declined","declined_at","template_version","last_checked_files"]),e.item_types=R(e.item_types,["definitions"]),e.schema=R(e.schema,["version","files","statuses","fields","workflow","type_workflows","unknown_field_policy"]),e.schema.files=R(Ge(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=R(Ge(e.schema.workflow),["draft_status","open_status","in_progress_status","blocked_status","close_status","canceled_status"]),e.context=R(e.context,["default_depth","activity_limit","stale_threshold_days","sections"]),e.context.sections=R(Ge(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=R(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=R(Ge(e.extensions.policy),["mode","trust_mode","pm_max_version_exceeded_mode","require_provenance","trusted_extensions","default_sandbox_profile","allowed_extensions","blocked_extensions","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services","extension_overrides"]),e.extensions.policy.extension_overrides=Sf(e.extensions.policy.extension_overrides).map(r=>R(Ge(r),["name","disabled","require_trusted","require_provenance","sandbox_profile","allowed_capabilities","blocked_capabilities","allowed_surfaces","blocked_surfaces","allowed_commands","blocked_commands","allowed_actions","blocked_actions","allowed_services","blocked_services"])),e.search=R(e.search,["score_threshold","hybrid_semantic_weight","max_results","embedding_model","embedding_corpus_max_characters","embedding_batch_size","embedding_timeout_ms","scanner_max_batch_retries","provider","default_mode","mutation_refresh_policy","query_expansion","rerank"]),e.search.query_expansion=R(Ge(e.search.query_expansion),["enabled","provider"]),e.search.rerank=R(Ge(e.search.rerank),["enabled","model","top_k"]),e.providers=R(e.providers,["openai","ollama"]),e.providers.openai=R(Ge(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=R(Ge(e.providers.ollama),["base_url","model"]),e.vector_store=R(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=R(Ge(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=R(Ge(e.vector_store.lancedb),["path"])}function Xj(e){return{...e,locks:ce(e.locks,C.locks),ids:ce(e.ids,C.ids),agent_identity:ce(e.agent_identity,C.agent_identity),mutation_guard:ce(e.mutation_guard,C.mutation_guard),checkpoints:ce(e.checkpoints,C.checkpoints),output:ce(e.output,C.output),ux:ce(e.ux,C.ux),history:ce(e.history,C.history),validation:ce(e.validation,C.validation),workflow:ce(e.workflow,C.workflow),testing:ce(e.testing,C.testing),telemetry:ce(e.telemetry,C.telemetry),agent_guidance:ce(e.agent_guidance,C.agent_guidance),item_types:ce(e.item_types,C.item_types),schema:ce(e.schema,C.schema),context:ce(e.context,C.context),extensions:ce(e.extensions,C.extensions),search:ce(e.search,C.search),providers:ce(e.providers,C.providers),vector_store:ce(e.vector_store,C.vector_store)}}function Jj(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:mv(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:gr(e.validation?.lifecycle_stale_blocker_reason_patterns??C.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:gr(e.validation?.lifecycle_closure_like_blocked_reason_patterns??C.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:gr(e.validation?.lifecycle_closure_like_resolution_patterns??C.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:gr(e.validation?.lifecycle_closure_like_actual_result_patterns??C.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:vf(e.validation?.estimate_defaults_by_type)}}function Zj(e){return{...C.search,...e.search,default_mode:ov(e.search?.default_mode),mutation_refresh_policy:nv(e.search?.mutation_refresh_policy),query_expansion:{...C.search.query_expansion,...e.search?.query_expansion,enabled:iv(e.search?.query_expansion?.enabled),provider:sv(e.search?.query_expansion?.provider)},rerank:{...C.search.rerank,...e.search?.rerank,enabled:av(e.search?.rerank?.enabled),model:cv(e.search?.rerank?.model),top_k:lv(e.search?.rerank?.top_k)}}}function Qj(e){return{default_depth:e.context?.default_depth??C.context.default_depth,activity_limit:e.context?.activity_limit??C.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??C.context.stale_threshold_days,sections:{...C.context.sections,...e.context?.sections}}}function e1(e){return{...e.vector_store,adapter:e.vector_store?.adapter??C.vector_store.adapter,collection_name:dv(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function t1(e,t,r,n){return{...e,item_format:"toon",validation:Jj(e,t),governance:t,agent_guidance:uv(e.agent_guidance),item_types:{definitions:n.item_type_definitions},schema:{...r,statuses:n.schema_statuses,fields:n.schema_fields,type_workflows:n.schema_type_workflows},search:Zj(e),context:Qj(e),extensions:{enabled:Af(e.extensions?.enabled),disabled:Af(e.extensions?.disabled),policy:pv(e.extensions?.policy)},vector_store:e1(e)}}function gv(e,t,r){let n=new Set([...Object.keys(t),...Object.keys(r)]);for(let o of n){let i=t[o],s=r[o];if(!le(i,s)){if(s===void 0){delete e[o];continue}if(typeof i=="object"&&i!==null&&!Array.isArray(i)&&typeof s=="object"&&s!==null&&!Array.isArray(s)){let a=e[o],c=typeof a=="object"&&a!==null&&!Array.isArray(a)?a:{};gv(c,i,s),Object.keys(c).length>0?e[o]=c:delete e[o];continue}e[o]=structuredClone(s)}}}var yv=["version","id_prefix","ids","author_default","agent_identity","mutation_guard","item_format","locks","checkpoints","output","ux","history","validation","governance","workflow","testing","telemetry","agent_guidance","item_types","schema","context","extensions","search","providers","vector_store"];function ev(e,t){let r=Xj(e),n=Va(r),o=gt(r.schema),i=Mj(r,t),s=t1(r,n,o,i),a=R({...s,governance:Oj(n)},yv);return Kj(a),a}function r1(e,t={}){let r=ev(e,t.persist_source);if(t.persist_source){let n=_v(t.persist_source.source_settings);n.item_types={definitions:structuredClone(t.persist_source.runtime_item_type_definitions)},n.schema={...n.schema,statuses:structuredClone(t.persist_source.runtime_schema_statuses),fields:structuredClone(t.persist_source.runtime_schema_fields),type_workflows:structuredClone(t.persist_source.runtime_schema_type_workflows)};let o=ev(n,t.persist_source),i=structuredClone(t.persist_source.source_settings);return gv(i,o,r),`${JSON.stringify(R(i,yv),null,2)}
124
- `}return`${JSON.stringify(r,null,2)}
125
- `}async function yr(e){let t=Te(e),r=[t];await it({path:t,scope:"project"});let n=Xw(e);if(n){let l=await _r(n.tracked_paths);if(vi(l,n.signatures))return Ba(n.value)}let o=await _r([t]),i;try{i=await V(t)}catch{return Ei("settings_read_fs_error")}if(i===null){let l=Ei();return await Tf(e,[t],l,o,[t]),l}let s=await _r([t]);if(!vi(o,s))return wt(e),yr(e);let a;try{a=JSON.parse(i)}catch{let l=Ei("settings_read_invalid_json");return await Tf(e,[t],l,s,[t]),l}let c=Bw(a);if(!c.success){let l=Ei("settings_read_invalid_schema");return await Tf(e,[t],l,s,[t]),l}try{let l=_v(c.data),d=xj(e,l.schema,t);r=d;let u=await _r(d),f=await cy(e,l.schema),p=await ly(e,l.schema),m=await _r(d),h={...l,item_types:{definitions:eo([...l.item_types.definitions,...Sf(p.type_definitions_from_file)])},schema:p.schema};Of(h,Ij(c.data,h));let b={settings:h,metadata:{has_explicit_item_format:Lj(a)},warnings:[...c.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...f.created_paths.map(w=>`runtime_schema_bootstrap_created:${w}`),...p.warnings]};return f.created_paths.length===0?vi(u,m)?Ga(e,{tracked_paths:d,signatures:m,value:Ba(b)}):wt(e):wt(e),b}catch{let l=Ei("settings_read_merge_failed");return await Dj(e,r,l),l}}async function ut(e){return(await yr(e)).settings}async function Ti(e,t,r=Tj){let n=Te(e),o=r1(t,{persist_source:Cf(t)});try{await mf({pmRoot:e,filePath:n,raw:o,op:r,author:ri(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),await ke({path:n,scope:"project",op:r})}finally{wt(e)}}import{spawnSync as bv}from"node:child_process";(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]="02a573c3-251d-5f42-abcc-63b5aa263aa1")}catch{}})();var n1="PM_DISABLE_OLLAMA_AUTO_DEFAULTS",o1="PM_OLLAMA_MODEL",i1="http://localhost:11434",s1="qwen3-embedding:0.6b",a1=".agents/pm/search/lancedb/",c1=1500,l1=2500,d1=/qwen.*(?:embed|embedding)|(?:embed|embedding).*qwen/i,u1=/embed|embedding/i,vt=U;function f1(){let e=vt(process.env[n1]);if(!e)return!1;let t=e.toLowerCase();return t==="1"||t==="true"||t==="yes"}function hv(e){return e.some(t=>vt(t)!==null)}function p1(e){let t=vt(e);return!!(t&&t.toLowerCase()!=="ollama")}function m1(e){let t=vt(e);return!!(t&&t.toLowerCase()!=="lancedb")}function _1(e){return p1(e.search?.provider)||m1(e.vector_store?.adapter)||hv([e.providers?.openai?.base_url,e.providers?.openai?.model,e.providers?.openai?.api_key])?!0:hv([e.vector_store?.qdrant?.url,e.vector_store?.qdrant?.api_key])}function g1(){let e=bv("ollama",["--version"],{encoding:"utf8",timeout:c1});return e.error?!1:e.status===0}function y1(e){let t=e.split(/\r?\n/).map(i=>i.trim()).filter(i=>i.length>0);if(t.length===0)return null;let r=t.map(i=>i.split(/\s+/)[0]?.trim()).filter(i=>!!(i&&i.length>0)).filter(i=>i.toUpperCase()!=="NAME");if(r.length===0)return null;let n=r.find(i=>d1.test(i));return n||(r.find(i=>u1.test(i))??null)}function h1(e){let t=vt(e.providers?.ollama?.model);if(t)return t;let r=vt(process.env[o1]);if(r)return r;let n=bv("ollama",["list"],{encoding:"utf8",timeout:l1});if(!n.error&&n.status===0){let o=y1(typeof n.stdout=="string"?n.stdout:"");if(o)return o}return null}function b1(e){return{baseUrl:vt(e.providers?.ollama?.base_url)===null,model:vt(e.providers?.ollama?.model)===null,lancedbPath:vt(e.vector_store?.lancedb?.path)===null,embeddingModel:vt(e.search?.embedding_model)===null}}function w1(e){return e.baseUrl||e.model||e.lancedbPath||e.embeddingModel}function v1(e,t,r){if(!t.baseUrl&&!t.model)return;let n=e.providers??={},o=n.ollama??={};t.baseUrl&&(o.base_url=i1),t.model&&(o.model=r)}function E1(e,t){if(!t.lancedbPath)return;let r=e.vector_store??={},n=r.lancedb??={};n.path=a1}function T1(e,t,r){if(!t.embeddingModel)return;let n=e.search??={};n.embedding_model=r}function to(e){let t={settings:e,auto_ollama_defaults_applied:!1};if(f1()||_1(e))return t;let r=b1(e);if(!w1(r)||r.model&&!g1())return t;let n=structuredClone(e),o=h1(n);return o?(v1(n,r,o),E1(n,r),T1(n,r,o),{settings:n,auto_ollama_defaults_applied:!0}):{...t,auto_ollama_defaults_skipped_reason:"no_installed_embedding_model",auto_ollama_defaults_remediation:`Run ollama pull ${s1} or configure providers.ollama.model explicitly (and search.embedding_model if you need an override).`}}import{spawn as k1}from"node:child_process";import{mkdirSync as wv,rmSync as Ev,statSync as A1}from"node:fs";import Wa 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]="22112449-f1ab-5b6b-a9bb-37e5d3c5b83a")}catch{}})();var Tv="reindex",S1="search/pending-refresh.json",O1="search/pending-refresh.gate.lock",C1=3e4,I1="PM_SEARCH_REFRESH_INLINE",kv="PM_SEARCH_REFRESH_CHILD",R1=3e4;function vv(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"||t==="on"}function Rf(){if(vv(process.env[I1])||vv(process.env[kv]))return!0;let e=(process.env.NODE_ENV??"").trim().toLowerCase();return typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||e==="test"}function Av(e){return Wa.join(e,S1)}function Sv(e){return Wa.join(e,O1)}function x1(e){let t=Sv(e);try{if(Date.now()-A1(t).mtimeMs<C1)return!1;Ev(t,{recursive:!0,force:!0})}catch{}try{return wv(Wa.dirname(t),{recursive:!0}),wv(t),!0}catch{return!1}}function N1(e){try{Ev(Sv(e),{recursive:!0,force:!0})}catch{}}async function Ov(e,t,r){for(let n=0;n<50;n+=1){if(x1(e))try{return await t()}finally{N1(e)}await D1(20)}return r}function D1(e){return new Promise(t=>{setTimeout(t,e)})}async function xf(e){let t=await V(Av(e));if(!t||t.trim().length===0)return[];try{let r=JSON.parse(t);return Array.isArray(r.ids)?r.ids.filter(n=>typeof n=="string"&&n.length>0):[]}catch{return[]}}async function Cv(e,t){await F(Av(e),`${JSON.stringify({ids:t})}
126
- `)}async function If(e,t){let r=t.filter(i=>typeof i=="string"&&i.trim().length>0);if(r.length===0)return;let n=async()=>{let i=await xf(e),s=[...new Set([...i,...r])].sort((a,c)=>a.localeCompare(c));await Cv(e,s)};await Ov(e,async()=>(await n(),!0),!1)||await n()}async function P1(e){return Ov(e,async()=>{let t=await xf(e);return t.length>0&&await Cv(e,[]),t},[])}function M1(){return Wa.join(It(import.meta.url,["../../.."]),"dist","cli","search-refresh.js")}function Nf(e){try{let t=k1(process.execPath,[M1()],{detached:!0,stdio:"ignore",env:{...process.env,PM_PATH:e,[kv]:"1"}});t.on("error",()=>{}),t.unref()}catch{}}function L1(e){setTimeout(()=>Nf(e),R1)}async function Iv(e,t){await If(e,t),Nf(e)}async function F7(e,t,r=L1){let n=[],o=[];if(!await re(e))return{processed:o,rounds:0,warnings:n};let i;try{let u=await yr(e),f=u.warnings.find(p=>p.startsWith("settings_read_"));if(f)return r(e),{processed:o,rounds:0,warnings:[`search_background_refresh_settings_read_failed:${f}`]};i=to(u.settings).settings}catch(u){return r(e),{processed:o,rounds:0,warnings:[`search_background_refresh_settings_read_failed:${G(u)}`]}}let s=null;try{s=await ie(e,Tv,i.locks.ttl_seconds,ri(void 0,"pm-search-refresh"),!1,i.governance.force_required_for_stale_lock,i.locks.wait_ms)}catch{}if(!s)return{processed:o,rounds:0,warnings:n};let a=0,c=!1,l=!1;try{for(;;){let u=await P1(e);if(u.length===0)break;a+=1;try{let f=await t(e,u);if(n.push(...f.warnings),f.warnings.some(p=>p.startsWith("search_semantic_refresh_skipped:settings_read_failed:"))){await If(e,u),c=!0,l=!0;break}o.push(...f.refreshed)}catch(f){n.push(`search_background_refresh_failed:${G(f)}`),await If(e,u),c=!0;break}}}finally{await s?.()}return l&&r(e),(c?[]:await xf(e)).length>0&&Nf(e),{processed:[...new Set(o)].sort((u,f)=>u.localeCompare(f)),rounds:a,warnings: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]="cb9a55d6-9ba9-50af-a54f-2bba5d076fdb")}catch{}})();function ki(e,t=!1){let r=e[0];if(r?.op!=="history_compact_baseline")return 0;let n=r.context?.history_compaction,o=typeof n=="object"&&n!==null&&"version_offset"in n?n.version_offset:void 0;if(typeof o=="number"&&Number.isSafeInteger(o)&&o>=0&&Number.isSafeInteger(o+e.length))return o;if(t)return null;throw new g("This compacted stream has no trustworthy version offset; numeric history addresses are unavailable.",_.USAGE,{code:"history_version_mapping_unavailable",required:"Use a retained timestamp or recover the pre-compaction stream from version control.",nextSteps:["Run pm history <id> --full to inspect the retained timestamps and checkpoint evidence."]})}(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]="8835b501-34c7-51ba-b02e-782f8a457e1b")}catch{}})();function F1(e,t){let r=-1;return e.forEach((n,o)=>{let i=Date.parse(n.ts);if(!Number.isFinite(i))throw new g(`History for this item contains invalid timestamp at entry ${o+1}.`,_.GENERIC_FAILURE);i<=t&&(r=o)}),r}function $1(e,t){let r=e[0]?.ts??null,n=e.at(-1)?.ts??null,o={code:"history_target_out_of_range",required:"Choose a target within the available item history.",why:"Point-in-time reads and restores can only reconstruct recorded versions.",examples:[],nextSteps:["Run pm history <id> to inspect available versions and timestamps."],valid_range:{first_version:null,last_version:null,first_timestamp:r,last_timestamp:n}};return n!==null&&(o.examples=[n],t!==null&&(o.examples.unshift(String(t+1),String(t+e.length)),o.valid_range.first_version=t+1,o.valid_range.last_version=t+e.length)),{guidance:o,lastTimestamp:n}}function j1(e,t){let r={};if(t instanceof Error&&t.message.trim().length>0&&(r.reason=t.message.trim()),typeof t!="object"||t===null)return r;let n=t;if(typeof n.index=="number"&&Number.isInteger(n.index)&&n.index>=0&&(r.patchIndex=n.index),typeof n.operation=="object"&&n.operation!==null){let o=n.operation;Object.assign(r,Object.fromEntries(["op","path","from"].flatMap(i=>{let s=o[i];return typeof s=="string"?[[i,s]]:[]})))}if(r.patchIndex!==void 0){let o=e[r.patchIndex];o&&(r.op??=o.op,r.path??=o.path,r.from??=o.from)}return r}function Rv(e,t,r={}){let n=e.trim(),o=r.errorSubject??"history",i=o==="restore"?"Restore":"History",{guidance:s,lastTimestamp:a}=$1(t,ki(t,!0));if(!n)throw new g(`Missing ${o} target. Use a timestamp or version number.`,_.USAGE,s);if(/^\d+$/.test(n)){let d=ki(t),u=Number(n);if(u>=1&&u<=d)throw new g(`History version ${u} was pruned by compaction.`,_.USAGE,{...s,code:"history_version_pruned"});if(!Number.isSafeInteger(u)||u<1||u>d+t.length)throw new g(`${i} version must be between ${d+1} and ${d+t.length} for this item.`,_.USAGE,s);return{kind:"version",raw:n,historyIndex:u-d-1}}let c=Date.parse(n);if(!Number.isFinite(c))throw new g(`Invalid ${o} target "${e}". Use a positive version number or ISO timestamp.`,_.USAGE,s);let l=F1(t,c);if(l<0||r.allowFutureTimestamp!==!0&&c>Date.parse(a))throw new g(o==="restore"?`No history entries exist at or before timestamp ${n}.`:`No history entry exists at timestamp ${n}.`,_.USAGE,s);return{kind:"timestamp",raw:n,historyIndex:l}}function Df(e,t,r,n){let o=qt(e,t);if(o.ok)return o.document;let i=j1(t,o.error),s=[`history_op=${n}`,i.patchIndex===void 0?null:`patch_index=${i.patchIndex}`,i.op?`op=${i.op}`:null,i.path?`path=${i.path}`:null,i.from?`from=${i.from}`:null].filter(a=>a!==null);throw new g(`Failed to apply history patch at entry ${r} (${s.join(", ")}). ${i.reason??String(o.error)}`,_.GENERIC_FAILURE)}function xv(e,t){let r=e[0];if(r&&r.op!=="create"&&r.op!=="history_compact_baseline"){let s=qt(Kn,r.patch);if(!s.ok||typeof s.document.metadata.id!="string")throw new g("History starts without a reconstructable item baseline.",_.GENERIC_FAILURE,{code:"history_baseline_unavailable",required:"Recover the original create entry or a complete checkpoint from version control.",nextSteps:["Run pm history <id> --full to inspect the missing baseline."]})}let n=e.slice(0,t+1),o=lt([...n]),i=structuredClone(Kn);for(let s=0;s<=t;s+=1){let a=e[s];if(!a)throw new g(`History target entry ${s+1} does not exist.`,_.USAGE);i=Df(i,a.patch,s+1,a.op)}if(!o.ok)throw new g(`History cannot be replayed: ${o.errors.join(", ")}.`,_.GENERIC_FAILURE,{code:"history_replay_invalid",verification_errors:o.errors,required:"Inspect the history integrity findings before attempting recovery.",nextSteps:["Run pm history <id> --verify --full."]});return i}function V7(e,t){if(Object.keys(e.metadata).length>0){if(typeof e.metadata.id!="string"||!Array.isArray(e.metadata.tags))throw new g("History has no complete item baseline for this target.",_.GENERIC_FAILURE,{code:"history_baseline_unavailable",required:"Recover the original create entry or a complete checkpoint from version control.",nextSteps:["Run pm history <id> --full to inspect the first recorded state."]});return e}throw new g(`History target ${t.raw} resolves to a deleted state; choose a version or timestamp where the item exists.`,_.USAGE)}import Nv from"node:fs/promises";import Ya from"node:path";import{isUtf8 as U1}from"node:buffer";(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]="3635d0ca-b4ee-5c99-9115-6eace5120147")}catch{}})();var z1=1048576,q1=4194304;async function Dv(e,t){let r=Ya.dirname(e);for(;r!==Ya.parse(e).root;){let o=await Nv.stat(r).catch(i=>{if(X(i))return null;throw i});if(o!==null){if(!o.isDirectory())throw new g("Workflow policy storage ancestor must be a directory.",_.CONFLICT,{code:"workflow_policy_input_unreadable",nextSteps:["Restore the policy or approval history directory before retrying."]});break}r=Ya.dirname(r)}let n=await Nv.open(e,"r").catch(o=>{if(X(o))return null;throw o});if(n===null)return null;try{let o=(await n.stat()).size,i=Buffer.alloc(Math.min(t,o)+1),s=0;for(;s<i.length;){let a=await n.read(i,s,i.length-s,s);if(a.bytesRead===0)break;s+=a.bytesRead}if(s===i.length||!U1(i.subarray(0,s)))throw new g("Workflow policy input exceeds its byte bound or is not valid UTF-8.",_.CONFLICT,{code:"workflow_policy_input_unreadable",nextSteps:["Inspect the policy and approval history; reduce the declaration or use verified history compaction before retrying."]});return i.toString("utf8",0,s)}finally{await n.close()}}function H1(e){if(e===null)return{version:1,enforcement:"advise",policies:[]};let t;try{t=JSON.parse(e)}catch{throw new g("schema/policies.json must contain valid JSON.",_.CONFLICT,{code:"workflow_policy_registry_invalid",nextSteps:["Restore valid policy JSON before retrying the mutation."]})}return gu(t)}async function G1(e){return H1(await Dv(Ya.join(e,"schema","policies.json"),z1))}async function B1(e,t){let r=await Dv(_t(e,t),q1);if(r===null)return[];let n;try{if(n=r.split(/\r?\n/).filter(o=>o.trim()).map(o=>JSON.parse(o)),!lt(n).ok)throw new Error("invalid chain")}catch{throw new g("Approval evidence requires a valid item history chain.",_.CONFLICT,{code:"workflow_policy_approval_history_invalid",nextSteps:[`Run pm history ${t} --verify before recording or using an approval.`]})}return n.flatMap(o=>{let i=o.context?.workflow_approval;if(o.op!=="policy_approve"||o.record_hash_version!==1||typeof o.record_hash!="string"||typeof i!="object"||i===null)return[];let s=i;return typeof s.policy_fingerprint!="string"||typeof s.content_fingerprint!="string"?[]:[{policy_fingerprint:s.policy_fingerprint,content_fingerprint:s.content_fingerprint,author:o.author}]})}async function V1(e,t,r){let n=r.before?.status!==r.after?.status&&t.policies.some(s=>s.rule.kind==="approval"&&yu(s,r)),o=r.before?.id??r.after?.id,i=n&&typeof o=="string"?await B1(e,o):[];return Rh(t,{...r,approvals:i})}async function Pf(e){let t=await G1(e.pmRoot),r=await V1(e.pmRoot,t,{operation:e.operation,author:e.author,before:e.before?{...e.before.metadata,body:e.before.body}:null,after:e.after?{...e.after.metadata,body:e.after.body}:null});if(r.allowed)return r;let n=r.decisions.filter(s=>!s.satisfied&&s.effect==="refuse");if(!e.dryRun)try{await pf({pmRoot:e.pmRoot,op:"policy_refused",author:e.author,context:{item_id:e.after?.metadata.id??e.before?.metadata.id,operation:e.operation,workflow_policies:r.decisions},message:"Workflow policy refused a proposed item mutation.",lockTtlSeconds:e.settings.locks.ttl_seconds,lockWaitMs:e.settings.locks.wait_ms})}catch(s){let a=new g("Workflow policy refusal could not be recorded in workspace history.",_.CONFLICT,{code:"workflow_policy_audit_failed",nextSteps:["Resolve workspace-history lock or storage failures, then retry the refused mutation; no item changes were written."]});throw a.cause=s,a}let o=n.slice(0,3).map(s=>`${s.policy_id} (${s.rule})`).join(", "),i=n.length>3?` and ${n.length-3} more`:"";throw new g(`Workflow policy refused ${e.operation}: ${o}${i}.`,_.CONFLICT,{code:"workflow_policy_refused",reason:n.slice(0,3).map(s=>s.policy_id).join(","),nextSteps:[...new Set(n.map(s=>s.remediation))].slice(0,3)})}import{AsyncLocalStorage as W1}from"node:async_hooks";import{channel as Y1}from"node:diagnostics_channel";(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]="118ec110-fa84-550b-a0a8-4def314270b6")}catch{}})();var Mf=new W1,Lf=Y1("@unbrained/pm-cli/item-metadata-enumeration/v1");function Ka(e){Lf.publish(e)}async function aX(e){let t={enumeration_calls:0,metadata_rows:0},r=n=>{Mf.getStore()?.includes(t)&&(t.enumeration_calls+=1,t.metadata_rows+=n)};Lf.subscribe(r);try{return{result:await Mf.run([...Mf.getStore()??[],t],e),work:{...t}}}finally{Lf.unsubscribe(r)}}import Qr from"node:fs/promises";import Mv from"node:path";import{randomUUID as K1}from"node:crypto";import{createRequire as X1}from"node:module";(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]="e9e67ec7-10cb-57b0-a094-ae52b01a0f8a")}catch{}})();var J1="metadata-query-index.sqlite",Ai="5";function Z1(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}var Xa;function Q1(e,t){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>=22?Z1(t):null}function Si(){return Xa!==void 0||(Xa=Q1(process.versions.node,X1(import.meta.url))),Xa}function Pv(e,t){return Math.max(0,Math.floor(e===void 0?t:e))}function ro(e){return Mv.join(e,"runtime",J1)}function eU(e){e.exec(`
127
- PRAGMA foreign_keys = ON;
128
- PRAGMA journal_mode = OFF;
129
- PRAGMA synchronous = OFF;
130
- CREATE TABLE metadata (
131
- key TEXT PRIMARY KEY,
132
- value TEXT NOT NULL
133
- ) STRICT;
134
- CREATE TABLE items (
135
- id TEXT PRIMARY KEY,
136
- relative_path TEXT NOT NULL UNIQUE,
137
- metadata_json TEXT NOT NULL,
138
- status TEXT NOT NULL,
139
- type TEXT NOT NULL,
140
- priority INTEGER NOT NULL,
141
- updated_at TEXT NOT NULL,
142
- created_at TEXT NOT NULL,
143
- parent TEXT,
144
- assignee TEXT,
145
- sprint TEXT,
146
- release TEXT
147
- ) STRICT;
148
- CREATE INDEX items_default_order
149
- ON items(priority, updated_at DESC, id);
150
- CREATE INDEX items_status_default_order
151
- ON items(status, priority, updated_at DESC, id);
152
- CREATE INDEX items_type_default_order
153
- ON items(type, priority, updated_at DESC, id);
154
- CREATE INDEX items_parent_default_order
155
- ON items(parent, priority, updated_at DESC, id);
156
- CREATE TABLE item_metadata_keys (
157
- item_id TEXT NOT NULL,
158
- key TEXT NOT NULL,
159
- PRIMARY KEY(item_id, key),
160
- FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
161
- ) STRICT;
162
- CREATE INDEX item_metadata_keys_key_item
163
- ON item_metadata_keys(key, item_id);
164
- CREATE TABLE item_linked_files (
165
- item_id TEXT NOT NULL,
166
- path TEXT NOT NULL,
167
- scope TEXT NOT NULL,
168
- note TEXT,
169
- PRIMARY KEY(item_id, path, scope),
170
- FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
171
- ) STRICT;
172
- CREATE INDEX item_linked_files_path_scope_item
173
- ON item_linked_files(path, scope, item_id);
174
- CREATE VIRTUAL TABLE item_search USING fts5(
175
- id UNINDEXED,
176
- title,
177
- description,
178
- tags,
179
- tokenize = 'unicode61'
180
- );
181
- `)}function Za(e,t,r){e.prepare("INSERT INTO metadata(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(t,r)}function Lv(e,t){let r=t.metadata;e.prepare(`INSERT INTO items(
182
- id, relative_path, metadata_json, status, type, priority,
183
- updated_at, created_at, parent, assignee, sprint, release
184
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
185
- ON CONFLICT(id) DO UPDATE SET
186
- relative_path = excluded.relative_path,
187
- metadata_json = excluded.metadata_json,
188
- status = excluded.status,
189
- type = excluded.type,
190
- priority = excluded.priority,
191
- updated_at = excluded.updated_at,
192
- created_at = excluded.created_at,
193
- parent = excluded.parent,
194
- assignee = excluded.assignee,
195
- sprint = excluded.sprint,
196
- release = excluded.release`).run(r.id,t.relativePath,JSON.stringify(r),r.status,r.type,r.priority,r.updated_at,r.created_at,r.parent??null,r.assignee??null,r.sprint??null,r.release??null),e.prepare("DELETE FROM item_metadata_keys WHERE item_id = ?").run(r.id),e.prepare("DELETE FROM item_linked_files WHERE item_id = ?").run(r.id),e.prepare("DELETE FROM item_search WHERE rowid = (SELECT rowid FROM items WHERE id = ?)").run(r.id),e.prepare("INSERT INTO item_search(rowid, id, title, description, tags) SELECT rowid, ?, ?, ?, ? FROM items WHERE id = ?").run(r.id,r.title,r.description,r.tags.join(" "),r.id);let n=e.prepare("INSERT INTO item_metadata_keys(item_id, key) VALUES (?, ?)");for(let i of Object.keys(r))n.run(r.id,i);let o=e.prepare("INSERT INTO item_linked_files(item_id, path, scope, note) VALUES (?, ?, ?, ?)");for(let i of t.linkedFiles??[])o.run(r.id,i.path,i.scope,i.note??null)}async function Fv(e){let t=ro(e.pmRoot),r=Si();if(!r){await Qr.rm(t,{force:!0});return}await Qr.mkdir(Mv.dirname(t),{recursive:!0});let n=`${t}.${K1()}.tmp`,o;try{o=new r(n),eU(o),o.exec("BEGIN IMMEDIATE"),Za(o,"version",Ai),Za(o,"context_fingerprint",e.contextFingerprint),Za(o,"source_cursor",e.sourceCursor);for(let i of e.rows)Lv(o,i);o.exec("COMMIT"),o.close(),o=void 0,await Qr.rm(t,{force:!0}),await Qr.rename(n,t)}catch(i){throw o?.close(),await Promise.allSettled([Qr.rm(n,{force:!0})]),i}}function Qa(e){return Object.fromEntries(e.prepare("SELECT key, value FROM metadata").all().map(t=>[String(t.key),String(t.value)]))}async function $v(e){let t=Si();if(!t)return!1;let r=ro(e.pmRoot),n;try{await Qr.access(r),n=new t(r),n.exec("PRAGMA foreign_keys = ON");let o=Qa(n);if(o.version!==Ai||o.context_fingerprint!==e.contextFingerprint||o.source_cursor!==e.expectedSourceCursor)return n.close(),!1;n.exec("BEGIN IMMEDIATE");let i=n.prepare("DELETE FROM items WHERE relative_path = ?"),s=n.prepare("SELECT rowid FROM items WHERE relative_path = ?"),a=n.prepare("DELETE FROM item_search WHERE rowid = ?");for(let c of e.deletedRelativePaths??[]){let l=s.get(c);i.run(c),l&&a.run(l.rowid)}return e.row&&Lv(n,e.row),Za(n,"source_cursor",e.sourceCursor),n.exec("COMMIT"),n.close(),!0}catch{try{n?.exec("ROLLBACK")}catch{}return n?.close(),!1}}function Ja(e,t,r,n,o){!n||n.length===0||(e.push(`${r} ${o} (${n.map(()=>"?").join(", ")})`),t.push(...n))}function tU(e){let t=[],r=[];Ja(t,r,"status",e.statuses,"IN"),Ja(t,r,"status",e.excludeStatuses,"NOT IN"),Ja(t,r,"type",e.types,"IN"),Ja(t,r,"id",e.ids,"IN");for(let n of e.metadataKeys??[])t.push("EXISTS (SELECT 1 FROM item_metadata_keys AS indexed_key WHERE indexed_key.item_id = items.id AND indexed_key.key = ?)"),r.push(n);for(let[n,o]of[["parent",e.parent],["assignee",e.assignee],["sprint",e.sprint],["release",e.release]])o!==void 0&&(t.push(`${n} = ?`),r.push(o));return e.priority!==void 0&&(t.push("priority = ?"),r.push(e.priority)),{where:t.length===0?"":` WHERE ${t.join(" AND ")}`,parameters:r}}async function rU(e){let t=Si();if(!t)return null;let r=e.query??{},{where:n,parameters:o}=tU(r),i;try{i=new t(ro(e.pmRoot),{readOnly:!0});let s=Qa(i);if(s.version!==Ai||s.source_cursor!==e.expectedSourceCursor)return i.close(),null;let a=i.prepare(`SELECT COUNT(*) AS count FROM items${n}`).get(...o),c=[],l="";r.limit!==void 0?(l+=" LIMIT ?",c.push(Math.max(0,Math.floor(r.limit))),r.offset!==void 0&&(l+=" OFFSET ?",c.push(Math.max(0,Math.floor(r.offset))))):r.offset!==void 0&&(l+=" LIMIT -1 OFFSET ?",c.push(Math.max(0,Math.floor(r.offset))));let u=i.prepare(`SELECT metadata_json FROM items${n}
197
- ORDER BY ${r.terminalStatuses&&r.terminalStatuses.length>0?`CASE WHEN status IN (${r.terminalStatuses.map(()=>"?").join(", ")}) THEN 1 ELSE 0 END ASC, `:""}priority ASC, updated_at DESC, id ASC${l}`).all(...o,...r.terminalStatuses??[],...c).map(f=>{let p=JSON.parse(String(f.metadata_json));if(!p.id)throw new TypeError("Indexed metadata row has no id");return p});return i.close(),{source_cursor:s.source_cursor,total:Number(a.count),items:u}}catch{return i?.close(),null}}async function nU(e){let t=Si();if(!t||e.paths.length===0)return null;let r;try{r=new t(ro(e.pmRoot),{readOnly:!0});let n=Qa(r);if(n.version!==Ai||n.source_cursor!==e.expectedSourceCursor)return r.close(),null;let o=e.paths.map(()=>"?").join(", "),i=e.scope===void 0?"":" AND scope = ?",s=[...e.paths,...e.scope===void 0?[]:[e.scope]],a=`path IN (${o})${i}`,c=r.prepare(`SELECT COUNT(DISTINCT item_id) AS count
198
- FROM item_linked_files
199
- WHERE ${a}`).get(...s),l=Pv(e.limit,50),d=Pv(e.offset,0),u=r.prepare(`SELECT items.id, items.metadata_json
200
- FROM items
201
- WHERE EXISTS (
202
- SELECT 1 FROM item_linked_files
203
- WHERE item_linked_files.item_id = items.id AND ${a}
204
- )
205
- ORDER BY items.priority ASC, items.updated_at DESC, items.id ASC
206
- LIMIT ? OFFSET ?`).all(...s,l,d),f=[];if(u.length>0){let p=u.map(b=>String(b.id)),m=r.prepare(`SELECT item_id, path, scope, note
207
- FROM item_linked_files
208
- WHERE item_id IN (${p.map(()=>"?").join(", ")})
209
- AND ${a}
210
- ORDER BY path ASC, scope ASC`).all(...p,...s),h=new Map(p.map(b=>[b,[]]));for(let b of m){let w=String(b.item_id),E=h.get(w);E.push({path:String(b.path),scope:String(b.scope),...b.note===null?{}:{note:String(b.note)}}),h.set(w,E)}for(let b of u){let w=JSON.parse(String(b.metadata_json));f.push({item:w,files:h.get(String(b.id))})}}return r.close(),{source_cursor:n.source_cursor,total:Number(c.count),matches:f}}catch{return r?.close(),null}}async function oU(e){let t=Si();if(!t)return null;let r;try{r=new t(ro(e.pmRoot),{readOnly:!0});let n=Qa(r);if(n.version!==Ai||n.source_cursor!==e.expectedSourceCursor)return r.close(),null;let i=r.prepare(`SELECT items.metadata_json
211
- FROM item_search
212
- JOIN items ON items.id = item_search.id
213
- WHERE item_search MATCH ?
214
- ORDER BY bm25(item_search), items.priority, items.updated_at DESC, items.id
215
- LIMIT ?`).all(e.query,Math.max(0,Math.floor(e.limit))).map(s=>JSON.parse(String(s.metadata_json)));return r.close(),{source_cursor:n.source_cursor,items:i}}catch{return r?.close(),null}}async function ec(e){await Qr.rm(ro(e),{force:!0})}import ve from"node:fs/promises";import te from"node:path";import{createHash as iU,randomUUID as Hv}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1c60c095-9763-5372-9dc3-c0ea1a5caca6")}catch{}})();var Et=8,$f=500,sU="metadata-derived-index",aU="metadata-cache.json",cU="metadata-cache-bodies.json",lU="metadata-cache-collections.json",dU="metadata-cache-delta.json",uU="metadata-cache-manifest.json",jv=4,fU=["comments","notes","learnings","files","tests","test_runs","docs"];function Gv(){return Vo(Zt())}function rc(e){let t={...e},r={};for(let n of fU)n in t&&(r[n]=t[n],delete t[n]);return{light:t,heavy:r}}function Bv(e,t){return!t||Object.keys(t).length===0?e:{...e,...t}}function Vv(e,t,r,n){let o=iU("sha256");o.update(`format:${e??"default"}`);let i=Object.entries(t).sort(([s],[a])=>s.localeCompare(a)).map(([s,a])=>`${s}=${a}`).join(",");return o.update(`|types:${i}`),r&&o.update(`|schema:${JSON.stringify(r)}`),n.length>0&&o.update(`|extension_fields:${n.join(",")}`),o.digest("hex").slice(0,16)}function nc(e){return te.join(e,"runtime",aU)}function oc(e){return te.join(e,"runtime",cU)}function ic(e){return te.join(e,"runtime",lU)}function jf(e){return te.join(e,"runtime",dU)}function Uf(e){return te.join(e,"runtime",uU)}function sc(e,t){let r=te.extname(e);return`${e.slice(0,-r.length)}.${t}${r}`}var pU=24,tt=new Map,ac=new WeakMap;function zf(e){return ac.get(e)??e.source_cursor}function mU(e,t){let r=zf(e);if(!(t.base_source_cursor!==r||e.source_cursor===t.source_cursor)){ac.set(e,r);for(let[n,o]of Object.entries(t.changes))o.entry?e.entries[n]=o.entry:delete e.entries[n];e.directory_signatures=t.directory_signatures,e.source_cursor=t.source_cursor}}function _U(e,t){if(!e)return;let r=zf(e);if(!(t.base_source_cursor!==r||e.source_cursor===t.source_cursor)){ac.set(e,r);for(let[n,o]of Object.entries(t.changes))o.body?e.bodies[n]=o.body:delete e.bodies[n];e.source_cursor=t.source_cursor}}function gU(e,t){if(!e)return;let r=zf(e);if(!(t.base_source_cursor!==r||e.source_cursor===t.source_cursor)){ac.set(e,r);for(let[n,o]of Object.entries(t.changes))o.collections?e.collections[n]=o.collections:delete e.collections[n];e.source_cursor=t.source_cursor}}function yU(e,t,r,n){!e||!n||e.context_fingerprint!==n.context_fingerprint||(mU(e,n),_U(t,n),gU(r,n))}function Ff(e,t){tt.size>=pU&&!tt.has(e)&&yn(tt),tt.set(e,t)}async function hr(e,t){let r;try{r=await ve.stat(e)}catch{return tt.delete(e),null}let n=tt.get(e);if(n&&Oi(n.signature,r.mtimeMs,r.ctimeMs,r.size))return tt.delete(e),tt.set(e,n),n.envelope;let o;try{o=t(await ve.readFile(e,"utf8"))}catch{o=null}return Ff(e,{signature:{mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size},envelope:o}),o}async function hU(e,t,r){let n=a=>{let c=JSON.parse(a);return c.version!==Et||typeof c.source_cursor!="string"||typeof c.entries!="object"||c.entries===null?null:c},o=nc(e),i=await hr(o,n);if(!t||i===null||i.context_fingerprint===t)return i;let s=await hr(sc(o,t),n);return s===null&&Ri(r,`metadata_cache_context_changed:${i.context_fingerprint}->${t}`),s}async function bU(e,t){let r=i=>{let s=JSON.parse(i);return s.version!==Et||typeof s.source_cursor!="string"||typeof s.bodies!="object"||s.bodies===null?null:s},n=oc(e),o=await hr(n,r);return t&&o?.context_fingerprint!==t?await hr(sc(n,t),r):o}async function wU(e,t){let r=i=>{let s=JSON.parse(i);return s.version!==Et||typeof s.source_cursor!="string"||typeof s.collections!="object"||s.collections===null?null:s},n=ic(e),o=await hr(n,r);return t&&o?.context_fingerprint!==t?await hr(sc(n,t),r):o}async function qf(e){let t=jf(e),r=await hr(t,n=>{let o=JSON.parse(n);return o.version!==Et||typeof o.base_source_cursor!="string"||typeof o.source_cursor!="string"||typeof o.changes!="object"||o.changes===null?null:o});if(r)return{envelope:r,invalid:!1};try{return await ve.stat(t),{envelope:null,invalid:!0}}catch{return{envelope:null,invalid:!1}}}async function Hf(e){let t=Uf(e),r=await hr(t,n=>{let o=JSON.parse(n);return o.version!==Et||typeof o.context_fingerprint!="string"||typeof o.source_cursor!="string"||!Number.isInteger(o.entry_count)||o.entry_count<0||typeof o.directory_signatures!="object"||o.directory_signatures===null?null:o});if(r)return r;try{await ve.stat(t),await no(e)}catch{}return null}async function Ci(e,t){await ve.mkdir(te.dirname(e),{recursive:!0}),await F(e,JSON.stringify(t));try{let n=await ve.stat(e);Ff(e,{signature:{mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size},envelope:t})}catch{tt.delete(e)}let r=te.dirname(te.dirname(e));if(e===nc(r)||e===oc(r)||e===ic(r)){let n=sc(e,t.context_fingerprint);await F(n,JSON.stringify(t));try{let c=await ve.stat(n);Ff(n,{signature:{mtime_ms:c.mtimeMs,ctime_ms:c.ctimeMs,size:c.size},envelope:t})}catch{tt.delete(n)}let o=te.dirname(e),i=te.extname(e),s=te.basename(e,i),a=(await ve.readdir(o,{withFileTypes:!0}).catch(()=>[])).filter(c=>c.isFile()&&c.name!==te.basename(e)&&c.name.startsWith(`${s}.`)&&c.name.endsWith(i)).map(c=>te.join(o,c.name));if(a.length>jv){let c=(await Promise.all(a.map(async l=>{try{return{path:l,mtime:(await ve.stat(l)).mtimeMs}}catch{return null}}))).filter(l=>l!==null);for(let l of c.sort((d,u)=>d.mtime-u.mtime).slice(0,Math.max(0,c.length-jv)))await ve.rm(l.path,{force:!0}),tt.delete(l.path)}}}function vU(e,t,r){return r?t===r&&e!==r:t==="toon"&&e!=="toon"}function Wv(e,t,r){return e===void 0||vU(e,t,r)}function Ri(e,t){e&&!e.includes(t)&&e.push(t)}function Oi(e,t,r,n){return e.mtime_ms===t&&e.ctime_ms===r&&e.size===n}async function EU(e,t,r){let n=te.join(e,t);try{let o=await ve.readdir(n);return{folder:t,dirPath:n,files:o}}catch(o){return typeof o=="object"&&o!==null&&"code"in o&&!X(o)&&Ri(r,`item_list_directory_read_failed:${t}`),{folder:t,dirPath:n,files:[]}}}async function TU(e,t){try{let r=await ve.stat(te.join(e,t));return[t,{exists:!0,mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size}]}catch{return[t,{exists:!1,mtime_ms:0,ctime_ms:0,size:0}]}}async function tc(e,t){return Object.fromEntries(await Promise.all(t.map(async r=>await TU(e,r))))}function Ii(e,t){return!e||Object.keys(e).length!==Object.keys(t).length?!1:Object.entries(t).every(([r,n])=>{let o=e[r];return o!==void 0&&o.exists===n.exists&&Oi(o,n.mtime_ms,n.ctime_ms,n.size)})}function kU(e){return hs.some(t=>e.toLowerCase().endsWith(t))}function AU(e,t,r,n,o,i){n||(e.metadata=!0),t&&!o&&(e.body=!0),r&&!i&&(e.collections=!0)}async function SU(e,t,r){if(r)for(let n of await it({path:e,scope:"project"}))Ri(t,n)}function Uv(e,t,r,n){if(e)return t&&r?r.collections:n}async function OU(e,t,r){let n=await ve.stat(e),o=n.mtimeMs,i=n.ctimeMs,{size:s}=n,a=Oo(e);await SU(e,r.warnings,r.dispatchReadHooks);let c=r.previousEntries[t],l=!r.forceSourceRead&&c!==void 0&&Oi(c,o,i,s),d=r.previousBodies[t],u=!r.forceSourceRead&&d!==void 0&&Oi(d,o,i,s),f=r.previousCollections[t],p=!r.forceSourceRead&&f!==void 0&&Oi(f,o,i,s);if(!(!l||r.includeBody&&!u||r.includeCollections&&!p))return{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:c.metadata,heavyMetadata:Uv(r.includeCollections,p,f,void 0),bodyLength:c.body_length,body:r.includeBody?d.body:void 0};let h=await ve.readFile(e,"utf8"),b=$r(h,{format:a,schema:r.schema,extensionFieldNames:r.extensionFieldNames,onWarning:E=>Ri(r.warnings,E)}),w=rc(b.metadata);return AU(r.state.misses,r.includeBody,r.includeCollections,l,u,p),{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:l?c.metadata:w.light,heavyMetadata:Uv(r.includeCollections,p,f,w.heavy),bodyLength:l?c.body_length:b.body.length,body:r.includeBody?b.body:void 0}}function CU(e,t,r,n){r.state.newEntries[t]={mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size,metadata:n.lightMetadata,body_length:n.bodyLength},r.includeBody&&n.body!==void 0&&(r.state.newBodies[t]={mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size,body:n.body}),r.includeCollections&&n.heavyMetadata!==void 0&&(r.state.newCollections[t]={mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size,collections:n.heavyMetadata});let o=r.includeCollections?Bv(n.lightMetadata,n.heavyMetadata):n.lightMetadata,i=r.state.documentsById.get(o.id),s={metadata:o,body:n.body,item_format:n.itemFormat,item_path:e};Wv(i?.itemFormat,n.itemFormat,r.preferredFormat)&&r.state.documentsById.set(o.id,{candidate:s,itemFormat:n.itemFormat})}async function IU(e,t,r,n){try{let o=await OU(t,r,n);CU(t,r,n,o)}catch{Ri(n.warnings,`item_list_item_read_failed:${e}/${te.basename(t)}`)}}function RU(e,t){return e&&e.context_fingerprint===t?e.entries:{}}function xU(e,t){return e&&e.context_fingerprint===t?e.bodies:{}}function NU(e,t){return e&&e.context_fingerprint===t?e.collections:{}}function DU(){return{newEntries:{},newBodies:{},newCollections:{},documentsById:new Map,misses:{metadata:!1,body:!1,collections:!1}}}async function PU(e,t){let r=[];for(let{folder:n,dirPath:o,files:i}of e)for(let s of i){if(!kU(s))continue;let a=te.join(o,s),c=te.relative(t.pmRoot,a);r.push(IU(n,a,c,t)),r.length===32&&(await Promise.all(r),r.length=0)}await Promise.all(r)}async function MU(e){if(!(!(e.state.misses.metadata||Object.keys(e.previousEntries).length!==Object.keys(e.state.newEntries).length||!Ii(e.existingCache?.directory_signatures,e.directorySignatures))&&e.existingCache!==null&&e.existingCache.context_fingerprint===e.contextFingerprint))try{await Ci(nc(e.pmRoot),{version:Et,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,directory_signatures:e.directorySignatures,entries:e.state.newEntries}),await Ci(Uf(e.pmRoot),{version:Et,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,entry_count:Object.keys(e.state.newEntries).length,directory_signatures:e.directorySignatures});let r=[...e.state.documentsById.values()].map(({candidate:n})=>({relativePath:te.relative(e.pmRoot,n.item_path),metadata:rc(n.metadata).light,linkedFiles:n.metadata.files??[]}));r.length>=e.minimumIndexedItems?await Fv({pmRoot:e.pmRoot,contextFingerprint:e.contextFingerprint,sourceCursor:e.sourceCursor,rows:r}):await ec(e.pmRoot)}catch{}}async function LU(e){!(e.state.misses.body||Object.keys(e.previousBodies).length!==Object.keys(e.state.newBodies).length)&&e.existingBodyCache!==null&&e.existingBodyCache.context_fingerprint===e.contextFingerprint||await Ci(oc(e.pmRoot),{version:Et,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,bodies:e.state.newBodies}).catch(()=>{})}async function FU(e){!(e.state.misses.collections||Object.keys(e.previousCollections).length!==Object.keys(e.state.newCollections).length)&&e.existingCollectionsCache!==null&&e.existingCollectionsCache.context_fingerprint===e.contextFingerprint||await Ci(ic(e.pmRoot),{version:Et,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,collections:e.state.newCollections}).catch(()=>{})}async function cc(e,t,r={}){let n=await Hf(e);return r.required!==!0&&(n===null||n.entry_count<$f)?async()=>{}:ie(e,sU,30,t,!1,!1,3e3)}async function $U(e,t){let r=await Hf(e);if(r===null)return null;let n=await qf(e);if(n.invalid)return await no(e),null;let o=n.envelope?.context_fingerprint===r.context_fingerprint&&n.envelope.base_source_cursor===r.source_cursor?n.envelope.source_cursor:r.source_cursor,i=n.envelope?.context_fingerprint===r.context_fingerprint&&n.envelope.base_source_cursor===r.source_cursor?n.envelope.directory_signatures:r.directory_signatures;return t&&!Ii(i,await tc(e,t))?null:{source_cursor:o,entry_count:r.entry_count}}function zv(e,t){let r=te.relative(e,t);return r===""||r===".."||r.startsWith(`..${te.sep}`)||te.isAbsolute(r)?null:r}async function no(e){await Promise.all([nc(e),oc(e),ic(e),jf(e),Uf(e)].map(async t=>{await ve.rm(t,{force:!0}),tt.delete(t)})),await ec(e)}async function jU(e){if(e.mutation.document===null)return{entry:null,body:null,collections:null};let t=await ve.stat(e.mutation.itemPath),r=rc(e.mutation.document.metadata),n={mtime_ms:t.mtimeMs,ctime_ms:t.ctimeMs,size:t.size};return{entry:{...n,metadata:r.light,body_length:e.mutation.document.body.length},body:{...n,body:e.mutation.document.body},collections:{...n,collections:r.heavy}}}function UU(e,t,r){return e?.context_fingerprint===t&&e.base_source_cursor===r?structuredClone(e.changes):{}}async function lc(e){let t=zv(e.pmRoot,e.itemPath),r=e.previousItemPath?zv(e.pmRoot,e.previousItemPath):void 0;if(t===null||r===null)return await no(e.pmRoot),["metadata_derived_index_path_invalidated"];try{let n=Vv(e.preferredFormat,e.typeToFolder,e.schema,Gv()),o=await Hf(e.pmRoot);if(o===null||o.context_fingerprint!==n)return[];let i=o.source_cursor,s=await qf(e.pmRoot);if(s.invalid)return await no(e.pmRoot),["metadata_derived_index_refresh_failed"];let a=UU(s.envelope,n,i),c=s.envelope?.context_fingerprint===n&&s.envelope.base_source_cursor===i?s.envelope.source_cursor:i;r!==void 0&&(a[r]={entry:null,body:null,collections:null}),a[t]=await jU({mutation:e});let l=Hv();return await Ci(jf(e.pmRoot),{version:Et,context_fingerprint:n,base_source_cursor:i,source_cursor:l,directory_signatures:await tc(e.pmRoot,[...new Set(Object.values(e.typeToFolder))]),changes:a}),await $v({pmRoot:e.pmRoot,contextFingerprint:n,expectedSourceCursor:c,sourceCursor:l,row:e.document===null?null:{relativePath:t,metadata:rc(e.document.metadata).light,linkedFiles:e.document.metadata.files},deletedRelativePaths:[...r===void 0?[]:[r],...e.document===null?[t]:[]]})||await ec(e.pmRoot),[]}catch{return await no(e.pmRoot).catch(()=>{}),["metadata_derived_index_refresh_failed"]}}function zU(e){return[...e.documentsById.values()].sort((t,r)=>t.candidate.metadata.id.localeCompare(r.candidate.metadata.id)).map(t=>t.candidate)}function qv(e,t,r){return e?.context_fingerprint===t&&e.source_cursor===r}function qU(e,t,r,n,o){return e.every(i=>(!t||n[i]!==void 0)&&(!r||o[i]!==void 0))}function HU(e){let t=new Map;for(let[r,n]of Object.entries(e.previousEntries)){let o=Oo(r);if(!o)continue;let i=e.includeCollections?Bv(n.metadata,e.previousCollections[r]?.collections):n.metadata,s=t.get(i.id);Wv(s?.itemFormat,o,e.preferredFormat)&&t.set(i.id,{itemFormat:o,candidate:{metadata:i,body:e.includeBody?e.previousBodies[r]?.body:void 0,item_format:o,item_path:te.join(e.pmRoot,r)}})}return[...t.values()].sort((r,n)=>r.candidate.metadata.id.localeCompare(n.candidate.metadata.id)).map(r=>r.candidate)}function GU(e){return e.forceSourceScan||fd()||e.existingCache?.context_fingerprint!==e.contextFingerprint||e.entryKeys.length<e.minimumIndexedItems||!Ii(e.existingCache?.directory_signatures,e.directorySignatures)?!1:[!e.includeBody||qv(e.existingBodyCache,e.contextFingerprint,e.existingCache.source_cursor),!e.includeCollections||qv(e.existingCollectionsCache,e.contextFingerprint,e.existingCache.source_cursor)].every(Boolean)&&qU(e.entryKeys,e.includeBody,e.includeCollections,e.previousBodies,e.previousCollections)}async function xi(e,t,r,n,o,i={}){let s=i.includeBody!==!1,a=i.includeCollections!==!1,c=Gv(),l=Vv(t,r,o,c),d=await qf(e);d.invalid&&await no(e);let u=await hU(e,l,i.cacheDiagnostics),f=s?await bU(e,l):null,p=a?await wU(e,l):null;yU(u,f,p,d.envelope);let m=RU(u,l),h=xU(f,l),b=NU(p,l),w=[...new Set(Object.values(r))],E=await tc(e,w),O=Object.keys(m),B=Math.max(1,Math.floor(i.derivedIndexMinimumItems??$f));if(GU({forceSourceScan:i.forceSourceScan===!0,contextFingerprint:l,existingCache:u,existingBodyCache:f,existingCollectionsCache:p,directorySignatures:E,entryKeys:O,minimumIndexedItems:B,includeBody:s,includeCollections:a,previousBodies:h,previousCollections:b}))return HU({pmRoot:e,preferredFormat:t,includeBody:s,includeCollections:a,previousEntries:m,previousBodies:h,previousCollections:b});let P=await Promise.all(w.map(eS=>EU(e,eS,n))),he=fd(),Oe=DU(),Ye={pmRoot:e,preferredFormat:t,warnings:n,schema:o,extensionFieldNames:c,includeBody:s,includeCollections:a,forceSourceRead:i.forceSourceScan===!0,dispatchReadHooks:he,previousEntries:m,previousBodies:h,previousCollections:b,state:Oe};await PU(P,Ye);let Ce=await tc(e,w),Tr=Ii(E,Ce)?Ce:{},il=Oe.misses.metadata||Object.keys(m).length!==Object.keys(Oe.newEntries).length||!Ii(u?.directory_signatures,Tr)||u===null?Hv():u.source_cursor;return await MU({pmRoot:e,contextFingerprint:l,sourceCursor:il,existingCache:u,previousEntries:m,directorySignatures:Tr,state:Oe,minimumIndexedItems:B}),s&&await LU({pmRoot:e,contextFingerprint:l,sourceCursor:il,existingBodyCache:f,previousBodies:h,state:Oe}),a&&await FU({pmRoot:e,contextFingerprint:l,sourceCursor:il,existingCollectionsCache:p,previousCollections:b,state:Oe}),zU(Oe)}async function Yv(e,t,r,n,o){return(await xi(e,t,r,n,o,{includeBody:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}async function Kv(e,t,r,n,o){return(await xi(e,t,r,n,o,{includeBody:!1,includeCollections:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}import Bf from"node:fs/promises";import dc 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]="b6e08d70-4e3f-5ad3-83ad-9cb49edb526e")}catch{}})();function br(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function Vf(e){let t=["--pm-path",e,"init","--defaults","--agent-guidance","skip"];return{suggested_retry:Lt(t),suggested_retry_args:t}}function uc(e){return new g(`Tracker root is not a directory at ${e}.`,_.USAGE,{code:"tracker_root_not_directory",reason:"not_a_directory",resolved_path:e,nextSteps:["Pass a tracker directory, usually <workspace>/.agents/pm, rather than a file path."]})}function Gf(e){return new g(`Tracker root is not readable at ${e}.`,_.GENERIC_FAILURE,{code:"tracker_root_unreadable",reason:"unreadable",resolved_path:e,nextSteps:["Grant read and directory-search permission to the tracker root, then retry."]})}async function BU(e){let t=dc.resolve(e),r=dc.parse(t).root,n=dc.dirname(t);for(;n!==r;){let o;try{o=await Bf.stat(n)}catch(i){if(br(i,"ENOTDIR"))throw uc(e);if(!br(i,"ENOENT"))throw i;n=dc.dirname(n);continue}if(!o.isDirectory())throw uc(e);return}}async function oo(e){let t;try{t=await Bf.stat(e)}catch(r){throw br(r,"ENOENT")?(await BU(e),new g(`Tracker is not initialized at ${e}. Tracker root does not exist. Run pm init first.`,_.NOT_FOUND,{code:"tracker_root_missing",reason:"missing",resolved_path:e,nextSteps:["Confirm the tracker root path or initialize it with the emitted retry."],recovery:Vf(e)})):br(r,"ENOTDIR")?uc(e):br(r,"EACCES")||br(r,"EPERM")?Gf(e):r}if(!t.isDirectory())throw uc(e);if(process.platform!=="win32"&&((t.mode&292)===0||(t.mode&73)===0))throw Gf(e);try{await(await Bf.opendir(e)).close()}catch(r){throw br(r,"EACCES")||br(r,"EPERM")?Gf(e):r}}async function VU(e){if(await oo(e),!await re(Te(e)))throw new g(`Tracker is not initialized at ${e}. Run pm init first.`,_.NOT_FOUND,{code:"tracker_not_initialized",reason:"settings_missing",resolved_path:e,nextSteps:["Initialize the selected tracker root with the emitted retry."],recovery:Vf(e)})}import io from"node:fs/promises";import{statSync as WU}from"node:fs";(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]="401ead12-fb72-586b-8625-33ae44ed2eb9")}catch{}})();function YU(e,t){let r=-1,n=structuredClone(Kn);for(let[a,c]of e.entries()){if(n=Df(n,c.patch,a+1,c.op),n.metadata.id!==void 0&&n.metadata.id!==t)throw new g(`History belongs to item ${String(n.metadata.id)}, expected ${t}.`,_.GENERIC_FAILURE,{code:"history_replay_invalid",required:"Recover the correct history stream for this item before attempting restoration."});n.metadata.id===t&&Array.isArray(n.metadata.tags)&&(r=a)}let o=ki(e,!0),i=r<0||o===null?null:o+r+1,s=i===null?void 0:String(i);if(r>=0&&s===void 0){let a=e[r].ts;Rv(a,e).historyIndex===r&&(s=a)}return{version:i,target:s}}async function Xv(e,t,r){let n=new Set([Ht(t,r),Qn(t)]);for(let o of n){let i=_t(e,o);if(!WU(i,{throwIfNoEntry:!1})?.isFile())continue;let s=await Ue(i,o),a=-1;if(s.forEach((p,m)=>{p.op==="delete"&&(a=m)}),a<0)continue;let c=xv(s,s.length-1);if(Object.keys(c.metadata).length!==0)continue;let{version:l,target:d}=YU(s,o),u=d===void 0?["history",o,"--verify"]:["get",o,"--at",d],f=Lt(u);return new g(`Item ${o} was deleted at ${s[a].ts}; its history is retained.`,_.NOT_FOUND,{code:"item_deleted",required:"Read a retained materialized version, then restore it if the item should exist again.",item_id:o,tombstone:{deleted:!0,deleted_at:s[a].ts,recoverable:d!==void 0,last_materialized_version:l},nextSteps:[f,...d===void 0?["Recover the pre-compaction history from version control."]:[Lt(["restore",o,d])]],recovery:{suggested_retry:f,suggested_retry_args:u}})}}import Wf from"node:path";import{isUtf8 as KU}from"node:buffer";(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]="02383f73-64f0-5ffc-a802-f8ef2b3cc038")}catch{}})();async function XU(e){try{return await io.access(e),!0}catch{return!1}}function JU(e,t){e&&(e.includes(t)||e.push(t))}function Jv(e){return e??Vo(Zt())}function ZU(e){return e==="toon"?["toon","json_markdown"]:e==="json_markdown"?["json_markdown","toon"]:["toon","json_markdown"]}async function Ni(e,t,r="pm-",n,o=Ee){let i=t.trim(),s=i.startsWith("#")?i.slice(1):i;if(s.length===0)return null;let a=Ht(t,r),c=Qn(t),l=[...new Set([s,a,c])].filter(f=>f.length>0),d=Object.entries(o),u=ZU(n);for(let f of l){let p=new Map;for(let[m]of d)for(let h of u){let b=Tn(e,m,f,h,o);await XU(b)&&p.set(b,p.get(b)??{id:f,type:m,itemPath:b,item_format:h})}if(p.size>1){let m=[...p.keys()].map(h=>Wf.relative(e,h).split(Wf.sep).join("/")).sort();throw new g(`Item ${f} has ambiguous identity across ${m.join(", ")}. Preserve both documents and inspect pm ops validate --check-storage-integrity before resolving the collision.`,_.CONFLICT,{code:"item_identity_ambiguous",item_id:f,paths:m})}for(let m of p.values())return m}return null}async function Di(e,t={}){let r=await QU(e,t);if(r.error!==null)throw r.error;return{raw:r.raw,document:r.document}}async function QU(e,t={}){let r=await io.readFile(e.itemPath);if(!KU(r))throw new g("Item contains invalid UTF-8; preserve a binary backup before recovering it.",_.CONFLICT,{code:"item_document_encoding_invalid",item_id:e.id,item_path:e.itemPath,byte_length:r.length,empty:!1});let n=r.toString("utf8");await it({path:e.itemPath,scope:"project"});let o;try{o=$r(n,{format:e.item_format,schema:t.schema,extensionFieldNames:Jv(t.extensionFieldNames),onWarning:i=>JU(t.warnings,i)})}catch(i){if(i instanceof g&&i.code==="item_document_invalid")return{raw:n,document:null,error:new g(`Cannot read ${e.id} at ${e.itemPath}${r.length===0?" (zero-length file)":""}: ${i.message}`,i.exitCode,{...i.context,item_id:e.id,item_path:e.itemPath,byte_length:r.length,empty:r.length===0,nextSteps:[`Run pm history ${e.id} --full, then pm restore ${e.id} <version> to recover a recorded state.`]})};throw i}return{raw:n,document:o,error:null}}async function Zv(e,t,r=Ee,n,o){await oo(e);let i=await Yv(e,t,r,n,o);return Ka(i.length),i.map(s=>s.metadata)}async function ez(e,t,r=Ee,n,o){await oo(e);let i=await Kv(e,t,r,n,o);return Ka(i.length),i.map(s=>s.metadata)}async function gJ(e,t,r=Ee,n,o,i={}){await oo(e);let s=await xi(e,t,r,n,o,{includeBody:!0,forceSourceScan:i.forceSourceScan});return Ka(s.length),s.map(a=>({...a.metadata,body:a.body}))}function Yf(e){return{async get(t){let r=await Ni(e.pmRoot,t,e.settings.id_prefix,e.settings.item_format,e.typeToFolder);if(!r)return null;let{document:n}=await Di(r,{schema:e.settings.schema});return{item:n.metadata,body:n.body}},list:()=>Zv(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema)}}async function tz(e,t){let r=new Set(Object.values(t)),n=[];return await Promise.all([...r].map(async o=>{try{let i=await io.readdir(Wf.join(e,o));for(let s of i)for(let a of hs)if(s.toLowerCase().endsWith(a)){n.push(s.slice(0,-a.length));break}}catch{}})),n}async function rz(e,t,r,n){let o=Ht(t,r),i=await tz(e,n);if(i.length===0)return[];let s=Math.max(3,Math.floor(o.length/2));return i.map(c=>({id:c,distance:ot(c,o,s)})).filter(c=>c.distance!==null).sort((c,l)=>c.distance-l.distance).slice(0,3).map(c=>c.id)}async function Qv(e,t,r,n){let o=await Xv(e,t,r);if(o)return o;let i=await rz(e,t,r,n),s=["Confirm the active --path/PM_PATH scope, then retry with a valid id."];return i.length>0&&s.unshift(`Did you mean one of: ${i.join(", ")}?`),new g(`Item ${t} not found`,_.NOT_FOUND,{nextSteps:s})}function nz(e,t){return e==="claim"||t===!0&&(e==="comment_add"||e==="comment_edit"||e==="comment_delete"||e==="note_add"||e==="learning_add"||e==="release"||e==="update"||e==="update_ownership_bypass"||e==="update_audit")}async function eE(e){let t=e.typeToFolder??ko(e.settings,Zt()).type_to_folder,r=await Ni(e.pmRoot,e.id,e.settings.id_prefix,e.settings.item_format,t);if(!r)throw await Qv(e.pmRoot,e.id,e.settings.id_prefix,t);let n=await ie(e.pmRoot,r.id,e.settings.locks.ttl_seconds,e.author,!!e.force,e.settings.governance.force_required_for_stale_lock,e.settings.locks.wait_ms);try{let o=[],{raw:i,document:s}=await Di(r,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames,warnings:o}),a=s.metadata.assignee?.trim(),c=s.metadata.claim_principal?.trim()||a,l=ru(e.author),d=Va(e.settings);if(a&&c!==l&&!e.force&&!nz(e.op,e.bypassAssigneeConflict)){if(d.ownership_enforcement==="strict")throw new g(`Item ${r.id} is assigned to ${a}. Use --force to override.`,_.CONFLICT);d.ownership_enforcement==="warn"&&o.push(`ownership_warning:assignee_conflict:${r.id}:${a}`)}return{typeToFolder:t,located:r,originalRaw:i,document:s,warnings:o,releaseLock:n}}catch(o){throw await n(),o}}function oz(e,t,r){if(!e.handled||typeof e.result!="object"||e.result===null)return{effectiveTargetItemPath:t,effectiveSerializedAfter:r,skipItemWrite:!1};let n=e.result;return{effectiveTargetItemPath:typeof n.target_item_path=="string"&&n.target_item_path.trim().length>0?n.target_item_path:t,effectiveSerializedAfter:typeof n.contents=="string"?n.contents:r,skipItemWrite:n.skip_write===!0}}async function iz(e){if(!e.skipItemWrite){if(e.effectiveTargetItemPath!==e.originalItemPath){await F(e.originalItemPath,e.originalRaw),await io.rm(e.effectiveTargetItemPath,{force:!0});return}await F(e.originalItemPath,e.originalRaw)}}async function Kf(e){Ys(e.op);let t=await eE({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:e.op,author:e.author,force:e.force,bypassAssigneeConflict:e.bypassAssigneeConflict,extensionFieldNames:e.extensionFieldNames,typeToFolder:e.typeToFolder}),{typeToFolder:r,located:n,originalRaw:o,document:i,warnings:s,releaseLock:a}=t;try{let c=Qe(i,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),l=Qe(structuredClone(i),{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),d=await e.mutate(l);if(e.skipNoop===!0&&d.changedFields.length===0)return{item:c.metadata,body:c.body,changedFields:[],warnings:[...s,...d.warnings??[]]};let u=e.resolveHistoryContext?.();l.metadata.updated_at=Z();let f=Qe(l,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),p=await Pf({pmRoot:e.pmRoot,settings:e.settings,operation:e.op,author:e.author,before:c,after:f});await Ls({pm_root:e.pmRoot,operation:e.op,before:c,after:f,changed_fields:d.changedFields,sdk:Yf({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:r})});let m=await $a({pmRoot:e.pmRoot,settings:e.settings,itemId:n.id,commandLabel:e.op}),h="toon",b=ei(f,{format:h,schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),w=Tn(e.pmRoot,f.metadata.type,n.id,h,r),E=_t(e.pmRoot,n.id),O=await Ze("item_store_write",{op:e.op,pm_root:e.pmRoot,item_id:n.id,source_item_path:n.itemPath,target_item_path:w,history_path:E,item_format:h,before:c,after:f,contents:b}),{effectiveTargetItemPath:B,effectiveSerializedAfter:P,skipItemWrite:he}=oz(O,w,b),Oe=await cc(e.pmRoot,e.author),Ye=[];try{he||await F(B,P),!he&&B!==n.itemPath&&await io.rm(n.itemPath);let Tr=Ut({nowIso:f.metadata.updated_at,author:e.author,op:e.op,before:c,after:f,message:e.message,context:p.decisions.length===0?u:{...u,workflow_policies:p.decisions}});try{await zt(E,Tr)}catch(pn){throw await iz({skipItemWrite:he,effectiveTargetItemPath:B,originalItemPath:n.itemPath,originalRaw:o}),pn}he||(Ye=await lc({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:r,schema:e.settings.schema,itemPath:B,previousItemPath:n.itemPath,document:f}))}finally{await Oe()}let Ce=[...await ke({path:B,scope:"project",op:e.op,item_id:f.metadata.id,item_type:f.metadata.type,before:c,after:f,changed_fields:d.changedFields}),...await ke({path:E,scope:"project",op:`${e.op}:history`,item_id:f.metadata.id,item_type:f.metadata.type,before:c,after:f,changed_fields:d.changedFields})];return Ms({id:f.metadata.id,op:e.op,item_type:f.metadata.type,previous_status:c.metadata.status,status:f.metadata.status,previous:Bo(c.metadata,d.changedFields),current:Bo(f.metadata,d.changedFields),changed_fields:d.changedFields}),{item:f.metadata,body:f.body,changedFields:d.changedFields,warnings:[...s,...d.warnings??[],...p.warnings,...m.warnings,...O.warnings,...Ye,...Ce]}}finally{await a()}}async function sz(e){let{historyContext:t,...r}=e;return Kf({...r,resolveHistoryContext:()=>t})}async function yJ(e){return Kf(e)}async function az(e){return Kf(e)}async function cz(e){let t=await eE({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:"delete",author:e.author,force:e.force}),{located:r,originalRaw:n,document:o,warnings:i,releaseLock:s}=t;try{let a=Jv(void 0),c=Qe(o,{schema:e.settings.schema,extensionFieldNames:a}),l=await Pf({pmRoot:e.pmRoot,settings:e.settings,operation:"delete",author:e.author,before:c,after:null,dryRun:e.dryRun});await Ls({pm_root:e.pmRoot,operation:"delete",before:c,after:null,changed_fields:["deleted"],sdk:Yf({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:t.typeToFolder})});let d=await $a({pmRoot:e.pmRoot,settings:e.settings,itemId:r.id,commandLabel:"delete"}),u=Z(),f=_n,p=Ut({nowIso:u,author:e.author,op:"delete",before:c,after:f,message:e.message,context:l.decisions.length===0?void 0:{workflow_policies:l.decisions}}),m=_t(e.pmRoot,r.id),h=await Ze("item_store_delete",{op:"delete",pm_root:e.pmRoot,item_id:r.id,item_path:r.itemPath,history_path:m,before:c}),b=r.itemPath,w=!1;if(h.handled&&typeof h.result=="object"&&h.result!==null){let P=h.result;typeof P.item_path=="string"&&P.item_path.trim().length>0&&(b=P.item_path),P.skip_delete===!0&&(w=!0)}if(e.dryRun===!0)return{item:c.metadata,changedFields:["deleted"],targetPath:b,warnings:[...i,...l.warnings,...d.warnings,...h.warnings]};let E=await cc(e.pmRoot,e.author),O=[];try{w||await io.rm(b);try{await zt(m,p)}catch(P){throw w||await F(b,n),P}w||(O=await lc({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:t.typeToFolder,schema:e.settings.schema,itemPath:b,document:null}))}finally{await E()}let B=[...await ke({path:b,scope:"project",op:"delete",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]}),...await ke({path:m,scope:"project",op:"delete:history",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]})];return Ms({id:c.metadata.id,op:"delete",item_type:c.metadata.type,previous_status:c.metadata.status,previous:Bo(c.metadata,Object.keys(c.metadata)),changed_fields:["deleted"]}),{item:c.metadata,changedFields:["deleted"],warnings:[...i,...l.warnings,...d.warnings,...h.warnings,...O,...B]}}finally{await s()}}(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]="74cee8e6-1785-50f4-94d8-fc0b29055dc2")}catch{}})();var lz=3e4;function en(e,t,r=lz){let n=e??r;if(!Number.isFinite(n)||n<=0)throw new Error(`${t} timeout must be a positive finite number`);return Math.floor(n)}function tn(e,t){if(e)return e;if(typeof globalThis.fetch=="function")return globalThis.fetch.bind(globalThis);throw new Error(`${t} execution requires a fetch implementation`)}async function dz(e){try{return(await e.text()).replaceAll(/\s+/g," ").trim()}catch(t){return`(failed to read response body: ${G(t)})`}}async function fc(e){let t=new AbortController,r=setTimeout(()=>{t.abort()},e.timeoutMs);try{let n;try{n=await e.fetcher(e.endpoint,{method:e.method,headers:e.headers,body:JSON.stringify(e.body),signal:t.signal})}catch(o){throw o instanceof Error&&o.name==="AbortError"?new Error(`${e.requestLabel} timed out after ${e.timeoutMs}ms`):new Error(`${e.requestLabel} execution failed: ${G(o)}`)}if(!n.ok){let o=await dz(n),i=o.length>0?`: ${o}`:"";throw new Error(`${e.requestLabel} failed with status ${n.status} ${n.statusText}${i}`)}try{return await n.json()}catch(o){throw new Error(`${e.responseLabel} JSON parse failed: ${G(o)}`)}}finally{clearTimeout(r)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c36f008-53c4-5ee7-bc87-6bfb7aeb8f42")}catch{}})();function TJ(e,t){let r=U(e);if(!r)return"unconfigured";let n=U(t);return n&&n.toLowerCase()===r.toLowerCase()?"configured":"auto-detected"}function uz(e){let t=wo(e),r=t.toLowerCase();return r.endsWith("/embeddings")?t:r.endsWith("/v1")?`${t}/embeddings`:`${t}/v1/embeddings`}function rE(e){let t=e.search?.embedding_model;return U(t)||null}function fz(e){let t=U(e.providers?.openai?.base_url),r=U(e.providers?.openai?.model);if(!t||!r)return null;let n=rE(e),o=U(e.providers?.openai?.api_key);return{name:"openai",base_url:t,model:n??r,...o?{api_key:o}:{}}}function pz(e){let t=U(e.providers?.ollama?.base_url),r=U(e.providers?.ollama?.model);if(!t||!r)return null;let n=rE(e);return{name:"ollama",base_url:t,model:n??r}}function nE(e){let t=(Array.isArray(e)?e:[e]).map(r=>r.trim()).filter(r=>r.length>0);if(t.length===0)throw new Error("Embedding input must include at least one non-empty string");return t}function mz(e){let t=[],r=[],n=new Map;for(let o of e){let i=n.get(o);if(i===void 0){let s=t.length;t.push(o),n.set(o,s),r.push(s);continue}r.push(i)}return{uniqueInputs:t,originalToUniqueIndex:r}}function _z(e){let t=e.map((n,o)=>({embedding:n.embedding,index:n.index,position:o}));if(t.some(n=>n.index!==void 0)){for(let n of t)if(!Number.isInteger(n.index))throw new TypeError(`OpenAI embedding response entry at position ${n.position} is missing a valid integer index`);return[...t].sort((n,o)=>{let i=n.index-o.index;return i!==0?i:n.position-o.position})}return t}function pc(e){let t=fz(e),r=pz(e),n=[t,r].filter(a=>a!==null),o=U(e.search?.provider),i=o?o.toLowerCase():null;return{active:(i?n.find(a=>a.name===i):void 0)??n[0]??null,available:n}}function tE(e){let t=wo(e.base_url);return e.name==="openai"?{provider:"openai",endpoint:uz(t),model:e.model}:{provider:"ollama",endpoint:`${t}/api/embed`,model:e.model}}function gz(e,t){let r=nE(t);return e.name==="openai"?{target:tE(e),method:"POST",headers:{"content-type":"application/json",...e.api_key?{authorization:`Bearer ${e.api_key}`}:{}},body:{model:e.model,input:r.length===1?r[0]:r}}:{target:tE(e),method:"POST",headers:{"content-type":"application/json"},body:{model:e.model,input:r}}}function yz(e,t){if(e.name==="openai"){let o=t.data;if(!Array.isArray(o)||o.length===0)throw new Error("OpenAI embedding response must include a non-empty data array");return _z(o).map((s,a)=>{let c=s.embedding;if(!gn(c))throw new Error(`OpenAI embedding response entry at index ${a} is missing a numeric embedding vector`);return[...c]})}let r=t.embedding;if(gn(r))return[[...r]];let n=t.embeddings;if(Array.isArray(n)&&n.length>0)return n.map((o,i)=>{if(!gn(o))throw new Error(`Ollama embedding response entry at index ${i} is missing a numeric embedding vector`);return[...o]});throw new Error("Ollama embedding response must include embedding or embeddings vectors")}async function oE(e,t,r={}){let n=en(r.timeout_ms,"Embedding request"),o=tn(r.fetcher,"Embedding request"),i=nE(t),s=mz(i),a=gz(e,s.uniqueInputs),c=await fc({endpoint:a.target.endpoint,method:a.method,headers:a.headers,body:a.body,timeoutMs:n,fetcher:o,requestLabel:"Embedding request",responseLabel:"Embedding response"}),l=yz(e,c);if(l.length!==s.uniqueInputs.length)throw new Error(`Embedding response cardinality mismatch: expected ${s.uniqueInputs.length} vector(s), received ${l.length}`);return s.originalToUniqueIndex.map(d=>[...l[d]])}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="16c567d7-0065-5401-a768-0913cec6d5f4")}catch{}})();var mc=["title","description","tags","status","type","priority","assignee","parent","goal","value","why_now","risk","confidence","estimated_minutes","acceptance_criteria","resolution","expected_result","actual_result","body","comments","notes","learnings","reminders","events","dependencies","plan"];function Xf(e){let t=e?.search?.corpus_fields;if(!Array.isArray(t))return[...mc];let r=new Set(mc),n=Array.from(new Set(t.filter(o=>typeof o=="string").map(o=>o.trim()).filter(o=>o.length>0&&r.has(o))));return n.length>0?n:[...mc]}var hz=8e3,Jf=3200,rn="...[semantic corpus truncated]",bz="search_embedding_corpus_max_characters_invalid:using_provider_default";function kt(e){return e.map(t=>t==null?"":String(t).trim()).filter(t=>t.length>0).join(" ")}function wz(e){return(e.reminders??[]).map(t=>kt([t.at,t.text]))}function vz(e){return(e.events??[]).map(t=>kt([t.start_at,t.end_at,t.title,t.description,t.location,t.all_day===!0?"all day":void 0,t.timezone,t.recurrence?.freq,t.recurrence?.interval,t.recurrence?.count,t.recurrence?.until,t.recurrence?.by_weekday?.join(" "),t.recurrence?.by_month_day?.join(" "),t.recurrence?.exdates?.join(" ")]))}function Ez(e,t){e.push(t.title,t.body,t.status,t.owner,t.evidence,t.blocked_reason,t.superseded_by);for(let r of t.linked_items??[])e.push(`${r.kind} ${r.id}`,r.note);for(let r of t.files??[])e.push(r.path,r.note);for(let r of t.tests??[])e.push(r.command,r.path,r.note);for(let r of t.docs??[])e.push(r.path,r.note)}function Tz(e,t){for(let r of t.plan_decisions??[])e.push(r.decision,r.rationale,r.evidence);for(let r of t.plan_discoveries??[])e.push(r.text);for(let r of t.plan_validation??[])e.push(r.text,r.command,r.expected)}function SJ(e){let t=[];t.push(e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context);for(let r of e.plan_steps??[])Ez(t,r);return Tz(t,e),t.filter(r=>typeof r=="string"&&r.length>0).join(" ")}function kz(e){let t=(e.plan_steps??[]).map(s=>kt([s.order,s.id,s.title,s.body,s.status,s.owner,s.evidence,s.blocked_reason,s.superseded_by,(s.linked_items??[]).map(a=>kt([a.kind,a.id,a.note])).join(" "),(s.files??[]).map(a=>kt([a.path,a.note])).join(" "),(s.tests??[]).map(a=>kt([a.command,a.path,a.note])).join(" "),(s.docs??[]).map(a=>kt([a.path,a.note])).join(" ")])),r=(e.plan_decisions??[]).map(s=>kt([s.decision,s.rationale,s.evidence,s.step_id])),n=(e.plan_discoveries??[]).map(s=>kt([s.text,s.step_id])),o=(e.plan_validation??[]).map(s=>kt([s.text,s.command,s.expected]));if([e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context,...t,...r,...n,...o].some(s=>s!==void 0))return{mode:e.plan_mode,scope:e.plan_scope,harness:e.plan_harness,resume_context:e.plan_resume_context,steps:t,decisions:r,discoveries:n,validation:o}}function Tt(e){return typeof e=="string"&&e.trim().length>0}var Az={title:e=>e.metadata.title,description:e=>e.metadata.description,tags:e=>e.metadata.tags,status:e=>e.metadata.status,type:e=>e.metadata.type,priority:e=>typeof e.metadata.priority=="number"?e.metadata.priority:void 0,assignee:e=>Tt(e.metadata.assignee)?e.metadata.assignee:void 0,parent:e=>Tt(e.metadata.parent)?e.metadata.parent:void 0,goal:e=>Tt(e.metadata.goal)?e.metadata.goal:void 0,value:e=>Tt(e.metadata.value)?e.metadata.value:void 0,why_now:e=>Tt(e.metadata.why_now)?e.metadata.why_now:void 0,risk:e=>Tt(e.metadata.risk)?e.metadata.risk:void 0,confidence:e=>e.metadata.confidence!==void 0&&e.metadata.confidence!==null?e.metadata.confidence:void 0,estimated_minutes:e=>typeof e.metadata.estimated_minutes=="number"?e.metadata.estimated_minutes:void 0,acceptance_criteria:e=>Tt(e.metadata.acceptance_criteria)?e.metadata.acceptance_criteria:void 0,resolution:e=>Tt(e.metadata.resolution)?e.metadata.resolution:void 0,expected_result:e=>Tt(e.metadata.expected_result)?e.metadata.expected_result:void 0,actual_result:e=>Tt(e.metadata.actual_result)?e.metadata.actual_result:void 0,body:e=>e.body,comments:e=>(e.metadata.comments??[]).map(t=>t.text),notes:e=>(e.metadata.notes??[]).map(t=>t.text),learnings:e=>(e.metadata.learnings??[]).map(t=>t.text),reminders:e=>wz(e.metadata),events:e=>vz(e.metadata),dependencies:e=>(e.metadata.dependencies??[]).map(t=>({id:t.id,kind:t.kind})),plan:e=>kz(e.metadata)};function iE(e,t={}){let r=t.fields??mc,n={};for(let o of r){let i=Az[o];if(!i)continue;let s=i(e);s!==void 0&&(n[o]=s)}return n}function Sz(e){return e?.trim().toLowerCase()==="ollama"?Jf:hz}function so(e,t){let r=Sz(e),n=$m(t);return n!==null?{maxCharacters:n,warning:null}:{maxCharacters:r,warning:t==null?null:bz}}function Zf(e,t={}){let r=JSON.stringify(iE(e,{fields:t.fields})),n=so(t.providerName,t.maxCharacters).maxCharacters;if(r.length<=n)return r;if(n<=rn.length)return rn.slice(0,n);let o=Math.max(0,n-rn.length);return`${r.slice(0,o)}${rn}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f0edf7da-87cc-5e66-9f9f-c9a25e21808e")}catch{}})();function Oz(e,t){let r=e.search.embedding_batch_size,n=e.search.embedding_timeout_ms,o=e.search.scanner_max_batch_retries,i=Number.isFinite(r)&&r>0?Math.floor(r):1,s=Number.isFinite(n)&&n>0?Math.floor(n):3e4,a=Number.isFinite(o)&&o>=0?Math.floor(o):0;return{batchSize:i,timeoutMs:s,maxRetries:a,maxBatchInputCharacters:Number.POSITIVE_INFINITY,maxInputCharacters:t}}function Cz(e,t,r){let n=[],o=[],i=0;for(let s of e){let a=o.length>=t,c=o.length>0&&Number.isFinite(r)&&i+s.length>r;(a||c)&&(n.push(o),o=[],i=0),o.push(s),i+=s.length}return n.push(o),n}function Iz(e,t){return e.name!=="ollama"?t:{...t,maxBatchInputCharacters:Jf}}function Rz(e,t){if(!Number.isFinite(t)||t<=0||e.length<=t)return e;let r=Math.max(0,t-rn.length);return`${e.slice(0,r)}${rn}`.slice(0,t)}function sE(e){let t=G(e).toLowerCase();return t.includes("timed out")||t.includes("timeout")}function xz(e,t,r,n,o,i){let s=`Embedding batch ${t} failed after ${o} attempt(s): ${G(i)}`,a=`provider=${e.name} model=${e.model} batch_size=${r} timeout_ms=${n}`;return sE(i)?`${s} (${a}; guidance=check provider availability or lower search.embedding_batch_size, raise search.embedding_timeout_ms, or run keyword search while semantic indexing catches up)`:`${s} (${a})`}async function Qf(e,t,r,n,o,i){let s=null;for(let a=0;a<=o;a+=1)try{let c=await oE(e,t,{timeout_ms:n});return a>0&&i.push(`search_embedding_batch_retry_succeeded:batch=${r}:attempt=${a+1}:size=${t.length}`),c}catch(c){if(s=c,sE(c)&&t.length>1){let l=Math.ceil(t.length/2),d=t.slice(0,l),u=t.slice(l);return i.push(`search_embedding_batch_split_after_timeout:batch=${r}:size=${t.length}:parts=${d.length}|${u.length}`),[...await Qf(e,d,`${r}.1`,n,o,i),...await Qf(e,u,`${r}.2`,n,o,i)]}if(a<o){let l=Math.min(1e3*2**a,8e3);await new Promise(d=>setTimeout(d,l))}}throw new Error(xz(e,r,t.length,n,o+1,s))}async function ep(e,t,r,n={}){if(r.length===0)return{vectors:[],warnings:[]};let o=[],i=so(e.name,t.search.embedding_corpus_max_characters);i.warning&&o.push(i.warning);let s=Iz(e,Oz(t,i.maxCharacters)),a=0,c=r.map(f=>{let p=Rz(f,s.maxInputCharacters);return p.length<f.length&&(a+=1),p});a>0&&o.push(`search_embedding_input_truncated:count=${a}:max_characters=${s.maxInputCharacters}`);let l=Cz(c,s.batchSize,s.maxBatchInputCharacters),d=[],u=0;for(let f=0;f<l.length;f+=1){let p=l[f];n.onProgress?.({batch_index:f+1,batch_total:l.length,batch_size:p.length,completed_inputs:u,total_inputs:c.length,phase:"start"}),d.push(...await Qf(e,p,String(f+1),s.timeoutMs,s.maxRetries,o)),u+=p.length,n.onProgress?.({batch_index:f+1,batch_total:l.length,batch_size:p.length,completed_inputs:u,total_inputs:c.length,phase:"complete"})}return{vectors:d,warnings:o}}import{mkdir as Nz,readFile as Dz,stat as np,unlink as Pz}from"node:fs/promises";import{basename as aE,dirname as tp,isAbsolute as Mz,join as Lz,resolve as op}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]="887ac66e-679f-5a07-a6a2-8a19a4007198")}catch{}})();var ip="pm_items",Fz=/[^a-zA-Z0-9_-]/g,$z=128,jz=".pm-cli-local-vectors",rp=1,nn=new Map;function Mi(e){return(U(e.collection_name)??ip).replaceAll(Fz,"_").slice(0,$z)}function _c(e){if(!gn(e)||e.length===0)throw new Error("Vector values must be a non-empty numeric array");return[...e]}function lE(e){if(!Number.isFinite(e)||e<=0)throw new Error("Vector query limit must be a positive number");return Math.floor(e)}function Uz(e){let t=e.result;if(!Array.isArray(t))throw new TypeError("Qdrant query response must include a result array");let r=t.map((n,o)=>{let i=n.id,s=typeof i=="number"?String(i):i,a=U(s);if(!a)throw new Error(`Qdrant query response entry at index ${o} is missing a non-empty id`);let c=n.score;if(typeof c!="number"||!Number.isFinite(c))throw new TypeError(`Qdrant query response entry at index ${o} is missing a finite numeric score`);let l=n.payload;if(l!==void 0&&(typeof l!="object"||l===null||Array.isArray(l)))throw new Error(`Qdrant query response entry at index ${o} must provide payload as an object when set`);return{id:a,score:c,...l?{payload:l}:{}}});return r.sort((n,o)=>n.score!==o.score?o.score-n.score:n.id.localeCompare(o.id)),r}function sp(e){let t=U(e.result?.status);if(t)return{status:t};let r=U(e.status);if(r)return{status:r};throw new Error("Qdrant upsert response must include status metadata")}async function Pi(e,t,r,n,o){return await fc({endpoint:e,method:t.method,headers:t.headers,body:t.body,timeoutMs:r,fetcher:n,requestLabel:`Vector ${o} request`,responseLabel:`Vector ${o} response`})}function zz(e){let t=U(e.vector_store?.qdrant?.url);if(!t)return null;let r=U(e.vector_store?.collection_name),n=U(e.vector_store?.qdrant?.api_key);return{name:"qdrant",url:t,...r&&r!==ip?{collection_name:r}:{},...n?{api_key:n}:{}}}function qz(e){let t=op(e),r=tp(t);return aE(t)==="pm"&&aE(r)===".agents"?tp(r):t}function Hz(e,t){return!t||Mz(e)?e:op(qz(t),e)}function Gz(e,t){let r=U(e.vector_store?.lancedb?.path);if(!r)return null;let n=U(e.vector_store?.collection_name);return{name:"lancedb",path:Hz(r,t),...n&&n!==ip?{collection_name:n}:{}}}function Bz(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector upsert records must include at least one entry");return e.map((t,r)=>{let n=U(t.id);if(!n)throw new Error(`Vector upsert record at index ${r} is missing a non-empty id`);let o=_c(t.vector),i=t.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`Vector upsert record at index ${r} must provide payload as an object when set`);return{id:n,vector:o,...i?{payload:i}:{}}})}function Vz(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector delete ids must include at least one entry");let t=e.map((n,o)=>{let i=U(n);if(!i)throw new Error(`Vector delete id at index ${o} is missing a non-empty value`);return i}).sort((n,o)=>n.localeCompare(o)),r=[];for(let n of t)r.at(-1)!==n&&r.push(n);return r}function Wz(e){return e.replace(/\/points\?wait=true$/,"/points/delete?wait=true")}function Yz(e){return e.replace(/\/points\?wait=true$/,"")}function gc(e){return{"content-type":"application/json",...e.api_key?{"api-key":e.api_key}:{}}}function yc(e,t){return ao(e,t)}function ao(e,t){return Lz(op(e),jz,`${t}.json`)}function Kz(e,t,r){let n=U(e.id);if(!n)throw new Error(`LanceDB local snapshot '${r}' record at index ${t} is missing a non-empty id`);let o=_c(e.vector),i=e.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`LanceDB local snapshot '${r}' record '${n}' must provide payload as an object when set`);return{id:n,vector:o,...i?{payload:i}:{}}}function Xz(e,t,r){let n;try{n=JSON.parse(r)}catch(c){throw new Error(`LanceDB local snapshot at '${e}' is not valid JSON: ${G(c)}`)}if(typeof n!="object"||n===null||Array.isArray(n))throw new Error(`LanceDB local snapshot at '${e}' must be a JSON object`);if(n.version!==rp)throw new Error(`LanceDB local snapshot at '${e}' must include version=${rp}`);let i=U(n.table);if(!i)throw new Error(`LanceDB local snapshot at '${e}' must include a non-empty table value`);if(i!==t)throw new Error(`LanceDB local snapshot at '${e}' table mismatch: expected '${t}', received '${i}'`);let s=n.records;if(!Array.isArray(s))throw new TypeError(`LanceDB local snapshot at '${e}' must include a records array`);let a=new Map;for(let c=0;c<s.length;c+=1){let l=Kz(s[c],c,e);a.set(l.id,l)}return a}async function Jz(e){try{let t=await np(e);return{mtimeMs:t.mtimeMs,size:t.size}}catch(t){if(!X(t))throw t;return null}}function Zz(e,t){if(!t)return null;if(t.mtimeMs===null&&t.size===null&&t.records.size===0)return t.records;let r=new Map;return nn.set(e,{records:r,mtimeMs:null,size:null}),r}function Qz(e,t){return e!==void 0&&t!==null&&e.mtimeMs===t.mtimeMs&&e.size===t.size}async function ap(e,t){let r=yc(e,t),n=ao(e,t),o=await Jz(n),i=nn.get(r);if(!o){let a=Zz(r,i);if(a)return a}if(Qz(i,o))return i.records;let s=new Map;try{let a=await Dz(n,"utf8");s=Xz(n,t,a)}catch(a){if(!X(a))throw a}return nn.set(r,{records:s,mtimeMs:o?.mtimeMs??null,size:o?.size??null}),s}function e2(e){let t=[...e.values()];return t.sort((r,n)=>r.id.localeCompare(n.id)),t.map(r=>({id:r.id,vector:[...r.vector],...r.payload?{payload:r.payload}:{}}))}async function dE(e){try{await Pz(e)}catch(t){if(!X(t))throw new Error(`LanceDB local snapshot delete failed at '${e}': ${G(t)}`)}}async function uE(e,t,r){let n=ao(e,t);if(r.size===0){await dE(n);return}let o=tp(n);try{await Nz(o,{recursive:!0})}catch(s){throw new Error(`LanceDB local snapshot directory create failed at '${o}': ${G(s)}`)}let i=`${JSON.stringify({version:rp,table:t,records:e2(r)})}
216
- `;try{await F(n,i)}catch(s){throw new Error(`LanceDB local snapshot write failed at '${n}': ${G(s)}`)}}async function t2(e,t){let r=yc(e,t),n=ao(e,t);await dE(n),nn.delete(r)}function cE(e){let t=0;for(let r=0;r<e.length;r+=1)t+=e[r]*e[r];return Math.sqrt(t)}function r2(e,t){let r=0;for(let i=0;i<e.length;i+=1)r+=e[i]*t[i];let n=cE(e),o=cE(t);return n===0||o===0?0:r/(n*o)}function hc(e,t){let r=zz(e),n=Gz(e,t),o=[r,n].filter(c=>c!==null),i=U(e.vector_store?.adapter),s=i?i.toLowerCase():null;return{active:(s?o.find(c=>c.name===s):void 0)??o[0]??null,available:o}}function bc(e){let t=Mi(e);if(e.name==="qdrant"){let o=wo(e.url),i=encodeURIComponent(t);return{store:"qdrant",query_target:`${o}/collections/${i}/points/search`,upsert_target:`${o}/collections/${i}/points?wait=true`}}let r=encodeURIComponent(e.path),n=encodeURIComponent(t);return{store:"lancedb",query_target:`lancedb://${r}#${n}`,upsert_target:`lancedb://${r}#${n}`}}function n2(e,t,r){let n=bc(e),o=_c(t),i=lE(r);return e.name==="qdrant"?{target:n,method:"POST",headers:gc(e),body:{vector:o,limit:i,with_payload:!0}}:{target:n,method:"LOCAL",headers:{},body:{table:Mi(e),vector:o,limit:i}}}function o2(e,t){let r=bc(e),n=Bz(t);return e.name==="qdrant"?{target:r,method:"POST",headers:gc(e),body:{points:n}}:{target:r,method:"LOCAL",headers:{},body:{table:Mi(e),records:n}}}function i2(e,t){let r=bc(e),n=Vz(t);return e.name==="qdrant"?{target:r,method:"POST",headers:gc(e),body:{points:n}}:{target:r,method:"LOCAL",headers:{},body:{table:Mi(e),ids:n}}}async function FJ(e,t,r,n={}){let o=n2(e,t,r);if(o.method==="LOCAL"){let c=e,l=o.body,d=await ap(c.path,l.table);if(d.size===0)return[];let u=_c(l.vector),f=lE(l.limit),p=[],m=0;for(let h of d.values()){if(h.vector.length!==u.length){m++;continue}p.push({id:h.id,score:r2(u,h.vector),...h.payload?{payload:h.payload}:{}})}return m>0&&n.warnings&&n.warnings.push(`vector_dimension_mismatch:${m} records skipped (expected ${u.length} dimensions)`),p.sort((h,b)=>h.score!==b.score?b.score-h.score:h.id.localeCompare(b.id)),p.slice(0,f)}let i=en(n.timeout_ms,"Vector request"),s=tn(n.fetcher,"Vector request"),a=await Pi(o.target.query_target,{method:"POST",headers:o.headers,body:o.body},i,s,"query");return Uz(a)}async function cp(e,t,r={}){let n=o2(e,t);if(n.method==="LOCAL"){let a=e,c=n.body,l=yc(a.path,c.table),d=await ap(a.path,c.table);for(let p of c.records)d.set(p.id,p);await uE(a.path,c.table,d);let u=ao(a.path,c.table),f=await np(u);return nn.set(l,{records:d,mtimeMs:f.mtimeMs,size:f.size}),{status:"ok"}}let o=en(r.timeout_ms,"Vector request"),i=tn(r.fetcher,"Vector request"),s=await Pi(n.target.upsert_target,{method:"POST",headers:n.headers,body:n.body},o,i,"upsert");return sp(s)}async function wc(e,t,r={}){let n=i2(e,t);if(n.method==="LOCAL"){let a=e,c=n.body,l=yc(a.path,c.table),d=await ap(a.path,c.table);if(d.size===0)return{status:"ok"};for(let u of c.ids)d.delete(u);if(await uE(a.path,c.table,d),d.size===0)nn.delete(l);else{let u=ao(a.path,c.table),f=await np(u);nn.set(l,{records:d,mtimeMs:f.mtimeMs,size:f.size})}return{status:"ok"}}let o=en(r.timeout_ms,"Vector request"),i=tn(r.fetcher,"Vector request"),s=await Pi(Wz(n.target.upsert_target),{method:"POST",headers:n.headers,body:n.body},o,i,"delete");return sp(s)}async function fE(e,t=[],r={},n){if(e.name==="lancedb")return await t2(e.path,Mi(e)),{status:"ok"};if(n!==void 0){if(!Number.isInteger(n)||n<=0)throw new Error("Vector reset dimension must be a positive integer when provided");let i=bc(e),s=Yz(i.upsert_target),a=en(r.timeout_ms,"Vector request"),c=tn(r.fetcher,"Vector request"),l=gc(e);try{await Pi(s,{method:"DELETE",headers:l,body:{}},a,c,"delete")}catch(u){if(!G(u).includes("failed with status 404"))throw u}let d=await Pi(s,{method:"PUT",headers:l,body:{vectors:{size:n,distance:"Cosine"}}},a,c,"upsert");return sp(d)}let o=t.map(i=>i.trim()).filter(i=>i.length>0);return o.length===0?{status:"ok"}:await wc(e,o,r)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f4a214b6-02f4-5fc4-bfcd-90c0ca940842")}catch{}})();function vc(e,t){let r=U(e),n=U(t);return!r||!n?null:{provider:r,model:n}}function pE(e){if(e==null)return null;if(typeof e!="object"||Array.isArray(e))throw new Error("Vectorization embedding metadata must be an object when set");let t=vc(e.provider,e.model),r=e.vector_dimension;if(!t||typeof r!="number"||!Number.isInteger(r)||r<=0)throw new Error("Vectorization embedding metadata must include provider, model, and positive vector_dimension");return{...t,vector_dimension:r}}function lp(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Vectorization embedding metadata requires a positive vector dimension");return{provider:e.provider,model:e.model,vector_dimension:t}}function dp(e,t){return!e||e.provider!==t.provider||e.model!==t.model}function up(e,t){return!!(e&&e.vector_dimension!==t)}function fp(e,t){if(e.length===0)throw new Error(`${t} returned no vectors`);let n=e[0].length;if(!Number.isInteger(n)||n<=0)throw new Error(`${t} returned an empty vector`);for(let o=1;o<e.length;o+=1)if(e[o]?.length!==n)throw new Error(`${t} returned mixed vector dimensions`);return n}import pp 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]="b382ab50-682e-5e53-a32d-277c5ccf8bef")}catch{}})();var s2=["index/manifest.json","search/embeddings.jsonl"],_E="search/vectorization-status.json";function a2(e,t){return`search_cache_invalidation_failed:${e}:${String(t)}`}function co(e){return[...new Set([...e].map(t=>t.trim()).filter(t=>t.length>0))].sort((t,r)=>t.localeCompare(r))}function gE(e){return typeof e=="string"&&e.trim().length>0&&Number.isFinite(Date.parse(e))}function yE(e){let t=new Map;for(let[r,n]of Object.entries(e)){let o=r.trim();o.length===0||!gE(n)||t.set(o,n)}return Object.fromEntries([...t.entries()].sort((r,n)=>r[0].localeCompare(n[0])))}async function hE(e){let t=pp.join(e,_E),r=await V(t);if(r===null||r.trim().length===0)return{entries:{},embedding:null,warnings:[]};let n;try{n=JSON.parse(r)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}if(typeof n!="object"||n===null||n.version!==1||!Array.isArray(n.items))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let o=new Map;for(let s of n.items){if(typeof s!="object"||s===null)return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let a=s.id,c=s.updated_at;if(typeof a!="string"||a.trim().length===0||!gE(c))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};o.set(a.trim(),c)}let i=null;try{i=pE(n.embedding)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}return{entries:Object.fromEntries([...o.entries()].sort((s,a)=>s[0].localeCompare(a[0]))),embedding:i,warnings:[]}}async function bE(e,t,r){let n=yE(t),o=pp.join(e,_E),i=`${JSON.stringify({version:1,generated_at:Z(),...r?{embedding:r}:{},items:Object.entries(n).map(([s,a])=>({id:s,updated_at:a}))},null,2)}
217
- `;await F(o,i)}function c2(e){return{id:e.id,type:e.type,status:e.status,priority:e.priority,updated_at:e.updated_at}}function l2(e){let t=vc(e.name,e.model);if(!t)throw new Error("Embedding provider must include a provider name and model");return t}function Li(e,t){return{refreshed:[],skipped:e,warnings:[t]}}async function d2(e,t,r){if(!r.settings&&!await re(Te(e)))return Li(t,"search_semantic_refresh_skipped:settings_not_initialized");let n;try{if(r.settings)n=r.settings;else{let a=await yr(e),c=a.warnings.find(l=>l.startsWith("settings_read_"));if(c)return Li(t,`search_semantic_refresh_skipped:settings_read_failed:${c}`);n=a.settings}}catch(a){return Li(t,`search_semantic_refresh_skipped:settings_read_failed:${G(a)}`)}let o=r.apply_runtime_defaults?to(n).settings:n,i=pc(o).active;if(!i)return Li(t,"search_semantic_refresh_skipped:provider_unconfigured");let s=hc(o,e).active;return s?{settings:o,provider:i,vectorStore:s}:Li(t,"search_semantic_refresh_skipped:vector_store_unconfigured")}async function u2(e,t,r,n,o,i){let s=[],a=new Set,c=new Set,l=[];for(let d of n){let u=await Ni(e,d,t,r,o);if(!u){c.add(d);continue}try{let f=await Di(u,{schema:i});l.push({id:f.document.metadata.id,document:f.document})}catch(f){a.add(u.id),s.push(`search_semantic_refresh_item_read_failed:${u.id}:${G(f)}`)}}return l.sort((d,u)=>d.id.localeCompare(u.id)),{documents:l,missingIds:co(c),skippedIds:co(a),warnings:s}}async function f2(e,t,r){let n=so(t.name,e.search.embedding_corpus_max_characters).maxCharacters,o=Xf(e),i=r.map(a=>Zf(a.document,{providerName:t.name,maxCharacters:n,fields:o})),s=await ep(t,e,i);return{vectors:s.vectors,vector_dimension:fp(s.vectors,"Semantic refresh embedding"),warnings:s.warnings}}async function p2(e,t,r){return await cp(e,t.map((n,o)=>({id:n.id,vector:r[o],payload:c2(n.document.metadata)}))),{refreshed:t.map(n=>n.id),skipped:[],warnings:[]}}async function m2(e,t){if(t.length===0)return{refreshed:[],skipped:[],warnings:[]};try{return await wc(e,t),{refreshed:[],skipped:[],warnings:[]}}catch(r){return{refreshed:[],skipped:t,warnings:[`search_semantic_refresh_delete_failed:${G(r)}`]}}}async function _2(e){let t=[],r=[];for(let n of s2){let o=pp.join(e,n);try{if(!await re(o))continue;await bo(o),t.push(n)}catch(i){r.push(a2(n,i))}}return{invalidated:t,warnings:r}}async function mE(e,t,r={}){let n=co(t);if(n.length===0)return{refreshed:[],skipped:[],warnings:[]};let o=await d2(e,n,r);if(!("settings"in o))return o;let i=ko(o.settings,Zt()),s=await u2(e,o.settings.id_prefix,o.settings.item_format,n,i.type_to_folder,o.settings.schema),a=s.documents.length>0||s.missingIds.length>0?await hE(e):{entries:{},embedding:null,warnings:[]},c=l2(o.provider),l=a.entries,d={refreshed:[],skipped:[],warnings:[]},u=a.embedding;if(s.documents.length>0)if(a.embedding&&dp(a.embedding,c))d={refreshed:[],skipped:s.documents.map(b=>b.id),warnings:["search_semantic_refresh_requires_reindex:embedding_identity_changed"]};else try{let b=await f2(o.settings,o.provider,s.documents);if(up(a.embedding,b.vector_dimension))d={refreshed:[],skipped:s.documents.map(w=>w.id),warnings:[...b.warnings,"search_semantic_refresh_requires_reindex:vector_dimension_changed"]};else{u=lp(c,b.vector_dimension);let w=await p2(o.vectorStore,s.documents,b.vectors);d={refreshed:w.refreshed,skipped:w.skipped,warnings:[...b.warnings,...w.warnings]}}}catch(b){d={refreshed:[],skipped:s.documents.map(w=>w.id),warnings:[`search_semantic_refresh_failed:${G(b)}`]}}let f=await m2(o.vectorStore,s.missingIds),p=new Set(d.refreshed),m=Object.fromEntries(s.documents.filter(b=>p.has(b.id)).map(b=>[b.id,b.document.metadata.updated_at])),h=[];if(Object.keys(m).length>0||s.missingIds.length>0){let b={...l,...yE(m)};for(let w of s.missingIds)delete b[w];try{await bE(e,b,u)}catch(w){h.push(`search_vectorization_status_ledger_write_failed:${G(w)}`)}h.push(...a.warnings)}return{refreshed:co([...d.refreshed,...f.refreshed]),skipped:co([...s.skippedIds,...d.skipped,...f.skipped]),warnings:[...s.warnings,...d.warnings,...f.warnings,...h]}}function g2(e,t){let r=t?to(e).settings:e;return!!(pc(r).active&&hc(r).active)}async function mp(e,t,r={}){let n=await _2(e),o=co(t);if(o.length===0)return{invalidated:n.invalidated,refreshed:[],skipped:[],warnings:n.warnings};if(!await re(Te(e))){let c=await mE(e,o);return{invalidated:n.invalidated,refreshed:c.refreshed,skipped:c.skipped,warnings:[...n.warnings,...c.warnings]}}let i;try{let c=await yr(e),l=c.warnings.find(d=>d.startsWith("settings_read_"));if(l)return{invalidated:n.invalidated,refreshed:[],skipped:o,warnings:[...n.warnings,`search_semantic_refresh_skipped:settings_read_failed:${l}`]};i=c.settings}catch(c){return{invalidated:n.invalidated,refreshed:[],skipped:o,warnings:[...n.warnings,`search_semantic_refresh_skipped:settings_read_failed:${G(c)}`]}}if(i.search.mutation_refresh_policy==="cache_only")return{invalidated:n.invalidated,refreshed:[],skipped:o,warnings:n.warnings};let s=i.search.mutation_refresh_policy==="semantic_auto";if(r.background&&g2(i,s))return await Iv(e,o),{invalidated:n.invalidated,refreshed:[],skipped:[],warnings:[...n.warnings,"search_semantic_refresh_scheduled_background"],scheduled:!0};let a=await mE(e,o,{settings:i,apply_runtime_defaults:s});return{invalidated:n.invalidated,refreshed:a.refreshed,skipped:a.skipped,warnings:[...n.warnings,...a.warnings]}}import{createRequire as b2}from"node:module";(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]="c4fba032-7cda-53a2-b518-fa13a60a76d5")}catch{}})();var y2=new Set(["1","true","yes","on"]),Fi=["user","automation","test","dogfood"],h2=new Set(Fi),Tc=new Set(["stats","ops stats","list","get","next","context","activity","aggregate"]);function wE(e,t,r=process.env){let n=r.PM_TELEMETRY_READ_SAMPLE_RATE?.trim();if(!n||!t||!Tc.has(e))return 1;let o=Number(n);return Number.isFinite(o)&&o>0&&o<=1?o:1}function Ec(e,t){return y2.has((t[e]??"").trim().toLowerCase())}function ft(e=process.env){let t=Ec("DO_NOT_TRACK",e),r=(e.PM_TELEMETRY_SOURCE_CONTEXT??"").trim().toLowerCase(),o=(typeof e.VITEST=="string"||typeof e.VITEST_WORKER_ID=="string"||(e.NODE_ENV??"").trim().toLowerCase()==="test")&&!h2.has(r)&&!Ec("PM_TELEMETRY_SEND_TEST_EVENTS",e);return{telemetry_disabled:t||o||Ec("PM_TELEMETRY_DISABLED",e)||Ec("PM_NO_TELEMETRY",e),do_not_track:t,test_suppressed: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]="12bf6794-9410-5683-bb83-a0da8d2614a7")}catch{}})();var w2=new Set(["1","true","yes","on"]);function v2(){return!!(w2.has((process.env.PM_SENTRY_DISABLED??"").trim().toLowerCase())||ft().telemetry_disabled||typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string")}var AE=/(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|credentials|bearer|dsn)/i,E2=new RegExp(`\\b(${AE.source})\\s*[:=]\\s*([^\\s,;]+)`,"giu"),T2=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,k2=/file:\/\/\/?[^\s"'`),;]+/giu,A2=/\b[A-Za-z]:\\[^\s"'`),;]+/g,S2=/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g,O2=/(?:^|[_-])(path|filename|file|module|cwd|dir|directory|location|source|script)s?$/i;var C2=["[starter-extension] activating","[starter-extension] all 8 capabilities registered.","[starter-extension] commands:","[starter] preflight check for workspace","[starter] output_format service override active","[pm-ext-ts-starter] activating","[pm-ext-ts-starter] all capabilities registered.","run `pm init` first to initialise a pm workspace"];function vE(e){let t=e.trim();return t.length===0?!1:t.startsWith("/")||t.startsWith("file://")||/^[A-Za-z]:\\/.test(t)||t.startsWith("\\\\")?!0:t.includes("/home/")}function At(e,t){if(t&&O2.test(t)&&vE(e))return"[scrubbed_path]";let r=e.replaceAll(E2,(n,o)=>`${o}=[scrubbed]`).replaceAll(/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}/giu,"[scrubbed_email]").replaceAll(/bearer\s+[a-z0-9._=-]+/giu,"bearer [scrubbed]").replaceAll(/sntr[ysu]_[A-Za-z0-9_-]+/g,"[scrubbed_sentry_token]").replaceAll(S2,"[scrubbed_ip]").replaceAll(k2,"[scrubbed_path]").replaceAll(A2,"[scrubbed_path]").replaceAll(T2,(n,o)=>`${o}[scrubbed_path]`);return vE(r)?"[scrubbed_path]":r}function wr(e){let t={};for(let[r,n]of Object.entries(e))AE.test(r)?t[r]="[scrubbed]":typeof n=="string"?t[r]=At(n,r):Array.isArray(n)?t[r]=n.map(o=>typeof o=="string"?At(o,r):o&&typeof o=="object"?wr(o):o):n&&typeof n=="object"?t[r]=wr(n):t[r]=n;return t}function I2(e){for(let r of["filename","absPath","abs_path","module"]){let n=e[r];typeof n=="string"&&(e[r]=At(n,r))}let t=e.context_line;typeof t=="string"&&(e.context_line=At(t,"context_line"));for(let r of["pre_context","post_context"]){let n=e[r];Array.isArray(n)&&(e[r]=n.map(o=>typeof o=="string"?At(o,r):o))}e.vars&&typeof e.vars=="object"&&(e.vars=wr(e.vars)),e.data&&typeof e.data=="object"&&(e.data=wr(e.data))}var R2=b2(import.meta.url),x2=()=>R2("@sentry/node"),_p,EE=!1,N2=x2,D2="https://bf7ad2ec76c0051c2ee94e48e8bd6868@o4510603477712896.ingest.de.sentry.io/4511316775338064";function gp(e){return/^\s*PmCliError:/.test(e)}function yp(e){let t=e.trim().toLowerCase();return t.length===0?!1:C2.some(r=>t.includes(r))}function P2(e){return e.logger!=="console"?!1:typeof e.message=="string"&&yp(e.message)?!0:Array.isArray(e.exception?.values)&&e.exception.values.some(t=>typeof t.value=="string"&&yp(t.value))}function M2(e){if(e.logger!=="console")return!1;let t=r=>typeof r=="string"&&/^\(node:\d+\) MaxListenersExceededWarning: Possible EventEmitter memory leak detected\./.test(r);return t(e.message)?!0:Array.isArray(e.exception?.values)&&e.exception.values.some(r=>t(r.value))}function L2(e){return!!(e.exception?.values?.some(t=>t.type==="PmCliError")||e.exception?.values?.some(t=>typeof t.value=="string"&&gp(t.value))||e.logger==="console"&&typeof e.message=="string"&&gp(e.message))}function SE(e){return e.category==="console"&&typeof e.message=="string"&&gp(e.message)}function OE(e){return e.category==="console"&&typeof e.message=="string"&&yp(e.message)}function F2(){return wl(import.meta.url,["../../.."])??"0.0.0"}function $2(){let e=process.env.SENTRY_ENVIRONMENT?.trim();return e&&e.length>0?e:process.env.VITEST||process.env.VITEST_WORKER_ID||process.env.NODE_ENV==="test"?"test":process.env.CI?"ci":"production"}var TE=.2;function j2(){let e=process.env.SENTRY_TRACES_SAMPLE_RATE?.trim();if(!e)return TE;let t=Number(e);return!Number.isFinite(t)||t<0||t>1?TE:t}function U2(e){if(e.exception?.values){for(let t of e.exception.values)if(t.value&&(t.value=At(t.value,"value")),t.stacktrace?.frames)for(let r of t.stacktrace.frames)I2(r)}}function CE(e){if(e.breadcrumbs)for(let t of e.breadcrumbs)t.message&&(t.message=At(t.message)),t.data&&typeof t.data=="object"&&(t.data=wr(t.data))}function IE(e){if(e.contexts)for(let[t,r]of Object.entries(e.contexts))r&&typeof r=="object"&&(e.contexts[t]=wr(r))}function kE(e,t){let r=e,n=r[t];n&&typeof n=="object"&&(r[t]=wr(n))}var z2=e=>{if(L2(e)||P2(e))return null;M2(e)&&(e.level="warning",e.tags={...e.tags,"pm.diagnostic_class":"node_runtime_warning"}),e.message&&(e.message=At(e.message,"message")),e.transaction&&(e.transaction=At(e.transaction,"transaction")),U2(e),CE(e),kE(e,"extra"),IE(e);for(let t of["request","user","tags"])kE(e,t);return e},q2=e=>(e.breadcrumbs&&(e.breadcrumbs=e.breadcrumbs.filter(t=>!SE(t)&&!OE(t)),CE(e)),IE(e),e),H2=e=>SE(e)||OE(e)?null:(e.message&&(e.message=At(e.message,"message")),e.data&&typeof e.data=="object"&&(e.data=wr(e.data)),e);async function G2(){if(EE)return _p;if(EE=!0,v2())return;let e=N2();_p=e;let t=process.env.SENTRY_DSN?.trim()||D2,r=F2();return e.init({dsn:t,release:`pm-cli@${r}`,environment:$2(),tracesSampleRate:j2(),enableLogs:!0,attachStacktrace:!0,normalizeDepth:6,shutdownTimeout:3e3,sendDefaultPii:!1,serverName:void 0,integrations:[e.extraErrorDataIntegration({depth:4}),e.captureConsoleIntegration({levels:["warn","error"]})],initialScope:{tags:{"cli.name":"pm-cli","cli.version":r,"runtime.node":process.version,"runtime.platform":process.platform,"runtime.arch":process.arch}},beforeSend:z2,beforeSendTransaction:q2,beforeBreadcrumb:H2}),e}function on(){return _p}(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]="4e329152-7e9e-5cf2-a4cf-35260a599360")}catch{}})();var B2=new Set(["init","config","completion","completion-statuses","completion-tags","completion-types"]),V2=new Set(["list","list-all","list-open","list-in-progress","list-blocked","list-closed","list-canceled","list-draft","search","get","context","calendar","history","activity","aggregate","deps","contracts","stats"]),W2=new Set(["create","update","update-many","close-many","append","close","delete","restore","claim","release","comments","notes","learnings","files","docs","start-task","pause-task","close-task"]),Y2=new Set(["test","test-all","test-runs","test-verify","trace-test","test-ping"]),K2=new Set(["health","validate","normalize","reindex","gc","telemetry","extension-doctor"]);function X2(e){return e.trim().replaceAll(/\s+/g," ").toLowerCase()}function RE(e){let t=e?.trim().toLowerCase();return t&&t.length>0?t:void 0}var J2=[{code:"unknown_command",matches:e=>e.includes("unknown command")},{code:"unknown_option",matches:e=>e.includes("unknown option")},{code:"missing_required_option",matches:e=>e.includes("missing required options")||e.includes("missing required option")},{code:"missing_required_argument",matches:e=>e.includes("missing required argument")},{code:"no_update_fields",matches:e=>e.includes("no update flags provided")},{code:"ownership_conflict",matches:e=>e.includes("is assigned to")&&e.includes("use --force")},{code:"lock_conflict",matches:e=>e.includes("is locked")},{code:"terminal_state_conflict",matches:e=>e.includes("already terminal")&&e.includes("use --force")},{code:"tracker_not_initialized",matches:e=>e.includes("tracker is not initialized")},{code:"item_not_found",matches:e=>e.includes(" not found")},{code:"close_through_update",matches:e=>e.includes('use "pm close <id> <text>" to close an item')||e.includes("invalid --status value")&&e.includes('"closed"')},{code:"invalid_argument_value",matches:e=>e.startsWith("invalid ")||e.includes(" must be ")||e.includes(" requires ")},{code:"invalid_command_usage",matches:e=>e.includes("either as positional")&&e.includes("not both")}],Z2=new Map([[_.USAGE,"invalid_command_usage"],[_.NOT_FOUND,"item_not_found"],[_.CONFLICT,"lock_conflict"],[_.DEPENDENCY_FAILED,"dependency_failed"]]);function lo(e){let t=X2(e),r=t.length>0?t.split(" "):["<unknown>"],n=r[0],o=r[r.length-1],i="other";return B2.has(n)?i="setup":V2.has(n)?i="query":W2.has(n)?i="mutation":Y2.has(n)?i="testing":n==="extension"?i="extension":K2.has(n)&&(i="diagnostics"),{command_path:t.length>0?t:"<unknown>",command_root:n,command_leaf:o,command_depth:r.length,command_family:i}}function hp(e){if(e.ok)return;let t=RE(e.errorCode);if(t)return t;let r=(e.errorMessage??"").trim().toLowerCase();for(let o of J2)if(o.matches(r))return o.code;let n=Number.isFinite(e.exitCode)?Math.max(0,Math.trunc(e.exitCode)):void 0;return n!==void 0?Z2.get(n)??"command_failed":"command_failed"}function uo(e){if(e.ok)return"success";let t=RE(e.errorCode);return t==="unknown_command"?"nonexistent_command":t==="unknown_option"?"invalid_option":t==="missing_required_option"?"missing_required_option":t==="missing_required_argument"?"missing_required_argument":t==="health_findings"?"health_findings":t==="validation_findings"?"validation_findings":e.errorCategory==="usage"?"invalid_usage":e.errorCategory==="validation"?"validation_failed":e.errorCategory==="conflict"?"conflict":e.errorCategory==="runtime"?"runtime_failed":"unknown_failed"}(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]="199c4791-6ca7-50c4-b2cd-aa96c0ab2408")}catch{}})();var fo;function vr(e,t,r){if(r===void 0)return;let n=e;typeof n.setAttribute=="function"&&n.setAttribute(t,r)}function kc(e,t,r){typeof r=="string"&&r.trim().length>0&&e.setTag(t,r)}function Q2(e,t,r){e.setTag("pm.ok",t),e.setTag("pm.command_ok",t),typeof r?.exit_code=="number"&&(e.setTag("pm.exit_code",String(r.exit_code)),e.setTag("pm.command_exit_code",String(r.exit_code))),kc(e,"pm.error_code",r?.error_code),kc(e,"pm.error_category",r?.error_category),kc(e,"pm.command_resolution",r?.command_resolution),kc(e,"pm.resolution_stage",r?.resolution_stage)}function eq(e,t,r,n){vr(e,"pm.ok",t),vr(e,"pm.command_ok",t),vr(e,"pm.exit_code",r),vr(e,"pm.command_exit_code",r),vr(e,"pm.error_code",n?.error_code),vr(e,"pm.error_category",n?.error_category),vr(e,"pm.command_resolution",n?.command_resolution),vr(e,"pm.resolution_stage",n?.resolution_stage)}function tq(e,t,r,n){let o=on();if(!o)return;let i=lo(e);o.setTag("pm.command",e),o.setTag("pm.command_root",i.command_root),o.setTag("pm.command_family",i.command_family),typeof n?.source_context=="string"&&n.source_context.trim().length>0&&o.setTag("pm.source_context",n.source_context);let s=t.map(a=>a.startsWith("--")?a.split("=")[0]:a);o.setContext("pm.command",{name:e,root:i.command_root,leaf:i.command_leaf,family:i.command_family,args:s,option_keys:Object.keys(r).sort(),source_context:n?.source_context,source_context_source:n?.source_context_source}),o.addBreadcrumb({category:"pm.command",message:`pm ${e}`,level:"info",data:{args:s,command_root:i.command_root,command_family:i.command_family,source_context:n?.source_context}})}function rq(e){let t=on();t&&(fo=t.startInactiveSpan({op:"pm.command",name:`pm ${e}`,forceTransaction:!0}))}function nq(e,t,r){if(!fo)return;let n=e?"true":"false",o=typeof r?.exit_code=="number"?String(r.exit_code):void 0,i=on();i&&Q2(i,n,r),eq(fo,n,o,r),fo.setStatus(e?{code:1}:{code:2,message:t??"command_failed"}),fo.end(),fo=void 0}var oq="unclassified_runtime_error";function iq(e){let t=typeof e=="object"&&e!==null?e:void 0,r=typeof t?.exitCode=="number",n=r?Math.trunc(t?.exitCode):_.GENERIC_FAILURE;return{error_code:typeof t?.code=="string"&&t.code.length>0&&r?t?.code:oq,exit_code:n}}function sq(e){let t=iq(e);return{"pm.error_code":t.error_code,"pm.exit_code":String(t.exit_code)}}function aq(e){if(!lq(e))return;let t=on();if(!t)return;let r=sq(e);if(e instanceof Error){let n={};"exitCode"in e&&typeof e.exitCode=="number"&&(n.exit_code=e.exitCode),"context"in e&&typeof e.context=="object"&&(n.error_context=e.context),t.captureException(e,{extra:n,tags:r})}else t.captureException(new Error(String(e)),{tags:r})}function cq(e){let t=on();if(!t)return;let r=e.command_resolution??uo({ok:!1,errorCode:e.error_code,errorCategory:e.error_category}),n=e.resolution_stage??"unknown",o={"pm.command":e.command,"pm.error_code":e.error_code,"pm.error_category":e.error_category,"pm.exit_code":e.exit_code,"pm.error_message":e.error_message,"pm.command_resolution":r,"pm.resolution_stage":n,"pm.source_context":e.source_context??""},i=t.logger;if(i&&typeof i.warn=="function"){i.warn("pm_cli_usage_error",o);return}t.captureMessage(`pm_cli_usage_error:${e.error_code}`,{level:"warning",tags:{"pm.command":e.command,"pm.error_code":e.error_code,"pm.error_category":e.error_category,"pm.exit_code":String(e.exit_code),"pm.command_resolution":r,"pm.resolution_stage":n,"pm.source_context":e.source_context??"unknown"},extra:o})}function lq(e){if(e instanceof g||e instanceof Error&&e.name==="AbortError"&&/(?:ctrl\+[cd]|sigint|user[- ]initiated)/i.test(e.message))return!1;if(typeof e=="object"&&e!==null&&"exitCode"in e&&typeof e.exitCode=="number"){if(e instanceof Error&&e.name==="CommandError")return!1;let t=Math.trunc(e.exitCode);return!new Set([_.SUCCESS,_.USAGE,_.NOT_FOUND,_.CONFLICT]).has(t)}return!0}async function dq(e=3e3){let t=on();if(t)try{await t.flush(e)}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]="d7a68072-168d-509a-95ec-145635d71d46")}catch{}})();var xE=[{name:"private-key",mutationRule:"private_key",regex:/-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----/g},{name:"github-token",mutationRule:"github_token",regex:/\b(?:gh[opsru]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\b/g},{name:"npm-token",mutationRule:"npm_token",regex:/\bnpm_[A-Za-z0-9]{20,}\b/g},{name:"aws-access-key",mutationRule:"aws_access_key",regex:/\b(?:AKIA|ASIA)[0-9A-Z]{16}\b/g},{name:"google-api-key",mutationRule:"google_api_key",regex:/\bAIza[0-9A-Za-z_-]{35}\b/g},{name:"slack-token",mutationRule:"slack_token",regex:/\bxox[baprs]-[A-Za-z0-9-]{10,}\b/g},{name:"anthropic-api-key",mutationRule:"anthropic_api_key",regex:/\bsk-ant-[A-Za-z0-9_-]{20,}\b/g},{name:"openai-api-key",mutationRule:"openai_api_key",regex:/\bsk-(?!ant-)[A-Za-z0-9_-]{20,}\b/g},{name:"gitlab-token",mutationRule:"gitlab_token",regex:/\bglpat-[A-Za-z0-9_.-]{20,}\b/g},{name:"jwt-like-token",mutationRule:"jwt_like_token",regex:/\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\b/g},{name:"npm-auth-token-assignment",mutationRule:"npm_auth_token_assignment",regex:/_authToken\s*=\s*\S+/g},{name:"sentry-user-token",mutationRule:"sentry_user_token",regex:/\bsntryu_[A-Za-z0-9]{20,}\b/g},{name:"sentry-org-token",mutationRule:"sentry_org_token",regex:/\bsntrys_[A-Za-z0-9_-]{20,}\b/g},{name:"private-ip",mutationRule:"private_ip",regex:/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g},{name:"private-ssh-target",mutationRule:"private_ssh_target",regex:/\b(?:ssh|scp|rsync)\s+[A-Za-z0-9._-]+@(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g},{name:"sshpass-inline-password",mutationRule:"sshpass_inline_password",regex:/\bsshpass\s+-p\s+["'][^"']{6,}["']/g},{name:"password-assignment",mutationRule:"password_assignment",regex:/\b(?:password|passphrase)\s*[:=]\s*(?:(?!<|\$\{|\$\()[A-Za-z0-9!@#$%^&*._+\-=]{8,}|"(?!<|\$\{|\$\()[^"]{8,}"|'(?!<|\$\{|\$\()[^']{8,}')/gi},{name:"absolute-home-path",mutationRule:"absolute_home_path",regex:/(?:^|[\s"'`(=])\/home\/[A-Za-z0-9._-]+\/[^\s"'`),;]+/g,excludeFiles:/^(?:tests\/|examples\/)/},{name:"user-at-private-host",mutationRule:"user_at_private_host",regex:/\b[A-Za-z0-9._-]+@(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g,excludeFiles:/^(?:tests\/|examples\/)/},{name:"high-entropy-assignment",mutationRule:"high_entropy_assignment",regex:/\b(?:token|secret|password|passwd|api[_-]?key)\s*[:=]\s*["']?([A-Za-z0-9+/=_-]{24,})/gi,mutationOnlyReason:"Generic assignments in source code are not credentials; preserve the existing mutation heuristic without treating source identifiers as secrets.",minimumEntropy:3.5}];function NE(e,t){if(e.minimumEntropy===void 0)return!0;let r=t[1],n=new Map;for(let i of r)n.set(i,(n.get(i)??0)+1);let o=0;for(let i of n.values()){let s=i/r.length;o-=s*Math.log2(s)}return o>=e.minimumEntropy}(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]="eed441f0-e2b5-51e9-b9bf-0f4882a9eeea")}catch{}})();var uq=[{action:"append",history_scope:"item"},{action:"claim",history_scope:"item"},{action:"close",history_scope:"item"},{action:"close-many",history_scope:"item"},{action:"close-task",history_scope:"item"},{action:"comments",history_scope:"conditional"},{action:"config",history_scope:"conditional"},{action:"copy",history_scope:"item"},{action:"create",history_scope:"item"},{action:"delete",history_scope:"item"},{action:"deps",history_scope:"conditional"},{action:"discover",history_scope:"item"},{action:"docs",history_scope:"conditional"},{action:"files",history_scope:"conditional"},{action:"focus",history_scope:"conditional"},{action:"gc",history_scope:"conditional"},{action:"history-compact",history_scope:"history"},{action:"history-author-acknowledge",history_scope:"workspace"},{action:"history-redact",history_scope:"history"},{action:"history-repair",history_scope:"history"},{action:"init",history_scope:"workspace"},{action:"install",history_scope:"conditional"},{action:"learnings",history_scope:"conditional"},{action:"notes",history_scope:"conditional"},{action:"package",history_scope:"conditional"},{action:"pause-task",history_scope:"item"},{action:"plan",history_scope:"conditional"},{action:"profile",history_scope:"conditional"},{action:"release",history_scope:"item"},{action:"restore",history_scope:"item"},{action:"schema",history_scope:"conditional"},{action:"start-task",history_scope:"item"},{action:"templates",history_scope:"conditional"},{action:"test",history_scope:"conditional"},{action:"test-all",history_scope:"conditional"},{action:"update",history_scope:"item"},{action:"update-many",history_scope:"item"},{action:"upgrade",history_scope:"conditional"}],wp=new Map(uq.map(e=>[e.action,e]));function bp(e,t="$",r=new WeakSet){return typeof e=="string"?[{path:t,value:e}]:typeof e!="object"||e===null?[]:r.has(e)?[]:(r.add(e),Array.isArray(e)?e.flatMap((n,o)=>bp(n,`${t}[${o}]`,r)):Object.entries(e).flatMap(([n,o])=>bp(o,`${t}.${n}`,r)))}function DE(e){let t=[];for(let r of bp(e))for(let n of xE){n.regex.lastIndex=0;for(let o of r.value.matchAll(n.regex))if(NE(n,o)){t.push({rule:n.mutationRule,path:r.path});break}}return t.filter((r,n,o)=>o.findIndex(i=>i.rule===r.rule&&i.path===r.path)===n)}function fq(e){let t=e.author.trim()||"unknown";if(e.settings.require_attributed_author&&t.toLowerCase()==="unknown")throw new g("Mutation author is required by workspace policy.",_.USAGE,{code:"mutation_author_required",required:"Pass --author <id>, set PM_AUTHOR, or configure author_default.",nextSteps:["Retry with --author <stable-agent-id>.","Set PM_AUTHOR for this agent session."]});if(e.settings.secret_guard==="off")return{author:t,findings:[],warnings:[],override_applied:!1};let r;try{r=DE(e.payload)}catch{return{author:t,findings:[],warnings:["secret_guard_scan_failed_open"],override_applied:!1}}if(r.length===0)return{author:t,findings:r,warnings:[],override_applied:!1};let n=[...new Set(r.map(o=>o.rule))].sort().join(",");if(e.settings.secret_guard==="block"&&e.force!==!0)throw new g(`Mutation blocked by secret guard (${n}). No detected value was logged.`,_.CONFLICT,{code:"mutation_secret_guard_blocked",required:"Remove the credential-shaped content or retry with --force after explicit review.",nextSteps:["Replace the value with a secret-manager reference.","Use pm history-redact if equivalent content already entered history."],recovery:{recovery_mode:"compact",attempted_command:"pm <mutation> [REDACTED]",normalized_args:["[REDACTED]"],suggested_retry:"Remove credential-shaped content, then retry the mutation."}});return{author:t,findings:r,warnings:[`secret_guard_detected:${r.length}:rules=${n}`,...e.settings.secret_guard==="block"&&e.force===!0?["secret_guard_force_override"]:[]],override_applied:e.settings.secret_guard==="block"&&e.force===!0}}function pq(e){return wp.has(e.trim().toLowerCase())}function mq(){return[...wp.keys()].sort((e,t)=>e.localeCompare(t))}function wZ(e){return wp.get(e.trim().toLowerCase())}(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]="c18e4dfc-d3e3-5185-9470-9d46b4dca893")}catch{}})();function _q(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function EZ(e){return _q(e).split(/[^a-z0-9]+/).filter(t=>t.length>0)}function Ac(e,t){if(e.length===0&&t.length===0)return 1;if(e.length===0||t.length===0)return 0;let r=new Set(e),n=new Set(t),o=0;for(let s of r)n.has(s)&&(o+=1);let i=new Set([...r,...n]).size;return o/i}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="54784ad1-36bd-5a10-aa00-ad0b09e935a7")}catch{}})();var gq=/\b[a-z][a-z0-9]*-\d+(?:-[a-z0-9]+)*\b/giu;function vp(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function ME(e){return[...new Set(vp(e).match(/[\p{L}\p{N}]+/gu)??[])]}function PE(e){let t=vp(e);return{normalized:t,tokens:ME(t),issueCodes:[...new Set(t.match(gq)?.map(r=>r.toLowerCase())??[])]}}function yq(e,t){return hq(PE(e),PE(t))}function hq(e,t){if(e.normalized===t.normalized)return{score:1,reason:"exact_title"};let r=new Set(e.issueCodes);return t.issueCodes.some(n=>r.has(n))?{score:.99,reason:"issue_code"}:{score:Ac(e.tokens,t.tokens),reason:"title_token_jaccard"}}import bq 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]="cdae67c6-8316-5e97-84ca-0be4460ffd57")}catch{}})();function Sc(e){return(e??"in_progress").trim().toLowerCase().replaceAll("-","_")}function wq(e,t){return[e.updated_at,t].map(n=>({value:n,time:Date.parse(n??"")})).filter(n=>typeof n.value=="string"&&Number.isFinite(n.time)).sort((n,o)=>o.time-n.time)[0]?.value??e.updated_at}function LE(e,t){let r=Math.max(1,Math.trunc(t.threshold_hours)),n=(t.now??new Date).getTime(),o=Sc(t.in_progress_status),i=[];for(let s of e){if(Sc(String(s.status))!==o||(s.assignee?.trim().length??0)>0)continue;let a=wq(s,t.last_history_activity?.(s)),c=Date.parse(a);if(!Number.isFinite(c))continue;let l=Math.max(0,Math.floor((n-c)/36e5));l>=r&&i.push({id:s.id,last_activity_at:a,age_hours:l})}return i.sort((s,a)=>a.age_hours-s.age_hours||s.id.localeCompare(a.id)),{threshold_hours:r,count:i.length,items:i,remediation:"Claim active work with `pm claim <id>` or return abandoned work to open with `pm update <id> --status open`."}}async function vq(e,t,r){let n=new Map;return await Promise.all(t.filter(o=>Sc(String(o.status))===Sc(r.in_progress_status)&&(o.assignee?.trim().length??0)===0).map(async o=>{let i;try{i=await Ue(bq.join(e,"history",`${o.id}.jsonl`),o.id)}catch{return}let s=i.map(a=>a.ts).filter(a=>Number.isFinite(Date.parse(a))).sort((a,c)=>Date.parse(c)-Date.parse(a))[0];s&&n.set(o.id,s)})),LE(t,{...r,last_history_activity:o=>n.get(o.id)})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="eb1afbe5-eb0a-56d2-bb94-80fd427325f7")}catch{}})();var Eq=Object.freeze({"&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&amp;":"&"}),Tq=/&(?:lt|gt|quot|#39|amp);/g;function kq(e){return typeof e!="string"||!e.includes("&lt;")&&!e.includes("&gt;")?e:e.replace(Tq,t=>Eq[t])}function Aq(e){return Ep(e,new WeakMap)}function Ep(e,t){if(typeof e=="string")return kq(e);if(Array.isArray(e)){if(t.has(e))return t.get(e);let r=[];t.set(e,r);for(let n of e)r.push(Ep(n,t));return r}if(e!==null&&typeof e=="object"){if(!Sq(e))return e;if(t.has(e))return t.get(e);let r=e,n=Object.create(Object.getPrototypeOf(e));t.set(e,n);for(let[o,i]of Object.entries(r))Object.defineProperty(n,o,{value:Ep(i,t),enumerable:!0,writable:!0,configurable:!0});return n}return e}function Sq(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4873876d-67b4-5f79-a984-756b7e539e9b")}catch{}})();function Oq(e){let t=null;return()=>(t??=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]="3940f646-f84d-5eb0-8db1-de64ca0a5985")}catch{}})();function FE(e){return e.split(/[\s,|]+/).map(t=>t.trim()).filter(t=>t.startsWith("--"))}function Cq(e){return FE(e)[0]??null}function Iq(e,t){let r=Cq(t);if(r===null)return!1;let n=o=>o.slice(2).replaceAll("-","_");return FE(e).some(o=>!o.slice(2).includes("-")||r===o?!1:n(r)===n(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]="f3edff87-6ea5-5108-a749-eeb380870601")}catch{}})();function Rq(e,t){if(e==null)return[];let r=t?.separators??/,/,o=e.split(r).map(a=>a.trim()).filter(a=>a.length>0),s=t?.unique!==!1?Array.from(new Set(o)):o;return t?.sort===!0?[...s].sort():s}import $E from"node:fs/promises";import Oc 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]="1ad4a739-f29d-5b50-b1cf-f8590804e32b")}catch{}})();function xq(e){return"json_markdown"}function jE(e,t){return Oc.relative(e,t).replaceAll("\\","/")}function Nq(e){return String(e).replaceAll(/[^a-zA-Z0-9._-]+/g,"_").slice(0,120)}async function Dq(e,t,r="item_format:migrate",n=Ee,o){if(t!=="toon")throw new Error("Only toon item-format migration targets are supported. Markdown item files are legacy read-only input.");let i=new Set,s=new Set,a=[],c=0,l=xq(t),d=Object.entries(n);for(let[u,f]of d){let p=Oc.join(e,f),m=[];try{m=await $E.readdir(p)}catch{continue}let h=new Map;for(let w of m){let E=Oc.join(p,w),O=Oo(E);if(!O)continue;let B=Oc.extname(w),P=w.slice(0,w.length-B.length).trim();if(P.length===0)continue;let he=h.get(P)??{};he[O]=E,h.set(P,he)}let b=[...h.keys()].sort((w,E)=>w.localeCompare(E));for(let w of b){let E=h.get(w);c+=1;let O=E[l];if(!O)continue;let B=E[t]??O,P=B===E[t]?t:l;try{let he=await $E.readFile(B,"utf8"),Oe=$r(he,{format:P,schema:o,onWarning:pn=>a.push(`item_format_migration_parse_warning:${w}:${pn}`)}),Ye=Tn(e,u,w,t,n),Ce=ei(Oe,{format:t,schema:o});await V(Ye)!==Ce&&(await F(Ye,Ce),a.push(...await ke({path:Ye,scope:"project",op:r})),i.add(w)),await bo(O),s.add(jE(e,O)),a.push(...await ke({path:O,scope:"project",op:`${r}:remove`})),i.add(w)}catch(he){a.push(`item_format_migration_skipped:${jE(e,B)}:${Nq(he)}`)}}}return{target_format:t,scanned:c,migrated:[...i].sort((u,f)=>u.localeCompare(f)),removed:[...s].sort((u,f)=>u.localeCompare(f)),warnings: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]="d2940263-a7b4-5d29-b1e5-631fe1072a5b")}catch{}})();var Pq=new Set(["completed","superseded"]);function Mq(e){return e!==void 0&&Pq.has(e)}function Lq(e){if(e.type.trim().toLowerCase()!=="plan")return!1;let t=e.plan_steps??[];return t.length>0&&t.every(r=>r.status==="completed")}import Fq from"node:readline/promises";import{stdin as $q,stdout as UE}from"node:process";(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]="91cfc9cf-9ab1-5c9f-803d-f378e9963c4a")}catch{}})();var jq="PM_TELEMETRY_PROMPT",zE=new Set(["0","false","no","off"]),Uq=new Set(["init","completion","completion-statuses","completion-tags","completion-types"]);function zq(e){return typeof e!="string"?!1:zE.has(e.trim().toLowerCase())}function qq(e){if(typeof e!="string")return!1;let t=e.trim().toLowerCase();return t.length===0?!1:!zE.has(t)}function Hq(e,t){if(t.json===!0||t.quiet===!0||process.stdin.isTTY!==!0||process.stdout.isTTY!==!0||zq(process.env[jq])||qq(process.env.CI))return!0;let r=e.trim().toLowerCase();return r.length===0?!0:Uq.has(r)}function Gq(e){let t=e.trim().toLowerCase();return!(t==="n"||t==="no")}async function Bq(e){let r=`pm telemetry helps improve reliability and usage diagnostics.
218
- It is enabled by default and can be changed anytime via:
219
- pm config global set telemetry-tracking --policy disabled
220
- Enable telemetry now? [${e?"Y/n":"y/N"}] `,n=Fq.createInterface({input:$q,output:UE});try{let o=await n.question(r);return o.trim().length===0?e:Gq(o)}finally{n.close()}}async function Vq(e,t){if(!(ft().telemetry_disabled||Hq(e,t)))try{let r=Rt(process.cwd()),n=await ut(r);if(n.telemetry.first_run_prompt_completed)return;let o=await Bq(n.telemetry.enabled);n.telemetry.enabled=o,n.telemetry.first_run_prompt_completed=!0,await Ti(r,n,"telemetry:first_run_prompt"),UE.write(`Telemetry ${o?"enabled":"disabled"} for this CLI install. Update any time with pm config global set telemetry-tracking --policy ${o?"disabled":"enabled"}.
221
- `)}catch{}}import pt from"node:crypto";import{spawn as Kq}from"node:child_process";import{mkdirSync as Tp,rmSync as Xq,statSync as QE}from"node:fs";import{mkdir as kp,readdir as Jq,rm as Rp,stat as eT}from"node:fs/promises";import{request as Zq}from"node:http";import{request as Qq}from"node:https";import xp from"node:os";import Ve from"node:path";import Wq 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]="9d949852-abfe-5fbd-88c5-5da0cfbaf7de")}catch{}})();async function qE(e,t,r,n=process.env,o=Date.now()){if(!r||!Tc.has(t))return 1;if(n.PM_TELEMETRY_READ_SAMPLE_RATE!==void 0)return wE(t,!0,n);try{let i=Wq.join(e,"runtime","telemetry","read-sampling.json"),s=Math.floor(o/6e4),a=Yq(await V(i),s),c=Math.min(Number.MAX_SAFE_INTEGER,(a[t]??0)+1);return a[t]=c,await F(i,`${JSON.stringify({minute:s,counts:a})}
222
- `),Math.min(1,(10/c)**2)}catch{return 1}}function Yq(e,t){let r={},n;try{n=JSON.parse(e??"null")}catch{return r}if(typeof n!="object"||n===null||!("minute"in n)||n.minute!==t||!("counts"in n)||typeof n.counts!="object"||n.counts===null)return r;for(let[o,i]of Object.entries(n.counts))Tc.has(o)&&typeof i=="number"&&Number.isSafeInteger(i)&&i>=0&&(r[o]=i);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="9d073708-29b1-56b5-bcff-b964bfdcb43d")}catch{}})();var eH=Ve.join("runtime","telemetry","events.jsonl"),tH=Ve.join("runtime","telemetry","state.json"),rH=Ve.join("runtime","telemetry","otel-spans.jsonl"),nH=8,HE=500,xc=1,GE=1,oH=100,iH=36e5,sH=3e4,BE=2e4,aH=1e3,cH=25e3,Np=250,lH=864e5,Nc=65536,tT=6,rT=20,nT=15,dH=8192,oT=[25,50,100,200],uH=3600*1e3,iT=6e4,fH=6e4,pH="OTEL_EXPORTER_OTLP_TRACES_ENDPOINT",mH="OTEL_EXPORTER_OTLP_ENDPOINT",_H="OTEL_SERVICE_NAME",gH="PM_TELEMETRY_OTEL_DISABLED",yH=new Set(["1","true","yes","on"]),hH="PM_TELEMETRY_INLINE_FLUSH",sT="PM_TELEMETRY_FLUSH_CHILD",bH="PM_TELEMETRY_SOURCE_CONTEXT",wH="PM_TELEMETRY_HTTP_TIMEOUT_MS",vH=globalThis.fetch,VE=!1,WE=Promise.resolve(),YE=Promise.resolve(),Cc=new WeakMap;var EH=new Set(Fi),TH=new Set(["1","true","yes","on"]),kH=new Set(["claude-code","codex","pi","opencode","cursor","aider","gemini-cli","ci"]),Dc=pt.randomUUID(),AH=["token","secret","password","passwd","api_key","apikey","authorization","cookie","session","credentials","bearer"],SH=new Set(["literal","literals","regex","regexes","replacement","replacements"]),aT="(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|session|credentials|bearer|literals?|regex(?:es)?|replacements?)",OH=new RegExp(`\\b(${aT})\\s*([:=])\\s*([^\\s,;]+)`,"giu"),CH=new RegExp(`(--${aT})(=|\\s+)([^\\s,;]+)`,"giu"),IH=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,RH=/bearer\s+[a-z0-9._=-]+/giu,xH=/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g;function $i(e){return Ve.join(e,eH)}function Pc(e){return Ve.join(e,rH)}function NH(e){return Ve.dirname($i(e))}function cT(e){return Ve.join(e,tH)}function Dp(e){return Ve.join(e,"runtime","telemetry","flush.lock")}function lT(e){return Ve.join(e,"runtime","telemetry","flush.spawn.lock")}function DH(){return Ve.join(It(import.meta.url,["../../.."]),"dist","cli","telemetry-flush.js")}function PH(){if(Ic(process.env[hH])||Ic(process.env[sT]))return!0;let e=(process.env.NODE_ENV??"").trim().toLowerCase();return typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||e==="test"}async function MH(e){let t=await V(cT(e));if(!t||t.trim().length===0)return{};try{let r=JSON.parse(t);return typeof r!="object"||r===null||Array.isArray(r)?{}:r}catch{return{}}}async function St(e,t){try{let n={...await MH(e),...t},o=Object.fromEntries(Object.entries(n).filter(([,i])=>i!==void 0).sort((i,s)=>i[0].localeCompare(s[0])));await F(cT(e),`${JSON.stringify(o,null,2)}
223
- `)}catch{}}function Sp(e){let t=e.trim().toLowerCase().replaceAll("-","_").replaceAll(/[^a-z0-9_]+/g,"_"),r=t.split("_").filter(n=>n.length>0);return SH.has(t)||AH.some(n=>t===n||t.endsWith(`_${n}`)||r.includes(n))}function dT(e){return e.replaceAll(OH,(r,n,o)=>`${n}${o}[redacted]`).replaceAll(CH,(r,n,o)=>`${n}${o}[redacted]`)}function uT(e){return e.replaceAll(IH,(t,r)=>`${r}[redacted_path]`)}function fT(e){let t=e>=65&&e<=90,r=e>=97&&e<=122,n=e>=48&&e<=57;return t||r||n}function pT(e){if(!e)return!1;let t=e.charCodeAt(0);return fT(t)?!0:e==="."||e==="_"||e==="%"||e==="+"||e==="-"}function mT(e){if(!e)return!1;let t=e.charCodeAt(0);return fT(t)?!0:e==="."||e==="-"}function LH(e){let t=e.indexOf("@");if(t<=0||t!==e.lastIndexOf("@")||t===e.length-1)return!1;let r=e.slice(0,t),n=e.slice(t+1),o=n.lastIndexOf(".");if(o<=0||o===n.length-1||n.length-(o+1)<2)return!1;for(let i of r)if(!pT(i))return!1;for(let i of n)if(!mT(i))return!1;return!0}function FH(e){let t="",r=0;for(;r<e.length;){let n=e.indexOf("@",r);if(n<0){t+=e.slice(r);break}let o=n-1;for(;o>=r&&pT(e[o]);)o-=1;o+=1;let i=n+1;for(;i<e.length&&mT(e[i]);)i+=1;let s=e.slice(o,i);if(LH(s)){t+=e.slice(r,o),t+="[redacted_email]",r=i;continue}t+=e.slice(r,n+1),r=n+1}return t}function _T(e){return FH(e).replaceAll(RH,"bearer [redacted_token]").replaceAll(xH,"[redacted_ip]")}function $H(e){let t=_T(e),r=dT(t),n=uT(r),o=n.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":n.length>512?`${n.slice(0,509)}...`:n}function jH(e){let t=_T(e),r=dT(t),n=uT(r),o=n.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":n.length>2048?`${n.slice(0,2045)}...`:n}function ue(e,t="redacted"){return t==="max"?jH(e):$H(e)}function sn(e,t,r="redacted",n=0){if(t&&Sp(t))return"[redacted]";if(e==null)return e;if(typeof e=="string")return ue(e,r);if(typeof e=="number"||typeof e=="boolean")return e;if(n>=tT)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,rT).map(o=>sn(o,void 0,r,n+1));if(typeof e=="object"){let o=e,i={};for(let[s,a]of Object.entries(o))i[s]=sn(a,s,r,n+1);return i}return String(e)}function gT(e,t="redacted"){let r=[],n=!1;for(let o of e){let i=ue(o,t);if(n){r.push("[redacted]"),n=!1;continue}if(i.startsWith("--")){let s=i.slice(2),a=s.indexOf("=");if(a>=0){let c=s.slice(0,a),l=s.slice(a+1);Sp(c)?r.push(`--${c}=[redacted]`):r.push(`--${c}=${ue(l,t)}`);continue}if(Sp(s)){r.push(`--${s}`),n=!0;continue}}r.push(i)}return r}function UH(e){let t=e?.trim().toLowerCase();return t==="minimal"||t==="redacted"||t==="max"?t:"redacted"}function Ic(e){return TH.has((e??"").trim().toLowerCase())}function KE(){let e=process.env[wH]?.trim();if(!e)return BE;let t=Number(e);return Number.isFinite(t)?Math.min(cH,Math.max(aH,Math.trunc(t))):BE}async function yT(e,t,r){let n=new URL(e);if(globalThis.fetch!==vH){let i=new AbortController,s,a=new Promise((c,l)=>{s=setTimeout(()=>{i.abort(),l(new Error("telemetry_http_timeout"))},KE())});try{return(await Promise.race([globalThis.fetch(e,{method:"POST",headers:t,body:r,signal:i.signal}),a])).status}finally{clearTimeout(s)}}let o=n.protocol==="https:"?Qq:n.protocol==="http:"?Zq:void 0;if(!o)throw new Error(`telemetry_http_protocol_unsupported_${n.protocol}`);return new Promise((i,s)=>{let a=KE(),c={method:"POST",headers:{...t,"content-length":Buffer.byteLength(r)},signal:AbortSignal.timeout(a),autoSelectFamilyAttemptTimeout:Math.min(5e3,a)},l=o(n,c,d=>{d.once("error",s),d.once("end",()=>i(d.statusCode)),d.resume()});l.once("error",s),l.end(r)})}function hT(e){let t=typeof e=="string"?e.trim():"";return t.length>0?t:"0.0.0"}function Pp(e){let t=e?.trim();return t&&t.length>0?t:void 0}function Mp(e,t){return Number.isFinite(e)?Math.max(0,Math.trunc(e)):t?0:1}function bT(e){if(!e.ok)return typeof e.errorCategory=="string"&&e.errorCategory.trim().length>0?e.errorCategory:typeof e.errorCode=="string"&&e.errorCode.trim().length>0?is(e.errorCode):"unknown"}function wT(e){let t=(process.env[bH]??"").trim().toLowerCase();if(EH.has(t))return{source_context:t,source_context_source:"env_override"};let r=t.length>0?"env_override_rejected":"inferred";return r==="env_override_rejected"&&!VE&&!e.quiet&&(VE=!0,process.stderr.write(`[pm] warning: PM_TELEMETRY_SOURCE_CONTEXT is not one of ${Fi.join("|")}; ignoring override.
224
- `)),{source_context:zH(e),source_context_source:r}}function zH(e){let t=(process.env.NODE_ENV??"").trim().toLowerCase();if(typeof process.env.VITEST=="string"||typeof process.env.VITEST_WORKER_ID=="string"||t==="test")return"test";let r=process.stdin.isTTY!==!0||process.stdout.isTTY!==!0,n=Ic(process.env.CI),o=e.json===!0||e.quiet===!0;return r||n||o?"automation":"user"}function Se(e,t){return pt.createHash("sha256").update(`${e}:${t}`).digest("hex")}function Lp(e,t){let r=(tu()??"").trim(),n=ti({env:process.env,argv:process.argv}),o=n.harness!==void 0||n.model!==void 0;return e==="minimal"?{has_author_context:r.length>0,has_agent_context:o}:{agent_harness:n.harness?kH.has(n.harness)?n.harness:"other":"none",ci:Ic(process.env.CI),...r.length>0?{author_context_hash:Se(t,r)}:{},...n.harness?{agent_harness_hash:Se(t,n.harness)}:{},...n.model?{agent_model_hash:Se(t,n.model)}:{},...n.model_source?{agent_model_source:n.model_source}:{}}}function Op(e,t=0){if(e==null||typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(t>=tT)return"[depth_truncated]";if(Array.isArray(e))return e.slice(0,rT).map(r=>Op(r,t+1));if(typeof e=="object"){let r=e,n={},o=Object.keys(r).sort((i,s)=>i.localeCompare(s));for(let i of o)n[i]=Op(r[i],t+1);return n}return String(e)}function Cp(e,t){return Se(e,JSON.stringify(Op(t)))}function vT(e,t){return{hashes:t.map(r=>Se(e,r)),digest:Se(e,t.join("\0"))}}function ET(e,t,r,n){let o=ue(typeof n=="string"?n:"","redacted"),i=typeof r=="string"&&r.length>0?r:"unknown_error",s=`${t}\0${i}\0${o}`;return Se(e,s)}function qH(){if(yH.has((process.env[gH]??"").trim().toLowerCase()))return null;let e=(process.env[pH]??"").trim();if(e.length>0)try{return new URL(e).toString()}catch{return null}let t=(process.env[mH]??"").trim();if(t.length===0)return null;try{let r=new URL(t),n=r.pathname.replace(/\/+$/,"");return n.endsWith("/v1/traces")||(r.pathname=`${n.length===0?"":n}/v1/traces`),r.toString()}catch{return null}}function XE(e){let t=Date.parse(e),r=Number.isNaN(t)?Date.now():t;return`${BigInt(r)*1000000n}`}function Be(e,t){return{key:e,value:{stringValue:t}}}function HH(e,t){return{key:e,value:{boolValue:t}}}function JE(e,t){return{key:e,value:{intValue:String(Math.max(0,Math.trunc(t)))}}}function GH(e,t,r,n,o=1){let i=e.otel_traces_endpoint;if(typeof i!="string"||i.trim().length===0||[e.otel_trace_id,e.otel_span_id].some(p=>typeof p!="string"||p.length===0))return null;let s=ue((process.env[_H]??"").trim()),a=s.length>0?s:"pm-cli",c=Mp(t.exit_code,t.ok),l=Pp(t.error_code),d=bT({ok:t.ok,errorCode:l,errorCategory:t.error_category}),u=[Be("pm.command",ue(e.command)),Be("pm.version",e.pm_version),Be("pm.source_context",e.source_context),Be("pm.source_context_source",e.source_context_source),Be("pm.installation_id",e.installation_id),Be("pm.session_id",Dc),Be("pm.pm_root_hash",e.pm_root_hash),Be("pm.cwd_hash",e.cwd_hash),HH("pm.ok",t.ok),JE("pm.exit_code",c),JE("pm.duration_ms",n),Be("pm.sample_rate",String(o))];typeof l=="string"&&u.push(Be("pm.error_code",l)),typeof d=="string"&&u.push(Be("pm.error_category",d)),typeof t.error=="string"&&t.error.trim().length>0&&u.push(Be("pm.error",ue(t.error)));let f={resourceSpans:[{resource:{attributes:[Be("service.name",a)]},scopeSpans:[{scope:{name:"pm-cli.telemetry",version:"1"},spans:[{traceId:e.otel_trace_id,spanId:e.otel_span_id,name:`pm.command.${ue(e.command)}`,kind:1,startTimeUnixNano:XE(e.started_at),endTimeUnixNano:XE(r),attributes:u,status:{code:t.ok?1:2,message:t.ok?"":ue(typeof t.error=="string"?t.error:"command_failed")}}]}]}]};return{endpoint:i,payload:f}}function BH(e,t="redacted"){if(e==null)return{type:"nullish"};if(typeof e=="string")return{type:"string",value:ue(e,t)};if(typeof e=="number"||typeof e=="boolean")return{type:typeof e,value:e};if(Array.isArray(e))return{type:"array",length:e.length,sample:e.slice(0,5).map(r=>sn(r,void 0,t))};if(typeof e=="object"){let r=e,n=Object.keys(r).sort((s,a)=>s.localeCompare(a)),o={},i=0;for(let s of n.slice(0,25)){let a=sn(r[s],s,t);if(a===void 0)continue;let c=JSON.stringify(a).length;if(i+c>dH){o[s]="[preview_truncated]";break}i+=c,o[s]=a}return{type:"object",key_count:n.length,keys_preview:n.slice(0,50),preview:o}}return{type:typeof e,value:String(e)}}function VH(e){let{captureLevel:t,context:r,pmVersion:n,sourceContext:o,pmRootHash:i,cwdHash:s,installationId:a}=e,c=lo(r.command),l=vT(a,r.args),d=Se(a,`${r.command}\0${r.args.join("\0")}`),u=Cp(a,r.options),f=Cp(a,r.global),p=Lp(t,a);return t==="minimal"?{capture_level:t,pm_version:n,source_context:o.source_context,source_context_source:o.source_context_source,command_taxonomy:c,command_args_digest:l.digest,command_invocation_digest:d,command_options_digest:u,global_options_digest:f,...p}:{pm_version:n,source_context:o.source_context,source_context_source:o.source_context_source,command_taxonomy:c,...p,command_args:gT(r.args,t),command_args_hashes:l.hashes,command_args_digest:l.digest,command_invocation_digest:d,command_options:sn(r.options,void 0,t),command_options_digest:u,global_options:sn(r.global,void 0,t),global_options_digest:f,pm_root_hash:i,cwd_hash:s,capture_level:t,runtime:{node:process.version,platform:process.platform,arch:process.arch,hostname_hash:Se(a,xp.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}function WH(e){let{captureLevel:t,pmVersion:r,sourceContext:n,outcome:o,durationMs:i,startedAt:s,command:a,installationId:c,commandTaxonomy:l,exitCode:d,errorCode:u,errorCategory:f,commandResolution:p,resolutionStage:m}=e,h=o.ok===!1?ET(c,a,u,o.error):void 0,b=Lp(t,c);return t==="minimal"?{capture_level:t,pm_version:r,source_context:n.source_context,source_context_source:n.source_context_source,command_taxonomy:l,command_resolution:p,resolution_stage:m,ok:o.ok,exit_code:d,error_code:u,error_category:f,error:o.error?ue(o.error,"redacted"):void 0,error_fingerprint:h,duration_ms:i,...b}:{capture_level:t,pm_version:r,source_context:n.source_context,source_context_source:n.source_context_source,command_taxonomy:l,command_resolution:p,resolution_stage:m,...b,ok:o.ok,exit_code:d,error_code:u,error_category:f,error:o.error?ue(o.error,t):void 0,error_fingerprint:h,duration_ms:i,started_at:s,result_summary:BH(o.result,t)}}function YH(e){let{captureLevel:t,pmVersion:r,sourceContext:n,command:o,commandTaxonomy:i,commandResolution:s,resolutionStage:a,args:c,options:l,pmRootHash:d,cwdHash:u,installationId:f,errorCode:p,errorMessage:m,errorCategory:h,exitCode:b}=e,w=vT(f,c),E=Se(f,o),O=Cp(f,l),B=ET(f,o,p,m),P=Lp(t,f);return t==="minimal"?{capture_level:t,pm_version:r,source_context:n.source_context,source_context_source:n.source_context_source,command_taxonomy:i,command_resolution:s,resolution_stage:a,attempted_command_digest:E,attempted_args_digest:w.digest,attempted_options_digest:O,error_code:p,error_category:h,exit_code:b,error:ue(m,"redacted"),error_fingerprint:B,...P}:{capture_level:t,pm_version:r,source_context:n.source_context,source_context_source:n.source_context_source,command_taxonomy:i,command_resolution:s,resolution_stage:a,...P,attempted_command:ue(o,t),attempted_command_digest:E,attempted_args:gT(c,t),attempted_args_hashes:w.hashes,attempted_args_digest:w.digest,attempted_options:sn(l,void 0,t),attempted_options_digest:O,error_code:p,error_category:h,exit_code:b,error:ue(m,t),error_fingerprint:B,pm_root_hash:d,cwd_hash:u,runtime:{node:process.version,platform:process.platform,arch:process.arch,hostname_hash:Se(f,xp.hostname()),stdin_tty:process.stdin.isTTY===!0,stdout_tty:process.stdout.isTTY===!0}}}async function Fp(e){let t=await ut(e);return!t.telemetry.enabled||ft().telemetry_disabled?null:(t.telemetry.installation_id.trim().length===0&&(t.telemetry.installation_id=pt.randomUUID(),await Ti(e,t,"telemetry:install_id")),{installationId:t.telemetry.installation_id,endpoint:t.telemetry.endpoint,retentionDays:Math.max(1,Math.trunc(t.telemetry.retention_days)),captureLevel:UH(t.telemetry.capture_level)})}async function Rc(e,t){let n=JSON.stringify({client_schema_version:GE,event:t,attempts:0});if(n.length>Nc){let o={...t,payload:{...t.payload,result_summary:{truncated:!0,reason:"payload_size_exceeded",original_bytes:n.length}}};n=JSON.stringify({client_schema_version:GE,event:o,attempts:0})}await ho($i(e),n)}function TT(e){let t=[];for(let r of e.split(`
225
- `)){let n=r.trim();if(n.length!==0)try{let o=JSON.parse(n);o&&typeof o=="object"&&o.event&&typeof o.event=="object"&&typeof o.attempts=="number"&&(o.client_schema_version===void 0||typeof o.client_schema_version=="number"&&Number.isFinite(o.client_schema_version))&&t.push(o)}catch{}}return t}function kT(e){let t=Math.min(sH*2**Math.max(e-1,0),iH);return new Date(Date.now()+t).toISOString()}function AT(e){if(typeof e!="string"||e.trim().length===0)return!0;let t=Date.parse(e);return Number.isNaN(t)?!0:t<=Date.now()}function KH(e){return AT(e.next_attempt_after)}function ST(e){let t=Number.isFinite(e)?Math.max(1,Math.trunc(e)):1;return Date.now()-t*lH}function XH(e,t){let r=e.event?.occurred_at;if(typeof r!="string"||r.trim().length===0)return!1;let n=Date.parse(r);return Number.isNaN(n)?!1:n<t}function $p(e,t){let r=ST(t),n=[],o=0;for(let i of e){if(JSON.stringify(i).length>Nc||XH(i,r)||i.attempts>=nT){o+=1;continue}n.push(i)}return{entries:n,prunedCount:o}}async function OT(e,t){let r=t.map(o=>JSON.stringify(o)).join(`
226
- `),n=r.length>0?`${r}
227
- `:"";for(let o=0;;o+=1)try{await F($i(e),n);return}catch(i){let s=oT[o];if(s===void 0||!CT(i))throw i;await IT(s)}}function CT(e){if(typeof e!="object"||e===null||!("code"in e))return!1;let t=e.code;return t==="EACCES"||t==="EBUSY"||t==="EPERM"}function IT(e){return new Promise(t=>{setTimeout(t,e)})}async function JH(e,t){let r={id:pt.randomUUID(),endpoint:t.endpoint,payload:t.payload,enqueued_at:Z(),attempts:0},n=JSON.stringify(r);n.length>Nc||await ho(Pc(e),n)}function ZH(e){let t=JSON.stringify([e.endpoint,e.enqueued_at,e.payload]);return pt.createHash("sha256").update(t).digest("hex").slice(0,32)}function RT(e){let t=[];for(let r of e.split(`
228
- `)){let n=r.trim();if(n.length!==0)try{let o=JSON.parse(n);o&&typeof o=="object"&&typeof o.endpoint=="string"&&o.endpoint.trim().length>0&&"payload"in o&&typeof o.attempts=="number"&&Number.isFinite(o.attempts)&&((typeof o.id!="string"||o.id.length===0)&&(o.id=ZH(o)),t.push(o))}catch{}}return t}function QH(e,t){if(typeof e.enqueued_at!="string"||e.enqueued_at.trim().length===0)return!1;let r=Date.parse(e.enqueued_at);return Number.isNaN(r)?!1:r<t}function xT(e,t){let r=ST(t),n=[],o=0;for(let i of e){if(JSON.stringify(i).length>Nc||QH(i,r)||i.attempts>=nT){o+=1;continue}n.push(i)}if(n.length>HE){let i=n.length-HE;return o+=i,{entries:n.slice(i),prunedCount:o}}return{entries:n,prunedCount:o}}async function eG(e,t){let r=t.map(o=>JSON.stringify(o)).join(`
229
- `),n=r.length>0?`${r}
230
- `:"";for(let o=0;;o+=1)try{await F(Pc(e),n);return}catch(i){let s=oT[o];if(s===void 0||!CT(i))throw i;await IT(s)}}async function ZE(e,t,r,n){return an(async()=>{let o=await V(Pc(e)),i=o===null?[]:RT(o),s=[];for(let c of i){if(r.has(c.id))continue;let l=n.get(c.id);s.push(l?{...c,attempts:l.attempts,next_attempt_after:l.next_attempt_after}:c)}let{entries:a}=xT(s,t);return await eG(e,a),a.length},e)}async function tG(e,t){let r=await V(Pc(e));if(r===null||r.trim().length===0){await St(e,{pending_otel_spans:0});return}let n=RT(r),{entries:o,prunedCount:i}=xT(n,t),s=o.filter(m=>AT(m.next_attempt_after)).slice(0,nH);if(s.length===0){let m=i>0?await ZE(e,t,new Set,new Map):o.length;await St(e,{pending_otel_spans:m});return}let a=Z(),c=new Set,l=new Map,d=0,u;await Promise.all(s.map(async m=>{try{let h=await yT(m.endpoint,{"content-type":"application/json"},JSON.stringify(m.payload));if(h<200||h>=300)throw new Error(`local_otel_export_http_${h}`);c.add(m.id),d+=1}catch(h){u=h instanceof Error?ue(h.message,"redacted"):"local_otel_export_failed";let b=m.attempts+1;l.set(m.id,{attempts:b,next_attempt_after:kT(b)})}}));let f=await ZE(e,t,c,l),p={pending_otel_spans:f,last_otel_attempt_at:a};d>0&&(p.last_otel_success_at=a),u!==void 0?(p.last_otel_failure_at=a,p.last_otel_failure_error=u):f===0&&(p.last_otel_failure_at=void 0,p.last_otel_failure_error=void 0),await St(e,p)}async function NT(e,t,r){try{await oG(e,t,r)}catch{}try{await tG(e,r)}catch{}}async function rG(e,t=uH){try{let r=NH(e),n=await Jq(r,{withFileTypes:!0}),o=Date.now()-Math.max(0,t);await Promise.all(n.filter(i=>i.isFile()&&/^\.events\.jsonl\.\d+\.\d+\.[a-f0-9]+\.tmp$/.test(i.name)).map(async i=>{let s=Ve.join(r,i.name);(await eT(s)).mtimeMs<o&&await Rp(s,{force:!0})}))}catch{}}async function an(e,t=Rt(process.cwd()),r=5e3){let n=YE.catch(()=>{}).then(()=>Pg(async()=>{let o=await ie(t,"telemetry-queue",60,"telemetry",!1,!1,r);try{return wt(t),await e()}finally{await o()}}));return YE=n.catch(()=>{}),n}async function jp(e){let t=await V($i(e));return t===null||t.trim().length===0?[]:TT(t)}async function Ap(e,t,r){return an(async()=>{let n=await jp(e),{entries:o}=$p(n,r),i=o.filter(s=>!t.has(s.event.event_id));return await OT(e,i),i},e)}async function nG(e,t,r,n){return an(async()=>{let o=await jp(e),{entries:i}=$p(o,n),s=i.map(a=>{if(!t.has(a.event.event_id))return a;let c=a.attempts+1;return{...a,attempts:c,last_attempt_at:r,next_attempt_after:kT(c)}});return await OT(e,s),s},e)}async function oG(e,t,r){await rG(e);let n=t.trim();if(n.length===0)return;let o=await V($i(e));if(o===null||o.trim().length===0){await St(e,{endpoint:n,queue_entries:0});return}let i=TT(o);if(i.length===0){await St(e,{endpoint:n,queue_entries:0});return}let{entries:s,prunedCount:a}=$p(i,r);if(s.length===0){let p=await Ap(e,new Set,r);await St(e,{endpoint:n,queue_entries:p.length});return}let c=s.filter(p=>KH(p)).slice(0,oH);if(c.length===0){let p=a>0?await Ap(e,new Set,r):s;await St(e,{endpoint:n,queue_entries:p.length});return}let l=new Set(c.map(p=>p.event.event_id)),d=Z(),u={"content-type":"application/json"},f=process.env.PM_TELEMETRY_INGEST_KEY?.trim();f&&(u["x-pm-telemetry-key"]=f);try{let p=await yT(n,u,JSON.stringify({schema_version:xc,events:c.map(m=>m.event)}));if(p<200||p>=300)throw new Error(`telemetry_flush_http_${p}`)}catch(p){let m=await nG(e,l,d,r),h=p instanceof Error?ue(p.message,"redacted"):"telemetry_flush_failed";await St(e,{endpoint:n,queue_entries:m.length,last_attempted_flush_at:d,last_failed_flush_at:d,last_failed_flush_error:h});return}try{let p=await Ap(e,l,r);await St(e,{endpoint:n,queue_entries:p.length,last_attempted_flush_at:d,last_successful_flush_at:d,last_failed_flush_at:void 0,last_failed_flush_error:void 0})}catch(p){let m=p instanceof Error?ue(p.message,"redacted"):"telemetry_flush_failed",h=await jp(e).catch(()=>s);await St(e,{endpoint:n,queue_entries:h.length,last_attempted_flush_at:d,last_failed_flush_at:d,last_failed_flush_error:m})}}async function iG(e){let t=Dp(e);await kp(Ve.dirname(t),{recursive:!0});try{return await kp(t),!0}catch(r){if(typeof r!="object"||r===null||!("code"in r)||r.code!=="EEXIST")throw r}try{let r=await eT(t);return Date.now()-r.mtimeMs<iT?!1:(await Rp(t,{recursive:!0,force:!0}),await kp(t),!0)}catch{return!1}}function sG(e,t){try{return Date.now()-QE(e).mtimeMs<t}catch{return!1}}function DT(e){try{Xq(e,{recursive:!0,force:!0})}catch{}}function aG(e){if(typeof e!="object"||e===null||!("code"in e))return;let t=e.code;return typeof t=="string"?t:void 0}function cG(e){try{return Tp(e),!0}catch(t){if(aG(t)==="EEXIST"||!X(t))return!1}try{return Tp(Ve.dirname(e),{recursive:!0}),Tp(e),!0}catch{return!1}}function lG(e){if(sG(Dp(e),iT))return!1;let t=lT(e);try{if(Date.now()-QE(t).mtimeMs<fH)return!1;DT(t)}catch(r){if(!X(r))return!1}return cG(t)}function Ip(e){DT(lT(e))}async function dG(e,t,r){let n=await iG(e);if(Ip(e),!!n)try{await NT(e,t,r)}finally{try{await Rp(Dp(e),{recursive:!0,force:!0})}catch{}}}function Up(e,t,r){if(PH()){let n=WE,o=NT(e,t,r);WE=Promise.allSettled([n,o]).then(()=>{});return}try{if(!lG(e))return;let o=Kq(process.execPath,[DH()],{detached:!0,stdio:"ignore",cwd:xp.tmpdir(),env:{...process.env,PM_GLOBAL_PATH:e,[sT]:"1"}});o.on("error",()=>{Ip(e)}),o.unref()}catch{Ip(e)}}async function vQ(e=Rt(process.cwd())){if(!ft().telemetry_disabled)try{if(!(await ut(e)).telemetry.enabled)return;let r=await an(()=>Fp(e),e);if(!r)return;await dG(e,r.endpoint,r.retentionDays)}catch{}}async function uG(e){if(ft().telemetry_disabled||e.command==="telemetry"&&e.args.some(t=>t.trim().toLowerCase()==="clear"))return null;try{let t=Rt(process.cwd());if(!(await ut(t)).telemetry.enabled)return null;let n=e.global.noExtensions===!0||Lg(e.command),o=await an(async()=>{let i=await Fp(t);if(!i)return null;let{installationId:s,endpoint:a,retentionDays:c,captureLevel:l}=i,d=hT(e.pm_version),u=wT(e.global),f=Se(s,e.pm_root),p=Se(s,process.cwd()),m=qH(),h=Z(),b={schema_version:xc,event_id:pt.randomUUID(),event_type:"command_start",occurred_at:h,installation_id:s,session_id:Dc,command:e.command,payload:VH({captureLevel:l,context:e,pmVersion:d,sourceContext:u,pmRootHash:f,cwdHash:p,installationId:s})},w=await qE(t,e.command,n);w===1&&await Rc(t,b);let E=lo(e.command),O={...w<1?{sample_rate:w}:{},started_at:h,started_at_ms:Date.now(),command:e.command,command_taxonomy:E,pm_version:d,source_context:u.source_context,source_context_source:u.source_context_source,installation_id:s,pm_root_hash:f,cwd_hash:p,endpoint:a,retention_days:c,global_pm_root:t,capture_level:l,otel_traces_endpoint:m??void 0,otel_trace_id:m?pt.randomBytes(16).toString("hex"):void 0,otel_span_id:m?pt.randomBytes(8).toString("hex"):void 0};return w<1&&Cc.set(O,b),O},t,Np);return o&&o.sample_rate===void 0&&Up(t,o.endpoint,o.retention_days),o}catch{return null}}async function fG(e,t){if(!(!e||ft().telemetry_disabled))try{if(!await an(async()=>{let n=await ut(e.global_pm_root);if(ft().telemetry_disabled||!n.telemetry.enabled||n.telemetry.installation_id!==e.installation_id)return Cc.delete(e),!1;let o=Cc.get(e),i=t.ok?e.sample_rate??1:1;if(o){if(Cc.delete(e),pt.randomBytes(6).readUIntBE(0,6)/281474976710656>=i)return!1;o.payload.sample_rate=i,await Rc(e.global_pm_root,o)}let s=Z(),a=Math.max(0,Date.now()-e.started_at_ms),c=Pp(hp({ok:t.ok,errorCode:t.error_code,errorMessage:t.error,exitCode:t.exit_code})),l=bT({ok:t.ok,errorCode:c,errorCategory:t.error_category}),d=Mp(t.exit_code,t.ok),u=t.command_resolution??uo({ok:t.ok,errorCode:c,errorCategory:l}),f=t.resolution_stage??"execute",p={schema_version:xc,event_id:pt.randomUUID(),event_type:"command_finish",occurred_at:s,installation_id:e.installation_id,session_id:Dc,command:e.command,payload:{...o?{sample_rate:i}:{},...WH({captureLevel:e.capture_level,pmVersion:e.pm_version,sourceContext:{source_context:e.source_context,source_context_source:e.source_context_source},outcome:t,durationMs:a,startedAt:e.started_at,command:e.command,installationId:e.installation_id,commandTaxonomy:e.command_taxonomy,exitCode:d,errorCode:c,errorCategory:l,commandResolution:u,resolutionStage:f})}};await Rc(e.global_pm_root,p);let m=GH(e,{...t,exit_code:d,error_code:c,error_category:l},s,a,i);return m&&await JH(e.global_pm_root,m),!0},e.global_pm_root,Np))return;Up(e.global_pm_root,e.endpoint,e.retention_days)}catch{}}async function pG(e){if(!ft().telemetry_disabled)try{let t=Rt(process.cwd());if(!(await ut(t)).telemetry.enabled)return;let n=await an(async()=>{let o=await Fp(t);if(!o)return null;let{installationId:i,captureLevel:s}=o,a=hT(e.pm_version),c=wT(e.global),l=Se(i,e.pm_root),d=Se(i,process.cwd()),u=Z(),f=Pp(hp({ok:!1,errorCode:e.error_code,errorMessage:e.error_message,exitCode:e.exit_code})),p=e.error_category??is(f),m=Mp(e.exit_code,!1),h=e.command.trim().length>0?e.command:"<unknown>",b=lo(h),w=e.command_resolution??uo({ok:!1,errorCode:f,errorCategory:p}),E=e.resolution_stage??"unknown",O={schema_version:xc,event_id:pt.randomUUID(),event_type:"command_error",occurred_at:u,installation_id:i,session_id:Dc,command:ue(h,"redacted"),payload:YH({captureLevel:s,pmVersion:a,sourceContext:c,command:h,commandTaxonomy:b,commandResolution:w,resolutionStage:E,args:e.args,options:e.options,pmRootHash:l,cwdHash:d,installationId:i,errorCode:f,errorCategory:p,exitCode:m,errorMessage:e.error_message})};return await Rc(t,O),o},t,Np);n&&Up(t,n.endpoint,n.retentionDays)}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]="d27383c3-03c8-51ff-98c5-700cc6c2c114")}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]="4426de97-62fc-594c-8ebf-39975ed5ed50")}catch{}})();var zp=[{target:"status",keys:["status"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag","tags"]},{target:"priority",keys:["priority"]},{target:"deadlineBefore",keys:["deadlineBefore"]},{target:"deadlineAfter",keys:["deadlineAfter"]},{target:"updatedAfter",keys:["updatedAfter"]},{target:"updatedBefore",keys:["updatedBefore"]},{target:"createdAfter",keys:["createdAfter"]},{target:"createdBefore",keys:["createdBefore"]},{target:"ids",keys:["ids"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"parent",keys:["parent"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"limit",keys:["limit"]},{target:"offset",keys:["offset"]},{target:"after",keys:["after"]},{target:"fields",keys:["fields"]},{target:"sort",keys:["sort"]},{target:"order",keys:["order"]},{target:"treeDepth",keys:["treeDepth","tree_depth"]}],Mc=[{target:"mode",keys:["mode"]},{target:"matchMode",keys:["matchMode","match_mode"]},{target:"minScore",keys:["minScore","min_score"]},{target:"semanticWeight",keys:["semanticWeight","semantic_weight"]},{target:"status",keys:["status"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag","tags"]},{target:"priority",keys:["priority"]},{target:"deadlineBefore",keys:["deadlineBefore"]},{target:"deadlineAfter",keys:["deadlineAfter"]},{target:"updatedAfter",keys:["updatedAfter"]},{target:"updatedBefore",keys:["updatedBefore"]},{target:"createdAfter",keys:["createdAfter"]},{target:"createdBefore",keys:["createdBefore"]},{target:"assignee",keys:["assignee"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"fields",keys:["fields"]},{target:"limit",keys:["limit"]},{target:"after",keys:["after"]}],mG=[{target:"view",keys:["view"]},{target:"date",keys:["date"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"limit",keys:["limit"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"status",keys:["status"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"include",keys:["include"]},{target:"recurrenceLookaheadDays",keys:["recurrenceLookaheadDays","recurrence_lookahead_days"]},{target:"recurrenceLookbackDays",keys:["recurrenceLookbackDays","recurrence_lookback_days"]},{target:"occurrenceLimit",keys:["occurrenceLimit","occurrence_limit"]},{target:"format",keys:["format"]}],Lc=[{target:"date",keys:["date"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"limit",keys:["limit","maxItems","max_items"]},{target:"after",keys:["after"]},{target:"format",keys:["format"]},{target:"depth",keys:["depth"]},{target:"fields",keys:["fields"]},{target:"activityLimit",keys:["activityLimit","activity_limit"]},{target:"staleThreshold",keys:["staleThreshold","stale_threshold"]},{target:"tokenBudget",keys:["tokenBudget","token_budget"]}],Fc=[{target:"type",keys:["type"]},{target:"tag",keys:["tag"]},{target:"priority",keys:["priority"]},{target:"assignee",keys:["assignee"]},{target:"assigneeFilter",keys:["assigneeFilter","assignee_filter"]},{target:"sprint",keys:["sprint"]},{target:"release",keys:["release"]},{target:"parent",keys:["parent"]},{target:"limit",keys:["limit"]},{target:"blockedLimit",keys:["blockedLimit","blocked_limit"]},{target:"format",keys:["format"]},{target:"tokenBudget",keys:["tokenBudget","token_budget"]}],qp=[{target:"id",keys:["id"]},{target:"op",keys:["op"]},{target:"author",keys:["author"]},{target:"from",keys:["from"]},{target:"to",keys:["to"]},{target:"limit",keys:["limit"]}];function Gt(e,t){for(let r of t.keys){let n=e[r];if(typeof n=="string")return n}}function $c(e,t){for(let r of t.keys)if(Object.hasOwn(e,r))return e[r]}function jc(e,t){let r=[];for(let n of t.keys){let o=e[n];Array.isArray(o)&&r.push(...o.filter(i=>typeof i=="string"))}return r.length>0?r:void 0}(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]="76a156ee-aebd-547e-b4c2-1ed1b172fd6b")}catch{}})();var Hp=[{target:"title",keys:["title"],option:"--title, -t <value>",description:"Item title [required] (or pass title as the first positional argument)"},{target:"id",keys:["id"],option:"--id <value>",description:"Explicit item id (normalized with the configured id_prefix)"},{target:"description",keys:["description"],option:"--description, -d <value>",description:"Item description (allow empty string)"},{target:"type",keys:["type"],option:"--type <value>",description:"Item type (built-ins plus any configured custom types)"},{target:"template",keys:["template"],option:"--template <value>",description:"Apply named create template defaults before explicit flags"},{target:"createMode",keys:["createMode","create_mode"],option:"--create-mode <value>",description:"Create required-option policy mode: strict|progressive",aliasOptions:[{option:"--create_mode <value>",description:"Alias for --create-mode"}]},{target:"schedulePreset",keys:["schedulePreset","schedule_preset"],option:"--schedule-preset <value>",description:"Scheduling preset for Reminder|Meeting|Event: lightweight",aliasOptions:[{option:"--schedule_preset <value>",description:"Alias for --schedule-preset"}]},{target:"status",keys:["status"],option:"--status, -s <value>",description:"Item status"},{target:"closeReason",keys:["closeReason","close_reason"],option:"--close-reason <value>",description:"Close reason when creating directly in a terminal status",aliasOptions:[{option:"--close_reason <value>",description:"Alias for --close-reason"}]},{target:"completedAt",keys:["completedAt","completed_at"],option:"--completed-at <value>",description:"Actual completion time for a terminal imported item",aliasOptions:[{option:"--completed_at <value>",description:"Alias for --completed-at"}]},{target:"priority",keys:["priority"],option:"--priority, -p <value>",description:"Priority 0..4"},{target:"tags",keys:["tags"],option:"--tags <value>",description:"Comma-separated tags"},{target:"addTags",keys:["addTags","add_tags"],option:"--add-tags <value>",description:"Add tags additively on top of --tags (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--add_tags <value>",description:"Alias for --add-tags"}]},{target:"body",keys:["body"],option:"--body, -b <value>",description:"Item markdown body (allow empty string)"},{target:"deadline",keys:["deadline"],option:"--deadline <value>",description:"Deadline (ISO/date string or relative +6h/+1d/+2w/+6m)"},{target:"estimatedMinutes",keys:["estimate","estimatedMinutes","estimated_minutes"],option:"--estimate, --estimated-minutes <value>",description:"Estimated minutes",aliasOptions:[{option:"--estimated_minutes <value>",description:"Alias for --estimated-minutes"}]},{target:"acceptanceCriteria",keys:["acceptanceCriteria","acceptance_criteria","ac"],option:"--acceptance-criteria <value>",description:"Acceptance criteria (repeatable; values join with '; '; allow empty string)",repeatable:!0,aliasOptions:[{option:"--acceptance_criteria <value>",description:"Alias for --acceptance-criteria"},{option:"--ac <value>",description:"Alias for --acceptance-criteria"}]},{target:"definitionOfReady",keys:["definitionOfReady","definition_of_ready"],option:"--definition-of-ready <value>",description:"Definition of ready (allow empty string)",aliasOptions:[{option:"--definition_of_ready <value>",description:"Alias for --definition-of-ready"}]},{target:"order",keys:["order"],option:"--order <value>",description:"Planning order/rank integer"},{target:"rank",keys:["rank"],option:"--rank <value>",description:"Alias for --order"},{target:"goal",keys:["goal"],option:"--goal <value>",description:"Goal identifier"},{target:"objective",keys:["objective"],option:"--objective <value>",description:"Objective identifier"},{target:"value",keys:["value"],option:"--value <value>",description:"Business value summary"},{target:"impact",keys:["impact"],option:"--impact <value>",description:"Business impact summary"},{target:"outcome",keys:["outcome"],option:"--outcome <value>",description:"Expected outcome summary"},{target:"whyNow",keys:["whyNow","why_now"],option:"--why-now <value>",description:"Why-now rationale",aliasOptions:[{option:"--why_now <value>",description:"Alias for --why-now"}]},{target:"author",keys:["author"],option:"--author <value>",description:"Mutation author"},{target:"message",keys:["message"],option:"--message <value>",description:"History message (allow empty string)"},{target:"assignee",keys:["assignee"],option:"--assignee <value>",description:"Item assignee"},{target:"parent",keys:["parent"],option:"--parent <value>",description:"Parent item ID"},{target:"allowMissingParent",keys:["allowMissingParent","allow_missing_parent"],option:"--allow-missing-parent",description:"Allow creating with an unresolved parent reference and emit a validation warning"},{target:"allowUnresolvedDeps",keys:["allowUnresolvedDeps","allow_unresolved_deps"],option:"--allow-unresolved-deps",description:"Allow unresolved local dependency targets and emit explicit warning receipts"},{target:"reviewer",keys:["reviewer"],option:"--reviewer <value>",description:"Reviewer"},{target:"risk",keys:["risk"],option:"--risk <value>",description:"Risk level: low|med|medium|high|critical (med persists as medium)"},{target:"confidence",keys:["confidence"],option:"--confidence <value>",description:"Confidence level: 0..100|low|med|medium|high (med persists as medium)"},{target:"sprint",keys:["sprint"],option:"--sprint <value>",description:"Sprint identifier"},{target:"release",keys:["release"],option:"--release <value>",description:"Release identifier"},{target:"blockedBy",keys:["blockedBy","blocked_by"],option:"--blocked-by <value>",description:"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",aliasOptions:[{option:"--blocked_by <value>",description:"Alias for --blocked-by"}]},{target:"blockedReason",keys:["blockedReason","blocked_reason"],option:"--blocked-reason <value>",description:"Blocked reason",aliasOptions:[{option:"--blocked_reason <value>",description:"Alias for --blocked-reason"}]},{target:"unblockNote",keys:["unblockNote","unblock_note"],option:"--unblock-note <value>",description:"Unblock rationale note",aliasOptions:[{option:"--unblock_note <value>",description:"Alias for --unblock-note"}]},{target:"reporter",keys:["reporter"],option:"--reporter <value>",description:"Issue reporter"},{target:"severity",keys:["severity"],option:"--severity <value>",description:"Issue severity: low|med|medium|high|critical (med persists as medium)"},{target:"environment",keys:["environment"],option:"--environment <value>",description:"Issue environment context"},{target:"reproSteps",keys:["reproSteps","repro_steps"],option:"--repro-steps <value>",description:"Issue reproduction steps",aliasOptions:[{option:"--repro_steps <value>",description:"Alias for --repro-steps"}]},{target:"resolution",keys:["resolution"],option:"--resolution <value>",description:"Issue resolution summary"},{target:"expectedResult",keys:["expectedResult","expected_result","expected"],option:"--expected-result <value>",description:"Issue expected behavior",aliasOptions:[{option:"--expected_result <value>",description:"Alias for --expected-result"},{option:"--expected <value>",description:"Short alias for --expected-result"}]},{target:"actualResult",keys:["actualResult","actual_result","actual"],option:"--actual-result <value>",description:"Issue observed behavior",aliasOptions:[{option:"--actual_result <value>",description:"Alias for --actual-result"},{option:"--actual <value>",description:"Short alias for --actual-result"}]},{target:"affectedVersion",keys:["affectedVersion","affected_version"],option:"--affected-version <value>",description:"Affected version identifier",aliasOptions:[{option:"--affected_version <value>",description:"Alias for --affected-version"}]},{target:"fixedVersion",keys:["fixedVersion","fixed_version"],option:"--fixed-version <value>",description:"Fixed version identifier",aliasOptions:[{option:"--fixed_version <value>",description:"Alias for --fixed-version"}]},{target:"component",keys:["component"],option:"--component <value>",description:"Issue component ownership"},{target:"regression",keys:["regression"],option:"--regression [value]",description:"Regression marker; bare flag means true, or pass true|false|1|0"},{target:"customerImpact",keys:["customerImpact","customer_impact"],option:"--customer-impact <value>",description:"Customer impact summary",aliasOptions:[{option:"--customer_impact <value>",description:"Alias for --customer-impact"}]},{target:"dep",keys:["dep"],option:"--dep <value>",description:"Seed dependency entry (key=value CSV, markdown key:value lines, or - for stdin; repeatable)",repeatable:!0},{target:"typeOption",keys:["typeOption","type_option"],option:"--type-option <value>",description:"Type option key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--type_option <value>",description:"Alias for --type-option"}]},{target:"field",keys:["field"],option:"--field <name=value>",description:"Set a field declared by an active extension registerItemFields registration (repeatable)",repeatable:!0},{target:"unset",keys:["unset"],option:"--unset <field>",description:"Clear scalar metadata field by name (repeatable)",repeatable:!0},{target:"reminder",keys:["reminder"],option:"--reminder <value>",description:"Seed reminder entry at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"event",keys:["event"],option:"--event <value>",description:"Seed event entry start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"comment",keys:["comment"],option:"--comment <value>",description:"Seed comment entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"note",keys:["note"],option:"--note <value>",description:"Seed note entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"learning",keys:["learning"],option:"--learning <value>",description:"Seed learning entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0},{target:"file",keys:["file","linkedFile"],option:"--file <value>",description:"Seed linked file entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--linked-file <value>",description:"Alias for --file (cross-surface name)"}]},{target:"test",keys:["test","linkedTest"],option:"--test <value>",description:"Seed linked test entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--linked-test <value>",description:"Alias for --test (cross-surface name)"}]},{target:"doc",keys:["doc"],option:"--doc <value>",description:"Seed linked doc entry (CSV/markdown pairs or - for stdin; repeatable)",repeatable:!0}],Gp=Hp.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),Uc=Hp.filter(e=>e.repeatable===!0).map(e=>({target:e.target,keys:e.keys})),Bp=[{target:"title",keys:["title"],option:"--title, -t <value>",description:"Set title"},{target:"description",keys:["description"],option:"--description, -d <value>",description:"Set description"},{target:"body",keys:["body"],option:"--body, -b <value>",description:"Set body (allow empty string)"},{target:"status",keys:["status"],option:"--status, -s <value>",description:"Set status (use close command for closed)"},{target:"closeReason",keys:["closeReason","close_reason"],option:"--close-reason <value>",description:"Set close reason",aliasOptions:[{option:"--close_reason <value>",description:"Alias for --close-reason"}]},{target:"priority",keys:["priority"],option:"--priority, -p <value>",description:"Set priority"},{target:"type",keys:["type"],option:"--type <value>",description:"Set type"},{target:"tags",keys:["tags"],option:"--tags <value>",description:"Set comma-separated tags (replaces existing). Use --add-tags / --remove-tags to mutate additively."},{target:"addTags",keys:["addTags","add_tags"],option:"--add-tags <value>",description:"Add tags to the existing list without replacing it (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--add_tags <value>",description:"Alias for --add-tags"}]},{target:"removeTags",keys:["removeTags","remove_tags"],option:"--remove-tags <value>",description:"Remove tags from the existing list (repeatable; CSV accepted)",repeatable:!0,aliasOptions:[{option:"--remove_tags <value>",description:"Alias for --remove-tags"}]},{target:"deadline",keys:["deadline"],option:"--deadline <value>",description:"Set deadline (ISO/date string or relative)"},{target:"estimatedMinutes",keys:["estimate","estimatedMinutes","estimated_minutes"],option:"--estimate, --estimated-minutes <value>",description:"Set estimated minutes",aliasOptions:[{option:"--estimated_minutes <value>",description:"Alias for --estimated-minutes"}]},{target:"acceptanceCriteria",keys:["acceptanceCriteria","acceptance_criteria","ac"],option:"--acceptance-criteria <value>",description:"Replace the complete acceptance-criteria list (repeatable values join with '; '); use --remove-ac plus --add-ac for one-entry repair",repeatable:!0,aliasOptions:[{option:"--acceptance_criteria <value>",description:"Alias for --acceptance-criteria"},{option:"--ac <value>",description:"Alias for --acceptance-criteria"}]},{target:"addAc",keys:["addAc","add_ac"],option:"--add-ac <value>",description:"Add one semicolon-free acceptance criterion without replacing the existing list (repeatable)",repeatable:!0,aliasOptions:[{option:"--add_ac <value>",description:"Alias for --add-ac"}]},{target:"removeAc",keys:["removeAc","remove_ac"],option:"--remove-ac <value>",description:"Remove one semicolon-free acceptance criterion by exact text match; fails if any selector is unmatched (repeatable)",repeatable:!0,aliasOptions:[{option:"--remove_ac <value>",description:"Alias for --remove-ac"}]},{target:"definitionOfReady",keys:["definitionOfReady","definition_of_ready"],option:"--definition-of-ready <value>",description:"Set definition of ready",aliasOptions:[{option:"--definition_of_ready <value>",description:"Alias for --definition-of-ready"}]},{target:"order",keys:["order"],option:"--order <value>",description:"Set planning order/rank integer"},{target:"rank",keys:["rank"],option:"--rank <value>",description:"Alias for --order"},{target:"goal",keys:["goal"],option:"--goal <value>",description:"Set goal identifier"},{target:"objective",keys:["objective"],option:"--objective <value>",description:"Set objective identifier"},{target:"value",keys:["value"],option:"--value <value>",description:"Set business value summary"},{target:"impact",keys:["impact"],option:"--impact <value>",description:"Set business impact summary"},{target:"outcome",keys:["outcome"],option:"--outcome <value>",description:"Set expected outcome summary"},{target:"whyNow",keys:["whyNow","why_now"],option:"--why-now <value>",description:"Set why-now rationale",aliasOptions:[{option:"--why_now <value>",description:"Alias for --why-now"}]},{target:"author",keys:["author"],option:"--author <value>",description:"Mutation author"},{target:"message",keys:["message"],option:"--message <value>",description:"Mutation message"},{target:"assignee",keys:["assignee"],option:"--assignee <value>",description:"Set assignee"},{target:"parent",keys:["parent"],option:"--parent <value>",description:"Set parent item ID"},{target:"allowMissingParent",keys:["allowMissingParent","allow_missing_parent"],option:"--allow-missing-parent",description:"Allow updating to an unresolved parent reference and emit a validation warning"},{target:"allowUnresolvedDeps",keys:["allowUnresolvedDeps","allow_unresolved_deps"],option:"--allow-unresolved-deps",description:"Allow unresolved local dependency targets and emit explicit warning receipts"},{target:"completedAt",keys:["completedAt","completed_at"],option:"--completed-at <value>",description:"Correct the actual completion timestamp on a terminal item"},{target:"reviewer",keys:["reviewer"],option:"--reviewer <value>",description:"Set reviewer"},{target:"risk",keys:["risk"],option:"--risk <value>",description:"Set risk level: low|med|medium|high|critical (med persists as medium)"},{target:"confidence",keys:["confidence"],option:"--confidence <value>",description:"Set confidence level: 0..100|low|med|medium|high (med persists as medium)"},{target:"sprint",keys:["sprint"],option:"--sprint <value>",description:"Set sprint identifier"},{target:"release",keys:["release"],option:"--release <value>",description:"Set release identifier"},{target:"blockedBy",keys:["blockedBy","blocked_by"],option:"--blocked-by <value>",description:"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",aliasOptions:[{option:"--blocked_by <value>",description:"Alias for --blocked-by"}]},{target:"blockedReason",keys:["blockedReason","blocked_reason"],option:"--blocked-reason <value>",description:"Set blocked reason",aliasOptions:[{option:"--blocked_reason <value>",description:"Alias for --blocked-reason"}]},{target:"unblockNote",keys:["unblockNote","unblock_note"],option:"--unblock-note <value>",description:"Set unblock rationale note",aliasOptions:[{option:"--unblock_note <value>",description:"Alias for --unblock-note"}]},{target:"reporter",keys:["reporter"],option:"--reporter <value>",description:"Set issue reporter"},{target:"severity",keys:["severity"],option:"--severity <value>",description:"Set issue severity: low|med|medium|high|critical (med persists as medium)"},{target:"environment",keys:["environment"],option:"--environment <value>",description:"Set issue environment context"},{target:"reproSteps",keys:["reproSteps","repro_steps"],option:"--repro-steps <value>",description:"Set issue reproduction steps",aliasOptions:[{option:"--repro_steps <value>",description:"Alias for --repro-steps"}]},{target:"resolution",keys:["resolution"],option:"--resolution <value>",description:"Set issue resolution summary"},{target:"expectedResult",keys:["expectedResult","expected_result","expected"],option:"--expected-result <value>",description:"Set issue expected behavior",aliasOptions:[{option:"--expected_result <value>",description:"Alias for --expected-result"},{option:"--expected <value>",description:"Short alias for --expected-result"}]},{target:"actualResult",keys:["actualResult","actual_result","actual"],option:"--actual-result <value>",description:"Set issue observed behavior",aliasOptions:[{option:"--actual_result <value>",description:"Alias for --actual-result"},{option:"--actual <value>",description:"Short alias for --actual-result"}]},{target:"affectedVersion",keys:["affectedVersion","affected_version"],option:"--affected-version <value>",description:"Set affected version identifier",aliasOptions:[{option:"--affected_version <value>",description:"Alias for --affected-version"}]},{target:"fixedVersion",keys:["fixedVersion","fixed_version"],option:"--fixed-version <value>",description:"Set fixed version identifier",aliasOptions:[{option:"--fixed_version <value>",description:"Alias for --fixed-version"}]},{target:"component",keys:["component"],option:"--component <value>",description:"Set issue component ownership"},{target:"regression",keys:["regression"],option:"--regression [value]",description:"Set regression marker; bare flag means true, or pass true|false|1|0"},{target:"customerImpact",keys:["customerImpact","customer_impact"],option:"--customer-impact <value>",description:"Set customer impact summary",aliasOptions:[{option:"--customer_impact <value>",description:"Alias for --customer-impact"}]},{target:"dep",keys:["dep"],option:"--dep <value>",description:"Add dependency entries id=<id>,kind=<value>,author=<value>,created_at=<iso|now>,source_kind=<value> (repeatable)",repeatable:!0},{target:"depRemove",keys:["depRemove","dep_remove"],option:"--dep-remove <value>",description:"Remove by dependency id or exact row signature (repeatable)",repeatable:!0,aliasOptions:[{option:"--dep_remove <value>",description:"Alias for --dep-remove"}]},{target:"comment",keys:["comment"],option:"--comment <value>",description:"Append comment seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"note",keys:["note"],option:"--note <value>",description:"Append note seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"learning",keys:["learning"],option:"--learning <value>",description:"Append learning seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"file",keys:["file","linkedFile"],option:"--file <value>",description:"Append linked file path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--linked-file <value>",description:"Alias for --file (cross-surface name)"}]},{target:"test",keys:["test","linkedTest"],option:"--test <value>",description:"Append linked test command=<value>,path=<value>,scope=<project|global>,timeout_seconds=<n>,pm_context_mode=<schema|tracker|auto> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--linked-test <value>",description:"Alias for --test (cross-surface name)"}]},{target:"doc",keys:["doc"],option:"--doc <value>",description:"Append linked doc path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"reminder",keys:["reminder"],option:"--reminder <value>",description:"Set reminders at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"event",keys:["event"],option:"--event <value>",description:"Set events start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)",repeatable:!0},{target:"typeOption",keys:["typeOption","type_option"],option:"--type-option <value>",description:"Set type options key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)",repeatable:!0,aliasOptions:[{option:"--type_option <value>",description:"Alias for --type-option"}]},{target:"field",keys:["field"],option:"--field <name=value>",description:"Set a field declared by an active extension registerItemFields registration (repeatable)",repeatable:!0},{target:"unset",keys:["unset"],option:"--unset <field>",description:"Clear scalar metadata field by name (repeatable)",repeatable:!0}],Vp=Bp.filter(e=>e.repeatable!==!0).map(e=>({target:e.target,keys:e.keys})),zc=Bp.filter(e=>e.repeatable===!0).map(e=>({target:e.target,keys:e.keys}));(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]="35c88fec-b8c2-5478-b9a6-ecaebb736b2e")}catch{}})();function _G(e,t){let r=[];for(let{param:n,flag:o}of e){let i=`--${n.replace(/([a-z\d])([A-Z])/gu,"$1-$2").toLowerCase()}`,s=t.find(a=>a.flag===o);if(!s){r.push({code:"missing_cli_flag",parameter:n,flag:o,parameter_flag:i});continue}s.flag!==i&&!s.aliases?.includes(i)&&r.push({code:"missing_parameter_alias",parameter:n,flag:o,parameter_flag:i})}return{ok:r.length===0,parameter_count:e.length,cli_flag_count:t.length,findings:r}}function ge(e){return e.map(t=>({...t}))}var Wp=[{param:"status",flag:"--status"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"deadlineBefore",flag:"--deadline-before"},{param:"deadlineAfter",flag:"--deadline-after"}],PT=[{param:"updatedAfter",flag:"--updated-after"},{param:"updatedBefore",flag:"--updated-before"},{param:"createdAfter",flag:"--created-after"},{param:"createdBefore",flag:"--created-before"}],gG=[{param:"today",flag:"--today",booleanish:!0},{param:"recent",flag:"--recent",booleanish:!0},...PT],MT=[{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"parent",flag:"--parent"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"}],yG=[{param:"assignee",flag:"--assignee"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"parent",flag:"--parent"}],hG=[...Wp,...MT],LT=[{param:"filterReviewerMissing",flag:"--filter-reviewer-missing"},{param:"filterRiskMissing",flag:"--filter-risk-missing"},{param:"filterConfidenceMissing",flag:"--filter-confidence-missing"},{param:"filterSprintMissing",flag:"--filter-sprint-missing"},{param:"filterReleaseMissing",flag:"--filter-release-missing"}],bG=[{param:"filterAcMissing",flag:"--filter-ac-missing"},{param:"filterEstimatesMissing",flag:"--filter-estimates-missing"},{param:"filterResolutionMissing",flag:"--filter-resolution-missing"},{param:"filterMetadataMissing",flag:"--filter-metadata-missing"}],FT=[{param:"hasNotes",flag:"--has-notes"},{param:"noNotes",flag:"--no-notes"},{param:"hasLearnings",flag:"--has-learnings"},{param:"noLearnings",flag:"--no-learnings"},{param:"hasFiles",flag:"--has-files"},{param:"noFiles",flag:"--no-files"},{param:"filterFilesMissing",flag:"--filter-files-missing"},{param:"hasDocs",flag:"--has-docs"},{param:"noDocs",flag:"--no-docs"},{param:"filterDocsMissing",flag:"--filter-docs-missing"},{param:"hasTests",flag:"--has-tests"},{param:"noTests",flag:"--no-tests"},{param:"hasComments",flag:"--has-comments"},{param:"noComments",flag:"--no-comments"},{param:"hasDeps",flag:"--has-deps"},{param:"noDeps",flag:"--no-deps"},{param:"hasBody",flag:"--has-body"},{param:"emptyBody",flag:"--empty-body"},{param:"hasLinkedCommand",flag:"--has-linked-command"},{param:"noLinkedCommand",flag:"--no-linked-command"}],Yp=[{param:"for",flag:"--for"},{param:"tokenBudget",flag:"--token-budget"},...ge(Wp),...ge(gG),{param:"ids",flag:"--ids"},...ge(MT),...ge(bG),...ge(LT),...ge(FT),{param:"limit",flag:"--limit"},{param:"offset",flag:"--offset"},{param:"after",flag:"--after"},{param:"fields",flag:"--fields"},{param:"sort",flag:"--sort"},{param:"order",flag:"--order"},{param:"tree",flag:"--tree"},{param:"treeDepth",flag:"--tree-depth"}],Kp=[{param:"groupBy",flag:"--group-by"},{param:"setMode",flag:"--set-mode"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"sum",flag:"--sum"},{param:"avg",flag:"--avg"},...ge(hG)],Xp=[{param:"for",flag:"--for"},{param:"tokenBudget",flag:"--token-budget"},{param:"matchMode",flag:"--match-mode"},{param:"minScore",flag:"--min-score"},{param:"count",flag:"--count",booleanish:!0},{param:"semanticWeight",flag:"--semantic-weight"},...ge(Wp),...ge(PT),...ge(yG),...ge(LT),...ge(FT),{param:"fields",flag:"--fields"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"}],$T=[{param:"parent",flag:"--parent"},{param:"reviewer",flag:"--reviewer"},{param:"risk",flag:"--risk"},{param:"confidence",flag:"--confidence"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"blockedBy",flag:"--blocked-by"},{param:"blockedReason",flag:"--blocked-reason"},{param:"unblockNote",flag:"--unblock-note"},{param:"reporter",flag:"--reporter"},{param:"severity",flag:"--severity"},{param:"environment",flag:"--environment"},{param:"reproSteps",flag:"--repro-steps"},{param:"resolution",flag:"--resolution"},{param:"expectedResult",flag:"--expected-result"},{param:"actualResult",flag:"--actual-result"},{param:"affectedVersion",flag:"--affected-version"},{param:"fixedVersion",flag:"--fixed-version"},{param:"component",flag:"--component"},{param:"regression",flag:"--regression",booleanish:!0},{param:"customerImpact",flag:"--customer-impact"},{param:"definitionOfReady",flag:"--definition-of-ready",allowEmpty:!0},{param:"order",flag:"--order"},{param:"rank",flag:"--rank"},{param:"goal",flag:"--goal"},{param:"objective",flag:"--objective"},{param:"value",flag:"--value"},{param:"impact",flag:"--impact"},{param:"outcome",flag:"--outcome"},{param:"whyNow",flag:"--why-now"}],qc=ge($T),jT=[{param:"id",flag:"--id"},{param:"title",flag:"--title"},{param:"description",flag:"--description",allowEmpty:!0},{param:"type",flag:"--type"},{param:"template",flag:"--template"},{param:"createMode",flag:"--create-mode"},{param:"schedulePreset",flag:"--schedule-preset"},{param:"status",flag:"--status"},{param:"priority",flag:"--priority"},{param:"tags",flag:"--tags",allowEmpty:!0},{param:"addTags",flag:"--add-tags",repeatable:!0},{param:"body",flag:"--body",allowEmpty:!0},{param:"deadline",flag:"--deadline"},{param:"estimate",flag:"--estimate"},{param:"acceptanceCriteria",flag:"--acceptance-criteria",allowEmpty:!0},{param:"author",flag:"--author"},{param:"message",flag:"--message",allowEmpty:!0},{param:"assignee",flag:"--assignee"},{param:"allowMissingParent",flag:"--allow-missing-parent"},{param:"allowUnresolvedDeps",flag:"--allow-unresolved-deps"},{param:"allowDuplicate",flag:"--allow-duplicate",booleanish:!0},{param:"reminder",flag:"--reminder",repeatable:!0},{param:"event",flag:"--event",repeatable:!0},{param:"typeOption",flag:"--type-option",repeatable:!0},{param:"field",flag:"--field",repeatable:!0},{param:"dep",flag:"--dep",repeatable:!0},{param:"comment",flag:"--comment",repeatable:!0},{param:"note",flag:"--note",repeatable:!0},{param:"learning",flag:"--learning",repeatable:!0},{param:"linkedFile",flag:"--file",repeatable:!0},{param:"linkedTest",flag:"--test",repeatable:!0},{param:"doc",flag:"--doc",repeatable:!0},{param:"unset",flag:"--unset",repeatable:!0},{param:"clearDeps",flag:"--clear-deps"},{param:"clearComments",flag:"--clear-comments"},{param:"clearNotes",flag:"--clear-notes"},{param:"clearLearnings",flag:"--clear-learnings"},{param:"clearFiles",flag:"--clear-files"},{param:"clearTests",flag:"--clear-tests"},{param:"clearDocs",flag:"--clear-docs"},{param:"clearReminders",flag:"--clear-reminders"},{param:"clearEvents",flag:"--clear-events"},{param:"clearTypeOptions",flag:"--clear-type-options"}],Jp=ge(jT),UT=[{param:"title",flag:"--title"},{param:"description",flag:"--description",allowEmpty:!0},{param:"body",flag:"--body",allowEmpty:!0},{param:"status",flag:"--status"},{param:"closeReason",flag:"--close-reason"},{param:"completedAt",flag:"--completed-at"},{param:"priority",flag:"--priority"},{param:"type",flag:"--type"},{param:"tags",flag:"--tags",allowEmpty:!0},{param:"addTags",flag:"--add-tags",repeatable:!0},{param:"removeTags",flag:"--remove-tags",repeatable:!0},{param:"deadline",flag:"--deadline"},{param:"estimate",flag:"--estimate"},{param:"acceptanceCriteria",flag:"--acceptance-criteria",allowEmpty:!0},{param:"addAc",flag:"--add-ac",repeatable:!0},{param:"removeAc",flag:"--remove-ac",repeatable:!0},{param:"author",flag:"--author"},{param:"message",flag:"--message",allowEmpty:!0},{param:"assignee",flag:"--assignee"},{param:"allowMissingParent",flag:"--allow-missing-parent"},{param:"allowUnresolvedDeps",flag:"--allow-unresolved-deps"},{param:"dep",flag:"--dep",repeatable:!0},{param:"depRemove",flag:"--dep-remove",repeatable:!0},{param:"replaceDeps",flag:"--replace-deps"},{param:"replaceTests",flag:"--replace-tests"},{param:"replaceFiles",flag:"--replace-files"},{param:"replaceDocs",flag:"--replace-docs"},{param:"comment",flag:"--comment",repeatable:!0},{param:"note",flag:"--note",repeatable:!0},{param:"learning",flag:"--learning",repeatable:!0},{param:"linkedFile",flag:"--file",repeatable:!0},{param:"linkedTest",flag:"--test",repeatable:!0},{param:"doc",flag:"--doc",repeatable:!0},{param:"reminder",flag:"--reminder",repeatable:!0},{param:"event",flag:"--event",repeatable:!0},{param:"typeOption",flag:"--type-option",repeatable:!0},{param:"field",flag:"--field",repeatable:!0},{param:"unset",flag:"--unset",repeatable:!0},{param:"clearDeps",flag:"--clear-deps"},{param:"clearComments",flag:"--clear-comments"},{param:"clearNotes",flag:"--clear-notes"},{param:"clearLearnings",flag:"--clear-learnings"},{param:"clearFiles",flag:"--clear-files"},{param:"clearTests",flag:"--clear-tests"},{param:"clearDocs",flag:"--clear-docs"},{param:"clearReminders",flag:"--clear-reminders"},{param:"clearEvents",flag:"--clear-events"},{param:"clearTypeOptions",flag:"--clear-type-options"}],Zp=ge(UT),Qp=[{param:"filterStatus",flag:"--filter-status"},{param:"filterType",flag:"--filter-type"},{param:"filterTag",flag:"--filter-tag"},{param:"filterPriority",flag:"--filter-priority"},{param:"filterDeadlineBefore",flag:"--filter-deadline-before"},{param:"filterDeadlineAfter",flag:"--filter-deadline-after"},{param:"filterUpdatedAfter",flag:"--filter-updated-after"},{param:"filterUpdatedBefore",flag:"--filter-updated-before"},{param:"filterCreatedAfter",flag:"--filter-created-after"},{param:"filterCreatedBefore",flag:"--filter-created-before"},{param:"filterAssignee",flag:"--filter-assignee"},{param:"filterAssigneeFilter",flag:"--filter-assignee-filter"},{param:"filterParent",flag:"--filter-parent"},{param:"filterSprint",flag:"--filter-sprint"},{param:"filterRelease",flag:"--filter-release"},{param:"filterAcMissing",flag:"--filter-ac-missing"},{param:"filterEstimatesMissing",flag:"--filter-estimates-missing"},{param:"filterResolutionMissing",flag:"--filter-resolution-missing"},{param:"filterMetadataMissing",flag:"--filter-metadata-missing"},{param:"filterReviewerMissing",flag:"--filter-reviewer-missing"},{param:"filterRiskMissing",flag:"--filter-risk-missing"},{param:"filterConfidenceMissing",flag:"--filter-confidence-missing"},{param:"filterSprintMissing",flag:"--filter-sprint-missing"},{param:"filterReleaseMissing",flag:"--filter-release-missing"},{param:"filterHasNotes",flag:"--filter-has-notes"},{param:"filterNoNotes",flag:"--filter-no-notes"},{param:"filterHasLearnings",flag:"--filter-has-learnings"},{param:"filterNoLearnings",flag:"--filter-no-learnings"},{param:"filterHasFiles",flag:"--filter-has-files"},{param:"filterNoFiles",flag:"--filter-no-files"},{param:"filterHasDocs",flag:"--filter-has-docs"},{param:"filterNoDocs",flag:"--filter-no-docs"},{param:"filterHasTests",flag:"--filter-has-tests"},{param:"filterNoTests",flag:"--filter-no-tests"},{param:"filterHasComments",flag:"--filter-has-comments"},{param:"filterNoComments",flag:"--filter-no-comments"},{param:"filterHasDeps",flag:"--filter-has-deps"},{param:"filterNoDeps",flag:"--filter-no-deps"},{param:"filterHasBody",flag:"--filter-has-body"},{param:"filterEmptyBody",flag:"--filter-empty-body"},{param:"filterHasLinkedCommand",flag:"--filter-has-linked-command"},{param:"filterNoLinkedCommand",flag:"--filter-no-linked-command"},{param:"ids",flag:"--ids"},{param:"limit",flag:"--limit"},{param:"offset",flag:"--offset"}],em=ge(Qp),tm=ge(Qp),wG=[{param:"view",flag:"--view"},{param:"date",flag:"--date"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"status",flag:"--status"},{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"include",flag:"--include"},{param:"recurrenceLookaheadDays",flag:"--recurrence-lookahead-days"},{param:"recurrenceLookbackDays",flag:"--recurrence-lookback-days"},{param:"occurrenceLimit",flag:"--occurrence-limit"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"format",flag:"--format"}],rm=[{param:"id",flag:"--id"},{param:"op",flag:"--op"},{param:"author",flag:"--author"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"limit",flag:"--limit"},{param:"unbounded",flag:"--unbounded"},{param:"compact",flag:"--compact"},{param:"raw",flag:"--raw"},{param:"full",flag:"--full"},{param:"provenance",flag:"--provenance"},{param:"provenanceSummary",flag:"--provenance-summary"},{param:"harness",flag:"--harness",repeatable:!0},{param:"agentInstance",flag:"--agent-instance",repeatable:!0},{param:"provenanceFilter",flag:"--provenance-filter",repeatable:!0}],nm=[{param:"for",flag:"--for"},{param:"date",flag:"--date"},{param:"from",flag:"--from"},{param:"to",flag:"--to"},{param:"type",flag:"--type"},{param:"tag",flag:"--tag"},{param:"priority",flag:"--priority"},{param:"assignee",flag:"--assignee"},{param:"assigneeFilter",flag:"--assignee-filter"},{param:"sprint",flag:"--sprint"},{param:"release",flag:"--release"},{param:"parent",flag:"--parent"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"format",flag:"--format"},{param:"depth",flag:"--depth"},{param:"fields",flag:"--fields"},{param:"section",flag:"--section",repeatable:!0},{param:"activityLimit",flag:"--activity-limit"},{param:"staleThreshold",flag:"--stale-threshold"},{param:"tokenBudget",flag:"--token-budget"},{param:"explainRanking",flag:"--explain-ranking"},{param:"noTags",flag:"--no-tags"},{param:"noExtensionHealth",flag:"--no-extension-health"}],vG=[{param:"format",flag:"--format"},{param:"maxDepth",flag:"--max-depth"},{param:"collapse",flag:"--collapse"},{param:"summary",flag:"--summary"},{param:"nodeLimit",flag:"--node-limit"},{param:"edgeLimit",flag:"--edge-limit"},{param:"tokenBudget",flag:"--token-budget"},{param:"cursor",flag:"--cursor"},{param:"direction",flag:"--direction"},{param:"kind",flag:"--kind",repeatable:!0}],EG=[{param:"kind",flag:"--kind",repeatable:!0},{param:"maxDepth",flag:"--max-depth"},{param:"limit",flag:"--limit"},{param:"after",flag:"--after"},{param:"direction",flag:"--direction"},{param:"maxPaths",flag:"--max-paths"},{param:"sample",flag:"--sample"},{param:"exemptIsolate",flag:"--exempt-isolate",repeatable:!0},{param:"exemptIsolateType",flag:"--exempt-isolate-type",repeatable:!0},{param:"saveBaseline",flag:"--save-baseline"},{param:"rebuild",flag:"--rebuild"},{param:"clear",flag:"--clear"},{param:"summary",flag:"--summary"}];(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]="733ce7b1-de7b-53b9-83bb-deefd930d8ec")}catch{}})();var im=["item","list","context","search","graph","history","workspace","package","ops","plan","contracts","help"],TG=["acknowledge","activate","add","adopt","adopt-all","catalog","compact","complete","create","deactivate","delete","describe","doctor","edit","explore","import","init","inspect","install","list","manage","migrate","mutate","read","redact","reload","remove","reopen","repair","restore","run","show","uninstall","upgrade","verify"];function T(e,t,r,n={}){return{name:e,required:r,variadic:n.variadic===!0,value_kind:t,polymorphic:n.polymorphic===!0}}function zT(e){let t=e.replaceAll("-"," ");return`${t.charAt(0).toUpperCase()}${t.slice(1)}`}var K=T("id","item_id",!0),ji=T("id","item_id",!1),Ui=T("text","string",!1),zi=T("plan-id","item_id",!0),qT=T("step","string",!0),kG=["--acceptance-criteria","--actual-result","--affected-version","--assignee","--blocked-by","--blocked-reason","--blocks","--body","--claim","--comment","--component","--confidence","--create-mode","--customer-impact","--deadline","--definition-of-ready","--description","--doc","--environment","--estimate","--event","--expected-result","--fixed-version","--file","--from-search","--goal","--harness","--impact","--learning","--message","--mode","--note","--objective","--order","--outcome","--parent","--priority","--rank","--related","--release","--reminder","--reporter","--repro-steps","--resolution","--resume-context","--reviewer","--risk","--scope","--severity","--sprint","--status","--step","--step-blocked-reason","--step-body","--step-evidence","--step-owner","--step-replacement","--step-status","--step-title","--tags","--template","--test","--title","--type-option","--unblock-note","--value","--why-now"],om=["--allow-multiple-active","--depends-on","--file","--force","--message","--step-blocked-reason","--step-body","--step-evidence","--step-owner","--step-status","--step-title","--test"],AG={"update-step":"Update one declared Plan step.","complete-step":"Complete one declared Plan step.","block-step":"Block one declared Plan step.","remove-step":"Remove one declared Plan step.",link:"Link one dependency to a declared Plan step.",unlink:"Unlink one dependency from a declared Plan step."},ln=[{command:"plan create",parent:"plan",action:"create",slots:[T("title","string",!1,{polymorphic:!0})],accepted_flags:kG,description:"Create a Plan item and optionally seed its ordered steps.",example:'pm plan create --title "Refactor lock retry"'},{command:"plan show",parent:"plan",action:"show",slots:[zi],accepted_flags:["--depth","--fields"],description:"Read one Plan item with a bounded plan projection.",example:"pm plan show pm-a1b2 --depth standard"},{command:"plan add-step",parent:"plan",action:"add-step",slots:[zi],accepted_flags:om,description:"Append one ordered step to a Plan item.",example:'pm plan add-step pm-a1b2 --step-title "Run tests"'},...Object.entries(AG).map(([e,t])=>({command:`plan ${e}`,parent:"plan",action:e,slots:[zi,qT],accepted_flags:om,description:t,example:`pm plan ${e} pm-a1b2 plan-step-001`})),{command:"plan reorder-step",parent:"plan",action:"reorder-step",slots:[zi,qT,T("new-order","integer",!0)],accepted_flags:["--force","--message"],description:"Move one Plan step to a declared integer order.",example:"pm plan reorder-step pm-a1b2 plan-step-001 2"},...["decision","discovery","validation","resume","approve","materialize"].map(e=>({command:`plan ${e}`,parent:"plan",action:e,slots:[zi],accepted_flags:om,description:`${zT(e)} for one Plan item.`,example:`pm plan ${e} pm-a1b2`})),...["list","show","put","remove"].map(e=>({command:`assurance ${e}`,parent:"assurance",action:e,slots:[T("kind","string",!0),...e==="list"?[]:[T("id","string",!0)]],accepted_flags:e==="put"?["--author","--definition","--message"]:e==="remove"?["--author","--message"]:[],description:`${zT(e)} assurance declarations by kind.`,example:e==="list"?"pm assurance list measurement":`pm assurance ${e} measurement example-id`})),{command:"assurance run",parent:"assurance",action:"run",slots:[T("gate-id","string",!0)],accepted_flags:["--dry-run","--trigger","--tree"],description:"Evaluate one assurance gate for a lifecycle trigger.",example:"pm assurance run tracker-context-quality --trigger ci --dry-run"},{command:"assurance verdicts",parent:"assurance",action:"verdicts",slots:[T("gate-id","string",!1)],accepted_flags:["--gate","--limit"],description:"List bounded assurance verdict history.",example:"pm assurance verdicts --limit 20"},...["presets","apply"].map(e=>({command:`assurance ${e}`,parent:"assurance",action:e,slots:[T("preset","string",e==="apply")],accepted_flags:["--author","--message","--owner"],description:e==="apply"?"Apply one assurance adoption preset.":"List available assurance adoption presets.",example:e==="apply"?"pm assurance apply software-delivery --owner <pm-item-id>":"pm assurance presets"})),{command:"assurance derive",parent:"assurance",action:"derive",slots:[],accepted_flags:["--apply","--author","--message","--owner"],description:"Derive assurance proposals from current project context.",example:"pm assurance derive --owner pm-a1b2"},{command:"assurance promote",parent:"assurance",action:"promote",slots:[T("assertion-id","string",!0)],accepted_flags:["--author","--enforcement","--message"],description:"Promote one assertion into a warning or blocking gate.",example:"pm assurance promote assertion-id --enforcement warn"},{command:"assurance risk",parent:"assurance",action:"risk",slots:[],accepted_flags:["--definition"],description:"Analyze bounded defect-recurrence risk for a proposed change.",example:`pm assurance risk --definition '{"change":{"files":[]}}'`},{command:"assurance lineages",parent:"assurance",action:"lineages",slots:[],accepted_flags:["--definition"],description:"Measure all recorded recurrence lineages with bounded evidence rows.",example:`pm assurance lineages --definition '{"policy":{"version":1,"evidence_epoch":"2026-01-01T00:00:00.000Z","families":[]}}'`},{command:"workspace position",parent:"workspace",action:"position",slots:[],accepted_flags:[],description:"Read bounded merge-fence, receipt, history-drift, and next-action readiness.",example:"pm workspace position"},{command:"workspace snapshot create",parent:"workspace snapshot",action:"create",slots:[T("name","string",!1)],accepted_flags:[],description:"Capture authoritative tracker state as an immutable snapshot.",example:"pm workspace snapshot create before-migration"},{command:"workspace snapshot list",parent:"workspace snapshot",action:"list",slots:[],accepted_flags:[],description:"List immutable workspace snapshots and named references.",example:"pm workspace snapshot list"},{command:"workspace snapshot inspect",parent:"workspace snapshot",action:"inspect",slots:[T("target","string",!0)],accepted_flags:[],description:"Inspect one workspace snapshot target.",example:"pm workspace snapshot inspect before-migration"},{command:"workspace snapshot restore",parent:"workspace snapshot",action:"restore",slots:[T("target","string",!0)],accepted_flags:["--author","--dry-run","--force","--message"],description:"Restore an immutable workspace snapshot with explicit recovery controls.",example:"pm workspace snapshot restore before-migration --dry-run"},{command:"workspace snapshot delete",parent:"workspace snapshot",action:"delete",slots:[T("target","string",!0)],accepted_flags:[],description:"Delete one workspace snapshot target.",example:"pm workspace snapshot delete before-migration"}],SG=[...ln].sort((e,t)=>t.command.length-e.command.length),BT=new Map([["append",[K,Ui]],["assurance",[T("action","action",!0),T("kind","string",!1),T("id","string",!1)]],["beads import",[T("file","string",!1)]],["changelog export",[T("file","string",!1)]],["claim",[ji]],["close",[K,Ui]],["close-task",[K,T("reason","string",!1)]],["comments",[K,Ui]],["completion",[T("shell","string",!1)]],["config",[T("scope","string",!1,{polymorphic:!0}),T("action","action",!1),T("key","string",!1),T("value","string",!1,{polymorphic:!0})]],["copy",[K]],["create",[T("type-or-title","string",!1,{polymorphic:!0}),T("title","string",!1)]],["delete",[K]],["deps",[K]],["docs",[K]],["event",[T("title","string",!0)]],["files",[K]],["files discover",[K]],["files lookup",[T("paths","string",!0,{variadic:!0})]],["focus",[ji]],["get",[K]],["graph",[T("subcommand","action",!0),ji,T("target","item_id",!1)]],["guide",[T("topic","string",!1)]],["history",[K]],["history-compact",[ji]],["history-redact",[K]],["history-repair",[ji]],["init",[T("prefix-or-path","string",!1,{polymorphic:!0})]],["item complete",[K,T("reason","string",!1)]],["item reopen",[K,T("reason","string",!0)]],["learnings",[K,Ui]],["meet",[T("title","string",!0)]],["merge",[T("subcommand","action",!0),T("artifact","string",!1),T("base","string",!1),T("ours","string",!1),T("theirs","string",!1)]],["notes",[K,Ui]],["package",[T("target","string",!1,{polymorphic:!0})]],["package list",[]],["package scaffold",[T("target","string",!0)]],["package upgrade",[T("target","string",!1)]],["packages",[T("target","string",!1,{polymorphic:!0})]],["packages list",[]],["packages scaffold",[T("target","string",!0)]],["packages upgrade",[T("target","string",!1)]],["pause-task",[K]],["plan",[T("subcommand","action",!0),T("id","item_id",!1,{polymorphic:!0}),T("step","string",!1),T("new-order","integer",!1)]],["profile",[T("subcommand","action",!0),T("name","string",!1)]],["release",[K]],["remind",[T("title","string",!0)]],["restore",[K,T("target","string",!0)]],["schema",[T("subcommand","action",!0),T("name","string",!1)]],["search-advanced",[T("keywords","string",!0,{variadic:!0})]],["search",[T("keywords","string",!0,{variadic:!0})]],["start-task",[K]],["telemetry",[T("namespace-or-subcommand","action",!1,{polymorphic:!0}),T("subcommand","action",!1)]],["test",[K]],["test-runs-worker",[T("runId","string",!0)]],["update",[K]],["workspace snapshot",[T("action","action",!0),T("target","string",!1)]],...["activate","adopt","deactivate","init","uninstall"].flatMap(e=>["extension","package","packages"].map(t=>[`${t} ${e}`,[T("target","string",!0)]])),...["describe"].flatMap(e=>["extension","package","packages"].map(t=>[`${t} ${e}`,[T("target","string",!1)]])),...["install"].flatMap(e=>["extension","package","packages"].map(t=>[`${t} ${e}`,[T("targets","string",!1,{variadic:!0})]])),["vcs abandon",[K]],["vcs create",[T("title","string",!0)]],["vcs merge",[K]],["vcs propose",[K]],["vcs ref-create",[T("name","string",!0)]],["vcs show",[K]]]);function cn(e){return e.trim().toLowerCase().replace(/\s+/gu," ")}function Wee(e){let t=cn(e),r=Vc.find(o=>o.command===t);if(r)return r;let n=sl(t)?.canonical;if(n)return Vc.find(o=>o.command===n)}function OG(e){let t=cn(e);return SG.find(r=>r.command===t||t.startsWith(`${r.command} `))}function Yee(e){return`Applicable flags: ${e.length>0?e.join(", "):"none"}.`}function N(e,t,r,n,o){return o.map(i=>({command:i,noun:e,target:t,disposition:r,owner:n}))}var Bc=[...N("item","item","target_noun","pm-pbyu",["item","item complete","item mutate","item reopen"]),...N("item","item","consolidation","pm-yql1",["append","close-many","close-task","comments","copy","delete","deps","docs","files","learnings","notes","pause-task","start-task","test","update-many"]),...["claim","close","create","get","release","update"].map(e=>({command:e,noun:"item",target:e,disposition:"keep_as_is",owner:"pm-pbyu",reason:"Permanent high-frequency item operations retain concise root spellings under the accepted hot-path grammar policy."})),...N("item","item files","target_noun","pm-yql1",["files discover","files lookup","item files discover","item files lookup"]),...N("item","item test worker","consolidation","pm-lp4j",["test-runs-worker"]),...N("list","list","target_noun","pm-pfqi",["list"]),...N("list","list --group-by","consolidation","pm-xkgq",["aggregate"]),...N("context","context","target_noun","pm-pbyu",["context"]),...N("context","context","consolidation","pm-kcs4",["ctx","focus","next"]),...N("context","context next","consolidation","pm-kcs4",["ctx next"]),...N("context","context focus","consolidation","pm-kcs4",["ctx focus"]),...N("search","search","target_noun","pm-pbyu",["search"]),...N("search","search","package_owned","package:search-advanced",["reindex","search-advanced"]),...N("item","item duplicates","consolidation","pm-fmy9ih",["duplicates"]),...N("item","item duplicates","package_owned","pm-fmy9ih",["dedupe-audit","dedupe-merge","comments-audit"]),...N("graph","graph","target_noun","pm-pbyu",["graph"]),...N("history","history","target_noun","pm-pbyu",["history"]),...N("history","history attest","target_noun","pm-3z0k",["history attest"]),...N("history","history attest","consolidation","pm-3z0k",["history-attest"]),...Vi.flatMap(({alias:e,canonical:t})=>[...N("history",t,"target_noun","pm-tqel",[t]),...N("history",t,"consolidation","pm-tqel",[e])]),...N("history","history","consolidation","pm-tqel",["events","merge"]),...N("history","history acknowledge","consolidation","pm-djyvbk",["history-author-acknowledge"]),...N("history","history","package_owned","package:builtin-vcs-exemplar",["vcs abandon","vcs create","vcs log","vcs merge","vcs propose","vcs ref-create","vcs show"]),...N("workspace","workspace","target_noun","pm-pbyu",["workspace","workspace position","workspace snapshot","workspace snapshot create","workspace snapshot delete","workspace snapshot inspect","workspace snapshot list","workspace snapshot restore"]),...N("workspace","workspace init","consolidation","pm-npr3",["init"]),...N("package","package","target_noun","pm-pbyu",["package","package activate","package adopt","package adopt-all","package catalog","package deactivate","package describe","package doctor","package explore","package init","package install","package list","package manage","package migrate","package reload","package scaffold","package uninstall","package upgrade"]),...N("package","package","consolidation","pm-tnud",["extension activate","extension adopt","extension adopt-all","extension catalog","extension deactivate","extension describe","extension doctor","extension explore","extension init","extension install","extension manage","extension migrate","extension reload","extension uninstall","packages","packages activate","packages adopt","packages adopt-all","packages catalog","packages deactivate","packages describe","packages doctor","packages explore","packages init","packages install","packages list","packages manage","packages migrate","packages reload","packages scaffold","packages uninstall","packages upgrade"]),...N("package","package","package_owned","package:beads",["beads import"]),...N("package","package","package_owned","package:pm-changelog",["changelog export","changelog generate"]),...N("package","package calendar","package_owned","pm-o3fh",["event","meet","remind"]),...N("ops","ops","target_noun","pm-6apl",["ops"]),...N("ops","ops normalize","package_owned","package:pm-governance-audit",["normalize"]),...N("ops","ops","consolidation","pm-6apl",["eval","gc","health","stats","telemetry","test-all","validate"]),...N("ops","ops","consolidation","pm-npr3",["config","profile","schema"]),...["assurance",...ln.filter(({parent:e})=>e==="assurance").map(({command:e})=>e)].map(e=>({command:e,noun:"ops",target:e,disposition:"keep_as_is",owner:"pm-djyvbk",reason:"Assurance manages durable measurement, assertion, gate, and verdict data; retain its established domain surface independently of operational diagnostics."})),...N("plan","plan","target_noun","pm-pbyu",["plan"]),...N("plan","plan","target_noun","pm-2tan",ln.filter(({parent:e})=>e==="plan").map(({command:e})=>e)),...N("contracts","contracts","target_noun","pm-pbyu",["contracts"]),...N("help","help","target_noun","pm-pbyu",["help"]),...N("help","help","package_owned","package:builtin-guide-shell",["completion","completion-statuses","completion-tags","completion-types","guide"])].flatMap(e=>{let t=Wi.find(n=>n.alias===e.command);if(!t)return[e];let r=im.find(n=>n===t.canonical_argv[0])??e.noun;return[{...e,noun:r,target:t.canonical,owner:t.owner},{...e,command:t.canonical,noun:r,target:t.canonical,owner:t.owner,disposition:e.disposition==="package_owned"?"package_owned":"target_noun"}]}),Vc=[...new Set(Bc.map(({command:e})=>e))].map(e=>({command:e,slots:OG(e)?.slots??BT.get(Ke(e))??[]})),Gc={nouns:im,shared_verbs:TG,scope_before_verb:!0,visible_top_level_ceiling:69,ceiling_raise_requires_pm_item:!0,positional_shape_budget:21};function HT(e,t){let r=new Set(t);return[...new Set(e)].filter(n=>!r.has(n)).map(n=>({code:"positional_signature_mismatch",command:n,detail:`Positional signature ${n} has no destination declaration.`}))}function CG(e){return e.map(({required:t,variadic:r,value_kind:n,polymorphic:o})=>`${t?"r":"o"}:${r?"v":"s"}:${n}:${o?"p":"m"}`).join("|")}function Hc(e){return e.map(({name:t,required:r,variadic:n,value_kind:o,polymorphic:i})=>`${t}:${r?"r":"o"}:${n?"v":"s"}:${o}:${i?"p":"m"}`).join("|")}function GT(e,t){let r=new Map;for(let{command:n}of e){let o=cn(n);r.set(o,(r.get(o)??0)+1)}return[...r.entries()].filter(([,n])=>n>1).map(([n,o])=>({code:"positional_signature_mismatch",command:n,detail:`${o} ${t} positional signatures exist for ${n}; exactly one is required.`}))}function Kee(e,t={}){let r=t.declared??Vc,n=t.positionalShapeBudget??Gc.positional_shape_budget,o=new Map(r.map(c=>[cn(c.command),c])),i=new Map(e.map(c=>[cn(c.command),c])),s=[...GT(r,"declared"),...GT(e,"observed"),...t.declared===void 0?[...HT(BT.keys(),Bc.map(({command:c})=>c)),...HT(ln.map(({command:c})=>c),Bc.map(({command:c})=>c))]:[]];for(let c of o.values()){let l=cn(c.command),d=i.get(l);d?Hc(d.slots)!==Hc(c.slots)&&s.push({code:"positional_signature_mismatch",command:c.command,detail:`Observed positional signature for ${c.command} differs from its declared SDK contract: observed=${Hc(d.slots)||"<none>"}; declared=${Hc(c.slots)||"<none>"}.`}):s.push({code:"missing_observed_signature",command:c.command,detail:`No observed positional signature exists for ${c.command}.`})}for(let c of i.values())o.has(cn(c.command))||s.push({code:"stale_observed_signature",command:c.command,detail:`Observed positional signature ${c.command} has no declaration.`});let a=new Set(r.map(({slots:c})=>CG(c))).size;return a>n&&s.push({code:"positional_shape_budget_exceeded",command:"*",detail:`Distinct positional shape count ${a} exceeds budget ${n}.`}),s.sort((c,l)=>c.command!==l.command?c.command.localeCompare(l.command):c.code.localeCompare(l.code)),{ok:s.length===0,declared_command_count:r.length,observed_command_count:e.length,positional_shape_count:a,positional_shape_budget:n,findings:s}}function IG(e,t,r){return e.flatMap(n=>{let o=t.get(n)??[];if(o.length===0){let s=n.indexOf(" "),a=s===-1?n:n.slice(0,s);return[{code:"missing_destination",spelling:n,message:`Command \`${n}\` has no destination census row.`,nearest_target:r.has(a)?a:`ops ${n}`}]}let i=o.length>1?[{code:"duplicate_destination",spelling:n,message:`Command \`${n}\` has ${o.length} destination rows.`,nearest_target:o[0].target}]:[];return o.reduce((s,a)=>(a.disposition==="keep_as_is"&&(a.reason?.trim().length??0)===0&&s.push({code:"missing_destination",spelling:n,message:`Command \`${n}\` is kept as-is without a documented reason.`,nearest_target:a.target}),r.has(a.noun)||s.push({code:"unknown_noun",spelling:n,message:`Command \`${n}\` names undeclared noun \`${a.noun}\`.`,nearest_target:a.target}),s),i)})}function RG(e,t){return t.filter(r=>r.disposition!=="package_owned"&&!e.has(r.command)).map(r=>({code:"stale_destination",spelling:r.command,message:`Destination row \`${r.command}\` is absent from live contracts.`,nearest_target:r.target}))}function xG(e,t){return e.filter(r=>!t.has(r.canonical)).map(r=>({code:"alias_target_missing",spelling:r.alias,message:`Alias \`${r.alias}\` targets missing canonical command \`${r.canonical}\`.`,nearest_target:r.canonical_argv.join(" ")}))}function Xee(e,t=[],r=Bc){let n=[...new Set(e.map(d=>d.trim()))].filter(d=>d.length>0).sort((d,u)=>d.localeCompare(u)),o=new Set(n),i=new Set(im),s=new Map;for(let d of r){let u=s.get(d.command)??[];u.push(d),s.set(d.command,u)}let a=[...IG(n,s,i),...RG(o,r),...xG(t.filter(d=>o.has(d.alias)||!(s.get(d.canonical)??[]).some(u=>u.disposition==="package_owned")),o)],c=new Set(t.filter(d=>d.hidden).map(d=>d.alias)),l=new Set(n.filter(d=>!d.includes(" ")&&!c.has(d)&&!(s.get(d)??[]).some(u=>u.disposition==="package_owned"))).size;return l>Gc.visible_top_level_ceiling&&a.push({code:"visible_surface_ceiling_exceeded",spelling:String(l),message:`Visible non-package top-level command count ${l} exceeds ceiling ${Gc.visible_top_level_ceiling}.`,nearest_target:"Declare the noun placement and tracked waiver before raising the ceiling."}),{ok:a.length===0,command_count:n.length,destination_count:r.length,hidden_alias_count:t.filter(d=>d.hidden).length,visible_top_level_count:l,visible_top_level_ceiling:Gc.visible_top_level_ceiling,findings: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]="4e1e3ef4-cdf3-5d4c-88fe-d23f6fc171d1")}catch{}})();function dn(e){return[...new Set(Array.from(e,t=>t.trim()).filter(t=>t.length>0))]}(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]="b649c6ff-2a51-564c-a4e7-beca2b6e193f")}catch{}})();function Yc(e){return e.startsWith("--")?`--${e.slice(2).replaceAll("_","-")}`:e}function qi(e){let t=new Map;for(let r of e){let n=Yc(r.flag),o=t.get(n)??new Set;r.flag!==n&&o.add(r.flag);for(let i of r.aliases??[])i!==n&&o.add(i);t.set(n,o)}return e.map(r=>{let n=Yc(r.flag);if(r.flag!==n)return r;let o=dn([...r.aliases??[],...t.get(n)]).filter(i=>i!==n);return o.length===0?r:{...r,aliases:o}})}function NG(e){let t=qi(e),r=new Set(t.map(n=>n.flag));return t.filter(n=>{let o=Yc(n.flag);return n.flag===o||!r.has(o)})}var Jc=ed.map(e=>({flag:e.flag,reservation_scope:"inherited",...e.aliases?{aliases:[...e.aliases]}:{},...e.value_name?{value_name:e.value_name}:{}})),DG=[...Jc,{flag:"--version",value_type:"boolean",reservation_scope:"root_only"},{flag:"--all",value_type:"boolean",reservation_scope:"root_only",description:"Expand root help to every command."},{flag:"--explain",value_type:"boolean",reservation_scope:"root_only",description:"Expand root help with command guidance."}],VT=[{flag:"--filter-reviewer-missing"},{flag:"--filter-risk-missing"},{flag:"--filter-confidence-missing"},{flag:"--filter-sprint-missing"},{flag:"--filter-release-missing"},{flag:"--has-notes"},{flag:"--no-notes"},{flag:"--has-learnings"},{flag:"--no-learnings"},{flag:"--has-files"},{flag:"--no-files"},{flag:"--filter-files-missing"},{flag:"--has-docs"},{flag:"--no-docs"},{flag:"--filter-docs-missing"},{flag:"--has-tests"},{flag:"--no-tests"},{flag:"--has-comments"},{flag:"--no-comments"},{flag:"--has-deps"},{flag:"--no-deps"},{flag:"--has-body"},{flag:"--empty-body"},{flag:"--has-linked-command"},{flag:"--no-linked-command"}],WT=[{flag:"--filter-reviewer-missing"},{flag:"--filter-risk-missing"},{flag:"--filter-confidence-missing"},{flag:"--filter-sprint-missing"},{flag:"--filter-release-missing"},{flag:"--filter-has-notes"},{flag:"--filter-no-notes"},{flag:"--filter-has-learnings"},{flag:"--filter-no-learnings"},{flag:"--filter-has-files"},{flag:"--filter-no-files"},{flag:"--filter-has-docs"},{flag:"--filter-no-docs"},{flag:"--filter-has-tests"},{flag:"--filter-no-tests"},{flag:"--filter-has-comments"},{flag:"--filter-no-comments"},{flag:"--filter-has-deps"},{flag:"--filter-no-deps"},{flag:"--filter-has-body"},{flag:"--filter-empty-body"},{flag:"--filter-has-linked-command"},{flag:"--filter-no-linked-command"},{flag:"--ids",list:!0},{flag:"--limit"},{flag:"--offset"}],Kc=um([{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--status",list:!0},{flag:"--all",value_type:"boolean"},{flag:"--type",list:!0},{flag:"--tag",aliases:["--tags"],list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--today"},{flag:"--recent"},{flag:"--updated-after"},{flag:"--updated-before"},{flag:"--created-after"},{flag:"--created-before"},{flag:"--ids",list:!0},{flag:"--assignee",list:!0},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--parent"},{flag:"--sprint",list:!0},{flag:"--release",list:!0},{flag:"--filter-ac-missing"},{flag:"--filter-estimates-missing",aliases:["--filter-estimate-missing"]},{flag:"--filter-resolution-missing"},{flag:"--filter-metadata-missing"},...VT,{flag:"--limit"},{flag:"--offset"},{flag:"--after"},{flag:"--no-truncate"},{flag:"--compact"},{flag:"--brief"},{flag:"--full"},{flag:"--fields",list:!0},{flag:"--sort"},{flag:"--order"},{flag:"--tree"},{flag:"--tree-depth"},{flag:"--tree_depth"},{flag:"--include-body"},{flag:"--strict-read"},{flag:"--format"},{flag:"--stream"}],new Set(["--limit","--token-budget","--offset","--after","--no-truncate","--compact","--brief","--full","--fields","--include-body","--strict-read"])),YT=[{flag:"--group-by",list:!0},{flag:"--set-mode"},{flag:"--limit"},{flag:"--after"},{flag:"--count"},{flag:"--completion"},{flag:"--sum"},{flag:"--avg"},{flag:"--include-unparented"},{flag:"--include_unparented"},{flag:"--status",list:!0},{flag:"--type",list:!0},{flag:"--tag",list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--assignee",list:!0},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--parent"},{flag:"--sprint",list:!0},{flag:"--release",list:!0}],KT=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--comment","--body","--text"]},{flag:"--stdin"},{flag:"--file"},{flag:"--edit"},{flag:"--delete"},{flag:"--limit"},{flag:"--full-history"},{flag:"--if-absent",value_type:"boolean"},{flag:"--author"},{flag:"--message"},{flag:"--force"}];function um(e,t){return e.map(r=>t.has(r.flag)?{...r,cursor_semantics:"presentation"}:r)}var XT=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--note","--text"]},{flag:"--add-json"},{flag:"--stdin"},{flag:"--file"},{flag:"--edit"},{flag:"--delete"},{flag:"--limit"},{flag:"--since"},{flag:"--event-type"},{flag:"--include-meta"},{flag:"--full-history"},{flag:"--if-absent",value_type:"boolean"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],JT=[{flag:"--id",value_name:"item-id"},{flag:"--add",aliases:["--learning","--text"]},{flag:"--stdin"},{flag:"--file"},{flag:"--edit"},{flag:"--delete"},{flag:"--limit"},{flag:"--full-history"},{flag:"--if-absent",value_type:"boolean"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ZT=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-glob"},{flag:"--remove"},{flag:"--migrate"},{flag:"--note"},{flag:"--list"},{flag:"--append-stable"},{flag:"--validate-paths"},{flag:"--scope"},{flag:"--limit"},{flag:"--offset"},{flag:"--no-truncate"},{flag:"--strict-read"},{flag:"--explain"},{flag:"--lines",value_name:"start:end"},{flag:"--decision-depth",value_name:"n",value_type:"number"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],QT=[{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-glob"},{flag:"--remove"},{flag:"--migrate"},{flag:"--note"},{flag:"--list"},{flag:"--validate-paths"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ek=[{flag:"--id",value_name:"item-id"},{flag:"--limit"},{flag:"--compact"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--diff"},{flag:"--field"},{flag:"--verify"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--format"}],tk=[{flag:"--dry-run"},{flag:"--message"},{flag:"--force"},{flag:"--include-reconciled"},{flag:"--output"},{flag:"--item-path"},{flag:"--prefer"}],rk=[{flag:"--id",value_name:"item-id"},{flag:"--literal"},{flag:"--regex"},{flag:"--replacement"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],nk=[{flag:"--id",value_name:"item-id"},{flag:"--all"},{flag:"--dry-run"},{flag:"--normalize-provenance"},{flag:"--salvage-tail",value_type:"boolean"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ok=[{flag:"--event",repeatable:!0},{flag:"--all-actionable"},{flag:"--dry-run"},{flag:"--plan-fingerprint"},{flag:"--limit",value_type:"number"},{flag:"--attributed-author",aliases:["--attributed_author"]},{flag:"--reviewer"},{flag:"--reason"}],ik=[{flag:"--id",value_name:"item-id"},{flag:"--before"},{flag:"--ids",list:!0},{flag:"--all-over",value_type:"number"},{flag:"--closed"},{flag:"--all-streams"},{flag:"--min-entries",value_type:"number"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],PG=[{flag:"--verify",value_name:"file",value_type:"string"},{flag:"--output",value_name:"file",value_type:"string"},{flag:"--hash-algorithm",value_name:"name",value_type:"string"}],sk=[{flag:"--definition",value_name:"json"},{flag:"--policy",value_name:"id"},{flag:"--message",value_name:"value"},{flag:"--description"},{flag:"--default-status",aliases:["--default_status"]},{flag:"--folder"},{flag:"--alias"},{flag:"--role"},{flag:"--order"},{flag:"--type"},{flag:"--commands"},{flag:"--cli-flag"},{flag:"--required"},{flag:"--required-on-create"},{flag:"--no-allow-unset"},{flag:"--required-types"},{flag:"--infer"},{flag:"--min-count"},{flag:"--apply",value_type:"boolean"},{flag:"--to"},{flag:"--migration-id",aliases:["--migration_id"]},{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],ak=[{flag:"--dry-run"},{flag:"--author"},{flag:"--force"}],fm=[{flag:"--title"},{flag:"--description"},{flag:"--scope"},{flag:"--parent"},{flag:"--related"},{flag:"--blocks"},{flag:"--blocked-by",aliases:["--blocked_by"]},{flag:"--harness"},{flag:"--mode"},{flag:"--resume-context",aliases:["--resume_context"]},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--priority"},{flag:"--status",short:"-s"},{flag:"--create-mode",aliases:["--create_mode"]},{flag:"--deadline"},{flag:"--estimate",aliases:["--estimated-minutes","--estimated_minutes"]},{flag:"--acceptance-criteria",aliases:["--acceptance_criteria","--ac"],repeatable:!0},{flag:"--definition-of-ready",aliases:["--definition_of_ready"]},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now",aliases:["--why_now"]},{flag:"--assignee"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--blocked-reason",aliases:["--blocked_reason"]},{flag:"--unblock-note",aliases:["--unblock_note"]},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps",aliases:["--repro_steps"]},{flag:"--resolution"},{flag:"--expected-result",aliases:["--expected_result","--expected"]},{flag:"--actual-result",aliases:["--actual_result","--actual"]},{flag:"--affected-version",aliases:["--affected_version"]},{flag:"--fixed-version",aliases:["--fixed_version"]},{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact",aliases:["--customer_impact"]},{flag:"--comment",repeatable:!0},{flag:"--note",repeatable:!0},{flag:"--learning",repeatable:!0},{flag:"--reminder",repeatable:!0},{flag:"--event",repeatable:!0},{flag:"--type-option",aliases:["--type_option"],repeatable:!0},{flag:"--body"},{flag:"--claim"},{flag:"--from-search",aliases:["--from_search"]},{flag:"--template"},{flag:"--step-title",aliases:["--step_title"]},{flag:"--step"},{flag:"--step-body",aliases:["--step_body"]},{flag:"--step-owner",aliases:["--step_owner"]},{flag:"--step-status",aliases:["--step_status"]},{flag:"--step-evidence",aliases:["--step_evidence"]},{flag:"--step-blocked-reason",aliases:["--step_blocked_reason"]},{flag:"--step-replacement",aliases:["--step_replacement"]},{flag:"--depends-on",aliases:["--depends_on"]},{flag:"--link"},{flag:"--link-kind",aliases:["--link_kind"]},{flag:"--link-note",aliases:["--link_note"]},{flag:"--promote-to-item-dep",aliases:["--promote_to_item_dep"]},{flag:"--allow-multiple-active",aliases:["--allow_multiple_active"]},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--decision-text",aliases:["--decision_text","--decision"]},{flag:"--decision-rationale",aliases:["--decision_rationale"]},{flag:"--decision-evidence",aliases:["--decision_evidence"]},{flag:"--discovery-text",aliases:["--discovery_text","--discovery"]},{flag:"--validation-text",aliases:["--validation_text","--validation"]},{flag:"--validation-command",aliases:["--validation_command"]},{flag:"--validation-expected",aliases:["--validation_expected"]},{flag:"--depth"},{flag:"--field"},{flag:"--fields",list:!0},{flag:"--steps"},{flag:"--materialize-type",aliases:["--materialize_type"]},{flag:"--materialize-parent",aliases:["--materialize_parent"]},{flag:"--materialize-tags",aliases:["--materialize_tags"]},{flag:"--author"},{flag:"--message"},{flag:"--force"}],ck=[{flag:"--id-prefix",aliases:["--prefix"]},{flag:"--preset"},{flag:"--type-preset"},{flag:"--defaults",short:"-y",aliases:["--yes"]},{flag:"--author"},{flag:"--agent-guidance"},{flag:"--with-packages"},{flag:"--no-merge-fence"},{flag:"--workspace"},{flag:"--force"},{flag:"--verbose"}],lk=[{flag:"--value",value_name:"value"},{flag:"--criterion"},{flag:"--clear-criteria"},{flag:"--format"},{flag:"--policy"},{flag:"--default-depth"},{flag:"--activity-limit"},{flag:"--stale-threshold-days"},{flag:"--section-hierarchy"},{flag:"--section-activity"},{flag:"--section-progress"},{flag:"--section-blockers"},{flag:"--section-files"},{flag:"--section-workload"},{flag:"--section-staleness"},{flag:"--section-tests"}],pm=[{flag:"--dry-run"},{flag:"--init"},{flag:"--scaffold"},{flag:"--capability"},{flag:"--install"},{flag:"--uninstall"},{flag:"--explore"},{flag:"--list"},{flag:"--manage"},{flag:"--describe"},{flag:"--markdown"},{flag:"--output"},{flag:"--reload"},{flag:"--watch"},{flag:"--doctor"},{flag:"--catalog"},{flag:"--adopt"},{flag:"--adopt-all"},{flag:"--activate"},{flag:"--deactivate"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"},{flag:"--detail"},{flag:"--trace"},{flag:"--runtime-probe"},{flag:"--fix-managed-state"},{flag:"--isolated"},{flag:"--ignore-global"},{flag:"--strict-exit"},{flag:"--fail-on-warn"}],De=[{flag:"--project"},{flag:"--local"},{flag:"--global"}],mm=[...De,{flag:"--capability"}],sm=[...pm,{flag:"--declarative"}],dk=[...mm,{flag:"--declarative"}],uk=[{flag:"--dry-run"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],fk=De,pk=De,mk=[...De,{flag:"--markdown"},{flag:"--output"}],_k=De,gk=De,yk=De,hk=[...De,{flag:"--dry-run"}],bk=[...De,{flag:"--runtime-probe"},{flag:"--fix-managed-state"}],wk=[...De,{flag:"--watch"}],vk=[...De,{flag:"--detail"},{flag:"--trace"},{flag:"--fix-managed-state"},{flag:"--isolated"},{flag:"--ignore-global"},{flag:"--strict-exit"},{flag:"--fail-on-warn"}],am=[...De,{flag:"--fields",list:!0}],Ek=[...De,{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],Tk=[{flag:"--dry-run"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--gh"},{flag:"--github"},{flag:"--ref"}],_m=[{flag:"--dry-run"},{flag:"--cli-only"},{flag:"--packages-only"},{flag:"--project"},{flag:"--local"},{flag:"--global"},{flag:"--repair"},{flag:"--tag"},{flag:"--package-name"}],MG=[{flag:"--mode"},{flag:"--progress"}],kk=[{flag:"--release-assignment",value_type:"boolean"},{flag:"--id",value_name:"item-id"},{flag:"--reason",value_name:"value"},{flag:"--close-reason",value_name:"value"},{flag:"--completed-at",value_name:"value"},{flag:"--duplicate-of",value_name:"value"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--resolution",value_name:"value"},{flag:"--expected-result",aliases:["--expected_result","--expected"],value_name:"value"},{flag:"--actual-result",aliases:["--actual_result","--actual"],value_name:"value"},{flag:"--force",value_type:"boolean"}],Ak=[{flag:"--filter-status",list:!0},{flag:"--filter-type"},{flag:"--filter-tag"},{flag:"--filter-priority"},{flag:"--filter-deadline-before"},{flag:"--filter-deadline-after"},{flag:"--filter-updated-after"},{flag:"--filter-updated-before"},{flag:"--filter-created-after"},{flag:"--filter-created-before"},{flag:"--filter-assignee"},{flag:"--filter-assignee-filter"},{flag:"--filter-assignee_filter"},{flag:"--filter-parent"},{flag:"--filter-sprint"},{flag:"--filter-release"},...WT,{flag:"--reason"},{flag:"--completed-at"},{flag:"--resolution"},{flag:"--expected-result",aliases:["--expected_result","--expected"]},{flag:"--actual-result",aliases:["--actual_result","--actual"]},{flag:"--validate-close"},{flag:"--author"},{flag:"--message"},{flag:"--force"},{flag:"--dry-run"},{flag:"--rollback"},{flag:"--no-checkpoint"}],Sk=[{flag:"--id",value_name:"item-id"},{flag:"--body",short:"-b"},{flag:"--text"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Ok=[{flag:"--start",value_type:"boolean"},{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"},{flag:"--if-available"},{flag:"--next"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee-filter"},{flag:"--parent"},{flag:"--sprint"},{flag:"--release"},{flag:"--max-attempts"},{flag:"--include-decisions"},{flag:"--include-gates"},{flag:"--include-containers"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--explain-ranking",aliases:["--explain_ranking"]}],Ck=[{flag:"--id",value_name:"item-id"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Ik=[{flag:"--id",value_name:"item-id"},{flag:"--dry-run"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],Rk=[{flag:"--pause",value_type:"boolean"},{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],xk=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],Nk=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--force"}],Dk=[{flag:"--id",value_name:"item-id"},{flag:"--author",aliases:["--assignee"]},{flag:"--message"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--force"}],Pk=[{flag:"--parent"},{flag:"--allow-missing-parent"},{flag:"--tags"},{flag:"--priority"},{flag:"--body"},{flag:"--description"},{flag:"--author"},{flag:"--message"}],gm=[{flag:"--start"},{flag:"--duration"},{flag:"--end"},{flag:"--location"},{flag:"--timezone"},{flag:"--all-day"},...Pk],Mk=gm,Lk=[{flag:"--at"},{flag:"--text"},...Pk],Fk=[{flag:"--list"},{flag:"--id",value_name:"item-id"},{flag:"--add"},{flag:"--add-json"},{flag:"--remove"},{flag:"--remove-index",repeatable:!0},{flag:"--run"},{flag:"--match"},{flag:"--only-index"},{flag:"--only-last"},{flag:"--background"},{flag:"--timeout"},{flag:"--progress"},{flag:"--env-set"},{flag:"--env-clear"},{flag:"--shared-host-safe"},{flag:"--pm-context"},{flag:"--override-linked-pm-context"},{flag:"--workspace-context"},{flag:"--override-linked-workspace-context"},{flag:"--allow-untrusted-linked-tests"},{flag:"--acknowledge-linked-tests"},{flag:"--fail-on-context-mismatch"},{flag:"--fail-on-skipped"},{flag:"--fail-on-empty-test-run"},{flag:"--require-assertions-for-pm"},{flag:"--check-context"},{flag:"--auto-pm-context"},{flag:"--measure",list:!0},{flag:"--metric-below"},{flag:"--metric-diff"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],$k=[{flag:"--status"},{flag:"--limit"},{flag:"--offset"},{flag:"--background"},{flag:"--timeout"},{flag:"--progress"},{flag:"--env-set"},{flag:"--env-clear"},{flag:"--shared-host-safe"},{flag:"--pm-context"},{flag:"--override-linked-pm-context"},{flag:"--workspace-context"},{flag:"--override-linked-workspace-context"},{flag:"--allow-untrusted-linked-tests"},{flag:"--fail-on-context-mismatch"},{flag:"--fail-on-skipped"},{flag:"--fail-on-empty-test-run"},{flag:"--require-assertions-for-pm"},{flag:"--check-context"},{flag:"--auto-pm-context"}],jk=[{flag:"--limit"}],LG=[{flag:"--status"},{flag:"--limit"},{flag:"--stream"},{flag:"--tail"},{flag:"--force"},{flag:"--author"}],Uk=[{flag:"--dry-run"},{flag:"--scope"}],zk=[{flag:"--include-empty"},{flag:"--storage"},{flag:"--metadata-coverage"},{flag:"--field-utilization"},{flag:"--by-assignee"},{flag:"--by-tag"},{flag:"--by-priority"},{flag:"--tag-prefix"},{flag:"--analytics"}],qk=[{flag:"--exhaustive",value_type:"boolean"},{flag:"--status",repeatable:!0,list:!0},{flag:"--since"},{flag:"--threshold"},{flag:"--limit"}],Hk=[{flag:"--strict-directories"},{flag:"--require-merge-drivers"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--check-only"},{flag:"--check-telemetry"},{flag:"--no-refresh"},{flag:"--refresh-vectors"},{flag:"--verbose-stale-items"},{flag:"--verbose-author-events"},{flag:"--brief"},{flag:"--summary"},{flag:"--skip-vectors"},{flag:"--skip-integrity"},{flag:"--skip-drift"},{flag:"--full"}],Gk=[{flag:"--check-completeness",value_type:"boolean"},{flag:"--check-metadata"},{flag:"--metadata-profile"},{flag:"--check-resolution"},{flag:"--check-lifecycle"},{flag:"--check-stale-blockers"},{flag:"--dependency-cycle-severity"},{flag:"--parent-cycle-severity"},{flag:"--check-files"},{flag:"--scan-mode"},{flag:"--include-pm-internals"},{flag:"--verbose-file-lists"},{flag:"--verbose-diagnostics"},{flag:"--all-affected-ids"},{flag:"--strict-exit"},{flag:"--fail-on-warn"},{flag:"--fix-hints"},{flag:"--auto-fix"},{flag:"--dry-run"},{flag:"--fix-scope"},{flag:"--prune-missing"},{flag:"--check-history-drift"},{flag:"--check-command-references"},{flag:"--check-storage-integrity"},{flag:"--counts"},{flag:"--full"}],ym=[{flag:"--definition",value_name:"json"},{flag:"--trigger",value_name:"value"},{flag:"--tree",value_name:"value"},{flag:"--gate",value_name:"id"},{flag:"--limit",value_name:"number"},{flag:"--dry-run"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--owner",value_name:"item-id"},{flag:"--apply",value_type:"boolean"},{flag:"--enforcement",value_name:"level"}],Bk=[{flag:"--assignee"},{flag:"--parent"},{flag:"--allow-missing-parent"},{flag:"--allow-unresolved-deps"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--blocked-by"},{flag:"--blocked-reason"},{flag:"--unblock-note"},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps"},{flag:"--resolution"},{flag:"--expected-result"},{flag:"--actual-result"},{flag:"--affected-version"},{flag:"--fixed-version"}],Vk=[{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact"},{flag:"--customer_impact"},{flag:"--definition-of-ready"},{flag:"--definition_of_ready"},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now"},{flag:"--why_now"}],Wk=[{short:"-p",flag:"--priority"},{flag:"--type"},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--add-tags",aliases:["--add_tags"]},{flag:"--remove-tags",aliases:["--remove_tags"]},{flag:"--deadline"},{flag:"--estimate"},{flag:"--estimated-minutes"},{flag:"--estimated_minutes"},{flag:"--acceptance-criteria"},{flag:"--acceptance_criteria"},{flag:"--ac"},{flag:"--add-ac",aliases:["--add_ac"]},{flag:"--remove-ac",aliases:["--remove_ac"]}],cm=[{flag:"--stdin-json"},{short:"-t",flag:"--title"},{flag:"--id"},{short:"-d",flag:"--description"},{flag:"--type"},{flag:"--template"},{flag:"--create-mode"},{flag:"--create_mode"},{flag:"--schedule-preset"},{flag:"--schedule_preset"},{short:"-s",flag:"--status"},{flag:"--close-reason"},{flag:"--close_reason"},{flag:"--completed-at"},{flag:"--completed_at"},{short:"-p",flag:"--priority"},{flag:"--tags",aliases:["--tag"],list:!0},{flag:"--add-tags",aliases:["--add_tags"]},{short:"-b",flag:"--body"},{flag:"--body-file"},{flag:"--deadline"},{flag:"--estimate"},{flag:"--estimated-minutes"},{flag:"--estimated_minutes"},{flag:"--acceptance-criteria"},{flag:"--acceptance_criteria"},{flag:"--ac"},{flag:"--author"},{flag:"--message"},...Bk,...Vk,{flag:"--blocked_by"},{flag:"--blocked_reason"},{flag:"--unblock_note"},{flag:"--repro_steps"},{flag:"--expected_result"},{flag:"--actual_result"},{flag:"--expected"},{flag:"--actual"},{flag:"--affected_version"},{flag:"--fixed_version"},{flag:"--dep"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--field"},{flag:"--reminder"},{flag:"--event"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file",aliases:["--linked-file"]},{flag:"--test",aliases:["--linked-test"]},{flag:"--doc"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--allow-duplicate",value_type:"boolean"}],Yk=[{flag:"--transaction-id",value_name:"value"},{flag:"--stdin-json"},{flag:"--dry-run"},{flag:"--create-compensation",value_name:"mode"},{flag:"--lock-ttl-seconds",value_name:"n"},{flag:"--lock-wait-ms",value_name:"n"},{flag:"--author",value_name:"value"}],Kk=[{flag:"--id",value_name:"item-id"},{flag:"--transaction-id",value_name:"value",required:!0},{flag:"--reason",value_name:"value"},{flag:"--file",value_name:"value",repeatable:!0},{flag:"--doc",value_name:"value",repeatable:!0},{flag:"--test",value_name:"value",repeatable:!0},{flag:"--comment",value_name:"value",repeatable:!0},{flag:"--note",value_name:"value",repeatable:!0},{flag:"--learning",value_name:"value",repeatable:!0},{flag:"--resolution",value_name:"value"},{flag:"--expected-result",value_name:"value"},{flag:"--actual-result",value_name:"value"},{flag:"--completed-at",value_name:"value"},{flag:"--validate-close",value_name:"off|warn|strict"},{flag:"--lock-ttl-seconds",value_name:"n"},{flag:"--lock-wait-ms",value_name:"n"},{flag:"--dry-run"},{flag:"--force"},{flag:"--author",value_name:"value"}],Xk=[{flag:"--id",value_name:"item-id"},{flag:"--status",value_name:"open|in_progress"},{flag:"--message",value_name:"value"},{flag:"--force"},{flag:"--author",value_name:"value"}],Jk=[{flag:"--id",value_name:"item-id"},{flag:"--title",value_name:"value"},{flag:"--author",value_name:"value"},{flag:"--message",value_name:"value"},{flag:"--allow-duplicate",value_type:"boolean"}],Zk=[{flag:"--id",value_name:"item-id"},{flag:"--clear"}],Qk=[{flag:"--id",value_name:"item-id"},{flag:"--stdin-json"},{short:"-t",flag:"--title"},{short:"-d",flag:"--description"},{short:"-b",flag:"--body"},{flag:"--body-file"},{short:"-s",flag:"--status"},{flag:"--close-reason"},{flag:"--close_reason"},{flag:"--completed-at"},...Wk,...Bk,{flag:"--fixed_version"},...Vk,{flag:"--author"},{flag:"--message"},{flag:"--blocked_by"},{flag:"--blocked_reason"},{flag:"--unblock_note"},{flag:"--repro_steps"},{flag:"--expected_result"},{flag:"--actual_result"},{flag:"--expected"},{flag:"--actual"},{flag:"--affected_version"},{flag:"--dep"},{flag:"--dep-remove"},{flag:"--dep_remove"},{flag:"--replace-deps"},{flag:"--replace-tests"},{flag:"--replace-files"},{flag:"--replace-docs"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file",aliases:["--linked-file"]},{flag:"--test",aliases:["--linked-test"]},{flag:"--doc"},{flag:"--reminder"},{flag:"--event"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--field"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--force"}],eA=[{flag:"--status",short:"-s"},{flag:"--assignee"},{flag:"--parent"},{flag:"--blocked-by",aliases:["--blocked_by"]},{flag:"--blocked-reason",aliases:["--blocked_reason"]},{flag:"--unblock-note",aliases:["--unblock_note"]},{flag:"--filter-status",list:!0},{flag:"--filter-type",list:!0},{flag:"--filter-tag",list:!0},{flag:"--filter-priority",list:!0},{flag:"--filter-deadline-before"},{flag:"--filter-deadline-after"},{flag:"--filter-updated-after"},{flag:"--filter-updated-before"},{flag:"--filter-created-after"},{flag:"--filter-created-before"},{flag:"--filter-assignee",list:!0},{flag:"--filter-assignee-filter"},{flag:"--filter-assignee_filter"},{flag:"--filter-parent"},{flag:"--filter-sprint",list:!0},{flag:"--filter-release",list:!0},{flag:"--filter-ac-missing"},{flag:"--filter-estimates-missing",aliases:["--filter-estimate-missing"]},{flag:"--filter-resolution-missing"},{flag:"--filter-metadata-missing"},...WT,{flag:"--dry-run"},{flag:"--rollback"},{flag:"--no-checkpoint"},{short:"-t",flag:"--title"},{short:"-d",flag:"--description"},{short:"-b",flag:"--body"},...Wk,{flag:"--definition-of-ready"},{flag:"--definition_of_ready"},{flag:"--order"},{flag:"--rank"},{flag:"--goal"},{flag:"--objective"},{flag:"--value"},{flag:"--impact"},{flag:"--outcome"},{flag:"--why-now"},{flag:"--why_now"},{flag:"--reviewer"},{flag:"--risk"},{flag:"--confidence"},{flag:"--sprint"},{flag:"--release"},{flag:"--reporter"},{flag:"--severity"},{flag:"--environment"},{flag:"--repro-steps"},{flag:"--repro_steps"},{flag:"--resolution"},{flag:"--expected-result"},{flag:"--expected_result"},{flag:"--expected"},{flag:"--actual-result"},{flag:"--actual_result"},{flag:"--actual"},{flag:"--affected-version"},{flag:"--affected_version"},{flag:"--fixed-version"},{flag:"--fixed_version"},{flag:"--component"},{flag:"--regression"},{flag:"--customer-impact"},{flag:"--customer_impact"},{flag:"--allow-unresolved-deps"},{flag:"--dep"},{flag:"--dep-remove"},{flag:"--dep_remove"},{flag:"--replace-deps"},{flag:"--replace-tests"},{flag:"--replace-files"},{flag:"--replace-docs"},{flag:"--comment"},{flag:"--note"},{flag:"--learning"},{flag:"--file"},{flag:"--test"},{flag:"--doc"},{flag:"--reminder"},{flag:"--event"},{flag:"--type-option"},{flag:"--type_option"},{flag:"--unset"},{flag:"--clear-deps"},{flag:"--clear-comments"},{flag:"--clear-notes"},{flag:"--clear-learnings"},{flag:"--clear-files"},{flag:"--clear-tests"},{flag:"--clear-docs"},{flag:"--clear-reminders"},{flag:"--clear-events"},{flag:"--clear-type-options"},{flag:"--author"},{flag:"--message"},{flag:"--force"}],lm=[{flag:"--view"},{flag:"--date"},{flag:"--from"},{flag:"--to"},{flag:"--past"},{flag:"--full-period"},{flag:"--full_period"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--status"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--include"},{flag:"--recurrence-lookahead-days"},{flag:"--recurrence-lookback-days"},{flag:"--occurrence-limit"},{flag:"--limit"},{flag:"--format"}],tA=[{flag:"--id"},{flag:"--op"},{flag:"--author"},{flag:"--from"},{flag:"--to"},{flag:"--limit"},{flag:"--unbounded"},{flag:"--compact"},{flag:"--raw"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--stream"}],rA=[{flag:"--since"},{flag:"--type",repeatable:!0},{flag:"--author",repeatable:!0},{flag:"--item",repeatable:!0},{flag:"--limit",value_type:"number"},{flag:"--cursor-mode",value_name:"batch|row"},{flag:"--full"},{flag:"--provenance"},{flag:"--provenance-summary"},{flag:"--harness",repeatable:!0},{flag:"--agent-instance",repeatable:!0},{flag:"--provenance-filter",repeatable:!0},{flag:"--follow"},{flag:"--interval-ms",value_type:"number"}],dm=um([{flag:"--for",value_name:"intent"},{flag:"--date"},{flag:"--from"},{flag:"--to"},{flag:"--past"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--parent"},{flag:"--limit",aliases:["--max-items"]},{flag:"--after"},{flag:"--format"},{flag:"--depth"},{flag:"--fields",list:!0},{flag:"--section"},{flag:"--activity-limit"},{flag:"--stale-threshold"},{flag:"--explain-ranking"},{flag:"--explain_ranking"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--no-extension-health"},{flag:"--no-tags"}],new Set(["--limit","--after","--format","--fields","--section","--activity-limit","--stale-threshold","--explain-ranking","--explain_ranking","--no-extension-health","--no-tags"])),nA=[{flag:"--id",value_name:"item-id"},{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--depth"},{flag:"--full",value_type:"boolean"},{flag:"--fields",list:!0},{flag:"--at"},{flag:"--tree"},{flag:"--tree-depth"},{flag:"--tree_depth"},{flag:"--format"}],oA=[{flag:"--list"},{flag:"--format"},{flag:"--depth"}],iA=[{flag:"--id",value_name:"item-id"},{flag:"--format"},{flag:"--max-depth"},{flag:"--collapse"},{flag:"--summary"},{flag:"--full"},{flag:"--node-limit"},{flag:"--edge-limit"},{flag:"--token-budget"},{flag:"--cursor"},{flag:"--direction"},{flag:"--kind",list:!0}],sA=[{flag:"--kind",list:!0},{flag:"--max-depth"},{flag:"--limit"},{flag:"--after"},{flag:"--direction"},{flag:"--max-paths"},{flag:"--sample"},{flag:"--exempt-isolate",list:!0},{flag:"--exempt-isolate-type",list:!0},{flag:"--save-baseline"},{flag:"--rebuild"},{flag:"--clear"},{flag:"--summary"},{flag:"--full"}],aA=[{flag:"--mode"},{flag:"--k"},{flag:"--fail-under"},{flag:"--queries"},{flag:"--format"}],Bt=[{flag:"--dry-run"},{flag:"--force"},{flag:"--author"},{flag:"--message"}],cA=[],lA=[{flag:"--include-decisions"},{flag:"--include-gates"},{flag:"--include-containers"},{flag:"--for",value_name:"intent"},{flag:"--type"},{flag:"--tag"},{flag:"--priority"},{flag:"--assignee"},{flag:"--assignee-filter"},{flag:"--assignee_filter"},{flag:"--sprint"},{flag:"--release"},{flag:"--parent"},{flag:"--limit"},{flag:"--blocked-limit"},{flag:"--blocked_limit"},{flag:"--ready-only"},{flag:"--ready_only"},{flag:"--format"},{flag:"--explain-ranking"},{flag:"--explain_ranking"},{flag:"--token-budget",aliases:["--token_budget"]}],dA=um([{flag:"--for",value_name:"intent"},{flag:"--token-budget",aliases:["--token_budget"]},{flag:"--mode"},{flag:"--semantic"},{flag:"--hybrid"},{flag:"--match-mode"},{flag:"--min-score"},{flag:"--count"},{flag:"--semantic-weight"},{flag:"--include-linked"},{flag:"--title-exact"},{flag:"--phrase-exact"},{flag:"--highlight"},{flag:"--compact"},{flag:"--full"},{flag:"--fields",list:!0},{flag:"--format"},{flag:"--limit"},{flag:"--after"},{flag:"--status",list:!0},{flag:"--type",list:!0},{flag:"--tag",aliases:["--tags"],list:!0},{flag:"--priority",list:!0},{flag:"--deadline-before"},{flag:"--deadline-after"},{flag:"--updated-after"},{flag:"--updated-before"},{flag:"--created-after"},{flag:"--created-before"},{flag:"--assignee",list:!0},{flag:"--sprint",list:!0},{flag:"--release",list:!0},{flag:"--parent"},...VT],new Set(["--highlight","--compact","--full","--fields","--format","--limit","--token-budget","--after"])),uA=[{flag:"--action"},{flag:"--command"},{flag:"--summary"},{flag:"--schema-only"},{flag:"--flags-only"},{flag:"--availability-only"},{flag:"--runtime-only"},{flag:"--active-only"},{flag:"--full"}],fA=[{flag:"--eager-tags"}];function Wc(e){let t=new Map;for(let r of[...Jc,...e]){let n=Yc(r.flag),o=t.get(n),{aliases:i,...s}=r,a=dn([...i??[],...r.flag===n?[]:[r.flag]]).filter(d=>d!==n),c={...s,flag:n,...a.length>0?{aliases:a}:{}},l=dn([...o?.aliases??[],...c.aliases??[]]);t.set(n,o===void 0?c:{...o,...c,...l.length>0?{aliases:l}:{}})}return qi([...t.values()])}var FG=["list-draft","list-open","list-in-progress","list-blocked","list-closed","list-canceled"],$G=Kc.filter(e=>e.flag!=="--status"&&e.flag!=="--all");function Xc(e){let t=new Map;for(let r of e)for(let n of[r.flag,...r.aliases??[]]){let o=t.get(n)??[];o.push(r),t.set(n,o)}return t}var jG=Xc(fm),UG=Xc(ym),zG=new Map([["assurance",UG],["plan",jG],["workspace",Xc(cA)],["workspace snapshot",Xc(Bt)]]);function pA(e=ln){return e.map(({command:t,parent:r,accepted_flags:n})=>{let o=zG.get(r);if(!o)throw new Error(`Positional action ${t} has no flag-contract index for ${r}.`);let i=n.map(s=>{let a=o.get(s)??[];if(a.length!==1)throw new Error(`Positional action ${t} accepted flag ${s} does not resolve to exactly one ${r} flag contract.`);return a[0]});return[t,i]})}var qG=pA(),mA=new Map([["list",Kc],["list-all",Kc],...FG.map(e=>[e,$G]),["templates",cm],["cal",lm],["ctx",dm],["test-runs-worker",[]],["init",ck],["config",lk],["extension",pm],["package",sm],["packages",sm],["install",Tk],["upgrade",_m],["create",cm],["item",[]],["item mutate",Yk],["item complete",Kk],["item reopen",Xk],["copy",Jk],["focus",Zk],["aggregate",YT],["calendar",lm],["context",dm],["get",nA],["guide",oA],["search",dA],["next",lA],["eval",aA],["workspace",Bt],["workspace position",cA],["workspace snapshot",Bt],["workspace snapshot create",Bt],["workspace snapshot list",Bt],["workspace snapshot inspect",Bt],["workspace snapshot restore",Bt],["workspace snapshot delete",Bt],["history",ek],["history-redact",rk],["history-repair",nk],["history-author-acknowledge",ok],["history-compact",ik],["history-attest",PG],["merge",tk],["schema",sk],["profile",ak],["plan",fm],["activity",tA],["events",rA],["restore",Ck],["update",Qk],["update-many",eA],["close",kk],["close-many",Ak],["delete",Ik],["append",Sk],["comments",KT],["notes",XT],["learnings",JT],["files",ZT],["docs",QT],["deps",iA],["graph",sA],["test",Fk],["test-all",$k],["telemetry",jk],["health",Hk],["assurance",ym],...qG,["validate",Gk],["gc",Uk],["stats",zk],["duplicates",qk],["contracts",uA],["completion",fA],["claim",Ok],["release",Rk],["start-task",xk],["pause-task",Nk],["close-task",Dk],["meet",gm],["event",Mk],["remind",Lk]]),_A=new Map([["install",uk],["uninstall",fk],["explore",pk],["manage",bk],["describe",mk],["reload",wk],["doctor",vk],["catalog",am],["list",am],["adopt",Ek],["adopt-all",_k],["activate",gk],["deactivate",yk],["migrate",hk]]);function gA(e){return typeof e!="string"?"":Ke(e.trim().toLowerCase())}function HG(e){let t=gA(e);if(mA.has(t))return!0;let[r,n,...o]=t.split(/\s+/);return(r==="extension"||r==="package"||r==="packages")&&n!==void 0&&o.length===0&&(n==="init"||n==="scaffold"||_A.has(n))}function GG(e,t){return t==="init"||t==="scaffold"?e==="extension"?mm:dk:_A.get(t)??[]}function hm(e){let t=gA(e);if(t.length===0)return Wc([]);let[r,n,...o]=t.split(/\s+/);if((r==="extension"||r==="package"||r==="packages")&&n!==void 0&&o.length===0)return Wc((r==="package"||r==="packages")&&n==="upgrade"?_m:GG(r,n));let i=mA.get(t)??[];return Wc(i)}function BG(e,t=!0){let n=qi(e).flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i),o=t?[...n,...Jc.flatMap(i=>[i.short,i.flag,...i.aliases??[]]).filter(i=>!!i)]:n;return dn(o).join(" ")}(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]="e216fd39-09ee-5a04-b0b5-44f518db4f93")}catch{}})();function yA(e){let t=e?.trim()??"";return/^[A-Za-z][A-Za-z0-9+.-]*:\/\//u.test(t)||/^(?:github|gitlab|jira|linear):/iu.test(t)}function hA(e){let t=e?.trim().toLowerCase();return t==="global"||t==="external"}import{createHash as KG}from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a14011f9-67eb-5cd6-b520-8e938ada4f1b")}catch{}})();function bA(e){return{files:(Array.isArray(e.files)?e.files:[]).flatMap(t=>{if(typeof t!="object"||t===null||Array.isArray(t))return[];let r=t.path;return typeof r=="string"?[r]:[]}),package_names:Array.isArray(e.package_names)?e.package_names.filter(t=>typeof t=="string"):[],item_ids:[e.id],tags:Array.isArray(e.tags)?e.tags.filter(t=>typeof t=="string"):[],error_codes:Array.isArray(e.error_codes)?e.error_codes.filter(t=>typeof t=="string"):[]}}(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]="8d87a4e8-5853-52ca-8fdf-1433e2a9e75d")}catch{}})();function VG(e){let t=new Set;for(let r of Array.isArray(e.dependencies)?e.dependencies:[])typeof r!="object"||r===null||Array.isArray(r)||r.kind==="recurs_from"&&(typeof r.id!="string"||!r.id.trim()||yA(r.id)||hA(typeof r.source_kind=="string"?r.source_kind:void 0)||t.add(r.id.trim()));return[...t].sort()}function WG(e){let t=new Set;for(let r of Array.isArray(e.files)?e.files:[]){if(typeof r!="object"||r===null||Array.isArray(r))continue;let n=r;n.scope!==void 0&&n.scope!=="project"||typeof n.path=="string"&&n.path.trim()&&t.add(n.path.trim())}return[...t].sort()}function wA(e){let t=VG(e),r=WG(e),n=typeof e.escape_class=="string"?e.escape_class:void 0;if(!(t.length===0&&r.length===0&&n===void 0))return{targets:t,files:r,...n===void 0?{}:{escape_class:n}}}function YG(e,t,r,n){let o={id:e,item_ids:[],family_ids:[]},i=[e],s=new Set;for(n.set(e,o);i.length>0;){let a=i.pop();o.item_ids.push(a);for(let c of r.get(a)??[])s.add(c);for(let c of t.get(a))n.has(c)||(n.set(c,o),i.push(c))}return o.item_ids.sort(),o.id=o.item_ids[0],o.family_ids=[...s].sort(),o}function vA(e,t){let r=new Map,n=0;for(let[a,c]of t)for(let l of new Set(c.targets)){let d=r.get(a)??new Set;d.add(l),r.set(a,d);let u=r.get(l)??new Set;u.add(a),r.set(l,u),n+=1}let o=new Map;for(let a of e)for(let c of[a.owner_item_id,...a.historical_item_ids,...a.triggers.item_ids??[]]){let l=o.get(c)??new Set;l.add(a.id),o.set(c,l)}let i=new Map,s=[];for(let a of r.keys())i.has(a)||s.push(YG(a,r,o,i));return s.sort((a,c)=>a.id<c.id?-1:1),{lineages:s,membership:i,edge_count: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]="12a0ee7f-508d-5e6e-b59d-24bc0aba22aa")}catch{}})();var mo=["production_defect","nightly_regression","scanner_finding","review_caught_late"],wm=["gate_added","gate_strengthened","explicit_waiver"],EA=256,XG=1024,Hi=new Map,JG=["files","package_names","item_ids","tags","error_codes"];function ye(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].sort((t,r)=>t<r?-1:1)}function TA(e){return KG("sha256").update(L(e)).digest("hex")}function bm(e,t){if(typeof e!="string"||!e.trim())throw new TypeError(`${t} must be a non-empty string`)}function Gi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function po(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function AA(e,t){if(!Gi(e))throw new TypeError(`${t} must be an object`);for(let r of JG)if(e[r]!==void 0&&!po(e[r]))throw new TypeError(`${t}.${r} must be an array of strings`);return e}function ZG(e,t){if(!Gi(e))throw new TypeError(`defect recurrence family ${t} triggers must be an object`);for(let n of["package_names","item_ids","tags","error_codes"])if(e[n]!==void 0&&!po(e[n]))throw new TypeError(`defect recurrence family ${t} triggers.${n} must be an array of strings`);let r=e.file_patterns;if(r!==void 0&&!po(r))throw new TypeError(`defect recurrence family ${t} triggers.file_patterns must be an array of strings`);for(let n of r??[])if(n.length>EA)throw new TypeError(`defect recurrence family ${t} file pattern exceeds ${EA} characters`)}function QG(e,t){if(bm(e.id,"defect recurrence family id"),t.has(e.id))throw new TypeError(`Duplicate defect recurrence family ${e.id}`);if(t.add(e.id),!Number.isInteger(e.version)||e.version<1)throw new TypeError(`defect recurrence family ${e.id} version must be a positive integer`);if(!mo.includes(e.escape_class))throw new TypeError(`defect recurrence family ${e.id} has an invalid escape class`);bm(e.title,`defect recurrence family ${e.id} title`),bm(e.owner_item_id,`defect recurrence family ${e.id} owner_item_id`)}function eB(e){if(!po(e.historical_item_ids)||e.historical_item_ids.length===0||e.historical_item_ids.some(t=>!t.trim()))throw new TypeError(`defect recurrence family ${e.id} requires historical_item_ids`);if(ZG(e.triggers,e.id),!Gi(e.checks)||!po(e.checks.local)||!po(e.checks.hosted)||e.checks.local.length===0||e.checks.hosted.length===0||e.checks.local.some(t=>!t.trim())||e.checks.hosted.some(t=>!t.trim()))throw new TypeError(`defect recurrence family ${e.id} checks must contain nonempty local and hosted string arrays`)}function tB(e){if(!Gi(e.budget)||typeof e.budget.max_escape_rate!="number"||!Number.isFinite(e.budget.max_escape_rate)||typeof e.budget.max_false_positive_rate!="number"||!Number.isFinite(e.budget.max_false_positive_rate))throw new TypeError(`defect recurrence family ${e.id} requires numeric budgets`);if(e.budget.max_escape_rate<0||e.budget.max_escape_rate>1||e.budget.max_false_positive_rate<0||e.budget.max_false_positive_rate>1)throw new TypeError(`defect recurrence family ${e.id} budgets must be between 0 and 1`)}function rB(e){let t=AA(e.negative_control,`defect recurrence family ${e.id} negative_control`);if(Em(e,t,{}).length===0)throw new TypeError(`defect recurrence family ${e.id} negative_control must select its own family`)}function vm(e){if(e.version!==1)throw new TypeError(`Unsupported defect recurrence policy version ${e.version}`);if(typeof e.evidence_epoch!="string"||!Number.isFinite(Date.parse(e.evidence_epoch)))throw new TypeError("defect recurrence evidence_epoch must be an ISO timestamp");let t=new Set;for(let r of e.families){if(!Gi(r))throw new TypeError("defect recurrence family must be an object");QG(r,t),eB(r),tB(r),rB(r)}}function nB(e,t){let r=Hi.get(e);if(r===void 0){if(Hi.size>=XG){let o=Hi.keys().next().value;Hi.delete(o)}let n=e.replaceAll("**","\0").replaceAll(/[|\\{}()[\]^$+?./]/gu,"\\$&").replaceAll("*","[^/]*").replaceAll("\0",".*");r=new RegExp(`^${n}$`,"u"),Hi.set(e,r)}return r.test(t)}function oB(e,t){let r=[],n=ye(e.triggers.file_patterns??[]);for(let o of ye(t.files??[]))for(let i of n)nB(i,o)&&r.push({signal:"file",value:o,matched:i});return r}function iB(e,t){let r=[{signal:"package",values:ye(t.package_names??[]),triggers:ye(e.triggers.package_names??[])},{signal:"tag",values:ye(t.tags??[]),triggers:ye(e.triggers.tags??[])},{signal:"error_code",values:ye(t.error_codes??[]),triggers:ye(e.triggers.error_codes??[])}],n=[];for(let o of r){let i=new Set(o.triggers);for(let s of o.values)i.has(s)&&n.push({signal:o.signal,value:s,matched:s})}return n}function sB(e,t,r){let n=new Set(e.triggers.item_ids??[]);return ye(t.item_ids??[]).flatMap(o=>n.has(o)||Object.hasOwn(r,o)&&r[o].includes(e.id)?[{signal:"item",value:o,matched:e.id}]:[])}function Em(e,t,r){return[...oB(e,t),...iB(e,t),...sB(e,t,r)]}function aB(e,t){if(!e)return 0;let r;try{r=JSON.parse(Buffer.from(e,"base64url").toString("utf8"))}catch{throw new TypeError("defect change-risk cursor is invalid")}if(typeof r!="object"||r===null||Array.isArray(r)||r.index_fingerprint!==t||!Number.isInteger(r.offset)||r.offset<0)throw new TypeError("defect change-risk cursor does not match this index");return r.offset}function cB(e){return[e.files,e.package_names,e.item_ids,e.tags,e.error_codes].reduce((t,r)=>t+(r?.length??0),0)}function lB(e,t,r){let n=vA(e,t),o=new Map;for(let i of n.lineages)if(i.family_ids.length!==0)for(let s of i.item_ids){r[s]=ye([...Object.hasOwn(r,s)?r[s]:[],...i.family_ids]);for(let a of t.get(s)?.files??[]){let c=o.get(a)??new Set;for(let l of i.family_ids)c.add(l);o.set(a,c)}}return o}function dB(e,t){for(let r of t){let n=wA(r);n===void 0?e.delete(r.id):e.set(r.id,n)}}function uB(e){let t=new Map,r=new Map;for(let n of e)for(let[o,i]of[[t,n.historical_item_ids],[r,n.triggers.item_ids??[]]])for(let s of i){let a=o.get(s)??new Set;a.add(n.id),o.set(s,a)}return{historical:t,triggers:r}}function fB(e,t,r){let n=bA(e);return[n.files,n.package_names,n.tags,n.error_codes].some(i=>i&&i.length>0)?t.filter(i=>i.historical_item_ids.includes(e.id)||Em(i,n,{}).length>0).map(i=>i.id):ye([...r.historical.get(e.id)??[],...r.triggers.get(e.id.trim())??[]])}function fte(e,t,r={}){vm(e);let n=[...e.families].sort((b,w)=>b.id<w.id?-1:1),o=TA({...e,families:n}),i=new Set(r.changed_item_ids??[]),s=r.previous_index?.policy_fingerprint===o,a=Object.assign(Object.create(null),s?Object.fromEntries(Object.entries(r.previous_index?.direct_item_families??r.previous_index?.item_families??{}).filter(([b])=>!i.has(b))):{}),c=s?Object.keys(a).length:0,l=uB(n);for(let b of t){let w=fB(b,n,l);w.length>0?a[b.id]=w:delete a[b.id]}let d=Object.fromEntries(Object.entries(a).sort(([b],[w])=>b<w?-1:1)),u=new Map(s?Object.entries(r.previous_index?.recurrence_records??{}).filter(([b])=>!i.has(b)):[]);dB(u,t);let f=lB(n,u,a),p=Object.fromEntries([...u].sort(([b],[w])=>b<w?-1:1)),m=Object.fromEntries([...f].sort(([b],[w])=>b<w?-1:1).map(([b,w])=>[b,[...w].sort()])),h=Object.fromEntries(Object.entries(a).sort(([b],[w])=>b<w?-1:1).map(([b,w])=>[b,ye(w)]));return{version:1,policy_fingerprint:o,index_fingerprint:TA({policy_fingerprint:o,item_families:h,direct_item_families:d,recurrence_records:p,file_families:m}),families:n,item_families:h,direct_item_families:d,recurrence_records:p,file_families:m,build:{items_scanned:t.length,items_reused:c,items_indexed:Object.keys(h).length}}}function pte(e,t,r={}){let n=r.limit??25;if(!Number.isInteger(n)||n<1||n>100)throw new TypeError("defect change-risk limit must be an integer from 1 through 100");let o=aB(r.cursor,e.index_fingerprint),i=e.families.flatMap(d=>{let u=Em(d,t,e.item_families);for(let f of ye(t.files??[]))e.file_families&&Object.hasOwn(e.file_families,f)&&e.file_families[f].includes(d.id)&&u.push({signal:"file",value:f,matched:`recurs_from:${d.id}`});return u.sort((f,p)=>f.signal!==p.signal?f.signal.localeCompare(p.signal):f.value!==p.value?f.value.localeCompare(p.value):f.matched.localeCompare(p.matched)),u.length===0?[]:[{family_id:d.id,family_version:d.version,owner_item_id:d.owner_item_id,escape_class:d.escape_class,reasons:u,local_checks:ye(d.checks.local),hosted_checks:ye(d.checks.hosted),budget:d.budget}]}),s=i.slice(o,o+n),a=o+s.length,c=a<i.length?Buffer.from(JSON.stringify({index_fingerprint:e.index_fingerprint,offset:a})).toString("base64url"):void 0,l={risk_detected:i.length>0,index_fingerprint:e.index_fingerprint,items:s,total:i.length,...c?{next_cursor:c}:{},required_local_checks:ye(i.flatMap(d=>d.local_checks)),required_hosted_checks:ye(i.flatMap(d=>d.hosted_checks)),row_contract:{row_keys:["items"],jq_selector:".items[]"}};return{...l,cost:{families_evaluated:e.families.length,signals_evaluated:cB(t),families_selected:i.length,estimated_output_tokens:Math.ceil(JSON.stringify(l).length/4)}}}function pB(e){return typeof e.type=="string"&&e.type.toLowerCase()==="issue"||(Array.isArray(e.tags)?e.tags:[]).some(t=>typeof t=="string"&&["bug","defect","security"].includes(t.toLowerCase()))}function Zc(e){return typeof e=="string"&&e.trim().length>0}function kA(e){return Array.isArray(e)&&e.length>0&&e.every(Zc)}function mB(e,t){if(typeof e!="object"||e===null||Array.isArray(e))return{valid:!1,expired:!1};let r=e;if(!wm.includes(r.disposition)||typeof r.owner!="string"||!r.owner.trim())return{valid:!1,expired:!1};if(r.disposition==="explicit_waiver"){let n=Date.parse(r.waiver_expires_at??"");return{valid:Zc(r.waiver_reason)&&Number.isFinite(n)&&n>=t,expired:Number.isFinite(n)&&n<t}}return{valid:Zc(r.gate_id)&&Zc(r.negative_control)&&kA(r.local_checks)&&kA(r.hosted_checks),expired:!1}}function _B(e,t){let r=[];if(!Number.isFinite(Date.parse(typeof e.completed_at=="string"?e.completed_at:""))&&!Number.isFinite(Date.parse(typeof e.closed_at=="string"?e.closed_at:""))&&r.push({item_id:e.id,kind:"invalid_completion_timestamp",detail:`${e.id} requires a valid completed_at or closed_at timestamp after the defect-evidence epoch.`}),typeof e.escape_class!="string"?r.push({item_id:e.id,kind:"missing_escape_class",detail:`${e.id} requires escape_class after the defect-evidence epoch.`}):mo.includes(e.escape_class)||r.push({item_id:e.id,kind:"invalid_escape_class",detail:`${e.id} has unsupported escape_class ${e.escape_class}.`}),e.gate_evidence===void 0)return r.push({item_id:e.id,kind:"missing_gate_evidence",detail:`${e.id} requires structured gate_evidence after the defect-evidence epoch.`}),r;let n=mB(e.gate_evidence,t);return n.valid||r.push({item_id:e.id,kind:n.expired?"expired_waiver":"invalid_gate_evidence",detail:n.expired?`${e.id} carries an expired gate-evidence waiver.`:`${e.id} gate_evidence does not prove a gate or explicit waiver.`}),r}function mte(e,t,r,n=new Date){vm(t);let o=Date.parse(t.evidence_epoch),i=new Set(r),s=e.filter(f=>i.has(f.status)&&pB(f)),a=s.filter(f=>{let p=Date.parse(typeof f.completed_at=="string"?f.completed_at:"");if(Number.isFinite(p))return p>=o;let m=Date.parse(typeof f.closed_at=="string"?f.closed_at:"");if(Number.isFinite(m))return m>=o;let h=Date.parse(typeof f.created_at=="string"?f.created_at:"");return!Number.isFinite(h)||h>=o}),c=Object.fromEntries(mo.map(f=>[f,0])),l=Object.fromEntries(wm.map(f=>[f,0])),d=s.filter(f=>typeof f.escape_class=="string"&&mo.includes(f.escape_class));for(let f of d)if(c[f.escape_class]+=1,typeof f.gate_evidence=="object"&&f.gate_evidence!==null&&!Array.isArray(f.gate_evidence)){let p=f.gate_evidence.disposition;typeof p=="string"&&wm.includes(p)&&(l[p]+=1)}let u=a.flatMap(f=>_B(f,n.getTime()));return u.sort((f,p)=>f.item_id!==p.item_id?f.item_id.localeCompare(p.item_id):f.kind.localeCompare(p.kind)),{ok:u.length===0,governed_item_count:a.length,classified_item_count:d.length,class_counts:c,evidence_disposition_counts:l,findings:u}}function gB(e){if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("defect recurrence policy must be an object");let t=e;if(!Array.isArray(t.families))throw new TypeError("defect recurrence policy families must be an array");return vm(t),t}function _te(e){if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("defect change-risk request must be an object");let t=e,r=AA(t.change,"defect change-risk request.change");if(t.cursor!==void 0&&typeof t.cursor!="string")throw new TypeError("defect change-risk request.cursor must be a string");if(t.limit!==void 0&&!Number.isInteger(t.limit))throw new TypeError("defect change-risk request.limit must be an integer");return{policy:gB(t.policy),change:r,...t.cursor===void 0?{}:{cursor:t.cursor},...t.limit===void 0?{}:{limit:t.limit}}}(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]="06f5d0fa-6f34-5e3e-990b-2e3bc00364ca")}catch{}})();var Qc={type:"string",pattern:"\\S"},Tm={type:"array",minItems:1,items:Qc},OA={type:"object",properties:Object.fromEntries(["files","package_names","item_ids","tags","error_codes"].map(e=>[e,{type:"array",items:{type:"string"}}]))},yB={type:"object",required:["id","version","title","owner_item_id","escape_class","triggers","checks","negative_control","historical_item_ids","budget"],properties:{id:Qc,version:{type:"integer",minimum:1},title:Qc,owner_item_id:Qc,escape_class:{enum:mo},triggers:{type:"object",properties:{...Object.fromEntries(["package_names","item_ids","tags","error_codes"].map(e=>[e,{type:"array",items:{type:"string"}}])),file_patterns:{type:"array",items:{type:"string",maxLength:256}}}},checks:{type:"object",required:["local","hosted"],properties:{local:Tm,hosted:Tm}},negative_control:{...OA,minProperties:1},historical_item_ids:Tm,budget:{type:"object",required:["max_escape_rate","max_false_positive_rate"],properties:Object.fromEntries(["max_escape_rate","max_false_positive_rate"].map(e=>[e,{type:"number",minimum:0,maximum:1}]))}}},SA={oneOf:[{type:"number"},{type:"array",items:{type:"string"}}]},CA={if:{required:["field"]}};Reflect.set(CA,"then",{oneOf:[{required:["equals"]},{required:["state"]}]});var IA={oneOf:[...[!0,!1].map(e=>({type:"object",additionalProperties:!1,required:e?["policy","change"]:["policy"],properties:{policy:{type:"object",required:["version","evidence_epoch","families"],properties:{version:{const:1},evidence_epoch:{type:"string",format:"date-time"},families:{type:"array",items:yB}},additionalProperties:!1},...e?{change:{...OA,additionalProperties:!1}}:{uncoveredOnly:{type:"boolean"}},limit:{type:"integer",minimum:1,maximum:100},cursor:{type:"string",minLength:1}}})),{type:"object",additionalProperties:!1,required:["id","source"],properties:{id:{type:"string",minLength:1},description:{type:"string"},max_cost:{type:"number",minimum:0},source:{oneOf:[{type:"object",additionalProperties:!1,required:["kind"],allOf:[CA],properties:{kind:{const:"items"},statuses:{type:"array",items:{type:"string"}},types:{type:"array",items:{type:"string"}},tags:{type:"array",items:{type:"string"}},field:{type:"string"},equals:{type:["string","number","boolean","null"]},state:{enum:["present","missing"]}}},{type:"object",additionalProperties:!1,required:["kind","dependency_kind"],properties:{kind:{const:"dependency_kind"},dependency_kind:{type:"string",minLength:1}}},{type:"object",required:["kind","operation","field"],properties:{kind:{const:"graph"},operation:{type:"string",minLength:1},field:{type:"string",minLength:1},parameters:{type:"object"}},additionalProperties:!1},...["validate","health"].map(e=>({type:"object",required:["kind","check","field"],properties:{kind:{const:e},check:{type:"string",minLength:1},field:{type:"string",minLength:1}},additionalProperties:!1})),{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{const:"history"},op:{type:"string"},author:{type:"string"},harness:{type:"string"},model:{type:"string"}}},{type:"object",additionalProperties:!1,required:["kind","link","state"],properties:{kind:{const:"links"},link:{enum:["files","tests","docs"]},state:{enum:["present","missing"]}}},{type:"object",additionalProperties:!1,required:["kind","provider","key"],properties:{kind:{const:"provider"},provider:{type:"string",minLength:1},key:{type:"string",minLength:1},parameters:{type:"object"}}},{type:"object",additionalProperties:!1,required:["kind","expression"],properties:{kind:{const:"derived"},expression:{type:"object",minProperties:1}}}]}}},{type:"object",additionalProperties:!1,required:["id","measurement_id","owner_item_id","scope","enforcement","negative_control"],oneOf:[{required:["ceiling"]},{required:["floor"]},{required:["equals"]},{required:["zero"]},{required:["monotone_nondecreasing"]},{required:["monotone_nonincreasing"]},{required:["subset_of"]}],allOf:[{oneOf:[{not:{required:["lifetime"],properties:{lifetime:{const:"retire"}}}},{required:["lifetime","retire_reason"],properties:{lifetime:{const:"retire"},retire_reason:{type:"string",minLength:1}}}]}],properties:{id:{type:"string",minLength:1},measurement_id:{type:"string",minLength:1},owner_item_id:{type:"string",minLength:1},scope:{oneOf:[{type:"object",additionalProperties:!1,required:["kind"],properties:{kind:{enum:["all","active"]}}},{type:"object",additionalProperties:!1,required:["kind","measurement_id"],properties:{kind:{const:"filter"},measurement_id:{type:"string",minLength:1}}}]},ceiling:{type:"number"},floor:{type:"number"},equals:SA,zero:{const:!0},monotone_nondecreasing:{type:"number"},monotone_nonincreasing:{type:"number"},subset_of:{type:"array",items:{type:"string"}},lifetime:{enum:["hold","retire"]},retire_reason:{type:"string",minLength:1},enforcement:{enum:["block","warn","observe"]},authorization_decision:{type:"string",minLength:1},negative_control:{type:"object",additionalProperties:!1,required:["cases"],properties:{cases:{type:"array",minItems:2,items:{type:"object",additionalProperties:!1,required:["observed","expected"],properties:{observed:SA,expected:{enum:["pass","fail"]}}}}}}}},{type:"object",additionalProperties:!1,required:["id","assertion_ids","triggers"],properties:{id:{type:"string",minLength:1},description:{type:"string"},assertion_ids:{type:"array",minItems:1,items:{type:"string",minLength:1}},triggers:{type:"array",minItems:1,items:{enum:["pre-commit","pre-push","pre-merge","ci","pre-release","post-release","scheduled","on-claim","on-close"]}},provider_policy:{type:"object",additionalProperties:!1,required:["allowed_providers","triggers"],properties:{allowed_providers:{type:"array",items:{type:"string",minLength:1}},triggers:{type:"object",additionalProperties:{type:"object",additionalProperties:!1,required:["max_cost_class","allow_network"],properties:{max_cost_class:{enum:["low","medium","high"]},allow_network:{type:"boolean"}}}}}}}}]};(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]="13afdd63-c264-5e19-a574-4067594b535b")}catch{}})();var km={json:{type:"boolean",default:!0},quiet:{type:"boolean"},profile:{type:"boolean"},noExtensions:{type:"boolean"},noPager:{type:"boolean"},tokenAccounting:{type:"boolean"},outputInclude:{type:"string",minLength:1},outputLimit:{anyOf:[{type:"integer",minimum:1},{const:"unbounded"}]},outputBudget:{anyOf:[{type:"integer",minimum:1},{const:"unbounded"}]},outputFormat:{type:"string",enum:["json","toon"]},outputSession:{anyOf:[{type:"string",minLength:1},{type:"object",additionalProperties:!1,required:["version","id","token_budget","spent_tokens","seen_item_ids"],properties:{version:{const:1},id:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$"},token_budget:{type:"integer",minimum:256},spent_tokens:{type:"integer",minimum:0},seen_item_ids:{type:"array",maxItems:di,items:{type:"string",pattern:"^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"}}}}]},outputCursor:{type:"string",minLength:1},outputRowContract:{type:"boolean"},path:{type:"string"},pmExecutable:{type:"string"},timeoutMs:{type:"number"},id:{type:"string"},target:{type:"string"},snapshotAction:{type:"string",enum:["create","list","inspect","restore","delete"]},artifact:{type:"string",enum:["item","history","relationship","json"]},basePath:{type:"string"},oursPath:{type:"string"},theirsPath:{type:"string"},outputPath:{type:"string"},itemPath:{type:"string"},prefer:{type:"string",enum:["ours","theirs"]},includeReconciled:{type:"boolean"},lockTtlSeconds:{type:"number"},lockWaitMs:{type:"number"},capability:{type:"string",minLength:1},declarative:{type:"boolean"},output:{type:"string",minLength:1},markdown:{type:"boolean"},init:{type:"boolean"},install:{type:"boolean"},uninstall:{type:"boolean"},explore:{type:"boolean"},manage:{type:"boolean"},describe:{type:"boolean"},doctor:{type:"boolean"},catalog:{type:"boolean"},adopt:{type:"boolean"},adoptAll:{type:"boolean"},activate:{type:"boolean"},deactivate:{type:"boolean"},filterFilesMissing:{type:"boolean"},filterDocsMissing:{type:"boolean"},matchMode:{type:"string",enum:["all","any","phrase"]},minScore:{anyOf:[{type:"number"},{type:"string",pattern:"^\\d+(\\.\\d+)?$"}]},rank:{anyOf:[{type:"number"},{type:"string",pattern:"^-?\\d+$"}]},exemptIsolateType:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},saveBaseline:{type:"boolean"},rebuild:{type:"boolean"},github:{type:"string"},ref:{type:"string"},query:{type:"string"},queries:{type:"string"},k:{anyOf:[{type:"number"},{type:"string"}]},failUnder:{anyOf:[{type:"number"},{type:"string"}]},for:{type:"string",minLength:1},keywords:{type:"string"},fields:{type:"string"},sort:{type:"string",enum:["priority","deadline","updated_at","created_at","title","parent"]},prefix:{type:"string"},idPrefix:{type:"string"},workspace:{type:"string"},preset:{type:"string",enum:["minimal","default","strict","custom"]},typePreset:{type:"string",enum:["agile","ops","research"]},defaults:{type:"boolean"},verbose:{type:"boolean"},agentGuidance:{type:"string",enum:["ask","add","skip","status"]},withPackages:{type:"boolean"},mergeFence:{type:"boolean"},scope:{type:"string",enum:["project","global"]},allOver:{type:"number"},minEntries:{type:"number"},closed:{type:"boolean"},allStreams:{type:"boolean"},contractAction:{type:"string"},command:{type:"string"},summary:{type:"boolean"},schemaOnly:{type:"boolean"},flagsOnly:{type:"boolean"},availabilityOnly:{type:"boolean"},runtimeOnly:{type:"boolean"},activeOnly:{type:"boolean"},eagerTags:{type:"boolean"},fullChangedFields:{type:"boolean"},provenance:{type:"boolean"},provenanceSummary:{type:"boolean"},agentInstance:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},provenanceFilter:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},idOnly:{type:"boolean"},allowMissingParent:{type:"boolean"},allowUnresolvedDeps:{type:"boolean"},allowDuplicate:{type:"boolean"},duplicateOf:{type:"string"},configAction:{type:"string",enum:["get","set","list","export"]},key:{type:"string"},title:{type:"string"},item:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},start:{type:"string"},duration:{type:"string"},end:{type:"string"},location:{type:"string"},timezone:{type:"string"},allDay:{type:"boolean"},description:{type:"string"},type:{type:"string"},template:{type:"string"},createMode:{type:"string",enum:["strict","progressive"]},schedulePreset:{type:"string",enum:["lightweight"]},status:{type:"string"},since:{type:"string",format:"date-time"},cursorMode:{type:"string",enum:["batch","row"]},exhaustive:{type:"boolean"},threshold:{type:"number",minimum:0,maximum:1},filterStatus:{type:"string"},filterType:{type:"string"},filterTag:{type:"string"},filterPriority:{anyOf:[{type:"string"},{type:"number"}]},filterDeadlineBefore:{type:"string"},filterDeadlineAfter:{type:"string"},filterUpdatedAfter:{type:"string"},filterUpdatedBefore:{type:"string"},filterCreatedAfter:{type:"string"},filterCreatedBefore:{type:"string"},filterAssignee:{type:"string"},filterAssigneeFilter:{type:"string",enum:["assigned","unassigned"]},filterParent:{type:"string"},filterSprint:{type:"string"},filterRelease:{type:"string"},closeReason:{type:"string"},completedAt:{type:"string",format:"date-time"},reason:{type:"string"},priority:{anyOf:[{type:"string"},{type:"number"}]},tags:{type:"string"},addTags:{type:"array",items:{type:"string"}},removeTags:{type:"array",items:{type:"string"}},addAc:{type:"array",items:{type:"string"}},removeAc:{type:"array",items:{type:"string"}},body:{type:"string"},deadline:{type:"string"},estimate:{anyOf:[{type:"string"},{type:"number"}]},acceptanceCriteria:{type:"string"},author:{type:"string"},message:{type:"string"},owner:{type:"string"},enforcement:{type:"string"},assignee:{type:"string"},assigneeFilter:{type:"string",enum:["assigned","unassigned"]},parent:{type:"string"},reviewer:{type:"string"},attributedAuthor:{type:"string"},planFingerprint:{type:"string",pattern:"^[a-f0-9]{64}$"},historyEvent:{type:"array",items:{type:"string"}},risk:{type:"string"},confidence:{anyOf:[{type:"string"},{type:"number"}]},sprint:{type:"string"},release:{type:"string"},blockedBy:{type:"string"},blockedReason:{type:"string"},unblockNote:{type:"string"},reporter:{type:"string"},severity:{type:"string"},environment:{type:"string"},reproSteps:{type:"string"},resolution:{type:"string"},expectedResult:{type:"string"},actualResult:{type:"string"},affectedVersion:{type:"string"},fixedVersion:{type:"string"},component:{type:"string"},regression:{anyOf:[{type:"boolean"},{type:"string"},{type:"number"}]},customerImpact:{type:"string"},definitionOfReady:{type:"string"},order:{anyOf:[{type:"string"},{type:"number"}]},goal:{type:"string"},objective:{type:"string"},value:{type:"string"},impact:{type:"string"},outcome:{type:"string"},whyNow:{type:"string"},mode:{type:"string",enum:["keyword","semantic","hybrid"]},semanticWeight:{anyOf:[{type:"string"},{type:"number"}]},op:{type:"string"},compact:{type:"boolean"},raw:{type:"boolean"},brief:{type:"boolean"},full:{type:"boolean"},includeEmpty:{type:"boolean"},view:{type:"string",enum:["agenda","day","week","month"]},date:{type:"string"},from:{type:"string"},before:{type:"string"},at:{type:"string"},to:{type:"string"},migrationId:{type:"string"},fieldTypeScope:{type:"string"},past:{type:"boolean"},fullPeriod:{type:"boolean"},include:{type:"string"},recurrenceLookaheadDays:{anyOf:[{type:"string"},{type:"number"}]},recurrenceLookbackDays:{anyOf:[{type:"string"},{type:"number"}]},occurrenceLimit:{anyOf:[{type:"string"},{type:"number"}]},includeLinked:{type:"boolean"},semantic:{type:"boolean"},hybrid:{type:"boolean"},titleExact:{type:"boolean"},phraseExact:{type:"boolean"},highlight:{type:"boolean"},includeBody:{type:"boolean"},noTruncate:{type:"boolean"},strictRead:{type:"boolean"},tag:{type:"string"},deadlineBefore:{type:"string"},deadlineAfter:{type:"string"},today:{type:"boolean"},recent:{type:"boolean"},updatedAfter:{type:"string"},updatedBefore:{type:"string"},createdAfter:{type:"string"},createdBefore:{type:"string"},filterAcMissing:{type:"boolean"},filterEstimatesMissing:{type:"boolean"},filterResolutionMissing:{type:"boolean"},filterMetadataMissing:{type:"boolean"},filterReviewerMissing:{type:"boolean"},filterRiskMissing:{type:"boolean"},filterConfidenceMissing:{type:"boolean"},filterSprintMissing:{type:"boolean"},filterReleaseMissing:{type:"boolean"},hasNotes:{type:"boolean"},noNotes:{type:"boolean"},hasLearnings:{type:"boolean"},noLearnings:{type:"boolean"},hasFiles:{type:"boolean"},noFiles:{type:"boolean"},hasDocs:{type:"boolean"},noDocs:{type:"boolean"},hasTests:{type:"boolean"},noTests:{type:"boolean"},hasComments:{type:"boolean"},noComments:{type:"boolean"},hasDeps:{type:"boolean"},noDeps:{type:"boolean"},hasBody:{type:"boolean"},emptyBody:{type:"boolean"},hasLinkedCommand:{type:"boolean"},noLinkedCommand:{type:"boolean"},filterHasNotes:{type:"boolean"},filterNoNotes:{type:"boolean"},filterHasLearnings:{type:"boolean"},filterNoLearnings:{type:"boolean"},filterHasFiles:{type:"boolean"},filterNoFiles:{type:"boolean"},filterHasDocs:{type:"boolean"},filterNoDocs:{type:"boolean"},filterHasTests:{type:"boolean"},filterNoTests:{type:"boolean"},filterHasComments:{type:"boolean"},filterNoComments:{type:"boolean"},filterHasDeps:{type:"boolean"},filterNoDeps:{type:"boolean"},filterHasBody:{type:"boolean"},filterEmptyBody:{type:"boolean"},filterHasLinkedCommand:{type:"boolean"},filterNoLinkedCommand:{type:"boolean"},ids:{type:"string"},limit:{anyOf:[{type:"string"},{type:"number"}]},blockedLimit:{anyOf:[{type:"string"},{type:"number"}]},readyOnly:{type:"boolean"},offset:{anyOf:[{type:"string"},{type:"number"}]},progress:{type:"boolean"},background:{type:"boolean"},runId:{type:"string"},stream:{anyOf:[{type:"boolean"},{type:"string",enum:["stdout","stderr","both","rows","ndjson","jsonl"]}]},tail:{anyOf:[{type:"string"},{type:"number"}]},addJson:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},eventType:{type:"string"},includeMeta:{type:"boolean"},allActionable:{type:"boolean"},verboseAuthorEvents:{type:"boolean"},match:{type:"string"},onlyIndex:{anyOf:[{type:"string"},{type:"number"}]},removeIndex:{type:"array",items:{anyOf:[{type:"string"},{type:"number"}]}},onlyLast:{type:"boolean"},envSet:{type:"array",items:{type:"string"}},envClear:{type:"array",items:{type:"string"}},sharedHostSafe:{type:"boolean"},detail:{type:"string",enum:["summary","deep"]},trace:{type:"boolean"},reload:{type:"boolean"},watch:{type:"boolean"},runtimeProbe:{type:"boolean"},fixManagedState:{type:"boolean"},isolated:{type:"boolean"},ignoreGlobal:{type:"boolean"},pmContext:{type:"string",enum:["schema","tracker","auto"]},overrideLinkedPmContext:{type:"boolean"},workspaceContext:{type:"string",enum:["source","isolated","snapshot"]},overrideLinkedWorkspaceContext:{type:"boolean"},allowUntrustedLinkedTests:{type:"boolean"},acknowledgeLinkedTests:{type:"boolean"},failOnContextMismatch:{type:"boolean"},failOnSkipped:{type:"boolean"},failOnEmptyTestRun:{type:"boolean"},requireAssertionsForPm:{type:"boolean"},checkContext:{type:"boolean"},autoPmContext:{type:"boolean"},measure:{type:"array",items:{type:"string"}},metricBelow:{type:"string"},metricDiff:{type:"string"},diff:{type:"boolean"},storage:{type:"boolean"},metadataCoverage:{type:"boolean"},fieldUtilization:{type:"boolean"},byAssignee:{type:"boolean"},byTag:{type:"boolean"},byPriority:{type:"boolean"},tagPrefix:{type:"string"},measurements:{type:"boolean"},metric:{type:"string"},measurementLimit:{type:"integer",minimum:0,maximum:1e3},observe:{type:"array",items:{type:"string"}},improvementDirection:{type:"string",enum:["higher","lower","target"]},measurementSource:{type:"string"},measurementItem:{type:"string"},measurementRevision:{type:"string"},provenanceCoverage:{type:"boolean"},fleetAttribution:{type:"boolean"},eventLimit:{type:"integer",minimum:1,maximum:1e5},minimumSample:{type:"integer",minimum:1,maximum:1e4},verify:{type:"boolean"},literal:{type:"array",items:{type:"string"}},regex:{type:"array",items:{type:"string"}},replacement:{type:"string"},timeout:{anyOf:[{type:"string"},{type:"number"}]},validateClose:{type:"string",enum:["off","warn","strict"]},checkMetadata:{type:"boolean"},metadataProfile:{type:"string",enum:["core","strict","custom"]},checkResolution:{type:"boolean"},checkCompleteness:{type:"boolean"},checkLifecycle:{type:"boolean"},checkStaleBlockers:{type:"boolean"},dependencyCycleSeverity:{type:"string",enum:["off","warn","error"]},parentCycleSeverity:{type:"string",enum:["off","warn","error"]},checkFiles:{type:"boolean"},checkStorageIntegrity:{type:"boolean"},strictDirectories:{type:"boolean"},requireMergeDrivers:{type:"boolean"},checkOnly:{type:"boolean"},checkTelemetry:{type:"boolean"},noRefresh:{type:"boolean"},refreshVectors:{type:"boolean"},verboseStaleItems:{type:"boolean"},skipVectors:{type:"boolean"},skipIntegrity:{type:"boolean"},skipDrift:{type:"boolean"},verboseDiagnostics:{type:"boolean"},allAffectedIds:{type:"boolean"},scanMode:{type:"string",enum:["default","tracked-all","tracked-all-strict"]},includePmInternals:{type:"boolean"},verboseFileLists:{type:"boolean"},strictExit:{type:"boolean"},failOnWarn:{type:"boolean"},fixHints:{type:"boolean"},autoFix:{type:"boolean"},fixScope:{type:"array",items:{type:"string",enum:["metadata","resolution","estimates","lifecycle"]}},pruneMissing:{type:"boolean"},checkHistoryDrift:{type:"boolean"},checkCommandReferences:{type:"boolean"},counts:{type:"boolean"},edit:{type:"integer",minimum:1},delete:{type:"integer",minimum:1},dryRun:{type:"boolean"},normalizeProvenance:{type:"boolean"},salvageTail:{type:"boolean"},all:{type:"boolean"},clear:{type:"boolean"},cliOnly:{type:"boolean"},packagesOnly:{type:"boolean"},repair:{type:"boolean"},packageName:{type:"string"},rollback:{type:"string"},noCheckpoint:{type:"boolean"},force:{type:"boolean"},ifAvailable:{type:"boolean"},ifAbsent:{type:"boolean"},next:{type:"boolean"},maxAttempts:{anyOf:[{type:"integer",minimum:1,maximum:100},{type:"string",pattern:"^(?:[1-9]|[1-9][0-9]|100)$"}]},includeDecisions:{type:"boolean"},includeGates:{type:"boolean"},includeContainers:{type:"boolean"},explainRanking:{type:"boolean"},noTags:{type:"boolean"},noExtensionHealth:{type:"boolean"},run:{type:"boolean"},count:{type:"boolean"},sum:{type:"string"},avg:{type:"string"},tree:{type:"boolean"},treeId:{type:"string",minLength:1},definition:{type:"object"},trigger:{type:"string",enum:["pre-commit","pre-push","pre-merge","ci","pre-release","post-release","scheduled","on-claim","on-close"]},gate:{type:"string",minLength:1},treeDepth:{anyOf:[{type:"string"},{type:"number"}]},includeUnparented:{type:"boolean"},gcScope:{type:"array",items:{type:"string",enum:["index","embeddings","runtime","locks"]}},maxDepth:{anyOf:[{type:"string"},{type:"number"}]},nodeLimit:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},edgeLimit:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},tokenBudget:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},cursor:{type:"string"},direction:{type:"string",enum:["outgoing","incoming","both"]},kind:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},after:{type:"string"},maxPaths:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},sample:{anyOf:[{type:"string"},{type:"integer",minimum:1}]},exemptIsolate:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},collapse:{type:"string",enum:["none","repeated"]},shell:{type:"string",enum:["bash","zsh","fish"]},stdin:{type:"boolean"},file:{type:"string"},preserveSourceIds:{type:"boolean"},folder:{type:"string"},subcommand:{type:"string"},name:{type:"string"},defaultStatus:{type:"string"},alias:{type:"array",items:{type:"string"}},role:{type:"array",items:{type:"string"}},fieldType:{type:"string",enum:["string","number","boolean","string_array"]},commands:{type:"array",items:{type:"string"}},cliFlag:{type:"string"},required:{type:"boolean"},requiredOnCreate:{type:"boolean"},allowUnset:{type:"boolean"},requiredTypes:{type:"array",items:{type:"string"}},infer:{type:"boolean"},minCount:{type:"number"},text:{type:"string"},add:{type:"array",items:{type:"string"}},addGlob:{type:"array",items:{type:"string"}},remove:{type:"array",items:{type:"string"}},migrate:{type:"array",items:{type:"string"}},discover:{type:"boolean"},apply:{type:"boolean"},discoveryNote:{type:"string"},lookupPath:{type:"array",items:{type:"string"}},explain:{type:"boolean"},lines:{type:"string",pattern:"^[1-9]\\d*:[1-9]\\d*$"},decisionDepth:{type:"integer",minimum:1,maximum:32},addNote:{type:"string"},list:{type:"boolean"},appendStable:{type:"boolean"},validatePaths:{type:"boolean"},dep:{type:"array",items:{type:"string"}},depRemove:{type:"array",items:{type:"string"}},replaceDeps:{type:"boolean"},replaceTests:{type:"boolean"},replaceFiles:{type:"boolean"},replaceDocs:{type:"boolean"},comment:{type:"array",items:{type:"string"}},note:{type:"array",items:{type:"string"}},learning:{type:"array",items:{type:"string"}},linkedFile:{type:"array",items:{type:"string"}},linkedTest:{type:"array",items:{type:"string"}},doc:{type:"array",items:{type:"string"}},reminder:{type:"array",items:{type:"string"}},event:{type:"array",items:{type:"string"}},typeOption:{type:"array",items:{type:"string"}},field:{type:"array",items:{type:"string"}},unset:{type:"array",items:{type:"string"}},clearDeps:{type:"boolean"},clearComments:{type:"boolean"},clearNotes:{type:"boolean"},clearLearnings:{type:"boolean"},clearFiles:{type:"boolean"},clearTests:{type:"boolean"},clearDocs:{type:"boolean"},clearReminders:{type:"boolean"},clearEvents:{type:"boolean"},clearTypeOptions:{type:"boolean"},criterion:{type:"array",items:{type:"string"}},clearCriteria:{type:"boolean"},groupBy:{type:"string"},setMode:{type:"string",enum:["element","tuple"]},completion:{type:"boolean"},format:{type:"string"},unbounded:{type:"boolean"},depth:{type:"string",enum:["brief","standard","deep","full"]},section:{type:"array",items:{type:"string",enum:["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]}},activityLimit:{anyOf:[{type:"string"},{type:"number"}]},staleThreshold:{type:"string"},policy:{type:"string"}},RA={schema:{definition:{type:["object","string"]}},assurance:{definition:IA,kind:{type:"string",enum:["measurement","assertion","gate"]},subcommand:{type:"string",enum:["list","show","put","remove","run","verdicts","presets","apply","derive","promote","risk","lineages"]},preset:{type:"string",enum:["software-delivery","research","agent-evaluation","operations"]},enforcement:{type:"string",enum:["warn","block"]},limit:{type:"integer",minimum:1,maximum:1e3}},activity:{harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},"update-many":{ids:{anyOf:[{type:"string"},{type:"number"},{type:"array",items:{anyOf:[{type:"string"},{type:"number"}]}}]}},"close-many":{ids:{anyOf:[{type:"string"},{type:"number"},{type:"array",items:{anyOf:[{type:"string"},{type:"number"}]}}]}},"history-compact":{ids:{anyOf:[{type:"string"},{type:"number"},{type:"array",items:{anyOf:[{type:"string"},{type:"number"}]}}]}},events:{since:{type:"string",minLength:1},type:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},author:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},item:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},limit:{type:"integer",minimum:0,maximum:1e3},harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},history:{harness:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},remind:{at:{type:"string",minLength:1}}},hB=["create","show","add-step","update-step","complete-step","block-step","reorder-step","remove-step","link","unlink","decision","discovery","validation","resume","approve","materialize"],Am={subcommand:{type:"string",enum:[...hB]},stepRef:{type:"string"},reorderTo:{anyOf:[{type:"string"},{type:"number"}]},scope:{type:"string"},harness:{type:"string",enum:[...Qm]},mode:{type:"string",enum:[...Zm]},resumeContext:{type:"string"},related:{type:"string"},blocks:{type:"string"},claim:{type:"boolean"},fromSearch:{type:"string"},stepTitle:{type:"string"},step:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},stepBody:{type:"string"},stepOwner:{type:"string"},stepStatus:{type:"string",enum:[..._s]},stepEvidence:{type:"string"},stepBlockedReason:{type:"string"},stepReplacement:{type:"string"},dependsOn:{type:"string"},link:{type:"string"},linkKind:{type:"string",enum:[...e_]},linkNote:{type:"string"},promoteToItemDep:{type:"boolean"},allowMultipleActive:{type:"boolean"},file:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},test:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},doc:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]},decisionText:{type:"string"},decision:{type:"string"},decisionRationale:{type:"string"},decisionEvidence:{type:"string"},discoveryText:{type:"string"},discovery:{type:"string"},validationText:{type:"string"},validation:{type:"string"},validationCommand:{type:"string"},validationExpected:{type:"string"},steps:{type:"array",items:{type:"string"}},materializeType:{type:"string"},materializeParent:{type:"string"},materializeTags:{type:"string"},field:{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}]}},Sm={subcommand:{description:"Plan workflow operation to run.",examples:["create","show","add-step","approve"]},stepRef:{description:"Plan step id or order for step lifecycle subcommands.",examples:["plan-step-001","1"]},reorderTo:{description:"New integer order for reorder-step.",examples:[1,"2"]},scope:{description:"Short free-text scope statement describing what the Plan covers.",examples:["Release readiness audit","Search package migration"]},mode:{description:"Plan lifecycle mode.",examples:["draft","research","approved"]},step:{description:"Ordered initial step titles for create (string or array, never comma-split; stepTitle, when also set, becomes the first step). For step subcommands a single value aliases stepTitle.",examples:[["Read the code","Write the fix","Run the tests"]]},file:{description:"File link to attach while creating or materializing a Plan.",examples:["path=src/cli.ts,note=implementation surface"]},test:{description:"Test command link to attach while creating or materializing a Plan.",examples:["command=pnpm build,timeout_seconds=300"]},doc:{description:"Documentation link to attach while creating or materializing a Plan.",examples:["path=docs/SDK.md,note=public API reference"]}},xA={includeGates:{description:"Opt next or claim-next into outcome gates. Blocker and ownership restrictions still apply."},includeContainers:{description:"Opt next or claim-next into containers with unfinished descendants. Blocker and ownership restrictions still apply."},action:{description:"Tool action to execute."},pmExecutable:{description:"Override the pm executable used by actions that invoke or verify an external CLI process.",examples:["pm","node dist/cli.js"]},force:{description:"Allow the selected action to override its supported ownership, terminal-state, or destructive-operation guard."},limit:{description:"Maximum number of rows returned by the selected action.",examples:[10,"25"]},text:{description:"Text payload used by append, comment, note, or learning mutations."},path:{description:"Optional PM data root override for this invocation.",examples:[".agents/pm"]},scope:{description:"Scope selector for commands that operate on project or global state. Linked files, docs, and tests default to project scope when omitted.",examples:["project","global"]},detail:{description:"Detail mode for commands that support concise and deep diagnostics.",examples:["summary","deep"]},trace:{description:"When true for extension-doctor, include actionable registration traces in deep diagnostics."},reload:{description:"When true for extension action payloads, trigger cache-busted extension module reload."},watch:{description:"When true for extension-reload/extension action payloads, enable watch mode semantics."},runtimeProbe:{description:"When true for extension-manage, run a doctor-like runtime activation probe for parity fields."},fixManagedState:{description:"When true for extension-manage/extension-doctor, adopt unmanaged extensions before diagnostics/update checks."},isolated:{description:"When true for extension-doctor/package-doctor, ignore global registrations for hermetic project diagnostics."},ignoreGlobal:{description:"Alias for isolated on extension-doctor/package-doctor action payloads."},target:{description:"Positional target argument for the selected action (ID, source, package source, or extension name).",examples:["pm-a1b2",".agents/pm/extensions/sample","sample-extension"]},capability:{description:"Starter capability selected by extension-init or package-init scaffolding.",examples:["commands","hooks","search","schema"]},declarative:{description:"Generate the package composeExtension declarative blueprint starter."},output:{description:"File path for commands that write generated output, such as package/extension describe Markdown references.",examples:["docs/pm-package-reference.md"]},markdown:{description:"Render the package or extension description as Markdown instead of structured output.",examples:[!0]},github:{description:"GitHub shorthand owner/repo[/path] source for package/extension install actions.",examples:["org/repo/extensions/sample"]},ref:{description:"Git ref/branch/tag used when installing from GitHub shorthand/URL sources.",examples:["main","v1.0.0"]},cliOnly:{description:"Restrict upgrade to the pm CLI/SDK npm package."},packagesOnly:{description:"Restrict upgrade to managed installable pm packages."},repair:{description:"Force npm global reinstall semantics when upgrading the pm CLI/SDK."},tag:{description:"npm version or dist-tag used for CLI and registry package upgrades.",examples:["latest","next","2026.5.11"]},today:{description:"When true for list actions, include only items updated since local midnight today."},recent:{description:"When true for list actions, include only items updated in the last seven days."},packageName:{description:"Override the pm CLI package name for self-upgrade automation and tests.",examples:["@unbrained/pm-cli"]},json:{description:"Emit machine-readable JSON output."},quiet:{description:"Suppress stdout payload output."},noExtensions:{description:"Disable extension loading for this invocation."},noPager:{description:"Disable pager integration for help and long output."},tokenAccounting:{description:"Request a bounded transport-level receipt for output emitted by a compatible CLI or MCP host."},outputInclude:{description:"Comma-separated fields or sections retained by any built-in read action.",examples:["id,title,status","summary,counts"]},outputLimit:{description:"Universal read row ceiling, or unbounded to disable the shared ceiling.",examples:[10,"unbounded"]},outputBudget:{description:"Universal estimated-token ceiling for a read result, or unbounded to disable the shared ceiling.",examples:[600,1200,"unbounded"]},outputFormat:{description:"Universal read-result encoding selector.",examples:["toon","json"]},outputSession:{description:"Caller-carried JSON session state that enforces a token ceiling across read calls and replaces repeated item facts with resolvable context references.",examples:[{version:1,id:"orientation",token_budget:4e3,spent_tokens:0,seen_item_ids:[]}]},outputCursor:{description:"Opaque continuation cursor returned when a declared row collection is compacted by the output budget."},outputRowContract:{description:"Include the row selector and TOON row-encoding contract on a read result."},profile:{description:"Emit deterministic timing diagnostics to stderr."},timeoutMs:{description:"Tool execution timeout in milliseconds.",examples:[12e4]},id:{description:"Item identifier for read or mutation actions.",examples:["pm-a1b2"]},treeId:{description:"Commit, tree, snapshot, or immutable workspace identity judged by an assurance gate.",examples:["0123456789abcdef","release-candidate-3"]},definition:{description:"Structured measurement, assertion, or gate declaration used by assurance put."},trigger:{description:"Lifecycle trigger used to evaluate an assurance gate.",examples:["ci","pre-release"]},gate:{description:"Stable assurance gate id used to filter durable verdict history.",examples:["release-readiness"]},owner:{description:"pm item that owns preset or observation-derived assurance assertions.",examples:["pm-a1b2"]},enforcement:{description:"Explicit next assurance enforcement level.",examples:["warn","block"]},runId:{description:"Background test run identifier.",examples:["tr-kq9x3f-93acde"]},title:{description:"Item title text."},description:{description:"Item description text."},type:{description:"Item type name from the active runtime type registry.",examples:["Task","Feature"]},subcommand:{description:"Subcommand selector for schema, profile, telemetry, and graph actions."},name:{description:"Custom definition name, schema migration source name, or profile name.",examples:["Spike","review","component"]},defaultStatus:{description:"Default status hint recorded for a custom item type.",examples:["open"]},alias:{description:"Aliases for the custom item type or status (repeatable).",examples:[["spike","research"]]},role:{description:"Lifecycle roles for a custom status (schema add-status): draft, active, blocked, terminal, terminal_done, terminal_canceled, default_open, default_close, default_cancel.",examples:[["active"],["terminal","terminal_done"]]},fieldType:{description:"Value type for a custom field (schema add-field): string, number, boolean, or string_array.",examples:["string","number","string_array"]},fieldTypeScope:{description:"Optional item type restricting which records participate in schema rename-field.",examples:["Issue","Feature"]},migrationId:{description:"Optional stable idempotency override used to persist and resume a schema migration plan; omitted values are derived from the workspace and normalized request.",examples:["severity-to-impact-v2"]},commands:{description:"Commands a custom field is wired onto (schema add-field): create, update, update_many, list, search, calendar, context.",examples:[["create","update"],["create","update","list"]]},cliFlag:{description:"Override the auto-derived CLI flag for a custom field (schema add-field).",examples:["--owner"]},required:{description:"Mark a custom field as always required (schema add-field)."},requiredOnCreate:{description:"Mark a custom field as required at create time (schema add-field)."},allowUnset:{description:"Whether a custom field may be cleared via --unset (schema add-field); defaults to true."},allowDuplicate:{description:"Explicitly proceed when strict similarity governance finds likely duplicate items."},allowUnresolvedDeps:{description:"Permit unresolved local dependency targets while returning dependency_target_unresolved warning receipts. Cross-workspace references should use source_kind=external instead.",examples:[!0]},requiredTypes:{description:"Restrict a custom field's requirement to specific item types (schema add-field).",examples:[["Bug"],["Story","Spike"]]},infer:{description:"Infer custom item types from title-prefix conventions (schema add-type); previews unless apply is true."},minCount:{description:"Minimum number of items sharing a title prefix for schema add-type inference (default 10).",examples:[10,25]},preset:{description:"Governance preset for initialization flows.",examples:["minimal","default","strict"]},idPrefix:{description:"Tracker item identifier prefix used by initialization; overrides the positional compatibility prefix.",examples:["pm","work"]},workspace:{description:"Workspace directory where initialization resolves or creates the tracker.",examples:[".","packages/app"]},typePreset:{description:"Domain item-type preset registered during initialization.",examples:["agile","ops","research"]},defaults:{description:"Use non-interactive setup defaults during initialization."},verbose:{description:"Include the full resolved settings tree in init output."},agentGuidance:{description:"Control AGENTS.md/CLAUDE.md guidance behavior during init: ask, add, skip, or status.",examples:["ask","add","skip","status"]},withPackages:{description:"Install all bundled first-party pm packages during initialization."},mergeFence:{description:"Install the repository merge-driver fence for a fresh Git-backed tracker; set false to opt out."},createMode:{description:"Create required-option policy mode.",examples:["strict","progressive"]},schedulePreset:{description:"Schedule-centric create preset for Reminder, Meeting, and Event types.",examples:["lightweight"]},status:{description:"Item status value. Statuses are project-configurable via .agents/pm/settings.json (schema block); the built-in defaults are draft, open, in_progress, blocked, closed, canceled. Custom statuses defined for the project are accepted \u2014 discover the active set with the pm_contracts tool (workspace.statuses) or `pm contracts`. Unknown statuses are rejected at runtime with a did-you-mean hint rather than blocked by a fixed schema enum.",examples:["open","in_progress"]},since:{description:"Inclusive ISO 8601 creation timestamp lower bound for duplicate discovery.",examples:["2026-01-01T00:00:00.000Z"]},exhaustive:{description:"Compare every duplicate pair within the disclosed safety bound; default prefix filtering preserves exact recall."},threshold:{description:"Minimum duplicate similarity score from zero through one.",examples:[.85]},priority:{description:"Priority value in range 0..4.",examples:[0,1,"2"]},order:{description:"Planning order/rank value for create/update, or sort direction (asc|desc) for list-family sorting.",examples:[0,1,"2","asc","desc"]},sort:{description:"List-family sort field selector.",examples:["priority","deadline","updated_at","created_at","title","parent"]},tags:{description:"Comma-delimited tag list.",examples:["pm-cli,agent-ux"]},addTags:{description:"Tags to add to the existing list without replacing it. Each entry may be CSV or a JSON array.",examples:[["agent-ux"],["fix","security"]]},addAc:{description:"Acceptance criteria appended individually without replacing the existing list (one criterion per entry).",examples:[["error path covered by a regression test"]]},removeAc:{description:"Acceptance criteria removed individually by exact text match; the mutation fails atomically if any selector is unmatched (one criterion per entry).",examples:[["superseded manual QA step"]]},removeTags:{description:"Tags to remove from the existing list. Each entry may be CSV or a JSON array.",examples:[["stale"],["legacy","wontfix"]]},deadline:{description:"ISO/date timestamp or relative offset (+6h/+1d/+2w/+6m).",examples:["2026-04-01T00:00:00.000Z","+1d"]},reminder:{description:"Repeatable reminder seed entries at=<iso|relative>,text=<text>.",examples:[["at=+2d,text=Review PR"]]},event:{description:"Repeatable event seed entries start=<iso|relative> with end=<iso|relative> or duration=<relative|30min|PT30M>. Bare `m` remains months for backward compatibility.",examples:[["start=2026-07-01T10:00:00Z,duration=2h,title=planning"],["start=2026-07-01T10:00:00Z,duration=30min,title=standup"],["start=2026-07-01T10:00:00Z,duration=PT30M,title=window"]]},historyEvent:{description:"Unknown-author history target in <item-id>:<one-based-line> form.",examples:[["pm-example:4","pm-example:5"]]},planFingerprint:{description:"Exact SHA-256 returned by a history-author-acknowledge dry-run preview; apply refuses stale or changed source coordinates.",examples:["0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"]},estimate:{description:"Estimated effort in minutes.",examples:[60,"120"]},acceptanceCriteria:{description:"Complete acceptance-criteria text supplied while creating or replacing an item field."},author:{description:"Intentional mutation-author override. Agent harness identity is automatic when omitted."},attributedAuthor:{description:"Principal attributed to the immutable unknown-author history events after review.",examples:["reviewed-principal"]},message:{description:"History message for mutation audit trail."},ifAbsent:{description:"For annotations, append only when no existing entry has the same resolved author and exact stored text; retries return changed false without a history event."},assignee:{description:"Assignee identity."},assigneeFilter:{description:"Assignee presence selector for list, calendar, and context filters.",examples:["assigned","unassigned"]},parent:{description:"Parent item ID filter for hierarchical list queries.",examples:["pm-epic01"]},blockedLimit:{description:"Cap blocked rows returned by the next action (defaults to the ready --limit).",examples:["3"]},readyOnly:{description:"When true, the next action omits the blocked companion list."},unset:{description:"Repeatable list of item-metadata fields to clear explicitly during create/update mutations.",examples:[["deadline","assignee"],["close-reason"]]},clearDeps:{description:"When true, clear linked dependencies."},replaceDeps:{description:"When true for update, atomically replace dependencies with the supplied --dep values."},replaceTests:{description:"When true for update, atomically replace linked tests with the supplied --test values."},replaceFiles:{description:"When true for update, atomically replace linked files with the supplied --file values."},replaceDocs:{description:"When true for update, atomically replace linked docs with the supplied --doc values."},lookupPath:{description:"One or more source paths whose referencing pm items should be returned by files lookup.",examples:[["src/sdk/files.ts"],["README.md","docs/SDK.md"]]},explain:{description:"Include ranked linked-file, rationale, and governing-decision evidence for a files lookup."},lines:{description:"Inclusive start:end source-line range for Git contribution attribution; requires one lookup path.",examples:["10:24"]},decisionDepth:{description:"Maximum typed relationship depth searched for a governing Decision during files lookup.",examples:[8]},clearComments:{description:"When true, clear item comments."},clearNotes:{description:"When true, clear item notes."},clearLearnings:{description:"When true, clear item learnings."},clearFiles:{description:"When true, clear linked files."},clearTests:{description:"When true, clear linked tests."},clearDocs:{description:"When true, clear linked docs."},clearReminders:{description:"When true, clear reminders."},clearEvents:{description:"When true, clear events."},clearTypeOptions:{description:"When true, clear type option metadata."},clearCriteria:{description:"When true for config set criteria-list keys (definition-of-done, metadata-required-fields, lifecycle pattern lists), clear the criteria list."},mode:{description:"Mode selector for search and reindex (keyword|semantic|hybrid).",examples:["keyword","hybrid"]},semanticWeight:{description:"Per-query hybrid semantic weight override in [0,1] for search action; invalid values fall back to settings.",examples:[.2,"0.7"]},op:{description:"History operation filter for activity output.",examples:["create","update","close","update_ownership_bypass"]},fullPeriod:{description:"For day/week/month calendar views, include the full anchored period instead of clipping the start to now."},progress:{description:"Emit progress diagnostics to stderr for long-running operations."},background:{description:"Run linked tests in managed background mode."},addJson:{description:"JSON input: one structured context event for notes, or repeatable linked-test entries for test.",examples:[['{"command":"node scripts/run-tests.mjs test -- tests/unit/output.spec.ts","timeout_seconds":240}']]},eventType:{description:"For notes action, return structured context events whose top-level type matches this value."},includeMeta:{description:"Include structured-event counts for notes reads; filtered reads also include total, returned, limit, and has-more metadata."},allActionable:{description:"For history-author-acknowledge, select every currently actionable undispositioned event."},match:{description:"Run only linked tests whose command or path contains this case-insensitive substring.",examples:["output.spec.ts","coverage"]},onlyIndex:{description:"Run only the 1-based linked-test index from pm test <id> --list order.",examples:[1,"2"]},removeIndex:{description:"Remove linked tests by their 1-based positions from pm test <id> --list order; repeatable and lossless for commands containing commas or equals signs.",examples:[[1],["2","4"]]},onlyLast:{description:"Run only the most recently added linked-test entry."},envSet:{description:"Repeatable runtime environment KEY=VALUE overrides for linked-test execution.",examples:[["PORT=0","PLAYWRIGHT_HTML_OPEN=never"]]},envClear:{description:"Repeatable runtime environment variable names to clear before linked-test execution.",examples:[["PLAYWRIGHT_BASE_URL"]]},sharedHostSafe:{description:"Apply additive shared-host-safe runtime defaults during linked-test execution."},pmContext:{description:"PM linked-test context mode (schema keeps isolated tracker data; tracker seeds source tracker data; auto uses tracker for PM tracker-read linked commands).",examples:["schema","tracker","auto"]},overrideLinkedPmContext:{description:"Force run-level --pm-context to override per-linked-test pm_context_mode metadata for all linked-test entries."},workspaceContext:{description:"Source-workspace mode: source preserves read-only source context, isolated omits it for self-sandboxing commands, and snapshot runs from a temporary workspace paired with the selected tracker sandbox.",examples:["source","isolated","snapshot"]},overrideLinkedWorkspaceContext:{description:"Force run-level --workspace-context over per-linked-test workspace_context_mode metadata."},allowUntrustedLinkedTests:{description:"Explicitly execute commands not yet trusted by this clone when testing.allow_untrusted_linked_tests is also enabled."},acknowledgeLinkedTests:{description:"Record clone-local trust for the item's current linked commands without executing them."},failOnContextMismatch:{description:"Fail linked PM command runs when source and sandbox tracker item counts differ."},failOnSkipped:{description:"Treat skipped linked tests as dependency-failed policy violations."},failOnEmptyTestRun:{description:"Treat successful linked-test commands that report zero executed tests as failures."},requireAssertionsForPm:{description:"Require assertion metadata for linked PM command test entries during run execution."},checkContext:{description:"Run linked PM command context preflight diagnostics before command execution."},autoPmContext:{description:"Auto-remediate PM tracker-read linked commands by routing those entries through tracker context regardless of linked-test pm_context_mode overrides."},measure:{description:"Repeatable numeric run evidence in name=value[,unit=...][,threshold=...] form.",examples:[["coverage=100,unit=percent,threshold=100"]]},metricBelow:{description:"Return recorded evidence below a name=value threshold.",examples:["coverage=100"]},metricDiff:{description:"Compare the latest and previous values for one metric.",examples:["coverage"]},dryRun:{description:"Preview command effects without mutating storage artifacts."},normalizeProvenance:{description:"For history-repair: remove invalid legacy provenance observations and emit only aggregate privacy-safe repair evidence."},salvageTail:{description:"For history-repair with one explicit id: remove an invalid trailing suffix after a verified prefix; refuses interior corruption."},all:{description:"For history-repair action: scan every stream for drift and repair each drifted stream in one audited pass (mutually exclusive with id)."},clear:{description:"For focus action: clear the session focused item instead of setting it (mutually exclusive with id)."},gcScope:{description:"Repeatable gc scope selector values (index, embeddings, runtime, locks, checkpoints, transactions).",examples:[["index","embeddings"],["runtime"],["locks"],["checkpoints"]]},storage:{description:"For stats action: include aggregate history-stream storage metrics (total streams/lines/bytes, largest + deepest streams, oldest/newest entries) for compaction and storage planning."},fieldUtilization:{description:"For stats action: include a field_utilization block reporting present/total/percent for content fields (notes, learnings, files, docs, tests, comments, deps, body, linked_command) across all items so under-documented dimensions are visible at a glance."},measurements:{description:"For stats action: include the audited append-only improvement ledger and baseline-to-latest trends."},metric:{description:"Exact improvement metric name used to filter ledger reads.",examples:["quality.coverage.lines"]},measurementLimit:{description:"Maximum newest improvement observations returned by stats.",examples:[50]},observe:{description:"Repeatable audited observation in name=value[,unit=...][,threshold=...] form.",examples:[["quality.coverage.lines=100,unit=percent,threshold=100"]]},improvementDirection:{description:"Improvement direction for newly recorded observations.",examples:["higher","lower","target"]},measurementSource:{description:"Producing gate or instrument for a new observation.",examples:["pnpm coverage"]},measurementItem:{description:"Tracked item that owns an improvement observation.",examples:["pm-123abc"]},measurementRevision:{description:"Explicit source revision for a new observation.",examples:["0123456789abcdef"]},provenanceCoverage:{description:"For stats action: compare configured provenance descriptors with bounded immutable-history observations."},fleetAttribution:{description:"For stats action: derive observational throughput, rework, and defect-escape rates by harness, model, and author source."},eventLimit:{description:"Maximum immutable history events consumed by an analytics projection.",examples:[1e4]},minimumSample:{description:"Minimum denominator before analytics rates are reported.",examples:[5]},offset:{description:"Number of matching rows to skip before limit is applied.",examples:[0,50,"100"]},provenance:{description:"Return patch-free immutable author, harness, instance, and extensible provenance rows."},provenanceSummary:{description:"Include bounded observed, unavailable, legacy-missing, and unresolved-author counts."},agentInstance:{description:"Privacy-safe agent invocation fingerprint filter, supplied once or as a list.",examples:["a1b2c3d4",["a1b2c3d4","e5f6g7h8"]]},provenanceFilter:{description:"Exact extensible provenance predicate in dimension=value form, supplied once or as a list.",examples:["model=gpt-5.6-sol",["effort=xhigh","role=reviewer"]]},before:{description:"For history-compact, compact entries strictly before this boundary (version number or ISO timestamp). Single-id mode only.",examples:["5","2026-06-01T00:00:00.000Z"]},at:{description:"Read-only historical projection boundary as an item version or ISO timestamp.",examples:["3","2026-07-01T12:00:00.000Z"]},allOver:{description:"For history-compact bulk mode, compact every stream with more than N entries. When history.compact_policy is enabled and this is omitted, the policy's max_entries is used.",examples:[200,"500"]},minEntries:{description:"For history-compact bulk mode, skip streams with at most N entries as already-compact (default 3).",examples:[3,"10"]},closed:{description:"For history-compact bulk mode, compact only closed (terminal) items' history streams."},allStreams:{description:"For history-compact bulk mode, compact every history stream regardless of lifecycle state."},literal:{description:"Repeatable literal matcher used by history-redact to scrub exact string values.",examples:["[redacted_path_prefix]/private/path"]},regex:{description:"Repeatable regex matcher used by history-redact. Accepts either /pattern/flags or a raw pattern (global mode is auto-enabled).",examples:["/192\\\\.168\\\\.[0-9.]+/g","token=[A-Za-z0-9_-]+"]},replacement:{description:'Replacement text used by history-redact (defaults to "[redacted]").',examples:["[scrubbed_path]"]},validateClose:{description:'Close-time metadata validation mode ("off", "warn", or "strict").',examples:["off","warn","strict"]},checkMetadata:{description:"Run metadata completeness checks."},metadataProfile:{description:"Select metadata validation profile for --check-metadata.",examples:["core","strict","custom"]},checkResolution:{description:"Run closed-item resolution metadata checks."},checkCompleteness:{description:"Evaluate declarative lifecycle field requirements, with per-type counts and bounded missing-field diagnostics."},checkLifecycle:{description:"Run active-item lifecycle governance drift checks."},checkStaleBlockers:{description:"Include stale blocker-pattern diagnostics in lifecycle checks."},dependencyCycleSeverity:{description:"Set dependency-cycle warning policy for lifecycle checks.",examples:["off","warn","error"]},parentCycleSeverity:{description:"Set parent-cycle warning policy for lifecycle checks.",examples:["off","warn","error"]},checkFiles:{description:"Run linked-file and orphaned-file checks."},checkStorageIntegrity:{description:"Run deep item, history, index, and vector storage integrity checks."},strictDirectories:{description:"Treat optional item-type directories as required health failures."},requireMergeDrivers:{description:"Treat never-installed clone-local semantic merge drivers as required health failures."},checkOnly:{description:"For health action, run read-only diagnostics without refreshing vectors."},checkTelemetry:{description:"For health action, probe telemetry endpoint health and include network diagnostics."},noRefresh:{description:"For health action, skip vector refresh while still running checks."},refreshVectors:{description:"For health action, explicitly refresh stale vectors."},verboseStaleItems:{description:"For health action, include full stale-item arrays in vectorization details."},verboseAuthorEvents:{description:"For health action, include every actionable unknown-author event coordinate."},skipVectors:{description:"For health action, skip vectorization checks for a faster diagnostic run."},skipIntegrity:{description:"For health action, skip item/history file integrity checks for a faster diagnostic run."},skipDrift:{description:"For health action, skip history drift hash checks for a faster diagnostic run."},scanMode:{description:"Select file candidate scan mode for --check-files.",examples:["default","tracked-all","tracked-all-strict"]},includePmInternals:{description:"Include PM storage internals in tracked-all candidate scans."},verboseFileLists:{description:"For validate action, include full file-path lists for --check-files details."},verboseDiagnostics:{description:"For validate action, include full diagnostic ID lists instead of compact summaries."},strictExit:{description:"Apply the selected capability's strict exit policy; health also requires merge drivers."},failOnWarn:{description:"Alias for strictExit in health, validation, history, and managed doctor actions."},fixHints:{description:"For validate action, add a machine-executable fix_hints[] of pm commands to each failing check's details."},autoFix:{description:"For validate action, apply the safe, deterministic subset of fix-hint remediations (field backfills) automatically; combine with dryRun to preview and fixScope to grant gated scopes."},fixScope:{description:"For validate action, grant --auto-fix scopes (metadata, resolution, estimates, lifecycle). Defaults to the safe scopes metadata and resolution; estimates (per-type default estimated_minutes backfill) and lifecycle must be named explicitly.",examples:[["estimates"],["lifecycle"],["metadata","resolution"]]},pruneMissing:{description:"For validate action, remove stale linked-file/doc LINKS whose paths classified as deleted (link removal only \u2014 never touches real files); honors dryRun."},checkHistoryDrift:{description:"Run item/history hash drift checks."},checkCommandReferences:{description:"Run linked-command PM-ID reference checks."},edit:{description:"For comments, notes, and learnings actions, replace the annotation at this 1-based index with supplied replacement text."},delete:{description:"For comments, notes, and learnings actions, delete the annotation at this 1-based index."},stdin:{description:"For comments, notes, and learnings actions, read annotation text from piped stdin (supports multiline markdown)."},file:{description:"CLI-only path to an input file for commands that read payload text; tool actions exclude host file access.",examples:["notes/comment.md"]},preserveSourceIds:{description:"Preserve explicit source IDs during Beads imports instead of normalizing to tracker prefix.",examples:[!0]},appendStable:{description:"When true for files action, preserve existing linked-file order and append new links without full-array resorting."},discover:{description:"When true for files action, use `pm files discover <id>` to scan item text for referenced file paths."},apply:{description:"Persist changes instead of returning a dry-run preview: for files discovery, add the missing discovered file links; for schema add-type --infer, register the inferred custom item types."},discoveryNote:{description:"Note attached to file links added by files discovery.",examples:["discovered from item text"]},addNote:{description:"Note attached to every link added by add/addGlob in this call (per-entry embedded note= wins; requires add or addGlob). Maps to the CLI --note flag on pm files/pm docs.",examples:["command wiring"]},list:{description:"When true, list command-specific entries without mutating state (for example linked paths for files/docs or topics for guide).",examples:[!0]},stream:{description:"Stream selector: test-runs logs accepts stdout|stderr|both; activity accepts boolean/rows|ndjson|jsonl for line-delimited output.",examples:["stderr","stdout","both","rows","ndjson","jsonl",!0]},tail:{description:"Number of lines to tail for background run logs.",examples:[100]},query:{description:"Search query text for search action."},for:{description:"Named context intent projection declared for the selected read action.",examples:["orient","inspect","triage","execute","discover"]},keywords:{description:"Alias for query in search action payloads."},includeLinked:{description:"Include readable linked docs/files/tests content in keyword and hybrid lexical scoring."},titleExact:{description:"For search action, require exact normalized title match for the full query string."},phraseExact:{description:"For search action, require exact normalized query phrase match in item text fields."},highlight:{description:"For search action, emit per-field matched-text snippets (wrapped in \xAB\u2026\xBB) on each hit. Off by default."},includeBody:{description:"When true for list-family actions, include item body text in projected rows."},noTruncate:{description:"When true for list-family actions, return every matched row, overriding any limit (surfaces total when rows were dropped)."},strictRead:{description:"When true for list-family actions, fail if any source item or item directory cannot be read."},compact:{description:"Render compact projection output for search and list-family actions."},raw:{description:"For activity, restore the compact per-event stream instead of the default item digest."},brief:{description:"Emit compact low-token output for commands that support terse projections or health details.",examples:[!0]},full:{description:"Enable command-specific full/detail output mode when supported, such as deep item reads for get or full payload mode for search/history."},includeEmpty:{description:"For stats, restore zero-count registered type and lifecycle-status buckets."},fields:{description:"Comma-separated projection fields for get, search, list-family, or context outputs. Valid field names are command-specific (e.g. score/matched_fields apply to search; context projects focus-row fields such as priority/deadline/completion_pct).",examples:["id,title,status,parent,type","id,title,score,matched_fields","id,title,priority,deadline"]},groupBy:{description:"Comma-separated aggregate grouping fields (supported: parent,type,priority,status,assignee,tags,sprint,release).",examples:["parent,type","type,status","priority,assignee","tags","sprint,release"]},setMode:{description:"Aggregate array dimensions by distinct element (default), or by the complete normalized tuple. Empty sets retain a null group.",examples:["element","tuple"]},count:{description:"Enable grouped count output for aggregate action."},completion:{description:"For aggregate action, add open/in_progress/closed/other counts and completion_pct per group."},sum:{description:"Numeric field to sum per aggregate group (count and null_count are still returned).",examples:["estimated_minutes","priority"]},avg:{description:"Numeric field to average per aggregate group (count and null_count are still returned).",examples:["estimated_minutes","priority"]},tree:{description:"When true for list/get actions, render recursive parent/child tree ordering."},treeDepth:{description:"Maximum recursion depth for tree output (0 keeps root rows only).",examples:[0,1,"2"]},includeUnparented:{description:"Include unparented rows when aggregate grouping includes parent."},maxDepth:{description:"Maximum dependency traversal depth for deps action (0 keeps only the root node).",examples:[0,1,"2"]},nodeLimit:{description:"Maximum related nodes returned by deps --format context.",examples:[10,"20"]},edgeLimit:{description:"Maximum related edges returned by deps --format context.",examples:[20,"40"]},tokenBudget:{description:"Maximum estimated output tokens for the command output.",examples:[600,"1200"]},cursor:{description:"Opaque continuation cursor returned by deps --format context."},direction:{description:'Graph-context traversal direction for deps action ("outgoing", "incoming", or "both").',examples:["both","incoming"]},kind:{description:"Registered relationship kinds narrowing deps --format context traversal (string, comma-separated, or array).",examples:["blocked_by",["parent","related"]]},after:{description:"Opaque action-specific continuation cursor returned by the preceding bounded query.",examples:["pm-x1y2"]},maxPaths:{description:"Maximum enumerated paths for graph paths queries.",examples:[5,"10"]},sample:{description:"Maximum evidence sample entries per graph audit finding.",examples:[10,"25"]},exemptIsolate:{description:"Item ids the graph audit treats as explicitly valid isolates (string, comma-separated, or array).",examples:["pm-x1y2",["pm-x1y2","pm-a3b4"]]},exemptIsolateType:{description:"Item types whose active isolates the graph audit treats as policy-valid (string, comma-separated, or array).",examples:["Reminder",["Reminder","Event"]]},saveBaseline:{description:"When true, persist the graph audit census as the change-since-baseline comparison point (audit only)."},rebuild:{description:"When true, rebuild and warm the durable graph index (graph index only)."},collapse:{description:'Dependency tree collapse mode for deps action ("none" or "repeated").',examples:["none","repeated"]},summary:{description:"When true, return the command's compact summary projection (deps counts, health rollup, or contracts command intents)."},shell:{description:"Shell target for completion generation.",examples:["bash"]},eagerTags:{description:"When true for completion, eagerly embed current tracker tags into generated scripts (legacy mode)."},contractAction:{description:"Filter contracts schema to one tool action.",examples:["create","update"]},command:{description:"Scope contracts output to one CLI command name; action/schema surfaces narrow by default.",examples:["create","search","list"]},schemaOnly:{description:"When true, contracts action returns schema-focused payloads (mutually exclusive with flagsOnly/availabilityOnly)."},flagsOnly:{description:"When true, contracts action returns only command flag surface payloads (mutually exclusive projection mode)."},availabilityOnly:{description:"When true, contracts action returns only action availability payloads (mutually exclusive projection mode)."},runtimeOnly:{description:"When true, contracts action only includes actions invocable in the current runtime."},activeOnly:{description:"Alias for runtimeOnly in contracts action payloads."},depth:{description:"Context depth level controlling how many sections are included (brief=focus+agenda, standard=+hierarchy/activity/progress/workload, deep=all sections, full=every section with no per-section row cap).",examples:["brief","standard","deep","full"]},section:{description:"Repeatable section selector for context; overrides --depth when provided.",examples:[["hierarchy","activity"],["blockers","files","staleness"]]},activityLimit:{description:"Maximum number of recent activity entries to include in context output.",examples:[5,10,"20"]},staleThreshold:{description:"Staleness cutoff in days for context staleness section (e.g. 7 or 7d).",examples:["7","14d","30"]}},NA={health:{strictExit:{description:"Return non-zero for a failing health verdict; also require merge drivers."}},validate:{strictExit:{description:"Return non-zero when validation reports warnings."}},"extension-doctor":{strictExit:{description:"Return non-zero when extension diagnostics report warnings or a non-ok summary."}},"package-doctor":{strictExit:{description:"Return non-zero when package diagnostics report warnings or a non-ok summary."}},history:{strictExit:{description:"Return non-zero for history verification failures when verify is enabled."}},extension:{strictExit:{description:"For doctor operations, return non-zero on warnings or a non-ok diagnostic summary."}},package:{strictExit:{description:"For doctor operations, return non-zero on warnings or a non-ok diagnostic summary."}},assurance:{subcommand:{description:"Assurance operation: list, show, put, remove, run, verdicts, presets, apply, derive, promote, risk, or lineages.",examples:["list","run","risk","lineages"]},kind:{description:"Assurance declaration kind for registry operations: measurement, assertion, or gate.",examples:["measurement","assertion","gate"]},id:{description:"Stable assurance declaration id or gate id, depending on subcommand.",examples:["active-issues","release-readiness"]},limit:{description:"Maximum number of newest assurance verdicts returned.",examples:[10,25]},preset:{description:"Built-in assurance project shape to preview or apply.",examples:["software-delivery","agent-evaluation"]}},update:{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},"update-many":{acceptanceCriteria:{description:"Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria."}},stats:{since:{description:"Inclusive ISO 8601 timestamp or negative duration lower bound for provenance and fleet analytics.",examples:["2026-08-01T00:00:00.000Z","-30d"]}},events:{since:{description:"Durable event cursor returned as next_cursor, or an inclusive event timestamp.",examples:["eyJmaW5nZXJwcmludCI6Ii4uLiJ9","2026-08-01T00:00:00.000Z"]},type:{description:"Mutation event type filter, supplied once or as a list.",examples:["create",["create","update"]]},author:{description:"Mutation author filter, supplied once or as a list.",examples:["agent-a",["agent-a","agent-b"]]},item:{description:"Tracked item id filter, supplied once or as a list.",examples:["pm-a1b2",["pm-a1b2","pm-c3d4"]]},limit:{description:"Maximum mutation events returned, from 0 through 1000.",examples:[0,100]},cursorMode:{description:"Cursor framing: batch returns one terminal next_cursor (default); row also adds a cursor to every event.",examples:["batch","row"]}},remind:{at:{description:"Reminder time as an ISO 8601 timestamp or supported relative expression.",examples:["2026-08-02T09:00:00+02:00","tomorrow 09:00"]}},deps:{tokenBudget:{description:"Maximum estimated output tokens for deps --format context.",examples:[600,"1200"]}},comments:{full:{description:"Return the complete post-mutation comment history instead of the bounded mutation receipt projection."},ifAbsent:{description:"Append a comment only when the resolved author and exact stored text are absent; a duplicate retry returns changed false without writing history."}},notes:{full:{description:"Return the complete post-mutation note history instead of the bounded mutation receipt projection."},ifAbsent:{description:"Append a note only when the resolved author and exact stored text are absent; a duplicate retry returns changed false without writing history."},since:{description:"Inclusive ISO 8601 creation timestamp lower bound for structured note event filtering.",examples:["2026-01-01T00:00:00.000Z"]}},learnings:{full:{description:"Return the complete post-mutation learning history instead of the bounded mutation receipt projection."},ifAbsent:{description:"Append a learning only when the resolved author and exact stored text are absent; a duplicate retry returns changed false without writing history."}},next:{tag:{description:"Only recommend items carrying this exact tag.",examples:["sdk","release"]},tokenBudget:{description:"Maximum estimated output tokens for the recommendation context.",examples:[600,"1200"]}},claim:{tag:{description:"When claiming the next item, only consider work carrying this exact tag.",examples:["sdk","release"]},tokenBudget:{description:"Maximum estimated output tokens for the next-item context returned with the claim.",examples:[600,"1200"]}},close:{text:{description:"Backward-compatible alias for the item close reason when reason is not provided."}},"close-task":{text:{description:"Close reason used before releasing the item's active assignment."}},schema:{definition:{description:"Workflow policy declaration for policy-put, or proposed item fields for policy-check."},policy:{description:"Declared approval rule id for policy-approve."},name:{description:"Custom item type name, status id, field key, policy id, or item id for the selected schema verb; policy-mode requires advise|refuse.",examples:["Spike","review","component"]}},profile:{name:{description:"Profile name for show/apply/lint. Built-in profiles are agile, ops, and research; an active extension can contribute additional archetype names that resolve here too.",examples:["agile","ops","research"]}},graph:{subcommand:{description:"Graph query selector: ancestors|descendants|predecessors|successors|paths|impact|analyze|audit|communities|redundancy|dominators|slack|centrality|articulation|plan|index. Traversals, paths, impact, and dominators require id; paths also requires target; slack reports critical-path float, centrality ranks betweenness/closeness/degree, articulation reports cut points and bridges; plan derives dry-run remediation proposals from the governance audit; index reports, rebuilds, or clears the durable cross-process graph index.",examples:["successors","audit"]},clear:{description:"When true, delete the durable graph index (graph index only)."},id:{description:"Root item id for traversal, paths, impact, and dominators graph queries.",examples:["pm-x1y2"]},target:{description:"Target item id for graph paths queries.",examples:["pm-a3b4"]},direction:{description:'Edge orientation for graph paths/impact/dominators queries ("outgoing", "incoming", or "both"; default "both").',examples:["incoming"]},kind:{description:"Registered relationship kinds narrowing the graph query (string, comma-separated, or array).",examples:["blocked_by",["parent","related"]]},maxDepth:{description:"Maximum graph traversal depth (non-negative integer).",examples:[2,"4"]},after:{description:"Resume a hierarchy/ordering graph traversal after this previously returned node id.",examples:["pm-x1y2"]},limit:{description:"Maximum returned rows per bounded graph collection (traversal ids, impact rows, analyze/communities samples, redundancy rows, dominator bottlenecks).",examples:[10,"25"]},summary:{description:"When true, return counts-first graph envelopes without row collections."}}};(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]="415b46ad-d836-5593-8b6d-af08bbaba0c2")}catch{}})();var bB={...RA,"history-attest":{verify:{type:"object",additionalProperties:!0},output:{not:{}}}},el={...km,pause:{type:"boolean"},releaseAssignment:{type:"boolean"},hashAlgorithm:{type:"string",enum:["sha256","sha512"]}},rl={...xA,pause:{description:"Return work to its configured open status before releasing ownership."},releaseAssignment:{description:"Release assignment after recording closure evidence."},hashAlgorithm:{description:"Digest for detached history bundles; defaults to sha256."}},wB=["json","quiet","profile","noExtensions","noPager","tokenAccounting","path","pmExecutable","timeoutMs"],vB=["outputInclude","outputLimit","outputBudget","outputFormat","outputSession","outputCursor","outputRowContract"],jA=new Set(["action","cwd","options",...Object.keys(el).filter(e=>e!=="severity")]);function EB(e){let t=e.trim().toLowerCase(),r="";for(let n=0;n<t.length;n+=1){let o=t[n];if(o!=="-"&&o!=="_"){r+=o;continue}let i=n+1;for(;t[i]==="-"||t[i]==="_";)i+=1;let s=t[i];if(s!==void 0&&(s>="a"&&s<="z"||s>="0"&&s<="9")){r+=s.toUpperCase(),n=i;continue}r+=t.slice(n,i),n=i-1}return jA.has(r)?{field:e,property:r,owner:"mcp_tool_input",nested_path:`options.${r}`}:void 0}var TB={create:["fullChangedFields","idOnly"],copy:["fullChangedFields","idOnly"],update:["fullChangedFields","idOnly"],"item-reopen":["fullChangedFields","idOnly"],close:["fullChangedFields","idOnly"],claim:["fullChangedFields","idOnly"],release:["fullChangedFields","idOnly"],"start-task":["fullChangedFields","idOnly"],"pause-task":["fullChangedFields","idOnly"],"close-task":["fullChangedFields","idOnly"],restore:["fullChangedFields","idOnly"],append:["fullChangedFields"],"update-many":["fullChangedFields"],"close-many":["fullChangedFields"],assurance:["fullChangedFields","idOnly"]},UA=["createMode","status","deadline","estimate","acceptanceCriteria","definitionOfReady","order","rank","goal","objective","value","impact","outcome","whyNow","assignee","reviewer","risk","confidence","sprint","release","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact","comment","note","learning","reminder","event","typeOption"],Rte=Object.freeze({"close-many":["list","expected_result","expected","actual_result","actual","validate_close","dry_run","checkpoint","no_checkpoint","filterAssignee_filter"],"update-many":["list","update","dry_run","checkpoint","no_checkpoint","filterAssignee_filter"],...Object.fromEntries(at.filter(e=>e==="upgrade"||e==="install"||e==="extension"||e==="package"||e.startsWith("extension-")||e.startsWith("package-")).map(e=>[e,["project","local","global"]]))});function We(e){return dn(e)}var kB=We([...Jp.map(e=>e.param),...qc.map(e=>e.param),"assignee","closeReason","completedAt"]),zA=We([...Zp.map(e=>e.param),...qc.map(e=>e.param),"force"]),AB=We([...em.map(e=>e.param),...zA.filter(e=>e!=="allowMissingParent"&&e!=="completedAt"),"dryRun","rollback","noCheckpoint"]),SB=We([...tm.map(e=>e.param),"reason","completedAt","resolution","expectedResult","actualResult","validateClose","dryRun","rollback","noCheckpoint","author","message","force"]),DA=We([...nm.map(e=>e.param),"past","section"]),OB=We([...rm.map(e=>e.param),"stream"]),Om=We([...Yp.map(e=>e.param),"all","includeBody","noTruncate","strictRead","compact","brief","full"]),_o=Om.filter(e=>e!=="all"&&e!=="status"),Er=[[{property:"today",schema:{const:!0}},{property:"recent",schema:{const:!0}}],[{property:"today",schema:{const:!0}},{property:"updatedAfter",schema:{type:"string",pattern:"\\S"}}],[{property:"recent",schema:{const:!0}},{property:"updatedAfter",schema:{type:"string",pattern:"\\S"}}]],CB=[[{property:"summary",schema:{const:!0}},{property:"schemaOnly",schema:{const:!0}}],[{property:"summary",schema:{const:!0}},{property:"flagsOnly",schema:{const:!0}}],[{property:"summary",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}],[{property:"schemaOnly",schema:{const:!0}},{property:"flagsOnly",schema:{const:!0}}],[{property:"schemaOnly",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}],[{property:"flagsOnly",schema:{const:!0}},{property:"availabilityOnly",schema:{const:!0}}]],IB=We([...Kp.map(e=>e.param),"count","completion","includeUnparented"]),RB=We(["query","keywords","mode","semantic","hybrid","includeLinked","titleExact","phraseExact","highlight","compact","full",...Xp.map(e=>e.param)]),PA=We(["type","tag","priority","assignee","assigneeFilter","sprint","release","parent","limit","blockedLimit","readyOnly","format","includeDecisions","includeGates","includeContainers","tokenBudget","explainRanking"]),Pe=["author","message","force"],qA=["releaseAssignment","text","reason","closeReason","completedAt","duplicateOf","validateClose","resolution","expectedResult","actualResult"],Bi=["author","assignee","message","force"],xB=["dryRun","target","scope","capability","declarative","github","ref","init","install","uninstall","explore","manage","describe","markdown","output","reload","doctor","catalog","list","adopt","adoptAll","activate","deactivate","runtimeProbe","fixManagedState","isolated","ignoreGlobal","detail","trace","watch","strictExit","failOnWarn"];function MA(e){return{[`${e}-init`]:{required:["target"],optional:["scope","capability",...e==="package"?["declarative"]:[]]},[`${e}-install`]:{optional:["target","github","scope","ref","dryRun"],anyOfRequired:[["target"],["github"]]},[`${e}-uninstall`]:{required:["target"],optional:["scope"]},[`${e}-explore`]:{optional:["scope"]},[`${e}-manage`]:{optional:["scope","runtimeProbe","fixManagedState"]},[`${e}-describe`]:{optional:["target","scope","markdown","output"]},[`${e}-reload`]:{optional:["scope","watch"]},[`${e}-doctor`]:{optional:["scope","detail","trace","fixManagedState","isolated","ignoreGlobal","strictExit","failOnWarn"]},[`${e}-catalog`]:{optional:["scope","fields"]},[`${e}-adopt`]:{required:["target"],optional:["scope","github","ref"]},[`${e}-adopt-all`]:{optional:["scope"]},[`${e}-activate`]:{required:["target"],optional:["scope"]},[`${e}-deactivate`]:{required:["target"],optional:["scope"]},[e]:{optional:xB,dependentAnyOfRequired:[{property:"dryRun",value:!0,anyOfRequired:[["install","target"],["install","github"]]}],mutuallyExclusiveWhen:[[{property:"dryRun",schema:{const:!0}},{property:"install",schema:{const:!1}}]]}}}var LA={required:["title"],optional:["start","duration","end","location","timezone","allDay","parent","allowMissingParent","tags","priority","body","description","author","message"]},FA={optional:["target","scope","dryRun","cliOnly","packagesOnly","repair","tag","packageName"]},tl={init:{optional:["prefix","idPrefix","workspace","preset","typePreset","defaults","author","agentGuidance","withPackages","mergeFence","force","verbose"]},config:{required:["scope","configAction"],optional:["key","value","criterion","clearCriteria","format","policy"]},...MA("extension"),...MA("package"),"package-upgrade":FA,install:{optional:["target","github","scope","ref","dryRun"],anyOfRequired:[["target"],["github"]]},upgrade:FA,create:{required:["title","description","type","status","priority","message"],optional:kB},copy:{required:["id"],optional:["title","author","message","allowDuplicate"]},focus:{optional:["id","clear"],mutuallyExclusive:[["id","clear"]]},list:{optional:Om,mutuallyExclusiveWhen:Er},"list-all":{optional:Om,mutuallyExclusiveWhen:Er},"list-draft":{optional:_o,mutuallyExclusiveWhen:Er},"list-open":{optional:_o,mutuallyExclusiveWhen:Er},"list-in-progress":{optional:_o,mutuallyExclusiveWhen:Er},"list-blocked":{optional:_o,mutuallyExclusiveWhen:Er},"list-closed":{optional:_o,mutuallyExclusiveWhen:Er},"list-canceled":{optional:_o,mutuallyExclusiveWhen:Er},aggregate:{optional:IB},guide:{optional:["list","format","depth"]},context:{optional:DA},ctx:{optional:DA},get:{required:["id"],optional:["for","tokenBudget","at","depth","full","fields","tree","treeDepth","format"]},search:{optional:RB,anyOfRequired:[["query"],["keywords"]]},eval:{optional:["mode","k","failUnder","queries","format"]},events:{optional:["since","type","author","item","limit","full","provenance","provenanceSummary","harness","agentInstance","provenanceFilter","cursorMode"]},merge:{required:["subcommand"],optional:["dryRun","author","message","force","includeReconciled","artifact","basePath","oursPath","theirsPath","output","outputPath","itemPath","prefer"]},workspace:{required:["subcommand"],optional:["snapshotAction","name","target","dryRun","force","author","message","lockTtlSeconds","lockWaitMs"],conditionalRequired:[{property:"subcommand",value:"snapshot",required:["snapshotAction"]}]},meet:LA,event:LA,remind:{required:["title"],optional:["at","text","parent","allowMissingParent","tags","priority","body","description","author","message"]},next:{optional:[...PA,"for"]},reindex:{optional:["mode","progress"]},history:{required:["id"],optional:["limit","compact","full","provenance","provenanceSummary","harness","agentInstance","provenanceFilter","diff","verify","field","strictExit","failOnWarn","format"]},"history-attest":{optional:["verify","output","hashAlgorithm"],mutuallyExclusive:[["verify","hashAlgorithm"]]},"history-redact":{required:["id"],optional:["literal","regex","replacement","dryRun",...Pe],anyOfRequired:[["literal"],["regex"]]},"history-repair":{optional:["id","all","dryRun","normalizeProvenance","salvageTail",...Pe],oneOfRequired:[["id"],["all"]],mutuallyExclusiveWhen:[[{property:"salvageTail",schema:{const:!0}},{property:"all",schema:{const:!0}}],[{property:"salvageTail",schema:{const:!0}},{property:"normalizeProvenance",schema:{const:!0}}]]},"history-author-acknowledge":{optional:["historyEvent","allActionable","dryRun","planFingerprint","limit","attributedAuthor","reviewer","reason"],oneOfRequired:[["historyEvent"],["allActionable"]]},"history-compact":{optional:["id","before","ids","allOver","closed","allStreams","minEntries","dryRun",...Pe]},schema:{mutuallyExclusiveWhen:[[{property:"subcommand",schema:{const:"policy-mode"}},{property:"name",schema:{not:{enum:["advise","refuse"]}}}]],required:["subcommand"],optional:["definition","policy","message","name","description","defaultStatus","folder","alias","role","order","fieldType","commands","cliFlag","required","requiredOnCreate","allowUnset","requiredTypes","typePreset","infer","minCount","apply","to","migrationId","fieldTypeScope","dryRun","author","force"],conditionalRequired:[{property:"subcommand",value:"policy-put",required:["definition"]},{property:"subcommand",value:"policy-remove",required:["name"]},{property:"subcommand",value:"policy-mode",required:["name"]},{property:"subcommand",value:"policy-check",required:["name"]},{property:"subcommand",value:"policy-approve",required:["name","policy"]},{property:"subcommand",value:"show",required:["name"]},{property:"subcommand",value:"show-status",required:["name"]},{property:"subcommand",value:"add-type",required:["name"]},{property:"subcommand",value:"remove-type",required:["name"]},{property:"subcommand",value:"add-status",required:["name"]},{property:"subcommand",value:"remove-status",required:["name"]},{property:"subcommand",value:"add-field",required:["name"]},{property:"subcommand",value:"remove-field",required:["name"]},{property:"subcommand",value:"show-field",required:["name"]},{property:"subcommand",value:"rename-type",required:["name","to"]},{property:"subcommand",value:"rename-field",required:["name","to"]},{property:"subcommand",value:"remap-status",required:["name","to"]},{property:"subcommand",value:"apply-preset",required:["typePreset"]}]},profile:{required:["subcommand"],optional:["name","dryRun","author","force"],conditionalRequired:[{property:"subcommand",value:"show",required:["name"]},{property:"subcommand",value:"apply",required:["name"]},{property:"subcommand",value:"lint",required:["name"]}]},plan:{required:["subcommand"],optional:["id","stepRef","reorderTo","title","description","template","scope","parent","related","blocks","blockedBy","harness","mode","resumeContext","tags","priority",...UA,"body","claim","fromSearch","stepTitle","step","stepBody","stepOwner","stepStatus","stepEvidence","stepBlockedReason","stepReplacement","dependsOn","link","linkKind","linkNote","promoteToItemDep","allowMultipleActive","file","test","doc","decisionText","decision","decisionRationale","decisionEvidence","discoveryText","discovery","validationText","validation","validationCommand","validationExpected","depth","fields","steps","materializeType","materializeParent","materializeTags","field",...Pe]},activity:{optional:OB},restore:{required:["id","target"],optional:Pe},update:{required:["id"],optional:zA,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},"update-many":{optional:AB,mutuallyExclusive:[["acceptanceCriteria","addAc"],["acceptanceCriteria","removeAc"]]},close:{required:["id"],optional:[...qA,...Pe]},"close-many":{optional:SB},delete:{required:["id"],optional:["dryRun",...Pe]},append:{required:["id","body"],optional:Pe},comments:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full","ifAbsent",...Pe],mutuallyExclusive:[["edit","ifAbsent"],["delete","ifAbsent"]]},notes:{required:["id"],optional:["text","add","addJson","stdin","edit","delete","limit","since","eventType","includeMeta","full","ifAbsent",...Pe],mutuallyExclusive:[["addJson","add"],["addJson","stdin"],["addJson","file"],["addJson","edit"],["addJson","delete"],["edit","ifAbsent"],["delete","ifAbsent"]]},learnings:{required:["id"],optional:["text","add","stdin","edit","delete","limit","full","ifAbsent",...Pe],mutuallyExclusive:[["edit","ifAbsent"],["delete","ifAbsent"]]},files:{required:[],optional:["id","add","addGlob","remove","migrate","list","addNote","discover","apply","discoveryNote","appendStable","validatePaths","lookupPath","scope","limit","offset","noTruncate","strictRead","explain","lines","decisionDepth",...Pe],anyOfRequired:[["id"],["lookupPath"]],dependentAnyOfRequired:[{property:"addNote",anyOfRequired:[["add"],["addGlob"]]}]},docs:{required:["id"],optional:["add","addGlob","remove","migrate","addNote","list","validatePaths",...Pe],dependentAnyOfRequired:[{property:"addNote",anyOfRequired:[["add"],["addGlob"]]}]},deps:{required:["id"],optional:["format","maxDepth","collapse","summary","full","nodeLimit","edgeLimit","tokenBudget","cursor","direction","kind"]},graph:{required:["subcommand"],optional:["id","target","kind","maxDepth","limit","after","direction","maxPaths","sample","exemptIsolate","exemptIsolateType","saveBaseline","rebuild","clear","summary","full"]},test:{required:["id"],optional:["list","add","addJson","remove","removeIndex","run","match","onlyIndex","onlyLast","background","timeout","progress","envSet","envClear","sharedHostSafe","pmContext","overrideLinkedPmContext","workspaceContext","overrideLinkedWorkspaceContext","allowUntrustedLinkedTests","acknowledgeLinkedTests","failOnContextMismatch","failOnSkipped","failOnEmptyTestRun","requireAssertionsForPm","checkContext","autoPmContext","measure","metricBelow","metricDiff",...Pe],mutuallyExclusive:[["acknowledgeLinkedTests","run"],["acknowledgeLinkedTests","background"]]},"test-all":{optional:["status","limit","offset","background","timeout","progress","envSet","envClear","sharedHostSafe","pmContext","overrideLinkedPmContext","workspaceContext","overrideLinkedWorkspaceContext","allowUntrustedLinkedTests","failOnContextMismatch","failOnSkipped","failOnEmptyTestRun","requireAssertionsForPm","checkContext","autoPmContext"]},telemetry:{optional:["subcommand","limit"]},"test-runs-list":{optional:["status","limit"]},"test-runs-status":{required:["runId"]},"test-runs-logs":{required:["runId"],optional:["stream","tail"]},"test-runs-stop":{required:["runId"],optional:["force"]},"test-runs-resume":{required:["runId"],optional:["author"]},stats:{optional:["includeEmpty","storage","metadataCoverage","fieldUtilization","byAssignee","byTag","byPriority","tagPrefix","measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]},duplicates:{optional:["status","since","threshold","limit","exhaustive"]},health:{optional:["strictDirectories","requireMergeDrivers","strictExit","failOnWarn","checkOnly","checkTelemetry","noRefresh","refreshVectors","verboseStaleItems","verboseAuthorEvents","brief","summary","skipVectors","skipIntegrity","skipDrift","full"]},validate:{optional:["checkCompleteness","checkStorageIntegrity","checkMetadata","metadataProfile","checkResolution","checkLifecycle","checkStaleBlockers","dependencyCycleSeverity","parentCycleSeverity","checkFiles","scanMode","includePmInternals","verboseFileLists","verboseDiagnostics","allAffectedIds","strictExit","failOnWarn","fixHints","autoFix","dryRun","fixScope","pruneMissing","checkHistoryDrift","checkCommandReferences","counts","full"]},assurance:{required:["subcommand"],optional:["kind","id","definition","trigger","treeId","gate","limit","dryRun","author","message","preset","owner","apply","enforcement"],conditionalRequired:[{property:"subcommand",value:"list",required:["kind"]},{property:"subcommand",value:"show",required:["kind","id"]},{property:"subcommand",value:"put",required:["kind","id","definition"]},{property:"subcommand",value:"remove",required:["kind","id"]},{property:"subcommand",value:"run",required:["id","trigger"]},{property:"subcommand",value:"apply",required:["preset","owner"]},{property:"subcommand",value:"derive",required:["owner"]},{property:"subcommand",value:"risk",required:["definition"]},{property:"subcommand",value:"lineages",required:["definition"]},{property:"subcommand",value:"promote",required:["id","enforcement"]}],mutuallyExclusiveWhen:[[{property:"subcommand",schema:{const:"risk"}},{property:"definition",schema:{not:{required:["policy","change"]}}}],[{property:"subcommand",schema:{const:"lineages"}},{property:"definition",schema:{anyOf:[{required:["change"]},{not:{required:["policy"]}}]}}]]},gc:{optional:["dryRun","gcScope"]},contracts:{optional:["contractAction","command","summary","schemaOnly","flagsOnly","availabilityOnly","runtimeOnly","activeOnly","full"],mutuallyExclusiveWhen:CB},completion:{required:["shell"],optional:["eagerTags"]},claim:{optional:["start","id","next","ifAvailable","maxAttempts","includeDecisions",...PA,...Bi],oneOfRequired:[["id"],["next"]],mutuallyExclusiveWhen:[[{property:"start",schema:{const:!0}},{property:"next",schema:{const:!0}}],[{property:"start",schema:{const:!0}},{property:"ifAvailable",schema:{const:!0}}]]},release:{required:["id"],optional:["pause",...Bi]},"start-task":{required:["id"],optional:Bi},"pause-task":{required:["id"],optional:Bi},"close-task":{required:["id"],optional:["text","validateClose",...Bi]},"item-reopen":{required:["id","reason"],optional:["status","author","message","force"]}},NB=Object.freeze(Object.fromEntries(at.map(e=>[e,tl[e]])));function HA(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]/g," ").trim().replace(/^./,t=>t.toUpperCase()).concat(".")}function DB(e,t){let r=typeof t=="object"&&t!==null?{...t}:{},n=rl[e];return{...r,description:n?.description??HA(e),...n?.examples?{examples:n.examples}:{}}}function PB(e,t){if(e==="history-attest"&&t==="verify")return{description:"Compare all retained history streams with a detached JSON proof object. Server-local proof paths are not accepted over MCP."};if(e==="history-attest"&&t==="output")return{description:"Local CLI/SDK only. MCP rejects this field; save the returned JSON bundle on the client."};if(e==="claim"&&t==="start")return{description:"Claim an explicit item and move it to its configured in-progress status."};if((e==="list"||e.startsWith("list-"))&&t==="all")return{description:"Return items from every lifecycle status instead of the default active-status set."};if(e==="plan"&&Object.prototype.hasOwnProperty.call(Sm,t))return Sm[t];let r=NA[e];return r&&Object.prototype.hasOwnProperty.call(r,t)?r[t]:rl[t]}function MB(e,t,r){let n=typeof r=="object"&&r!==null?{...r}:{},o=PB(e,t);return{...n,description:o?.description??HA(t),...o?.examples?{examples:o.examples}:{}}}function LB(e,t){if(e==="claim"&&t==="start")return{type:"boolean"};let r=bB[e];return r&&Object.prototype.hasOwnProperty.call(r,t)?r[t]:e==="plan"&&Object.prototype.hasOwnProperty.call(Am,t)?Am[t]:(e==="get"||e==="history"||e==="search")&&t==="format"?{type:"string",enum:["json","toon"]}:t==="pause"||t==="releaseAssignment"||t==="hashAlgorithm"?el[t]:km[t]}function FB(e,t){let r={action:{const:e,description:rl.action?.description??"Tool action to execute."}};for(let n of t){if(n==="action")continue;let o=LB(e,n);o&&(r[n]=MB(e,n,o))}return r}function $B(e,t){let r=t.flat();return t.map(n=>{let o=r.filter(i=>!n.includes(i));return{required:[...n],...o.length>0?{not:{anyOf:o.map(i=>({required:[i]}))}}:{},...e==="history-repair"&&n.includes("all")?{properties:{all:{const:!0}}}:e==="claim"&&n.includes("next")?{properties:{next:{const:!0}}}:{}}})}function $A(e,t){return{...t===void 0?{}:{properties:{[e]:{const:t}}},required:[e]}}function jB(e){let t=[];if(e.conditionalRequired&&e.conditionalRequired.length>0)for(let r of e.conditionalRequired)t.push({if:$A(r.property,r.value),then:{required:r.required}});if(e.dependentAnyOfRequired&&e.dependentAnyOfRequired.length>0)for(let r of e.dependentAnyOfRequired)t.push({if:$A(r.property,r.value),then:{anyOf:r.anyOfRequired.map(n=>({required:[...n]}))}});if(e.mutuallyExclusive&&e.mutuallyExclusive.length>0)for(let r of e.mutuallyExclusive)t.push({not:{required:We(r)}});if(e.mutuallyExclusiveWhen&&e.mutuallyExclusiveWhen.length>0)for(let r of e.mutuallyExclusiveWhen)t.push({not:{allOf:r.map(n=>({properties:{[n.property]:n.schema},required:[n.property]}))}});return t}function Cm(e){if(!Object.prototype.hasOwnProperty.call(tl,e))return;let t=tl[e],r=TB[e]??[];return We(["action",...wB,...bt(e)!==void 0?vB:[],...r,...t.required??[],...t.optional??[]])}function GA(e){let t=tl[e],r=We(t.required??[]),n=Cm(e),o={type:"object",additionalProperties:!1,required:["action",...r],title:`pm action "${e}" parameters`,properties:FB(e,n)};t.anyOfRequired&&t.anyOfRequired.length>0&&(o.anyOf=t.anyOfRequired.map(s=>({required:[...s]}))),t.oneOfRequired&&t.oneOfRequired.length>0&&(o.oneOf=$B(e,t.oneOfRequired));let i=jB(t);return i.length>0&&(o.allOf=i),o}function UB(e,t={}){let r=GA(e),n={...r.properties};delete n.action;let o=[...r.anyOf??[],...r.oneOf??[]],i=(t.required??r.required.map(String)).filter(a=>a==="action"?!1:t.required===void 0?!0:!o.some(c=>c.required?.map(String).includes(a))),s={type:"object",additionalProperties:t.additionalProperties??!0,properties:{...n,options:{type:"object",additionalProperties:!0,description:"Advanced command options forwarded to the selected pm action."},...t.properties},required:i};return r.anyOf!==void 0&&(s.anyOf=r.anyOf),r.oneOf!==void 0&&(s.oneOf=r.oneOf),r.allOf!==void 0&&(s.allOf=r.allOf),s}function BA(e){let t,r=()=>t??=e();return new Proxy({},{get:(n,o)=>r()[o],has:(n,o)=>o in r(),ownKeys:()=>Reflect.ownKeys(r()),getOwnPropertyDescriptor:(n,o)=>{let i=Reflect.getOwnPropertyDescriptor(r(),o);return i&&(i.configurable=!0),i}})}var Im="4.20.0",VA=Im.split(".")[0],WA="1.9.0",zB=BA(()=>({$schema:"https://json-schema.org/draft/2020-12/schema",$id:`https://schema.unbrained.dev/pm-cli/tool-parameters-v${VA}.schema.json`,title:"pm-cli tool parameters (action-scoped strict schema)","x-schema-version":Im,type:"object",oneOf:at.map(e=>GA(e))}));function qB(e,t){let r=DB(e,t);if(typeof r.type=="string")return r;let o=(Array.isArray(r.anyOf)?r.anyOf:[]).find(a=>typeof a.type=="string");if(o){let{anyOf:a,...c}=r;return{...o,...c}}let{anyOf:i,...s}=r;return{...s,type:"string"}}function HB(){let e={action:{type:"string",description:rl.action?.description??"Tool action to execute."},options:{type:"object",additionalProperties:!0,description:"Advanced command options object forwarded to the selected pm action."}};for(let t of Object.keys(el).sort())e[t]=qB(t,el[t]);return{title:"pm-cli tool parameters (provider-compatible flat schema)","x-schema-version":WA,type:"object",additionalProperties:!1,required:["action"],properties:e}}var GB=BA(HB);(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]="48efaa37-f28e-5f2a-a033-456bee15e294")}catch{}})();var BB=new Set(["--author","--follow","--help","--lean","--token-accounting","--output-include","--output-limit","--output-budget","--output-format","--output-session","--output-cursor","--output-row-contract","--no-changed-fields","--no-extensions","--no-pager","--pm-path","--profile","--quiet","--interval-ms"]),VB=new Set([...db,...ub]),WB=new Set(["--brief","--format","--full","--full-changed-fields","--id-only","--no-truncate","--stream"]),YB=new Set(["--body-file","--file","--stdin-json"]),KB=new Set(["--global","--local","--project"]),XB=new Set(["--activity-limit","--default-depth","--section-activity","--section-blockers","--section-files","--section-hierarchy","--section-progress","--section-staleness","--section-tests","--section-workload","--stale-threshold-days"]),JB=new Set(["action","fullChangedFields","idOnly","path","pmExecutable","timeoutMs"]),ZB=new Set(["configAction","id","name","query","reason","subcommand","target","text"]),QB={assurance:{id:"<id>",kind:"<kind>",preset:"[kind]|[id]",subcommand:"<action>"},event:{title:"<title>"},files:{lookupPath:"lookup <path...>"},meet:{title:"<title>"},"item-reopen":{id:"<id>",reason:"<reason>"},merge:{subcommand:"<subcommand>"},remind:{title:"<title>"},workspace:{name:"<name>",subcommand:"snapshot",snapshotAction:"<snapshot-action>",target:"<target>"}},eV={append:{"--text":"body"},assurance:{"--tree":"treeId","--owner":"owner","--apply":"apply","--enforcement":"enforcement"},init:{"--id-prefix":"idPrefix","--no-merge-fence":"mergeFence","--workspace":"workspace"},create:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},update:{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},"update-many":{"--ac":"acceptanceCriteria","--estimated-minutes":"estimate","--file":"linkedFile","--test":"linkedTest","--expected":"expectedResult","--actual":"actualResult"},files:{"--note":"addNote"},docs:{"--note":"addNote"},comments:{"--full-history":"full"},notes:{"--file":"text","--full-history":"full"},learnings:{"--file":"text","--full-history":"full"},gc:{"--scope":"gcScope"},contracts:{"--action":"contractAction"},schema:{"--no-allow-unset":"allowUnset","--type":"fieldTypeScope"},"history-author-acknowledge":{"--event":"historyEvent","--all-actionable":"allActionable"},"extension-init":{"--capability":"capability"},"package-init":{"--capability":"capability"},"extension-install":{"--gh":"github"},"package-install":{"--gh":"github"},"extension-adopt":{"--gh":"github"},"package-adopt":{"--gh":"github"},extension:{"--gh":"github","--scaffold":"init"},package:{"--gh":"github","--scaffold":"init"},install:{"--gh":"github"}},tV={"--pm-path":"path"},KA={stats:{"--analytics":["measurements","metric","measurementLimit","observe","improvementDirection","measurementSource","measurementItem","measurementRevision","author","message","provenanceCoverage","fleetAttribution","since","eventLimit","minimumSample"]}};function rV(e){return e.startsWith("extension-")?`extension ${e.slice(10)}`:e.startsWith("package-")?`package ${e.slice(8)}`:e.startsWith("item-")?`item ${e.slice(5)}`:e}function YA(e,t){let r=eV[e]?.[t]??tV[t];return r!==void 0?r:t.replace(/^--/,"").replaceAll("_","-").replace(/-([a-z])/g,(n,o)=>o.toUpperCase())}function nV(e){let t=new Set;return e.filter(({flag:r})=>!r.startsWith("--")||t.has(r)?!1:(t.add(r),!0))}function oV(e,t){return t.find(({aliases:r})=>r?.includes(e))?.flag}function iV(e,t,r,n){let o=KA[e]?.[t.flag];if(o!==void 0&&o.every(a=>n.has(a)))return{surface:"cli",input:t.flag,counterpart:o[0],disposition:"shared",reason:"The validated CLI JSON object fans out across strict SDK parameters."};let i=YA(e,t.flag);if(n.has(i))return{surface:"cli",input:t.flag,counterpart:i,disposition:"shared",reason:"The CLI flag maps directly to a strict SDK action parameter."};let s=oV(t.flag,r);if(s!==void 0){let a=YA(e,s);if(n.has(a))return{surface:"cli",input:t.flag,counterpart:a,disposition:"compatibility_alias",reason:`Compatibility spelling for ${s}.`}}return BB.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_transport",reason:"CLI process transport is supplied by the in-process SDK host."}:WB.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_presentation",reason:"CLI rendering or mutation projection does not alter the SDK result envelope."}:YB.has(t.flag)?{surface:"cli",input:t.flag,disposition:"cli_adapter",reason:"Local file or stdin adaptation is a CLI boundary concern."}:XB.has(t.flag)?{surface:"cli",input:t.flag,counterpart:"key",disposition:"compatibility_alias",reason:"CLI config shorthand normalizes to the SDK configAction/key/value contract."}:KB.has(t.flag)?{surface:"cli",input:t.flag,counterpart:"scope",disposition:"cli_scope_selector",reason:"Mutually exclusive CLI scope switches normalize to the SDK scope parameter."}:{surface:"cli",input:t.flag,counterpart:i,disposition:"unclassified",reason:"The CLI flag has no strict SDK parameter or approved boundary classification."}}function sV(e,t,r){let n=Object.entries(KA[e]??{}).find(([s,a])=>a.includes(t)&&r.some(({input:c,disposition:l})=>c===s&&l==="shared"));if(n!==void 0)return{surface:"sdk",input:t,counterpart:n[0],disposition:"shared",reason:"The strict SDK parameter is reachable through the validated CLI JSON object."};let o=r.find(({counterpart:s,disposition:a})=>s===t&&(a==="shared"||a==="compatibility_alias"||a==="cli_scope_selector"));if(o!==void 0)return{surface:"sdk",input:t,counterpart:o.input,disposition:"shared",reason:"The strict SDK parameter is reachable from the CLI contract."};let i=QB[e]?.[t];return i!==void 0?{surface:"sdk",input:t,counterpart:i,disposition:"shared",reason:"The strict SDK parameter maps to a canonical CLI positional argument."}:JB.has(t)?{surface:"sdk",input:t,disposition:"sdk_transport",reason:"The SDK host supplies in-process transport and workspace selection."}:ZB.has(t)?{surface:"sdk",input:t,disposition:"cli_positional",reason:"The CLI accepts this SDK parameter as a positional command argument."}:{surface:"sdk",input:t,disposition:"sdk_native",reason:"The typed SDK exposes this structured input without a canonical CLI long flag."}}function aV(e={}){let t=e.actions??at,r=e.resolveFlags??hm,n=e.resolveParameters??Cm;return t.map(o=>{let i=rV(o),s=nV(r(i)).filter(({flag:d})=>bt(o)!==void 0||!VB.has(d)),a=new Set(n(o)??[]),c=s.map(d=>iV(o,d,s,a)),l=[...a].sort((d,u)=>d.localeCompare(u)).map(d=>sV(o,d,c));return{action:o,command:i,cli:c,sdk:l,unclassified:[...c,...l].filter(({disposition:d})=>d==="unclassified")}})}(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]="92c17dbe-3868-5fa5-a873-0744d3e7ca8e")}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]="5c8194ff-d877-51b8-bd54-d206f85a979c")}catch{}})();import{Option as cV}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]="7ffd5046-9154-52e7-94ce-192b07b8ceae")}catch{}})();async function tre(e,t,r,n,o){let i=So(process.cwd(),n.path),s=await Ze("command_result",{command:e,args:t,options:r,global:n,pm_root:i,result:o});return s.handled?s.result:o}function rre(e,t){for(let[r,n]of Object.entries(t))e.setOptionValueWithSource(r,n,"cli")}function XA(e,t){let r=[],n=new Set;for(let o of t.keys){if(!Object.hasOwn(e,o))continue;let i=e[o];if(i!=null){if(typeof i=="string"){r.push(i);continue}if(!Array.isArray(i)||!i.every(s=>typeof s=="string"))return;n.has(i)||(n.add(i),r.push(...i))}}return r.length>0?r.join("; "):void 0}var Rm=Symbol("pm.resolvedGlobalOptions");function lV(e){return typeof e=="object"&&e!==null?e:{}}function Me(e,t){return e.find(n=>n.target===t)??{target:t,keys:[t]}}function nre(e,t){e[Rm]={...t}}function ore(e){delete e[Rm]}function un(e,t){return typeof e[t]=="string"?e[t]:void 0}function ire(e){let t=Ke(dV(e)),r=e[Rm];if(r)return{...r,...t.length>0?{command:t}:{}};let n=lV(e),o=typeof n.optsWithGlobals=="function"?n.optsWithGlobals():typeof n.opts=="function"?n.opts():{};return{json:o.json===!0?!0:void 0,quiet:!!o.quiet,noChangedFields:o.changedFields===!1,...o.fullChangedFields===!0?{fullChangedFields:!0}:{},idOnly:o.idOnly===!0,...o.lean===!0?{lean:!0}:{},...o.tokenAccounting===!0?{tokenAccounting:!0}:{},outputInclude:un(o,"outputInclude"),outputLimit:un(o,"outputLimit"),outputBudget:un(o,"outputBudget"),outputSession:un(o,"outputSession"),outputCursor:un(o,"outputCursor"),...o.outputRowContract===!0?{outputRowContract:!0}:{},...o.outputFormat==="toon"||o.outputFormat==="json"?{outputFormat:o.outputFormat}:{},path:un(o,"pmPath")??un(o,"path"),noExtensions:o.extensions===!1,noPager:!!o.noPager,profile:!!o.profile,...t.length>0?{command:t}:{},...typeof o.author=="string"?{author:o.author}:{}}}function dV(e){let t=[],r=e;for(;r?.parent;)t.unshift(r.name()),r=r.parent;return t.join(" ")}async function sre(e){if(e.json===!0)return e;let t=So(process.cwd(),e.path);if(!await re(Te(t)))return e;let r=await ut(t);return{...e,defaultOutputFormat:r.output.default_format}}function uV(e,t){let r=t??[];return r.push(e),r}function nt(e,t,r){if(typeof r!="string")return;let n=r.trim();n.length!==0&&e.push(t,n)}function rt(e,t,r){r===!0&&e.push(t)}function fn(e,t,r){if(Array.isArray(r))for(let n of r){if(typeof n!="string")continue;let o=n.trim();o.length!==0&&e.push(t,o)}}function k(e,t){return e[t]===!0?!0:void 0}function Vt(e,t){return e[t]===!1?!0:void 0}function are(e,t){return typeof e[t]=="string"?e[t]:void 0}function fV(e,t,r,n=!1,o=void 0){let i=new cV(t,r).hideHelp();n&&i.argParser(o??uV),e.addOption(i)}function cre(e,t,r){for(let[n,o]of t)fV(e,n,o,r)}function nl(e,t){return t.some(r=>e[r]===!0)?!0:void 0}function JA(e,t){let r=$c(e,t);return typeof r=="string"||typeof r=="number"&&Number.isFinite(r)?r:void 0}function ol(e,t){for(let[r,n]of Object.entries(t))r==="__proto__"||r==="constructor"||r==="prototype"||Object.hasOwn(e,r)||(e[r]=n)}function lre(e,t){let r=["test",e,"--run","--json","--progress"];return fn(r,"--add",t.add),fn(r,"--add-json",t.addJson),fn(r,"--remove",t.remove),fn(r,"--remove-index",t.removeIndex),nt(r,"--match",t.match),nt(r,"--only-index",t.onlyIndex),rt(r,"--only-last",t.onlyLast),fn(r,"--measure",t.measure),nt(r,"--metric-below",t.metricBelow),nt(r,"--metric-diff",t.metricDiff),ZA(r,t),nt(r,"--author",t.author),nt(r,"--message",t.message),rt(r,"--force",t.force),r}function ZA(e,t){nt(e,"--timeout",t.timeout),fn(e,"--env-set",t.envSet),fn(e,"--env-clear",t.envClear),rt(e,"--shared-host-safe",t.sharedHostSafe),nt(e,"--pm-context",t.pmContext),rt(e,"--override-linked-pm-context",t.overrideLinkedPmContext),nt(e,"--workspace-context",t.workspaceContext),rt(e,"--override-linked-workspace-context",t.overrideLinkedWorkspaceContext),rt(e,"--allow-untrusted-linked-tests",t.allowUntrustedLinkedTests),rt(e,"--fail-on-context-mismatch",t.failOnContextMismatch),rt(e,"--fail-on-skipped",t.failOnSkipped),rt(e,"--fail-on-empty-test-run",t.failOnEmptyTestRun),rt(e,"--require-assertions-for-pm",t.requireAssertionsForPm),rt(e,"--check-context",t.checkContext),rt(e,"--auto-pm-context",t.autoPmContext)}function dre(e){let t=["test-all","--json","--progress"];return nt(t,"--status",e.status),nt(t,"--limit",e.limit),nt(t,"--offset",e.offset),ZA(t,e),t}function pV(e){return e.join(",")}function ure(e,t={}){let r=s=>Gt(e,Me(Gp,s)),n=s=>jc(e,Me(Uc,s)),o=r("type");if(t.requireType!==!1&&o===void 0)throw new g("Missing required option --type <value>. Why required: create resolves runtime schema fields/workflow from item type. Retry: add --type <built-in or configured custom type> (example: --type Task).",_.USAGE);let i={title:r("title"),description:r("description"),type:o,template:r("template"),createMode:r("createMode"),schedulePreset:r("schedulePreset"),status:r("status"),closeReason:r("closeReason"),completedAt:r("completedAt"),priority:r("priority"),tags:r("tags"),addTags:n("addTags"),body:r("body"),deadline:r("deadline"),estimatedMinutes:r("estimatedMinutes"),acceptanceCriteria:XA(e,Me(Uc,"acceptanceCriteria")),definitionOfReady:r("definitionOfReady"),order:r("order"),rank:r("rank"),goal:r("goal"),objective:r("objective"),value:r("value"),impact:r("impact"),outcome:r("outcome"),whyNow:r("whyNow"),author:r("author"),message:r("message"),assignee:r("assignee"),parent:r("parent"),allowMissingParent:nl(e,["allowMissingParent","allow_missing_parent"])===!0,allowUnresolvedDeps:nl(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,allowDuplicate:k(e,"allowDuplicate")===!0,reviewer:r("reviewer"),risk:r("risk"),confidence:r("confidence"),sprint:r("sprint"),release:r("release"),blockedBy:r("blockedBy"),blockedReason:r("blockedReason"),unblockNote:r("unblockNote"),reporter:r("reporter"),severity:r("severity"),environment:r("environment"),reproSteps:r("reproSteps"),resolution:r("resolution"),expectedResult:r("expectedResult"),actualResult:r("actualResult"),affectedVersion:r("affectedVersion"),fixedVersion:r("fixedVersion"),component:r("component"),regression:e.regression===!0?"true":r("regression"),customerImpact:r("customerImpact"),dep:n("dep"),comment:n("comment"),note:n("note"),learning:n("learning"),file:n("file"),test:n("test"),doc:n("doc"),reminder:n("reminder"),event:n("event"),typeOption:n("typeOption"),field:n("field"),unset:n("unset"),clearDeps:k(e,"clearDeps"),clearComments:k(e,"clearComments"),clearNotes:k(e,"clearNotes"),clearLearnings:k(e,"clearLearnings"),clearFiles:k(e,"clearFiles"),clearTests:k(e,"clearTests"),clearDocs:k(e,"clearDocs"),clearReminders:k(e,"clearReminders"),clearEvents:k(e,"clearEvents"),clearTypeOptions:k(e,"clearTypeOptions")};return ol(i,e),i}function fre(e){let t=o=>Gt(e,Me(Vp,o)),r=o=>jc(e,Me(zc,o)),n={title:t("title"),description:t("description"),body:t("body"),status:t("status"),closeReason:t("closeReason"),priority:t("priority"),type:t("type"),tags:t("tags"),addTags:r("addTags"),removeTags:r("removeTags"),deadline:t("deadline"),estimatedMinutes:t("estimatedMinutes"),acceptanceCriteria:XA(e,Me(zc,"acceptanceCriteria")),addAc:r("addAc"),removeAc:r("removeAc"),definitionOfReady:t("definitionOfReady"),order:t("order"),rank:t("rank"),goal:t("goal"),objective:t("objective"),value:t("value"),impact:t("impact"),outcome:t("outcome"),whyNow:t("whyNow"),author:t("author"),message:t("message"),force:!!e.force,ownershipMetadataBypass:e.ownershipMetadataBypass===!0?!0:void 0,ownershipDependencyBypass:e.ownershipDependencyBypass===!0?!0:void 0,assignee:t("assignee"),parent:t("parent"),allowUnresolvedDeps:nl(e,["allowUnresolvedDeps","allow_unresolved_deps"])===!0,reviewer:t("reviewer"),risk:t("risk"),confidence:t("confidence"),sprint:t("sprint"),release:t("release"),blockedBy:t("blockedBy"),blockedReason:t("blockedReason"),unblockNote:t("unblockNote"),reporter:t("reporter"),severity:t("severity"),environment:t("environment"),reproSteps:t("reproSteps"),resolution:t("resolution"),expectedResult:t("expectedResult"),actualResult:t("actualResult"),affectedVersion:t("affectedVersion"),fixedVersion:t("fixedVersion"),component:t("component"),regression:e.regression===!0?"true":t("regression"),customerImpact:t("customerImpact"),dep:r("dep"),depRemove:r("depRemove"),replaceDeps:k(e,"replaceDeps"),replaceTests:k(e,"replaceTests"),replaceFiles:k(e,"replaceFiles"),replaceDocs:k(e,"replaceDocs"),comment:r("comment"),note:r("note"),learning:r("learning"),file:r("file"),test:r("test"),doc:r("doc"),reminder:r("reminder"),event:r("event"),typeOption:r("typeOption"),field:r("field"),unset:r("unset"),clearDeps:k(e,"clearDeps"),clearComments:k(e,"clearComments"),clearNotes:k(e,"clearNotes"),clearLearnings:k(e,"clearLearnings"),clearFiles:k(e,"clearFiles"),clearTests:k(e,"clearTests"),clearDocs:k(e,"clearDocs"),clearReminders:k(e,"clearReminders"),clearEvents:k(e,"clearEvents"),clearTypeOptions:k(e,"clearTypeOptions")};return ol(n,e),n}var mV=new Set(["filterStatus","filterType","filterTag","filterPriority","filterDeadlineBefore","filterDeadlineAfter","filterUpdatedAfter","filterUpdatedBefore","filterCreatedAfter","filterCreatedBefore","filterAssignee","filterAssigneeFilter","filterAssignee_filter","filterParent","filterSprint","filterRelease","filterAcMissing","filterEstimatesMissing","filterEstimateMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","filterHasNotes","filterNoNotes","filterHasLearnings","filterNoLearnings","filterHasFiles","filterNoFiles","filterHasDocs","filterNoDocs","filterHasTests","filterNoTests","filterHasComments","filterNoComments","filterHasDeps","filterNoDeps","filterHasBody","filterEmptyBody","filterHasLinkedCommand","filterNoLinkedCommand","ids","limit","offset","dryRun","rollback","checkpoint"]);function pre(e){let t={};for(let[r,n]of Object.entries(e))mV.has(r)||(t[r]=n);return t}function $(e,t){let r=Me(zp,t),n=Gt(e,r);if(n!==void 0)return n;for(let o of r.keys){let i=e[o];if(Array.isArray(i)){let s=i.filter(a=>typeof a=="string");if(s.length>0)return s.join(",")}if(t==="ids"&&typeof i=="string")return i;if(typeof i=="number"&&Number.isFinite(i))return String(i)}}function QA(e){let t=k(e,"filterFilesMissing"),r=k(e,"filterDocsMissing");return{filterReviewerMissing:k(e,"filterReviewerMissing"),filterRiskMissing:k(e,"filterRiskMissing"),filterConfidenceMissing:k(e,"filterConfidenceMissing"),filterSprintMissing:k(e,"filterSprintMissing"),filterReleaseMissing:k(e,"filterReleaseMissing"),hasNotes:k(e,"hasNotes"),hasLearnings:k(e,"hasLearnings"),hasFiles:k(e,"hasFiles"),hasDocs:k(e,"hasDocs"),hasTests:k(e,"hasTests"),hasComments:k(e,"hasComments"),hasDeps:k(e,"hasDeps"),hasBody:k(e,"hasBody"),hasLinkedCommand:k(e,"hasLinkedCommand"),noNotes:Vt(e,"notes"),noLearnings:Vt(e,"learnings"),noFiles:Vt(e,"files")??t,filterFilesMissing:t,noDocs:Vt(e,"docs")??r,filterDocsMissing:r,noTests:Vt(e,"tests"),noComments:Vt(e,"comments"),noDeps:Vt(e,"deps"),emptyBody:k(e,"emptyBody"),noLinkedCommand:Vt(e,"linkedCommand")}}function mre(e){let t={status:$(e,"status"),type:$(e,"type"),tag:$(e,"tag"),priority:$(e,"priority"),deadlineBefore:$(e,"deadlineBefore"),deadlineAfter:$(e,"deadlineAfter"),updatedAfter:$(e,"updatedAfter"),updatedBefore:$(e,"updatedBefore"),createdAfter:$(e,"createdAfter"),createdBefore:$(e,"createdBefore"),today:k(e,"today"),recent:k(e,"recent"),ids:$(e,"ids"),assignee:$(e,"assignee"),assigneeFilter:$(e,"assigneeFilter"),parent:$(e,"parent"),sprint:$(e,"sprint"),release:$(e,"release"),limit:$(e,"limit"),offset:$(e,"offset"),noTruncate:Vt(e,"truncate"),includeBody:k(e,"includeBody"),strictRead:k(e,"strictRead"),compact:k(e,"compact"),brief:k(e,"brief"),full:k(e,"full"),fields:$(e,"fields"),sort:$(e,"sort"),order:$(e,"order"),tree:k(e,"tree"),treeDepth:$(e,"treeDepth"),filterAcMissing:k(e,"filterAcMissing"),filterEstimatesMissing:nl(e,["filterEstimatesMissing","filterEstimateMissing"]),filterResolutionMissing:k(e,"filterResolutionMissing"),filterMetadataMissing:k(e,"filterMetadataMissing"),...QA(e)};return ol(t,e),t}function _re(e){return{groupBy:typeof e.groupBy=="string"?e.groupBy:void 0,setMode:typeof e.setMode=="string"?e.setMode:void 0,limit:$(e,"limit"),after:$(e,"after"),count:e.count===!0?!0:void 0,completion:e.completion===!0?!0:void 0,sum:typeof e.sum=="string"?e.sum:void 0,avg:typeof e.avg=="string"?e.avg:void 0,includeUnparented:e.includeUnparented===!0||e.include_unparented===!0,status:typeof e.status=="string"?e.status:void 0,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 gre(e,t,r){if(Qt(t),r.quiet)return;let n=Array.isArray(t.warnings)?t.warnings:[],o={type:"meta",command:e,count:t.count,now:t.now,filters:t.filters};if(n.length>0&&(o.warnings=n),!!jt(`${JSON.stringify(o)}
231
- `)){for(let i of t.items)if(!jt(`${JSON.stringify({type:"item",command:e,item:i})}
232
- `))return;jt(`${JSON.stringify({type:"end",command:e,count:t.count})}
233
- `)}}function yre(e,t,r){if(Qt(e),r.quiet)return;let n={type:"meta",command:"activity",count:e.count,filters:{id:t.id??null,op:t.op??null,author:t.author??null,from:t.from??null,to:t.to??null,limit:t.limit??null}};if(!jt(`${JSON.stringify(n)}
234
- `))return;let o=e.compact&&e.compact_activity?e.compact_activity:e.activity??[];for(let i of o)if(!jt(`${JSON.stringify({type:"entry",command:"activity",entry:i})}
235
- `))return;jt(`${JSON.stringify({type:"end",command:"activity",count:e.count})}
236
- `)}function hre(e){let t=l=>Gt(e,Me(Mc,l)),r=l=>{let d=$c(e,Me(Mc,l));if(typeof d=="string"||typeof d=="number"&&Number.isFinite(d))return d},n=t("fields"),o=e.compact===!0,i=e.full===!0,s=!o&&!i&&n===void 0,c={mode:e.semantic===!0?"semantic":e.hybrid===!0?"hybrid":t("mode"),matchMode:t("matchMode"),minScore:r("minScore"),count:k(e,"count"),semanticWeight:r("semanticWeight"),includeLinked:k(e,"includeLinked"),titleExact:k(e,"titleExact"),phraseExact:k(e,"phraseExact"),highlight:k(e,"highlight"),status:t("status"),type:t("type"),tag:t("tag"),priority:t("priority"),deadlineBefore:t("deadlineBefore"),deadlineAfter:t("deadlineAfter"),updatedAfter:t("updatedAfter"),updatedBefore:t("updatedBefore"),createdAfter:t("createdAfter"),createdBefore:t("createdBefore"),assignee:t("assignee"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),fields:n,compact:o||s?!0:void 0,full:k(e,"full"),...QA(e)};return ol(c,e),c}function bre(e){let t=e.map(r=>r.trim()).filter(r=>r.length>0).join(" ");if(t.length===0)throw new g("Search query must not be empty",_.USAGE);return t}function wre(e){let t=n=>Gt(e,Me(qp,n)),r={id:t("id"),op:t("op"),author:t("author"),from:t("from"),to:t("to"),limit:t("limit"),compact:e.full===!0||e.provenance===!0?!1:e.compact===!0||e.raw===!0?!0:void 0,...e.raw===!0||e.compact===!0||e.full===!0?{raw:!0}:{},unbounded:k(e,"unbounded"),provenance:k(e,"provenance"),provenanceSummary:k(e,"provenanceSummary"),harness:Array.isArray(e.harness)?e.harness:void 0,agentInstance:Array.isArray(e.agentInstance)?e.agentInstance:void 0,provenanceFilter:Array.isArray(e.provenanceFilter)?e.provenanceFilter:void 0};return Object.fromEntries(Object.entries(r).filter(([,n])=>n!==void 0))}var _V=new Set(["","rows","ndjson","jsonl","true","1","yes","on"]),gV=new Set(["false","off","none","0"]);function vre(e){if(e===!0)return!0;if(e===!1||e===void 0||e===null)return!1;if(typeof e=="string"){let t=e.trim().toLowerCase();if(_V.has(t))return!0;if(gV.has(t))return!1}throw new g("Activity --stream accepts rows|ndjson|jsonl (or no value)",_.USAGE)}function Ere(e){let t=s=>Gt(e,Me(Lc,s)),r=s=>JA(e,Me(Lc,s)),n=e.section,o=Array.isArray(n)?n.filter(s=>typeof s=="string"&&s.trim().length>0):typeof n=="string"&&n.trim().length>0?[n]:void 0,i={date:t("date"),from:t("from"),to:t("to"),past:e.past===!0?!0:void 0,type:t("type"),tag:t("tag"),priority:t("priority"),assignee:t("assignee"),assigneeFilter:t("assigneeFilter"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),format:t("format"),depth:t("depth"),fields:t("fields"),section:o&&o.length>0?o:void 0,activityLimit:t("activityLimit"),staleThreshold:t("staleThreshold"),tokenBudget:r("tokenBudget"),noExtensionHealth:e.extensionHealth===!1?!0:void 0,noTags:e.tags===!1?!0:void 0};for(let[s,a]of Object.entries(e))Object.hasOwn(i,s)||(i[s]=a);return i}function Tre(e){let t=o=>Gt(e,Me(Fc,o)),r=o=>JA(e,Me(Fc,o)),n={type:t("type"),tag:t("tag"),priority:r("priority"),assignee:t("assignee"),assigneeFilter:t("assigneeFilter"),sprint:t("sprint"),release:t("release"),parent:t("parent"),limit:t("limit"),blockedLimit:t("blockedLimit"),readyOnly:e.readyOnly===!0||e.ready_only===!0?!0:void 0,format:t("format"),tokenBudget:r("tokenBudget")};for(let[o,i]of Object.entries(e))Object.hasOwn(n,o)||(n[o]=i);return n}function yV(e){if(!e||typeof e!="object")return[];let t=e,r=new Set,n=a=>{if(typeof a!="string")return;let c=a.trim();c.length!==0&&r.add(c)};n(t.id);let o=t.item;o&&typeof o=="object"&&n(o.id);let i=t.ids;if(Array.isArray(i))for(let a of i)n(a);let s=t.items;if(Array.isArray(s))for(let a of s)!a||typeof a!="object"||n(a.id);return[...r].sort((a,c)=>a.localeCompare(c))}async function kre(e,t){let r=So(process.cwd(),e.path),n=await mp(r,yV(t),{background:!Rf()});e.profile&&n.warnings.length>0&&Gu(`profile:search_refresh_warnings=${pV(n.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]="e524f0ad-faad-5d89-b8f5-1283979919ad")}catch{}})();export{hV as a,Vi as b,xm as c,Nm as d,Wi as e,Yi as f,rS as g,Dm as h,Ke as i,go as j,nS as k,sl as l,oS as m,Xi as n,re as o,yo as p,X as q,V as r,F as s,bo as t,mt as u,Ji as v,al as w,kV as x,Zi as y,Qi as z,es as A,ts as B,rs as C,Mm as D,Xe as E,ns as F,cS as G,lS as H,IV as I,Ee as J,ul as K,uS as L,cl as M,C as N,_ as O,is as P,g as Q,U as R,pS as S,G as T,$m as U,NV as V,mS as W,Fm as X,jm as Y,_S as Z,hS as _,bS as $,FV as aa,Z as ba,Ot as ca,_l as da,hn as ea,be as fa,HV as ga,$S as ha,qS as ia,HS as ja,BS as ka,VS as la,yl as ma,hl as na,ot as oa,o5 as pa,KS as qa,Jl as ra,bl as sa,Km as ta,cs as ua,It as va,wl as wa,tO as xa,wn as ya,Xm as za,vn as Aa,ls as Ba,En as Ca,ds as Da,u5 as Ea,f5 as Fa,p5 as Ga,fs as Ha,ps as Ia,m5 as Ja,_5 as Ka,g5 as La,y5 as Ma,ms as Na,vo as Oa,vl as Pa,Zm as Qa,_s as Ra,Qm as Sa,e_ as Ta,h5 as Ua,b5 as Va,aO as Wa,Al as Xa,Sl as Ya,bO as Za,To as _a,ys as $a,ko as ab,c_ as bb,l_ as cb,FO as db,UO as eb,hs as fb,u_ as gb,M5 as hb,So as ib,KO as jb,Rt as kb,Te as lb,Tn as mb,Oo as nb,_t as ob,f_ as pb,Ol as qb,bs as rb,JO as sb,L5 as tb,ZO as ub,QO as vb,F5 as wb,$5 as xb,eC as yb,j5 as zb,oC as Ab,iC as Bb,m_ as Cb,J as Db,z_ as Eb,q_ as Fb,G_ as Gb,B_ as Hb,Cl as Ib,xl as Jb,Nl as Kb,Y5 as Lb,K5 as Mb,X5 as Nb,mC as Ob,__ as Pb,J5 as Qb,g_ as Rb,Dl as Sb,hC as Tb,bC as Ub,Ro as Vb,Pl as Wb,Ml as Xb,Ll as Yb,Fl as Zb,$l as _b,Ts as $b,jl as ac,i4 as bc,OC as cc,CC as dc,L as ec,le as fc,As as gc,T_ as hc,Ul as ic,k_ as jc,zl as kc,ql as lc,Hl as mc,Gl as nc,Bl as oc,Vl as pc,Yl as qc,Kl as rc,Xl as sc,yI as tc,SI as uc,CI as vc,Eg as wc,Tg as xc,UI as yc,CW as zc,f0 as Ac,p0 as Bc,DW as Cc,Cg as Dc,m0 as Ec,ud as Fc,y0 as Gc,h0 as Hc,Pg as Ic,Ps as Jc,E0 as Kc,T0 as Lc,k0 as Mc,A0 as Nc,S0 as Oc,O0 as Pc,C0 as Qc,Zt as Rc,I0 as Sc,R0 as Tc,Qt as Uc,x0 as Vc,Ms as Wc,Bo as Xc,N0 as Yc,D0 as Zc,ke as _c,Ls as $c,it as ad,fd as bd,P0 as cd,M0 as dd,L0 as ed,F0 as fd,Ze as gd,Fs as hd,Vo as id,H0 as jd,V0 as kd,XW as ld,W0 as md,Y0 as nd,JW as od,t3 as pd,Bg as qd,K0 as rd,X0 as sd,J0 as td,Z0 as ud,oR as vd,aR as wd,r3 as xd,cR as yd,Xg as zd,dR as Ad,uR as Bd,n3 as Cd,fR as Dd,$s as Ed,o3 as Fd,In as Gd,mR as Hd,_R as Id,gd as Jd,Jg as Kd,wR as Ld,f3 as Md,ER as Nd,Zg as Od,Pr as Pd,tr as Qd,Qg as Rd,$e as Sd,Ae as Td,hd as Ud,gt as Vd,Re as Wd,QR as Xd,cy as Yd,bd as Zd,qs as _d,wd as $d,dy as ae,rx as be,ux as ce,fx as de,Rn as ee,my as fe,I3 as ge,_y as he,px as ie,R3 as je,Fr as ke,gy as le,_x as me,Bs as ne,Qo as oe,SN as pe,$r as qe,ei as re,Qe as se,Nd as te,Sy as ue,Oy as ve,Dd as we,Cy as xe,e9 as ye,Iy as ze,t9 as Ae,Ys as Be,nr as Ce,Xs as De,LN as Ee,FN as Fe,Js as Ge,jd as He,d9 as Ie,u9 as Je,f9 as Ke,qN as Le,HN as Me,GN as Ne,Yd as Oe,Kd as Pe,Xd as Qe,E9 as Re,_D as Se,gD as Te,yD as Ue,hD as Ve,bD as We,ti as Xe,eu as Ye,tu as Ze,ED as _e,T9 as $e,TD as af,ru as bf,ri as cf,ie as df,HD as ef,Ue as ff,H9 as gf,GD as hf,BD as if,Ln as jf,kF as kf,nY as lf,oY as mf,iY as nf,ni as of,_h as pf,sP as qf,aP as rf,cP as sf,ia as tf,W9 as uf,ph as vf,mh as wf,Lt as xf,J9 as yf,t6 as zf,gh as Af,uP as Bf,fP as Cf,r6 as Df,ht as Ef,n6 as Ff,yP as Gf,wP as Hf,SP as If,wh as Jf,l6 as Kf,d6 as Lf,oi as Mf,fu as Nf,pu as Of,u6 as Pf,RP as Qf,f6 as Rf,p6 as Sf,kh as Tf,sa as Uf,NP as Vf,sr as Wf,$n as Xf,aa as Yf,ca as Zf,ii as _f,Ah as $f,Iu as ag,ui as bg,DP as cg,Sh as dg,_u as eg,LP as fg,gu as gg,la as hg,Ch as ig,$P as jg,yu as kg,Rh as lg,w6 as mg,xh as ng,Nh as og,Dh as pg,GP as qg,BP as rg,Ph as sg,ai as tg,A6 as ug,VP as vg,Mh as wg,Lh as xg,Fh as yg,hu as zg,at as Ag,$h as Bg,WP as Cg,YP as Dg,KP as Eg,XP as Fg,JP as Gg,ZP as Hg,QP as Ig,Uh as Jg,tM as Kg,bu as Lg,zh as Mg,qh as Ng,Hh as Og,wu as Pg,Gh as Qg,Bh as Rg,vu as Sg,cr as Tg,Eu as Ug,wM as Vg,vM as Wg,Yh as Xg,da as Yg,ku as Zg,Au as _g,Su as $g,di as ah,pa as bh,Qh as ch,Ou as dh,eb as eh,Br as fh,cb as gh,db as hh,ub as ih,NM as jh,bt as kh,e8 as lh,Nu as mh,$M as nh,t8 as oh,yb as ph,Pu as qh,vb as rh,Eb as sh,Tb as th,$t as uh,fe as vh,p8 as wh,Hn as xh,gL as yh,m8 as zh,_8 as Ah,yL as Bh,g8 as Ch,y8 as Dh,h8 as Eh,Db as Fh,vL as Gh,C8 as Hh,TL as Ih,Mb as Jh,I8 as Kh,Fb as Lh,AL as Mh,IL as Nh,$b as Oh,zb as Ph,jt as Qh,Vn as Rh,Ea as Sh,Yb as Th,Gu as Uh,NF as Vh,Na as Wh,pr as Xh,Yn as Yh,_w as Zh,gw as _h,rf as $h,Kr as ai,MF as bi,Ma as ci,yi as di,nf as ei,La as fi,WF as gi,of as hi,hw as ii,YF as ji,Ut as ki,zt as li,Kn as mi,Xn as ni,$Y as oi,sf as pi,hi as qi,XF as ri,JF as si,cf as ti,lf as ui,lt as vi,i$ as wi,a$ as xi,jY as yi,df as zi,c$ as Ai,$a as Bi,Sw as Ci,mr as Di,Jr as Ei,m$ as Fi,_$ as Gi,pf as Hi,g$ as Ii,mf as Ji,y$ as Ki,h$ as Li,v$ as Mi,xw as Ni,Qn as Oi,Ht as Pi,S$ as Qi,TK as Ri,C$ as Si,Dw as Ti,I$ as Ui,R$ as Vi,D$ as Wi,RK as Xi,L$ as Yi,LK as Zi,U$ as _i,q$ as $i,H$ as aj,G$ as bj,B$ as cj,yf as dj,Y$ as ej,BK as fj,VK as gj,WK as hj,YK as ij,KK as jj,XK as kj,JK as lj,J$ as mj,Z$ as nj,Q$ as oj,ej as pj,tj as qj,rj,nj as sj,a7 as tj,Va as uj,Rj as vj,yr as wj,ut as xj,Ti as yj,to as zj,Tv as Aj,Rf as Bj,F7 as Cj,ki as Dj,j1 as Ej,Rv as Fj,Df as Gj,xv as Hj,V7 as Ij,z1 as Jj,H1 as Kj,G1 as Lj,B1 as Mj,V1 as Nj,Pf as Oj,aX as Pj,rU as Qj,nU as Rj,oU as Sj,$f as Tj,fU as Uj,cc as Vj,$U as Wj,lc as Xj,xi as Yj,Vf as Zj,oo as _j,VU as $j,Ni as ak,Di as bk,QU as ck,Zv as dk,ez as ek,gJ as fk,Yf as gk,Qv as hk,sz as ik,yJ as jk,az as kk,cz as lk,TJ as mk,pc as nk,oE as ok,Xf as pk,wz as qk,vz as rk,SJ as sk,iE as tk,so as uk,Zf as vk,ep as wk,hc as xk,FJ as yk,cp as zk,wc as Ak,fE as Bk,vc as Ck,lp as Dk,dp as Ek,up as Fk,fp as Gk,hE as Hk,bE as Ik,mE as Jk,mp as Kk,Fi as Lk,ft as Mk,G2 as Nk,uo as Ok,tq as Pk,rq as Qk,nq as Rk,aq as Sk,cq as Tk,dq as Uk,uq as Vk,DE as Wk,fq as Xk,pq as Yk,mq as Zk,wZ as _k,EZ as $k,Ac as al,vp as bl,ME as cl,PE as dl,yq as el,hq as fl,LE as gl,vq as hl,Aq as il,Oq as jl,Iq as kl,Rq as ll,Dq as ml,Mq as nl,Lq as ol,Vq as pl,xc as ql,nT as rl,an as sl,vQ as tl,uG as ul,fG as vl,pG as wl,zp as xl,Mc as yl,mG as zl,Lc as Al,Fc as Bl,qp as Cl,Gt as Dl,$c as El,jc as Fl,Hp as Gl,Gp as Hl,Uc as Il,Bp as Jl,Vp as Kl,zc as Ll,_G as Ml,Yp as Nl,Kp as Ol,Xp as Pl,$T as Ql,qc as Rl,jT as Sl,Jp as Tl,UT as Ul,Zp as Vl,Qp as Wl,em as Xl,tm as Yl,wG as Zl,rm as _l,nm as $l,vG as am,EG as bm,im as cm,TG as dm,ln as em,Wee as fm,OG as gm,Yee as hm,Bc as im,Vc as jm,Gc as km,HT as lm,CG as mm,Hc as nm,Kee as om,Xee as pm,qi as qm,NG as rm,Jc as sm,DG as tm,Kc as um,YT as vm,KT as wm,XT as xm,JT as ym,ZT as zm,QT as Am,ek as Bm,tk as Cm,rk as Dm,nk as Em,ok as Fm,ik as Gm,PG as Hm,sk as Im,ak as Jm,fm as Km,ck as Lm,lk as Mm,pm as Nm,De as Om,mm as Pm,sm as Qm,dk as Rm,uk as Sm,fk as Tm,pk as Um,mk as Vm,_k as Wm,gk as Xm,yk as Ym,hk as Zm,bk as _m,wk as $m,vk as an,am as bn,Ek as cn,Tk as dn,_m as en,MG as fn,kk as gn,Ak as hn,Sk as in,Ok as jn,Ck as kn,Ik as ln,Rk as mn,xk as nn,Nk as on,Dk as pn,gm as qn,Mk as rn,Lk as sn,Fk as tn,$k as un,jk as vn,LG as wn,Uk as xn,zk as yn,qk as zn,Hk as An,Gk as Bn,ym as Cn,cm as Dn,Yk as En,Kk as Fn,Xk as Gn,Jk as Hn,Zk as In,Qk as Jn,eA as Kn,lm as Ln,tA as Mn,rA as Nn,dm as On,nA as Pn,oA as Qn,iA as Rn,sA as Sn,aA as Tn,Bt as Un,lA as Vn,dA as Wn,uA as Xn,fA as Yn,pA as Zn,qG as _n,HG as $n,hm as ao,BG as bo,bA as co,yA as do,hA as eo,wA as fo,vA as go,mo as ho,wm as io,fte as jo,pte as ko,mte as lo,gB as mo,_te as no,jA as oo,EB as po,UA as qo,qA as ro,NB as so,UB as to,Im as uo,VA as vo,WA as wo,zB as xo,GB as yo,aV as zo,tre as Ao,rre as Bo,nre as Co,ore as Do,ire as Eo,dV as Fo,sre as Go,uV as Ho,are as Io,fV as Jo,cre as Ko,lre as Lo,dre as Mo,pV as No,ure as Oo,fre as Po,pre as Qo,mre as Ro,_re as So,gre as To,yre as Uo,hre as Vo,bre as Wo,wre as Xo,vre as Yo,Ere as Zo,Tre as _o,kre as $o};
237
- //# sourceMappingURL=chunk-CI2JCBN2.js.map