@unbrained/pm-cli 2026.9.1 → 2026.9.3

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 (133) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +27 -0
  3. package/dist/cli/after-command-context-usage.js +16 -3
  4. package/dist/cli-bundle/bundle-manifest.json +153 -153
  5. package/dist/cli-bundle/chunks/{chunk-6XIIGE7U.js → chunk-34HASX3S.js} +2 -2
  6. package/dist/cli-bundle/chunks/chunk-AY324UJ5.js +9 -0
  7. package/dist/cli-bundle/chunks/{chunk-TAG4VC22.js → chunk-DKGP3QLE.js} +27 -27
  8. package/dist/cli-bundle/chunks/chunk-E5RBBCXO.js +230 -0
  9. package/dist/cli-bundle/chunks/{chunk-DTGWEL23.js → chunk-EDPIS7EB.js} +2 -2
  10. package/dist/cli-bundle/chunks/{chunk-X4RCGLTX.js → chunk-IEHHE6GA.js} +5 -5
  11. package/dist/cli-bundle/chunks/{chunk-U45JXJCC.js → chunk-L7B7343B.js} +2 -2
  12. package/dist/cli-bundle/chunks/{chunk-2MC2LCXZ.js → chunk-LENC656S.js} +41 -41
  13. package/dist/cli-bundle/chunks/chunk-LISESA7W.js +35 -0
  14. package/dist/cli-bundle/chunks/{chunk-3WICXLVT.js → chunk-UPPM2FOZ.js} +2 -2
  15. package/dist/cli-bundle/chunks/{chunk-Y7VOMSZT.js → chunk-Y4PJ6HPK.js} +2 -2
  16. package/dist/cli-bundle/chunks/{register-list-query-XYNX4ASQ.js → register-list-query-W2ZTOMKP.js} +2 -2
  17. package/dist/cli-bundle/chunks/{register-mutation-2MVLRS3J.js → register-mutation-RVND5NCG.js} +2 -2
  18. package/dist/cli-bundle/chunks/{register-operations-WCIDXBU3.js → register-operations-TTROIVC4.js} +2 -2
  19. package/dist/cli-bundle/chunks/{register-setup-KVNC5KPL.js → register-setup-D3ZFHY3L.js} +2 -2
  20. package/dist/cli-bundle/focused-chunks/chunk-3ZBI35HU.js +176 -0
  21. package/dist/cli-bundle/focused-chunks/{chunk-SVXJYD6G.js → chunk-4HJFY4MB.js} +2 -2
  22. package/dist/cli-bundle/focused-chunks/chunk-4RRHC3S4.js +6 -0
  23. package/dist/cli-bundle/focused-chunks/chunk-4WR46RMG.js +9 -0
  24. package/dist/cli-bundle/focused-chunks/chunk-5RFXUPN5.js +3 -0
  25. package/dist/cli-bundle/focused-chunks/chunk-BWKHEIVF.js +2 -0
  26. package/dist/cli-bundle/focused-chunks/{chunk-4O4CJAR6.js → chunk-D7KXFBXV.js} +2 -2
  27. package/dist/cli-bundle/focused-chunks/{chunk-MKHG3T76.js → chunk-GHCZ3YFR.js} +3 -3
  28. package/dist/cli-bundle/focused-chunks/{chunk-KB5OFSFD.js → chunk-GT7MXDLW.js} +2 -2
  29. package/dist/cli-bundle/focused-chunks/chunk-KBLZRU62.js +2 -0
  30. package/dist/cli-bundle/focused-chunks/chunk-KZ2NB3ET.js +2 -0
  31. package/dist/cli-bundle/focused-chunks/chunk-M5M6SVHS.js +3 -0
  32. package/dist/cli-bundle/focused-chunks/{chunk-BEVHCEWG.js → chunk-OL5EH6I3.js} +2 -2
  33. package/dist/cli-bundle/focused-chunks/{chunk-MEASX544.js → chunk-Q45NHPF2.js} +2 -2
  34. package/dist/cli-bundle/focused-chunks/{chunk-Y6JJIX6I.js → chunk-QKHCSUGJ.js} +48 -48
  35. package/dist/cli-bundle/focused-chunks/chunk-S27XMBIN.js +8 -0
  36. package/dist/cli-bundle/focused-chunks/chunk-TXE4TSHM.js +12 -0
  37. package/dist/cli-bundle/focused-chunks/chunk-UCLO3XDU.js +2 -0
  38. package/dist/cli-bundle/main.js +15 -15
  39. package/dist/cli-bundle/sdk-authoring.js +1 -1
  40. package/dist/cli-bundle/sdk-contracts.js +1 -1
  41. package/dist/cli-bundle/sdk-core.js +28 -28
  42. package/dist/cli-bundle/sdk-governance.js +1 -1
  43. package/dist/cli-bundle/sdk-graph.js +1 -1
  44. package/dist/cli-bundle/sdk-merge.js +35 -33
  45. package/dist/cli-bundle/sdk-query.js +1 -1
  46. package/dist/cli-bundle/sdk-runtime.js +1 -1
  47. package/dist/cli-bundle/sdk-testing.js +1 -1
  48. package/dist/cli-bundle/sdk.js +9 -9
  49. package/dist/core/diagnostics/remediation.js +9 -4
  50. package/dist/core/history/event-classification.d.ts +21 -0
  51. package/dist/core/history/event-classification.js +109 -0
  52. package/dist/core/history/event-index.d.ts +14 -3
  53. package/dist/core/history/event-index.js +543 -88
  54. package/dist/core/history/history.js +47 -18
  55. package/dist/core/history/workspace-history.js +7 -6
  56. package/dist/core/lock/lock.d.ts +22 -2
  57. package/dist/core/lock/lock.js +121 -19
  58. package/dist/core/output/output.js +31 -7
  59. package/dist/core/shared/time.d.ts +2 -0
  60. package/dist/core/shared/time.js +8 -2
  61. package/dist/core/store/item-metadata-query-index.js +5 -5
  62. package/dist/sdk/context/recency.d.ts +9 -0
  63. package/dist/sdk/context/recency.js +34 -0
  64. package/dist/sdk/context/usage-egress.d.ts +9 -0
  65. package/dist/sdk/context/usage-egress.js +30 -0
  66. package/dist/sdk/context-intent-contracts.js +7 -3
  67. package/dist/sdk/context-relevance.d.ts +23 -0
  68. package/dist/sdk/context-relevance.js +94 -23
  69. package/dist/sdk/context-signal-store.d.ts +7 -3
  70. package/dist/sdk/context-signal-store.js +155 -42
  71. package/dist/sdk/context-usage.d.ts +54 -0
  72. package/dist/sdk/context-usage.js +245 -16
  73. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +26 -14
  74. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +14 -2
  75. package/dist/sdk/governance/health.js +77 -11
  76. package/dist/sdk/governance/validate.js +4 -2
  77. package/dist/sdk/index.d.ts +2 -0
  78. package/dist/sdk/index.js +4 -2
  79. package/dist/sdk/init.d.ts +2 -0
  80. package/dist/sdk/init.js +18 -9
  81. package/dist/sdk/merge/index.d.ts +1 -1
  82. package/dist/sdk/merge/index.js +2 -2
  83. package/dist/sdk/merge/receipts.d.ts +24 -0
  84. package/dist/sdk/merge/receipts.js +122 -30
  85. package/dist/sdk/query/context.d.ts +3 -1
  86. package/dist/sdk/query/context.js +21 -9
  87. package/dist/sdk/query/next.js +18 -9
  88. package/dist/sdk/runtime-input.d.ts +2 -0
  89. package/dist/sdk/runtime-input.js +25 -2
  90. package/dist/sdk/runtime.d.ts +1 -0
  91. package/dist/sdk/runtime.js +17 -26
  92. package/dist/types.d.ts +2 -0
  93. package/dist/types.js +2 -2
  94. package/docs/CONTEXT_RECOVERY_PRIMITIVES.md +11 -2
  95. package/docs/CONTEXT_RELEVANCE.md +44 -1
  96. package/docs/MERGE_SAFETY.md +16 -2
  97. package/docs/PERFORMANCE.md +6 -3
  98. package/docs/READ_OUTPUT_CONTRACTS.md +9 -1
  99. package/docs/SDK.md +11 -8
  100. package/docs/SDK_CONTEXT.md +7 -0
  101. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +5 -3
  102. package/marketplace.json +2 -2
  103. package/package.json +4 -4
  104. package/packages/pm-beads/package.json +1 -1
  105. package/packages/pm-calendar/package.json +1 -1
  106. package/packages/pm-command-kit/package.json +1 -1
  107. package/packages/pm-digital-twin/package.json +1 -1
  108. package/packages/pm-governance-audit/package.json +1 -1
  109. package/packages/pm-guide-shell/package.json +1 -1
  110. package/packages/pm-kanban/package.json +1 -1
  111. package/packages/pm-lifecycle-hooks/package.json +1 -1
  112. package/packages/pm-linked-test-adapters/package.json +1 -1
  113. package/packages/pm-search-advanced/package.json +1 -1
  114. package/packages/pm-templates/package.json +1 -1
  115. package/packages/pm-todos/package.json +1 -1
  116. package/packages/pm-vcs/package.json +1 -1
  117. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  118. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  119. package/sdk/public-surface.json +268 -28
  120. package/dist/cli-bundle/chunks/chunk-ALKKAUFN.js +0 -35
  121. package/dist/cli-bundle/chunks/chunk-GOACULJW.js +0 -13
  122. package/dist/cli-bundle/chunks/chunk-NOPL37X4.js +0 -205
  123. package/dist/cli-bundle/focused-chunks/chunk-2FEZ5SKM.js +0 -3
  124. package/dist/cli-bundle/focused-chunks/chunk-6GCRSLPG.js +0 -2
  125. package/dist/cli-bundle/focused-chunks/chunk-7VATS5QY.js +0 -16
  126. package/dist/cli-bundle/focused-chunks/chunk-FWPLDEXF.js +0 -2
  127. package/dist/cli-bundle/focused-chunks/chunk-JEFKLWMM.js +0 -2
  128. package/dist/cli-bundle/focused-chunks/chunk-PF3E6Q36.js +0 -8
  129. package/dist/cli-bundle/focused-chunks/chunk-QDFJIRKN.js +0 -4
  130. package/dist/cli-bundle/focused-chunks/chunk-RMRCQPWU.js +0 -2
  131. package/dist/cli-bundle/focused-chunks/chunk-S4U5CN5Q.js +0 -2
  132. package/dist/cli-bundle/focused-chunks/chunk-T2LXXSOD.js +0 -158
  133. package/dist/cli-bundle/focused-chunks/chunk-Z2USIBR2.js +0 -5
@@ -0,0 +1,176 @@
1
+ import{b as $t,f as dt,h as lt,i as ut,k as jo,l as Po,m as Lo,n as Mo,o as Fo,p as zo}from"./chunk-5RFXUPN5.js";import{A as ft,B as $o,C as Ho,D as ue,E as ne,F as Uo,G as Fe,H as re,K as Vo,L as Wo,M as X,r as ke,s as Qn,t as Ut,u as te,v as Zn,w as le,x as er}from"./chunk-4WR46RMG.js";import{$ as S,A as ko,Ea as Ht,F as Ft,G as zt,H as Gn,Ia as at,J as Io,Ja as Yn,Ka as Jn,Kb as Do,La as ct,Na as Co,P as se,Ta as Ao,V as ve,W as So,Z as w,Za as No,_ as Pe,aa as x,cb as Ro,i as jt,ia as xo,ja as Le,la as ae,ma as ce,na as W,nb as M,oa as st,ob as Me,pb as de,q as Pt,qb as k,r as bo,s as wo,t as Eo,ta as To,u as vo,y as Lt,z as Mt,za as Oo}from"./chunk-4RRHC3S4.js";import{AsyncLocalStorage as wa}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]="16109ee9-e684-5d25-a5f4-30a6c4f62bd5")}catch{}})();var tr=new wa,Bo=/^[A-Za-z0-9](?:[A-Za-z0-9._:-]{0,127})$/u;function Vt(e,t){let n=typeof e=="string"?e.trim():"";return n.length>0?n.slice(0,t):void 0}function Ie(e,t){if(e===void 0)return;let n=typeof e=="object"&&e!==null?e:{},r=Vt(n.id,128),o=Vt(n.parent_id,128);if(r===void 0||!Bo.test(r)||o!==void 0&&!Bo.test(o)){if(t)throw new Error("Agent episode ids must be 1-128 letters, digits, dots, underscores, colons, or hyphens.");return}let i=Vt(n.label,256);return{id:r,...i===void 0?{}:{label:i},...o===void 0?{}:{parent_id:o}}}function ze(e){let t={};for(let[n,r]of Object.entries(e??{}).slice(0,32)){let o=n.trim().toLowerCase().slice(0,64),i=Vt(r,256);/^[a-z][a-z0-9_-]{0,63}$/u.test(o)&&i!==void 0&&(t[o]=i)}return t}function Ea(e,t,n){let r=tr.getStore(),o=ze({role:t.PM_AGENT_SESSION_ROLE,topic:t.PM_AGENT_SESSION_TOPIC}),i=Ie(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={...ze(r?.provenance),...o,...ze(e?.provenance)},a=Ie(e?.episode,!1)??Ie(n,!1)??i??Ie(r?.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 nr(e,t){return Ea(e.session_context,t,e.client_info?.episode)??{}}function f_(e,t){let n=tr.getStore(),r=Ie(e.episode,!0),o=Ie(n?.episode,!1),i=r!==void 0&&r.parent_id===void 0&&o!==void 0?{...r,parent_id:o.id}:r,s={...ze(n?.provenance),...ze(e.provenance)};return tr.run({...Object.keys(s).length===0?{}:{provenance:s},...i===void 0?o===void 0?{}:{episode:o}:{episode:i}},t)}function __(e){let t=ze(e.provenance),n=Ie(e.episode,!0);return{...n===void 0?{}:{PM_AGENT_EPISODE_ID:n.id,...n.label===void 0?{}:{PM_AGENT_EPISODE_LABEL:n.label},...n.parent_id===void 0?{}:{PM_AGENT_EPISODE_PARENT_ID:n.parent_id}},...t.role===void 0?{}:{PM_AGENT_SESSION_ROLE:t.role},...t.topic===void 0?{}:{PM_AGENT_SESSION_TOPIC:t.topic}}}import{AsyncLocalStorage as pr}from"node:async_hooks";import{createHash as xa}from"node:crypto";import Z from"node:fs";import Zo from"node:os";import qt from"node:path";import{createHash as qo}from"node:crypto";import{existsSync as rr,promises as Xo,readFileSync as va}from"node:fs";import Q 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]="424b9eb3-6b34-5ab0-a3f5-db61fbca12cf")}catch{}})();var ka="session.json";function or(e,t){return typeof e=="string"&&e.length>0&&e.length<=t}function Ko(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=e,n=["implementer","planner","release-operator"].includes(String(t.role)),r=["high","medium"].includes(String(t.confidence)),o=or(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=>or(c,128)),a=t.focused_item_id===void 0||or(t.focused_item_id,128);if([n,r,o,i,s,a,t.rule_version==="v2"].every(Boolean))return t}function Ia(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).slice(0,128).flatMap(([n,r])=>{let o=Ko(r);return o&&n.length<=128?[[n,o]]:[]});return t.length>0?Object.fromEntries(t):void 0}function ir(e){return Q.join(Co(e),ka)}async function Wt(e){try{let t=await Xo.readFile(ir(e),"utf8"),n=JSON.parse(t);if(n===null||typeof n!="object"||Array.isArray(n))return{};let r=n,o=r.focused_item,i=Ia(r.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 sr(e,t){let n=ir(e);await Xo.mkdir(Q.dirname(n),{recursive:!0}),await W(n,JSON.stringify(t))}function ar(e){return/#([a-f0-9]{24})$/u.exec(e.trim())?.[1]??`author-${qo("sha256").update(e).digest("hex").slice(0,24)}`}function cr(e){return[...new Set(e.map(t=>t.trim()).filter(Boolean))].slice(0,32).map(t=>t.slice(0,128))}function dr(e){let t=[...new Set(e)].sort((o,i)=>o.localeCompare(i));if(t.length===1)return t[0];let n=`workset:${t.join("+")}`;return n.length<=256?n:`workset:${t.join("+").slice(0,230)}+${qo("sha256").update(t.join("\0")).digest("hex").slice(0,12)}`}async function lr(e,t,n){let r=await Wt(e),o={...r.semantic_attribution},i=n(o[t]);i===void 0?delete o[t]:o[t]=i;let s={...r};Object.keys(o).length===0?delete s.semantic_attribution:s.semantic_attribution=o,await sr(e,s)}async function w_(e){let t=ar(e.principal);await lr(e.pmRoot,t,n=>{let r=[...new Set([...n?.active_item_ids??[],e.itemId])].slice(-64).sort((i,s)=>i.localeCompare(s)),o=n?.focused_item_id;return{role:"implementer",topic:o??dr(r),confidence:o?"high":"medium",rule_version:"v2",evidence:cr([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}async function E_(e){let t=ar(e.principal);await lr(e.pmRoot,t,n=>{if(!n)return;let r=n.active_item_ids.filter(i=>i!==e.itemId);if(r.length===0&&!n.focused_item_id)return;let o=n.focused_item_id;return{...n,role:"release-operator",topic:o??dr(r),confidence:o?"high":"medium",evidence:cr([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],`release:${e.itemId}`]),active_item_ids:r}})}async function v_(e){let t=ar(e.principal);await lr(e.pmRoot,t,n=>{let r=n?.active_item_ids??[];if(!e.itemId&&r.length===0)return;let o=e.itemId;return{role:o?"planner":n.role,topic:o??dr(r),confidence:o?"high":"medium",rule_version:"v2",evidence:cr([...r.map(i=>`claim:${i}`),...o?[`focus:${o}`]:[],...(e.lineageIds??[]).map(i=>`lineage:${i}`)]),active_item_ids:r,...o?{focused_item_id:o}:{}}})}function Sa(e,t){let n=t.PM_PATH?.trim();if(n){let o=Q.resolve(e,n);if(rr(Q.join(o,"settings.json")))return o;let i=Q.join(o,".agents","pm");if(rr(Q.join(i,"settings.json")))return i}let r=Q.resolve(e);for(let o=0;o<32;o+=1){let i=Q.join(r,".agents","pm");if(rr(Q.join(i,"settings.json")))return i;let s=Q.dirname(r);if(s===r)break;r=s}}function Go(e){if(!e.key)return;let t=Sa(e.cwd,e.env);if(t)try{let n=JSON.parse(va(ir(t),"utf8"));return Ko(n.semantic_attribution?.[e.key])}catch{return}}async function k_(e){return(await Wt(e)).focused_item}async function I_(e,t){let n=await Wt(e);await sr(e,{...n,focused_item:t})}async function S_(e){let n={...await Wt(e)};delete n.focused_item,await sr(e,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]="cf550961-0040-5e04-9d8d-16e316027e43")}catch{}})();var yr=["model","effort","role","topic","version"],Kt=new pr,ei=new pr,Gt=new pr,hr=[{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:[]}],ti=Object.freeze({max_bytes:1048576,max_lines:4096,network_access:!1,subprocess_access:!1}),Ta=Object.freeze({...ti,max_bytes:4194304}),ur=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function Oa(e){let t=_e(e).provenance_unavailable_dimensions,n=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([...n].sort()),native_sources:Object.freeze(["environment","argv","mcp_client",...Object.values(e.provenance_resolvers??{}).some(r=>r?.endsWith("session_file"))?["session_file"]:[]]),probe_policy:e.harness==="codex"?Ta:ti,normalization:Object.freeze({model_family:"v1",effort:"v1",preserve_raw:!0}),confidence:"high",waivers:Object.freeze(Object.fromEntries(t.map(r=>[r,"Harness does not expose this dimension."])))})}var ni=Object.freeze(hr.filter(e=>e.harness!=="ci").map(Oa).sort((e,t)=>e.harness.localeCompare(t.harness))),xe=new Map,$e=new Map;function R(e){let t=typeof e=="string"?e.trim():void 0;return t&&t.length>0?t:void 0}function fe(e){return[...new Set((e??[]).slice(0,64).map(t=>t.trim()).filter(t=>t.length>0).map(t=>t.slice(0,128)))]}function _e(e){let t=e.harness.trim().toLowerCase();if(!ur.test(t))throw new Error(`Invalid harness signal descriptor namespace: ${e.harness}`);return{harness:t,environment_keys:fe(e.environment_keys),model_environment_keys:fe(e.model_environment_keys),session_environment_keys:fe(e.session_environment_keys),provenance_environment_keys:Object.fromEntries(Object.entries(e.provenance_environment_keys??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),fe(r)]).filter(([n])=>ur.test(n))),provenance_resolvers:Object.fromEntries(Object.entries(e.provenance_resolvers??{}).slice(0,32).map(([n,r])=>[n.trim().toLowerCase().slice(0,64),r]).filter(n=>typeof n[0]=="string"&&ur.test(n[0])&&(n[1]==="ai_agent_version"||n[1]==="claude_session_file"||n[1]==="codex_session_file"))),provenance_unavailable_dimensions:fe(e.provenance_unavailable_dimensions).map(n=>n.toLowerCase()),argv_markers:fe(e.argv_markers).map(n=>n.toLowerCase()),client_names:fe(e.client_names).map(n=>n.toLowerCase())}}var ri=hr.map(_e);function Ca(e,t){return JSON.stringify(e)===JSON.stringify(t)}function Xt(e,t){return e.toLowerCase().slice(0,512).split(/[/\\\s:=]+/u).filter(r=>r.length>0).includes(t)||e.trim().toLowerCase()===t}function gr(e=[]){let t=new Map(hr.filter(o=>o.harness!=="ci").map(o=>[o.harness,_e(o)]));for(let{adapter:o}of xe.values())t.set(o.harness,_e(o.descriptor));let n=[...t.values(),...ri.filter(o=>o.harness==="ci"),...[...$e.values()].map(o=>o.descriptor),...Gt.getStore()?.descriptors??[],...e.map(_e)],r=new Set;for(let o of n){if(r.has(o.harness))throw new Error(`Harness signal descriptor collision for "${o.harness}"`);r.add(o.harness)}return n}function br(e,t){for(let n of t??[]){let r=R(e[n]);if(r)return r.slice(0,256)}}function Aa(e,t){if(t==="role"){let n=e.slice(0,8).map(r=>r.trim().toLowerCase()).find(r=>["claim","create","update","close","release","review"].includes(r));if(n==="review")return"reviewer";if(n)return"implementer"}}function oi(e,t){let n=t==="model"?["--model","--agent-model"]:[`--agent-${t}`],r=e.slice(0,8);for(let o=0;o<r.length;o+=1){let i=r[o].slice(0,512);if(n.includes(i))return R(r[o+1])?.slice(0,256);let s=n.find(a=>i.startsWith(`${a}=`));if(s)return R(i.slice(s.length+1))?.slice(0,256)}}var Na=new Set(["implementation","implementer","investigator","orchestrator","planner","release-operator","reviewer"]);function Se(e,t){if(e!=="role"||t===void 0)return t;let n=t.trim().toLowerCase().replaceAll(/[_\s]+/gu,"-");return Na.has(n)?n:void 0}function fr(e,t){return R(e?.[t])?.slice(0,256)}var Ra=1048576,mr=4194304,Bt=new Map,Yo=Object.freeze({}),_r=new Map,Jo=Object.freeze({});function Qo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function Da(e){let t;try{t=JSON.parse(e)}catch{return Jo}let n=Qo(t);if(!n)return Jo;let r=[{value:n,depth:0}],o=0,i,s;for(;r.length>0&&o<64;){let a=r.shift();if(o+=1,i??=R(a.value.model)?.slice(0,256),s??=R(a.value.version)?.slice(0,256),i&&s)break;if(!(a.depth>=4))for(let c of Object.values(a.value)){let d=Qo(c);d&&r.push({value:d,depth:a.depth+1})}}return Object.freeze({model:i,version:s})}function ja(e,t,n){let r=R(n.CLAUDE_CODE_SESSION_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let i=qt.resolve(t.cwd??process.cwd()).replaceAll(/[^A-Za-z0-9-]/gu,"-"),s=qt.join(t.home_dir??Zo.homedir(),".claude","projects",i,`${r}.jsonl`);try{let a=Z.openSync(s,"r");try{let c=Z.fstatSync(a),d=`${s}\0${c.size}\0${c.mtimeMs}`,u=_r.get(d);if(u)return u[e];let f=Math.min(c.size,Ra),p=Math.min(f,Math.ceil(f/2)),y=Math.min(f-p,c.size-p),_=Buffer.alloc(p);Z.readSync(a,_,0,p,0);let v=Buffer.alloc(y);y>0&&Z.readSync(a,v,0,y,c.size-y);let b={},C=c.size<=f?Buffer.concat([_,v]).toString("utf8").split(`
2
+ `):[..._.toString("utf8").split(`
3
+ `).slice(0,4096),...v.toString("utf8").split(`
4
+ `).slice(-4096)];for(let j of C){if(j.length===0||j.length>262144)continue;let L=Da(j);if(b.model??=L.model,b.version??=L.version,b.model&&b.version)break}let N=Object.freeze(b);return _r.clear(),_r.set(d,N),N[e]}finally{Z.closeSync(a)}}catch{return}}function Pa(e,t){let n=0,r=(o,i)=>{if(i>4||n>=512)return;let s;try{s=Z.readdirSync(o,{withFileTypes:!0}).sort((a,c)=>c.name.localeCompare(a.name))}catch{return}for(let a of s){if(n+=1,n>512)return;let c=qt.join(o,a.name);if(a.isFile()&&a.name.endsWith(`-${t}.jsonl`))return c;if(a.isDirectory()){let d=r(c,i+1);if(d)return d}}};return r(e,0)}function La(e){if(e<=mr)return[{offset:0,length:e}];let t=Math.floor(mr/2);return[{offset:e-t,length:t},{offset:0,length:t}]}function Ma(e,t){if(t.length===0||t.length>262144)return;let n;try{n=JSON.parse(t)}catch{return}if(typeof n!="object"||n===null||Array.isArray(n))return;let r=n;if(r.type!=="turn_context")return;let o=typeof r.payload=="object"&&r.payload!==null?r.payload:void 0;e.model??=R(o?.model)?.slice(0,256),e.effort??=R(o?.effort)?.slice(0,256)}function Fa(e,t){let n={},r=4096;for(let o of La(t)){let i=Buffer.alloc(o.length);Z.readSync(e,i,0,o.length,o.offset);let s=i.toString("utf8").split(`
5
+ `).reverse().slice(0,r);r-=s.length;for(let a of s)if(Ma(n,a),n.model&&n.effort)break;if(n.model&&n.effort||r<=0)break}return n}function za(e,t,n){let r=R(n.CODEX_THREAD_ID);if(!r||!/^[A-Za-z0-9_-]{1,128}$/u.test(r))return;let o=qt.join(t.home_dir??Zo.homedir(),".codex","sessions"),i=`${o}\0${r}`,s=Bt.get(i);if(s)return s[e];let a=Pa(o,r);if(!a){Bt.set(i,Yo);return}try{let c=Z.openSync(a,"r");try{let d=Z.fstatSync(c).size,u=Fa(c,d);return Bt.set(i,u),u[e]}finally{Z.closeSync(c)}}catch{Bt.set(i,Yo);return}}function $a(e,t,n,r){let o=Gt.getStore();if(!(t.probes_enabled!==!1&&o?.probesEnabled!==!1&&!["0","false","off"].includes(R(n.PM_AGENT_PROBES)?.toLowerCase()??"")))return;let s=r?.provenance_resolvers[e];if(s==="claude_session_file")return ja(e,t,n);if(s==="codex_session_file")return za(e,t,n);if(s==="ai_agent_version"){let a=R(n.AI_AGENT);return!a||!r||!Xt(a,r.harness)?void 0:/(?:^|[@/\s])v?(\d+\.\d+(?:\.\d+)?(?:[-+][A-Za-z0-9.-]+)?)$/u.exec(a)?.[1]?.slice(0,256)}}function Ha(e,t,n){if(e==="ai_agent_version"){let r=R(n.AI_AGENT);return r!==void 0&&Xt(r,t.harness)}return e==="codex_session_file"?R(n.CODEX_THREAD_ID)!==void 0:R(n.CLAUDE_CODE_SESSION_ID)!==void 0}function wr(e){return e||(ei.getStore()??{env:process.env,argv:process.argv})}function Ua(e,t,n,r){let o=e.environment_keys.some(a=>R(t[a])!==void 0),i=e.argv_markers.some(a=>n.some(c=>{let d=c.replaceAll("\\","/");return Xt(d.slice(d.lastIndexOf("/")+1),a)})),s=e.client_names.some(a=>r===a||Xt(r,a));return o||i||s}function Va(e,t){if(!t)return;let n;if(e==="topic"&&(n=t.topic),e==="role"&&(n=t.role),!!n)return{value:n,source:"inferred",confidence:t.confidence,rule_version:t.rule_version,evidence:t.evidence}}function Wa(e){let t=e.find(([n])=>n!==void 0);return t?.[0]?{value:t[0],source:t[1]}:void 0}function Ba(e,t,n,r,o,i){let s=`PM_AGENT_${e.toUpperCase().replaceAll("-","_")}`,a=new Set([...yr,...Object.keys(r?.provenance_environment_keys??{})]),c,d,u;a.has(e)&&(c=Se(e,R(n[s])?.slice(0,256)),u=Se(e,oi(t.argv??[],e)),d=Se(e,Aa(t.argv??[],e)));let f={...r?.provenance_environment_keys,model:r?.model_environment_keys},p={...t.client_info?.provenance,model:t.client_info?.model},y=fr(o?.provenance,e),_=Se(e,br(n,f[e])),v=Se(e,fr(p,e)),b=Se(e,fr(t.provenance,e)),C=$a(e,t,n,r);return Wa([[c,"override"],[y,"session"],[u,"argv"],[_,"environment"],[v,"mcp_client"],[b,"host"],[C,"probe"]])??Va(e,i)??(d?{value:d,source:"argv"}:void 0)}function qa(e,t){if(!(!e||!t))return xa("sha256").update(`pm-agent-instance:v1\0${e}\0${t}`).digest("hex").slice(0,24)}function Xa(e,t,n,r,o){let i=Object.keys(n?.provenance_environment_keys??{}),s=new Set([...yr,...i,...Object.keys(n?.provenance_resolvers??{}),...Object.keys(e.provenance??{}),...Object.keys(e.client_info?.provenance??{}),...Object.keys(r?.provenance??{})]),a={};for(let c of s){let d=Ba(c,e,t,n,r,o);d?a[c]=d:n&&(c!=="version"||n.provenance_unavailable_dimensions.includes(c))&&(a[c]=null)}return a}function j_(e){let t=e.map(_e),n=new Map(ri.map(i=>[i.harness,i])),r=new Set;for(let i of t){if(r.has(i.harness)||n.has(i.harness))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);let s=$e.get(i.harness);if(s&&!Ca(s.descriptor,i))throw new Error(`Harness signal descriptor collision for "${i.harness}"`);r.add(i.harness)}for(let i of t){let s=$e.get(i.harness);$e.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=$e.get(i.harness);!s||s.registrations<=1?$e.delete(i.harness):s.registrations-=1}}}}function Ka(e){let t=_e(e.descriptor),n=e.harness.trim().toLowerCase();if(e.contract_version!==1)throw new Error(`Unsupported provenance adapter contract for "${n}": ${e.contract_version}`);if(t.harness!==n)throw new Error(`Provenance adapter harness "${n}" does not match descriptor "${t.harness}".`);let r=R(e.adapter_version)?.slice(0,64);if(!r)throw new Error(`Provenance adapter "${n}" requires a version.`);if(!Number.isSafeInteger(e.priority))throw new Error(`Provenance adapter "${n}" requires an integer priority.`);if(e.probe_policy.network_access!==!1||e.probe_policy.subprocess_access!==!1||e.probe_policy.max_bytes>mr||e.probe_policy.max_lines>4096)throw new Error(`Provenance adapter "${n}" exceeds the bounded local probe policy.`);return Object.freeze({...e,adapter_version:r,harness:n,descriptor:t,supported_dimensions:Object.freeze(fe(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 P_(){let e=new Map(ni.map(t=>[t.harness,t]));for(let{adapter:t}of xe.values())e.set(t.harness,t);return Object.freeze([...e.values()].sort((t,n)=>t.harness.localeCompare(n.harness)))}function L_(e){let t=e.map(Ka),n=new Map(ni.map(i=>[i.harness,i])),r=new Set;for(let i of t){if(r.has(i.harness))throw new Error(`Provenance adapter collision for "${i.harness}".`);let s=n.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=xe.get(i.harness);if(a&&JSON.stringify(a.adapter)!==JSON.stringify(i))throw new Error(`Provenance adapter collision for "${i.harness}".`);r.add(i.harness)}for(let i of t){let s=xe.get(i.harness);xe.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=xe.get(i.harness);!s||s.registrations<=1?xe.delete(i.harness):s.registrations-=1}}}}function M_(e,t){let n=t.trim().slice(0,256),r=n.toLowerCase();if(e==="model"){let o=/^(gpt-\d+(?:\.\d+)?)/u.exec(r)?.[1];o&&(r=o)}else r=r.replaceAll(/[_\s-]+/gu,""),r={minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"xhigh",max:"max",ultra:"ultra"}[r]??r;return{raw:n,normalized:r,vocabulary:"v1"}}function F_(e,t){return ei.run(e,t)}function z_(e,t,n={}){let r=e.map(_e);return gr(r),Gt.run({descriptors:r,probesEnabled:n.probesEnabled!==!1},t)}function Er(e){let t=wr(e),n=t.env??{},r=gr(t.descriptors),o=[...(t.argv??[]).slice(0,3),...t.process_labels??[]].slice(0,64).map(_=>_.slice(0,512)),i=t.client_info?.name.trim().toLowerCase()??"",s=r.find(_=>Ua(_,n,o,i)),a=nr(t,n),c=[br(n,s?.session_environment_keys),R(t.client_info?.session)?.slice(0,256)].find(_=>_!==void 0),d=qa(s?.harness,c),u=Go({cwd:t.cwd??process.cwd(),env:n,key:d}),f=Xa(t,n,s,a,u),p=f.model,y=[["harness",s?.harness],["model",p?.value],["model_source",p?.source],["session",c],["instance",d],["provenance",Object.keys(f).length>0?f:void 0],["episode",a.episode]];return Object.fromEntries(y.filter(_=>_[1]!==void 0))}function Ga(e,t,n,r,o,i){let s=n?.provenance_resolvers[e];if(t.provenance?.[e])return{status:"resolved",...s?{resolver:s}:{},rule_version:"v1"};if(i)return{status:"unavailable",reason:"invalid_value",rule_version:"v1"};if(s){let a=Ha(s,n,r);return{status:a&&o?"failed":"unavailable",reason:a?o?"resolver_failed":"probes_disabled":"harness_unavailable",resolver:s,rule_version:"v1"}}return{status:n?.provenance_unavailable_dimensions.includes(e)?"unavailable":"not_configured",reason:n?.provenance_unavailable_dimensions.includes(e)?"harness_unavailable":"resolver_not_configured",rule_version:"v1"}}function ii(e){let t=wr(e),n=Er(t),r=gr(t.descriptors).find(d=>d.harness===n.harness),o=t.env??{},i=t.probes_enabled!==!1&&Gt.getStore()?.probesEnabled!==!1&&!["0","false","off"].includes(R(o.PM_AGENT_PROBES)?.toLowerCase()??""),s=nr(t,o),a=[o.PM_AGENT_ROLE,s.provenance?.role,br(o,r?.provenance_environment_keys.role),t.client_info?.provenance?.role,t.provenance?.role,oi(t.argv??[],"role")].some(d=>{let u=R(d)?.slice(0,256);return u!==void 0&&Se("role",u)===void 0}),c=Object.fromEntries(yr.map(d=>[d,Ga(d,n,r,o,i,d==="role"&&a)]));return{...n,provenance_outcomes:c}}function $_(){return process.env.PM_AUTHOR}function H_(e){e===void 0?delete process.env.PM_AUTHOR:process.env.PM_AUTHOR=e}function U_(e){return Er(e).harness}function Ya(e,t,n){let r=wr(n),o=Er(r);if(e!==void 0){let s=R(e);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}if(r.env?.PM_AUTHOR!==void 0){let s=R(r.env.PM_AUTHOR);return s?{author:s,source:"asserted",...o}:{author:"unknown",source:"unknown",...o}}let i=R(t);return i?{author:i,source:"configured",...o}:o.harness?{author:`harness:${o.harness}`,source:"detected",...o}:{author:"unknown",source:"unknown",...o}}function si(e){let t=Kt.getStore();return t?.author===e?t.source:e.startsWith("harness:")?"detected":e==="unknown"?"unknown":"asserted"}function ai(e){let t=Kt.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 ci(e){let t=Kt.getStore();return t?.author===e&&t.source==="detected"&&t.instance?`${e}#${t.instance}`:e}function di(e,t){let n=Ya(e,t);return Kt.enterWith(n),n.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]="77d3ebfa-789a-54cf-9d49-dbebab8d32ea")}catch{}})();var He=1,li=1;function W_(e){let t=e.pm_format_version;return typeof t=="number"&&Number.isInteger(t)&&t>=He?t:He}function ui(e){if(!(typeof e!="number"||!Number.isInteger(e)||e<=He))return e}function Ja(e,t=li){return e<t?"outdated":e>t?"ahead":"current"}function B_(e,t=li){let n=[],r=[];for(let o of e){let i=Ja(o.version,t);i==="outdated"?n.push(o.ref):i==="ahead"&&r.push(o.ref)}return{outdated:n.sort((o,i)=>o.localeCompare(i)),ahead:r.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]="d7501aa2-d3d9-5fbe-a1c0-d4bc145f5563")}catch{}})();var Qa={"in-progress":"in_progress",cancelled:"canceled"};function Yt(e,t){if(t){let o=Mo(e,t);if(o)return o}if(typeof e!="string")return;let n=e.trim().toLowerCase();if(!n)return;let r=Qa[n]??n;if(Pt.includes(r))return r}function Za(e,t){return Yt(e,t)??e}function G_(e,t){return t.terminal_statuses.has(Za(e,t))}import{encode as uc}from"@toon-format/toon";import{isDeepStrictEqual as yi}from"node:util";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="91a3969e-59b3-506e-9349-ca08e73a1228")}catch{}})();var ec=16;function vr(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[n,...r]=t;return`${n}${r.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function tc(e){return[...new Set([zo(e),vr(e.key),vr(e.cli_flag),...e.cli_aliases.map(t=>vr(t))])]}function mi(e,t){for(let n of tc(t)){if(!Object.hasOwn(e,n))continue;let r=e[n];if(r!==void 0)return r}}function pi(e){return Array.isArray(e)?e.flatMap(t=>pi(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 fi(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 n=e.trim().toLowerCase();if(n==="true"||n==="1"||n==="yes")return!0;if(n==="false"||n==="0"||n==="no")return!1}throw new x(`${t} must be one of true|false|1|0|yes|no`,S.USAGE)}function _i(e,t){if(typeof e=="number"&&Number.isFinite(e))return e;let n=typeof e=="string"?e.trim():String(e),r=Number(n);if(!Number.isFinite(r))throw new x(`${t} must be a number`,S.USAGE);return r}function nc(e,t,n){let r=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return}})():e;if(n==="array"&&Array.isArray(r)||n==="object"&&typeof r=="object"&&r!==null&&!Array.isArray(r))return r;throw new x(`${t} must be valid JSON ${n}`,S.USAGE)}function rc(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 oc(e,t,n){if(t.const!==void 0&&M(e)!==M(t.const))return`${n} must equal ${M(t.const)}`;if(t.enum!==void 0&&!t.enum.some(r=>M(r)===M(e)))return`${n} must be one of ${t.enum.map(r=>M(r)).join("|")}`;if(!rc(e,t.type))return`${n} must match configured type ${String(t.type)}`;if(typeof e=="string"){if(t.min_length!==void 0&&e.length<t.min_length)return`${n} must contain at least ${t.min_length} characters`;if(t.format==="date-time"&&!Uo(e))return`${n} must be an RFC 3339 date-time`}}function ic(e,t,n,r){if(Array.isArray(e)){if(t.min_items!==void 0&&e.length<t.min_items)return`${n} must contain at least ${t.min_items} items`;if(t.items)for(let[o,i]of e.entries()){let s=Jt(i,t.items,`${n}[${o}]`,r+1);if(s)return s}}}function sc(e,t,n,r){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`${n}.${i} is required`;for(let[i,s]of Object.entries(o)){let a=t.properties?.[i];if(!a){if(t.additional_properties===!1)return`${n}.${i} is not allowed`;continue}let c=Jt(s,a,`${n}.${i}`,r+1);if(c)return c}}function Jt(e,t,n,r=0){if(r>ec)return`${n} value schema exceeds maximum depth`;let o=oc(e,t,n);if(o)return o;let i=ic(e,t,n,r);if(i)return i;let s=sc(e,t,n,r);if(s)return s;if(!t.one_of)return;let a=0;for(let c of t.one_of)if(Jt(e,c,n,r+1)===void 0&&(a+=1,a>1))break;return a===1?void 0:`${n} must match exactly one configured schema variant`}function Te(e,t,n){if(!e.value_schema||t===void 0)return t;let r=Jt(t,e.value_schema,n);if(r)throw new x(r,S.USAGE);return t}function _t(e,t,n){let r=n??`--${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:Te(e,nc(i,r,e.type),r)}if(e.repeatable||e.type==="string_array"){let i=pi(t);return e.type==="number"?Te(e,i.map(s=>_i(s,r)),r):e.type==="boolean"?Te(e,i.map(s=>fi(s,r)),r):Te(e,i,r)}let o=Array.isArray(t)?t[t.length-1]:t;if(o!==void 0)return e.type==="number"?Te(e,_i(o,r),r):e.type==="boolean"?Te(e,fi(o,r),r):Te(e,typeof o=="string"?o:String(o),r)}function ac(e,t){return!e.required&&!e.required_on_create?!1:e.required_types.length===0?!0:t?e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function nm(e,t,n){let r={},o=[];for(let i of t.command_to_fields.get("create")??[]){let s=mi(e,i);if(s===void 0){ac(i,n)&&o.push(`--${i.cli_flag}`);continue}r[i.metadata_key]=_t(i,s)}return{values:r,missing_required_flags:[...new Set(o)].sort((i,s)=>i.localeCompare(s))}}function rm(e,t,n=["update"]){let r={},o=(n??["update"]).flatMap(s=>t.command_to_fields.get(s)??[]),i=new Set;for(let s of o){let a=mi(e,s);a!==void 0&&(i.has(s.metadata_key)||(i.add(s.metadata_key),r[s.metadata_key]=_t(s,a)))}return r}import{decode as cc}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]="2840e12e-7444-5d36-9f54-5a56267bbb75")}catch{}})();function kr(e){return{value:cc(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]="fedb7b50-6946-589d-b240-9f074e09e467")}catch{}})();var dc=/^\s*(<<<<<<<|=======|>>>>>>>)(?:\s.*)?$/;function lc(e){if(e.length===0)return[];let t=e.split(/\r?\n/),n=[];for(let r=0;r<t.length;r+=1){let o=t[r]??"",i=o.match(dc);if(!i)continue;let s=i[1];n.push({line:r+1,marker:s,text:o})}return n}function Qt(e){return lc(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]="051655a4-8ba7-5118-9758-d9ca377fa7e4")}catch{}})();var Tr=new Set(["schema","tracker","auto"]),bi=new Set(["source","isolated","snapshot"]),fc=new Set(["legacy","local_mutation","local_source_ref","acknowledged","invalid_provenance","foreign_source_ref"]),_c=new Set(["passed","failed","stopped","canceled"]),mc=new Set(Io);function We(e){return e.replaceAll("\\","/")}function wi(e){for(let t of e)if(t!==0)return t;return 0}function en(e){for(let[t,n]of Object.entries(e))n===void 0&&delete e[t]}var Ei=["id","title","description","created_at","updated_at"],pc=new Set(se);function vi(e){if(e?.schema)return{statusRegistry:Lo(e.schema),fieldRegistry:Fo(e.schema),unknownFieldPolicy:e.schema.unknown_field_policy??"allow",extensionFieldNames:new Set(e.extensionFieldNames??[]),onWarning:e.onWarning}}function yc(e,t){return e.required?e.required_types.length===0?!0:e.required_types.map(n=>n.toLowerCase()).includes(t.trim().toLowerCase()):!1}function me(e){let t=e.match(/^([a-z_][\w.]*)\s/u)?.[1];throw new x(`Invalid item metadata: ${e}`,S.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 yt(e,t){throw new x(t,S.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 ki(e){let t=new Set(pc);for(let n of e.fieldRegistry?.definitions??[])t.add(n.metadata_key);for(let n of e.extensionFieldNames)t.add(n);return t}function E(e,t){e||me(t)}function ht(e,t){return(typeof e!="object"||e===null||Array.isArray(e))&&me(t),e}function Ir(e,t){let n=e[t];E(typeof n=="string",`${t} must be a string`),E(ne(n),`${t} must be a valid ISO timestamp`)}function hi(e,t,n){let r=e[t];r!==void 0&&E(typeof r=="number"&&Number.isInteger(r)&&r>=1,`${n} must be an integer >= 1`)}function Or(e,t,n){let r=e[t];r!==void 0&&(E(typeof r=="string",`${n} must be a string`),E(ne(r),`${n} must be a valid ISO timestamp`))}function hc(e){if(e!==void 0){E(Array.isArray(e),"event.recurrence.by_weekday must be an array");for(let t of e){E(typeof t=="string","event.recurrence.by_weekday entries must be strings");let n=t.trim().toLowerCase();E(zt.includes(n),`event.recurrence.by_weekday entries must be one of: ${zt.join(", ")}`)}}}function gc(e){if(e!==void 0){E(Array.isArray(e),"event.recurrence.by_month_day must be an array");for(let t of e)E(typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=31,"event.recurrence.by_month_day entries must be integers 1..31")}}function bc(e){if(e!==void 0){E(Array.isArray(e),"event.recurrence.exdates must be an array");for(let t of e)E(typeof t=="string","event.recurrence.exdates entries must be strings"),E(ne(t),"event.recurrence.exdates entries must be valid ISO timestamps")}}function wc(e){let t=ht(e,"event.recurrence must be an object");E(typeof t.freq=="string","event.recurrence.freq must be a string");let n=t.freq.trim().toLowerCase();E(Ft.includes(n),`event.recurrence.freq must be one of: ${Ft.join(", ")}`),hi(t,"interval","event.recurrence.interval"),hi(t,"count","event.recurrence.count"),Or(t,"until","event.recurrence.until"),hc(t.by_weekday),gc(t.by_month_day),bc(t.exdates)}function Ec(e){for(let r of Ei)E(typeof e[r]=="string",`${r} is required and must be a string`);let t=e.type;E(typeof t=="string"&&t.trim().length>0,"type must be a non-empty string");let n=e.pm_format_version;return n!==void 0&&E(typeof n=="number"&&Number.isInteger(n)&&n>=He,`pm_format_version must be an integer >= ${He}`),t}function vc(e,t){let n=e.status;E(typeof n=="string"&&n.trim().length>0,"status must be a non-empty string");let r=t?.statusRegistry,o=Yt(n,r),i=r?r.definitions.map(s=>s.id):[...Pt];E(o!==void 0,`status must be one of: ${i.join(", ")}`)}function kc(e){let t=e.priority;E(typeof t=="number"&&Number.isInteger(t)&&[0,1,2,3,4].includes(t),"priority must be an integer 0..4");let n=e.tags;E(Array.isArray(n),"tags must be an array");for(let r of n)E(typeof r=="string","tags entries must be strings")}function Ic(e){let t=e.confidence;if(t!==void 0){if(typeof t=="number"){E(Number.isInteger(t)&&t>=0&&t<=100,"confidence number value must be an integer 0..100");return}if(typeof t=="string"){let n=t.trim().toLowerCase(),r=n==="med"||Mt.includes(n);E(r,`confidence string value must be one of: ${[...Mt,"med"].join(", ")}`);return}E(!1,"confidence must be a number or string")}}function Sc(e){let t=e.severity;if(t===void 0)return;typeof t!="string"&&me("severity must be a string");let n=t.trim().toLowerCase(),r=n==="med"||Lt.includes(n);E(r,`severity value must be one of: ${[...Lt,"med"].join(", ")}`)}function xc(e){e.regression!==void 0&&typeof e.regression!="boolean"&&me("regression must be a boolean")}function Tc(e){let t=e.reminders;if(t!==void 0){E(Array.isArray(t),"reminders must be an array");for(let n of t){let r=ht(n,"reminders entries must be objects");E(typeof r.at=="string","reminder.at must be a string"),E(ne(r.at),"reminder.at must be a valid ISO timestamp"),E(typeof r.text=="string","reminder.text must be a string"),E(r.text.trim().length>0,"reminder.text must not be empty")}}}function Oc(e){for(let t of["title","description","location","timezone"])e[t]!==void 0&&(E(typeof e[t]=="string",`event.${t} must be a string`),E(e[t].trim().length>0,`event.${t} must not be empty`))}function Cc(e){e.recurrence!==void 0&&(wc(e.recurrence),e.recurrence.until!==void 0&&E(re(e.recurrence.until,e.start_at)>=0,"event.recurrence.until must be at or after event.start_at"))}function Ac(e){let t=ht(e,"events entries must be objects");E(typeof t.start_at=="string","event.start_at must be a string"),E(ne(t.start_at),"event.start_at must be a valid ISO timestamp"),t.end_at!==void 0&&(E(typeof t.end_at=="string","event.end_at must be a string"),E(ne(t.end_at),"event.end_at must be a valid ISO timestamp"),E(re(t.end_at,t.start_at)>0,"event.end_at must be after event.start_at")),Oc(t),t.all_day!==void 0&&E(typeof t.all_day=="boolean","event.all_day must be a boolean"),Cc(t)}function Nc(e){let t=e.events;if(t!==void 0){E(Array.isArray(t),"events must be an array");for(let n of t)Ac(n)}}function Rc(e){for(let t of["source_type","source_owner","design","external_ref"]){let n=e[t];n!==void 0&&E(typeof n=="string",`${t} must be a string`)}}function Dc(e){let t=e.type_options;if(t===void 0)return;let n=ht(t,"type_options must be an object");for(let[r,o]of Object.entries(n))E(r.trim().length>0,"type_options keys must be non-empty"),E(typeof o=="string","type_options values must be strings"),E(o.trim().length>0,"type_options values must be non-empty strings")}function jc(e,t,n){if(n?.fieldRegistry)for(let r of n.fieldRegistry.definitions){let o=e[r.metadata_key];if(o===void 0){yc(r,t)&&me(`missing required schema field: ${r.metadata_key}`);continue}try{e[r.metadata_key]=_t(r,o,`metadata field "${r.metadata_key}"`)}catch(i){me(String(i?.message).replace(/^Invalid\s+/u,""))}}}function Pc(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=ki(t),r=Object.keys(e).filter(o=>!n.has(o)).sort((o,i)=>o.localeCompare(i));r.length!==0&&(t.unknownFieldPolicy==="reject"?me(`unknown schema fields are not allowed: ${r.join(", ")}`):t.onWarning?.(`item_unknown_schema_fields:${r.join(",")}`))}function Cr(e,t){let n=ht(e,"item metadata must be an object"),r=Ec(n);vc(n,t),kc(n),Ic(n),Sc(n),xc(n),Ir(n,"created_at"),Ir(n,"updated_at"),n.deadline!==void 0&&Ir(n,"deadline"),Tc(n),Nc(n),Or(n,"closed_at","closed_at"),Or(n,"completed_at","completed_at"),Rc(n),Dc(n),jc(n,r,t),Pc(n,t)}function Lc(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,n)=>{let r=re(t.created_at,n.created_at);if(r!==0)return r;let o=t.id.localeCompare(n.id);if(o!==0)return o;let i=t.kind.localeCompare(n.kind);return i!==0?i:(t.source_kind??"").localeCompare(n.source_kind??"")})}function Sr(e){if(!(!e||e.length===0))return[...e].sort((t,n)=>{let r=re(t.created_at,n.created_at);if(r!==0)return r;let o=t.text.localeCompare(n.text);return o!==0?o:t.author.localeCompare(n.author)})}function Mc(e){if(!e||e.length===0)return;let t=[...e].map(n=>({at:n.at,text:n.text.trim()})).filter(n=>n.text.length>0).sort((n,r)=>{let o=re(n.at,r.at);return o!==0?o:n.text.localeCompare(r.text)});return t.length===0?void 0:t}function Fc(e){if(!e)return;let t=e.freq.trim().toLowerCase();if(!Ft.includes(t))return;let n=Array.from(new Set((e.by_weekday??[]).map(s=>s.trim().toLowerCase()).filter(s=>zt.includes(s)))).sort((s,a)=>Gn(s)-Gn(a)),r=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=>ne(s)))).sort((s,a)=>re(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:n.length>0?n:void 0,by_month_day:r.length>0?r: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 zc(e){return!Array.isArray(e)||e.length===0?void 0:[...e].map($c).sort(Hc)}function $c(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:Fc(e.recurrence)};return en(t),t}function Hc(e,t){return wi([re(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 Uc(e){if(!(!e||e.length===0))return e.map(t=>({path:We(t.path),scope:t.scope,note:t.note?.trim()||void 0}))}function Vc(e){if(!e||e.length===0)return;let t=e.map(Xc).filter(n=>n.run_id.length>0&&n.started_at.length>0&&n.finished_at.length>0&&n.recorded_at.length>0).sort((n,r)=>wi([re(n.recorded_at,r.recorded_at),n.run_id.localeCompare(r.run_id),n.kind.localeCompare(r.kind)]));return t.length>0?t:void 0}function Ue(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?Math.floor(e):void 0}function Wc(e){return typeof e=="number"&&Number.isFinite(e)&&e>=1?Math.floor(e):void 0}function xr(e){return typeof e=="string"?e:""}function Bc(e){if(!Array.isArray(e))return;let t=e.filter(r=>r!==null&&typeof r=="object"&&typeof r.name=="string"&&r.name.trim().length>0&&typeof r.value=="number"&&Number.isFinite(r.value)&&typeof r.recorded_at=="string"&&r.recorded_at.trim().length>0).map(r=>({name:r.name.trim(),value:r.value,unit:typeof r.unit=="string"&&r.unit.trim()||void 0,threshold:typeof r.threshold=="number"&&Number.isFinite(r.threshold)?r.threshold:void 0,recorded_at:r.recorded_at.trim()})),n=[...new Map(t.map(r=>[r.name,r])).values()].sort((r,o)=>r.name.localeCompare(o.name)).slice(0,32);return n.length>0?n:void 0}function Zt(e,t){return typeof e=="string"&&t.has(e)?e:void 0}function qc(e){if(!Array.isArray(e))return;let t=e.filter(n=>n&&typeof n.command=="string"&&n.command.trim().length>0).slice(0,32).map(n=>({command:n.command.trim(),requested_pm_context_mode:Zt(n.requested_pm_context_mode,Tr),pm_context_mode:Zt(n.pm_context_mode,Tr),workspace_context_mode:Zt(n.workspace_context_mode,bi),trust_reason:Zt(n.trust_reason,fc)}));return t.length>0?t:void 0}function Xc(e){let t=typeof e.run_id=="string"?e.run_id.trim():"",n=e.kind==="test"||e.kind==="test-all"?e.kind:"test",r=_c.has(e.status)?e.status:"failed",o={run_id:t,kind:n,status:r,started_at:xr(e.started_at),finished_at:xr(e.finished_at),recorded_at:xr(e.recorded_at),attempt:Wc(e.attempt),resumed_from:e.resumed_from?.trim()||void 0,passed:Ue(e.passed)??0,failed:Ue(e.failed)??0,skipped:Ue(e.skipped)??0,items:Ue(e.items),linked_tests:Ue(e.linked_tests),fail_on_skipped_triggered:e.fail_on_skipped_triggered===!0?!0:void 0,measurements:Bc(e.measurements),executions:qc(e.executions)};return en(o),o}function Kc(e){if(!(!Array.isArray(e)||e.length===0))return e.map(Zc)}function mt(e){if(!Array.isArray(e))return;let t=[...new Set(e.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r));return t.length>0?t:void 0}function Nr(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function Rr(e){return e==="__proto__"||e==="constructor"||e==="prototype"}function gi(e){if(!Nr(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),String(r).trim()]).filter(([n,r])=>n.length>0&&!Rr(n)&&r.length>0).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function Gc(e){if(!Nr(e))return;let t=Object.entries(e).map(([n,r])=>[n.trim(),Number(r)]).filter(([n,r])=>n.length>0&&!Rr(n)&&Number.isFinite(r)).sort(([n],[r])=>n.localeCompare(r));return t.length>0?Object.fromEntries(t):void 0}function Yc(e){let t=e?.trim().toLowerCase();if(!(!t||!Tr.has(t)))return t}function Jc(e){let t=e?.trim().toLowerCase();if(!(!t||!bi.has(t)))return t}function Qc(e,t){if(t===!0)return{provenance_invalid:!0};if(e===void 0)return{};if(!Nr(e))return{provenance_invalid:!0};let n=g(e.author),r=g(e.created_at),o=e.source_kind;return!n||!r||!ne(r)||o!=="local_mutation"&&o!=="merge_union"?{provenance_invalid:!0}:{provenance:{author:n,created_at:r,source_kind:o,source_ref:g(e.source_ref)}}}function Zc(e){let t={command:e.command?.trim()||void 0,path:e.path?We(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:Yc(e.pm_context_mode),workspace_context_mode:Jc(e.workspace_context_mode),...Qc(e.provenance,e.provenance_invalid),env_set:gi(e.env_set),env_clear:mt(e.env_clear),shared_host_safe:e.shared_host_safe===!0?!0:void 0,assert_stdout_contains:mt(e.assert_stdout_contains),assert_stdout_regex:mt(e.assert_stdout_regex),assert_stderr_contains:mt(e.assert_stderr_contains),assert_stderr_regex:mt(e.assert_stderr_regex),assert_stdout_min_lines:Ue(e.assert_stdout_min_lines),assert_json_field_equals:gi(e.assert_json_field_equals),assert_json_field_gte:Gc(e.assert_json_field_gte),note:e.note?.trim()||void 0};return en(t),t}function ed(e){if(!(!e||e.length===0))return[...e].map(t=>({path:We(t.path),scope:t.scope,note:t.note?.trim()||void 0})).sort((t,n)=>{let r=t.scope.localeCompare(n.scope);if(r!==0)return r;let o=t.path.localeCompare(n.path);return o!==0?o:(t.note??"").localeCompare(n.note??"")})}function g(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function td(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=g(r.id),i=g(r.kind);if(!o||!i)continue;let s={id:o,kind:i},a=g(r.note);a&&(s.note=a),r.required_before_step===!0&&(s.required_before_step=!0),t.push(s)}return t.length>0?t:void 0}function nd(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=g(r.path);if(!o)continue;let i={path:We(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=g(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function rd(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=g(r.command),i=g(r.path);if(!o&&!i)continue;let s={};o&&(s.command=o),i&&(s.path=We(i));let a=g(r.note);a&&(s.note=a),t.push(s)}return t.length>0?t:void 0}function od(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=g(r.path);if(!o)continue;let i={path:We(o)};(r.scope==="project"||r.scope==="global")&&(i.scope=r.scope);let s=g(r.note);s&&(i.note=s),t.push(i)}return t.length>0?t:void 0}function id(e){if(e===null||typeof e!="object")return;let t=e,n=g(t.id),r=g(t.title),o=g(t.status),i=o&&mc.has(o)?o:void 0,s=Ao(t.order)??Number.NaN,a=typeof t.created_at=="string"?t.created_at:"",c=typeof t.updated_at=="string"?t.updated_at:"";if(!n||!r||!i||!Number.isFinite(s)||!a||!c)return;let d={id:n,order:s,title:r,status:i,created_at:a,updated_at:c};return sd(d,t),d}function sd(e,t){let n=[["body","body"],["owner","owner"],["evidence","evidence"],["blocked_reason","blocked_reason"],["superseded_by","superseded_by"]];for(let[i,s]of n){let a=g(t[s]);a&&(e[i]=a)}let r=typeof t.completed_at=="string"?t.completed_at:void 0;r&&r.length>0&&(e.completed_at=r);let o=[["linked_items","linked_items",td],["files","files",nd],["tests","tests",rd],["docs","docs",od]];for(let[i,s,a]of o){let c=a(t[s]);c&&(e[i]=c)}}function ad(e){if(!Array.isArray(e))return;let t=e.flatMap(n=>{let r=id(n);return r?[r]:[]});return t.sort((n,r)=>n.order-r.order),t.length>0?t:void 0}function cd(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=g(r.decision);if(!o||!i||!s)continue;let a={ts:o,author:i,decision:s},c=g(r.rationale);c&&(a.rationale=c);let d=g(r.evidence);d&&(a.evidence=d);let u=g(r.step_id);u&&(a.step_id=u),t.push(a)}return t.length>0?t:void 0}function dd(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=typeof r.ts=="string"?r.ts:"",i=typeof r.author=="string"?r.author:"",s=g(r.text);if(!o||!i||!s)continue;let a={ts:o,author:i,text:s},c=g(r.step_id);c&&(a.step_id=c),t.push(a)}return t.length>0?t:void 0}function ld(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(n===null||typeof n!="object")continue;let r=n,o=g(r.text);if(!o)continue;let i={text:o},s=g(r.command);s&&(i.command=s);let a=g(r.expected);a&&(i.expected=a),t.push(i)}return t.length>0?t:void 0}function ud(e){if(!e)return;let t=Object.entries(e).map(([n,r])=>[n.trim(),r.trim()]).filter(([n,r])=>n.length>0&&r.length>0).sort((n,r)=>n[0].localeCompare(r[0]));if(t.length!==0)return Object.fromEntries(t)}function Ve(e){let t=0;for(;t<e.length&&e[t]===`
6
+ `;)t+=1;return e.slice(t).trimEnd()}function fd(e){if(e===void 0)return;if(typeof e=="number")return e;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Mt.includes(t))return t}function _d(e){if(e===void 0)return;let t=e.trim().toLowerCase();if(t==="med")return"medium";if(Lt.includes(t))return t}function pt(e){return e||void 0}function md(e,t){let n=e,r=t;for(let[o,i]of Object.entries(r))Rr(o)||Object.prototype.hasOwnProperty.call(n,o)||i===void 0||(n[o]=i)}function pd(e,t){if(!t?.fieldRegistry)return;let n=e;for(let r of t.fieldRegistry.definitions){let o=n[r.metadata_key];o!==void 0&&(n[r.metadata_key]=_t(r,o,`metadata field "${r.metadata_key}"`))}}function yd(e,t){if(!t||t.unknownFieldPolicy==="allow")return;let n=ki(t),o=Object.keys(e).filter(i=>!n.has(i)).sort((i,s)=>i.localeCompare(s));o.length>0&&t.unknownFieldPolicy==="reject"&&me(`unknown schema fields are not allowed: ${o.join(", ")}`),o.length>0&&t.onWarning?.(`item_unknown_schema_fields:${o.join(",")}`)}function tn(e,t={}){let n=vi(t),r=Yt(e.status,n?.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:ui(e.pm_format_version),source_type:g(e.source_type),type_options:ud(e.type_options),status:r,priority:e.priority,tags:o,created_at:e.created_at,updated_at:e.updated_at,dependencies:Lc(e.dependencies),comments:Sr(e.comments),notes:Sr(e.notes),learnings:Sr(e.learnings),files:Uc(e.files),tests:Kc(e.tests),test_runs:Vc(e.test_runs),docs:ed(e.docs),deadline:pt(e.deadline),reminders:Mc(e.reminders),events:zc(e.events),closed_at:pt(e.closed_at),completed_at:pt(e.completed_at),assignee:g(e.assignee),claim_principal:g(e.claim_principal),source_owner:g(e.source_owner),author:pt(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:g(e.definition_of_ready),order:e.order,goal:g(e.goal),objective:g(e.objective),value:g(e.value),impact:g(e.impact),outcome:g(e.outcome),why_now:g(e.why_now),parent:g(e.parent),reviewer:g(e.reviewer),risk:e.risk??void 0,confidence:fd(e.confidence),sprint:g(e.sprint),release:g(e.release),blocked_by:g(e.blocked_by),blocked_reason:g(e.blocked_reason),unblock_note:g(e.unblock_note),reporter:g(e.reporter),severity:_d(e.severity),environment:g(e.environment),repro_steps:g(e.repro_steps),resolution:g(e.resolution),expected_result:g(e.expected_result),actual_result:g(e.actual_result),affected_version:g(e.affected_version),fixed_version:g(e.fixed_version),component:g(e.component),regression:e.regression,customer_impact:g(e.customer_impact),close_reason:pt(e.close_reason),plan_mode:g(e.plan_mode),plan_scope:g(e.plan_scope),plan_harness:g(e.plan_harness),plan_resume_context:g(e.plan_resume_context),plan_steps:ad(e.plan_steps),plan_decisions:cd(e.plan_decisions),plan_discoveries:dd(e.plan_discoveries),plan_validation:ld(e.plan_validation)};return md(i,e),pd(i,n),yd(i,n),en(i),i}function Ii(e){return k(e,se)}function hd(e){let t=0,n=!1,r=!1;for(let o=0;o<e.length;o+=1){let i=e[o];if(n){if(r){r=!1;continue}if(i==="\\"){r=!0;continue}i==='"'&&(n=!1);continue}if(i==='"'){n=!0;continue}if(i==="{"){t+=1;continue}if(i==="}"&&(t-=1,t===0))return o}return-1}function gd(e){if(!e.startsWith("{"))return{frontMatter:"",body:e};let t=hd(e);if(t<0)return{frontMatter:"",body:e};let n=e.slice(0,t+1),r=e.slice(t+1).replace(/^\r?\n+/,"");return{frontMatter:n,body:r}}function bd(e){let t=e.charCodeAt(0)===65279?e.slice(1):e,n=t.match(/^[ \t]*---[ \t]*(?:\r?\n|$)/);if(!n)return{content:t,stripped:!1};let r=n[0].length;for(;r<t.length;){let o=t.indexOf(`
7
+ `,r),i=o===-1?t.length:o,s=t.slice(r,i).replace(/\r$/,""),a=o===-1?i:i+1;if(s.trim()==="---")return{content:t.slice(a).replace(/^\s+/,""),stripped:!0};r=a}return{content:t,stripped:!1}}function Ar(e,t){return tn(e,{...t,onWarning:void 0})}function wd(e,t,n={}){let r=bd(e);r.stripped&&n.onWarning?.("json_markdown_leading_yaml_frontmatter_ignored");let{frontMatter:o,body:i}=gd(r.content);o||(e.trimStart().startsWith("{")&&yt("json_markdown","JSON front matter is not valid JSON"),yt("json_markdown","JSON Markdown item document is missing JSON front matter"));let s;try{s=JSON.parse(o)}catch{yt("json_markdown","JSON front matter is not valid JSON")}return Cr(s,t),{metadata:Ar(s,n),body:Ve(i)}}function Ed(e,t,n={}){let r;try{r=kr(e).value}catch{yt("toon","TOON item document is not valid TOON")}E(typeof r=="object"&&r!==null&&!Array.isArray(r),"TOON item document must be an object");let o=r;if(!Ei.some(a=>Object.prototype.hasOwnProperty.call(o,a))&&!Object.prototype.hasOwnProperty.call(o,"front_matter")&&yt("toon","TOON input does not have the shape of an item document"),Object.prototype.hasOwnProperty.call(o,"front_matter"))return Cr(o.front_matter,t),E(o.body===void 0||typeof o.body=="string","TOON item document body must be a string"),{metadata:Ar(o.front_matter,n),body:Ve(typeof o.body=="string"?o.body:"")};let{body:i,...s}=o;return E(i===void 0||typeof i=="string","TOON item document body must be a string"),Cr(s,t),{metadata:Ar(s,n),body:Ve(typeof i=="string"?i:"")}}function vd(e,t={}){let n=tn(e.metadata,t),r=Ii(n),o=JSON.stringify(r,null,2),i=Ve(e.body??"");return i?`${o}
8
+
9
+ ${i}
10
+ `:`${o}
11
+ `}function kd(e,t={}){let n=tn(e.metadata,t),r=Ii(n),o=Ve(e.body??""),i={...r,body:o},s=JSON.parse(JSON.stringify(i)),a=uc(s),c;try{c=kr(a).value}catch(d){throw new x("Refusing to persist a TOON item document that the configured decoder cannot read back.",S.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:d instanceof Error?d.message:String(d)})}if(!yi(c,s)){let d=typeof c=="object"&&c!==null&&!Array.isArray(c)?c:{},u=Object.keys(s).find(f=>!yi(s[f],d[f]))??"document";throw new x(`Refusing to persist a lossy TOON item document; round-trip mismatch at field "${u}".`,S.GENERIC_FAILURE,{code:"item_document_roundtrip_failed",reason:"encode_decode_mismatch",format:"toon",field:u,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}
12
+ `}function nn(e,t={}){let n=Qt(e);if(n)throw new x(`Merge conflict markers detected in item document at line ${n.line} (${n.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,S.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 r=t.format??"toon",o=vi(t);return r==="toon"?Ed(e,o,t):wd(e,o,t)}function Si(e,t={}){return(t.format??"toon")==="toon"?kd(e,t):vd(e,t)}function G(e,t={}){return{metadata:tn(e.metadata,t),body:Ve(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]="aa65b74d-ef5d-57ed-b613-3034da52a8ba")}catch{}})();async function Be(e,t){let n=await ce(e);if(n===null)return[];if(await le({path:e,scope:"project"}),n.trim()==="")return[];let r=Qt(n);if(r)throw new x(`History for ${t} contains merge conflict markers at line ${r.line} (${r.marker}). Resolve <<<<<<< ======= >>>>>>> markers and retry.`,S.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 n.split(/\r?\n/).entries()){let a=s.trim();if(a)try{o.push(JSON.parse(a))}catch{throw new x(`History for ${t} contains invalid JSON at line ${i+1}. Repair or restore the history stream and retry.`,S.GENERIC_FAILURE)}}return o}import Wr 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]="4d71277c-e16c-56f4-a834-5200acfa6d7a")}catch{}})();import Qi from"fast-json-patch";import P from"node:fs/promises";import z from"node:path";import{randomUUID as Ti}from"node:crypto";import{createRequire as Ad}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]="6398c65d-fb5c-5479-93c2-0be963352a92")}catch{}})();var Id=["docs_add","files_add","history:author-acknowledge","history_author_acknowledge","history_compact","history_compact_baseline","history_redact","history_repair","normalize","release","test_run_track","tests_add","tests_remove","update_audit","update_ownership_bypass"],Sd=["append","cancel","claim","close","comment_add","create","learning_add","note_add","reopen"],xd=new Set(Id),Td=new Set(Sd),Od=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 Cd(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 qe(e){return e.event_class==="substantive"||e.event_class==="maintenance"?e.event_class:xd.has(e.op)?"maintenance":Td.has(e.op)||e.op!=="update"?"substantive":Array.isArray(e.patch)&&e.patch.length>0&&e.patch.every(t=>{let n=Cd(t);return n!==void 0&&Od.has(n)})?"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]="72b285a7-970e-5965-bacf-a4e0cfc5f060")}catch{}})();var Nd="history-event-index.sqlite",un="5",Rd=8,Dd="history-event-index",Dr=300,Oi=3e4,jd="history-event-index-invalidation",Pd="history-event-index-invalidations",Ld=Dr*2*1e3,cn=Symbol("history-index-lock-contended"),Oe=new Map;function Xe(e){return z.join(e,"runtime",Nd)}function fn(e){return z.join(e,"runtime",Pd)}async function Md(e){let t=await P.readdir(fn(e)).catch(n=>{if(ae(n))return[];throw n});return{pending:t.filter(n=>n.endsWith(".pending")).sort(),committed:t.filter(n=>n.endsWith(".committed")).sort()}}async function dn(e){let t=await Md(e);return{pending:(await Promise.all(t.pending.map(async r=>{let o=/^(\d+)-(unknown|\d+)-(\d+)-.+\.pending$/u.exec(r);if(o!==null){let i=o[2];if(await Wo({pid:Number(o[1]),...i==="unknown"?{}:{process_start_identity:i}},Math.max(0,Date.now()-Number(o[3])),Ld))return r}return await P.rm(z.join(fn(e),r),{force:!0}),null}))).filter(r=>r!==null),committed:t.committed}}async function gt(e,t){let n=await X(e,jd,Dr,`history-event-index-invalidation:${process.pid}`,!1,!1,Oi);try{return await t()}finally{await n()}}async function Fd(e){let t=fn(e);await P.mkdir(t,{recursive:!0});let n=Ti(),r=await Vo(),o=z.join(t,`${r.pid}-${r.process_start_identity??"unknown"}-${Date.now()}-${n}.pending`);return await P.writeFile(o,`pending
13
+ `,{flag:"wx"}),{pendingPath:o,committedPath:z.join(t,`${n}.committed`)}}function zd(e,t){return e.length===t.length&&e.every((n,r)=>n===t[r])}async function rn(e){try{await P.rm(Xe(e),{force:!0})}catch{}}async function _n(e,t){let n=await X(e,Dd,Dr,`history-event-index:${process.pid}`,!1,!1,Oi);try{return await t()}finally{await n()}}async function Ci(e){let t=z.join(e,"history"),n=await P.readdir(t,{withFileTypes:!0}).catch(s=>{if(typeof s=="object"&&s!==null&&"code"in s&&s.code==="ENOENT")return[];throw s}),r=Oe.get(e)??{streams:new Map,ordered_events:[]},o=new Set,i=!Oe.has(e);for(let s of n.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=z.join(t,s.name),d=await P.stat(c,{bigint:!0}),u=[d.dev,d.ino,d.size,d.mtimeNs,d.ctimeNs].join(":");if(r.streams.get(a)?.signature===u)continue;let f=await Ai(c,a);r.streams.set(a,{signature:u,byte_size:Number(d.size),events:f.map((p,y)=>({stream_id:a,stream_offset:y,entry:p}))}),i=!0}for(let s of r.streams.keys())o.has(s)||(r.streams.delete(s),i=!0);if(i&&(r.ordered_events=[...r.streams.values()].flatMap(s=>s.events).sort(jr)),Oe.delete(e),Oe.set(e,r),Oe.size>Rd){let s=Oe.keys().next().value;Oe.delete(s)}return{events:r.ordered_events,stream_byte_sizes:new Map([...r.streams].map(([s,a])=>[s,a.byte_size]))}}async function Ai(e,t){let n=await Be(e,t);for(let[r,o]of n.entries())if(typeof o.ts!="string"||!Fe(o.ts.trim()))throw new x(`History for ${t} contains an invalid or sub-millisecond timestamp at line ${r+1}. Repair or restore the history stream and retry.`,S.GENERIC_FAILURE,{code:"history_timestamp_invalid"});return n.map(r=>({...r,ts:new Date(r.ts.trim()).toISOString()}))}async function $d(e){return(await Ci(e)).events}function Hd(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}function Ud(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?Hd(t):null}var on;function mn(){return on!==void 0||(on=Ud(process.versions.node,Ad(import.meta.url))),on}function Vd(e){e.exec(`
14
+ PRAGMA journal_mode = OFF;
15
+ PRAGMA synchronous = OFF;
16
+ CREATE TABLE metadata (
17
+ key TEXT PRIMARY KEY,
18
+ value TEXT NOT NULL
19
+ ) STRICT;
20
+ CREATE TABLE events (
21
+ stream_id TEXT NOT NULL,
22
+ stream_offset INTEGER NOT NULL,
23
+ ts TEXT NOT NULL,
24
+ author TEXT NOT NULL,
25
+ agent_harness TEXT,
26
+ agent_instance TEXT,
27
+ op TEXT NOT NULL,
28
+ event_class TEXT NOT NULL CHECK(event_class IN ('substantive', 'maintenance')),
29
+ entry_json TEXT NOT NULL,
30
+ PRIMARY KEY(stream_id, stream_offset)
31
+ ) STRICT;
32
+ CREATE TABLE streams (
33
+ stream_id TEXT PRIMARY KEY,
34
+ byte_size INTEGER NOT NULL CHECK(byte_size >= 0)
35
+ ) STRICT;
36
+ CREATE INDEX events_order
37
+ ON events(ts, stream_id, stream_offset);
38
+ CREATE INDEX events_op_order
39
+ ON events(op, ts, stream_id, stream_offset);
40
+ CREATE INDEX events_class_stream_order
41
+ ON events(event_class, stream_id, ts, stream_offset);
42
+ CREATE INDEX events_author_order
43
+ ON events(author, ts, stream_id, stream_offset);
44
+ CREATE INDEX events_harness_order
45
+ ON events(agent_harness, ts, stream_id, stream_offset);
46
+ CREATE INDEX events_instance_order
47
+ ON events(agent_instance, ts, stream_id, stream_offset);
48
+ `),e.prepare("INSERT INTO metadata(key, value) VALUES ('version', ?)").run(un)}function Ni(e,t){let n={...t.entry,ts:new Date(t.entry.ts.trim()).toISOString()};e.prepare(`INSERT INTO events(
49
+ stream_id, stream_offset, ts, author, agent_harness,
50
+ agent_instance, op, event_class, entry_json
51
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(t.stream_id,t.stream_offset,n.ts,n.author,n.agent_harness??null,n.agent_instance??null,n.op,qe(n),JSON.stringify(n))}function Ri(e){let t=JSON.parse(String(e.entry_json));return typeof t.ts!="string"||!Fe(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 Di(e,t,n){e.prepare(`INSERT INTO streams(stream_id, byte_size) VALUES (?, ?)
52
+ ON CONFLICT(stream_id) DO UPDATE SET byte_size = excluded.byte_size`).run(t,n)}async function Wd(e){let t=mn();return t?_n(e,async()=>{let n;try{n=await gt(e,()=>dn(e))}catch(s){if(s instanceof x&&s.code==="lock_conflict")return!1;throw s}if(n.pending.length>0)return!1;let r=Xe(e);await P.mkdir(z.dirname(r),{recursive:!0});let o=`${r}.${Ti()}.tmp`,i;try{i=new t(o),Vd(i),i.exec("BEGIN IMMEDIATE");let s=await Ci(e);for(let c of s.events)Ni(i,c);for(let[c,d]of s.stream_byte_sizes)Di(i,c,d);i.exec("COMMIT"),i.close(),i=void 0;let a=await gt(e,async()=>{let c=await dn(e);return c.pending.length>0||!zd(n.committed,c.committed)?!1:(await P.rm(r,{force:!0}),await P.rename(o,r),await Promise.all(n.committed.map(d=>P.rm(z.join(fn(e),d),{force:!0}))),!0)});return a||await P.rm(o,{force:!0}),a}catch(s){throw i?.close(),await P.rm(o,{force:!0}),s}}):!1}function sn(e,t){return!t||t.length===0||t.includes(e)}function jr(e,t){return e.entry.ts.localeCompare(t.entry.ts)||e.stream_id.localeCompare(t.stream_id)||e.stream_offset-t.stream_offset}function ln(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toISOString():e}function Bd(e,t){if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){if(jr(e,{stream_id:t.after_stream_id,stream_offset:t.after_stream_offset,entry:{...e.entry,ts:ln(t.after_ts)}})<=0)return!1}else if(t.since_ts!==void 0&&e.entry.ts<ln(t.since_ts))return!1;return!0}function qd(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 Xd(e,t){return!Bd(e,t)||!sn(e.entry.op,t.ops)||!sn(e.entry.author,t.authors)||!sn(e.entry.agent_instance??"",t.agent_instances)||!sn(e.stream_id,t.stream_ids)||!qd(e,t)?!1:(t.provenance??[]).every(n=>{let r=e.entry.agent_provenance?.[n.dimension]?.value;return r!==void 0&&n.values.includes(r)})}async function Um(e,t){let n=Math.max(0,Math.floor(t.limit)),r=(await $d(e)).filter(o=>Xd(o,t)).slice(0,n+1);return{events:r.slice(0,t.limit),has_more:r.length>t.limit}}async function ji(e,t,n){let r=z.dirname(z.dirname(e)),o=mn();if(!o){await n();return}let i=!1;try{await _n(r,async()=>{let s=Xe(r);try{await P.access(s)}catch{await n();return}let a;try{if(a=new o(s),a.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==un)throw new TypeError("Unsupported history event index version")}catch{a?.close(),await P.rm(s,{force:!0}),await n();return}try{a.exec("PRAGMA busy_timeout = 5000"),a.exec("BEGIN IMMEDIATE")}catch(d){throw a.close(),d}let c=!1;try{await n(),c=!0,i=!0;let d=z.basename(e,".jsonl"),u=a.prepare("SELECT COALESCE(MAX(stream_offset), -1) + 1 AS value FROM events WHERE stream_id = ?").get(d);Ni(a,{stream_id:d,stream_offset:Number(u.value),entry:t}),Di(a,d,(await P.stat(e)).size),a.exec("COMMIT"),a.close()}catch(d){if(a?.close(),!c)throw d;await rn(r)}})}catch(s){if(i){await rn(r);return}if(!(s instanceof x)||s.code!=="lock_conflict")throw s;let a;try{await gt(r,async()=>{let c=await Fd(r);a=c.pendingPath;try{await n(),i=!0}catch(d){throw await P.rm(c.pendingPath,{force:!0}),d}await P.rename(c.pendingPath,c.committedPath),await rn(r)})}catch(c){if(i){await rn(r);try{await P.rm(a,{force:!0})}catch{}return}throw c}}}async function pn(e){await P.rm(Xe(z.dirname(z.dirname(e))),{force:!0})}function an(e,t,n,r){!r||r.length===0||(e.push(`${n} IN (${r.map(()=>"?").join(", ")})`),t.push(...r))}function Kd(e,t,n,r){if(!n||n.length===0)return;let o=n.map(()=>"?").join(", "),i=r??[];if(i.length>0){e.push(`(agent_harness IN (${o}) OR (agent_harness IS NULL AND author IN (${i.map(()=>"?").join(", ")})))`),t.push(...n,...i);return}e.push(`agent_harness IN (${o})`),t.push(...n)}async function Vm(e,t){let n=mn();if(!n)return null;let r=[],o=[];if(t.after_ts!==void 0&&t.after_stream_id!==void 0&&t.after_stream_offset!==void 0){r.push("(ts > ? OR (ts = ? AND stream_id > ?) OR (ts = ? AND stream_id = ? AND stream_offset > ?))");let a=ln(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&&(r.push("ts >= ?"),o.push(ln(t.since_ts)));an(r,o,"op",t.ops),an(r,o,"author",t.authors),Kd(r,o,t.harnesses,t.harness_alias_authors),an(r,o,"agent_instance",t.agent_instances);for(let a of t.provenance??[])r.push(`json_extract(entry_json, '$.agent_provenance.${a.dimension}.value') IN (${a.values.map(()=>"?").join(", ")})`),o.push(...a.values);an(r,o,"stream_id",t.stream_ids);let i=r.length===0?"":` WHERE ${r.join(" AND ")}`,s;try{return await _n(e,async()=>gt(e,async()=>{let a=await dn(e);if(a.pending.length>0||a.committed.length>0)return null;s=new n(Xe(e),{readOnly:!0});let c=s.prepare("SELECT value FROM metadata WHERE key = 'version'").get(),d=await Yd(s,e,t.stream_ids);if(c?.value!==un||!await Li(s,e,d))return s.close(),s=void 0,null;let u=s.prepare(`SELECT stream_id, stream_offset, entry_json
53
+ FROM events${i}
54
+ ORDER BY ts, stream_id, stream_offset
55
+ LIMIT ?`).all(...o,Math.max(0,Math.floor(t.limit))+1),f=u.slice(0,t.limit).map(Ri);return s.close(),s=void 0,f.includes(null)?null:{events:f,has_more:u.length>t.limit}}))}catch{return s?.close(),null}}function Pi(e,t){let n=Object.create(null);for(let r of e){if(!t.has(r.stream_id)||qe(r.entry)!=="substantive")continue;let o=n[r.stream_id];(o===void 0||jr(o,r)<0)&&(n[r.stream_id]=r)}return n}async function Gd(e,t){if(z.basename(t)!==t)return null;try{return(await P.stat(z.join(e,"history",`${t}.jsonl`))).size}catch(n){if(ae(n))return 0;throw n}}async function Li(e,t,n){for(let r=0;r<n.length;r+=500){let o=n.slice(r,r+500),i=new Map(e.prepare(`SELECT stream_id, byte_size FROM streams
56
+ 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=>Gd(t,a)));for(let[a,c]of s.entries()){if(c===null)return!1;let d=o[a],u=i.get(d);if(!(c===0&&u===void 0)&&c!==u)return!1}}return!0}async function Yd(e,t,n){if(n&&n.length>0)return[...new Set(n.filter(i=>i.trim().length>0))];let r=e.prepare("SELECT stream_id FROM streams").all().map(i=>String(i.stream_id)),o=await P.readdir(z.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(ae(i))return[];throw i});return[...new Set([...r,...o])]}async function xi(e,t,n,r){if(!e)return null;let o;try{return await _n(t,async()=>gt(t,async()=>{let i=await dn(t);if(i.pending.length>0||i.committed.length>0)return null;if(o=new e(Xe(t),{readOnly:!0}),o.prepare("SELECT value FROM metadata WHERE key = 'version'").get()?.value!==un||!await Li(o,t,n))return o.close(),o=void 0,null;let a=[];for(let c=0;c<n.length;c+=500){let d=n.slice(c,c+500),f=o.prepare(`SELECT stream_id, stream_offset, entry_json
57
+ FROM (
58
+ SELECT stream_id, stream_offset, entry_json,
59
+ ROW_NUMBER() OVER (
60
+ PARTITION BY stream_id
61
+ ORDER BY ts DESC, stream_offset DESC
62
+ ) AS recency_rank
63
+ FROM events
64
+ WHERE event_class = 'substantive'
65
+ AND stream_id IN (${d.map(()=>"?").join(", ")})
66
+ )
67
+ WHERE recency_rank = 1`).all(...d).map(Ri);if(f.includes(null))return o.close(),o=void 0,null;a.push(...f)}return o.close(),o=void 0,Pi(a,r)}))}catch(i){return o?.close(),i instanceof x&&i.code==="lock_conflict"?cn:null}}async function Wm(e,t){let n=[...new Set(t.filter(a=>a.trim().length>0&&z.basename(a)===a))];if(n.length===0)return{};let r=new Set(n),o=mn(),i=await xi(o,e,n,r);if(i!==null&&i!==cn)return i;if(o&&i!==cn)try{if(await Wd(e)){let a=await xi(o,e,n,r);if(a!==null&&a!==cn)return a}}catch{}let s=[];return await Promise.all(n.map(async a=>{let c=z.join(e,"history",`${a}.jsonl`);(await Ai(c,a).catch(u=>{if(u instanceof x&&u.code==="history_timestamp_invalid")return[];throw u})).forEach((u,f)=>{s.push({stream_id:a,stream_offset:f,entry:u})})})),Pi(s,r)}import Hr from"node:fs/promises";import Ge 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]="a3e0573a-01fd-54fb-a568-51c5287b696c")}catch{}})();var yn="changed_fields",Jd="changed_field_count",Pr="rows",Qd=new Set(["apply","rollback"]),zi=new Set(["deleted","would_delete"]),Mi=256;function Fi(e){return typeof e!="string"||e.length<=Mi?e:`${e.slice(0,Mi-1)}\u2026`}function Zd(e){if(!oe(e))return null;let t={...e};return t.reason=Fi(t.reason),oe(t.previous_terminal)&&(t.previous_terminal=Object.fromEntries(Object.entries(t.previous_terminal).map(([n,r])=>[n,Fi(r)]))),t}function oe(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function $i(e){let t=e[yn];if(!Array.isArray(t))return null;let n=Object.getPrototypeOf(e)===null?Object.create(null):{};for(let[r,o]of Object.entries(e))r!==yn&&(n[r]=o);return n[Jd]=t.length,n}function el(e){return"item"in e&&Array.isArray(e[yn])}function tl(e){return typeof e.mode=="string"&&Qd.has(e.mode)&&Array.isArray(e[Pr])}function nl(e,t){let n=Object.getPrototypeOf(e)===null?Object.create(null):{};return Object.assign(n,e),n[Pr]=t,n}function rl(e){if(!oe(e))return null;let t=oe(e.item)?e.item:oe(e.plan)?e.plan:null;if(t===null)return null;let n=typeof t.id=="string"?t.id:void 0,r=typeof e.outcome=="string"&&zi.has(e.outcome)?e.outcome:typeof t.status=="string"?t.status:void 0;return n?r?{id:n,status:r,...typeof e.deleted=="boolean"?{deleted:e.deleted}:{}}:{id:n}:null}function ol(e){if(!oe(e)||!oe(e.item)||typeof e.item.id!="string")return null;let t=e[yn];if(!Array.isArray(t))return null;let n={id:e.item.id,...typeof e.outcome=="string"&&zi.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},r=typeof e.close_reason=="string"?e.close_reason:typeof e.item.close_reason=="string"?e.item.close_reason:void 0;r!==void 0&&(n.close_reason=r);let o=Zd(e.recurrence);return o!==null&&(n.recurrence=o),Array.isArray(e.warnings)&&e.warnings.length>0&&(n.warnings=e.warnings),n}function il(e){let t=tl(e)?e[Pr]:void 0;if(!Array.isArray(t))return{projected:e,changed:!1};let n=!1,r=t.map(o=>{if(!oe(o))return o;let i=$i(o);return i?(n=!0,i):o});return n?{projected:nl(e,r),changed:!0}:{projected:e,changed:!1}}function sl(e,t={}){if(t.idOnly===!0){let a=rl(e);if(a!==null)return a}if(t.compactEnvelope===!0){let a=ol(e);if(a!==null)return a}if((t.changedFields??"full")==="full"||!oe(e))return e;let r=!1,o=e,i=el(e)?$i(e):null;i!==null&&(o=i,r=!0);let s=il(o);return s.changed&&(o=s.projected,r=!0),r?o:e}import{encode as Vi}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]="fa89762b-915f-5ef0-a091-f05338c11683")}catch{}})();var fp=new Set(Object.values(S));var Hi=!1;function Ke(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Lr(e){return typeof e=="object"&&e!==null&&e.code==="EPIPE"}function al(){(process.exitCode===void 0||process.exitCode===S.SUCCESS)&&(process.exitCode=S.SUCCESS)}function cl(){(process.exitCode===void 0||process.exitCode===S.SUCCESS)&&(process.exitCode=S.GENERIC_FAILURE)}function Mr(e){if(e==="stdout"){al();return}cl()}function Ui(e){let t=e instanceof Error?e:new Error(String(e));setImmediate(()=>{throw t})}function dl(){Hi||(Hi=!0,process.stdout.on("error",e=>{if(Lr(e)){Mr("stdout");return}Ui(e)}),process.stderr.on("error",e=>{if(Lr(e)){Mr("stderr");return}Ui(e)}))}function ll(e,t){dl();try{return e==="stdout"?process.stdout.write(t):process.stderr.write(t),!0}catch(n){if(Lr(n))return Mr(e),!1;throw n}}function hn(e){return ll("stderr",e)}function Fr(e){return typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"?String(e):e===null?"null":JSON.stringify(e)}function ul(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Wi(e){if(e.length===0||!e.every(Ke))return!1;let t=Object.keys(e[0]);return t.length>0&&e.every(n=>Object.keys(n).length===t.length&&t.every(r=>Object.hasOwn(n,r)&&ul(n[r])))}function Bi(e,t){let n=" ".repeat(t);return e.split(`
68
+ `).map(r=>`${n}${r}`).join(`
69
+ `)}function fl(e,t,n){let r=" ".repeat(n);return!Ke(t)&&!Array.isArray(t)?`${r}${e}: ${Fr(t)}`:Array.isArray(t)&&t.length===0?`${r}${e}: []`:Array.isArray(t)&&Wi(t)?Bi(Vi({[e]:t}),n):Ke(t)&&Object.keys(t).length===0?`${r}${e}: {}`:`${r}${e}:
70
+ ${$r(t,n+1)}`}function zr(e){if(e!=null){if(Array.isArray(e)){let t=e.map(n=>zr(n)).filter(n=>n!==void 0);return t.length>0?t:void 0}if(Ke(e)){let t={};for(let[n,r]of Object.entries(e)){if(n==="omitted_field_groups"&&Array.isArray(r)&&r.length===0){t[n]=[];continue}let o=zr(r);o!==void 0&&(t[n]=o)}return Object.keys(t).length>0?t:void 0}return e}}function $r(e,t){let n=" ".repeat(t);if(Array.isArray(e))return e.length===0?"[]":Wi(e)?Bi(Vi(e),t):e.map(r=>{if(!Ke(r)&&!Array.isArray(r))return`${n}- ${Fr(r)}`;let i=$r(r,t+1).split(`
71
+ `),[s,...a]=i;return a.length===0?`${n}- ${s.trimStart()}`:`${n}- ${s.trimStart()}
72
+ ${a.join(`
73
+ `)}`}).join(`
74
+ `);if(Ke(e)){let r=Object.entries(e);return r.length===0?"{}":r.map(([o,i])=>fl(o,i,t)).join(`
75
+ `)}return`${n}${Fr(e)}`}function _p(e,t){if(t==="json")return`${JSON.stringify(e,null,2)}
76
+ `;let n=zr(e);return n===void 0?`{}
77
+ `:`${$r(n,0)}
78
+ `}function mp(e){let t=$o("error_format",{message:e}),n=t.handled&&typeof t.result=="string"?t.result:e;hn(n.endsWith(`
79
+ `)?n:`${n}
80
+ `)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5121b339-6594-58ec-b479-11cbf7dafd27")}catch{}})();var _l=Ge.join("runtime","history-drift-cache.json"),qi={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 Xi(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"?e.code:void 0}async function ml(e){let t=Ge.join(e,_l),n=!1,r="invalid_cache_path";try{n=(await Hr.stat(await Hr.realpath(e))).isDirectory()}catch(o){let i=Xi(o);r=i===void 0?"unknown":qi[i]??"filesystem_error"}if(!n){hn(`[pm] warning: history_drift_cache_invalidation_failed:${r}
81
+ `);return}try{await Hr.rm(t,{force:!0})}catch(o){let i=Xi(o);if(ae(o))return;let s=i===void 0?"unknown":qi[i]??"filesystem_error";hn(`[pm] warning: history_drift_cache_invalidation_failed:${s}
82
+ `)}}async function bt(e){let t=Ge.dirname(Ge.resolve(e));Ge.basename(t)==="history"&&await ml(Ge.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]="1f78448d-a042-588a-84ce-369bd9ce8726")}catch{}})();var yl={front_matter:{},body:""},Ce=3,wt=[1,2,3];function gn(e,t){return(e??"").localeCompare(t??"")}function Ki(e,t){return(e??0)-(t??0)}function pe(e,t,n){return JSON.stringify(e??n).localeCompare(JSON.stringify(t??n))}function hl(e,t){return[e.scope.localeCompare(t.scope),gn(e.path,t.path),gn(e.command,t.command),Ki(e.timeout_seconds,t.timeout_seconds),gn(e.pm_context_mode,t.pm_context_mode),+!!e.shared_host_safe-+!!t.shared_host_safe,pe(e.env_clear,t.env_clear,[]),pe(e.env_set,t.env_set,{}),pe(e.assert_stdout_contains,t.assert_stdout_contains,[]),pe(e.assert_stdout_regex,t.assert_stdout_regex,[]),pe(e.assert_stderr_contains,t.assert_stderr_contains,[]),pe(e.assert_stderr_regex,t.assert_stderr_regex,[]),Ki(e.assert_stdout_min_lines,t.assert_stdout_min_lines),pe(e.assert_json_field_equals,t.assert_json_field_equals,{}),pe(e.assert_json_field_gte,t.assert_json_field_gte,{}),gn(e.note,t.note)].find(r=>r!==0)??0}function gl(e){return!e||e==="/"?[]:e.startsWith("/")?e.slice(1).split("/").map(t=>t.replaceAll("~1","/").replaceAll("~0","~")):[]}function bl(e,t){let n=gl(t);if(n.length===0)return!0;let r=e;for(let o of n){if(Array.isArray(r)){if(o==="-"||!/^(0|[1-9]\d*)$/.test(o))return!1;let s=Number(o);if(!Number.isInteger(s)||s<0||s>=r.length)return!1;let a=r[s];if(a===void 0)return!1;r=a;continue}if(typeof r!="object"||r===null||!Object.prototype.hasOwnProperty.call(r,o))return!1;let i=r[o];if(i===void 0)return!1;r=i}return!0}function wl(e,t){let n=[],r=structuredClone(e);for(let o of t){let i=o.op==="replace"&&!bl(r,o.path)?{...o,op:"add"}:o;n.push(i),r=Qi.applyPatch(r,[i],!0,!0).newDocument}return n}function wn(e,t,n=!1){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{front_matter:{},body:e.body??""};let o=G(e),s=t===1||t===2&&n?{...o.metadata,...o.metadata.dependencies===void 0?{}:{dependencies:o.metadata.dependencies.map(d=>({...d,id:d.id.toLowerCase()}))},...o.metadata.tests===void 0?{}:{tests:o.metadata.tests.map(({workspace_context_mode:d,provenance:u,provenance_invalid:f,...p})=>p)},...o.metadata.test_runs===void 0?{}:{test_runs:o.metadata.test_runs.map(({executions:d,...u})=>u)}}:o.metadata,a=t===1&&s.tests?{...s,tests:[...s.tests].sort(hl)}:s;return{front_matter:k(a,se),body:o.body}}function Gi(e){if(!(e.metadata&&Object.keys(e.metadata).length>0))return{metadata:{},body:e.body??""};let n=G(e);return{metadata:k(n.metadata,se),body:n.body}}function jp(e){return Zi(e,Ce)}function Zi(e,t){if(!wt.some(n=>n===t))throw new TypeError(`unsupported_item_hash_version:${String(t)}`);return de(M(wn(e,t)))}function es(e,t){let n=Zi(e,t);return t===2?[n,de(M(wn(e,t,!0)))]:[n]}function Pp(){return de(M(yl))}function Ye(e){let t=wn(e.before,Ce),n=wn(e.after,Ce),r=Gi(e.before),o=Gi(e.after),i=Qi.compare(r,o),s=wl(r,i),a=ai(e.author),c=a.harness?Object.fromEntries(Object.entries(ii().provenance_outcomes).filter(([,f])=>f.resolver!==void 0&&f.status!=="resolved")):void 0,d=c===void 0||Object.keys(c).length===0?e.context:{...e.context,agent_provenance_outcomes:c},u={ts:e.nowIso,author:e.author,author_source:e.authorSource??si(e.author),...a.harness?{agent_harness:a.harness}:{},...a.model?{agent_model:a.model}:{},...a.model_source?{agent_model_source:a.model_source}:{},...a.instance?{agent_instance:a.instance}:{},...a.provenance?{agent_provenance:a.provenance}:{},...a.episode?{agent_episode:a.episode}:{},op:e.op,patch:s,before_hash:de(M(t)),after_hash:de(M(n)),item_hash_version:Ce,message:e.message===void 0?void 0:e.message,...d===void 0?{}:{context:d}};return{...u,event_class:qe(u)}}function Yi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ur(e){return new x(e,S.GENERIC_FAILURE,{code:"history_timestamp_invalid"})}function ts(e){let t=e.ts.trim();if(t.length===0)return ue();if(!Fe(t))throw Ur("History timestamp must be a valid RFC 3339 date-time with millisecond precision");if(t!==e.ts)throw Ur("History timestamp must not contain surrounding whitespace");return e.ts}function Ji(e,t){let n=e.ts;if(typeof n=="string"&&n.trim().length>0){if(!Fe(n))throw Ur("History timestamp must be a valid RFC 3339 date-time with millisecond precision");return e}return{...e,ts:t}}function bn(e,t){let n=ts(t);if(typeof e=="string"){let r;try{r=JSON.parse(e)}catch{return e}return Yi(r)?JSON.stringify(Ji(r,n)):e}return Yi(e)?JSON.stringify(Ji(e,n)):JSON.stringify(e)}async function Je(e,t){let n=await ft("history_append",{history_path:e,entry:t});if(n.handled){if(n.result===!1)return;if(typeof n.result=="string"){await st(e,bn(n.result,t)),await bt(e),await pn(e);return}if(typeof n.result=="object"&&n.result!==null){let i=n.result;if(i.skip===!0)return;let s=typeof i.history_path=="string"?i.history_path:e;if(typeof i.line=="string"){await st(s,bn(i.line,t)),await bt(s),await pn(s);return}await st(s,bn(i.entry??t,t)),await bt(s),await pn(s);return}}let r=t.ts.trim().length>0?t:{...t,ts:ts(t)},o={...r,event_class:qe(r)};await ji(e,o,async()=>{await st(e,bn(o,o))}),await bt(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]="c9488ed4-8228-5e7c-9717-69dd7a3275c4")}catch{}})();var El={metadata:{},body:""};function En(){return structuredClone(El)}function Vp(e,t=Ce){return Vr(e,t)[0]}function Vr(e,t){if(Object.keys(e.metadata).length===0||Array.isArray(e.metadata.tags))try{return es(vn(e),t)}catch{}let n=de(M({replay_fallback:!0,metadata:e.metadata,body:e.body}));return t===2?[n,n]:[n]}function os(e,t,n,r){let o=Vr(e,n),i=Vr(t,n);return{beforeHashes:o,afterHashes:i,pairIndex:o.findIndex((s,a)=>s===r.before_hash&&i[a]===r.after_hash),beforeIndex:o.indexOf(r.before_hash),afterIndex:i.indexOf(r.after_hash)}}function vn(e){return{metadata:e.metadata,body:e.body}}function Wp(e,t={}){return G(vn(e),t)}function Bp(e){if(!e.metadata||Object.keys(e.metadata).length===0)return{metadata:{},body:e.body??""};let t=G(e);return{metadata:k(t.metadata,se),body:t.body}}function ns(e){return e==="/front_matter"?"/metadata":e.startsWith("/front_matter/")?`/metadata/${e.slice(14)}`:e}function vl(e){return typeof e=="object"&&e!==null&&typeof e.op=="string"&&typeof e.path=="string"}function is(e){return Array.isArray(e)?e.filter(vl).map(t=>({...t,path:ns(t.path),from:typeof t.from=="string"?ns(t.from):void 0})):[]}function kl(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 kn(e,t){try{let n=is(t),r=Wr.applyPatch(structuredClone(e),n,!0,!1).newDocument;return kl(r)?{ok:!0,document:{metadata:r.metadata,body:r.body}}:{ok:!1,error:new Error("history_replay_invalid_document_shape")}}catch(n){return{ok:!1,error:n}}}function Il(e){return[...new Set(e.map(t=>t.item_hash_version).filter(t=>t!==void 0&&wt.includes(t)))]}function ss(e){return e!==void 0&&!wt.includes(e)}function Sl(e,t){return e!==void 0?[e]:t===void 0?[...wt]:[t]}function as(e){let t=En(),n,r,o=[];for(let i=0;i<e.length;i+=1){let s=e[i],a=s.item_hash_version,c=ss(a);c&&o.push(`verify_failed:unsupported_item_hash_version:${String(a)}:entry_${i+1}`);let d=kn(t,s.patch);if(!d.ok)return{ok:!1,errors:[...o,`verify_failed:patch_apply_failed:entry_${i+1}`]};if(c){t=d.document,n=void 0,r=void 0;continue}let f=Sl(a,r).map(_=>({version:_,match:os(t,d.document,_,s)})),p=f.find(({match:_})=>_.pairIndex>=0);if(p===void 0){let _=f.some(({match:v})=>v.beforeIndex>=0);return{ok:!1,errors:[...o,`verify_failed:${_?"after":"before"}_hash_mismatch:entry_${i+1}`]}}let y=p.version;t=d.document,n=y,r=a??r}return o.length>0?{ok:!1,errors:o,...n===void 0?{}:{item_hash_version:n}}:{ok:!0,errors:[],...n===void 0?{}:{item_hash_version:n}}}function In(e){let t=as(e);return{ok:t.ok,errors:t.errors}}function rs(e,t){try{return{ok:!0,document:Wr.applyPatch(structuredClone(e),[t],!0,!1).newDocument}}catch{return{ok:!1}}}function xl(e,t){let n=structuredClone(e),r=0,o=0;for(let a of is(t)){let c=rs(n,a);if(c.ok){n=c.document;continue}if(a.op==="replace"){let d=rs(n,{...a,op:"add"});if(d.ok){n=d.document,r+=1;continue}}o+=1}let i=n;return{document:{metadata:typeof i.metadata=="object"&&i.metadata!==null?i.metadata:{},body:typeof i.body=="string"?i.body:e.body},convertedReplaceToAdd:r,skippedOps:o}}function Tl(e){let t=Il(e);if(t.length===1)return t[0];let n=as(e);return n.ok&&n.item_hash_version!==void 0?n.item_hash_version:t.length===0?1:Ce}function qp(e,t=Tl(e),n={}){let r=e.findIndex(y=>ss(y.item_hash_version));if(r>=0)throw new TypeError(`unsupported_item_hash_version:${String(e[r]?.item_hash_version)}:entry_${r+1}`);let o=En(),i=[],s=[],a=0,c=0,d=0,u=0,f,p=t!==1||e.some(y=>y.item_hash_version!==void 0);for(let y=0;y<e.length;y+=1){let _=e[y],v=kn(o,_.patch),b,C,N=!1,j=0,L=0;if(v.ok)b=v.document,C=_.patch;else{let J=xl(o,_.patch);b=J.document,C=Wr.compare(o,b),N=!0,j=J.convertedReplaceToAdd,L=J.skippedOps,d+=j,u+=L,c+=1}let U=os(o,b,t,_);f===void 0||n.continuousHashSurface!==!0?f=[U.pairIndex,U.beforeIndex,U.afterIndex,Math.min(f??0,U.beforeHashes.length-1)].find(J=>J>=0):f=Math.min(f,U.beforeHashes.length-1);let De=U.beforeHashes[f],V=U.afterHashes[f],je=De!==_.before_hash||V!==_.after_hash;je&&(a+=1);let ie={..._,patch:C,before_hash:De,after_hash:V};p?ie.item_hash_version=t:delete ie.item_hash_version,i.push(ie),s.push({index:y+1,rehashed:je,patch_repaired:N,converted_replace_to_add:j,skipped_ops:L}),o=b}return{entries:i,finalDocument:o,entriesRehashed:a,entriesPatchRepaired:c,convertedReplaceToAdd:d,skippedOps:u,details:s,itemHashVersion:t,explicitItemHashVersion:p}}function Xp(e){return e.length===0?"":`${e.map(t=>JSON.stringify(t)).join(`
83
+ `)}
84
+ `}import Ol from"node:crypto";import cs 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]="6b3f1585-ab12-57ca-80eb-d3cebc384c52")}catch{}})();function ls(e){let t=[],n=!1;for(let r of(e??"").toLowerCase()){let o=r.charCodeAt(0),i=o>=48&&o<=57,s=o>=97&&o<=122;if(!i&&!s){n=t.length>0;continue}n&&(t.push("-"),n=!1),t.push(r)}return t.length===0?"pm-":`${t.join("")}-`}function Br(e){let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),t}function Et(e,t){let n=ls(t),r=Br(e);return r.startsWith(n)?r:`${n}${r}`}function Cl(e){let t=Ho(e);if(t!==void 0)return t;let n="";for(let r=0;r<e;r+=1)n+=Ol.randomInt(0,36).toString(36);return n}async function Al(e,t,n){let r=[...new Set(Object.values(n))].flatMap(o=>[cs.join(e,o,`${t}.md`),cs.join(e,o,`${t}.toon`)]);return(await Promise.all(r.map(o=>Le(o)))).some(Boolean)}var ds=4,us=12;function Nl(e){return typeof e!="number"||!Number.isFinite(e)?ds:Math.min(us,Math.max(ds,Math.trunc(e)))}async function ey(e,t,n={}){let r=Nl(n.tokenLength),o=Math.min(r+6,us),i=0;for(;r<=o;){for(let s=0;s<32;s+=1){let a=`${ls(t)}${Cl(r)}`;if(n.probeExisting===!1||!await Al(e,a,n.typeToFolder??ve))return a;i+=1}r+=1}throw new Error(`Unable to generate unique id after ${i} attempts`)}import Ae from"node:fs/promises";import _s from"node:path";import{randomUUID as Rl}from"node:crypto";import{createRequire as Dl}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]="97cfeab2-8e3f-5b70-9f64-10494158d141")}catch{}})();var jl="metadata-query-index.sqlite",vt="4";function Pl(e){try{return e(["node","sqlite"].join(":")).DatabaseSync??null}catch{return null}}var Sn;function Ll(e,t){let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=22?Pl(t):null}function kt(){return Sn!==void 0||(Sn=Ll(process.versions.node,Dl(import.meta.url))),Sn}function fs(e,t){return Math.max(0,Math.floor(e===void 0?t:e))}function Qe(e){return _s.join(e,"runtime",jl)}function Ml(e){e.exec(`
85
+ PRAGMA foreign_keys = ON;
86
+ PRAGMA journal_mode = OFF;
87
+ PRAGMA synchronous = OFF;
88
+ CREATE TABLE metadata (
89
+ key TEXT PRIMARY KEY,
90
+ value TEXT NOT NULL
91
+ ) STRICT;
92
+ CREATE TABLE items (
93
+ id TEXT PRIMARY KEY,
94
+ relative_path TEXT NOT NULL UNIQUE,
95
+ metadata_json TEXT NOT NULL,
96
+ status TEXT NOT NULL,
97
+ type TEXT NOT NULL,
98
+ priority INTEGER NOT NULL,
99
+ updated_at TEXT NOT NULL,
100
+ created_at TEXT NOT NULL,
101
+ parent TEXT,
102
+ assignee TEXT,
103
+ sprint TEXT,
104
+ release TEXT
105
+ ) STRICT;
106
+ CREATE INDEX items_default_order
107
+ ON items(priority, updated_at DESC, id);
108
+ CREATE INDEX items_status_default_order
109
+ ON items(status, priority, updated_at DESC, id);
110
+ CREATE INDEX items_type_default_order
111
+ ON items(type, priority, updated_at DESC, id);
112
+ CREATE INDEX items_parent_default_order
113
+ ON items(parent, priority, updated_at DESC, id);
114
+ CREATE TABLE item_metadata_keys (
115
+ item_id TEXT NOT NULL,
116
+ key TEXT NOT NULL,
117
+ PRIMARY KEY(item_id, key),
118
+ FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
119
+ ) STRICT;
120
+ CREATE INDEX item_metadata_keys_key_item
121
+ ON item_metadata_keys(key, item_id);
122
+ CREATE TABLE item_linked_files (
123
+ item_id TEXT NOT NULL,
124
+ path TEXT NOT NULL,
125
+ scope TEXT NOT NULL,
126
+ note TEXT,
127
+ PRIMARY KEY(item_id, path, scope),
128
+ FOREIGN KEY(item_id) REFERENCES items(id) ON DELETE CASCADE
129
+ ) STRICT;
130
+ CREATE INDEX item_linked_files_path_scope_item
131
+ ON item_linked_files(path, scope, item_id);
132
+ CREATE VIRTUAL TABLE item_search USING fts5(
133
+ id UNINDEXED,
134
+ title,
135
+ description,
136
+ tags,
137
+ tokenize = 'unicode61'
138
+ );
139
+ `)}function Tn(e,t,n){e.prepare("INSERT INTO metadata(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(t,n)}function ms(e,t){let n=t.metadata;e.prepare(`INSERT INTO items(
140
+ id, relative_path, metadata_json, status, type, priority,
141
+ updated_at, created_at, parent, assignee, sprint, release
142
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
143
+ ON CONFLICT(id) DO UPDATE SET
144
+ relative_path = excluded.relative_path,
145
+ metadata_json = excluded.metadata_json,
146
+ status = excluded.status,
147
+ type = excluded.type,
148
+ priority = excluded.priority,
149
+ updated_at = excluded.updated_at,
150
+ created_at = excluded.created_at,
151
+ parent = excluded.parent,
152
+ assignee = excluded.assignee,
153
+ sprint = excluded.sprint,
154
+ release = excluded.release`).run(n.id,t.relativePath,JSON.stringify(n),n.status,n.type,n.priority,n.updated_at,n.created_at,n.parent??null,n.assignee??null,n.sprint??null,n.release??null),e.prepare("DELETE FROM item_metadata_keys WHERE item_id = ?").run(n.id),e.prepare("DELETE FROM item_linked_files WHERE item_id = ?").run(n.id),e.prepare("DELETE FROM item_search WHERE id = ?").run(n.id),e.prepare("INSERT INTO item_search(id, title, description, tags) VALUES (?, ?, ?, ?)").run(n.id,n.title,n.description,n.tags.join(" "));let r=e.prepare("INSERT INTO item_metadata_keys(item_id, key) VALUES (?, ?)");for(let i of Object.keys(n))r.run(n.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(n.id,i.path,i.scope,i.note??null)}async function ps(e){let t=Qe(e.pmRoot),n=kt();if(!n){await Ae.rm(t,{force:!0});return}await Ae.mkdir(_s.dirname(t),{recursive:!0});let r=`${t}.${Rl()}.tmp`,o;try{o=new n(r),Ml(o),o.exec("BEGIN IMMEDIATE"),Tn(o,"version",vt),Tn(o,"context_fingerprint",e.contextFingerprint),Tn(o,"source_cursor",e.sourceCursor);for(let i of e.rows)ms(o,i);o.exec("COMMIT"),o.close(),o=void 0,await Ae.rm(t,{force:!0}),await Ae.rename(r,t)}catch(i){throw o?.close(),await Promise.allSettled([Ae.rm(r,{force:!0})]),i}}function On(e){return Object.fromEntries(e.prepare("SELECT key, value FROM metadata").all().map(t=>[String(t.key),String(t.value)]))}async function ys(e){let t=kt();if(!t)return!1;let n=Qe(e.pmRoot),r;try{await Ae.access(n),r=new t(n),r.exec("PRAGMA foreign_keys = ON");let o=On(r);if(o.version!==vt||o.context_fingerprint!==e.contextFingerprint||o.source_cursor!==e.expectedSourceCursor)return r.close(),!1;r.exec("BEGIN IMMEDIATE");let i=r.prepare("DELETE FROM items WHERE relative_path = ?"),s=r.prepare("SELECT id FROM items WHERE relative_path = ?"),a=r.prepare("DELETE FROM item_search WHERE id = ?");for(let c of e.deletedRelativePaths??[]){let d=s.get(c);i.run(c),d&&a.run(d.id)}return e.row&&ms(r,e.row),Tn(r,"source_cursor",e.sourceCursor),r.exec("COMMIT"),r.close(),!0}catch{try{r?.exec("ROLLBACK")}catch{}return r?.close(),!1}}function xn(e,t,n,r,o){!r||r.length===0||(e.push(`${n} ${o} (${r.map(()=>"?").join(", ")})`),t.push(...r))}function Fl(e){let t=[],n=[];xn(t,n,"status",e.statuses,"IN"),xn(t,n,"status",e.excludeStatuses,"NOT IN"),xn(t,n,"type",e.types,"IN"),xn(t,n,"id",e.ids,"IN");for(let r 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 = ?)"),n.push(r);for(let[r,o]of[["parent",e.parent],["assignee",e.assignee],["sprint",e.sprint],["release",e.release]])o!==void 0&&(t.push(`${r} = ?`),n.push(o));return e.priority!==void 0&&(t.push("priority = ?"),n.push(e.priority)),{where:t.length===0?"":` WHERE ${t.join(" AND ")}`,parameters:n}}async function sy(e){let t=kt();if(!t)return null;let n=e.query??{},{where:r,parameters:o}=Fl(n),i;try{i=new t(Qe(e.pmRoot),{readOnly:!0});let s=On(i);if(s.version!==vt||s.source_cursor!==e.expectedSourceCursor)return i.close(),null;let a=i.prepare(`SELECT COUNT(*) AS count FROM items${r}`).get(...o),c=[],d="";n.limit!==void 0?(d+=" LIMIT ?",c.push(Math.max(0,Math.floor(n.limit))),n.offset!==void 0&&(d+=" OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))))):n.offset!==void 0&&(d+=" LIMIT -1 OFFSET ?",c.push(Math.max(0,Math.floor(n.offset))));let f=i.prepare(`SELECT metadata_json FROM items${r}
155
+ ORDER BY ${n.terminalStatuses&&n.terminalStatuses.length>0?`CASE WHEN status IN (${n.terminalStatuses.map(()=>"?").join(", ")}) THEN 1 ELSE 0 END ASC, `:""}priority ASC, updated_at DESC, id ASC${d}`).all(...o,...n.terminalStatuses??[],...c).map(p=>{let y=JSON.parse(String(p.metadata_json));if(!y.id)throw new TypeError("Indexed metadata row has no id");return y});return i.close(),{source_cursor:s.source_cursor,total:Number(a.count),items:f}}catch{return i?.close(),null}}async function ay(e){let t=kt();if(!t||e.paths.length===0)return null;let n;try{n=new t(Qe(e.pmRoot),{readOnly:!0});let r=On(n);if(r.version!==vt||r.source_cursor!==e.expectedSourceCursor)return n.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=n.prepare(`SELECT COUNT(DISTINCT item_id) AS count
156
+ FROM item_linked_files
157
+ WHERE ${a}`).get(...s),d=fs(e.limit,50),u=fs(e.offset,0),f=n.prepare(`SELECT items.id, items.metadata_json
158
+ FROM items
159
+ WHERE EXISTS (
160
+ SELECT 1 FROM item_linked_files
161
+ WHERE item_linked_files.item_id = items.id AND ${a}
162
+ )
163
+ ORDER BY items.priority ASC, items.updated_at DESC, items.id ASC
164
+ LIMIT ? OFFSET ?`).all(...s,d,u),p=[];if(f.length>0){let y=f.map(b=>String(b.id)),_=n.prepare(`SELECT item_id, path, scope, note
165
+ FROM item_linked_files
166
+ WHERE item_id IN (${y.map(()=>"?").join(", ")})
167
+ AND ${a}
168
+ ORDER BY path ASC, scope ASC`).all(...y,...s),v=new Map(y.map(b=>[b,[]]));for(let b of _){let C=String(b.item_id),N=v.get(C);N.push({path:String(b.path),scope:String(b.scope),...b.note===null?{}:{note:String(b.note)}}),v.set(C,N)}for(let b of f){let C=JSON.parse(String(b.metadata_json));p.push({item:C,files:v.get(String(b.id))})}}return n.close(),{source_cursor:r.source_cursor,total:Number(c.count),matches:p}}catch{return n?.close(),null}}async function cy(e){let t=kt();if(!t)return null;let n;try{n=new t(Qe(e.pmRoot),{readOnly:!0});let r=On(n);if(r.version!==vt||r.source_cursor!==e.expectedSourceCursor)return n.close(),null;let i=n.prepare(`SELECT items.metadata_json
169
+ FROM item_search
170
+ JOIN items ON items.id = item_search.id
171
+ WHERE item_search MATCH ?
172
+ ORDER BY bm25(item_search), items.priority, items.updated_at DESC, items.id
173
+ LIMIT ?`).all(e.query,Math.max(0,Math.floor(e.limit))).map(s=>JSON.parse(String(s.metadata_json)));return n.close(),{source_cursor:r.source_cursor,items:i}}catch{return n?.close(),null}}async function Cn(e){await Ae.rm(Qe(e),{force:!0})}import H from"node:fs/promises";import D from"node:path";import{createHash as zl,randomUUID as Es}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]="8b8c705a-8d80-576f-8642-f6f686cdbed9")}catch{}})();var ee=8,vs=500,$l="metadata-derived-index",Hl="metadata-cache.json",Ul="metadata-cache-bodies.json",Vl="metadata-cache-collections.json",Wl="metadata-cache-delta.json",Bl="metadata-cache-manifest.json",hs=4,ql=["comments","notes","learnings","files","tests","test_runs","docs"];function ks(){return $t(ke())}function Nn(e){let t={...e},n={};for(let r of ql)r in t&&(n[r]=t[r],delete t[r]);return{light:t,heavy:n}}function Is(e,t){return!t||Object.keys(t).length===0?e:{...e,...t}}function Ss(e,t,n,r){let o=zl("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}`),n&&o.update(`|schema:${JSON.stringify(n)}`),r.length>0&&o.update(`|extension_fields:${r.join(",")}`),o.digest("hex").slice(0,16)}function Rn(e){return D.join(e,"runtime",Hl)}function Dn(e){return D.join(e,"runtime",Ul)}function jn(e){return D.join(e,"runtime",Vl)}function Xr(e){return D.join(e,"runtime",Wl)}function Kr(e){return D.join(e,"runtime",Bl)}function Pn(e,t){let n=D.extname(e);return`${e.slice(0,-n.length)}.${t}${n}`}var Xl=24,K=new Map,Ln=new WeakMap;function Gr(e){return Ln.get(e)??e.source_cursor}function Kl(e,t){let n=Gr(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){Ln.set(e,n);for(let[r,o]of Object.entries(t.changes))o.entry?e.entries[r]=o.entry:delete e.entries[r];e.directory_signatures=t.directory_signatures,e.source_cursor=t.source_cursor}}function Gl(e,t){if(!e)return;let n=Gr(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){Ln.set(e,n);for(let[r,o]of Object.entries(t.changes))o.body?e.bodies[r]=o.body:delete e.bodies[r];e.source_cursor=t.source_cursor}}function Yl(e,t){if(!e)return;let n=Gr(e);if(!(t.base_source_cursor!==n||e.source_cursor===t.source_cursor)){Ln.set(e,n);for(let[r,o]of Object.entries(t.changes))o.collections?e.collections[r]=o.collections:delete e.collections[r];e.source_cursor=t.source_cursor}}function Jl(e,t,n,r){!e||!r||e.context_fingerprint!==r.context_fingerprint||(Kl(e,r),Gl(t,r),Yl(n,r))}function qr(e,t){K.size>=Xl&&!K.has(e)&&Do(K),K.set(e,t)}async function ye(e,t){let n;try{n=await H.stat(e)}catch{return K.delete(e),null}let r=K.get(e);if(r&&It(r.signature,n.mtimeMs,n.ctimeMs,n.size))return K.delete(e),K.set(e,r),r.envelope;let o;try{o=t(await H.readFile(e,"utf8"))}catch{o=null}return qr(e,{signature:{mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size},envelope:o}),o}async function Ql(e,t,n){let r=a=>{let c=JSON.parse(a);return c.version!==ee||typeof c.source_cursor!="string"||typeof c.entries!="object"||c.entries===null?null:c},o=Rn(e),i=await ye(o,r);if(!t||i===null||i.context_fingerprint===t)return i;let s=await ye(Pn(o,t),r);return s===null&&Tt(n,`metadata_cache_context_changed:${i.context_fingerprint}->${t}`),s}async function Zl(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==ee||typeof s.source_cursor!="string"||typeof s.bodies!="object"||s.bodies===null?null:s},r=Dn(e),o=await ye(r,n);return t&&o?.context_fingerprint!==t?await ye(Pn(r,t),n):o}async function eu(e,t){let n=i=>{let s=JSON.parse(i);return s.version!==ee||typeof s.source_cursor!="string"||typeof s.collections!="object"||s.collections===null?null:s},r=jn(e),o=await ye(r,n);return t&&o?.context_fingerprint!==t?await ye(Pn(r,t),n):o}async function Yr(e){let t=Xr(e),n=await ye(t,r=>{let o=JSON.parse(r);return o.version!==ee||typeof o.base_source_cursor!="string"||typeof o.source_cursor!="string"||typeof o.changes!="object"||o.changes===null?null:o});if(n)return{envelope:n,invalid:!1};try{return await H.stat(t),{envelope:null,invalid:!0}}catch{return{envelope:null,invalid:!1}}}async function Jr(e){let t=Kr(e),n=await ye(t,r=>{let o=JSON.parse(r);return o.version!==ee||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(n)return n;try{await H.stat(t),await Ze(e)}catch{}return null}async function St(e,t){await H.mkdir(D.dirname(e),{recursive:!0}),await W(e,JSON.stringify(t));try{let r=await H.stat(e);qr(e,{signature:{mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size},envelope:t})}catch{K.delete(e)}let n=D.dirname(D.dirname(e));if(e===Rn(n)||e===Dn(n)||e===jn(n)){let r=Pn(e,t.context_fingerprint);await W(r,JSON.stringify(t));try{let c=await H.stat(r);qr(r,{signature:{mtime_ms:c.mtimeMs,ctime_ms:c.ctimeMs,size:c.size},envelope:t})}catch{K.delete(r)}let o=D.dirname(e),i=D.extname(e),s=D.basename(e,i),a=(await H.readdir(o,{withFileTypes:!0}).catch(()=>[])).filter(c=>c.isFile()&&c.name!==D.basename(e)&&c.name.startsWith(`${s}.`)&&c.name.endsWith(i)).map(c=>D.join(o,c.name));if(a.length>hs){let c=(await Promise.all(a.map(async d=>{try{return{path:d,mtime:(await H.stat(d)).mtimeMs}}catch{return null}}))).filter(d=>d!==null);for(let d of c.sort((u,f)=>u.mtime-f.mtime).slice(0,Math.max(0,c.length-hs)))await H.rm(d.path,{force:!0}),K.delete(d.path)}}}function tu(e,t,n){return n?t===n&&e!==n:t==="toon"&&e!=="toon"}function xs(e,t,n){return e===void 0||tu(e,t,n)}function Tt(e,t){e&&!e.includes(t)&&e.push(t)}function It(e,t,n,r){return e.mtime_ms===t&&e.ctime_ms===n&&e.size===r}async function nu(e,t,n){let r=D.join(e,t);try{let o=await H.readdir(r);return{folder:t,dirPath:r,files:o}}catch(o){return typeof o=="object"&&o!==null&&"code"in o&&!ae(o)&&Tt(n,`item_list_directory_read_failed:${t}`),{folder:t,dirPath:r,files:[]}}}async function ru(e,t){try{let n=await H.stat(D.join(e,t));return[t,{exists:!0,mtime_ms:n.mtimeMs,ctime_ms:n.ctimeMs,size:n.size}]}catch{return[t,{exists:!1,mtime_ms:0,ctime_ms:0,size:0}]}}async function An(e,t){return Object.fromEntries(await Promise.all(t.map(async n=>await ru(e,n))))}function xt(e,t){return!e||Object.keys(e).length!==Object.keys(t).length?!1:Object.entries(t).every(([n,r])=>{let o=e[n];return o!==void 0&&o.exists===r.exists&&It(o,r.mtime_ms,r.ctime_ms,r.size)})}function ou(e){return Ht.some(t=>e.toLowerCase().endsWith(t))}function iu(e,t,n,r,o,i){r||(e.metadata=!0),t&&!o&&(e.body=!0),n&&!i&&(e.collections=!0)}async function su(e,t,n){if(n)for(let r of await le({path:e,scope:"project"}))Tt(t,r)}function gs(e,t,n,r){if(e)return t&&n?n.collections:r}async function au(e,t,n){let r=await H.stat(e),o=r.mtimeMs,i=r.ctimeMs,{size:s}=r,a=Jn(e);await su(e,n.warnings,n.dispatchReadHooks);let c=n.previousEntries[t],d=!n.forceSourceRead&&c!==void 0&&It(c,o,i,s),u=n.previousBodies[t],f=!n.forceSourceRead&&u!==void 0&&It(u,o,i,s),p=n.previousCollections[t],y=!n.forceSourceRead&&p!==void 0&&It(p,o,i,s);if(!(!d||n.includeBody&&!f||n.includeCollections&&!y))return{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:c.metadata,heavyMetadata:gs(n.includeCollections,y,p,void 0),bodyLength:c.body_length,body:n.includeBody?u.body:void 0};let v=await H.readFile(e,"utf8"),b=nn(v,{format:a,schema:n.schema,extensionFieldNames:n.extensionFieldNames,onWarning:N=>Tt(n.warnings,N)}),C=Nn(b.metadata);return iu(n.state.misses,n.includeBody,n.includeCollections,d,f,y),{mtimeMs:o,ctimeMs:i,size:s,itemFormat:a,lightMetadata:d?c.metadata:C.light,heavyMetadata:gs(n.includeCollections,y,p,C.heavy),bodyLength:d?c.body_length:b.body.length,body:n.includeBody?b.body:void 0}}function cu(e,t,n,r){n.state.newEntries[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,metadata:r.lightMetadata,body_length:r.bodyLength},n.includeBody&&r.body!==void 0&&(n.state.newBodies[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,body:r.body}),n.includeCollections&&r.heavyMetadata!==void 0&&(n.state.newCollections[t]={mtime_ms:r.mtimeMs,ctime_ms:r.ctimeMs,size:r.size,collections:r.heavyMetadata});let o=n.includeCollections?Is(r.lightMetadata,r.heavyMetadata):r.lightMetadata,i=n.state.documentsById.get(o.id),s={metadata:o,body:r.body,item_format:r.itemFormat,item_path:e};xs(i?.itemFormat,r.itemFormat,n.preferredFormat)&&n.state.documentsById.set(o.id,{candidate:s,itemFormat:r.itemFormat})}async function du(e,t,n,r){try{let o=await au(t,n,r);cu(t,n,r,o)}catch{Tt(r.warnings,`item_list_item_read_failed:${e}/${D.basename(t)}`)}}function lu(e,t){return e&&e.context_fingerprint===t?e.entries:{}}function uu(e,t){return e&&e.context_fingerprint===t?e.bodies:{}}function fu(e,t){return e&&e.context_fingerprint===t?e.collections:{}}function _u(){return{newEntries:{},newBodies:{},newCollections:{},documentsById:new Map,misses:{metadata:!1,body:!1,collections:!1}}}function mu(e,t){let n=[];for(let{folder:r,dirPath:o,files:i}of e)for(let s of i){if(!ou(s))continue;let a=D.join(o,s),c=D.relative(t.pmRoot,a);n.push(du(r,a,c,t))}return n}async function pu(e){if(!(!(e.state.misses.metadata||Object.keys(e.previousEntries).length!==Object.keys(e.state.newEntries).length||!xt(e.existingCache?.directory_signatures,e.directorySignatures))&&e.existingCache!==null&&e.existingCache.context_fingerprint===e.contextFingerprint))try{await St(Rn(e.pmRoot),{version:ee,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,directory_signatures:e.directorySignatures,entries:e.state.newEntries}),await St(Kr(e.pmRoot),{version:ee,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,entry_count:Object.keys(e.state.newEntries).length,directory_signatures:e.directorySignatures});let n=[...e.state.documentsById.values()].map(({candidate:r})=>({relativePath:D.relative(e.pmRoot,r.item_path),metadata:Nn(r.metadata).light,linkedFiles:r.metadata.files??[]}));n.length>=e.minimumIndexedItems?await ps({pmRoot:e.pmRoot,contextFingerprint:e.contextFingerprint,sourceCursor:e.sourceCursor,rows:n}):await Cn(e.pmRoot)}catch{}}async function yu(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 St(Dn(e.pmRoot),{version:ee,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,bodies:e.state.newBodies}).catch(()=>{})}async function hu(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 St(jn(e.pmRoot),{version:ee,context_fingerprint:e.contextFingerprint,source_cursor:e.sourceCursor,collections:e.state.newCollections}).catch(()=>{})}async function Qr(e,t,n={}){let r=await Jr(e);return n.required!==!0&&(r===null||r.entry_count<vs)?async()=>{}:X(e,$l,30,t,!1,!1,3e3)}async function Ey(e,t){let n=await Jr(e);if(n===null)return null;let r=await Yr(e);if(r.invalid)return await Ze(e),null;let o=r.envelope?.context_fingerprint===n.context_fingerprint&&r.envelope.base_source_cursor===n.source_cursor?r.envelope.source_cursor:n.source_cursor,i=r.envelope?.context_fingerprint===n.context_fingerprint&&r.envelope.base_source_cursor===n.source_cursor?r.envelope.directory_signatures:n.directory_signatures;return t&&!xt(i,await An(e,t))?null:{source_cursor:o,entry_count:n.entry_count}}function bs(e,t){let n=D.relative(e,t);return n===""||n===".."||n.startsWith(`..${D.sep}`)||D.isAbsolute(n)?null:n}async function Ze(e){await Promise.all([Rn(e),Dn(e),jn(e),Xr(e),Kr(e)].map(async t=>{await H.rm(t,{force:!0}),K.delete(t)})),await Cn(e)}async function gu(e){if(e.mutation.document===null)return{entry:null,body:null,collections:null};let t=await H.stat(e.mutation.itemPath),n=Nn(e.mutation.document.metadata),r={mtime_ms:t.mtimeMs,ctime_ms:t.ctimeMs,size:t.size};return{entry:{...r,metadata:n.light,body_length:e.mutation.document.body.length},body:{...r,body:e.mutation.document.body},collections:{...r,collections:n.heavy}}}function bu(e,t,n){return e?.context_fingerprint===t&&e.base_source_cursor===n?structuredClone(e.changes):{}}async function Zr(e){let t=bs(e.pmRoot,e.itemPath),n=e.previousItemPath?bs(e.pmRoot,e.previousItemPath):void 0;if(t===null||n===null)return await Ze(e.pmRoot),["metadata_derived_index_path_invalidated"];try{let r=Ss(e.preferredFormat,e.typeToFolder,e.schema,ks()),o=await Jr(e.pmRoot);if(o===null||o.context_fingerprint!==r)return[];let i=o.source_cursor,s=await Yr(e.pmRoot);if(s.invalid)return await Ze(e.pmRoot),["metadata_derived_index_refresh_failed"];let a=bu(s.envelope,r,i),c=s.envelope?.context_fingerprint===r&&s.envelope.base_source_cursor===i?s.envelope.source_cursor:i;n!==void 0&&(a[n]={entry:null,body:null,collections:null}),a[t]=await gu({mutation:e});let d=Es();return await St(Xr(e.pmRoot),{version:ee,context_fingerprint:r,base_source_cursor:i,source_cursor:d,directory_signatures:await An(e.pmRoot,[...new Set(Object.values(e.typeToFolder))]),changes:a}),await ys({pmRoot:e.pmRoot,contextFingerprint:r,expectedSourceCursor:c,sourceCursor:d,row:e.document===null?null:{relativePath:t,metadata:Nn(e.document.metadata).light,linkedFiles:e.document.metadata.files},deletedRelativePaths:[...n===void 0?[]:[n],...e.document===null?[t]:[]]})||await Cn(e.pmRoot),[]}catch{return await Ze(e.pmRoot).catch(()=>{}),["metadata_derived_index_refresh_failed"]}}function wu(e){return[...e.documentsById.values()].sort((t,n)=>t.candidate.metadata.id.localeCompare(n.candidate.metadata.id)).map(t=>t.candidate)}function ws(e,t,n){return e?.context_fingerprint===t&&e.source_cursor===n}function Eu(e,t,n,r,o){return e.every(i=>(!t||r[i]!==void 0)&&(!n||o[i]!==void 0))}function vu(e){let t=new Map;for(let[n,r]of Object.entries(e.previousEntries)){let o=Jn(n);if(!o)continue;let i=e.includeCollections?Is(r.metadata,e.previousCollections[n]?.collections):r.metadata,s=t.get(i.id);xs(s?.itemFormat,o,e.preferredFormat)&&t.set(i.id,{itemFormat:o,candidate:{metadata:i,body:e.includeBody?e.previousBodies[n]?.body:void 0,item_format:o,item_path:D.join(e.pmRoot,n)}})}return[...t.values()].sort((n,r)=>n.candidate.metadata.id.localeCompare(r.candidate.metadata.id)).map(n=>n.candidate)}function ku(e){return e.forceSourceScan||er()||e.existingCache?.context_fingerprint!==e.contextFingerprint||e.entryKeys.length<e.minimumIndexedItems||!xt(e.existingCache?.directory_signatures,e.directorySignatures)?!1:[!e.includeBody||ws(e.existingBodyCache,e.contextFingerprint,e.existingCache.source_cursor),!e.includeCollections||ws(e.existingCollectionsCache,e.contextFingerprint,e.existingCache.source_cursor)].every(Boolean)&&Eu(e.entryKeys,e.includeBody,e.includeCollections,e.previousBodies,e.previousCollections)}async function Mn(e,t,n,r,o,i={}){let s=i.includeBody!==!1,a=i.includeCollections!==!1,c=ks(),d=Ss(t,n,o,c),u=await Yr(e);u.invalid&&await Ze(e);let f=await Ql(e,d,i.cacheDiagnostics),p=s?await Zl(e,d):null,y=a?await eu(e,d):null;Jl(f,p,y,u.envelope);let _=lu(f,d),v=uu(p,d),b=fu(y,d),C=[...new Set(Object.values(n))],N=await An(e,C),j=Object.keys(_),L=Math.max(1,Math.floor(i.derivedIndexMinimumItems??vs));if(ku({forceSourceScan:i.forceSourceScan===!0,contextFingerprint:d,existingCache:f,existingBodyCache:p,existingCollectionsCache:y,directorySignatures:N,entryKeys:j,minimumIndexedItems:L,includeBody:s,includeCollections:a,previousBodies:v,previousCollections:b}))return vu({pmRoot:e,preferredFormat:t,includeBody:s,includeCollections:a,previousEntries:_,previousBodies:v,previousCollections:b});let U=await Promise.all(C.map(ba=>nu(e,ba,r))),De=er(),V=_u(),je={pmRoot:e,preferredFormat:t,warnings:r,schema:o,extensionFieldNames:c,includeBody:s,includeCollections:a,forceSourceRead:i.forceSourceScan===!0,dispatchReadHooks:De,previousEntries:_,previousBodies:v,previousCollections:b,state:V};await Promise.all(mu(U,je));let ie=await An(e,C),J=xt(N,ie)?ie:{},Kn=V.misses.metadata||Object.keys(_).length!==Object.keys(V.newEntries).length||!xt(f?.directory_signatures,J)||f===null?Es():f.source_cursor;return await pu({pmRoot:e,contextFingerprint:d,sourceCursor:Kn,existingCache:f,previousEntries:_,directorySignatures:J,state:V,minimumIndexedItems:L}),s&&await yu({pmRoot:e,contextFingerprint:d,sourceCursor:Kn,existingBodyCache:p,previousBodies:v,state:V}),a&&await hu({pmRoot:e,contextFingerprint:d,sourceCursor:Kn,existingCollectionsCache:y,previousCollections:b,state:V}),wu(V)}async function Ts(e,t,n,r,o){return(await Mn(e,t,n,r,o,{includeBody:!1})).map(s=>({metadata:s.metadata,body:s.body??""}))}async function Os(e,t,n,r,o){return(await Mn(e,t,n,r,o,{includeBody:!1,includeCollections:!1})).map(s=>({metadata:s.metadata,body:s.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]="d49d73c9-f988-5c3c-a22d-0580ee5526f6")}catch{}})();function he(){let e=No();for(let t of ke()?.relationship_kinds??[])for(let n of t.definitions)e.register(n);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]="924f7718-0527-5967-8ab0-53e8228bd665")}catch{}})();function Ot(e){if(typeof e!="string")return;let t=e.trim().toLowerCase();return t.length>0?t:void 0}function Fn(e){return[e.parent_id,e.child_id,e.source,e.kind,e.holder_id,e.target_id??""].join("\0")}function Iu(e,t){let n=new Set,r=[];for(let o of[...e].sort()){if(n.has(o))continue;n.add(o);let i=[{nodeId:o,children:[...t.get(o)??[]].sort(),nextChild:0}];for(;i.length>0;){let s=i.at(-1),a=s.children[s.nextChild];a===void 0?(r.push(s.nodeId),i.pop()):(s.nextChild+=1,n.has(a)||(n.add(a),i.push({nodeId:a,children:[...t.get(a)??[]].sort(),nextChild:0})))}}return r}function Su(e,t){let n=[...e].sort(),r=Iu(n,t),o=new Set,i=xu(n,t),s=[];for(let a of r.reverse()){if(o.has(a))continue;let c=Tu(a,i,o);(c.length>1||t.get(c[0])?.has(c[0]))&&s.push(c)}return s.sort((a,c)=>a.join("\0").localeCompare(c.join("\0")))}function xu(e,t){let n=new Map(e.map(r=>[r,new Set]));for(let[r,o]of t)for(let i of o)n.get(i)?.add(r);return n}function Tu(e,t,n){let r=[],o=[e];for(n.add(e);o.length>0;){let i=o.pop();r.push(i);for(let s of[...t.get(i)].sort())n.has(s)||(n.add(s),o.push(s))}return r.sort()}function Cs(e){let t=new Map;for(let n of e){let r=Ot(n?.id);r&&!t.has(r)&&t.set(r,n)}return t}function Ou(e,t,n){let r=Ot(t.parent);if(!(!r||!n.has(r)))return{parent_id:r,child_id:e,source:"scalar_parent",kind:"parent",holder_id:e,child_cardinality:"one"}}function Cu(e,t,n,r){let o=Ot(t?.id),i=r.resolve(t?.kind);if(!o||!n.has(o)||!i?.hierarchy)return;let s=i.hierarchyDirection==="source_parent";return{parent_id:s?e:o,child_id:s?o:e,source:"dependency",kind:i.kind,holder_id:e,target_id:o,child_cardinality:s?i.incoming:i.outgoing}}function As(e,t){let n=new Map;for(let[r,o]of e){let i=Ou(r,o,e);i&&n.set(Fn(i),i);for(let s of o.dependencies??[]){let a=Cu(r,s,e,t);a&&n.set(Fn(a),a)}}return[...n.values()].sort((r,o)=>Fn(r).localeCompare(Fn(o)))}function Cy(e,t=he()){return As(Cs(e),t)}function Au(e,t,n){let r=new Set(e.filter(o=>o.child_cardinality==="one").map(o=>o.child_id));return[...t].filter(([o,i])=>i.length>1&&r.has(o)).map(([o,i])=>({child_id:o,parent_ids:[...i],legacy_terminal:n.has(o)&&i.every(s=>n.has(s))})).sort((o,i)=>o.child_id.localeCompare(i.child_id))}function Nu(e,t,n){let r=new Map;for(let i of t){if(i.source!=="dependency")continue;let s=r.get(i.child_id)??new Set;s.add(i.parent_id),r.set(i.child_id,s)}let o=[];for(let[i,s]of e){let a=Ot(s.parent);if(!a||!e.has(a))continue;let c=[...r.get(i)??[]].filter(d=>d!==a).sort();c.length!==0&&o.push({child_id:i,scalar_parent_id:a,dependency_parent_ids:c,legacy_terminal:n.has(i)&&n.has(a)&&c.every(d=>n.has(d))})}return o.sort((i,s)=>i.child_id.localeCompare(s.child_id))}function zn(e,t=r=>r==="closed"||r==="canceled",n=he()){let r=Cs(e),o=As(r,n),i=Ru(o),s=new Set([...r].filter(([,c])=>t(c.status)).map(([c])=>c)),a=Su([...r.keys()],new Map([...i.children_by_parent].map(([c,d])=>[c,new Set(d)]))).map(c=>({item_ids:c,legacy_terminal:c.every(d=>s.has(d))}));return{relations:o,cycles:a,cardinality_violations:Au(o,i.parents_by_child,s),divergences:Nu(r,o,s)}}function Ay(e){return e.source==="scalar_parent"?`${e.parent_id} -> ${e.child_id} (scalar parent on ${e.holder_id})`:`${e.parent_id} -> ${e.child_id} (${e.kind} dependency on ${e.holder_id})`}function Ru(e){let t=new Map,n=new Map;for(let r of e){let o=t.get(r.child_id)??new Set;o.add(r.parent_id),t.set(r.child_id,o);let i=n.get(r.parent_id)??new Set;i.add(r.child_id),n.set(r.parent_id,i)}return{parents_by_child:new Map([...t].map(([r,o])=>[r,[...o].sort()])),children_by_parent:new Map([...n].map(([r,o])=>[r,[...o].sort()]))}}function eo(e,t){let n=new Set(t);return e.every(r=>n.has(r))}function Ny(e,t,n,r,o){let i=Ot(n);if(!i)return;let s=zn(e,r,o),a=zn(t,r,o),c=a.divergences.find(f=>!s.divergences.some(p=>p.child_id===f.child_id&&p.scalar_parent_id===f.scalar_parent_id&&eo(f.dependency_parent_ids,p.dependency_parent_ids)));if(c){let f=[c.scalar_parent_id,...c.dependency_parent_ids].sort();throw new x(`Hierarchy mutation would assign ${c.child_id} to multiple parents: ${f.join(", ")}.`,S.CONFLICT,{code:"hierarchy_parent_divergence_created",source_id:i,target_id:c.child_id,verification_errors:f})}let d=a.cardinality_violations.find(f=>(f.child_id===i||f.parent_ids.includes(i))&&!s.cardinality_violations.some(p=>p.child_id===f.child_id&&eo(f.parent_ids,p.parent_ids)));if(d)throw new x(`Hierarchy mutation would assign ${d.child_id} to multiple parents: ${d.parent_ids.join(", ")}.`,S.CONFLICT,{code:"hierarchy_cardinality_created",source_id:i,target_id:d.child_id,verification_errors:d.parent_ids});let u=a.cycles.find(f=>f.item_ids.includes(i)&&!s.cycles.some(p=>eo(f.item_ids,p.item_ids)));if(u)throw new x(`Hierarchy mutation would create a cycle: ${u.item_ids.join(" -> ")}.`,S.CONFLICT,{code:"hierarchy_cycle_created",source_id:i,verification_errors:u.item_ids})}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="971d929f-12be-5648-93c9-8a9878b40dde")}catch{}})();function $n(e){let t=e?.trim()??"";return/^[A-Za-z][A-Za-z0-9+.-]*:\/\//u.test(t)||/^(?:github|gitlab|jira|linear):/iu.test(t)}function Ne(e){let t=e?.trim().toLowerCase();return t==="global"||t==="external"}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f3f3beb2-1d60-52fe-88ce-1ab3cb9dba0d")}catch{}})();var Du="global";function Ly(e){let t=e?.trim();if(t)return Ne(t)?Du:t}function My(e,t,n){let r=e.trim();return Ne(n)?r:Et(r,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]="e04a91fa-4625-50fd-9bfd-c712126baf0d")}catch{}})();function tt(e){if(typeof e!="string")return;let t=e.trim();if(!(!t||["none","null","n/a","na"].includes(t.toLowerCase())))return t}function Ct(e){let t=tt(e);return t?.toLowerCase()==="no-active-blocker"?void 0:t}function At(e,t,n=!0){let r=tt(e);return n&&(Ne(t)||r!==void 0&&$n(r))}function to(e,t){return At(e,t)?`external\0${e}`:`local\0${e.toLowerCase()}`}function Ns(e,t,n,r){return At(e,t)?r.get(e):n.get(e.toLowerCase())}function et(e,t){let n=e.toLowerCase(),r=t.toLowerCase();return n!==r?n<r?-1:1:e!==t?e<t?-1:1:0}function ju(e){let t=new Map;for(let n of e.dependencies??[]){if(typeof n!="object"||n===null)continue;let r=n,o=tt(r.id);if(!o)continue;let i=typeof r.kind=="string"?r.kind:"related",s=`${i}\0${to(o,r.source_kind)}`,a=t.get(s);a?a.count+=1:t.set(s,{target_id:o,kind:i,count:1})}return t}function Pu(e,t=n=>n==="closed"||n==="canceled"){let n=[];for(let r of e)if(!(typeof r?.id!="string"||r.id.trim().length===0))for(let o of ju(r).values())o.count<2||n.push({holder_id:r.id.trim(),target_id:o.target_id,kind:o.kind,occurrences:o.count,holder_status:r.status,legacy_terminal:t(r.status)});return n.sort((r,o)=>{let i=et(r.holder_id,o.holder_id);if(i!==0)return i;let s=et(r.target_id,o.target_id);return s!==0?s:et(r.kind,o.kind)})}function Lu(e,t,n,r,o){if(typeof n!="object"||n===null)return;let i=tt(n.id);if(!i||to(i,n.source_kind)!==to(t))return;let s=o.resolve(typeof n.kind=="string"?n.kind:"related");if(!(s?.ordering!==!0||(s.precedence??"source_before_target")!=="source_before_target"))return{holder_id:e.id.trim(),target_id:i,dependency_kind:s.kind,holder_status:e.status,legacy_terminal:r(e.status)}}function Mu(e,t=r=>r==="closed"||r==="canceled",n=he()){let r=new Map;for(let o of e){if(typeof o?.id!="string"||o.id.trim().length===0)continue;let i=tt(o.blocked_by);if(i)for(let s of o.dependencies??[]){let a=Lu(o,i,s,t,n);a&&r.set(`${a.holder_id.toLowerCase()}\0${a.target_id.toLowerCase()}\0${a.dependency_kind}`,a)}}return[...r.values()].sort((o,i)=>{let s=et(o.holder_id,i.holder_id);if(s!==0)return s;let a=et(o.target_id,i.target_id);return a!==0?a:et(o.dependency_kind,i.dependency_kind)})}function Fu(e,t=n=>n==="closed"||n==="canceled"){let n=e.filter(c=>typeof c?.id=="string"&&c.id.trim().length>0),r=new Set(n.map(c=>c.id.trim().toLowerCase())),o=new Map,i=(c,d,u,f,p)=>{let y=tt(d);if(!y||r.has(y.toLowerCase())||At(y,void 0,p))return;let _={holder_id:c.id.trim(),target_id:y,kind:u,source:f,holder_status:c.status,legacy_terminal:t(c.status),no_active_blocker_sentinel:y.toLowerCase()==="no-active-blocker"};o.set(`${_.holder_id}::${_.target_id}::${_.kind}::${_.source}`,_)};for(let c of n){i(c,c.parent,"parent","parent",!1),i(c,c.blocked_by,"blocked_by","blocked_by",!0);for(let d of c.dependencies??[]){if(typeof d!="object"||d===null)continue;let u=d;Ne(u.source_kind)||i(c,u.id,typeof u.kind=="string"?u.kind:"related","dependency",!0)}}let s=[...o.values()].sort((c,d)=>c.holder_id.localeCompare(d.holder_id)||c.target_id.localeCompare(d.target_id)||c.kind.localeCompare(d.kind)||c.source.localeCompare(d.source)),a=s.filter(c=>c.legacy_terminal);return{active:s.filter(c=>!c.legacy_terminal),legacy_terminal:a,no_active_blocker_sentinels:s.filter(c=>c.no_active_blocker_sentinel)}}function zu(e){let t=new Map;for(let n of[...e.active,...e.legacy_terminal]){if(n.no_active_blocker_sentinel)continue;let r=n.target_id.trim(),o=r.toLowerCase();t.has(o)||t.set(o,r)}return[...t.values()].sort((n,r)=>n.localeCompare(r))}function $u(e){let t=new Map;for(let n of e){let r=Ct(n.blocked_by);r&&At(r)&&!t.has(r)&&t.set(r,r);for(let o of n.dependencies??[]){if(typeof o!="object"||o===null||!At(o.id,o.source_kind))continue;let i=Ct(o.id);i&&!t.has(i)&&t.set(i,i)}}return[...t.values()].sort((n,r)=>n.localeCompare(r))}var Rs=new WeakMap;function Wy(e){return e.hierarchyIntegrity??Rs.get(e)}function Hu(e,t=he()){let n={};for(let r of e)for(let o of r.dependencies??[]){if(typeof o!="object"||o===null)continue;let i=o.kind;if(typeof i!="string")continue;let s=i.trim().toLowerCase().replaceAll("-","_"),a=t.resolve(i);a&&s!==a.kind&&(n[s]=(n[s]??0)+1)}return Object.fromEntries(Object.entries(n).sort(([r],[o])=>r.localeCompare(o)))}function By(e,t,n){let r=n??he(),o=e.filter(_=>typeof _?.id=="string"&&_.id.trim().length>0),i=new Map(o.map(_=>[_.id.trim().toLowerCase(),_.id.trim()])),s=Fu(o,t),a=zu(s);for(let _ of a)i.set(_.toLowerCase(),_);let c=$u(o),d=new Set(i.keys()),u=new Map;for(let _ of c){let v=_;for(;d.has(v.toLowerCase());)v=`external:${v}`;u.set(_,v),d.add(v.toLowerCase())}let f=o.map(_=>{let v=Ct(_.parent),b=Ct(_.blocked_by),C=(_.dependencies??[]).flatMap(N=>{if(typeof N!="object"||N===null)return[];let j=N,L=Ct(j.id);return L?[{id:Ns(L,j.source_kind,i,u),kind:typeof j.kind=="string"?j.kind:"related"}]:[]});return{id:_.id.trim(),...v?{parent:i.get(v.toLowerCase())}:{},...b?{blocked_by:Ns(b,void 0,i,u)}:{},dependencies:C}}),p=zn(o,t,r),y={graph:Ro.fromItems([...f,...a.map(_=>({id:_})),...c.map(_=>({id:u.get(_)}))],r),details:[...o.map(_=>({id:_.id.trim(),title:_.title,status:_.status,...typeof _.type=="string"&&_.type.trim().length>0?{type:_.type.trim()}:{}})),...a.map(_=>({id:_,title:`[missing] ${_}`,status:"missing"})),...c.map(_=>({id:u.get(_),title:`[external] ${_}`,status:"external"}))],missingIdSet:new Set(a.map(_=>_.toLowerCase())),dangling:s,duplicateRows:Pu(o,t),orderingContradictions:Mu(o,t,r),legacyAliasCounts:Hu(o,r),hierarchyIntegrity:p};return Rs.set(y,p),y}import Uu from"node:fs/promises";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]="4df21a17-43c0-5b63-adf3-657699e6a058")}catch{}})();var Nt="_workspace";function no(e){return nt.join(e,"history",`${Nt}.jsonl`)}function Vu(e,t){return{metadata:{id:Nt,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 ro(e,t=e.length){let n=En();for(let r of e.slice(0,t))n=kn(n,r.patch).document;return vn(n)}function Ds(e){return"documents"in e.metadata&&typeof e.metadata.documents=="object"&&e.metadata.documents!==null&&!Array.isArray(e.metadata.documents)?e.metadata.documents:{}}function oo(e){throw new x(`Workspace history verification failed: ${e.join(", ")}`,S.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 Wu(e,t){let n=nt.resolve(t),r=nt.relative(e,n).replaceAll("\\","/");if(r.length===0||r===".."||r.startsWith("../")||nt.isAbsolute(r))throw new TypeError("Workspace history document path must stay inside the tracker root");return{documentPath:r,absolutePath:n}}async function ih(e){let t=await Be(no(e),Nt),n=In(t);n.ok||oo(n.errors);let r=Ds(t.length===0?Pe:ro(t)),o=[],i=[],s=[],a=[];for(let c of Object.keys(r).sort()){let d;try{let u=Wu(e,nt.resolve(e,c));if(d=await ce(u.absolutePath),d===null){s.push(c);continue}let f=JSON.parse(d);(M(f)===M(r[c])?o:i).push(c)}catch{a.push(c)}}return{ok:i.length===0&&s.length===0&&a.length===0,document_count:Object.keys(r).length,matching_documents:o,mismatched_documents:i,missing_documents:s,unreadable_documents:a}}async function js(e){let t=no(e.pmRoot),n=await Be(t,Nt),r=In(n);r.ok||oo(r.errors);let o=e.idempotencyKey===void 0?void 0:n.find(f=>f.op===`${e.op}:${e.idempotencyKey}`);if(o)return{entry:o,historyPath:t};let i=ue(),s=n.length===0?Pe:ro(n),a=Ds(s),c=a[e.documentPath];if(c!==void 0&&M(c)!==M(e.before))throw new x(`Workspace history state for "${e.documentPath}" changed outside the audited mutation path.`,S.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 d=Vu({...a,[e.documentPath]:e.after},n.length===0?i:s.metadata.created_at),u=Ye({nowIso:i,author:e.author,op:e.idempotencyKey===void 0?e.op:`${e.op}:${e.idempotencyKey}`,before:s,after:d,message:e.message});return await Je(t,u),{entry:u,historyPath:t}}async function sh(e){let t=await X(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await js(e)}finally{await t()}}async function ah(e){let t=await X(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=no(e.pmRoot),r=await Be(n,Nt),o=In(r);o.ok||oo(o.errors);let i=r.length===0?Pe:ro(r),s=Ye({nowIso:ue(),author:e.author,op:e.op,before:i,after:i,message:e.message,context:e.context});return await Je(n,s),{entry:s,historyPath:n}}finally{await t()}}async function Ps(e,t){if(t===e.raw)return!1;let n=t===null?null:JSON.parse(t),r=JSON.parse(e.raw);await W(e.filePath,e.raw);try{(t!==null||e.recordCreation!==!1)&&await js({pmRoot:e.pmRoot,documentPath:nt.relative(e.pmRoot,e.filePath).replaceAll("\\","/"),before:n,after:r,op:e.op,author:e.author,lockTtlSeconds:e.lockTtlSeconds,lockWaitMs:e.lockWaitMs,message:e.message})}catch(o){throw t===null?await Uu.rm(e.filePath,{force:!0}):await W(e.filePath,t),o}return!0}async function ch(e){let t=await X(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{let n=await ce(e.filePath),r=await e.mutate(n);return{changed:await Ps({...e,raw:r.raw},n),result:r.result}}finally{await t()}}async function Ls(e){let t=await X(e.pmRoot,"workspace-history",e.lockTtlSeconds,e.author,!1,!1,e.lockWaitMs);try{return await Ps(e,await ce(e.filePath))}finally{await 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]="0e135793-d2ed-505b-b73e-6db55218d8af")}catch{}})();var $={ok:!1},m=e=>typeof e=="string"?{ok:!0,value:e}:$,T=e=>typeof e=="boolean"?{ok:!0,value:e}:$;function A(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?$:{ok:!0,value:t}}function O(...e){return t=>typeof t=="string"&&e.includes(t)?{ok:!0,value:t}:$}function h(e,t){return n=>{if(!Array.isArray(n)||t!==void 0&&n.length>t)return $;let r=[];for(let o of n){let i=e(o);if(!i.ok)return $;r.push(i.value)}return{ok:!0,value:r}}}function so(e,t){return n=>typeof n=="string"&&n.length>0&&n.length<=e&&n===n.trim()&&(t===void 0||t.test(n))?{ok:!0,value:n}:$}function l(e){return t=>t===void 0?{ok:!0,value:void 0}:e(t)}function Hn(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return $;let n={};for(let[r,o]of Object.entries(t)){let i=e(o);if(!i.ok)return $;n[r]=i.value}return{ok:!0,value:n}}}function I(e){return t=>{if(typeof t!="object"||t===null||Array.isArray(t))return $;let n=t,r={};for(let[o,i]of Object.entries(e)){let s=i(n[o]);if(!s.ok)return $;s.value!==void 0&&(r[o]=s.value)}return{ok:!0,value:r}}}var Bu=I({key:m,values:h(m),required:l(T),aliases:l(h(m)),description:l(m)}),qu=I({command:O("create","update"),option:m,required:l(T),visible:l(T),enabled:l(T)}),Xu=I({name:m,description:l(m),default_status:l(m),folder:l(m),aliases:l(h(m)),required_create_fields:l(h(m)),required_create_repeatables:l(h(m)),options:l(h(Bu)),command_option_policies:l(h(qu))}),Ku=I({id:m,aliases:l(h(m)),roles:l(h(O(...bo))),description:l(m),order:l(A())}),Gu=I({key:m,metadata_key:l(m),front_matter_key:l(m),cli_flag:l(m),cli_aliases:l(h(m)),description:l(m),type:l(O(...wo)),commands:l(h(O(...Eo))),repeatable:l(T),required:l(T),required_on_create:l(T),required_types:l(h(m)),allow_unset:l(T)}),Yu=e=>{if(!Array.isArray(e)||e.length!==2)return $;let[t,n]=e;return typeof t!="string"||typeof n!="string"?$:{ok:!0,value:[t,n]}},Ju=I({type:m,allowed_transitions:h(Yu)}),Qu=l(I({version:l(A({int:!0})),files:l(I({types:l(m),statuses:l(m),fields:l(m),workflows:l(m)})),statuses:l(h(Ku)),fields:l(h(Gu)),workflow:l(I({draft_status:l(m),open_status:l(m),in_progress_status:l(m),blocked_status:l(m),close_status:l(m),canceled_status:l(m)})),type_workflows:l(h(Ju)),unknown_field_policy:l(O(...vo))})),Zu=l(I({preset:l(O(...ko)),ownership_enforcement:l(O("none","warn","strict")),create_mode_default:l(O("progressive","strict")),close_validation_default:l(O("off","warn","strict")),require_close_reason:l(T),parent_reference:l(O("warn","strict_error")),metadata_profile:l(O("core","strict","custom")),force_required_for_stale_lock:l(T),create_default_type:l(m),workflow_enforcement:l(O("off","warn","strict")),duplicate_detection_mode:l(O("off","advisory","strict")),duplicate_detection_threshold:l(A({min:0,max:1})),duplicate_detection_limit:l(A({int:!0,min:0,max:20}))})),ef=I({name:m,disabled:l(T),require_trusted:l(T),require_provenance:l(T),sandbox_profile:l(O("none","restricted","strict")),allowed_capabilities:l(h(m)),blocked_capabilities:l(h(m)),allowed_surfaces:l(h(m)),blocked_surfaces:l(h(m)),allowed_commands:l(h(m)),blocked_commands:l(h(m)),allowed_actions:l(h(m)),blocked_actions:l(h(m)),allowed_services:l(h(m)),blocked_services:l(h(m))}),io=O("block","warn"),tf=e=>typeof e=="string"?io(e):I({global:l(io),project:l(io)})(e),nf=l(I({mode:l(O("off","warn","enforce")),trust_mode:l(O("off","warn","enforce")),pm_max_version_exceeded_mode:l(tf),require_provenance:l(T),trusted_extensions:l(h(m)),default_sandbox_profile:l(O("none","restricted","strict")),allowed_extensions:l(h(m)),blocked_extensions:l(h(m)),allowed_capabilities:l(h(m)),blocked_capabilities:l(h(m)),allowed_surfaces:l(h(m)),blocked_surfaces:l(h(m)),allowed_commands:l(h(m)),blocked_commands:l(h(m)),allowed_actions:l(h(m)),blocked_actions:l(h(m)),allowed_services:l(h(m)),blocked_services:l(h(m)),extension_overrides:l(h(ef))})),Re=so(128),rf=I({harness:so(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environment_keys:l(h(Re,64)),model_environment_keys:l(h(Re,64)),session_environment_keys:l(h(Re,64)),provenance_environment_keys:l(Hn(h(Re,64))),provenance_resolvers:l(Hn(O("ai_agent_version","claude_session_file"))),provenance_unavailable_dimensions:l(h(Re,64)),argv_markers:l(h(Re,64)),client_names:l(h(Re,64))}),of=I({version:A({int:!0}),id_prefix:m,ids:l(I({token_length:l(A({int:!0,min:4,max:12}))})),author_default:m,agent_identity:l(I({probes_enabled:l(T),identity_vocabulary:l(I({version:A({int:!0,positive:!0}),aliases:Hn(so(128,/^[a-z0-9]+(?:-[a-z0-9]+)*$/u))})),harness_signals:h(rf)})),mutation_guard:l(I({require_attributed_author:l(T),secret_guard:l(O("off","advise","block")),stale_in_progress_hours:l(A({int:!0,positive:!0}))})),item_format:l(O("toon","json_markdown")),locks:I({ttl_seconds:A({int:!0}),wait_ms:l(A({int:!0,min:0}))}),checkpoints:l(I({retention_days:l(A({int:!0,positive:!0}))})),output:I({default_format:O("toon","json")}),ux:l(I({deprecation_hints:l(T)})),history:l(I({missing_stream:O("auto_create","strict_error"),compact_policy:l(I({enabled:l(T),max_entries:l(A({int:!0,positive:!0})),trigger:l(O("health_warn","auto"))}))})),validation:l(I({sprint_release_format:O("warn","strict_error"),parent_reference:l(O("warn","strict_error")),metadata_profile:l(O("core","strict","custom")),metadata_required_fields:l(h(m)),lifecycle_stale_blocker_reason_patterns:l(h(m)),lifecycle_closure_like_blocked_reason_patterns:l(h(m)),lifecycle_closure_like_resolution_patterns:l(h(m)),lifecycle_closure_like_actual_result_patterns:l(h(m)),estimate_defaults_by_type:l(Hn(A({int:!0,positive:!0})))})),governance:Zu,workflow:l(I({definition_of_done:h(m)})),testing:l(I({record_results_to_items:T,allow_untrusted_linked_tests:l(T)})),telemetry:l(I({enabled:T,first_run_prompt_completed:l(T),capture_level:l(O("minimal","redacted","max")),endpoint:l(m),installation_id:l(m),retention_days:l(A({int:!0,positive:!0}))})),agent_guidance:l(I({prompt_completed:l(T),declined:l(T),declined_at:l(m),template_version:l(A({int:!0,positive:!0})),last_checked_files:l(h(m))})),item_types:l(I({definitions:h(Xu)})),schema:Qu,context:l(I({default_depth:l(O("brief","standard","deep")),activity_limit:l(A({int:!0,positive:!0})),stale_threshold_days:l(A({int:!0,positive:!0})),sections:l(I({hierarchy:l(T),activity:l(T),progress:l(T),recently_created:l(T),unparented:l(T),blockers:l(T),files:l(T),workload:l(T),staleness:l(T),tests:l(T)}))})),extensions:I({enabled:h(m),disabled:h(m),policy:nf}),search:I({score_threshold:A(),hybrid_semantic_weight:l(A()),max_results:A({int:!0}),embedding_model:m,embedding_corpus_max_characters:l(A()),embedding_batch_size:A({int:!0}),embedding_timeout_ms:l(A({int:!0})),scanner_max_batch_retries:A({int:!0}),provider:l(m),corpus_fields:l(h(m)),mutation_refresh_policy:l(O("cache_only","semantic_configured","semantic_auto")),query_expansion:l(I({enabled:l(T),provider:l(m)})),rerank:l(I({enabled:l(T),model:l(m),top_k:l(A({int:!0,positive:!0}))})),bm25:l(I({k1:l(A()),b:l(A())}))}),providers:I({openai:I({base_url:m,api_key:m,model:m}),ollama:I({base_url:m,model:m})}),vector_store:I({adapter:l(m),collection_name:l(m),qdrant:I({url:m,api_key:m}),lancedb:I({path:m})})});function Ms(e){let t=of(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]="2d377bc4-c624-561c-9856-405c82099070")}catch{}})();var sf={Epic:2880,Feature:480,Story:480,Milestone:2880,Task:120,Issue:60,Bug:60,Chore:30,Decision:15,Plan:120},Fs=120;function ao(e){return typeof e=="number"&&Number.isFinite(e)&&e>0}function $s(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n.toLowerCase(),r);return t}var af=$s(sf),zs=new WeakMap;function cf(e){let t=zs.get(e);if(t)return t;let n=$s(e);return zs.set(e,n),n}function fh(e,t){let n=(e??"").trim().toLowerCase();if(n.length===0)return Fs;if(t){let o=cf(t).get(n);if(ao(o))return Math.floor(o)}let r=af.get(n);return ao(r)?Math.floor(r):Fs}function co(e){let t={};if(e===null||typeof e!="object"||Array.isArray(e))return t;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!ao(r)||(t[o]=Math.floor(r))}return t}import{stat as df}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]="60da76ea-0bd3-56a9-a2bc-d88ba76e1013")}catch{}})();var Un=new Map;function Hs(e){return[...new Set(e.map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}async function lf(e){try{let t=await df(e);return{path:e,mtime_ms:t.mtimeMs,size:t.size}}catch{return{path:e,mtime_ms:null,size:null}}}async function ge(e){let t=Hs(e),n=await Promise.all(t.map(r=>lf(r)));return n.sort((r,o)=>r.path.localeCompare(o.path)),n}function Rt(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],o=t[n];if(r.path!==o.path||r.mtime_ms!==o.mtime_ms||r.size!==o.size)return!1}return!0}function Us(e){return Un.get(e)}function Vn(e,t){let n=Hs(t.tracked_paths),r=[...t.signatures].map(o=>({path:o.path,mtime_ms:o.mtime_ms,size:o.size})).sort((o,i)=>o.path.localeCompare(i.path));Un.set(e,{tracked_paths:n,signatures:r,value:t.value})}function be(e){if(e){Un.delete(e);return}Un.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]="5b95183e-9fd3-55cf-9059-8736f692e96e")}catch{}})();var uf="settings:write",Xs=Symbol("pm.settings.persist_source"),ff=128,_f=new Set(["off","advisory","strict"]);function Vs(e){return structuredClone(So[e])}function mf(e){return e==="minimal"||e==="default"||e==="strict"||e==="custom"?e:w.governance.preset}function Ws(e,t){let n=typeof t.create_default_type=="string"?t.create_default_type.trim():void 0;return n&&n.length>0&&(e.create_default_type=n),(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 pf(e){return e.preset==="custom"?Ws({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):Ws({preset:e.preset},e)}function yf(e){let t=typeof e.create_default_type=="string"?e.create_default_type.trim():void 0,n={};t&&t.length>0&&(n.create_default_type=t),(e.workflow_enforcement==="off"||e.workflow_enforcement==="warn"||e.workflow_enforcement==="strict")&&(n.workflow_enforcement=e.workflow_enforcement),typeof e.require_close_reason=="boolean"&&(n.require_close_reason=e.require_close_reason),_f.has(String(e.duplicate_detection_mode))&&(n.duplicate_detection_mode=e.duplicate_detection_mode);let r=e.duplicate_detection_threshold;[typeof r=="number",Number.isFinite(r),Number(r)>=0,Number(r)<=1].every(Boolean)&&(n.duplicate_detection_threshold=r);let o=e.duplicate_detection_limit;return[typeof o=="number",Number.isSafeInteger(o),Number(o)>=0,Number(o)<=20].every(Boolean)&&(n.duplicate_detection_limit=o),n}function Bn(e){let t=e.governance??{},n=mf(t.preset),r=yf(t);if(n==="custom"){let s=Vs("default"),a=r.require_close_reason??s.require_close_reason;return{preset:n,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,...r,require_close_reason:a,duplicate_detection_mode:r.duplicate_detection_mode??s.duplicate_detection_mode,duplicate_detection_threshold:r.duplicate_detection_threshold??s.duplicate_detection_threshold,duplicate_detection_limit:r.duplicate_detection_limit??s.duplicate_detection_limit}}let o=Vs(n),i=r.require_close_reason??o.require_close_reason;return{preset:n,...o,...r,require_close_reason:i}}function Ks(){return structuredClone(w)}function Gs(e){return e==="cache_only"||e==="semantic_configured"||e==="semantic_auto"?e:w.search.mutation_refresh_policy}function Ys(e){return typeof e=="boolean"?e:w.search.query_expansion.enabled}function Js(e){return typeof e!="string"?w.search.query_expansion.provider:e.trim()}function Qs(e){return typeof e=="boolean"?e:w.search.rerank.enabled}function Zs(e){return typeof e!="string"?w.search.rerank.model:e.trim()}function ea(e){return typeof e=="number"&&Number.isFinite(e)&&Number.isInteger(e)&&e>0?e:w.search.rerank.top_k}function ta(e){if(typeof e!="string")return w.vector_store.collection_name;let n=e.trim().replaceAll(/[^a-zA-Z0-9_-]/g,"_").slice(0,ff);return n.length>0?n:w.vector_store.collection_name}function lo(e){return{present:Array.isArray(e),values:Array.isArray(e)?structuredClone(e):[]}}function hf(e,t){let n=e.schema,r=lo(n?.statuses),o=lo(n?.fields),i=lo(n?.type_workflows);return{source_settings:structuredClone(e),has_source_item_type_definitions:Array.isArray(e.item_types?.definitions),source_item_type_definitions:rt(e.item_types?.definitions),has_source_schema_statuses:r.present,source_schema_statuses:r.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:rt(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 na(e,t){Object.defineProperty(e,Xs,{value:t,writable:!0,configurable:!0,enumerable:!1})}function ra(e){let t=e[Xs];if(!(!t||typeof t!="object"))return t}function Wn(e){let t=structuredClone(e.settings),n=ra(e.settings);return n&&na(t,n),{settings:t,metadata:{has_explicit_item_format:e.metadata.has_explicit_item_format},warnings:[...e.warnings]}}function gf(e,t,n){let r=lt(t);return[n,ut(e,r.files.types,dt.types),ut(e,r.files.statuses,dt.statuses),ut(e,r.files.fields,dt.fields),ut(e,r.files.workflows,dt.workflows)]}async function bf(e,t,n){let r=await ge(t);Vn(e,{tracked_paths:t,signatures:r,value:Wn(n)})}async function wf(e,t,n){try{await bf(e,t,n)}catch{be(e)}}function Bs(e,t){return e.find(n=>n.path===t)}function Ef(e,t,n){for(let r of n){let o=Bs(e,r),i=Bs(t,r);if(!o||!i||!Rt([o],[i]))return!1}return!0}async function uo(e,t,n,r,o){try{let i=await ge(t);if(!Ef(r,i,o)){be(e);return}Vn(e,{tracked_paths:t,signatures:i,value:Wn(n)})}catch{be(e)}}function vf(e,t){let n=lt(e.schema),r=rt(e.item_types?.definitions);if(!t)return{item_type_definitions:r,schema_statuses:n.statuses,schema_fields:n.fields,schema_type_workflows:n.type_workflows};let o=n.type_workflows??[],i=Me(r,t.runtime_item_type_definitions),s=Me(n.statuses,t.runtime_schema_statuses),a=Me(n.fields,t.runtime_schema_fields),c=Me(o,t.runtime_schema_type_workflows);return{item_type_definitions:i?t.has_source_item_type_definitions?rt(t.source_item_type_definitions):[]:r,schema_statuses:s?t.has_source_schema_statuses?structuredClone(t.source_schema_statuses):[]:n.statuses,schema_fields:a?t.has_source_schema_fields?structuredClone(t.source_schema_fields):[]:n.fields,schema_type_workflows:c?t.has_source_schema_type_workflows?structuredClone(t.source_schema_type_workflows):void 0:n.type_workflows}}function Dt(e){return{settings:Ks(),metadata:{has_explicit_item_format:!1},warnings:e?[e]:[]}}function kf(e){if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e.item_format;return t==="toon"||t==="json_markdown"}function _o(e){return[...new Set((e??[]).map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function oa(e){let t=w.agent_guidance,n=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 n=="number"&&Number.isInteger(n)&&n>0?n:t.template_version,last_checked_files:_o(e?.last_checked_files??t.last_checked_files)}}function Y(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function If(e){return e==="off"||e==="warn"||e==="enforce"?e:w.extensions.policy.mode}function Sf(e){return e==="off"||e==="warn"||e==="enforce"?e:w.extensions.policy.trust_mode}function ia(e){return e==="none"||e==="restricted"||e==="strict"?e:w.extensions.policy.default_sandbox_profile}function xf(e){let t=e.name.trim().toLowerCase();if(t.length===0)return null;let n={name:t};e.disabled===!0&&(n.disabled=!0),e.require_trusted===!0&&(n.require_trusted=!0),e.require_provenance===!0&&(n.require_provenance=!0),e.sandbox_profile!==void 0&&(n.sandbox_profile=ia(e.sandbox_profile));let r=Y(e.allowed_capabilities),o=Y(e.blocked_capabilities),i=Y(e.allowed_surfaces),s=Y(e.blocked_surfaces),a=Y(e.allowed_commands),c=Y(e.blocked_commands),d=Y(e.allowed_actions),u=Y(e.blocked_actions),f=Y(e.allowed_services),p=Y(e.blocked_services);return r.length>0&&(n.allowed_capabilities=r),o.length>0&&(n.blocked_capabilities=o),i.length>0&&(n.allowed_surfaces=i),s.length>0&&(n.blocked_surfaces=s),a.length>0&&(n.allowed_commands=a),c.length>0&&(n.blocked_commands=c),d.length>0&&(n.allowed_actions=d),u.length>0&&(n.blocked_actions=u),f.length>0&&(n.allowed_services=f),p.length>0&&(n.blocked_services=p),n}function Tf(e){let t=new Map;for(let n of e??[]){let r=xf(n);r&&t.set(r.name,r)}return[...t.values()].sort((n,r)=>n.name.localeCompare(r.name))}function fo(e){return e==="block"||e==="warn"?e:void 0}function Of(e){if(typeof e=="string")return fo(e);if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let t=fo(e.global),n=fo(e.project);return t===void 0&&n===void 0?void 0:{...t!==void 0?{global:t}:{},...n!==void 0?{project:n}:{}}}}function B(e,t){return Y(e?.[t]??w.extensions.policy[t])}function sa(e){let t=Of(e?.pm_max_version_exceeded_mode);return{mode:If(e?.mode),trust_mode:Sf(e?.trust_mode),...t!==void 0?{pm_max_version_exceeded_mode:t}:{},require_provenance:e?.require_provenance===!0,trusted_extensions:B(e,"trusted_extensions"),default_sandbox_profile:ia(e?.default_sandbox_profile),allowed_extensions:B(e,"allowed_extensions"),blocked_extensions:B(e,"blocked_extensions"),allowed_capabilities:B(e,"allowed_capabilities"),blocked_capabilities:B(e,"blocked_capabilities"),allowed_surfaces:B(e,"allowed_surfaces"),blocked_surfaces:B(e,"blocked_surfaces"),allowed_commands:B(e,"allowed_commands"),blocked_commands:B(e,"blocked_commands"),allowed_actions:B(e,"allowed_actions"),blocked_actions:B(e,"blocked_actions"),allowed_services:B(e,"allowed_services"),blocked_services:B(e,"blocked_services"),extension_overrides:Tf(e?.extension_overrides??w.extensions.policy.extension_overrides)}}function aa(e){return[...new Set((e??[]).map(n=>n.trim().toLowerCase().replaceAll("-","_")))].filter(n=>n.length>0).sort((n,r)=>n.localeCompare(r)).filter(n=>["author","acceptance_criteria","estimated_minutes","close_reason","reviewer","risk","confidence","sprint","release"].includes(n))}function we(e){return[...new Set((e??[]).map(t=>t.trim().toLowerCase()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function F(e,t){return e===void 0?t:e}function q(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function mo(e){return Array.isArray(e)?e:[]}function Cf(e,t,n){return{...t.validation,...e.validation,parent_reference:n.parent_reference,metadata_profile:n.metadata_profile,metadata_required_fields:aa(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:we(e.validation?.lifecycle_stale_blocker_reason_patterns??t.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:we(e.validation?.lifecycle_closure_like_blocked_reason_patterns??t.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:we(e.validation?.lifecycle_closure_like_resolution_patterns??t.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:we(e.validation?.lifecycle_closure_like_actual_result_patterns??t.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:co(e.validation?.estimate_defaults_by_type)}}function Af(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 Nf(e,t){return{...t.search,...e.search,mutation_refresh_policy:Gs(e.search?.mutation_refresh_policy),query_expansion:{...t.search.query_expansion,...e.search?.query_expansion,enabled:Ys(e.search?.query_expansion?.enabled),provider:Js(e.search?.query_expansion?.provider)},rerank:{...t.search.rerank,...e.search?.rerank,enabled:Qs(e.search?.rerank?.enabled),model:Zs(e.search?.rerank?.model),top_k:ea(e.search?.rerank?.top_k)}}}function Rf(e,t){return{adapter:e.vector_store.adapter??t.vector_store.adapter,collection_name:ta(e.vector_store.collection_name),qdrant:{...t.vector_store.qdrant,...e.vector_store.qdrant},lancedb:{...t.vector_store.lancedb,...e.vector_store.lancedb}}}function Df(e,t){return e.item_format==="json_markdown"?"toon":e.item_format??t.item_format}function jf(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 Pf(e,t){return{openai:{...t.providers.openai,...e.providers.openai},ollama:{...t.providers.ollama,...e.providers.ollama}}}function rt(e){let t=(e??[]).map(r=>To(r)).filter(r=>r!==null),n=new Map;for(let r of t)n.set(r.name.toLowerCase(),r);return[...n.values()].sort((r,o)=>r.name.localeCompare(o.name))}function ca(e){let t=Ks(),n=Bn({governance:e.governance??{preset:"default"}});return{...t,...e,item_format:Df(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:Cf(e,t,n),governance:n,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:Af(e,t),agent_guidance:oa(e.agent_guidance??t.agent_guidance),item_types:{definitions:rt(e.item_types?.definitions)},schema:lt(e.schema??t.schema),context:jf(e,t),extensions:{enabled:[...e.extensions.enabled],disabled:[...e.extensions.disabled],policy:sa(e.extensions.policy??t.extensions.policy)},search:Nf(e,t),providers:Pf(e,t),vector_store:Rf(e,t)}}function Lf(e){e.agent_identity=k(e.agent_identity,["probes_enabled","identity_vocabulary","harness_signals"]);let t=e.agent_identity;Object.hasOwn(t,"identity_vocabulary")&&(t.identity_vocabulary=k(q(t.identity_vocabulary),["version","aliases"])),e.agent_identity.harness_signals=mo(e.agent_identity.harness_signals).map(n=>k(q(n),["harness","environment_keys","model_environment_keys","session_environment_keys","provenance_environment_keys","provenance_resolvers","provenance_unavailable_dimensions","argv_markers","client_names"])),e.locks=k(e.locks,["ttl_seconds","wait_ms"]),e.ids=k(e.ids,["token_length"]),e.mutation_guard=k(e.mutation_guard,["require_attributed_author","secret_guard","stale_in_progress_hours"]),e.checkpoints=k(e.checkpoints,["retention_days"]),e.output=k(e.output,["default_format"]),e.ux=k(e.ux,["deprecation_hints"]),e.history=k(e.history,["missing_stream","compact_policy"]),e.validation=k(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=k(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=k(e.workflow,["definition_of_done"]),e.testing=k(e.testing,["record_results_to_items","allow_untrusted_linked_tests"]),e.telemetry=k(e.telemetry,["enabled","first_run_prompt_completed","capture_level","endpoint","installation_id","retention_days"]),e.agent_guidance=k(e.agent_guidance,["prompt_completed","declined","declined_at","template_version","last_checked_files"]),e.item_types=k(e.item_types,["definitions"]),e.schema=k(e.schema,["version","files","statuses","fields","workflow","type_workflows","unknown_field_policy"]),e.schema.files=k(q(e.schema.files),["types","statuses","fields","workflows"]),e.schema.workflow=k(q(e.schema.workflow),["draft_status","open_status","in_progress_status","blocked_status","close_status","canceled_status"]),e.context=k(e.context,["default_depth","activity_limit","stale_threshold_days","sections"]),e.context.sections=k(q(e.context.sections),["hierarchy","activity","progress","blockers","files","workload","staleness","tests"]),e.extensions=k(e.extensions,["enabled","disabled","policy"]),e.extensions.policy=k(q(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=mo(e.extensions.policy.extension_overrides).map(n=>k(q(n),["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=k(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","mutation_refresh_policy","query_expansion","rerank"]),e.search.query_expansion=k(q(e.search.query_expansion),["enabled","provider"]),e.search.rerank=k(q(e.search.rerank),["enabled","model","top_k"]),e.providers=k(e.providers,["openai","ollama"]),e.providers.openai=k(q(e.providers.openai),["base_url","api_key","model"]),e.providers.ollama=k(q(e.providers.ollama),["base_url","model"]),e.vector_store=k(e.vector_store,["adapter","collection_name","qdrant","lancedb"]),e.vector_store.qdrant=k(q(e.vector_store.qdrant),["url","api_key"]),e.vector_store.lancedb=k(q(e.vector_store.lancedb),["path"])}function Mf(e){return{...e,locks:F(e.locks,w.locks),ids:F(e.ids,w.ids),agent_identity:F(e.agent_identity,w.agent_identity),mutation_guard:F(e.mutation_guard,w.mutation_guard),checkpoints:F(e.checkpoints,w.checkpoints),output:F(e.output,w.output),ux:F(e.ux,w.ux),history:F(e.history,w.history),validation:F(e.validation,w.validation),workflow:F(e.workflow,w.workflow),testing:F(e.testing,w.testing),telemetry:F(e.telemetry,w.telemetry),agent_guidance:F(e.agent_guidance,w.agent_guidance),item_types:F(e.item_types,w.item_types),schema:F(e.schema,w.schema),context:F(e.context,w.context),extensions:F(e.extensions,w.extensions),search:F(e.search,w.search),providers:F(e.providers,w.providers),vector_store:F(e.vector_store,w.vector_store)}}function Ff(e,t){return{...e.validation,parent_reference:t.parent_reference,metadata_profile:t.metadata_profile,metadata_required_fields:aa(e.validation?.metadata_required_fields),lifecycle_stale_blocker_reason_patterns:we(e.validation?.lifecycle_stale_blocker_reason_patterns??w.validation.lifecycle_stale_blocker_reason_patterns),lifecycle_closure_like_blocked_reason_patterns:we(e.validation?.lifecycle_closure_like_blocked_reason_patterns??w.validation.lifecycle_closure_like_blocked_reason_patterns),lifecycle_closure_like_resolution_patterns:we(e.validation?.lifecycle_closure_like_resolution_patterns??w.validation.lifecycle_closure_like_resolution_patterns),lifecycle_closure_like_actual_result_patterns:we(e.validation?.lifecycle_closure_like_actual_result_patterns??w.validation.lifecycle_closure_like_actual_result_patterns),estimate_defaults_by_type:co(e.validation?.estimate_defaults_by_type)}}function zf(e){return{...w.search,...e.search,mutation_refresh_policy:Gs(e.search?.mutation_refresh_policy),query_expansion:{...w.search.query_expansion,...e.search?.query_expansion,enabled:Ys(e.search?.query_expansion?.enabled),provider:Js(e.search?.query_expansion?.provider)},rerank:{...w.search.rerank,...e.search?.rerank,enabled:Qs(e.search?.rerank?.enabled),model:Zs(e.search?.rerank?.model),top_k:ea(e.search?.rerank?.top_k)}}}function $f(e){return{default_depth:e.context?.default_depth??w.context.default_depth,activity_limit:e.context?.activity_limit??w.context.activity_limit,stale_threshold_days:e.context?.stale_threshold_days??w.context.stale_threshold_days,sections:{...w.context.sections,...e.context?.sections}}}function Hf(e){return{...e.vector_store,adapter:e.vector_store?.adapter??w.vector_store.adapter,collection_name:ta(e.vector_store?.collection_name),qdrant:{...e.vector_store?.qdrant},lancedb:{...e.vector_store?.lancedb}}}function Uf(e,t,n,r){return{...e,item_format:"toon",validation:Ff(e,t),governance:t,agent_guidance:oa(e.agent_guidance),item_types:{definitions:r.item_type_definitions},schema:{...n,statuses:r.schema_statuses,fields:r.schema_fields,type_workflows:r.schema_type_workflows},search:zf(e),context:$f(e),extensions:{enabled:_o(e.extensions?.enabled),disabled:_o(e.extensions?.disabled),policy:sa(e.extensions?.policy)},vector_store:Hf(e)}}function da(e,t,n){let r=new Set([...Object.keys(t),...Object.keys(n)]);for(let o of r){let i=t[o],s=n[o];if(!Me(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:{};da(c,i,s),Object.keys(c).length>0?e[o]=c:delete e[o];continue}e[o]=structuredClone(s)}}}var la=["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 qs(e,t){let n=Mf(e),r=Bn(n),o=lt(n.schema),i=vf(n,t),s=Uf(n,r,o,i),a=k({...s,governance:pf(r)},la);return Lf(a),a}function Vf(e,t={}){let n=qs(e,t.persist_source);if(t.persist_source){let r=ca(t.persist_source.source_settings);r.item_types={definitions:structuredClone(t.persist_source.runtime_item_type_definitions)},r.schema={...r.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=qs(r,t.persist_source),i=structuredClone(t.persist_source.source_settings);return da(i,o,n),`${JSON.stringify(k(i,la),null,2)}
174
+ `}return`${JSON.stringify(n,null,2)}
175
+ `}async function ua(e){let t=at(e),n=[t];await le({path:t,scope:"project"});let r=Us(e);if(r){let d=await ge(r.tracked_paths);if(Rt(d,r.signatures))return Wn(r.value)}let o=await ge([t]),i;try{i=await ce(t)}catch{return Dt("settings_read_fs_error")}if(i===null){let d=Dt();return await uo(e,[t],d,o,[t]),d}let s=await ge([t]);if(!Rt(o,s))return be(e),ua(e);let a;try{a=JSON.parse(i)}catch{let d=Dt("settings_read_invalid_json");return await uo(e,[t],d,s,[t]),d}let c=Ms(a);if(!c.success){let d=Dt("settings_read_invalid_schema");return await uo(e,[t],d,s,[t]),d}try{let d=ca(c.data),u=gf(e,d.schema,t);n=u;let f=await ge(u),p=await jo(e,d.schema),y=await Po(e,d.schema),_=await ge(u),v={...d,item_types:{definitions:rt([...d.item_types.definitions,...mo(y.type_definitions_from_file)])},schema:y.schema};na(v,hf(c.data,v));let b={settings:v,metadata:{has_explicit_item_format:kf(a)},warnings:[...c.data.item_format==="json_markdown"?["settings_item_format_legacy_json_markdown_coerced_to_toon"]:[],...p.created_paths.map(C=>`runtime_schema_bootstrap_created:${C}`),...y.warnings]};return p.created_paths.length===0?Rt(f,_)?Vn(e,{tracked_paths:u,signatures:_,value:Wn(b)}):be(e):be(e),b}catch{let d=Dt("settings_read_merge_failed");return await wf(e,n,d),d}}async function Oh(e){return(await ua(e)).settings}async function Ch(e,t,n=uf){let r=at(e),o=Vf(t,{persist_source:ra(t)});try{await Ls({pmRoot:e,filePath:r,raw:o,op:n,author:di(void 0,t.author_default),lockTtlSeconds:t.locks.ttl_seconds,lockWaitMs:t.locks.wait_ms,recordCreation:!1}),await te({path:r,scope:"project",op:n})}finally{be(e)}}import Wf from"node:fs/promises";import Bf 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]="58fd6fef-9c13-5c6a-9110-b760461896aa")}catch{}})();function qf(e){return[...new Set(e.filter(t=>t.trim().length>0))].sort((t,n)=>t.localeCompare(n))}function Xf(e,t){return new x(`Missing history stream for ${e}. ${t} requires history streams when settings.history.missing_stream is strict_error.`,S.NOT_FOUND)}async function Kf(e,t){return await xo(Bf.dirname(e)),await(await Wf.open(e,"a")).close(),te({path:e,scope:"project",op:`${t}:history:auto_create`})}async function po(e){return Gf({pmRoot:e.pmRoot,settings:e.settings,itemIds:[e.itemId],commandLabel:e.commandLabel})}async function Gf(e){let t=qf(e.itemIds),n=[],r=[];for(let o of t){let i=ct(e.pmRoot,o);if(!await Le(i)){if(e.settings.history.missing_stream==="strict_error")throw Xf(o,e.commandLabel);r.push(...await Kf(i,e.commandLabel)),r.push(`history_stream_auto_created:${o}`),n.push(o)}}return{auto_created_ids:n,warnings:r}}import ho from"node:fs/promises";import qn from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8b0efe32-43f5-51ed-b1d5-5c26a3ae5bf0")}catch{}})();function Ee(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}function go(e){let t=["--pm-path",e,"init","--defaults","--agent-guidance","skip"];return{suggested_retry:`pm ${t.map(n=>`'${n.replaceAll("'",`'"'"'`)}'`).join(" ")}`,suggested_retry_args:t}}function Xn(e){return new x(`Tracker root is not a directory at ${e}.`,S.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 yo(e){return new x(`Tracker root is not readable at ${e}.`,S.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 Yf(e){let t=qn.resolve(e),n=qn.parse(t).root,r=qn.dirname(t);for(;r!==n;){let o;try{o=await ho.stat(r)}catch(i){if(Ee(i,"ENOTDIR"))throw Xn(e);if(!Ee(i,"ENOENT"))throw i;r=qn.dirname(r);continue}if(!o.isDirectory())throw Xn(e);return}}async function ot(e){let t;try{t=await ho.stat(e)}catch(n){throw Ee(n,"ENOENT")?(await Yf(e),new x(`Tracker is not initialized at ${e}. Tracker root does not exist. Run pm init first.`,S.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:go(e)})):Ee(n,"ENOTDIR")?Xn(e):Ee(n,"EACCES")||Ee(n,"EPERM")?yo(e):n}if(!t.isDirectory())throw Xn(e);if(process.platform!=="win32"&&((t.mode&292)===0||(t.mode&73)===0))throw yo(e);try{await(await ho.opendir(e)).close()}catch(n){throw Ee(n,"EACCES")||Ee(n,"EPERM")?yo(e):n}}async function Jf(e){if(await ot(e),!await Le(at(e)))throw new x(`Tracker is not initialized at ${e}. Run pm init first.`,S.NOT_FOUND,{code:"tracker_not_initialized",reason:"settings_missing",resolved_path:e,nextSteps:["Initialize the selected tracker root with the emitted retry."],recovery:go(e)})}import it from"node:fs/promises";import Qf 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]="bffd3114-3e85-58ae-90c7-eea5069cdb89")}catch{}})();async function Zf(e){try{return await it.access(e),!0}catch{return!1}}function e_(e,t){e&&(e.includes(t)||e.push(t))}function fa(e){return e??$t(ke())}function t_(e){return e==="toon"?["toon","json_markdown"]:e==="json_markdown"?["json_markdown","toon"]:["toon","json_markdown"]}async function _a(e,t,n="pm-",r,o=ve){let i=t.trim(),s=i.startsWith("#")?i.slice(1):i;if(s.length===0)return null;let a=Et(t,n),c=Br(t),d=[...new Set([s,a,c])].filter(p=>p.length>0),u=Object.entries(o),f=t_(r);for(let p of d)for(let[y]of u)for(let _ of f){let v=Yn(e,y,p,_,o);if(await Zf(v))return{id:p,type:y,itemPath:v,item_format:_}}return null}async function ma(e,t={}){let n=await it.readFile(e.itemPath,"utf8");await le({path:e.itemPath,scope:"project"});let r=nn(n,{format:e.item_format,schema:t.schema,extensionFieldNames:fa(t.extensionFieldNames),onWarning:o=>e_(t.warnings,o)});return{raw:n,document:r}}async function n_(e,t,n=ve,r,o){return await ot(e),(await Ts(e,t,n,r,o)).map(s=>s.metadata)}async function fg(e,t,n=ve,r,o){return await ot(e),(await Os(e,t,n,r,o)).map(s=>s.metadata)}async function _g(e,t,n=ve,r,o,i={}){return await ot(e),(await Mn(e,t,n,r,o,{includeBody:!0,forceSourceScan:i.forceSourceScan})).map(a=>({...a.metadata,body:a.body}))}function pa(e){return{async get(t){let n=await _a(e.pmRoot,t,e.settings.id_prefix,e.settings.item_format,e.typeToFolder);if(!n)return null;let{document:r}=await ma(n,{schema:e.settings.schema});return{item:r.metadata,body:r.body}},list:()=>n_(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema)}}async function r_(e,t){let n=new Set(Object.values(t)),r=[];return await Promise.all([...n].map(async o=>{try{let i=await it.readdir(Qf.join(e,o));for(let s of i)for(let a of Ht)if(s.toLowerCase().endsWith(a)){r.push(s.slice(0,-a.length));break}}catch{}})),r}async function o_(e,t,n,r){let o=Et(t,n),i=await r_(e,r);if(i.length===0)return[];let s=Math.max(3,Math.floor(o.length/2));return i.map(c=>({id:c,distance:jt(c,o,s)})).filter(c=>c.distance!==null).sort((c,d)=>c.distance-d.distance).slice(0,3).map(c=>c.id)}async function i_(e,t,n,r){let o=await o_(e,t,n,r),i=["Confirm the active --path/PM_PATH scope, then retry with a valid id."];return o.length>0&&i.unshift(`Did you mean one of: ${o.join(", ")}?`),new x(`Item ${t} not found`,S.NOT_FOUND,{nextSteps:i})}function s_(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 ya(e){let t=e.typeToFolder??Oo(e.settings,ke()).type_to_folder,n=await _a(e.pmRoot,e.id,e.settings.id_prefix,e.settings.item_format,t);if(!n)throw await i_(e.pmRoot,e.id,e.settings.id_prefix,t);let r=await X(e.pmRoot,n.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 ma(n,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames,warnings:o}),a=s.metadata.assignee?.trim(),c=s.metadata.claim_principal?.trim()||a,d=ci(e.author),u=Bn(e.settings);if(a&&c!==d&&!e.force&&!s_(e.op,e.bypassAssigneeConflict)){if(u.ownership_enforcement==="strict")throw new x(`Item ${n.id} is assigned to ${a}. Use --force to override.`,S.CONFLICT);u.ownership_enforcement==="warn"&&o.push(`ownership_warning:assignee_conflict:${n.id}:${a}`)}return{typeToFolder:t,located:n,originalRaw:i,document:s,warnings:o,releaseLock:r}}catch(o){throw await r(),o}}function a_(e,t,n){if(!e.handled||typeof e.result!="object"||e.result===null)return{effectiveTargetItemPath:t,effectiveSerializedAfter:n,skipItemWrite:!1};let r=e.result;return{effectiveTargetItemPath:typeof r.target_item_path=="string"&&r.target_item_path.trim().length>0?r.target_item_path:t,effectiveSerializedAfter:typeof r.contents=="string"?r.contents:n,skipItemWrite:r.skip_write===!0}}async function c_(e){if(!e.skipItemWrite){if(e.effectiveTargetItemPath!==e.originalItemPath){await W(e.originalItemPath,e.originalRaw),await it.rm(e.effectiveTargetItemPath,{force:!0});return}await W(e.originalItemPath,e.originalRaw)}}async function ha(e){let t=await ya({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:n,located:r,originalRaw:o,document:i,warnings:s,releaseLock:a}=t;try{let c=G(i,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),d=G(structuredClone(i),{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),u=await e.mutate(d);if(e.skipNoop===!0&&u.changedFields.length===0)return{item:c.metadata,body:c.body,changedFields:[],warnings:[...s,...u.warnings??[]]};let f=e.resolveHistoryContext?.();d.metadata.updated_at=ue();let p=G(d,{schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames});await Zn({pm_root:e.pmRoot,operation:e.op,before:c,after:p,changed_fields:u.changedFields,sdk:pa({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:n})});let y=await po({pmRoot:e.pmRoot,settings:e.settings,itemId:r.id,commandLabel:e.op}),_="toon",v=Si(p,{format:_,schema:e.settings.schema,extensionFieldNames:e.extensionFieldNames}),b=Yn(e.pmRoot,p.metadata.type,r.id,_,n),C=ct(e.pmRoot,r.id),N=await ft("item_store_write",{op:e.op,pm_root:e.pmRoot,item_id:r.id,source_item_path:r.itemPath,target_item_path:b,history_path:C,item_format:_,before:c,after:p,contents:v}),{effectiveTargetItemPath:j,effectiveSerializedAfter:L,skipItemWrite:U}=a_(N,b,v),De=await Qr(e.pmRoot,e.author),V=[];try{U||await W(j,L),!U&&j!==r.itemPath&&await it.rm(r.itemPath);let ie=Ye({nowIso:p.metadata.updated_at,author:e.author,op:e.op,before:c,after:p,message:e.message,context:f});try{await Je(C,ie)}catch(J){throw await c_({skipItemWrite:U,effectiveTargetItemPath:j,originalItemPath:r.itemPath,originalRaw:o}),J}U||(V=await Zr({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:n,schema:e.settings.schema,itemPath:j,previousItemPath:r.itemPath,document:p}))}finally{await De()}let je=[...await te({path:j,scope:"project",op:e.op,item_id:p.metadata.id,item_type:p.metadata.type,before:c,after:p,changed_fields:u.changedFields}),...await te({path:C,scope:"project",op:`${e.op}:history`,item_id:p.metadata.id,item_type:p.metadata.type,before:c,after:p,changed_fields:u.changedFields})];return Qn({id:p.metadata.id,op:e.op,item_type:p.metadata.type,previous_status:c.metadata.status,status:p.metadata.status,previous:Ut(c.metadata,u.changedFields),current:Ut(p.metadata,u.changedFields),changed_fields:u.changedFields}),{item:p.metadata,body:p.body,changedFields:u.changedFields,warnings:[...s,...u.warnings??[],...y.warnings,...N.warnings,...V,...je]}}finally{await a()}}async function mg(e){return ha(e)}async function pg(e){return ha(e)}async function yg(e){let t=await ya({pmRoot:e.pmRoot,settings:e.settings,id:e.id,op:"delete",author:e.author,force:e.force}),{located:n,originalRaw:r,document:o,warnings:i,releaseLock:s}=t;try{let a=fa(void 0),c=G(o,{schema:e.settings.schema,extensionFieldNames:a});await Zn({pm_root:e.pmRoot,operation:"delete",before:c,after:null,changed_fields:["deleted"],sdk:pa({pmRoot:e.pmRoot,settings:e.settings,typeToFolder:t.typeToFolder})});let d=await po({pmRoot:e.pmRoot,settings:e.settings,itemId:n.id,commandLabel:"delete"}),u=ue(),f=Pe,p=Ye({nowIso:u,author:e.author,op:"delete",before:c,after:f,message:e.message}),y=ct(e.pmRoot,n.id),_=await ft("item_store_delete",{op:"delete",pm_root:e.pmRoot,item_id:n.id,item_path:n.itemPath,history_path:y,before:c}),v=n.itemPath,b=!1;if(_.handled&&typeof _.result=="object"&&_.result!==null){let L=_.result;typeof L.item_path=="string"&&L.item_path.trim().length>0&&(v=L.item_path),L.skip_delete===!0&&(b=!0)}if(e.dryRun===!0)return{item:c.metadata,changedFields:["deleted"],targetPath:v,warnings:[...i,...d.warnings,..._.warnings]};let C=await Qr(e.pmRoot,e.author),N=[];try{b||await it.rm(v);try{await Je(y,p)}catch(L){throw b||await W(v,r),L}b||(N=await Zr({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:t.typeToFolder,schema:e.settings.schema,itemPath:v,document:null}))}finally{await C()}let j=[...await te({path:v,scope:"project",op:"delete",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]}),...await te({path:y,scope:"project",op:"delete:history",item_id:c.metadata.id,item_type:c.metadata.type,before:c,after:f,changed_fields:["deleted"]})];return Qn({id:c.metadata.id,op:"delete",item_type:c.metadata.type,previous_status:c.metadata.status,previous:Ut(c.metadata,Object.keys(c.metadata)),changed_fields:["deleted"]}),{item:c.metadata,changedFields:["deleted"],warnings:[...i,...d.warnings,..._.warnings,...N,...j]}}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]="745b9c3b-538c-558f-b018-b406ca4318f0")}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]="a9b23a46-0bba-5174-8793-dfc37016d1fb")}catch{}})();function d_(e,t){let n=e.trim().toLowerCase();if(n.length===0)return;let r=Math.floor(n.length/3);return t.map(o=>({candidate:o,distance:jt(n,o.toLowerCase(),r)??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 ga(e){return["pm",...e].map(t=>/^[A-Za-z0-9_./:@=-]+$/u.test(t)?t:JSON.stringify(t)).join(" ")}function kg(e){let t=e.command_path.trim().replaceAll(/\s+/gu," "),n=e.token.trim(),r=n.length===0?"<empty>":n,o=[...new Set(e.allowed.map(p=>p.trim()))].filter(Boolean).sort((p,y)=>p.localeCompare(y));if(t.length===0||r.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",d=e.retry_command?void 0:d_(r,o),u=ga([...i,r,...s]),f=e.retry_command??(d?ga([...i,d,...s]):void 0);return new x(`Unknown ${a} ${c} "${r}". Allowed: ${o.join(", ")}${e.message_suffix??""}`,e.exit_code??S.USAGE,{code:"unknown_subcommand",reason:"unknown_positional_token",examples:[...f?[f]:[],...e.examples??[],`pm ${t} --help`],nextSteps:f?[`Retry with the suggested command: ${f}`]:["Choose one value from recovery.allowed_values."],recovery:{attempted_command:u,allowed_values:o,suggested_retry:f,fallback_candidates:e.fallback_candidates}})}export{sl as a,Ie as b,nr as c,f_ as d,__ as e,Wt as f,ar as g,w_ as h,E_ as i,v_ as j,k_ as k,I_ as l,S_ as m,yr as n,hr as o,ni as p,j_ as q,P_ as r,L_ as s,M_ as t,F_ as u,z_ as v,Er as w,ii as x,$_ as y,H_ as z,U_ as A,Ya as B,ci as C,di as D,mi as E,_t as F,nm as G,rm as H,He as I,li as J,W_ as K,ui as L,Ja as M,B_ as N,Yt as O,Za as P,G_ as Q,Qt as R,tn as S,nn as T,Si as U,G as V,Be as W,Wd as X,Um as Y,Vm as Z,Wm as _,_p as $,mp as aa,ml as ba,bt as ca,Ce as da,wt as ea,jp as fa,es as ga,Pp as ha,Ye as ia,Je as ja,El as ka,En as la,Vp as ma,Vr as na,vn as oa,Wp as pa,Bp as qa,is as ra,kn as sa,as as ta,In as ua,Tl as va,qp as wa,Xp as xa,Nt as ya,no as za,ih as Aa,sh as Ba,ah as Ca,ch as Da,Ls as Ea,fh as Fa,Bn as Ga,ua as Ha,Oh as Ia,Ch as Ja,po as Ka,Gf as La,ls as Ma,Br as Na,Et as Oa,ey as Pa,sy as Qa,ay as Ra,cy as Sa,vs as Ta,ql as Ua,Qr as Va,Ey as Wa,Zr as Xa,Mn as Ya,ot as Za,Jf as _a,_a as $a,ma as ab,n_ as bb,fg as cb,_g as db,pa as eb,i_ as fb,mg as gb,pg as hb,yg as ib,kg as jb,$n as kb,Ne as lb,Ly as mb,My as nb,he as ob,Cy as pb,zn as qb,Ay as rb,Ru as sb,Ny as tb,Ct as ub,Pu as vb,Mu as wb,Fu as xb,zu as yb,Wy as zb,By as Ab};
176
+ //# sourceMappingURL=chunk-3ZBI35HU.js.map