@unbrained/pm-cli 2026.10.30 → 2026.10.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +32 -0
- package/dist/cli/commander-usage.js +2 -2
- package/dist/cli/error-guidance.d.ts +45 -5
- package/dist/cli/error-guidance.js +5 -3
- package/dist/cli/extension-command-help.d.ts +1 -0
- package/dist/cli/extension-command-help.js +2 -2
- package/dist/cli/main.d.ts +1 -5
- package/dist/cli/main.js +5 -5
- package/dist/cli/migration-gates.d.ts +1 -1
- package/dist/cli/migration-gates.js +1 -1
- package/dist/cli/preflight-warnings.d.ts +11 -0
- package/dist/cli/preflight-warnings.js +4 -0
- package/dist/cli/register-mutation.js +2 -2
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/chunk-24J6TNYE.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-EHBGHX55.js → chunk-2AHSPMKJ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MVL27TAH.js → chunk-35Q2B2GJ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-43R7UTWV.js +2 -0
- package/dist/cli-bundle/chunks/chunk-6PSDQ7T7.js +8 -0
- package/dist/cli-bundle/chunks/{chunk-UUQX3PFD.js → chunk-BS2KXT24.js} +70 -70
- package/dist/cli-bundle/chunks/{chunk-Y6NC3X3E.js → chunk-GMBDZID5.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-HSBTITO4.js +3 -0
- package/dist/cli-bundle/chunks/{chunk-LWW4F4G2.js → chunk-MRUA2Z43.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-P3LNMWL2.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-S2U7ECUJ.js → chunk-PT7TS6E7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TH5KPAN4.js → chunk-SBVX5CMV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-4BQD5SW2.js → chunk-TL3O5GZA.js} +30 -30
- package/dist/cli-bundle/chunks/chunk-U7JXZMU5.js +6 -0
- package/dist/cli-bundle/chunks/{chunk-GRABKNFL.js → chunk-V6EWBTNH.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-VC7TA67O.js +20 -0
- package/dist/cli-bundle/chunks/chunk-WNF6FOL7.js +31 -0
- package/dist/cli-bundle/chunks/chunk-WRXQAW7Q.js +114 -0
- package/dist/cli-bundle/chunks/{chunk-RZQNFHXO.js → chunk-WX25MU4N.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-XDDPSWIW.js +2 -0
- package/dist/cli-bundle/chunks/chunk-YT5D5HNG.js +2 -0
- package/dist/cli-bundle/chunks/chunk-ZTJVOBDU.js +128 -0
- package/dist/cli-bundle/chunks/{indexed-receipt-blobs-LHLE7PSG.js → indexed-receipt-blobs-KGMJVFH2.js} +2 -2
- package/dist/cli-bundle/chunks/item-transaction-UWV6UNSV.js +2 -0
- package/dist/cli-bundle/chunks/{mutation-admission-TRGAVS7N.js → mutation-admission-I4RHIT3Q.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-BH4F6M7Z.js → register-list-query-MVDL5EXG.js} +3 -3
- package/dist/cli-bundle/chunks/register-mutation-GAF7LXRB.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-JLFRL36Q.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-QPWSVHFZ.js → register-setup-MZN6ONB3.js} +2 -2
- package/dist/cli-bundle/chunks/{settlement-hook-MN3Y7LVX.js → settlement-hook-YWSWFOZY.js} +2 -2
- package/dist/cli-bundle/chunks/{stage-RTB6RAAO.js → stage-2ZORTOF6.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-S23ZUASN.js → chunk-2J7T2UCH.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-4QPGJO2G.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YU7QOYYV.js → chunk-57HPXGOQ.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-5MCGYBOQ.js +91 -0
- package/dist/cli-bundle/focused-chunks/chunk-6F6APBCX.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-AFVN2KCP.js +44 -0
- package/dist/cli-bundle/focused-chunks/{chunk-RKPUQDWF.js → chunk-DFUTCKUF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-EA65HVBO.js +12 -0
- package/dist/cli-bundle/focused-chunks/chunk-GP2WU43K.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YQUZL2CK.js → chunk-HPWT3RBG.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-HSAEEWSI.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-BPE6JTKL.js → chunk-JLXGRDTG.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-FRFNGMAK.js → chunk-JNKRUCVZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-BCIUAEWX.js → chunk-KH5QJXY7.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-KKRIFBSL.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-RGQEJFXO.js → chunk-MW77Q3AQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-NOKG4RFN.js +22 -0
- package/dist/cli-bundle/focused-chunks/{chunk-POJPJX64.js → chunk-NRBUMDLF.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-3SRX77ES.js → chunk-PC3R5CJV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-RYEZSZJ7.js → chunk-PFBQOZPK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-SAT7IAEB.js → chunk-QFMJGQGO.js} +3 -3
- package/dist/cli-bundle/focused-chunks/{chunk-VFWCSQAG.js → chunk-SFQKCA5K.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-WHIE2C6Q.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-Y6UYRMVG.js +6 -0
- package/dist/cli-bundle/focused-chunks/{indexed-receipt-blobs-VK2363JB.js → indexed-receipt-blobs-KHWT44EK.js} +2 -2
- package/dist/cli-bundle/focused-chunks/item-transaction-LU75EG7D.js +2 -0
- package/dist/cli-bundle/focused-chunks/{mutation-admission-7VUODEPJ.js → mutation-admission-KDJ7SCPA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{settlement-hook-OK6A7PG2.js → settlement-hook-SJV52ZTV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{stage-S5RP5SZH.js → stage-R4KEBO37.js} +2 -2
- package/dist/cli-bundle/main.js +26 -22
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +4 -4
- package/dist/cli-bundle/sdk-core.js +1 -1
- 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 +57 -57
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +11 -11
- package/dist/core/config/nested-settings.js +1 -1
- package/dist/core/extensions/extension-hook-runtime.js +1 -1
- package/dist/core/extensions/extension-types.d.ts +4 -0
- package/dist/core/extensions/extension-types.js +1 -1
- package/dist/core/extensions/loader.js +1 -1
- package/dist/core/lock/lock.js +4 -4
- package/dist/core/output/output.js +2 -2
- package/dist/core/schema/fields-file.js +1 -1
- package/dist/core/sentry/helpers.d.ts +6 -0
- package/dist/core/sentry/helpers.js +1 -1
- package/dist/core/sentry/instrument.d.ts +1 -1
- package/dist/core/sentry/instrument.js +1 -1
- package/dist/core/shared/constants.js +1 -1
- package/dist/core/shared/errors.d.ts +6 -0
- package/dist/core/shared/errors.js +1 -1
- package/dist/core/shared/output-unicode.d.ts +10 -0
- package/dist/core/shared/output-unicode.js +2 -0
- package/dist/core/store/settings-validator.d.ts +1 -0
- package/dist/core/store/settings-validator.js +1 -1
- package/dist/core/store/settings.js +1 -1
- package/dist/core/telemetry/policy.d.ts +8 -0
- package/dist/core/telemetry/policy.js +1 -1
- package/dist/core/telemetry/runtime.js +3 -3
- package/dist/sdk/agent/command-recovery.d.ts +15 -0
- package/dist/sdk/agent/command-recovery.js +1 -1
- package/dist/sdk/cli-bootstrap.js +1 -1
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +28 -0
- package/dist/sdk/cli-contracts/agent-output-contracts.js +2 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +1 -1
- package/dist/sdk/completion/fish.js +4 -4
- package/dist/sdk/completion/zsh.js +3 -3
- package/dist/sdk/config.d.ts +1 -0
- package/dist/sdk/config.js +1 -1
- package/dist/sdk/core.d.ts +1 -0
- package/dist/sdk/core.js +1 -1
- package/dist/sdk/error-runtime.d.ts +9 -0
- package/dist/sdk/error-runtime.js +1 -1
- package/dist/sdk/errors.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
- package/dist/sdk/index.d.ts +2 -2
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/lifecycle/claim.js +1 -1
- package/dist/sdk/lifecycle/close.js +1 -1
- package/dist/sdk/lifecycle/create.js +1 -1
- package/dist/sdk/lifecycle/plan.d.ts +2 -3
- package/dist/sdk/lifecycle/plan.js +1 -1
- package/dist/sdk/lifecycle/repeated-terminal-state.d.ts +45 -0
- package/dist/sdk/lifecycle/repeated-terminal-state.js +2 -0
- package/dist/sdk/lifecycle/shared-unset-fields.d.ts +9 -0
- package/dist/sdk/lifecycle/shared-unset-fields.js +1 -1
- package/dist/sdk/lifecycle/update-many.d.ts +0 -1
- package/dist/sdk/lifecycle/update-many.js +1 -1
- package/dist/sdk/lifecycle/update.d.ts +29 -1
- package/dist/sdk/lifecycle/update.js +2 -2
- package/dist/sdk/output/table-rows.d.ts +7 -1
- package/dist/sdk/output/table-rows.js +1 -1
- package/dist/sdk/output.d.ts +1 -0
- package/dist/sdk/output.js +2 -2
- package/dist/sdk/ownership-source.d.ts +18 -0
- package/dist/sdk/ownership-source.js +1 -1
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/get.d.ts +1 -1
- package/dist/sdk/query/get.js +1 -1
- package/dist/sdk/query/next-ranking-policy.d.ts +35 -0
- package/dist/sdk/query/next-ranking-policy.js +2 -0
- package/dist/sdk/query/next.d.ts +12 -2
- package/dist/sdk/query/next.js +2 -2
- package/dist/sdk/query/projection-contracts.d.ts +4 -0
- package/dist/sdk/query/projection-contracts.js +1 -1
- package/dist/sdk/read-output/surfaces.d.ts +27 -0
- package/dist/sdk/read-output/surfaces.js +2 -0
- package/dist/sdk/read-output-contracts.js +1 -1
- package/dist/sdk/runtime-primitives.d.ts +1 -0
- package/dist/sdk/runtime-primitives.js +1 -1
- package/dist/sdk/runtime.js +1 -1
- package/dist/sdk/test/execution-receipts.d.ts +25 -0
- package/dist/sdk/test/execution-receipts.js +2 -2
- package/dist/sdk/test/execution.d.ts +5 -0
- package/dist/sdk/test/execution.js +2 -2
- package/dist/types.d.ts +2 -0
- package/dist/types.js +1 -1
- package/docs/AGENT_GUIDE.md +1 -1
- package/docs/AGENT_OUTPUT_ENCODINGS.md +12 -0
- package/docs/AGENT_UX_CONTRACTS.md +2 -1
- package/docs/COMMANDS.md +58 -5
- package/docs/CONFIGURATION.md +48 -1
- package/docs/DEVELOPMENT_DEPENDENCY_SECURITY.md +26 -0
- package/docs/PACKED_FIRST_RUN.md +2 -1
- package/docs/READ_OUTPUT_CONTRACTS.md +24 -6
- package/docs/SDK.md +73 -2
- package/docs/TESTING.md +38 -2
- package/docs/agent-task-token-baseline.json +1 -1
- package/marketplace.json +1 -1
- package/package.json +1 -1
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/extensions/calendar/index.ts +1 -0
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/package.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/package.json +1 -1
- package/plugins/pm-codex/plugin.json +1 -1
- package/runtime-dependencies.json +1 -1
- package/dist/cli-bundle/chunks/chunk-34MP7WKK.js +0 -6
- package/dist/cli-bundle/chunks/chunk-3KMYHYJV.js +0 -2
- package/dist/cli-bundle/chunks/chunk-42BHHNTL.js +0 -128
- package/dist/cli-bundle/chunks/chunk-I5O3XZOA.js +0 -2
- package/dist/cli-bundle/chunks/chunk-LEIVUGDH.js +0 -8
- package/dist/cli-bundle/chunks/chunk-OH7WPD42.js +0 -114
- package/dist/cli-bundle/chunks/chunk-OOD2A7AF.js +0 -20
- package/dist/cli-bundle/chunks/chunk-Q5V7P6NM.js +0 -2
- package/dist/cli-bundle/chunks/chunk-QLPFYBXN.js +0 -2
- package/dist/cli-bundle/chunks/chunk-SA5NYLPE.js +0 -8
- package/dist/cli-bundle/chunks/chunk-VHLAVTJN.js +0 -31
- package/dist/cli-bundle/chunks/chunk-XAOVJG52.js +0 -3
- package/dist/cli-bundle/chunks/chunk-XPQ4RTSF.js +0 -2
- package/dist/cli-bundle/chunks/item-transaction-WIOBZW4E.js +0 -2
- package/dist/cli-bundle/chunks/register-mutation-5V2NANIS.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-XSFRMUFX.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2V6NMNYN.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-ASHGXMX4.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-CKBN2D42.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-I642DXOT.js +0 -22
- package/dist/cli-bundle/focused-chunks/chunk-K7DKG5HM.js +0 -91
- package/dist/cli-bundle/focused-chunks/chunk-NMQBXU7N.js +0 -44
- package/dist/cli-bundle/focused-chunks/chunk-PGM3ENGZ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-QFNV4JTA.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-QVJCQMZY.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-R2TPPPVU.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-VJVJ2ZX2.js +0 -2
- package/dist/cli-bundle/focused-chunks/item-transaction-ZFDKJIP7.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-cli","version":"2026.10.30","lockfileVersion":3,"requires":true,"packages":{"":{"name":"@unbrained/pm-cli","version":"2026.10.30","dependencies":{"@sentry/node":"10.76.2","@toon-format/toon":"^4.4.0","commander":"^15.0.0","fast-json-patch":"^3.1.1","npm-package-arg":"^13.0.2","semver":"7.8.5","tar":"7.5.22","tinyglobby":"^0.2.17","yaml":"^2.9.1"},"peerDependencies":{"@types/node":"^22 || ^24 || ^26"},"peerDependenciesMeta":{"@types/node":{"optional":true}},"bin":{"pm-cli":"dist/cli.js","pm":"dist/cli.js","pm-mcp":"dist/mcp/server.js","pm-mcp-http":"dist/mcp/http-server.js"},"engines":{"node":">=22.18.0"}},"node_modules/@isaacs/fs-minipass":{"version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==","engines":{"node":">=18.0.0"},"dependencies":{"minipass":"7.1.3"}},"node_modules/@opentelemetry/api":{"version":"1.9.1","resolved":"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.1.tgz","integrity":"sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==","engines":{"node":">=8.0.0"}},"node_modules/@opentelemetry/api-logs":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.220.0.tgz","integrity":"sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w==","engines":{"node":">=8.0.0"},"dependencies":{"@opentelemetry/api":"1.9.1"}},"node_modules/@opentelemetry/core":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/core/-/core-2.12.0.tgz","integrity":"sha512-1HsSAuvT4/my0QrXWsyXFdWjKaPeCHsismKZgEEIb8NK13LP6DrMRlsUbvD/0F9mDWK3xDom9AMv3IscxgOnOQ==","peerDependencies":{"@opentelemetry/api":">=1.0.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/instrumentation":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.220.0.tgz","integrity":"sha512-xQx3E2WxP1mDvKzxLxX+CTCtNLa560YJZ3087qYHerl2YmiKpv7AH+dAy7vmx+eVrZ5BwhfWUAVoKOoxCNHcpw==","peerDependencies":{"@opentelemetry/api":"^1.3.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","import-in-the-middle":"3.5.2","require-in-the-middle":"8.0.1"}},"node_modules/@opentelemetry/resources":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/resources/-/resources-2.12.0.tgz","integrity":"sha512-+rSRoOdln6NhXTVcBdHSlZxJDNzwxadeweK2ltZO3tVtfp6aklABc06xclDk6ovRR+EiGgIcSbh/6NgjFhnb3A==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace/-/sdk-trace-2.12.0.tgz","integrity":"sha512-ImVuRQ6faOsTi1Wna88s2avgrrf/iDgXPigIeynkUhjstMuoQUDOJXgkez2j1mlU4btjXcXBGa+q7qKFYR3GsA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/resources":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace-base":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-2.12.0.tgz","integrity":"sha512-JOERgZCxRM06FEJ5kEWxlSRChah6MmXDx3KwCruqEv/iEyLkTokCSemf2y1w8oIHtfrr8EVTpzebq/31vn2Cpg==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/resources":"2.12.0","@opentelemetry/sdk-trace":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/semantic-conventions":{"version":"1.43.0","resolved":"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.43.0.tgz","integrity":"sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==","engines":{"node":">=14"}},"node_modules/@sentry/conventions":{"version":"0.16.0","resolved":"https://registry.npmjs.org/@sentry/conventions/-/conventions-0.16.0.tgz","integrity":"sha512-fO9PLmHdVURcSPUpWCItWAtgKiMwGdJHbovoSEyLplX5sxs2ugvI4CBPTrkkgqhObnZOD0CnWBKDzSVQYBKEyQ==","engines":{"node":">=14"}},"node_modules/@sentry/core":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/core/-/core-10.76.2.tgz","integrity":"sha512-vndrQalRiwYatTkjlLWvyf69KocXIb9TKJ4A9oiyWguL8PJYtqIRTlRe4OpkpjLrxS18fvRdV0jEm29c/9p3hQ==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0"}},"node_modules/@sentry/node":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/node/-/node-10.76.2.tgz","integrity":"sha512-LSwGGE/GceTbkDHRoQQr3lq/dpxxA6RdooBbuGTJ/S6BdqKX2kw2FdV7Se9eJzZJJJ5AxCZum37+ejYS7N2pJg==","engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.12.0","@sentry/conventions":"0.16.0","@sentry/core":"10.76.2","@sentry/node-core":"10.76.2","@sentry/opentelemetry":"10.76.2","@sentry/server-utils":"10.76.2","import-in-the-middle":"3.5.2"}},"node_modules/@sentry/node-core":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/node-core/-/node-core-10.76.2.tgz","integrity":"sha512-TrgAc/SvU5kQfjw8pz6I8LLIUiblOSf9BPPNkTbS0Dzcqa4yQLVbmsbS3rvGT7ot64m9Vjzn327ZRy63MlI6/w==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/exporter-trace-otlp-http":">=0.57.0 <1","@opentelemetry/instrumentation":">=0.57.1 <1","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"peerDependenciesMeta":{"@opentelemetry/api":{"optional":true},"@opentelemetry/core":{"optional":true},"@opentelemetry/exporter-trace-otlp-http":{"optional":true},"@opentelemetry/instrumentation":{"optional":true},"@opentelemetry/sdk-trace-base":{"optional":true}},"engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.76.2","@sentry/opentelemetry":"10.76.2","import-in-the-middle":"3.5.2"},"optionalDependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.12.0"}},"node_modules/@sentry/opentelemetry":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.76.2.tgz","integrity":"sha512-deqWrKJGaku3nhiZchg34z8W9v6kUwtzoQ4cmEq6CeT8/4X93X4YfeJgoh1dhbswFRpwor4pQ6kj0KttagKtfA==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/sdk-trace-base":"2.12.0","@sentry/conventions":"0.16.0","@sentry/core":"10.76.2"}},"node_modules/@sentry/server-utils":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/server-utils/-/server-utils-10.76.2.tgz","integrity":"sha512-wogj6Trj8fAu+aD7HbpvHEBlyANMOvvO9MP5NFJaiQbprLKugtCdE6rFTxDhofXvRo4nswL9m4Cvysg3k5KcvQ==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.76.2"}},"node_modules/@toon-format/toon":{"version":"4.4.0","resolved":"https://registry.npmjs.org/@toon-format/toon/-/toon-4.4.0.tgz","integrity":"sha512-A6UcsVoWbNdhdLNhJbe6JpRlocmf/DZGG57fur3bd8oQtsjBaKWo2hHbOU2zTuy+byUmLIOyP1xJeitopCZzpQ=="},"node_modules/chownr":{"version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==","engines":{"node":">=18"}},"node_modules/cjs-module-lexer":{"version":"2.3.0","resolved":"https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.3.0.tgz","integrity":"sha512-lmNyBzi6iYiqyrExTctfmjd8tInx+dHu9PBomTfH5RXS53c27JMFJgzNv5TyAnm3PgGf+MLy0+Ws41/HlVxdKQ=="},"node_modules/commander":{"version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==","engines":{"node":">=22.12.0"}},"node_modules/debug":{"version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==","peerDependencies":{"supports-color":"*"},"peerDependenciesMeta":{"supports-color":{"optional":true}},"engines":{"node":">=6.0"},"dependencies":{"ms":"2.1.3"},"optionalDependencies":{"supports-color":"7.2.0"}},"node_modules/es-module-lexer":{"version":"3.0.3","resolved":"https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-3.0.3.tgz","integrity":"sha512-yWGe1O/j+almnV4hOYrmZo8u58JdnmXEMneRQAYkWtqSiT86yoMIEKF4rpqEDj52tbYl3xceBD3DQIBwcsC9Pw=="},"node_modules/fast-json-patch":{"version":"3.1.1","resolved":"https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz","integrity":"sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ=="},"node_modules/fdir":{"version":"6.5.0","resolved":"https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz","integrity":"sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==","peerDependencies":{"picomatch":"^3 || ^4"},"peerDependenciesMeta":{"picomatch":{"optional":true}},"engines":{"node":">=12.0.0"},"optionalDependencies":{"picomatch":"4.0.7"}},"node_modules/has-flag":{"version":"4.0.0","resolved":"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz","integrity":"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==","engines":{"node":">=8"},"optional":true},"node_modules/hosted-git-info":{"version":"9.0.3","resolved":"https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz","integrity":"sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"lru-cache":"11.5.2"}},"node_modules/import-in-the-middle":{"version":"3.5.2","resolved":"https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-3.5.2.tgz","integrity":"sha512-WseIA/4o56+GYO3RmlOPvejYi771OFeJEeK/ejROsr9bdjW+E5NXTOD1Di8TL40Qgg3JJX9aa97Hf8iiSVIKZw==","engines":{"node":">=18"},"dependencies":{"cjs-module-lexer":"2.3.0","es-module-lexer":"3.0.3","module-details-from-path":"1.0.4"}},"node_modules/lru-cache":{"version":"11.5.2","resolved":"https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz","integrity":"sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==","engines":{"node":"20 || >=22"}},"node_modules/minipass":{"version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==","engines":{"node":">=16 || 14 >=14.17"}},"node_modules/minizlib":{"version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==","engines":{"node":">= 18"},"dependencies":{"minipass":"7.1.3"}},"node_modules/module-details-from-path":{"version":"1.0.4","resolved":"https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.4.tgz","integrity":"sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w=="},"node_modules/ms":{"version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},"node_modules/npm-package-arg":{"version":"13.0.2","resolved":"https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-13.0.2.tgz","integrity":"sha512-IciCE3SY3uE84Ld8WZU23gAPPV9rIYod4F+rc+vJ7h7cwAJt9Vk6TVsK60ry7Uj3SRS3bqRRIGuTp9YVlk6WNA==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"hosted-git-info":"9.0.3","proc-log":"6.1.0","semver":"7.8.5","validate-npm-package-name":"7.0.2"}},"node_modules/picomatch":{"version":"4.0.7","resolved":"https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz","integrity":"sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==","engines":{"node":">=12"}},"node_modules/proc-log":{"version":"6.1.0","resolved":"https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz","integrity":"sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/require-in-the-middle":{"version":"8.0.1","resolved":"https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-8.0.1.tgz","integrity":"sha512-QT7FVMXfWOYFbeRBF6nu+I6tr2Tf3u0q8RIEjNob/heKY/nh7drD/k7eeMFmSQgnTtCzLDcCu/XEnpW2wk4xCQ==","engines":{"node":">=9.3.0 || >=8.10.0 <9.0.0"},"dependencies":{"debug":"4.4.3","module-details-from-path":"1.0.4"}},"node_modules/semver":{"version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==","engines":{"node":">=10"},"hasBin":true},"node_modules/supports-color":{"version":"7.2.0","resolved":"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz","integrity":"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==","engines":{"node":">=8"},"dependencies":{"has-flag":"4.0.0"},"optional":true},"node_modules/tar":{"version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==","engines":{"node":">=18"},"dependencies":{"@isaacs/fs-minipass":"4.0.1","chownr":"3.0.0","minipass":"7.1.3","minizlib":"3.1.0","yallist":"5.0.0"}},"node_modules/tinyglobby":{"version":"0.2.17","resolved":"https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz","integrity":"sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==","engines":{"node":">=12.0.0"},"dependencies":{"fdir":"6.5.0","picomatch":"4.0.7"}},"node_modules/validate-npm-package-name":{"version":"7.0.2","resolved":"https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz","integrity":"sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/yallist":{"version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==","engines":{"node":">=18"}},"node_modules/yaml":{"version":"2.9.1","resolved":"https://registry.npmjs.org/yaml/-/yaml-2.9.1.tgz","integrity":"sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==","engines":{"node":">= 14.6"},"hasBin":true}}}
|
|
1
|
+
{"name":"@unbrained/pm-cli","version":"2026.10.31","lockfileVersion":3,"requires":true,"packages":{"":{"name":"@unbrained/pm-cli","version":"2026.10.31","dependencies":{"@sentry/node":"10.76.2","@toon-format/toon":"^4.4.0","commander":"^15.0.0","fast-json-patch":"^3.1.1","npm-package-arg":"^13.0.2","semver":"7.8.5","tar":"7.5.22","tinyglobby":"^0.2.17","yaml":"^2.9.1"},"peerDependencies":{"@types/node":"^22 || ^24 || ^26"},"peerDependenciesMeta":{"@types/node":{"optional":true}},"bin":{"pm-cli":"dist/cli.js","pm":"dist/cli.js","pm-mcp":"dist/mcp/server.js","pm-mcp-http":"dist/mcp/http-server.js"},"engines":{"node":">=22.18.0"}},"node_modules/@isaacs/fs-minipass":{"version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==","engines":{"node":">=18.0.0"},"dependencies":{"minipass":"7.1.3"}},"node_modules/@opentelemetry/api":{"version":"1.9.1","resolved":"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.1.tgz","integrity":"sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==","engines":{"node":">=8.0.0"}},"node_modules/@opentelemetry/api-logs":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.220.0.tgz","integrity":"sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w==","engines":{"node":">=8.0.0"},"dependencies":{"@opentelemetry/api":"1.9.1"}},"node_modules/@opentelemetry/core":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/core/-/core-2.12.0.tgz","integrity":"sha512-1HsSAuvT4/my0QrXWsyXFdWjKaPeCHsismKZgEEIb8NK13LP6DrMRlsUbvD/0F9mDWK3xDom9AMv3IscxgOnOQ==","peerDependencies":{"@opentelemetry/api":">=1.0.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/instrumentation":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.220.0.tgz","integrity":"sha512-xQx3E2WxP1mDvKzxLxX+CTCtNLa560YJZ3087qYHerl2YmiKpv7AH+dAy7vmx+eVrZ5BwhfWUAVoKOoxCNHcpw==","peerDependencies":{"@opentelemetry/api":"^1.3.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","import-in-the-middle":"3.5.2","require-in-the-middle":"8.0.1"}},"node_modules/@opentelemetry/resources":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/resources/-/resources-2.12.0.tgz","integrity":"sha512-+rSRoOdln6NhXTVcBdHSlZxJDNzwxadeweK2ltZO3tVtfp6aklABc06xclDk6ovRR+EiGgIcSbh/6NgjFhnb3A==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace/-/sdk-trace-2.12.0.tgz","integrity":"sha512-ImVuRQ6faOsTi1Wna88s2avgrrf/iDgXPigIeynkUhjstMuoQUDOJXgkez2j1mlU4btjXcXBGa+q7qKFYR3GsA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/resources":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace-base":{"version":"2.12.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-2.12.0.tgz","integrity":"sha512-JOERgZCxRM06FEJ5kEWxlSRChah6MmXDx3KwCruqEv/iEyLkTokCSemf2y1w8oIHtfrr8EVTpzebq/31vn2Cpg==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/resources":"2.12.0","@opentelemetry/sdk-trace":"2.12.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/semantic-conventions":{"version":"1.43.0","resolved":"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.43.0.tgz","integrity":"sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==","engines":{"node":">=14"}},"node_modules/@sentry/conventions":{"version":"0.16.0","resolved":"https://registry.npmjs.org/@sentry/conventions/-/conventions-0.16.0.tgz","integrity":"sha512-fO9PLmHdVURcSPUpWCItWAtgKiMwGdJHbovoSEyLplX5sxs2ugvI4CBPTrkkgqhObnZOD0CnWBKDzSVQYBKEyQ==","engines":{"node":">=14"}},"node_modules/@sentry/core":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/core/-/core-10.76.2.tgz","integrity":"sha512-vndrQalRiwYatTkjlLWvyf69KocXIb9TKJ4A9oiyWguL8PJYtqIRTlRe4OpkpjLrxS18fvRdV0jEm29c/9p3hQ==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0"}},"node_modules/@sentry/node":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/node/-/node-10.76.2.tgz","integrity":"sha512-LSwGGE/GceTbkDHRoQQr3lq/dpxxA6RdooBbuGTJ/S6BdqKX2kw2FdV7Se9eJzZJJJ5AxCZum37+ejYS7N2pJg==","engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.12.0","@sentry/conventions":"0.16.0","@sentry/core":"10.76.2","@sentry/node-core":"10.76.2","@sentry/opentelemetry":"10.76.2","@sentry/server-utils":"10.76.2","import-in-the-middle":"3.5.2"}},"node_modules/@sentry/node-core":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/node-core/-/node-core-10.76.2.tgz","integrity":"sha512-TrgAc/SvU5kQfjw8pz6I8LLIUiblOSf9BPPNkTbS0Dzcqa4yQLVbmsbS3rvGT7ot64m9Vjzn327ZRy63MlI6/w==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/exporter-trace-otlp-http":">=0.57.0 <1","@opentelemetry/instrumentation":">=0.57.1 <1","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"peerDependenciesMeta":{"@opentelemetry/api":{"optional":true},"@opentelemetry/core":{"optional":true},"@opentelemetry/exporter-trace-otlp-http":{"optional":true},"@opentelemetry/instrumentation":{"optional":true},"@opentelemetry/sdk-trace-base":{"optional":true}},"engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.76.2","@sentry/opentelemetry":"10.76.2","import-in-the-middle":"3.5.2"},"optionalDependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.12.0"}},"node_modules/@sentry/opentelemetry":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.76.2.tgz","integrity":"sha512-deqWrKJGaku3nhiZchg34z8W9v6kUwtzoQ4cmEq6CeT8/4X93X4YfeJgoh1dhbswFRpwor4pQ6kj0KttagKtfA==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.12.0","@opentelemetry/sdk-trace-base":"2.12.0","@sentry/conventions":"0.16.0","@sentry/core":"10.76.2"}},"node_modules/@sentry/server-utils":{"version":"10.76.2","resolved":"https://registry.npmjs.org/@sentry/server-utils/-/server-utils-10.76.2.tgz","integrity":"sha512-wogj6Trj8fAu+aD7HbpvHEBlyANMOvvO9MP5NFJaiQbprLKugtCdE6rFTxDhofXvRo4nswL9m4Cvysg3k5KcvQ==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.76.2"}},"node_modules/@toon-format/toon":{"version":"4.4.0","resolved":"https://registry.npmjs.org/@toon-format/toon/-/toon-4.4.0.tgz","integrity":"sha512-A6UcsVoWbNdhdLNhJbe6JpRlocmf/DZGG57fur3bd8oQtsjBaKWo2hHbOU2zTuy+byUmLIOyP1xJeitopCZzpQ=="},"node_modules/chownr":{"version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==","engines":{"node":">=18"}},"node_modules/cjs-module-lexer":{"version":"2.3.0","resolved":"https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.3.0.tgz","integrity":"sha512-lmNyBzi6iYiqyrExTctfmjd8tInx+dHu9PBomTfH5RXS53c27JMFJgzNv5TyAnm3PgGf+MLy0+Ws41/HlVxdKQ=="},"node_modules/commander":{"version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==","engines":{"node":">=22.12.0"}},"node_modules/debug":{"version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==","peerDependencies":{"supports-color":"*"},"peerDependenciesMeta":{"supports-color":{"optional":true}},"engines":{"node":">=6.0"},"dependencies":{"ms":"2.1.3"},"optionalDependencies":{"supports-color":"7.2.0"}},"node_modules/es-module-lexer":{"version":"3.0.3","resolved":"https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-3.0.3.tgz","integrity":"sha512-yWGe1O/j+almnV4hOYrmZo8u58JdnmXEMneRQAYkWtqSiT86yoMIEKF4rpqEDj52tbYl3xceBD3DQIBwcsC9Pw=="},"node_modules/fast-json-patch":{"version":"3.1.1","resolved":"https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz","integrity":"sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ=="},"node_modules/fdir":{"version":"6.5.0","resolved":"https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz","integrity":"sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==","peerDependencies":{"picomatch":"^3 || ^4"},"peerDependenciesMeta":{"picomatch":{"optional":true}},"engines":{"node":">=12.0.0"},"optionalDependencies":{"picomatch":"4.0.7"}},"node_modules/has-flag":{"version":"4.0.0","resolved":"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz","integrity":"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==","engines":{"node":">=8"},"optional":true},"node_modules/hosted-git-info":{"version":"9.0.3","resolved":"https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz","integrity":"sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"lru-cache":"11.5.2"}},"node_modules/import-in-the-middle":{"version":"3.5.2","resolved":"https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-3.5.2.tgz","integrity":"sha512-WseIA/4o56+GYO3RmlOPvejYi771OFeJEeK/ejROsr9bdjW+E5NXTOD1Di8TL40Qgg3JJX9aa97Hf8iiSVIKZw==","engines":{"node":">=18"},"dependencies":{"cjs-module-lexer":"2.3.0","es-module-lexer":"3.0.3","module-details-from-path":"1.0.4"}},"node_modules/lru-cache":{"version":"11.5.2","resolved":"https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz","integrity":"sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==","engines":{"node":"20 || >=22"}},"node_modules/minipass":{"version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==","engines":{"node":">=16 || 14 >=14.17"}},"node_modules/minizlib":{"version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==","engines":{"node":">= 18"},"dependencies":{"minipass":"7.1.3"}},"node_modules/module-details-from-path":{"version":"1.0.4","resolved":"https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.4.tgz","integrity":"sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w=="},"node_modules/ms":{"version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},"node_modules/npm-package-arg":{"version":"13.0.2","resolved":"https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-13.0.2.tgz","integrity":"sha512-IciCE3SY3uE84Ld8WZU23gAPPV9rIYod4F+rc+vJ7h7cwAJt9Vk6TVsK60ry7Uj3SRS3bqRRIGuTp9YVlk6WNA==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"hosted-git-info":"9.0.3","proc-log":"6.1.0","semver":"7.8.5","validate-npm-package-name":"7.0.2"}},"node_modules/picomatch":{"version":"4.0.7","resolved":"https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz","integrity":"sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==","engines":{"node":">=12"}},"node_modules/proc-log":{"version":"6.1.0","resolved":"https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz","integrity":"sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/require-in-the-middle":{"version":"8.0.1","resolved":"https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-8.0.1.tgz","integrity":"sha512-QT7FVMXfWOYFbeRBF6nu+I6tr2Tf3u0q8RIEjNob/heKY/nh7drD/k7eeMFmSQgnTtCzLDcCu/XEnpW2wk4xCQ==","engines":{"node":">=9.3.0 || >=8.10.0 <9.0.0"},"dependencies":{"debug":"4.4.3","module-details-from-path":"1.0.4"}},"node_modules/semver":{"version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==","engines":{"node":">=10"},"hasBin":true},"node_modules/supports-color":{"version":"7.2.0","resolved":"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz","integrity":"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==","engines":{"node":">=8"},"dependencies":{"has-flag":"4.0.0"},"optional":true},"node_modules/tar":{"version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==","engines":{"node":">=18"},"dependencies":{"@isaacs/fs-minipass":"4.0.1","chownr":"3.0.0","minipass":"7.1.3","minizlib":"3.1.0","yallist":"5.0.0"}},"node_modules/tinyglobby":{"version":"0.2.17","resolved":"https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz","integrity":"sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==","engines":{"node":">=12.0.0"},"dependencies":{"fdir":"6.5.0","picomatch":"4.0.7"}},"node_modules/validate-npm-package-name":{"version":"7.0.2","resolved":"https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz","integrity":"sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/yallist":{"version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==","engines":{"node":">=18"}},"node_modules/yaml":{"version":"2.9.1","resolved":"https://registry.npmjs.org/yaml/-/yaml-2.9.1.tgz","integrity":"sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==","engines":{"node":">= 14.6"},"hasBin":true}}}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{$ as co,A as to,B as ro,E as no,F as oo,Nb as po,P as io,Pb as yo,Q as so,Rb as go,Sb as _o,T as ao,Ya as fo,aa as lo,d as wn,da as uo,ea as It,fa as kt,ga as Ve,l as St,na as mo,o as Xn,s as Jn,uc as wo,w as ge,wb as ho,x as Zn,xb as Ke,y as eo,yc as bo,z as ze}from"./chunk-OOD2A7AF.js";import{a as ye,b as V,c as Mn,d as Fn}from"./chunk-I5O3XZOA.js";import{Dd as Un,F as Oe,Ge as Kn,H as je,Hd as Gn,I as Rn,Id as $n,J as he,Jd as Ge,K as pe,Kd as Wn,L as xn,Ld as $e,M as An,Md as We,N as qe,Nd as Be,Ob as Dn,Od as Bn,P as Cn,Q as Tn,Rc as Pn,Sc as Hn,Sd as zn,Td as Et,Uc as Ln,Vc as On,Xc as vt,Yc as jn,a as j,ae as Vn,c as bn,d as ee,e as bt,f as vn,i as En,jd as Ne,nd as Ue,p as Sn,pf as Qn,qf as Yn,s as In,v as te,y as Le,yd as qn,zd as Nn}from"./chunk-42BHHNTL.js";import{$c as ce,$h as hn,Ah as fe,Ba as B,Bg as nn,Bh as ln,Bi as H,C as ae,Cd as J,D as Re,Da as Ae,Eg as on,Eh as _t,Ge as Vr,Gg as le,H as xe,He as Kr,Hf as Te,Hh as dn,Hi as kn,I as Nr,If as ht,Jf as tn,Kf as rn,Le as Qr,Lg as sn,Mg as Fe,Ne as Yr,Ng as De,Oc as I,Pa as F,Sh as wt,Tf as D,Ue as S,Uh as un,Vc as $r,Wc as mt,Xe as Ce,Ye as Xr,Zc as Y,Ze as Jr,Zh as mn,_c as Wr,_e as ft,_h as fn,ai as pn,dg as x,ef as Zr,eg as pt,gd as X,gi as z,hi as yn,ii as He,jd as Br,ji as gn,ki as _n,of as en,og as O,pa as N,pd as zr,qg as Z,qh as Pe,rh as an,sh as de,uh as yt,v as ut,vh as ue,wh as me,xa as k,xh as gt,ya as Ur,yh as P,za as Gr,zg as Me,zh as cn}from"./chunk-OH7WPD42.js";import{A as f,C as h,E as ke,G as qr,K as L,u as jr}from"./chunk-RZQNFHXO.js";import Eo from"node:fs/promises";import So from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f3603dce-8aeb-5409-80f4-ad3367e35eb9")}catch{}})();function Bi(e,t,r){let n=new Set,o=[];for(let i of e){let s=i.trim();if(s.length===0||n.has(s))continue;n.add(s);let a=t.get(s);if(a===void 0){o.push({id:s,entries:0,selected:!1,skip_reason:"no_stream"});continue}if(a.entries<=r){o.push({id:s,entries:a.entries,selected:!1,skip_reason:"already_compact"});continue}o.push({id:s,entries:a.entries,selected:!0,skip_reason:null})}return o}function zi(e,t){let r=[...e].sort((o,i)=>i.entries-o.entries||o.id.localeCompare(i.id)),n=[];for(let o of r){if(t.scope==="closed"&&o.bucket!=="closed"){n.push({id:o.id,entries:o.entries,selected:!1,skip_reason:"scope_mismatch"});continue}if(o.entries<=t.minEntries){n.push({id:o.id,entries:o.entries,selected:!1,skip_reason:"already_compact"});continue}if(t.allOver!==void 0&&o.entries<=t.allOver){n.push({id:o.id,entries:o.entries,selected:!1,skip_reason:"below_threshold"});continue}n.push({id:o.id,entries:o.entries,selected:!0,skip_reason:null})}return n}function vo(e,t){if(t.ids!==void 0&&t.ids.length>0){let r=new Map(e.map(n=>[n.id,n]));return Bi(t.ids,r,t.minEntries)}return zi(e,t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c6009e5f-840e-5e3a-b8b9-6e9d42d63410")}catch{}})();function Vi(e,t){if(e===void 0)return{kind:"default",raw:null,compactCount:t.length,retainedCount:0};let r=e.trim();if(r.length===0)throw new h("history-compact --before requires a non-empty value.",f.USAGE);if(/^\d+$/.test(r)){let i=Number.parseInt(r,10),s=j(t);if(!Number.isSafeInteger(i)||i<s+1||i>s+t.length+1)throw new h(`history-compact --before version must be between ${s+1} and ${s+t.length+1}.`,f.USAGE);let a=i-s-1;return{kind:"version",raw:r,compactCount:a,retainedCount:t.length-a}}let n=Date.parse(r);if(!Number.isFinite(n))throw new h(`Invalid history-compact --before value "${e}". Use a version number or ISO timestamp.`,f.USAGE);let o=0;for(let[i,s]of t.entries()){let a=Date.parse(s.ts);if(!Number.isFinite(a))throw new h(`History for this item contains invalid timestamp at entry ${i+1}.`,f.GENERIC_FAILURE);if(a>=n)break;o+=1}return{kind:"timestamp",raw:r,compactCount:o,retainedCount:t.length-o}}function Ki(e,t){let r=ue(),n=ue();for(let o=0;o<e.length;o+=1){let i=e[o];r=ee(r,i.patch,o+1,i.op),o+1===t&&(n=structuredClone(r))}return{checkpoint:n,finalReplay:r}}function Qi(e,t){if(!e)return{loadedItem:null,currentItemRawBeforeLock:null,matchedChainBefore:null};let r=t[t.length-1];return{loadedItem:e,currentItemRawBeforeLock:e.raw,matchedChainBefore:un.some(n=>(r.item_hash_version===void 0||r.item_hash_version===n)&>(fe(e.document),n,x(r.hash_algorithm)).includes(r.after_hash))}}function Yi(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:t.raw===null?`history-compact compacted full stream (${t.compactCount} entr${t.compactCount===1?"y":"ies"}).`:`history-compact compacted ${t.compactCount} entr${t.compactCount===1?"y":"ies"} before ${t.raw}.`}function Xi(e){return e.raw===null?`history-compact baseline snapshot after compacting ${e.compactCount} entr${e.compactCount===1?"y":"ies"}.`:`history-compact baseline snapshot before ${e.raw}.`}function Ji(e){if(!e.changed)return{rewrittenEntries:e.historyEntries,baselineEntryAdded:!1,auditEntryAdded:!1};let{checkpoint:t,finalReplay:r}=Ki(e.historyEntries,e.boundary.compactCount),n=e.historyEntries.slice(e.boundary.compactCount),o=j(e.historyEntries,!0),i=e.historyEntries[e.boundary.compactCount-1],s=z({hashAlgorithm:x(i.hash_algorithm),nowIso:e.historyEntries[e.boundary.compactCount-1].ts,author:e.author,op:"history_compact_baseline",before:P(ue()),after:P(t),message:Xi(e.boundary),context:{history_compaction:{contract_version:1,version_offset:o===null?null:o+e.boundary.compactCount-1,checkpoint_timestamp_semantics:"last_compacted_entry",pruned_entry_count:e.boundary.compactCount,pruned_stream_digest:mn(e.historyEntries.slice(0,e.boundary.compactCount)),retained_proof:"stream_digest_and_checkpoint",limitation:"individual_pruned_entries_require_pre_compaction_stream"}}}),a=[fn({...s,before_hash:gt(ue(),i.item_hash_version??1,x(i.hash_algorithm))[0],after_hash:i.after_hash,item_hash_version:i.item_hash_version}),...n];return e.dryRun||a.push(z({nowIso:S(),author:e.author,op:"history_compact",before:P(r),after:P(r),message:Yi(e.options,e.boundary)})),{rewrittenEntries:a,baselineEntryAdded:!0,auditEntryAdded:!e.dryRun}}async function Zi(e,t,r){let{pmRoot:n,settings:o,typeRegistry:i}=await ye(r.path),s=await V(n,e,o,i.type_to_folder);return Ke({pmRoot:n,subject:s,settings:o,typeRegistry:i,operation:"history-compact",options:t,transform:a=>es(s,t,a)})}function es(e,t,r){let n=e.historyPath,o=r.entries,i=r.verification;if(!i.ok)throw new h(`history-compact requires a valid history chain (${i.errors.join(", ")}). Run pm history-repair ${e.id} first.`,f.CONFLICT);let s=Vi(t.before,o),a=s.compactCount>0,c=!!t.dryRun,d=r.author,l=[];a||l.push("history_compact_noop_before_boundary");let u=Qi(r.loadedItem,o);u.matchedChainBefore===!1&&l.push("history_compact_item_chain_mismatch");let{rewrittenEntries:m,baselineEntryAdded:p,auditEntryAdded:g}=Ji({historyEntries:o,boundary:s,changed:a,dryRun:c,author:d,options:t}),_=j(o,!0),y=s.retainedCount>0&&_!==null?_+s.compactCount+1:null;return{changed:a,rewrittenEntries:m,report:({verification:w,warnings:b})=>({id:e.id,dry_run:c,changed:a,compact_boundary:{kind:s.kind,before:s.raw,entries_compacted:s.compactCount,entries_retained:s.retainedCount,first_retained_entry:y},history:{path:n,entries_scanned:o.length,entries_after:m.length,baseline_entry_added:p,audit_entry_added:g,verify_ok:w.ok,verify_errors:w.errors},item:{exists:e.located!==null,path:e.located?.itemPath??null,matched_chain_before:u.matchedChainBefore},warnings:[...new Set([...l,...b])].sort((v,E)=>v.localeCompare(E)),generated_at:S()})}}var ts=3;function rs(e){for(let r of["allOver","minEntries"]){let n=e[r];if(n!==void 0&&(!Number.isSafeInteger(n)||n<0))throw new h(`history-compact ${r} must be a non-negative safe integer.`,f.USAGE)}let t=On(e.ids);if(e.ids!==void 0&&t==="")throw new h("history-compact ids requires at least one valid item ID.",f.USAGE,{code:"bulk_ids_input_empty",required:"Provide one or more string or finite numeric IDs; non-finite and unsupported selector values are rejected."});return{...e,ids:t===void 0?void 0:Ln(t)}}function al(e,t){let r=t.ids!==void 0&&t.ids.length>0,n=t.allOver!==void 0||t.scope!==void 0;if((e!==void 0?1:0)+(r?1:0)+(n?1:0)==0)throw new h("history-compact: provide an item <id>, or a bulk selector (--ids, --all-over <N>, --closed, or --all-streams).",f.USAGE);if(e!==void 0&&(r||n))throw new h("history-compact: <id> and bulk selectors (--ids/--all-over/--closed/--all-streams) are mutually exclusive; pass one item id, or use bulk mode without a positional id.",f.USAGE);if(r&&n)throw new h("history-compact: --ids is mutually exclusive with --all-over/--closed/--all-streams; pass an explicit id list or a scan selector, not both.",f.USAGE)}function ns(e){let t=0;for(let r of e.split(/\r?\n/))r.trim().length>0&&(t+=1);return t}async function os(e){let t=O(e.settings.schema),r=ze(t),n=await qe(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema),o=new Map(n.map(d=>[d.id,r.classify(d.status)])),i=So.join(e.pmRoot,"history"),s=[],a=[];if(!await ke(i))return{candidates:s,preselectionErrors:a};let c=(await Eo.readdir(i)).filter(d=>d.endsWith(".jsonl")).sort((d,l)=>d.localeCompare(l));for(let d of c){let l=So.join(i,d),u=d.slice(0,-6);try{let m=await Eo.readFile(l,"utf8");await ce({path:l,scope:"project"}),s.push({id:u,entries:ns(m),bucket:o.get(u)??null})}catch(m){a.push({id:u,outcome:"errored",entries_before:0,entries_after:null,skip_reason:null,changed:!1,error:m instanceof Error?m.message:String(m)})}}return{candidates:s,preselectionErrors:a}}async function is(e){if(!e.row.selected)return{selected:!1,compacted:!1,errored:!1,result:{id:e.row.id,outcome:"skipped",entries_before:e.row.entries,entries_after:null,skip_reason:e.row.skip_reason,changed:!1,error:null}};try{let t=await Zi(e.row.id,{dryRun:e.dryRun,author:e.options.author,message:e.options.message,force:e.options.force},e.global);return{selected:!0,compacted:!0,errored:!1,result:{id:e.row.id,outcome:"compacted",entries_before:e.row.entries,entries_after:t.history.entries_after,skip_reason:null,changed:t.changed,error:null}}}catch(t){return{selected:!0,compacted:!1,errored:!0,result:{id:e.row.id,outcome:"errored",entries_before:e.row.entries,entries_after:null,skip_reason:null,changed:!1,error:t instanceof Error?t.message:String(t)}}}}async function cl(e,t){let r=rs(e),{pmRoot:n,settings:o,typeRegistry:i}=await ye(t.path),{candidates:s,preselectionErrors:a}=await os({pmRoot:n,settings:o,typeToFolder:i.type_to_folder}),c=r.ids!==void 0&&r.ids.length>0?"ids":"scan",d=e.minEntries??ts,l=o.history.compact_policy,u=c==="scan"&&e.allOver===void 0&&l.enabled,m=e.allOver??(u?l.max_entries:void 0),p=vo(s,{ids:r.ids,scope:e.scope,minEntries:d,allOver:m}),g=!!e.dryRun,_=[...a],y={streams_considered:s.length+a.length,selected:0,items_compacted:0,items_skipped:0,items_errored:a.length};for(let w of p){let b=await is({row:w,options:r,dryRun:g,global:t});if(_.push(b.result),!b.selected){y.items_skipped+=1;continue}y.selected+=1,b.compacted&&(y.items_compacted+=1),b.errored&&(y.items_errored+=1)}return{bulk:!0,dry_run:g,mode:c,scope:e.scope??null,criteria:{min_entries:d,all_over:m??null,policy_threshold_applied:u},totals:y,results:_,generated_at:S()}}import Rt from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ebf3254f-1fed-5972-b91a-b8ff101675f4")}catch{}})();function xt(e){return Array.isArray(e)?e:typeof e=="string"?[e]:[]}function ko(e){let t=[];for(let r of e)t.includes(r)||t.push(r);return t.includes("g")||t.push("g"),t.join("")}function Ro(e){let t=e.trim();if(t.length===0)throw new h("history-redact --regex requires a non-empty pattern.",f.USAGE);let r=t,n="g";if(t.startsWith("/")&&t.length>1){let o=t.lastIndexOf("/");o>0&&(r=t.slice(1,o),n=ko(t.slice(o+1)))}if(r.length===0)throw new h("history-redact --regex cannot use an empty pattern.",f.USAGE);try{new RegExp(r,n)}catch{throw new h("Invalid --regex value; provide a valid JavaScript regular expression.",f.USAGE)}return{kind:"regex",source:r,flags:n}}function xo(e,t){let r=[...new Set(xt(e).map(i=>i.trim()))].filter(i=>i.length>0).map(i=>({kind:"literal",value:i})),n=[...new Set(xt(t).map(i=>i.trim()))].filter(i=>i.length>0).map(Ro),o=[...r,...n];if(o.length===0)throw new h("history-redact requires at least one matcher via --literal or --regex.",f.USAGE,{code:"missing_required_argument",required:"Provide --literal <value> and/or --regex <pattern>.",examples:['pm history-redact pm-a1b2 --literal "[redacted_path_prefix]/private"','pm history-redact pm-a1b2 --regex "/192\\\\.168\\\\.[0-9.]+/g" --replacement "[scrubbed_ip]"']});return o}function Ao(e,t,r){if(t.length===0)return{value:e,replacements:0};let n=0,o=0;for(;n<=e.length;){let i=e.indexOf(t,n);if(i===-1)break;o+=1,n=i+Math.max(1,t.length)}return o===0?{value:e,replacements:0}:{value:e.split(t).join(r),replacements:o}}function Co(e,t,r){let n=new RegExp(t.source,t.flags),o=[...e.matchAll(n)];return o.length===0?{value:e,replacements:0}:{value:e.replace(n,r),replacements:o.length}}function At(e,t,r){let n=e,o=0;for(let i of t){let s=i.kind==="literal"?Ao(n,i.value,r):Co(n,i,r);n=s.value,o+=s.replacements}return{value:n,replacements:o}}function _e(e,t,r){if(typeof e=="string")return At(e,t,r);if(Array.isArray(e)){let n=0;return{value:e.map(o=>{let i=_e(o,t,r);return n+=i.replacements,i.value}),replacements:n}}if(typeof e=="object"&&e!==null){let n=0,o={};for(let[i,s]of Object.entries(e)){let a=_e(s,t,r);n+=a.replacements,o[i]=a.value}return{value:o,replacements:n}}return{value:e,replacements:0}}function Io(e,t,r){let n=0;return{patch:e.map(o=>{if(!Object.prototype.hasOwnProperty.call(o,"value"))return o;let i=_e(o.value,t,r);return n+=i.replacements,i.replacements>0?{...o,value:i.value}:o}),replacements:n}}function ss(e){let t=structuredClone(yt),r=0,n=0;for(let o=0;o<e.length;o+=1){let i=e[o];me(t,void 0,x(i.hash_algorithm))!==i.before_hash&&(r+=1),t=ee(t,i.patch,o+1,i.op),me(t,void 0,x(i.hash_algorithm))!==i.after_hash&&(n+=1)}return{hashMismatchesBefore:r,hashMismatchesAfter:n,finalDocument:t}}function as(e,t,r){let n=0,o=!1,i=!1,s=e.message;if(typeof e.message=="string"){let d=At(e.message,t,r);s=d.value,n+=d.replacements,d.replacements>0&&(o=!0)}let a=Io(e.patch,t,r);n+=a.replacements,o||=a.replacements>0;let c=e.reanchor_evidence?.map(d=>{let l=d.patch?Io(d.patch,t,r):{patch:void 0,replacements:0},u=d.record?_e(d.record,t,r):{value:void 0,replacements:0};n+=l.replacements,n+=u.replacements;let m=l.replacements>0||u.replacements>0;if(o||=m,!m)return d;i=!0;let{patch:p,record:g,record_hash:_,record_hash_version:y,...w}=d;return l.replacements>0?w:{...w,patch:d.patch}});return{entry:{...e,message:s,patch:a.patch,...c?{reanchor_evidence:c}:{}},replacements:n,changed:o,reanchorEvidenceRedacted:i}}function cs(e,t,r){let n=structuredClone(yt),o=0,i=0,s=[];for(let a=0;a<e.length;a+=1){let c=e[a],d=hn(c);if(!d.ok)throw new h(`history-redact refuses invalid immutable record ${a+1} (${d.error}).`,f.GENERIC_FAILURE);let l=as(c,t,r);i+=l.replacements,l.changed&&(o+=1);let u=me(n,void 0,x(c.hash_algorithm));n=ee(n,l.entry.patch,a+1,l.entry.op);let m=me(n,void 0,x(c.hash_algorithm));s.push(pn(c,{...l.entry,before_hash:u,after_hash:m},{retainPriorRecord:l.changed,retainPriorRecordHash:!l.changed}))}return{entries:s,finalDocument:n,entriesChanged:o,replacements:i}}function To(e){return Object.keys(e.metadata).length>0}function ls(e){if(!To(e.finalDocument))return{raw:null,path:null,document:null};let t=De(P(e.finalDocument),{schema:e.settings.schema});if(t.metadata.id!==e.subject.id)throw new h("history-redact would change the item id; narrow your patterns.",f.USAGE);return{document:t,path:B(e.pmRoot,t.metadata.type,e.subject.id,"toon",e.typeToFolder),raw:Fe(t,{format:"toon",schema:e.settings.schema})}}function ds(e,t){return typeof e.message=="string"&&e.message.trim().length>0?e.message:`history-redact replaced ${t.replacements} match(es) across ${t.entriesChanged} entr${t.entriesChanged===1?"y":"ies"}.`}function us(e){let t=[...e.rewritten.entries];if(e.dryRun||!e.changed)return{rewrittenEntries:t,auditEntryAdded:!1};let r=e.nextItemDocument??P(e.rewritten.finalDocument);return t.push(z({nowIso:S(),author:e.author,op:"history_redact",before:r,after:r,message:e.message})),{rewrittenEntries:t,auditEntryAdded:!0}}function ms(e){let t=[];return{applyRewrite:async({historyRawUnderLock:r})=>{let n=await Oe(e.pmRoot,e.author),o=new Set;e.currentItem.path&&o.add(e.currentItem.path),e.nextItem.path&&o.add(e.nextItem.path);let i=new Map;e.currentItem.path&&e.currentItem.raw!==null&&i.set(e.currentItem.path,e.currentItem.raw);let s=()=>{};try{try{e.nextItem.path&&e.nextItem.raw!==null&&e.nextItem.raw!==e.currentItem.raw&&await L(e.nextItem.path,e.nextItem.raw),e.currentItem.path&&(!e.nextItem.path||e.nextItem.path!==e.currentItem.path)&&await Rt.rm(e.currentItem.path,{force:!0}),await L(e.subject.historyPath,dn(e.rewrittenEntries))}catch(c){try{await fs(e.subject.historyPath,r,o,i)}finally{await wt(e.subject.historyPath)}throw c}await wt(e.subject.historyPath);let a=e.nextItem.path??e.currentItem.path;a&&(t=await je({pmRoot:e.pmRoot,preferredFormat:e.settings.item_format,typeToFolder:e.typeRegistry.type_to_folder,schema:e.settings.schema,itemPath:a,...e.currentItem.path?{previousItemPath:e.currentItem.path}:{},document:e.nextItem.document}))}finally{await n().catch(a=>{s=()=>{throw a}})}s()},afterWrite:async()=>[...t,...await hs(e.subject.historyPath,[e.nextItem.path,e.currentItem.path])]}}async function fs(e,t,r,n){t===null?await Rt.rm(e,{force:!0}):await L(e,t);for(let o of r){let i=n.get(o);i===void 0?await Rt.rm(o,{force:!0}):await L(o,i)}}async function hs(e,t){let r=[],n=new Set(t.filter(o=>o!==null));for(let o of n)r.push(...await Y({path:o,scope:"project",op:"history_redact"}));return r.push(...await Y({path:e,scope:"project",op:"history_redact:history"})),r}async function xl(e,t,r){let{pmRoot:n,settings:o,typeRegistry:i}=await ye(r.path),s=t.replacement??"",a=s.length===0,c=a?"[redacted]":s,d=xo(t.literal,t.regex),l=await V(n,e,o,i.type_to_folder);return Ke({pmRoot:n,subject:l,settings:o,typeRegistry:i,operation:"history-redact",options:t,transform:u=>ps({pmRoot:n,subject:l,settings:o,typeRegistry:i,options:t,rules:d,replacement:c,replacementIsDefault:a},u)})}function ps(e,t){let{pmRoot:r,subject:n,settings:o,typeRegistry:i,options:s,rules:a,replacement:c,replacementIsDefault:d}=e,l=t.entries,u=ss(l),m=cs(l,a,c),p=u.hashMismatchesBefore+u.hashMismatchesAfter,g=!!s.dryRun,_=m.replacements>0,y=[];p>0&&y.push(`history_redact_preexisting_hash_mismatches:${p}`),_||y.push("history_redact_no_matches");let w={raw:t.loadedItem?.raw??null,path:n.located?.itemPath??null,document:t.loadedItem?.document??null},b=ls({pmRoot:r,subject:n,settings:o,typeToFolder:i.type_to_folder,finalDocument:m.finalDocument}),v=(w.path??null)!==(b.path??null)||(w.raw??null)!==(b.raw??null),E=t.author,R=ds(s,m),{rewrittenEntries:$,auditEntryAdded:W}=us({rewritten:m,dryRun:g,changed:_,nextItemDocument:b.document,author:E,message:R});return{changed:_,rewrittenEntries:$,...ms({pmRoot:r,subject:n,settings:o,typeRegistry:i,currentItem:w,nextItem:b,author:E,rewrittenEntries:$}),report:({verification:Q,warnings:lt})=>({id:n.id,dry_run:g,changed:_,patterns:{literal_count:a.filter(A=>A.kind==="literal").length,regex_count:a.filter(A=>A.kind==="regex").length,total_count:a.length,replacement_is_default:d},history:{path:n.historyPath,entries_scanned:l.length,entries_changed:m.entriesChanged,replacements:m.replacements,hash_mismatches_before:u.hashMismatchesBefore,hash_mismatches_after:u.hashMismatchesAfter,preexisting_hash_mismatches:p,audit_entry_added:W,verify_ok:Q.ok,verify_errors:Q.errors},item:{existed_before:w.path!==null,exists_after:b.path!==null,path_before:w.path,path_after:b.path,changed:v},warnings:[...new Set([...y,...lt])].sort((A,dt)=>A.localeCompare(dt)),generated_at:S()})}}var Al={applyLiteralRule:Ao,applyRegexRule:Co,buildRedactionRules:xo,hasItemMetadata:To,normalizeRegexFlags:ko,normalizeStringArrayInput:xt,parseRegexRule:Ro,redactStringValue:At,redactUnknownValue:_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]="63c96190-0df9-5803-aa61-b973493a7277")}catch{}})();var Ct={format:"pm-history-attestation",version:1,stream_hash:"exact_file_bytes",rollup_hash:"stable_json_without_workspace_digest",ordering:"stream_id_code_unit_ascending",consistency:"per_stream_snapshot_with_change_detection",trust:"independently_retained_bundle"};import{createHash as ys}from"node:crypto";import{isUtf8 as gs}from"node:buffer";import we from"node:fs/promises";import Tt from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a049f799-3807-59b5-96de-51e900798779")}catch{}})();async function Mo(e){try{return(await we.readdir(e)).filter(t=>t.endsWith(".jsonl")).sort()}catch(t){if(qr(t))return[];throw t}}function _s(e,t,r,n){let o=t.at(-1),i;for(let c=t.length-1;c>=0;c-=1)if(["history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","merge_reconcile"].includes(t[c].op)){i=t[c];break}let s=t[0]?.context?.history_compaction,a=typeof s=="object"&&s!==null&&"pruned_stream_digest"in s&&typeof s.pruned_stream_digest=="string"?s.pruned_stream_digest:null;return{id:e,entries:t.length,bytes:r,stream_digest:n,latest_after_hash:o?.after_hash??null,latest_record_hash:o?.record_hash??null,latest_hash_algorithm:o?x(o.hash_algorithm):null,rewrite_count:t.reduce((c,d)=>c+(d.reanchor_evidence?.length??0),0),checkpoint_digest:a,last_maintenance:i?{op:i.op,ts:i.ts,record_hash:i.record_hash??null}:null}}function ws(e,t,r){try{if(!/^[A-Za-z0-9_-]+$/u.test(e)||!gs(t))return null;let n=[];for(let o of t.toString("utf8").split(/\r?\n/u)){if(!o.trim())continue;let i=JSON.parse(o);if(typeof i!="object"||i===null||Array.isArray(i))return null;let s=i;if(![s.op,s.author,s.ts,s.before_hash,s.after_hash].every(a=>typeof a=="string")||!Array.isArray(s.patch))return null;n.push(s)}return _t(n).ok?_s(e,n,t.length,r):null}catch{return null}}async function Mt(e,t){if(!(await we.stat(e)).isDirectory())throw new TypeError("attestation tracker root must be a directory");let r=Tt.join(e,"history"),n=await Mo(r),o=new Map,i=[];for(let s of n){let a=s.slice(0,-6),c={id:a,digest:null,stream:null};i.push(c);let d=Tt.join(r,s);try{let l=await we.lstat(d);if(o.set(s,F([l.ino,l.size,l.mtimeMs,l.ctimeMs])),!l.isFile())continue;let u=await we.readFile(d);c.digest=ys(t).update(u).digest("hex"),c.stream=ws(a,u,c.digest)}catch{}}if(F(n)!==F(await Mo(r)))throw new TypeError("attestation history inventory changed during read; retry");for(let[s,a]of o){let c=await we.lstat(Tt.join(r,s));if(a!==F([c.ino,c.size,c.mtimeMs,c.ctimeMs]))throw new TypeError("attestation history stream changed during read; retry")}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]="54d3c0f4-e663-5e31-aa4e-45ea2f6aaf75")}catch{}})();function Ft(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Dt(e,t){return Object.keys(e).length===t.length&&t.every(r=>Object.hasOwn(e,r))}function re(e,t){return typeof e=="string"&&(t==="sha256"?/^[a-f0-9]{64}$/u:/^[a-f0-9]{128}$/u).test(e)}function bs(e){return e.entries===0?[e.latest_hash_algorithm,e.latest_after_hash,e.latest_record_hash,e.checkpoint_digest,e.last_maintenance].every(t=>t===null)&&e.rewrite_count===0:e.latest_hash_algorithm!=="sha256"&&e.latest_hash_algorithm!=="sha512"?!1:re(e.latest_after_hash,e.latest_hash_algorithm)&&(e.latest_record_hash===null||re(e.latest_record_hash,e.latest_hash_algorithm))}function vs(e){return e===null?!0:!Ft(e)||!Dt(e,["op","ts","record_hash"])?!1:typeof e.op=="string"&&["history_compact","history_compact_baseline","history_redact","history_repair","history_salvage","merge_reconcile"].includes(e.op)&&typeof e.ts=="string"&&Ce(e.ts)&&(e.record_hash===null||re(e.record_hash,"sha256")||re(e.record_hash,"sha512"))}function Es(e,t){return!Ft(e)||!Dt(e,["id","entries","bytes","stream_digest","latest_after_hash","latest_record_hash","latest_hash_algorithm","rewrite_count","checkpoint_digest","last_maintenance"])?!1:typeof e.id=="string"&&/^[A-Za-z0-9_-]+$/u.test(e.id)&&[e.entries,e.bytes,e.rewrite_count].every(r=>typeof r=="number"&&Number.isSafeInteger(r)&&r>=0)&&re(e.stream_digest,t)&&bs(e)&&(e.checkpoint_digest===null||re(e.checkpoint_digest,"sha256"))&&vs(e.last_maintenance)}function Fo(e){if(!Ft(e)||!Dt(e,["format","version","hash_algorithm","generated_at","streams","workspace_digest"]))throw new TypeError("Invalid history attestation bundle");if(e.format!==Ct.format||e.version!==1||typeof e.generated_at!="string"||!Ce(e.generated_at)||!Array.isArray(e.streams)||e.hash_algorithm!=="sha256"&&e.hash_algorithm!=="sha512")throw new TypeError("Invalid history attestation format");let t=e.hash_algorithm,r;for(let i of e.streams){if(!Es(i,t))throw new TypeError("Invalid history attestation stream");let s=i.id;if(r!==void 0&&s<=r)throw new TypeError("Invalid history attestation stream order");r=s}let{workspace_digest:n,...o}=e;if(pt(F(o),t)!==n)throw new TypeError("History attestation rollup mismatch");return e}async function Do(e={}){let t=x(e.hashAlgorithm),r=e.generatedAt??S();if(!Ce(r))throw new TypeError("Invalid history attestation timestamp");let n=await Mt(k(e.cwd??process.cwd(),e.pmRoot),t),o=n.filter(s=>s.stream===null);if(o.length>0)throw new TypeError(`Cannot export history attestation: invalid streams ${o.map(s=>s.id).join(", ")}`);let i={format:Ct.format,version:1,hash_algorithm:t,generated_at:r,streams:n.map(s=>s.stream)};return Fo({...i,workspace_digest:pt(F(i),t)})}async function Po(e,t={}){let r=Fo(e),n=await Mt(k(t.cwd??process.cwd(),t.pmRoot),r.hash_algorithm),o=new Map(n.map(l=>[l.id,l])),i=new Map(r.streams.map(l=>[l.id,l])),s=r.streams.filter(l=>!o.has(l.id)).map(l=>l.id),a=n.filter(l=>!i.has(l.id)).map(l=>l.id),c=n.filter(l=>l.stream===null).map(l=>l.id),d=[];for(let l of r.streams){let u=o.get(l.id);u&&(u.digest!==l.stream_digest||F(u.stream)!==F(l))&&d.push({id:l.id,before_digest:l.stream_digest,after_digest:u.digest,last_maintenance:u.stream?.last_maintenance??null})}return{ok:s.length+a.length+c.length+d.length===0,workspace_digest:r.workspace_digest,streams_checked:n.length,changed_streams:d.map(l=>l.id),missing_streams:s,added_streams:a,invalid_streams:c,transitions:d}}import Ho from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3bca4afb-f1cc-5627-a377-b30e8005a284")}catch{}})();async function Zl(e,t){for(let n of["verify","output","hashAlgorithm"]){let o=e[n];if(!(n==="verify"&&typeof o=="object"&&o!==null)&&o!==void 0&&(typeof o!="string"||o.trim().length===0))throw new h(`history attest ${n} requires a nonempty string.`,f.USAGE)}if(e.verify!==void 0){if(e.output!==void 0||e.hashAlgorithm!==void 0)throw new h("history attest --verify cannot be combined with --output or --hash-algorithm",f.USAGE);let n;try{n=typeof e.verify=="string"?JSON.parse(await Ho.readFile(e.verify,"utf8")):e.verify}catch{throw new h("Cannot read history attestation proof. Provide --verify with a readable JSON proof file.",f.USAGE)}return Po(n,{pmRoot:t.path})}let r=await Do({pmRoot:t.path,hashAlgorithm:x(e.hashAlgorithm)});if(e.output===void 0)return r;try{await Ho.writeFile(e.output,`${JSON.stringify(r,null,2)}
|
|
2
|
-
`,{flag:"wx",mode:384})}catch{throw new h("Cannot create history attestation proof. Choose --output with a new filename in a writable directory; existing files are never overwritten.",f.USAGE)}return{output:e.output,workspace_digest:r.workspace_digest,streams:r.streams.length}}import Ss from"fast-json-patch";import Pt from"node:fs/promises";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f3145f17-e911-571b-9da3-f014e6fdde1c")}catch{}})();async function Lo(e,t,r){let n=await xn(e,{schema:t.schema});return n.error===null?{raw:n.raw,document:n.document}:{raw:n.raw,document:Oo(r),recovered:!0}}function Is(e,t){return bn(e,t,{errorSubject:"restore",allowFutureTimestamp:!0})}function Oo(e){let t=bt(e,e.length-1);return Object.keys(t.metadata).length===0?{metadata:{},body:t.body}:De(P(t))}async function ks(e,t,r,n){let o=await V(e,t,r,n),i=o.located?await Le({pmRoot:e,settings:r,itemId:o.id,commandLabel:"restore"}):{warnings:[]};return{...o,historyPolicyWarnings:i.warnings}}function Rs(e,t){let r=fe(e),n=fe(t),o=Ss.compare(r,n),i=new Set;for(let s of o){if(s.path==="/body"||s.path.startsWith("/body/")){i.add("body");continue}let a=s.path.replace(/^\/(?:metadata|front_matter)\/?/,"").split("/")[0];i.add(a.replaceAll("~1","/").replaceAll("~0","~"))}return Array.from(i).sort((s,a)=>s.localeCompare(a))}async function xs(e){let t=await ho({pmRoot:e.pmRoot,subject:e.subject,settings:e.settings,typeRegistry:e.typeRegistry,historyRawBeforeLock:e.historyRawBeforeLock,currentItemRawBeforeLock:e.currentItemRawBeforeLock,operation:"restore",readItem:r=>Lo(r,e.settings,e.history)});return{loadedItemUnderLock:t.loadedItemUnderLock,existingItemPath:t.locatedUnderLock?.itemPath??null}}function As(e,t){return e?{document:e.document,originalRaw:e.raw}:{document:Oo(t),originalRaw:null}}function Cs(e){let t=e.document.metadata.assignee?.trim();if(!(t&&t!==e.author&&!e.force))return[];if(e.enforcement==="strict")throw new h(`Item ${e.resolvedId} is assigned to ${t}. Use --force to override.`,f.CONFLICT);return e.enforcement==="warn"?[`ownership_warning:assignee_conflict:${e.resolvedId}:${t}`]:[]}async function Ts(e){if(e.existingItemPath&&e.resolvedOriginalRaw!==null&&e.restoredItemPath!==e.existingItemPath){await L(e.existingItemPath,e.resolvedOriginalRaw),await Pt.rm(e.restoredItemPath,{force:!0});return}if(e.existingItemPath&&e.resolvedOriginalRaw!==null){await L(e.existingItemPath,e.resolvedOriginalRaw);return}await Pt.rm(e.restoredItemPath,{force:!0})}async function Ms(e){return[...await Y({path:e.restoredItemPath,scope:"project",op:"restore",item_id:e.after.metadata.id,item_type:e.after.metadata.type,before:e.before,after:e.after,changed_fields:["restored"]}),...await Y({path:e.historyPath,scope:"project",op:"restore:history",item_id:e.after.metadata.id,item_type:e.after.metadata.type,before:e.before,after:e.after,changed_fields:["restored"]})]}async function gd(e,t,r,n){let o=k(process.cwd(),n.path);await D(o);let i=await H(o),s=N(i,I()),a=await ks(o,e,i,s.type_to_folder),c=a.id,{raw:d,entries:l}=await an(a.historyPath,c);if(l.length===0)throw new h(`No history exists for ${c}; restore is unavailable.`,f.NOT_FOUND);let u=Is(t,l),m=vn(bt(l,u.historyIndex),u),p=cn(m,{schema:i.schema});if(p.metadata.id!==c)throw new h(`Restore target resolved to item ${p.metadata.id}, expected ${c}.`,f.GENERIC_FAILURE);let g=(a.located?await Lo(a.located,i,l):null)?.raw??null,_=Pe(r.author,i.author_default),y=await Zr(o,c,i.locks.ttl_seconds,_,!!r.force,i.governance.force_required_for_stale_lock,i.locks.wait_ms,{waitPolicy:"progress"}),w=y.release;try{let{loadedItemUnderLock:b,existingItemPath:v}=await xs({pmRoot:o,subject:a,settings:i,typeRegistry:s,historyRawBeforeLock:d,currentItemRawBeforeLock:g,history:l}),E="toon",R=As(b,l);In(o,R.document),p.metadata.pm_format_version=nn(Math.max(Me(p.metadata),Me(R.document.metadata))),kn(Ur(o),Me(p.metadata));let $=Cs({document:R.document,author:_,force:r.force,enforcement:i.governance.ownership_enforcement,resolvedId:c}),W=Rs(R.document,p),Q=await Sn({pmRoot:o,settings:i,operation:"restore",author:_,before:R.document,after:p});await Wr({pm_root:o,operation:"restore",before:R.document,after:p,changed_fields:W,sdk:Cn({pmRoot:o,settings:i,typeToFolder:s.type_to_folder})});let lt=Fe(p,{format:E,schema:i.schema}),A=B(o,p.metadata.type,c,E,s.type_to_folder),dt=await y.fence(async()=>{let Gi=await Oe(o,_),Or;try{await L(A,lt),v&&A!==v&&await Pt.rm(v);let $i=z({nowIso:S(),author:_,op:"restore",before:R.document,after:p,message:r.message,context:Q.decisions.length===0?void 0:{workflow_policies:Q.decisions}});try{await yn(a.historyPath,$i)}catch(Wi){throw await Ts({existingItemPath:v,resolvedOriginalRaw:R.originalRaw,restoredItemPath:A}),Wi}Or=await je({pmRoot:o,preferredFormat:i.item_format,typeToFolder:s.type_to_folder,schema:i.schema,itemPath:A,previousItemPath:v??void 0,document:p})}finally{await Gi()}return Or}),Ui=await Ms({restoredItemPath:A,historyPath:a.historyPath,before:R.document,after:p});$r({id:p.metadata.id,op:"restore",item_type:p.metadata.type,previous_status:R.document.metadata.status,status:p.metadata.status,previous:mt(R.document.metadata,W),current:mt(p.metadata,W),changed_fields:W});let Hr=l[u.historyIndex],Lr=j(l,!0);return{item:p.metadata,restored_from:{kind:u.kind,target:u.raw,history_index:u.historyIndex+1,version:Lr===null?null:Lr+u.historyIndex+1,entry_ts:Hr.ts,entry_op:Hr.op},changed_fields:W,warnings:[...Q.warnings,...b?.recovered?["restore_unreadable_item_recovered"]:[],...a.historyPolicyWarnings,...$,...dt,...Ui]}}finally{await w()}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="190eb119-9510-59d6-bb3a-d1f807c68281")}catch{}})();var Fs=["status","type","tag","priority","deadlineBefore","deadlineAfter","updatedAfter","updatedBefore","createdAfter","createdBefore","ids","assignee","assigneeFilter","parent","sprint","release"],Ds=["filterAcMissing","filterEstimatesMissing","filterResolutionMissing","filterMetadataMissing","filterReviewerMissing","filterRiskMissing","filterConfidenceMissing","filterSprintMissing","filterReleaseMissing","hasNotes","hasLearnings","hasFiles","hasDocs","hasTests","hasComments","hasDeps","hasBody","hasLinkedCommand","noNotes","noLearnings","noFiles","noDocs","noTests","noComments","noDeps","emptyBody","noLinkedCommand"];function Ps(e){return e!=null&&(typeof e!="string"||e.split(",").some(t=>t.trim().length>0))}function wd(e,t,r={}){let n=r.includePagination!==!1;return[t,...Fs.map(o=>e?.[o]),...n?[e?.limit,e?.offset]:[]].some(Ps)||Ds.some(o=>e?.[o]===!0)}function jo(e){return{type:e.type,tag:e.tag,priority:e.priority,deadlineBefore:e.deadlineBefore,deadlineAfter:e.deadlineAfter,assignee:e.assignee,assigneeFilter:e.assigneeFilter,parent:e.parent,sprint:e.sprint,release:e.release}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="59f55926-8d04-52f8-a7fc-d32edd32b760")}catch{}})();var qo=["parent","type","priority","status","assignee","tags","sprint","release"];function Uo(e,t){let r=Ne(e,t,{strict:!0,flagLabel:"--status"});if(!(!r||r.length===0))return r}function Go(e,t=["estimate","estimated_minutes","priority"]){let r=e.sum?.trim(),n=e.avg?.trim(),o=r&&r.length>0?r:void 0,i=n&&n.length>0?n:void 0;if(!o&&!i)return null;if(o&&i&&o!==i)throw new h("Aggregate --sum and --avg must target the same numeric field",f.USAGE);let s=o??i;if(!t.includes(s))throw new h(`Aggregate numeric field "${s}" is not registered. Allowed: ${t.join(", ")}`,f.USAGE);return{field:s,sum:o!==void 0,avg:i!==void 0}}function $o(e){let t=e?.trim()??"status";if(t.length===0)throw new h("--group-by requires at least one field name",f.USAGE);let r=Kn(t);if(r.length===0)throw new h("--group-by requires a comma-separated list of fields",f.USAGE);for(let n of r)if(!qo.includes(n))throw new h(`Aggregate group fields must be one of ${qo.join("|")}; received "${n}"`,f.USAGE);return r}function Wo(e){let t=[...new Set(e.map(r=>r.trim().toLowerCase()).filter(r=>r.length>0))].sort((r,n)=>r.localeCompare(n));return t.length===0?null:t.join(",")}function Bo(e,t){switch(e){case"parent":return t.parent??null;case"type":return t.type;case"priority":return t.priority;case"status":return t.status;case"assignee":return t.assignee??null;case"tags":return Wo(t.tags);case"sprint":return t.sprint??null;case"release":return t.release??null;default:return null}}function zo(e,t){let r=e??null,n=t??null;return r===n?0:r===null?1:n===null?-1:typeof r=="number"&&typeof n=="number"?r-n:String(r).localeCompare(String(n))}function Qe(e,t){return e.map(r=>`${r}:${JSON.stringify(t[r]??null)}`).join("|")}var Hs={parent:"(unparented)",type:"(untyped)",priority:"(no priority)",status:"(no status)",assignee:"(unassigned)",tags:"(untagged)",sprint:"(no sprint)",release:"(no release)"};function No(e,t){return t==null||t===""?Hs[e]:String(t)}function Ls(e,t){return e.length===1?No(e[0],t[e[0]]):e.map(r=>`${r}=${No(r,t[r])}`).join(" | ")}function Vo(e,t,r){for(let n of r){let o=zo(e.group[n],t.group[n]);if(o!==0)return o}return 0}function Ko(e,t){let r=e[t];if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){let n=r.trim();if(n.length===0)return null;let o=Number(n);if(Number.isFinite(o))return o}return null}function Qo(e,t){return t<=0?0:Math.round(e/t*1e4)/100}function Ht(e,t,r){let n=on(String(t),r)??t;if(n===r.open_status){e.open_count+=1;return}if(n==="in_progress"||r.active_statuses.has(n)&&n!==r.open_status){e.in_progress_count+=1;return}if(r.terminal_done_statuses.has(n)||n===r.close_status){e.closed_count+=1;return}e.other_count+=1}function Os(e,t){return{row:{group:e,count:1},numeric_count:t===null?0:1,numeric_sum:t??0,null_count:t===null?1:0,open_count:0,in_progress_count:0,closed_count:0,other_count:0}}function js(e,t){if(t===null){e.null_count+=1;return}e.numeric_count+=1,e.numeric_sum+=t}function qs(e){e.accumulator.row.count+=1,e.includeCompletion&&Ht(e.accumulator,e.item.status,e.statusRegistry),e.numericAggregation!==null&&js(e.accumulator,e.numericValue)}function Ns(e,t,r,n){for(let o of t){let i=Qe(r,o),s=e.get(i);if(s){qs({...n,accumulator:s});continue}let a=Os(o,n.numericValue);n.includeCompletion&&Ht(a,n.item.status,n.statusRegistry),e.set(i,a)}}function Us(e,t){let r={};for(let n of e)r[n]=Bo(n,t);return r}function Gs(e,t,r){let n=[Us(e,t)];if(r==="tuple")return n;for(let o of e){let i=t[o];if(!Array.isArray(i))continue;let s=[...new Set(i.map(a=>a.trim().toLowerCase()).filter(Boolean))].sort();s.length!==0&&(n=n.flatMap(a=>s.map(c=>({...a,[o]:c}))))}return n}function $s(e,t,r,n){let o={...e.row,group_label:Ls(t,e.row.group)};return r&&(o.open=e.open_count,o.in_progress=e.in_progress_count,o.closed=e.closed_count,o.other=e.other_count,o.completion_pct=Qo(e.closed_count,e.row.count)),n!==null&&(o.null_count=e.null_count,n.sum&&(o.sum=e.numeric_sum),n.avg&&(o.avg=e.numeric_count===0?null:e.numeric_sum/e.numeric_count)),o}function Ws(e){return{group_by:e.groupBy,set_mode:e.setMode,count:!0,completion:e.includeCompletion,include_unparented:e.includeUnparented,status:e.status?.[0]??null,status_values:e.status,type:e.options.type??null,tag:e.options.tag??null,priority:e.options.priority??null,deadline_before:e.options.deadlineBefore??null,deadline_after:e.options.deadlineAfter??null,assignee:e.options.assignee??null,assignee_filter:e.options.assigneeFilter??null,parent:e.options.parent??null,sprint:e.options.sprint??null,release:e.options.release??null,...e.numericAggregation!==null?{sum:e.options.sum??null,avg:e.options.avg??null,numeric_field:e.numericAggregation.field}:{}}}async function kd(e,t){if(e.count===!1)throw new h("Aggregate grouped counts are always enabled; omit count=false.",f.USAGE);let r=k(process.cwd(),t.path),n=await H(r),o=O(n.schema),i=["estimate","estimated_minutes","priority",...Z(n.schema).definitions.filter(v=>v.type==="number").map(v=>v.metadata_key)],s=$o(e.groupBy),a=e.setMode??"element";if(a!=="element"&&a!=="tuple")throw new h("Aggregate --set-mode must be element or tuple",f.USAGE);let c=Uo(e.status,o),d=Go(e,[...new Set(i)].sort((v,E)=>v.localeCompare(E))),l=e.completion===!0,u=e.includeUnparented===!0,m=await Ve(void 0,{...jo(e),status:e.status,noTruncate:!0,strictRead:!0},t),p=new Map,g=0,_=0,y=0;for(let v of m.items){let E=v;if(s.includes("parent")&&E.parent===void 0&&!u){g+=1;continue}let R=d===null?null:Ko(E,d.field),$=Gs(s,E,a);Ns(p,$,s,{item:E,statusRegistry:o,includeCompletion:l,numericAggregation:d,numericValue:R}),y+=$.length,_+=1}let w=[...p.values()].map(v=>$s(v,s,l,d)).sort((v,E)=>Vo(v,E,s)),b=m.warnings&&m.warnings.length>0?m.warnings:void 0;return{...Bs(w,s,e),count:w.length,totals:{items_considered:m.items.length,items_grouped:_,items_skipped_unparented:g,group_memberships:y},filters:Ws({groupBy:s,setMode:a,includeCompletion:l,includeUnparented:u,status:c,options:e,numericAggregation:d}),now:S(),...b?{warnings:b}:{}}}function Bs(e,t,r){let n=mo(r.limit,"limit")??50,o=r.after===void 0?-1:e.findIndex(a=>Qe(t,a.group)===r.after);if(r.after!==void 0&&o<0)throw new h("Aggregate --after cursor is absent from the current grouping; restart without --after.",f.USAGE);let i=e.slice(o+1,o+1+n),s=o+1+i.length<e.length;return{groups:i,returned_count:i.length,truncated:s,next_after:s?Qe(t,i.at(-1).group):null}}var Rd={buildGroupKey:Qe,compareAggregateRows:Vo,compareNullableGroupValue:zo,completionPct:Qo,normalizeTagGroupValue:Wo,parseGroupBy:$o,parseNumericAggregation:Go,parseStatus:Uo,readNumericAggregateValue:Ko,resolveGroupValue:Bo,updateCompletionCounts:Ht};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="21742dd3-12b5-5285-89d8-036693459eb8")}catch{}})();var Yo=1e6,Xo=20;function Jo(e,t,r,n=Xo){if(!Number.isSafeInteger(n)||n<0)throw new h("Child projection sample limit must be a non-negative integer.",f.USAGE);let o=e.trim().toLowerCase(),i={},s=[],a=0;for(let y of t){if(a+=1,a>Yo)throw new h(`Child projection exceeded the ${Yo.toLocaleString("en-US")} item safety bound.`,f.GENERIC_FAILURE,{code:"child_projection_item_bound_exceeded",required:"Use an indexed or parent-filtered metadata source.",why:"Unbounded graph scans can exhaust memory in universal project stores.",nextSteps:["Build the derived item index, then retry the parent read."]});s.push(y)}let c=new Map(s.map(y=>[y.id.trim().toLowerCase(),y])),d=ao(so(s,io())),l=new Set(d.children_by_parent.get(o)??[]);for(let y of s)y.parent?.trim().toLowerCase()===o&&l.add(y.id.trim().toLowerCase());let u=[...l].map(y=>c.get(y)),m=0;for(let y of u){let w=y.status.trim().toLowerCase();i[w]=(i[w]??0)+1,le(w,r)||(m+=1)}u.sort((y,w)=>y.id.localeCompare(w.id));let p=u.slice(0,n).map(y=>({id:y.id,title:y.title,type:y.type,status:y.status,priority:y.priority})),g=u.length>p.length,_=n===0?Xo:n;return{count:u.length,active:m,by_status:Object.fromEntries(Object.entries(i).sort(([y],[w])=>y.localeCompare(w))),sample:p,sample_limit:n,truncated:g,next_offset:g?p.length:null,continuation:g?`pm list --status all --parent ${e} --offset ${p.length} --limit ${_}`:null,scanned:a}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="db3fe399-8eb8-5b17-8a9e-89eda4774234")}catch{}})();var zs=new Set(["event","meeting","reminder"]);function Vs(e){return zs.has(e.type.trim().toLowerCase())||e.deadline!==void 0||(e.reminders?.length??0)>0||(e.events?.length??0)>0}function Lt(e){if(!Vs(e))return;let t=[...e.events??[]].sort((n,o)=>n.start_at.localeCompare(o.start_at)),r=t[0];return{deadline:e.deadline??null,start_at:r?.start_at??null,end_at:r?.end_at??null,location:r?.location??null,reminders:[...e.reminders??[]],events:t}}import{readdir as Qs}from"node:fs/promises";import Ot 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]="1815b206-18b5-5e76-b863-8b0f8ac2947a")}catch{}})();var Ys=new Set(["epic","feature","milestone","plan"]),Xs=new Set(Object.keys(jr).map(e=>e.toLowerCase()));function qt(e){return Object.fromEntries(["comments","notes","learnings","files","tests","docs","reminders","events"].map(t=>[t,e[t]?.length??0]))}function Js(e,t,r,n,o){let i=qt(e);return[...t.length>0?["body"]:[],...Object.entries(i).flatMap(([s,a])=>a>0?[s]:[]),...i.files+i.tests+i.docs>0?["linked"]:[],...r===void 0?["children"]:r.count>0?["children"]:[],...typeof e.assignee=="string"&&e.assignee.trim().length>0?["claim_state"]:[],...Lt(e)?["schedule"]:[],...n&&St(e).length>0?["blockers"]:[],...!o.full&&e.dependencies?.some(({id:s,kind:a,...c})=>Object.values(c).some(d=>d!==void 0))?["dependency_provenance"]:[]]}function ei(e){let t=e.trim().toLowerCase();return t.length>0&&(Ys.has(t)||!Xs.has(t))}function Zo(e){return{ts:e.ts,author:e.author,message:e.message??null}}function Zs(e,t){let r=e?.trim(),n=r&&r.length>0?r:null,o=[...t].reverse().find(s=>s.op==="claim"),i=[...t].reverse().find(s=>s.op==="release");return{claimed:n!==null,assignee:n,last_claim:o?Zo(o):null,last_release:i?Zo(i):null}}function ea(e){if(e===void 0||e.trim().length===0)return"standard";let t=e.trim().toLowerCase();if(t==="full")return"deep";if(Te.includes(t))return t;throw new h("Get --depth must be one of brief|standard|deep|full",f.USAGE,{field:"depth",value:e,recovery:{allowed_values:[...Te,"full"]}})}function ta(e,t,r){let n=qt(e),o={...e};if(!r&&e.dependencies!==void 0&&(o.dependencies=e.dependencies.map(({id:g,kind:_})=>({id:g,kind:_}))),t==="deep")return{...o,comments:e.comments??[],notes:e.notes??[],learnings:e.learnings??[],files:e.files??[],tests:e.tests??[],docs:e.docs??[],reminders:e.reminders??[],events:e.events??[],notes_count:n.notes,tests_count:n.tests,collection_counts:n};let{comments:i,notes:s,learnings:a,files:c,tests:d,docs:l,reminders:u,events:m,...p}=o;return{...p,notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:n}}function ra(e){if(e===void 0)return null;let t=e.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(t.length===0)throw new h("Get --fields requires a comma-separated list of field names",f.USAGE);return t}function Ye(e){return e.startsWith("item.")?e.slice(5):e}function na(e,t,r){if(e===null)return;let n=ht(t),o=new Set(n),i=e.filter(s=>{let a=Ye(s);return!o.has(s)&&!o.has(a)});if(i.length>0){let s=["get",r,"--fields",e.filter(a=>!i.includes(a)).join(",")||"id,title,status"];throw new h(`Unknown get --fields value(s): ${i.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm get <id> --fields id,title,status,type,updated_at","pm get <id> --fields id,title,claim_state","pm get <id> --fields id,title,body,linked.files"],recovery:{allowed_values:n,suggested_retry:J(s),suggested_retry_args:s}})}}var oa=new Set(["comments","notes","learnings","files","tests","test_runs","docs","reminders","events","dependencies","plan_steps","plan_decisions","plan_discoveries","plan_validation"]);function ia(e,t,r){return Object.hasOwn(t,r)?t[r]:e[r]!==void 0?e[r]:oa.has(r)?[]:void 0}function sa(e,t){let r=e,n={notes_count:e.notes?.length??0,tests_count:e.tests?.length??0,collection_counts:qt(e)},o={id:e.id};for(let i of t){let s=Ye(i);s==="body"||s==="linked"||s.startsWith("linked.")||s==="claim_state"||s.startsWith("claim_state.")||s==="children"||s.startsWith("children.")||s==="schedule"||s.startsWith("schedule.")||s==="blockers"||(o[s]=ia(r,n,s))}return o}function be(e,t){return e?.some(r=>r===t||r===`item.${t}`)??!1}function ne(e,t){return e.some(r=>{let n=Ye(r);return n===t||n.startsWith(`${t}.`)})}function aa(e,t){if(e.full&&(e.fields!==void 0||e.depth!==void 0))throw new h("Get projection options are mutually exclusive; remove the extra projection flag and retry.",f.USAGE,{code:"projection_options_mutually_exclusive",flag:"--full",recovery:{suggested_retry:J(["get",t,"--full"]),suggested_retry_args:["get",t,"--full"]}});if(e.tree!==!0&&e.treeDepth!==void 0)throw new h("Get --tree-depth requires --tree",f.USAGE);if(e.at!==void 0&&e.tree===!0)throw new h("Get --at cannot be combined with --tree because workspace-level historical projections are not yet indexed.",f.USAGE);return{depth:e.full?"deep":ea(e.depth),full:e.full===!0||e.depth?.trim().toLowerCase()==="full",treeDepth:e.tree===!0?Jn(e.treeDepth,"--tree-depth"):void 0,fields:ra(e.fields),fieldProjection:e.fields!==void 0}}async function ca(e,t,r){let n=k(process.cwd(),t.path);await D(n);let o=await H(n),i=N(o,I());if(r!==void 0){let c=await Fn(e,r,{pmRoot:t.path});return{pmRoot:n,settings:o,typeToFolder:i.type_to_folder,locatedId:c.document.metadata.id,metadata:c.document.metadata,body:c.document.body,historical:c}}let s=await he(n,e,o.id_prefix,o.item_format,i.type_to_folder);if(!s)throw await Tn(n,e,o.id_prefix,i.type_to_folder);let a=await pe(s,{schema:o.schema});return{pmRoot:n,settings:o,typeToFolder:i.type_to_folder,locatedId:s.id,metadata:a.document.metadata,body:a.document.body}}function la(e,t,r,n){let o=[...Z(t.schema).definitions.map(i=>i.metadata_key),...te(I())];if(na(e,o,n),r&&ne(e??[],"children"))throw new h("Get --at cannot project children because workspace-level historical relationships are not yet indexed.",f.USAGE);if(r&&ne(e??[],"blockers"))throw new h("Get --at cannot project current blocker statuses; read the current item with --fields blockers instead.",f.USAGE)}function jt(e){let{fieldProjection:t,depth:r,fields:n,field:o}=e;return t?o==="body"||o==="linked"?be(n,o):ne(n,o):r!=="brief"}async function da(e,t){if(!t)return;let r=Ae(e.pmRoot,e.locatedId),n=await de(r,e.locatedId);return Zs(e.metadata.assignee,e.historical?n.slice(0,e.historical.target.historyIndex+1):n)}function ua(e,t,r,n){let o=n||be(r,"linked.files"),i=n||be(r,"linked.tests"),s=n||be(r,"linked.docs");!n&&!o&&!i&&!s||(e.linked={files:o?t.metadata.files??[]:[],tests:i?t.metadata.tests??[]:[],docs:s?t.metadata.docs??[]:[]})}async function ma(e,t){if(!t)return;let r=O(e.settings.schema),n=await qe(e.pmRoot,e.settings.item_format,e.typeToFolder,void 0,e.settings.schema);return Jo(e.locatedId,n,r)}function fa(e,t){let r=new Map;for(let n of e){let o=n.external?n.id:t.get(n.id.toLowerCase())?.id??n.id;r.set(n.external?`external:${o}`:`local:${o.toLowerCase()}`,{...n,id:o})}return[...r.values()]}async function ha(e,t){let r=Ot.basename(e),n=(await Qs(Ot.dirname(e)).catch(o=>{throw wn("Cannot verify the blocker's physical file identity",{exitCode:f.GENERIC_FAILURE,context:{code:"blocker_identity_read_failed",required:"Restore access to the blocker item directory, then retry the item read."},cause:o})})).filter(o=>o.toLowerCase()===r.toLowerCase()).sort((o,i)=>+(i===r)-+(o===r)||o.localeCompare(i)).map(o=>Ot.parse(o).name)[0];if(n===void 0)throw new h(`Blocker canonical file disappeared during identity verification: ${t}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker file and validate storage integrity before retrying the item read."});return n}async function pa(e,t,r){if(t.historical!==void 0||!(r.fieldProjection?ne(r.fields,"blockers"):r.depth!=="brief"))return;let n=St(t.metadata);if(n.length===0)return;let o=new Map([t.metadata.blocked_by,...(t.metadata.dependencies??[]).filter(a=>a.kind==="blocked_by").map(a=>a.id)].filter(a=>typeof a=="string").map(a=>[a.trim().toLowerCase(),a.trim()])),i=new Map;for(let a of n){if(Qn(a)||!/^(?!\.{1,2}$)[^/\\:\0]+$/u.test(a)||t.metadata.dependencies?.some(l=>l.id.trim()===a&&l.kind==="blocked_by"&&Yn(l.source_kind)))continue;let c=await he(t.pmRoot,o.get(a),t.settings.id_prefix,t.settings.item_format,t.typeToFolder);if(c===null)continue;let d=await pe(c,{schema:t.settings.schema});if(c.id=await ha(c.itemPath,c.id),d.document.metadata.id!==c.id)throw new h(`Blocker identity differs from its canonical file: ${c.id}`,f.CONFLICT,{code:"item_identity_conflict",required:"Restore the canonical blocker identity and validate storage integrity before retrying the item read."});i.set(a.toLowerCase(),d.document.metadata)}let s=fa(Xn({blocked_by:t.metadata.blocked_by,dependencies:t.metadata.dependencies,updated_at:t.metadata.updated_at},i,O(t.settings.schema)),i);e.blockers={scope:"declared",open:s.filter(a=>!a.resolved).map(({resolved:a,...c})=>c),closed_count:s.filter(a=>a.resolved).length},!r.fieldProjection&&!r.full&&delete e.item.blocked_by}function ya(e,t,r,n){if(!n)return;let o=Lt(t.metadata);if(o){if(r===null||be(r,"schedule")){e.schedule=o;return}e.schedule=Object.fromEntries(Object.entries(o).filter(([i])=>r.some(s=>Ye(s)===`schedule.${i}`)))}}async function ga(e,t,r,n){if(t.tree!==!0)return;let o=await Ve(void 0,{parent:e.locatedId,tree:!0,treeDepth:r===void 0?void 0:String(r),full:!0},n);return{root_id:e.locatedId,root_title:e.metadata.title,depth_limit:r??null,count:o.count,items:o.items.map(i=>i)}}async function eu(e,t,r={}){let n=aa(r,e),o=await ca(e,t,r.at);la(n.fields,o.settings,o.historical!==void 0,o.locatedId);let i=jt({...n,field:"body"}),s=jt({...n,field:"linked"}),a=jt({...n,field:"claim_state"}),c=o.historical===void 0&&(n.fieldProjection?ne(n.fields,"children"):n.depth==="deep"&&(n.full||ei(o.metadata.type))),d=n.fieldProjection?ne(n.fields,"schedule"):n.depth!=="brief",l=await da(o,a),u={item:n.fieldProjection?sa(o.metadata,n.fields):ta(o.metadata,n.depth,n.full)};i&&(u.item.body=o.body),ua(u,o,n.fields,s),l&&(u.claim_state=l),ya(u,o,n.fields,d),await pa(u,o,n);let m=await ma(o,c);m!==void 0&&(u.children=m);let p=await ga(o,r,n.treeDepth,t);if(p!==void 0&&(u.tree=p),o.historical&&(u.reconstructed=!0,u.as_of_version=o.historical.as_of_version,u.as_of_timestamp=o.historical.as_of_timestamp),o.historical===void 0)try{await en({pmRoot:o.pmRoot,author:Pe(void 0,o.settings.author_default),itemIds:[o.locatedId],intent:"get"})}catch{}return Br(u,n.fieldProjection?[]:Js(o.metadata,o.body,m,o.historical===void 0,n)),u}var tu={shouldAutoIncludeGetChildren:ei};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="284b91be-bd4e-5345-969b-0304834b0da8")}catch{}})();function _a(e,t){return t===void 0?e:e.slice(Math.max(0,e.length-t))}function wa(e,t){return e.map(({entry:r,version:n})=>{let o=new Set,i=ln(r.patch);for(let s of i)o.add(vt(s.path)),s.from&&o.add(vt(s.from));return{index:n,...t?{version:t.offset===null?null:t.offset+n}:{},ts:r.ts,op:r.op,author:r.author,patch_ops:i.length,changed_fields:[...o].sort((s,a)=>s.localeCompare(a))}})}function ba(e){if(e[0]?.op!=="history_compact_baseline")return;let t=j(e,!0);return{offset:t,first_version:t===null?null:t+1,last_version:t===null?null:t+e.length}}async function va(e,t){let r=k(process.cwd(),t.path);await D(r);let n=await H(r),o=N(n,I()),i=e.trim()===He,s=i?He:En(e,n.id_prefix),a=await he(r,s,n.id_prefix,n.item_format,o.type_to_folder),c=a?.id??s,d=i?gn(r):Ae(r,c);if(!a&&!await ke(d))throw new h(`Item ${e} not found`,f.NOT_FOUND);return a&&await Le({pmRoot:r,settings:n,itemId:a.id,commandLabel:"history"}),{historyPath:d,located:a,resolvedId:c,settings:n}}function Ea(e){let{resolvedId:t,selectedHistory:r,options:n,limit:o,addressing:i,vocabulary:s,total:a}=e,c=n.compact===!0,d=(n.order??(c||n.provenance===!0?"newest_first":"oldest_first"))==="newest_first",l=d?[...r].reverse():r,u=l.map(({entry:y})=>y),m=c?wa(l,i):void 0,p=n.provenance===!0?l.map(({entry:y,durableVersion:w})=>yo(y,s,{itemId:t,version:w})):void 0,g=n.provenance===!0?"provenance":c?"compact":"full",_={compact:{compact_history:m},provenance:{provenance_history:p},full:{history:u}}[g];return{id:t,..._,compact:c,projection:{mode:g,row_key:{compact:"compact_history",provenance:"provenance_history",full:"history"}[g]},omission_receipt:zr("history",g),count:u.length,total:a,order:d?"newest_first":"oldest_first",limit:o??null,version_addressing:i}}async function uu(e,t,r){if(t.order!==void 0&&t.order!=="oldest_first"&&t.order!=="newest_first")throw new h("--order must be oldest_first or newest_first",f.USAGE);let n=Ue(t.limit),{historyPath:o,located:i,resolvedId:s,settings:a}=await va(e,r),c=await de(o,s),d=ba(c),l=a.agent_identity.identity_vocabulary,u=po(a.agent_identity.harness_signals),m=go({harness:t.harness,agentInstance:t.agentInstance,provenance:t.provenanceFilter},l,u),p=Sa(c).filter(({entry:y})=>m(y)),g=_a(p,n),_=Ea({resolvedId:s,selectedHistory:g,options:t,limit:n,addressing:d,vocabulary:l,total:p.length});if(t.provenanceSummary===!0&&(_.provenance_summary=_o(p.map(({entry:y})=>y),l,u)),t.diff||t.field!==void 0){let y=new Set(g.map(({version:w})=>w));_.diff=jn(c,{windowStartIndex:(g[0]?.version??c.length+1)-1,field:t.field}).filter(w=>y.has(w.index)),_.order==="newest_first"&&_.diff.reverse()}if(t.verify){let y=i?(await pe(i,{schema:a.schema})).document:void 0;if(_.verification=Mn(c,y),s===He&&_.verification.ok){let w=await _n(k(process.cwd(),r.path));_.verification={..._.verification,ok:w.ok,errors:w.ok?_.verification.errors:[..._.verification.errors,"verify_failed:workspace_state_mismatch"],workspace_state_matches_latest:w.ok,workspace_state_mismatches:w.mismatched_documents,workspace_state_missing:w.missing_documents,workspace_state_unreadable:w.unreadable_documents}}}return _}function Sa(e){let t=j(e,!0);return e.map((r,n)=>({entry:r,version:n+1,durableVersion:t===null?void 0:t+n+1}))}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="28cc85af-b7e7-5069-97a9-18844352cc59")}catch{}})();function Ia(e){if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(t!=="keyword"&&t!=="semantic"&&t!=="hybrid")throw new h("Search mode must be one of keyword|semantic|hybrid",f.USAGE);return t}function Xe(e){return e===!0}function ti(e){return Nr(e,0,1)??void 0}function ri(e){if(e===void 0)return"or";let t=e.trim().toLowerCase();if(t!=="and"&&t!=="or"&&t!=="exact")throw new h("Search --match-mode must be one of and|or|exact",f.USAGE);return t}function ni(e){if(e==null||e==="")return;let t=typeof e=="number"?e:Number(String(e).trim());if(!Number.isFinite(t)||t<0)throw new h("Search --min-score must be a finite number >= 0",f.USAGE);return t}function K(e,t){if(e==null)return;let r=String(e).trim();if(r.length!==0)return ft(r,new Date,t)}function C(e){return e.toLowerCase().replace(/\s+/g," ").trim()}function Nt(e,t){if(e!==void 0)return ft(e,new Date,t)}function ka(e){if(e===void 0)return;let t=e.split(",").map(r=>r.trim()).filter(r=>r.length>0);if(t.length===0)throw new h("Search --fields requires a comma-separated list of field names",f.USAGE);return[...new Set(t)]}function Je(e,t="<query>"){let r=e.compact===!0,n=e.full===!0,o=ka(e.fields);if(Number(r)+Number(n)+ +(o!==void 0)>1)throw new h("Search projection options are mutually exclusive. Use one of --compact, --full, or --fields.",f.USAGE,{code:"projection_options_mutually_exclusive",recovery:{suggested_retry:J(["search",t,"--full"]),suggested_retry_args:["search",t,"--full"]}});return r?{mode:"compact",fields:[...tn]}:n?{mode:"full",fields:[]}:o?{mode:"fields",fields:o}:{mode:"full",fields:[]}}function Ut(e,t,r="<query>"){if(e.mode!=="fields")return;let n=rn([...t.definitions.flatMap(s=>[s.key,s.metadata_key]),...te(I())]),o=new Set(n),i=e.fields.filter(s=>{let a=s.trim();return!o.has(a)});if(i.length>0){let s=["search",r,"--fields",e.fields.filter(a=>!i.includes(a)).join(",")||"id,title,status,score"];throw new h(`Unknown search --fields value(s): ${i.join(", ")}`,f.USAGE,{code:"unknown_field_projection",examples:["pm search <query> --fields id,title,status,score","pm search <query> --fields id,title,item.description,matched_fields"],nextSteps:["Use item.<field> for explicit item metadata fields, or run pm search --help for projection examples."],recovery:{allowed_values:n,suggested_retry:J(s),suggested_retry_args:s}})}}function Ze(e){let t=C(e);if(!t)throw new h("Search query must not be empty",f.USAGE);return t.split(/\s+/u).filter(Boolean)}function Gt(e){let t=e.search?.max_results;return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):50}var Ra=["auto","keyword","semantic","hybrid"];function xa(e){let t=e.search?.default_mode;if(typeof t!="string")return"auto";let r=t.trim().toLowerCase();return Ra.includes(r)?r:"auto"}function $t(e){if(typeof e.requested=="string"&&e.requested.trim().length>0)return{mode:Ia(e.requested),source:"explicit"};let t=xa(e.settings);return t!=="auto"?{mode:t,source:"settings"}:{mode:e.semanticRunnable?"hybrid":"keyword",source:"auto"}}function Wt(e){let t=e.search?.score_threshold;return typeof t=="number"&&Number.isFinite(t)?t:0}function Bt(e){let t=e.search?.hybrid_semantic_weight;return typeof t=="number"&&Number.isFinite(t)&&t>=0&&t<=1?t:.7}function zt(e){let t={title_exact_bonus:10,title_weight:48,description_weight:5,tags_weight:6,status_weight:2,body_weight:1,comments_weight:1,notes_weight:1,learnings_weight:1,reminders_weight:2,events_weight:2,dependencies_weight:3,linked_content_weight:1},r=e.search?.tuning;if(!r)return t;let n=(o,i)=>typeof o=="number"&&Number.isFinite(o)&&o>=0?o:i;return{title_exact_bonus:n(r.title_exact_bonus,t.title_exact_bonus),title_weight:n(r.title_weight,t.title_weight),description_weight:n(r.description_weight,t.description_weight),tags_weight:n(r.tags_weight,t.tags_weight),status_weight:n(r.status_weight,t.status_weight),body_weight:n(r.body_weight,t.body_weight),comments_weight:n(r.comments_weight,t.comments_weight),notes_weight:n(r.notes_weight,t.notes_weight),learnings_weight:n(r.learnings_weight,t.learnings_weight),reminders_weight:n(r.reminders_weight,t.reminders_weight),events_weight:n(r.events_weight,t.events_weight),dependencies_weight:n(r.dependencies_weight,t.dependencies_weight),linked_content_weight:n(r.linked_content_weight,t.linked_content_weight)}}import Aa from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e1f303b6-a641-5550-b58c-ef023b68d5e4")}catch{}})();function Vt(e){return Kr("search",{pmRoot:e.pmRoot===void 0?void 0:Aa.resolve(e.pmRoot),query:e.query.trim(),mode:e.mode,options:Vr(e.searchOptions,Dn)})}function oi(e){let t=Yr(e.sorted,{cursor:e.searchOptions.after,fingerprint:Vt(e),limit:e.limit,readId:r=>r.item.id});return{limited:t.rows,pageExtras:{applied_limit:e.limit,...t.has_more?{has_more:!0,truncated:!0}:{},...t.next_cursor?{next_cursor:t.next_cursor}:{}}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8a2412e-2b0c-59c2-81ad-43de4d51562f")}catch{}})();function ii(e){if(typeof e!="string")return!1;let t=e.split(",").map(r=>r.trim().toLowerCase()).filter(Boolean);return t.length===1&&t[0]==="all"}var Ca=[{optionKey:"status",summaryKey:"status",normalize:e=>ii(e)?"all":e},{optionKey:"type",summaryKey:"type"},{optionKey:"tag",summaryKey:"tag"},{optionKey:"priority",summaryKey:"priority"},{optionKey:"deadlineBefore",summaryKey:"deadline_before"},{optionKey:"deadlineAfter",summaryKey:"deadline_after"},{optionKey:"updatedAfter",summaryKey:"updated_after"},{optionKey:"updatedBefore",summaryKey:"updated_before"},{optionKey:"createdAfter",summaryKey:"created_after"},{optionKey:"createdBefore",summaryKey:"created_before"},{optionKey:"assignee",summaryKey:"assignee"},{optionKey:"sprint",summaryKey:"sprint"},{optionKey:"release",summaryKey:"release"},{optionKey:"parent",summaryKey:"parent"}];function oe(e){let{mode:t,matchMode:r,options:n,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,runtimeFieldFilters:d}=e,l={};return uo(l,n,Ca),Object.assign(l,kt(n)),Object.assign(l,It(n)),r!==void 0&&r!=="or"&&(l.match_mode=r),o&&(l.include_linked=!0),i&&(l.title_exact=!0),s&&(l.phrase_exact=!0),a>0&&(l.score_threshold=a),t==="hybrid"&&n.semanticWeight!==void 0&&(l.hybrid_semantic_weight=c),n.limit!==void 0&&(l.limit=n.limit),d&&Object.keys(d).length>0&&(l.runtime_filters=d),l}function ie(e){let{effectiveMode:t,matchMode:r,options:n,includeLinked:o,titleExact:i,phraseExact:s,scoreThreshold:a,hybridSemanticWeight:c,queryExpansion:d,rerank:l,runtimeFieldFilters:u}=e,m=p=>p??null;return{mode:t,match_mode:r,status:n.status===void 0||ii(n.status)?"all":n.status,type:m(n.type),tag:m(n.tag),priority:m(n.priority),deadline_before:m(n.deadlineBefore),deadline_after:m(n.deadlineAfter),updated_after:m(n.updatedAfter),updated_before:m(n.updatedBefore),created_after:m(n.createdAfter),created_before:m(n.createdBefore),assignee:m(n.assignee),sprint:m(n.sprint),release:m(n.release),parent:m(n.parent),...kt(n),...It(n),include_linked:o,title_exact:i,phrase_exact:s,score_threshold:a,hybrid_semantic_weight:t==="hybrid"?c:null,query_expansion_enabled:d.enabled,query_expansion_provider:d.provider,rerank_enabled:l.enabled,rerank_model:l.model,rerank_top_k:l.top_k,limit:m(n.limit),runtime_filters:u}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0272e482-0dab-5970-b19a-4da286fd112b")}catch{}})();var Ta=1.2,Ma=.75;function Kt(e){return X(e)}function Fa(e){let t=new Map;for(let r of e)t.set(r,(t.get(r)??0)+1);return t}function ai(e){let t=[],r=new Map,n=0;for(let i of e){let s=Kt(i.text),a=Fa(s);n+=s.length;for(let c of a.keys())r.set(c,(r.get(c)??0)+1);t.push({id:i.id,termFrequencies:a,length:s.length})}let o=t.length;return{documents:t,documentFrequency:r,documentCount:o,averageDocumentLength:o>0?n/o:0}}function Da(e,t){return Math.log(1+(e-t+.5)/(t+.5))}function ci(e,t,r){let n=new Map;if(e.documentCount===0||e.averageDocumentLength===0)return n;let o=[...new Set(t.filter(s=>s.length>0))];if(o.length===0)return n;let i=new Map;for(let s of o){let a=e.documentFrequency.get(s);a!==void 0&&i.set(s,Da(e.documentCount,a))}if(i.size===0)return n;for(let s of e.documents){let a=0;for(let[c,d]of i){let l=s.termFrequencies.get(c);if(l===void 0)continue;let u=1-r.b+r.b*s.length/e.averageDocumentLength,m=l+r.k1*u;a+=d*(l*(r.k1+1)/m)}a>0&&n.set(s.id,a)}return n}function si(e,t,r,n){return typeof e!="number"||!Number.isFinite(e)?t:Math.min(n,Math.max(r,e))}function li(e){let t=r=>typeof r=="string"?[r]:typeof r=="number"?[String(r)]:Array.isArray(r)?r.flatMap(t):typeof r=="object"&&r!==null?Object.values(r).flatMap(t):[];return t(Object.values(e)).join(" ")}function di(e){let t=e?.search?.bm25;return{k1:si(t?.k1,Ta,0,1e3),b:si(t?.b,Ma,0,1)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b75c3c5e-e2b7-5e65-a56a-883dc896290e")}catch{}})();var Qt=4,Pa=20,Ha=200,La=new Set(["a","an","and","for","from","in","into","of","on","or","the","to","with"]);function Yt(e,t){let r=[],n=new Set;for(let o of e){let i=o.trim().replaceAll(/\s+/g," ");if(i.length===0)continue;let s=i.toLowerCase();if(!n.has(s)&&(n.add(s),r.push(i),r.length>=t))break}return r}function Oa(e){let t=e.toLowerCase();return t.length>4&&t.endsWith("ies")?`${t.slice(0,-3)}y`:t.length>4&&(t.endsWith("ches")||t.endsWith("shes")||t.endsWith("xes")||t.endsWith("zes")||t.endsWith("sses"))?t.slice(0,-2):t.length>3&&t.endsWith("s")&&!t.endsWith("ss")&&!t.endsWith("us")&&!t.endsWith("is")&&!t.endsWith("as")?t.slice(0,-1):t}function ja(e){let t=e.toLowerCase();return t.length>2&&(!t.endsWith("s")||t.endsWith("ss"))?t.endsWith("y")&&!/[aeiou]y$/u.test(t)?`${t.slice(0,-1)}ies`:t.endsWith("ch")||t.endsWith("sh")||t.endsWith("x")||t.endsWith("z")||t.endsWith("ss")?`${t}es`:`${t}s`:t}function ui(e,t=Qt){let r=e.trim().replaceAll(/\s+/g," ");if(r.length===0)return[];let n=X(r);if(n.length===0)return[r];let o=n.filter(a=>!La.has(a.toLowerCase())),i=n.map(a=>Oa(a)),s=o.map(a=>ja(a));return Yt([r,n.join(" "),o.join(" "),i.join(" "),s.join(" ")],Math.max(1,t))}function mi(e){let t=Array.isArray(e)?e:e?.queries;return Array.isArray(t)?Yt(t.filter(r=>typeof r=="string"),Qt):[]}function fi(e,t,r){return Yt([...e,...t],Math.max(1,r))}function hi(e,t){let r=e.search?.query_expansion,n=ae(r?.provider);return{enabled:r?.enabled===!0,provider:n??t,max_queries:Qt}}function pi(e,t){let r=e.search?.rerank,n=ae(r?.model),o=xe(r?.top_k)??Pa;return{enabled:r?.enabled===!0,model:n??t,top_k:Math.min(Ha,o)}}function yi(e){let t=Array.isArray(e)?e:e?.hits;if(!Array.isArray(t))return[];let r=new Map;for(let o of t){if(typeof o!="object"||o===null)continue;let i=ae(o.id),s=o.score;if(!i||typeof s!="number"||!Number.isFinite(s))continue;let a=r.get(i);(a===void 0||s>a)&&r.set(i,s)}let n=[...r.entries()].map(([o,i])=>({id:o,score:i}));return n.sort((o,i)=>o.score!==i.score?i.score-o.score:o.id.localeCompare(i.id)),n}function qa(e,t){let r=e.length,n=0;for(let o=0;o<r;o+=1)n+=e[o]*t[o];return n}function gi(e){let t=0;for(let r=0;r<e.length;r+=1)t+=e[r]*e[r];return Math.sqrt(t)}function Na(e,t,r){if(!e||!t||e.length===0||t.length===0||e.length!==t.length)return 0;let n=qa(e,t),o=gi(t),i=r*o;return!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(o)||!Number.isFinite(i)||i===0?0:Math.max(-1,Math.min(1,n/i))}async function _i(e,t,r,n,o){if(n.length===0)return new Map;let i=ae(t)??e.model,s=i===e.model?e:{...e,model:i},a=[r.trim(),...n.map(m=>m.text)],c=await Ge(s,a,o?{timeout_ms:o}:{}),d=c[0];if(!d)return new Map;let l=gi(d),u=new Map;for(let m=0;m<n.length;m+=1){let p=n[m],g=c[m+1];if(!g)continue;let _=Na(d,g,l);u.set(p.id,Math.max(0,Math.min(1,(_+1)/2)))}return u}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a5d1f401-e5eb-5b6e-8b5a-d8135128f44b")}catch{}})();function se(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function q(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.text=="string"):[]}function ve(e){return Array.isArray(e)?e.filter(t=>typeof t=="object"&&t!==null&&typeof t.id=="string"&&typeof t.kind=="string"):[]}function Xt(e){let t=e.metadata;return[t.title,t.description,t.status,se(t.tags).join(" "),e.body,q(t.comments).map(r=>r.text).join(" "),q(t.notes).map(r=>r.text).join(" "),q(t.learnings).map(r=>r.text).join(" "),$e(t).join(" "),We(t).join(" "),ve(t.dependencies).map(r=>`${r.id} ${r.kind}`).join(" "),Be(t)]}function Jt(e,t){return Xt(e).some(r=>C(r).includes(t))}function Zt(e,t,r){return!r.titleExact&&!r.phraseExact?e:e.filter(n=>!(r.titleExact&&C(n.metadata.title)!==t||r.phraseExact&&!Jt(n,t)))}function Ua(e){if(e&&[...e].some(t=>t.toLowerCase()==="none"||t.toLowerCase()==="null"))throw new h('--assignee no longer accepts "none" or "null".',f.USAGE)}function Ga(e,t,r){let n=ge(e.assignee,{label:"--assignee"});Ua(n);let o=co(e),i=lo(e);return{typeFilter:Zn(e.type,t),tagFilter:ge(e.tag,{label:"--tag",normalize:s=>s.toLowerCase()}),priorityFilter:eo(e.priority),deadlineBefore:Nt(e.deadlineBefore,"deadline-before"),deadlineAfter:Nt(e.deadlineAfter,"deadline-after"),updatedAfter:K(e.updatedAfter,"updated-after"),updatedBefore:K(e.updatedBefore,"updated-before"),createdAfter:K(e.createdAfter,"created-after"),createdBefore:K(e.createdBefore,"created-before"),assigneeFilter:n,sprintFilter:ge(e.sprint,{label:"--sprint"}),releaseFilter:ge(e.release,{label:"--release"}),parentFilter:e.parent?.trim(),statusSet:r&&r.length>0?new Set(r):void 0,missingMetadataFilters:o,missingMetadataActive:to(o),contentFieldFilters:i,contentFiltersActive:no(i)}}function $a(e,t){return Wa(e,t)&&Jr(e,t)&&Ba(e,t)}function Wa(e,t){if(t.statusSet&&!t.statusSet.has(e.status)||t.typeFilter&&!t.typeFilter.has(e.type))return!1;let r=t.tagFilter;return!(r&&!se(e.tags).some(n=>r.has(n))||t.priorityFilter!==void 0&&!t.priorityFilter.has(e.priority))}function Ba(e,t){return!(t.assigneeFilter!==void 0&&(e.assignee===void 0||!t.assigneeFilter.has(e.assignee))||t.sprintFilter!==void 0&&(e.sprint===void 0||!t.sprintFilter.has(e.sprint))||t.releaseFilter!==void 0&&(e.release===void 0||!t.releaseFilter.has(e.release))||t.parentFilter!==void 0&&e.parent!==t.parentFilter)}function za(e,t,r,n){let o=e.metadata;return!(!$a(o,t)||!Nn(o,r)||t.missingMetadataActive&&!ro(o,t.missingMetadataFilters,n)||t.contentFiltersActive&&!oo(o,t.contentFieldFilters))}function er(e,t,r,n,o,i){let s=Ga(t,r,o);return e.filter(a=>za(a,s,n,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]="a3f9e7fa-7ebf-5fc7-93a4-f12cff30f4ff")}catch{}})();var Va=2,Ka=120,Qa=6,Ya=40,Xa=1e3,Ja=900,Za="\xAB",ec="\xBB",wi=60;function et(e,t){let r=0,n=0;for(;;){let o=e.indexOf(t,n);if(o<0)return r;r+=1,n=o+t.length}}var bi=[{name:"title",weightKey:"title_weight",value:e=>e.metadata.title},{name:"description",weightKey:"description_weight",value:e=>e.metadata.description},{name:"tags",weightKey:"tags_weight",value:e=>se(e.metadata.tags).join(" ")},{name:"status",weightKey:"status_weight",value:e=>typeof e.metadata.status=="string"?e.metadata.status:""},{name:"body",weightKey:"body_weight",value:e=>e.body},{name:"comments",weightKey:"comments_weight",value:e=>q(e.metadata.comments).map(t=>t.text).join(" ")},{name:"notes",weightKey:"notes_weight",value:e=>q(e.metadata.notes).map(t=>t.text).join(" ")},{name:"learnings",weightKey:"learnings_weight",value:e=>q(e.metadata.learnings).map(t=>t.text).join(" ")},{name:"reminders",weightKey:"reminders_weight",value:e=>$e(e.metadata).join(" ")},{name:"events",weightKey:"events_weight",value:e=>We(e.metadata).join(" ")},{name:"dependencies",weightKey:"dependencies_weight",value:e=>ve(e.metadata.dependencies).map(t=>`${t.id} ${t.kind}`).join(" ")},{name:"plan",weightKey:"body_weight",value:e=>Be(e.metadata)}],tc=new Map(bi.map(e=>[e.name,e]));function tr(e,t){let r=t.filter(o=>o.length>0).sort((o,i)=>i.length-o.length).map(o=>o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));if(r.length===0)return e;let n=new RegExp(r.join("|"),"gi");return e.replace(n,o=>`${Za}${o}${ec}`)}function rr(e,t){if(e.length===0)return null;let r=e.toLowerCase(),n=-1,o=0;for(let l of t){if(l.length===0)continue;let u=r.indexOf(l);u>=0&&(n<0||u<n)&&(n=u,o=l.length)}if(n<0)return null;let i=Math.max(0,n-wi),s=Math.min(e.length,n+o+wi),a=tr(e.slice(i,s),t),c=i>0?"\u2026":"",d=s<e.length?"\u2026":"";return`${c}${a}${d}`}function tt(e,t,r){let n=[];for(let o of t){let i=tc.get(o);if(i===void 0)continue;let s=rr(i.value(e),r);s!==null&&n.push({field:o,snippet:s})}return n}function rc(e,t,r){return[...bi.map(n=>({name:n.name,value:n.value(e),weight:r[n.weightKey]})),{name:"linked_content",value:t,weight:r.linked_content_weight}]}function nc(e,t,r){let n=C(e.id),o=typeof r=="string"?r.trim().toLowerCase():"",i=C(o),s=i.length>0&&n.startsWith(i)?n.slice(i.length).trim():n;return t!==n&&t!==s?null:{item:e,score:t===n?Xa:Ja,matched_fields:["id"],matched_all_terms:!0,exact_id_match:!0}}function oc(e,t,r,n,o){for(let i of e){let s=t.get(i)??0;s>0&&(o.score+=s*n.title_exact_bonus,o.matched.add("title"),o.matchedTokens.add(i));for(let a of r){let c=et(a.value.toLowerCase(),i);c>0&&(o.score+=c*a.weight,o.matched.add(a.name),o.matchedTokens.add(i))}}}function ic(e,t,r,n){C(e.title)===t&&(n.score+=Ka,n.matched.add("title"));for(let o of r){let i=et(C(o.value),t);i>0&&(n.score+=i*o.weight*Qa,n.matched.add(o.name))}}function nr(e,t,r,n,o,i,s=!1){let a=e.metadata,c=nc(a,r,i);if(c)return c;let d=new Map;for(let g of X(a.title))d.set(g,(d.get(g)??0)+1);let l=rc(e,n,o),u={score:0,matched:new Set,matchedTokens:new Set};oc(t,d,l,o,u);let m=new Set(t),p=m.size>0&&u.matchedTokens.size===m.size;return s&&m.size>1&&p&&(u.score+=Ya),t.length>=Va&&r.includes(" ")&&ic(a,r,l,u),u.score<=0?null:{item:a,score:u.score,matched_fields:[...u.matched].sort((g,_)=>g.localeCompare(_)),matched_all_terms:p}}function or(e,t){return[...e].sort((r,n)=>{let o=n.score-r.score;if(o!==0)return o;let i=le(r.item.status,t),s=le(n.item.status,t);if(i!==s)return i?1:-1;let a=r.item.priority-n.item.priority;if(a!==0)return a;let c=Xr(n.item.updated_at,r.item.updated_at);return c!==0?c:r.item.id.localeCompare(n.item.id)})}function ir(e,t,r,n,o,i,s,a=!1){return nr(e,t,r,n?o.get(e.metadata.id)??"":"",i,s,a)}function Ee(e){if(e.size===0)return new Map;let t=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;for(let o of e.values())t=Math.min(t,o),r=Math.max(r,o);if(r===t)return new Map([...e.keys()].map(o=>[o,1]));let n=new Map;for(let[o,i]of e)n.set(o,(i-t)/(r-t));return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c8484fbd-5fb2-56aa-9d69-26646be262a9")}catch{}})();function nt(e){let t=[],r=e;for(let n=0;n<5&&r&&typeof r=="object";n+=1){let o=r.code;typeof o=="string"&&t.push(o.toLowerCase()),r=r.cause}return t.join(" ")}function ot(e){let t=(e instanceof Error?e.message:String(e)).toLowerCase(),r=nt(e),n=`${t} ${r}`;return n.includes("timed out")||n.includes("timeout")||n.includes("etimedout")?"timeout":n.includes("econnrefused")||n.includes("connection refused")||n.includes("connect ")||n.includes("enotfound")||n.includes("eai_again")||n.includes("econnreset")||n.includes("fetch failed")?"connection":"error"}function sr(e,t){let r=ot(t);return`search_${e}_fallback:${r}:using_keyword_mode`}function vi(e){return e?.commands?.some(t=>t.command.trim()==="reindex")===!0?{command:"pm reindex --mode hybrid",args:["reindex","--mode","hybrid"]}:{command:"pm install search-advanced --project",args:["install","search-advanced","--project"],follow_up_command:"pm reindex --mode hybrid",follow_up_args:["reindex","--mode","hybrid"]}}async function ar(e,t,r){try{let n=await Vn(e);n.warnings.length>0&&r.push(...n.warnings);let o=fo(t.map(s=>({id:s.metadata.id,updated_at:s.metadata.updated_at})),n.entries);if(o.length===0)return;let i=vi(I());r.push(...Ei(o.length,i)),process.stderr.write(`[pm] warning: ${o.length} item${o.length===1?" is":"s are"} new or modified since the last reindex and ${o.length===1?"is":"are"} NOT in the semantic index yet \u2014 run '${i.command}'${i.follow_up_command?`, then '${i.follow_up_command}'`:""}. (Write-time embedding is governed by search.mutation_refresh_policy; staleness means the embed was skipped, failed, or the backend was unreachable.)
|
|
3
|
-
`)}catch{}}function Ei(e,t){return[`vector_index_stale:${e}`,`vector_index_recovery:${t.args.join(" ")}`,...t.follow_up_args?[`vector_index_recovery_follow_up:${t.follow_up_args.join(" ")}`]:[]]}function it(e,t,r,n){if(!t.active)throw new h(`Search mode '${e}' requires a configured embedding provider in settings.providers.openai or settings.providers.ollama`,f.USAGE);if(!r.active&&!n)throw new h(`Search mode '${e}' requires a configured vector store in settings.vector_store.qdrant/settings.vector_store.lancedb or an extension adapter selected by settings.vector_store.adapter`,f.USAGE);return{provider:t.active,vectorStore:r.active??null}}var T=Re;function Se(e){let t=I(),r=Pn(t,e);if(!r)return null;let n=r.runtime_definition??r.definition,o=n.query,i=n.queryExpansion??n.query_expansion,s=n.rerank,a=T(n.name)??T(r.definition.name)??e;if(!a)return null;let c={providerName:a,...typeof o=="function"?{query:o}:{},...typeof i=="function"?{queryExpansion:i}:{},...typeof s=="function"?{rerank:s}:{}};return!c.query&&!c.queryExpansion&&!c.rerank?null:c}function cr(e){let t=T(e.search?.provider),r=Se(t);return r?.query?{providerName:r.providerName,query:r.query}:null}function lr(e){let t=I(),r=T(e.vector_store?.adapter),n=Hn(t,r);if(!n)return null;let o=n.runtime_definition??n.definition,i=o.query;if(typeof i!="function")return null;let s=o.upsert;return{adapterName:T(o.name)??T(n.definition.name)??r??"extension",query:i,...typeof s=="function"?{upsert:s}:{}}}function dr(e,t,r){let n=Array.isArray(t)?t:t?.hits;if(!Array.isArray(n))throw new h(`Extension search provider "${e}" must return an array of hits or { hits: [...] }`,f.GENERIC_FAILURE);let o=new Set,i=[];for(let s of n){if(typeof s!="object"||s===null)continue;let a=T(s.id),c=s.score;if(!a||typeof c!="number"||!Number.isFinite(c)||o.has(a))continue;let d=r.get(a);if(!d)continue;let l=s.matched_fields,u=Array.isArray(l)&&l.every(m=>typeof m=="string")?[...new Set(l.map(m=>m.trim()).filter(m=>m.length>0))].sort((m,p)=>m.localeCompare(p)):[`provider:${e}`];o.add(a),i.push({item:d.metadata,score:c,matched_fields:u})}return i}function ur(e,t){let r=[],n=new Map;for(let o of e){if(n.has(o.id))continue;let i=t.get(o.id);i&&(n.set(o.id,o.score),r.push({item:i.metadata,score:o.score,matched_fields:["semantic"]}))}return{semanticHits:r,semanticScores:n}}function rt(e,t){let r=t.filter(c=>c.exact_id_match===!0);if(r.length===0)return e;let n=new Set(r.map(c=>c.item.id)),o=e.filter(c=>!n.has(c.item.id)),i=o.reduce((c,d)=>Math.max(c,d.score),0),s=r.sort((c,d)=>d.score-c.score),a=i+s.length+1;return[...s.map((c,d)=>({...c,score:a-d,matched_fields:["id"]})),...o]}function st(e,t,r,n,o="semantic"){let i=new Map(r.map(u=>[u.item.id,u.score])),s=new Map(r.map(u=>[u.item.id,u.matched_fields])),a=Ee(t),c=Ee(i),d=new Set([...t.keys(),...i.keys()]),l=1-n;return[...d].map(u=>{let m=e.get(u),p=a.get(u)??0,g=c.get(u)??0,_=p*n+g*l;if(_<=0)return null;let y=new Set;t.has(u)&&y.add(o);for(let w of s.get(u)??[])y.add(w);return{item:m.metadata,score:_,matched_fields:[...y].sort((w,b)=>w.localeCompare(b))}}).filter(u=>u!==null)}function mr(e){let t=e.configuredProvider?.trim().toLowerCase();return t==="bm25"?"explicit":t==="auto"&&!e.hasEmbeddingProvider&&!e.hasExtensionSearchProvider?"auto-fallback":null}function fr(e){let t=e.filteredDocuments.map(s=>({id:s.metadata.id,text:li(Bn(s,{fields:e.corpusFields}))})),r=ai(t),n=ci(r,Kt(e.query),e.bm25Params),o=new Map(e.filteredDocuments.map(s=>[s.metadata.id,s]));if(e.requestedMode==="semantic"){let s=[...n].map(([a,c])=>({item:o.get(a).metadata,score:c,matched_fields:["bm25"]}));return rt(s,e.keywordHits)}let i=st(o,n,e.keywordHits,e.hybridSemanticWeight,"bm25");return rt(i,e.keywordHits)}function hr(e){let t=new Map;for(let n of e)for(let o of n){let i=t.get(o.id);(!i||o.score>i.score)&&t.set(o.id,o)}let r=[...t.values()];return r.sort((n,o)=>n.score!==o.score?o.score-n.score:n.id.localeCompare(o.id)),r}function pr(e){let t=e.metadata,r=Array.isArray(t?.tags)?t.tags.join(" "):"";return[t?.title,t?.description,t?.type,t?.status,r,e.body].map(n=>typeof n=="string"?n.trim():"").filter(n=>n.length>0).join(`
|
|
4
|
-
`)}async function sc(e,t){let r=e.queryExpansion.enabled?ui(t,e.queryExpansion.max_queries):[t],n=r.length>0?r:[t];if(!e.queryExpansion.enabled)return n;if(e.queryExpansionExtension?.expand)try{let o=await Promise.resolve(e.queryExpansionExtension.expand({query:t,mode:e.requestedMode,settings:e.settings}));return fi(n,mi(o),e.queryExpansion.max_queries)}catch{return e.warnings.push(`search_query_expansion_provider_failed:${e.queryExpansionExtension.providerName}:using_builtin`),n}return e.queryExpansion.provider&&e.queryExpansion.provider!=="openai"&&e.queryExpansion.provider!=="ollama"&&e.warnings.push(`search_query_expansion_provider_unavailable:${e.queryExpansion.provider}:using_builtin`),n}async function ac(e,t,r,n){if(e.extensionVectorAdapter?.query)try{return await Promise.resolve(e.extensionVectorAdapter.query({vector:t,limit:r,settings:e.settings}))}catch(o){if(!e.vectorStore)throw new h(`Extension vector adapter query failed and no built-in fallback store is configured (${o instanceof Error?o.message:String(o)})`,f.GENERIC_FAILURE);return e.warnings.push(`search_vector_adapter_failed:${e.extensionVectorAdapter.adapterName}:using_builtin`),await Et(e.vectorStore,t,r,n)}if(e.vectorStore)return await Et(e.vectorStore,t,r,n);throw new h("Semantic search requires either a configured vector store or an extension vector adapter query handler",f.USAGE)}function cc(e,t,r){return[...e].sort((n,o)=>n.score!==o.score?o.score-n.score:n.item.id.localeCompare(o.item.id)).slice(0,r).map(n=>{let o=t.get(n.item.id);return o?{hit:n,text:pr(o)}:null}).filter(n=>n!==null)}async function lc(e,t,r){if(!e.rerankExtension?.rerank)return null;try{let n=await Promise.resolve(e.rerankExtension.rerank({query:t,mode:"hybrid",model:e.rerank.model,top_k:e.rerank.top_k,settings:e.settings,candidates:r.map(i=>({id:i.hit.item.id,text:i.text,score:i.hit.score}))})),o=yi(n);return o.length>0?new Map(o.map(i=>[i.id,i.score])):(e.warnings.push(`search_rerank_provider_invalid_response:${e.rerankExtension.providerName}:using_builtin`),null)}catch{return e.warnings.push(`search_rerank_provider_failed:${e.rerankExtension.providerName}:using_builtin`),null}}async function dc(e,t,r){let n=await lc(e,t,r);if(n)return n;let o=r.map(i=>({id:i.hit.item.id,text:i.text}));try{return await _i(e.provider,e.rerank.model,t,o,e.embeddingTimeoutMs)}catch{return e.warnings.push("search_rerank_failed:using_hybrid_scores"),null}}function uc(e,t){let r=new Set(t.keys()),n=e.map(o=>{let i=t.get(o.item.id);if(i===void 0)return o;let s=new Set(o.matched_fields);return s.add("rerank"),{...o,score:i,matched_fields:[...s].sort((a,c)=>a.localeCompare(c))}});return n.sort((o,i)=>{let s=r.has(o.item.id),a=r.has(i.item.id);return s!==a?s?-1:1:o.score!==i.score?i.score-o.score:o.item.id.localeCompare(i.item.id)}),n}async function mc(e,t,r,n){if(!e.rerank.enabled||r.length<=1)return r;let o=cc(r,n,e.rerank.top_k),i=await dc(e,t,o);return i&&i.size>0?uc(r,i):r}async function yr(e){let t=Math.max(e.limit??e.maxResults,e.maxResults),r=e.embeddingTimeoutMs!==void 0?{timeout_ms:e.embeddingTimeoutMs}:{},n=e.vectorQueryTimeoutMs!==void 0?{timeout_ms:e.vectorQueryTimeoutMs}:{},o=e.query.trim(),i=await sc(e,o),s=await Ge(e.provider,i,r),a=await Promise.all(s.map(async g=>await ac(e,g,t,n))),c=hr(a),d=new Map(e.filteredDocuments.map(g=>[g.metadata.id,g])),{semanticHits:l,semanticScores:u}=ur(c,d),m=u.size;if(e.requestedMode==="semantic")return{hits:rt(l,e.keywordHits),vectorMatchCount:m};let p=await mc(e,o,st(d,u,e.keywordHits,e.hybridSemanticWeight),d);return{hits:rt(p,e.keywordHits),vectorMatchCount:m}}function Si(e){let t=Se(e.provider??void 0);return t?.queryExpansion?{providerName:t.providerName,expand:t.queryExpansion}:null}function Ii(e){let t=Se(T(e.search?.provider));return t?.rerank?{providerName:t.providerName,rerank:t.rerank}:null}import at from"node:fs/promises";import gr from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="de9a1cbd-f277-52ef-adc6-66225f2d2f4f")}catch{}})();function _r(e){let t=(e.files??[]).map(s=>({scope:s.scope,path:s.path.trim()})),r=(e.docs??[]).map(s=>({scope:s.scope,path:s.path.trim()})),n=(e.tests??[]).filter(s=>typeof s.path=="string"&&s.path.trim().length>0).map(s=>({scope:s.scope,path:s.path.trim()})),o=[...t,...r,...n].filter(s=>s.path.length>0).sort((s,a)=>s.scope.localeCompare(a.scope)||s.path.localeCompare(a.path)),i=new Map;for(let s of o)i.set(`${s.scope}:${s.path}`,s);return[...i.values()]}async function ki(e){let t=gr.resolve(e);try{let r=await at.realpath(t);return{resolved:t,realpath:r}}catch{return null}}async function wr(e,t){let[r,n]=await Promise.all([ki(e),ki(t)]);return{projectContainmentRoot:r,globalContainmentRoot:n}}async function br(e,t){let r=_r(e.metadata),n=[];for(let o of r){let i=o.scope==="global"?t.globalContainmentRoot:t.projectContainmentRoot;if(!i)continue;let s=gr.resolve(i.resolved,o.path);if(!ut(i.resolved,s))continue;let a;try{a=await at.realpath(s)}catch{continue}if(ut(i.realpath,a))try{await ce({path:s,scope:o.scope}),n.push(await at.readFile(s,"utf8"))}catch{}}return n.join(`
|
|
5
|
-
`)}async function vr(e,t,r,n){let o=te(I()),i=async(d,l,u)=>{let m=async(p,g)=>{await ce({path:p,scope:"project"});let _=await at.readFile(p,"utf8");return sn(_,{format:g,schema:n,extensionFieldNames:o,onWarning:y=>s.push(y)}).body};try{return await m(l,u)}catch{let p=u==="toon"?"json_markdown":"toon",g=B(e,d.type,d.id,p,r);try{return await m(g,p)}catch{return s.push(`item_list_item_read_failed:${gr.relative(e,g)}`),""}}},s=[],a=await Rn(e,t,r,s,n),c=[];if(a.length===0){let d=await An(e,t,r,s,n);for(let l of d){let u=B(e,l.type,l.id,t,r),m=await i(l,u,t);c.push({metadata:l,body:m})}return{documents:c,warnings:[...new Set(s)].sort((l,u)=>l.localeCompare(u))}}for(let d of a){if(typeof d.body=="string"){c.push({metadata:d.metadata,body:d.body});continue}let l=await i(d.metadata,d.item_path,d.item_format);c.push({metadata:d.metadata,body:l})}return{documents:c,warnings:[...new Set(s)].sort((d,l)=>d.localeCompare(l))}}async function Ri(e,t,r){let n=new Map;if(!e||t!=="keyword"&&t!=="hybrid")return n;let o=process.cwd(),i=await wr(o,Gr(o)),s=await Promise.all(r.map(async a=>[a.metadata.id,await br(a,i)]));for(let[a,c]of s)n.set(a,c);return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="17122985-4157-5732-9142-444327cb273d")}catch{}})();var xi=["tag","status","type","priority"];function Er(e){let t={},r=[];for(let n of e.split(/\s+/).filter(o=>o.length>0)){let o=n.indexOf(":"),i=o>0?n.slice(0,o).toLowerCase():"",s=o>0?n.slice(o+1):"",a=xi.includes(i)?i:void 0;if(a&&s.length>0&&t[a]===void 0){t[a]=s;continue}r.push(n)}return{residualQuery:r.join(" "),inlineFilters:t}}function Sr(e,t,r){let n={...e};for(let o of xi){let i=t[o];if(i!==void 0){if(Re(n[o])!==void 0){r.push(`search_inline_filter_ignored:${o}:flag_takes_precedence`);continue}n[o]=i}}return n}function Ai(e,t){let r=[],n=Er(e),o=Object.keys(n.inlineFilters).length>0;if(o&&n.residualQuery.trim().length===0)throw new h("Inline field:value tokens consumed the entire query, leaving no search terms.",f.USAGE,{examples:["pm search auth tag:area:search","pm list --tag area:search --status open"],nextSteps:["Add keyword terms alongside the inline filters, or use pm list for pure tag/status/type/priority filtering."]});let i=o?n.residualQuery:e,s=Sr(t,n.inlineFilters,r);return{query:i,options:s,inlineWarnings:r,highlight:s.highlight===!0,includeLinked:Xe(s.includeLinked),titleExact:Xe(s.titleExact),phraseExact:Xe(s.phraseExact),matchMode:ri(typeof s.matchMode=="string"?s.matchMode:void 0),minScoreOverride:ni(s.minScore),countOnly:s.count===!0,tokens:Ze(i),normalizedQuery:C(i),limit:Ue(s.limit),projection:Je(s,e),modeWasExplicit:typeof s.mode=="string"&&s.mode.trim().length>0}}function Ci(e){if(e.after!==void 0&&e.count===!0)throw new h("Search --after cannot be combined with --count.",f.USAGE)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d7beacb7-66a5-581f-93f0-68ceb4b8e41e")}catch{}})();function kr(e,t,r,n,o,i,s,a,c,d,l,u,m,p){let g=m?{total:0,count_only:!0}:{};if(d.mode==="compact"&&n.compact===!0){let y=oe({mode:t,matchMode:r,options:n,includeLinked:o,titleExact:n.titleExact===!0,phraseExact:n.phraseExact===!0,scoreThreshold:i,hybridSemanticWeight:s,runtimeFieldFilters:u});return{query:e.trim(),mode:t,...Cr(p),items:[],count:0,...g,filters:y,...l.length>0?{warnings:l}:{}}}let _=d.mode==="full"?null:[...d.fields];return{query:e.trim(),mode:t,mode_source:p,items:[],count:0,...g,filters:ie({effectiveMode:t,matchMode:r,options:n,includeLinked:o,titleExact:n.titleExact===!0,phraseExact:n.phraseExact===!0,scoreThreshold:i,hybridSemanticWeight:s,queryExpansion:a,rerank:c,runtimeFieldFilters:u??{}}),projection:{mode:d.mode,fields:_},now:S(),...l.length>0?{warnings:l}:{}}}function Rr(e,t){let r=t.trim();if(r.length===0)return null;if(r==="score")return e.score;if(r==="matched_fields")return e.matched_fields;if(r.startsWith("item.")){let i=r.slice(5);return i.length===0?null:e.item[i]??null}let n=e,o=e.item;return Object.prototype.hasOwnProperty.call(o,r)?o[r]??null:Object.prototype.hasOwnProperty.call(n,r)?n[r]??null:null}function xr(e,t){return t.mode==="full"?e.map(({matched_all_terms:r,exact_id_match:n,...o})=>o):e.map(r=>{let n={};for(let o of t.fields)n[o]=Rr(r,o);return n})}function Ar(e,t){return kr(e.query,e.effectiveMode,e.matchMode,e.options,e.includeLinked,e.scoreThreshold,e.hybridSemanticWeight,e.queryExpansion,e.rerank,e.projection,e.warnings,e.runtimeFieldFilters,t,e.modeSource)}function Ti(e,t){if(e.projection.mode==="compact"&&e.options.compact===!0)return Ir({query:e.query.trim(),mode:e.effectiveMode,...Cr(e.modeSource),items:[],count:t,total:t,count_only:!0,filters:oe({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let r=e.projection.mode==="full"?null:[...e.projection.fields];return Ir({query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:[],count:t,total:t,count_only:!0,filters:ie({effectiveMode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,queryExpansion:e.queryExpansion,rerank:e.rerank,runtimeFieldFilters:e.runtimeFieldFilters}),projection:{mode:e.projection.mode,fields:r},now:S()},e.warnings)}function Cr(e){return e==="settings"?{mode_source:e}:{}}function Ir(e,t){return t.length===0?e:{...e,warnings:t}}function Ie(e,t){return t?{...e,workspace_memory:t}:e}function Mi(e,t,r){if(!e.highlight)return{hits:r,projection:e.projection};let n=new Map(t.map(i=>[i.metadata.id,i])),o=r.map(i=>({...i,highlights:tt(n.get(i.item.id),i.matched_fields,e.tokens)}));return e.projection.mode==="full"||e.projection.fields.includes("highlights")?{hits:o,projection:e.projection}:{hits:o,projection:{mode:e.projection.mode,fields:[...e.projection.fields,"highlights"]}}}function Fi(e,t,r,n,o,i){let s=n<r?{total:r}:{};if(e.projection.mode==="compact"&&e.options.compact===!0)return Ir({query:e.query.trim(),mode:e.effectiveMode,...Cr(e.modeSource),items:t,count:t.length,...s,...i,filters:oe({mode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,runtimeFieldFilters:e.runtimeFieldFilters})},e.warnings);let a=o.mode==="full"?null:[...o.fields];return{query:e.query.trim(),mode:e.effectiveMode,mode_source:e.modeSource,items:t,count:t.length,...s,...i,filters:ie({effectiveMode:e.effectiveMode,matchMode:e.matchMode,options:e.options,includeLinked:e.includeLinked,titleExact:e.titleExact,phraseExact:e.phraseExact,scoreThreshold:e.scoreThreshold,hybridSemanticWeight:e.hybridSemanticWeight,queryExpansion:e.queryExpansion,rerank:e.rerank,runtimeFieldFilters:e.runtimeFieldFilters}),projection:{mode:o.mode,fields:a},now:S(),...e.warnings.length>0?{warnings:e.warnings}:{}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3bfd872f-6ed7-551c-a027-3748493de3e9")}catch{}})();var df={applyFilters:er,applyExactQueryFilters:Zt,applyInlineQueryFilters:Sr,buildHitHighlights:tt,buildVerboseSearchFilters:ie,buildExplicitSemanticFallbackWarning:sr,buildCompactSearchFilterSummary:oe,buildHybridLexicalScore:ir,buildRerankCorpus:pr,buildSemanticHits:ur,classifyImplicitSemanticFallbackReason:ot,collectErrorCauseCodes:nt,collectExactPhraseFields:Xt,collectLinkedPaths:_r,combineHybridHits:st,computeBuiltInBm25Hits:fr,computeSemanticOrHybridHits:yr,resolveBuiltInBm25Mode:mr,countOccurrences:et,dependencyEntries:ve,documentContainsExactPhrase:Jt,emptySearchResult:kr,highlightFieldSnippet:rr,loadDocuments:vr,markTokenRuns:tr,parseInlineQueryFilters:Er,maybeEmitVectorIndexStaleWarning:ar,loadLinkedCorpus:br,mergeVectorHitsById:hr,normalizeExtensionProviderHits:dr,normalizeScoreMap:Ee,parseProjectionConfig:Je,parseTimestampWindow:K,parseTokens:Ze,projectSearchHits:xr,readSearchFieldValue:Rr,requireSemanticDependencies:it,resolveExtensionSearchProvider:cr,resolveExtensionSearchProviderByName:Se,resolveExtensionVectorAdapter:lr,resolveLinkedCorpusRoots:wr,scoreDocument:nr,sortHits:or,stringArray:se,textEntries:q,validateSearchProjectionFields:Ut};async function fc(e,t){let r=k(process.cwd(),t.path);await D(r);let n=await H(r),o=Un(n).settings,i=O(o.schema),s=Z(o.schema);Ut(e.projection,s,e.query);let a=qn(e.options,s,"search"),c=N(o,I()),d=$n(o),l=zn(o,r),u=cr(o),m=lr(o),p=ti(e.options.semanticWeight),g=hi(o,d.active?.name??null),_=pi(o,d.active?.model??T(o.search?.embedding_model)??"text-embedding-3-small");return{pmRoot:r,settings:o,statusRegistry:i,runtimeFieldRegistry:s,runtimeFieldFilters:a,typeRegistry:c,maxResults:Gt(o),scoreThreshold:e.minScoreOverride??Wt(o),semanticWeightProvided:e.options.semanticWeight!==void 0,semanticWeightOverride:p,hybridSemanticWeight:p??Bt(o),tuning:zt(o),providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m,bm25Mode:mr({configuredProvider:T(o.search?.provider),hasEmbeddingProvider:d.active!==null,hasExtensionSearchProvider:u!==null}),queryExpansion:g,queryExpansionExtension:Si(g),rerank:_,rerankExtension:Ii(o),...hc({requested:e.options.mode,settings:o,configuredProvider:n.search?.provider??null,providerResolution:d,vectorResolution:l,extensionSearchProvider:u,extensionVectorAdapter:m})}}function hc(e){let t=Gn(e.providerResolution.active?.name,e.configuredProvider)==="configured"&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null),r=e.extensionSearchProvider!==null||t,n=$t({requested:e.requested,settings:e.settings,semanticRunnable:r});return{effectiveMode:n.mode,modeSource:n.source}}async function pc(e,t){let r=await vr(t.pmRoot,t.settings.item_format??"toon",t.typeRegistry.type_to_folder,t.settings.schema),n=Ne(typeof e.options.status=="string"?e.options.status:void 0,t.statusRegistry,{strict:!0}),o=ze(t.statusRegistry),i=er(r.documents,e.options,t.typeRegistry,t.runtimeFieldFilters,n,o);return{warnings:r.warnings,allDocuments:r.documents,filteredDocuments:Zt(i,e.normalizedQuery,{titleExact:e.titleExact,phraseExact:e.phraseExact||e.matchMode==="exact"})}}async function yc(e,t,r){let n=await Ri(e.includeLinked,t.effectiveMode,r),o=e.matchMode==="or";return r.map(i=>ir(i,e.tokens,e.normalizedQuery,e.includeLinked,n,t.tuning,t.settings.id_prefix,o)).filter(i=>i!==null).filter(i=>e.matchMode!=="and"||i.matched_all_terms===!0)}async function gc(e,t,r,n,o){if(t.bm25Mode===null||t.effectiveMode==="keyword")return null;let i=fr({requestedMode:t.effectiveMode,query:e.query,filteredDocuments:r,keywordHits:n,corpusFields:Wn(t.settings),bm25Params:di(t.settings),hybridSemanticWeight:t.hybridSemanticWeight});return t.bm25Mode==="auto-fallback"&&o.push(`search_${t.effectiveMode}_offline_bm25:no_embedding_provider:using_lexical_bm25`),i}async function _c(e,t,r,n){if(!t.extensionSearchProvider)return null;let o=t.providerResolution.active!==null&&(t.vectorResolution.active!==null||t.extensionVectorAdapter!==null);try{let i=await Promise.resolve(t.extensionSearchProvider.query({query:e.query,mode:t.effectiveMode,tokens:e.tokens,options:e.options,settings:t.settings,documents:r}));return dr(t.extensionSearchProvider.providerName,i,n)}catch(i){if(!o)throw new h(`Extension search provider "${t.extensionSearchProvider.providerName}" failed: ${i instanceof Error?i.message:String(i)}`,f.GENERIC_FAILURE);return null}}function wc(e,t,r,n){return t.vectorMatchCount>0?t.hits:(n.push(`search_${e}_degraded:no_vector_matches:results_are_lexical`),e==="semantic"?r:t.hits)}async function bc(e,t,r,n,o){let i=!e.extensionSearchProvider&&e.providerResolution.active!==null&&(e.vectorResolution.active!==null||e.extensionVectorAdapter!==null);o&&i&&await ar(e.pmRoot,r,n),e.extensionSearchProvider||it(t,e.providerResolution,e.vectorResolution,e.extensionVectorAdapter!==null)}async function vc(e){let{prepared:t,runtime:r,filteredDocuments:n,keywordHits:o,warnings:i,modeWasExplicit:s}=e,a=o,c=await gc(t,r,n,o,i),d=r.effectiveMode;if(c!==null||d==="keyword")return{effectiveMode:r.effectiveMode,hits:c??a};try{if(await bc(r,d,n,i,s),n.length===0||t.limit===0)return{effectiveMode:r.effectiveMode,hits:[]};let l=new Map(n.map(u=>[u.metadata.id,u]));if(a=await _c(t,r,n,l)??a,a===o){let{provider:u,vectorStore:m}=it(d,r.providerResolution,r.vectorResolution,r.extensionVectorAdapter!==null),p=await yr({requestedMode:d,query:t.query,filteredDocuments:n,keywordHits:o,hybridSemanticWeight:r.hybridSemanticWeight,limit:t.limit,maxResults:r.maxResults,provider:u,vectorStore:m,extensionVectorAdapter:r.extensionVectorAdapter,queryExpansion:r.queryExpansion,queryExpansionExtension:r.queryExpansionExtension,rerank:r.rerank,rerankExtension:r.rerankExtension,warnings:i,settings:r.settings});a=wc(d,p,o,i)}return{effectiveMode:r.effectiveMode,hits:a}}catch(l){return i.push(sr(r.effectiveMode,l)),{effectiveMode:"keyword",hits:o}}}function Di(e){e.searchOptions.after!==void 0&&Qr(e.searchOptions.after,Vt(e))}async function Pi(e,t,r){Ci(t);let n=Ai(e,t),o=await fc(n,r),i=await pc(n,o),s=i.warnings;s.push(...n.inlineWarnings);let a=await wo(i.allDocuments.map(E=>E.metadata),{pmRoot:o.pmRoot,statusRegistry:o.statusRegistry,now:S()});s.push(...a.warnings);let c=bo(a,n.query);o.effectiveMode==="hybrid"&&o.semanticWeightProvided&&o.semanticWeightOverride===void 0&&s.push("search_hybrid_semantic_weight_override_invalid:using_settings_default");let d={query:n.query,modeSource:o.modeSource,matchMode:n.matchMode,options:n.options,includeLinked:n.includeLinked,titleExact:n.titleExact,phraseExact:n.phraseExact,scoreThreshold:o.scoreThreshold,hybridSemanticWeight:o.hybridSemanticWeight,queryExpansion:o.queryExpansion,rerank:o.rerank,projection:n.projection,warnings:s,runtimeFieldFilters:o.runtimeFieldFilters};if(o.effectiveMode==="keyword"&&(i.filteredDocuments.length===0||n.limit===0&&!n.countOnly))return Di({query:n.query,mode:o.effectiveMode,searchOptions:n.options,pmRoot:o.pmRoot}),Ie(Ar({...d,effectiveMode:o.effectiveMode},n.countOnly),c);let l=await yc(n,o,i.filteredDocuments),u=await vc({prepared:n,runtime:o,filteredDocuments:i.filteredDocuments,keywordHits:l,warnings:s,modeWasExplicit:n.modeWasExplicit});if(u.effectiveMode!=="keyword"&&u.hits.length===0&&(i.filteredDocuments.length===0||n.limit===0&&!n.countOnly))return Di({query:n.query,mode:u.effectiveMode,searchOptions:n.options,pmRoot:o.pmRoot}),Ie(Ar({...d,effectiveMode:u.effectiveMode},n.countOnly),c);let m=u.hits.filter(E=>E.exact_id_match===!0||E.score>=o.scoreThreshold),p=or(m,o.statusRegistry),g=p.length,_=oi({pmRoot:o.pmRoot,sorted:p,query:n.query,mode:u.effectiveMode,searchOptions:n.options,limit:n.limit??o.maxResults}),y={...d,effectiveMode:u.effectiveMode};if(n.countOnly)return Ie(Ti(y,g),c);let{hits:w,projection:b}=Mi(n,i.filteredDocuments,_.limited),v=xr(w,b);return Ie(Fi(y,v,g,_.limited.length,b,_.pageExtras),c)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f303192a-cac2-588b-b988-e3a8132f4199")}catch{}})();var Hi=["ndcg","mrr","precision","recall"];function Tr(e){if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("Eval minimum must be an object of metric floors");let t={};for(let[r,n]of Object.entries(e)){if(!Hi.some(o=>o===r))throw new TypeError(`Unknown eval minimum metric: ${r}`);if(typeof n!="number"||!Number.isFinite(n)||n<0||n>1)throw new TypeError(`Eval minimum.${r} must be a finite number in [0, 1]`);t[r]=n}return t}function Li(e,t){let r=Tr(t),n=[];for(let o of Hi){let i=r[o];if(i===void 0)continue;let s=e[o];!Number.isFinite(s)||s<0||s>1?n.push(`${o}:invalid`):s<i&&n.push(`${o}:${s}<${i}`)}return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="c34cc860-67c7-548b-99ff-f4155ef44bb0")}catch{}})();var ji=10,U="https://schema.unbrained.dev/pm/eval-query-set/v1",Ec={schema:U,accepted_top_level:["array","object"],required_query_fields:["query","relevant_ids"],optional_fields:["mode","description","minimum"],modes:["keyword","semantic","hybrid"]},ct={schema:U,queries:[{query:"offline search",relevant_ids:["pm-75k9"],mode:"keyword"}]},M=class extends Error{constructor(t){super(t),this.name="EvalQuerySetError"}},Sc=new Set(["keyword","semantic","hybrid"]);function Oi(e,t){let r=0,n=Math.min(t,e.length);for(let o=0;o<n;o+=1)r+=e[o]/Math.log2(o+2);return r}function Ic(e,t,r){if(t.size===0)return 0;let n=e.map(a=>t.has(a)?1:0),o=Oi(n,r),i=Array.from({length:t.size},()=>1),s=Oi(i,r);return s===0?0:o/s}function kc(e,t,r){let n=Math.min(r,e.length);for(let o=0;o<n;o+=1)if(t.has(e[o]))return 1/(o+1);return 0}function Mr(e,t,r){let n=Math.min(r,e.length),o=0;for(let i=0;i<n;i+=1)t.has(e[i])&&(o+=1);return o}function Rc(e,t,r){return r<=0?0:Mr(e,t,r)/r}function xc(e,t,r){return t.size===0?0:Mr(e,t,r)/t.size}function qi(e,t,r){return{ndcg:Ic(e,t,r),mrr:kc(e,t,r),precision:Rc(e,t,r),recall:xc(e,t,r),relevant_total:t.size,retrieved_relevant:Mr(e,t,r)}}function Ni(e){let t=e.length;if(t===0)return{ndcg:0,mrr:0,precision:0,recall:0,query_count:0};let r=e.reduce((n,o)=>({ndcg:n.ndcg+o.ndcg,mrr:n.mrr+o.mrr,precision:n.precision+o.precision,recall:n.recall+o.recall}),{ndcg:0,mrr:0,precision:0,recall:0});return{ndcg:r.ndcg/t,mrr:r.mrr/t,precision:r.precision/t,recall:r.recall/t,query_count:t}}function Ac(e,t){if(typeof e!="object"||e===null)throw new M(`Eval query at index ${t} must be an object`);let r=e,n=typeof r.query=="string"?r.query.trim():"";if(n.length===0)throw new M(`Eval query at index ${t} must have a non-empty "query" string`);if(!Array.isArray(r.relevant_ids))throw new M(`Eval query at index ${t} must have a "relevant_ids" array`);if(r.relevant_ids.some(i=>typeof i!="string"))throw new M(`Eval query at index ${t} must have a "relevant_ids" array of strings`);let o=[...new Set(r.relevant_ids.map(i=>i.trim()).filter(i=>i.length>0))];if(o.length===0)throw new M(`Eval query at index ${t} must list at least one relevant id`);if(r.mode!==void 0&&(typeof r.mode!="string"||!Sc.has(r.mode)))throw new M(`Eval query at index ${t} has an invalid mode (expected keyword|semantic|hybrid)`);return{query:n,relevant_ids:o,...r.minimum===void 0?{}:{minimum:Tr(r.minimum)},...r.mode!==void 0?{mode:r.mode}:{},...typeof r.description=="string"&&r.description.trim().length>0?{description:r.description.trim()}:{}}}function Fr(e){let t=typeof e=="object"&&e!==null&&!Array.isArray(e)?e.schema:void 0;if(t!==void 0&&t!==U)throw new M(`Unsupported eval query set schema; expected "${U}"`);let r=Array.isArray(e)?e:typeof e=="object"&&e!==null?e.queries:void 0;if(!Array.isArray(r))throw new M('Eval query set must be an array of queries or an object with a "queries" array');if(r.length===0)throw new M("Eval query set must contain at least one query");return{schema:U,queries:r.map((n,o)=>Ac(n,o))}}import Cc from"node:fs/promises";import Dr from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="5d26721c-719a-5c7e-8baf-72cbf1088988")}catch{}})();var Tc=Dr.join("search","eval-queries.json"),Pr={schema:U,examples:[JSON.stringify(ct)],nextSteps:["Create a git-tracked golden-query JSON file that follows the schema, then re-run pm eval."]},Mc=new Set(["keyword","semantic","hybrid"]),Fc=e=>{if(e===void 0)return"keyword";let t=e.trim().toLowerCase();if(!Mc.has(t))throw new h("Eval --mode must be one of keyword|semantic|hybrid",f.USAGE);return t},Dc=e=>{if(e===void 0||e==="")return ji;let t=xe(e);if(t===null)throw new h("Eval --k must be a positive integer",f.USAGE);return t},Pc=e=>{if(e===void 0||e==="")return;let t=String(e).trim(),r=Number(t);if([t.length===0,!Number.isFinite(r),r<0,r>1].includes(!0))throw new h("Eval --fail-under must be a number in the range [0, 1]",f.USAGE);return r},G=e=>Math.round(e*1e4)/1e4,Hc=async e=>{try{return await Cc.readFile(e,"utf8")}catch{throw new h(`Eval query set not found at ${e}`,f.NOT_FOUND,{...Pr,examples:[`echo '${JSON.stringify(ct)}' > ${e}`,"pm eval --queries ./my-eval.json"]})}},Lc=(e,t)=>{try{return JSON.parse(e)}catch(r){throw new h(`Eval query set at ${t} is not valid JSON: ${r instanceof Error?r.message:String(r)}`,f.USAGE,Pr)}},Oc=e=>{try{return Fr(e)}catch(t){throw new h(t instanceof Error?t.message:String(t),f.USAGE,Pr)}},jc=async e=>Oc(Lc(await Hc(e),e)),qc=async(e,t,r,n)=>{let o=e.mode??t,i=(await Pi(e.query,{mode:o,limit:String(r),fields:"id"},n)).items.map(a=>a.id).filter(a=>typeof a=="string"),s=qi(i,new Set(e.relevant_ids),r);return{metrics:s,report:{query:e.query,...e.minimum===void 0?{}:{violations:Li(s,e.minimum)},mode:o,relevant_total:s.relevant_total,retrieved_relevant:s.retrieved_relevant,ndcg:G(s.ndcg),mrr:G(s.mrr),precision:G(s.precision),recall:G(s.recall)}}},Nc=(e,t,r,n)=>{let o=Ni(r);return{k:e,query_count:t.length,aggregate:{ndcg:G(o.ndcg),mrr:G(o.mrr),precision:G(o.precision),recall:G(o.recall)},queries:t,...n!==void 0?{fail_under:n}:{},passed:(n===void 0||o.ndcg>=n)&&t.every(i=>(i.violations?.length??0)===0)}},Rf=async(e,t)=>{let r=k(process.cwd(),t.path);await D(r);let n=Dc(e.k),o=Fc(e.mode),i=Pc(e.failUnder),s=e.queries?Dr.resolve(process.cwd(),e.queries):Dr.join(r,Tc),a=await jc(s),c=[],d=[];for(let l of a.queries){let{report:u,metrics:m}=await qc(l,o,n,t);d.push(m),c.push(u)}return Nc(n,c,d,i)};export{Zi as a,ts as b,al as c,cl as d,xl as e,Al as f,Ct as g,Fo as h,Do as i,Po as j,Zl as k,wd as l,gd as m,kd as n,Rd as o,Yo as p,Xo as q,Jo as r,Vs as s,Lt as t,eu as u,tu as v,uu as w,Gt as x,$t as y,Wt as z,Bt as A,zt as B,Vt as C,oi as D,oe as E,ie as F,nt as G,ot as H,vi as I,Ei as J,df as K,Pi as L,Hi as M,Tr as N,Li as O,U as P,Ec as Q,ct as R,Fr as S,Tc as T,Rf as U};
|
|
6
|
-
//# sourceMappingURL=chunk-34MP7WKK.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{A as o,C as r}from"./chunk-RZQNFHXO.js";(function(){try{var n=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new n.Error().stack;e&&(n._sentryDebugIds=n._sentryDebugIds||{},n._sentryDebugIds[e]="be9abae1-85ae-5a68-96bc-c738218ace5e")}catch{}})();function u(n){return n instanceof r||n instanceof Error?n.message:"Unknown failure"}function d(n){if(typeof n!="object"||n===null||!("exitCode"in n))return;let e=n.exitCode;return typeof e=="number"&&Number.isFinite(e)?e:void 0}function f(n){let e=Math.trunc(n);return e>o.SUCCESS?e:o.GENERIC_FAILURE}function s(n){return typeof n=="object"&&n!==null&&"code"in n&&typeof n.code=="string"&&n.code.startsWith("commander.")}function l(n,e){if(n instanceof Error)return n;let t=new Error(e),i=d(n);return i!==void 0&&(t.exitCode=f(i)),t}export{u as a,d as b,f as c,s as d,l as e};
|
|
2
|
-
//# sourceMappingURL=chunk-3KMYHYJV.js.map
|