@unbrained/pm-cli 2026.8.9 → 2026.8.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +142 -80
- package/dist/cli/commander-usage.js +94 -17
- package/dist/cli/error-guidance.d.ts +10 -0
- package/dist/cli/error-guidance.js +76 -25
- package/dist/cli/help-json-payload.js +51 -16
- package/dist/cli/main.js +11 -6
- package/dist/cli/register-assurance.d.ts +8 -0
- package/dist/cli/register-assurance.js +52 -0
- package/dist/cli/register-files-lookup.js +14 -3
- package/dist/cli/register-mutation.js +30 -9
- package/dist/cli/register-operations.js +16 -11
- package/dist/cli-bundle/bundle-manifest.json +163 -163
- package/dist/cli-bundle/chunks/{chunk-RJC7TPF4.js → chunk-2OOU2AFH.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-2RA2YTHJ.js +33 -0
- package/dist/cli-bundle/chunks/chunk-A2SJGHSI.js +3 -0
- package/dist/cli-bundle/chunks/chunk-DSKYD4LG.js +13 -0
- package/dist/cli-bundle/chunks/chunk-HC3GM6YY.js +194 -0
- package/dist/cli-bundle/chunks/chunk-IUNRVDAI.js +2 -0
- package/dist/cli-bundle/chunks/chunk-W7CPZGSB.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-YC3UF2IO.js → chunk-WMEZHCFI.js} +66 -60
- package/dist/cli-bundle/chunks/{chunk-GMX5YOI3.js → chunk-ZU34C3LH.js} +48 -48
- package/dist/cli-bundle/chunks/chunk-ZXOC6HG5.js +5 -0
- package/dist/cli-bundle/chunks/{register-list-query-BUE7PTCU.js → register-list-query-HAUXVUPY.js} +8 -8
- package/dist/cli-bundle/chunks/register-mutation-7Y5U7ABT.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-EQX3DLAZ.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-UQDTNTLJ.js → register-setup-NOCOOWQY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KNEHLPBF.js → chunk-23FTGO3W.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-6DO4YQWZ.js → chunk-2DL3MRTD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-3AYKXMYX.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-4AHEC74N.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-MRWVJ3ZG.js → chunk-4H5IA6AV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-4SV3ZKG3.js +16 -0
- package/dist/cli-bundle/focused-chunks/chunk-55BIB6DV.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-6JW6Z2P5.js +8 -0
- package/dist/cli-bundle/focused-chunks/chunk-BKPIY34S.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-D4PIWE6D.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-DPO7TEFX.js +31 -0
- package/dist/cli-bundle/focused-chunks/{chunk-3WVHTUAW.js → chunk-E3KCL7AY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-ERAAFLPS.js +153 -0
- package/dist/cli-bundle/focused-chunks/chunk-F6E4JZKG.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-FPSYO5ZG.js +18 -0
- package/dist/cli-bundle/focused-chunks/{chunk-73FIJONU.js → chunk-J5EKAIVD.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KDH5OX3D.js +4 -0
- package/dist/cli-bundle/focused-chunks/chunk-OJ3LVVIS.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-TL5M2PAY.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-UDAZWT25.js +6 -0
- package/dist/cli-bundle/focused-chunks/chunk-VABB4L5Y.js +17 -0
- package/dist/cli-bundle/main.js +13 -13
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +1 -1
- package/dist/cli-bundle/sdk-core.js +41 -39
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +1 -1
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +2 -2
- package/dist/core/diagnostics/remediation.js +9 -9
- package/dist/core/fs/fs-utils.d.ts +10 -0
- package/dist/core/fs/fs-utils.js +16 -4
- package/dist/core/item/item-format.js +3 -32
- package/dist/core/schema/fields-file.d.ts +1 -2
- package/dist/core/schema/fields-file.js +4 -11
- package/dist/core/schema/runtime-schema.js +3 -10
- package/dist/core/schema/status-defs-file.d.ts +1 -2
- package/dist/core/schema/status-defs-file.js +4 -32
- package/dist/core/schema/status-token.d.ts +2 -0
- package/dist/core/schema/status-token.js +32 -0
- package/dist/core/schema/type-workflows.d.ts +1 -2
- package/dist/core/schema/type-workflows.js +4 -11
- package/dist/core/session/session-state.d.ts +47 -0
- package/dist/core/session/session-state.js +207 -6
- package/dist/core/shared/author.d.ts +8 -2
- package/dist/core/shared/author.js +85 -52
- package/dist/core/shared/errors.d.ts +12 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/text-normalization.d.ts +1 -1
- package/dist/core/shared/text-normalization.js +2 -2
- package/dist/sdk/agent/command-recovery.d.ts +4 -0
- package/dist/sdk/agent/command-recovery.js +52 -0
- package/dist/sdk/agent/command-suggestions.d.ts +4 -0
- package/dist/sdk/agent/command-suggestions.js +67 -0
- package/dist/sdk/agent/create-option-policy.d.ts +12 -0
- package/dist/sdk/agent/create-option-policy.js +32 -0
- package/dist/sdk/agent/item-addressing.d.ts +19 -0
- package/dist/sdk/agent/item-addressing.js +208 -0
- package/dist/sdk/agent/refusal-reachability.d.ts +40 -0
- package/dist/sdk/agent/refusal-reachability.js +72 -0
- package/dist/sdk/agent/subcommand-recovery.d.ts +40 -0
- package/dist/sdk/agent/subcommand-recovery.js +84 -0
- package/dist/sdk/cli-bootstrap.d.ts +9 -1
- package/dist/sdk/cli-bootstrap.js +25 -10
- package/dist/sdk/cli-contracts/commander-mutation-options.js +16 -4
- package/dist/sdk/cli-contracts/completeness.js +13 -3
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts/enum-contracts.js +3 -2
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +77 -21
- package/dist/sdk/cli-contracts/registration-helpers.js +10 -2
- package/dist/sdk/cli-contracts/runtime-contracts.js +6 -3
- package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +513 -0
- package/dist/sdk/cli-contracts/schemas/assurance-definition.js +251 -0
- package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +6 -0
- package/dist/sdk/cli-contracts/tool-option-contracts.js +4 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +96 -4
- package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
- package/dist/sdk/cli-contracts/tool-schema.js +49 -6
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +3 -3
- package/dist/sdk/completion.js +9 -3
- package/dist/sdk/config.js +9 -3
- package/dist/sdk/context/semantic-session-attribution.d.ts +32 -0
- package/dist/sdk/context/semantic-session-attribution.js +83 -0
- package/dist/sdk/context-intent-runtime.js +8 -5
- package/dist/sdk/context-signal-store.d.ts +34 -0
- package/dist/sdk/context-signal-store.js +24 -2
- package/dist/sdk/core-governance.d.ts +3 -1
- package/dist/sdk/core-governance.js +5 -3
- package/dist/sdk/core.d.ts +1 -1
- package/dist/sdk/core.js +2 -2
- package/dist/sdk/dependency-flag-validation.d.ts +15 -1
- package/dist/sdk/dependency-flag-validation.js +54 -2
- package/dist/sdk/error-code-catalog.d.ts +13 -0
- package/dist/sdk/error-code-catalog.js +35 -2
- package/dist/sdk/extension.js +18 -17
- package/dist/sdk/files.d.ts +11 -0
- package/dist/sdk/files.js +82 -24
- package/dist/sdk/generated-error-code-catalog.js +104 -13
- package/dist/sdk/governance/assurance-action-contracts.d.ts +7 -0
- package/dist/sdk/governance/assurance-action-contracts.js +5 -0
- package/dist/sdk/governance/assurance-action.d.ts +70 -0
- package/dist/sdk/governance/assurance-action.js +198 -0
- package/dist/sdk/governance/assurance-limits.d.ts +7 -0
- package/dist/sdk/governance/assurance-limits.js +11 -0
- package/dist/sdk/governance/assurance-runtime.d.ts +20 -0
- package/dist/sdk/governance/assurance-runtime.js +131 -0
- package/dist/sdk/governance/assurance.d.ts +432 -0
- package/dist/sdk/governance/assurance.js +689 -0
- package/dist/sdk/governance/health.js +14 -7
- package/dist/sdk/governance/provenance-health.d.ts +13 -0
- package/dist/sdk/governance/provenance-health.js +63 -17
- package/dist/sdk/governance/validate-item-reader.d.ts +13 -0
- package/dist/sdk/governance/validate-item-reader.js +18 -0
- package/dist/sdk/governance/validate.d.ts +2 -2
- package/dist/sdk/governance/validate.js +15 -6
- package/dist/sdk/graph/run.js +8 -3
- package/dist/sdk/index.d.ts +10 -1
- package/dist/sdk/index.js +12 -3
- package/dist/sdk/lifecycle/claim.js +18 -3
- package/dist/sdk/lifecycle/close.js +17 -14
- package/dist/sdk/lifecycle/create.d.ts +2 -0
- package/dist/sdk/lifecycle/create.js +62 -9
- package/dist/sdk/lifecycle/focus.js +13 -3
- package/dist/sdk/lifecycle/plan.js +8 -3
- package/dist/sdk/lifecycle/update-many.js +39 -27
- package/dist/sdk/lifecycle/update.d.ts +6 -1
- package/dist/sdk/lifecycle/update.js +47 -10
- package/dist/sdk/merge/index.d.ts +1 -1
- package/dist/sdk/merge/index.js +3 -3
- package/dist/sdk/merge/install.d.ts +4 -0
- package/dist/sdk/merge/install.js +28 -16
- package/dist/sdk/merge/receipts.d.ts +3 -0
- package/dist/sdk/merge/receipts.js +81 -17
- package/dist/sdk/output-projection.js +24 -4
- package/dist/sdk/provenance.d.ts +38 -0
- package/dist/sdk/provenance.js +64 -2
- package/dist/sdk/query/context.d.ts +2 -0
- package/dist/sdk/query/context.js +24 -10
- package/dist/sdk/query/light-metadata.d.ts +3 -0
- package/dist/sdk/query/light-metadata.js +19 -0
- package/dist/sdk/runtime-extended-actions.js +22 -5
- package/dist/sdk/runtime-primitives.d.ts +2 -0
- package/dist/sdk/runtime-primitives.js +4 -2
- package/dist/sdk/runtime.d.ts +8 -1
- package/dist/sdk/runtime.js +37 -28
- package/dist/sdk/schema-migration.js +7 -9
- package/dist/sdk/similarity-scoring.d.ts +1 -2
- package/dist/sdk/similarity-scoring.js +4 -16
- package/dist/sdk/telemetry.js +7 -4
- package/dist/sdk/traceability/runtime-files-lookup.d.ts +8 -0
- package/dist/sdk/traceability/runtime-files-lookup.js +33 -0
- package/dist/sdk/traceability/source-traceability.d.ts +102 -0
- package/dist/sdk/traceability/source-traceability.js +293 -0
- package/dist/sdk/workspace-snapshot.d.ts +4 -0
- package/dist/sdk/workspace-snapshot.js +24 -11
- package/dist/types.d.ts +8 -2
- package/dist/types.js +2 -2
- package/docs/AGENT_GUIDE.md +3 -1
- package/docs/ASSURANCE.md +132 -0
- package/docs/COMMANDS.md +8 -5
- package/docs/MERGE_SAFETY.md +7 -5
- package/docs/README.md +3 -5
- package/docs/READ_OUTPUT_CONTRACTS.md +2 -2
- package/docs/RELEASING.md +9 -5
- package/docs/SDK.md +44 -8
- package/docs/SDK_AGENT_SESSION_CONTEXT.md +43 -6
- package/docs/SDK_CONTEXT.md +97 -0
- package/docs/SDK_CONTEXT_INTEGRITY.md +18 -3
- package/docs/SDK_EVIDENCE_TRACEABILITY.md +39 -1
- package/docs/SDK_RUNTIME_BOUNDARIES.md +36 -1
- package/docs/TESTING.md +12 -9
- package/docs/agent-task-token-baseline.json +2 -2
- package/docs/generated/AGENT_COMMAND_SURFACE.md +1 -0
- package/marketplace.json +2 -2
- package/package.json +7 -6
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/extensions/templates/index.ts +9 -3
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/sdk/public-surface.json +1028 -48
- package/dist/cli-bundle/chunks/chunk-2DTCZXSD.js +0 -13
- package/dist/cli-bundle/chunks/chunk-5JO6R4BS.js +0 -3
- package/dist/cli-bundle/chunks/chunk-5KN4DZYV.js +0 -194
- package/dist/cli-bundle/chunks/chunk-EF43KODO.js +0 -2
- package/dist/cli-bundle/chunks/chunk-HUV2Z7IS.js +0 -28
- package/dist/cli-bundle/chunks/chunk-MHBVCUF2.js +0 -2
- package/dist/cli-bundle/chunks/chunk-PYO5GZU6.js +0 -5
- package/dist/cli-bundle/chunks/register-mutation-FC3XLVIK.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-YH2WAOXU.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2VVP5RAA.js +0 -153
- package/dist/cli-bundle/focused-chunks/chunk-3GSFUDAI.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-4H6MVCK3.js +0 -16
- package/dist/cli-bundle/focused-chunks/chunk-54TZJ4BM.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-5NK5TJ5D.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-C3GCHDSQ.js +0 -31
- package/dist/cli-bundle/focused-chunks/chunk-JGRSQZJT.js +0 -18
- package/dist/cli-bundle/focused-chunks/chunk-NL57J7BZ.js +0 -4
- package/dist/cli-bundle/focused-chunks/chunk-P6BBIQRG.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-PZAGVQNN.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-QDAO3XEK.js +0 -14
- package/dist/cli-bundle/focused-chunks/chunk-T4IGQCSY.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-U46GQJNY.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-VRXJSGIT.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-XC2ZW3CJ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-ZG54B4XG.js +0 -2
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import{$ as Ae,La as Z,M as D,Ma as Y,Na as ee,R as ht,S as gt,Sa as te,bb as Le,cb as ke,ea as Ce,fa as ve,ha as yt,k as Ie,n as X,ta as wt,za as Et}from"./chunk-2VVP5RAA.js";import{D as Ee,L as be,M as Se,N as Te,O as mt,R as pt,S as g,U as B,V as $,W as b,Y as _t,a as ye,p as z,q as T,r as S,t as J}from"./chunk-NL57J7BZ.js";import{R as we,Y as f,Z as p,ba as xe}from"./chunk-ZG54B4XG.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b9581c92-5e8a-589d-9681-d4d014e6902b")}catch{}})();function Bn(e,t="--limit"){if(e===void 0)return;let n=Number(e);if(!Number.isFinite(n)||n<0)throw new p(`${t} must be a non-negative number`,f.USAGE);return Math.floor(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]="7775a1f2-5167-5853-a2c5-a44d46f8e80e")}catch{}})();var Yn=/\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\b/,Wn=/\bnpm_[A-Za-z0-9]{36}\b/,Gn=/\bxox[baprs]-(?=[A-Za-z0-9-]{20,80}\b)(?=[A-Za-z0-9-]*\d)[A-Za-z0-9-]{20,80}\b/,Kn=/-----BEGIN (?:[A-Z0-9]+ )?PRIVATE KEY-----/,Qn=/\b(?:AKIA|ASIA)[A-Z0-9]{16}\b/,bt=/\b(?:token|secret|password|passwd|api[_-]?key)\s*[:=]\s*["']?([A-Za-z0-9+/=_-]{24,})/gi,Jn=[{action:"append",history_scope:"item"},{action:"claim",history_scope:"item"},{action:"close",history_scope:"item"},{action:"close-many",history_scope:"item"},{action:"close-task",history_scope:"item"},{action:"comments",history_scope:"conditional"},{action:"config",history_scope:"conditional"},{action:"copy",history_scope:"item"},{action:"create",history_scope:"item"},{action:"delete",history_scope:"item"},{action:"deps",history_scope:"conditional"},{action:"discover",history_scope:"item"},{action:"docs",history_scope:"conditional"},{action:"files",history_scope:"conditional"},{action:"focus",history_scope:"conditional"},{action:"gc",history_scope:"conditional"},{action:"history-compact",history_scope:"history"},{action:"history-author-acknowledge",history_scope:"workspace"},{action:"history-redact",history_scope:"history"},{action:"history-repair",history_scope:"history"},{action:"init",history_scope:"workspace"},{action:"install",history_scope:"conditional"},{action:"learnings",history_scope:"conditional"},{action:"notes",history_scope:"conditional"},{action:"package",history_scope:"conditional"},{action:"pause-task",history_scope:"item"},{action:"plan",history_scope:"conditional"},{action:"profile",history_scope:"conditional"},{action:"release",history_scope:"item"},{action:"restore",history_scope:"item"},{action:"schema",history_scope:"conditional"},{action:"start-task",history_scope:"item"},{action:"templates",history_scope:"conditional"},{action:"test",history_scope:"conditional"},{action:"test-all",history_scope:"conditional"},{action:"update",history_scope:"item"},{action:"update-many",history_scope:"item"},{action:"upgrade",history_scope:"conditional"}],Ne=new Map(Jn.map(e=>[e.action,e]));function Xn(e){let t=new Map;for(let r of e)t.set(r,(t.get(r)??0)+1);let n=0;for(let r of t.values()){let o=r/e.length;n-=o*Math.log2(o)}return n}function De(e,t="$",n=new WeakSet){return typeof e=="string"?[{path:t,value:e}]:typeof e!="object"||e===null?[]:n.has(e)?[]:(n.add(e),Array.isArray(e)?e.flatMap((r,o)=>De(r,`${t}[${o}]`,n)):Object.entries(e).flatMap(([r,o])=>De(o,`${t}.${r}`,n)))}function St(e){let t=[];for(let n of De(e)){Yn.test(n.value)&&t.push({rule:"github_token",path:n.path}),Wn.test(n.value)&&t.push({rule:"npm_token",path:n.path}),Gn.test(n.value)&&t.push({rule:"slack_token",path:n.path}),Kn.test(n.value)&&t.push({rule:"private_key",path:n.path}),Qn.test(n.value)&&t.push({rule:"aws_access_key",path:n.path}),bt.lastIndex=0;for(let r of n.value.matchAll(bt)){let o=r[1];if(Xn(o)>=3.5){t.push({rule:"high_entropy_assignment",path:n.path});break}}}return t.filter((n,r,o)=>o.findIndex(i=>i.rule===n.rule&&i.path===n.path)===r)}function Zn(e){let t=e.author.trim()||"unknown";if(e.settings.require_attributed_author&&t.toLowerCase()==="unknown")throw new p("Mutation author is required by workspace policy.",f.USAGE,{code:"mutation_author_required",required:"Pass --author <id>, set PM_AUTHOR, or configure author_default.",nextSteps:["Retry with --author <stable-agent-id>.","Set PM_AUTHOR for this agent session."]});if(e.settings.secret_guard==="off")return{author:t,findings:[],warnings:[],override_applied:!1};let n;try{n=St(e.payload)}catch{return{author:t,findings:[],warnings:["secret_guard_scan_failed_open"],override_applied:!1}}if(n.length===0)return{author:t,findings:n,warnings:[],override_applied:!1};let r=[...new Set(n.map(o=>o.rule))].sort().join(",");if(e.settings.secret_guard==="block"&&e.force!==!0)throw new p(`Mutation blocked by secret guard (${r}). No detected value was logged.`,f.CONFLICT,{code:"mutation_secret_guard_blocked",required:"Remove the credential-shaped content or retry with --force after explicit review.",nextSteps:["Replace the value with a secret-manager reference.","Use pm history-redact if equivalent content already entered history."],recovery:{recovery_mode:"compact",attempted_command:"pm <mutation> [REDACTED]",normalized_args:["[REDACTED]"],suggested_retry:"Remove credential-shaped content, then retry the mutation."}});return{author:t,findings:n,warnings:[`secret_guard_detected:${n.length}:rules=${r}`,...e.settings.secret_guard==="block"&&e.force===!0?["secret_guard_force_override"]:[]],override_applied:e.settings.secret_guard==="block"&&e.force===!0}}function er(e){return Ne.has(e.trim().toLowerCase())}function tr(){return[...Ne.keys()].sort((e,t)=>e.localeCompare(t))}function Bs(e){return Ne.get(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="64312ac7-5a99-5a21-b99f-2bdef1b54a06")}catch{}})();var nr=/\b[a-z][a-z0-9]*-\d+(?:-[a-z0-9]+)*\b/giu;function Re(e){return e.trim().toLowerCase().replace(/\s+/g," ")}function xt(e){return[...new Set(Re(e).match(/[\p{L}\p{N}]+/gu)??[])]}function Tt(e){let t=Re(e);return{normalized:t,tokens:xt(t),issueCodes:[...new Set(t.match(nr)?.map(n=>n.toLowerCase())??[])]}}function It(e,t){let n=new Set(e),r=new Set(t),o=new Set([...n,...r]);if(o.size===0)return 1;let i=0;for(let s of n)r.has(s)&&(i+=1);return i/o.size}function rr(e,t){return or(Tt(e),Tt(t))}function or(e,t){if(e.normalized===t.normalized)return{score:1,reason:"exact_title"};let n=new Set(e.issueCodes);return t.issueCodes.some(r=>n.has(r))?{score:.99,reason:"issue_code"}:{score:It(e.tokens,t.tokens),reason:"title_token_jaccard"}}import ir 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]="376bb9d2-e202-57e7-86c8-d70a7d3fa7ab")}catch{}})();function ne(e){return(e??"in_progress").trim().toLowerCase().replaceAll("-","_")}function sr(e,t){return[e.updated_at,t].map(r=>({value:r,time:Date.parse(r??"")})).filter(r=>typeof r.value=="string"&&Number.isFinite(r.time)).sort((r,o)=>o.time-r.time)[0]?.value??e.updated_at}function At(e,t){let n=Math.max(1,Math.trunc(t.threshold_hours)),r=(t.now??new Date).getTime(),o=ne(t.in_progress_status),i=[];for(let s of e){if(ne(String(s.status))!==o||(s.assignee?.trim().length??0)>0)continue;let a=sr(s,t.last_history_activity?.(s)),c=Date.parse(a);if(!Number.isFinite(c))continue;let d=Math.max(0,Math.floor((r-c)/36e5));d>=n&&i.push({id:s.id,last_activity_at:a,age_hours:d})}return i.sort((s,a)=>a.age_hours-s.age_hours||s.id.localeCompare(a.id)),{threshold_hours:n,count:i.length,items:i,remediation:"Claim active work with `pm claim <id>` or return abandoned work to open with `pm update <id> --status open`."}}async function ar(e,t,n){let r=new Map;return await Promise.all(t.filter(o=>ne(String(o.status))===ne(n.in_progress_status)&&(o.assignee?.trim().length??0)===0).map(async o=>{let i;try{i=await yt(ir.join(e,"history",`${o.id}.jsonl`),o.id)}catch{return}let s=i.map(a=>a.ts).filter(a=>Number.isFinite(Date.parse(a))).sort((a,c)=>Date.parse(c)-Date.parse(a))[0];s&&r.set(o.id,s)})),At(t,{...n,last_history_activity:o=>r.get(o.id)})}import{mkdir as cr,readFile as dr}from"node:fs/promises";import Ct from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="71a8cd89-54fc-5f8a-b93b-9e4a79bb34b6")}catch{}})();function ur(e){let t=e.trim();if(!t)throw new p("--rollback requires a non-empty checkpoint ID",f.USAGE);if(!/^[a-zA-Z0-9._-]+$/.test(t))throw new p("--rollback checkpoint ID must match [a-zA-Z0-9._-]+",f.USAGE);return t}function lr(e,t){let n=t.replace(/[-:.TZ]/g,"").slice(0,14),r=Math.random().toString(36).slice(2,8);return`${e}-${n}-${r}`}function vt(e,t){return Ct.join(e,"checkpoints",t)}function Lt(e,t,n){return Ct.join(vt(e,t),`${n}.json`)}async function fr(e,t,n,r){let o=vt(e,t);await cr(o,{recursive:!0});let i=Lt(e,t,n);return await S(i,`${JSON.stringify(r,null,2)}
|
|
2
|
-
`),i}function mr(e,t){if(!Array.isArray(e.items))throw new p(`Checkpoint ${t} is missing items`,f.GENERIC_FAILURE);return e.items.map(n=>{if(!n||typeof n!="object")throw new p(`Checkpoint ${t} contains an invalid item entry`,f.GENERIC_FAILURE);let r=n;if(typeof r.id!="string"||r.id.trim().length===0)throw new p(`Checkpoint ${t} contains an item entry without ID`,f.GENERIC_FAILURE);if(typeof r.target_updated_at!="string"||r.target_updated_at.trim().length===0)throw new p(`Checkpoint ${t} contains an item entry without target_updated_at`,f.GENERIC_FAILURE);return{id:r.id.trim(),target_updated_at:r.target_updated_at.trim()}})}async function pr(e,t,n,r){let o=ur(n),i=Lt(e,t,o);if(!await z(i))throw new p(`Checkpoint ${o} not found`,f.NOT_FOUND);let s=await dr(i,"utf8"),a;try{a=JSON.parse(s)}catch(u){throw new p(`Checkpoint ${o} contains invalid JSON: ${b(u)}`,f.GENERIC_FAILURE)}if(!a||typeof a!="object")throw new p(`Checkpoint ${o} is invalid`,f.GENERIC_FAILURE);let c=a;if(c.schema_version!==r)throw new p(`Checkpoint ${o} has unsupported schema version`,f.GENERIC_FAILURE);let d=mr(c,o);return{record:c,items:d,path:i,id:typeof c.id=="string"?c.id:o,created_at:typeof c.created_at=="string"?c.created_at:D(),author:typeof c.author=="string"?c.author:"unknown"}}async function _r(e,t){let n=[],r=[];for(let o of e)try{let i=await t(o.id,o.target_updated_at);n.push({id:o.id,status:"restored",changed_fields:i.changed_fields,warnings:i.warnings}),r.push(o.id)}catch(i){n.push({id:o.id,status:"failed",error:b(i)})}return{rows:n,restored_ids:r,failed_count:n.filter(o=>o.status==="failed").length}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4507a449-1c20-5684-9ed8-e72c9bc694c1")}catch{}})();function F(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function hr(e,t){let n=F(t);return!e||!n?null:[...e.search_providers].reverse().find(o=>(F(o.runtime_definition?.name)??F(o.definition?.name))===n)??null}function gr(e,t){let n=F(t);return!e||!n?null:[...e.vector_store_adapters].reverse().find(o=>(F(o.runtime_definition?.name)??F(o.definition?.name))===n)??null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="19ff592c-0746-54e8-a304-2006f4845da2")}catch{}})();function kt(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Oe(e){if(e==="/body"||e.startsWith("/body/"))return"body";if(e==="/metadata"||e.startsWith("/metadata/")||e==="/front_matter"||e.startsWith("/front_matter/")){let n=e.replace(/^\/(?:metadata|front_matter)\/?/,"").split("/")[0];return n?kt(n):"metadata"}let t=e.replace(/^\//,"").split("/")[0];return t?kt(t):"root"}function re(e,t){return t==="body"?e.body:t==="metadata"?e.metadata:t==="root"?e:e.metadata[t]}function yr(e,t){let n=t?.windowStartIndex??0,r=t?.field;if(e.length===0||n>=e.length)return[];let o=wt(),i=[];for(let s=0;s<e.length;s+=1){let a=e[s],c=o,d=Et(o,a.patch),u;d.ok?(u=d.document,o=u):u=c;let m=new Set;for(let l of a.patch)m.add(Oe(l.path)),l.from!==void 0&&m.add(Oe(l.from));let _=[...m].sort((l,h)=>l.localeCompare(h));if(s>=n)if(r!==void 0){if(!m.has(r))continue;let l={field:r,before:re(c,r),after:re(u,r)};i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:[r],changes:[l]})}else{let l=_.map(h=>({field:h,before:re(c,h),after:re(u,h)}));i.push({index:s+1,ts:a.ts,op:a.op,author:a.author,patch_ops:a.patch.length,changed_fields:_,changes:l})}}return 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]="7426082f-94a6-5b4e-9748-d3faab2fe1d4")}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]="4a376062-2e23-5991-80a5-27183909caf3")}catch{}})();var wr=new Set(["none","null","undefined"]);function pa(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new p("Config set parent-reference-policy requires --policy with one of: warn, strict_error (alias: strict)",f.USAGE)}function Er(e){if(typeof e!="string")throw new p("--parent must be a string. Use --unset parent to clear this field.",f.USAGE);let t=e.trim();if(t.length===0)throw new p("--parent must not be empty. Use --parent none to unset.",f.USAGE);if(Dt(t))throw new p(`--parent must not use placeholder token "${t}". Use --unset parent to clear this field.`,f.USAGE);return t}function Dt(e){return wr.has(e.trim().toLowerCase())}function br(e,t){if(t==="strict_error")throw new p(`Parent item "${e}" was not found. Create it first or use --parent none.`,f.USAGE);return{warnings:[`validation_warning:parent_reference_missing:${e}`]}}function Sr(e,t,n){let r=te(e,n),o=te(t,n);if(r!==o)return;let i=t!==o||e!==r?` (normalized from parent "${t}" and item "${e}")`:"";throw new p(`Parent item "${o}" cannot be the same as item "${r}"${i}. Use --unset parent to clear this field.`,f.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d5003dd5-f208-5734-9711-dff935d8c851")}catch{}})();var V="-",Nt=new Set(["actual_result","body","cmd","command","customer_impact","description","environment","expected_result","impact","location","message","note","outcome","repro_steps","resolution","text","title","unblock_note","value","why_now"]);function Rt(e){let t=e.trim();if(t==="")return[];let r=(Cr(t)??t.split(",")).map(o=>o.trim()).filter(Boolean).map(o=>o.toLowerCase());return Array.from(new Set(r)).sort((o,i)=>o.localeCompare(i))}function Ot(e){if(!Array.isArray(e)||e.length===0)return[];let t=[];for(let n of e)if(typeof n=="string")for(let r of Rt(n))t.push(r);return Array.from(new Set(t)).sort((n,r)=>n.localeCompare(r))}function Mt(e){return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim().toLowerCase()).filter(Boolean):[]}function Tr(e){return typeof e!="string"?[]:e.split(";").map(t=>t.trim()).filter(Boolean)}function xr(e,t,n){let r=e.map(s=>s.trim()).filter(Boolean);for(let s of t??[]){let a=s.trim();if(a.includes(";"))throw new p('Acceptance criteria added with --add-ac cannot contain ";" because semicolons delimit stored criteria',f.USAGE,{code:"acceptance_criteria_semicolon_forbidden",required:"Pass one semicolon-free criterion per --add-ac value",why:"A semicolon inside one criterion would be re-read as multiple criteria",nextSteps:["Split the text into repeated --add-ac values, or replace the semicolon with punctuation that is not the storage delimiter"]});a.length>0&&!r.includes(a)&&r.push(a)}let o=[],i=r;for(let s of n??[]){let a=s.trim();if(a.length!==0){if(!i.includes(a)){o.push(a);continue}i=i.filter(c=>c!==a)}}return{criteria:i,unmatchedRemovals:o}}function Ir(e,t){let n=Mt(e);if(!t||t.length===0)return Array.from(new Set(n)).sort((o,i)=>o.localeCompare(i));let r=new Set(n);for(let o of Ot(t))r.add(o);return Array.from(r).sort((o,i)=>o.localeCompare(i))}function Ar(e,t){let n=Array.from(new Set(Mt(e))).sort((o,i)=>o.localeCompare(i));if(!t||t.length===0)return n;let r=new Set(Ot(t));return r.size===0?n:n.filter(o=>!r.has(o))}function Cr(e){if(!e.startsWith("["))return null;let t;try{t=JSON.parse(e)}catch{return null}return t.map(r=>typeof r=="string"||typeof r=="number"||typeof r=="boolean"?String(r):"").filter(r=>r.length>0)}function Me(e){return e.replace(/\r\n/g,`
|
|
3
|
-
`)}function Pt(e){let t=Me(e).trim();if(!t.startsWith("```"))return e;let n=t.split(`
|
|
4
|
-
`);return n.length<2||n.at(-1)?.trim()!=="```"?e:n.slice(1,-1).join(`
|
|
5
|
-
`)}function vr(e){let t=[],n="",r=!1,o=!1;for(let i of e){if(o){n+=i,o=!1;continue}if(i==="\\"){n+=i,o=!0;continue}if(i==='"'){r=!r,n+=i;continue}if(i===","&&!r){t.push(n.trim()),n="";continue}n+=i}return n.trim()&&t.push(n.trim()),t}function zt(e){let t=e.trim();if(t.startsWith('"')&&t.endsWith('"')){try{let n=JSON.parse(t);if(typeof n=="string")return n}catch{}return t.slice(1,-1).replace(/\\"/g,'"')}return e}function Lr(e){let t=e.indexOf("="),n=e.indexOf(":"),r=t>0,o=n>0;return r&&o?Math.min(t,n):r?t:o?n:-1}function kr(e,t){if((t==="--add"||t==="--add-glob")&&(/[./\\]/.test(e)||/\.[a-z]{1,6}$/i.test(e.trim())))return"For file/doc paths use: path=<file-path>[,scope=project|global]. The scope field is optional and defaults to project (example: path=src/api.ts or path=README.md,scope=project). ";if(t!=="--event")return"";let n=e.toLowerCase(),r=n.includes("recur_")||n.includes("recurrence")?' Recurrence list values must stay in one field and use "|" delimiters (for example recur_by_weekday=mon|wed or recur_by_month_day=1|15).':"",o=n.includes("recur_byweekday")?" Use recur_by_weekday (with underscores) for weekday recurrence filters.":"";return`${r}${o}`}function Dr(e,t){let n=e.replaceAll(/\s+/g," ").trim(),r=n.length>160?`${n.slice(0,157)}...`:n,o=kr(e,t);return`Invalid ${t} value "${r}". Expected key=value entries separated by commas. `+o+`Also accepts markdown-style key/value lines (for example "- path: README.md"). Use ${t} ${V} to read piped stdin input.`}function Nr(e){let t=Pt(e).trim();if(t.length===0||!t.includes(`
|
|
6
|
-
`)&&!t.startsWith("-")&&!t.startsWith("*")&&!t.startsWith("+"))return null;let n={},r,o=Me(t).split(`
|
|
7
|
-
`).map(i=>i.trim()).filter(i=>i.length>0);for(let i of o){let s=i.match(/^(?:[-*+]\s+)?([a-zA-Z0-9_.-]+)\s*(=|:)\s*(.*)$/);if(s){let a=s[1].trim();n[a]=zt(s[3].trim()),r=a;continue}if(r&&Nt.has(r.toLowerCase())){n[r]=`${n[r]}
|
|
8
|
-
${i}`;continue}return null}return n}function Rr(e,t){let n=Pt(e).trim();if(!n)throw new p(`${t} cannot be empty`,f.USAGE);let r=Nr(n);if(r)return r;let o={},i,s=vr(n);for(let a of s){let c=Lr(a);if(c>0){let d=a.slice(0,c).trim(),u=zt(a.slice(c+1).trim());o[d]=u,i=d;continue}if(i&&Nt.has(i.toLowerCase())){o[i]=`${o[i]},${a.trim()}`;continue}throw new p(Dr(e,t),f.USAGE)}return o}var Or=/^[A-Za-z]:[\\/]/,Mr=/^(?:[-*+]\s+)?[A-Za-z_][A-Za-z0-9_.-]*\s*=/;function Pr(e){let t=e.trim();return Or.test(t)?!1:Mr.test(t)}function zr(e,t,n){let r=new Set(n.map(i=>i.toLowerCase())),o=Object.keys(e).filter(i=>!r.has(i.toLowerCase()));if(o.length>0)throw new p(`${t} does not recognize key${o.length>1?"s":""} ${o.map(i=>`"${i}"`).join(", ")}. Allowed keys: ${n.join(", ")}.`,f.USAGE);for(let i of Object.keys(e)){let s=i.toLowerCase();if(s!==i){if(Object.hasOwn(e,s))throw new p(`${t} provides key "${i}" more than once after case normalization.`,f.USAGE);e[s]=e[i],delete e[i]}}}async function $r(e){if(process.stdin.isTTY===!0)throw new p(`${e} value "${V}" requires piped stdin input. Pipe content into the command, or end manual stdin with Ctrl+D (Unix/macOS) or Ctrl+Z then Enter (Windows).`,f.USAGE);return process.stdin.setEncoding("utf8"),await new Promise((t,n)=>{let r="";process.stdin.on("data",o=>{r+=o}),process.stdin.on("end",()=>{t(Me(r))}),process.stdin.on("error",o=>{n(o)})})}function Fr(){let e,t,n=async i=>{if(t&&t!==i)throw new p(`Only one option may use "${V}" stdin token per command invocation. Already used by ${t}.`,f.USAGE);return t=i,e||(e=$r(i)),await e};return{resolveValue:async(i,s)=>{if(i!==void 0)return i.trim()!==V?i:await n(s)},resolveList:async(i,s)=>{if(!i)return;let a=i.map((u,m)=>u.trim()===V?m:-1).filter(u=>u>=0);if(a.length===0)return i;if(a.length>1)throw new p(`${s} accepts "${V}" stdin token at most once per command invocation`,f.USAGE);let c=await n(s),d=[...i];return d[a[0]]=c,d}}}function Vr(e,t){let n=Number(e);if(!Number.isFinite(n))throw new p(`Invalid ${t} value "${e}"`,f.USAGE);return n}function Ur(e,t){let n=e.trim(),r=Number(n);if(n===""||!Number.isInteger(r)||r<0)throw new p(`Invalid ${t} value "${e}". Expected a non-negative integer.`,f.USAGE);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="806bf35f-dc7e-55a8-9bb9-64be87111c22")}catch{}})();var Pe={critical:0,high:1,medium:2,low:3,minimal:4},jr=Object.keys(Pe),qr=`numbers 0..4 (0=critical, 1=high, 2=medium, 3=low, 4=minimal) or names (${jr.join(", ")}), case-insensitive`;function oe(e){return new p(`Invalid priority "${e}". Accepted values: ${qr}.`,f.USAGE)}function Hr(e){if(typeof e=="number"){if(Number.isInteger(e)&&e>=0&&e<=4)return e;throw oe(String(e))}if(typeof e!="string")throw oe(String(e));let t=e.trim();if(t.length===0)throw oe(e);let n=t.toLowerCase();if(Object.prototype.hasOwnProperty.call(Pe,n))return Pe[n];if(/^[0-4]$/.test(t))return Number(t);throw oe(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]="bf76a01e-7292-59df-94ca-1e41aaff7365")}catch{}})();var Br=/^[A-Za-z0-9][A-Za-z0-9._/-]*$/,Yr=64;function xa(e){let t=e?.trim().toLowerCase().replaceAll("-","_");if(t==="warn"||t==="strict_error")return t;if(t==="strict")return"strict_error";throw new p("Config set sprint-release-format-policy requires --policy with one of: warn, strict_error (alias: strict)",f.USAGE)}function Wr(e,t,n){let r=t.trim();if(r.length===0)throw new p(`--${e} must not be empty. Use --${e} none to unset.`,f.USAGE);if(r.length<=Yr&&Br.test(r))return{value:r,warnings:[]};let i="Expected 1-64 characters matching [A-Za-z0-9][A-Za-z0-9._/-]* (no spaces).";if(n==="strict_error")throw new p(`Invalid --${e} value "${r}". ${i}`,f.USAGE);return{value:r,warnings:[`validation_warning:${e}_format:${r}`]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d0e997bc-8bdb-5602-8606-73ecf77b2a35")}catch{}})();var $t={open:"open_status",closed:"close_status",canceled:"canceled_status",cancelled:"canceled_status"},Ft="all";function ka(e){if(typeof e!="string")return!1;let t=e.split(",").map(n=>n.trim().toLowerCase()).filter(n=>n.length>0);return t.length===1&&t[0]===Ft}function Gr(e,t){let n=e.trim().toLowerCase();if(n.length===0)return;let r=$t[n];return r?t[r]:Ae(e,t)}function Kr(e){let t=new Set(Object.keys($t));for(let n of e.definitions){t.add(n.id);for(let r of n.aliases)t.add(r)}return[...t]}function Qr(e,t){let n=e.trim().toLowerCase(),r,o=Number.POSITIVE_INFINITY;for(let i of Kr(t)){let s=ye(n,i.toLowerCase(),2);s!==null&&s<o&&(r=i,o=s)}return r}function Jr(e,t,n){if(typeof e!="string")return;let r=n?.strict===!0,o=n?.flagLabel??"--status",i=e.split(",").map(c=>c.trim()).filter(c=>c.length>0);if(i.length===0)return;if(i.filter(c=>c.trim().toLowerCase()===Ft).length>0){if(i.length===1)return;throw new p(`Invalid ${o} value "all". Use it by itself, or omit ${o} to search every status.`,f.USAGE)}let a=[];for(let c of i){let d=Gr(c,t);if(d===void 0){if(r){let u=Qr(c,t);throw new p(`Invalid ${o} value "${c}". Use open|closed|canceled or a configured status id${u?`. Did you mean "${u}"?`:"."}`,f.USAGE)}a.push(c);continue}a.push(d)}return[...new Set(a)]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b7a167e0-3041-5056-a672-ea0a054ed8df")}catch{}})();var Xr={bug:"Issue",bugfix:"Issue",defect:"Issue",incident:"Issue",enhancement:"Feature",story:"Feature",userstory:"Feature","user-story":"Feature","user story":"Feature",change:"Chore",ticket:"Task",todo:"Task"};function Zr(e){if(e!==void 0)return Xr[e.trim().toLowerCase()]}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="6d11dc0f-e313-5b39-965d-6bc84ad52966")}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]="43a56374-808c-5fa6-bd6c-5d93175df0d2")}catch{}})();function Vt(e,t){return xe(e,t)}function eo(e,t,n){let r={};for(let o of t.command_to_fields.get(n)??[]){let i=ht(e,o);i!==void 0&&(r[o.metadata_key]=gt(o,i))}return r}function to(e,t){for(let[n,r]of Object.entries(t)){let o=e[n];if(Array.isArray(r)){if(Array.isArray(o)){let i=o.map(a=>String(a));if(!r.map(a=>String(a)).every(a=>i.includes(a)))return!1;continue}if(!Vt(o,r[r.length-1]))return!1;continue}if(!Vt(o,r))return!1}return!0}import{spawnSync as jt}from"node:child_process";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="12bfc6e7-8979-58e8-8276-98cc859f3e32")}catch{}})();var no="PM_DISABLE_OLLAMA_AUTO_DEFAULTS",ro="PM_OLLAMA_MODEL",oo="http://localhost:11434",io="qwen3-embedding:0.6b",so=".agents/pm/search/lancedb/",ao=1500,co=2500,uo=/qwen.*(?:embed|embedding)|(?:embed|embedding).*qwen/i,lo=/embed|embedding/i,I=g;function fo(){let e=I(process.env[no]);if(!e)return!1;let t=e.toLowerCase();return t==="1"||t==="true"||t==="yes"}function Ut(e){return e.some(t=>I(t)!==null)}function mo(e){let t=I(e);return!!(t&&t.toLowerCase()!=="ollama")}function po(e){let t=I(e);return!!(t&&t.toLowerCase()!=="lancedb")}function _o(e){return mo(e.search?.provider)||po(e.vector_store?.adapter)||Ut([e.providers?.openai?.base_url,e.providers?.openai?.model,e.providers?.openai?.api_key])?!0:Ut([e.vector_store?.qdrant?.url,e.vector_store?.qdrant?.api_key])}function ho(){let e=jt("ollama",["--version"],{encoding:"utf8",timeout:ao});return e.error?!1:e.status===0}function go(e){let t=e.split(/\r?\n/).map(i=>i.trim()).filter(i=>i.length>0);if(t.length===0)return null;let n=t.map(i=>i.split(/\s+/)[0]?.trim()).filter(i=>!!(i&&i.length>0)).filter(i=>i.toUpperCase()!=="NAME");if(n.length===0)return null;let r=n.find(i=>uo.test(i));return r||(n.find(i=>lo.test(i))??null)}function yo(e){let t=I(e.providers?.ollama?.model);if(t)return t;let n=I(process.env[ro]);if(n)return n;let r=jt("ollama",["list"],{encoding:"utf8",timeout:co});if(!r.error&&r.status===0){let o=go(typeof r.stdout=="string"?r.stdout:"");if(o)return o}return null}function wo(e){return{baseUrl:I(e.providers?.ollama?.base_url)===null,model:I(e.providers?.ollama?.model)===null,lancedbPath:I(e.vector_store?.lancedb?.path)===null,embeddingModel:I(e.search?.embedding_model)===null}}function Eo(e){return e.baseUrl||e.model||e.lancedbPath||e.embeddingModel}function bo(e,t,n){if(!t.baseUrl&&!t.model)return;let r=e.providers??={},o=r.ollama??={};t.baseUrl&&(o.base_url=oo),t.model&&(o.model=n)}function So(e,t){if(!t.lancedbPath)return;let n=e.vector_store??={},r=n.lancedb??={};r.path=so}function To(e,t,n){if(!t.embeddingModel)return;let r=e.search??={};r.embedding_model=n}function ie(e){let t={settings:e,auto_ollama_defaults_applied:!1};if(fo()||_o(e))return t;let n=wo(e);if(!Eo(n)||n.model&&!ho())return t;let r=structuredClone(e),o=yo(r);return o?(bo(r,n,o),So(r,n),To(r,n,o),{settings:r,auto_ollama_defaults_applied:!0}):{...t,auto_ollama_defaults_skipped_reason:"no_installed_embedding_model",auto_ollama_defaults_remediation:`Run ollama pull ${io} or configure providers.ollama.model explicitly (and search.embedding_model if you need an override).`}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d8d5f7e9-5293-564b-bc44-f5ba30336893")}catch{}})();var Ao="reindex";import rn 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]="b5ce7132-0024-5d42-9cb8-585933beb7c7")}catch{}})();var Co=3e4;function N(e,t,n=Co){let r=e??n;if(!Number.isFinite(r)||r<=0)throw new Error(`${t} timeout must be a positive finite number`);return Math.floor(r)}function R(e,t){if(e)return e;if(typeof globalThis.fetch=="function")return globalThis.fetch.bind(globalThis);throw new Error(`${t} execution requires a fetch implementation`)}async function vo(e){try{return(await e.text()).replaceAll(/\s+/g," ").trim()}catch(t){return`(failed to read response body: ${b(t)})`}}async function se(e){let t=new AbortController,n=setTimeout(()=>{t.abort()},e.timeoutMs);try{let r;try{r=await e.fetcher(e.endpoint,{method:e.method,headers:e.headers,body:JSON.stringify(e.body),signal:t.signal})}catch(o){throw o instanceof Error&&o.name==="AbortError"?new Error(`${e.requestLabel} timed out after ${e.timeoutMs}ms`):new Error(`${e.requestLabel} execution failed: ${b(o)}`)}if(!r.ok){let o=await vo(r),i=o.length>0?`: ${o}`:"";throw new Error(`${e.requestLabel} failed with status ${r.status} ${r.statusText}${i}`)}try{return await r.json()}catch(o){throw new Error(`${e.responseLabel} JSON parse failed: ${b(o)}`)}}finally{clearTimeout(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]="af754be6-8026-530a-8a20-b03d4ed742e1")}catch{}})();function Xa(e,t){let n=g(e);if(!n)return"unconfigured";let r=g(t);return r&&r.toLowerCase()===n.toLowerCase()?"configured":"auto-detected"}function Lo(e){let t=B(e),n=t.toLowerCase();return n.endsWith("/embeddings")?t:n.endsWith("/v1")?`${t}/embeddings`:`${t}/v1/embeddings`}function Bt(e){let t=e.search?.embedding_model;return g(t)||null}function ko(e){let t=g(e.providers?.openai?.base_url),n=g(e.providers?.openai?.model);if(!t||!n)return null;let r=Bt(e),o=g(e.providers?.openai?.api_key);return{name:"openai",base_url:t,model:r??n,...o?{api_key:o}:{}}}function Do(e){let t=g(e.providers?.ollama?.base_url),n=g(e.providers?.ollama?.model);if(!t||!n)return null;let r=Bt(e);return{name:"ollama",base_url:t,model:r??n}}function Yt(e){let t=(Array.isArray(e)?e:[e]).map(n=>n.trim()).filter(n=>n.length>0);if(t.length===0)throw new Error("Embedding input must include at least one non-empty string");return t}function No(e){let t=[],n=[],r=new Map;for(let o of e){let i=r.get(o);if(i===void 0){let s=t.length;t.push(o),r.set(o,s),n.push(s);continue}n.push(i)}return{uniqueInputs:t,originalToUniqueIndex:n}}function Ro(e){let t=e.map((r,o)=>({embedding:r.embedding,index:r.index,position:o}));if(t.some(r=>r.index!==void 0)){for(let r of t)if(!Number.isInteger(r.index))throw new TypeError(`OpenAI embedding response entry at position ${r.position} is missing a valid integer index`);return[...t].sort((r,o)=>{let i=r.index-o.index;return i!==0?i:r.position-o.position})}return t}function ze(e){let t=ko(e),n=Do(e),r=[t,n].filter(a=>a!==null),o=g(e.search?.provider),i=o?o.toLowerCase():null;return{active:(i?r.find(a=>a.name===i):void 0)??r[0]??null,available:r}}function Ht(e){let t=B(e.base_url);return e.name==="openai"?{provider:"openai",endpoint:Lo(t),model:e.model}:{provider:"ollama",endpoint:`${t}/api/embed`,model:e.model}}function Oo(e,t){let n=Yt(t);return e.name==="openai"?{target:Ht(e),method:"POST",headers:{"content-type":"application/json",...e.api_key?{authorization:`Bearer ${e.api_key}`}:{}},body:{model:e.model,input:n.length===1?n[0]:n}}:{target:Ht(e),method:"POST",headers:{"content-type":"application/json"},body:{model:e.model,input:n}}}function Mo(e,t){if(e.name==="openai"){let o=t.data;if(!Array.isArray(o)||o.length===0)throw new Error("OpenAI embedding response must include a non-empty data array");return Ro(o).map((s,a)=>{let c=s.embedding;if(!$(c))throw new Error(`OpenAI embedding response entry at index ${a} is missing a numeric embedding vector`);return[...c]})}let n=t.embedding;if($(n))return[[...n]];let r=t.embeddings;if(Array.isArray(r)&&r.length>0)return r.map((o,i)=>{if(!$(o))throw new Error(`Ollama embedding response entry at index ${i} is missing a numeric embedding vector`);return[...o]});throw new Error("Ollama embedding response must include embedding or embeddings vectors")}async function Wt(e,t,n={}){let r=N(n.timeout_ms,"Embedding request"),o=R(n.fetcher,"Embedding request"),i=Yt(t),s=No(i),a=Oo(e,s.uniqueInputs),c=await se({endpoint:a.target.endpoint,method:a.method,headers:a.headers,body:a.body,timeoutMs:r,fetcher:o,requestLabel:"Embedding request",responseLabel:"Embedding response"}),d=Mo(e,c);if(d.length!==s.uniqueInputs.length)throw new Error(`Embedding response cardinality mismatch: expected ${s.uniqueInputs.length} vector(s), received ${d.length}`);return s.originalToUniqueIndex.map(u=>[...d[u]])}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="61c0153b-8fa5-5c26-aa88-ca9807f2d160")}catch{}})();var ae=["title","description","tags","status","type","priority","assignee","parent","goal","value","why_now","risk","confidence","estimated_minutes","acceptance_criteria","resolution","expected_result","actual_result","body","comments","notes","learnings","reminders","events","dependencies","plan"];function $e(e){let t=e?.search?.corpus_fields;if(!Array.isArray(t))return[...ae];let n=new Set(ae),r=Array.from(new Set(t.filter(o=>typeof o=="string").map(o=>o.trim()).filter(o=>o.length>0&&n.has(o))));return r.length>0?r:[...ae]}var Po=8e3,Fe=3200,O="...[semantic corpus truncated]",zo="search_embedding_corpus_max_characters_invalid:using_provider_default";function C(e){return e.map(t=>t==null?"":String(t).trim()).filter(t=>t.length>0).join(" ")}function $o(e){return(e.reminders??[]).map(t=>C([t.at,t.text]))}function Fo(e){return(e.events??[]).map(t=>C([t.start_at,t.end_at,t.title,t.description,t.location,t.all_day===!0?"all day":void 0,t.timezone,t.recurrence?.freq,t.recurrence?.interval,t.recurrence?.count,t.recurrence?.until,t.recurrence?.by_weekday?.join(" "),t.recurrence?.by_month_day?.join(" "),t.recurrence?.exdates?.join(" ")]))}function Vo(e,t){e.push(t.title,t.body,t.status,t.owner,t.evidence,t.blocked_reason,t.superseded_by);for(let n of t.linked_items??[])e.push(`${n.kind} ${n.id}`,n.note);for(let n of t.files??[])e.push(n.path,n.note);for(let n of t.tests??[])e.push(n.command,n.path,n.note);for(let n of t.docs??[])e.push(n.path,n.note)}function Uo(e,t){for(let n of t.plan_decisions??[])e.push(n.decision,n.rationale,n.evidence);for(let n of t.plan_discoveries??[])e.push(n.text);for(let n of t.plan_validation??[])e.push(n.text,n.command,n.expected)}function tc(e){let t=[];t.push(e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context);for(let n of e.plan_steps??[])Vo(t,n);return Uo(t,e),t.filter(n=>typeof n=="string"&&n.length>0).join(" ")}function jo(e){let t=(e.plan_steps??[]).map(s=>C([s.order,s.id,s.title,s.body,s.status,s.owner,s.evidence,s.blocked_reason,s.superseded_by,(s.linked_items??[]).map(a=>C([a.kind,a.id,a.note])).join(" "),(s.files??[]).map(a=>C([a.path,a.note])).join(" "),(s.tests??[]).map(a=>C([a.command,a.path,a.note])).join(" "),(s.docs??[]).map(a=>C([a.path,a.note])).join(" ")])),n=(e.plan_decisions??[]).map(s=>C([s.decision,s.rationale,s.evidence,s.step_id])),r=(e.plan_discoveries??[]).map(s=>C([s.text,s.step_id])),o=(e.plan_validation??[]).map(s=>C([s.text,s.command,s.expected]));if([e.plan_mode,e.plan_scope,e.plan_harness,e.plan_resume_context,...t,...n,...r,...o].some(s=>s!==void 0))return{mode:e.plan_mode,scope:e.plan_scope,harness:e.plan_harness,resume_context:e.plan_resume_context,steps:t,decisions:n,discoveries:r,validation:o}}function A(e){return typeof e=="string"&&e.trim().length>0}var qo={title:e=>e.metadata.title,description:e=>e.metadata.description,tags:e=>e.metadata.tags,status:e=>e.metadata.status,type:e=>e.metadata.type,priority:e=>typeof e.metadata.priority=="number"?e.metadata.priority:void 0,assignee:e=>A(e.metadata.assignee)?e.metadata.assignee:void 0,parent:e=>A(e.metadata.parent)?e.metadata.parent:void 0,goal:e=>A(e.metadata.goal)?e.metadata.goal:void 0,value:e=>A(e.metadata.value)?e.metadata.value:void 0,why_now:e=>A(e.metadata.why_now)?e.metadata.why_now:void 0,risk:e=>A(e.metadata.risk)?e.metadata.risk:void 0,confidence:e=>e.metadata.confidence!==void 0&&e.metadata.confidence!==null?e.metadata.confidence:void 0,estimated_minutes:e=>typeof e.metadata.estimated_minutes=="number"?e.metadata.estimated_minutes:void 0,acceptance_criteria:e=>A(e.metadata.acceptance_criteria)?e.metadata.acceptance_criteria:void 0,resolution:e=>A(e.metadata.resolution)?e.metadata.resolution:void 0,expected_result:e=>A(e.metadata.expected_result)?e.metadata.expected_result:void 0,actual_result:e=>A(e.metadata.actual_result)?e.metadata.actual_result:void 0,body:e=>e.body,comments:e=>(e.metadata.comments??[]).map(t=>t.text),notes:e=>(e.metadata.notes??[]).map(t=>t.text),learnings:e=>(e.metadata.learnings??[]).map(t=>t.text),reminders:e=>$o(e.metadata),events:e=>Fo(e.metadata),dependencies:e=>(e.metadata.dependencies??[]).map(t=>({id:t.id,kind:t.kind})),plan:e=>jo(e.metadata)};function Gt(e,t={}){let n=t.fields??ae,r={};for(let o of n){let i=qo[o];if(!i)continue;let s=i(e);s!==void 0&&(r[o]=s)}return r}function Ho(e){return e?.trim().toLowerCase()==="ollama"?Fe:Po}function U(e,t){let n=Ho(e),r=_t(t);return r!==null?{maxCharacters:r,warning:null}:{maxCharacters:n,warning:t==null?null:zo}}function Ve(e,t={}){let n=JSON.stringify(Gt(e,{fields:t.fields})),r=U(t.providerName,t.maxCharacters).maxCharacters;if(n.length<=r)return n;if(r<=O.length)return O.slice(0,r);let o=Math.max(0,r-O.length);return`${n.slice(0,o)}${O}`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2c518b97-bc75-5e3f-91e8-d6779d565558")}catch{}})();function Bo(e,t){let n=e.search.embedding_batch_size,r=e.search.embedding_timeout_ms,o=e.search.scanner_max_batch_retries,i=Number.isFinite(n)&&n>0?Math.floor(n):1,s=Number.isFinite(r)&&r>0?Math.floor(r):3e4,a=Number.isFinite(o)&&o>=0?Math.floor(o):0;return{batchSize:i,timeoutMs:s,maxRetries:a,maxBatchInputCharacters:Number.POSITIVE_INFINITY,maxInputCharacters:t}}function Yo(e,t,n){let r=[],o=[],i=0;for(let s of e){let a=o.length>=t,c=o.length>0&&Number.isFinite(n)&&i+s.length>n;(a||c)&&(r.push(o),o=[],i=0),o.push(s),i+=s.length}return r.push(o),r}function Wo(e,t){return e.name!=="ollama"?t:{...t,maxBatchInputCharacters:Fe}}function Go(e,t){if(!Number.isFinite(t)||t<=0||e.length<=t)return e;let n=Math.max(0,t-O.length);return`${e.slice(0,n)}${O}`.slice(0,t)}function Kt(e){let t=b(e).toLowerCase();return t.includes("timed out")||t.includes("timeout")}function Ko(e,t,n,r,o,i){let s=`Embedding batch ${t} failed after ${o} attempt(s): ${b(i)}`,a=`provider=${e.name} model=${e.model} batch_size=${n} timeout_ms=${r}`;return Kt(i)?`${s} (${a}; guidance=check provider availability or lower search.embedding_batch_size, raise search.embedding_timeout_ms, or run keyword search while semantic indexing catches up)`:`${s} (${a})`}async function Ue(e,t,n,r,o,i){let s=null;for(let a=0;a<=o;a+=1)try{let c=await Wt(e,t,{timeout_ms:r});return a>0&&i.push(`search_embedding_batch_retry_succeeded:batch=${n}:attempt=${a+1}:size=${t.length}`),c}catch(c){if(s=c,Kt(c)&&t.length>1){let d=Math.ceil(t.length/2),u=t.slice(0,d),m=t.slice(d);return i.push(`search_embedding_batch_split_after_timeout:batch=${n}:size=${t.length}:parts=${u.length}|${m.length}`),[...await Ue(e,u,`${n}.1`,r,o,i),...await Ue(e,m,`${n}.2`,r,o,i)]}if(a<o){let d=Math.min(1e3*2**a,8e3);await new Promise(u=>setTimeout(u,d))}}throw new Error(Ko(e,n,t.length,r,o+1,s))}async function je(e,t,n,r={}){if(n.length===0)return{vectors:[],warnings:[]};let o=[],i=U(e.name,t.search.embedding_corpus_max_characters);i.warning&&o.push(i.warning);let s=Wo(e,Bo(t,i.maxCharacters)),a=0,c=n.map(_=>{let l=Go(_,s.maxInputCharacters);return l.length<_.length&&(a+=1),l});a>0&&o.push(`search_embedding_input_truncated:count=${a}:max_characters=${s.maxInputCharacters}`);let d=Yo(c,s.batchSize,s.maxBatchInputCharacters),u=[],m=0;for(let _=0;_<d.length;_+=1){let l=d[_];r.onProgress?.({batch_index:_+1,batch_total:d.length,batch_size:l.length,completed_inputs:m,total_inputs:c.length,phase:"start"}),u.push(...await Ue(e,l,String(_+1),s.timeoutMs,s.maxRetries,o)),m+=l.length,r.onProgress?.({batch_index:_+1,batch_total:d.length,batch_size:l.length,completed_inputs:m,total_inputs:c.length,phase:"complete"})}return{vectors:u,warnings:o}}import{mkdir as Qo,readFile as Jo,stat as Be,unlink as Xo}from"node:fs/promises";import{basename as Qt,dirname as qe,isAbsolute as Zo,join as ei,resolve as Ye}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]="7bac9506-dcad-5e52-848b-3e2631d4936c")}catch{}})();var We="pm_items",ti=/[^a-zA-Z0-9_-]/g,ni=128,ri=".pm-cli-local-vectors",He=1,M=new Map;function G(e){return(g(e.collection_name)??We).replaceAll(ti,"_").slice(0,ni)}function ce(e){if(!$(e)||e.length===0)throw new Error("Vector values must be a non-empty numeric array");return[...e]}function Xt(e){if(!Number.isFinite(e)||e<=0)throw new Error("Vector query limit must be a positive number");return Math.floor(e)}function oi(e){let t=e.result;if(!Array.isArray(t))throw new TypeError("Qdrant query response must include a result array");let n=t.map((r,o)=>{let i=r.id,s=typeof i=="number"?String(i):i,a=g(s);if(!a)throw new Error(`Qdrant query response entry at index ${o} is missing a non-empty id`);let c=r.score;if(typeof c!="number"||!Number.isFinite(c))throw new TypeError(`Qdrant query response entry at index ${o} is missing a finite numeric score`);let d=r.payload;if(d!==void 0&&(typeof d!="object"||d===null||Array.isArray(d)))throw new Error(`Qdrant query response entry at index ${o} must provide payload as an object when set`);return{id:a,score:c,...d?{payload:d}:{}}});return n.sort((r,o)=>r.score!==o.score?o.score-r.score:r.id.localeCompare(o.id)),n}function Ge(e){let t=g(e.result?.status);if(t)return{status:t};let n=g(e.status);if(n)return{status:n};throw new Error("Qdrant upsert response must include status metadata")}async function W(e,t,n,r,o){return await se({endpoint:e,method:t.method,headers:t.headers,body:t.body,timeoutMs:n,fetcher:r,requestLabel:`Vector ${o} request`,responseLabel:`Vector ${o} response`})}function ii(e){let t=g(e.vector_store?.qdrant?.url);if(!t)return null;let n=g(e.vector_store?.collection_name),r=g(e.vector_store?.qdrant?.api_key);return{name:"qdrant",url:t,...n&&n!==We?{collection_name:n}:{},...r?{api_key:r}:{}}}function si(e){let t=Ye(e),n=qe(t);return Qt(t)==="pm"&&Qt(n)===".agents"?qe(n):t}function ai(e,t){return!t||Zo(e)?e:Ye(si(t),e)}function ci(e,t){let n=g(e.vector_store?.lancedb?.path);if(!n)return null;let r=g(e.vector_store?.collection_name);return{name:"lancedb",path:ai(n,t),...r&&r!==We?{collection_name:r}:{}}}function di(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector upsert records must include at least one entry");return e.map((t,n)=>{let r=g(t.id);if(!r)throw new Error(`Vector upsert record at index ${n} is missing a non-empty id`);let o=ce(t.vector),i=t.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`Vector upsert record at index ${n} must provide payload as an object when set`);return{id:r,vector:o,...i?{payload:i}:{}}})}function ui(e){if(!Array.isArray(e)||e.length===0)throw new Error("Vector delete ids must include at least one entry");let t=e.map((r,o)=>{let i=g(r);if(!i)throw new Error(`Vector delete id at index ${o} is missing a non-empty value`);return i}).sort((r,o)=>r.localeCompare(o)),n=[];for(let r of t)n.at(-1)!==r&&n.push(r);return n}function li(e){return e.replace(/\/points\?wait=true$/,"/points/delete?wait=true")}function fi(e){return e.replace(/\/points\?wait=true$/,"")}function de(e){return{"content-type":"application/json",...e.api_key?{"api-key":e.api_key}:{}}}function ue(e,t){return j(e,t)}function j(e,t){return ei(Ye(e),ri,`${t}.json`)}function Ke(e,t){return typeof e=="object"&&e!==null&&e.code===t}function mi(e,t,n){let r=g(e.id);if(!r)throw new Error(`LanceDB local snapshot '${n}' record at index ${t} is missing a non-empty id`);let o=ce(e.vector),i=e.payload;if(i!==void 0&&(typeof i!="object"||i===null||Array.isArray(i)))throw new Error(`LanceDB local snapshot '${n}' record '${r}' must provide payload as an object when set`);return{id:r,vector:o,...i?{payload:i}:{}}}function pi(e,t,n){let r;try{r=JSON.parse(n)}catch(c){throw new Error(`LanceDB local snapshot at '${e}' is not valid JSON: ${b(c)}`)}if(typeof r!="object"||r===null||Array.isArray(r))throw new Error(`LanceDB local snapshot at '${e}' must be a JSON object`);if(r.version!==He)throw new Error(`LanceDB local snapshot at '${e}' must include version=${He}`);let i=g(r.table);if(!i)throw new Error(`LanceDB local snapshot at '${e}' must include a non-empty table value`);if(i!==t)throw new Error(`LanceDB local snapshot at '${e}' table mismatch: expected '${t}', received '${i}'`);let s=r.records;if(!Array.isArray(s))throw new TypeError(`LanceDB local snapshot at '${e}' must include a records array`);let a=new Map;for(let c=0;c<s.length;c+=1){let d=mi(s[c],c,e);a.set(d.id,d)}return a}async function _i(e){try{let t=await Be(e);return{mtimeMs:t.mtimeMs,size:t.size}}catch(t){if(!Ke(t,"ENOENT"))throw t;return null}}function hi(e,t){if(!t)return null;if(t.mtimeMs===null&&t.size===null&&t.records.size===0)return t.records;let n=new Map;return M.set(e,{records:n,mtimeMs:null,size:null}),n}function gi(e,t){return e!==void 0&&t!==null&&e.mtimeMs===t.mtimeMs&&e.size===t.size}async function Qe(e,t){let n=ue(e,t),r=j(e,t),o=await _i(r),i=M.get(n);if(!o){let a=hi(n,i);if(a)return a}if(gi(i,o))return i.records;let s=new Map;try{let a=await Jo(r,"utf8");s=pi(r,t,a)}catch(a){if(!Ke(a,"ENOENT"))throw a}return M.set(n,{records:s,mtimeMs:o?.mtimeMs??null,size:o?.size??null}),s}function yi(e){let t=[...e.values()];return t.sort((n,r)=>n.id.localeCompare(r.id)),t.map(n=>({id:n.id,vector:[...n.vector],...n.payload?{payload:n.payload}:{}}))}async function Zt(e){try{await Xo(e)}catch(t){if(!Ke(t,"ENOENT"))throw new Error(`LanceDB local snapshot delete failed at '${e}': ${b(t)}`)}}async function en(e,t,n){let r=j(e,t);if(n.size===0){await Zt(r);return}let o=qe(r);try{await Qo(o,{recursive:!0})}catch(s){throw new Error(`LanceDB local snapshot directory create failed at '${o}': ${b(s)}`)}let i=`${JSON.stringify({version:He,table:t,records:yi(n)})}
|
|
9
|
-
`;try{await S(r,i)}catch(s){throw new Error(`LanceDB local snapshot write failed at '${r}': ${b(s)}`)}}async function wi(e,t){let n=ue(e,t),r=j(e,t);await Zt(r),M.delete(n)}function Jt(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e[n]*e[n];return Math.sqrt(t)}function Ei(e,t){let n=0;for(let i=0;i<e.length;i+=1)n+=e[i]*t[i];let r=Jt(e),o=Jt(t);return r===0||o===0?0:n/(r*o)}function Je(e,t){let n=ii(e),r=ci(e,t),o=[n,r].filter(c=>c!==null),i=g(e.vector_store?.adapter),s=i?i.toLowerCase():null;return{active:(s?o.find(c=>c.name===s):void 0)??o[0]??null,available:o}}function le(e){let t=G(e);if(e.name==="qdrant"){let o=B(e.url),i=encodeURIComponent(t);return{store:"qdrant",query_target:`${o}/collections/${i}/points/search`,upsert_target:`${o}/collections/${i}/points?wait=true`}}let n=encodeURIComponent(e.path),r=encodeURIComponent(t);return{store:"lancedb",query_target:`lancedb://${n}#${r}`,upsert_target:`lancedb://${n}#${r}`}}function bi(e,t,n){let r=le(e),o=ce(t),i=Xt(n);return e.name==="qdrant"?{target:r,method:"POST",headers:de(e),body:{vector:o,limit:i,with_payload:!0}}:{target:r,method:"LOCAL",headers:{},body:{table:G(e),vector:o,limit:i}}}function Si(e,t){let n=le(e),r=di(t);return e.name==="qdrant"?{target:n,method:"POST",headers:de(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:G(e),records:r}}}function Ti(e,t){let n=le(e),r=ui(t);return e.name==="qdrant"?{target:n,method:"POST",headers:de(e),body:{points:r}}:{target:n,method:"LOCAL",headers:{},body:{table:G(e),ids:r}}}async function fc(e,t,n,r={}){let o=bi(e,t,n);if(o.method==="LOCAL"){let c=e,d=o.body,u=await Qe(c.path,d.table);if(u.size===0)return[];let m=ce(d.vector),_=Xt(d.limit),l=[],h=0;for(let y of u.values()){if(y.vector.length!==m.length){h++;continue}l.push({id:y.id,score:Ei(m,y.vector),...y.payload?{payload:y.payload}:{}})}return h>0&&r.warnings&&r.warnings.push(`vector_dimension_mismatch:${h} records skipped (expected ${m.length} dimensions)`),l.sort((y,w)=>y.score!==w.score?w.score-y.score:y.id.localeCompare(w.id)),l.slice(0,_)}let i=N(r.timeout_ms,"Vector request"),s=R(r.fetcher,"Vector request"),a=await W(o.target.query_target,{method:"POST",headers:o.headers,body:o.body},i,s,"query");return oi(a)}async function Xe(e,t,n={}){let r=Si(e,t);if(r.method==="LOCAL"){let a=e,c=r.body,d=ue(a.path,c.table),u=await Qe(a.path,c.table);for(let l of c.records)u.set(l.id,l);await en(a.path,c.table,u);let m=j(a.path,c.table),_=await Be(m);return M.set(d,{records:u,mtimeMs:_.mtimeMs,size:_.size}),{status:"ok"}}let o=N(n.timeout_ms,"Vector request"),i=R(n.fetcher,"Vector request"),s=await W(r.target.upsert_target,{method:"POST",headers:r.headers,body:r.body},o,i,"upsert");return Ge(s)}async function fe(e,t,n={}){let r=Ti(e,t);if(r.method==="LOCAL"){let a=e,c=r.body,d=ue(a.path,c.table),u=await Qe(a.path,c.table);if(u.size===0)return{status:"ok"};for(let m of c.ids)u.delete(m);if(await en(a.path,c.table,u),u.size===0)M.delete(d);else{let m=j(a.path,c.table),_=await Be(m);M.set(d,{records:u,mtimeMs:_.mtimeMs,size:_.size})}return{status:"ok"}}let o=N(n.timeout_ms,"Vector request"),i=R(n.fetcher,"Vector request"),s=await W(li(r.target.upsert_target),{method:"POST",headers:r.headers,body:r.body},o,i,"delete");return Ge(s)}async function tn(e,t=[],n={},r){if(e.name==="lancedb")return await wi(e.path,G(e)),{status:"ok"};if(r!==void 0){if(!Number.isInteger(r)||r<=0)throw new Error("Vector reset dimension must be a positive integer when provided");let i=le(e),s=fi(i.upsert_target),a=N(n.timeout_ms,"Vector request"),c=R(n.fetcher,"Vector request"),d=de(e);try{await W(s,{method:"DELETE",headers:d,body:{}},a,c,"delete")}catch(m){if(!b(m).includes("failed with status 404"))throw m}let u=await W(s,{method:"PUT",headers:d,body:{vectors:{size:r,distance:"Cosine"}}},a,c,"upsert");return Ge(u)}let o=t.map(i=>i.trim()).filter(i=>i.length>0);return o.length===0?{status:"ok"}:await fe(e,o,n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4b3ad5fc-0f86-5f20-a23b-19d447cb0973")}catch{}})();function me(e,t){let n=g(e),r=g(t);return!n||!r?null:{provider:n,model:r}}function nn(e){if(e==null)return null;if(typeof e!="object"||Array.isArray(e))throw new Error("Vectorization embedding metadata must be an object when set");let t=me(e.provider,e.model),n=e.vector_dimension;if(!t||typeof n!="number"||!Number.isInteger(n)||n<=0)throw new Error("Vectorization embedding metadata must include provider, model, and positive vector_dimension");return{...t,vector_dimension:n}}function Ze(e,t){if(!Number.isInteger(t)||t<=0)throw new Error("Vectorization embedding metadata requires a positive vector dimension");return{provider:e.provider,model:e.model,vector_dimension:t}}function et(e,t){return!e||e.provider!==t.provider||e.model!==t.model}function tt(e,t){return!!(e&&e.vector_dimension!==t)}function nt(e,t){if(e.length===0)throw new Error(`${t} returned no vectors`);let r=e[0].length;if(!Number.isInteger(r)||r<=0)throw new Error(`${t} returned an empty vector`);for(let o=1;o<e.length;o+=1)if(e[o]?.length!==r)throw new Error(`${t} returned mixed vector dimensions`);return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7939a590-3662-5c66-99aa-3835a0dbaecc")}catch{}})();var on="search/vectorization-status.json";function Q(e){return[...new Set([...e].map(t=>t.trim()).filter(t=>t.length>0))].sort((t,n)=>t.localeCompare(n))}function sn(e){return typeof e=="string"&&e.trim().length>0&&Number.isFinite(Date.parse(e))}function an(e){let t=new Map;for(let[n,r]of Object.entries(e)){let o=n.trim();o.length===0||!sn(r)||t.set(o,r)}return Object.fromEntries([...t.entries()].sort((n,r)=>n[0].localeCompare(r[0])))}async function cn(e){let t=rn.join(e,on),n=await T(t);if(n===null||n.trim().length===0)return{entries:{},embedding:null,warnings:[]};let r;try{r=JSON.parse(n)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}if(typeof r!="object"||r===null||r.version!==1||!Array.isArray(r.items))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let o=new Map;for(let s of r.items){if(typeof s!="object"||s===null)return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};let a=s.id,c=s.updated_at;if(typeof a!="string"||a.trim().length===0||!sn(c))return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]};o.set(a.trim(),c)}let i=null;try{i=nn(r.embedding)}catch{return{entries:{},embedding:null,warnings:["search_vectorization_status_ledger_invalid"]}}return{entries:Object.fromEntries([...o.entries()].sort((s,a)=>s[0].localeCompare(a[0]))),embedding:i,warnings:[]}}async function dn(e,t,n){let r=an(t),o=rn.join(e,on),i=`${JSON.stringify({version:1,generated_at:D(),...n?{embedding:n}:{},items:Object.entries(r).map(([s,a])=>({id:s,updated_at:a}))},null,2)}
|
|
10
|
-
`;await S(o,i)}function xi(e){return{id:e.id,type:e.type,status:e.status,priority:e.priority,updated_at:e.updated_at}}function Ii(e){let t=me(e.name,e.model);if(!t)throw new Error("Embedding provider must include a provider name and model");return t}function K(e,t){return{refreshed:[],skipped:e,warnings:[t]}}async function Ai(e,t,n){if(!n.settings&&!await z(Se(e)))return K(t,"search_semantic_refresh_skipped:settings_not_initialized");let r;try{if(n.settings)r=n.settings;else{let a=await Z(e),c=a.warnings.find(d=>d.startsWith("settings_read_"));if(c)return K(t,`search_semantic_refresh_skipped:settings_read_failed:${c}`);r=a.settings}}catch(a){return K(t,`search_semantic_refresh_skipped:settings_read_failed:${b(a)}`)}let o=n.apply_runtime_defaults?ie(r).settings:r,i=ze(o).active;if(!i)return K(t,"search_semantic_refresh_skipped:provider_unconfigured");let s=Je(o,e).active;return s?{settings:o,provider:i,vectorStore:s}:K(t,"search_semantic_refresh_skipped:vector_store_unconfigured")}async function Ci(e,t,n,r,o,i){let s=[],a=new Set,c=new Set,d=[];for(let u of r){let m=await Le(e,u,t,n,o);if(!m){c.add(u);continue}try{let _=await ke(m,{schema:i});d.push({id:_.document.metadata.id,document:_.document})}catch(_){a.add(m.id),s.push(`search_semantic_refresh_item_read_failed:${m.id}:${b(_)}`)}}return d.sort((u,m)=>u.id.localeCompare(m.id)),{documents:d,missingIds:Q(c),skippedIds:Q(a),warnings:s}}async function vi(e,t,n){let r=U(t.name,e.search.embedding_corpus_max_characters).maxCharacters,o=$e(e),i=n.map(a=>Ve(a.document,{providerName:t.name,maxCharacters:r,fields:o})),s=await je(t,e,i);return{vectors:s.vectors,vector_dimension:nt(s.vectors,"Semantic refresh embedding"),warnings:s.warnings}}async function Li(e,t,n){return await Xe(e,t.map((r,o)=>({id:r.id,vector:n[o],payload:xi(r.document.metadata)}))),{refreshed:t.map(r=>r.id),skipped:[],warnings:[]}}async function ki(e,t){if(t.length===0)return{refreshed:[],skipped:[],warnings:[]};try{return await fe(e,t),{refreshed:[],skipped:[],warnings:[]}}catch(n){return{refreshed:[],skipped:t,warnings:[`search_semantic_refresh_delete_failed:${b(n)}`]}}}async function Rc(e,t,n={}){let r=Q(t);if(r.length===0)return{refreshed:[],skipped:[],warnings:[]};let o=await Ai(e,r,n);if(!("settings"in o))return o;let i=Ee(o.settings,Ie()),s=await Ci(e,o.settings.id_prefix,o.settings.item_format,r,i.type_to_folder,o.settings.schema),a=s.documents.length>0||s.missingIds.length>0?await cn(e):{entries:{},embedding:null,warnings:[]},c=Ii(o.provider),d=a.entries,u={refreshed:[],skipped:[],warnings:[]},m=a.embedding;if(s.documents.length>0)if(a.embedding&&et(a.embedding,c))u={refreshed:[],skipped:s.documents.map(w=>w.id),warnings:["search_semantic_refresh_requires_reindex:embedding_identity_changed"]};else try{let w=await vi(o.settings,o.provider,s.documents);if(tt(a.embedding,w.vector_dimension))u={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[...w.warnings,"search_semantic_refresh_requires_reindex:vector_dimension_changed"]};else{m=Ze(c,w.vector_dimension);let E=await Li(o.vectorStore,s.documents,w.vectors);u={refreshed:E.refreshed,skipped:E.skipped,warnings:[...w.warnings,...E.warnings]}}}catch(w){u={refreshed:[],skipped:s.documents.map(E=>E.id),warnings:[`search_semantic_refresh_failed:${b(w)}`]}}let _=await ki(o.vectorStore,s.missingIds),l=new Set(u.refreshed),h=Object.fromEntries(s.documents.filter(w=>l.has(w.id)).map(w=>[w.id,w.document.metadata.updated_at])),y=[];if(Object.keys(h).length>0||s.missingIds.length>0){let w={...d,...an(h)};for(let E of s.missingIds)delete w[E];try{await dn(e,w,m)}catch(E){y.push(`search_vectorization_status_ledger_write_failed:${b(E)}`)}y.push(...a.warnings)}return{refreshed:Q([...u.refreshed,..._.refreshed]),skipped:Q([...s.skippedIds,...u.skipped,..._.skipped]),warnings:[...s.warnings,...u.warnings,..._.warnings,...y]}}import{createRequire as Ni}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]="8eb48648-6e55-5710-990e-6471c7cdcde0")}catch{}})();var Ri=/(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|credentials|bearer|dsn)/i,zc=new RegExp(`\\b(${Ri.source})\\s*[:=]\\s*([^\\s,;]+)`,"giu");var $c=Ni(import.meta.url);(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e896db69-ed90-53f1-a227-e3d061b3bc8d")}catch{}})();var Uc=new Map([[f.USAGE,"invalid_command_usage"],[f.NOT_FOUND,"item_not_found"],[f.CONFLICT,"lock_conflict"],[f.DEPENDENCY_FAILED,"dependency_failed"]]);(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ffe56aed-b794-5bf4-99fd-e3c5fe065163")}catch{}})();import{promises as ln}from"node:fs";import fn 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]="611f01b6-0c72-5ea2-a44f-78877c69706c")}catch{}})();var Mi="session.json";function mn(e){return fn.join(pt(e),Mi)}async function rt(e){try{let t=await ln.readFile(mn(e),"utf8"),n=JSON.parse(t);if(n===null||typeof n!="object"||Array.isArray(n))return{};let r=n.focused_item;return typeof r=="string"&&r.trim().length>0?{focused_item:r}:{}}catch{return{}}}async function pn(e,t){let n=mn(e);await ln.mkdir(fn.dirname(n),{recursive:!0}),await S(n,JSON.stringify(t))}async function Pi(e){return(await rt(e)).focused_item}async function zi(e,t){let n=await rt(e);await pn(e,{...n,focused_item:t})}async function $i(e){let n={...await rt(e)};delete n.focused_item,await pn(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]="c43dd9f2-78ac-5c22-970a-0016a06b87b3")}catch{}})();var ed=Object.freeze({"<":"<",">":">",""":'"',"'":"'","&":"&"});(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0ce743d1-917a-5c96-b038-c95e3922bc48")}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]="868dfae8-2575-5d5f-8425-c7e68aefdc84")}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]="4ecab833-db06-5baa-bfe6-d28b4c97f85a")}catch{}})();function Fi(e,t){if(e==null)return[];let n=t?.separators??/,/,o=e.split(n).map(a=>a.trim()).filter(a=>a.length>0),s=t?.unique!==!1?Array.from(new Set(o)):o;return t?.sort===!0?[...s].sort():s}import _n from"node:fs/promises";import pe 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]="4baf0ef3-2412-51cf-9ade-18b5c6e610d1")}catch{}})();function Vi(e){return"json_markdown"}function hn(e,t){return pe.relative(e,t).replaceAll("\\","/")}function Ui(e){return String(e).replaceAll(/[^a-zA-Z0-9._-]+/g,"_").slice(0,120)}async function ji(e,t,n="item_format:migrate",r=we,o){if(t!=="toon")throw new Error("Only toon item-format migration targets are supported. Markdown item files are legacy read-only input.");let i=new Set,s=new Set,a=[],c=0,d=Vi(t),u=Object.entries(r);for(let[m,_]of u){let l=pe.join(e,_),h=[];try{h=await _n.readdir(l)}catch{continue}let y=new Map;for(let E of h){let L=pe.join(l,E),k=mt(L);if(!k)continue;let q=pe.extname(E),H=E.slice(0,E.length-q.length).trim();if(H.length===0)continue;let P=y.get(H)??{};P[k]=L,y.set(H,P)}let w=[...y.keys()].sort((E,L)=>E.localeCompare(L));for(let E of w){let L=y.get(E);c+=1;let k=L[d];if(!k)continue;let q=L[t]??k,H=q===L[t]?t:d;try{let P=await _n.readFile(q,"utf8"),qn=Ce(P,{format:H,schema:o,onWarning:Hn=>a.push(`item_format_migration_parse_warning:${E}:${Hn}`)}),ge=Te(e,m,E,t,r),ft=ve(qn,{format:t,schema:o});await T(ge)!==ft&&(await S(ge,ft),a.push(...await X({path:ge,scope:"project",op:n})),i.add(E)),await J(k),s.add(hn(e,k)),a.push(...await X({path:k,scope:"project",op:`${n}:remove`})),i.add(E)}catch(P){a.push(`item_format_migration_skipped:${hn(e,q)}:${Ui(P)}`)}}}return{target_format:t,scanned:c,migrated:[...i].sort((m,_)=>m.localeCompare(_)),removed:[...s].sort((m,_)=>m.localeCompare(_)),warnings:a}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f280c1df-b134-57c3-91f6-cbf5a37e6e31")}catch{}})();var qi=new Set(["completed","superseded"]);function Hi(e){return e!==void 0&&qi.has(e)}function Bi(e){if(e.type.trim().toLowerCase()!=="plan")return!1;let t=e.plan_steps??[];return t.length>0&&t.every(n=>n.status==="completed")}import _d from"node:readline/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]="6783b122-a1a8-5f86-9ac5-2c3e811622ed")}catch{}})();import st from"node:crypto";import{mkdirSync as xd,rmSync as Gi,statSync as Id}from"node:fs";import{mkdir as ot,readdir as Ki,rm as at,stat as bn}from"node:fs/promises";import x 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]="fea9d81b-3deb-51f4-9ec3-76396ae1307d")}catch{}})();var Qi=x.join("runtime","telemetry","events.jsonl"),Ji=x.join("runtime","telemetry","state.json"),Xi=x.join("runtime","telemetry","otel-spans.jsonl"),Zi=8,gn=500,es=1;var ts=100,ns=36e5,rs=3e4,Sn=5e3,os=864e5,Tn=65536;var xn=15;var In=[25,50,100,200],is=3600*1e3,ss=6e4;var as="PM_TELEMETRY_DISABLED",cs="PM_NO_TELEMETRY",yn=new Set(["1","true","yes","on"]);var ds=["user","automation","test","dogfood"],Pd=Promise.resolve(),wn=Promise.resolve();var zd=new Set(ds);var $d=st.randomUUID();var An="(?:token|secret|password|passwd|api[_-]?key|apikey|authorization|cookie|session|credentials|bearer|literals?|regex(?:es)?|replacements?)",us=new RegExp(`\\b(${An})\\s*([:=])\\s*([^\\s,;]+)`,"giu"),ls=new RegExp(`(--${An})(=|\\s+)([^\\s,;]+)`,"giu"),fs=/(^|[\s"'`(=])\/(?:[^\s"'`),;]+)/g,ms=/bearer\s+[a-z0-9._=-]+/giu,ps=/\b(?:10\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|172\.(?:1[6-9]|2\d|3[01])\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)|192\.168\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.(?:25[0-5]|2[0-4]\d|[01]?\d?\d))\b/g;function he(e){return x.join(e,Qi)}function ct(e){return x.join(e,Xi)}function _s(e){return x.dirname(he(e))}function Cn(e){return x.join(e,Ji)}function vn(e){return x.join(e,"runtime","telemetry","flush.lock")}function hs(e){return x.join(e,"runtime","telemetry","flush.spawn.lock")}async function gs(e){let t=await T(Cn(e));if(!t||t.trim().length===0)return{};try{let n=JSON.parse(t);return typeof n!="object"||n===null||Array.isArray(n)?{}:n}catch{return{}}}async function v(e,t){try{let r={...await gs(e),...t},o=Object.fromEntries(Object.entries(r).filter(([,i])=>i!==void 0).sort((i,s)=>i[0].localeCompare(s[0])));await S(Cn(e),`${JSON.stringify(o,null,2)}
|
|
11
|
-
`)}catch{}}function Ln(e){return e.replaceAll(us,(n,r,o)=>`${r}${o}[redacted]`).replaceAll(ls,(n,r,o)=>`${r}${o}[redacted]`)}function kn(e){return e.replaceAll(fs,(t,n)=>`${n}[redacted_path]`)}function Dn(e){let t=e>=65&&e<=90,n=e>=97&&e<=122,r=e>=48&&e<=57;return t||n||r}function Nn(e){if(!e)return!1;let t=e.charCodeAt(0);return Dn(t)?!0:e==="."||e==="_"||e==="%"||e==="+"||e==="-"}function Rn(e){if(!e)return!1;let t=e.charCodeAt(0);return Dn(t)?!0:e==="."||e==="-"}function ys(e){let t=e.indexOf("@");if(t<=0||t!==e.lastIndexOf("@")||t===e.length-1)return!1;let n=e.slice(0,t),r=e.slice(t+1),o=r.lastIndexOf(".");if(o<=0||o===r.length-1||r.length-(o+1)<2)return!1;for(let i of n)if(!Nn(i))return!1;for(let i of r)if(!Rn(i))return!1;return!0}function ws(e){let t="",n=0;for(;n<e.length;){let r=e.indexOf("@",n);if(r<0){t+=e.slice(n);break}let o=r-1;for(;o>=n&&Nn(e[o]);)o-=1;o+=1;let i=r+1;for(;i<e.length&&Rn(e[i]);)i+=1;let s=e.slice(o,i);if(ys(s)){t+=e.slice(n,o),t+="[redacted_email]",n=i;continue}t+=e.slice(n,r+1),n=r+1}return t}function On(e){return ws(e).replaceAll(ms,"bearer [redacted_token]").replaceAll(ps,"[redacted_ip]")}function Es(e){let t=On(e),n=Ln(t),r=kn(n),o=r.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":r.length>512?`${r.slice(0,509)}...`:r}function bs(e){let t=On(e),n=Ln(t),r=kn(n),o=r.trim();return o.startsWith("/")&&o.length>1?"[redacted_path]":r.length>2048?`${r.slice(0,2045)}...`:r}function it(e,t="redacted"){return t==="max"?bs(e):Es(e)}function Ss(){return yn.has((process.env[as]??"").trim().toLowerCase())||yn.has((process.env[cs]??"").trim().toLowerCase())}async function Ts(e){let t=await Y(e),n=!1;return t.telemetry.installation_id.trim().length===0&&(t.telemetry.installation_id=st.randomUUID(),n=!0),n&&await ee(e,t,"telemetry:install_id"),{installationId:t.telemetry.installation_id,endpoint:t.telemetry.endpoint,retentionDays:Math.max(1,Math.trunc(t.telemetry.retention_days))}}function Mn(e){let t=[];for(let n of e.split(`
|
|
12
|
-
`)){let r=n.trim();if(r.length!==0)try{let o=JSON.parse(r);o&&typeof o=="object"&&o.event&&typeof o.event=="object"&&typeof o.attempts=="number"&&(o.client_schema_version===void 0||typeof o.client_schema_version=="number"&&Number.isFinite(o.client_schema_version))&&t.push(o)}catch{}}return t}function Pn(e){let t=Math.min(rs*2**Math.max(e-1,0),ns);return new Date(Date.now()+t).toISOString()}function zn(e){if(typeof e!="string"||e.trim().length===0)return!0;let t=Date.parse(e);return Number.isNaN(t)?!0:t<=Date.now()}function xs(e){return zn(e.next_attempt_after)}function $n(e){let t=Number.isFinite(e)?Math.max(1,Math.trunc(e)):1;return Date.now()-t*os}function Is(e,t){let n=e.event?.occurred_at;if(typeof n!="string"||n.trim().length===0)return!1;let r=Date.parse(n);return Number.isNaN(r)?!1:r<t}function dt(e,t){let n=$n(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>Tn||Is(i,n)||i.attempts>=xn){o+=1;continue}r.push(i)}return{entries:r,prunedCount:o}}async function _e(e,t){let n=t.map(o=>JSON.stringify(o)).join(`
|
|
13
|
-
`),r=n.length>0?`${n}
|
|
14
|
-
`:"";for(let o=0;;o+=1)try{await S(he(e),r);return}catch(i){let s=In[o];if(s===void 0||!Fn(i))throw i;await Vn(s)}}function Fn(e){if(typeof e!="object"||e===null||!("code"in e))return!1;let t=e.code;return t==="EACCES"||t==="EBUSY"||t==="EPERM"}function Vn(e){return new Promise(t=>{setTimeout(t,e)})}function As(e){let t=JSON.stringify([e.endpoint,e.enqueued_at,e.payload]);return st.createHash("sha256").update(t).digest("hex").slice(0,32)}function Un(e){let t=[];for(let n of e.split(`
|
|
15
|
-
`)){let r=n.trim();if(r.length!==0)try{let o=JSON.parse(r);o&&typeof o=="object"&&typeof o.endpoint=="string"&&o.endpoint.trim().length>0&&"payload"in o&&typeof o.attempts=="number"&&Number.isFinite(o.attempts)&&((typeof o.id!="string"||o.id.length===0)&&(o.id=As(o)),t.push(o))}catch{}}return t}function Cs(e,t){if(typeof e.enqueued_at!="string"||e.enqueued_at.trim().length===0)return!1;let n=Date.parse(e.enqueued_at);return Number.isNaN(n)?!1:n<t}function jn(e,t){let n=$n(t),r=[],o=0;for(let i of e){if(JSON.stringify(i).length>Tn||Cs(i,n)||i.attempts>=xn){o+=1;continue}r.push(i)}if(r.length>gn){let i=r.length-gn;return o+=i,{entries:r.slice(i),prunedCount:o}}return{entries:r,prunedCount:o}}async function vs(e,t){let n=t.map(o=>JSON.stringify(o)).join(`
|
|
16
|
-
`),r=n.length>0?`${n}
|
|
17
|
-
`:"";for(let o=0;;o+=1)try{await S(ct(e),r);return}catch(i){let s=In[o];if(s===void 0||!Fn(i))throw i;await Vn(s)}}async function En(e,t,n,r){return ut(async()=>{let o=await T(ct(e)),i=o===null?[]:Un(o),s=[];for(let c of i){if(n.has(c.id))continue;let d=r.get(c.id);s.push(d?{...c,attempts:d.attempts,next_attempt_after:d.next_attempt_after}:c)}let{entries:a}=jn(s,t);return await vs(e,a),a.length})}async function Ls(e,t){let n=await T(ct(e));if(n===null||n.trim().length===0){await v(e,{pending_otel_spans:0});return}let r=Un(n),{entries:o,prunedCount:i}=jn(r,t),s=o.filter(h=>zn(h.next_attempt_after)).slice(0,Zi);if(s.length===0){let h=i>0?await En(e,t,new Set,new Map):o.length;await v(e,{pending_otel_spans:h});return}let a=D(),c=new Set,d=new Map,u=0,m;await Promise.all(s.map(async h=>{try{let y=await fetch(h.endpoint,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(h.payload),signal:AbortSignal.timeout(Sn)});if(!y.ok)throw new Error(`local_otel_export_http_${y.status}`);c.add(h.id),u+=1}catch(y){m=y instanceof Error?it(y.message,"redacted"):"local_otel_export_failed";let w=h.attempts+1;d.set(h.id,{attempts:w,next_attempt_after:Pn(w)})}}));let _=await En(e,t,c,d),l={pending_otel_spans:_,last_otel_attempt_at:a};u>0&&(l.last_otel_success_at=a),m!==void 0?(l.last_otel_failure_at=a,l.last_otel_failure_error=m):_===0&&(l.last_otel_failure_at=void 0,l.last_otel_failure_error=void 0),await v(e,l)}async function ks(e,t,n){try{await Os(e,t,n)}catch{}try{await Ls(e,n)}catch{}}async function Ds(e,t=is){try{let n=_s(e),r=await Ki(n,{withFileTypes:!0}),o=Date.now()-Math.max(0,t);await Promise.all(r.filter(i=>i.isFile()&&/^\.events\.jsonl\.\d+\.\d+\.[a-f0-9]+\.tmp$/.test(i.name)).map(async i=>{let s=x.join(n,i.name);(await bn(s)).mtimeMs<o&&await at(s,{force:!0})}))}catch{}}async function ut(e){let t=wn.catch(()=>{}).then(e);return wn=t.catch(()=>{}),t}async function lt(e){let t=await T(he(e));return t===null||t.trim().length===0?[]:Mn(t)}async function Ns(e,t,n){return ut(async()=>{let r=await lt(e),{entries:o}=dt(r,n),i=o.filter(s=>!t.has(s.event.event_id));return await _e(e,i),i})}async function Rs(e,t,n,r){return ut(async()=>{let o=await lt(e),{entries:i}=dt(o,r),s=i.map(a=>{if(!t.has(a.event.event_id))return a;let c=a.attempts+1;return{...a,attempts:c,last_attempt_at:n,next_attempt_after:Pn(c)}});return await _e(e,s),s})}async function Os(e,t,n){await Ds(e);let r=t.trim();if(r.length===0)return;let o=await T(he(e));if(o===null||o.trim().length===0){await v(e,{endpoint:r,queue_entries:0});return}let i=Mn(o);if(i.length===0){await v(e,{endpoint:r,queue_entries:0});return}let{entries:s,prunedCount:a}=dt(i,n);if(s.length===0){await _e(e,[]),await v(e,{endpoint:r,queue_entries:0});return}let c=s.filter(l=>xs(l)).slice(0,ts);if(c.length===0){a>0&&await _e(e,s),await v(e,{endpoint:r,queue_entries:s.length});return}let d=new Set(c.map(l=>l.event.event_id)),u=D(),m={"content-type":"application/json"},_=process.env.PM_TELEMETRY_INGEST_KEY?.trim();_&&(m["x-pm-telemetry-key"]=_);try{let l=await fetch(r,{method:"POST",headers:m,body:JSON.stringify({schema_version:es,events:c.map(h=>h.event)}),signal:AbortSignal.timeout(Sn)});if(!l.ok)throw new Error(`telemetry_flush_http_${l.status}`)}catch(l){let h=await Rs(e,d,u,n),y=l instanceof Error?it(l.message,"redacted"):"telemetry_flush_failed";await v(e,{endpoint:r,queue_entries:h.length,last_attempted_flush_at:u,last_failed_flush_at:u,last_failed_flush_error:y});return}try{let l=await Ns(e,d,n);await v(e,{endpoint:r,queue_entries:l.length,last_attempted_flush_at:u,last_successful_flush_at:u,last_failed_flush_at:void 0,last_failed_flush_error:void 0})}catch(l){let h=l instanceof Error?it(l.message,"redacted"):"telemetry_flush_failed",y=await lt(e).catch(()=>s);await v(e,{endpoint:r,queue_entries:y.length,last_attempted_flush_at:u,last_failed_flush_at:u,last_failed_flush_error:h})}}async function Ms(e){let t=vn(e);await ot(x.dirname(t),{recursive:!0});try{return await ot(t),!0}catch(n){if(typeof n!="object"||n===null||!("code"in n)||n.code!=="EEXIST")throw n}try{let n=await bn(t);return Date.now()-n.mtimeMs<ss?!1:(await at(t,{recursive:!0,force:!0}),await ot(t),!0)}catch{return!1}}function Ps(e){try{Gi(e,{recursive:!0,force:!0})}catch{}}function zs(e){Ps(hs(e))}async function $s(e,t,n){let r=await Ms(e);if(zs(e),!!r)try{await ks(e,t,n)}finally{try{await at(vn(e),{recursive:!0,force:!0})}catch{}}}async function Fd(e=be(process.cwd())){if(!Ss())try{if(!(await Y(e)).telemetry.enabled)return;let{endpoint:n,retentionDays:r}=await Ts(e);await $s(e,n,r)}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]="17358714-bb54-58e5-bba0-61bfd1323ec2")}catch{}})();export{lr as a,fr as b,pr as c,_r as d,hr as e,gr as f,Oe as g,yr as h,pa as i,Er as j,Dt as k,br as l,Sr as m,Rt as n,Tr as o,xr as p,Ir as q,Ar as r,Rr as s,Pr as t,zr as u,Fr as v,Vr as w,Ur as x,Hr as y,xa as z,Wr as A,ka as B,Jr as C,Zr as D,Bn as E,eo as F,to as G,ie as H,Ao as I,Xa as J,ze as K,Wt as L,$e as M,$o as N,Fo as O,tc as P,Gt as Q,U as R,Ve as S,je as T,Je as U,fc as V,Xe as W,fe as X,tn as Y,me as Z,Ze as _,et as $,tt as aa,nt as ba,cn as ca,dn as da,Rc as ea,Pi as fa,zi as ga,$i as ha,Jn as ia,St as ja,Zn as ka,er as la,tr as ma,Bs as na,Re as oa,xt as pa,Tt as qa,It as ra,rr as sa,or as ta,At as ua,ar as va,Fi as wa,ji as xa,Hi as ya,Bi as za,es as Aa,xn as Ba,ds as Ca,Fd as Da};
|
|
18
|
-
//# sourceMappingURL=chunk-JGRSQZJT.js.map
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{$ as Ne,L as Rn,M as Pn,N as me,O as pe,R as ne,S as On,Y as C,Z as x,a as L,b as Oe,ba as Dn,c as wn,e as bn,f as vn,g as En,h as kn,i as xn,j as De,k as Cn,m as Sn,n as In,o as Tn,p as fe,q as An,r as $n}from"./chunk-ZG54B4XG.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="294d43fb-b6e8-5a5f-91fe-73ba21075bf5")}catch{}})();function ge(e,n,r){if(e===n)return 0;if(Math.abs(e.length-n.length)>r)return null;let t=n.length+1,o=new Array(t),i=new Array(t),s=new Array(t);for(let l=0;l<t;l+=1)o[l]=0,i[l]=l;for(let l=1;l<=e.length;l+=1){s[0]=l;let c=s[0];for(let d=1;d<=n.length;d+=1){let u=e[l-1]===n[d-1]?0:1,m=i[d-1]+u,f=s[d-1]+1,h=i[d]+1,p=Math.min(m,f,h);l>1&&d>1&&e[l-1]===n[d-2]&&e[l-2]===n[d-1]&&(p=Math.min(p,o[d-2]+1)),s[d]=p,p<c&&(c=p)}if(c>r)return null;for(let d=0;d<t;d+=1)o[d]=i[d],i[d]=s[d]}let a=i[n.length];return a<=r?a:null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f6ec614c-2e47-5ce0-bbf6-8dde97ffb99e")}catch{}})();var he=fe;function ye(e){let n=e.trim().toLowerCase();return he.includes(n)?n:null}function Nn(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Math.max(1,Math.floor(n.length*.34));for(let t of he)if(ge(n,t,r)!==null)return t;return null}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ce320988-b999-57c9-a786-a94ac66c5628")}catch{}})();var q=new Set(On),_e=Object.freeze({get size(){return q.size},has(e){return q.has(e)},entries(){return q.entries()},keys(){return q.keys()},values(){return q.values()},forEach(e,n){q.forEach(r=>e.call(n,r,r,_e))},[Symbol.iterator](){return q.values()}});function Fn(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function Mn(e){return typeof e!="string"?null:ye(e)}function _t(e){try{return structuredClone(e)}catch{return e}}function wt(e){let n=e.trim(),r=n.indexOf("=");if(r<=0)throw new x(`--field entries must use name=value syntax, received: ${e}`,C.USAGE);let t=n.slice(0,r).trim(),o=n.slice(r+1);return{key:t,value:o}}function bt(e){return`--${e.replaceAll("_","-")}`}function vt(e,n,r){try{let t=JSON.parse(e);if(r==="array"&&Array.isArray(t)||r==="object"&&typeof t=="object"&&t!==null&&!Array.isArray(t))return t}catch{}throw new x(`--field ${n}=... must be valid JSON ${r}`,C.USAGE)}function Et(e,n,r){if(n==="string")return r;if(n==="number"){let t=r.trim();if(t.length===0)throw new x(`--field ${e}=... must be a number`,C.USAGE);let o=Number(t);if(!Number.isFinite(o))throw new x(`--field ${e}=... must be a number`,C.USAGE);return o}if(n==="boolean"){let t=r.trim().toLowerCase();if(t==="true"||t==="1"||t==="yes")return!0;if(t==="false"||t==="0"||t==="no")return!1;throw new x(`--field ${e}=... must be one of true|false|1|0|yes|no`,C.USAGE)}return n==="string_array"?r.split(/[\n,|]/u).map(t=>t.trim()).filter(t=>t.length>0):vt(r,e,n)}function Fe(e){let n=new Map;if(!e)return n;for(let r of e.item_fields)for(let t of r.fields){let o=Fn(t.name),i=Mn(t.type);if(!o||!i)continue;let s=n.get(o);if(s&&s.type!==i)throw new x(`Extension item field "${o}" is declared with conflicting types: ${s.type}, ${i}`,C.USAGE,{code:"extension_item_field_type_conflict",nextSteps:["Make every active extension declaration for this field use the same type."]});n.set(o,{name:o,type:i})}return n}function zn(e){if(_e.has(e))throw new x(`Extension item field "${e}" collides with built-in item metadata "${e}"; rename the extension field with an extension-specific prefix. Reserved fields: ${[..._e].sort((n,r)=>n.localeCompare(r)).join(", ")}.`,C.USAGE,{code:"extension_item_field_reserved",nextSteps:["Rename the extension item field, preferably with an extension-specific prefix."]})}function ta(e){return[...Fe(e).keys()].sort((n,r)=>n.localeCompare(r))}function oa(e,n){if(!e||e.length===0)return{};let r=Fe(n),t={};for(let o of e){let{key:i,value:s}=wt(o),a=r.get(i);if(!a){if(_e.has(i)){let c=bt(i);throw new x(`--field ${i} is a core item field, not an extension field`,C.USAGE,{code:"core_item_field_requires_dedicated_flag",field:i,recovery:{provided_fields:[i],suggested_flags:[c]},nextSteps:[`Set the core field with its dedicated flag: pm update <id> ${c} <value>`,`When closing an item, pm close <id> also accepts ${c} <value>.`]})}let l=[...r.keys()].sort((c,d)=>c.localeCompare(d));throw new x(`--field ${i} is not declared by an active extension item-field registration`,C.USAGE,{code:"extension_item_field_unknown",recovery:{provided_fields:l},nextSteps:l.length>0?[`Use one of the declared fields: ${l.join(", ")}`]:["Activate an extension that calls registerItemFields before setting extension fields."]})}zn(a.name),t[a.name]=Et(a.name,a.type,s)}return t}function kt(e,n){return n==="string"?typeof e=="string":n==="number"?typeof e=="number"&&Number.isFinite(e):n==="boolean"?typeof e=="boolean":n==="array"?Array.isArray(e):n==="string_array"?Array.isArray(e)&&e.every(r=>typeof r=="string"):typeof e=="object"&&e!==null&&!Array.isArray(e)}function xt(e,n){return!n||n.length===0?!0:n.some(r=>Object.is(r,e))}function ia(e,n,r={}){if(n){Fe(n);for(let t of n.item_fields)for(let o of t.fields){let i=Fn(o.name);if(!i)continue;zn(i),!(i in e)&&!r.skipDefaultFields?.has(i)&&Object.prototype.hasOwnProperty.call(o,"default")&&(e[i]=_t(o.default));let s=e[i];if(s===void 0)continue;let a=Mn(o.type);if(a&&!kt(s,a))throw new TypeError(`Item field "${i}" must be of type ${a}`);let l=Array.isArray(o.values)?o.values:void 0;if(!xt(s,l))throw new TypeError(`Item field "${i}" must match one of the configured allowed values`)}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="49a83ce3-4c55-5b3f-b061-bc21b716d498")}catch{}})();var Me=[{kind:"blocked_by",direction:"directed",inverse:"blocks",ordering:!0,precedence:"target_before_source",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["depends_on"],compatibilityVersion:1,allowSelf:!1},{kind:"blocks",direction:"directed",inverse:"blocked_by",ordering:!0,precedence:"source_before_target",hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"parent",direction:"directed",inverse:"child",ordering:!1,hierarchy:!0,hierarchyDirection:"target_parent",outgoing:"one",incoming:"many",lifecycle:"supersedable",aliases:["child_of","epic"],compatibilityVersion:1,allowSelf:!1},{kind:"child",direction:"directed",inverse:"parent",ordering:!1,hierarchy:!0,hierarchyDirection:"source_parent",outgoing:"many",incoming:"one",lifecycle:"supersedable",aliases:["parent_child","task"],compatibilityVersion:1,allowSelf:!1},{kind:"related",direction:"undirected",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",aliases:["related_to"],compatibilityVersion:1,allowSelf:!1},{kind:"discovered_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"incident_from",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"implements",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"verifies",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"persistent",compatibilityVersion:1,allowSelf:!1},{kind:"supersedes",direction:"directed",ordering:!1,hierarchy:!1,outgoing:"many",incoming:"many",lifecycle:"supersedable",compatibilityVersion:1,allowSelf:!1}];(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="05e01593-acb6-5e28-a5ac-8c8f74359c62")}catch{}})();function ve(e){return e.trim().toLowerCase().replaceAll("-","_")}function Ct(e){if(e===void 0)return;let n=ve(e);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid inverse relationship kind: ${e}`);return n}function je(e,n=new Set){if(e===null||typeof e!="object"||n.has(e))return e;if(n.add(e),Array.isArray(e)){for(let r of e)je(r,n);return Object.freeze(e)}for(let r of Object.values(e))je(r,n);return Object.freeze(e)}function St(e,n){if(e.precedence!==void 0&&e.precedence!=="source_before_target"&&e.precedence!=="target_before_source")throw new TypeError(`Invalid relationship precedence for ${n}`);if(!e.ordering&&e.precedence!==void 0)throw new TypeError(`Non-ordering relationship kind cannot declare precedence: ${n}`)}function It(e,n){if(e.hierarchyDirection!==void 0&&e.hierarchyDirection!=="source_parent"&&e.hierarchyDirection!=="target_parent")throw new TypeError(`Invalid relationship hierarchy direction for ${n}`);if(!e.hierarchy&&e.hierarchyDirection!==void 0)throw new TypeError(`Non-hierarchy relationship kind cannot declare hierarchy direction: ${n}`)}function Tt(e){if(typeof e!="object"||e===null)throw new TypeError("Relationship kind definition requires an object");if(typeof e.kind!="string")throw new TypeError("Relationship kind requires a string identifier");let n=ve(e.kind);if(!/^[a-z][a-z0-9_]*$/.test(n))throw new TypeError(`Invalid relationship kind: ${e.kind}`);if(!Number.isInteger(e.compatibilityVersion)||e.compatibilityVersion<1)throw new TypeError(`Invalid compatibility version for ${n}`);return n}function At(e,n){if(!["directed","undirected"].includes(e.direction))throw new TypeError(`Invalid relationship direction for ${n}`);if(typeof e.ordering!="boolean")throw new TypeError(`Invalid relationship ordering flag for ${n}`);if(![void 0,!0,!1].includes(e.hierarchy))throw new TypeError(`Invalid relationship hierarchy flag for ${n}`);if(!["one","many"].includes(e.outgoing))throw new TypeError(`Invalid outgoing relationship cardinality for ${n}`);if(!["one","many"].includes(e.incoming))throw new TypeError(`Invalid incoming relationship cardinality for ${n}`);if(!["persistent","supersedable","ephemeral"].includes(e.lifecycle))throw new TypeError(`Invalid relationship lifecycle for ${n}`);if(typeof e.allowSelf!="boolean")throw new TypeError(`Invalid relationship self-edge flag for ${n}`)}function $t(e,n){if(e.payloadSchema!==void 0&&(typeof e.payloadSchema!="object"||e.payloadSchema===null||Array.isArray(e.payloadSchema)))throw new TypeError(`Invalid relationship payload schema for ${n}`);if(e.aliases!==void 0&&(!Array.isArray(e.aliases)||e.aliases.some(r=>typeof r!="string")))throw new TypeError(`Invalid relationship aliases for ${n}`)}var Le=class{#e=new Map;#r=new Map;constructor(n=Me){for(let r of n)this.register(r)}register(n){let r=Tt(n);if(At(n,r),$t(n,r),St(n,r),It(n,r),this.#e.has(r)||this.#r.has(r))throw new TypeError(`Relationship kind already registered: ${r}`);let t=Ct(n.inverse),o=[...new Set((n.aliases??[]).map(ve))].sort();for(let s of o){if(!/^[a-z][a-z0-9_]*$/.test(s))throw new TypeError(`Invalid relationship alias: ${s}`);if(s===r||this.#e.has(s)||this.#r.has(s))throw new TypeError(`Relationship alias already registered: ${s}`)}let i=Object.freeze({...n,kind:r,hierarchy:n.hierarchy??!1,inverse:t,aliases:Object.freeze(o),payloadSchema:n.payloadSchema?je(structuredClone(n.payloadSchema)):void 0});this.#e.set(r,i);for(let s of o)this.#r.set(s,r);return this}resolve(n){if(typeof n!="string")return;let r=ve(n);return this.#e.get(this.#r.get(r)??r)}require(n){let r=this.resolve(n);if(!r)throw new TypeError(`Unknown relationship kind: ${n}`);return r}list(){return Object.freeze([...this.#e.values()].sort((n,r)=>n.kind.localeCompare(r.kind)))}};function qe(){return new Le}var V=qe();function ca(e){return V.require(e).kind}function da(e){return V.resolve(e)?.kind}function ua(e,n=V){return n.resolve(e)?.ordering===!0}function Rt(e,n,r,t=V){let o=re(e),i=re(n);if(!o||!i)throw new TypeError("Relationship endpoint must not be empty");let s=t.require(r);if(o===i&&!s.allowSelf)throw new TypeError(`Self relationship is not allowed for ${s.kind}`);return s}function we(e,n){return e.source.localeCompare(n.source)||e.target.localeCompare(n.target)||e.kind.localeCompare(n.kind)}function Pt(e,n,r){let t=typeof e.source=="string"?e.source.trim():"",o=typeof e.target=="string"?e.target.trim():"";if(!n.has(t)||!n.has(o))throw new TypeError(`Relationship endpoint not found: ${t} -> ${o}`);let i=Rt(t,o,e.kind,r),s=Object.freeze({...e,source:t,target:o,kind:i.kind}),a=i.direction==="undirected"?[t,o].sort().join("\0"):`${t}\0${o}`;return{edge:s,identity:`${i.kind}\0${a}`}}function be(e,n,r){let t=e.get(n);t?t.push(r):e.set(n,[r])}function re(e){return typeof e=="string"?e.trim():""}function ze(e,n){let r=re(e);return r&&n.has(r)?r:void 0}function Ot(e,n,r){let t=[n],o=n;for(;o!==e;)o=r.get(o),t.push(o);return t.reverse()}var jn=class e{#e;#r;#o;#t;#s=new Map;#a=new Map;constructor(n,r,t=V){this.#e=t,this.#r=new Set([...n].filter(i=>typeof i=="string").map(i=>i.trim()).filter(Boolean)),this.#o=Object.freeze([...this.#r].sort());let o=new Map;for(let i of r){let{edge:s,identity:a}=Pt(i,this.#r,t);o.set(a,s)}this.#t=Object.freeze([...o.values()].sort(we));for(let i of this.#t)be(this.#s,i.source,i),be(this.#a,i.target,i),t.require(i.kind).direction==="undirected"&&(be(this.#s,i.target,i),be(this.#a,i.source,i))}static fromItems(n,r=V){let t=new Set(n.map(i=>re(i.id)).filter(Boolean)),o=[];for(let i of n){let s=re(i.id);if(!s)continue;let a=ze(i.parent,t);a&&o.push({source:s,target:a,kind:"parent"});let l=ze(i.blocked_by,t);l&&o.push({source:s,target:l,kind:"blocked_by"});for(let c of i.dependencies??[]){let d=ze(c.id,t);d&&r.resolve(c.kind)&&o.push({source:s,target:d,kind:c.kind,createdAt:c.created_at,author:c.author})}}return new e(t,o,r)}edges(){return this.#t}incidentEdges(n){this.#i(n);let r=this.#s.get(n)??[],t=this.#a.get(n)??[];if(r.length===0)return Object.freeze([...t]);if(t.length===0)return Object.freeze([...r]);let o=[],i=0,s=0;for(;i<r.length||s<t.length;){let a=r[i],l=t[s],c=a===void 0?l:l===void 0||we(a,l)<=0?a:l;o.at(-1)!==c&&o.push(c),a===c&&(i+=1),l===c&&(s+=1)}return Object.freeze(o)}nodes(){return this.#o}hasNode(n){return this.#r.has(n)}registry(){return this.#e}#i(n){if(!this.#r.has(n))throw new TypeError(`Relationship node not found: ${n}`)}#l(n,r){if(!r)return!0;let t=this.#e.require(n.kind);return r.has(n.kind)||t.inverse!==void 0&&r.has(t.inverse)}#n(n,r,t){let o=[...r==="incoming"?[]:this.#s.get(n)??[],...r==="outgoing"?[]:this.#a.get(n)??[]];return[...new Set(o)].filter(i=>this.#l(i,t)).map(i=>({id:i.source===n?i.target:i.source,edge:i})).sort((i,s)=>i.id.localeCompare(s.id)||we(i.edge,s.edge))}adjacency(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=[...new Set(o.map(l=>l.id))],a=s.slice(0,i);return{value:a,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:a.length<s.length,nextCursor:a.at(-1)}}}neighborEdges(n,r={}){this.#i(n),r.signal?.throwIfAborted();let t=r.kinds?new Set(r.kinds.map(a=>this.#e.require(a).kind)):void 0,o=this.#n(n,r.direction??"outgoing",t),i=r.limit??Number.POSITIVE_INFINITY,s=o.slice(0,i);return{value:s,meta:{visitedNodes:1,inspectedEdges:o.length,truncated:s.length<o.length,nextCursor:s.at(-1)?.id}}}closure(n,r={}){this.#i(n);let t=r.kinds?new Set(r.kinds.map(f=>this.#e.require(f).kind)):void 0,o=r.direction??"outgoing",i=r.limit??Number.POSITIVE_INFINITY,s=r.maxDepth??Number.POSITIVE_INFINITY,a=new Set([n]),l=[],c=[{id:n,depth:0}],d=0,u=0,m=!1;e:for(let f=0;f<c.length;f+=1){r.signal?.throwIfAborted();let h=c[f];d+=1;let p=this.#n(h.id,o,t);if(u+=p.length,h.depth>=s){p.some(g=>!a.has(g.id))&&(m=!0);continue}for(let g of p)if(!a.has(g.id)){if(l.length>=i){m=!0;break e}a.add(g.id),l.push(g.id),c.push({id:g.id,depth:h.depth+1})}}return{value:l,meta:{visitedNodes:d,inspectedEdges:u,truncated:m,nextCursor:l.at(-1)}}}shortestPath(n,r,t={}){if(this.#i(n),this.#i(r),n===r)return{value:[n],meta:{visitedNodes:1,inspectedEdges:0,truncated:!1}};let o=t.kinds?new Set(t.kinds.map(f=>this.#e.require(f).kind)):void 0,i=t.direction??"outgoing",s=t.maxDepth??Number.POSITIVE_INFINITY,a=[{id:n,depth:0}],l=new Map,c=new Set([n]),d=0,u=0,m=!1;for(let f=0;f<a.length;f+=1){t.signal?.throwIfAborted();let h=a[f];d+=1;let p=this.#n(h.id,i,o);if(u+=p.length,h.depth>=s){p.some(g=>!c.has(g.id))&&(m=!0);continue}for(let g of p)if(!c.has(g.id)){if(l.set(g.id,h.id),g.id===r)return{value:Ot(n,r,l),meta:{visitedNodes:d,inspectedEdges:u,truncated:!1}};c.add(g.id),a.push({id:g.id,depth:h.depth+1})}}return{value:[],meta:{visitedNodes:d,inspectedEdges:u,truncated:m}}}subgraph(n,r={}){let t=this.closure(n,r),o=[n,...t.value].sort(),i=new Set(o),s=r.kinds?new Set(r.kinds.map(l=>this.#e.require(l).kind)):void 0,a=new Set;for(let l of o)for(let c of this.#s.get(l)??[])i.has(c.source)&&i.has(c.target)&&this.#l(c,s)&&a.add(c);return{value:{nodes:o,edges:[...a].sort(we)},meta:t.meta}}};function fa(e,n,r=V){return{source:e,target:n.id,kind:r.require(n.kind).kind,createdAt:n.created_at,author:n.author}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2f268c53-f096-5eed-9ddb-01fed4839ae5")}catch{}})();function v(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function Dt(){return{json:!1,quiet:!1,noExtensions:!1,profile:!1}}function Ln(e){return e?k(e):{}}function qn(e){return e?k(e):Dt()}function k(e){return structuredClone(e)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2c4e3831-6644-5db3-a28b-1c6a131da2e1")}catch{}})();var Nt=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]),Ft=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","parser_overrides","service_overrides","renderer_overrides"];function Mt(e,n){for(let r of Ft){let t=e[r];if(t===void 0)continue;if(!Array.isArray(t)||t.some(i=>typeof i!="string"))return!1;let o=t.map(i=>Nt.has(r)?v(i):i.trim()).filter(i=>i.length>0);n[r]=[...new Set(o)].sort((i,s)=>i.localeCompare(s))}return!0}function zt(e){if(!Array.isArray(e))return null;let n=[];for(let r of e){if(typeof r!="object"||r===null)return null;let t=r;if(t.format!=="json"&&t.format!=="toon"||!Array.isArray(t.commands)||t.commands.some(o=>typeof o!="string")||typeof t.result_discriminator!="boolean")return null;n.push({format:t.format,commands:[...new Set(t.commands.map(o=>v(o)))].sort((o,i)=>o.localeCompare(i)),result_discriminator:t.result_discriminator})}return n.sort((r,t)=>r.format.localeCompare(t.format))}function jt(e){if(!Array.isArray(e))return null;let n=[];for(let r of e){if(typeof r!="object"||r===null)return null;let t=r.commands;if(!Array.isArray(t)||t.some(o=>typeof o!="string"))return null;n.push({commands:[...new Set(t.map(o=>v(o)))].filter(o=>o.length>0).sort((o,i)=>o.localeCompare(i))})}return n}function Ve(e){if(e==null)return;if(typeof e!="object"||Array.isArray(e))return null;let n=e;if(n.schema_version!==1)return null;let r={schema_version:1};if(!Mt(n,r))return null;let t=n.preflight_overrides;if(t!==void 0&&(!Number.isInteger(t)||t<0))return null;typeof t=="number"&&(r.preflight_overrides=t);let o=n.renderer_ownership;if(o!==void 0){let s=zt(o);if(s===null)return null;r.renderer_ownership=s}let i=n.preflight_ownership;if(i!==void 0){let s=jt(i);if(s===null)return null;r.preflight_ownership=s}return r}function ya(e){return{schema_version:1,commands:e.commands,command_overrides:e.command_overrides,command_handlers:e.command_handlers,hooks:e.hooks,flag_commands:e.flag_commands,item_types:e.item_types,item_fields:e.item_fields,...e.relationship_kinds?{relationship_kinds:e.relationship_kinds}:{},migrations:e.migrations,profiles:e.profiles,importers:e.importers,exporters:e.exporters,search_providers:e.search_providers,vector_store_adapters:e.vector_store_adapters,parser_overrides:e.parser_overrides,service_overrides:e.service_overrides,renderer_overrides:e.renderer_overrides,...e.renderer_ownership?{renderer_ownership:e.renderer_ownership}:{},preflight_overrides:e.preflight_overrides,...e.preflight_ownership?{preflight_ownership:e.preflight_ownership}:{}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3225f4de-aa48-55b7-a704-d93ccb3ee0f4")}catch{}})();function te(e){return[...new Set(e.map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function N(e){return L.includes(e)}function Vn(e){let n=e.trim().toLowerCase();return N(n)?n:null}function Un(e){return e.filter(n=>!N(n))}function Ue(e){let n=e.trim().toLowerCase();return n.length===0?null:wn[n]??null}function Wn(e){let n=te([...e].map(i=>i.toLowerCase())),r=[],t=[];for(let i of n){let s=Ue(i);if(s){r.push(s),t.push({alias:i,target:s});continue}r.push(i)}let o=[...new Map(t.map(i=>[`${i.alias}>${i.target}`,i])).values()].sort((i,s)=>i.alias.localeCompare(s.alias));return{capabilities:te(r),legacy_aliases:o}}function Lt(e){let n=e.trim().toLowerCase();if(n.length===0)return null;let r=Ue(n);if(r)return r;let t=Math.max(1,Math.floor(n.length*.34)),o=null,i=Number.POSITIVE_INFINITY;for(let s of L){let a=ge(n,s,t);a!==null&&a<i&&(i=a,o=s)}return o}function Kn(e,n,r){let t=L.join(","),o=Lt(r)??"none";return`extension_capability_unknown:${e}:${n}:${r}:allowed=${t}:suggested=${o}`}function Bn(e,n,r){let t=r.map(o=>`${o.alias}>${o.target}`).join(",");return`extension_capability_legacy_alias:${e}:${n}:aliases=${t}`}function qt(e){let n=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(e.trim());if(!n)return null;let[,r,t,o,i,s]=n,a=r,l=i.split(",").map(f=>f.trim()).filter(f=>f.length>0),c=Ue(o),u=(s==="none"?void 0:s)??c??void 0;return{layer:a,name:t,capability:o,allowed_capabilities:l,capability_contract_version:Oe,suggested_capability:u,suggestion_source:u?c===u?"legacy_alias":"nearest_match":void 0,legacy_alias_target:c??void 0}}function Vt(e){let n=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(e.trim());if(!n)return[];let[,r,t,o]=n,i=r,s=[...L],a=[];for(let l of o.split(",")){let[c,d]=l.split(">"),u=c?.trim(),m=d?.trim().toLowerCase();!u||!m||!N(m)||a.push({layer:i,name:t,capability:u,allowed_capabilities:s,capability_contract_version:Oe,suggested_capability:m,suggestion_source:"legacy_alias",legacy_alias_target:m})}return a}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3f347c0d-2e1f-5d17-9e38-bae834f845d3")}catch{}})();var ka={commands:["registerCommand","command override","command handler"],renderers:["registerRenderer"],hooks:["hooks.beforeCommand","hooks.beforeMutation","hooks.afterCommand","hooks.onWrite","hooks.onRead","hooks.onIndex"],schema:["registerFlags","registerItemFields","registerItemTypes","registerRelationshipKinds","registerMigration","registerProfile"],importers:["registerImporter","registerExporter"],search:["registerSearchProvider","registerVectorStoreAdapter"],parser:["registerParser"],preflight:["registerPreflight"],services:["registerService"]},Hn=":";function Gn(e,n){return`${e}${Hn}${We(n)}`}function Ut(e){return e.slice(e.indexOf(Hn)+1)}function We(e){return e.trim().toLowerCase()}function Wt(e){if(!Array.isArray(e))return[];let n=new Set;for(let r of e){let t=Vn(r);t!==null&&n.add(t)}return[...n].sort((r,t)=>r.localeCompare(t))}function Yn(e){let n=new Map,r=(d,u)=>{for(let m of d){let f=Gn(m.layer,m.name),h=n.get(f);h===void 0&&(h=new Set,n.set(f,h)),h.add(u)}},{registrations:t,commands:o,parsers:i,preflight:s,services:a,renderers:l,hooks:c}=e;return r(t.commands,"commands"),r(o.overrides,"commands"),r(o.handlers,"commands"),r(t.flags,"schema"),r(t.item_fields,"schema"),r(t.item_types,"schema"),r(t.relationship_kinds??[],"schema"),r(t.migrations,"schema"),r(t.profiles,"schema"),r(t.importers,"importers"),r(t.exporters,"importers"),r(t.search_providers,"search"),r(t.vector_store_adapters,"search"),r(i.overrides,"parser"),r(s.overrides,"preflight"),r(a.overrides,"services"),r(l.overrides,"renderers"),r(c.beforeCommand,"hooks"),r(c.beforeMutation,"hooks"),r(c.afterCommand,"hooks"),r(c.onWrite,"hooks"),r(c.onRead,"hooks"),r(c.onIndex,"hooks"),n}function xa(e,n={}){let r=Yn(e),t=new Set;n.extensionName!==void 0&&t.add(We(n.extensionName));for(let i of n.extensionNames??[])t.add(We(i));let o=new Set;for(let[i,s]of r)if(!(t.size>0&&!t.has(Ut(i))))for(let a of s)o.add(a);return[...o].sort((i,s)=>i.localeCompare(s))}function Ca(e,n){let r=Yn(n),t=[];for(let o of e){let i=Wt(o.capabilities);if(i.length===0)continue;let s=r.get(Gn(o.layer,o.name))??new Set,a=[...s].sort((c,d)=>c.localeCompare(d)),l=i.filter(c=>!s.has(c));t.push({layer:o.layer,name:o.name,declared:i,used:a,unused:l})}return t}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4eccf02f-7401-539f-b843-f55b63ed878c")}catch{}})();var Kt=/^--[a-z0-9][a-z0-9_-]*(?:[ =](?:<[^<>]+>|\[[^[\]]+\]))?$/;function Bt(e){if(typeof e!="string")return null;let n=e.trim(),r=n.split(/[ =]/,1)[0];return Ne.has(r)?"host_owned_flag_collision":Kt.test(n)?null:"malformed_long_flag"}function Xn(e,n){let r=[e,n].find(i=>typeof i=="string"&&Ne.has(i.trim().split(/[ =]/,1)[0]));if(typeof r=="string")return{token:r.trim().split(/[ =]/,1)[0],failure:"host_owned_flag_collision"};if(typeof e!="string")return null;let t=e.trim(),o=Bt(t);return o===null?null:{token:t,failure:o}}function Jn(e,n){return n==="host_owned_flag_collision"?`cannot shadow host-owned global flag "${e}"; read it from context.global instead`:`long flag "${e}" must start with a double-dash name such as "--my-flag" or "--my-flag <value>"`}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="849502d0-2616-500c-96de-228c0759459d")}catch{}})();function Zn(e){return typeof e=="string"?e:String(e)}function oe(e){let r=e.trim().replace(/^>=\s*/,"").replace(/^v/i,"").split(/[+-]/,1)[0];return/^\d+(?:[.-]\d+)*$/.test(r)?r.split(/[.-]/).map(t=>Number(t)):null}function Ke(e,n){let r=oe(e),t=oe(n);if(!r||!t)return null;let o=Math.max(r.length,t.length);for(let i=0;i<o;i+=1){let s=r[i]??0,a=t[i]??0;if(s>a)return 1;if(s<a)return-1}return 0}function Qn(e,n){if(e==null)return{kind:"pm_min_version",status:"absent",allowed:!0,required:"",current:n};let r=Zn(e);if(typeof e!="string"||r.trim().length===0)return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(!oe(r))return{kind:"pm_min_version",status:"invalid",allowed:!1,required:r,current:n};if(n===null)return{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:null};let t=Ke(n,r);return t===null?{kind:"pm_min_version",status:"unchecked",allowed:!0,required:r,current:n}:t<0?{kind:"pm_min_version",status:"unmet",allowed:!1,required:r,current:n}:{kind:"pm_min_version",status:"ok",allowed:!0,required:r,current:n}}function er(e,n,r){if(e==null)return{kind:"pm_max_version",status:"absent",allowed:!0,required:"",current:n};let t=Zn(e);if(typeof e!="string"||t.trim().length===0)return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(/^[<>=~^]/.test(t.trim())||!oe(t))return{kind:"pm_max_version",status:"invalid",allowed:!1,required:t,current:n};if(n===null)return{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:null};let o=Ke(n,t);return o===null?{kind:"pm_max_version",status:"unchecked",allowed:!0,required:t,current:n}:o>0?r==="warn"?{kind:"pm_max_version",status:"exceeded_warn",allowed:!0,required:t,current:n}:{kind:"pm_max_version",status:"exceeded",allowed:!1,required:t,current:n}:{kind:"pm_max_version",status:"ok",allowed:!0,required:t,current:n}}import*as E from"node:fs/promises";import Ee from"node:path";import Ht from"node:crypto";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="74d24458-0685-5354-b62f-5323ee72ffd6")}catch{}})();var Gt=[10,25,50,100];async function nr(e){await E.mkdir(e,{recursive:!0})}async function ie(e){try{return await E.access(e),!0}catch{return!1}}async function rr(e){try{return await E.readFile(e,"utf8")}catch(n){if(U(n,"ENOENT"))return null;throw n}}async function tr(e,n){let r=Ee.dirname(e);await nr(r);let t=Ee.join(r,`.${Ee.basename(e)}.${process.pid}.${Date.now()}.${Ht.randomBytes(4).toString("hex")}.tmp`);await E.writeFile(t,n,"utf8");try{await E.rename(t,e)}catch(o){if(process.platform==="win32"&&(U(o,"EPERM")||U(o,"EBUSY"))){let i=o;for(let s of Gt){await new Promise(a=>setTimeout(a,s));try{await E.rename(t,e);return}catch(a){if(i=a,!U(a,"EPERM")&&!U(a,"EBUSY"))break}}try{await E.unlink(t)}catch{}throw i}if(U(o,"EXDEV")){try{await E.copyFile(t,e)}finally{try{await E.unlink(t)}catch{}}return}try{await E.unlink(t)}catch{}throw o}}async function Pa(e,n){let r=Ee.dirname(e);await nr(r);let t=await E.open(e,"a");try{await t.writeFile(`${n}
|
|
2
|
-
`,"utf8")}finally{await t.close()}}async function Oa(e){try{await E.unlink(e)}catch(n){if(!U(n,"ENOENT"))throw n}}function U(e,n){return typeof e=="object"&&e!==null&&"code"in e&&e.code===n}import or from"path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="624aced5-552c-5354-9e34-b96e267d34d1")}catch{}})();function Be(e,n){let r=or.relative(e,n);return r.length===0?!0:!r.startsWith("..")&&!or.isAbsolute(r)}import Y from"node:fs";import F from"node:path";import{fileURLToPath as Yt}from"node:url";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dffcc28d-16a3-53d4-ba02-5298ae7a6d63")}catch{}})();var Xt="@unbrained/pm-cli";function Jt(e){try{return JSON.parse(Y.readFileSync(e,"utf8")).name===Xt}catch{return!1}}function Zt(e){let n=Y.existsSync(e)&&Y.statSync(e).isDirectory()?F.resolve(e):F.dirname(F.resolve(e));for(;;){let r=F.join(n,"package.json");if(Y.existsSync(r)&&Jt(r))return n;let t=F.dirname(n);if(t===n)return;n=t}}function He(e,n=[]){let r=Yt(e),t=Zt(r);return t||F.resolve(F.dirname(r),...n)}function La(e,n=[]){try{let r=F.join(He(e,n),"package.json");if(!Y.existsSync(r))return;let t=JSON.parse(Y.readFileSync(r,"utf8"));return typeof t.version=="string"&&t.version.trim().length>0?t.version:void 0}catch{return}}import to from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="815165a9-27a7-5933-adae-c7e55330c8e4")}catch{}})();function M(e){return[...new Set((e??[]).map(n=>n.trim()).filter(n=>n.length>0))].sort((n,r)=>n.localeCompare(r))}function Qt(e){let n=e.key.trim();if(n.length===0)return null;let r=M(e.aliases),t=e.description?.trim();return{key:n,values:M(e.values),required:e.required===!0?!0:void 0,aliases:r.length>0?r:void 0,description:t&&t.length>0?t:void 0}}var eo=e=>e,sr=e=>{let n=e.trim().toLowerCase();return n==="create"||n==="update"?n:null};function no(e,n){let r=n(e.command);if(r===null)return null;let t=e.option.trim();return t.length===0?null:{command:r,option:t,required:e.required,visible:e.visible,enabled:e.enabled}}function ro(e,n){let r=new Map;for(let t of e??[]){let o=no(t,n);o&&r.set(`${o.command}:${o.option.toLowerCase()}`,o)}return[...r.values()].sort((t,o)=>t.command===o.command?t.option.localeCompare(o.option):t.command.localeCompare(o.command))}function ir(e,n){return n?M(e):void 0}function Ge(e){let n=e?.trim();return n&&n.length>0?n:void 0}function ar(e,n={}){let r=n.resolvePolicyCommand??eo,t=e.name.trim();if(t.length===0)return null;let o=e.required_create_fields!==void 0,i=e.required_create_repeatables!==void 0,s=e.options!==void 0,a=e.command_option_policies!==void 0,l=M(e.aliases),c=(e.options??[]).map(u=>Qt(u)).filter(u=>u!==null).sort((u,m)=>u.key.localeCompare(m.key)),d=ro(e.command_option_policies,r);return{name:t,description:Ge(e.description),default_status:Ge(e.default_status),folder:Ge(e.folder),aliases:l.length>0?l:void 0,required_create_fields:ir(e.required_create_fields,o),required_create_repeatables:ir(e.required_create_repeatables,i),options:s?c:void 0,command_option_policies:a?d:void 0}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="88b2ed4e-b5fd-5014-abf1-c163db033abf")}catch{}})();var oo=["title","description","status","priority","tags","body","deadline","estimatedMinutes","acceptanceCriteria","author","message","assignee"],io=["dep","comment","note","learning","file","test","doc"],cr=["deadline","estimatedMinutes","acceptanceCriteria","definitionOfReady","order","goal","objective","value","impact","outcome","whyNow","assignee","parent","reviewer","risk","confidence","sprint","release","blockedBy","blockedReason","unblockNote","reporter","severity","environment","reproSteps","resolution","expectedResult","actualResult","affectedVersion","fixedVersion","component","regression","customerImpact"],so=["title","description","type","status","priority","tags","body",...cr,"author","message","dep","comment","note","learning","file","test","doc","reminder","event","typeOption","field"],ao=["title","description","body","status","closeReason","priority","type","tags",...cr,"author","message","comment","note","learning","file","test","doc","reminder","event","typeOption","field","ownershipMetadataBypass","ownershipDependencyBypass","force"],dr={"close-reason":"closeReason",close_reason:"closeReason","estimated-minutes":"estimatedMinutes",estimated_minutes:"estimatedMinutes",estimate:"estimatedMinutes","acceptance-criteria":"acceptanceCriteria",acceptance_criteria:"acceptanceCriteria",ac:"acceptanceCriteria","definition-of-ready":"definitionOfReady",definition_of_ready:"definitionOfReady",rank:"order","why-now":"whyNow",why_now:"whyNow","blocked-by":"blockedBy",blocked_by:"blockedBy","blocked-reason":"blockedReason",blocked_reason:"blockedReason","unblock-note":"unblockNote",unblock_note:"unblockNote","repro-steps":"reproSteps",repro_steps:"reproSteps","expected-result":"expectedResult",expected_result:"expectedResult","actual-result":"actualResult",actual_result:"actualResult","affected-version":"affectedVersion",affected_version:"affectedVersion","fixed-version":"fixedVersion",fixed_version:"fixedVersion","customer-impact":"customerImpact",customer_impact:"customerImpact","type-option":"typeOption",type_option:"typeOption",type_options:"typeOption"},lo={...dr},co={...dr},ur=[["deadline","--deadline"],["estimatedMinutes","--estimate/--estimated-minutes"],["acceptanceCriteria","--acceptance-criteria/--ac"],["definitionOfReady","--definition-of-ready"],["order","--order/--rank"],["goal","--goal"],["objective","--objective"],["value","--value"],["impact","--impact"],["outcome","--outcome"],["whyNow","--why-now"],["assignee","--assignee"],["parent","--parent"],["reviewer","--reviewer"],["risk","--risk"],["confidence","--confidence"],["sprint","--sprint"],["release","--release"],["blockedBy","--blocked-by"],["blockedReason","--blocked-reason"],["unblockNote","--unblock-note"],["reporter","--reporter"],["severity","--severity"],["environment","--environment"],["reproSteps","--repro-steps"],["resolution","--resolution"],["expectedResult","--expected-result"],["actualResult","--actual-result"],["affectedVersion","--affected-version"],["fixedVersion","--fixed-version"],["component","--component"],["regression","--regression"],["customerImpact","--customer-impact"]],fr=[["comment","--comment"],["note","--note"],["learning","--learning"],["file","--file"],["test","--test"],["doc","--doc"],["reminder","--reminder"],["event","--event"],["typeOption","--type-option"]];function mr(e){return Object.fromEntries(e)}var uo=mr([["title","--title"],["description","--description"],["type","--type"],["status","--status"],["priority","--priority"],["tags","--tags"],["body","--body"],...ur,["author","--author"],["message","--message"],["dep","--dep"],...fr]),fo=mr([["title","--title"],["description","--description"],["body","--body"],["status","--status"],["closeReason","--close-reason"],["priority","--priority"],["type","--type"],["tags","--tags"],...ur,...fr,["author","--author"],["message","--message"],["force","--force"]]);function mo(e){return e.trim().replace(/^--+/,"").toLowerCase()}function po(e){return e==="create"?so:ao}function go(e){return e==="create"?lo:co}function pr(e,n){let r=mo(n);if(r.length===0)return;let t=go(e)[r];return t||po(e).find(o=>o.toLowerCase()===r)}function Ha(e,n){return(e==="create"?uo:fo)[n]??`--${n.replace(/([A-Z])/g,"-$1").toLowerCase()}`}function Xe(e){let n=yo(e);return n.length===0?"items":n.endsWith("s")?n:`${n}s`}function ho(e){let n=e.trim(),t=n.replaceAll("\\","/").replace(/^\/+/,""),o=to.posix.normalize(t);if(n.includes("\0")||/^[A-Za-z]:/.test(o)||o==="."||o===".."||o.startsWith("../"))throw new Error(`Item type folder "${e}" must stay inside the pm tracker root.`);return o}function yo(e){let n=e.trim().toLowerCase(),r="",t=!1;for(let o of n){let i=o.charCodeAt(0),s=i>=97&&i<=122,a=i>=48&&i<=57;if(s||a){t&&r.length>0&&(r+="-"),r+=o,t=!1;continue}r.length>0&&(t=!0)}return r}function _o(e){return ar(e,{resolvePolicyCommand:sr})}function se(e,n){let r=e[n];return Array.isArray(r)?r.filter(t=>typeof t=="string"):void 0}function wo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;return typeof n.key!="string"?null:{key:n.key,values:se(n,"values")??[],required:n.required===void 0?void 0:!!n.required,aliases:se(n,"aliases"),description:typeof n.description=="string"?n.description:void 0}}function bo(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e;if(typeof n.command!="string"||typeof n.option!="string")return null;let r=n.command.trim().toLowerCase();return r!=="create"&&r!=="update"?null:{command:r,option:n.option,required:n.required===void 0?void 0:!!n.required,visible:n.visible===void 0?void 0:!!n.visible,enabled:n.enabled===void 0?void 0:!!n.enabled}}function vo(e){if(Array.isArray(e.options))return e.options.map(n=>wo(n)).filter(n=>n!==null)}function Eo(e){if(Array.isArray(e.command_option_policies))return e.command_option_policies.map(n=>bo(n)).filter(n=>n!==null)}function ko(e){if(typeof e!="object"||e===null||Array.isArray(e))return null;let n=e,r=typeof n.name=="string"?n.name:"";if(r.trim().length===0)return null;let t=typeof n.folder=="string"?n.folder:void 0,o=typeof n.description=="string"?n.description:void 0,i=typeof n.default_status=="string"?n.default_status:void 0;return{name:r,description:o,default_status:i,folder:t,aliases:se(n,"aliases"),required_create_fields:se(n,"required_create_fields"),required_create_repeatables:se(n,"required_create_repeatables"),options:vo(n),command_option_policies:Eo(n)}}function xo(e,n){return e.required_create_fields?M(e.required_create_fields):n?.required_create_fields??[]}function Co(e,n){return e.required_create_repeatables?M(e.required_create_repeatables):n?.required_create_repeatables??[]}function So(e,n){return e.options?e.options:n?.options?[...n.options]:[]}function Io(e,n){return e.command_option_policies?e.command_option_policies:n?.command_option_policies?[...n.command_option_policies]:[]}function To(e,n){let r=n?.name??e.name,t=e.description??n?.description,o=e.default_status??n?.default_status,i=ho(e.folder??n?.folder??Xe(r)),s={name:r,folder:i,aliases:M([...n?.aliases??[],...e.aliases??[]]),required_create_fields:xo(e,n),required_create_repeatables:Co(e,n),options:So(e,n),command_option_policies:Io(e,n)};return t&&(s.description=t),o&&(s.default_status=o),s}function lr(e,n){for(let r of e){let t=_o(r);if(!t)continue;let o=t.name.toLowerCase(),i=n.get(o);n.set(o,To(t,i))}}function Ao(e){if(!e)return[];let n=[];for(let r of e.item_types??[]){let t=r.types;if(Array.isArray(t))for(let o of t){let i=ko(o);i&&n.push(i)}}return n}function Ga(e,n=null){let r=new Map;for(let l of Sn)r.set(l.toLowerCase(),{name:l,folder:ne[l],aliases:[],required_create_fields:[...oo],required_create_repeatables:[...io],options:[],command_option_policies:[]});lr(e.item_types?.definitions??[],r),lr(Ao(n),r);let t=[...r.values()].sort((l,c)=>l.name.localeCompare(c.name)),o={},i={},s={};for(let l of t){o[l.name]=l,s[l.name]=l.folder,i[l.name.toLowerCase()]=l.name;for(let c of l.aliases)i[c.toLowerCase()]=l.name}let a=[...new Set(t.map(l=>l.folder))].sort((l,c)=>l.localeCompare(c));return{types:t.map(l=>l.name),folders:a,type_to_folder:s,by_type:o,alias_to_type:i}}function $o(e,n){if(e!==void 0)return n.alias_to_type[e.trim().toLowerCase()]}function Ro(e,n){let r=$o(e,n);if(r)return n.by_type[r]}function Po(e,n,r,t){for(let o of t){let i=pr(r,o);if(i){e.required.add(i);continue}e.errors.push(`Unsupported base required option "${o}" for command "${r}" on type "${n.name}"`)}}function Ye(e,n,r){if(r){e.add(n);return}e.delete(n)}function Oo(e,n,r,t){let o=pr(r,t.option);if(!o){e.errors.push(`Unsupported command_option_policies option "${t.option}" for command "${r}" on type "${n.name}"`);return}t.required!==void 0&&Ye(e.required,o,t.required),t.visible!==void 0&&Ye(e.hidden,o,!t.visible),t.enabled!==void 0&&Ye(e.disabled,o,!t.enabled)}function Do(e,n,r){for(let t of n.command_option_policies)t.command===r&&Oo(e,n,r,t)}function No(e,n,r){for(let t of e.required)e.disabled.has(t)&&e.errors.push(`Option "${t}" cannot be both required and disabled for command "${r}" on type "${n.name}"`)}function Ya(e,n,r){let t=[],o=new Set,i=new Set,s=new Set,a={required:o,hidden:i,disabled:s,errors:t};return Po(a,e,n,r),Do(a,e,n),No(a,e,n),{required:[...o],hidden:[...i].sort((l,c)=>l.localeCompare(c)),disabled:[...s].sort((l,c)=>l.localeCompare(c)),errors:t}}function Fo(e){let n=new Map;for(let r of e.options){n.set(r.key.toLowerCase(),r);for(let t of r.aliases??[])n.set(t.toLowerCase(),r)}return n}function Mo(e,n,r){let t=e.values;if(t.length===0)return n;let i=new Map(t.map(s=>[s.toLowerCase(),s])).get(n.toLowerCase());if(!i){r.push(`Invalid value "${n}" for type option "${e.key}". Allowed: ${t.join(", ")}`);return}return i}function Xa(e,n,r){let t=Ro(e,r);if(!t)return{normalized:void 0,errors:[`Unknown type "${e}"`]};let o=[],i=Fo(t),s={};for(let[l,c]of Object.entries(n??{})){let d=l.trim(),u=c.trim();if(d.length===0){o.push("type option keys must not be empty");continue}if(u.length===0){o.push(`type option "${d}" must not be empty`);continue}let m=i.get(d.toLowerCase());if(!m){let h=t.options.map(p=>p.key).join(", ");o.push(t.options.length>0?`Unknown type option "${d}" for type "${t.name}". Allowed: ${h}`:`Type "${t.name}" does not define any configurable type options`);continue}let f=Mo(m,u,o);f!==void 0&&(s[m.key]=f)}for(let l of t.options)l.required&&!(l.key in s)&&o.push(`Missing required type option "${l.key}" for type "${t.name}"`);let a=Object.keys(s).sort((l,c)=>l.localeCompare(c));return a.length===0?{normalized:void 0,errors:o}:{normalized:Object.fromEntries(a.map(l=>[l,s[l]])),errors:o}}import{readFileSync as zo,readdirSync as Qa,statSync as jo}from"node:fs";import Lo from"node:os";import b from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c155ccd1-cf4c-57fd-9d0e-5274eb29a764")}catch{}})();var qo={json_markdown:".md",toon:".toon"},Vo={".md":"json_markdown",".toon":"toon"};var ol=[".md",".toon"];function ke(e){try{return jo(e),!0}catch{return!1}}function Uo(e){try{let n=JSON.parse(zo(e,"utf8"));return typeof n!="object"||n===null||Array.isArray(n)?!1:"id_prefix"in n||"item_format"in n}catch{return!1}}function Wo(e){let n=b.resolve(e);for(;;){let r=b.join(n,me),t=b.join(r,pe);if(ke(t))return r;let o=b.join(n,pe);if(ke(o)&&Uo(o))return n;let i=b.dirname(n);if(i===n)return;n=i}}function Ko(e){return Wo(e)??b.resolve(e,me)}function il(e,n){let r=process.env.PM_PATH,t=n?.trim()||r?.trim();if(t){let o=b.resolve(e,t);if(!ke(gr(o))){let i=b.join(o,me);if(ke(gr(i)))return i}return o}return Ko(e)}function sl(e){let n=b.resolve(e),r=b.dirname(n);return b.basename(n)==="pm"&&b.basename(r)===".agents"?b.dirname(r):n}function hr(e){let n=process.env.PM_GLOBAL_PATH?.trim(),r=n&&n.length>0?n:b.join(Lo.homedir(),".pm-cli");return b.resolve(e,r)}function gr(e){return b.join(e,pe)}function Bo(e,n,r=ne){let t=r[n]??Xe(n);return b.join(e,t)}function al(e,n,r,t="toon",o=ne){return b.join(Bo(e,n,o),`${r}${qo[t]}`)}function ll(e){let n=e.replaceAll("\\","/"),r=b.posix.extname(n).toLowerCase();return Vo[r]??null}function cl(e,n){return b.join(e,"history",`${n}.jsonl`)}function dl(e,n){return b.join(e,"locks",`${n}.lock`)}function ul(e){return b.join(e,"runtime")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c29511ab-8c01-57f2-b353-cbc72900cb90")}catch{}})();function Ho(e){if(typeof e!="string")return null;let n=e.trim();return n.length>0?n:null}function ml(e){return Ho(e)??void 0}function pl(e){let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n-=1;return n===e.length?e:e.slice(0,n)}function gl(e){return Array.isArray(e)&&e.every(n=>typeof n=="number"&&Number.isFinite(n))}function hl(e){if(e instanceof Error){let n=e.message.trim();return n.length>0?n:e.name}return String(e)}function _r(e){let n=typeof e=="number"?e:typeof e=="string"&&e.trim().length>0?Number(e.trim()):Number.NaN;return Number.isFinite(n)?n:null}function yl(e){let n=_r(e);return n===null||n<=0||!Number.isInteger(n)?null:n}function _l(e,n,r){let t=_r(e);return t===null||t<n||t>r?null:t}function X(e){return typeof e!="object"||e===null?null:e}function yr(e){return typeof e!="object"&&typeof e!="function"||e===null?null:e}function wr(e){let n=yr(e);if(!n)return null;if(typeof n.activate=="function")return n;let r=yr(n.default);return typeof r?.activate=="function"?r:null}function wl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e}:{}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8a7dca67-8f1e-5451-b45c-4a75b1117d72")}catch{}})();var Go=Object.freeze({string:"string",number:"number",int:"number",integer:"number",float:"number",boolean:"boolean",bool:"boolean"});function br(e){return typeof e!="string"?null:Go[e.trim().toLowerCase()]??null}function vr(e){let n=[],r=t=>{if(Array.isArray(t)){for(let o of t)r(o);return}if(typeof t=="string"){for(let o of t.split(",")){let i=o.trim();i.length>0&&n.push(i)}return}t!=null&&n.push(t)};return r(e),n}function Er(e,n){return n==="string"?!0:n==="number"?typeof e=="number"?Number.isFinite(e):typeof e=="string"&&e.trim().length>0&&Number.isFinite(Number(e)):typeof e=="boolean"?!0:typeof e=="string"&&["true","false","1","0"].includes(e.trim().toLowerCase())}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="baa8b608-7f1e-5382-abe3-b1af79e46da4")}catch{}})();function Je(){return{beforeCommand:[],beforeMutation:[],afterCommand:[],onWrite:[],onRead:[],onIndex:[]}}function Ze(){return{overrides:[],handlers:[]}}function Qe(){return{overrides:[]}}function en(){return{overrides:[]}}function nn(){return{overrides:[]}}function rn(){return{overrides:[]}}function tn(){return{commands:[],flags:[],item_fields:[],item_types:[],relationship_kinds:[],migrations:[],profiles:[],importers:[],exporters:[],search_providers:[],vector_store_adapters:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ac377139-8ce2-58ad-8005-0ac907a9baed")}catch{}})();var Yo=5e3;async function on(e,n,r){let t=[];for(let o of e)try{await o.run(k(r))}catch{t.push(`extension_hook_failed:${o.layer}:${o.name}:${n}`)}return t}function Xo(e,n,r){if(e===void 0)return;if(typeof e!="object"||e===null||!("allow"in e)||e.allow!==!0&&e.allow!==!1)throw new x(`Extension mutation guard ${n.name} returned an invalid decision.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_decision",reason:`${n.layer}:${n.name}`,nextSteps:["Return { allow: true } or a structured denial from the guard."]});if(e.allow)return;let t=e,o=typeof t.code=="string"?t.code.trim():"",i=typeof t.remediation=="string"?t.remediation.trim():"";if(o.length===0||i.length===0)throw new x(`Extension mutation guard ${n.name} returned an invalid denial.`,C.CONFLICT,{code:"extension_mutation_guard_invalid_denial",reason:`${n.layer}:${n.name}`,nextSteps:["Return non-empty code and remediation fields from the guard."]});let s=typeof t.message=="string"?t.message.trim():"";throw new x(s||`Extension mutation guard ${n.name} denied ${r}.`,C.CONFLICT,{code:o,reason:`${n.layer}:${n.name}`,nextSteps:[i]})}async function Jo(e,n){for(let r of e.beforeMutation??[]){let t,o;try{let i=Promise.resolve().then(()=>r.run({pm_root:n.pm_root,operation:n.operation,before:n.before===null?null:k(n.before),after:n.after===null?null:k(n.after),changed_fields:[...n.changed_fields],sdk:n.sdk}));i.catch(()=>{}),t=await Promise.race([i,new Promise((s,a)=>{o=setTimeout(()=>{a(new x(`Extension mutation guard ${r.name} timed out before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_timed_out",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the stalled extension guard, then retry the mutation."]}))},Yo),o.unref?.()})])}catch(i){throw i instanceof x?i:new x(`Extension mutation guard ${r.name} failed before ${n.operation}.`,C.CONFLICT,{code:"extension_mutation_guard_failed",reason:`${r.layer}:${r.name}`,nextSteps:["Fix or disable the failing extension guard, then retry the mutation."]})}finally{clearTimeout(o)}Xo(t,r,n.operation)}}async function Zo(e,n){return on(e.onWrite,"onWrite",n)}async function Qo(e,n){return on(e.onRead,"onRead",n)}async function ei(e,n){return on(e.onIndex,"onIndex",n)}function ni(e){let n="";e instanceof Error&&typeof e.message=="string"?n=e.message:typeof e=="string"?n=e:typeof e=="object"&&e!==null&&typeof e.message=="string"&&(n=e.message);let r=n.replace(/\s+/gu," ").trim();if(r.length===0)return"";let t=300;return r.length>t?`${r.slice(0,t-1)}\u2026`:r}function xe(e,n){if(typeof e!="object"||e===null||typeof e[n]!="string")return;let r=String(e[n]).replace(/\s+/gu," ").trim();return r.length>0?r.slice(0,300):void 0}function ri(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"exit_code"))return;let n=e.exit_code;if(typeof n!="number"||!Number.isInteger(n)||n<1||n>255)throw new TypeError("Extension command result exit_code must be an integer from 1 to 255.");return n}async function ti(e,n){let r=v(n.command);if(r.length===0)return{handled:!1,result:null,warnings:[]};let t=[...e.handlers].reverse().find(o=>o.command===r);if(!t)return{handled:!1,result:null,warnings:[]};try{let o=await t.run({command:r,args:k(n.args),options:k(n.options),global:k(n.global),pm_root:n.pm_root,source_workspace_root:n.source_workspace_root,repo_root:n.repo_root,pm_root_rel:n.pm_root_rel,...n.sdk===void 0?{}:{sdk:n.sdk}});return{handled:!0,result:o,warnings:[],...Object.fromEntries([["exitCode",ri(o)],["errorCode",xe(o,"code")],["remediation",xe(o,"remediation")]].filter(i=>i[1]!==void 0))}}catch(o){let i=typeof o=="object"&&o!==null&&"exitCode"in o?o.exitCode:void 0;if(typeof i=="number"&&Number.isFinite(i))throw o;return{handled:!1,result:null,warnings:[`extension_command_handler_failed:${t.layer}:${t.name}:${t.command}`],errorMessage:ni(o),...Object.fromEntries([["errorCode",xe(o,"code")],["remediation",xe(o,"remediation")]].filter(s=>s[1]!==void 0))}}}function kr(e){return{handled:!1,result:e.payload,warnings:[]}}function xr(e,n){return[...e.overrides].reverse().filter(r=>r.service===n)}function Cr(e){return{service:e.service,command:e.command?v(e.command):void 0,args:e.args?k(e.args):void 0,options:e.options?Ln(e.options):void 0,global:e.global?qn(e.global):void 0,pm_root:e.pm_root,source_workspace_root:e.source_workspace_root,repo_root:e.repo_root,pm_root_rel:e.pm_root_rel,payload:k(e.payload)}}function oi(e){if(typeof e!="object"||e===null||!Object.hasOwn(e,"handled"))return!1;let n=e.handled;return n===!0?Object.hasOwn(e,"result"):n===!1&&Reflect.ownKeys(e).length===1}function Sr(e,n){return oi(e)?e.handled?{handled:!0,result:e.result}:{handled:!1,result:n.payload}:n.service==="output_format"&&e==null?{handled:!1,result:n.payload}:{handled:!0,result:e}}function Ir(e,n,r){return n.service==="output_format"&&typeof e=="object"&&e!==null&&Dn(e,r.payload)}function ii(e,n){let r=xr(e,n.service);if(r.length===0)return kr(n);let t=[];for(let o of r)try{let i=Cr(n),s=o.run(i);if(s instanceof Promise){t.push(`extension_service_override_async_unsupported:${o.layer}:${o.name}:${o.service}`);continue}if(Ir(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Sr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}async function si(e,n){let r=xr(e,n.service);if(r.length===0)return kr(n);let t=[];for(let o of r)try{let i=Cr(n),s=await Promise.resolve(o.run(i));if(Ir(s,n,i)){t.push(`extension_output_format_payload_echo_deprecated:${o.layer}:${o.name}`);continue}let a=Sr(s,n);if(!a.handled)continue;return{handled:!0,result:a.result,warnings:t}}catch{t.push(`extension_service_override_failed:${o.layer}:${o.name}:${o.service}`)}return{handled:!1,result:n.payload,warnings:t}}import H from"node:fs/promises";import B from"node:path";import{pathToFileURL as vi}from"node:url";import ai from"node:fs/promises";import ae from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e81790e9-3de2-5639-a84d-2c4714afbbf4")}catch{}})();async function Tr(e,n){let r=ae.dirname(n.manifest_path),t=ae.relative(r,n.entry_path);if(t.startsWith("..")||ae.isAbsolute(t))throw new Error(`Cannot snapshot extension entry outside its package directory: ${n.entry_path}`);let o=ae.join(e,`${n.layer}-${n.directory.replace(/[^a-zA-Z0-9._-]/gu,"_")}`);return await ai.cp(r,o,{recursive:!0,force:!0}),ae.join(o,t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1558713a-91ea-5eef-8426-d910e0b77045")}catch{}})();function Ar(e){let n={beforeCommand:e.hooks.beforeCommand.length,beforeMutation:e.hooks.beforeMutation.length,afterCommand:e.hooks.afterCommand.length,onWrite:e.hooks.onWrite.length,onRead:e.hooks.onRead.length,onIndex:e.hooks.onIndex.length,commandOverrides:e.commands.overrides.length,commandHandlers:e.commands.handlers.length,parserOverrides:e.parsers.overrides.length,preflightOverrides:e.preflight.overrides.length,serviceOverrides:e.services.overrides.length,rendererOverrides:e.renderers.overrides.length,registrations:Object.fromEntries(Object.entries(e.registrations).map(([r,t])=>[r,t.length]))};return()=>{e.hooks.beforeCommand.length=n.beforeCommand,e.hooks.beforeMutation.length=n.beforeMutation,e.hooks.afterCommand.length=n.afterCommand,e.hooks.onWrite.length=n.onWrite,e.hooks.onRead.length=n.onRead,e.hooks.onIndex.length=n.onIndex,e.commands.overrides.length=n.commandOverrides,e.commands.handlers.length=n.commandHandlers,e.parsers.overrides.length=n.parserOverrides,e.preflight.overrides.length=n.preflightOverrides,e.services.overrides.length=n.serviceOverrides,e.renderers.overrides.length=n.rendererOverrides;for(let[r,t]of Object.entries(n.registrations))e.registrations[r].length=t}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="065f61c6-2123-5a6d-984a-569bb14d6911")}catch{}})();function $r(e){let n=typeof e=="function"?e:e.run;if(typeof n!="function")throw new TypeError("registerPreflight override requires a function handler");let r=[...new Set((typeof e=="function"?[]:e.commands??[]).map(t=>{if(typeof t!="string"||t.trim().length===0)throw new TypeError("registerPreflight ownership.commands must contain non-empty command paths");return v(t)}))];return{run:n,...r.length>0?{commands:r}:{}}}function Rr(e){let n=[];for(let r=1;r<e.overrides.length;r+=1){let t=e.overrides[r];for(let o of e.overrides.slice(0,r))t.commands?.length&&o.commands?.length&&!o.commands.some(i=>t.commands.includes(i))||n.push(`extension_preflight_override_collision:${t.layer}:${t.name}:${o.layer}:${o.name}`)}return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dc9a3977-a78a-501e-b600-45e7031dcebd")}catch{}})();function O(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return n}function I(e,n){if(n!==void 0&&typeof n!="boolean")throw new TypeError(`${e} must be a boolean when provided`)}function S(e,n){if(n!==void 0&&(typeof n!="string"||n.trim().length===0))throw new TypeError(`${e} must be a non-empty string when provided`)}function Pr(e,n){if(n===void 0)return;let r=t=>typeof t=="string"||typeof t=="number"||typeof t=="boolean";if(Array.isArray(n)){for(let[t,o]of n.entries())if(!r(o))throw new TypeError(`${e}[${t}] must be a string, number, or boolean`);return}if(!r(n))throw new TypeError(`${e} must be a string, number, or boolean, or an array of these when provided`)}function W(e,n){if(n!==void 0){if(!Array.isArray(n))throw new TypeError(`${e} must be an array of non-empty strings when provided`);for(let[r,t]of n.entries())if(typeof t!="string"||t.trim().length===0)throw new TypeError(`${e}[${r}] must be a non-empty string`)}}function le(e,n){if(W(e,n),!Array.isArray(n))return[];let r=[],t=new Set;for(let o of n){let i=o.trim();i.length===0||t.has(i)||(t.add(i),r.push(i))}return r}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="45d00ef3-870c-5f3f-89c1-6abd54c518fe")}catch{}})();function Or(e){S("registerCommand definition.action",e.action),S("registerCommand definition.description",e.description),S("registerCommand definition.intent",e.intent),S("registerCommand definition.tier",e.tier);let n=e.tier;if(n!==void 0&&n!=="core"&&n!=="standard"&&n!=="full"&&n!=="internal")throw new Error("registerCommand definition.tier must be core, standard, full, or internal")}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="24383c0a-592e-5105-84a3-a6cfb7801281")}catch{}})();function A(e){return typeof e!="string"?"":e.trim().toLowerCase()}function y(e){return new Set((e??[]).map(n=>n.trim().toLowerCase()).filter(n=>n.length>0))}function li(e){let n=e.trim().toLowerCase();if(n.length===0)return"";let r=n.split(/[.:/]/).map(t=>t.replace(/[\s_-]+/g,"")).filter(t=>t.length>0);return r.length===0?"":r.length===1?r[0]:`${r[0]}.${r.slice(1).join("")}`}function J(e){return new Set((e??[]).map(n=>li(n)).filter(n=>n.length>0))}function Dr(e){let n=A(e);return bn.includes(n)?n:"off"}function Nr(e){let n=A(e);return vn.includes(n)?n:"off"}function ce(e){let n=A(e);return En.includes(n)?n:"none"}function sn(e){if(typeof e!="string")return;let n=e.trim().toLowerCase();return kn.includes(n)?n:void 0}function Fr(e){if(typeof e=="string"){let n=sn(e)??"block";return{global:n,project:n}}return typeof e=="object"&&e!==null&&!Array.isArray(e)?{global:sn(e.global)??"block",project:sn(e.project)??"block"}:{global:"block",project:"block"}}function ci(e){return e.global===e.project?e.global:{global:e.global,project:e.project}}function _(e){return[...new Set(e)].sort((n,r)=>n.localeCompare(r))}function di(e){let n=A(e.name);return n.length===0?null:{name:n,normalized:{name:n,disabled:e.disabled===!0,requireTrusted:e.require_trusted===!0,requireProvenance:e.require_provenance===!0,sandboxProfile:e.sandbox_profile!==void 0?ce(e.sandbox_profile):void 0,allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:J(e.allowed_surfaces),blockedSurfaces:J(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services)}}}function Mr(e){let n=new Map;for(let r of e??[]){let t=di(r);t&&n.set(t.name,t.normalized)}return n}function ui(e){let n=[],r=[...e.overridesByName.values()].sort((o,i)=>o.name.localeCompare(i.name));for(let o of _([...e.allowedCapabilities,...e.blockedCapabilities]))N(o)||n.push(`extension_policy_unknown_capability:${o}`);for(let o of r)for(let i of _([...o.allowedCapabilities,...o.blockedCapabilities]))N(i)||n.push(`extension_policy_unknown_capability:${o.name}:${i}`);let t=new Set(xn);for(let o of _([...e.allowedSurfaces,...e.blockedSurfaces]))t.has(o)||n.push(`extension_policy_unknown_surface:${o}`);for(let o of r)for(let i of _([...o.allowedSurfaces,...o.blockedSurfaces]))t.has(i)||n.push(`extension_policy_unknown_surface:${o.name}:${i}`);return[...new Set(n)].sort((o,i)=>o.localeCompare(i))}function zr(e){let n=e.extensions?.policy??{},r=y(n.allowed_capabilities),t=y(n.blocked_capabilities),o=J(n.allowed_surfaces),i=J(n.blocked_surfaces),s=Mr(n.extension_overrides);return{mode:Dr(n.mode),trustMode:Nr(n.trust_mode),pmMaxVersionExceededMode:Fr(n.pm_max_version_exceeded_mode),requireProvenance:n.require_provenance===!0,trustedExtensions:y(n.trusted_extensions),defaultSandboxProfile:ce(n.default_sandbox_profile),allowedExtensions:y(n.allowed_extensions),blockedExtensions:y(n.blocked_extensions),allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,allowedCommands:y(n.allowed_commands),blockedCommands:y(n.blocked_commands),allowedActions:y(n.allowed_actions),blockedActions:y(n.blocked_actions),allowedServices:y(n.allowed_services),blockedServices:y(n.blocked_services),overridesByName:s,warnings:ui({allowedCapabilities:r,blockedCapabilities:t,allowedSurfaces:o,blockedSurfaces:i,overridesByName:s})}}function jr(e){let n=[...e.overridesByName.values()].sort((r,t)=>r.name.localeCompare(t.name)).map(r=>({name:r.name,...r.disabled?{disabled:!0}:{},...r.requireTrusted?{require_trusted:!0}:{},...r.requireProvenance?{require_provenance:!0}:{},...r.sandboxProfile?{sandbox_profile:r.sandboxProfile}:{},...r.allowedCapabilities.size>0?{allowed_capabilities:_(r.allowedCapabilities)}:{},...r.blockedCapabilities.size>0?{blocked_capabilities:_(r.blockedCapabilities)}:{},...r.allowedSurfaces.size>0?{allowed_surfaces:_(r.allowedSurfaces)}:{},...r.blockedSurfaces.size>0?{blocked_surfaces:_(r.blockedSurfaces)}:{},...r.allowedCommands.size>0?{allowed_commands:_(r.allowedCommands)}:{},...r.blockedCommands.size>0?{blocked_commands:_(r.blockedCommands)}:{},...r.allowedActions.size>0?{allowed_actions:_(r.allowedActions)}:{},...r.blockedActions.size>0?{blocked_actions:_(r.blockedActions)}:{},...r.allowedServices.size>0?{allowed_services:_(r.allowedServices)}:{},...r.blockedServices.size>0?{blocked_services:_(r.blockedServices)}:{}}));return{mode:e.mode,trust_mode:e.trustMode,pm_max_version_exceeded_mode:ci(e.pmMaxVersionExceededMode),require_provenance:e.requireProvenance,trusted_extensions:_(e.trustedExtensions),default_sandbox_profile:e.defaultSandboxProfile,allowed_extensions:_(e.allowedExtensions),blocked_extensions:_(e.blockedExtensions),allowed_capabilities:_(e.allowedCapabilities),blocked_capabilities:_(e.blockedCapabilities),allowed_surfaces:_(e.allowedSurfaces),blocked_surfaces:_(e.blockedSurfaces),allowed_commands:_(e.allowedCommands),blocked_commands:_(e.blockedCommands),allowed_actions:_(e.allowedActions),blocked_actions:_(e.blockedActions),allowed_services:_(e.allowedServices),blocked_services:_(e.blockedServices),extension_overrides:n}}function Lr(e){let n=Mr(e.extension_overrides);return{mode:Dr(e.mode),trustMode:Nr(e.trust_mode),pmMaxVersionExceededMode:Fr(e.pm_max_version_exceeded_mode),requireProvenance:e.require_provenance===!0,trustedExtensions:y(e.trusted_extensions),defaultSandboxProfile:ce(e.default_sandbox_profile),allowedExtensions:y(e.allowed_extensions),blockedExtensions:y(e.blocked_extensions),allowedCapabilities:y(e.allowed_capabilities),blockedCapabilities:y(e.blocked_capabilities),allowedSurfaces:J(e.allowed_surfaces),blockedSurfaces:J(e.blocked_surfaces),allowedCommands:y(e.allowed_commands),blockedCommands:y(e.blocked_commands),allowedActions:y(e.allowed_actions),blockedActions:y(e.blocked_actions),allowedServices:y(e.allowed_services),blockedServices:y(e.blocked_services),overridesByName:n,warnings:[]}}function z(e,n){return e.overridesByName.get(A(n))??null}function Z(e,n,r,t,o){return n.has(r)?o:e.size>0&&!e.has(r)?t:null}function qr(e,n,r){let t=r.trim().toLowerCase(),o=z(e,n.name),i=o&&o.allowedCapabilities.size>0?o.allowedCapabilities:e.allowedCapabilities,s=new Set([...e.blockedCapabilities,...o?o.blockedCapabilities:[]]);return Z(i,s,t,"capability_not_allowlisted","capability_blocked")}function fi(e,n,r){let t=z(e,n.name),o=t&&t.allowedSurfaces.size>0?t.allowedSurfaces:e.allowedSurfaces,i=new Set([...e.blockedSurfaces,...t?t.blockedSurfaces:[]]);return Z(o,i,r,"surface_not_allowlisted","surface_blocked")}function mi(e,n,r){let t=v(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedCommands.size>0?o.allowedCommands:e.allowedCommands,s=new Set([...e.blockedCommands,...o?o.blockedCommands:[]]);return Z(i,s,t,"command_not_allowlisted","command_blocked")}function pi(e,n,r){let t=A(r).replace(/\s+/g,"-");if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedActions.size>0?o.allowedActions:e.allowedActions,s=new Set([...e.blockedActions,...o?o.blockedActions:[]]);return Z(i,s,t,"action_not_allowlisted","action_blocked")}function gi(e,n,r){let t=A(r);if(t.length===0)return null;let o=z(e,n.name),i=o&&o.allowedServices.size>0?o.allowedServices:e.allowedServices,s=new Set([...e.blockedServices,...o?o.blockedServices:[]]);return Z(i,s,t,"service_not_allowlisted","service_blocked")}function hi(e,n){let r=A(n.name);return z(e,n.name)?.disabled===!0?"extension_override_disabled":Z(e.allowedExtensions,e.blockedExtensions,r,"extension_not_allowlisted","extension_blocked")}function yi(e,n){if(e.trustMode==="off")return null;let r=z(e,n.name),t=A(n.name),o=n.trusted===!0,i=n.provenanceVerified===!0;return e.trustedExtensions.size>0&&!e.trustedExtensions.has(t)?"extension_not_trusted":(r?.requireTrusted===!0||e.trustMode==="warn"||e.trustMode==="enforce")&&!o?"extension_untrusted":(e.requireProvenance||r?.requireProvenance===!0)&&!i?"provenance_missing_or_unverified":null}function _i(e,n){if(e.mode==="off")return null;let t=z(e,n.name)?.sandboxProfile??n.sandboxProfile??e.defaultSandboxProfile;if(t==="none")return null;let o=n.permissions;if(!o)return"sandbox_permissions_missing";let i=s=>o[s]===!0;return t==="restricted"?i("process_spawn")?"sandbox_restricted_disallows_process_spawn":i("env_write")?"sandbox_restricted_disallows_env_write":null:i("process_spawn")?"sandbox_strict_disallows_process_spawn":i("network")?"sandbox_strict_disallows_network":i("fs_write")?"sandbox_strict_disallows_fs_write":i("env_write")?"sandbox_strict_disallows_env_write":null}function Ce(e,n,r,t,o={}){let i=Object.entries(o).sort((a,l)=>a[0].localeCompare(l[0])).map(([a,l])=>`${a}=${l}`).join(":"),s=i.length>0?`:${i}`:"";return`extension_policy_${e}_${n}:${r.layer}:${r.name}:reason=${t}${s}`}function Vr(e,n){if(e.mode==="off"&&e.trustMode==="off")return{allowed:!0,warning:null};let r=[],t=hi(e,n);t&&r.push({reason:t,scope:"extension",mode:e.mode});let o=yi(e,n);o&&r.push({reason:o,scope:"trust",mode:e.trustMode});let i=_i(e,n);i&&r.push({reason:i,scope:"extension",mode:e.mode});let s=r.find(l=>l.mode==="enforce");if(s)return{allowed:!1,warning:Ce("blocked",s.scope,n,s.reason)};let a=r.find(l=>l.mode==="warn");return a?{allowed:!0,warning:Ce("violation",a.scope,n,a.reason)}:{allowed:!0,warning:null}}function Ur(e,n,r){if(e.mode==="off")return{allowed:!0,warning:null};let t=qr(e,n,r);return t?{allowed:e.mode==="warn",warning:Ce(e.mode==="warn"?"violation":"blocked","capability",n,t,{capability:r.trim().toLowerCase()})}:{allowed:!0,warning:null}}function wi(e,n,r,t,o){let i=typeof t=="string"?qr(e,n,t):null,s=fi(e,n,r),a=o.command?mi(e,n,o.command):null,l=o.action?pi(e,n,o.action):null,c=o.service?gi(e,n,o.service):null;return i??s??a??l??c}function bi(e,n,r,t){let o={method:A(e).replace(/\s+/g,"_"),surface:n};return r&&(o.capability=r),t.command&&(o.command=v(t.command)),t.action&&(o.action=A(t.action).replace(/\s+/g,"-")),t.service&&(o.service=A(t.service)),o}function Wr(e,n,r,t,o,i){if(e.mode==="off")return{allowed:!0,warning:null};let s=i??{},a=wi(e,n,r,o,s);if(!a)return{allowed:!0,warning:null};let l=Ce(e.mode==="warn"?"violation":"blocked","registration",n,a,bi(t,r,o,s));return{allowed:e.mode==="warn",warning:l}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch{}})();function Kr(e){return!e.extensionReady||!e.enabledForLoad?null:{layer:e.layer,directory:e.directory,manifest_path:e.manifestPath,entry_path:e.entryPath,manifest:e.manifest,source_package:e.sourceIdentity?.package_name,source_aliases:e.sourceIdentity?.aliases,contributions:e.sourceIdentity?.contributions}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3d5208e5-0ea5-54a5-82a8-50294b4a0655")}catch{}})();var Ei=100,Br=null,ki=Object.freeze(Cn()),Hr=0;function xi(e=Date.now()){return Hr+=1,`${Hr}-${e}`}function Gr(e,n){let r=e[n];if(r!=null)return typeof r!="string"||r.trim().length===0?null:r.trim()}function Ci(e){if(e==null)return;let n=X(e);if(!n)return null;let r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i))){if(t.trim().length===0)return null;let o=n[t];if(typeof o!="string"||o.trim().length===0)return null;r[t.trim()]=o.trim()}return Object.keys(r).length>0?r:void 0}function an(e,n){let r=e[n];return typeof r!="string"||r.trim().length===0?null:r.trim()}function it(e){if(e!=null)return typeof e!="number"||!Number.isInteger(e)?null:e}function K(e){if(e!=null)return typeof e!="boolean"?null:e}function Si(e){let n=it(e.priority);return n===void 0?Ei:n}function Ii(e){let n=e.sandbox_profile;if(n==null)return;if(typeof n!="string")return null;let r=ce(n);return r!==n.trim().toLowerCase()?null:r}function ln(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}function Ti(e){if(e==null)return;let n=X(e);if(!n)return null;let r=ln(n.source),t=ln(n.signature),o=ln(n.attestation),i=n.verified===void 0||n.verified===null?void 0:typeof n.verified=="boolean"?n.verified:null;return i===null?null:{...r?{source:r}:{},...t?{signature:t}:{},...o?{attestation:o}:{},...typeof i=="boolean"?{verified:i}:{}}}function Ai(e){if(e==null)return;let n=X(e);if(!n)return null;let r=K(n.fs_read),t=K(n.fs_write),o=K(n.network),i=K(n.env_read),s=K(n.env_write),a=K(n.process_spawn);return[r,t,o,i,s,a].includes(null)?null:{...typeof r=="boolean"?{fs_read:r}:{},...typeof t=="boolean"?{fs_write:t}:{},...typeof o=="boolean"?{network:o}:{},...typeof i=="boolean"?{env_read:i}:{},...typeof s=="boolean"?{env_write:s}:{},...typeof a=="boolean"?{process_spawn:a}:{}}}function $i(e){if(e==null)return{capabilities:[],legacy_aliases:[]};if(!Array.isArray(e)||e.some(r=>typeof r!="string"))return null;let n=Wn(e);return{capabilities:n.capabilities,legacy_aliases:n.legacy_aliases}}function Ri(e){if(e==null)return;let n=X(e);if(!n)return null;let r=n.commands;if(r==null)return;if(!Array.isArray(r)||r.some(o=>typeof o!="string"))return null;let t=[...new Set(r.map(o=>v(o)).filter(o=>o.length>0))].sort((o,i)=>o.localeCompare(i));return t.length>0?{commands:t}:void 0}function Pi(e){let n=it(e.manifest_version);if(n===null)return null;let r=Gr(e,"pm_min_version");if(r===null)return null;let t=Gr(e,"pm_max_version");if(t===null)return null;let o=Ci(e.engines);if(o===null)return null;let i=K(e.trusted);if(i===null)return null;let s=Ii(e);if(s===null)return null;let a=Ti(e.provenance);if(a===null)return null;let l=Ai(e.permissions);if(l===null)return null;let c=$i(e.capabilities);if(c===null)return null;let d=Ri(e.activation);if(d===null)return null;let u=Ve(e.contributions);return u===null?null:{manifest_version:n,pm_min_version:r,pm_max_version:t,engines:o,trusted:i,sandbox_profile:s,provenance:a,permissions:l,capabilities:c.capabilities,legacy_capability_aliases:c.legacy_aliases,activation:d,contributions:u}}function Oi(e){if(typeof e!="object"||e===null)return null;let n=e,r=an(n,"name");if(r===null)return null;let t=an(n,"version");if(t===null)return null;let o=an(n,"entry");if(o===null)return null;let i=Si(n);if(i===null)return null;let s=Pi(n);return s===null?null:{name:r,version:t,entry:o,priority:i,manifest_version:s.manifest_version,pm_min_version:s.pm_min_version,pm_max_version:s.pm_max_version,engines:s.engines,trusted:s.trusted,provenance:s.provenance,sandbox_profile:s.sandbox_profile,permissions:s.permissions,activation:s.activation,contributions:s.contributions,capabilities:s.capabilities,legacy_capability_aliases:s.legacy_capability_aliases.length>0?s.legacy_capability_aliases:void 0}}function Di(e,n,r){return r.has(e)?!1:n.size===0?!0:n.has(e)}async function Ni(e,n){let[r,t]=await Promise.all([H.realpath(e),H.realpath(n)]);return Be(r,t)}function Fi(e,n=process.cwd()){return{global:B.join(hr(n),"extensions"),project:B.join(e,"extensions")}}async function Mi(e){try{return(await H.readdir(e,{withFileTypes:!0})).filter(r=>r.isDirectory()).map(r=>r.name).sort((r,t)=>r.localeCompare(t))}catch{return[]}}function zi(e){let n={layer:e.layer,directory:e.directory,manifest_path:e.manifest_path,name:e.manifest.name,version:e.manifest.version,entry:e.manifest.entry,priority:e.manifest.priority,entry_path:e.entry_path,manifest_version:e.manifest.manifest_version,pm_min_version:e.manifest.pm_min_version,pm_max_version:e.manifest.pm_max_version,engines:e.manifest.engines,trusted:e.manifest.trusted,provenance:e.manifest.provenance,sandbox_profile:e.manifest.sandbox_profile,permissions:e.manifest.permissions,capabilities:[...e.manifest.capabilities],activation:e.manifest.activation?{commands:[...e.manifest.activation.commands]}:void 0,contributions:e.manifest.contributions??e.contributions};return e.source_package&&(n.source_package=e.source_package),e.source_aliases&&(n.source_aliases=[...e.source_aliases]),n}function Yr(e){return typeof e=="string"&&e.trim().length>0?e.trim():void 0}async function ji(e){let n=new Map;try{let r=JSON.parse(await H.readFile(B.join(e,".managed-extensions.json"),"utf8")),o=X(r)?.entries;if(!Array.isArray(o))return n;for(let i of o){if(typeof i!="object"||i===null)continue;let s=i,a=Yr(s.source?.package),l=[s.source?.input,s.source?.name,a].map(u=>Yr(u)).filter(u=>u!==void 0),c=Ve(s.contributions),d={aliases:[...new Set(l)],...a?{package_name:a}:{},...c?{contributions:c}:{}};typeof s.directory=="string"&&s.directory.trim().length>0&&n.set(`directory:${s.directory.trim()}`,d),typeof s.name=="string"&&s.name.trim().length>0&&n.set(`name:${s.name.trim()}`,d)}}catch{return n}return n}function Xr(e){return[...e].sort((n,r)=>{if(n.manifest.priority!==r.manifest.priority)return n.manifest.priority-r.manifest.priority;let t=n.manifest.name.localeCompare(r.manifest.name);return t!==0?t:n.directory.localeCompare(r.directory)})}function Li(e,n){let r=[...Xr(e),...Xr(n)],t=[];for(let o of r){let i=t.findIndex(s=>s.manifest.name===o.manifest.name);i>=0&&t.splice(i,1),t.push(o)}return t}async function Jr(e,n,r,t,o){let i=[],s=[],a=[],l=await Mi(n),c=await ji(n);for(let d of l){let u=await Ui(e,n,d,r,t,c,o);i.push(u.diagnostic),s.push(...u.warnings),u.candidate&&a.push(u.candidate)}return{diagnostics:i,warnings:s,candidates:a}}function qi(){return{diagnostics:[],warnings:[],candidates:[]}}function Zr(e,n,r,t){return{diagnostic:{layer:e,directory:n,manifest_path:r,name:null,version:null,entry:null,priority:null,entry_path:null,enabled:null,status:"warn"},warnings:[t],candidate:null}}function Vi(e,n,r,t,o,i){let s=[];Array.isArray(n.legacy_capability_aliases)&&n.legacy_capability_aliases.length>0&&s.push(Bn(e,n.name,n.legacy_capability_aliases));for(let a of Un(n.capabilities))s.push(Kn(e,n.name,a));return r?t||s.push(`extension_entry_missing:${e}:${n.name}`):s.push(`extension_entry_outside_extension:${e}:${n.name}`),o.warning&&s.push(o.warning),i.warning&&s.push(i.warning),s}async function Ui(e,n,r,t,o,i,s){let a=B.join(n,r),l=B.join(a,"manifest.json");if(!await ie(l))return Zr(e,r,l,`extension_manifest_missing:${e}:${r}`);let c;try{let Pe=JSON.parse(await H.readFile(l,"utf8"));c=Oi(Pe)}catch{c=null}if(!c)return Zr(e,r,l,`extension_manifest_invalid:${e}:${r}`);let d=B.resolve(a,c.entry),u=Be(a,d),m=u?await ie(d):!1,f=u&&m?await Ni(a,d):u,h=Di(c.name,t,o),p=await Bi(e,c),g=await Hi(e,c,s),$=Vi(e,c,f,m,p,g),ee=f&&m&&p.allowed&&g.allowed,Re=i.get(`directory:${r}`)??i.get(`name:${c.name}`);return{diagnostic:{layer:e,directory:r,manifest_path:l,name:c.name,version:c.version,entry:c.entry,priority:c.priority,entry_path:d,enabled:h,status:ee?"ok":"warn"},warnings:$,candidate:Kr({layer:e,directory:r,manifestPath:l,entryPath:d,manifest:c,sourceIdentity:Re,extensionReady:ee,enabledForLoad:h})}}async function Wi(e){let n=Fi(e.pmRoot,e.cwd??process.cwd()),r=te(e.settings.extensions.enabled),t=te(e.settings.extensions.disabled),o=zr(e.settings),i=jr(o);if(e.noExtensions)return{disabled_by_flag:!0,roots:n,configured_enabled:r,configured_disabled:t,discovered:[],effective:[],warnings:[...o.warnings],policy:i};let s=new Set(r),a=new Set(t),l=e.ignoreGlobalExtensions===!0?qi():await Jr("global",n.global,s,a,o.pmMaxVersionExceededMode.global),c=await Jr("project",n.project,s,a,o.pmMaxVersionExceededMode.project),d=[...o.warnings],u=Li(l.candidates,c.candidates),m=[];for(let f of u){let h={layer:f.layer,name:f.manifest.name,trusted:f.manifest.trusted===!0,provenanceVerified:f.manifest.provenance?.verified===!0,sandboxProfile:f.manifest.sandbox_profile,permissions:f.manifest.permissions&&typeof f.manifest.permissions=="object"?{fs_read:f.manifest.permissions.fs_read,fs_write:f.manifest.permissions.fs_write,network:f.manifest.permissions.network,env_read:f.manifest.permissions.env_read,env_write:f.manifest.permissions.env_write,process_spawn:f.manifest.permissions.process_spawn}:void 0},p=Vr(o,h);if(p.warning&&d.push(p.warning),!!p.allowed){for(let g of f.manifest.capabilities){let $=Ur(o,h,g);$.warning&&d.push($.warning)}m.push(zi(f))}}return{disabled_by_flag:!1,roots:n,configured_enabled:r,configured_disabled:t,discovered:[...l.diagnostics,...c.diagnostics],effective:m,warnings:[...new Set([...l.warnings,...c.warnings,...d])],policy:i}}function $e(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}async function Ki(){try{let e=He(import.meta.url,["../../.."]),n=await H.readFile(B.join(e,"package.json"),"utf8"),r=JSON.parse(n);return typeof r.version=="string"&&r.version.trim().length>0?r.version.trim():null}catch{return null}}function st(){return Br??=Ki(),Br}function at(e,n,r){let t=r.current??"unknown";if(r.kind==="pm_min_version")switch(r.status){case"invalid":return`extension_pm_min_version_invalid:${e}:${n.name}:required=${r.required}`;case"unchecked":return`extension_pm_min_version_unchecked:${e}:${n.name}:required=${r.required}:current=${t}`;case"unmet":return`extension_pm_min_version_unmet:${e}:${n.name}:required=${r.required}:current=${t}`;default:return}switch(r.status){case"invalid":return`extension_pm_max_version_invalid:${e}:${n.name}:allowed=${r.required}`;case"unchecked":return`extension_pm_max_version_unchecked:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded_warn":return`extension_pm_max_version_exceeded_warn:${e}:${n.name}:allowed=${r.required}:current=${t}`;case"exceeded":return`extension_pm_max_version_exceeded:${e}:${n.name}:allowed=${r.required}:current=${t}`;default:return}}async function Bi(e,n){if(n.pm_min_version===void 0)return{allowed:!0};let r=Qn(n.pm_min_version,await st()),t=at(e,n,r);return t?{allowed:r.allowed,warning:t}:{allowed:r.allowed}}async function Hi(e,n,r){if(n.pm_max_version===void 0)return{allowed:!0};let t=er(n.pm_max_version,await st(),r),o=at(e,n,t);return o?{allowed:t.allowed,warning:o}:{allowed:t.allowed}}async function Qr(e){try{let n=await H.stat(e);return`${Math.trunc(n.mtimeMs)}-${n.size}`}catch{return"missing"}}async function Gi(e,n){let r=e.entry_path;n.module_graph_snapshot_root&&(r=await Tr(n.module_graph_snapshot_root,e));let t=new URL(vi(r).href);if(!(n.cache_bust===!0||typeof n.reload_token=="string"))return t.href;let[i,s]=await Promise.all([Qr(e.entry_path),Qr(e.manifest_path)]),a=n.reload_token??xi();return t.searchParams.set("pm_ext_reload",a),t.searchParams.set("pm_ext_entry",i),t.searchParams.set("pm_ext_manifest",s),t.href}async function wc(e){let n=await Wi(e),r=[],t=[],o=[...n.warnings];if(n.disabled_by_flag)return{...n,warnings:o,loaded:r,failed:t};let i=typeof e.extensionFilter=="function"?n.effective.filter(e.extensionFilter):n.effective;for(let s of i)try{let l=await import(await Gi(s,e));r.push({...s,module:l})}catch(a){o.push(`extension_load_failed:${s.layer}:${s.name}`),t.push({layer:s.layer,name:s.name,entry_path:s.entry_path,error:$e(a)})}return{...n,warnings:o,loaded:r,failed:t}}var et=5e3,Yi=2147483647;function Xi(e){let r={activate:e.activate.bind(e)};if(typeof e.deactivate=="function"){let t=e.deactivate;r.deactivate=t.bind(e)}return r}function lt(e){let n=wr(e);return n?Xi(n):null}async function bc(e,n,r={}){let t=Ji(r?.deactivate_timeout_ms),o=new Set((n?.failed??[]).map(d=>`${d.layer}:${d.name}`)),i=[];for(let d of e.loaded){if(o.has(`${d.layer}:${d.name}`))continue;let u=lt(d.module);!u||typeof u.deactivate!="function"||i.push({extension:d,deactivate:u.deactivate})}let s=await Promise.all(i.map(async({extension:d,deactivate:u})=>{try{return await Zi(u,t),{ok:!0}}catch(m){return{ok:!1,layer:d.layer,name:d.name,error:$e(m)}}})),a=[],l=[],c=0;for(let d of s){if(d.ok){c+=1;continue}a.push(`extension_deactivate_failed:${d.layer}:${d.name}`),l.push({layer:d.layer,name:d.name,error:d.error})}return{deactivated:c,warnings:a,failed:l}}function Ji(e){return typeof e!="number"||e<0?et:e===0||e===1/0?0:Number.isFinite(e)?Math.min(Yi,Math.max(1,Math.floor(e))):et}async function Zi(e,n){if(n===0){await e();return}let r;try{let t=Promise.resolve().then(()=>e());t.catch(()=>{}),await Promise.race([t,new Promise((o,i)=>{r=setTimeout(()=>{i(new Error(`extension deactivate timed out after ${n}ms`))},n),r.unref?.()})])}finally{clearTimeout(r)}}function Qi(e){return e==="toon"||e==="json"}function es(e){return De.includes(e)}function Q(e,n){if(typeof n!="function")throw new TypeError(`api.hooks.${e} requires a function handler`)}function T(e,n){if(typeof n!="string"||n.trim().length===0)throw new TypeError(`${e} requires a non-empty string`);return n.trim()}function Se(e,n){if(typeof n!="function")throw new TypeError(`${e} requires a function handler`)}function nt(e){return e.trim().toLowerCase().split(/\s+/).filter(n=>n.length>0).join(" ")}function rt(e,n){return v(`${e} ${n}`)}function Te(e){if(e===null)return null;if(Array.isArray(e))return e.map(n=>Te(n));if(typeof e=="function")return"[Function]";if(typeof e=="bigint"||typeof e=="symbol")return e.toString();if(typeof e=="object"){let n=e,r={},t=Object.keys(n).sort((o,i)=>o.localeCompare(i));for(let o of t)r[o]=Te(n[o]);return r}return e}function Ae(e){if(Array.isArray(e))return e.map(n=>Ae(n));if(typeof e=="object"&&e!==null){let n=e,r={};for(let t of Object.keys(n).sort((o,i)=>o.localeCompare(i)))r[t]=Ae(n[t]);return r}return e}var ct=Symbol("extension_registration_trace");function j(e,n){let r=new TypeError(e);return Object.defineProperty(r,ct,{value:n,enumerable:!1,configurable:!1,writable:!1}),r}function ns(e){if(e instanceof Error)return e[ct]}function Ie(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Te(n)}function cn(e,n){if(typeof n!="object"||n===null||Array.isArray(n))throw new TypeError(`${e} requires an object definition`);return Ae(n)}function mn(e,n){if(!Array.isArray(n))throw new TypeError(`${e} requires an array of object definitions`);return n.map(r=>Ie(e,r))}var rs=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function dn(e,n){return mn(e,n).map(r=>(r.repeatable===!0&&(r.list=!0),r))}function ts(e){return e.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function tt(e,n){if(n===void 0)return e.replace(/\s+/g,"-");if(typeof n!="string"||n.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");let r=ts(n);if(r.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return r}function ot(e){if(e===void 0)return[];if(!Array.isArray(e))throw new TypeError("registerCommand definition.arguments must be an array when provided");let n=[];for(let[t,o]of e.entries()){let i=O(`registerCommand definition.arguments[${t}]`,o),s=T(`registerCommand definition.arguments[${t}].name`,i.name);if(I(`registerCommand definition.arguments[${t}].required`,i.required),I(`registerCommand definition.arguments[${t}].variadic`,i.variadic),S(`registerCommand definition.arguments[${t}].description`,i.description),s.includes(" "))throw new TypeError(`registerCommand definition.arguments[${t}].name must not contain spaces`);let a={name:s};i.required===!0&&(a.required=!0),i.variadic===!0&&(a.variadic=!0),typeof i.description=="string"&&(a.description=i.description.trim()),n.push(a)}let r=n.map((t,o)=>t.variadic?o:-1).filter(t=>t>=0);if(r.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(r.length===1&&r[0]!==n.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return n}function un(e){if(!Array.isArray(e))throw new TypeError("registerFlags flags requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerFlags flags[${n}]`,r),o=Object.keys(t).filter(l=>!rs.has(l)).sort((l,c)=>l.localeCompare(c));if(o.length>0)throw new TypeError(`registerFlags flags[${n}] contains unknown field(s): ${o.join(", ")}`);let i=t.long,s=t.short;if(i===void 0&&s===void 0)throw new TypeError(`registerFlags flags[${n}] requires at least one of long or short`);S(`registerFlags flags[${n}].long`,i),S(`registerFlags flags[${n}].short`,s);let a=Xn(i,s);if(a!==null)throw new TypeError(`registerFlags flags[${n}] ${Jn(a.token,a.failure)}`);if(S(`registerFlags flags[${n}].value_name`,t.value_name),S(`registerFlags flags[${n}].description`,t.description),I(`registerFlags flags[${n}].required`,t.required),I(`registerFlags flags[${n}].enabled`,t.enabled),I(`registerFlags flags[${n}].visible`,t.visible),I(`registerFlags flags[${n}].list`,t.list),I(`registerFlags flags[${n}].repeatable`,t.repeatable),t.list!==void 0&&t.repeatable!==void 0&&t.list!==t.repeatable)throw new TypeError(`registerFlags flags[${n}].list and repeatable must match when both are provided`);if(Pr(`registerFlags flags[${n}].default`,t.default),Array.isArray(t.default)&&t.list!==!0&&t.repeatable!==!0)throw new TypeError(`registerFlags flags[${n}].default cannot be an array unless list is true.`);os(`registerFlags flags[${n}]`,t)}}function os(e,n){let r=(typeof n.value_type=="string"?n.value_type:void 0)??(typeof n.type=="string"?n.type:void 0);if(r===void 0)return;let t=br(r);if(t===null)throw new TypeError(`${e} value_type "${r}" is not a known flag value type (expected one of: string, number, boolean).`);if(n.default===void 0)return;let o=n.list===!0||n.repeatable===!0?vr(n.default):[n.default];for(let[i,s]of o.entries())if(!Er(s,t)){let a=o.length>1?`default[${i}]`:"default";throw new TypeError(`${e}.${a} (${JSON.stringify(s)}) is not coercible to ${t}.`)}}function is(e){if(!Array.isArray(e))throw new TypeError("registerItemFields fields requires an array of object definitions");for(let[n,r]of e.entries()){let t=O(`registerItemFields fields[${n}]`,r);T(`registerItemFields fields[${n}].name`,t.name);let o=T(`registerItemFields fields[${n}].type`,t.type);if(ye(o)===null){let i=Nn(o),s=i?` Did you mean "${i}"?`:"";throw new TypeError(`registerItemFields fields[${n}].type "${o}" is not a known field type (expected one of: ${he.join(", ")}).${s}`)}I(`registerItemFields fields[${n}].optional`,t.optional)}}function ss(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].command_option_policies`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);T(`${i}.command`,s.command),T(`${i}.option`,s.option),I(`${i}.enabled`,s.enabled),I(`${i}.required`,s.required),I(`${i}.visible`,s.visible)}}function as(e,n){if(n===void 0)return;let r=`registerItemTypes types[${e}].options`;if(!Array.isArray(n))throw new TypeError(`${r} must be an array when provided`);for(let[t,o]of n.entries()){let i=`${r}[${t}]`,s=O(i,o);T(`${i}.key`,s.key),W(`${i}.values`,s.values),I(`${i}.required`,s.required),W(`${i}.aliases`,s.aliases)}}function ls(e){if(!Array.isArray(e))throw new TypeError("registerItemTypes types requires an array of object definitions");for(let[n,r]of e.entries()){let t=`registerItemTypes types[${n}]`,o=O(t,r);T(`${t}.name`,o.name),S(`${t}.folder`,o.folder),W(`${t}.aliases`,o.aliases),W(`${t}.required_create_fields`,o.required_create_fields),W(`${t}.required_create_repeatables`,o.required_create_repeatables),ss(n,o.command_option_policies),as(n,o.options)}}function cs(e){let n=O("registerMigration definition",e);if(n.id!==void 0&&typeof n.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(n.description!==void 0&&typeof n.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(n.status!==void 0&&typeof n.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(I("registerMigration definition.mandatory",n.mandatory),n.run!==void 0&&typeof n.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}var dt=["types","statuses","fields","workflows","config","templates","packages"],ds={types:(e,n)=>{if(n.name!==void 0&&typeof n.name!="string")throw new TypeError(`${e}.name must be a string when provided`)},workflows:(e,n)=>{if(typeof n.type!="string")throw new TypeError(`${e}.type must be a string`);if(!Array.isArray(n.allowed_transitions))throw new TypeError(`${e}.allowed_transitions must be an array`);for(let[r,t]of n.allowed_transitions.entries())if(!Array.isArray(t))throw new TypeError(`${e}.allowed_transitions[${r}] must be a [from, to] array`)},templates:(e,n)=>{if(typeof n.name!="string")throw new TypeError(`${e}.name must be a string`);if(typeof n.options!="object"||n.options===null||Array.isArray(n.options))throw new TypeError(`${e}.options must be an object`)},packages:(e,n)=>{if(typeof n.spec!="string")throw new TypeError(`${e}.spec must be a string`)}};function us(e){let n=O("registerProfile profile",e);if(T("registerProfile profile.name",n.name),T("registerProfile profile.title",n.title),n.summary!==void 0&&typeof n.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(let r of dt){let t=n[r];if(t!==void 0){if(!Array.isArray(t))throw new TypeError(`registerProfile profile.${r} must be an array when provided`);for(let[o,i]of t.entries()){if(typeof i!="object"||i===null||Array.isArray(i))throw new TypeError(`registerProfile profile.${r}[${o}] must be an object`);ds[r]?.(`registerProfile profile.${r}[${o}]`,i)}}}}function fs(e){e.summary===void 0&&(e.summary="");for(let n of dt)e[n]===void 0&&(e[n]=[]);return e}function fn(e,n){return Object.defineProperty(e,"runtime_definition",{value:n,enumerable:!1,writable:!1,configurable:!1}),e}function ms(e){if(!Array.isArray(e.capabilities))return null;let n=new Set;for(let r of e.capabilities){let t=r.trim().toLowerCase();N(t)&&n.add(t)}return n}function w(e,n,r){let t=ms(e);if(t!==null&&!t.has(n))throw j(`${r} requires capability '${n}' in extension manifest capabilities`,{method:r,registration_index:-1,capability:n,missing_capability:n,expected_schema:`"capabilities": [..., "${n}"]`,received:e.capabilities,hint:`Add "${n}" to ${e.name} manifest capabilities, or remove the ${r} registration call.`})}function ps(e){return Object.freeze({name:e.name,layer:e.layer,version:e.version,capabilities:Object.freeze((e.capabilities??[]).filter(n=>L.includes(n))),pm_min_version:e.pm_min_version,pm_max_version:e.pm_max_version,source_package:e.source_package})}function gs(e){return{layer:e.layer,name:e.name,trusted:e.trusted===!0,provenanceVerified:e.provenance?.verified===!0,sandboxProfile:e.sandbox_profile,permissions:e.permissions&&typeof e.permissions=="object"?{fs_read:e.permissions.fs_read,fs_write:e.permissions.fs_write,network:e.permissions.network,env_read:e.permissions.env_read,env_write:e.permissions.env_write,process_spawn:e.permissions.process_spawn}:void 0}}var pn=class{extension;hooks;#e;#r;#o;#t;#s;#a;#i;#l;#n;#c;#d;#u;constructor(n,r,t,o,i,s,a,l,c,d,u){this.#e=n,this.extension=ps(n),this.#r=gs(n),this.#o=r,this.#t=t,this.#s=o,this.#a=i,this.#i=s,this.#l=a,this.#n=l,this.#c=c,this.#d=d,this.#u=u,this.registerCommand=this.registerCommand.bind(this),this.registerParser=this.registerParser.bind(this),this.registerPreflight=this.registerPreflight.bind(this),this.registerService=this.registerService.bind(this),this.registerFlags=this.registerFlags.bind(this),this.registerItemFields=this.registerItemFields.bind(this),this.registerItemTypes=this.registerItemTypes.bind(this),this.registerRelationshipKinds=this.registerRelationshipKinds.bind(this),this.registerMigration=this.registerMigration.bind(this),this.registerProfile=this.registerProfile.bind(this),this.registerRenderer=this.registerRenderer.bind(this),this.registerImporter=this.registerImporter.bind(this),this.registerExporter=this.registerExporter.bind(this),this.registerSearchProvider=this.registerSearchProvider.bind(this),this.registerVectorStoreAdapter=this.registerVectorStoreAdapter.bind(this),this.hooks={beforeCommand:m=>this.registerBeforeCommand(m),beforeMutation:m=>this.registerBeforeMutation(m),afterCommand:m=>this.registerAfterCommand(m),onWrite:m=>this.registerOnWrite(m),onRead:m=>this.registerOnRead(m),onIndex:m=>this.registerOnIndex(m)}}allowRegistration(n,r,t,o){let i=Wr(this.#u,this.#r,n,r,t,o);return i.warning&&this.#c.push(i.warning),i.allowed}registerCommandTrace(n,r,t,o,i){return{method:"registerCommand",registration_index:n==="override"?this.#t.overrides.length:this.#t.handlers.length,command:r,expected_schema:t,received:Te(o),hint:i}}registerCommandOverride(n,r){let t=v(n);if(t.length===0)throw j("registerCommand requires a non-empty command name",this.registerCommandTrace("override",n,'registerCommand("<command>", (context) => unknown)',n,"Provide a non-empty command path as the first argument."));if(typeof r!="function"){let o=this.registerCommandTrace("override",t,'registerCommand("<command>", (context) => unknown)',r,"Provide a function as the second registerCommand argument.");throw j(`registerCommand requires an override function when command name is provided (command="${t}", registration_index=${o.registration_index})`,o)}this.allowRegistration("commands.override","registerCommand","commands",{command:t})&&this.#t.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}resolveCommandDefinitionRunHandler(n,r){let t=typeof n.run=="function"?n.run:void 0,o=typeof n.handler=="function"?n.handler:void 0;return!t&&o&&this.#c.push(`extension_command_definition_legacy_handler_alias:${this.#e.layer}:${this.#e.name}:${r}`),t??o}registerCommandDefinition(n){if(typeof n!="object"||n===null)throw j("registerCommand requires a command definition object",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,'Use registerCommand({ name: "command path", run: (context) => ... }).'));if(typeof n.name!="string")throw j("registerCommand requires a command definition name",this.registerCommandTrace("definition",void 0,"{ name: string; run: (context) => unknown; }",n,"Set command definition.name to a non-empty string command path."));let r=v(n.name);if(r.length===0)throw j("registerCommand requires a non-empty command definition name",this.registerCommandTrace("definition",n.name,"{ name: string; run: (context) => unknown; }",n,"Ensure command definition.name contains a non-empty command path."));let t=this.resolveCommandDefinitionRunHandler(n,r);if(typeof t!="function"){let o=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; }",t,"Define command definition.run as a function.");throw j(`registerCommand requires a command definition run handler (command="${r}", registration_index=${o.registration_index})`,o)}try{Or(n);let o=tt(r,n.action);if(!this.allowRegistration("commands.handler","registerCommand","commands",{command:r,action:o}))return;let i=n.description?.trim(),s=n.intent?.trim(),a=le("registerCommand definition.examples",n.examples),l=le("registerCommand definition.failure_hints",n.failure_hints),c=ot(n.arguments);n.flags!==void 0&&(w(this.#e,"schema","registerCommand flags"),this.allowRegistration("schema.flags","registerCommand flags","schema")&&(un(n.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:dn("registerCommand definition.flags",n.flags)})));let d={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:o,examples:a,failure_hints:l,arguments:c,tier:n.tier};i&&(d.description=i),s&&(d.intent=s),this.#n.commands.push(d)}catch(o){let i=$e(o),s=this.registerCommandTrace("definition",r,"{ name: string; run: (context) => unknown; action?: string; arguments?: object[]; flags?: object[]; }",n,i),a=j(`registerCommand definition metadata invalid (command="${r}", registration_index=${s.registration_index}): ${i}`,s);this.#c.push(`extension_command_quarantined:${this.#e.layer}:${this.#e.name}:${r}`),this.#d.push({layer:this.#e.layer,name:this.#e.name,entry_path:this.#e.entry_path,error:a.message,trace:s});return}this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:r,run:t})}registerCommand(n,r){if(w(this.#e,"commands","registerCommand"),typeof n=="string"){this.registerCommandOverride(n,r);return}this.registerCommandDefinition(n)}registerParser(n,r){if(w(this.#e,"parser","registerParser"),!this.allowRegistration("parser.override","registerParser","parser"))return;let t=v(T("registerParser command",n));Se("registerParser override",r),this.#s.overrides.push({layer:this.#e.layer,name:this.#e.name,command:t,run:r})}registerPreflight(n){if(w(this.#e,"preflight","registerPreflight"),!this.allowRegistration("preflight.override","registerPreflight","preflight"))return;let r=$r(n);this.#a.overrides.push({layer:this.#e.layer,name:this.#e.name,...r})}registerService(n,r){w(this.#e,"services","registerService");let t=String(n).trim().toLowerCase();if(!es(t))throw new TypeError(`registerService service must be one of: ${De.join(", ")}`);this.allowRegistration("services.override","registerService","services",{service:t})&&(Se("registerService override",r),this.#i.overrides.push({layer:this.#e.layer,name:this.#e.name,service:t,run:r}))}registerRenderer(n,r,t={}){if(w(this.#e,"renderers","registerRenderer"),!this.allowRegistration("renderers.override","registerRenderer","renderers"))return;if(typeof r!="function")throw new TypeError("registerRenderer requires a renderer function");let o=String(n).trim().toLowerCase();if(!Qi(o))throw new Error(`registerRenderer format must be toon|json, received: ${String(n)}`);if(t.resultDiscriminator!==void 0&&typeof t.resultDiscriminator!="function")throw new TypeError("registerRenderer ownership.resultDiscriminator must be a function when provided");let i=[...new Set((t.commands??[]).map(s=>{if(typeof s!="string"||s.trim().length===0)throw new TypeError("registerRenderer ownership.commands must contain non-empty command paths");return v(s)}))];this.#l.overrides.push({layer:this.#e.layer,name:this.#e.name,format:o,run:r,commands:i,...t.resultDiscriminator?{resultDiscriminator:t.resultDiscriminator}:{}})}registerFlags(n,r){if(w(this.#e,"schema","registerFlags"),!this.allowRegistration("schema.flags","registerFlags","schema"))return;let t=v(T("registerFlags targetCommand",n));un(r);let o=dn("registerFlags flags",r);if(o.length===0)throw new TypeError("registerFlags requires at least one flag definition");this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:t,flags:o})}registerItemFields(n){if(w(this.#e,"schema","registerItemFields"),!this.allowRegistration("schema.itemfields","registerItemFields","schema"))return;is(n);let r=mn("registerItemFields fields",n);if(r.length===0)throw new TypeError("registerItemFields requires at least one field definition");this.#n.item_fields.push({layer:this.#e.layer,name:this.#e.name,fields:r})}registerItemTypes(n){if(w(this.#e,"schema","registerItemTypes"),!this.allowRegistration("schema.itemtypes","registerItemTypes","schema"))return;ls(n);let r=mn("registerItemTypes types",n);if(r.length===0)throw new TypeError("registerItemTypes requires at least one type definition");this.#n.item_types.push({layer:this.#e.layer,name:this.#e.name,types:r})}registerRelationshipKinds(n){if(w(this.#e,"schema","registerRelationshipKinds"),!this.allowRegistration("schema.relationshipkinds","registerRelationshipKinds","schema"))return;if(!Array.isArray(n))throw new TypeError("registerRelationshipKinds definitions requires an array of object definitions");if(n.length===0)throw new TypeError("registerRelationshipKinds requires at least one definition");let r=qe();for(let o of this.#n.relationship_kinds)for(let i of o.definitions)r.register(i);let t=n.map(o=>(r.register(o),r.require(o.kind)));this.#n.relationship_kinds.push({layer:this.#e.layer,name:this.#e.name,definitions:t})}registerMigration(n){if(w(this.#e,"schema","registerMigration"),!this.allowRegistration("schema.migrations","registerMigration","schema"))return;cs(n);let r=cn("registerMigration definition",n);this.#n.migrations.push(fn({layer:this.#e.layer,name:this.#e.name,definition:Ie("registerMigration definition",n)},r))}registerProfile(n){if(w(this.#e,"schema","registerProfile"),!this.allowRegistration("schema.profiles","registerProfile","schema"))return;let r=Ae(n);us(r),this.#n.profiles.push({layer:this.#e.layer,name:this.#e.name,profile:fs(r)})}applyImportExportCommandMetadata(n,r,t){if(t!==void 0&&(typeof t!="object"||t===null||Array.isArray(t)))throw new TypeError(`${n} options must be an object when provided`);let o=`${n==="registerImporter"?"Import":"Export"} items with the registered extension adapter.`,i=[{name:"file",required:!1,description:"Optional input or output file path."}],s={...t,description:t?.description??o,arguments:t?.arguments??i};S(`${n} options.action`,s.action),S(`${n} options.description`,s.description),S(`${n} options.intent`,s.intent);let a=tt(r,s.action),l=le(`${n} options.examples`,s.examples),c=le(`${n} options.failure_hints`,s.failure_hints),d=ot(s.arguments);s.flags!==void 0&&(w(this.#e,"schema",`${n} options.flags`),this.allowRegistration("schema.flags",`${n} options.flags`,"schema")&&(un(s.flags),this.#n.flags.push({layer:this.#e.layer,name:this.#e.name,target_command:r,flags:dn(`${n} options.flags`,s.flags)})));let u={layer:this.#e.layer,name:this.#e.name,source_package:this.#e.source_package,command:r,action:a,examples:l,failure_hints:c,arguments:d},m=s.description?.trim();m&&(u.description=m);let f=s.intent?.trim();f&&(u.intent=f),this.#n.commands.push(u)}registerImporter(n,r,t){if(w(this.#e,"importers","registerImporter"),!this.allowRegistration("importers.importer","registerImporter","importers"))return;let o=nt(T("registerImporter name",n));Se("registerImporter importer",r);let i=rt(o,"import");this.applyImportExportCommandMetadata("registerImporter",i,t),this.#n.importers.push({layer:this.#e.layer,name:this.#e.name,importer:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"import",command:s.command,args:k(s.args),options:k(s.options),global:k(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerExporter(n,r,t){if(w(this.#e,"importers","registerExporter"),!this.allowRegistration("importers.exporter","registerExporter","importers"))return;let o=nt(T("registerExporter name",n));Se("registerExporter exporter",r);let i=rt(o,"export");this.applyImportExportCommandMetadata("registerExporter",i,t),this.#n.exporters.push({layer:this.#e.layer,name:this.#e.name,exporter:o}),this.#t.handlers.push({layer:this.#e.layer,name:this.#e.name,command:i,run:async s=>r({registration:o,action:"export",command:s.command,args:k(s.args),options:k(s.options),global:k(s.global),pm_root:s.pm_root,source_workspace_root:s.source_workspace_root,repo_root:s.repo_root,pm_root_rel:s.pm_root_rel,...s.sdk===void 0?{}:{sdk:s.sdk}})})}registerSearchProvider(n){if(w(this.#e,"search","registerSearchProvider"),!this.allowRegistration("search.provider","registerSearchProvider","search"))return;let r=cn("registerSearchProvider provider",n);this.#n.search_providers.push(fn({layer:this.#e.layer,name:this.#e.name,definition:Ie("registerSearchProvider provider",n)},r))}registerVectorStoreAdapter(n){if(w(this.#e,"search","registerVectorStoreAdapter"),!this.allowRegistration("search.vectorstore","registerVectorStoreAdapter","search"))return;let r=cn("registerVectorStoreAdapter adapter",n);this.#n.vector_store_adapters.push(fn({layer:this.#e.layer,name:this.#e.name,definition:Ie("registerVectorStoreAdapter adapter",n)},r))}registerBeforeCommand(n){w(this.#e,"hooks","api.hooks.beforeCommand"),this.allowRegistration("hooks.beforecommand","api.hooks.beforeCommand","hooks")&&(Q("beforeCommand",n),this.#o.beforeCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerBeforeMutation(n){w(this.#e,"hooks","api.hooks.beforeMutation"),this.allowRegistration("hooks.beforemutation","api.hooks.beforeMutation","hooks")&&(Q("beforeMutation",n),this.#o.beforeMutation.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerAfterCommand(n){w(this.#e,"hooks","api.hooks.afterCommand"),this.allowRegistration("hooks.aftercommand","api.hooks.afterCommand","hooks")&&(Q("afterCommand",n),this.#o.afterCommand.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnWrite(n){w(this.#e,"hooks","api.hooks.onWrite"),this.allowRegistration("hooks.onwrite","api.hooks.onWrite","hooks")&&(Q("onWrite",n),this.#o.onWrite.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnRead(n){w(this.#e,"hooks","api.hooks.onRead"),this.allowRegistration("hooks.onread","api.hooks.onRead","hooks")&&(Q("onRead",n),this.#o.onRead.push({layer:this.#e.layer,name:this.#e.name,run:n}))}registerOnIndex(n){w(this.#e,"hooks","api.hooks.onIndex"),this.allowRegistration("hooks.onindex","api.hooks.onIndex","hooks")&&(Q("onIndex",n),this.#o.onIndex.push({layer:this.#e.layer,name:this.#e.name,run:n}))}};function hs(e,n,r,t,o,i,s,a,l,c,d){return new pn(e,n,r,t,o,i,s,a,l,c,d)}function ys(e){let n=e.commands.length,r=e.flags.reduce((s,a)=>s+a.flags.length,0),t=e.item_fields.reduce((s,a)=>s+a.fields.length,0),o=e.item_types.reduce((s,a)=>s+a.types.length,0),i=(e.relationship_kinds??[]).reduce((s,a)=>s+a.definitions.length,0);return{commands:n,flags:r,item_fields:t,item_types:o,...i>0?{relationship_kinds:i}:{},migrations:e.migrations.length,profiles:e.profiles.length,importers:e.importers.length,exporters:e.exporters.length,search_providers:e.search_providers.length,vector_store_adapters:e.vector_store_adapters.length}}function _s(e){let n=[],r=(i,s)=>{let a=new Map;for(let l of i){let c=a.get(l.command)??[];c.push(l),a.set(l.command,c)}for(let l of[...a.keys()].sort((c,d)=>c.localeCompare(d))){let c=a.get(l);if(c.length<=1)continue;let d=c[c.length-1];for(let u of c.slice(0,-1))n.push(`${s}:${l}:${d.layer}:${d.name}:${u.layer}:${u.name}`)}};r(e.handlers,"extension_command_handler_collision"),r(e.overrides,"extension_command_override_collision");let t=new Set(e.handlers.map(i=>i.command)),o=[...new Set(e.overrides.map(i=>i.command))].filter(i=>t.has(i));o.sort((i,s)=>i.localeCompare(s));for(let i of o){let s=e.handlers.filter(l=>l.command===i),a=e.overrides.filter(l=>l.command===i);for(let l of a)for(let c of s)n.push(`extension_command_override_handler_overlap:${i}:${l.layer}:${l.name}:${c.layer}:${c.name}`)}return n}function ws(e){let n=new Map;for(let t of e.overrides){let o=n.get(t.format)??[];o.push(t),n.set(t.format,o)}let r=[];for(let t of[...n.keys()].sort((o,i)=>o.localeCompare(i))){let o=n.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))i.commands?.length&&s.commands?.length&&!s.commands.some(a=>i.commands?.includes(a))||r.push(`extension_renderer_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return r}function bs(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.command)??[];o.push(t),r.set(t.command,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1)continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_parser_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}var vs=new Set(["output_format"]);function Es(e){let n=[],r=new Map;for(let t of e.overrides){let o=r.get(t.service)??[];o.push(t),r.set(t.service,o)}for(let t of[...r.keys()].sort((o,i)=>o.localeCompare(i))){let o=r.get(t);if(o.length<=1||vs.has(t))continue;let i=o[o.length-1];for(let s of o.slice(0,-1))n.push(`extension_service_override_collision:${t}:${i.layer}:${i.name}:${s.layer}:${s.name}`)}return n}async function vc(e){let n=Lr(e.policy??ki),r=Je(),t=Ze(),o=Qe(),i=en(),s=nn(),a=rn(),l=tn(),c=[],d=[];for(let f of e.loaded){let h=lt(f.module);if(!h)continue;let p=c.length,g=Ar({hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l});try{await h.activate(hs(f,r,t,o,i,s,a,l,d,c,n)),c.length>p&&(g(),d.push(`extension_activation_rolled_back:${f.layer}:${f.name}`))}catch($){g(),d.push(`extension_activate_failed:${f.layer}:${f.name}`);let ee=ns($);c.push({layer:f.layer,name:f.name,entry_path:f.entry_path,error:$e($),trace:ee})}}let u=[..._s(t),...bs(o),...Rr(i),...Es(s),...ws(a)],m=[...new Set([...d,...u])];return{hooks:r,commands:t,parsers:o,preflight:i,services:s,renderers:a,registrations:l,failed:c,warnings:m,hook_counts:{before_command:r.beforeCommand.length,before_mutation:r.beforeMutation.length,after_command:r.afterCommand.length,on_write:r.onWrite.length,on_read:r.onRead.length,on_index:r.onIndex.length},command_override_count:t.overrides.length,command_handler_count:t.handlers.length,parser_override_count:o.overrides.length,preflight_override_count:i.overrides.length,service_override_count:s.overrides.length,renderer_override_count:a.overrides.length,registration_counts:ys(l)}}import ut from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="febba42b-dfd0-549a-a6d9-c30edb321d9d")}catch{}})();var P=Object.freeze({types:"schema/types.json",statuses:"schema/statuses.json",fields:"schema/fields.json",workflows:"schema/workflows.json"}),pt=Pn,yn=Rn,ks=["create","update"],xs=new Set(Tn),Cs=new Set(fe),Ss=new Set(An),Is=new Set($n);function de(e){let n=Array.isArray(e)?e:[];return[...new Set(n.map(r=>typeof r=="string"?r.trim():"").filter(r=>r.length>0))].sort((r,t)=>r.localeCompare(t))}function G(e){return typeof e=="string"?e.trim().toLowerCase().replaceAll(/[\s-]+/g,"_"):""}function R(e){if(typeof e!="string"||e.length===0)return;let n=G(e);return n.length>0?n:void 0}function Ts(e){return e.startsWith("--")?e.slice(2):e}function ft(e){return typeof e=="string"?Ts(e.trim().toLowerCase().replaceAll(/[\s_]+/g,"-")):""}function gt(e){return e.replaceAll("_","-")}function As(e){let n=e.replaceAll(/[^A-Za-z0-9]+/g," ").trim().split(/\s+/).filter(o=>o.length>0).map(o=>o.toLowerCase());if(n.length===0)return e;let[r,...t]=n;return`${r}${t.map(o=>`${o.slice(0,1).toUpperCase()}${o.slice(1)}`).join("")}`}function hn(e,n){let r=R(e.id);if(!r)return null;let t=[...new Set(de(e.aliases).map(G).filter(a=>a.length>0))].sort((a,l)=>a.localeCompare(l)),o=de(e.roles).filter(a=>xs.has(a)),i=e.description?.trim(),s=typeof e.order=="number"&&Number.isFinite(e.order)?e.order:n;return{id:r,aliases:t,roles:o,description:i&&i.length>0?i:void 0,order:s}}function $s(e){return{draft_status:R(e?.draft_status),open_status:R(e?.open_status),in_progress_status:R(e?.in_progress_status),blocked_status:R(e?.blocked_status),close_status:R(e?.close_status),canceled_status:R(e?.canceled_status)}}function ht(e,n){if(!Array.isArray(n)||n.length!==2)return;let r=G(n[0]),t=G(n[1]);r.length===0||t.length===0||e.pairs.some(o=>o[0]===r&&o[1]===t)||e.pairs.push([r,t])}function Rs(e){let n=typeof e?.type=="string"?e.type.trim():"";if(n.length===0||!Array.isArray(e?.allowed_transitions))return null;let r={type:n,pairs:[],denyAll:e.allowed_transitions.length===0};for(let t of e.allowed_transitions)ht(r,t);return{typeKey:n.toLowerCase(),record:r}}function Ps(e){if(!Array.isArray(e)||e.length===0)return;let n=new Map;for(let t of e){let o=Rs(t);if(o===null)continue;let i=n.get(o.typeKey)??o.record;i.denyAll||=o.record.denyAll;for(let s of o.record.pairs)ht(i,s);n.set(o.typeKey,i)}let r=[];for(let t of n.values())(t.pairs.length>0||t.denyAll)&&r.push({type:t.type,allowed_transitions:t.pairs});return r.sort((t,o)=>t.type.localeCompare(o.type)),r.length>0?r:void 0}function yt(e){let n=G(e.key??"");if(!n)return null;let r=G(e.metadata_key??e.front_matter_key??n),t=ft(e.cli_flag??gt(n));if(!t)return null;let o=de(e.cli_aliases).map(d=>ft(d)).filter(d=>d.length>0&&d!==t),i=typeof e.type=="string"?e.type.trim().toLowerCase():"string",s=Cs.has(i)?i:"string",a=(()=>{let d=de(e.commands).filter(u=>Ss.has(u));return d.length>0?d:[...ks]})(),l=e.description?.trim(),c=de(e.required_types);return{key:n,metadata_key:r,cli_flag:t,cli_aliases:o,description:l&&l.length>0?l:void 0,type:s,commands:a,repeatable:e.repeatable===!0||s==="string_array",required:e.required===!0,required_on_create:e.required_on_create===!0,required_types:c,allow_unset:e.allow_unset!==!1}}function Os(e){let n=new Map;for(let[t,o]of e.entries()){let i=hn(o,t);i&&n.set(i.id,i)}let r=mt([...n.values()]);return r.length>0?r:mt(yn.map((t,o)=>hn(t,o)).filter(t=>t!==null))}function mt(e){return e.sort((n,r)=>n.order===r.order?n.id.localeCompare(r.id):n.order-r.order)}function Ds(e){let n=new Map;for(let r of e??[]){let t=yt(r);t&&n.set(t.key,t)}return[...n.values()].sort((r,t)=>r.key.localeCompare(t.key))}function Ns(e){return{id:e.id,aliases:e.aliases.length>0?[...e.aliases]:void 0,roles:e.roles.length>0?[...e.roles]:void 0,description:e.description,order:e.order}}function Fs(e){return{key:e.key,metadata_key:e.metadata_key!==e.key?e.metadata_key:void 0,cli_flag:e.cli_flag!==gt(e.key)?e.cli_flag:void 0,cli_aliases:e.cli_aliases.length>0?[...e.cli_aliases]:void 0,description:e.description,type:e.type,commands:[...e.commands],repeatable:e.repeatable===!0?!0:void 0,required:e.required===!0?!0:void 0,required_on_create:e.required_on_create===!0?!0:void 0,required_types:e.required_types.length>0?[...e.required_types]:void 0,allow_unset:e.allow_unset===!1?!1:void 0}}function Ms(e){let n=typeof e=="string"?e.trim().toLowerCase():"allow";return Is.has(n)?n:"allow"}function ue(e){let n={...P,...e?.files},r=e?.statuses&&e.statuses.length>0?e.statuses:yn,t=Os(r),o=Ds(e?.fields);return{version:typeof e?.version=="number"&&Number.isFinite(e.version)?Math.floor(e.version):1,files:n,statuses:t.map(Ns),fields:o.map(Fs),workflow:{...pt,...$s(e?.workflow)},type_workflows:Ps(e?.type_workflows),unknown_field_policy:Ms(e?.unknown_field_policy)}}function zs(e){return`${JSON.stringify(e,null,2)}
|
|
3
|
-
`}function js(){return{definitions:[]}}function Ls(){return{statuses:yn}}function qs(){return{fields:[]}}function Vs(){return{workflow:pt}}function Us(e,n,r){try{return JSON.parse(e)}catch{r.push(n);return}}function Ws(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.definitions))return n.definitions;if(typeof n.item_types=="object"&&n.item_types!==null){let r=n.item_types;if(Array.isArray(r.definitions))return r.definitions}}function Ks(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.statuses))return n.statuses;if(Array.isArray(n.definitions))return n.definitions}function Bs(e){if(Array.isArray(e))return e;if(typeof e!="object"||e===null)return;let n=e;if(Array.isArray(n.fields))return n.fields;if(Array.isArray(n.definitions))return n.definitions}function Hs(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let n=e;return typeof n.workflow=="object"&&n.workflow!==null&&!Array.isArray(n.workflow)?n.workflow:typeof n.workflows=="object"&&n.workflows!==null&&!Array.isArray(n.workflows)?n.workflows:n}function Gs(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let n=e;if(Array.isArray(n.type_workflows))return n.type_workflows}function D(e,n,r){let t=n?.trim()||r;return ut.isAbsolute(t)?t:ut.join(e,t)}function Rc(e,n){return D(e,n.files.types,P.types)}async function Pc(e,n){let r=ue(n),t=[{path:D(e,r.files.types,P.types),seed:js()},{path:D(e,r.files.statuses,P.statuses),seed:Ls()},{path:D(e,r.files.fields,P.fields),seed:qs()},{path:D(e,r.files.workflows,P.workflows),seed:Vs()}],o=[];for(let i of t)await ie(i.path)||(await tr(i.path,zs(i.seed)),o.push(i.path));return{created_paths:o}}async function Oc(e,n){let r=ue(n),t=[],o=D(e,r.files.types,P.types),i=D(e,r.files.statuses,P.statuses),s=D(e,r.files.fields,P.fields),a=D(e,r.files.workflows,P.workflows),l,c,d,u,m,f=async(Re,Pe)=>{let _n=await rr(Re);if(_n!==null)return Us(_n,Pe,t)},h=await f(o,"runtime_schema_types_invalid_json");h!==void 0&&(l=Ws(h),l===void 0&&t.push("runtime_schema_types_invalid_shape"));let p=await f(i,"runtime_schema_statuses_invalid_json");p!==void 0&&(c=Ks(p),c===void 0&&t.push("runtime_schema_statuses_invalid_shape"));let g=await f(s,"runtime_schema_fields_invalid_json");g!==void 0&&(d=Bs(g),d===void 0&&t.push("runtime_schema_fields_invalid_shape"));let $=await f(a,"runtime_schema_workflows_invalid_json");return $!==void 0&&(u=Hs($),u===void 0&&t.push("runtime_schema_workflows_invalid_shape"),m=Gs($)),{schema:ue({...r,statuses:[...r.statuses,...c??[]],fields:[...r.fields,...d??[]],workflow:{...r.workflow,...u},type_workflows:[...r.type_workflows??[],...m??[]]}),type_definitions_from_file:l,warnings:t,created_paths:[]}}function gn(e,n,r){let t=e.filter(i=>i.roles.includes(n));if(t.length>0)return t[0].id;let o=r.map(i=>R(i)).filter(i=>typeof i=="string");for(let i of o)if(e.some(s=>s.id===i))return i;return e[0]?.id}function Dc(e){let n=ue(e),r=n.statuses.map((p,g)=>hn(p,g)).filter(p=>p!==null),t=new Map,o=new Map;for(let p of r){o.set(p.id,p),t.set(p.id,p.id),t.set(p.id.replaceAll("_","-"),p.id),t.set(p.id.replaceAll("_"," "),p.id);for(let g of p.aliases)t.set(g,p.id),t.set(g.replaceAll("_","-"),p.id),t.set(g.replaceAll("_"," "),p.id)}let i=new Set,s=new Set,a=new Set,l=new Set,c=new Set,d=new Set;for(let p of r){let g=new Set(p.roles);(g.has("terminal")||g.has("terminal_done")||g.has("terminal_canceled"))&&i.add(p.id),g.has("terminal_done")&&s.add(p.id),g.has("terminal_canceled")&&a.add(p.id),g.has("active")&&l.add(p.id),g.has("blocked")&&c.add(p.id),g.has("draft")&&d.add(p.id)}let u=n.workflow,m=R(u.open_status)??gn(r,"default_open",["open","in_progress",In[0]]),f=R(u.close_status)??gn(r,"default_close",["closed","done","complete"]),h=R(u.canceled_status)??gn(r,"default_cancel",["canceled","cancelled"]);return{definitions:r,by_id:o,alias_to_id:t,terminal_statuses:i,terminal_done_statuses:s,terminal_canceled_statuses:a,active_statuses:l,blocked_statuses:c,draft_statuses:d,open_status:m,close_status:f,canceled_status:h}}function Ys(e,n){let r=G(e);if(r)return n.alias_to_id.get(r)}function Nc(e){let n=ue(e),r=new Map,t=n.fields.map(l=>yt(l)).filter(l=>l!==null);for(let l of t)r.set(l.key,l);let o=[...r.values()].sort((l,c)=>l.key.localeCompare(c.key)),i=new Map,s=new Map,a=new Map;for(let l of o){i.set(l.key,l),s.set(l.cli_flag,l);for(let c of l.cli_aliases)s.set(c,l);for(let c of l.commands){let d=a.get(c)??[];d.push(l),a.set(c,d)}}for(let[l,c]of a.entries())c.sort((d,u)=>d.key.localeCompare(u.key)),a.set(l,c);return{definitions:o,by_key:i,by_cli_token:s,command_to_fields:a}}function Fc(e){return As(e.key)}function Mc(e,n){let r=Ys(e,n);return r?n.terminal_statuses.has(r):!1}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b2649352-0afa-5972-8c48-b999f86d5522")}catch{}})();function jc(e){let n=Math.ceil(e.size/2);for(let r of e.keys()){if(n===0)return;e.delete(r),n-=1}}export{ge as a,Vn as b,Ue as c,qt as d,Vt as e,v as f,_e as g,ta as h,oa as i,ia as j,Xn as k,Jn as l,Qn as m,er as n,nr as o,ie as p,rr as q,tr as r,Pa as s,Oa as t,Be as u,He as v,La as w,ar as x,cr as y,pr as z,Ha as A,Xe as B,ho as C,Ga as D,$o as E,Ro as F,Ya as G,Xa as H,ol as I,il as J,sl as K,hr as L,gr as M,al as N,ll as O,cl as P,dl as Q,ul as R,Ho as S,ml as T,pl as U,gl as V,hl as W,_r as X,yl as Y,_l as Z,wl as _,Me as $,Le as aa,qe as ba,ca,da,ua as ea,Rt as fa,jn as ga,fa as ha,Je as ia,Ze as ja,Qe as ka,en as la,nn as ma,rn as na,tn as oa,Ve as pa,ya as qa,Jo as ra,Zo as sa,Qo as ta,ei as ua,ti as va,ii as wa,si as xa,xi as ya,Oi as za,Ni as Aa,Fi as Ba,Wi as Ca,wc as Da,bc as Ea,vc as Fa,P as Ga,yn as Ha,ue as Ia,D as Ja,Rc as Ka,Pc as La,Oc as Ma,Dc as Na,Ys as Oa,Nc as Pa,Fc as Qa,Mc as Ra,jc as Sa,ka as Ta,We as Ua,xa as Va,Ca as Wa};
|
|
4
|
-
//# sourceMappingURL=chunk-NL57J7BZ.js.map
|